CN106210923A - 一种基于h.264编码的实时流媒体多路转发控制方法 - Google Patents
一种基于h.264编码的实时流媒体多路转发控制方法 Download PDFInfo
- Publication number
- CN106210923A CN106210923A CN201610540068.8A CN201610540068A CN106210923A CN 106210923 A CN106210923 A CN 106210923A CN 201610540068 A CN201610540068 A CN 201610540068A CN 106210923 A CN106210923 A CN 106210923A
- Authority
- CN
- China
- Prior art keywords
- video
- client
- server end
- idr
- chained list
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/643—Communication protocols
- H04N21/6437—Real-time Transport Protocol [RTP]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种基于H.264编码的实时流媒体多路转发控制方法,该方法主要包括如下内容:(1)客户端申请实时视频,服务器端转发最新的历史IDR帧视频数据给申请实时视频的客户端;(2)服务器端每路视频只保留2帧IDR范围内的最新实时视频数据;(3)客户端每路视频只保留2帧IDR范围内的最新实时视频数据;(4)服务器端和客户端各采用双线程,服务器子线程用于流媒体转发功能,客户端子线程用于视频流播放功能,线程间采用线程锁,以便控制多个线程共用公共视频数据;(5)客户端云控视频采样设备时,服务器端和客户端分别清空除云控频道外的所有其他非云控频道历史视频数据,并分别从IDR帧重新开始继续转发/播放。
Description
技术领域
本发明涉及实时视频流媒体转发软件,具体涉及一种基于H.264编码的实时流媒体多路转发控制方法,属于实时流媒体软件领域。
背景技术
流媒体是指在网络上以流式传输方式传送的视频数据,传输的视频数据采用编码压缩以便减少传输的数据量,目前采用以H.264编码标准进行压缩,用户通过解码设备解码压缩的数据流即可播放视频。
实时流式传输是流媒体中的一种传输方式,主要是保证传输的流媒体数据与网络传输性能相匹配,使用户体验实时性能为主旨,更强调实时性。实时流式传输需要专用的流媒体服务器与传输协议,专用的流媒体服务器有QuickTime Streaming Server、WindowsMedia Server等;专用的传输协议有RTSP(Real-time Streaming Protocol)或MMS(Microsoft Media Server)等。
流媒体在网络上以包传输方式进行断续传输,其中TCP协议是可保证包顺序的可靠传输,对于连续的流媒体视频数据流,简单采用TCP协议即可保证其顺序性。由于网络是动态变化的,而采集得到的视频流数据是连续的均速获取的,必须保证二者的速度匹配以达到实时预览效果。用户要控制视频采样设备时,需要实时反馈控制后的视频图像,因此也要求控制的实时性能。
H.264编码标准是目前普遍应用于视频压缩领域的编码标准,是适合实时视频通信的编码规范,其以高压缩高质量和支持多种网络流媒体为主要特征。在H.264协议里定义了三种帧,完整编码的帧叫I帧,参考之前的I帧生成的只包含差异部分编码的帧叫P帧,还有一种参考前后帧编码的帧叫B帧。IDR帧是即时解码刷新帧,是I帧中的一种,为区分首个I帧和其他I帧,把第一个I帧定义为IDR帧。IDR帧的作用是立刻刷新,使错误不致传播,播放器收到IDR帧则立刻播放IDR帧,抛弃IDR帧之前所有的历史帧。
本发明公开了一种基于H.264编码的实时流媒体多路转发控制方法,服务器端与客户端各自采用双线程及双向环形链表技术改进转发视频的实时性能和视频采样设备云控的实时性能,转发的视频流采用H.264编码标准,改进分服务器端和客户端两个独立的进程,主要包括如下内容:(1)客户端申请实时视频,服务器端转发最新的历史IDR帧视频数据给申请实时视频的客户端;(2)服务器端每路视频只保留2帧IDR范围内的最新实时视频数据;(3)客户端每路视频只保留2帧IDR范围内的最新实时视频数据;(4)服务器端和客户端各采用双线程,服务器子线程用于流媒体转发功能,客户端子线程用于视频流播放功能,线程间采用线程锁,以便控制多个线程共用公共视频数据;(5)客户端云控视频采样设备时,服务器端和客户端分别清空除云控频道外的所有其他非云控频道历史视频数据,并分别从IDR帧重新开始继续转发/播放。通过改进算法,可优化***,减少***资源浪费,提高***综合性能,改善用户的实时性体验。
发明内容
本发明的目的在于实现一种基于H.264编码的实时流媒体多路转发控制方法,客户端申请实时视频后以最小延时代价使得客户端播放视频;客户端云控视频采样设备后,使客户端以最小延时代价播放云控后的视频画面,从而改善用户实时性体验。
具体来说,本发明的方法包括下列内容:
A.服务器端缓冲区设计为两类链表:具体内容如下:
A1服务器端维护一个双向环形大链表A作为缓冲区,用于记录从视频采样设备上获取到的H.264编码的视频流数据包,链表A的节点主要包含但不限于如下成员:
A1.1视频流指针,指向从视频采样设备上获取的一包H.264编码视频流的头指针;
A1.2视频流长度,数值为从视频采样设备上获取的一包H.264编码视频流的字节数;
A1.3视频采样设备,指向从视频采样设备上获取的一包H.264编码视频流所对应的视频采样设备指针,每个视频采样设备对应一路视频,即一个频道或者通道;
A1.4视频数据类型,标明从视频采样设备上获取的一包视频流的类型;
A2.每个视频采样设备维护一个双向环形小链表B,该链表主要记录一个指针,该指针指向在大链表A上属于特定某个视频采样设备的视频流节点,链表B的节点主要包含但不限于如下成员:
A2.1指向链表A节点的指针;
A2.2链表A节点对应的H.264编码视频数据包是否是IDR帧标志;
B.客户端申请实时视频,服务器端转发最新的历史IDR帧及其后视频数据给申请实时视频客户端,其具体实现方法为:
B1.客户端正确登录服务器后,由服务器端发送给该客户端可以访问的视频采样设备列表;
B2.客户端选择某个视频采样设备向服务器端发送实时视频请求;
B3.服务器端接到客户端实时视频请求后,检查当前是否有客户端请求的视频流,没有则向视频采样设备发送获取视频请求;服务器端软件将获取到的H.264编码的一包视频流数据加入链表A并构造相应链表B的一个节点增加到链表B中;
B4.每个视频采样设备永远保留2帧最新的IDR帧及其以后视频数据包,当客户端请求实时视频流时,不论保留的最新IDR帧是否已经发送过(此时有其他客户端正在实时播放该路视频),都立即优先发送该路视频最新IDR帧及其后视频流数据包给客户端,直至链表A未发送的节点处停止这种优先级别的发送。这种方式,可使得用户点播某路视频后,能立即显示该路视频的画面,用户实时性体验良好;
C.服务器端每路视频只保留2帧IDR范围内的最新实时视频数据,具体实现步骤如下:
C1.服务器端获取H.264编码的视频采样设备的视频流数据包bag;
C2.数据包bag连接到链表A的尾部,同时构建链表B相应一个节点;
C3.服务器端每路视频分别维护一个IDR帧计数IDRCount;
C4.判断数据包bag是否是IDR帧,如果是IDR帧,则IDR帧计数IDRCount加1;
C5.检查IDR帧计数IDRCount,如果该计数大于给定阈值2,则从链表A尾部逆向遍历,找到该路视频的倒数第2个IDR帧,删除有关该路视频倒数第2个IDR帧以前的所有历史视频数据,通过该种技术,可改善转发的视频数据的实时性能;
D.客户端缓冲区设计为两类链表:具体内容如下:
D1客户端维护一个双向环形链表CA作为接收缓冲区,用于记录服务器端转发的未分包的视频流数据,链表CA的节点主要包含但不限于如下成员:
D1.1视频流指针,指向从服务器端转发的一段视频流的头指针;
D1.2视频流长度,数值为从服务器端转发的一段视频流的字节数,一般设定为一个定值,如10000;
D2客户端维护一个双向环形链表CB作为播放缓冲区,用于链表CA中已经分包的各路视频数据包,链表CB的节点主要包含但不限于如下成员:
D2.1视频流指针,指向从服务器端转发的一包H.264编码的视频流的头指针;
D2.2视频流长度,数值为从服务器端转发的一包H.264编码的视频流的字节数;
D2.3视频采样设备,指向从服务器端转发的一包H.264编码的视频流所对应的视频采样设备指针,每个视频采样设备对应一路视频;
E.客户端每路视频只保留2帧IDR范围内的最新实时视频数据,具体实现步骤是:
E1.客户端每路视频分别维护一个IDR帧计数IDRCount;
E2.客户端获取分包后的视频流,判断是否IDR帧;
E3.分包后的视频流如果是IDR帧,则IDR帧计数IDRCount加1;
E4.如果IDR帧计数IDRCount大于给定阈值2,则从链表CB尾部逆向查找倒数第2个IDR帧,删除链表CB倒数第2个IDR帧之前的该频道的所有历史视频数据包,这是客户端实时性能改善技术之一;
F.服务器端采用双线程及缓冲区方法转发实时视频流,以解决网速和服务器端软件从视频采样设备上获取到的视频流速度不一致的问题,具体实施步骤如下:
F1.服务器端软件运行时(即主线程启动),同时启动子线程T;
F2.子线程T专用于服务器端和客户端视频流转发;
F3.服务器端主线程、子线程共用链表A,采用线程锁技术以保证公共链表A数据的一致性,对链表A的增删读写都要使用线程锁机制;
G.客户端采用双线程及缓冲区方法预览播放实时和视频,以便解决从服务器端获取的视频流速度和客户端播放器播放速度不一致的问题,具体实现步骤如下:
G1.客户端软件运行时(即主线程启动),同时启动子线程CT;
G2.子线程CT专用于播放器播放视频数据;
G3.客户端主线程、子线程共用链表CB,采用线程锁技术以保证公共链表CB数据的一致性,对链表CB的增删读写都要使用线程锁机制;
H.客户端云控视频采样设备时,服务器端和客户端分别清空除云控频道外的所有其他频道历史视频数据,并分别从IDR帧重新开始继续转发,具体实现步骤如下:
H1.客户端通过TCP协议向服务器端发送某个视频采样设备的云控命令;
H2.客户端从链表CB尾部开始倒序遍历,只保留云控频道的视频流数据,其他频道视频流数据清空,云控时,用户注意力集中在云控频道,清空其他频道,是为了让云控频道尽快实时播放云控后的视频画面以改善用户的实时性体验;
H3.服务器端接到云控该命令后,从链表A的尾部开始逆序遍历,清空除云控频道外所有其他频道的视频数据;
H4.服务器端的非云控频道从各自的新的IDR帧开始继续加入链表A并重新开始转发,这样也是为了改善客户端用户实时性体验,考虑云控频道视频数据优先转发;
本发明的优点是从服务器端和客户端两个进程分别做基于H.264编码的视频转发及控制的实行性能改善,利用实时应用需求,适当时机抛弃影响实时性能的历史视频数据,从而改善客户端用户的实时性能体验,因此该方法具有良好的应用前景和市场价值。
附图说明
图1:***结构图
图2:服务器端链表结构图
图3:实时性改进流程图
具体实施方式
下面结合附图,通过一套已经部署实现的***实施改进实例,对本发明作进一步描述。该部署实现的***配置是:
名称 | 设备型号 | 数量 |
海康NVR | DSA-7300 | 1 |
视频采样设备 | 枪球一体机、网络球机,半球机 | 4 |
服务器 | Windows server 2008R2、Access 2007 | 1 |
客户端 | OS:windows XP | 2 |
实时***由多个硬件设备构成,其结构图如图1所示,服务器链表结构示意图如图2所示,具体包括如下实施步骤:a)视频采样设备连接到NVR,浏览器输入NVR的IP,即可通过网页设置连接视频采样设备;b)服务器端添加NVR设备和视频采样设备信息,这是服务器端的一个功能模块;c)服务器端添加用户记录,这是服务器端软件的一个功能模块;d)客户端输入服务器端IP地址,输入用户名密码访问服务器端做登录验证;e)服务器端返回客户端有权限访问的视频采样设备列表;f)客户端选择视频采样设备请求实时视频预览;g)服务器端转发客户端请求的实时视频流;h)客户端发送云控命令给服务器端;i)服务器端通过NVR云控视频采样设备;
下面结合***实例对本发明作进一步描述:
本发明方法的改进措施分为预览播放实时性能改进和云控实时性能改进,改进又分客户端改进和服务器端改进,参见图3;
服务器端改进共用到2个链表:链表A和链表B,链表A为从海康NVR上转发过来的已打包的各个频道的H.264编码视频流数据;链表B为每个频道维护的一个小链表,有几个频道需要转发就有几个链表B;根据客户端请求,服务器端向NVR上申请视频流,开始接收NVR上转发的H.264编码的已打包视频流数据;服务器端接收到该视频流数据后,会根据H.264编码后的视频流识别IDR帧并在链表A中做该包是否IDR帧标志;服务器端从NVR上接收一包H.264编码视频流数据,立即连接该包到链表A中,并在相应频道的链表B中增加一个节点;如果服务器端从NVR上接收的一包数据为IDR帧,则链表B中逆向找到倒数第二个IDR帧,清空链表B中该IDR帧之前的该频道的所有节点,并删除该节点所指向的链表A中相应节点;服务器端接收到客户端发送的云控命令后,停止转发所有非云控频道视频直至链表A中非云控频道各自最新IDR帧再继续加入到链表A并继续转发;
客户端改进共用到2个链表:链表CA和链表CB,链表CA为接收的服务器端转发的未分包的H.264编码视频数据,包括客户端申请的各个频道的视频数据,并且有可能是截断服务器端转发过来的一个H.264完整包,该包在本发明的实施实例中采用固定长度10000字节;链表CB为已分包的客户端请求播放视频的各个通道的H.264编码视频数据包,此时的分包和服务器端转发的H.264编码视频数据包是相同的包;链表CB中,如果新增加的节点为某个频道P的IDR帧(服务器端转发过来的标志),逆向遍历链表CB找到倒数第二个IDR帧,清空链表CB中该IDR帧之前的频道P的所有未播放数据;客户端发送云控命令后,立即清空非云控频道的所有未播放视频数据;
实施实例结果
按照本发明的方法实现的基于H.264编码的流媒体多路转发及控制,实时性能改进效果明显,其各项功能实现结果如下:
1)在服务器端改进后实施结果
通过记录待转发视频数据包数量,每包视频数据大小,关键时间点信息,截取某个时间点,得到改进效果数值如下表所示:
2)在客户端改进后实施结果
通过记录待播放视频数据包数量,每包视频数据大小,关键时间点信息,截取某个时间点,得到改进效果数值如下表所示:
3)预览播放实时性实施结果
通过设计一个日志文件,记录客户端申请视频和视频开始播放关键时间点,可获取改进前后预览播放视频画面的延迟时间,如下表:
视频数量 | 客户端数量 | 改进前延时(s) | 改进后延时(s) |
1 | 1 | 0.67 | 0.42 |
1 | 2 | 3.35 | 0.36 |
2 | 1 | 4.12 | 0.89 |
2 | 2 | 4.35 | 0.56 |
3 | 1 | 5.79 | 0.47 |
3 | 2 | 5.91 | 0.98 |
4 | 1 | 6.23 | 0.96 |
4 | 2 | 6.89 | 0.77 |
4)云控实时性实施结果
通过设计一个日志文件,记录视频云控发生时的关键时间点,可获取改进前后云控频道播放云控后的视频画面的延迟时间,如下表:
视频数量 | 客户端数量 | 改进前延时(s) | 改进后延时(s) |
1 | 1 | 1.91 | 1.51 |
1 | 2 | 2.12 | 1.57 |
2 | 1 | 3.09 | 1.69 |
2 | 2 | 3.23 | 1.76 |
3 | 1 | 5.24 | 1.71 |
3 | 2 | 5.93 | 1.82 |
4 | 1 | 7.27 | 1.78 |
4 | 2 | 7.91 | 1.86 |
Claims (5)
1.一种基于H.264编码的实时流媒体多路转发控制方法,其步骤包括:
A.服务器端缓冲区设计为两类链表:具体内容如下:
A1服务器端维护一个双向环形大链表A作为缓冲区,用于记录从视频采样设备上获取到的H.264编码的视频流数据包属性;
A2.每个视频采样设备维护一个双向环形小链表B,该链表主要记录一个指针,该指针指向在大链表A上属于特定某个视频采样设备的视频流节点;
B.客户端申请实时视频,服务器端转发最新的历史IDR帧及其后视频数据给申请实时视频客户端,其具体实现方法为:
B1.客户端正确登录服务器后,由服务器端发送给该客户端可以访问的视频采样设备列表;
B2.客户端选择某个视频采样设备向服务器端发送实时视频请求;
B3.服务器端接到客户端实时视频请求后,检查当前是否有客户端请求的视频流,没有则向视频采样设备发送获取视频请求;服务器端软件将获取到的H.264编码的一包视频流数据加入链表A并构造相应链表B的一个节点增加到链表B中;
B4.每个视频采样设备永远保留2帧最新的IDR帧及其以后视频数据包,当客户端请求实时视频流时,不论保留的最新IDR帧是否已经发送过,都立即优先发送该路视频最新IDR帧及其后视频流数据包给客户端,直至链表A未发送的节点处停止这种优先级别的发送;
C.服务器端每路视频只保留2帧IDR范围内的最新实时视频数据,具体实现步骤如下:
C1.服务器端获取H.264编码的视频采样设备的视频流数据包bag;
C2.数据包bag连接到链表A的尾部,同时构建链表B相应一个节点;
C3.服务器端每路视频分别维护一个IDR帧计数IDRCount;
C4.判断数据包bag是否是IDR帧,如果是IDR帧,则IDR帧计数IDRCount加1;
C5.检查IDR帧计数IDRCount,如果该计数大于给定阈值2,则从链表A尾部逆向遍历,找到该路视频的倒数第2个IDR帧,删除有关该路视频倒数第2个IDR帧以前的所有历史视频数据;
D.客户端缓冲区设计为两类链表:具体内容如下:
D1客户端维护一个双向环形链表CA作为接收缓冲区,用于记录服务器端转发的未分包的视频流数据,链表CA的节点主要包含但不限于如下成员:
D2客户端维护一个双向环形链表CB作为播放缓冲区,用于链表CA中已经分包的各路视频数据包,链表CB的节点主要包含但不限于如下成员:
E.客户端每路视频只保留2帧IDR范围内的最新实时视频数据,具体实现步骤是:
E1.客户端每路视频分别维护一个IDR帧计数IDRCount;
E2.客户端获取分包后的视频流,判断是否IDR帧;
E3.分包后的视频流如果是IDR帧,则IDR帧计数IDRCount加1;
E4.如果IDR帧计数IDRCount大于给定阈值2,则从链表CB尾部逆向查找倒数第2个IDR帧,删除链表CB倒数第2个IDR帧之前的该频道的所有历史视频数据包;
F.服务器端采用双线程及缓冲区方法转发实时视频流,以解决网速和服务器端软件从视频采样设备上获取到的视频流速度不一致的问题,具体实施步骤如下:
F1.服务器端软件运行时,同时启动子线程T;
F2.子线程T专用于服务器端和客户端视频流转发;
F3.服务器端主线程、子线程共用链表A,采用线程锁技术以保证公共链表A数据的一致性,对链表A的增删读写都要使用线程锁机制;
G.客户端采用双线程及缓冲区方法预览播放实时和视频,以便解决从服务器端获取的视频流速度和客户端播放器播放速度不一致的问题,具体实现步骤如下:
G1.客户端软件运行时,同时启动子线程CT;
G2.子线程CT专用于播放器播放视频数据;
G3.客户端主线程、子线程共用链表CB,采用线程锁技术以保证公共链表CB数据的一致性,对链表CB的增删读写都要使用线程锁机制;
H.客户端云控视频采样设备时,服务器端和客户端分别清空除云控频道外的所有其他频道历史视频数据,并分别从IDR帧重新开始继续转发,具体实现步骤如下:
H1.客户端通过TCP协议向服务器端发送某个视频采样设备的云控命令;
H2.客户端从链表CB尾部开始倒序遍历,只保留云控频道的视频流数据,其他频道视频流数据清空,云控时,用户注意力集中在云控频道,清空其他频道,是为了让云控频道尽快实时播放云控后的视频画面以改善用户的实时性体验;
H3.服务器端接到云控该命令后,从链表A的尾部开始逆序遍历,清空除云控频道外所有其他频道的视频数据;
H4.服务器端的非云控频道从各自的新的IDR帧开始继续加入链表A并重新开始转发。
2.如权利要求1所述的基于H.264编码的实时流媒体多路转发控制方法,其特征在于,A1步骤中,链表A的节点主要包含但不限于如下成员:
A1.1视频流指针,指向从视频采样设备上获取的一包H.264编码视频流的头指针;
A1.2视频流长度,数值为从视频采样设备上获取的一包H.264编码视频流的字节数;
A1.3视频采样设备,指向从视频采样设备上获取的一包H.264编码视频流所对应的视频采样设备指针,每个视频采样设备对应一路视频,即一个频道或者通道;
A1.4视频数据类型,表明从视频采样设备上获取的一包视频流的类型。
3.如权利要求1所述的基于H.264编码的实时流媒体多路转发控制方法,其特征在于,A2步骤中,链表B的节点主要包含但不限于如下成员:
A2.1指向链表A节点的指针;
A2.2链表A节点对应的H.264编码视频数据包是否是IDR帧标志。
4.如权利要求1所述的基于H.264编码的实时流媒体多路转发控制方法,其特征在于,D1步骤中,链表CA的节点主要包含但不限于如下成员:
D1.1视频流指针,指向从服务器端转发的一段视频流的头指针;
D1.2视频流长度,数值为从服务器端转发的一段视频流的字节数,设定为10000。
5.如权利要求1所述的基于H.264编码的实时流媒体多路转发控制方法,其特征在于,D2步骤中,链表CB的节点主要包含但不限于如下成员:
D2.1视频流指针,指向从服务器端转发的一包H.264编码的视频流的头指针;
D2.2视频流长度,数值为从服务器端转发的一包H.264编码的视频流的字节数;
D2.3视频采样设备,指向从服务器端转发的一包H.264编码的视频流所对应的视频采样设备指针,每个视频采样设备对应一路视频。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610540068.8A CN106210923B (zh) | 2016-07-11 | 2016-07-11 | 一种基于h.264编码的实时流媒体多路转发控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610540068.8A CN106210923B (zh) | 2016-07-11 | 2016-07-11 | 一种基于h.264编码的实时流媒体多路转发控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106210923A true CN106210923A (zh) | 2016-12-07 |
CN106210923B CN106210923B (zh) | 2018-10-30 |
Family
ID=57473259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610540068.8A Expired - Fee Related CN106210923B (zh) | 2016-07-11 | 2016-07-11 | 一种基于h.264编码的实时流媒体多路转发控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106210923B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111586589A (zh) * | 2020-04-30 | 2020-08-25 | 上海交通大学 | 多接收端音频流媒体无线传输与同步播放方法和*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330609A (zh) * | 2008-07-31 | 2008-12-24 | 南京大学 | 一种多路径无线视频传输方法和*** |
CN102209232A (zh) * | 2010-04-09 | 2011-10-05 | 佛山市智邦电子科技有限公司 | 一种远程音视频监控***及其方法 |
US20120011267A1 (en) * | 2009-03-19 | 2012-01-12 | Azuki Systems, Inc. | Live streaming media delivery for mobile audiences |
CN103997623A (zh) * | 2014-05-06 | 2014-08-20 | 四川长虹电器股份有限公司 | 基于p2p技术的视频监控方法 |
CN104935958A (zh) * | 2015-06-24 | 2015-09-23 | 青岛科技大学 | 一种实时视频传输装置及方法 |
CN105306959A (zh) * | 2015-10-24 | 2016-02-03 | 广东医群科技有限公司 | 一种低延时网络自适应直播*** |
-
2016
- 2016-07-11 CN CN201610540068.8A patent/CN106210923B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330609A (zh) * | 2008-07-31 | 2008-12-24 | 南京大学 | 一种多路径无线视频传输方法和*** |
US20120011267A1 (en) * | 2009-03-19 | 2012-01-12 | Azuki Systems, Inc. | Live streaming media delivery for mobile audiences |
CN102209232A (zh) * | 2010-04-09 | 2011-10-05 | 佛山市智邦电子科技有限公司 | 一种远程音视频监控***及其方法 |
CN103997623A (zh) * | 2014-05-06 | 2014-08-20 | 四川长虹电器股份有限公司 | 基于p2p技术的视频监控方法 |
CN104935958A (zh) * | 2015-06-24 | 2015-09-23 | 青岛科技大学 | 一种实时视频传输装置及方法 |
CN105306959A (zh) * | 2015-10-24 | 2016-02-03 | 广东医群科技有限公司 | 一种低延时网络自适应直播*** |
Non-Patent Citations (2)
Title |
---|
李罗涛: "基于RTSP的H.264实时流媒体传输方案的研究与实现", 《中国优秀硕士学位论文全文数据库》 * |
甄聪聪: "基于RTSP和H.264的嵌入式网络视频监控***", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111586589A (zh) * | 2020-04-30 | 2020-08-25 | 上海交通大学 | 多接收端音频流媒体无线传输与同步播放方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN106210923B (zh) | 2018-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6027291B1 (ja) | メディアストリーミング中の適応セット間の切替え | |
US9160777B2 (en) | Adaptive variable fidelity media distribution system and method | |
US20150269629A1 (en) | Targeted advertisement insertion for streaming media data | |
WO2020220902A1 (zh) | 视频资源的传输参数分发方法及装置 | |
DE112012001770T5 (de) | Auf Echtzeitverarbeitungsfähigkeit basierende Qualitätsanpassung | |
US9043479B2 (en) | Data retrieval in a two-way network | |
DE112012002159T5 (de) | Kontextsensitive Client-Pufferschwellenwerte | |
WO2021147448A1 (zh) | 一种视频数据处理方法、装置及存储介质 | |
CN108040286A (zh) | 视频预览方法、装置、电子设备和计算机可读存储介质 | |
CN101321275B (zh) | 视频流的处理***和处理方法 | |
TW201328332A (zh) | 提供與傳送複合濃縮串流之方法以及系統 | |
CN101917389A (zh) | 一种网络电视直播*** | |
CN109618188B (zh) | 视频数据的编码、转发方法、装置、设备及存储介质 | |
CN107295364B (zh) | 用于弹幕视频的实时流传输控制方法、控制装置 | |
DE112011101908T5 (de) | Qualitätseinstellung unter Verwendung eines fragmentierten Medienstroms | |
CN101917613A (zh) | 一种流媒体采集编码服务*** | |
US20190289052A1 (en) | Video streaming | |
US20230412857A1 (en) | Per-segment parameters for content | |
CN108494792A (zh) | 一种flash播放器播放hls视频流的转换***及其工作方法 | |
US20080310445A1 (en) | Provisioning Bandwidth For A Digital Media Stream | |
WO2012011466A1 (ja) | 中継装置、中継方法、通信システム、中継制御プログラム、および記録媒体 | |
CN114501052A (zh) | 直播数据处理方法、云平台、计算机设备和存储介质 | |
US20190020734A1 (en) | Reduced content manifest size | |
CN106210923B (zh) | 一种基于h.264编码的实时流媒体多路转发控制方法 | |
CN106534889B (zh) | 一种基于环形缓冲的实时流媒体多路转发方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181030 Termination date: 20190711 |