python - 从视频文件中提取的音频太大
问题描述
我正在尝试从视频文件中提取音频。我在python中尝试过moviepy、ffmpeg等库。提取的音频文件过大。对于大小为 75 MB 的音频文件,来自 moviepy 的音频文件约为 1.1 GB。即使比特率为 16 kbps,采样率为 16000 Hz,提取文件的大小也只有 200 MB。任何其他库或提取的音频文件的大小至少与完整的视频文件相同或小于完整视频文件的方式。
'ffmpeg -i trial_copy.mp4 -ac 1 -ab 16000 -ar 16000 output.wav'
我在 ffmpeg 中使用上述命令。
解决方案
从视频文件中提取的音频太大
您正在输出 WAV。这是未压缩的,因此它会忽略您的比特率 ( -ab
),并会创建比输入中的压缩音频更大的文件。请参阅 Wav 音频文件压缩不起作用。
任何其他库或提取的音频文件的大小至少与完整的视频文件相同或小于完整视频文件的方式。
您可以使用流复制模式( )提取音频而无需重新编码-c copy
:
ffmpeg -i input.mp4 -map 0:a -c copy output.m4a
文件大小将相同,因为您基本上只是复制和粘贴音频(重新混合)。