在iOS Safari上播放WAV文件

在iOS Safari上播放WAV文件,ios,html,safari,mobile-safari,Ios,Html,Safari,Mobile Safari,我正在努力让一个WAV文件在HTML页面上作为HTML5音频标签或通过mobile Safari(iPad/iPhone)中的常规可下载链接播放: HTML5音频对象只是显示不能播放音频文件< /代码>,当我点击下载锚引用的时候,我得到一个黑页,中间有一个“不能播放这个圆”。我尝试过各种频率(8000、11025、16000、32000、44100)、各种编码(mu-law、线性符号16位LE和BE)、各种容器(.wav、.caf、.aiff)和各种音频转换程序(Audacity、ffmp

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


HTML5<代码>音频对象只是显示<代码>不能播放音频文件< /代码>,当我点击下载锚引用的时候,我得到一个黑页,中间有一个“不能播放这个圆”。我尝试过各种频率(8000、11025、16000、32000、44100)、各种编码(mu-law、线性符号16位LE和BE)、各种容器(.wav、.caf、.aiff)和各种音频转换程序(Audacity、ffmpeg和苹果自己的afconvert)。。。我不能播放音频(除非我把它变成MP3——不,我不能只使用MP3或AAC,我需要一个“原始”格式,因为太长时间无法进入这里)

我查看了iOS支持的格式,它似乎支持WAV。。。有人对这个问题有经验吗?我使用的是最新的iOS 6.0.1

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


嗯,你肯定让我走上了正确的道路至少。。。显然根本不是档案。。。这是网络服务器。stockley提供的内容完全一样,但在我的web服务器上却不行。我想我必须详细查看HTTP响应。我的网络服务器正在返回
内容类型:audio/x-wav
,所以不是这样

检查我设置的测试站点的标题,您希望为包含所需html数据的页面返回
内容类型:text/html

内容类型:实际音频文件的音频/x-wav
http://www.test.com/file.wav


通过一系列的尝试和错误,我发现您需要一个内容范围标题,它才能工作。下面是一个允许wav文件在Safari for iOS中播放的my Header示例:

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

希望这有帮助

效果很好。我使用了内容范围:字节XX-XX/XX内容长度:XX

你能提供一个不起作用的示例音频文件吗?@madmik3确定我在这里放了一个测试文件:多个应用程序告诉我这个wav文件不是有效的wav文件。由于某种原因,文件本身无效。我会从另一个来源找到一个wav,并验证它是否在quicktime中播放。感谢您的检查。。。不过这很奇怪,在我的Windows盒子上,Windows Media Player播放得很好,Audacity播放得很好,Ffmpeg读取得很好。。。什么应用程序告诉你这不好?这是我用我的Mac电脑做的.caf文件(也不起作用):好吧,你肯定让我走上了正确的轨道至少。。。显然根本不是档案。。。这是网络服务器。stockley提供的内容完全一样,但在我的web服务器上却不行。我想我必须详细查看HTTP响应。我的web服务器正在返回
内容类型:audio/x-wav
,所以不是这样…我有一种预感,它是
范围:
标题。。。我猜Safari需要它的使用(而桌面Chrome、FF等不需要)。当我知道更多信息时,我会发回…这是
范围:
标题。。。有一次,我再次认识到宇宙中的一切都是美好的。谢谢你的帮助。你是如何获得HTTP请求状态的,我是说你使用哪种工具use@mark,如何启用
范围:
标题?我的wav文件在我的服务器上,我有一个html5音频元素,与原来的问题非常相似。什么是XX?像这样<代码>'Content-Range'=>'字节0-'$文件大小为“/”$文件大小
Content-Range: bytes XX-XX/XX
Content-Type: audio/wav 
Content-Disposition: attachment; filename="whatever.WAV" 
Content-Length: XX