1

我正在使用 ffmpeg 命令行通过 tee 伪复用器获取多个输出。我尝试过的命令:

案例 1-在 mp4 中将视频 ( video.h264) 与音频 ( audio.aac) 混合并将 mpegts 发送到 udp 单播地址:

ffmpeg -i 'video.h264' -i "audio.aac" -vcodec copy -acodec copy -absf aac_adtstoasc -f tee -map 1:v -map 0:a "result.mp4|[f=mpegts]udp://127.0.0.1:2211"

输出 1:生成的 mp4 文件没有音频,播放时的 udp 流也没有音频。

案例 2-在 mpegts 文件中video.h26使用音频 ( )混合视频 ( 4) 并将 mpegts 发送到 udp 单播地址:audio.aac

ffmpeg -i 'video.h264' -i "audio.aac" -vcodec copy -acodec copy -f tee -map 1:v -map 0:a "[f=mpefts]result.mpeg|[f=mpegts]udp://127.0.0.1:2211"

输出 2:生成的 mpegts 文件很好,播放时的 udp 流也有音频。没有问题。

我必须做案例 1,我可以复用 aac 和 h264 并获得两个输出,一个是 mp4 文件转储,第二个是流 mpegts udp 单播(如 udp://127.0.0.1:2211)。并且两个输出都应该有视频+音频。

谁能告诉我为什么在案例 1 中输出文件没有音频?

4

0 回答 0