【问题标题】:playing a WAV file on iOS Safari在 iOS Safari 上播放 WAV 文件
【发布时间】:2012-11-07 17:57:08
【问题描述】:

我正在努力让 WAV 文件作为 HTML5 音频标签或通过移动 Safari (iPad/iPhone) 中的常规可下载链接在 HTML 页面上播放:

<audio controls src="audio-pcm_s16le-8k.wav"/></audio>
<a href="audio-pcm_s16le-8k.wav">audio</a>

HTML5 audio 对象仅在其中显示 Cannot play audio file,当我单击下载引用的锚点时,我得到一个黑色页面,中间显示“无法播放此圈”。我尝试过各种频率(8000、11025、16000、32000、44100)、各种编码(mu-law、Linear Signed 16-bit LE 和 BE)、各种容器(.wav、.caf、.aiff)和各种音频转换程序(Audacity、ffmpeg 和 Apple 自己的 afconvert)... " 格式太长,无法进入这里)。

我查看了 iOS 支持的格式,它似乎支持 WAV……有人遇到过这个问题吗?我使用的是最新的 iOS 6.0.1

编辑: 选定的回答者让我解决了这个问题,但原因在于答案的 cmets。底线是它需要 HTML 范围标题来播放文件。

【问题讨论】:

  • 您能提供一个无法正常工作的示例音频文件吗?
  • @madmik3 确定我将其中一个测试文件放在这里:link
  • 多个应用程序告诉我这个 wav 文件不是有效的 wav 文件。由于某种原因,文件本身无效。我会从另一个来源找到一个 wav 并验证它是否可以在 quicktime 中播放。
  • 感谢您的检查...这很奇怪,在我的 Windows 机器上,Windows Media Player 可以正常播放,Audacity 可以正常播放,Ffmpeg 可以正常阅读...什么应用程序告诉您它不正常?这是我使用 Mac 制作的 .caf 文件(也没有工作):link
  • 嗯,至少你肯定让我走上了正确的道路……显然根本不是文件……它是网络服务器。来自stockley 的完全相同的内容有效,但在我的网络服务器上却没有。我想我将不得不详细查看 HTTP 响应。我的网络服务器正在返回 Content-Type: audio/x-wav,所以不是这样......

标签: ios html safari mobile-safari


【解决方案1】:

嗯,至少你肯定让我走上了正确的道路……显然根本不是文件……它是网络服务器。来自stockley 的完全相同的内容有效,但在我的网络服务器上却没有。我想我将不得不详细查看 HTTP 响应。我的网络服务器正在返回Content-Type: audio/x-wav,所以不是这样...

检查我设置的测试站点的标题,您希望为包含所需 HTML 数据的页面返回 Content-Type: text/html

Content-Type: audio/x-wav 用于实际的音频文件 (http://www.test.com/file.wav)

【讨论】:

  • 我有一种预感,它是 Range: 标头...我的猜测是 Safari 需要使用它(而桌面版 Chrome、FF 等则不需要)。当我知道更多时,我会回帖......
  • 这是Range: 标题...一旦我再次启用宇宙中的一切都很好。感谢您的帮助。
  • 你是怎么得到HTTP请求状态的,我是说你用的是什么工具
  • @mark,如何启用Range: 标头?我的 wav 文件在我的服务器上,并且我有一个与原始问题中的非常相似的 html5 音频元素。
【解决方案2】:

通过反复试验,我发现您需要一个内容范围标头才能使其工作。这是我的标头示例,它允许 wav 文件在 iOS 版 Safari 中播放:

Content-Range: bytes XX-XX/XX
Content-Type: audio/wav 
Content-Disposition: attachment; filename="whatever.WAV" 
Content-Length: XX    

希望这会有所帮助!

【讨论】:

    【解决方案3】:

    效果很好。我使用了 Content-Range: bytes XX-XX/XXContent-Length: XX

    【讨论】:

    • 什么是XX?像这样? 'Content-Range' =&gt; 'bytes 0-' . $fileSize . '/' . $fileSize
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    • 2012-01-29
    • 2010-11-19
    相关资源
    最近更新 更多