CN107295364A - 用于弹幕视频的实时流传输控制方法、控制装置 - Google Patents

用于弹幕视频的实时流传输控制方法、控制装置 Download PDF

Info

Publication number
CN107295364A
CN107295364A CN201710374762.1A CN201710374762A CN107295364A CN 107295364 A CN107295364 A CN 107295364A CN 201710374762 A CN201710374762 A CN 201710374762A CN 107295364 A CN107295364 A CN 107295364A
Authority
CN
China
Prior art keywords
barrage
data
video
packet
real
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710374762.1A
Other languages
English (en)
Other versions
CN107295364B (zh
Inventor
纪琦华
蒲珂
曾泽基
李哲山
胡彬
方宏
蔡忠善
魏明
蔡辉
张毅萍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Science And Technology Co Ltd
Original Assignee
China Science And Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Science And Technology Co Ltd filed Critical China Science And Technology Co Ltd
Priority to CN201710374762.1A priority Critical patent/CN107295364B/zh
Publication of CN107295364A publication Critical patent/CN107295364A/zh
Application granted granted Critical
Publication of CN107295364B publication Critical patent/CN107295364B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets

Abstract

本发明涉及一种用于弹幕视频的实时流传输控制方法,为IPTV媒体流传输协议进行的传输,至少包括:服务器接收实时采集的带属性的弹幕数据,所述带属性的弹幕数据的属性包括弹幕的节目标识、起止标识以及时间标识;服务器解码所述弹幕数据,识别弹幕节目标识后,将弹幕数据和对应节目的传输内容进行打包至视频数据包中;通过实时流传输协议将处理后的视频数据包进行传输,传输时根据网络状态对所述视频数据进行处理。该方法提升弹幕观感,与当前音画数据配合性更佳,且能在网络拥塞时,实现对视频流进行选择性丢包(弹幕数据包优先丢弃),避免重传事件和时延的发生。

Description

用于弹幕视频的实时流传输控制方法、控制装置
技术领域
本发明涉及视频流传输领域,具体涉及一种用于弹幕视频的实时流传输控制方法及运用该方法的控制装置。
背景技术
基于浏览器的实时通信(RTCWeb,Real-Time Communications Web)是一种运行在浏览器上的Web应用,其通过调用浏览器提供的应用程序编程接口,可以实现在不同终端之间建立实时通信连接,从而进行媒体流(包括音频数据流和/或视频数据流)的传输。实时通信的特点是:媒体面和终端的本地控制由运行在终端上的浏览器实现,而信令面则由嵌入Web页面的脚本程序(例如Java脚本程序)实现。具体地,基于浏览器和脚本程序实现在不同终端之间建立媒体流传输信道的过程具体为:运行在终端上的浏览器根据用户输入的实时通信服务网站URL,从相应的服务器上下载页面数据(该页面数据包含脚本程序)并将相应的页面呈现给用户;传统的弹幕数据即以xml文本数据被存至页面脚本程序中,由各个终端的脚本程序读取,以画面分层的视觉效果呈现在页面或视频中。
在应用高级弹幕,如图片弹幕,代码弹幕以及其他复杂弹幕时,由于数据量较大,单独加载弹幕数据流会造成与原视频的音画不同步,或卡顿和跳帧现象,观感较差。专利CN106231363A提出一种弹幕视频流传输方法及其设备,将弹幕数据流整合进视频音画数据之间,解码时只需解码一条数据流,节约解码所需宽带;而弹幕数据直接嵌入音画数据之间,在播放器预加载时,直接加载当前时段的弹幕数据,弹幕流畅且与画面吻合度高;但是该整合弹幕数据的传输包相较于未整合的传输包总的数量更大,传输负荷加重。
此外,现有的TCP(Realtime Transport Protocol,实时传输协议),根据拥塞窗口来调整发送速度。瓶颈节点中最常用的队列管理策略是“弃尾”(Drop Tail),即随着缓冲区的溢出而丢包,是一种被动队列管理机制。该管理方法虽然可以有效地解决“全局同步”问题,但存在参数设置敏感,响应相对滞后于实际网络状况的缺陷,且其复杂的算法给网络设备带来很大的开销,中间节点的性能下降,反而加重了网络拥塞。
发明内容
本发明的目的在于提出一种用于弹幕视频的实时流传输控制方法,该方法提升弹幕观感,与当前音画数据配合性更佳,且能在网络拥塞时,实现对视频流进行选择性丢包(弹幕数据包优先丢弃),丢包后即便不重传也不影响观众观看视频。
为实现上述目的,本发明所采用的技术方案是一种用于弹幕视频的实时流传输控制方法,所述方法为基于IPTV媒体流传输协议进行的传输,至少包括:
S10、服务器接收实时采集的带属性的弹幕数据,所述带属性的弹幕数据的属性包括弹幕的节目标识、起止标识以及时间标识;
S20、服务器解码所述弹幕数据,识别弹幕节目标识后,将弹幕数据和对应节目的传输内容进行打包至视频数据包中;
S30、通过实时流传输协议将处理后的视频数据包进行传输,传输时根据网络状态对所述视频数据进行处理。
本发明控制方法的S2方法中将弹幕数据和对应节目的传输内容进行打包至视频数据包具体为:
S21、对应节目传输内容包括已编码的视频内容和音频内容,将编码后的视频内容、音频内容以及弹幕数据依据属性整合到同一连续的TS传输包中;
S22、将视频TS包和音频TS包,以及在再次编码的弹幕数据TS包在该传输包中进行不同的PID标识;使用CC字段对每个以PID字段为索引的TS包序列进行连续性计数,其中弹幕数据对应的CC字段为(N1、N2…Nn)。
进一步地,所述S22中将弹幕数据TS包进行PID标识后,将该TS传输包标识为候选丢包对象;标识信息携带在该TS传输包中任一数据包相应的报文中的空余字段、未使用字段或扩展头的任意一种。
本发明控制方法的所述S30中传输时根据网络状态对所述视频数据进行处理具体包括:
(1)在网络发生拥塞时,节点缓存队列长度达到瓶颈,判断是否有新的数据包进入该瓶颈节点队列,如有,则在瓶颈节点列表中挑选候选丢包对象进行数据包的丢弃;
(2)在网络状态正常时,保持正常传输。
进一步地实施技术方案中,所述丢弃数据包的具体方法为:
调用随机函数计算得到CC字段中[N1,Nn]的随机数,并丢弃随机数位置的数据包,其中随机数根据当前瓶颈节点队列长度Q与瓶颈节点队列的最大长度Qmax的差值△Q进行计算。
其中,当△Q大于预设阈值时,则随机数=[N1,Nn],即将CC字段[N1,Nn]对应的弹幕数据TS包全部丢弃;
当△Q不大于预设阈值时,则随机数为[N1,Nn]中的至少两个,即将CC字段[N1,Nn]对应的弹幕数据TS包中随机数位置的至少两个进行丢弃;丢弃后,如仍有新的数据包进入,则继续挑选候选丢包对象进行数据包的丢弃。
本发明又一个技术方案中,所述方法还包括:
S40、播放器终端读取所述视频流,通过解TS包模块对音频TS包、视频TS包和所述弹幕数据TS包进行解TS包,分别获得对应的播放格式码流;所述弹幕数据根据起止标识和时间标识在对应的音频数据和视频数据中同步播放。
本发明再一个技术方案中,所述方法还包括:
S50、所述弹幕数据在解码播放过程存储至预设的缓存区中;并根据节目视频数据和音频数据播放中的时间段进行判断是否重播所述弹幕数据;
判断方法为:(1)缓存区没有新的弹幕数据进入,则检测节目播放的时间段是否包含缓存弹幕数据的时间标识,如有,则将缓存的弹幕数据在所述时间段内播放;
(2)缓存区有新的弹幕数据进入,将新的弹幕数据与缓存区的弹幕数据进行比较,若所述缓存区中存在于所述新的弹幕数据相同的弹幕信息,则不将新的弹幕数据存储,若不存在,则将新的弹幕数据存储至所述缓存区。
本发明中所述的IPTV媒体流传输协议栈为MPEG-TS/UDP/IP/Ethernet。
本发明另一方面公开了一种用于弹幕视频的实时流传输控制装置,包括公网服务端、流媒体服务器、传输系统以及播放器终端;
所述公网服务器端获取用户输入的带属性的弹幕信息,并上传至流媒体服务器;
所述流媒体服务器包括采集模块、解码模块、以及打包模块;
所述采集模块用于采集公网服务端的带属性的弹幕信息;
所述解码模块对采集的弹幕信息进行解码识别其中属性;
所述打包模块依据属性中弹幕节目标识将弹幕数据和对应节目的传输内容进行编码后整合至视频数据包中,其中编码后的视频TS包和音频TS包,以及再次编码的弹幕数据TS包在该传输包中进行不同的PID标识;其中,使用CC字段对每个以PID字段为索引的TS包序列进行连续性计数,所述弹幕数据对应的CC字段为(N1、N2…Nn);
所述传输系统包括数据包传输模块、检测模块以及丢包模块;
所述数据包传输模块用于数据包传输至节点缓存队列,并经丢包处理后传输至播放器终端;
所述检测模块用于判断节点缓存队列长度达到瓶颈,并判断是否有新的数据包进入该瓶颈节点队列,如有,则在瓶颈节点列表中挑选候选丢包对象进行数据包的丢弃;
所述丢包模块通过调用随机函数计算得到CC字段中[N1,Nn]的随机数,并丢弃随机数位置的数据包,其中随机数根据当前瓶颈节点队列长度Q与瓶颈节点队列的最大长度Qmax的差值△Q进行计算。
本发明用于弹幕视频的实时流传输控制方法将弹幕数据与视频数据、音频数据整合到同一连续的TS传输包进行传输,播放器解码时只需解码一条数据流,节省所需宽度;弹幕流畅且与画面、音频匹配度高。在流传输过程中发生拥塞时,通过优选丢弃弹幕数据包,避免重传事件和时延的发生,实现智能化的流传输处理能力。本发明的丢包机制简单,相较于传统复杂的丢包程序,保持中间节点的性能在最佳状态,从而疏通网络拥塞的情况。本发明的流传输控制方法下的视频画面质量好,实时性高,且连续性好。
附图说明
图1为本发明用于弹幕视频的实时流传输控制方法的第一种实施方式的示意图;
图2为本发明用于弹幕视频的实时流传输控制方法的第二种实施方式的示意图;
图3为本发明用于弹幕视频的实时流传输控制方法中以PID字段为索引的TS包的结构图;
图4为本发明用于弹幕视频的实时流传输控制装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面参考附图对本发明的实施例进行描述。参见图1,为本发明用于弹幕视频的实时流传输控制方法的第一种实施方式的示意图。
所述方法为基于IPTV媒体流传输协议进行的传输,包括下述步骤:
S10、服务器接收实时采集的带属性的弹幕数据,所述带属性的弹幕数据的属性包括弹幕的节目标识、起止标识以及时间标识;
S20、服务器解码所述弹幕数据,识别弹幕节目标识后,将弹幕数据和对应节目的传输内容进行打包至视频数据包中;
S30、通过实时流传输协议将处理后的视频数据包进行传输,传输时根据网络状态对所述视频数据进行处理。
所述服务器为流媒体服务器,主要以流式协议将视频文件传输到客户端,供用户在线观看,也可以从公网服务端采集视频、压缩软件接收实时视频,再以流式协议直播给播放客户端。在本发明服务器端对所述弹幕数据进行标识处理后,与该节目的其他传输内容打包,整合成一条视频流,该视频流数据包在网络状态变化的情况下智能化选择丢包对象;该技术方案一方面保证弹幕数据的流畅和匹配度,另一方面提高该数据包下的流传输的传输效率,避免影响视频的实时性和流畅性。
本发明方法应用于数字视频业务,IPTV业务所给予的IP网络本身是一种面向无连接的不可靠传输体系,不可避免地会带来不同程度的丢包,特别是在网络拥塞时造成突发性的大量丢包;MPEG-TS的媒体丢包则是造成IPTV视频质量下降的关键原因,如导致观看过程中的卡屏、黑屏、花屏等。本发明将弹幕数据进行打包,设置为候选丢包对象,在网络流畅时,可流畅观看视频+弹幕模式的节目,而在网络拥塞时,优选标识的弹幕数据包,将必然发生的丢包限定在附加数据包上,从而保证IPTV视频的质量。本发明所述IPTV媒体流传输的协议栈为MPEG-TS/UDP/IP/Ethernet。
本发明所述用于弹幕视频的实时流传输控制方法的第二个实施方式中,如图2所示,包括下述步骤。
S10、服务器接收实时采集的带属性的弹幕数据,所述带属性的弹幕数据的属性包括弹幕的节目标识、起止标识以及时间标识;
S20、服务器解码所述弹幕数据,识别弹幕节目标识后,将弹幕数据和对应节目的传输内容进行打包至视频数据包中;
该步骤中自带属性的弹幕数据通过流媒体服务器端的解码器进行解码,将自带属性数据中内的起止标识获得控制该弹幕的出现时间和结束时间,以便与相应的传输数据对应打包,且实现在播放器端在对应位置组合播放。
其中,将弹幕数据和对应节目的传输内容进行打包至视频数据包的方法为:
S21、对应节目传输内容包括已编码的视频内容和音频内容,将编码后的视频内容、音频内容以及弹幕数据依据属性整合到同一连续的TS传输包中;
在视频流传输中,含视频数据(逐帧画面数据)和音频数据(逐比特音频数据),解码时根据视频数据中自带的时间标识和音频数据中自带的时间标识进行配合,再根据弹幕数据属性中的时间标识将弹幕数据与所述视频数据和音频数据匹配组合起来形成一完整的弹幕视频流TS传输包。
S22、将视频TS包和音频TS包,以及在再次编码的弹幕数据TS包在该传输包中进行不同的PID标识;使用CC字段对每个以PID字段为索引的TS包序列进行连续性计数,其中弹幕数据对应的CC字段为(N1、N2…Nn)。
图3所示,将视频TS包以PID100进行标识,音频TS包以PID200进行标识,弹幕数据TS包则以PID300进行标识,在每个数据包下通过CC字段(4个比特的字段)对TS包序列进行连续性计数,将具有相同的PID的连续TS包打上连续的CC标签,如:PID300对应的CC字段为1、2、3;PID200对应的CC字段为4、5;PID100对应的CC字段为6、7、8、9、10。
S30、通过实时流传输协议将处理后的视频数据包进行传输,传输时根据网络状态对所述视频数据进行处理。
在该步骤中根据网络状态进行的调整具体包括下述情况:
(1)在网络发生拥塞时,节点缓存队列长度达到瓶颈,判断是否有新的数据包进入该瓶颈节点队列,如有,则在瓶颈节点列表中挑选候选丢包对象进行数据包的丢弃。
所述丢弃数据包的具体方法为:
调用随机函数计算得到CC字段中[N1,Nn]的随机数,并丢弃随机数位置的数据包,其中随机数根据当前瓶颈节点队列长度Q与瓶颈节点队列的最大长度Qmax的差值△Q进行计算:
当△Q大于预设阈值时,则随机数=[N1,Nn],即将CC字段[N1,Nn]对应的弹幕数据TS包全部丢弃;例如将图3中所述的CC字段[1,3]对应的弹幕数据TS包全部丢弃。
当△Q不大于预设阈值时,则随机数为[N1,Nn]中的至少两个,即将CC字段[N1,Nn]对应的弹幕数据TS包中随机数位置的至少两个进行丢弃;例如将图3中所述的CC字段[1,3]对应的弹幕数据TS包中任意两个丢弃。丢弃后,如仍有新的数据包进入,则继续挑选候选丢包对象进行数据包的丢弃;如此,保证视频实时传输的连续性和实时性,提升用户的观看体验。
(2)在网络状态正常时,则保持正常传输。即便在不可避免的丢失数据包时,将丢失数据包限定于弹幕数据TS包中,避免音频数据包和视频数据包丢失影响观感。
S40、播放器终端读取所述视频流,通过解TS包模块对音频TS包、视频TS包和所述弹幕数据TS包进行解TS包,分别获得对应的播放格式码流;所述弹幕数据根据起止标识和时间标识在对应的音频数据和视频数据进行调整,实现与音频数据和视频数据的同步播放。
S50、所述弹幕数据在解码播放过程存储至预设的缓存区中;并根据节目视频数据和音频数据播放中的时间段进行判断是否重播所述弹幕数据;
判断方法为:(1)缓存区没有新的弹幕数据进入,则检测节目播放的时间段是否包含缓存弹幕数据的时间标识,如有,则将缓存的弹幕数据在所述时间段内播放;
(2)缓存区有新的弹幕数据进入,将新的弹幕数据与缓存区的弹幕数据进行比较,若所述缓存区中存在于所述新的弹幕数据相同的弹幕信息,则不将新的弹幕数据存储,若不存在,则将新的弹幕数据存储至所述缓存区。
由于弹幕数据的匹配度要求没有视频数据和音频数据匹配度要求高,那么在一定的播放时间内,可将缓存的弹幕数据进行二次播放;另一方面在短期内的重播时,避免弹幕数据的重新缓存,减小系统的缓存负荷。
图4示出了一种用于弹幕视频的实时流传输控制装置,所述控制装置包括公网服务端100、流媒体服务器200、传输系统300以及播放器终端400。
所述公网服务器端100获取用户输入的带属性的弹幕信息,并上传至流媒体服务器200。
所述流媒体服务器200包括采集模块210、解码模块220以及打包模块230。
所述采集模块210用于采集公网服务端100的带属性的弹幕信息;所述解码模块220对采集的弹幕信息进行解码识别其中属性;所述打包模块230依据属性中弹幕节目标识将弹幕数据和对应节目的传输内容进行编码后整合至视频数据包中,其中编码后的视频TS包和音频TS包,以及再次编码的弹幕数据TS包在该传输包中进行不同的PID标识;其中,使用CC字段对每个以PID字段为索引的TS包序列进行连续性计数,所述弹幕数据对应的CC字段为(N1、N2…Nn)。
所述传输系统300包括数据包传输模块310、检测模块320以及丢包模块330。
所述数据包传输模块310用于数据包传输至节点缓存队列,并经丢包处理后传输至播放器终端400。
所述检测模块320用于判断节点缓存队列长度达到瓶颈,并判断是否有新的数据包进入该瓶颈节点队列,如有,则在瓶颈节点列表中挑选候选丢包对象进行数据包的丢弃。
所述丢包模块330通过调用随机函数计算得到CC字段中[N1,Nn]的随机数,并丢弃随机数位置的数据包,其中随机数根据当前瓶颈节点队列长度Q与瓶颈节点队列的最大长度Qmax的差值△Q进行计算。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

Claims (10)

1.一种用于弹幕视频的实时流传输控制方法,所述方法为基于IPTV媒体流传输协议进行的传输,至少包括:
S10、服务器接收实时采集的带属性的弹幕数据,所述带属性的弹幕数据的属性包括弹幕的节目标识、起止标识以及时间标识;
S20、服务器解码所述弹幕数据,识别弹幕节目标识后,将弹幕数据和对应节目的传输内容进行打包至视频数据包中;
S30、通过实时流传输协议将处理后的视频数据包进行传输,传输时根据网络状态对所述视频数据进行处理。
2.如权利要求1所述的用于弹幕视频的实时流传输控制方法,其特征在于,所述S2方法中将弹幕数据和对应节目的传输内容进行打包至视频数据包具体为:
S21、对应节目传输内容包括已编码的视频内容和音频内容,将编码后的视频内容、音频内容以及弹幕数据依据属性整合到同一连续的TS传输包中;
S22、将视频TS包和音频TS包,以及在再次编码的弹幕数据TS包在该传输包中进行不同的PID标识;使用CC字段对每个以PID字段为索引的TS包序列进行连续性计数,其中弹幕数据对应的CC字段为(N1、N2…Nn)。
3.如权利要求2所述的用于弹幕视频的实时流传输控制方法,其特征在于,所述S22中将弹幕数据TS包进行PID标识后,将该TS传输包标识为候选丢包对象。
4.如权利要求1-3中任一项所述的用于弹幕视频的实时流传输控制方法,其特征在于,所述S30中传输时根据网络状态对所述视频数据进行处理具体包括:
(1)在网络发生拥塞时,节点缓存队列长度达到瓶颈,判断是否有新的数据包进入该瓶颈节点队列,如有,则在瓶颈节点列表中挑选候选丢包对象进行数据包的丢弃;
(2)在网络状态正常时,保持正常传输。
5.如权利要求4所述的用于弹幕视频的实时流传输控制方法,其特征在于,所述丢弃数据包的具体方法为:
调用随机函数计算得到CC字段中[N1,Nn]的随机数,并丢弃随机数位置的数据包,其中随机数根据当前瓶颈节点队列长度Q与瓶颈节点队列的最大长度Qmax的差值△Q进行计算。
6.如权利要求5所述的用于弹幕视频的实时流传输控制方法,其特征在于,当△Q大于预设阈值时,则随机数=[N1,Nn],即将CC字段[N1,Nn]对应的弹幕数据TS包全部丢弃;
当△Q不大于预设阈值时,则随机数为[N1,Nn]中的至少两个,即将CC字段[N1,Nn]对应的弹幕数据TS包中随机数位置的至少两个进行丢弃;丢弃后,如仍有新的数据包进入,则继续挑选候选丢包对象进行数据包的丢弃。
7.如权利要求1所述的用于弹幕视频的实时流传输的控制方法,其特征在于,所述方法还包括:
S40、播放器终端读取所述视频流,通过解TS包模块对音频TS包、视频TS包和所述弹幕数据TS包进行解TS包,分别获得对应的播放格式码流;所述弹幕数据根据起止标识和时间标识在对应的音频数据和视频数据中同步播放。
8.如权利要求7所述的用于弹幕视频的实时流传输的控制方法,其特征在于,所述方法还包括:
S50、所述弹幕数据在解码播放过程存储至预设的缓存区中;并根据节目视频数据和音频数据播放中的时间段进行判断是否重播所述弹幕数据;
判断方法为:(1)缓存区没有新的弹幕数据进入,则检测节目播放的时间段是否包含缓存弹幕数据的时间标识,如有,则将缓存的弹幕数据在所述时间段内播放;
(2)缓存区有新的弹幕数据进入,将新的弹幕数据与缓存区的弹幕数据进行比较,若所述缓存区中存在于所述新的弹幕数据相同的弹幕信息,则不将新的弹幕数据存储,若不存在,则将新的弹幕数据存储至所述缓存区。
9.如权利要求1所述的用于弹幕视频的实时流传输控制方法,其特征在于,所述IPTV媒体流传输协议栈为MPEG-TS/UDP/IP/Ethernet。
10.一种用于弹幕视频的实时流传输控制装置,其特征在于,包括公网服务端(100)、流媒体服务器(200)、传输系统(300)以及播放器终端(400);
所述公网服务器端(100)获取用户输入的带属性的弹幕信息,并上传至流媒体服务器(200);
所述流媒体服务器(200)包括采集模块(210)、解码模块(220)、以及打包模块(230);
所述采集模块(210)用于采集公网服务端(100)的带属性的弹幕信息;
所述解码模块(220)对采集的弹幕信息进行解码识别其中属性;
所述打包模块(230)依据属性中弹幕节目标识将弹幕数据和对应节目的传输内容进行编码后整合至视频数据包中,其中编码后的视频TS包和音频TS包,以及再次编码的弹幕数据TS包在该传输包中进行不同的PID标识;其中,使用CC字段对每个以PID字段为索引的TS包序列进行连续性计数,所述弹幕数据对应的CC字段为(N1、N2…Nn);
所述传输系统(300)包括数据包传输模块(310)、检测模块(320)以及丢包模块(330);
所述数据包传输模块(310)用于数据包传输至节点缓存队列,并经丢包处理后传输至播放器终端(400);
所述检测模块(320)用于判断节点缓存队列长度达到瓶颈,并判断是否有新的数据包进入该瓶颈节点队列,如有,则在瓶颈节点列表中挑选候选丢包对象进行数据包的丢弃;
所述丢包模块(330)通过调用随机函数计算得到CC字段中[N1,Nn]的随机数,并丢弃随机数位置的数据包,其中随机数根据当前瓶颈节点队列长度Q与瓶颈节点队列的最大长度Qmax的差值△Q进行计算。
CN201710374762.1A 2017-05-24 2017-05-24 用于弹幕视频的实时流传输控制方法、控制装置 Active CN107295364B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710374762.1A CN107295364B (zh) 2017-05-24 2017-05-24 用于弹幕视频的实时流传输控制方法、控制装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710374762.1A CN107295364B (zh) 2017-05-24 2017-05-24 用于弹幕视频的实时流传输控制方法、控制装置

Publications (2)

Publication Number Publication Date
CN107295364A true CN107295364A (zh) 2017-10-24
CN107295364B CN107295364B (zh) 2019-05-24

Family

ID=60094249

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710374762.1A Active CN107295364B (zh) 2017-05-24 2017-05-24 用于弹幕视频的实时流传输控制方法、控制装置

Country Status (1)

Country Link
CN (1) CN107295364B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110971985A (zh) * 2018-09-30 2020-04-07 武汉斗鱼网络科技有限公司 一种动态调度服务器的方法及相关装置
CN111526374A (zh) * 2019-02-01 2020-08-11 广州虎牙信息科技有限公司 基于直播的弹幕处理方法、拉流的方法及装置
CN111918083A (zh) * 2020-07-31 2020-11-10 广州虎牙科技有限公司 视频片段的识别方法、装置、设备及存储介质
CN112969093A (zh) * 2019-12-13 2021-06-15 腾讯科技(北京)有限公司 互动业务处理方法、装置、设备及存储介质
CN115297355A (zh) * 2022-08-02 2022-11-04 北京奇艺世纪科技有限公司 弹幕显示方法、生成方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1728677A (zh) * 2004-07-28 2006-02-01 国家数字交换系统工程技术研究中心 多速率网络视频流媒体承载方法及系统
CN102088414A (zh) * 2011-03-07 2011-06-08 江苏科技大学 随机和弃头结合的被动队列管理的方法
CN102123094A (zh) * 2011-03-07 2011-07-13 江苏科技大学 两次随机丢包的被动队列管理的方法
CN102149022A (zh) * 2011-01-20 2011-08-10 德科仕通信(上海)有限公司 提高计算mpeg-ts层丢包数精准度的方法及系统
CN105142031A (zh) * 2015-08-17 2015-12-09 北京奇虎科技有限公司 在视频播放时以弹幕显示文字信息的方法及装置
CN106231363A (zh) * 2016-08-08 2016-12-14 上海幻电信息科技有限公司 一种弹幕视频流传输方法及其设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1728677A (zh) * 2004-07-28 2006-02-01 国家数字交换系统工程技术研究中心 多速率网络视频流媒体承载方法及系统
CN102149022A (zh) * 2011-01-20 2011-08-10 德科仕通信(上海)有限公司 提高计算mpeg-ts层丢包数精准度的方法及系统
CN102088414A (zh) * 2011-03-07 2011-06-08 江苏科技大学 随机和弃头结合的被动队列管理的方法
CN102123094A (zh) * 2011-03-07 2011-07-13 江苏科技大学 两次随机丢包的被动队列管理的方法
CN105142031A (zh) * 2015-08-17 2015-12-09 北京奇虎科技有限公司 在视频播放时以弹幕显示文字信息的方法及装置
CN106231363A (zh) * 2016-08-08 2016-12-14 上海幻电信息科技有限公司 一种弹幕视频流传输方法及其设备

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110971985A (zh) * 2018-09-30 2020-04-07 武汉斗鱼网络科技有限公司 一种动态调度服务器的方法及相关装置
CN110971985B (zh) * 2018-09-30 2021-11-26 武汉斗鱼网络科技有限公司 一种动态调度服务器的方法及相关装置
CN111526374A (zh) * 2019-02-01 2020-08-11 广州虎牙信息科技有限公司 基于直播的弹幕处理方法、拉流的方法及装置
CN111526374B (zh) * 2019-02-01 2022-05-10 广州虎牙信息科技有限公司 基于直播的弹幕处理方法、拉流的方法及装置
CN112969093A (zh) * 2019-12-13 2021-06-15 腾讯科技(北京)有限公司 互动业务处理方法、装置、设备及存储介质
CN112969093B (zh) * 2019-12-13 2023-09-08 腾讯科技(北京)有限公司 互动业务处理方法、装置、设备及存储介质
CN111918083A (zh) * 2020-07-31 2020-11-10 广州虎牙科技有限公司 视频片段的识别方法、装置、设备及存储介质
CN115297355A (zh) * 2022-08-02 2022-11-04 北京奇艺世纪科技有限公司 弹幕显示方法、生成方法、装置、电子设备及存储介质
CN115297355B (zh) * 2022-08-02 2024-01-23 北京奇艺世纪科技有限公司 弹幕显示方法、生成方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN107295364B (zh) 2019-05-24

Similar Documents

Publication Publication Date Title
CN107295364A (zh) 用于弹幕视频的实时流传输控制方法、控制装置
US11245940B2 (en) Method and apparatus for transmitting media data in multimedia transport system
CN105357592B (zh) 一种流媒体自适应传输选择性丢帧方法
CN106341738B (zh) 流媒体网络传输的带宽计算方法、服务器端和系统
CN110536179A (zh) 一种内容分发系统和方法
CN1859579B (zh) 传输多媒体数据流的设备和方法
US7133362B2 (en) Intelligent buffering process for network conference video
CN113037440B (zh) 数据重传处理方法、装置、计算机设备和存储介质
CN101026555B (zh) 丢弃的分组指示符
CN106664255A (zh) 数据流控制方法
CN101364999A (zh) 一种基于流的服务质量处理的方法、设备及系统
CN110474721B (zh) 视频数据传输方法、装置及计算机可读存储介质
CN101729228A (zh) 丢包抑制重传的方法、网络节点和系统
US20150110168A1 (en) Video data transmission method and apparatus
CN109246486A (zh) 一种组帧方法和装置
CN108769735A (zh) 一种网络传输的数据压缩中优化Spice方法
CN110113306A (zh) 分发数据的方法和网络设备
CN114979023A (zh) 一种数据传输方法、系统、电子设备及存储介质
CN107197392B (zh) 在弹幕视频流传输过程中的丢包方法及丢包装置
CN106792247A (zh) 减少时延的直播流推送方法及装置、直播系统
US20090219919A1 (en) Data transport container for transferring data in a high speed internet protocol network
CN106210785B (zh) 媒体流网络自适应单向控制方法及系统
CN104469538B (zh) 面向画面画质较小损失的rtp视频流数据包重组方法
WO2010054551A1 (zh) 视频流传输的方法、装置和系统
CN111726647A (zh) 数据分流设备和数据处理系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Real time streaming control method and control device for bullet screen video

Effective date of registration: 20210622

Granted publication date: 20190524

Pledgee: Beijing culture science and technology financing Company limited by guarantee

Pledgor: CBC CLOUD TECHNOLOGY Co.,Ltd.

Registration number: Y2021980005035

PE01 Entry into force of the registration of the contract for pledge of patent right