CN111245769B - 一种音视频传输方法、装置和存储介质 - Google Patents
一种音视频传输方法、装置和存储介质 Download PDFInfo
- Publication number
- CN111245769B CN111245769B CN201811432060.5A CN201811432060A CN111245769B CN 111245769 B CN111245769 B CN 111245769B CN 201811432060 A CN201811432060 A CN 201811432060A CN 111245769 B CN111245769 B CN 111245769B
- Authority
- CN
- China
- Prior art keywords
- audio
- gear
- video
- transmission
- time delay
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
-
- 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
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)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种音视频传输方法、装置和存储介质,其中该方法包括:向目标终端发送时延探测请求,获取第一传输时延;根据第一传输时延,确定音视频的传输质量档位,根据传输质量档位配置待传音视频,并传输;根据预设周期向目标终端发送时延轮询请求,获取时延组;根据时延组,调整音视频的传输质量档位,根据调整后的传输质量档位配置待传音视频,并传输。其中,由于网络通信质量可以通过传输时延来估计,故利用周期性地与目标终端通信而计算出的当前时延来控制传输质量档位的升降,从而调整音视频的传输质量,达到根据网络实时状态控制音视频的传输质量的目的,改善了音视频传输效率。
Description
技术领域
本发明属于通信领域,尤其涉及一种音视频传输方法、装置和存储介质。
背景技术
监控设备特别是视频音视频类的监控设备是现在的主流,市面上推出了许多能够捕捉高音质、高画质的监控设备,来满足人们日益看重的安防需求。
但是本申请的发明人发现,由于传输过程中数据受到了网络上下行带宽限制和网络拥塞影响,播放的这些高音质、高画质的音视频常常会出现延时以及卡顿等情况,因此存在着音视频传输效率差的情况。
发明内容
本发明的目的在于提供一种音视频传输方法、装置和存储介质,旨在提高音视频传输效率。
为解决上述技术问题,本发明实施例提供以下技术方案:
第一方面,本发明实施例提供一种音视频传输方法,包括:
向目标终端发送时延探测请求,获取第一传输时延;
根据所述第一传输时延,确定所述音视频的传输质量档位,根据所述传输质量档位配置当前待传的音视频,并传输;
根据预设周期向所述目标终端发送时延轮询请求,获取时延组;
根据所述时延组,调整所述音视频的传输质量档位,根据调整后的所述传输质量档位配置当前待传的音视频,并传输。
在一些实施例中,所述时延组包括预设数量的时延,所述根据所述时延组,调整所述音视频的传输质量档位,包括:
若所述时延组中所有的时延均小于预设升档阈值,则执行预设的升档操作;
若所述时延组中所有的时延均大于预设降档阈值,则执行预设的降档操作。
在一些实施例中,所述执行预设的升档操作,之前包括:
根据所述时延组中所有的时延,确定档位上限;
若当前档位未达到所述升档上限,则执行步骤:执行预设的升档操作。
在一些实施例中,若所述时延组中所有的时延均小于预设升档阈值,则执行预设的升档操作,包括:
若所述时延组中所有的时延均小于预设升档阈值,则获取上次调档操作与当前时间的时间间隔;
若所述时间间隔超过第一预设阈值,则执行所述预设的升档操作。
在一些实施例中,所述获取上次调档操作与当前时间的时间间隔,包括:
确定所述上次档位调整操作是否为升档操作;
若上次档位调整操作为升档操作,则获取所述上次档位调整操作与当前时间的时间间隔。
在一些实施例中,所述根据预设周期向所述目标终端发送时延轮询请求,得到时延组,之前包括:
再次向所述目标终端发送时延探测请求,获取第二传输时延;
若所述第二传输时延大于第二预设阈值,则将当前传输质量档位降为预设的最低档位。
在一些实施例中,所述根据所述传输质量档位配置当前待传的音视频,包括:
根据所述传输质量档位确定传输参数,其中,所述传输参数包括帧率、视频码率和/或关键帧周期;
根据所述传输参数,配置当前待传的音视频。
在一些实施例中,所述根据所述传输质量档位配置当前待传的音视频,还包括:
根据预设的分级规则,确定当前档位是否属于低级档位;
若所述传输档位属于预设低级档位,对所述音视频中的音频进行采样,得到音频片段,获取所述音频片段中采样点的幅度值;
若所述音频片段中采样点的幅度值均小于预设幅度阈值,则在所述音频片段中筛选出目标音频,根据所述目标音频配置当前待传的音视频。
第二方面,相应的,本发明实施例还提供一种音视频传输装置,包括:
时延模块,用于向目标终端发送时延探测请求,获取第一传输时延;
确定模块,用于根据所述第一传输时延,确定所述音视频的传输质量档位,根据所述传输质量档位配置当前待传的音视频,并传输;
时延组模块,用于根据预设周期向所述目标终端发送时延轮询请求,获取时延组;
调整模块,用于根据所述时延组,调整所述音视频的传输质量档位,根据调整后的所述传输质量档位配置当前待传的音视频,并传输。
第三方面,此外,本发明实施例还提供一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本发明实施例所提供的任一种音视频传输方法中的步骤。
在本发明中,通过与目标终端通信来获得传输时延,从而估计网络状态。然后根据当前的网络状态,对音视频的传输质量档位做出初始化设置,然后开始传输音视频。之后,周期性地与目标终端通信获取时延组来监测当前网络状态,进而不断地根据当前网络状态对传输质量档位进行调档操作,使得音视频的传输质量不断自动适应当前的网络状态,从而使得音视频在波动的网络状态下平滑传输,缓解传输压力,能有效地保证音视频的质量和实时性。其中,调档操作会调整音视频的传输参数,有效地减少传输数据量,缓解传输压力,从而减少了拥塞网络状态下丢帧、卡顿以及延时的情况,改善了音视频传输质量,解决了音视频传输数据质量差的情况。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的音视频传输方法的主流程示意图;
图2是本发明实施例提供的音视频传输方法的另一流程示意图;
图3是本发明实施例提供的获取传输时延流程示意图;
图4是本发明实施例提供的音视频传输应用场景示意图;
图5是本发明实施例提供的筛选目标音频示意图;
图6是本发明实施例提供的音视频传输装置的结构示意图;
图7是本发明实施例提供的网络设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种音视频传输方法、装置和存储介质,其中该音视频传输装置具体可以集成在网络设备如终端和服务器等设备中,例如网络服务器、移动终端、个人电脑(PC,Personl Computer)等等。
图4为本发明实施例提供的应用场景示意图,如图所示,该场景示意图可以包括目标终端与网络设备。其中,目标终端与网络设备可以通过网络连接。该目标终端可以是某种具有显示功能的终端,例如智能手机、网络电视、个人电脑等等。
当网络设备开始发送音视频之前,网络设备向目标终端发送时延探测请求,目标终端接收到该时延探测请求后,随即返回第一传输时延给网络设备;网络设备根据目标终端返回的第一传输时延,确定音视频的传输质量档位,再根据传输质量档位配置待传音视频,将配置后的待传音视频传输给目标设备;然后,网络设备根据预设周期向目标终端发送时延轮询请求,目标终端接收到该时延轮询请求后,随即返回时延组给网络设备;网络设备根据时延组,调整音视频的传输质量档位,再根据调整后的传输质量档位配置待传音视频,再将配置后的待传音视频传输给目标设备。
由此,在该方案通中,网络通信质量可以通过传输时延来估计,故本申请利用网络设备每次与目标终端通信而计算出的时延来调整传输质量档位,从而调整待传输音视频的传输质量,使其适应网络通信质量,从而在任何网络通信质量下都能自适应达到最优的传输效果。由此,通过监测网络质量来实时地控制音视频的传输质量,保证了音视频传输流畅、即时,提高了音视频传输效率。
以下分别进行详细说明,需说明的是,以下实施例的顺序不作为对实施例优选顺序的限定。
在本实施例中,将从音视频传输装置的角度进行描述,该音视频传输的装置具体可以集成在网络设备如个人电脑、服务器以及移动终端等设备中。
本发明实施例提供一种音视频传输方法,包括:向目标终端发送时延探测请求,获取第一传输时延。根据第一传输时延,确定音视频的传输质量档位,根据传输质量档位配置当前待传的音视频,并传输。然后,根据预设周期向目标终端发送时延轮询请求,获取时延组。再根据时延组,调整音视频的传输质量档位,根据调整后的传输质量档位配置当前待传的音视频,并传输。
图1为本申请实施例提供的主流程示意图,如图所示,该音视频传输方法的具体流程可以如下:
101、向目标终端发送时延探测请求,获取第一传输时延。
时延是指一个报文或分组从网络的一端传输到另一个端所需要的时间。通常来讲,传输时延和网络状态紧密相关,网络状态差时,传输时延也往往较大。故本申请使用传输时延来估计网络状态。以下具体说明如何获取传输时延:
图3是本实施例提供的获取传输时延的流程示意图,如图3所示,首先,音视频传输装置向目标终端发送报文1,即时延探测请求,并记录发送报文1时的发送时间戳t1,用来通知目标终端返回报文2。报文1的报文格式可以类似下表(表1)。其中,时间戳t1可以由一串数字组成,其单位可以是秒,也可以是毫秒。
表1
目标终端接收到报文1后,记录接收到报文1时对应的时间戳,记为t2,然后再向目标终端发送报文2,并记录发送报文2时的发送时间戳t3,其中,报文2的报文格式可以类似下表(表2),如表所示,时间戳t1、t2、t3均可以指一串数字,其单位可以是秒,也可以是毫秒。
表2
目标终端接收到报文2后,将记录接收到报文2时对应的时间戳,记为t4,根据t4和报文2中关于发射时间戳以及接收时间戳的内容,如下所示计算传第一传输时延⊿t1:
⊿t1=1/2[(t2-t1)+(t4-t3)]
102、根据第一传输时延,确定音视频的传输质量档位,根据传输质量档位配置当前待传的音视频,并传输。
为了在当前的网络状态下传输音视频,音视频传输装置可以根据匹配列表来确定第一传输时延所属的时延范围,再从中多个档位里匹配相应的传输质量档位。
传输质量档位指传输质量具有级变化的次序,例如,匹配列表如下表(表3)所示,匹配列表中预设有多个时延范围,每个时延范围对应一个传输质量档位。其中,时延范围中的a、b、c均可以指一串从小到大排列的数字,其单位可以是毫秒。传输质量档位中的A、B、C均可以由阿拉伯数字、字母以及特殊字符等形式来表征。
时延范围 | 0~a | ... | b~c | ... | >c |
传输质量档位 | A | ... | B | ... | C |
表3
此匹配列表可以是预先存储在音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取;还可以是由用户录入本地内存。
确定传输质量档位后,音视频传输装置根据该传输质量档位配置当前即将传输的待传音视频,然后传输该配置好的待传音视频。该配置待传音视频的方式有多种,以下可以举出两种实施例来解释如何配置待传音视频,例如:
在一些实施例中,通过降低待传音视频中的视频数据大小来保证在差网络状态下传输音视频数据,故步骤“根据传输质量档位配置当前待传的音视频”可以包括:
(1)根据传输质量档位确定传输参数;
其中,传输参数包括帧率、视频码率和/或关键帧周期。以下详细解释这些传输参数:
帧率:帧率是用于测量显示帧数的量度。测量单位为“每秒显示帧数”(Frame perSecond,FPS)或“赫兹”,用于描述影片、电子绘图或游戏每秒播放多少帧。一般来说,帧率越高,画面观感越流畅,传送的数据越多,占用宽带越大。
码率:码率又称为比特率(Binary system rate,Bit rate),是单位时间内传输送或处理的比特(Binary system,Bit)的数量,单位为bps(Bit Per Second)。一般来说同样分辨率下,码率越大,传送的数据越大,画面质量越清晰,占用的网络带宽也就越大。
关键帧周期:关键帧周期又称为图像群组(Group of pictures,GOP),图5是关键帧周期的示意图,如图5所示,关键帧周期总是以I帧为起始点,后面跟随有若干P帧,其它的则是B帧,下一个I帧即为新的图像群组的起始点。关键帧周期是指I帧和I帧之间的间隔帧数量,即一组I帧和I帧之间的P帧数量,其中:
I帧(节点编码图像,intra coded picture)参考帧,相当于一个固定影像,且独立于其它类型的帧。每个关键帧周期由此类型的帧开始。
P帧(预测编码图像,predictive coded picture)包含来自先前的I帧或P帧的差异信息。
B帧(前后预测编码图像,bidirectionally predictive coded pictures)包含来自先前和/或之后的I帧或P帧的差异信息。
增加关键帧个数可改善质量,但是同时增加带宽和网络负载,关键帧周期越小,对运动图像处理更好,相应的,视频码率也更高。
例如,如下表(表4)所示,该匹配列表类似步骤102中表3所示的匹配列表,它预先设有多个时延范围,每个时延范围对应一个传输质量档位,每个传输质量档位对应一个或多个传输参数。其中,时延范围中的a、b、c可以是一串从小到大排列的数字,其单位可以是秒,也可以是毫秒。帧率中的a1、b1、c1均可以指一串数字,其单位可以是赫兹。同样的,视频码率中的a2、b2、c2也均可以指一串数字,其单位可以是bps(bits per second)。关键帧周期中的a3、b3、c3均可以指自然数。
表4
此匹配列表可以是预先存储在音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取;还可以是由用户录入本地内存。
由于传输参数的数量不同会产生不同的播放效果,例如,每个传输质量档位都只包括一个帧率、一个视频码率或一个关键帧周期,或每个传输质量档位都包括帧率、视频码率和关键帧周期这三个传输参数中的任意两个。当然,还可以是每个传输质量档位都包括了一个帧率、一个视频码率以及一个关键帧周期,这种同时顾及三种参数的传输质量档位能够在网络状态非常差的情况下起到快速削减音视频传输数据量的效果。
(2)根据传输参数,配置当前待传的音视频。
所述当前待传的音视频指当前等待传输的预设时长的音视频。
根据这些传输参数,配置当前待传的音视频,例如降低音视频的视频码率和关键帧周期。
然后,将调整后的待传音视频传输给目标终端。
在另一些实施例中,在根据传输参数调整待传的音视频的同时、之后或之前,还可以通过减少待传音视频中的音频所携带的信号量来保证在差网络状态下传输音视频数据,故步骤“根据传输质量档位配置待传音视频”还可以包括:
(1)根据预设的分级规则,确定当前档位是否属于低级档位;
如下表(表5)所示,该匹配列表类似步骤102中表3所示的匹配列表,它预先设有多个时延范围,每个时延范围对应一个传输质量档位,预设的分级规则预先规定了每个分级对应一个或多个传输质量档位。其中,分级中的高级档位、中级档位、低级档位可以使用不同的字符串来表示,例如字符串可以由数字、字母和/或符号组成,在此不做要求。
表5
音视频传输装置会根据该匹配列表中预设的分级规则,判断当前档位是否属于低级档位。
此匹配列表可以是预先存储在音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取;还可以是由用户录入本地内存。
(2)若传输档位属于预设低级档位,对音视频中的音频进行采样,得到音频片段,获取音频片段中采样点的幅度值;
采样(sampling)也称取样,是指把时间域或空间域的连续量转化成离散量的过程,在音频领域即指把模拟音频转成数字音频的过程。
采样率(也称为采样速度或者采样频率)则定义了每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(Hz)来表示。采样率是指将模拟信号转换成数字信号时的采样频率,也就是单位时间内采样多少点。
当音视频传输装置判断出当前档位属于低级档位,即当前档位符合上表(表5)所示C~D区间时,对音视频中的音频进行采样,得到采样周期长度的音频片段。其中,采样周期是采样率的倒数,采样率可以预先由技术人员配置在本地文件里,也可以由音视频传输装置通过网络与网络服务器通信获得,再此不做限定。
该长度为采样周期的音频片段中,有多个采样点,获取这些采样点的幅度值后与预设幅度阈值进行对比。其中,对比的方式可以是对这些采样点的幅度进行大小排序,将最大的采样点幅度与预设幅度阈值对比;也可以是将所有的采样点幅度一一与预设幅度阈值对比。
(3)若音频片段中采样点的幅度值均小于预设幅度阈值,则在音频片段中筛选出目标音频,根据目标音频配置当前待传的音视频。
由于采样点的幅度能在一定程度上体现音频信号中声音的大小,丢弃声音较小的音频可以减轻过载网络的负载,保证音视频传输的流畅。例如,当音频幅度过小时,此时的音频可能代表一段含有微量噪音的无人声片段,丢弃该片段可以降低此时传输的数据量。
图5是筛选目标音频的示意图,如图所示,若该音频片段的所有采样点的幅度值均小于预设幅度阈值时,即该音频片段中采样点的最大幅度值小于预设幅度阈值时,在此音频片段中根据预设的筛选规则筛选出目标音频。
其中,预设幅度阈值可以是预先存储在音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取;还可以是由用户录入本地内存。
其中,根据预设的筛选规则筛选出目标音频的目的是为了尽量筛选并保存音频中有意义的信息,避免丢弃整个音频片段所导致的信息误删。
该筛选规则可以是预先由技术人员制定并输入到音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取。该筛选规则可以是筛选出音频片段的前后各1/3部分,也可以是筛选出音频片段的后1/2部分,筛选出的片段之间填以空白信号。可以理解地,具体筛选规则多样,每种筛选规则所产生的效果也有所不同,可根据技术人员的理解制定不同复杂程度的筛选规则,故在此不做限定。
最后,将待传音视频被采样的音频片段替换为上述得到的目标音频。
103、根据预设周期向目标终端发送时延轮询请求,获取时延组。
以上的步骤完成了对音视频传输质量的初始化,由于网络状态时常波动,以下将详细解释如何在波动的网络状态下调整音视频的传输质量:
类似于步骤101中获取第一传输时延的方法,在本步骤中,首先,音视频传输装置向目标终端发送报文3,即时延轮询请求,并记录发送报文3时的发送时间戳T1,用来通知目标终端返回报文4。报文3的报文格式可以类似下表(表6),如表所示,时间戳T1可以指一串数字,其单位可以是毫秒。
表6
目标终端接收到报文3后,记录接收到报文3时对应的时间戳,记为T2,然后再向目标终端发送报文4,并记录发送报文4时的发送时间戳T3,其中,报文4的报文格式可以类似下表(表7),如表所示,时间戳T1、T2、T3均可以指一串数字,其单位可以是毫秒。
表7
目标终端接收到报文4后,将记录接收到报文4时对应的时间戳,记为T4,根据T4和报文4中关于发射时间戳以及接收时间戳的内容,如下所示计算传时延组中的首次时延⊿T1:
⊿T1=1/2[(t2-t1)+(t4-t3)]
再次地,重复上述获取首次时延⊿T1的方法可以获取时延⊿T2、⊿T3等等多个时延,该重复次数可以由技术人员预先设定并存储在本地内存中,在本实施例中,将该重复次数设为N,则获取地时延分别是⊿T1、⊿T2...⊿TN,将这些时延序列记为时延组。其中,N为自然数。
重复时间间隔为预设周期,用于周期性的通过计算时延来检测网络状态。该预设周期也可以由技术人员预先设定并存储在本地内存中。
在一些实施例中,为了防止网络状态极差导致的发出时延轮询请求后长时间未接收目标终端返回的报文,调整传输质量档位不够及时,故在步骤“根据预设周期向目标终端发送时延轮询请求,得到时延组”之前可以包括:
(1)再次向目标终端发送时延探测请求,获取第二传输时延;
类似于步骤101,再次向目标终端发送时延探测请求,获取的时延被记作第二传输时延。
(2)若第二传输时延大于第二预设阈值,则将当前传输质量档位降为预设的最低档位。
为了快速降低糟糕网络状态下的网络负荷,若第二传输时延大于第二预设阈值,则将当前传输质量档位降为预设的最低档位。其中,最低档位是指传输质量档位中最低一档,其相应的时延范围则是最大时延,最低档位可以预先由技术人员设定并保存在本地内存中。
其中,所述第二预设阈值可以预先存储在音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取;还可以是由用户录入本地内存。
104、根据时延组,调整音视频的传输质量档位,根据传输质量档位配置当前待传的音视频,并传输。
若时延组中所有的时延均小于预设升档阈值,则执行预设的升档操作。该升档操作可以升1档、2档以及3档等等。若当前档位已经是最高档,无法再上升1档,则忽略此次的升档操作。
若时延组中所有的时延均大于预设降档阈值,则执行预设的降档操作。该降档操作可以是降1档、2档以及3档等等,也可以是直接降到最低档,在此不做要求。若当前档位已经是最低档,无法再下降1档,则忽略此次的降档操作。
以上所述的升几档和降几档可以由技术人员决定并录入本地内存。其中,预设升档阈值与预设降档阈值可以预先存储在音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取;还可以是由用户录入本地内存。
由于,步骤“根据传输质量档位配置当前待传的音视频,并传输”已在步骤102中有详细描述,故在此不做赘述。
由上可知,本实施例通过发起时延探测,与目标终端通信来获得传输时延,从而估计网络状态。然后根据当前的网络状态,对音视频的传输质量档位做出初始化设置,然后开始传输音视频。之后,周期性地与目标终端通信获取时延组来监测当前网络状态,进而不断地根据当前网络状态对传输质量档位进行调档操作,使得音视频的传输质量不断自动适应当前的网络状态,使得音视频在波动的网络状态下平滑传输,缓解传输压力,能有效地保证音视频的质量和实时性。其中,调档操作会调整音视频的传输参数,有效地减少传输数据量,缓解传输压力,从而减少了拥塞网络状态下丢帧、卡顿以及延时的情况,改善了音视频传输质量,解决了音视频传输效率差差的情况。
根据前面实施例所描述的方法,以下将举例作进一步详细说明。
例如,参照图2,在本实施例中,将以该音视频传输的装置具体可以集成在网络设备如个人电脑、服务器以及移动终端等设备中来进行说明。
本发明实施例提供一种音视频传输方法,包括:向目标终端发送时延探测请求,获取第一传输时延。根据第一传输时延,确定音视频的传输质量档位,根据传输质量档位配置待传音视频,并传输。然后,根据预设周期向目标终端发送时延轮询请求,获取时延组。若时延组中所有的时延均小于预设升档阈值,则执行预设的升档操作。若时延组中所有的时延均大于预设降档阈值,则执行预设的降档操作。再根据调整后的传输质量档位配置待传音视频,并传输。
图2为本申请实施例提供的音视频传输方法的另一流程示意图,如图所示,该音视频传输方法的具体流程可以如下:
201、向目标终端发送时延探测请求,获取第一传输时延。
具体实施方式可参照上述音视频传输方法实施例101中的描述,在此不做赘述。
202、根据所述第一传输时延,确定所述音视频的传输质量档位,根据所述传输质量档位配置当前待传的音视频,并传输。
具体实施方式可参照上述音视频传输方法实施例102中的描述,在此不做赘述。
203、根据预设周期向目标终端发送时延轮询请求,获取时延组。
具体实施方式可参照上述音视频传输方法实施例103中的描述,在此不做赘述。
204、若时延组中所有的时延均小于预设升档阈值,则执行预设的升档操作。
若时延组中所有的时延均小于预设升档阈值,则执行预设的升档操作。该升档操作可以升1档、2档以及3档等等,以下还提供一些详细的关于升档操作的实施例:
例如,在一些实施例中,为了防止瞬间大幅度提升音视频传输质量导致的网络再次拥塞,故需缓慢的升档操作,则步骤“执行预设的升档操作”可以包括:
(1)获取上次调档操作和当前时间的时间间隔;
通过上次的调档操作和当前时间的时间间隔,可以判断当前的升档操作距离上次调档过了多长时间。其中,调档位操作可以包括升档操作和降档操作。
下表(表8)是调档记录表示意图,如图所示,每次进行调档操作时,将此刻的档位以及此刻的时间录入该表。该表中的档位A、B、C可以指自然数,时间x1、x2、x3、x4可以指一串数字,其单位为毫秒。
操作序号 | 1 | 2 | 3 | 4 | ... |
档位 | C | B | A | B | ... |
时间 | x<sub>1</sub> | x<sub>2</sub> | x<sub>3</sub> | x<sub>4</sub> | ... |
表8
然后,与上次记录的调档操作时间作差计算时间间隔。以下做出详细解释:
在一些实施例中,步骤“获取上次调档操作到当前时间的时间间隔”可以包括:
(1.1)确定上次档位调整操作是否为升档操作;
从调档记录表中读取上次调档操作的档位,并于当前档位进行对比,根据对比结果确定上次档位调整操作是否为升档操作。其中,对比方法可以是作差。
(1.2)若上次档位调整操作为升档操作,则获取上次档位调整操作到当前时间的时间间隔。
若上次档位调整操作为升档操作,则从调档记录表中读取上次调档操作的时间,将上次调档操作的时间与当前时间作差,取得时间间隔。
(2)若时间间隔超过第一预设阈值,则执行预设的升档操作。
若时间间隔超过第一预设阈值,则该升档操作可以则类似上述的升档操作,如升1档、2档以及3档等等。其中,所述第一预设阈值可以预先存储在音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取;还可以是由用户录入本地内存。
另外,在一些实施例中,由于网络状态较差且波动太过于频繁,为了防止网络波动带来的不停升降传输质量档位带来的卡顿,以下提出升档上限来制约频繁升档,故步骤“执行预设的升档操作”之前可以包括:根据所述时延组中所有的时延,确定档位上限;若当前档位未达到所述升档上限,则执行步骤:执行预设的升档操作。
其中,步骤“据所述时延组中所有的时延,确定档位上限”有多种方式可以实现,以下提供两种方法作为示例:
(2.1)在一些实施例中,可以根据时延组中所有的时延,计算平均时延,根据平均时延确定档位上限。
已知时延组中所有的时延序列为⊿T1、⊿T2...⊿TN,其中N为自然数。计算平均时延的公式如下:
u=(⊿T1+⊿T2+...+⊿TN)/N
根据预设的升档规则和平均时延,确定档位上限。升档规则可以如下表(表9)所示,其中平均时延范围中的u1、u2、u3、u4可以指一串从小到大排列的数字,其单位可以是毫秒。档位上限中的A、B、C、D可以指自然数。
平均时延范围 | 0~u<sub>1</sub> | u<sub>1</sub>~u<sub>2</sub> | ... | u<sub>3</sub>~u<sub>4</sub> | >u<sub>4</sub> |
档位上限 | A | B | ... | C | D |
表9
根据前文求出的平均时延,通过升档规则匹配所属的档位上限。
该升档规则可以预先由技术人员配置在本地文件里,也可以由音视频传输装置通过网络与网络服务器通信获得,再此不做限定。
(2.2)在另一些实施例中,可以根据时延组中所有的时延,计算时延方差,根据时延方差确定档位上限;
已知时延组中所有的时延序列为⊿T1、⊿T2...⊿TN,其中N为自然数。计算时延方差的公式如下:
a2=[(⊿T1-u)2+(⊿T2-u)2+...+(⊿TN-u)2]/N
其中,u是平均时延,具体计算方式可参照上文。
根据预设的升档规则和时延方差,确定档位上限。升档规则可以如下表(表10)所示,其中时延方差中的a1、a2、a、a4可以指一串从小到大排列的数字。
平均时延范围 | 0~a<sub>1</sub> | a<sub>1</sub>~a<sub>2</sub> | ... | a<sub>3</sub>~a<sub>4</sub> | >a<sub>4</sub> |
档位上限 | A | B | ... | C | D |
表10
根据前文求出的时延方差,通过升档规则匹配所属的档位上限。
以上通过两个示例详细解释了如何根据时延组确定档位上限。然后,将当前档位与升档上限对比,若当前档位未达到升档上限,则执行预设的升档操作。若当前档位达到升档上限,则取消执行步骤:执行预设的升档操作。
205、若时延组中所有的时延均大于预设降档阈值,则执行预设的降档操作。
若时延组中所有的时延均大于预设降档阈值,则执行预设的降档操作。该降档操作可以是降1档、2档以及3档等等,也可以是直接降到最低档,在此不做要求。降几档可以由技术人员决定并录入本地内存。若当前档位已经是最低档,无法再下降1档,则忽略此次的降档操作。其中,预设降档阈值可以预先存储在音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取;还可以是由用户录入本地内存。
206、根据调整后的传输质量档位配置当前待传的音视频,并传输。
步骤203已求得当前的网络状态,故需要及时调整音视频的传输质量档位,并根据调整后的传输质量档位配置待传音视频,并传输。其中,步骤“根据调整后的传输质量档位配置待传音视频,并传输”已在前文实施例中有详细描述,故在此不做赘述。
由上可知,本实施例通过发起时延探测,与目标终端通信来获得传输时延,从而估计网络状态。然后根据当前的网络状态,对音视频的传输质量档位做出初始化设置,然后开始传输音视频。之后,周期性地与目标终端通信来监测当前网络状态,使得音视频在网络状态差的情况下进行预设的降档操作,从而减少传输数据,缓解传输压力;音视频在网络状态好的情况下进行预设的升档操作,从而使得音视频数据传输量平稳上升,保证了音视频传输的稳定性,有效地保证音视频的质量和实时性。调档操作调整了音视频的传输参数,能够有效地实时调整传输数据量,缓解传输压力,从而减少了拥塞网络状态下丢帧、卡顿以及延时的情况,改善了音视频传输质量,解决了音视频传输效率差差的情况。
根据前面实施例所描述的方法,本实施例将提供一种具体的传输音视频的应用场景,本实施例以该音视频传输的装置具体集成在服务器中进行说明。
在本实施例中,用户的智能手机将作为目标终端,服务器向智能手机发送时延探测请求,获取智能手机返回的第一传输时延。服务器根据第一传输时延,确定音视频的传输质量档位,根据传输质量档位配置待传音视频,并传输给智能手机。然后,服务器根据预设周期向智能手机发送时延轮询请求,获取智能手机返回的时延组。服务器再根据时延组,调整音视频的传输质量档位,根据调整后的传输质量档位配置待传音视频,并传输给智能手机。
(一)服务器向智能手机发送时延探测请求,获取第一传输时延。
首先,服务器向智能手机发送报文1,即时延探测请求,并记录发送报文1时的发送时间戳t1,用来通知智能手机返回报文2。
智能手机接收到报文1后,记录接收到报文1时对应的时间戳,记为t2,然后再向智能手机发送报文2,并记录发送报文2时的发送时间戳t3。
智能手机接收到报文2后,将记录接收到报文2时对应的时间戳,记为t4,根据t4和报文2中关于发射时间戳以及接收时间戳的内容,计算传第一传输时延⊿t1。
(二)根据第一传输时延,确定音视频的传输质量档位,根据传输质量档位配置待传音视频,并传输。
为了在当前的网络状态下传输音视频,服务器可以根据匹配列表来确定第一传输时延所属的时延范围,再从中多个档位里匹配相应的传输质量档位。
下表(表11)所示,是本实施例提供的传输质量档位匹配列表,该匹配列表中预设有多个时延范围,每个时延范围对应一个传输质量档位。每个传输质量档位对应一套传输参数。而分级规则将时延范围0~400分为高级档位,将时延范围400~1000分为中级档位,将时延范围1000以上的范围分为低级档位。该匹配列表由技术人员预先写入并存储在服务器的本地内存里。
表11
确定传输质量档位后,服务器再根据该列表确定传输参数,将音视频中的视频设置此套传输参数,记为待传音视频。然后,根据预设的分级规则,判断当前档位是否属于低级档位。
当传输档位属于预设低级档位时,则对音视频中的音频进行采样频率为44.1千赫兹(kilohertz,kHZ)的采样,得到音频片段,获取音频片段中采样点的幅度值,并将其与预设幅度阈值进行对比。该预设幅度阈值在本实施例中为30分贝(decibel,dB)。
当音频片段中采样点的幅度值均小于30分贝时,则在音频片段中筛选出音频片段的前1/3段与后1/3段,记为目标音频。然后,将音视频中即将传输的一个采样周期的音频替换为上述得到的目标音频。其中,一个采样周期是指采样频率的倒数,单位是毫秒。
从表11中可见的是,本实施例中时延的程度不同,则选择不同档位参数。其中,时延越严重,视频的码率和关键帧周期呈线性降低,可以使得所传输的音视频质量平滑过渡,而只有网络延迟非常大时才会降低帧率,故一般不会出现卡顿、丢帧的情况。在网络状态非常糟糕的情况下,同时降低音视频中视频的帧率、视频码率以及关键帧周期,并且只保留音视频中音频的有效信息部分,能快速削减传输的数据量,缓解网络压力,防止数据传输过多导致的网络二次拥塞。
(三)根据预设周期向智能手机发送时延轮询请求,获取时延组。
为了防止网络状态极差导致的发出时延轮询请求后长时间未接收智能手机返回的报文,调整传输质量档位不够及时,故服务器再次向智能手机发送时延探测请求,获取第二传输时延,若第二传输时延大于2000毫秒,则将当前传输质量档位降为预设的最低档位,即档位1。
其后,服务器向智能手机发送报文3,即时延轮询请求,并记录发送报文3时的发送时间戳T1,用来通知智能手机返回报文4。
智能手机接收到报文3后,记录接收到报文3时对应的时间戳,记为T2,然后再向智能手机发送报文4,并记录发送报文4时的发送时间戳T3。
智能手机接收到报文4后,将记录接收到报文4时对应的时间戳,记为T4,根据T4和报文4中关于发射时间戳以及接收时间戳的内容,计算传时延组中的首次时延⊿T1。
再次地,重复上述4次可以获取时延⊿T2、⊿T3、⊿T4、⊿T5,将这些时延序列记为时延组。重复时间间隔为100毫秒,用于周期性的通过计算时延来检测网络状态。
(四)若时延组中所有的时延均小于预设降档阈值,则执行预设的升档操作。
为了防止瞬间大幅度提升音视频传输质量导致的网络再次拥塞,故服务器需进行缓慢的升档操作。
若时延组中所有的时延均小于600毫秒,则执行以下的操作:
(1)获取上次调档操作和当前时间的时间间隔。
从调档记录表中读取上次调档操作的档位,并于当前档位进行对比,根据对比结果确定上次档位调整操作是否为升档操作。
若上次档位调整操作为升档操作,则从调档记录表中读取上次调档操作的时间,将上次调档操作的时间与当前时间作差,取得时间间隔。
(2)若时间间隔超过第一预设阈值,则执行预设的升档操作。
若时间间隔超过5000毫秒,则根据时延组中所有的时延,计算平均时延。然后,根据前文求出的平均时延,通过升档规则匹配所属的档位上限。本实施例中的升档规则如下表(表12)所示。
平均时延范围 | 0~400 | 400~100 | 1000~1500 | 1500~2000 | >2000 |
档位上限 | 7 | 6 | 5 | 4 | 3 |
表12
若当前档位达到升档上限,则不执行升档操作。
若当前档位未达到升档上限,则将当前档位向上提升1档。
(五)若时延组中所有的时延均大于预设降档阈值,则执行预设的降档操作。
若时延组中所有的时延均大于600毫秒,则将当前档位向下降低1档。
(六)根据调整后的传输质量档位配置待传音视频,并传输。
该步骤在前文实施例中有详细描述,故在此不做赘述。
由上可知,本实施例通过发起时延探测,与智能手机通信来获得传输时延,从而估计网络状态。然后根据当前的网络状态,对音视频的传输质量档位做出初始化设置,然后开始传输音视频。之后,周期性地与智能手机通信来监测当前网络状态,使得音视频在网络状态差的情况下进行预设的降档操作,从而减少传输数据,缓解传输压力;音视频在网络状态好的情况下进行预设的升档操作,从而使得音视频数据传输量平稳上升,保证了音视频传输的稳定性,有效地保证音视频的质量和实时性。调档操作调整了音视频的传输质量,能够有效地减少传输数据量,缓解传输压力,从而减少了拥塞网络状态下丢帧、卡顿以及延时的情况,改善了音视频传输质量,解决了音视频传输质量差的情况。
在以下的说明中,本发明的具体实施例将参考由一部或多部装置所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由装置执行,本文所指的装置执行包括了由代表了以一结构化型式中的数据的电子信号的装置处理单元的操作。此操作转换该数据或将其维持在该装置的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该装置的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下这些的多种步骤及操作亦可实施在硬件当中。
本文这些的装置及方法优选的以软件的方式进行实施,当然也可在硬件上进行实施,均在本发明保护范围之内。
为了更好地实施以上方法,本发明实施例还提供一种音视频传输的装置,该音视频传输装置具体可以集成在网络设备,比如终端或服务器等设备中,以下将分别进行详细说明。
例如,如图6所示,该音视频传输装置,包括时延模块601、确定模块602、时延组模块603和调整模块604,如下:
(一)时延模块601:
时延模块601,用于向目标终端发送时延探测请求,获取第一传输时延。
时延是指一个报文或分组从网络的一端传输到另一个端所需要的时间。通常来讲,传输时延和网络状态紧密相关,网络状态差时,传输时延也往往较大。故本申请使用传输时延来估计网络状态。以下具体说明如何获取传输时延:
图3是本实施例提供的获取传输时延的流程示意图,如图3所示,首先,音视频传输装置向目标终端发送报文1,即时延探测请求,并记录发送报文1时的发送时间戳t1,用来通知目标终端返回报文2。
目标终端接收到报文1后,记录接收到报文1时对应的时间戳,记为t2,然后再向目标终端发送报文2,并记录发送报文2时的发送时间戳t3。
目标终端接收到报文2后,将记录接收到报文2时对应的时间戳,记为t4,根据t4和报文2中关于发射时间戳以及接收时间戳的内容,计算传第一传输时延⊿t1。
(二)确定模块602:
确定模块602,用于根据第一传输时延,确定音视频的传输质量档位,根据传输质量档位配置当前待传的音视频,并传输。
为了在当前的网络状态下传输音视频,音视频传输装置可以根据匹配列表来确定第一传输时延所属的时延范围,再从中多个档位里匹配相应的传输质量档位。
确定传输质量档位后,音视频传输装置根据该传输质量档位准备好即将传输的待传音视频,然后传输该配置后的待传音视频。
在一些实施例中,通过降低待传音视频中的视频数据大小来保证在差网络状态下稳定传输音视频,故步骤“根据传输质量档位配置待传音视频”可以包括:
根据传输质量档位确定传输参数。然后,根据这些传输参数,配置当前待传的音视频,例如降低音视频的视频码率和关键帧周期,然后将调整后的音视频记为待传音视频,再将该待传音视频传输给目标终端。
在另一些实施例中,在根据传输参数调整待传的音视频的同时、之后或之前,还可以通过减少待传音视频中的音频所携带的信号量来保证在差网络状态下传输音视频数据,故步骤“根据传输质量档位配置待传音视频”还可以包括:
音视频传输装置根据该匹配列表中预设的分级规则,判断当前档位是否属于低级档位。
若传输档位属于预设低级档位,对音视频中的音频进行采样,得到音频片段,获取音频片段中采样点的幅度值。当音视频传输装置判断出当前档位属于低级档位,则对音视频中的音频进行采样,得到采样周期长度的音频片段。该长度为采样周期的音频片段中,有多个采样点,获取这些采样点的幅度值后与预设幅度阈值进行对比。
若音频片段中采样点的幅度值均小于预设幅度阈值,则在音频片段中筛选出目标音频,根据目标音频配置当前待传的音视频。
由于采样点的幅度能在一定程度上体现音频信号中声音的大小,丢弃声音较小的音频可以减轻过载网络的负载,保证音视频传输的流畅。例如,当音频幅度过小时,此时的音频可能代表一段含有微量噪音的无人声片段,丢弃该片段可以降低此时传输的数据量。
最后,将待传音视频被采样的音频片段替换为上述得到的目标音频。
(三)时延组模块603:
时延组模块603,用于根据预设周期向目标终端发送时延轮询请求,获取时延组。
以上的步骤完成了对音视频传输质量的初始化,由于网络状态时常波动,以下将详细解释如何在波动的网络状态下调整音视频的传输质量:
首先,音视频传输装置向目标终端发送报文3,即时延轮询请求,并记录发送报文3时的发送时间戳T1,用来通知目标终端返回报文4。
目标终端接收到报文3后,记录接收到报文3时对应的时间戳,记为T2,然后再向目标终端发送报文4,并记录发送报文4时的发送时间戳T3。
目标终端接收到报文4后,将记录接收到报文4时对应的时间戳,记为T4,根据T4和报文4中关于发射时间戳以及接收时间戳的内容,计算传时延组中的首次时延⊿T1。
再次地,重复上述获取首次时延⊿T1的方法可以获取时延⊿T2、⊿T3等等多个时延。在本实施例中,将该重复次数设为N,则获取地时延分别是⊿T1、⊿T2...⊿TN,将这些时延序列记为时延组。其中,N为自然数。
重复时间间隔为预设周期,用于周期性的通过计算时延来检测网络状态。该预设周期也可以由技术人员预先设定并存储在本地内存中。
在一些实施例中,为了防止网络状态极差导致的发出时延轮询请求后长时间未接收目标终端返回的报文,调整传输质量档位不够及时,故在步骤“根据预设周期向目标终端发送时延轮询请求,得到时延组”之前可以包括:
(1)再次向目标终端发送时延探测请求,获取第二传输时延;
再次向目标终端发送时延探测请求,获取的时延被记作第二传输时延。
(2)若第二传输时延大于第二预设阈值,则将当前传输质量档位降为预设的最低档位。
为了快速降低糟糕网络状态下的网络负荷,若第二传输时延大于第二预设阈值,则将当前传输质量档位降为预设的最低档位。其中,最低档位是指传输质量档位中最低一档,其相应的时延范围则是最大时延,最低档位可以预先由技术人员设定并保存在本地内存中。
其中,所述第二预设阈值可以预先存储在音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取;还可以是由用户录入本地内存。
(四)调整模块604:
调整模块604,用于根据时延组,调整音视频的传输质量档位,根据调整后的传输质量档位配置当前待传的音视频,并传输。
若时延组中所有的时延均小于预设升档阈值,则执行预设的升档操作。该升档操作可以升1档、2档以及3档等等。若当前档位已经是最高档,无法再上升1档,则忽略此次的升档操作。
若时延组中所有的时延均大于预设降档阈值,则执行预设的降档操作。该降档操作可以是降1档、2档以及3档等等,也可以是直接降到最低档,在此不做要求。若当前档位已经是最低档,无法再下降1档,则忽略此次的降档操作。
以上所述的升几档和降几档可以由技术人员决定并录入本地内存。其中,预设升档阈值与预设降档阈值可以预先存储在音视频传输装置的本地内存里;也可以是通过网络与其他网络服务器通信,在网络服务器中获取;还可以是由用户录入本地内存。
由于,步骤“根据传输质量档位配置当前待传的音视频,并传输”已在模块702中有详细描述,故在此不再赘述。
由上可知,本实施例中时延模块601通过发起时延探测,与目标终端通信来获得传输时延,从而估计网络状态。然后确定模块602根据当前的网络状态,对音视频的传输质量档位做出初始化设置,然后开始传输音视频。之后,时延组模块603周期性地与目标终端通信获取时延组来监测当前网络状态,进而使得调整模块604在网络状态差的情况下进行预设的降档操作,减少传输数据,缓解传输压力;调整模块604在网络状态好的情况下进行预设的升档操作,使得音视频数据传输量平稳上升,保证了音视频传输的稳定性,有效地保证音视频的质量和实时性。调档操作调整了音视频的传输参数,能够有效地减少传输数据量,缓解传输压力,从而减少了拥塞网络状态下丢帧、卡顿以及延时的情况,改善了音视频传输质量,解决了音视频传输效率差差的情况。
本发明实施例还提供一种网络设备,如图7所示,为本发明实施例所涉及的网络设备的结构示意图,其集成了本发明实施例所提供的任一种音视频传输装置,该网络设备可以为服务器或终端等设备,具体来讲:
该网络设备可以包括一个或者一个以上处理核心的处理器701、一个或一个以上计算机可读存储介质的存储器702和输入单元703等部件。本领域技术人员可以理解,图7中示出的网络设备结构并不构成对网络设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器701是该网络设备的控制中心,利用各种接口和线路连接整个网络设备的各个部分,通过运行或执行存储在存储器702内的软件程序和/或模块,以及调用存储在存储器702内的数据,执行网络设备的各种功能和处理数据,从而对网络设备进行整体监控。
存储器702可用于存储软件程序以及模块,处理器701通过运行存储在存储器702的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器702可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据网络设备的使用所创建的数据等。
该网络设备还可包括输入单元703,该输入单元703可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
具体在本实施例中,网络设备中的处理器701会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器702中,并由处理器701来运行存储在存储器702中的应用程序,从而实现各种功能,如下:
向目标终端发送时延探测请求,获取第一传输时延;根据第一传输时延,确定音视频的传输质量档位,根据传输质量档位配置当前待传的音视频,并传输;根据预设周期向目标终端发送时延轮询请求,获取时延组;根据时延组,调整音视频的传输质量档位,根据调整后的传输质量档位配置当前待传的音视频,并传输。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对媒体文件获取方法的详细描述,此处不再赘述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本发明实施例提供一种音视频传输存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种音视频传输方法中的步骤。例如,该指令可以执行如下步骤:
向目标终端发送时延探测请求,获取第一传输时延;根据第一传输时延,确定音视频的传输质量档位,根据传输质量档位配置当前待传的音视频,并传输;根据预设周期向目标终端发送时延轮询请求,获取时延组;根据时延组,调整音视频的传输质量档位,根据调整后的传输质量档位配置当前待传的音视频,并传输。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)随机存取记忆体(RAM,Random Access Memory)磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本发明实施例所提供的任一种的音视频传输方法中的步骤,因此,可以实现本发明实施例所提供的任一种音视频传输方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本发明实施例所提供的一种音视频传输方法、装置和存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (6)
1.一种音视频传输方法,其特征在于,包括:
向目标终端发送时延探测请求,获取第一传输时延;
根据所述第一传输时延,确定所述音视频的传输质量档位,根据所述传输质量档位配置当前待传的音视频,并传输;
根据预设周期向所述目标终端发送时延轮询请求,获取时延组;若所述时延组中所有的时延均小于预设升档阈值,且上次档位调整操作为升档操作,则获取所述上次档位调整操作与当前时间的时间间隔;
若所述时间间隔超过第一预设阈值,则根据所述时延组中所有的时延,确定档位上限,所述档位上限用于制约频繁升档;
若当前档位未达到所述升档上限,执行预设的升档操作,以实现逐渐升档;
若所述时延组中所有的时延均大于预设降档阈值,则执行预设的降档操作,所述降档操作包括降至最低档,以快速降低糟糕网络状态下的网络负荷;
根据调整后的所述传输质量档位配置当前待传的音视频,并传输。
2.根据权利要求1所述的方法,其特征在于,所述根据预设周期向所述目标终端发送时延轮询请求,得到时延组,之前包括:
再次向所述目标终端发送时延探测请求,获取第二传输时延;
若所述第二传输时延大于第二预设阈值,则将当前传输质量档位降为预设的最低档位。
3.根据权利要求1-2任一项所述的方法,其特征在于,所述根据所述传输质量档位配置当前待传的音视频,包括:
根据所述传输质量档位确定传输参数,其中,所述传输参数包括帧率、视频码率和/或关键帧周期;
根据所述传输参数,配置当前待传的音视频。
4.根据权利要求1-2任一项所述的方法,其特征在于,所述根据所述传输质量档位配置当前待传的音视频,还包括:
根据预设的分级规则,确定当前档位是否属于低级档位;
若所述传输档位属于预设低级档位,对所述音视频中的音频进行采样,得到音频片段,获取所述音频片段中采样点的幅度值;
若所述音频片段中采样点的幅度值均小于预设幅度阈值,则在所述音频片段中筛选出目标音频,根据所述目标音频配置当前待传的音视频。
5.一种音视频传输装置,其特征在于,包括:
时延模块,用于向目标终端发送时延探测请求,获取第一传输时延;
确定模块,用于根据所述第一传输时延,确定所述音视频的传输质量档位,根据所述传输质量档位配置当前待传的音视频,并传输;
时延组模块,用于根据预设周期向所述目标终端发送时延轮询请求,获取时延组;
调整模块,用于若所述时延组中所有的时延均小于预设升档阈值,且上次档位调整操作为升档操作,则获取所述上次档位调整操作与当前时间的时间间隔;若所述时间间隔超过第一预设阈值,则根据所述时延组中所有的时延,确定档位上限,所述档位上限用于制约频繁升档;若当前档位未达到所述升档上限,执行预设的升档操作,以实现逐渐升档;若所述时延组中所有的时延均大于预设降档阈值,则执行预设的降档操作,所述降档操作包括降至最低档,以快速降低糟糕网络状态下的网络负荷;根据调整后的所述传输质量档位配置当前待传的音视频,并传输。
6.一种存储介质,其特征在于,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至4任一项所述音视频传输方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811432060.5A CN111245769B (zh) | 2018-11-28 | 2018-11-28 | 一种音视频传输方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811432060.5A CN111245769B (zh) | 2018-11-28 | 2018-11-28 | 一种音视频传输方法、装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111245769A CN111245769A (zh) | 2020-06-05 |
CN111245769B true CN111245769B (zh) | 2022-09-30 |
Family
ID=70879189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811432060.5A Active CN111245769B (zh) | 2018-11-28 | 2018-11-28 | 一种音视频传输方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111245769B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111862912A (zh) * | 2020-07-10 | 2020-10-30 | 咪咕文化科技有限公司 | 曲谱显示方法、装置、服务器及存储介质 |
CN112565884B (zh) * | 2020-11-27 | 2024-03-05 | 北京达佳互联信息技术有限公司 | 图像处理方法、装置、终端、服务器及存储介质 |
CN114172874A (zh) * | 2021-12-27 | 2022-03-11 | 上海商米科技集团股份有限公司 | 视频传输参数的自适应调节方法和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102231898A (zh) * | 2011-07-05 | 2011-11-02 | 深圳市融创天下科技股份有限公司 | 一种网络带宽自适应qos传输的方法、系统和终端设备 |
WO2013000218A1 (zh) * | 2011-06-29 | 2013-01-03 | 中兴通讯股份有限公司 | 一种自动调整语音发送参数的方法、装置和系统 |
CN103888846A (zh) * | 2014-03-04 | 2014-06-25 | 浙江大学 | 基于QoE的无线视频流业务自适应速率控制方法 |
CN105025249A (zh) * | 2014-04-22 | 2015-11-04 | 中国移动通信集团江苏有限公司 | 视频监控数据传输控制方法、装置及视频监控系统 |
CN105989844A (zh) * | 2015-01-29 | 2016-10-05 | 中国移动通信集团公司 | 一种音频传输的自适应方法及装置 |
CN107342848A (zh) * | 2017-08-24 | 2017-11-10 | 杭州联吉技术有限公司 | 一种自适应码流传输方法、装置及设备 |
-
2018
- 2018-11-28 CN CN201811432060.5A patent/CN111245769B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013000218A1 (zh) * | 2011-06-29 | 2013-01-03 | 中兴通讯股份有限公司 | 一种自动调整语音发送参数的方法、装置和系统 |
CN102231898A (zh) * | 2011-07-05 | 2011-11-02 | 深圳市融创天下科技股份有限公司 | 一种网络带宽自适应qos传输的方法、系统和终端设备 |
CN103888846A (zh) * | 2014-03-04 | 2014-06-25 | 浙江大学 | 基于QoE的无线视频流业务自适应速率控制方法 |
CN105025249A (zh) * | 2014-04-22 | 2015-11-04 | 中国移动通信集团江苏有限公司 | 视频监控数据传输控制方法、装置及视频监控系统 |
CN105989844A (zh) * | 2015-01-29 | 2016-10-05 | 中国移动通信集团公司 | 一种音频传输的自适应方法及装置 |
CN107342848A (zh) * | 2017-08-24 | 2017-11-10 | 杭州联吉技术有限公司 | 一种自适应码流传输方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111245769A (zh) | 2020-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111245769B (zh) | 一种音视频传输方法、装置和存储介质 | |
CN106791956B (zh) | 网络直播卡顿的处理方法及装置 | |
DE60118493T2 (de) | Datenübertragungssystem und -Verfahren | |
US8558772B2 (en) | Image display apparatus | |
CN113891155B (zh) | 视频播放档位确定方法、视频播放方法及相关装置 | |
CN113301392A (zh) | 码率确定方法、装置、设备及存储介质 | |
US8578436B2 (en) | Method for two time-scales video stream transmission control | |
EP3172861B1 (en) | Generating and utilizing contextual network analytics | |
CN104125429A (zh) | 视频数据传输的调节方法及装置 | |
CN107529097A (zh) | 一种自适应调整视频缓冲大小的方法及装置 | |
US8995268B2 (en) | Method for controlling a flow in a packet switching network | |
CN106803968B (zh) | 一种基于hls协议的带宽自适应调节视频分辨率的方法 | |
US20140161176A1 (en) | Method and Device for Controlling Video Quality Fluctuation Based on Scalable Video Coding | |
CN105872615A (zh) | 一种视频传输码率调整方法及装置 | |
CN106658067B (zh) | 设置缓存的方法和装置 | |
CN106791930B (zh) | 一种视频处理方法和装置 | |
EP4366296A1 (en) | Video call processing method and apparatus, device and storage medium | |
CN111083125B (zh) | 神经网络优化的无参考自适应流媒体质量评价方法及系统 | |
CN112019873A (zh) | 视频码率调整方法、装置和电子设备 | |
CN104581340B (zh) | 客户端、流媒体数据接收方法和流媒体数据传输系统 | |
CN112437321A (zh) | 一种基于直播流媒体的自适应码率计算方法 | |
CN107801049A (zh) | 一种实时视频传送、播放方法及装置 | |
US11671336B2 (en) | ABR control | |
CN114172874A (zh) | 视频传输参数的自适应调节方法和系统 | |
Zhang et al. | A QOE-driven approach to rate adaptation for dynamic adaptive streaming over http |
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 |