Łączenie wideo i audio, z ponownym kodowaniem audio
Zobacz ten przykład, wzięty z ten wpis na blogu ale zaktualizowany dla nowszej składni. Powinno to być coś w efekcie:
ffmpeg -i video.mp4 -i audio.wav \
-c:v copy -c:a aac -strict experimental output.mp4
Tutaj zakładamy, że plik wideo nie zawiera jeszcze żadnego strumienia audio, i że chcemy mieć ten sam format wyjściowy (tutaj, MP4) co format wejściowy.
Powyższa komenda transkoduje audio, ponieważ MP4 nie mogą przenosić strumieni audio PCM. Możesz użyć dowolnego innego pożądanego kodeka audio, jeśli chcesz. Więcej informacji można znaleźć w AAC Encoding Guide .
Jeśli Twój strumień audio lub wideo jest dłuższy, możesz dodać opcję -shortest
, aby ffmpeg przestał kodować po zakończeniu jednego pliku.
Kopiowanie audio bez ponownego kodowania
Jeśli Twój kontener wyjściowy może obsługiwać (prawie) dowolny kodek - jak MKV - wówczas możesz po prostu skopiować zarówno strumień audio jak i wideo:
ffmpeg -i video.mp4 -i audio.wav -c copy output.mkv
Zastępowanie strumienia audio
Jeśli Twój sygnał wejściowy zawiera już audio i chcesz go zastąpić, musisz powiedzieć ffmpeg, który strumień audio ma zostać pobrany:
ffmpeg -i video.mp4 -i audio.wav \
-c:v copy -c:a aac -strict experimental \
-map 0:v:0 -map 1:a:0 output.mp4
Opcja map
sprawia, że ffmpeg używa tylko pierwszego strumienia wideo z pierwszego wejścia i pierwszego strumienia audio z drugiego wejścia dla pliku wyjściowego.