.m4a 被认为是 audio/m4a 或 audio/mp4

.m4a is considered audio/m4a or audio/mp4

我正在尝试将音频上传到 S3,我有点困惑我应该将我的 mime 类型声明为什么。我的音频文件是在 iphone 上录制为 kAudioFormatMPEG4AAC 的 m4a。这会被视为 audio/m4a 还是 audio/mp4?我在网上看到相互矛盾的答案。

m4a中的m4MPEG-4的简写,就像mp4MPEG-4的简写一样。

事实上,m4am4vmp4文件都具有相同的内部MPEG-4原子结构。文件之间的区别在于它们的内容(视频文件有视频原子和音频原子。)

尽管使用相同的文件扩展名,但音频的编解码器也可能不同,例如,alacAAC 格式都使用 MPEG-4 容器格式和 m4a 文件扩展名。

所以回答你的问题,真的没有太大区别。我个人的偏好是 audio/mp4,因为这实际上是在说

Audio data in MPEG-4 container

audio/m4a 就像在说

Audio data in MPEG-4 container containing audio

使用audio/mp4audio/m4a 可能有效,但无效。

MP4 MIME type registration:

2.  Selection of MIME Types for MP4 Files

   The MIME types to be assigned to MP4 files are selected according to
   the contents.  Basic guidelines for selecting MIME types are as
   follows:

   a) if the file contains neither visual nor audio presentations, but
      only, for example, MPEG-J or MPEG-7, use application/mp4;

   b) for all other files, including those that have MPEG-J, etc., in
      addition to video or audio streams, video/mp4 should be used;
      however:

   c) for files with audio but no visual aspect, including those that
      have MPEG-J, etc., in addition to audio streams, audio/mp4 may be
      used.

   In any case, these indicate files conforming to the "MP4"
   specification, ISO/IEC 14496-1:2000, systems file format.

此外,the list of standard MIME types包括audio/mp4,而不是audio/m4a,非标准MIME类型应该包括“x-”,如audio/x-m4a

2021 年我 audio/mp4.m4a 文件在 Firefox + Chrome (Linux)、Opera (Android) 上运行,但在iPhone 野生动物园。对于某些格式,OS 由于编解码器而发挥作用。 我使用了带有类型属性集 的源标记,并且还在流式传输/下载文件的 Content-Type header 中设置了相同的类型 .

另见:How to play .m4a with HTML5 audio in IE(9+) and Safari (Pad)?