Windows端Chrome无法播放iPhone语音备忘录M4A音频问题
问题:iPhone语音备忘录录制的.m4a音频无法在Windows Chrome中播放
我有一个通过iPhone语音备忘录应用录制的压缩.m4a音频文件,尝试使用<audio>标签实现在任意设备上播放,初始代码如下:
<audio ...> <source src={file.href} type="audio/x-m4a" /> </audio>
该文件存储在后端,其MIME类型显示为audio/x-m4a。在iPhone等苹果设备上打开页面时可正常播放,但在Windows设备的Chrome浏览器中无法播放,控件呈灰色,仿佛文件无法加载。
我尝试将m4a文件的MIME类型改为audio/mp4,编写了以下工具函数:
static fixMimeType = (mimeType: string) => { if (mimeType.toLowerCase() === 'video/quicktime') { // 为.mov文件使用video/mp4 return 'video/mp4'; } if (mimeType.toLowerCase() === 'audio/x-m4a' || mimeType.toLowerCase() === 'audio/m4a') { // 为.m4a文件使用audio/mp4 return 'audio/mp4'; } return mimeType; };
但即使修改了MIME类型,该文件在Windows设备上仍然无法播放,不过在iPhone上依旧正常。
内容的提问来源于stack exchange,提问作者dokgu
相关产品推荐
相关产品推荐

