#1 Le 25/02/2010, à 17:43
- fury_jin
Compression multipiste audio avec FFmpeg
Salut,
j'aimerais savoir comment re-encoder le son d'un fichier vidéo contenant plusieurs pistes audio:
Je sais le faire avec une seule piste:
ffmpeg -i vid.avi -vcodec copy -acodec libmp3lame -ab 192k -ac 2 -vol 1000 vid2.avi
Avec plusieurs fichiers son externes:
ffmpeg
-i vid.avi
-i eng.ac3
-i fre.ac3
-i com.ac3
-vcodec copy vid2.avi
-acodec libmp3lame -ab 192k -ac 2 -vol 900 -newaudio
-acodec libmp3lame -ab 192k -ac 2 -vol 900 -newaudio
-acodec libmp3lame -ab 192k -ac 2 -vol 900 -newaudio
Mais pas avec les pistes son dans le fichier vidéo.
Aussi comment fait-on pour extraire la piste (stream) voulue?
Hors ligne
#2 Le 26/02/2010, à 11:51
- fredthefrenchy
Re : Compression multipiste audio avec FFmpeg
http://ffmpeg.org/ffmpeg-doc.html#SEC12
Regarde là, t'auras peut être la solution, je n'ai vu que la partie avec la "lang" ISO !!!
Dernière modification par fredthefrenchy (Le 26/02/2010, à 11:54)
CM MSI 990FXA-GD80 - AMD FX8150 8 x 3.6Ghz - G.SKILL KIT EXTREME3 2 X 4 GO PC17000 ARES CAS9 8192 Mo (2133 MHz), 9-11-10-28 - GeForce GTX560 1Go GDDR5 - Ubuntu 16.04 x86-64 dual boot avec W7 64bits
Hors ligne
#3 Le 26/02/2010, à 12:08
- fury_jin
Re : Compression multipiste audio avec FFmpeg
Je pense que ma solution se trouve dans les -map, mais je ne sais pas comment les utiliser.
Maintenant je sais comment extraire la 3eme piste audio de ma vidéo:
ffmpeg -i vid.avi -map 0:3 -vn -acodec copy 01.ac3
J'ai essayer de bricoler un truc mais j'ai l'erreur "Number of stream maps must match number of output streams"
ffmpeg -i vid.avi -map 0:0 -vn -map 0:1 -acodec libmp3lame -ab 128k -ac 2 -vol 1200 -map 0:2 -acodec libmp3lame -ab 128k -ac 2 -vol 1200 vid2.avi
Hors ligne
#4 Le 28/02/2010, à 21:05
- fury_jin
Re : Compression multipiste audio avec FFmpeg
Finalement j'ai trouvé comment faire, mais il doit y avoir plus simple.
Extraction de toutes les pistes avec réencodage et augmentation du volume
ffmpeg -i vid.avi -vn -map 0:1 -acodec libmp3lame -ab 192k -ac 2 -vol 1200 01.mp3 &&
ffmpeg -i vid.avi -vn -map 0:2 -acodec libmp3lame -ab 192k -ac 2 -vol 1200 02.mp3 &&
ffmpeg -i vid.avi -vn -map 0:3 -acodec libmp3lame -ab 192k -ac 2 -vol 1200 03.mp3 &&
ffmpeg -i vid.avi -vn -map 0:4 -acodec libmp3lame -ab 192k -ac 2 -vol 1200 04.mp3 &&
ffmpeg -i vid.avi -vn -map 0:5 -acodec libmp3lame -ab 192k -ac 2 -vol 1200 05.mp3 &&
Création d'un fichier vidéo sans pistes audio.
D'ailleurs comment, lors de l'ajout des nouvelles pistes audio, demander à ce que les anciennes soient supprimées?
ffmpeg -i vid.avi -vcodec copy -an vid2.avi
incorporation des nouvelles pistes audio
ffmpeg -i vid2.avi -i 01.mp3 -i 02.mp3 -i 03.mp3 -i 04.mp3 -i 05.mp3 -vcodec copy vid3.avi
-acodec copy -newaudio -acodec copy -newaudio -acodec copy -newaudio -acodec copy -newaudio -acodec copy -newaudio
J'aimerai réaliser ces trois étapes en une seule si possible.
Hors ligne
#5 Le 16/01/2013, à 09:58
- Haleth
Re : Compression multipiste audio avec FFmpeg
ffmpeg -i file1.mkv -i file2.aac -i file3.aac -map 0:0 -map 0:1 -map 1:0 -map 2:0 -c:v copy -c:a:0 libmp3lame -c:a:1 libtheora -c:a:2 copy output.mkv
Ubuntu is an ancien African word which means "I can't configure Debian"
Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.
Hors ligne