局域网环境下的直播平台(校园电视台)搭建之路

Posted zhiboshequ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了局域网环境下的直播平台(校园电视台)搭建之路相关的知识,希望对你有一定的参考价值。

近些年,随着互联网视频的普及,各个行业都在通过视频这种流行的方式来发布内容,生动、直观这是它的天生优势。

作为学校里的一名信息中心老师,领导发话也要模仿兄弟单位建立我校自己的视频门户,用来把学校发生的新鲜事、学校师生的荣誉、优秀学生的事迹、还有领导的重要指示精神,都想用视频这种新鲜的方式去呈现,让人们更关注,更喜欢。

说实话,虽然自己从事信息技术和多媒体已经有8年多时间,对摄像、视频编辑、美术设计都还算熟悉,也通过社会化视频平台做过直播,比如(优酷、花椒、微博、一直播)等,但是自己去搭建这种平台还是头一次,也是一头雾水。

本着对领导负责的态度,我开始潜心研究和学习,开始,我自己设计了一个简单的网站,将摄像机的视频采集后推送到了微博视频平台,然后将微博的播放地址嵌入到自己的网站上,以为这样万事大吉。测试后发现,收看的人数达到50人以上就异常卡顿,最终找到了原因,是因为学校的公网出口太窄导致的,学校总的公网出口只有100Mb/s,720P的直播50人收看就把带宽跑满了。看来,需要在校内搭建自己的发布服务器才能最终解决这个问题。

沿着这个思路,我开始寻找自己的解决方案,幸运的是,由于自己常年在CSDN上啃食着知识,也在这里找到了解决问题的办法,是一个版主的博文帮我打开了思想的大门。在这里,我找到了串流直播这款专业的免费直播软件,同时,还测试了VLC、FFMPEG、OBS这几款免费的直播采集编码工具,相比较下来,我觉得串流直播这个软件做的是最好的,下面是我自己的测试结果。

软件名称

功能完整性

稳定性

性能

易用性

FFMPEG

完整

极不稳定

很差,占用资源比较高

最差

全部为命令行方式操作

VLC

一般

极不稳定

很差,占用资源比较高

一般

OBS

相对完整

仅支持H.264视频编码和RTMP推流发布

一般

一般,做了部分优化设计

一般

有图形化界面,但是设计不是很人性化

串流直播

很完整

支持H.264/H.265

/MPEG-4/MPEG-2多种视频编码;

支持AAC/HE-AAC/MP3多种音频编码

支持TS/MP4/FLV/F4V

/MOV多种录制格式

支持UDP/RTSP/RTMP

/HTTP多种发布协议

支持组播加密,字幕/台标叠加,图像处理

支持硬件加速编码

很稳定

很高

占用CPU和内存资源都很低

易用

有图形化操作界面

人性化设计

功能直观,操作简单

 

至此,直播节目采集处理的工作已经完成,但是,为了能够将节目发布出去在网页端进行呈现,还需要搭建流媒体服务器来提供支撑,为此我查阅了大量资料,又在互联网上进行疯狂检索,为此我反复测试了不下十五个流媒体平台软件,之所以要做这么多工作,主要是奔着为学校省钱的目的(小地方的学习,经济比较寒酸^-^),其次,也是为自己充充电,通过这次实践,我发现自己学会了好多流媒体方面的知识。

整个测试工作异常艰辛(主要因为无人指点全靠自学,还有就是要搭建各种测试环境),为此我几乎调用了学校所有的网络资源,包括服务器、交换机、防火墙、教师机等,期间我做了服务器压力测试、带宽压力测试、组播功能测试、单播功能测试、终端解码能力测试、多码流自适应播放测试、音视频同步性测试、直播延时测试、大并发稳定性测试(包括服务器平台稳定性和校园网稳定性)等诸多测试工作。

 

下面是我对这些测试结果的一个记录和总结:

 

软件名称

比较项

iAVCastMediaServer

(串流媒体服务器)

Red5

nginx-RTMP模块

Wowza

Adobe

AMS5

Extended

开发语言

C++

Java

C++

Java

C++

单播并发性能

(以2Mbps视频为例)

5000并发

300并发

1000并发

300并发

500并发

支持的操作系统平台

Linux/Windows

Linux Windows

Linux

Linux

Windows

Linux

Windows

稳定性

非常稳定

一般

稳定

一般

稳定

易用性

强,有直观的图形化操作界面

一般

一般

支持的输出协议类型

RTMP

HTTP

HLS

DASH

RTSP

RTMP

RTMPT

RTMPS

RTMPE

RTSP

RTMP

HLS

HLS

RTMP

DASH

RTSP

RTMP

RTMPT

RTMPS

RTMPE

RTMFP

HLS

直播/点播功能

支持

支持

支持

支持

支持

直播录制

支持录制为MP4、FLV

支持最大录像文件尺寸限制;支持最大录制时长限制

录制为FLV

录制为FLV

支持录制为MP4、FLV

支持录制为MP4

多码流自适应

支持RTMP/HLS/DASH多码流自适应

不支持

不支持

支持RTMP/HLS/DASH多码流自适应

支持HDS多码流自适应

缩略图和播放预览图自动提取

支持

不支持

不支持

不支持

不支持

直播流转发

支持

不支持

支持

支持

支持

直播流分发

支持

不支持

支持

支持

支持

多服务器负载均衡

支持

不支持

不支持

不支持

不支持

直播录像自动入库

支持

不支持

不支持

不支持

不支持

图形化监控

支持

不支持

不支持

不支持

支持

点播节目批量入库

支持

不支持

不支持

不支持

不支持

支持的播放终端类型

PC/android/ios/STB

PC

PC

PC

PC

内容管理系统

要自己开发

要自己开发

要自己开发

要自己开发

多终端内容呈现

支持PC/手机/机顶盒

要自主开发

要自己开发

要自己开发

要自己开发

多终端自动适配

(码流和协议)

支持

不支持

不支持

不支持

不支持

开源/收费标准

不开源

6万元/实例(流媒体系统)

4万元/实例(内容管理系统)

开源

免费

开源

免费

不开源1995美元/实例

不开源

6000美元/

实例

技术支持和服务

官方提供完善的

技术支持,能提供

上门安装和培训

线上社区提供,只能用英文交流

线上社区提供,只能用英文交流

以上测试工作完成后,根据以上多个平台的特性,我把我们学校自身的需求也做了一下梳理:

  1. 我们这所职业学校有5千多名师生,因此活动直播时需要平台支持5000并发收看;
  2. 学校信息中心维护人员比较少,懂流媒体技术的人员只有我一个,而且我还要身兼数职,所以需要一个稳定可靠,操作简单并且维护方便的平台,交给普通技术人员去维护;
  3. 我们自己没有软件开发能力,对流媒体和内容管理平台开发都一无所知,是否开源对我们不重要,我们只想要一个功能完整的系统,装好就能用;
  4. 我们需要平台支持PC端和智能手机端播放;
  5. 我们需要直播节目可以自动录制下来,并且自动生成可以回放的节目;
  6. 需要支持多服务器负载均衡,用来满足未来更大的并发用户量;
  7. 最好能支持多码流发布和多终端适配,给手机端自动分发低分辨率/低码流的内容来降低网络带宽压力;
  8. 需要在出现问题的时候能有人提供及时的技术支持;

然后,我将我们自身的需求与以上几个不同平台的特性做了一下比较,以下是比较后的结果:

在技术实现上:

1.“串流媒体服务器”最符合我们的使用要求,用1台服务器就可以满足需要;

2.“Wowza”和“FMS”基本上也都具备主要功能,但是还需要自己找人开发内容管理系统和前台网站,这对我们来说是比较头痛的事情。

3.使用“Wowza”这个系统需要部署12台服务器,使用“FMS”系统需要部署10台服务器;

在成本方面:

  1. 使用“串流媒体服务器”系统,需要花费10万元购买流媒体软件和内容管理发布平台软件,需要花费3万元购买1台Dell R730服务器,总费用13万元
  2. 使用“Wowza”系统,需要花费12 x $1995 = 16.5万元(人民币)购买软件,需要花费12 x 3万元 = 36万元购买12台Dell R730服务器,需要花费至少8万元找人开发内容管理和发布平台,总费用60.5万元
  3. 使用“FMS”系统,需要花费10 x $6000 = 41.4万元(人民币)购买软件,需要花费10 x 3万元 = 30万元购买10台Dell R730服务器,需要花费至少8万元找人开发内容管理和发布平台,总费用79.4万元

我把以上实际情况汇报给学校领导,领导基于节省成本的目的选择了“串流媒体服务器”这个平台,并对我所做的工作给予了表扬(心中窃喜~_~,说不定以后评职称会有用呢)

接下来,我找了学校机房里一台空闲的Dell R720旧服务器进行部署测试,很快,在厂商的远程配合下,我用了2天时间就把一个完整的平台搭建起来了,直播、点播、内容管理后台、内容发布前台等功能都一应俱全,和“优酷”网站差不多。而且,最让我出乎意料的是,整个平台的内容播放都不需要安装Flash播放器,PC端网站和手机端播放都使用html5技术,终于提前告别了烦人的Flash播放器(目前很多流媒体默认都不启用对它的支持了)。

下面是我的劳动成果,炫耀一下^-^

                                                                                           首页

 

                                                               节目回看页面

 

                                               直播收看与互动

 

                                                                         采集编码端控制台画面

 

                                            四个码流同步直播

 

最后,非常感谢那些在我学习的过程中给予我灵感和帮助的那些版本,

下面是我参考过的相关文章链接:

https://blog.csdn.net/zhiboshequ/article/details/54023521

https://blog.csdn.net/zhiboshequ/article/details/54388346

https://blog.csdn.net/zhiboshequ/article/details/79865850

https://blog.csdn.net/ababab12345/article/details/52416310

https://www.cnblogs.com/georgewangii/p/4509818.html

https://blog.csdn.net/educast/article/details/81772184

========================================================================

原文链接:

https://blog.csdn.net/lovemycountry/article/details/90749141

以上是关于局域网环境下的直播平台(校园电视台)搭建之路的主要内容,如果未能解决你的问题,请参考以下文章

如何做电视节目直播(电视台视频直播)实现手机微信都能观看

OTT网络电视直播APP运营平台-如何保证视频的流畅性

OTT网络电视直播APP运营平台-如何保证视频的流畅性

校园网络电视台直播搭建方案

来吧,做一起电视节目的视频直播吧,很容易看懂的教程

如何做电视直播-个人经验分享