CN103929654A - 一种图像数据处理方法及装置 - Google Patents
一种图像数据处理方法及装置 Download PDFInfo
- Publication number
- CN103929654A CN103929654A CN201310012034.8A CN201310012034A CN103929654A CN 103929654 A CN103929654 A CN 103929654A CN 201310012034 A CN201310012034 A CN 201310012034A CN 103929654 A CN103929654 A CN 103929654A
- Authority
- CN
- China
- Prior art keywords
- code stream
- value
- time
- flow valuve
- current
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种图像数据处理方法及装置,包括:当获取到当前帧图像初始数据时,确定当前帧延时为指定内存中最先存储的一帧图像编码数据对应的初始数据获取到的时间和最后存储的一帧图像编码数据对应的初始数据获取到的时间之间的时间差值;当当前帧延时在预设范围内时,调整当前码流值变小;基于调整后的当前码流值对当前帧图像初始数据进行编码,得到当前帧图像编码数据,当前帧图像编码数据存储于指定内存中等待发送。采用本发明实施例提供的方案,解决了在网络抖动时图像数据丢弃较多的问题。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种图像数据处理方法及装置。
背景技术
随着互联网的普遍应用及其自身技术的不断成熟,获取视频图像数据并在网络上进行实时传输已经成为现实。一些相关设备,如DVR(Digital VideoRecorder,数字视频录像机)、DVS(Digital Video Server,网络视频服务器)等,在通过网络传输实时视频图像数据时,先基于当前码流值对获取到的视频图像初始数据进行编码,将编码后得到的视频图像编码数据存储于本地预先划分出的指定内存中,再按照时间顺序依次对视频图像编码数据进行发送。
当网络抖动时,指定内存中存储的编码数据不能被及时发送。当指定内存中存储的编码数据过多时,设备便会随机删除丢弃一些数据,或者删除丢弃最新获取到的数据,而删除丢弃数据较多时,将会导致接收方在接收到设备发送的编码数据后进行解码播放时出现卡顿、花屏、延时过大等问题。
发明内容
本发明实施例提供一种图像数据处理方法及装置,用以解决在网络抖动时数据丢弃较多的问题。
本发明实施例提供一种图像数据处理方法,包括:
当获取到当前帧图像初始数据时,确定当前帧延时为指定内存中最先存储的一帧图像编码数据对应的初始数据获取到的时间和最后存储的一帧图像编码数据对应的初始数据获取到的时间之间的时间差值;
当所述当前帧延时在预设范围内时,调整当前码流值变小;
基于调整后的当前码流值对所述当前帧图像初始数据进行编码,得到当前帧图像编码数据,所述当前帧图像编码数据存储于所述指定内存中等待发送。
本发明实施例提供一种图像数据处理装置,包括:
确定单元,用于当获取到当前帧图像初始数据时,确定当前帧延时为指定内存中最先存储的一帧图像编码数据对应的初始数据获取到的时间和最后存储的一帧图像编码数据对应的初始数据获取到的时间之间的时间差值;
调整单元,用于当所述当前帧延时在预设范围内时,调整当前码流值变小;
编码单元,用于基于调整后的当前码流值对所述当前帧图像初始数据进行编码,得到当前帧图像编码数据,所述当前帧图像编码数据存储于所述指定内存中等待发送。
本发明有益效果包括:
本发明实施例提供的方法中,在当前网络状况较差或在当前网络状况变差时,调整当前码流值变小,由于网络中传输的数据是对获取到的图像初始数据基于码流值进行编码后的数据,当码流值变小时,对获取到的图像初始数据基于变小的码流值进行编码后的数据也变小,即时减小了对指定内存存储空间的占用及进行数据传输时所需的网络资源,相比于现有技术中当指定内存存储的编码数据过多时删除丢弃编码数据的方案,能够减少数据丢弃。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例提供的图像数据处理方法的流程图;
图2为本发明实施例提供的图像数据处理方法的详细流程图;
图3为本发明实施例提供的调整当前码流值变大的详细流程图;
图4为本发明实施例提供的调整当前码流值变小的详细流程图;
图5为本发明实施例提供的图像数据处理装置的结构示意图。
具体实施方式
为了给出减少在网络抖动时图像数据丢弃的实现方案,本发明实施例提供了一种图像数据处理方法及装置,以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明实施例提供一种图像数据处理方法,如图1所示,包括:
步骤101、当获取到当前帧图像初始数据时,确定当前帧延时为指定内存中最先存储的一帧图像编码数据对应的初始数据获取到的时间和最后存储的一帧图像编码数据对应的初始数据获取到的时间之间的时间差值;
步骤102、当当前帧延时在预设范围内时,调整当前码流值变小;
步骤103、基于调整后的当前码流值对当前帧图像初始数据进行编码,得到当前帧图像编码数据,当前帧图像编码数据存储于指定内存中等待发送。
进一步的,该图像数据处理方法还包括:
当当前帧延时相比于上一帧延时变大时,调整当前码流值变小;或者当当前帧延时在第一数值范围内,上一帧延时在第二数值范围内,且第一数值范围内的所有数值均大于第二数值范围内的所有数值时,调整当前码流值变小。
具体实施时,可预先划分出若干个延时数值范围,并且各数值范围之间没有交集,不同的数值范围能够表征不同的网络质量等级。各数值范围中的数值越大,表征网络质量等级越低,即网络质量越差。预设范围为数值最大的一个范围,表征网络质量等级最低,即网络质量最差。
较佳的,可以设定第一预设调整周期作为码流值的调整周期,以减少处理器的计算量。
较佳的,在调整当前码流值变小之前,还包括确定当前码流值大于当前网络带宽;或者确定当前码流值大于第一码流预设值;或者确定当前码流值大于当前网络带宽,且确定当前码流值大于第一码流预设值。其中,第一预设码流值为允许的最小码流值。
在调整当前码流值变小时,可以设定固定值,在调整后的码流值不低于允许的最小码流值的前提下,每次减小该固定值,也可以采用本发明实施例提供的方案调整当前码流值变小。
进一步的,当确定当前码流值不大于允许的最小码流值时,按照指定原则对指定内存中存储的图像编码数据进行指定删除操作。当不能完成指定删除操作时,对获取的当前帧图像初始数据进行判断,确定是否删除当前帧图像初始数据。
进一步的,当当前帧延时为0时,当前网络质量最高,调整当前码流值变大。较佳的,也可以设定第二预设调整周期作为调整码流值变大的周期。
较佳的,在调整当前码流值变大之前,还包括确定当前码流值小于第二预设码流值。其中,第二预设码流值为允许的最大码流值。
在调整当前码流值变大时,也可以设定固定值,在调整后的码流值不超过允许的最大码流值的前提下,每次增加该固定值,也可以采用本发明实施例提供的方案调整当前码流值变大。
下面结合附图,用具体实施例对本发明提供的方法进行详细描述。
图2所示为本发明实施例提供的图像数据处理方法详细流程,具体包括如下处理步骤:
步骤201、当获取到当前帧图像初始数据时,判断当前时刻是否已到达采用第一预设调整周期调整当前码流值的时刻。
该实施例中,第一预设调整周期可以设定为1000ms。
当确定当前时刻已到达采用第一预设调整周期调整当前码流值的时刻时,进入步骤202;当确定当前时刻未到达采用第一预设调整周期调整当前码流值的时刻时,进入步骤218。
步骤202、确定当前帧延时为指定内存中最先存储的一帧图像编码数据对应的初始数据获取到的时间和最后存储的一帧图像编码数据对应的初始数据获取到的时间之间的时间差值。
步骤203、预先划分出若干个延时数值范围,判断当前帧延时是否满足下述条件:
条件1:当前帧延时为0;
条件2:当前帧延时在预设范围内,预设范围为数值最大的一个范围;或者当前帧延时在第一数值范围内,上一帧延时在第二数值范围内,且第一数值范围内的数值大于第二数值范围内的数值。
本实施例中,可划分出8个数值范围,对应表征不同的网络质量等级1~8,等级1表示网络质量最差,等级8表示网络质量最好。
当确定当前帧延时满足条件1时,进入步骤204;当确定当前帧延时满足条件2时,进入步骤207;其它情况,即当确定当前帧延时既不满足条件1也不满足条件2时,进入步骤218。
步骤204、判断当前时刻是否已到达采用第二预设调整周期调整当前码流值变大的时刻。
当确定当前时刻已到达采用第二预设调整周期调整当前码流值变大的时刻,进入步骤205;当确定当前时刻未到达采用第二预设调整周期调整当前码流值变大的时刻,进入步骤218。
步骤205、判断当前码流值是否小于第二预设码流值。
其中,第二预设码流值为允许的最大码流值。
当确定当前码流值小于第二预设码流值时,进入步骤206;当确定当前码流值不小于第二预设码流值时,进入步骤218。
上述步骤204和步骤205没有必然的先后执行顺序,也可以先执行步骤205,再执行步骤204。
步骤206、调整当前码流值变大。
具体调整当前码流值变大的详细流程如图3所示,在后文中进行详细阐述。
进入步骤219。
步骤207、判断当前码流值是否大于当前网络带宽。
当前网络带宽可以根据指定内存中存储的图像编码数据的多少估算获得,也可以通过其他方式获得。
当确定当前码流值大于当前网络带宽时,进入步骤208;当确定当前码流值不大于当前网络带宽时,进入步骤218。
步骤208、判断当前码流值是否大于第一码流预设值。
其中,第一预设码流值为允许的最小码流值。
当确定当前码流值大于第一码流预设值时,进入步骤209;当确定当前码流值不大于第一码流预设值时,进入步骤210。
步骤209、调整当前码流值变小。
具体调整当前码流值变小的详细流程如图4所示,在后文中进行详细阐述。
进入步骤219。
步骤210、判断指定内存中是否存在I帧图像编码数据。
当确定指定内存中存在I帧图像编码数据时,进入步骤211;当确定指定内存中不存在I帧图像编码数据时,进入步骤216。
步骤211、确定待调整延时为当前帧延时和预设延时的差值;根据待调整延时确定预删除的P帧图像编码数据的数量。
在本实施例中,预设延时可以设定为400ms,具体采用如下公式确定预删除的P帧图像编码数据的数量:
其中,N为预删除的P帧图像编码数据的数量,D为待调整延时,p为当前帧率,默认为25帧每秒。
步骤212、判断指定内存中是否存在在最后存储的一帧I帧图像编码数据之前存储的该数量的P帧图像编码数据。
当指定内存中存在在最后存储的一帧I帧图像编码数据之前存储的该数量的P帧图像编码数据时,进入步骤213;当指定内存中不存在在最后存储的一帧I帧图像编码数据之前存储的该数量的P帧图像编码数据时,进入步骤214。
步骤213、从指定内存中最先存储的一帧P帧图像编码数据开始,删除该数量的P帧图像编码数据。
进入步骤218。
步骤214、在删除在最后存储的一帧I帧图像编码数据之前存储的所有P帧图像编码数据之后,判断指定内存中是否存在至少第一预设数量的I帧图像编码数据。
本实施例中,第一预设数量可以设定2。
当确定指定内存中存在至少第一预设数量的I帧图像编码数据时,进入步骤215;当确定指定内存中不存在至少第一预设数量的I帧图像编码数据时,进入步骤216。
步骤215、从指定内存中最先存储的一帧I帧图像编码数据开始,删除第二预设数量的I帧图像编码数据;第一预设数量大于第二预设数量。
本实施例中,第二预设数量可以设定1。
进入步骤218。
步骤216、当当前帧延时在预设范围内时,判断当前帧图像初始数据是否为P帧图像初始数据。
当确定当前帧图像初始数据为P帧图像初始数据时,进入步骤217;否则,进入步骤218。
步骤217、删除当前帧图像初始数据。
结束该流程。
步骤218、基于当前码流值对当前帧图像初始数据进行编码,得到当前帧图像编码数据,当前帧图像编码数据存储于指定内存中等待发送。
结束该流程。
步骤219、基于调整后的当前码流值对当前帧图像初始数据进行编码,得到当前帧图像编码数据,当前帧图像编码数据存储于指定内存中等待发送。
结束该流程。
图3所示为本发明实施例中提供的调整当前码流值变大的详细流程,具体包括如下处理步骤:
步骤301、确定第二指定码流值,以及获取上一次调整码流值变小时的指定网络带宽。
具体基于如下公式确定第二指定码流值:
M2=Mo+A×(2x)/32;
其中,M2为第二指定码流值,M0为当前码流值,A为调整范围,x为连续调整码流值变大的次数。
步骤302、判断指定网络带宽是否大于当前码流值,且小于第二指定码流值。
当确定指定网络带宽大于当前码流值,且小于第二指定码流值时,进入步骤303;当确定指定网络带宽不是大于当前码流值,且小于第二指定码流值时,进入步骤305。
步骤303、判断指定网络带宽是否大于第二预设码流值。
当确定指定网络带宽不大于第二预设码流值时,进入步骤304;当确定指定网络带宽大于第二预设码流值时,进入步骤307。
步骤304、调整当前码流值为指定网络带宽。
当前码流值调整结束。
步骤305、判断第二指定码流值是否大于第二预设码流值。
当确定第二指定码流值不大于第二预设码流值时,进入步骤306;当确定第二指定码流值大于第二预设码流值时,进入步骤307。
步骤306、调整当前码流值为第二指定码流值。
当前码流值调整结束。
步骤307、调整当前码流值为第二预设码流值。
当前码流值调整结束。
进一步的,在当前码流值调整结束后,记录调整时间,并将连续调整码流值变大的次数加1。
图4所示为本发明实施例中提供的调整当前码流值变小的详细流程,具体包括如下处理步骤:
步骤401、判断第一指定码流值是否小于当前网络带宽,其中,第一指定码流值为当前码流值的指定倍数,指定倍数小于1。
本实施例中,可以将指定倍数设置为0.9。
当确定第一指定码流值小于当前网络带宽时,进入步骤402;当确定第一指定码流值不小于当前网络带宽时,进入步骤404。
步骤402、判断第一指定码流值是否小于第一码流预设值。
当确定第一指定码流值不小于第一码流预设值时,进入步骤403;当确定第一指定码流值小于第一码流预设值时,进入步骤406。
步骤403、调整当前码流值为第一指定码流值。
当前码流值调整结束。
步骤404、判断当前网络带宽是否小于第一码流预设值。
当确定当前网络带宽不小于第一码流预设值时,进入步骤405;当确定当前网络带宽小于第一码流预设值时,进入步骤406。
步骤405、调整当前码流值为当前网络带宽。
当前码流值调整结束。
步骤406、调整当前码流值为第一码流预设值。
当前码流值调整结束。
进一步的,在当前码流值调整结束后,记录调整时间,并记录本次下调当前码流值时的网络带宽,以及将连续调整码流值变大的次数清0。
可见,采用本发明实施例提供的方案,能够依据网络状况对当前码流值进行实时调整,避免图像数据的不必要的删除,仅在需要调整当前码流值变小,而当前码流值已达到允许的最小码流值时,删除部分数据。并且,在删除时优先删除指定内存中存储的P帧图像编码数据,当删除P帧图像编码数据不能满足需求时再删除指定内存中存储的I帧图像编码数据,当不能删除I帧图像编码数据时,并且网络质量等级最低时,再根据当前帧图像类型,判断是否删除当前帧图像初始数据,即采用本发明实施例提供的方案在删除数据时能够尽量避免删除重要数据。
基于同一发明构思,根据本发明上述实施例提供的图像数据处理方法,相应地,本发明实施例还提供了一种图像数据处理装置,其结构示意图如图5所示,具体包括:
确定单元501,用于当获取到当前帧图像初始数据时,确定当前帧延时为指定内存中最先存储的一帧图像编码数据对应的初始数据获取到的时间和最后存储的一帧图像编码数据对应的初始数据获取到的时间之间的时间差值;
调整单元502,用于当当前帧延时在预设范围内时,调整当前码流值变小;
编码单元503,用于基于调整后的当前码流值对当前帧图像初始数据进行编码,得到当前帧图像编码数据,当前帧图像编码数据存储于指定内存中等待发送。
进一步的,调整单元502,还用于当当前帧延时相比于上一帧延时变大时,调整当前码流值变小;或者当当前帧延时在第一数值范围内,上一帧延时在第二数值范围内,且第一数值范围内的所有数值均大于第二数值范围内的所有数值时,调整当前码流值变小。
进一步的,调整单元502,还用于当当前帧延时为0时,调整当前码流值变大。
进一步的,确定单元501,还用于在确定当前帧延时之前,确定当前时刻已到达采用第一预设调整周期调整当前码流值的时刻。
进一步的,调整单元502,具体用于判断第一指定码流值是否小于当前网络带宽,该第一指定码流值为当前码流值的指定倍数,该指定倍数小于1;当确定第一指定码流值小于当前网络带宽时,判断第一指定码流值是否小于第一码流预设值;当确定第一指定码流值小于第一码流预设值时,调整当前码流值为第一码流预设值;当确定第一指定码流值不小于第一码流预设值时,调整当前码流值为第一指定码流值;当确定第一指定码流值不小于当前网络带宽时,判断当前网络带宽是否小于第一码流预设值;当确定当前网络带宽小于第一码流预设值时,调整当前码流值为第一码流预设值;当确定当前网络带宽不小于第一码流预设值时,调整当前码流值为当前网络带宽。
进一步的,调整单元502,还用于在调整当前码流值变小之前,确定当前码流值大于当前网络带宽;或者在调整当前码流值变小之前,确定当前码流值大于第一码流预设值;或者在调整当前码流值变小之前,确定当前码流值大于当前网络带宽,且确定当前码流值大于第一码流预设值。
进一步的,该图像数据处理装置,还包括:
删除单元504,用于当确定当前码流值不大于第一码流预设值,指定内存中存在I帧图像编码数据时,确定待调整延时为当前帧延时和预设延时的差值;根据该待调整延时确定预删除的P帧图像编码数据的数量;当指定内存中存在在最后存储的一帧I帧图像编码数据之前存储的该数量的P帧图像编码数据时,从指定内存中最先存储的一帧P帧图像编码数据开始,删除该数量的P帧图像编码数据。
进一步的,删除单元504,还用于当指定内存中不存在在最后存储的一帧I帧图像编码数据之前存储的该数量的P帧图像编码数据时,在删除在最后存储的一帧I帧图像编码数据之前存储的所有P帧图像编码数据之后,判断指定内存中是否存在至少第一预设数量的I帧图像编码数据;当确定指定内存中存在至少第一预设数量的I帧图像编码数据时,从指定内存中最先存储的一帧I帧图像编码数据开始,删除第二预设数量的I帧图像编码数据;该第一预设数量大于该第二预设数量。
进一步的,删除单元504,还用于当确定指定内存中不存在至少第一预设数量的I帧图像编码数据,当前帧延时在预设范围内时,判断当前帧图像初始数据是否为P帧图像初始数据;当确定当前帧图像初始数据为P帧图像初始数据时,删除当前帧图像初始数据。
进一步的,调整单元502,还用于在调整当前码流值变大之前,确定当前时刻已到达采用第二预设调整周期调整当前码流值变大的时刻。
进一步的,调整单元502,还用于在调整当前码流值变大之前,确定当前码流值小于第二预设码流值。
进一步的,调整单元502,具体用于获取上一次调整码流值变小时的指定网络带宽,以及基于公式M2=M0+A×(2x)/32,确定第二指定码流值,其中,M2为第二指定码流值,M0为当前码流值,A为调整范围,x为连续调整码流值变大的次数;判断指定网络带宽是否大于当前码流值,且小于第二指定码流值;当确定指定网络带宽大于当前码流值,且小于第二指定码流值时,判断指定网络带宽是否大于第二预设码流值;当确定指定网络带宽大于第二预设码流值时,调整当前码流值为第二预设码流值;当确定指定网络带宽不大于第二预设码流值时,调整当前码流值为指定网络带宽;当确定指定网络带宽不是大于当前码流值,且小于第二指定码流值时,判断第二指定码流值是否大于第二预设码流值;当确定第二指定码流值大于第二预设码流值时,调整当前码流值为第二预设码流值;当确定第二指定码流值不大于第二预设码流值时,调整当前码流值为第二指定码流值。
上述各单元的功能可对应于图1-图4所示流程中的相应处理步骤,在此不再赘述。
综上所述,本发明实施例提供的方案,包括:当获取到当前帧图像初始数据时,确定当前帧延时为指定内存中最先存储的一帧图像编码数据对应的初始数据获取到的时间和最后存储的一帧图像编码数据对应的初始数据获取到的时间之间的时间差值;当当前帧延时在预设范围内时,调整当前码流值变小;基于调整后的当前码流值对当前帧图像初始数据进行编码,得到当前帧图像编码数据,当前帧图像编码数据存储于指定内存中等待发送。采用本发明实施例提供的方案,能够解决在网络抖动时图像数据丢弃较多的问题。
本申请的实施例所提供的图像数据处理装置可通过计算机程序实现。本领域技术人员应该能够理解,上述的模块划分方式仅是众多模块划分方式中的一种,如果划分为其他模块或不划分模块,只要图像处理数据装置具有上述功能,都应该在本申请的保护范围之内。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (24)
1.一种图像数据处理方法,其特征在于,包括:
当获取到当前帧图像初始数据时,确定当前帧延时为指定内存中最先存储的一帧图像编码数据对应的初始数据获取到的时间和最后存储的一帧图像编码数据对应的初始数据获取到的时间之间的时间差值;
当所述当前帧延时在预设范围内时,调整当前码流值变小;
基于调整后的当前码流值对所述当前帧图像初始数据进行编码,得到当前帧图像编码数据,所述当前帧图像编码数据存储于所述指定内存中等待发送。
2.如权利要求1所述的方法,其特征在于,还包括:
当所述当前帧延时相比于上一帧延时变大时,调整所述当前码流值变小;或者
当所述当前帧延时在第一数值范围内,所述上一帧延时在第二数值范围内,且所述第一数值范围内的所有数值均大于所述第二数值范围内的所有数值时,调整所述当前码流值变小。
3.如权利要求1或2所述的方法,其特征在于,还包括:
当所述当前帧延时为0时,调整所述当前码流值变大。
4.如权利要求1所述的方法,其特征在于,在确定所述当前帧延时之前,还包括:
确定当前时刻已到达采用第一预设调整周期调整所述当前码流值的时刻。
5.如权利要求1或2所述的方法,其特征在于,调整当前码流值变小,具体为:
判断第一指定码流值是否小于所述当前网络带宽,所述第一指定码流值为所述当前码流值的指定倍数,所述指定倍数小于1;
当确定所述第一指定码流值小于所述当前网络带宽时,判断所述第一指定码流值是否小于所述第一码流预设值;当确定所述第一指定码流值小于所述第一码流预设值时,调整所述当前码流值为所述第一码流预设值;当确定所述第一指定码流值不小于所述第一码流预设值时,调整所述当前码流值为所述第一指定码流值;
当确定所述第一指定码流值不小于所述当前网络带宽时,判断所述当前网络带宽是否小于所述第一码流预设值;当确定所述当前网络带宽小于所述第一码流预设值时,调整所述当前码流值为所述第一码流预设值;当确定所述当前网络带宽不小于所述第一码流预设值时,调整所述当前码流值为所述当前网络带宽。
6.如权利要求1或2所述的方法,其特征在于,在调整所述当前码流值变小之前,还包括:
确定所述当前码流值大于当前网络带宽;或者
确定所述当前码流值大于第一码流预设值;或者
确定所述当前码流值大于所述当前网络带宽,且确定所述当前码流值大于所述第一码流预设值。
7.如权利要求6所述的方法,其特征在于,当确定所述当前码流值不大于所述第一码流预设值时,还包括:
当所述指定内存中存在I帧图像编码数据时,确定待调整延时为所述当前帧延时和预设延时的差值;
根据所述待调整延时确定预删除的P帧图像编码数据的数量;
当所述指定内存中存在在最后存储的一帧I帧图像编码数据之前存储的所述数量的P帧图像编码数据时,从所述指定内存中最先存储的一帧P帧图像编码数据开始,删除所述数量的P帧图像编码数据。
8.如权利要求7所述的方法,其特征在于,当所述指定内存中不存在在最后存储的一帧I帧图像编码数据之前存储的所述数量的P帧图像编码数据时,还包括:
在删除在最后存储的一帧I帧图像编码数据之前存储的所有P帧图像编码数据之后,判断所述指定内存中是否存在至少第一预设数量的I帧图像编码数据;
当确定所述指定内存中存在至少所述第一预设数量的I帧图像编码数据时,从所述指定内存中最先存储的一帧I帧图像编码数据开始,删除第二预设数量的I帧图像编码数据;所述第一预设数量大于所述第二预设数量。
9.如权利要求8所述的方法,其特征在于,当确定所述指定内存中不存在至少所述第一预设数量的I帧图像编码数据时,还包括:
当所述当前帧延时在所述预设范围内时,判断所述当前帧图像初始数据是否为P帧图像初始数据;
当确定所述当前帧图像初始数据为P帧图像初始数据时,删除所述当前帧图像初始数据。
10.如权利要求3所述的方法,其特征在于,在调整所述当前码流值变大之前,还包括:
确定当前时刻已到达采用第二预设调整周期调整所述当前码流值变大的时刻。
11.如权利要求3所述的方法,其特征在于,在调整所述当前码流值变大之前,还包括:
确定所述当前码流值小于第二预设码流值。
12.如权利要求3所述的方法,其特征在于,调整所述当前码流值变大,具体为:
获取上一次调整码流值变小时的指定网络带宽,以及基于公式M2=M0+A×(2x)/32,确定第二指定码流值,其中,M2为第二指定码流值,M0为当前码流值,A为调整范围,x为连续调整码流值变大的次数;
判断所述指定网络带宽是否大于所述当前码流值,且小于所述第二指定码流值;
当确定所述指定网络带宽大于所述当前码流值,且小于所述第二指定码流值时,判断所述指定网络带宽是否大于所述第二预设码流值;当确定所述指定网络带宽大于所述第二预设码流值时,调整所述当前码流值为所述第二预设码流值;当确定所述指定网络带宽不大于所述第二预设码流值时,调整所述当前码流值为所述指定网络带宽;
当确定所述指定网络带宽不是大于所述当前码流值,且小于所述第二指定码流值时,判断所述第二指定码流值是否大于所述第二预设码流值;当确定所述第二指定码流值大于所述第二预设码流值时,调整所述当前码流值为所述第二预设码流值;当确定所述第二指定码流值不大于所述第二预设码流值时,调整所述当前码流值为所述第二指定码流值。
13.一种图像数据处理装置,其特征在于,包括:
确定单元,用于当获取到当前帧图像初始数据时,确定当前帧延时为指定内存中最先存储的一帧图像编码数据对应的初始数据获取到的时间和最后存储的一帧图像编码数据对应的初始数据获取到的时间之间的时间差值;
调整单元,用于当所述当前帧延时在预设范围内时,调整当前码流值变小;
编码单元,用于基于调整后的当前码流值对所述当前帧图像初始数据进行编码,得到当前帧图像编码数据,所述当前帧图像编码数据存储于所述指定内存中等待发送。
14.如权利要求13所述的装置,其特征在于,所述调整单元,还用于当所述当前帧延时相比于上一帧延时变大时,调整所述当前码流值变小;或者当所述当前帧延时在第一数值范围内,所述上一帧延时在第二数值范围内,且所述第一数值范围内的所有数值均大于所述第二数值范围内的所有数值时,调整所述当前码流值变小。
15.如权利要求13或14所述的装置,其特征在于,所述调整单元,还用于当所述当前帧延时为0时,调整所述当前码流值变大。
16.如权利要求13所述的装置,其特征在于,所述确定单元,还用于在确定所述当前帧延时之前,确定当前时刻已到达采用第一预设调整周期调整所述当前码流值的时刻。
17.如权利要求13或14所述的装置,其特征在于,所述调整单元,具体用于判断第一指定码流值是否小于所述当前网络带宽,所述第一指定码流值为所述当前码流值的指定倍数,所述指定倍数小于1;当确定所述第一指定码流值小于所述当前网络带宽时,判断所述第一指定码流值是否小于所述第一码流预设值;当确定所述第一指定码流值小于所述第一码流预设值时,调整所述当前码流值为所述第一码流预设值;当确定所述第一指定码流值不小于所述第一码流预设值时,调整所述当前码流值为所述第一指定码流值;当确定所述第一指定码流值不小于所述当前网络带宽时,判断所述当前网络带宽是否小于所述第一码流预设值;当确定所述当前网络带宽小于所述第一码流预设值时,调整所述当前码流值为所述第一码流预设值;当确定所述当前网络带宽不小于所述第一码流预设值时,调整所述当前码流值为所述当前网络带宽。
18.如权利要求13或14所述的装置,其特征在于,所述调整单元,还用于在调整所述当前码流值变小之前,确定所述当前码流值大于当前网络带宽;或者在调整所述当前码流值变小之前,确定所述当前码流值大于第一码流预设值;或者在调整所述当前码流值变小之前,确定所述当前码流值大于所述当前网络带宽,且确定所述当前码流值大于所述第一码流预设值。
19.如权利要求18所述的装置,其特征在于,还包括:
删除单元,用于当确定所述当前码流值不大于所述第一码流预设值,所述指定内存中存在I帧图像编码数据时,确定待调整延时为所述当前帧延时和预设延时的差值;根据所述待调整延时确定预删除的P帧图像编码数据的数量;当所述指定内存中存在在最后存储的一帧I帧图像编码数据之前存储的所述数量的P帧图像编码数据时,从所述指定内存中最先存储的一帧P帧图像编码数据开始,删除所述数量的P帧图像编码数据。
20.如权利要求19所述的装置,其特征在于,所述删除单元,还用于当所述指定内存中不存在在最后存储的一帧I帧图像编码数据之前存储的所述数量的P帧图像编码数据时,在删除在最后存储的一帧I帧图像编码数据之前存储的所有P帧图像编码数据之后,判断所述指定内存中是否存在至少第一预设数量的I帧图像编码数据;当确定所述指定内存中存在至少所述第一预设数量的I帧图像编码数据时,从所述指定内存中最先存储的一帧I帧图像编码数据开始,删除第二预设数量的I帧图像编码数据;所述第一预设数量大于所述第二预设数量。
21.如权利要求20所述的装置,其特征在于,所述删除单元,还用于当确定所述指定内存中不存在至少所述第一预设数量的I帧图像编码数据,所述当前帧延时在所述预设范围内时,判断所述当前帧图像初始数据是否为P帧图像初始数据;当确定所述当前帧图像初始数据为P帧图像初始数据时,删除所述当前帧图像初始数据。
22.如权利要求15所述的装置,其特征在于,所述调整单元,还用于在调整所述当前码流值变大之前,确定当前时刻已到达采用第二预设调整周期调整所述当前码流值变大的时刻。
23.如权利要求15所述的装置,其特征在于,所述调整单元,还用于在调整所述当前码流值变大之前,确定所述当前码流值小于第二预设码流值。
24.如权利要求15所述的装置,其特征在于,所述调整单元,具体用于获取上一次调整码流值变小时的指定网络带宽,以及基于公式M2=M0+A×(2x)/32,确定第二指定码流值,其中,M2为第二指定码流值,M0为当前码流值,A为调整范围,x为连续调整码流值变大的次数;判断所述指定网络带宽是否大于所述当前码流值,且小于所述第二指定码流值;当确定所述指定网络带宽大于所述当前码流值,且小于所述第二指定码流值时,判断所述指定网络带宽是否大于所述第二预设码流值;当确定所述指定网络带宽大于所述第二预设码流值时,调整所述当前码流值为所述第二预设码流值;当确定所述指定网络带宽不大于所述第二预设码流值时,调整所述当前码流值为所述指定网络带宽;当确定所述指定网络带宽不是大于所述当前码流值,且小于所述第二指定码流值时,判断所述第二指定码流值是否大于所述第二预设码流值;当确定所述第二指定码流值大于所述第二预设码流值时,调整所述当前码流值为所述第二预设码流值;当确定所述第二指定码流值不大于所述第二预设码流值时,调整所述当前码流值为所述第二指定码流值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310012034.8A CN103929654B (zh) | 2013-01-11 | 2013-01-11 | 一种图像数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310012034.8A CN103929654B (zh) | 2013-01-11 | 2013-01-11 | 一种图像数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103929654A true CN103929654A (zh) | 2014-07-16 |
CN103929654B CN103929654B (zh) | 2017-09-12 |
Family
ID=51147712
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310012034.8A Active CN103929654B (zh) | 2013-01-11 | 2013-01-11 | 一种图像数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103929654B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105517674A (zh) * | 2015-07-14 | 2016-04-20 | 深圳市锐明技术股份有限公司 | 一种监控数据的处理方法及系统 |
WO2016107215A1 (zh) * | 2014-12-30 | 2016-07-07 | 华为技术有限公司 | 一种图像处理方法与装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010212996A (ja) * | 2009-03-10 | 2010-09-24 | Toshiba Corp | 情報処理装置および多重化処理方法 |
CN101984667A (zh) * | 2010-11-19 | 2011-03-09 | 北京数码视讯科技股份有限公司 | 码率控制方法及码率控制器 |
CN102724490A (zh) * | 2012-06-01 | 2012-10-10 | 浙江宇视科技有限公司 | 一种码流控制的方法和装置 |
CN102761741A (zh) * | 2012-06-26 | 2012-10-31 | 中国科学技术大学 | 基于编解码端缓存的视频编码码率控制系统和方法 |
-
2013
- 2013-01-11 CN CN201310012034.8A patent/CN103929654B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010212996A (ja) * | 2009-03-10 | 2010-09-24 | Toshiba Corp | 情報処理装置および多重化処理方法 |
CN101984667A (zh) * | 2010-11-19 | 2011-03-09 | 北京数码视讯科技股份有限公司 | 码率控制方法及码率控制器 |
CN102724490A (zh) * | 2012-06-01 | 2012-10-10 | 浙江宇视科技有限公司 | 一种码流控制的方法和装置 |
CN102761741A (zh) * | 2012-06-26 | 2012-10-31 | 中国科学技术大学 | 基于编解码端缓存的视频编码码率控制系统和方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016107215A1 (zh) * | 2014-12-30 | 2016-07-07 | 华为技术有限公司 | 一种图像处理方法与装置 |
CN105517674A (zh) * | 2015-07-14 | 2016-04-20 | 深圳市锐明技术股份有限公司 | 一种监控数据的处理方法及系统 |
CN105517674B (zh) * | 2015-07-14 | 2019-03-08 | 深圳市锐明技术股份有限公司 | 一种监控数据的处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103929654B (zh) | 2017-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105025249B (zh) | 视频监控数据传输控制方法、装置及视频监控系统 | |
CN100593953C (zh) | 基于pid控制和接收帧率稳定模型的视频传输控制方法 | |
CN111225254B (zh) | 一种视频传输方法、装置、终端设备及存储介质 | |
JPH06284148A (ja) | 動画通信制御方法及び通信制御装置 | |
CN104394484A (zh) | 一种无线实时流媒体传输方法 | |
CN105262699A (zh) | 一种网络自适应编码调整方法及装置 | |
CN111263153B (zh) | 视频编码方法、装置、设备及存储介质 | |
CN102685472B (zh) | 数据传输的方法、装置和系统 | |
CN102457728B (zh) | 一种视频图像编码方法和装置 | |
CN108989832B (zh) | 一种图像数据处理方法及其设备、存储介质、终端 | |
CN108696911B (zh) | 一种物联网数据传输方式的选择方法和装置 | |
CN102170552A (zh) | 一种视频会议系统及其中使用的处理方法 | |
CN103327252A (zh) | 拍摄装置及其拍摄方法 | |
CN104601521A (zh) | 用于动态选择通信传输协议的方法、装置和系统 | |
CN112272313B (zh) | 基于hid的音视频传输方法、装置及计算机可读存储介质 | |
JP2022036307A (ja) | クライアント、サーバ、受信方法及び送信方法 | |
CN105025294A (zh) | 一种视频传输控制装置及方法 | |
CN108605114A (zh) | 控制方法、装置及网络控制器 | |
CN103929654A (zh) | 一种图像数据处理方法及装置 | |
CN105430453A (zh) | 媒体数据采集方法、媒体终端及在线音乐教学系统 | |
CN104581340A (zh) | 客户端、流媒体数据接收方法和流媒体数据传输系统 | |
US8107500B2 (en) | Communication control apparatus, communication control method, and computer program | |
US9357170B2 (en) | Device and method for managing bandwidth of video conference | |
US20140126626A1 (en) | Method for media rate control in a video encoding system | |
WO2017147771A1 (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 |