0

我尝试分两步从多个图像文件和音频文件创建视频幻灯片:

  1. 从一系列图像文件创建临时视频文件
  2. 将音频文件添加到临时视频文件中,延迟为 5 秒

音频文件是一个未压缩的立体声 wav 文件,以 44100 Hz 的采样率和 32 位的位深度进行编码,大小为 40.1 MB。为了保持输入音频文件的无损质量,我根据Slideshow Wiki使用选项-c:a aac -b:a 192k。但是,最终输出的视频文件大小仅为 4.49 MB。

输出的视频文件如何比输入的音频文件小 10 倍左右,并且仍然保持原始的无损质量?

我的代码:

ffmpeg -f concat -i slide-sequence.txt -c:v libx264 -r 30 -filter_complex format=yuv420p temp.mp4
ffmpeg -i temp.mp4 -i audio.wav -af "adelay=5000|5000" -c:v copy -c:a aac -b:a 192k out.mp4
4

1 回答 1

0

输出的视频文件如何比输入的音频文件小 10 倍左右,并且仍然保持原始的无损质量?

它不是。AAC 是一种有损格式。它使用编码方法使其听起来不错,尽管它是有损的。

有些格式既压缩又无损,例如 FLAC。YouTube 支持这一点,因此请使用:

ffmpeg -i temp.mp4 -i audio.wav -af "adelay=5000|5000" -c:v copy -c:a flac out.mkv

注意输出容器格式从 MP4 到 Matroska ( .mkv) 的变化。YouTube 支持 Matroska。

于 2021-03-17T16:05:06.090 回答