[发明专利]一种流媒体服务器混流合屏方法在审
申请号: | 201711179564.6 | 申请日: | 2017-11-23 |
公开(公告)号: | CN107888946A | 公开(公告)日: | 2018-04-06 |
发明(设计)人: | 李观培 | 申请(专利权)人: | 创盛视联数码科技(北京)有限公司 |
主分类号: | H04N21/2365 | 分类号: | H04N21/2365;H04N21/2368;H04N21/2343;H04N21/233;H04N21/6437 |
代理公司: | 北京世誉鑫诚专利代理事务所(普通合伙)11368 | 代理人: | 孙国栋 |
地址: | 100037 北京市海淀区学院*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于流媒体服务器的混流合屏方法,通过在流媒体服务器上对多个主播推送的直播流进行混合和合屏,最终输出一路直播流供观看端观看。本发明由于在上述方案中将多路主播推送的直播流进行了合并,最终输出一路直播流,相比传统的直播拉多路流进行观看,节省了大量的带宽,同时终端采用rtmp进行推送,对推流终端的兼容性较好,同时也实现了多个画面混合,多个声音混合的效果,观看体验得以优化。 | ||
搜索关键词: | 一种 流媒体 服务器 混流合屏 方法 | ||
【主权项】:
一种流媒体服务器混流合屏方法,其特征在于,包括如下步骤:S1多个直播终端推送基于RTMP协议的直播流至同一台流媒体服务器,推流名字分别定义为stream_1,stream_2,…,stream_n;S2将流stream_1,stream_2,…,stream_n转码成相同视频分辨率的流,视频输出流即为视频分辨率大小,假设视频分辨率为s,视频宽度为w,视频高度为h,则s=w*h;S3将流stream_1,stream_2,…,stream_n进行转码,固定音频采样率,声道数;S4将RTMP格式的媒体流stream_1,stream_2,…,stream_n进行解协议,解为flv格式的音视频tag封装格式数据;分别定义为stream_flv_1,stream_flv_2,…,stream_flv_n;S5将步骤S4产生的flv tag解封装为h264格式的视频码流,分别定义为stream_h264_1,stream_h264_2,…,stream_h264_n;S6将步骤S4产生的flv tag解封装为aac格式的音频码流,分别定义为stream_aac_1,stream_aac_2,…,stream_aac_n;S7将步骤S5产生的h264视频码率进行解码,解码成yuv视频像素数据,分别定义为stream_yuv_1,stream_yuv_2,…,stream_yuv_n;yuv视频像素数据包括Y、U、V分量,分别定义为stream_yuv_1[Y],stream_yuv_1[U],stream_yuv_1[V],…,stream_yuv_n[Y],stream_yuv_n[U],stream_yuv_n[V];S8将步骤S6产生的aac音频码率进行解码,解码为pcm音频采样数据,分别定义:stream_pcm_1,stream_pcm_2,…,stream_pcm_n;S9将步骤S7产生的各路yuv视频像素数据分别进行混合,混合后输出一路YUV视频像素数据,定义为stream_output_yuv,其YUV分量分别为stream_output_yuv[Y],stream_output_yuv[U],stream_output_yuv[V],当前流混合算法为YUV分量累加,即:stream_output_yuv[Y]=stream_yuv_1[Y]+stream_yuv_2[Y]+…+stream_yuv_n[Y];stream_output_yuv[U]=stream_yuv_1[U]+stream_yuv_2[U]+…+stream_yuv_n[U];stream_output_yuv[V]=stream_yuv_1[V]+stream_yuv_2[V]+…+stream_yuv_n[V];stream_output_yuv[Y],stream_output_yuv[U],stream_output_yuv[V]分量构成stream_output_yuv视频像素数据;一帧YUV420P像素数据一共占用w*h*3/2Byte的数据。其中前w*h Byte存储Y,接着的w*h*1/4Byte存储U,最后w*h*1/4Byte存储V,该步骤最终实现视频混屏效果;S10将步骤S8产生的各路pcm音频像素数据分别进行混合,混合后输出一路音频PCM采样数据,定义为stream_output_pcm,stream_output_pcm=stream_pcm_1+stream_pcm_2+…+stream_pcm_n;该步骤会实现各路左右声道数据互相混合的效果;S11将步骤S9和步骤S10产生的yuv和pcm数据进行音视频编码,输出一路编码数据为stream_output_h264和stream_output_aac;S12将步骤S11产生的stream_output_h264和stream_output_aac进行封装,封装成flv格式数据,定义为stream_output_flv;S13将步骤12输出的stream_output_flv封装成基于rtmp协议的媒体流,转发到分发网络服务器。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创盛视联数码科技(北京)有限公司,未经创盛视联数码科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201711179564.6/,转载请声明来源钻瓜专利网。