CN105847182B - 一种音视频系统中音频优先传输方法及其系统 - Google Patents
一种音视频系统中音频优先传输方法及其系统 Download PDFInfo
- Publication number
- CN105847182B CN105847182B CN201610242149.XA CN201610242149A CN105847182B CN 105847182 B CN105847182 B CN 105847182B CN 201610242149 A CN201610242149 A CN 201610242149A CN 105847182 B CN105847182 B CN 105847182B
- Authority
- CN
- China
- Prior art keywords
- video
- audio
- packet loss
- transmit queue
- coding
- 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.)
- Active
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 85
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000002045 lasting effect Effects 0.000 claims abstract description 4
- 238000007906 compression Methods 0.000 claims description 40
- 230000006835 compression Effects 0.000 claims description 40
- 238000012545 processing Methods 0.000 claims description 19
- 230000008859 change Effects 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 7
- 238000012986 modification Methods 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 5
- 230000001186 cumulative effect Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 10
- 230000000007 visual effect Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000012800 visualization Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/439—Processing of audio elementary streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
-
- 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/637—Control signals issued by the client directed to the server or network components
- H04N21/6373—Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种音视频系统中音频优先传输方法及其系统,所述方法包括以下步骤:S1、将音视频编码并创建音频帧队列、视频关键帧队列、视频非关键帧队列;S2、配置音频帧队列为第一优先级发送队列,视频关键帧队列为第二优先级发送队列,视频非关键帧队列为第三优先级发送队列;S3、预设第一丢包阈值、第二丢包阈值及时间阈值、丢包条件;S4、记录各发送队列的丢包数及持续丢包时间,若某一优先级发送队列达到丢包条件,则丢弃其后的优先级发送队列视频流,并降低音频流或视频流的传输流量;S5、流数据传输持续不丢包达到预设时间,则按照优先级顺序按照每种优先级发送队列的策略逐级恢复音频编码类型,视频编码类型以及视频编码码率。
Description
技术领域
本发明涉及音视频通信领域,更具体的说,是涉及一种音视频系统中音频优先传输方法及其系统。
背景技术
随着平安城市建设的顺利推进,保障公众安全的迫切需求催生了公共区域及人群聚集场所中一键式可视化智能报警主机的面世。所述一键式可视化智能报警主机集音视频数据压缩、打包无线传输、开关量I/O控制于一体,实现紧急按钮报警求助,接警人员可以获得报警人员和周围的直观影像和声音,实现接警现场与接警中心双向语音对讲,使接警中心迅速了解报警求助信息;同时,所述报警主机还支持在人口密集地区实现语音广播、语音喊话,满足繁华区域及要害部位的实时远程治安监控需求。
4G无线接入技术的发展大大促进了一键式可视化智能报警主机的快速布点,同时保障顺利对接已建设的接警中心,极大的保护了人民群众生命和财产安全。但是,即使是在4G网络的条件下,囿于带宽共享、信号覆盖等问题,仍然会导致接警过程中出现声音断续延时,图像卡顿等影响用户体验的问题。
基于接警过程中对音频流实时性的高要求,需要实现音频优先传输的控制。现有的技术对于如何提高无线音视频传输的质量存在两种解决方法。其一是通过可分级视频编码器输出的视频帧打包形成不同类型的视频码流,为视频码流配置不同的QoS优先级,根据所配置的QoS优先级,将码流以无线方式发送,这种解决方法未凸显音频优先的原则,而且依赖于额外的硬件设备的支持,还需额外增加数据标志,进一步加重数据链路层的传输处理负担,并且受限于目前技术尚不完善的QoS服务,不适宜一键式可视化智能报警主机接警中优先保障音频数据的应用需求;其二是根据无线网络带宽状况,进行视频传输码率的自适应调整,这种解决方法同样没有首先满足音频优先传输的需求,只被动的以单一的方式应对无线网络传输中带宽不稳定的问题,同样,并不能很好的解决一键式可视化智能报警主机接警中声音断续延时,图像卡顿等影响用户体验的问题。
发明内容
有鉴于此,有必要针对上述问题,提供一种音视频系统中音频优先传输方法及其系统,保障优先传输关键的音频流,以解决现有技术由于受到带宽共享、信号覆盖因素的影响,导致音视频传输系统中出现声音断续延时,图像卡顿的问题。
为了实现上述目的,本发明的技术方案如下:
一种音视频系统中音频优先传输方法,包括以下步骤:
S1、控制媒体流创建音频帧队列、视频关键帧队列、视频非关键帧队列,将音视频编码后输出的音频帧、视频关键帧、视频非关键帧分别对应放入相应队列中;
S2、配置音频帧队列为第一优先级发送队列,视频关键帧队列为第二优先级发送队列,视频非关键帧队列为第三优先级发送队列;
S3、预设第一丢包阈值、第二丢包阈值及时间阈值,当各队列的丢包数达到第二丢包阈值、或达到第一丢包阈值且丢包持续时间达到时间阈值,则判定为达到丢包条件;
S4、记录各发送队列的丢包数及持续丢包时间,若某一优先级发送队列达到丢包条件,则丢弃其后的优先级发送队列视频流,并主动降低音频流或视频流的传输流量;
S5、流数据传输持续不丢包达到预设时间,则按照第一、第二、第三优先级顺序按照每种优先级发送队列的策略逐级恢复音频编码类型,视频编码类型以及视频编码码率。
作为优选的,所述步骤S1中,所述音视频经编码后输出的音视频数据通过视频回调函数和音频回调函数处理,视频回调函数根据编码库返回的帧类型区分视频关键帧和视频非关键帧,将所有关键帧放入所述视频关键帧发送队列,非关键帧放入所述非关键帧发送队列;所述音频回调函数将音频放入所述音频帧发送队列。
作为优选的,所述步骤S3还包括,根据TCP或UDP的Socket发送结果修改所述各个发送队列对应的丢包数:
发送成功,则所述各发送队列对应的丢包数清零;
发送失败,则所述各发送队列对应的丢包数累加;
当各队列的丢包数达到第二丢包阈值、或达到第一丢包阈值且丢包持续时间达到时间阈值,则判定为达到丢包条件。
作为优选的,所述第一丢包阈值为3包,第二丢包阈值为50包,所述时间阈值为50s。
作为优选的,所述步骤S4具体包括:
S401、当所述第一优先级发送队列达到所述的丢包条件,采取直接丢弃第二及第三优先级发送队列,并实时改变音频编码格式的方式,采用更高压缩比的音频编码格式,主动降低音频流的传输流量;
S402、当所述第二优先级发送队列达到所述的丢包条件,采取直接丢弃所述第三优先级发送队列,实时递降视频编码质量的方式,主动降低视频流的传输流量;
S403、当所述第三优先级发送队列达到所述的丢包条件,采取三级实时阶梯式递降视频码率的方式,主动降低视频流的传输流量。
作为优选的,所述步骤S401具体包括:
当所述第一优先级发送队列达到所述的丢包条件,直接丢弃所述第二及第三优先级发送队列的所有数据包,不再发送所述第二及第三优先级发送队列数据;同时实施第一次改变音频编码类型,首先获取编码库的预设音频编码类型,然后获取音视频模块支持的所有音频编码类型,以所述预设音频编码类型的更高压缩比的音频编码类型作为新的编码类型设置给编码库,设置成功后,编码库以比所述预设的音频编码类型的更高压缩比的音频编码类型输出音频流;
再次达到所述任一丢包条件,如果所述更高压缩比的音频编码类型还未达到所述音视频模块支持的最高压缩比的音频编码类型,则继续实施更改为更高一级压缩比的音频编码类型;如果所述更高压缩比的音频编码类型已经是所述音视频模块支持的最高压缩比的音频编码类型,则保持以所述最高压缩比的音频编码类型输出音频流。
作为优选的,所述步骤S402具体包括:
当所述第三优先级发送队列达到所述的丢包条件,直接丢弃所述第三优先级视频流发送队列的所有数据包,不再发送所述第三优先级发送队列数据;同时实施一级递降视频编码质量,首先获取编码库的预设视频编码类型,然后获取音视频模块支持的所有视频编码类型,以所述预设视频编码类型的下一等级编码类型作为新的视频编码类型设置给编码库,设置成功后,编码库以所述预设的视频编码类型的下一等级视频编码类型输出视频流;
再次达到所述任一丢包条件,实施二级递降视频编码质量,以所述一级递降后的视频编码类型的下一等级视频编码类型作为新的编码类型设置给编码库,设置成功后,编码库以所述预设的视频编码类型低两个等级的视频编码类型输出视频流;
第三次达到所述任一丢包条件,如果所述二级递降后的视频编码类型还未达到所述音视频模块支持的最低等级的视频编码类型,则继续实施递降视频编码质量;
如果所述递降后的视频编码类型已经是所述音视频模块支持的最低等级的视频编码类型,则直接丢弃所述第二优先级发送队列的所有数据包,不再发送所述第二优先级发送队列数据。
作为优选的,所述步骤S403具体包括:
当所述第三优先级发送队列达到所述的丢包条件,实施一级递降视频码率,首先获取编码库的预设视频编码码率,然后以所述预设视频编码码率的1/2作为新的编码码率设置给编码库,设置成功后,编码库以所述预设的编码码率的1/2输出视频流;
再次达到所述丢包条件,实施二级递降视频码率,以所述预设视频编码码率的1/4作为新的编码码率设置给编码库,设置成功后,编码库以所述预设的视频编码码率的1/4输出视频流;
第三次达到所述丢包条件,实施三级递降视频码率,以所述预设视频编码码率的1/16作为新的编码码率设置给编码库,设置成功后,编码库以所述预设的视频编码码率的1/16输出视频流;
第四次达到所述丢包条件,则直接丢弃所述第三优先级发送队列的所有数据包,不再发送所述第三优先级发送队列数据。
作为优选的,所述步骤S5具体包括:
S501、流数据传输持续不丢包首次达到预设时间,针对所述第一优先级发送队列的降音频流量策略进行逐级恢复为所述的预设音频编码类型;
S502、流数据传输持续不丢包再次达到预设时间,针对所述第二优先级发送队列的降视频编码质量以降流量策略进行逐级恢复为所述的预设视频编码类型;
S503、流数据传输持续不丢包再次达到预设时间,针对所述第三优先级发送队列的降视频编码帧率以降流量策略进行逐级恢复为所述的预设视频编码帧率。
一种根据上述方法进行音频优先传输的音视频系统,包括依次连接的音视频编码模块、流媒体控制模块、控制处理模块、丢包检测模块、音视频传输控制模块;
所述音视频编码模块用于对接收的音视频编码,并输出得到音频帧、视频关键帧、视频非关键帧;
所述流媒体控制模块用于创建三个分别用于容置音频帧、视频关键帧、视频非关键帧的发送队列;
所述丢包检测模块用于检测各个发送队列的丢包数;
所述控制处理模块用于对各发送队列进行优先级排序,并根据各个发送队列的丢包数预设丢包条件及相应的处理方式;
所述用于根据控制处理模块发送的处理方式,对各发送队列进行处理,包括:若某一优先级发送队列达到丢包条件,则丢弃其后的优先级发送队列视频流,并主动降低音频流或视频流的传输流量。
与现有技术相比,本发明的有益效果在于:本发明提供的音频优先传输控制方法从流数据的源头控制传输流量,分三个优先级队列,每种优先级队列采取不同的行之有效的策略,保障优先传输关键的音频流,以解决现有技术由于受到带宽共享、信号覆盖因素的影响,导致音视频传输系统中出现声音断续延时,图像卡顿的问题,提高了无线带宽的利用率,同时保证不同优先级的流数据传输质量的健壮性。
附图说明
图1为本发明实施例的方法流程图;
图2为本发明实施例中第一优先级丢包处理流程图;
图3为本发明实施例中第二优先级丢包处理流程图;
图4为本发明实施例中第三优先级丢包处理流程图;
图5为本发明实施例中系统结构框图;
图6为本发明在实施例2中应用到一键式可视化智能报警主机示意图。
具体实施方式
下面结合附图和实施例对本发明所述的一种音视频系统中音频优先传输方法及其系统作进一步说明。
以下是本发明所述的一种音视频系统中音频优先传输方法及其系统的最佳实例,并不因此限定本发明的保护范围。
实施例1
图1示出了本发明所述的一种音视频系统中音频优先传输方法,具体包括以下步骤:
S1、控制媒体流创建音频帧队列、视频关键帧队列、视频非关键帧队列,将音视频编码后输出的音频帧、视频关键帧、视频非关键帧分别对应放入相应队列中;
S2、配置音频帧队列为第一优先级发送队列,视频关键帧队列为第二优先级发送队列,视频非关键帧队列为第三优先级发送队列;
S3、预设第一丢包阈值、第二丢包阈值及时间阈值,当各队列的丢包数达到第二丢包阈值、或达到第一丢包阈值且丢包持续时间达到时间阈值,则判定为达到丢包条件;
S4、记录各发送队列的丢包数及持续丢包时间,若某一优先级发送队列达到丢包条件,则丢弃其后的优先级发送队列视频流,并主动降低音频流或视频流的传输流量;
S5、流数据传输持续不丢包达到预设时间,则按照第一、第二、第三优先级顺序按照每种优先级发送队列的策略逐级恢复音频编码类型,视频编码类型以及视频编码码率。
作为优选的,所述步骤S1中,所述音视频经编码后输出的音视频数据通过视频回调函数和音频回调函数处理,视频回调函数根据编码库返回的帧类型区分视频关键帧和视频非关键帧,将所有关键帧放入所述视频关键帧发送队列,非关键帧放入所述非关键帧发送队列;所述音频回调函数将音频放入所述音频帧发送队列。
作为优选的,所述步骤S5具体包括:
S501、流数据传输持续不丢包首次达到预设时间,针对所述第一优先级发送队列的降音频流量策略进行逐级恢复为所述的预设音频编码类型;
S502、流数据传输持续不丢包再次达到预设时间,针对所述第二优先级发送队列的降视频编码质量以降流量策略进行逐级恢复为所述的预设视频编码类型;
S503、流数据传输持续不丢包再次达到预设时间,针对所述第三优先级发送队列的降视频编码帧率以降流量策略进行逐级恢复为所述的预设视频编码帧率。
作为优选的,所述步骤S3还包括,根据TCP或UDP的Socket发送结果修改所述各个发送队列对应的丢包数:
发送成功,则所述各发送队列对应的丢包数清零;
发送失败,则所述各发送队列对应的丢包数累加;
当各队列的丢包数达到第二丢包阈值、或达到第一丢包阈值且丢包持续时间达到时间阈值,则判定为达到丢包条件。
作为优选的,所述第一丢包阈值为3包,第二丢包阈值为50包,所述时间阈值为50s。
作为优选的,所述步骤S4具体包括:
S401、当所述第一优先级发送队列达到所述的丢包条件,采取直接丢弃第二及第三优先级发送队列,并实时改变音频编码格式的方式,采用更高压缩比的音频编码格式,主动降低音频流的传输流量;
S402、当所述第二优先级发送队列达到所述的丢包条件,采取直接丢弃所述第三优先级发送队列,实时递降视频编码质量的方式,主动降低视频流的传输流量;
S403、当所述第三优先级发送队列达到所述的丢包条件,采取三级实时阶梯式递降视频码率的方式,主动降低视频流的传输流量。
作为优选的,如图2所示,所述步骤S401具体包括:
当所述第一优先级发送队列达到所述的丢包条件,直接丢弃所述第二及第三优先级发送队列的所有数据包,不再发送所述第二及第三优先级发送队列数据;同时实施第一次改变音频编码类型,首先获取编码库的预设音频编码类型,然后获取音视频模块支持的所有音频编码类型,以所述预设音频编码类型的更高压缩比的音频编码类型作为新的编码类型设置给编码库,设置成功后,编码库以比所述预设的音频编码类型的更高压缩比的音频编码类型输出音频流;
再次达到所述任一丢包条件,确认是否是所述第一优先级发送队列第n(n>1)次满足丢包条件,如果所述第一优先级队列第n(n>1)次满足丢包条件,则实施高n级压缩比的音频编码类型设置,以比所述上一级更高一级压缩后的音频编码类型作为新的编码类型设置给编码库,设置成功后,编码库以所述预设的音频编码类型高n个等级的压缩比的音频编码类型输出音频流。如果所述更高压缩比的音频编码类型已经是所述音视频模块支持的最高压缩比的音频编码类型,则保持以所述最高压缩比的音频编码类型输出音频流。
如果不满足丢包条件,判断是否满足所述第一优先级队列网络恢复条件,针对所述第一优先级发送队列的降音频流量策略进行逐级恢复为所述的预设音频编码类型;如果满足,则逐级恢复为所述的预设音频编码类型;如果不满足,则结束第一优先级队列数据包传输处理流程。
本实施例按照第一优先级发送队列达到所述的丢包条件,则采取直接丢弃第二及第三优先级视频流队列,实时改变音频编码格式,采用更高压缩比的音频编码格式,主动降低音频流的传输流量的方式,应对第一优先级的队列丢包,以解决网络出现很严重的传输不稳定造成的音频帧丢包问题。
作为优选的,如图3所示,所述步骤S402具体包括:
当所述第二优先级发送队列达到所述的丢包条件,直接丢弃所述第三优先级视频流发送队列的所有数据包,不再发送所述第三优先级发送队列数据;同时实施一级递降视频编码质量,首先获取编码库的预设视频编码类型,然后获取音视频模块支持的所有视频编码类型,以所述预设视频编码类型的下一等级编码类型作为新的视频编码类型设置给编码库,设置成功后,编码库以所述预设的视频编码类型的下一等级视频编码类型输出视频流;
再次达到所述任一丢包条件,实施二级递降视频编码质量,以所述一级递降后的视频编码类型的下一等级视频编码类型作为新的编码类型设置给编码库,设置成功后,编码库以所述预设的视频编码类型低两个等级的视频编码类型输出视频流;
第三次达到所述任一丢包条件,如果所述二级递降后的视频编码类型还未达到所述音视频模块支持的最低等级的视频编码类型,则继续实施递降视频编码质量;
如果所述第二优先级队列第n(n>1)次满足丢包条件,则实施n级递降视频编码质量,以所述上一级递降后的视频编码类型的下一等级视频编码类型作为新的编码类型设置给编码库,设置成功后,编码库以所述预设的视频编码类型低n个等级的视频编码类型输出视频流。
如果所述递降后的视频编码类型已经是所述音视频模块支持的最低等级的视频编码类型,则直接丢弃所述第二优先级发送队列的所有数据包,不再发送所述第二优先级发送队列数据。
如果不满足丢包条件,持续不丢包再次达到预设时间,针对所述第二优先级发送队列的降视频编码质量以降流量策略进行逐级恢复为所述的预设视频编码类型;判断是否满足所述第二优先级队列网络恢复条件,如果满足,则逐级恢复为所述的预设视频编码质量类型;如果不满足,则结束第二优先级队列数据包传输处理流程。
按照第二优先级发送队列达到所述的丢包条件,则采取直接丢弃所述第三优先级视频流队列,实时递降视频编码质量,主动降低视频流的传输流量,直至完全丢弃所述第二优先级视频流队列的方式,应对第二优先级的队列丢包,以解决网络出现较严重的传输不稳定造成的关键视频帧丢包问题。
作为优选的,如图4所述,所述步骤S403具体包括:
当所述第三优先级发送队列达到所述的丢包条件,实施一级递降视频码率,首先获取编码库的预设视频编码码率,然后以所述预设视频编码码率的1/2作为新的编码码率设置给编码库,设置成功后,编码库以所述预设的编码码率的1/2输出视频流;
再次达到所述丢包条件,实施二级递降视频码率,以所述预设视频编码码率的1/4作为新的编码码率设置给编码库,设置成功后,编码库以所述预设的视频编码码率的1/4输出视频流;
第三次达到所述丢包条件,实施三级递降视频码率,以所述预设视频编码码率的1/16作为新的编码码率设置给编码库,设置成功后,编码库以所述预设的视频编码码率的1/16输出视频流;
第四次达到所述丢包条件,则直接丢弃所述第三优先级发送队列的所有数据包,不再发送所述第三优先级发送队列数据。
持续不丢包再次达到预设时间,针对所述第三优先级发送队列的降视频编码帧率以降流量策略进行逐级恢复为所述的预设视频编码帧率。
按照第三优先级发送队列达到所述的丢包条件,则采取三级实时阶梯式递降视频码率,主动降低视频流的传输流量,直至完全丢弃所述第三优先级视频流队列的方式,应对第三优先级的队列丢包,以解决网络出现较轻微的传输不稳定造成的非关键视频帧丢包问题。
图5示出了本发明的系统框架图,包括依次连接的音视频编码模块、流媒体控制模块、控制处理模块、丢包检测模块、音视频传输控制模块;
所述音视频编码模块用于对接收的音视频编码,并输出得到音频帧、视频关键帧、视频非关键帧;
所述流媒体控制模块用于创建三个分别用于容置音频帧、视频关键帧、视频非关键帧的发送队列;
所述丢包检测模块用于检测各个发送队列的丢包数;
所述控制处理模块用于对各发送队列进行优先级排序,并根据各个发送队列的丢包数预设丢包条件及相应的处理方式;
所述用于根据控制处理模块发送的处理方式,对各发送队列进行处理,包括:若某一优先级发送队列达到丢包条件,则丢弃其后的优先级发送队列视频流,并主动降低音频流或视频流的传输流量。
实施例2
图6示出了本发明的方法在一键式可视化智能报警主机中的具体应用,一键式可视化智能报警主机100包含一键报警模块105、编/解码模块104、可视化对讲模块102、设备管理模块106、存储模块103和无线传输模块101,如图5所示,具体包括:
一键报警模块105实现了可靠的一键报警功能,只要按下报警按钮,就能快速的将警情上报至接警中心。
编解码模块104采用H.265压缩算法对实时图像进行压缩,支持视频最高分辨率为1080×720,30fps,支持iLBC压缩算法对实时音频数据进行压缩和解码。
可视化对讲模块102实现了一键报警后,接警人员可以获得报警人员和周围的直观影像和声音,可以直接询问警情和处理警情。
设备管理模块106实现了设备各种管理与操作功能,包括远程警报、夜间警笛音量自动调节、设备音量调节、设备码流配置、设备分辨率配置等功能。
存储模块103实现了设备可视化对讲数据的存储功能,在网络不通的状态下记录报警人及周边环境的声音与影像信息,网络恢复正常以后自动上传至接警中心。
无线传输模块101实现在未架设有线网络的地方快捷搭建报警系统。
接警中心200管理报警设备与接警用户之间的信息交互,及时处理警情事件。
本领域普通技术人员还可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,包括ROM/RAM、磁盘、光盘等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (7)
1.一种音视频系统中音频优先传输方法,其特征在于,包括以下步骤:
S1、控制媒体流创建音频帧队列、视频关键帧队列、视频非关键帧队列,将音视频编码后输出的音频帧、视频关键帧、视频非关键帧分别对应放入相应队列中;
S2、配置音频帧队列为第一优先级发送队列,视频关键帧队列为第二优先级发送队列,视频非关键帧队列为第三优先级发送队列;
S3、预设第一丢包阈值、第二丢包阈值及时间阈值,当各队列的丢包数达到第二丢包阈值、或达到第一丢包阈值且丢包持续时间达到时间阈值,则判定为达到丢包条件;
S4、记录各发送队列的丢包数及持续丢包时间,若某一优先级发送队列达到丢包条件,则丢弃其后的优先级发送队列视频流,并主动降低音频流或视频流的传输流量;
S5、流数据传输持续不丢包达到预设时间,则按照第一、第二、第三优先级顺序按照每种优先级发送队列的策略逐级恢复音频编码类型,视频编码类型以及视频编码码率;
其中,所述步骤S3还包括,根据TCP或UDP的Socket发送结果修改所述各个发送队列对应的丢包数:
发送成功,则所述各发送队列对应的丢包数清零;
发送失败,则所述各发送队列对应的丢包数累加;
当各队列的丢包数达到第二丢包阈值、或达到第一丢包阈值且丢包持续时间达到时间阈值,则判定为达到丢包条件;
所述步骤S4具体包括:
S401、当所述第一优先级发送队列达到所述的丢包条件,采取直接丢弃第二及第三优先级发送队列,并实时改变音频编码格式的方式,采用更高压缩比的音频编码格式,主动降低音频流的传输流量;
S402、当所述第二优先级发送队列达到所述的丢包条件,采取直接丢弃所述第三优先级发送队列,实时递降视频编码质量的方式,主动降低视频流的传输流量;
S403、当所述第三优先级发送队列达到所述的丢包条件,采取三级实时阶梯式递降视频码率的方式,主动降低视频流的传输流量;
所述步骤S401具体包括:
当所述第一优先级发送队列达到所述的丢包条件,直接丢弃所述第二及第三优先级发送队列的所有数据包,不再发送所述第二及第三优先级发送队列数据;同时实施第一次改变音频编码类型,首先获取编码库的预设音频编码类型,然后获取音视频模块支持的所有音频编码类型,以所述预设音频编码类型的更高压缩比的音频编码类型作为新的编码类型设置给编码库,设置成功后,编码库以比所述预设的音频编码类型的更高压缩比的音频编码类型输出音频流;
再次达到所述任一丢包条件,如果所述更高压缩比的音频编码类型还未达到所述音视频模块支持的最高压缩比的音频编码类型,则继续实施更改为更高一级压缩比的音频编码类型;如果所述更高压缩比的音频编码类型已经是所述音视频模块支持的最高压缩比的音频编码类型,则保持以所述最高压缩比的音频编码类型输出音频流。
2.根据权利要求1所述的音视频系统中音频优先传输方法,其特征在于,所述步骤S1中,所述音视频经编码后输出的音视频数据通过视频回调函数和音频回调函数处理,视频回调函数根据编码库返回的帧类型区分视频关键帧和视频非关键帧,将所有关键帧放入所述视频关键帧发送队列,非关键帧放入所述非关键帧发送队列;所述音频回调函数将音频放入所述音频帧发送队列。
3.根据权利要求1所述的音视频系统中音频优先传输方法,其特征在于,所述第一丢包阈值为3包,第二丢包阈值为50包,所述时间阈值为50s。
4.根据权利要求1所述的音视频系统中音频优先传输方法,其特征在于,所述步骤S402具体包括:
当所述第二优先级发送队列达到所述的丢包条件,直接丢弃所述第三优先级视频流发送队列的所有数据包,不再发送所述第三优先级发送队列数据;同时实施一级递降视频编码质量,首先获取编码库的预设视频编码类型,然后获取音视频模块支持的所有视频编码类型,以所述预设视频编码类型的下一等级编码类型作为新的视频编码类型设置给编码库,设置成功后,编码库以所述预设的视频编码类型的下一等级视频编码类型输出视频流;
再次达到所述任一丢包条件,实施二级递降视频编码质量,以所述一级递降后的视频编码类型的下一等级视频编码类型作为新的编码类型设置给编码库,设置成功后,编码库以所述预设的视频编码类型低两个等级的视频编码类型输出视频流;
第三次达到所述任一丢包条件,如果所述二级递降后的视频编码类型还未达到所述音视频模块支持的最低等级的视频编码类型,则继续实施递降视频编码质量;
如果所述递降后的视频编码类型已经是所述音视频模块支持的最低等级的视频编码类型,则直接丢弃所述第二优先级发送队列的所有数据包,不再发送所述第二优先级发送队列数据。
5.根据权利要求1所述的音视频系统中音频优先传输方法,其特征在于,所述步骤S403具体包括:
当所述第三优先级发送队列达到所述的丢包条件,实施一级递降视频码率,首先获取编码库的预设视频编码码率,然后以所述预设视频编码码率的1/2作为新的编码码率设置给编码库,设置成功后,编码库以所述预设的编码码率的1/2输出视频流;
再次达到所述丢包条件,实施二级递降视频码率,以所述预设视频编码码率的1/4作为新的编码码率设置给编码库,设置成功后,编码库以所述预设的视频编码码率的1/4输出视频流;
第三次达到所述丢包条件,实施三级递降视频码率,以所述预设视频编码码率的1/16作为新的编码码率设置给编码库,设置成功后,编码库以所述预设的视频编码码率的1/16输出视频流;
第四次达到所述丢包条件,则直接丢弃所述第三优先级发送队列的所有数据包,不再发送所述第三优先级发送队列数据。
6.根据权利要求1所述的音视频系统中音频优先传输方法,其特征在于,所述步骤S5具体包括:
S501、流数据传输持续不丢包首次达到预设时间,针对所述第一优先级发送队列的降音频流量策略进行逐级恢复为所述的预设音频编码类型;
S502、流数据传输持续不丢包再次达到预设时间,针对所述第二优先级发送队列的降视频编码质量以降流量策略进行逐级恢复为所述的预设视频编码类型;
S503、流数据传输持续不丢包再次达到预设时间,针对所述第三优先级发送队列的降视频编码帧率以降流量策略进行逐级恢复为所述的预设视频编码帧率。
7.一种根据权利要求1至6任一所述方法进行音频优先传输的音视频系统,其特征在于,包括依次连接的音视频编码模块、流媒体控制模块、控制处理模块、丢包检测模块、音视频传输控制模块;
所述音视频编码模块用于对接收的音视频编码,并输出得到音频帧、视频关键帧、视频非关键帧;
所述流媒体控制模块用于创建三个分别用于容置音频帧、视频关键帧、视频非关键帧的发送队列;
所述丢包检测模块用于检测各个发送队列的丢包数;
所述控制处理模块用于对各发送队列进行优先级排序,并根据各个发送队列的丢包数预设丢包条件及相应的处理方式;
所述音视频传输控制模块用于根据控制处理模块发送的处理方式,对各发送队列进行处理,包括:若某一优先级发送队列达到丢包条件,则丢弃其后的优先级发送队列视频流,并主动降低音频流或视频流的传输流量;
其中,所述丢包检测模块还用于,根据TCP或UDP的Socket发送结果修改所述各个发送队列对应的丢包数:发送成功,则所述各发送队列对应的丢包数清零;发送失败,则所述各发送队列对应的丢包数累加;当各队列的丢包数达到第二丢包阈值、或达到第一丢包阈值且丢包持续时间达到时间阈值,则判定为达到丢包条件;
所述音视频传输控制模块若某一优先级发送队列达到丢包条件,则丢弃其后的优先级发送队列视频流,并主动降低音频流或视频流的传输流量,具体为:
当所述第一优先级发送队列达到所述的丢包条件,采取直接丢弃第二及第三优先级发送队列,并实时改变音频编码格式的方式,采用更高压缩比的音频编码格式,主动降低音频流的传输流量;
当所述第二优先级发送队列达到所述的丢包条件,采取直接丢弃所述第三优先级发送队列,实时递降视频编码质量的方式,主动降低视频流的传输流量;
当所述第三优先级发送队列达到所述的丢包条件,采取三级实时阶梯式递降视频码率的方式,主动降低视频流的传输流量;
所述音视频传输控制模块当所述第一优先级发送队列达到所述的丢包条件,采取直接丢弃第二及第三优先级发送队列,并实时改变音频编码格式的方式,采用更高压缩比的音频编码格式,主动降低音频流的传输流量,具体为:
当所述第一优先级发送队列达到所述的丢包条件,直接丢弃所述第二及第三优先级发送队列的所有数据包,不再发送所述第二及第三优先级发送队列数据;同时实施第一次改变音频编码类型,首先获取编码库的预设音频编码类型,然后获取音视频模块支持的所有音频编码类型,以所述预设音频编码类型的更高压缩比的音频编码类型作为新的编码类型设置给编码库,设置成功后,编码库以比所述预设的音频编码类型的更高压缩比的音频编码类型输出音频流;
再次达到所述任一丢包条件,如果所述更高压缩比的音频编码类型还未达到所述音视频模块支持的最高压缩比的音频编码类型,则继续实施更改为更高一级压缩比的音频编码类型;如果所述更高压缩比的音频编码类型已经是所述音视频模块支持的最高压缩比的音频编码类型,则保持以所述最高压缩比的音频编码类型输出音频流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610242149.XA CN105847182B (zh) | 2016-04-18 | 2016-04-18 | 一种音视频系统中音频优先传输方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610242149.XA CN105847182B (zh) | 2016-04-18 | 2016-04-18 | 一种音视频系统中音频优先传输方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105847182A CN105847182A (zh) | 2016-08-10 |
CN105847182B true CN105847182B (zh) | 2019-11-15 |
Family
ID=56588626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610242149.XA Active CN105847182B (zh) | 2016-04-18 | 2016-04-18 | 一种音视频系统中音频优先传输方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105847182B (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106791575B (zh) * | 2016-12-22 | 2019-11-15 | 上海寰视网络科技有限公司 | 一种数据发送的控制方法及设备 |
CN106713175B (zh) * | 2017-02-07 | 2020-09-18 | 北京百卓网络技术有限公司 | Sdtp客户端及其数据发送方法与sdtp数据系统 |
CN106954101B (zh) * | 2017-04-25 | 2020-04-28 | 华南理工大学 | 一种低延迟实时视频流媒体无线传输的丢帧控制方法 |
CN107295395A (zh) * | 2017-06-27 | 2017-10-24 | 武汉斗鱼网络科技有限公司 | 码率自适应调节方法、装置及电子设备 |
CN107222781B (zh) * | 2017-06-30 | 2020-05-01 | 深圳市九洲电器有限公司 | 智能网关动态转换码率的方法及系统 |
CN107634915A (zh) * | 2017-08-25 | 2018-01-26 | 中国科学院计算机网络信息中心 | 数据传输方法、装置及储存介质 |
CN108307194A (zh) * | 2018-01-03 | 2018-07-20 | 西安万像电子科技有限公司 | 图像编码的传输控制方法及装置 |
CN108449600B (zh) * | 2018-03-16 | 2020-06-02 | 镇江视程影视有限公司 | 电影数据的传输方法及装置 |
CN108777665A (zh) * | 2018-06-06 | 2018-11-09 | 科大讯飞股份有限公司 | 一种数据传输方法、设备及系统 |
CN111385648A (zh) * | 2018-12-28 | 2020-07-07 | 成都鼎桥通信技术有限公司 | 一种视频帧率的调控方法和系统 |
CN110213549A (zh) * | 2019-07-03 | 2019-09-06 | 成都汇纳智能科技有限公司 | 一种基于libRTMP的推流方法及系统 |
CN111482973A (zh) * | 2020-03-31 | 2020-08-04 | 岭东核电有限公司 | 核电站用机器人的健康管理方法、装置和机器人 |
CN111586443B (zh) * | 2020-05-21 | 2022-06-10 | 上海大因多媒体技术有限公司 | 一种基于h.265协议分布式系统的信息输出方法及系统 |
CN112637546B (zh) * | 2021-03-11 | 2021-06-15 | 浙江华创视讯科技有限公司 | 对接视频监控平台的视频会议系统、网关及会议控制方法 |
CN113452946A (zh) * | 2021-06-28 | 2021-09-28 | 深圳七号家园信息技术有限公司 | 一种视频电话的音频和视频传输方法及系统 |
CN113490020A (zh) * | 2021-06-30 | 2021-10-08 | 众立智能科技(深圳)有限公司 | 网络传输音视频流媒体数据优先方法及系统 |
CN114301884B (zh) * | 2021-08-27 | 2023-12-05 | 腾讯科技(深圳)有限公司 | 音频数据的发送方法、接收方法、装置、终端及存储介质 |
CN115914653A (zh) * | 2021-09-30 | 2023-04-04 | 中兴通讯股份有限公司 | 视音频数据的发送方法、显示方法、发送端及接收端 |
CN116233024A (zh) * | 2022-12-22 | 2023-06-06 | 中国联合网络通信集团有限公司 | 数据包确定方法、装置及存储介质 |
CN116827924B (zh) * | 2023-08-31 | 2023-11-17 | 腾讯科技(深圳)有限公司 | 一种数据调度方法、装置、设备以及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1468001A (zh) * | 2002-06-27 | 2004-01-14 | 上海汉唐科技有限公司 | 基于因特网的媒体流自适应传输方法 |
CN101030938A (zh) * | 2007-02-05 | 2007-09-05 | 北京大学 | QoS自适应的P2P流媒体数据组织与传输系统及方法 |
CN101047476A (zh) * | 2007-03-19 | 2007-10-03 | 华为技术有限公司 | 一种选择调制方式的方法和装置 |
CN102665142A (zh) * | 2012-04-05 | 2012-09-12 | 浙江大学 | 一种终端均衡速率的无线音视频并行传输方法 |
CN103338375A (zh) * | 2013-06-27 | 2013-10-02 | 公安部第一研究所 | 一种宽带集群系统中基于视频数据重要性的动态码率分配方法 |
CN103442391A (zh) * | 2013-09-12 | 2013-12-11 | 华为终端有限公司 | 一种数据传输的方法及用户终端、系统 |
-
2016
- 2016-04-18 CN CN201610242149.XA patent/CN105847182B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1468001A (zh) * | 2002-06-27 | 2004-01-14 | 上海汉唐科技有限公司 | 基于因特网的媒体流自适应传输方法 |
CN101030938A (zh) * | 2007-02-05 | 2007-09-05 | 北京大学 | QoS自适应的P2P流媒体数据组织与传输系统及方法 |
CN101047476A (zh) * | 2007-03-19 | 2007-10-03 | 华为技术有限公司 | 一种选择调制方式的方法和装置 |
CN102665142A (zh) * | 2012-04-05 | 2012-09-12 | 浙江大学 | 一种终端均衡速率的无线音视频并行传输方法 |
CN103338375A (zh) * | 2013-06-27 | 2013-10-02 | 公安部第一研究所 | 一种宽带集群系统中基于视频数据重要性的动态码率分配方法 |
CN103442391A (zh) * | 2013-09-12 | 2013-12-11 | 华为终端有限公司 | 一种数据传输的方法及用户终端、系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105847182A (zh) | 2016-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105847182B (zh) | 一种音视频系统中音频优先传输方法及其系统 | |
CN101488967B (zh) | 一种视频传输方法、嵌入式监控终端及监控平台服务器 | |
US8879577B2 (en) | Monitoring system, device, and method | |
CN104519325B (zh) | 一种基于4g网络的无线视频监控系统自适应保障方法 | |
CN110248256B (zh) | 数据的处理方法及装置、存储介质和电子装置 | |
CN101778426B (zh) | 移动无线网络中视频数据流传输的方法及设备 | |
CN104735470A (zh) | 一种流媒体数据传输方法及装置 | |
CN201369791Y (zh) | 移动多媒体安防监控系统 | |
CN105308916A (zh) | 多媒体传输网络中用于控制媒体传递的方法和装置 | |
CN102325251B (zh) | 视频监控、回放业务实现方法及设备 | |
JP2006333254A (ja) | 動画像リアルタイム通信端末、動画像リアルタイム通信端末の制御方法及び動画像リアルタイム通信端末の制御プログラム | |
CN102377730A (zh) | 音视频信号的处理方法及移动终端 | |
CN102457707A (zh) | 安防监控视频数据传输、储存和点播方法 | |
CN107306192B (zh) | 一种业务数据传输方法、装置和系统 | |
WO2013189428A2 (zh) | 基于分层编码的抗丢包实时通信方法、系统及相关设备 | |
CN115086779A (zh) | 视频传输系统 | |
CN102547243A (zh) | 基于3g网络的音视频远程监控方法及系统 | |
CN104980819A (zh) | 一种视频传输方法及装置 | |
CN103138874A (zh) | 一种编解码动态协商方法及设备 | |
CN105812710A (zh) | 视频通话过程中优化图像质量的方法及系统 | |
CN101600097A (zh) | 移动多媒体安防监控的方法和系统 | |
CN103036808B (zh) | 一种去除网络抖动的方法及系统 | |
KR101494537B1 (ko) | 영상 감시 시스템에서 모니터링 채널 결정 방법 및 장치 | |
CN107995498A (zh) | 一种终端的直播视频流切换方法和装置 | |
CN115665353A (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 |