一种基于IPV9的视频直播控制方法技术

技术编号:23939018 阅读:17 留言:0更新日期:2020-04-25 04:17
本发明专利技术涉及一种基于IPV9的视频直播控制方法,包括:实现对主播的PC端的音视频信息采集、实时编码,然后通过流媒体协议把音视频流推送到服务器。接收主播推送的音视频信息,把音视频信息转码切片成TS格式以用于HLS协议拉流。用户通过浏览器访问服务器上的网页资源,然后在网页上选择想要观看的正在直播的主播的直播间,进入直播间会自动播放主播的实时视频。主要通过摄像头采集视频数据和麦克风采集音频数据,经过一系列前处理、编码、封装,然后推流到CDN进行分发。因此,本发明专利技术充分发挥了HTML5原生播放环境在多媒体播放上的硬件加速能力,从而极大提升播放性能。

A control method of live video based on IPv9

【技术实现步骤摘要】
一种基于IPV9的视频直播控制方法
本专利技术涉及一种基于IPV9的视频直播控制方法,属于计算机

技术介绍
随着通信技术和电子设备制造业的迅速发展,移动端的设备从开始的功能简单的,只能语音通话、发送短信息、发送图片的非智能手机,已经发展到现在的功能非常强大,内容非常丰富的智能手机。智能手机的发展又极大地推动着移动互联网的迅速发展,而移动互联网上的丰富的内容和信息正改变着人们传统的生活方式和通讯方式。人们在满足基本的通讯需求之后,开始追求更方便的生活服务和更个性化的社交及娱乐方式。视频直播正是一种实时互动的社交及娱乐的方式。直播并不是个新鲜的玩意,从更加广泛的角度来看,直播已经有了很久的历史了,只是在不同的时代展示形式不同。古时的戏园茶园也可以算作是直播的范围。到了现代,借助于通讯技术和互联网的发展,人们观看直播的方式多了电视和电脑。近些年,智能手机和移动互联网的发展,让人们基本可以随时随地的观看到自己想看的直播。经过这么多年的发展,特别是最近几年,直播的内容也增多了。最开的电视直播主要是新闻直播和体育赛事的直播,这时直播的门槛还比较高。到了互联网时代,主播有一台电脑就可以开始直播,内容也多是唱歌跳舞,后来由于游戏和电竞的发展又增加了游戏直播内容。近些年随着移动互联网的发展,和3G、4G通信技术的普及,似乎已经发展到了全民“随时随走随播随看”,这时的直播行业已经覆盖到了大部分的人,各种人群都有。在未来,图片、音频、视频等多媒体业务将还会有较大的增大。在将来,企业的日常办公,线上远程教育,政府部门直播,电商营销直播等会有较大的发展。如何解决在这些应用场景中的问题,以及提高直播视频的质量,降低直播的时延,提高直播的交互性等,这些研究都具有重要的实践意义。视频直播按照传播方式可以分为两大类:电视直播和网络直播。电视直播最早可以追溯到20世纪50年代的第一次成功的篮球比赛。在这之后电视直播也多用于各种体育赛事的直播、实时新闻的的直播和大型晚会的直播。网络直播的发展时间较短,20世纪90年代的中期中国正式接入互联网,这时互联网上的的网络聊天室可以算是前网络直播阶段。2008年前后,欢聚时代推出的YY语音聊天、刘岩创立的六房间、傅政军的9158等各种秀场直播可以算是互联网时代网络视频直播的雏形。最近的2015年可以算是中国网络直播元年,在2015年左右国内的上线大量了直播平台,如映客、虎牙、斗鱼、熊猫等。据统计2015国内的网络直播平台达到了200多家,这时视频直播已经由PC端走向了移动端,进入移动互联网时代的直播阶段。在2015年诞生的各种直播平台其实是借鉴同时期的国外的直播平台,比如Periscope和Meerkat。国外流行的视频直播平台还有YouTubeLive,Twitch,Livestream,afreecaTV等。对于一家直播平台来说,想要吸引并留住观众,除了要有能满足各种观众的丰富的内容外,还需要有过硬的技术支撑。“不卡顿不掉线低延迟”应该是一个直播平台最低的要求。要满足上述要求,这其中涉及的关键技术有:一是音视频的编解码及压缩和解压缩方案;二是直播系统的服务器性能;三是流媒体传输协议。音视频的编码及压缩的标准主要是由ITU-T(ITUTelecommunicationStandardizationSector,国际电信联盟电信标准分局)和ISO(InternationalOrganizationforStandardization,国际标准化组织)这两个组织制定的。从1984年的H.120到2003年的H.264/MPEG-4AVC(AdvancedVideoCoding,高级视频编码)。H.264之前的H.263也是主要应用于视频通话和视频会议方面,虽然H.263和H.264都采用的是DTC(DiscreteCosineTransform,离散余弦变换)和DPCM(DifferentialPulseCodeModulation,差分脉冲编码调制)混合的编码结构,但是H.264相比于H.263有更大的优势,H.264标准不仅在图像内容预测方面提高了编码效率、改善图像质量,还增加了容错能力和网络适应能力。H.264标准性能的提高是以其复杂度为代价的,所以H.264编解码对CPU的处理能力要求更高。相关专家们也在为下一代的视频编解码标准H.265研究技术方案。直播系统的服务器性能决定着一个直播平台能否长久存在的关键因素之一。对于直播服务器的要求是:带宽充足、延迟低、存储能力充足、具有故障转移功能。服务器是一种CPU运算速度更快、负载能力更高、稳定运行时间更长、数据吞吐能力更强的计算机。世界上第一台服务器是1964年,IBM开发的System360大型机,运算速度快,价格贵。此后随着集成电路技术、单晶硅电路技术等多种技术的发展和应用。服务器的体积越来越小,运算性能越来越强价格也越来越低,而且应用于不同场景、满足不同需求的服务器产品被开放出来并推向市场。服务器的硬件是一个服务器系统的基础,服务器软件也是决定服务器系统性能的关键。流媒体服务器是是应用于直播场景的服务器,目前有很多的流媒体服务器软件,有收费的、有开源的。较为主流的流媒体服务器开源软件有:Red5、live555、FMS(FlashMediaServer)、NGINX的流媒体插件nginx-rtmp-module等。它们支持的视频文件格式、流媒体传输协议不一样,服务器的性能和应用场景不一样。比如,Red5支持把MP4、FLV、3GP等格式的视频文件转换成视频流,MP3、AAC等格式的音频文件转成成音频流。其支持RTMP,RTMPT,RTMPS和RTMPE传输协议,具有在线录制,在线聊天,视频会议等基本功能。优点:完全开源,几乎实现FMS所有功能。比较适合一些小型网站使用。缺点:基本java的开源流媒体服务器red5.性能较差,稳定性不够,距离稳定、大容量的商业化应用尚有一定的差距。Live555是一个跨平台的流媒体解决方案,使用C++发开的开源项目。Live555支持mkv,mpg,ogg,mp3和wav等格式的流化。Live555主要支持RTSP传输协议。NGINX是一款高性能的HTTP和反向代理服务器,同时也是一IMAP/POP3/SMTP代理服务器。Nginx有着高并发、性能好和占用内存少等特点,而且安装简单,配置文件简单,容易启动。其作为流媒体服务器主要是依赖于NRM(Nginx-rtmp-module)。优点:部署方便,性能较好,http渐进式下载,支持进度拖拽、防盗链等功能缺点:不算真正的流媒体服务器,伪流媒体服务器。Adobe的FMS是流视频和实时通信领域业界领先的解决方案,该产品可以快速搭建起一套流媒体直播、点播服务器。FMS支持的MP4\FLV\F4V\MPEG-TS文件,支持HTTP,RTMP,HLS传输协议。借助于AdobeFlashPlayer在网络上应用的广泛性,因此,FMS成为诸多多媒体应用的服务器端主要应用平台。优点:专业厂商本文档来自技高网...

