Page 38 - BP_202204
P. 38
给用户所使用的客户端。 conf文件,就可以设定需要的推流地
因为采用了基于H T T P协议的 址以及转码参数。本系统的部分配置
HLS协议,HLS只请求基本的HTTP 内容如下图3所示:
报文,与实时传输协议(RTP)不同,
HLS可以穿过任何允许HTTP数据通
过的防火墙或者代理服务器,无论是
图5
iOS还是Android系统的手机都可以
支持。再加上这些年H T M5技术的 果如图5所示:
不断发展和完善,我们现在完全可以 在PC端的拉流播放因为使用的是
使用H5页面来完成流媒体的播放功 RTMP协议,需要使在网页中内嵌Video.
能,同时也实现了轻客户端的设计。 图3 js来实现播放。效果如下图6所示:
这样既免去了用户下载安装APP的麻 文件中通过application开启了数
烦,也实现了一次开发,多平台共用 个直播通道并以live_加数字命名。同
的便利。而对于PC端而言,在安装了 时,还用exec加入了命令行的执行,
Flash 视频播放插件后,就可以支持 调用FFmpeg对原rtmp协议直播流进
RTMP协议的流媒体视频播放。如前 行分辨率和码率重设后,作为HLS协
图6
文所提到的,这将带来更低的直播延 议直播流的数据源。
时。不过,对于服务器端来说,虽然 2.拉流端的实现 3.手机直播推流
PC端同样是采用H5页面播放的形式, 如前文所述,因为使用了HLS协 除了融媒直播间的摄像机和大洋
但在页面中还需要内嵌video.js播放 议,在移动终端的拉流播放就完全可 全能机可以直接推流以外,目前在苹
器的方式才能完成拉流播放。Video. 以使用HTML5的页面播放流媒体视频 果和安卓手机上都有免费的推流APP
js是一款优秀的HTML5 Web视频播 了。这意味着我们开发的程序天然地 可以安装使用。配合融媒体直播间的
放器。它同时支持HTM5和Flash视 兼容ios、android两大手机操作系统 直播平台就可以将手机的直播画面传
频,支持在桌面和移动设备上的视频 的浏览器,甚至可以使用包括微信在 回到融媒直播间的大洋全能机上了。
播放,截至目前,大概有40W的站点 内的支持网页浏览的APP也能播放本 效果下如图7所示,其中手机采用竖屏
在使用Video.js作为web播放器。 系统的直播视频。我们省去了在大量 模式拍摄。
依照以上方案内容,系统架构将 可能要花在重复开发个兼容性调试方
如下图2所示: 面的时间。也给用户的使用上带来很
大的便利。
图7
图2
五.结束语
可以说网络直播技术是这两年最受
四.系统功能实现 关注的互联网技术之一。传统媒体要走
1.流媒体服务器的安装与配置 图4 向融合,走向互联网,那么对网络直播
本系统使用的是F F m p e g+ 在具体开发中,我们使用了MUI 技术的应用就不可或缺。那么作为媒体
NGINX+RTMP模块组建的流媒体服 框架,以求在最终效果与体验上能最 技术工作者,对网络直播技术的学习和
务器。虽然可以跨平台安装使用,但 接近原生APP,同时也不会消耗终端 了解无疑会对今后在融媒时代的工作有
Linux在性能、安全性、易于维护、 太多性能。部分代码如图4所示。在代 所帮助。开发组人员起初是出于完善湖
开源等方面都具有明显的优势。所以 码中只需使用<video>标签即可调用播 北广播电台融媒直播间日常制作播出业
本系统使用了Ubuntu 18.10作为流媒 放插件,非常简便。同时配合相应的 务功能的目的而提出了这个融媒体直播
体服务器的操作系统。 js代码实现分布加载,减少页面空白时 间节目信号监看系统的开发构想。而整
在安装完NGINX、FFmpeg以 间。而最终的使用效果也是令人满意 个开发过程也是我们对融媒相关技术的
及其相关依赖后,再通过配置nginx. 的。移动端客户端页面及拉流播放效 探索和实践。 B&P
38