来自Live Source的HTML5音频流

时间:2017-07-27 16:28:34

标签: html5 audio

我正在研究将实时音频流从vxWorks系统实现到HTML5音频播放器。我已经研究了一段时间,但我坚持一个关键步骤。

工作流程:

  1. 主持人有麦克风并对着麦克风说话
  2. 音频被接收到vxWorks OS中。在这里它可以编码,打包 - 这里可以做任何事情
  3. ????
  4. 用户打开网页以收听HTML5播放器中的实时音频。
  5. 我不知道第3步中的内容。假设我现在已经将音频编码为Mp3。我需要哪些技术才能将其发送到浏览器?我相信我可以通过HTTP协议发送这个,但我不明白它是如何打包的。即,如何将音频打包成HTTP协议。 HTML5播放器想要什么作为此数据的来源。一个URL?还是websocket数据?

    感谢。

1 个答案:

答案 0 :(得分:0)

#3的解决方案取决于您是否需要HTML5播放器上的低延迟实时音频流,或延迟可能是10-30秒。

<强> 1。延迟可能很高

您需要一个将通过HLS流式传输的流媒体服务器/ HLS打包程序,以及一个托管Flowplayer或JWPlayer的网页,该网页将使用HTML5视频标记播放该HLS流。需要将AAC编码(非mp3!)音频流推送到该流媒体服务器/ HLS打包器(RTMP发布是最常用的方法)。

你可以使用免费的nginx;它可以移植到vxWorks,可以通过HLS流出。您也可以尝试使用免费的VLC或ffmpeg。

如果你使它工作,流将可以在任何设备上的任何浏览器上播放 - iOS,Android,Windows OS等......

<强> 2。您需要低延迟

这要困难得多。您需要另一台运行Linux或Windows操作系统的计算机。 在该计算机上安装虚幻媒体服务器或Evostream服务器 - 这些服务器使用ISO BMFF打包通过Websocket协议流式传输到HTML5播放器。 与之前相同,需要将AAC编码(非mp3!)音频流推送到该流媒体服务器(RTMP发布是最常用的方法)。

这些流将在任何浏览器/任何操作系统上播放,除了iOS!