这几天博主因为课程设计原因准备做一个直播平台。
在看了很多资料之后,找到了三个框架用于开发整个直播平台,其中包括用主播使用推送直播视频流的obs(Open Broadcaster Software)软件,作为服务器的red5框架,以及在用户使用用于接收rtmp格式数据流的videojs框架。
因为是快速搭建,整套系统下来代码量极少,而且能快速全平台使用让大家快速感受下直播平台搭建的快感,也顺便跟大家分享下一些这几天遇到的坑!
前言
首先跟大家要说明的是,需要避免的第一个大坑:就是如果要实现跟博主相同的demo,博主下面提到的所有软件以及框架的版本号都要一致!千万千万注意。版本不同运行方法完全不一样!
运行平台:windows
jdk:1.8
red5版本:1.0.6-server
obs(Open Broadcaster Software):无所谓
videojs :v5的就ok
然后建议大家测试的时候一定要用360浏览器,就是最普通的那个,不要极速版,因为涉及到使用类谷歌浏览器都会默认禁用flash,会出现各种错误,但是后期博主会给出解决方案
使用的软件
- red5 流媒体服务器
- obs(Open Broadcaster Software) 推流
- viodejs 前端js插件用于编写html页面进行接收直播数据
- vcam 虚拟摄像头
- vlc:可以直接使用的软件,用于接收直播数据
第一步 搭建red5服务器
Red5流服务器搭建
所谓流媒体技术,是指将连续的影像和声音信息经过压缩处理后放在网站服务器上,让用户能够一边下载一边观看、收听(即所谓的“在线欣赏”),而不需要等整个压缩文件下载到自己的机器上才可以欣赏的网络传输技术。
直接下载的red5服务器就相当于一个tomcat项目,它自行运行,包含了推流,服务器,以及接收流视频的功能,如下: