我正在尝试使用.net作为来自其他服务器的流媒体音频的中介服务。
例如:externalserver.com/?u=xxx&p=xxx&id=123
我的html音频标签src有url myserver.com/?id=123
在此,我正在读取字节缓冲区中的响应流并将其转发到音频标记。
但在某些情况下,外部服务器返回的结果如'找不到文件。或者格式不正确'。
当我按原样流式传输服务器结果时, onerror eventlistener未被触发。我想知道是否有类似onplayerror的东西。
基本上,我想通知用户流是否返回任何明文错误而不是音频流。我无法使用明文检查,因为流是由音频元素通过它的src在内部加载的。
答案 0 :(得分:1)
根据您在html中使用<audio>
标记的方式,一种解决方案是添加div
<div id="player">click to play</div>
<audio preload="none" controls>
<source id="wav" src="http://example.com/404.wav" />
</audio>
然后添加事件处理程序
("#player").on("click", function () {
try {
$('audio')[0].play();
} catch (e) {
console.log("Error");
}
});
$("audio").on("error", function (e) {
console.log("Error");
});
$("#wav").on("error", function (e) {
console.log("Error");
});
这不应该只处理任何错误404。