我需要从客户端应用程序无法直接访问的位置流式传输音频。为此,我正在调查使用 Java servlet 或 PHP 根据需要创建流。
以前有人做过吗?
这将如何处理 <audio> 标签中的跳过/查找命令?
有什么办法可以防止客户端缓存音频?
使用它来阻止缓存:
header("Cache-Control: no-cache, must-revalidate");
一定有人这样做是为了保护受版权保护的音乐。
它仍然可以与跳过和搜索标签一起正常工作。
以前有人做过吗?
是的,我很确定这已经完成了。如果您正在寻找代码,请参阅HTTP_Download。
这将如何处理
<audio>
标签中的跳过/查找命令?
在服务器端没有什么可做的。您的浏览器会处理这个问题。如果您想在浏览器中处理该问题,请查阅您的浏览器技术规范,了解<audio>
您的浏览器支持的 HTML 标记的功能。
有什么办法可以防止客户端缓存音频?
一点也不。数据的当前副本在客户端可用,否则浏览器无法播放/跳过/搜索媒体。
如果您从脚本生成音频标签,那么您可以通过在示例文件名的末尾添加一个虚拟 GET 变量来强制重新加载示例。像这样的东西...
echo "<source src=\"sample.php?rand=" . rand(1,99999) . "\" />\n";