CN114979726B - 码率调整方法、装置、服务器和存储介质 - Google Patents
码率调整方法、装置、服务器和存储介质 Download PDFInfo
- Publication number
- CN114979726B CN114979726B CN202210768344.1A CN202210768344A CN114979726B CN 114979726 B CN114979726 B CN 114979726B CN 202210768344 A CN202210768344 A CN 202210768344A CN 114979726 B CN114979726 B CN 114979726B
- Authority
- CN
- China
- Prior art keywords
- code rate
- parameter
- adjusted
- preset
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000009467 reduction Effects 0.000 claims description 126
- 238000004590 computer program Methods 0.000 claims description 10
- 230000003139 buffering effect Effects 0.000 claims description 5
- 238000004891 communication Methods 0.000 abstract description 11
- 230000005856 abnormality Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 9
- 238000011161 development Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011664 signaling Effects 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234381—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2405—Monitoring of the internal components or processes of the server, e.g. server load
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/66—Remote control of cameras or camera parts, e.g. by remote control devices
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Studio Devices (AREA)
Abstract
本发明涉及视频存储技术领域,提供一种码率调整方法、装置、服务器和存储介质。服务器与多个摄像设备通信连接,服务器具有存储空间和包括多个缓存块的缓存空间,缓存空间用于缓存服务器接收的每个摄像设备发送的视频数据,存储空间用于在缓存空间无空闲缓存块时,转存缓存空间中已缓存的视频数据;按照预设调整周期定期获取表示缓存空间使用情况的占用参数;并根据占用参数和每个摄像设备的当前码率,确定待调整摄像设备和码率参数;然后将码率参数发送至待调整摄像设备,以使待调整摄像设备按照码率参数调整码率。通过定期获取缓存空间的使用情况对码率进行动态调整,从而保证了视频的稳定性,有效地避免了视频存储异常。
Description
技术领域
本发明涉及视频存储技术领域,具体而言,涉及一种码率调整方法、装置、服务器和存储介质。
背景技术
随着经济的发展,人们对于安全的重视程度越来越高。天网、平安城市等监控平台在全国各地的实施,促进了安防行业的飞速发展。视频存储是安防行业的核心,由于实际的应用环境复杂,许多因素都有可能导致视频存储异常。摄像头的码率对于视频存储十分关键,进而如何调整摄像头的码率是值得关注的问题。
发明内容
有鉴于此,本发明的目的在于提供一种码率调整方法、装置、服务器和存储介质。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明提供一种码率调整方法,应用于服务器,所述服务器与多个摄像设备通信连接,所述服务器具有存储空间和包括多个缓存块的缓存空间,所述缓存空间用于缓存所述服务器接收的每个所述摄像设备发送的视频数据,所述存储空间用于在所述缓存空间无空闲缓存块时,转存所述缓存空间中已缓存的视频数据,所述方法包括:
按照预设调整周期定期获取表示所述缓存空间使用情况的占用参数;
根据所述占用参数和每个所述摄像设备的当前码率,确定待调整摄像设备和码率参数;
将所述码率参数发送至所述待调整摄像设备,以使所述待调整摄像设备按照所述码率参数调整码率。
在可选的实施方式中,所述服务器预存有多个码率区间和每个所述码率区间对应的帧率参数;
在所述根据所述占用参数和每个所述摄像设备的当前码率,确定待调整摄像设备和码率参数的步骤之后,所述方法还包括:
确定所述码率参数所属的目标码率区间;
获取所述目标码率区间对应的帧率参数,得到目标帧率参数;
将所述码率参数和所述目标帧率参数发送至所述待调整摄像设备,以使所述待调整摄像设备按照所述码率参数调整码率和按照所述目标帧率参数调整帧率。
在可选的实施方式中,所述占用参数为已使用缓存块的个数与全部缓存块的总个数的百分比,所述服务器预存有调节阈值、码率上限值和码率下限值;
所述根据所述占用参数和每个所述摄像设备的当前码率,确定待调整摄像设备和码率参数的步骤,包括:
当所述占用参数小于或者等于所述调节阈值,将所述当前码率小于所述码率上限值的摄像设备作为所述待调整摄像设备;
根据所述占用参数、所述码率上限值和所述待调整摄像设备的当前码率确定所述码率参数;
当所述占用参数大于所述调节阈值,将所述当前码率大于所述码率下限值的摄像设备作为所述待调整摄像设备;
根据所述占用参数、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数。
在可选的实施方式中,所述服务器还预存有观察阈值、预设提升比例和预设系数;所述观察阈值小于所述调节阈值;
所述根据所述占用参数、所述码率上限值和所述待调整摄像设备的当前码率确定所述码率参数的步骤,包括:
获取当前调整周期的平均输入带宽和平均输出带宽,所述平均输入带宽表示在所述当前调整周期内接收的平均视频数据量,所述平均输入带宽表示在所述当前调整周期内转存至所述存储空间的平均视频数据量;
当所述占用参数小于所述观察阈值,则按照所述预设提升比例和所述待调整摄像设备的当前码率计算提升后的码率值,并将所述提升后的码率值和所述码率上限值中的较小者作为所述码率参数;
当所述占用参数大于或者等于所述观察阈值,则计算所述平均输出带宽与预设系数的乘积,并比较所述乘积与所述平均输入带宽的大小;
若所述平均输入带宽小于或者等于所述乘积,则按照所述预设提升比例和所述待调整摄像设备的当前码率计算提升后的码率值,并将所述提升后的码率值和所述码率上限值中的较小者作为所述码率参数。
在可选的实施方式中,所述服务器还预存有强制阈值、预设降低下限比例、预设降低上限比例和预设系数;所述强制阈值大于所调节阈值;
所述根据所述占用参数、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数的步骤,包括:
获取当前调整周期的平均输入带宽和平均输出带宽,所述平均输入带宽表示在所述当前调整周期内接收的平均视频数据量,所述平均输入带宽表示在所述当前调整周期内转存至所述存储空间的平均视频数据量;
当所述占用参数大于或者等于所述强制阈值,则根据所述平均输入带宽、平均输出带宽、所述预设降低下限比例和预设降低上限比例,确定目标降低比例,并根据所述目标降低比例、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数;
当所述占用参数小于所述强制阈值,则计算所述平均输出带宽与预设系数的乘积,并比较所述乘积与所述平均输入带宽的大小;
若所述平均输入带宽大于或者等于所述乘积,则根据所述平均输入带宽、平均输出带宽、所述预设降低下限比例和预设降低上限比例,确定目标降低比例,并根据所述目标降低比例、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数。
在可选的实施方式中,所述根据所述平均输入带宽、平均输出带宽、所述预设降低下限比例和预设降低上限比例,确定目标降低比例的步骤,包括:
将所述平均输入带宽与所述平均输出带宽相减得到差值,并计算所述差值与所述平均输入带宽的比值,得到待定降低比例;
若所述待定降低比例属于所述预设降低下限比例和所述预设降低上限比例之间,则将所述待定降低比例作为所述目标降低比例;
若所述待定降低比例小于所述预设降低下限比例,则将所述预设降低下限比例作为所述目标降低比例;
若所述待定降低比例大于所述预设降低上限比例,则将所述预设降低上限比例作为所述目标降低比例。
在可选的实施方式中,所述根据所述目标降低比例、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数的步骤,包括:
根据所述目标降低比例和所述待调整摄像设备的当前码率,计算降低后的码率值;
对所述降低后的码率值和所述码率下限值进行比较;
若所述降低后的码率值大于所述码率下限值,则将所述降低后的码率值作为所述码率参数;
若所述降低后的码率值小于或者等于所述码率下限值,则将所述码率下限值作为所述码率参数。
第二方面,本发明提供一种码率调整装置,应用于服务器,所述服务器与多个摄像设备通信连接,所述服务器具有存储空间和包括多个缓存块的缓存空间,所述缓存空间用于缓存所述服务器接收的每个所述摄像设备发送的视频数据,所述存储空间用于在所述缓存空间无空闲缓存块时,转存所述缓存空间中已缓存的视频数据,所述装置包括:
获取模块,用于按照预设调整周期定期获取表示所述缓存空间使用情况的占用参数;
确定模块,用于根据所述占用参数和每个所述摄像设备的当前码率,确定待调整摄像设备和码率参数;
调整模块,用于将所述码率参数发送至所述待调整摄像设备,以使所述待调整摄像设备按照所述码率参数调整码率。
第三方面,本发明提供一种服务器,包括处理器和存储器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时,实现前述实施方式中任一项所述的方法。
第四方面,本发明提供一种存储介质,所述存储介质上存储有计算机程序,该计算机程序被处理器执行时,实现前述实施方式中任一项所述的方法。
本发明实施例提供的码率调整方法、装置、服务器和存储介质,服务器与多个摄像设备通信连接,服务器具有存储空间和包括多个缓存块的缓存空间,缓存空间用于缓存服务器接收的每个摄像设备发送的视频数据,存储空间用于在缓存空间无空闲缓存块时,转存缓存空间中已缓存的视频数据;按照预设调整周期定期获取表示缓存空间使用情况的占用参数;并根据占用参数和每个摄像设备的当前码率,确定待调整摄像设备和码率参数;然后将码率参数发送至待调整摄像设备,以使待调整摄像设备按照码率参数调整码率。通过定期获取缓存空间的使用情况对码率进行动态调整,平衡码率与缓存空间的使用速率,从而保证了视频的稳定性,有效地避免了视频存储异常。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的一种场景示意图;
图2示出了本发明实施例提供的另一种场景示意图;
图3示出了本发明实施例提供的服务器方框示意图;
图4示出了本发明实施例提供的码率调整方法的一种流程示意图;
图5示出了本发明实施例提供的码率调整方法的又一种流程示意图;
图6示出了本发明实施例提供的码率调整方法的又一种流程示意图;
图7示出了本发明实施例提供的码率调整装置的一种功能模块图。
图标:101-摄像设备;103-服务器;105-存储集群;110-总线;120-处理器;130-存储器;170-通信接口;300-码率调整装置;310-获取模块;330- 确定模块;350-调整模块。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
随着经济的发展,人们对于安全的重视程度越来越高。天网、平安城市等监控平台在全国各地的实施,促进了安防行业的飞速发展。视频存储是安防行业的核心,视频存储的稳定性是衡量一套产品或者一个***的重要指标。由于实际的生产应用环境复杂,如网络波动、存储磁盘慢盘、存储单次IO高时延波动、存储集群重构导致平均IO时延增加等因素都可能导致视频存储异常。
相关技术中有多种解决方式。例如,通过判断当前码率是否属于预设的码率区间来调整码率;或者根据发送端与接收端的数据传输情况判断网络条件来进调整码率。但是这些方式都无法避免缓存区溢出、存在视频帧丢失、视频卡顿、中断等问题。进而本发明实施例提供了一种码率调整方法以解决上述问题。
请参阅图1,是本发明实施例提供的一种场景示意图。其中包括多个摄像设备101和服务器103。摄像设备101与服务器103可以通过标准的 ONVIF协议连接。服务器103可以是独立的服务器,也可以是多个服务器组成的服务器集群。
服务器103具有缓存空间和存储空间。其中,缓存空间用于缓存服务器接收的每个摄像设备发送的视频数据,存储空间用于在缓存空间使用完毕时,转存缓存空间中已缓存的视频数据。
可选地,本发明实施例还提供了另一种场景示意图,请参阅图2。其中包括多个摄像设备101、服务器103和存储集群105。摄像设备101与服务器103可以通过标准的ONVIF协议连接,服务器103与存储集群105可以通过NFS协议连接。存储集群105可以是三节点NAS集群。服务器103 具有缓存空间。存储集群105用于提供存储空间。
请参阅图3,是本发明实施例提供的一种服务器的方框示意图。服务器包括总线110、处理器120、存储器130、通信接口170。
总线110可以是将上述元件相互连接并在上述元件之间传递通信(例如控制消息)的电路。
处理器120可以通过总线110从上述其它元件(例如存储器130、通信接口170等)接收命令,可以解释接收到的命令,并可以根据所解释的命令来执行计算或数据处理。
处理器120可以是一种集成电路芯片,具有信号处理能力。该处理器 120可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
存储器130可以存储从处理器120或其它元件(例如通信接口170等)接收的命令或数据或者由处理器120或其它元件产生的命令或数据。
存储器130可以是但不限于,随机存取存储器(Random Access Memory, RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)。
通信接口170可用于与其他节点设备进行信令或数据的通信。
可以理解的是,图3所示的结构仅为服务器的结构示意图,服务器还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。可以理解的是,图3所示的结构也可以用于实现上述的摄像设备和存储端。
可理解的是,服务器中安装有视频接入平台,通过该视频接入平台执行本发明实施例提供的码率调整方法。
下面将以上述图1所示的场景,对本发明实施例提供的码率调整方法进行介绍。请参阅图4,图4是本发明实施例提供的一种码率调整方法的流程示意图。
步骤S202,按照预设调整周期定期获取表示缓存空间使用情况的占用参数;
在本实施例中,服务器具有缓存空间和存储空间,缓存空间包括多个缓存块,这多个缓存块的大小相同。
摄像设备向服务器发送视频数据,服务器将接收到的视频数据缓存到缓存空间的缓存块;当缓存空间使用完毕即无空闲缓存块时,则将缓存空间中已缓存的视频数据转存到存储空间以释放缓存块。
由于缓存空间有限,且缓存空间的使用情况与摄像设备的码率相关。当码率过小时,缓存空间中会存在较多的空闲缓存块;当码率过大时,缓存空间中的缓存块会较快使用完,则可能会出现数据溢出,即由于无空闲缓存块导致丢失视频帧,进而引起视频中断。
因此,在本实施例中,可以按照预先设定的调整周期,定期获取缓存空间的使用情况,这个使用情况可以用占用参数表示,依据该占用参数对码率进行动态调整,以使码率与缓存空间的使用速率保持平衡。
可以理解的是,通过定期获取占用参数对码率进行调整,可以避免频繁的调整码率而出现抖动。
步骤S204,根据占用参数和每个摄像设备的当前码率,确定待调整摄像设备和码率参数;
在本实施例中,服务器与多个摄像设备通信连接,其可以获取每个摄像设备的当前码率,并结合占用参数确定出需要调整码率的摄像设备即得到待调整摄像设备,以及确定出待调整摄像设备的新码率即码率参数。
步骤S206,将码率参数发送至待调整摄像设备,以使待调整摄像设备按照码率参数调整码率;
在本实施例中,基于获得的码率参数和待调整摄像设备,服务器将码率参数发送至待调整摄像设备;然后待调整摄像设备接收该码率参数并进行调整,即按照该码率参数进行编码。
可见基于上述步骤,服务器与多个摄像设备通信连接,服务器具有存储空间和包括多个缓存块的缓存空间,缓存空间用于缓存服务器接收的每个摄像设备发送的视频数据,存储空间用于在缓存空间无空闲缓存块时,转存缓存空间中已缓存的视频数据;按照预设调整周期定期获取表示缓存空间使用情况的占用参数;并根据占用参数和每个摄像设备的当前码率,确定待调整摄像设备和码率参数;然后将码率参数发送至待调整摄像设备,以使待调整摄像设备按照码率参数调整码率。通过定期获取缓存空间的使用情况对码率进行动态调整,平衡码率与缓存空间的使用速率,从而保证了视频的稳定性,有效地避免了视频存储异常。
可选地,为了进一步确保视频的稳定性,对于上述步骤S206,本发明实施例提供了一种可能的实现方式。请参阅图5,其中步骤S206包括以下步骤:
步骤S206-1,确定码率参数所属的目标码率区间;
步骤S206-3,获取目标码率区间对应的帧率参数,得到目标帧率参数;
步骤S206-5,将码率参数和目标帧率参数发送至待调整摄像设备,以使待调整摄像设备按照码率参数调整码率和按照目标帧率参数调整帧率。
可以理解的是,视频的稳定性除了与视频编码的码率有关,其还与视频的帧率有关。若码率与帧率不匹配,则会影响视频画面。因此,在本实施例中,预先配置有多个码率区间和每个码率区间对应的帧率参数。
可以根据码率参数,从全部码率区间中确定出其所属的码率区间,即得到目标码率区间;然后获取该目标码率区间对应的帧率参数,得到目标帧率参数,该目标帧率参数可以理解为与码率参数匹配的帧率;再将码率参数和目标帧率参数发送给待调整摄像设备,待调整摄像设备根据接收到的码率参数和目标帧率参数分别调整码率和帧率。
可见,通过预先配置多个码率区间和每个码率区间对应的帧率参数;根据码率参数确定出目标码率区间,并获取目标码率区间对应的帧率参数得到目标帧率参数,将该码率参数和目标帧率参数发送至待调整摄像设备,以使待调整摄像设备调整码率和帧率。通过调整码率的同时同步调整帧率,保持帧率与码率匹配,从而避免仅调整码率而影响画面效果,保证了视频的稳定性。
可选地,占用参数可以是已使用缓存块的个数与全部缓存块的总个数的百分比,进而对于上述步骤S204,本发明实施例提供了一种可能的实现方式。请参阅图6,其中步骤S204包括以下步骤:
步骤S204A-1,当占用参数小于或者等于调节阈值,将当前码率小于码率上限值的摄像设备作为待调整摄像设备;
步骤S204A-3,根据占用参数、码率上限值和待调整摄像设备的当前码率确定码率参数;
在本实施例中,预先设置***率的波动区间即码率上限值和码率下限值,还设置有评估缓存空间使用情况的阈值如调节阈值。该调节阈值用于确定码率的调整趋势,如提升码率或者降低码率。
当占用参数小于或者等于调节阈值,表示当前的缓存空间中存在较多的空闲缓存块,此时可以提升码率,则将当前码率小于码率上限值的摄像设备作为待调整摄像设备,并根据待调整摄像设备的当前码率、码率上限值和占用参数,确定出待调整摄像设备的新码率即码率参数。
可以理解为,当占用参数低于调节阈值时,此时缓存空间的使用率较低,可以适当地提升摄像设备的码率,以提高视频编码的效率。
步骤S204B-1,当占用参数大于调节阈值,将当前码率大于码率下限值的摄像设备作为待调整摄像设备;
步骤S204B-3,根据占用参数、码率下限值和待调整摄像设备的当前码率确定码率参数。
在本实施例中,当占用参数大于调节阈值,表示当前的缓存空间中存在较少的空闲缓存块或者无空闲缓存块,此时需要降低码率,则将当前码率大于码率下限值的摄像设备作为待调整摄像设备,并根据待调整摄像设备的当前码率、码率下限值和占用参数,确定出待调整摄像设备的新码率即码率参数。
可以理解为,当占用参数高于调节阈值时,此时缓存空间的使用率较高,若不调整码率则可能会导致数据溢出,则需要降低摄像设备的码率,以保证存在空闲缓存块来缓存视频数据,以避免丢失视频帧。
可见,通过调节阈值评估当前缓存空间的使用率,并基于其与占用参数的比较结果,确定当前码率的调整趋势即提升或者降低,从而实现动态调整码率,保持存在合适数量的空闲缓存块来缓存视频数据,保证了视频的稳定性。
可选地,对于步骤S204A-3,本发明实施例提供了一种可能的实现方式。
步骤S204A-3-1,获取当前调整周期的平均输入带宽和平均输出带宽;
其中,平均输入带宽表示在当前调整周期内接收的平均视频数据量,平均输入带宽表示在当前调整周期内转存至存储空间的平均视频数据量。
可以理解的是,缓存空间用于缓存服务器接收的视频数据,其可以看作缓存空间中数据的输入;在缓存空间无空闲缓存时,将缓存空间中的已缓存视频数据转存至存储空间,其可以看作缓存空间中数据的输出。
因此,在本实施例中,每个调整周期都会获取当前调整周期的平均输入带宽和平均输出带宽,将其作为码率调整的参考依据,以实现更加准确地调整码率。
可以在一个调整周期设置多个统计周期,基于这多个统计周期对应的输入带宽值和输出带宽值,计算出该调整周期的平均输入带宽和平均输出带宽。例如,设置一个调整周期为180秒,一个统计周期为10秒,则一个调整周期中有18个统计周期,可以获取这18个统计周期中每个统计周期的输入带宽值并计算平均值即得到平均输入带宽,获取每个统计周期的输出带宽值并计算平均值即得到平均输出带宽。
步骤S204A-3-2a,当占用参数小于观察阈值,则按照预设提升比例和待调整摄像设备的当前码率计算提升后的码率值,并将提升后的码率值和码率上限值中的较小者作为码率参数;
在本实施例中,为了更合理地调整码率,还设置有观察阈值以对缓存空间的使用情况进行细分,该观察阈值小于调节阈值。
当占用参数小于观察阈值,表示当前的缓存空间中存在很多的空闲缓存块,则可以按照预设提升比例和待调整摄像设备的当前码率计算提升后的码率值;
例如,预设提升比例用Pup表示,如Pup可以是10%;待调整摄像设备的当前码率用BRcur表示;则提升后的码率值为BRcur*(1+Pup)。应当理解的是,预设提升比例可以按照实际应用设置,本发明实施例不作限定。
然后对提升后的码率值和码率上限值进行比较,将这两者中的较小者作为码率参数。例如,码率上限值用BRmax表示。若BRcur*(1+Pup)<BRmax,则将BRcur*(1+Pup)作为码率参数;若BRcur*(1+Pup)≥BRmax,则将BRmax 作为码率参数。即码率参数为min{BRmax,BRcur*(1+Pup)}。
步骤S204A-3-2b-1,当占用参数大于或者等于观察阈值,则计算平均输出带宽与预设系数的乘积,并比较乘积与平均输入带宽的大小;
步骤S204A-3-2b-2,若平均输入带宽小于或者等于乘积,则按照预设提升比例和待调整摄像设备的当前码率计算提升后的码率值,并将提升后的码率值和码率上限值中的较小者作为码率参数。
在本实施例中,当占用参数大于或者等于观察阈值且小于调节阈值,则需要基于平均输出带宽和平均输入带宽进一步确定是否可以提升码率。即计算平均输出带宽与预设系数的乘积,并比较该乘积与平均输入带宽的大小。
例如,预设系数用s表示,如s可以是1.05;平均输入带宽用IB表示;平均输出带宽用OB表示。计算平均输出带宽OB与预设系数s的乘积即 OB*s,并对比该乘积OB*s与平均输入带宽IB的大小。应当理解的是,预设系数可以按照实际应用设置,本发明实施例不作限定。
若IB≤OB*s,表示当前缓存空间中数据的输入速率与输出速率的差异在设定范围内。可以理解为,按照该平均输入带宽IB和该平均输出带宽 OB,缓存空间中还存在较多的空闲缓存块,则可以按照预设提升比例Pup 和待调整摄像设备的当前码率BRcur,计算提升后的码率值BRcur*(1+Pup),并将提升后的码率值BRcur*(1+Pup)和码率上限值BRmax中的较小者作为码率参数。
若IB>OB*s,表示当前缓存空间中数据的输入速率与输出速率的差异不在设定范围内,则当前调整周期不进行调整,继续观察,可以基于下一个调整周期获取到的各参数值再确定如何调整。
可见,通过采用小于调节阈值的观察阈值,对需提升码率的情况进一步细分,并结合当前调整周期的平均输入带宽和平均输出带宽,来对码率进行动态调整。通过考虑了多方面因素,使码率的调整策略更加合理和全面,进一步确保了视频的稳定性。
可选地,对于步骤S204B-3,本发明实施例提供了一种可能的实现方式。
步骤S204B-3-1,获取当前调整周期的平均输入带宽和平均输出带宽;
其中,平均输入带宽表示在当前调整周期内接收的平均视频数据量,平均输入带宽表示在当前调整周期内转存至存储空间的平均视频数据量。
可以理解的是,步骤S204B-3-1与步骤S204A-3-1的实现方式和效果相同,为了简要,可参见步骤S204A-3-1的说明。
步骤S204B-3-2a,当占用参数大于或者等于强制阈值,则根据平均输入带宽、平均输出带宽、预设降低下限比例和预设降低上限比例,确定目标降低比例,并根据目标降低比例、码率下限值和待调整摄像设备的当前码率确定码率参数;
在本实施例中,为了更合理地调整码率,还设置有强制阈值以对缓存空间的使用情况进行细分,该强制阈值大于调节阈值。
当占用参数大于或者等于强制阈值,表示当前缓存空间中存在很少的空闲缓存块,需要快速地降低码率,则可以根据平均输入带宽、平均输出带宽、预设降低下限比例和预设降低上限比例,确定目标降低比例,并根据目标降低比例、码率下限值和待调整摄像设备的当前码率确定码率参数。
步骤S204B-3-2b-1,当占用参数小于强制阈值,则计算平均输出带宽与预设系数的乘积,并比较乘积与平均输入带宽的大小;
步骤S204B-3-2b-2,若平均输入带宽大于或者等于乘积,则根据平均输入带宽、平均输出带宽、预设降低下限比例和预设降低上限比例,确定目标降低比例,并根据目标降低比例、码率下限值和待调整摄像设备的当前码率确定码率参数。
在本实施例中,当占用参数小于强制阈值且大于调节阈值,则需要基于平均输出带宽和平均输入带宽进一步确定是否需要降低码率。即计算平均输出带宽OB与预设系数s的乘积即OB*s,并比较该乘积OB*s与平均输入带宽IB的大小。
若IB≥OB*s,表示当前缓存空间中数据的输入速率与输出速率的差异不在设定范围内。可以理解为,按照该平均输入带宽和该平均输出带宽,缓存空间中存在较少的空闲缓存块,则根据平均输入带宽、平均输出带宽、预设降低下限比例和预设降低上限比例,确定目标降低比例,并根据目标降低比例、码率下限值和待调整摄像设备的当前码率确定码率参数。
若IB<OB*s,表示当前缓存空间中数据的输入速率与输出速率的差异在设定范围内,则当前调整周期不进行调整,继续观察,可以基于下一个调整周期获取到的各参数值再确定如何调整。
可见,通过采用大于调节阈值的强制阈值,对需降低码率的情况进一步细分,并结合当前调整周期的平均输入带宽和平均输出带宽,来对码率进行动态调整。通过考虑了多方面因素,使码率的调整策略更加合理和全面,进一步确保了视频的稳定性。
可选地,对于上述步骤S204B-3-2a和步骤S204B-3-2b-2中的确定目标降低比例,本发明实施例提供了一种可能的实现方式。
步骤S204B-3-2-1,将平均输入带宽与平均输出带宽相减得到差值,并计算差值与平均输入带宽的比值,得到待定降低比例;
如上述示例,平均输入带宽用IB表示;平均输出带宽用OB表示,则待定降低比例Pd=(IB-OB)/IB。
步骤S204B-3-2-2,若待定降低比例属于预设降低下限比例和预设降低上限比例之间,则将待定降低比例作为目标降低比例;
步骤S204B-3-2-3,若待定降低比例小于预设降低下限比例,则将预设降低下限比例作为目标降低比例;
步骤S204B-3-2-4,若待定降低比例大于预设降低上限比例,则将预设降低上限比例作为目标降低比例。
在本实施例中,预先设置有降低码率的范围区间,即预设降低下限比例和预设降低上限比例。
例如,预设降低下限比例用Pdmin表示,如Pdmin可以是5%,预设降低上限比例用Pdmax表示,如Pdmax可以是30%。应当理解的是,预设降低下限比例和预设降低上限比例可以按照实际应用设置,本发明实施例不作限定。
若Pd∈[Pdmin,Pdmax],则将Pd作为目标降低比例;若Pd<Pdmin,则将Pdmin作为目标降低比例;若Pd>Pdmax,则将Pdmax作为目标降低比例。
可选地,对于上述步骤S204B-3-2a和步骤S204B-3-2b-2中的根据目标降低比例确定码率参数,本发明实施例提供了一种可能的实现方式。
步骤S204B-3-2-5,根据目标降低比例和待调整摄像设备的当前码率,计算降低后的码率值;
例如,目标降低比例用Pdown表示;待调整摄像设备的当前码率用 BRcur表示;则降低后的码率值为BRcur*(1-Pdown)。
步骤S204B-3-2-6,对降低后的码率值和码率下限值进行比较;
步骤S204B-3-2-7,若降低后的码率值大于码率下限值,则将降低后的码率值作为码率参数;
步骤S204B-3-2-8,若降低后的码率值小于或者等于码率下限值,则将码率下限值作为码率参数。
在本实施例中,对降低后的码率值和码率下限值进行比较,将这两者中的较大者作为码率参数。例如,码率下限值用BRmin表示。若 BRcur*(1-Pdown)>BRmin,则将BRcur*(1-Pdown)作为码率参数;若 BRcur*(1-Pdown)≤BRmin,则将BRmin作为码率参数。即码率参数为 max{BRmin,BRcur*(1-Pdown)}。
为了便于理解,本发明实施例提供一个示例。例如,缓存空间为 400MByte,其包括200个缓存块,每个缓存块为2M;预设调整周期为180 秒,预设统计周期为10秒;码率下限值BRmin为1Mbit/s,码率上限值BRmax 为4Mbit/s;观察阈值为70%,调节阈值为80%,强制阈值为90%;预设提升比例Pup为10%,预设降低下限比例Pdmin为5%,预设降低上限Pdmax比例为30%;预设系数s为1.05。
每间隔180秒,获取缓存空间的使用情况,即计算已使用缓存块的个数与全部缓存块的总个数的百分比,得到占用参数P。
当占用参数P等于60%,将当前码率小于码率上限值的摄像设备作为待调整摄像设备;然后按照其当前码率BRcur和预设提升比例10%,计算提升后的码率值即BRcur*(1+10%),并从提升后的码率值和码率上限值中选取较小者作为码率参数,即BR=min{BRmax,BRcur*1.1}。
然后获取码率参数BR所属的目标码率区间所对应的目标帧率参数FR;再将码率参数BR和目标帧率参数FR发送至待调整摄像设备,待调整摄像设备根据接收到BR和FR分别调整码率和帧率。
当占用参数P等于75%,则获取当前调整周期内的平均输入带宽IB和平均输出带宽OB;如果IB≤OB*1.05,则按照上述P等于60%的情况提升码率。
当占用参数P等于85%,将当前码率大于码率下限值的摄像设备作为待调整摄像设备;并获取当前调整周期内的平均输入带宽IB和平均输出带宽OB;如果IB≥OB*s,则计算待定降低比例Pd=(IB-OB)/IB,并根据Pd、Pdmin和Pdmax确定出目标降低比例Pdown。
然后按照其当前码率BRcur和目标降低比例Pdown,计算降低后的码率值即BRcur*(1-Pdown),并从降低后的码率值和码率下限值中选取较大者作为码率参数,即BR=max{BRmin,BRcur*(1-Pdown)};
然后获取码率参数BR所属的目标码率区间所对应的目标帧率参数FR;再将码率参数BR和目标帧率参数FR发送至待调整摄像设备,待调整摄像设备根据接收到BR和FR分别调整码率和帧率。
当占用参数P等于95%,将当前码率大于码率下限值的摄像设备作为待调整摄像设备;并按照上述P等于85%的情况降低码率。
为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种码率调整装置的实现方式。请参阅图7,图7为本发明实施例提供的一种码率调整装置300的功能模块图。需要说明的是,本实施例所提供的码率调整装置300,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该码率调整装置300包括:
获取模块310,用于按照预设调整周期定期获取表示缓存空间使用情况的占用参数;
确定模块330,用于根据占用参数和每个摄像设备的当前码率,确定待调整摄像设备和码率参数;
调整模块350,用于将码率参数发送至待调整摄像设备,以使待调整摄像设备按照码率参数调整码率。
可选地,调整模块350模块还用于:确定码率参数所属的目标码率区间;获取目标码率区间对应的帧率参数,得到目标帧率参数;将码率参数和目标帧率参数发送至待调整摄像设备,以使待调整摄像设备按照码率参数调整码率和按照目标帧率参数调整帧率。
可选地,确定模块330模块还用于:当占用参数小于或者等于调节阈值,将当前码率小于码率上限值的摄像设备作为待调整摄像设备;根据占用参数、码率上限值和待调整摄像设备的当前码率确定码率参数;
当占用参数大于调节阈值,将当前码率大于码率下限值的摄像设备作为待调整摄像设备;根据占用参数、码率下限值和待调整摄像设备的当前码率确定码率参数。
可选地,确定模块330模块还用于:获取当前调整周期的平均输入带宽和平均输出带宽,平均输入带宽表示在当前调整周期内接收的平均视频数据量,平均输入带宽表示在当前调整周期内转存至存储空间的平均视频数据量;
当占用参数小于观察阈值,则按照预设提升比例和待调整摄像设备的当前码率计算提升后的码率值,并将提升后的码率值和码率上限值中的较小者作为码率参数;
当占用参数大于或者等于观察阈值,则计算平均输出带宽与预设系数的乘积,并比较乘积与平均输入带宽的大小;若平均输入带宽小于或者等于乘积,则按照预设提升比例和待调整摄像设备的当前码率计算提升后的码率值,并将提升后的码率值和码率上限值中的较小者作为码率参数。
可选地,确定模块330模块还用于:获取当前调整周期的平均输入带宽和平均输出带宽,平均输入带宽表示在当前调整周期内接收的平均视频数据量,平均输入带宽表示在当前调整周期内转存至存储空间的平均视频数据量;
当占用参数大于或者等于强制阈值,则根据平均输入带宽、平均输出带宽、预设降低下限比例和预设降低上限比例,确定目标降低比例,并根据目标降低比例、码率下限值和待调整摄像设备的当前码率确定码率参数;
当占用参数小于强制阈值,则计算平均输出带宽与预设系数的乘积,并比较乘积与平均输入带宽的大小;若平均输入带宽大于或者等于乘积,则根据平均输入带宽、平均输出带宽、预设降低下限比例和预设降低上限比例,确定目标降低比例,并根据目标降低比例、码率下限值和待调整摄像设备的当前码率确定码率参数。
可选地,确定模块330模块还用于:将平均输入带宽与平均输出带宽相减得到差值,并计算差值与平均输入带宽的比值,得到待定降低比例;
若待定降低比例属于预设降低下限比例和预设降低上限比例之间,则将待定降低比例作为目标降低比例;
若待定降低比例小于预设降低下限比例,则将预设降低下限比例作为目标降低比例;
若待定降低比例大于预设降低上限比例,则将预设降低上限比例作为目标降低比例。
可选地,确定模块330模块还用于:根据目标降低比例和待调整摄像设备的当前码率,计算降低后的码率值;对降低后的码率值和码率下限值进行比较;
若降低后的码率值大于码率下限值,则将降低后的码率值作为码率参数;
若降低后的码率值小于或者等于码率下限值,则将码率下限值作为码率参数。
本发明实施例还提供了一种服务器,包括处理器120和存储器130,存储器130存储有计算机程序,处理器执行计算机程序时,实现上述实施例揭示的码率调整方法。
本发明实施例还提供了一种存储介质,其上存储有计算机程序,该计算机程序被处理器120执行时实现本发明实施例揭示的码率调整方法。
综上,本发明实施例提供的码率调整方法、装置、服务器和存储介质。服务器与多个摄像设备通信连接,服务器具有存储空间和包括多个缓存块的缓存空间,缓存空间用于缓存服务器接收的每个摄像设备发送的视频数据,存储空间用于在缓存空间无空闲缓存块时,转存缓存空间中已缓存的视频数据;按照预设调整周期定期获取表示缓存空间使用情况的占用参数;并根据占用参数和每个摄像设备的当前码率,确定待调整摄像设备和码率参数;然后将码率参数发送至待调整摄像设备,以使待调整摄像设备按照码率参数调整码率。通过定期获取缓存空间的使用情况对码率进行动态调整,平衡码率与缓存空间的使用速率,从而保证了视频的稳定性,有效地避免了视频存储异常。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种码率调整方法,其特征在于,应用于服务器,所述服务器与多个摄像设备通信连接,所述服务器具有存储空间和包括多个缓存块的缓存空间,所述缓存空间用于缓存所述服务器接收的每个所述摄像设备发送的视频数据,所述存储空间用于在所述缓存空间无空闲缓存块时,转存所述缓存空间中已缓存的视频数据,所述方法包括:
按照预设调整周期定期获取表示所述缓存空间使用情况的占用参数;
根据所述占用参数和每个所述摄像设备的当前码率,确定待调整摄像设备和码率参数;
将所述码率参数发送至所述待调整摄像设备,以使所述待调整摄像设备按照所述码率参数调整码率;
所述占用参数为已使用缓存块的个数与全部缓存块的总个数的百分比,所述服务器预存有调节阈值、码率上限值和码率下限值;
所述根据所述占用参数和每个所述摄像设备的当前码率,确定待调整摄像设备和码率参数的步骤,包括:
当所述占用参数小于或者等于所述调节阈值,将所述当前码率小于所述码率上限值的摄像设备作为所述待调整摄像设备;
根据所述占用参数、所述码率上限值和所述待调整摄像设备的当前码率确定所述码率参数;
当所述占用参数大于所述调节阈值,将所述当前码率大于所述码率下限值的摄像设备作为所述待调整摄像设备;
根据所述占用参数、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数;
所述服务器还预存有观察阈值、预设提升比例和预设系数;所述观察阈值小于所述调节阈值;
所述根据所述占用参数、所述码率上限值和所述待调整摄像设备的当前码率确定所述码率参数的步骤,包括:
获取当前调整周期的平均输入带宽和平均输出带宽,所述平均输入带宽表示在所述当前调整周期内接收的平均视频数据量,所述平均输入带宽表示在所述当前调整周期内转存至所述存储空间的平均视频数据量;
当所述占用参数小于所述观察阈值,则按照所述预设提升比例和所述待调整摄像设备的当前码率计算提升后的码率值,并将所述提升后的码率值和所述码率上限值中的较小者作为所述码率参数;
当所述占用参数大于或者等于所述观察阈值,则计算所述平均输出带宽与预设系数的乘积,并比较所述乘积与所述平均输入带宽的大小;
若所述平均输入带宽小于或者等于所述乘积,则按照所述预设提升比例和所述待调整摄像设备的当前码率计算提升后的码率值,并将所述提升后的码率值和所述码率上限值中的较小者作为所述码率参数。
2.根据权利要求1所述的方法,其特征在于,所述服务器预存有多个码率区间和每个所述码率区间对应的帧率参数;
在所述根据所述占用参数和每个所述摄像设备的当前码率,确定待调整摄像设备和码率参数的步骤之后,所述方法还包括:
确定所述码率参数所属的目标码率区间;
获取所述目标码率区间对应的帧率参数,得到目标帧率参数;
将所述码率参数和所述目标帧率参数发送至所述待调整摄像设备,以使所述待调整摄像设备按照所述码率参数调整码率和按照所述目标帧率参数调整帧率。
3.根据权利要求1所述的方法,其特征在于,所述服务器还预存有强制阈值、预设降低下限比例、预设降低上限比例和预设系数;所述强制阈值大于所调节阈值;
所述根据所述占用参数、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数的步骤,包括:
获取当前调整周期的平均输入带宽和平均输出带宽,所述平均输入带宽表示在所述当前调整周期内接收的平均视频数据量,所述平均输入带宽表示在所述当前调整周期内转存至所述存储空间的平均视频数据量;
当所述占用参数大于或者等于所述强制阈值,则根据所述平均输入带宽、平均输出带宽、所述预设降低下限比例和预设降低上限比例,确定目标降低比例,并根据所述目标降低比例、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数;
当所述占用参数小于所述强制阈值,则计算所述平均输出带宽与预设系数的乘积,并比较所述乘积与所述平均输入带宽的大小;
若所述平均输入带宽大于或者等于所述乘积,则根据所述平均输入带宽、平均输出带宽、所述预设降低下限比例和预设降低上限比例,确定目标降低比例,并根据所述目标降低比例、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数。
4.根据权利要求3所述的方法,其特征在于,所述根据所述平均输入带宽、平均输出带宽、所述预设降低下限比例和预设降低上限比例,确定目标降低比例的步骤,包括:
将所述平均输入带宽与所述平均输出带宽相减得到差值,并计算所述差值与所述平均输入带宽的比值,得到待定降低比例;
若所述待定降低比例属于所述预设降低下限比例和所述预设降低上限比例之间,则将所述待定降低比例作为所述目标降低比例;
若所述待定降低比例小于所述预设降低下限比例,则将所述预设降低下限比例作为所述目标降低比例;
若所述待定降低比例大于所述预设降低上限比例,则将所述预设降低上限比例作为所述目标降低比例。
5.根据权利要求3所述的方法,其特征在于,所述根据所述目标降低比例、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数的步骤,包括:
根据所述目标降低比例和所述待调整摄像设备的当前码率,计算降低后的码率值;
对所述降低后的码率值和所述码率下限值进行比较;
若所述降低后的码率值大于所述码率下限值,则将所述降低后的码率值作为所述码率参数;
若所述降低后的码率值小于或者等于所述码率下限值,则将所述码率下限值作为所述码率参数。
6.一种码率调整装置,其特征在于,应用于服务器,所述服务器与多个摄像设备通信连接,所述服务器具有存储空间和包括多个缓存块的缓存空间,所述缓存空间用于缓存所述服务器接收的每个所述摄像设备发送的视频数据,所述存储空间用于在所述缓存空间无空闲缓存块时,转存所述缓存空间中已缓存的视频数据,所述装置包括:
获取模块,用于按照预设调整周期定期获取表示所述缓存空间使用情况的占用参数;
确定模块,用于根据所述占用参数和每个所述摄像设备的当前码率,确定待调整摄像设备和码率参数;
调整模块,用于将所述码率参数发送至所述待调整摄像设备,以使所述待调整摄像设备按照所述码率参数调整码率;
所述占用参数为已使用缓存块的个数与全部缓存块的总个数的百分比,所述服务器预存有调节阈值、码率上限值和码率下限值;所述确定模块还用于:当所述占用参数小于或者等于所述调节阈值,将所述当前码率小于所述码率上限值的摄像设备作为所述待调整摄像设备;根据所述占用参数、所述码率上限值和所述待调整摄像设备的当前码率确定所述码率参数;当所述占用参数大于所述调节阈值,将所述当前码率大于所述码率下限值的摄像设备作为所述待调整摄像设备;根据所述占用参数、所述码率下限值和所述待调整摄像设备的当前码率确定所述码率参数;
所述服务器还预存有观察阈值、预设提升比例和预设系数;所述观察阈值小于所述调节阈值;所述确定模块还用于:获取当前调整周期的平均输入带宽和平均输出带宽,所述平均输入带宽表示在所述当前调整周期内接收的平均视频数据量,所述平均输入带宽表示在所述当前调整周期内转存至所述存储空间的平均视频数据量;当所述占用参数小于所述观察阈值,则按照所述预设提升比例和所述待调整摄像设备的当前码率计算提升后的码率值,并将所述提升后的码率值和所述码率上限值中的较小者作为所述码率参数;当所述占用参数大于或者等于所述观察阈值,则计算所述平均输出带宽与预设系数的乘积,并比较所述乘积与所述平均输入带宽的大小;若所述平均输入带宽小于或者等于所述乘积,则按照所述预设提升比例和所述待调整摄像设备的当前码率计算提升后的码率值,并将所述提升后的码率值和所述码率上限值中的较小者作为所述码率参数。
7.一种服务器,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时,实现权利要求1至5中任一项所述的方法。
8.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,该计算机程序被处理器执行时,实现权利要求1至5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210768344.1A CN114979726B (zh) | 2022-06-30 | 2022-06-30 | 码率调整方法、装置、服务器和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210768344.1A CN114979726B (zh) | 2022-06-30 | 2022-06-30 | 码率调整方法、装置、服务器和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114979726A CN114979726A (zh) | 2022-08-30 |
CN114979726B true CN114979726B (zh) | 2023-09-26 |
Family
ID=82967630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210768344.1A Active CN114979726B (zh) | 2022-06-30 | 2022-06-30 | 码率调整方法、装置、服务器和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114979726B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115733981A (zh) * | 2022-11-22 | 2023-03-03 | 天地伟业技术有限公司 | 一种码流控制方法、装置及电子设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101771492A (zh) * | 2008-12-29 | 2010-07-07 | 华为技术有限公司 | 调整流媒体码率的方法和装置 |
CN105025249A (zh) * | 2014-04-22 | 2015-11-04 | ***通信集团江苏有限公司 | 视频监控数据传输控制方法、装置及视频监控*** |
CN106162229A (zh) * | 2015-04-10 | 2016-11-23 | 北京大学 | 改善公平性的平滑码率自适应方法及装置 |
CN107333169A (zh) * | 2017-06-30 | 2017-11-07 | 郑州云海信息技术有限公司 | 一种客户端缓存调整方法及装置 |
WO2018000567A1 (zh) * | 2016-06-30 | 2018-01-04 | 宇龙计算机通信科技(深圳)有限公司 | 一种帧率调整的方法及装置 |
CN109040855A (zh) * | 2018-09-03 | 2018-12-18 | 重庆邮电大学 | 一种无线dash流媒体码率平滑自适应传输方法 |
CN110769296A (zh) * | 2019-10-30 | 2020-02-07 | 杭州叙简科技股份有限公司 | 一种传输时基于本地缓存的视频码率自适应调节方式 |
CN112637631A (zh) * | 2020-12-17 | 2021-04-09 | 清华大学 | 码率确定方法、装置、电子设备和存储介质 |
WO2022111111A1 (zh) * | 2020-11-26 | 2022-06-02 | Oppo广东移动通信有限公司 | 音频传输方法、装置、智能设备及计算机可读取存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120195356A1 (en) * | 2011-01-31 | 2012-08-02 | Apple Inc. | Resource usage control for real time video encoding |
JP2017157903A (ja) * | 2016-02-29 | 2017-09-07 | 富士ゼロックス株式会社 | 情報処理装置 |
-
2022
- 2022-06-30 CN CN202210768344.1A patent/CN114979726B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101771492A (zh) * | 2008-12-29 | 2010-07-07 | 华为技术有限公司 | 调整流媒体码率的方法和装置 |
CN105025249A (zh) * | 2014-04-22 | 2015-11-04 | ***通信集团江苏有限公司 | 视频监控数据传输控制方法、装置及视频监控*** |
CN106162229A (zh) * | 2015-04-10 | 2016-11-23 | 北京大学 | 改善公平性的平滑码率自适应方法及装置 |
WO2018000567A1 (zh) * | 2016-06-30 | 2018-01-04 | 宇龙计算机通信科技(深圳)有限公司 | 一种帧率调整的方法及装置 |
CN107333169A (zh) * | 2017-06-30 | 2017-11-07 | 郑州云海信息技术有限公司 | 一种客户端缓存调整方法及装置 |
CN109040855A (zh) * | 2018-09-03 | 2018-12-18 | 重庆邮电大学 | 一种无线dash流媒体码率平滑自适应传输方法 |
CN110769296A (zh) * | 2019-10-30 | 2020-02-07 | 杭州叙简科技股份有限公司 | 一种传输时基于本地缓存的视频码率自适应调节方式 |
WO2022111111A1 (zh) * | 2020-11-26 | 2022-06-02 | Oppo广东移动通信有限公司 | 音频传输方法、装置、智能设备及计算机可读取存储介质 |
CN112637631A (zh) * | 2020-12-17 | 2021-04-09 | 清华大学 | 码率确定方法、装置、电子设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
罗际炜;瞿涛;邓徳祥.嵌入式多通道无线视频传输的码率自适应算法.计算机应用.(04), * |
Also Published As
Publication number | Publication date |
---|---|
CN114979726A (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109600610B (zh) | 一种数据编码方法、终端及计算机可读存储介质 | |
WO2012154808A2 (en) | Providing adaptive media optimization | |
CN104350789B (zh) | 功率调节装置及方法 | |
CN111263153B (zh) | 视频编码方法、装置、设备及存储介质 | |
CN114979726B (zh) | 码率调整方法、装置、服务器和存储介质 | |
CN111107017A (zh) | 一种交换机报文拥塞的处理方法、设备以及存储介质 | |
CN112019384A (zh) | 带宽预测方法、装置、设备及存储介质 | |
CN110690988A (zh) | 带宽控制方法、带宽控制平台、服务器及存储介质 | |
US20160234118A1 (en) | Method, System and Device for Managing Congestion in Network Services | |
CN114466194A (zh) | 视频编码的调整方法和装置、存储介质及电子设备 | |
CN107306200B (zh) | 网络故障预警方法和用于网络故障预警的网关 | |
CN112866646A (zh) | 一种基于蓝牙Mesh的智慧社区数据采集方法及*** | |
CN110324681B (zh) | 多媒体数据的切片方法、装置、存储介质及传输*** | |
US20130007206A1 (en) | Transmission apparatus, control method for transmission apparatus, and storage medium | |
CN112565016A (zh) | 异常时延的定位方法、***、装置、电子设备及存储介质 | |
CN112533029B (zh) | 一种视频分时传输方法、摄像装置、***和存储介质 | |
CN108429705B (zh) | 一种链路带宽分配方法及装置 | |
CN115767149A (zh) | 一种视频数据的传输方法和装置 | |
CN112737971B (zh) | 数据处理方法、装置、存储介质及网络设备 | |
JP6999633B2 (ja) | ビデオ記録システム内の複数のカメラの間での適応的ストレージ | |
CN114866763A (zh) | 一种视频质量的评估方法、装置、终端设备和存储介质 | |
CN113207011A (zh) | 一种短视频处理用预加载方法 | |
KR102101507B1 (ko) | 무손실 네트워크 영상 전송 방법 및 장치 | |
EP2025174A1 (fr) | Utilisation d'un canal de retour pour la diffusion d'images | |
CN116744465A (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 |