Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
ressource:logiciel:ffmpeg:start [2023/04/27 18:11]
emoc [Petits trucs pratiques]
ressource:logiciel:ffmpeg:start [2023/07/09 03:11] (Version actuelle)
emoc [Petits trucs pratiques]
Ligne 103: Ligne 103:
   # 20210927 ffmpeg 3.2.12-1 / debian 9.5 @ kirin   # 20210927 ffmpeg 3.2.12-1 / debian 9.5 @ kirin
   ffmpeg -i realmedia.rm -vn -ar 44100 -ac 2 -ab 192k -f mp3 audio.mp3   ffmpeg -i realmedia.rm -vn -ar 44100 -ac 2 -ab 192k -f mp3 audio.mp3
- 
  
 **Convertir des fichiers audio en wav mono 16 bits et avec une fréquence d’échantillonnage de 16000 Hz** **Convertir des fichiers audio en wav mono 16 bits et avec une fréquence d’échantillonnage de 16000 Hz**
Ligne 110: Ligne 109:
 **Concaténer plusieurs fichiers son en un seul** **Concaténer plusieurs fichiers son en un seul**
   $ ffmpeg -f concat -safe 0 -i <(for f in ./*.wav; do echo "file '​$PWD/​$f'";​ done) -c copy out.wav   $ ffmpeg -f concat -safe 0 -i <(for f in ./*.wav; do echo "file '​$PWD/​$f'";​ done) -c copy out.wav
 +  ​
 +**Vidéo à partir d'une image fixe (sans son)**
 +  ffmpeg -loop 1 -i image.png -c:v libx264 -t 10 -pix_fmt yuv420p -vf scale=768:​768 video.mp4
  
 **Vidéo à partir d'une image fixe et d'un son, la vidéo fait la durée du son** **Vidéo à partir d'une image fixe et d'un son, la vidéo fait la durée du son**
   ffmpeg -loop 1 -r 30 -i 5054.png -i 5054.wav -c:v libx264 -tune stillimage -c:a aac -b:a 250k -shortest 5054.mp4   ffmpeg -loop 1 -r 30 -i 5054.png -i 5054.wav -c:v libx264 -tune stillimage -c:a aac -b:a 250k -shortest 5054.mp4
 +
 +**Enregistrer une video du bureau (sur Debian)**
 +  # ffmpeg 3.2.12-1 / debian 9.5 @ kirin / 20181203
 +  ffmpeg -video_size 1600x900 -framerate 10 -f x11grab -i :0.0+0,0 output.mp4
 +options : https://​trac.ffmpeg.org/​wiki/​Capture/​Desktop ​
 +
 +**Extraction d'un son depuis une vidéo en mp3**
 +  # ffmpeg 3.2.12-1 / debian 9.5 stretch @ kirin / 20190327
 +  ffmpeg -i video.mp4 -vn -ar 44100 -ac 2 -ab 320k -f mp3 audio.mp3
 +
 +**Extraction d'un son depuis un VOB en .wav 16bits**
 +  # ffmpeg 3.2.5-1 / debian 9.1 @ urzhiata / 20180415
 +  ffmpeg -i ./​VTS_01_1.VOB -vn -acodec pcm_s16le -sample_fmt s16 -ar 44.1k -ac 2 ./son.wav
 +  ​
 +**Extraction d'​images de film toutes les x secondes**
 +  # ffmpeg 3.2.5-1 / debian 9.1 @ urzhiata / 20180831
 +  ffmpeg -i film.avi -r 1 -f image2 "​image-du-film-%4d"​
 +  # pour des versions de ffmpeg plus récentes, essayer
 +  ffmpeg -i video.mp4 -vf fps=1 out%d.png ​      # extraction d'une image par seconde
 +  ffmpeg -i video.mp4 -vf fps=1/60 out%02d.jpg ​ # extraction d'une image par minute
 +
 +**Extraction de toutes les images d'une vidéo**
 +  # testé 1( juin 2023 / ffmpeg version 3.2.18-0+deb9u1
 +  ffmpeg -i video.mp4 images_%04d.png
   ​   ​
 **Vidéo à partir d'une image fixe et d'un son, pour publication en post instagram** ([[https://​ffmpegfromzerotohero.com/​blog/​ffmpeg-instagram-best-practices/​|source]]) **Vidéo à partir d'une image fixe et d'un son, pour publication en post instagram** ([[https://​ffmpegfromzerotohero.com/​blog/​ffmpeg-instagram-best-practices/​|source]])
Ligne 133: Ligne 159:
  
 -shortest: adapte à la longueur du flux le plus court, ici le son car les mages sont en boucle -shortest: adapte à la longueur du flux le plus court, ici le son car les mages sont en boucle
- + 
 +**Vidéo à partir de plusieurs images fixes, sans son, pour publication en story instagram** 
 +  # testé 31 mai 2023 / ffmpeg version 3.2.18-0+deb9u1 
 +  ffmpeg -f concat -i input.txt -map 0:v -c:v h264 -tune stillimage -crf 18 -an -pix_fmt yuv420p -max_muxing_queue_size 1024 -vsync vfr output.mp4 
 +Les images sont à la même définition : 1080x1920 \\ 
 +Elles sont listés dans le fichier texte **input.txt** avec leur durée en seconde (la dernière image est répété dans le fichier texte, c'est comme ça!) : \\ 
 +  file '​image1.png'​ 
 +  duration 5 
 +  file '​image2.png'​ 
 +  duration 1 
 +  file '​image3.png'​ 
 +  duration 3 
 +  file '​image3.png'​ 
 +   
 +**Atout de son à une vidéo pour publication instagram** 
 +  # testé 6 juin 2023 / ffmpeg version 3.2.18-0+deb9u1 
 +  # sans réencodage de la vidéo 
 +  ffmpeg -i video.mp4 -i son.wav -map 0:v -map 1:a -c:v copy -shortest video3.mp4 
 +  # avec réencodage 
 +  ffmpeg -i video.mp4 -i son.wav -map 0:v -map 1:a -r 25 -c:v h264 -tune stillimage -crf 18 -c:a aac -b:a 128k -ac 2 -ar 44100 -pix_fmt yuv420p -max_muxing_queue_size 1024 -shortest video2.mp4 
 **Extraire une image d'une vidéo** **Extraire une image d'une vidéo**
   ffmpeg -i video.mp4 -vframes 1 image.png   ffmpeg -i video.mp4 -vframes 1 image.png
Ligne 148: Ligne 194:
 (-c:a copy : copie du flux audio, -crf : 18 qualité visuellement proche du lossless) \\ (-c:a copy : copie du flux audio, -crf : 18 qualité visuellement proche du lossless) \\
 cf. infos sur les qualité du h264 : https://​trac.ffmpeg.org/​wiki/​Encode/​H.264 cf. infos sur les qualité du h264 : https://​trac.ffmpeg.org/​wiki/​Encode/​H.264
 +
 +**Changer le framerate et modifier la vitesse de lecture, sans réencoder** ([[https://​stackoverflow.com/​a/​64251589|source]]) \\
 +En 2 étapes, en partant d'une vidéo à 60 fps pour la passer à 30 fps, et la ralentir (2 fois plus lente). Dans ce cs, je n'ai pas besoin de son mais l'​exemple de la source concerne aussi le son.
 +  # testé 12 juin 2023 / ffmpeg version 3.2.18-0+deb9u1
 +  ffmpeg -i video_60fps.mp4 -c copy -f h264 output_raw_bitstream.h264
 +  ffmpeg -r 30 -i output_raw_bitstream.h264 -c copy video_30fps.mp4
 +  ​
 +**Vidéo sans son en ping-pong / yoyo** ([[https://​stackoverflow.com/​a/​42257863|source]])\\
 +Une fois à l'​endroit,​ une fois à l'​envers
 +  # testé 12 juin 2023 / ffmpeg version 3.2.18-0+deb9u1
 +  ffmpeg -i input.mp4 -filter_complex "​[0:​v]reverse,​fifo[r];​[0:​v][r] concat=n=2:​v=1 [v]" -map "​[v]"​ output.mp4
 +
 +**Réencoder en changeant les dimensions**
 +  # testé 14 juin 2023 / ffmpeg version 3.2.18-0+deb9u1
 +  ffmpeg -i video.mp4 -vf scale="​360:​360"​ -c:a aac -b:a 128k -ac 2 -ar 44100 -pix_fmt yuv420p output.mp4
 ===== Ressources ===== ===== Ressources =====
  
Ligne 156: Ligne 217:
   * documentation : https://​ffmpeg.org/​ffmpeg.html   * documentation : https://​ffmpeg.org/​ffmpeg.html
   * https://​ffmpegfromzerotohero.com/​blog/​ (c'est aussi un livre)   * https://​ffmpegfromzerotohero.com/​blog/​ (c'est aussi un livre)
 +  * mixage audio / vidéo : https://​stackoverflow.com/​a/​11783474
  
  • ressource/logiciel/ffmpeg/start.1682611908.txt.gz
  • Dernière modification: 2023/04/27 18:11
  • par emoc