M4A和AAC音频文件有什么区别?

ale*_*rtr 27 audio ffmpeg aac m4a

M4A音频文件和AAC音频文件之间是否有区别,或者它们是完全相同但具有不同的文件扩展名?

Rom*_* R. 27

.M4A文件通常只包含音频,格式为MPEG-4 Part 14文件(.MP4容器).

.AAC 不是容器格式,而是带有音频流编码的原始MPEG-4 Part 3比特流.

请注意,M4A不必包含完全AAC音频,还有其他有效选项.

  • 添加来自 @Beejor 的评论,尝试帮助人们澄清:M4A、MP4 和 MV4 是容器。就 OP 而言,.AAC 是文件扩展名,AAC 是编解码器。更令人困惑的是(当然!),AAC 是少数能够独立存在的音频编解码器之一,并且它也可能包含(“包含”)在容器(例如 MP4)内。重述:AAC 是一种编解码器,也可以是文件扩展名。M4A是一个容器。M4A 不是编解码器。 (7认同)
  • @KyleDelaney M4A不是编解码器.MP4/M4A/M4V都是可互换的文件扩展名,用于方便引用相同的MP4容器格式,作为附带媒体类型的提示.M4A:仅音频,M4V:仅视频,MP4(有时是M4V):两者.用于MP4文件的最常见编解码器是H.264视频和AAC音频.如果将M4A列为编解码器选项,它可能只是让您在多个标准MP4音频编解码器之间进行选择(如果不是,则只是具有不同选项的AAC). (4认同)
  • 难道`.M4A` 是一个独立于.`MP4` 容器的容器吗,前者是一个音频容器——就像`.M4V` 是一个视频容器一样——而后者则相反, 是*音频和视频*的容器吗?您的回答似乎只是暗示`.M4A` 文件使用`.MP4` 容器,这不是我理解的方式。 (2认同)
  • @Hashim:M4A和MP4(和其他)是扩展,假设容器格式称为MP4.数据结构完全相同,它只是M4A扩展的选择,表明该文件可能只有音频(这不是一个严格的条件,而是更多的提示). (2认同)

Rod*_*olo 13

有原始的视频和音频流,这些流不能直接在大多数视频/音频播放器上播放,它们需要"封装"在传输上,原始H.264视频流和原始AAC音频流需要在一个内部MP4封装器,它也可以在AVI或MOV封装器内.

MP4文件可以包含H.264视频流和/或AAC音频流,但由于某种原因,有人认为包含视频和音频的MP4文件使用文件扩展名M4V(v用于视频),如果它是MP4文件只包含使用M4A扩展的音频,这是其他封装器中常见的做法,如使用WMV和WMA的Windows Media,或使用OGV和OGA的OGG,看起来很傻.

因此,具有M4A文件扩展名的文件是可以包含AAC音频轨道的MP4文件,但情况并非总是如此,这就是为什么像mediainfo这样的程序可以方便地知道文件内部的内容.


sza*_*ary 6

它们不是同一件事.m4a与mp4基本相同,只是一种容器格式.编解码器!=容器.它并不意味着编解码器,因此可以包含mp3,ac3或任何其他音频编解码器.AAC文件是带有ADTS标头(以及可选的ID3标签)的连接AAC帧.