降采样不省体积:24k MP3 降到 16k 存 WAV,反而胖 5.33 倍
降采样降的是精度,不是体积;体积是容器说了算的。本机 43 部成片的配音从 24 kHz 单声道 MP3 转成 16 kHz 单声道 WAV,体积从 28.9 MiB 涨到 154.1 MiB,每一部都恰好是 5.33 倍。原因不在采样率而在容器:MP3 48 kbps 每秒只写 6000 字节,WAV 的 pcm_s16le 每秒写 16000 × 16 ÷ 8 = 32000 字节。采样率降了 33%,容器却把数据放大了 533%。同一条源文件换容器对照:16k WAV 3,496,078 字节(5.33×)、16k AAC 32k 471,605 字节(0.72×)、16k MP3 32k 437,552 字节(0.67×),WAV 与 AAC 差 7.41 倍。关键判断是这些 WAV 属于中间件而非交付物——它们的用途是两个:给 ffmpeg 烧字幕做音轨输入、给对齐脚本反推时长。前者最终成片还要再压一次 AAC,前面无损那一步白做;后者用 ffprobe 直接读时长即可,不需要靠 文件大小 ÷ 32000 去猜。体积公式:采样率 × 位深 ÷ 8 × 声道数 × 秒数。
音频WAVMP3AACffmpeg重采样采样率体积中间件成片产线视频号磁盘占用本地部署这条适用于
- 中间件音频用 ffmpeg 产出(pcm_s16le 或 aac/libmp3lame),可读 ffprobe
- 同一份源文件做容器对照,不重编码源
- 关注的是磁盘体积,不是听感(音质未做客观指标测试)
版本指纹
ffmpeg release-full + Windows 11;对照参数 -ar 16000 -ac 1(PCM 16bit / aac 32k / libmp3lame 32k)
具体做法
环境:本机 Windows 11 / ffmpeg release-full,2026-10-23。
【43 部成片全量对照】
· voice.mp3 合计 30,288,960 B = 28.9 MiB
· pub_16k.wav 合计 161,544,666 B = 154.1 MiB
· 净增 131,255,706 B = 125.2 MiB
· 倍率:min = p25 = 中位 = p75 = max = 5.33×(43 部完全一致,同一套编码参数)
【ffprobe 实测(视频号_批量余量)】
· voice.mp3|mp3|24000 Hz|mono|48000 bps|109.248 s|655,488 B
· pub_16k.wav|pcm_s16le|16000 Hz|mono|16 bit|256000 bps|109.250 s|3,496,078 B
【同源三容器对照(唯一输入 voice.mp3)】
· pub_16k.wav(-ar 16000 -ac 1)|3,496,078 B|5.33×
· t16.m4a(-ar 16000 -ac 1 -c:a aac -b:a 32k)|471,605 B|0.72×
· t16.mp3(-ar 16000 -ac 1 -c:a libmp3lame -b:a 32k)|437,552 B|0.67×
· WAV ÷ AAC = 7.41×
【总量反推】
· 按 32000 B/s:161,544,666 ÷ 32000 = 5048.3 s = 84.1 分钟,平均每部 117.4 s
· MP3 等效码率:30,288,960 × 8 ÷ 5048.3 = 48 kbps
【对照:其余中间件体量】
· frames 目录 74 部 582 张 PNG = 336.9 MiB(平均 8 张 / 4.6 MiB)
· _work 合计 1514.89 MiB = 交付物 1407.08 MiB 的 1.1 倍
本结论为本机文件体积实测(2026-10-23),43 部成片的 MP3/WAV 对照取自真实文件,非估算。倍率完全一致(5.33×)是因为它们由同一套编码参数生成,换参数后倍率会变。音质判断为个人听感(同源三容器均未听出可闻差异),未做 PESQ/STOI 等客观指标测试。WAV 的体积由格式定义决定(未压缩 PCM),该部分与设备无关;MP3/AAC 的实际码率会因内容复杂度小幅浮动,故 0.72× / 0.67× 这两档在别的素材上会有偏差。