摘要
在浏览器中,所有的数据交换都必须遵守HTTP协议,数据必须在完全传输完毕后才能由JavaScript进行处理。在这种情况下,是无法来实现实时的流数据传输。对于传统的云直播服务则需要提供视频云转码的功能,以便于兼容各种设备。随着WebSocket技术的开发应用,借助该技术,可以在浏览器上实现流传输,使得视频实时直播成为了可能。该系统实践了这个过程,使用JavaScript在浏览器上对视频流进行De-multiplexing、Decoding、Encoding、Multiplexing,并根据浏览器对视频格式的支持情况,针对直播云服务器提供的视频转发功能,基于最新的接口,将视频的解码、编码、渲染等操作集成到客户端,通过自动选择视频流的处理方式,最后实现实时直播。视频直播服务器不再需要处理视频流,客户端通过WebSocket接收视频数据并根据浏览器所支持的编码格式进行重编码。该系统的实践具有直播带宽要求低、服务端低配置、低延迟、无法盗链等优点。
- 单位