【技术保护点】
1.一种基于IPV9的视频直播控制方法,其特征在于,包括:/n步骤1、设置服务器端架构,包括Nginx与NRM的安装和配置和Swoole的安装与配置,其中,/nNginx与NRM的安装和配置包括:采用Linux发行版中的Ubuntu 18.04LTS操作系统;本小节实现在Ubuntu 18.04LTS上安装Nginx-1.14.2版本,并配置Nginx服务器正常提供web服务;/nSwoole的安装与配置包括:首先安装PHP-FPM(PHP-fastCGI process manager),执行如下命令即可安装PHP-FPM:sudo apt install php-fpm php-mysql;然后需要修改一下php进程服务的扩展配置文件www.conf;让php-fpm监听127.0.0.1:9000,配合Nginx使用;配置完PHP之后,还需要修改Nginx的配置文件nginx.conf以让Nginx支持PHP;在需要支持PHP的server段内根据Nginx支持PHP配置文件表添加代码;/n步骤2,设置推流端的架构,包括FFmpeg与SDL的配置以及设置推流应用程序;/n步骤3,设置网页播放端的架构,具体是用HTML5的video标签直接实现了网页视频播放的功能,没有在网页中嵌入播放Flash播放器;这里使用video.js播放器,video.js有自定义的播放器皮肤、插件、组件、语言选项配置;首先在HTML代码的head标签内引入video.js的CSS文件和JavaScript文件;然后在body标签内新建一个div标签,在div标签内使用video-js标签,并在标签内设置播放器的宽和高等属性;在video-js标签内使用source标签定义视频的资源,即直播音视频流在流媒体服务器中的位置。/n...

