虽然我没有iPhone来测试这个,但我的同事告诉我嵌入式 媒体文件,例如下面代码段中的媒体文件,只有当iphone通过连接时才有效 WLAN连接或3G,并且在通过GPRS连接时不起作用。
<html><body>
<object data="http://joliclic.free.fr/html/object-tag/en/data/test.mp3" type="audio/mpeg">
<p>alternate text</p>
</object>
</body></html>
是否有带媒体文件的示例网址,该网址将在iPhone浏览器中播放 当iPhone连接使用GPRS(而非3G)?
答案 0 :(得分:2)
当通过EDGE连接时,iPhone YouTube应用程序会自动下载质量较低的视频,而不是通过Wi-Fi连接时,因为网络速度要慢得多。这一事实让我相信苹果公司会做出设计决定,不要费心去EDGE下载MP3。如果比特率足够低,浏览器无法预先知道,并且机会是,它不会。因此,不要让用户使用播放时间太长的声音文件来挫败用户(并防止他们在下载时接听电话),最好不要让他们感到悲伤并鼓励他们找到Wi-Fi热点。
答案 1 :(得分:1)
尝试这样的东西,它适用于网页。这实际上是一个320kps的mp3,但它只有30秒长。您可以使用名为LAME的程序将mp3转换为比特率 这对你有用。
<div class="music">
<p>Pachelbel's Canon</p>
<!--[if !IE]>-->
<object id="Cannon" type="audio/mpeg" data="http://calgarydj.ca/sound%20files/Pachebels%20Cannon.mp3" width="250" height="16">
<param name="autoplay" value="false" />
<param name="src" value="http://calgarydj.ca/sound%20files/Pachebels%20Cannon.mp3" />
<!--<![endif]-->
<object id="Cannon" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" width="250" height="60">
<param name="autostart" value="false" />
<param name="url" value="http://calgarydj.ca/sound%20files/Pachebels%20Cannon.mp3" />
<param name="showcontrols" value="true" />
<param name="volume" value="100" />
<!--[if !IE]>--></object><!--<![endif]-->
</object>
</div><!-- end of control -->
答案 2 :(得分:0)
我不知道这个限制。虽然在您的提供商可能按字节收费的蜂窝数据服务上禁用可能数据大量的OBJECT或EMBED标签是有意义的,如果这是因为它仍然可以在3G上运行是没有意义的而且不在GPRS上
也许问题是基本数据吞吐量之一?没有自己的iPhone(或我自己),很难测试你的同事的陈述。
请记住,GPRS比Wi-Fi或3G慢得多。根据维基百科,GPRS将提供56到114 kbps的总双工吞吐量,并非所有这些都在下载方向。您已经可以看到,即使您获得了最佳吞吐量并将其全部作为下载速度,也不足以立即流式播放典型的128 kbps mp3。
以this forum discussion作为Google上的一个例子,GPRS客户(不使用Telestra,即该地区的EDGE提供商)的客户速度约为40 kbps。因此,如果问题暗示,你被困在EDGEland,而不是3Gland或其他任何东西,它将需要大约20秒的缓冲来播放30秒的mp3。当你使用像OBJECT或EMBED这样的行为模糊标签时,无法保证浏览器如何解释它以及它是否会尝试智能地流式传输文件而不必在启动它之前下载整个文件。
所以,你的同事很可能没等多久就能看到他选择的任何嵌入式媒体作为测试开始播放(假设他没有在那里使用你的17KB测试mp3)。也有可能iPhone确实有这个限制,虽然我认为谷歌会比我的快速搜索发现更多,因为人们已经对他们不喜欢iPhone的其他事情发出了足够的声音。另一种可能性是,目前随iPhone附带的Safari构建存在限制,可能会在未来版本或其他浏览器中进行更改。
最终,问题是,您真正想要什么样的用户体验? GPRS上的嵌入式音频将需要很长时间才能加载,用户不会享受这种体验,或者如果它应该开始在页面访问时播放并且在它们导航之前没有加载,它们甚至可能会体验到它远。在这种情况下,这可能不是一个值得努力的目标。