这个转换到底在做什么
.m4a 是一个 MPEG-4 容器,里面装着一条压缩过的音频流,绝大多数情况下是 AAC,偶尔是 Apple Lossless。WAV 是完全相反的思路:一个简短的文件头,后面跟着原始采样,一个接一个 写下来,完全不压缩。所以 M4A 转 WAV 的实质,是把压缩流解码回采样,再把这些采样如实 记下来。
这一点值得说清楚,因为它把两个方向的预期都摆正了。这一步不会有任何损失,因为解码是 精确的;这一步也不会挽回任何东西,因为录音被编码时 AAC 丢掉的细节没有被记录在任何 地方。你最终拿到的,是 M4A 里那些内容的一份诚实的、未压缩的副本。
什么时候该转,什么时候不该转
当这个文件接下来是要进软件,而不是进你的耳朵时,就该转。音频编辑器、DAW、游戏引擎、 语音转文字工具和硬件采样器都能毫无怨言地处理裸 PCM,而它们对 M4A 的支持从"部分支持" 到"完全不支持"都有。最常见的场景是 iPhone 上的语音备忘录:它存下来是 M4A,而你要用 来转写或剪辑的那个工具想要的是 WAV。
什么时候不该把 M4A 转换成 WAV:你只是想播放或者分享这段音频。M4A 本来就更小,WAV 能播的地方它都能 播,听起来也一模一样。毫无理由地把一个 4 MB 的文件变成 40 MB,正是这个页面希望帮你 避开的那个错误。
体积、速度和上限
单个文件最大 500 MB,超过这个数浏览器标签页确实没法把整个容器装进内存。转换在笔记本 上远快于实时,因为完全不涉及画面、也不做任何滤镜处理,真正决定耗时的是录音的长度。
全部过程都在本地。引擎是编译成 WebAssembly 的 ffmpeg,在你转第一个文件时下载一次, 之后由浏览器缓存,所以第二次转换是立刻开始的。