❌

Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraĂźchir la page.

Archiver ses vidĂ©os : retour d’expĂ©rience.

PrĂ©ambule : ma vie (et peut-ĂȘtre aussi la vĂŽtre)

Comme probablement beaucoup d’entre vous, j’ai des milliers de photos et vidĂ©os accumulĂ©es au cours des 20 derniĂšres annĂ©es. C’est trĂšs pratique de pouvoir stocker cela sur un seul disque dur. Mais cela pose trois problĂšmes majeurs :

  1. la pĂ©rennitĂ© du support ;
  2. le classement des fichiers pour pouvoir en retrouver un en particulier dans
 trùs longtemps.
  3. la possibilitĂ© de lire des fichiers dans plusieurs annĂ©es (je pense Ă  des fichiers Publisher 2.0 que je ne suis plus parvenu Ă  lire par la suite – et non : les versions ultĂ©rieures Ă  Publisher 2.0 ne lisent pas ces fichiers.

Ce texte s’adresse Ă  toute personne qui se pose trois questions :

  1. Pourrai-je visionner mes fichiers vidĂ©os dans 30 ans pour les montrer Ă  mes petits-enfants ?
  2. Comment organiser/classer mes fichiers vidĂ©os pour les retrouver rapidement ?
  3. Comment rĂ©encoder mes fichiers vidĂ©os pour limiter la place occupĂ©e (ou, dit autrement : quel format utiliser) ?

AprĂšs avoir lu cette dĂ©pĂȘche, je vous recommande trĂšs fortement de vous reporter aux commentaires qui suivent car vous y trouverez probablement des prĂ©cisions, liens, corrections ou suggestions qui l’enrichissent.

  • Pour le point 1., aucun support n’étant inaltĂ©rable/incassable, la rĂšgle tient en une phrase : « sauvegarder sur plusieurs supports (pour parer une Ă©ventuelle dĂ©faillance), dans diffĂ©rents endroits (en cas d’incendie, de vol, d’inondation
) et si possible en chiffrant ses disques (pour protĂ©ger votre vie privĂ©e en cas de vol : c’est incroyablement simple sous linux)
  • Pour le point 2., j’avais rĂ©digĂ© un document il y a fort fort longtemps oĂč j’expliquais que le seul classement pĂ©renne Ă©tait le classement chronologique (je vous laisse vous reporter au document pour comprendre pourquoi l’utilisation de logiciels propriĂ©taires est Ă  proscrire). Pour rĂ©sumer, je crĂ©e un dossier par annĂ©e (2023) dans lequel il y a douze sous-dossiers (2023_01, 2023_02 etc.) et dans chacun d’eux, je crĂ©e un dossier par jour avec la date et le lieu (par exemple, 2023_06_25_saint_denis_la_reunion indique immĂ©diatement oĂč et quand ont Ă©tĂ© prises les photos et les vidĂ©os Ă  l’intĂ©rieur de ce dossier). Les photos sont renommĂ©es (et retournĂ©es si nĂ©cessaire) automatiquement avec l’instruction jhead -autorot -nf%Y_%m_%d__%H_%M_%S_ *.jpg. Les vidĂ©os sont renommĂ©es manuellement sous la forme 2023_06_25__video_02_christophe_et_philippe_en_velo.mov 1
  • Pour le point 3., le format JPG Ă©tant ouvert, la lisibilitĂ© des photos est garantie dans le temps. Pour les vidĂ©os, c’est un peu plus compliquĂ© puisqu’en gĂ©nĂ©ral, trois formats interviennent :
    • le codec vidĂ©o pour l’image (comme h264, h265, av1, mjpeg
) ;
    • le codec audio pour le son (comme mp3)
    • le format de conteneur (comme avi, mp4, mts
)

C’est lĂ  oĂč on en revient Ă  l’histoire de ma vie.


  1. note : je n’ai jamais trouvĂ© comment rĂ©cupĂ©rer les mĂ©tadonnĂ©es des vidĂ©os pour les utiliser dans le nom du fichier, comme je le fais avec jhead. â†©

    Sommaire

    I Il Ă©tait une fois MA vie !

    AprĂšs plus de 20 ans de stockage, mon disque dur de 1 To frisait les 90 % de remplissage. Alors, oui, 1 To, c’est trĂšs commun aujourd’hui : il me suffisait d’acheter un disque de 4 To et le problĂšme Ă©tait rĂ©glĂ©.

    Oui
 mais non. Je n’aime pas occuper de la place. Je pense que c’est une mauvaise habitude que d’avoir des tĂ©raoctets disponibles ou des gigaoctets sur une carte SD pour son smartphone que l’on utilise sans se poser de questions en ayant l’impression d’un stockage illimitĂ©. Car un jour, cela nous revient dans les dents (carte SD/disque dur qui plante sans sauvegarde, rĂ©installation de tout le systĂšme, sauvegarde de ses milliers de photos que l’on se dĂ©cide - un jour - de ranger dans un dossier A_RANGER1 puis A_RANGER2 puis A_RANGER3, etc. puis on abandonne).

    En ayant un espace de stockage limité, on doit apprendre à le gérer.

    Les plus anciens se souviennent peut-ĂȘtre des magnĂ©toscopes : on achĂšte des cassettes, on enregistre des films en se disant « je le regarderai un jour Â» et on se retrouve avec des centaines de cassettes qui prennent la poussiĂšre. Ben c’est pareil avec les disques durs : on a des tĂ©raoctets en pagaille et on se dit : « je garde, on ne sait jamais. Et un jour (qui n’arrivera jamais), je ferai le tri ! Â»
    J’en reviens donc Ă  mon disque dur quasi plein. Je fais une recherche sur mes fichiers vidĂ©os et regarde le dĂ©bit binaire (bitrate par la suite) : 40 000 kb/s soit environ 5 Mo/s pour des vidĂ©os FullHD et jusqu’à 100 Mb/s (12 Mo/s) pour des vidĂ©os 4k (Ă©videmment, cela dĂ©pend de l’appareil Ă  l’origine de la vidĂ©o). Voici les diffĂ©rents bitrate que j’ai pu rencontrer :
    ‱ fichier mp4 4K drone : 100 Mb/s ;
    ‱ fichier mp4 4K go pro : 60 Mb/s
    ‱ fichier mov FullHD : environ 16Mb/s
    ‱ ficher avi 640*480 : environ 15 MB/ (mjpeg et format son araw)
    ‱ fichier avi 320*240 : entre 1 et 2,5 Mb/s

    Loin d’ĂȘtre un expert dans la compression vidĂ©o, le poids des fichiers m’interpelle quand mĂȘme. En effet, un site de tĂ©lĂ©chargement de films - que je n’ai jamais frĂ©quentĂ© car c’est illĂ©gal - a pour objectif d’optimiser le ratio qualitĂ©/poids et donc d’offrir une bonne qualitĂ© visuelle pour un poids rĂ©duit. Ainsi, un film en FullHD de 90 min a un poids de 1400 Mo soit un bitrate d’environ 2 Mb/s (250 ko/s avec le codec H264). Un film en 4K de 90 min a un poids de 4 Go soit un bitrate d’environ 4Mb (500 ko/s avec le codec H265). Et il paraĂźt – je ne le sais pas directement car je n’ai jamais frĂ©quentĂ© ce site dont je ne connais mĂȘme pas l’existence – que la qualitĂ© des films sur le site en question est bonne, visuellement parlant s’entend.

    Il était donc temps de se mettre au travail et de réencoder mes vidéos personnelles.

    L’objectif de ce document est donc triple (et permettra de rĂ©pondre aux questions 1. et 3. que s’est posĂ© le lecteur ou la lectrice dans le prĂ©ambule :

    • rĂ© encoder ses vidĂ©os automatiquement via un script bash (en utilisant le logiciel libre ffmpeg ) sans perte de qualitĂ© visible  ;
    • rĂ©duire le poids des fichiers de façon notable (par notable, j’entends ici une rĂ©duction d’au moins 20 %, ce qui est totalement subjectif, mais j’assume) ;
    • s’assurer de la pĂ©rennitĂ© de ses vidĂ©os (i.e. ĂȘtre capable de les visionner dans 20 ans) ;

    II Mon environnement

    • Le matĂ©riel : Lenovo V45 (payĂ© 300 â‚Ź environ avec un AMD A4-9125 radeon R3, 8Go de mĂ©moire vive et un SSD Samsung de 1To, le tout sous kubuntu 22,04).
    • Les logiciels : ffmpeg version 4.4.2, vlc, krename (pour renommer ses fichiers par lot), kfind pour retrouver des fichiers avec des extensions prĂ©cises (je ne maĂźtrise pas du tout l’outil en ligne de commande find), avidemux pour faire du montage vidĂ©o basique (couper quelques minutes d’une vidĂ©o par exemple), dolphin pour naviguer dans les fichiers et, surtout, indicator-cpufreq (qui permet de rĂ©duire la frĂ©quence du processeur et Ă©viter que le ventilateur ne tourne en permanence).

    III Les choix techniques

    Je ne devais utiliser que des logiciels libres et des formats ouverts. Pour les logiciels : mon choix s’est portĂ© sur ffmpeg pour l’encodage car c’est LA rĂ©fĂ©rence pour la conversion de vidĂ©os, mĂȘme si l’usage de la ligne de commande peut rebuter cetains (mais vous verrez par la suite que les scripts simplifient grandement la vie). Pour les formats :

    • MP3 pour l’audio : il n’est plus protĂ©gĂ© par un brevet depuis 2017 et me convenait parfaitement, en choisissant un dĂ©bit de 250kb/s (ce qui est sĂ»rement excessif mais la place occupĂ©e par le son dans une vidĂ©o est faible par rapport Ă  la vidĂ©o). Je sais qu’il y a vorbis mais le mp3 me semble plus « universel Â», notamment si l’on regarde la vidĂ©o sur un tĂ©lĂ©viseur
    • MKV pour le conteneur : c’est un format ouvert et qui est lu sur tous les tĂ©lĂ©viseurs sur lesquels j’ai pu le tester.
    • H265 pour le format vidĂ©o : c’est un format sorti en 2013 soumis Ă  brevet mais il est possible d’utiliser une bibliothĂšque libre (x265) pour effectuer l’encodage (c’est cette bibliothĂšque qu’utilise ffmpeg). LĂ  encore, lorsque j’ai testĂ© des vidĂ©os encodĂ©es en h265 sur diffĂ©rents tĂ©lĂ©viseurs pas trop vieux, je n’ai jamais eu de problĂšme. Sachez qu’il existe le format AV1, plus rĂ©cent, plus efficace en termes de compression, libre et qui rĂ©pond Ă  mes besoins. Mais deux Ă©lĂ©ments m’ont fait renoncer Ă  l’utiliser :
      • l’encodage (avec ma machine) est extrĂȘmement lent (j’ai abandonnĂ© l’encodage de 30 secondes de vidĂ©o quand, aprĂšs une heure, il en Ă©tait toujours Ă  la premiĂšre seconde !) ;
      • il n’est pas encore gĂ©nĂ©ralisĂ© : peu de tĂ©lĂ©viseurs peuvent lire ce format (si vous en connaissez, je suis preneur). Il est fort probable que dans une dizaine d’annĂ©es, je rĂ©encoderai mes vidĂ©os en AV1, mais laissons cela pour plus tard.

    J’ai Ă©galement choisi d’encoder mes vidĂ©os en deux passes car cela me permet de dĂ©cider du dĂ©bit binaire (et donc de la taille du fichier finale) tout en ayant une meilleure qualitĂ© qu’en une passe.
    J’ai utilisĂ© le programme indicator-cpufreq qui me permet de rĂ©duire au minimum la frĂ©quence de mon processeur (ici 1,2 Gh) afin d’éviter que le ventilateur ne tourne sans arrĂȘt (Ă  noter qu’une mise en veille repasse la frĂ©quence au maximum et il n’est plus possible de la rĂ©duire, sauf Ă  redĂ©marrer l’ordinateur). Avec une frĂ©quence rĂ©duite au minimum, le ventilateur ne se dĂ©clenche que quelques secondes toutes les minutes et le processeur ne dĂ©passe pas les 50°C (c’est hardinfo qui me le dit).

    IV Les problĂšmes rencontrĂ©s et les contraintes (spoiler : il faut du temps !)

    • L’encodage en deux passes permet d’obtenir une meilleure qualitĂ© visuelle (de ce que j’ai compris) mais au prix d’un temps de calcul doublĂ©. Ainsi, une vidĂ©o d’une minute (en FullHD) a nĂ©cessitĂ© environ 100 minutes d’encodage pour obtenir le fichier final. Autant vous dire que mon ordinateur a tournĂ© pendant environ 5 mois prĂšs de 20 heures par jour en moyenne. En revanche, j’ai dĂ©couvert comment arrĂȘter un processus (kill - STOP numero_pid_util) lorsque j’avais besoin de retrouver toute la puissance du processeur et comment le reprendre plus tard (kill - CONT numero_pid_util). Par ailleurs, je n’ai pas trouvĂ© comment utiliser la carte graphique pour le rĂ©encodage, car il paraĂźt que c’est plus rapide

    • Je ne connais pas l’instruction ou l’option (si elle existe) de ffmpeg qui permet de conserver les mĂ©tadonnĂ©es des vidĂ©os. Ainsi, la conversion effectuĂ©e avec les scripts ci-dessous supprime toutes les mĂ©tadonnĂ©es (pourtant, cela semble possible)
    • Je n’ai pas trouvĂ©, malgrĂ© mes recherches, comment reprendre la premiĂšre passe d’un encodage aprĂšs une coupure ou un bug (ffmpeg gĂ©nĂšre un fichier log durant la premiĂšre passe, fichier qu’il devrait ĂȘtre possible de rĂ©utiliser afin de reprendre lĂ  oĂč il s’est arrĂȘtĂ©). Il m’a donc fallu, parfois, reprendre l’encodage d’une vidĂ©o Ă  zĂ©ro.
    • La procĂ©dure avant encodage demande de l’organisation :
      • Rechercher toutes ses vidĂ©os est relativement aisĂ© et rapide : kfind permet d’effectuer une recherche sur de multiples formats. Ensuite, un copier-coller sur un autre disque dur permet de les isoler.
      • Il est nĂ©cessaire de connaĂźtre le bitrate de chacune d’elle. Une recherche Internet et hop, le script qui va bien (voir la partie sur les scripts) gĂ©nĂšre un fichier CSV pour nous faciliter le travail.
      • Il faut ensuite regrouper les vidĂ©os par dĂ©bit et dĂ©finition : ainsi, une vidĂ©o 640*480 de 10 Mb/s ne pouvait pas ĂȘtre dans le mĂȘme rĂ©pertoire qu’une vidĂ©o en 320*240 de 5 Mb/s Ă©galement puisque le bitrate final n’était pas le mĂȘme. LĂ , pas de secret, il faut le faire manuellement. Mais rassurez-vous, bien souvent, les vidĂ©os d’une mĂȘme pĂ©riode ont toute le mĂȘme bitrate.
      • L’étape suivante a consistĂ© Ă  choisir le dĂ©bit final des vidĂ©os suivant leur dĂ©finition de façon Ă  ce que la vidĂ©o finale subisse une compression pas ou peu visible Ă  l’Ɠil par rapport Ă  l’original (ce qui est trĂšs subjectif). J’ai donc choisi (en partant des dĂ©bits de YiFY et un peu au doigt mouillĂ©) :
        • 10 Mb/s pour de la 4K (portĂ© trĂšs rarement Ă  12 Mb/s si la vidĂ©o comportait beaucoup de mouvements) ;
        • 4 Mb/s pour de la FullHD ;
        • environ 2 Mb/s pour de la 640*480
        • 1 Mb/s pour de la 320*240
    • Un bug est apparu lors de la conversion des fichiers MJPEG directement en H265 : les couleurs finales Ă©taient complĂštement diffĂ©rentes des originales. Je ne suis pas le seul Ă  avoir subi ce qui semble ĂȘtre un bug. Au final, j’ai contournĂ© ce dĂ©sagrĂ©ment en convertissant d’abord ces fichiers en xvid avec un gros bitrate pour limiter la perte de qualitĂ© (opĂ©ration trĂšs rapide) puis les xvid en H265, ce qui a rĂ©glĂ© le problĂšme.
    • J’imagine que, comme beaucoup d’entre nous, je souhaite limiter mon impact environnemental. N’ayant pas de panneaux photovoltaĂŻques, mon empreinte carbone est probablement Ă©levĂ©e car j’ai Ă©tĂ© contraint de laisser tourner mon ordinateur jour et nuit en consommant de l’électricitĂ© pas toujours verte. En contrepartie, j’économise l’achat d’un nouveau disque dur. Cela me permet de me donner bonne conscience.

    V Les scripts utilisés

    Ces scripts (qui fonctionnent sous Linux. Pour Windows, il faudra adapter
) ont Ă©tĂ© Ă©crits Ă  partir de ce que j’ai trouvĂ© sur Internet car ma maĂźtrise de ce genre d’outils est trĂšs fragile voire inexistante (j’ai donc pas mal bidouillĂ© et ils peuvent sĂ»rement ĂȘtre optimisĂ©s). Je vous dirais volontiers qu’ils sont sous licence libre ou dans le domaine public mais n’ayant pas notĂ© mes sources, je les livre ci-dessous sans aucune garantie de quoi que ce soit (la seule chose que je peux garantir, c’est que j’ai fait pas mal de modifications par rapport aux scripts originaux).
    Je vous rappelle que pour utiliser ces scripts, vous devez faire un copier-coller du script dans un fichier texte (en utilisant kate par exemple), l’enregistrer puis le rendre exĂ©cutable. Ensuite, vous placez ce script dans le rĂ©pertoire de vos vidĂ©os, et, dans une console, vous tapez ./nom_du_script
    Je pense avoir mis suffisamment de commentaires pour comprendre ce que fait chaque script. Si cela n’était pas le cas, signalez les erreurs ou les suggestions dans les commentaires.
    Voici un rĂ©sumĂ© pour chacun d’eux :

    1. convertion_par_lot_videos_en_265 : c’est le script que j’ai le plus utilisĂ© pour convertir des vidĂ©os en H265 en choisissant une ou deux passes et le bitrate.
    2. convertion_par_lot_videos_en_265_une_passe_crf : convertir en une seule passe en choisissant la qualitĂ© voulue
    3. convertion_par_lot_videos_en_xvid : convertir des vidĂ©os au format XVID, lorsque la conversion des MJPEG vers H265 pose problĂšme
    4. convertion_vers_mkv_par_lot : convertir tous les formats de conteneur en MKV (j’ai eu parfois des problĂšmes avec certaines extensions, le passage en MKV rĂ©glait le problĂšme) ;
    5. convertion_videos_en_son_par_lot : ne garder que le son (pour des vidĂ©os youtube que l’on souhaite uniquement Ă©couter par exemple) ;
    6. convertir_son_en_mp3_garder_video : rĂ©econde uniquement le son en MP3, ne touche pas la vidĂ©o
    7. extraire_image_precise_d_une_video : permet d’extraire une image prĂ©cise (par exemple la 123) d’une ou plusieurs vidĂ©os. Ce script m’a permis de comparer l’image d’origine et l’image rĂ©encodĂ©e. J’utilisais ensuite Gimp pour visualiser les diffĂ©rences entre les deux images.
    8. recuperer_bitrate_video_par_lot : rĂ©cupĂšre tous les bitrates des vidĂ©os d’un mĂȘme rĂ©pertoire et l’exporte dans un fichier CSV (donnĂ©es sĂ©parĂ©es par une espace) ;
    9. recuperer_toutes_infos_video_par_lot : exporte dans un fichier csv les dimensions de l’image, le fps etc. mais pas le bitrate (je n’ai pas trouvĂ© comment fusionner ce script avec le prĂ©cĂ©dent)
    10. stabiliser_video_par_lot_en_testant_les_10_qualites : script pour stabiliser une vidĂ©o avec une image « secouĂ©e Â» en testant les 10 qualitĂ©s possibles automatiquement. Vous pouvez faire des tests, chez moi, ce n’était pas probant. Le script est Ă  revoir probablement.
    11. stabiliser_video_par_lot_version : idem que ci-dessus mais vous choisissez le paramĂštre de la stabilisation.
    12. creer_video_cote_a_cote_par_lot : pour comparer deux vidĂ©os en en crĂ©ant une nouvelle avec les deux cĂŽte Ă  cĂŽte (je l’utilise pour comparer la vidĂ©o d’origine et la vidĂ©o stabilisĂ©e).
    13. supprimer_bande_son_video : ne conserve que la vidĂ©o, supprime le son (pour des vidĂ©os oĂč le son ne prĂ©sente aucun intĂ©rĂȘt). Et c’est parti !

    convertion_par_lot_videos_en_265

    #/bin/bash
    # conversion par lot de fichier video au format H265 avec audio en mp3 qualité 256k
    # nice -19 signifie que le programme aura la priorité la plus faible, ce qui ne devrait pas beaucoup ralentir l'exécution des autres programmes (en théorie tout au moins...)
    # si vous souhaitez interrompre le programme pour avoir accÚs à tout le processeur, tapez l'instruction top puis identifiez le PID UTIL des processeurs ffmpeg concernés puis tapez kill - STOP numero_pid_util. Pour relancer le processus, tapez kill - CONT numero_pid_util
    echo "Ce script va rĂ©encoder vos vidĂ©os (MKV MP4 MTS AVI MOV WEBM FLV MPG MPEG WMV 3GP RM ASX VOB F4V MKS M4V OGV M2V MPV TS M2TS AVC HEVC M1V M2V MPV) en H265, le son en MP3 256k et au format de conteneur MKV en 1 ou 2 passes. Vous allez pouvoir choisir le bitrate d'encodage pour la vidĂ©o, le codec et le nombre de passe. Les extensions des vidĂ©os peuvent ĂȘtre en minuscules ou majuscules mais pas un mĂ©lange des deux. Les fichiers originaux seront dĂ©placĂ©s dans le dossier originaux et les fichiers convertis dans le dossier convertis_x265"
    echo -n "Entrez le bitrate -sans espace - que vous souhaitez utiliser : (4000 recommandé pour de la video FullHD, 10000 pour de la 4K) "
    read bitrate
    # les lignes (rm x265_2pass.log / rm x265_2pass.log.cutree / rm x265_2pass.log.cutree.temp / rm x265_2pass.log.temp) suppriment les fichiers générés lors des deux passes
    # pour conserver l'audio, remplacer -c:a libmp3lame -b:a 256k par -c:a copy
    # pour réduire la qualité audio, remplacer le 256k dans "-c:a libmp3lame -b:a 256k" par un nombre plus petit (par exemple 128k ou 92k)
    echo -n "Souhaitez-vous une passe ou deux passes ? Taper 1 pour une passe (plus rapide mais de moins bonne qualité) ou 2 pour deux passes (plus lent mais la vidéo finale est de meilleure qualité) :  "
    read passe
    if [ "$passe" = "1" ] ; then
    mkdir originaux
    # crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers originaux aprĂšs conversion
    mkdir convertis_x265
    #crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers convertis
        for i in *.mkv *.MKV *.mp4 *.MP4 *.mts *.MTS *.avi *.AVI *.mov *.MOV *.webm *.WEBM *.flv *.FLV *.mpg *.MPG *.mpeg *.MPEG *.wmv *.WMV *.3gp *.3GP *.rm *.RM *.asx *.ASX *.vob *.VOB *.f4v *.F4V *.mks *.MKS *.m4v *.M4V *.ogv *.OGV *.m2v *.M2V *.mpv *.MPV *.ts *.TS *.m2ts *.M2TS *.avc *.AVC *.hevc *.HEVC *.m1v *.M1V *.m2v *.M2V *.mpv *.MPV ; do
        nice -19 ffmpeg -i "$i" -c:v "libx265" -b:v "${bitrate}k" -"x265"-params pass=1 -c:a libmp3lame -b:a 256k "$i.mkv"
        mv "$i.mkv" ./convertis_x265
        #déplace les fichiers convertis
        mv "$i" ./originaux
        #déplace les fichiers originaux
        done
    elif [ "$passe" = "2" ]; then
    mkdir originaux
    # crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers originaux aprĂšs conversion
    mkdir convertis_x265
    #crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers convertis
        for i in *.mkv *.MKV *.mp4 *.MP4 *.mts *.MTS *.avi *.AVI *.mov *.MOV *.webm *.WEBM *.flv *.FLV *.mpg *.MPG *.mpeg *.MPEG *.wmv *.WMV *.3gp *.3GP *.rm *.RM *.asx *.ASX *.vob *.VOB *.f4v *.F4V *.mks *.MKS *.m4v *.M4V *.ogv *.OGV *.m2v *.M2V *.mpv *.MPV *.ts *.TS *.m2ts *.M2TS *.avc *.AVC *.hevc *.HEVC *.m1v *.M1V *.m2v *.M2V *.mpv *.MPV ; do
        nice -19 ffmpeg -y -i "$i" -c:v "libx265" -b:v "${bitrate}k" -"x265"-params pass=1 -an -f null /dev/null && \
        #premiĂšre passe
        nice -19 ffmpeg -i "$i" -c:v "libx265" -b:v "${bitrate}k" -"x265"-params pass=2 -c:a libmp3lame -b:a 256k "$i.mkv"
        mv "$i.mkv" ./convertis_x265
        #déplace les fichiers convertis
        mv "$i" ./originaux
        #déplace les fichiers originaux
    #les lignes suivantes suivantes suppriment les fichiers temporaires de la premiĂšre passe en cas d'interruption.
        rm x265_2pass.log
        rm x265_2pass.log.cutree
        rm x265_2pass.log.cutree.temp
        rm x265_2pass.log.temp
        rm x264_2pass.log
        rm x264_2pass.log.cutree
        rm x264_2pass.log.cutree.temp
        rm x264_2pass.log.temp
        done
    else
        echo "Il faut taper 1 ou 2, rien d'autre. Relancez le script !"
    fi
        rm x265_2pass.log
        rm x265_2pass.log.cutree
        rm x265_2pass.log.cutree.temp
        rm x265_2pass.log.temp
        rm x264_2pass.log
        rm x264_2pass.log.cutree
        rm x264_2pass.log.cutree.temp
        rm x264_2pass.log.temp

    convertion_par_lot_videos_en_265_une_passe_crf

    #!/bin/bash
    # conversion par lot de fichier video au format H265 avec audio en mp3 qualité 320k
    # nice -19 signifie que le programme aura la priorité la plus faible, ce qui ne devrait pas beaucoup ralentir l'exécution des autres programmes.
    # si vous souhaitez interrompre le programme pour avoir accÚs à tout le processeur, tapez l'instruction top puis identifiez le PID UTIL des processeurs ffmpeg concernés puis tapez kill - STOP numero_pid_util. Pour relancer le processus, tapez kill - CONT numero_pid_util
    
    echo "Ce script va rĂ©encoder vos vidĂ©os (MKV, MP4, MTS, AVI, MOV, WEBM FLV) en H265, le son en MP3 256k et au format de conteneur MKV en 1 passe. Vous allez pouvoir choisir CRF (constant rate factor) pour la vidĂ©o. Les extensions des vidĂ©os peuvent ĂȘtre en minuscules ou majuscules mais pas un mĂ©lange des deux."
    echo -n "Entrez le CRF que vous souhaitez utiliser : (entre 1 et 51 - 1 pour la meilleure qualité, 51 pour la plus mauvaise) - 28 est recommandé : "
    read crf
    
    echo -n "Entrez la vitesse que vous souhaitez utiliser : (ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow) - votre choix joue sur la vitesse de traitement et la qualité. Superfast sera trÚs rapide mais de moins bonne qualité. medium est le choix recommandé. Votre choix : "
    read speed
    
    # on peut modifier le fichier de sortie en ajoutant un répertoire : "$i.mkv" devient "/home/perso/mon_repertoire/$i.mkv"
    # les lignes (rm x265_2pass.log / rm x265_2pass.log.cutree / rm x265_2pass.log.cutree.temp / rm x265_2pass.log.temp) suppriment les fichiers générés lors des deux passes
    # pour conserver l'audio, remplacer -c:a libmp3lame -b:a 256k par -c:a copy
    # pour réduire la qualité audio, remplacer le 256k dans "-c:a libmp3lame -b:a 256k" par un nombre plus petit (par exemple 128k ou 92k)
    mkdir originaux
    # crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers originaux aprĂšs conversion
    mkdir convertis_x265
    #crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers convertis
    
        for i in *.mkv *.MKV *.mp4 *.MP4 *.mts *.MTS *.avi *.AVI *.mov *.MOV *.webm *.WEBM *.flv *.FLV *.mpg *.MPG *.mpeg *.MPEG *.wmv *.WMV *.3gp *.3GP *.rm *.RM *.asx *.ASX *.vob *.VOB *.f4v *.F4V *.mks *.MKS *.m4v *.M4V *.ogv *.OGV *.m2v *.M2V *.mpv *.MPV *.ts *.TS *.m2ts *.M2TS *.avc *.AVC *.hevc *.HEVC *.m1v *.M1V *.m2v *.M2V *.mpv *.MPV ;
        do
        nice -19 ffmpeg -i "$i" -c:v libx265 -crf "$crf" -preset "$speed" -c:a libmp3lame -b:a 256k "$i.mkv"
    
        mv "$i.mkv" ./convertis_x265
        #déplace les fichiers convertis
    
        mv "$i" ./originaux
        #déplace les fichiers originaux
        done
    
    #les lignes suivantes suivantes suppriment les fichiers temporaires de la premiĂšre passe en cas d'interruption.
        rm x265_2pass.log
        rm x265_2pass.log.cutree
        rm x265_2pass.log.cutree.temp
        rm x265_2pass.log.temp
        rm x264_2pass.log
        rm x264_2pass.log.cutree
        rm x264_2pass.log.cutree.temp
        rm x264_2pass.log.temp

    convertion_par_lot_videos_en_xvid

    #!/bin/bash
    # ce script balaie tous les fichiers d'un mĂȘme rĂ©pertoire et va convertir les AVI en XVID et conserver le son d'origine
    # nice -19 signifie que le programme aura la priorité la plus faible, ce qui ne devrait pas beaucoup ralentir l'exécution des autres programmes.
    # si vous souhaitez interrompre le programme pour avoir accÚs à tout le processeur, tapez l'instruction top puis identifiez le PID UTIL des processeurs ffmpeg concernés puis tapez kill - STOP numero_pid_util. Pour relancer le processus, tapez kill - CONT numero_pid_util
    
    echo "Ce script va rĂ©encoder vos vidĂ©os AVI en XVID, conserver le son d'origine et au format de conteneur MKV en 2 passes. Les extensions des vidĂ©os (AVI ou avi) peuvent ĂȘtre en minuscules ou majuscules mais pas un mĂ©lange des deux. La convertion directe de MJPEG vers 265 pose des problĂšmes de couleurs. Il faut donc passer par XVID d'abord (voir https://stackoverflow.com/questions/71397605/ffmpeg-mjpeg-h-265-smeared-color-on-output-video-file )"
    # on peut modifier le fichier de sortie en ajoutant un répertoire : "$i.mkv" devient "/home/perso/mon_repertoire/$i.mkv"
    # pour conserver l'audio, remplacer -c:a libmp3lame -b:a 256k par -c:a copy
    # pour réduire la qualité audio, remplacer le 256k dans "-c:a libmp3lame -b:a 256k" par un nombre plus petit (par exemple 128k ou 92k)
    
    mkdir originaux
    # crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers originaux aprĂšs conversion
    
    mkdir convertis_xvid
    #crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers convertis
    
        for i in *.avi *.AVI ; do
        nice -19 ffmpeg -y -i "$i" -c:v mpeg4 -vtag xvid -b:v 16000k -pass 1 -an -f avi /dev/null
        ffmpeg -i "$i" -c:v mpeg4 -vtag xvid -b:v 16000k -pass 2 -c:a copy "$i.mkv"
    
        mv "$i.mkv" ./convertis_xvid
        #déplace les fichiers convertis
    
        mv "$i" ./originaux
        #déplace les fichiers originaux
    
        done

    convertion_vers_mkv_par_lot

    #!/bin/bash
    # conversion par lot de fichiers vers mkv - mofifier l'extension si nécessaire - supprimer les extensions d'origine avec krename ensuite. Attention, s'il y a déjà des fichiers MKV, ils seront reconvertis en MKV
    
    mkdir originaux
    # crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers originaux aprĂšs conversion
    mkdir convertis_mkv
    #crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers convertis
    
        for i in *.mkv *.MKV *.mp4 *.MP4 *.mts *.MTS *.avi *.AVI *.mov *.MOV *.webm *.WEBM *.flv *.FLV *.mpg *.MPG *.mpeg *.MPEG *.wmv *.WMV *.3gp *.3GP *.rm *.RM *.asx *.ASX *.vob *.VOB *.f4v *.F4V *.mks *.MKS *.m4v *.M4V *.ogv *.OGV *.m2v *.M2V *.mpv *.MPV *.ts *.TS *.m2ts *.M2TS *.avc *.AVC *.hevc *.HEVC *.m1v *.M1V *.m2v *.M2V *.mpv *.MPV ; do
    
    
    #    autre chose trouvé sur internet avec bug : ffmpeg -flags +genpts -i "$i" -c copy -sn "$i.mkv"
    
    nice -19 ffmpeg -y -i "$i" -c:v copy -c:a copy "$i.mkv"
      mv "$i.mkv" ./convertis_mkv
        #déplace les fichiers convertis
        mv "$i" ./originaux
        #déplace les fichiers originaux
    
    done

    convertion_videos_en_son_par_lot

    #!/bin/bash
    # conversion par lot de fichiers vers mkv - mofifier l'extension si nécessaire - supprimer les extensions d'origine avec krename ensuite. Attention, s'il y a déjà des fichiers MKV, ils seront reconvertis en MKV
    
    mkdir originaux
    # crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers originaux aprĂšs conversion
    mkdir convertis_mkv
    #crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers convertis
    
        for i in *.mkv *.MKV *.mp4 *.MP4 *.mts *.MTS *.avi *.AVI *.mov *.MOV *.webm *.WEBM *.flv *.FLV *.mpg *.MPG *.mpeg *.MPEG *.wmv *.WMV *.3gp *.3GP *.rm *.RM *.asx *.ASX *.vob *.VOB *.f4v *.F4V *.mks *.MKS *.m4v *.M4V *.ogv *.OGV *.m2v *.M2V *.mpv *.MPV *.ts *.TS *.m2ts *.M2TS *.avc *.AVC *.hevc *.HEVC *.m1v *.M1V *.m2v *.M2V *.mpv *.MPV ; do
    
    
    #    autre chose trouvé sur internet avec bug : ffmpeg -flags +genpts -i "$i" -c copy -sn "$i.mkv"
    
    nice -19 ffmpeg -y -i "$i" -c:v copy -c:a copy "$i.mkv"
      mv "$i.mkv" ./convertis_mkv
        #déplace les fichiers convertis
        mv "$i" ./originaux
        #déplace les fichiers originaux
    
    done

    convertir_son_en_mp3_garder_video

    #!/bin/bash
    echo -n "Ce script va convertir le son des videos en mp3 sans toucher la video et ajouter l'extension .MKV à la fin du fichier. Choisissez la qualité mp3 (256 recommandé) : "
    read bitratemp3
    
    mkdir originaux
    # crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers originaux aprĂšs conversion
    mkdir convertis_mp3
    #crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers convertis
    
    
    for i in *.mkv *.MKV *.mp4 *.MP4 *.mts *.MTS *.avi *.AVI *.mov *.MOV *.webm *.WEBM *.flv *.FLV *.mpg *.MPG *.mpeg *.MPEG *.wmv *.WMV *.3gp *.3GP *.rm *.RM *.asx *.ASX *.vob *.VOB *.f4v *.F4V *.mks *.MKS *.m4v *.M4V *.ogv *.OGV *.m2v *.M2V *.mpv *.MPV *.ts *.TS *.m2ts *.M2TS *.avc *.AVC *.hevc *.HEVC *.m1v *.M1V *.m2v *.M2V *.mpv *.MPV ; do
    
        nice -19 ffmpeg -i "$i" -c:v copy -c:a libmp3lame -b:a "${bitratemp3}k" "$i.mkv"
    
        mv "$i.mkv" ./convertis_mp3
        #déplace les fichiers convertis
        mv "$i" ./originaux
        #déplace les fichiers originaux
    done

    extraire_image_precise_d_une_video

    #!/bin/bash
    
    
    echo -n "Entrez le numéro de l'image que vous souhaitez extraire (attention, la numérotation commence à 0 donc si vous souhaitez la frame 536, il faut saisir 535) "
    read num_frame
    
    
    for i in *.mkv *.MKV *.mp4 *.MP4 *.mts *.MTS *.avi *.AVI *.mov *.MOV *.webm *.WEBM *.flv *.FLV *.mpg *.MPG *.mpeg *.MPEG *.wmv *.WMV *.3gp *.3GP *.rm *.RM *.asx *.ASX *.vob *.VOB *.f4v *.F4V *.mks *.MKS *.m4v *.M4V *.ogv *.OGV *.m2v *.M2V *.mpv *.MPV *.ts *.TS *.m2ts *.M2TS *.avc *.AVC *.hevc *.HEVC *.m1v *.M1V *.m2v *.M2V *.mpv *.MPV ; do
    
    
    
    nice -19 ffmpeg -i "$i" -vf "select=eq(n\,$num_frame)" -vframes 1 screenshot_frame_"$num_frame"_"$i".png
    
    done

    recuperer_bitrate_video_par_lot

    #!/bin/bash
    
    #recherche le bitrate des videos de façon récursive
    find . \( -iname "*.mkv" -or -iname "*.mov" -or -iname "*.mts" -or -iname "*.mp4" -or -iname "*.mpg" -or -iname "*.mpeg" -or -iname "*.flv" -or -iname "*.avi" -or -iname "*.webm" -or -iname "*.wmv" -or -iname "*.3gp" -or -iname "*.rm" -or -iname "*.asx" -or -iname "*.vob" -or -iname "*.f4v" -or -iname "*.mks" -or -iname "*.m4v" -or -iname "*.ogv" -or -iname "*.m2v"  -or -iname "*.mpv" -or -iname "*.ts" -or -iname "*.m2ts" -or -iname "*.avc" -or -iname "*.hevc" -or -iname "*.m1v" -or -iname "*.m2v" -or -iname "*.mpv" \) -print0 | xargs -0 -i{} sh -c " echo -n '{} ' && ffmpeg -i '{}' 2>&1 | sed -n -e 's/^.*bitrate: //p' " > result_bitrate.csv
    #ecrit le bitrate de toutes les videos d'un dossier dans le fichier result_mts.csv.
    # Ouvrir avec tableur et choisir séparateur ESPACE pour mieux visualiser les bitrate

    recuperer_toutes_infos_video_par_lot

    #!/bin/bash
    
    #recherche les informations des videos
    find . \( -iname "*.mkv" -or -iname "*.mov" -or -iname "*.mts" -or -iname "*.mp4" -or -iname "*.mpg" -or -iname "*.mpeg" -or -iname "*.flv" -or -iname "*.avi" -or -iname "*.webm" -or -iname "*.wmv" -or -iname "*.3gp" -or -iname "*.rm" -or -iname "*.asx" -or -iname "*.vob" -or -iname "*.f4v" -or -iname "*.mks" -or -iname "*.m4v" -or -iname "*.ogv" -or -iname "*.m2v"  -or -iname "*.mpv" -or -iname "*.ts" -or -iname "*.m2ts" -or -iname "*.avc" -or -iname "*.hevc" -or -iname "*.m1v" -or -iname "*.m2v" -or -iname "*.mpv" \) -print0 | xargs -0 -i{} sh -c " echo -n '{} ' && ffmpeg -i '{}' 2>&1 | sed -n -e 's/^.*Video: //p' " > result_toutes_les_infos.csv
    
    
    #ecrit les informations toutes les videos d'un dossier dans le fichier result_toutes_les_infos.csv.
    #Ouvrir avec tableur et choisir séparateur ESPACE pour mieux visualiser les bitrate

    stabiliser_video_par_lot_version

    #!/bin/bash
    # stabiliser des videos par lot
    
    echo -n "Sélectionnez la stabilité de la vidéo que vous souhaitez : 1 (trÚs stable) jusqu'à 10 (trÚs instable)  "
    read stabilite
    
    mkdir originaux
    # crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers originaux aprĂšs conversion
    mkdir stabilisee
    #crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers convertis
    
    for i in *.mkv *.MKV *.mp4 *.MP4 *.mts *.MTS *.avi *.AVI *.mov *.MOV *.webm *.WEBM *.flv *.FLV *.mpg *.MPG *.mpeg *.MPEG *.wmv *.WMV *.3gp *.3GP *.rm *.RM *.asx *.ASX *.vob *.VOB *.f4v *.F4V *.mks *.MKS *.m4v *.M4V *.ogv *.OGV *.m2v *.M2V *.mpv *.MPV *.ts *.TS *.m2ts *.M2TS *.avc *.AVC *.hevc *.HEVC *.m1v *.M1V *.m2v *.M2V *.mpv *.MPV ; do
    
        nice -19 ffmpeg -i "$i" -vf vidstabdetect=shakiness=$stabilite:accuracy=15 -f null - && \
    
    #shakiness=10 peut etre modifié en mettant shakiness = nombre_entre_1_et_10 : 1 video stable, 10 video trÚs instable
    
        nice -19 ffmpeg -i "$i" -vf vidstabdetect=shakiness=$stabilite:accuracy=15 -f null -&& nice -19 ffmpeg -i "$i" -vf vidstabtransform=smoothing=30:input="transforms.trf" "stabilisee_$i"
    
    rm transforms.trf
    
    mv "stabilisee_$i" ./stabilisee
        #déplace les fichiers convertis
        mv "$i" ./originaux
        #déplace les fichiers originaux
    done

    creer_video_cote_a_cote_par_lot

    #!/bin/bash
    #ce script va créer une vidéo à partir de deux vidéos, l'une que l'on peut nommer ma_video.mkv et l'autre qui doit alors se nommer stabilisee_ma_video.mkv
    #les deux vidéos seront cÎte à cÎte, ce qui permet de les comparer
    for i in *.mkv *.MKV *.mp4 *.MP4 *.mts *.MTS *.avi *.AVI *.mov *.MOV *.webm *.WEBM *.flv *.FLV *.mpg *.MPG *.mpeg *.MPEG *.wmv *.WMV *.3gp *.3GP *.rm *.RM *.asx *.ASX *.vob *.VOB ; do
    
    
    # la video d'origine correspond Ă  $i et l'autre video doit commencer par "stabilisee" mais il suffit de changer le prefixe si necessaire
    
        ffmpeg -i "$i" -i "stabilisee_$i" -filter_complex "[0:v]setpts=PTS-STARTPTS, pad=iw*2:ih[bg]; [1:v]setpts=PTS-STARTPTS[fg]; [bg][fg]overlay=w" "cote_a_cote_$i"
    
    
    done

    supprimer_bande_son_video

    #!/bin/bash
    #supprimer la bande son de toutes les videos (au format voir ci-dessous) d'un mĂȘme rĂ©pertoire et crĂ©e un fichier MKV sans bande son. Ne rĂ©encode pas la vidĂ©o.
    
    mkdir originaux
    # crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers originaux aprĂšs conversion
    mkdir sans_son
    #crĂ©e un rĂ©pertoire oĂč seront dĂ©placĂ©s les fichiers convertis
    
    
        for i in *.mkv *.MKV *.mp4 *.MP4 *.mts *.MTS *.avi *.AVI *.mov *.MOV *.webm *.WEBM *.flv *.FLV *.mpg *.MPG *.mpeg *.MPEG *.wmv *.WMV *.3gp *.3GP *.rm *.RM *.asx *.ASX *.vob *.VOB *.f4v *.F4V *.mks *.MKS *.m4v *.M4V *.ogv *.OGV *.m2v *.M2V *.mpv *.MPV *.ts *.TS *.m2ts *.M2TS *.avc *.AVC *.hevc *.HEVC *.m1v *.M1V *.m2v *.M2V *.mpv *.MPV ; do
        nice -19 ffmpeg -i "$i" -c copy -an "$i.mkv"
    
        mv "$i.mkv" ./sans_son
        #déplace les fichiers convertis
        mv "$i" ./originaux
        #déplace les fichiers originaux
    
    
        done

    stabiliser_video_par_lot_en_testant_les_10_qualites

    #!/bin/bash
    # test toutes les qualitĂ©s de stabilisation pour un mĂȘme fichier
    
    # test les 10 qualités de stabilité
    
            for qualite in 1 2 3 4 5 6 7 8 9 10 ; do
                for i in *.mkv ; do
    
                # nice -19 ffmpeg -i "$i" -vf vidstabdetect=shakiness=$qualite:accuracy=15 -f null - && \
    
                #shakiness=10 peut etre modifié en mettant shakiness = nombre_entre_1_et_10 : 1 video stable, 10 video trÚs instable
    
                nice -19 ffmpeg -i "$i" -vf vidstabdetect=shakiness=$qualite:accuracy=15 -f null -&& nice -19 ffmpeg -i "$i" -vf vidstabtransform=smoothing=30:input="transforms.trf" "stabilisee_$i_$qualite.mp4"
    
                rm transforms.trf
    
                done
    
    
            done

    En conclusion

    Il faut du temps et de l’envie pour se lancer dans cette aventure, mĂȘme si le CPU fait 80 % du travail. Mais les 20 % restant ne sont pas Ă  nĂ©gliger. Entre les copier-coller qu’il ne faut pas rater, le classement des vidĂ©os par bitrate ou dimension, les vidĂ©os rĂ©encondĂ©es qu’il faut visionner (en accĂ©lĂ©rĂ©) pour s’assurer qu’elles sont correctes, etc. il faut vraiment rester concentrĂ© pour Ă©viter d’oublier une vidĂ©o ou, pire, de l’effacer alors qu’elle n’a pas Ă©tĂ© rĂ©encondĂ©e.

    Les avantages

    Mais je ne regrette pas tout ce temps, surtout pour avoir revisionné quasiment toutes mes vidéos, celle de mes enfants bébé (le coup de vieux en pleine figure), les moments en famille, les grands-parents disparus
 Cela a été des moments vraiment agréables.

    Cela m’a Ă©galement permis de ranger des vidĂ©os qui n’étaient pas dans le bon rĂ©pertoire ou de renommer celles qui comportaient une erreur dans leur nom.

    J’ai maintenant toutes mes vidĂ©os avec le mĂȘme format de conteneur (MKV), et les mĂȘmes codec vidĂ©o et audio, ce qui facilitera grandement un rĂ©encodage ultĂ©rieur.

    Et puis – c’était l’un des objectifs – le gain de place est trĂšs important puisque mon disque dur est passĂ© de 90 % Ă  48 % d’occupation (j’ai fait aussi un peu de mĂ©nage donc ce gain ne provient pas que du rĂ©encodage des vidĂ©os).

    Les inconvénients

    Est-ce une bonne idĂ©e de mettre tous ses Ɠufs dans le mĂȘme panier (un seul format de conteneur, un seul codec video, un seul codec audio) , mĂȘme si ces formats sont libres et, pour H265, lisible avec des logiciels libres, ce qui est tout de mĂȘme une bonne assurance pour l’avenir ?

    Du temps, du temps, et encore du temps : il faut en avoir pour ce projet (mais j’espĂšre que les scripts vous permettront d’en gagner)

    Cela consomme de l’énergie et, si beaucoup de gens veulent rĂ©encoder leurs vidĂ©os, l’impact environnemental ne sera pas nĂ©gligeable.

    L’opĂ©ration monopolise un ordinateur (nice -19 ne m’a pas paru trĂšs efficace quand je lançais trois encodages simultanĂ©ment!). Mais cela peut ĂȘtre l’occasion d’en utiliser un qui dort dans un placard et qui pourrait ainsi resservir.

    Si c’était Ă  refaire


    • Je le referai, sans aucun doute !
    • J’essaierai de conserver les mĂ©tadonnĂ©es (date, heure, coordonnĂ©es GPS) de mes vidĂ©os (mĂȘme si les informations les plus importantes sont dans leur nom) ;
    • Je tenterai d’utiliser le GPU pour le rĂ©encodage, ce qui rĂ©duirait le temps de calcul.

    Note pour le prochain confinement :

    [1] : je n'ai pas réussi à trouver l'équivalent de la commande jhead -autorot -nf%Y_%m_%d_%H%M_%S_ *.jpg pour les videos

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    ❌