一、流媒体服务器的作用
流媒体服务器(Media Streaming Server)是在互联网上做视频点播、视频直播、视频互动等应用的基础支撑软件系统,如果您要在互联网上做视频播出应用,如在线课堂、网络电视、视频资讯、视频点播、视频资讯、短视频、网络直播、企业直播等,那您就需要使用流媒体服务器。
从项目项目开发的角度来讲,流媒体服务器将您在构建在线应用中的与视频相关的工作集中处理,使得您可以只关注业务细节而不用再去处理与视频相关的诸多技术细节,从而实现提高项目实施效率、降低项目实施风险的目标。
从产品功用和效率上将,流媒体服务器能够在一定的主机配置条件和网络带宽条件下提供流畅的、高并发的视频播出能力。因为流媒体服务器本身在视频播出方面做了诸多优化,如码流控制、IO优化、竞争处理等,使得充分利用硬件和网络能力,提供尽可能多的并发能力。譬如在同等的8核心CPU主机、1000Mbps网络条件下,使用流媒体服务器可以实现1000以上的播出并发能力,而传统Web服务器只能承载50到100的并发。
作为视频点播服务器,流媒体服务器提供的主要功能包括:接收视频文件上传、视频转码、视频存储和管理、视频播出地址发布、多终端适配等。大部分流媒体服务器会在转码结束后生成多种播出协议,可以面向网页、iOS终端、Android终端提供播出地址。
作为视频直播服务器,流媒体服务器提供的主要功能包括:直播流接收(如接收rtmp协议推流)、直播流转发和播出、发布直播地址给播放端、直播录制、生成回看地址等。大部分流媒体服务器会输出多种协议的直播地址,以适配不同终端的播放需求,这些播出地址包括:rtmp协议地址、http-flv协议地址、HLS地址等。
随着技术的发展,流媒体服务器的技术和产品也一直在不断的发展和演进,当前(2020年),视频播出技术发展的趋势包括:
1)高清视频为主(1080p、4K),高码率(原始视频码率>20Mbps,在线播出码率>4Mbps);
2)H264依然是主要视频编码格式,VP9/H265在有些应用中也开始采用;
3)视频传输更多的采用标准http协议,也有采用WebSocket、WebRTC等,Flash播放器逐步被淘汰;
4)采用WebRTC、Websocket协议进行视频播出的应用越来越多。
5)双向视频应用越来越多,在在线教学、会议直播等直播应用中成为标配。
二、流媒体服务器和普通Web服务器的对比(视频应用相关)
项目
|
流媒体服务器
|
Web服务器
|
播出方式
|
流媒体播出
(视频切片索引,流化播出、码率控制)
|
下载式播出
(竞争式下载播出)
|
并发能力
|
高
云视睿博流媒体服务器并发能力在3000以上
|
低
通常小于100
|
开发效率
|
高
研发人员不需要懂音视频技术,按规范集成即可
|
低
需要有懂音视频技术的团队参与研发,研发路线相对曲折
|
视频管理
|
有
|
无
|
视频转码
|
有
|
无
|
视频直播
|
有
|
无
|
播出鉴权
视频加密
|
有
|
无
|
播出统计
|
有
|
无
|
API/SDK
|
有
|
无
|
辅助工具
|
转码工具、直播工具、上传工具、视频网站搭建模块
|
无
|