【技术特征摘要】
1.一种基于IPV9的视频直播控制方法,其特征在于,包括:
步骤1、设置服务器端架构,包括Nginx与NRM的安装和配置和Swoole的安装与配置,其中,
Nginx与NRM的安装和配置包括:采用Linux发行版中的Ubuntu18.04LTS操作系统;本小节实现在Ubuntu18.04LTS上安装Nginx-1.14.2版本,并配置Nginx服务器正常提供web服务;
Swoole的安装与配置包括:首先安装PHP-FPM(PHP-fastCGIprocessmanager),执行如下命令即可安装PHP-FPM:sudoaptinstallphp-fpmphp-mysql;然后需要修改一下php进程服务的扩展配置文件www.conf;让php-fpm监听127.0.0.1:9000,配合Nginx使用;配置完PHP之后,还需要修改Nginx的配置文件nginx.conf以让Nginx支持PHP;在需要支持PHP的server段内根据Nginx支持PHP配置文件表添加代码;
步骤2,设置推流端的架构,包括FFmpeg与SDL的配置以及设置推流应用程序;
步骤3,设置网页播放端的架构,具体是用HTML5的video标签直接实现了网页视频播放的功能,没有在网页中嵌入播放Flash播放器;这里使用video.js播放器,video.js有自定义的播放器皮肤、插件、组件、语言选项配置;首先在HTML代码的head标签内引入video.js的CSS文件和JavaScript文件;然后在body标签内新建一个div标签,在div标签内使用video-js标签,并在标签内设置播放器的宽和高等属性;在video-js标签内使用source标签定义视频的资源,即直播音视频流在流媒体服务器中的位置。


2.根据权利要求1所述的一种基于IPV9的视频直播控制方法,其特征在于,Nginx与NRM的安装和配置具体包括:
(1)在安装Nginx之前,要先安装好Nginx需要的工具和库,例如gcc、gcc++、zlib、pcre、openssl;
(2)在Ubuntu终端(Terminal)输入如下命令即可:sudoapt-getinstallbuild-essentiallibpcre3libpcre3-devzlib1gzlib1g-devopenssllibssl-dev
(3)然后在命令行输入如下命令下载Nginx-1.14.2:wgethttp://nginx.org/download/nginx-1.14.2.tar.gz
(4)解压Nginx-1.14.2.tar.gz命令:tar-zxvfnginx-1.14.2.tar.gz
(5)编译安装Nginx命令:./configure和make&&sudomakeinstall
(6)等待编译完成,并输出:make[1]:离开目录“/XXX/XXX/nginx-1.14.2”;表明Nginx安...

【专利技术属性】
技术研发人员:张洪涛田星星李利荣吴丹雯张旭张泽森
申请(专利权)人:湖北工业大学
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1