我知道你的问题已经有一年了,但我会尝试回答它,希望我能节省别人解决问题的时间和麻烦。
据我所知,任何原生 HTML5 音频/视频元素都不支持 RTMP。
幸运的是,mediaelement.js 似乎在 Flash 版本中支持此协议
看来该协议更常用于视频。这就是为什么您必须提供一些额外的参数才能使 RTMP 流正常工作。
以下是我如何使用 mediaelement.js 获取 RTMP 音频流:
JavaScript:
$('video,audio').mediaelementplayer({
audioWidth: 500,
features: ['playpause','current', 'progress', 'volume'],
pluginVars: 'isvideo=true',
//Example rtmp://my-streaming-service.com/specific-stream
flashStreamer: "rtmp://<base-url+path>",
mode:'shim'
});
HTML:
<audio preload="none" controls="controls">
<!-- Example rtmp://my-streaming-service.com/specific-stream/64.stream -->
<source src="rtmp://<base-url+path>/<filename>" type="video/mp4">
</audio>