M4A
常用于仅含音频的 MPEG-4 文件扩展名,可封装 AAC、ALAC 等编码;它描述文件用途和容器习惯,而不是一种独立音频编码。
详细说明
M4A 是 MPEG-4 音频文件常用的扩展名,通常写作 `.m4a`。这类文件建立在 ISO 基础媒体文件格式和 MPEG-4 文件结构之上,用轨道、媒体数据、时间表与元数据盒组织内容。M4A 不是 ISO 标准中一种独立的音频压缩算法,而是软件和发行系统用来区分以音频为主的 MPEG-4 文件的命名惯例。
M4A 不是编码格式。
文件中的音频最常见为 AAC 或 Apple Lossless Audio Codec,也可能出现其他获得容器支持的编码。AAC 是有损编码,ALAC 是无损编码;两个文件都使用 `.m4a`,不表示其压缩性质相同。正确识别需要读取样本描述中的编码标识,并同时检查对象类型、采样率、位深和声道。
容器中的 `moov` 等结构保存轨道和样本表,`mdat` 保存媒体数据;标签、封面、章节和无缝播放信息可由相应元数据盒承载。`moov` 的位置会影响网络渐进下载是否能在文件完全取得前开始解析,但不会改变音频编码。文件还可包含多个音频轨道或其他辅助数据,尽管常见 M4A 只有一条主音轨。
`.m4a`、`.mp4` 与 `.m4b` 可能使用相同基础容器。`.mp4` 常用于音视频节目,`.m4b` 常用于有声书并配合章节或书签,扩展名差异主要帮助应用选择处理方式。把扩展名直接改写不会完成编码转换,也不能修复不兼容的内部轨道。
将 AAC M4A 重封装为另一容器可以不改变音频码流;把它转为 ALAC M4A 则必须先解码再无损保存已经解码的样本,原先有损压缩删除的信息不会恢复。媒体数据库应把 M4A 作为容器或文件类型,与 AAC、ALAC 等实际编码分开描述。