Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Safari-WebkitAudioContext因未知原因阻塞了一些mp3文件_Safari_Mp3_Web Audio Api_Audiocontext_Webkitaudiocontext - Fatal编程技术网

Safari-WebkitAudioContext因未知原因阻塞了一些mp3文件

Safari-WebkitAudioContext因未知原因阻塞了一些mp3文件,safari,mp3,web-audio-api,audiocontext,webkitaudiocontext,Safari,Mp3,Web Audio Api,Audiocontext,Webkitaudiocontext,我对Safari中的某些MP3文件有问题 这是一个密码笔: 在chrome中,两个按钮都可以播放两个文件。 在safari中,只有第一个按钮起作用 为什么会这样?safari在看不到“.mp3”后缀时会窒息吗?还是其他什么东西 两个请求都返回“音频/mp3”内容类型标题 这两个文件都可以作为MP3下载并在任何音频播放器中播放 这两个文件都可以通过safari地址栏直接播放 但只有一个文件使用WebkitAudioContext以编程方式播放 失败代码: window.webkitAudioC

我对Safari中的某些MP3文件有问题

这是一个密码笔:

在chrome中,两个按钮都可以播放两个文件。 在safari中,只有第一个按钮起作用

为什么会这样?safari在看不到“.mp3”后缀时会窒息吗?还是其他什么东西

  • 两个请求都返回“音频/mp3”内容类型标题
  • 这两个文件都可以作为MP3下载并在任何音频播放器中播放
  • 这两个文件都可以通过safari地址栏直接播放
但只有一个文件使用WebkitAudioContext以编程方式播放

失败代码:

window.webkitAudioContext.decodeAudioData(request.response, ...)

你的MP3文件无效。文件开头有多部分表单垃圾。如果使用十六进制编辑器打开它,您将看到:

播放此文件的任何其他地方都只是为了对您友好。:-)


另外,对
内容类型
标题使用
音频/mpeg
。这在您的情况下并不重要,因为您正在使用音频上下文来解码数据。。。它不知道原始的
内容类型是什么。我在这里向其他人提到这一点,因为这是一个常见的错误。

先生,您是救世主,谢谢。我使用的是AWS预先指定的url并发送
FormData
,而不是直接发送
文件
对象。从字面上看,其他一切都在发挥它。。。狩猎真卑鄙!