我使用了如下命令:
ffmpeg -i video.avi -i audio.mp3 -vcodec codec -acodec codec output_video.avi -newaudio
在最新版本添加新的音轨到视频(不混合)。
但是我更新了ffmpeg到最新版本(ffmpeg版本git-2012-06-16-809d71d),现在在这个版本中参数-newaudio不起作用。
请告诉我如何添加新的音频到我的视频(不混合)使用ffmpeg。
我使用了如下命令:
ffmpeg -i video.avi -i audio.mp3 -vcodec codec -acodec codec output_video.avi -newaudio
在最新版本添加新的音轨到视频(不混合)。
但是我更新了ffmpeg到最新版本(ffmpeg版本git-2012-06-16-809d71d),现在在这个版本中参数-newaudio不起作用。
请告诉我如何添加新的音频到我的视频(不混合)使用ffmpeg。
当前回答
这就是我是怎么做的。
我的设置是我有两个媒体流一个视频(有自己的音频频道)&一个音频。我没有从转换,但我通过将其与额外的音频通道集成而不替换视频流中的旧音频来重新流式直播源。
这是我使用的代码。
ffmpeg -i "Video stream with its own audio" -i "another audio stream" -map 0:v -map 0:a -map 1:a -shortest -f mpegts "multicast udp stream out put"
该代码所做的是,它在从现场源获取流后映射每个视频和音频通道。-map 0:v是视频流,-map 0:a是来自视频源的音频(注意-map中的0),最后-map 1:a是来自第二个源的音频流。
然后它只是通过多播地址使用mpegts重新传输它。您可以将其更改为文件、单播流或任何其他受支持的输出格式。
这是我正在使用的代码。
ffmpeg -i "rtp://@231.0.0.208:1234" -i "rtp://@231.0.0.206:1234" -map 0:v -map 0:a -map 1:a -shortest -f mpegts "udp://@231.0.0.45:1234"
希望这能帮助到一些人。谢谢!
其他回答
这展示了如何用ffmpeg将所有音轨合并到一个完整的目录:
ffmpeg -i video.mp4 -i audio.mp3 -map 0:v -map 1:a -c:v copy -shortest output.mp4
如果你正在使用旧版本的FFMPEG,你不能升级,你可以做以下:
ffmpeg -i PATH/VIDEO_FILE_NAME.mp4 -i PATH/AUDIO_FILE_NAME.mp3 -vcodec copy -shortest DESTINATION_PATH/NEW_VIDEO_FILE_NAME.mp4
注意,我使用了-vcodec
没有什么对我很有效(我想这是因为我输入的。mp4视频没有任何音频),所以我发现这对我很有效:
Ffmpeg -i input_video.mp4 -i balipraavid .wav -map 0:v:0 -map 1:a:0 output.mp4
这就是我是怎么做的。
我的设置是我有两个媒体流一个视频(有自己的音频频道)&一个音频。我没有从转换,但我通过将其与额外的音频通道集成而不替换视频流中的旧音频来重新流式直播源。
这是我使用的代码。
ffmpeg -i "Video stream with its own audio" -i "another audio stream" -map 0:v -map 0:a -map 1:a -shortest -f mpegts "multicast udp stream out put"
该代码所做的是,它在从现场源获取流后映射每个视频和音频通道。-map 0:v是视频流,-map 0:a是来自视频源的音频(注意-map中的0),最后-map 1:a是来自第二个源的音频流。
然后它只是通过多播地址使用mpegts重新传输它。您可以将其更改为文件、单播流或任何其他受支持的输出格式。
这是我正在使用的代码。
ffmpeg -i "rtp://@231.0.0.208:1234" -i "rtp://@231.0.0.206:1234" -map 0:v -map 0:a -map 1:a -shortest -f mpegts "udp://@231.0.0.45:1234"
希望这能帮助到一些人。谢谢!
标记的答案不设置音轨的语言。
下面的例子为默认音轨(视频的唯一音频通道)指定德语,为新添加的音轨指定英语:
Ffmpeg -i "/dir/视频。Mkv " -i "/dir2/audio。ac3" -map 0 -map 1:a -c:v copy -short -metadata:s:a:0 language=ger -metadata:s:a:0 title=" ger " -metadata:s:a:1 language=eng -metadata:s:a:1 title=" eng " "/dir/output.mkv"
(s:a:0从0开始计数,根据需要调整数字。如果音轨语言已经指定,则不需要设置它,只需要为您添加的音轨设置它。)