【发布时间】:2026-01-20 18:45:01
【问题描述】:
我需要一个音频和视频轨道持续时间始终相同的视频文件。即使源音频没有音轨,该文件也必须包含音轨。当源没有音频跟踪时,如何告诉 ffmpeg 添加静音音轨。此外,如果源的音轨与视频的持续时间不同,我需要 ffmpeg 附加无声音频以使输出音频和视频的持续时间相同。这可能与 ffmpeg 合二为一吗?
【问题讨论】:
标签: ffmpeg
我需要一个音频和视频轨道持续时间始终相同的视频文件。即使源音频没有音轨,该文件也必须包含音轨。当源没有音频跟踪时,如何告诉 ffmpeg 添加静音音轨。此外,如果源的音轨与视频的持续时间不同,我需要 ffmpeg 附加无声音频以使输出音频和视频的持续时间相同。这可能与 ffmpeg 合二为一吗?
【问题讨论】:
标签: ffmpeg
如果源文件中没有音频**,则以下命令将添加与视频长度相同*的静音轨道。
ffmpeg -i video -f lavfi -i anullsrc=cl=1 -shortest -c:v libx264 -c:a aac output.mov
*由于视频帧持续时间和音频帧持续时间通常不相同,因此长度不会完全相同。
**当map 未指定时,ffmpeg 从具有最高通道数的输入中选择单个音频流。如果有两个或多个流具有相同的编号。通道中,它选择索引最低的流。 anullsrc这里只有一个通道,所以除非source没有音频,否则会被忽略。
【讨论】:
anullsrc 是一个过滤器生成器。为 H264 输出编辑了 cmd。