媒资管理系统分析
视频点播解决方案
基础概念
流媒体:概括理解看就是将视频分成许多小块儿,将这些小块儿作为数据包通过网络发送出去,实现一边传输视频,一边观看视频。
流式传输:实现边下载边播放。
1.顺序流式传输:即顺序下载音视频文件,可以实现边下载边播放,不过用户只能观看已下载的视频内容,无法快进到未下载的视频部分。可以使用http服务器来实现,比如nginx、apache等。
2.实时流式传输:他可以解决顺序流式传输无法快进的问题。与http流式传输不同,它必须使用流媒体服务器并且使用流媒体协议来传输视频,它比http流式传输复杂。产检的流式传输协议有RTSP,RTMP,RSVP等
流媒体的概要结构
点播方案有
-
播放器通过http协议从http服务器上下载视频进行播放(不是流媒体方式)
问题:必须等到视频下载完成才可以播放,不支持快进到某个时间点进行播放。 -
播放器通过rtmp协议连接媒体服务器以实时流方式播放视频。(实时流式传输)
使用rtmp协议需要假设媒体服务器,造价高,对于直播多采用此方案。 -
播放器使用 HLS协议来连接http服务器(nginx、apache等)实现近实时流方式播放视频。(该项目采用此方式)
播放器
技术选型:
视频编码后要使用播放器对其进行解码、播放视频内容。在web应用中常用的播放器有flash播放器、h5播放器或浏览器插件播放器,其中以flash和h5播放器最常见。
- flash播放器:缺点是需要在客户机安装Adobe Flash Player播放器,优点是flash播放器已经很成熟了,并且浏览
器对flash支持也很好。 - H5播放器:基于h5自带video标签进行构建,优点是大部分浏览器支持H5,不用再安装第三方的flash播放器,并且随着前端技术的发展,h5技术会越来越成熟。
本项目采用H5播放器,使用 Video.js开源播放器。
Video.js是一款基于HTML5世界的网络视频播放器。它支持HTML5和Flash视频,它支持在台式机和移动设备上播放视频。这个项目于2010年中开始,目前已在40万网站使用。