CN109120933B - 动态调整码率的方法、装置、设备及存储介质 - Google Patents

动态调整码率的方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN109120933B
CN109120933B CN201811186095.5A CN201811186095A CN109120933B CN 109120933 B CN109120933 B CN 109120933B CN 201811186095 A CN201811186095 A CN 201811186095A CN 109120933 B CN109120933 B CN 109120933B
Authority
CN
China
Prior art keywords
time stamp
encoding
video data
interval
adjusted
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
Application number
CN201811186095.5A
Other languages
English (en)
Other versions
CN109120933A (zh
Inventor
郭军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Kugou Computer Technology Co Ltd
Original Assignee
Guangzhou Kugou Computer Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Kugou Computer Technology Co Ltd filed Critical Guangzhou Kugou Computer Technology Co Ltd
Priority to CN201811186095.5A priority Critical patent/CN109120933B/zh
Publication of CN109120933A publication Critical patent/CN109120933A/zh
Application granted granted Critical
Publication of CN109120933B publication Critical patent/CN109120933B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing 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/234381Processing 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/266Channel 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/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了一种动态调整码率的方法、装置、设备及存储介质,属于编码技术领域。所述方法包括:获取待编码的视频数据,所述视频数据携带初始编码时间戳;按照预调整的编码时间戳间隔对所述视频数据的初始编码时间戳进行调整,得到调整后的视频数据,所述调整后的视频数据携带调整后的编码时间戳;将所述调整后的视频数据传输至编码器,所述编码器用于按照调整后的编码时间戳对所述调整后的视频数据进行编码。本发明在不重启编码器的前提下,实现了对码率的动态调整,简化了调整码率的操作,提高了效率。

Description

动态调整码率的方法、装置、设备及存储介质
技术领域
本发明涉及编码技术领域,特别涉及一种动态调整码率的方法、装置、设备及存储介质。
背景技术
随着多媒体技术的发展,通过视频采集传感器采集获得的原始视频的画质不断提高,相应地,高画质的原始视频包括的数据量同样较大。因此,通常需要对上述原始视频进行编码,以去除原始视频的冗余信息,降低原始视频的数据量,便于视频的传输及存储。
目前多采用编码器对原始视频进行编码。进行编码时,应设置编码器的码率等工作参数,并启动该编码器,则该编码器按照设置的码率对原始视频进行编码。其中,对于高版本的***,编码器可根据原始视频画面的复杂程度,在编码过程中对码率进行动态调整。
发明人发现相关技术至少存在以下问题:
对于低版本的***,在对码率进行调整时,需要重新对该编码器的码率进行设置,并重启该编码器,以使编码器按照新设置的码率对原始视频进行编码,操作过程繁琐,效率不高。
发明内容
本发明实施例提供了一种动态调整码率的方法、装置、设备及存储介质,以解决相关技术对码率进行调整时操作过程繁琐,效率不高的问题。所述技术方案如下:
一方面,提供了一种动态调整码率的方法,所述方法包括:
获取待编码的视频数据,所述视频数据携带初始编码时间戳;
按照预调整的编码时间戳间隔对所述视频数据的初始编码时间戳进行调整,得到调整后的视频数据,所述调整后的视频数据携带调整后的编码时间戳;
将所述调整后的视频数据传输至编码器,所述编码器用于按照调整后的编码时间戳对所述调整后的视频数据进行编码。
可选地,所述方法还包括:检测网络通信质量,根据检测结果确定所述预调整的编码时间戳间隔;
或者,获取设置的编码时间戳间隔,将所述设置的编码时间戳间隔作为所述预调整的编码时间戳间隔。
可选地,所述获取设置的编码时间戳间隔,包括:显示编码时间戳间隔设置界面,通过所述编码时间戳间隔设置界面获取设置的编码时间戳间隔。
可选地,所述预调整的编码时间戳间隔为第一编码时间戳间隔,所述第一编码时间戳间隔大于所述初始编码时间戳对应的初始编码时间戳间隔;
所述按照预调整的编码时间戳间隔对所述视频数据的初始编码时间戳进行调整,包括:按照所述第一编码时间戳间隔对所述视频数据的初始编码时间戳进行调整。
可选地,所述预调整的编码时间戳间隔为第二编码时间戳间隔,所述第二编码时间戳间隔小于所述初始编码时间戳对应的初始编码时间戳间隔;
所述按照预调整的编码时间戳间隔对所述视频数据的初始编码时间戳进行调整,包括:按照所述第二编码时间戳间隔对所述视频数据的初始编码时间戳进行调整。
一方面,提供了一种动态调整码率的装置,所述装置包括:
第一获取模块,用于获取待编码的视频数据,所述视频数据携带初始编码时间戳;
调整模块,用于按照预调整的编码时间戳间隔对所述视频数据的初始编码时间戳进行调整,得到调整后的视频数据,所述调整后的视频数据携带调整后的编码时间戳;
传输模块,用于将所述调整后的视频数据传输至编码器,所述编码器用于按照调整后的编码时间戳对所述调整后的视频数据进行编码。
可选地,所述装置还包括:检测模块,用于检测网络通信质量,根据检测结果确定所述预调整的编码时间戳间隔;
或者,第二获取模块,用于获取设置的编码时间戳间隔,将所述设置的编码时间戳间隔作为所述预调整的编码时间戳间隔。
可选地,所述第二获取模块,包括:显示单元,用于显示编码时间戳间隔设置界面;
获取单元,用于通过所述编码时间戳设置界面获取设置的编码时间戳间隔。
可选地,所述预调整的编码时间戳间隔为第一编码时间戳间隔,所述第一编码时间戳间隔小于所述初始编码时间戳对应的初始编码时间戳间隔;
所述调整模块,用于按照所述第一编码时间戳间隔对所述视频数据的初始编码时间戳进行调整。
可选地,所述预调整的编码时间戳间隔为第二编码时间戳间隔,所述第二编码时间戳间隔小于所述初始编码时间戳对应的初始编码时间戳间隔;
所述调整模块,用于按照所述第二编码时间戳间隔对所述视频数据的初始编码时间戳进行调整。
一方面,提供了一种动态调整码率的设备,所述设备包括存储器及处理器;所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行,以实现本发明实施例提供的动态调整码率的方法。
另一方面,提供了一种动态调整码率的存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现本发明实施例提供的动态调整码率的方法。
本发明实施例提供的技术方案带来的有益效果至少包括:
通过按照预调整的编码时间戳间隔对视频数据携带的初始编码时间戳进行调整,获得调整后的视频数据,并通过编码器按照调整后的编码时间戳对该调整后的视频数据进行编码,使得编码器输出的编码后的视频数据的码率发生改变,因而在不重启编码器的前提下,实现了对码率的动态调整,简化了调整码率的操作,提高了效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的实施环境示意图;
图2是本发明实施例提供的动态调整码率的方法流程图;
图3是本发明实施例提供的动态调整码率的方法流程图;
图4是本发明实施例提供的动态调整码率的方法流程图;
图5是本发明实施例提供的动态调整码率的装置结构示意图;
图6是本发明实施例提供的动态调整码率的装置结构示意图;
图7是本发明实施例提供的动态调整码率的装置结构示意图;
图8是本发明实施例提供的终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
随着多媒体技术的发展,通过视频采集传感器采集获得的原始视频的画质不断提高,相应地,高画质的原始视频包括的数据量同样较大。因此,通常需要对上述原始视频进行编码,以去除原始视频的冗余信息,降低原始视频的数据量,便于视频的传输及存储。
相关技术采用编码器对原始视频进行编码时,提前设置编码器的码率等工作参数,并启动该编码器,则该编码器按照设置的码率对原始视频进行编码。其中,对于高版本的***(例如版本高于Android 19的***),编码器可根据原始视频画面的复杂程度,在编码过程中对码率进行动态调整。然而对于低版本的***(例如版本低于Android 19的***),在对码率进行调整时,需要重新对该编码器的码率进行设置,并重启该编码器,以使编码器按照新设置的码率对原始视频进行编码,操作过程繁琐,效率不高。
为此,本发明实施例提供了一种无须重启编码器的方式来动态调整码率的方法,该动态调整码率的方法可应用于如图1所示的实施环境中。图1中,包括客户端11、编码器12、至少一个输入缓冲区13和至少一个输出缓冲区14。
客户端11首先获取至少一个空白的输入缓冲区13,并向该至少一个空白的输入缓冲区13中填入待编码的数据;编码器12从该输入缓冲区13中获取待编码的数据,对该待编码的数据进行编码;完成编码后,编码器12将编码后的数据填入至少一个空白的输出缓冲区14,客户端11从该输出缓冲区14中即可获取编码后的数据。
客户端11获取编码后的数据后,可对其进行播放或者传输等操作。此外,还可释放输入缓冲区13中被填入的待编码的数据,以及输出缓冲区14中被填入的编码后的数据,完成释放后的输出缓冲区13和输出缓冲区14重新变为可被填入数据的空白缓冲区,客户端11和编码器12可重新对其进行使用。
基于上述图1所示的实施环境,参见图2,本发明实施例提供了一种动态调整码率的方法,该方法可应用于图1所示实施环境的客户端11中。如图2所示,该方法包括:
步骤201,获取待编码的视频数据,该视频数据携带初始编码时间戳;
其中,该待编码的视频数据可以为通过摄像机或其他采集设备采集到的原始视频数据,该原始视频数据为未经编码的视频数据;该待编码的视频数据也可以为通过解码器完成解码的视频文件,通过解码器进行解码前,该视频文件为已进行编码的原始视频数据,解码器完成解码后,则可重新获得原始视频数据,并按不同的编码方式,将该原始视频数据作为待编码的视频数据,再次进行编码。
该视频数据携带初始编码时间戳,该初始编码时间戳为编码过程中的时间指标,编码器可按照该初始编码时间戳对待编码的视频数据进行编码:编码器根据该初始编码时间戳确认其对应的视频数据的时间长度,进而完成对视频数据的编码。例如,当编码器在某一时刻获取到1s(秒)的初始编码时间戳,则可确认已获取到时间长度为1s的视频数据,然后,编码器可将1s内的视频数据进行编码。
除了初始编码时间戳,该视频数据还可以携带有色度、亮度和帧率等数据信息。其中,色度、亮度均为人体的感官指标,而帧率是1秒钟视频包括的静止画面的帧数,在进行播放时,对上述静止画面进行快速连续的播放,即可在人眼中形成运动的假象,并且,1秒钟内播放的静止画面的帧数越多,形成的运动假象就越流畅,可以说,帧率是一个视频流畅程度的评价指标。
在采集过程中,通过摄像头或其他采集设备可对帧率进行设置。以摄像头为例,设置摄像头的帧率为20fps(frames per second,帧每秒),则该摄像头每秒钟采集20帧静止画面数据。其中,每帧静止画面数据均可对应一个初始编码时间戳,且初始编码时间戳通常以ms(毫秒)为单位。例如,摄像头在第1秒内采集的20帧静止画面数据,则第1帧被采集的静止画面数据,其初始编码时间戳为50ms,第2帧被采集的静止画面数据,其初始编码时间戳为100ms,以此类推,第20帧被采集的静止画面数据,其初始编码时间戳为1000ms。
步骤202,按照预调整的编码时间戳间隔对视频数据的初始编码时间戳进行调整,得到调整后的视频数据,该调整后的视频数据携带调整后的编码时间戳;
其中,通过对视频数据的初始编码时间戳进行调整,改变视频数据的每个初始编码时间戳之间的间隔,上述调整过程可多次进行,使得调整后的编码时间戳间隔为预调整的编码时间戳间隔。
编码器是根据编码时间戳确认获取到的视频数据的时间长度的,因此,对于某一时间长度的视频数据,按预调整的编码时间戳间隔对该视频数据初始编码时间戳进行调整,可以改变编码器对该视频数据的时间长度的判定。例如,对于时间长度为1s的视频数据,一帧视频数据的初始编码时间戳为500ms,一帧视频数据的初始编码时间戳为1s,则将该500ms的初始编码时间戳调整为1s,将该1s的初始编码时间戳调整为2s,即初始编码时间戳间隔为500ms,调整后的编码时间戳间隔为1s,则编码器获取该调整后的编码时间戳后,会将该视频数据的时间长度判定为2s,而实际上,该视频数据的时间长度仍为1s。
步骤203,将调整后的视频数据传输至编码器,该编码器用于按照调整后的编码时间戳对该调整后的视频数据进行编码。
其中,完成对一个编码器的创建后,需要设置该编码器的码率等工作参数,并启动该编码器,则该编码器根据设置的码率对原始视频进行编码。需要说明的是,上述码率为采用该编码器对待编码的视频数据进行编码后,该编码器每秒钟输出的被编码的视频数据的大小。例如,设置编码器的码率为100kbps(kilo bits per second,千比特每秒),则该编码器对待编码的视频数据进行1s的编码后,输出的被编码的视频数据大小为100kb(kilobits,千比特)。
接下来,仍以初始编码时间戳为500ms和1s、调整后的编码时间戳为1s和2s的两帧视频数据为例,对本发明实施例提供的动态调整码率的方法进行说明:
假设编码器的码率被设置为100kbps,即编码器1s内编码出来的数据是100kb;初始编码时间戳为500ms和1s,即一秒钟编码两帧视频数据,数据大小为100kb,每帧视频数据平均能分配到50kb,实际码率为50kb/帧x2帧/s=100kbps;调整后的编码时间戳为1s和2s,即一秒钟编码一帧视频数据,数据大小为100kb,每帧编码出来的数据平均能分配到100kb,而实际每秒钟有两帧视频数据,即实际码率为100kb/帧x2帧/s=200kbps。
按照调整后的编码时间戳对视频数据进行编码,使得编码后的视频数据的实际码率发生改变,因而在不重启编码器的前提下,实现了对编码后的视频数据码率的动态调整。
在一种可选的实施方式中,参见图3,该方法还包括:
步骤204,检测网络通信质量,根据检测结果确定预调整的编码时间戳间隔。
在一种可选的实施方式中,参见图4,该方法还包括:
步骤205,获取设置的编码时间戳间隔,将设置的编码时间戳间隔作为预调整的编码时间戳间隔。
通过摄像头或其他采集设备采集的原始视频数据,通常携带色度、亮度和帧率等数据信息,而编码器进行编码的基本原理在于,去除原始视频数据携带的冗余数据信息,进而降低该原始视频的数据量,以便于视频的存储及传输。其中,冗余数据信息包括易被人眼忽略的色度信息、人眼无法进行辨别的亮度信息等等。
由此可见,在编码过程中去除的冗余数据信息量越少,被编码后的视频数据量就越大,则被编码后的视频数据的码率越高,即被编码后的视频数据与原始视频数据的画质差越小;同理,在编码过程中去除的冗余数据信息量越多,被编码后的视频数据量就越小,则被编码后的视频数据的码率越低,即被编码后的视频数据与原始视频数据的画质差越大。
若仅从画质角度分析,视频数据的码率越大越好;但相应地,高码率的视频数据对网络传输速度的需求也越高,一旦网络传输速度低于视频数据的码率,在存储及传输过程中就会出现卡顿甚至停滞等现象,造成传输效率的降低。
因此,本发明实施例在确定预调整的编码时间戳间隔前,先对网络通信质量进行检测,根据检测结果来确定预调整的编码时间戳间隔,以防止在存储及传输过程中出现卡顿、停滞等现象;或者,本发明实施例也可直接获取用户自定义的预调整的编码时间戳间隔,从而根据预调整的时间戳间隔对初始编码时间戳进行调整,使得视频数据的码率满足用户的需求。
可选地,本实施例可显示编码时间戳间隔设置界面,该设置界面提供输入框,用户可通过该设置界面的输入框键入自定义的预调整的时间戳间隔;或者,该设置界面提供可选的预调整的时间戳间隔,用户也可从中选择预调整的时间戳间隔。
在一种可选的实施方式中,预调整的编码时间戳间隔为第一编码时间戳间隔,该第一编码时间戳间隔大于初始编码时间戳对应的初始编码时间戳间隔;
则按照预调整的编码时间戳间隔对视频数据的初始编码时间戳进行调整,包括:按照第一编码时间戳间隔对该视频数据的初始编码时间戳进行调整。
以编码器的码率被设置为100kbps为例,对该调整过程进行说明:
表1
50 100 150 200 250 300 350 400 450 500
550 600 650 700 750 800 850 900 950 1000
表2
100 200 300 400 500 600 700 800 900 1000
1100 1200 1300 1400 1500 1600 1700 1800 1900 2000
编码器的码率被设置为100kbps,即编码器1s内编码出来的数据是100kb;初始编码时间戳参见表1,即一秒钟编码二十帧视频数据,数据大小为100kb,每帧视频数据平均能分配到5kb,实际码率为5kb/帧x20帧/s=100kbps;调整后的编码时间戳参见表2,即一秒钟编码十帧视频数据,数据大小为100kb,每帧编码出来的数据平均能分配到10kb,而实际每秒钟有二十帧视频数据,即实际码率为10kb/帧x20帧/s=200kbps。
因此,按照第一编码时间戳间隔,即增大初始编码时间戳之间的间隔,对视频数据的初始编码时间戳进行调整,可以使得输出的视频数据的码率升高。
可选地,预调整的编码时间戳间隔也可以为第二编码时间戳间隔,该第二编码时间戳间隔小于初始编码时间戳对应的初始编码时间戳间隔;
则按照预调整的编码时间戳间隔对该视频数据的初始编码时间戳进行调整,包括:按照第二编码时间戳间隔对该视频数据的初始编码时间戳进行调整。
接下来,仍以编码器的码率被设置为100kbps为例,对该调整过程进行说明;
表3
25 50 75 100 125 150 175 200 225 250
275 300 325 350 375 400 425 450 475 500
525 550 575 600 625 650 675 700 725 750
775 800 825 850 875 900 925 950 975 1000
编码器的码率被设置为100kbps,即编码器1s内编码出来的数据是100kb;初始编码时间戳参见表1,即一秒钟编码二十帧视频数据,数据大小为100kb,每帧视频数据平均能分配到5kb,实际码率为5kb/帧x20帧/s=100kbps;调整后的编码时间戳参见表3,即一秒钟编码四十帧视频数据,数据大小为100kb,每帧编码出来的数据平均能分配到2.5kb,而实际每秒钟有二十帧视频数据,即实际码率为2.5kb/帧x20帧/s=50kbps。
因此,按照第二编码时间戳间隔,即减小初始编码时间戳之间的间隔,对视频数据的初始编码时间戳进行调整,可以使得输出的视频数据的码率降低。
综上所述,本发明实施例通过按照预调整的编码时间戳间隔对视频数据携带的初始编码时间戳进行调整,获得调整后的视频数据,并通过编码器按照调整后的编码时间戳对该调整后的视频数据进行编码,使得编码器输出的编码后的视频数据的码率发生改变,因而在不重启编码器的前提下,实现了对码率的动态调整。
其中,将初始编码时间戳间隔调大,可使视频数据的码率升高;将初始编码时间戳间隔调小,可使视频数据的码率降低。
进一步地,本发明实施例可根据网络通信质量的检测结果确定编码时间戳间隔的预调整方案,使得编码后的视频数据的码率与网络传输能力相匹配,避免了卡顿等现象的发生;本发明实施例还可获取用户自定义设置的编码时间戳间隔,并将该自定义设置的编码时间戳间隔作为编码时间戳间隔的预调整方案,进而满足了用户对于视频数据码率的需求。
基于相同的发明构思,本发明实施例提供了一种动态调整码率的装置,如图5所示,该装置包括:
第一获取模块501,用于获取待编码的视频数据,该视频数据携带初始编码时间戳;
调整模块502,用于按照预调整的编码时间戳间隔对该视频数据的初始编码时间戳进行调整,得到调整后的视频数据,该调整后的视频数据携带调整后的编码时间戳;
传输模块503,用于将该调整后的视频数据传输至编码器,该编码器用于按照调整后的编码时间戳对该调整后的视频数据进行编码。
可选地,该装置还包括:如图6所示,检测模块504,用于检测网络通信质量,根据检测结果确定该预调整的编码时间戳间隔;
可选地,该装置还包括:如图7所示,第二获取模块505,用于获取设置的编码时间戳间隔,将该设置的编码时间戳间隔作为该预调整的编码时间戳间隔。
可选地,第二获取模块505,包括:显示单元,用于显示编码时间戳间隔设置界面;
获取单元,用于通过编码时间戳设置界面获取设置的编码时间戳间隔。
可选地,预调整的编码时间戳间隔为第一编码时间戳间隔,该第一编码时间戳间隔小于初始编码时间戳对应的初始编码时间戳间隔;
调整模块502,用于按照该第一编码时间戳间隔对该视频数据的初始编码时间戳进行调整。
可选地,预调整的编码时间戳间隔为第二编码时间戳间隔,该第二编码时间戳间隔小于初始编码时间戳对应的初始编码时间戳间隔;
调整模块502,用于按照该第二编码时间戳间隔对该视频数据的初始编码时间戳进行调整。
综上所述,本发明实施例提供的装置,通过按照预调整的编码时间戳间隔对视频数据携带的初始编码时间戳进行调整,获得调整后的视频数据,并通过编码器按照调整后的编码时间戳对该调整后的视频数据进行编码,使得编码器输出的编码后的视频数据的码率发生改变,因而在不重启编码器的前提下,实现了对码率的动态调整。
其中,将初始编码时间戳间隔调大,可使视频数据的码率升高;将初始编码时间戳间隔调小,可使视频数据的码率降低。
进一步地,可根据网络通信质量的检测结果确定编码时间戳间隔的预调整方案,使得编码后的视频数据的码率与网络传输能力相匹配,避免了卡顿等现象的发生;本发明还可获取用户自定义设置的编码时间戳间隔,并将该自定义设置的编码时间戳间隔作为编码时间戳间隔的预调整方案,进而满足了用户对于视频数据码率的需求。
参见图8,其示出了本公开实施例提供的一种动态调整码率的终端800的结构示意图。该终端800可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(MovingPicture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端800包括有:处理器801和存储器802。
处理器801可以包括一个或多个处理核心,比如4个核心处理器、8个核心处理器等。处理器801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本申请中方法实施例提供的动态调整码率的方法。
在一些实施例中,终端800还可选包括有:***设备接口803和至少一个***设备。处理器801、存储器802和***设备接口803之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口803相连。具体地,***设备包括:射频电路804、触摸显示屏808、摄像头806、音频电路807、定位组件808和电源809中的至少一种。
***设备接口803可被用于将I/O(Input/Output,输入/输出)相关的至少一个***设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和***设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和***设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线***、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及8G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置终端800的前面板;在另一些实施例中,显示屏805可以为至少两个,分别设置在终端800的不同表面或呈折叠设计;在再一些实施例中,显示屏805可以是柔性显示屏,设置在终端800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件806用于采集图像或视频。可选地,摄像头组件806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路808还可以包括耳机插孔。
定位组件808用于定位终端800的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件808可以是基于美国的GPS(GlobalPositioning System,全球定位***)、中国的北斗***、俄罗斯的格雷纳斯***或欧盟的伽利略***的定位组件。
电源809用于为终端800中的各个组件进行供电。电源809可以是交流电、直流电、一次性电池或可充电电池。当电源809包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端800还包括有一个或多个传感器810。该一个或多个传感器810包括但不限于:加速度传感器811、陀螺仪传感器812、压力传感器813、指纹传感器814、光学传感器818以及接近传感器816。
加速度传感器810可以检测以终端800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器811可以用于检测重力加速度在三个坐标轴上的分量。处理器801可以根据加速度传感器811采集的重力加速度信号,控制触摸显示屏808以横向视图或纵向视图进行用户界面的显示。加速度传感器811还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器812可以检测终端800的机体方向及转动角度,陀螺仪传感器812可以与加速度传感器811协同采集用户对终端800的3D动作。处理器801根据陀螺仪传感器812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器813可以设置在终端800的侧边框和/或触摸显示屏808的下层。当压力传感器813设置在终端800的侧边框时,可以检测用户对终端800的握持信号,由处理器801根据压力传感器813采集的握持信号进行左右手识别或快捷操作。当压力传感器813设置在触摸显示屏808的下层时,由处理器801根据用户对触摸显示屏808的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器814用于采集用户的指纹,由处理器801根据指纹传感器814采集到的指纹识别用户的身份,或者,由指纹传感器814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器814可以被设置终端800的正面、背面或侧面。当终端800上设置有物理按键或厂商Logo时,指纹传感器814可以与物理按键或厂商Logo集成在一起。
光学传感器815用于采集环境光强度。在一个实施例中,处理器801可以根据光学传感器815采集的环境光强度,控制触摸显示屏805的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏805的显示亮度;当环境光强度较低时,调低触摸显示屏805的显示亮度。在另一个实施例中,处理器801还可以根据光学传感器815采集的环境光强度,动态调整摄像头组件806的拍摄参数。
接近传感器816,也称距离传感器,通常设置在终端800的前面板。接近传感器816用于采集用户与终端800的正面之间的距离。在一个实施例中,当接近传感器816检测到用户与终端800的正面之间的距离逐渐变小时,由处理器801控制触摸显示屏805从亮屏状态切换为息屏状态;当接近传感器816检测到用户与终端800的正面之间的距离逐渐变大时,由处理器801控制触摸显示屏805从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图8中示出的结构并不构成对终端800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
基于相同的发明构思,本发明实施例提供了一种动态调整码率的设备,该设备包括存储器及处理器;该存储器中存储有至少一条指令,该至少一条指令由该处理器加载并执行,以实现本发明实施例提供的动态调整码率的方法。
基于相同的发明构思,本发明实施例提供了一种动态调整码率的存储介质,该存储介质中存储有至少一条指令,该指令由处理器加载并执行以实现本发明实施例提供的动态调整码率的方法。上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种动态调整码率的方法,其特征在于,所述方法包括:
获取待编码的视频数据,所述视频数据携带初始编码时间戳;
按照预调整的编码时间戳间隔对所述视频数据的初始编码时间戳进行调整,得到调整后的视频数据,所述调整后的视频数据携带调整后的编码时间戳,所述调整后的编码时间戳用于改变编码器对所述视频数据的时间长度的判定;
将所述调整后的视频数据传输至所述编码器,所述编码器用于按照所述调整后的编码时间戳对所述调整后的视频数据进行编码;
所述预调整的编码时间戳间隔获取方法包括:检测网络通信质量,根据检测结果确定预调整的编码时间戳间隔;或者,显示编码时间戳间隔设置界面,将所述界面的输入框中键入的自定义的编码时间戳间隔作为所述预调整的编码时间戳间隔,或者,所述界面提供可选的编码时间戳间隔,将可选的编码时间戳间隔中被选择的编码时间戳间隔作为所述预调整的编码时间戳间隔。
2.根据权利要求1所述的动态调整码率的方法,其特征在于,所述预调整的编码时间戳间隔为第一编码时间戳间隔,所述第一编码时间戳间隔大于所述初始编码时间戳对应的初始编码时间戳间隔;
所述按照预调整的编码时间戳间隔对所述视频数据的初始编码时间戳进行调整,包括:
按照所述第一编码时间戳间隔对所述视频数据的初始编码时间戳进行调整。
3.根据权利要求1所述的动态调整码率的方法,其特征在于,所述预调整的编码时间戳间隔为第二编码时间戳间隔,所述第二编码时间戳间隔小于所述初始编码时间戳对应的初始编码时间戳间隔;
所述按照预调整的编码时间戳间隔对所述视频数据的初始编码时间戳进行调整,包括:
按照所述第二编码时间戳间隔对所述视频数据的初始编码时间戳进行调整。
4.一种动态调整码率的装置,其特征在于,所述装置包括:
第一获取模块,用于获取待编码的视频数据,所述视频数据携带初始编码时间戳;
调整模块,用于按照预调整的编码时间戳间隔对所述视频数据的初始编码时间戳进行调整,得到调整后的视频数据,所述调整后的视频数据携带调整后的编码时间戳,所述调整后的编码时间戳用于改变编码器对所述视频数据的时间长度的判定;
传输模块,用于将所述调整后的视频数据传输至所述编码器,所述编码器用于按照所述调整后的编码时间戳对所述调整后的视频数据进行编码;
所述第一获取模块,还用于检测网络通信质量,根据检测结果确定预调整的编码时间戳间隔;或者,显示编码时间戳间隔设置界面,将所述界面的输入框中键入的自定义的编码时间戳间隔作为所述预调整的编码时间戳间隔,或者,所述界面提供可选的编码时间戳间隔,将可选的编码时间戳间隔中被选择的编码时间戳间隔作为所述预调整的编码时间戳间隔。
5.根据权利要求4所述的动态调整码率的装置,其特征在于,所述预调整的编码时间戳间隔为第一编码时间戳间隔,所述第一编码时间戳间隔小于所述初始编码时间戳对应的初始编码时间戳间隔;
所述调整模块,用于按照所述第一编码时间戳间隔对所述视频数据的初始编码时间戳进行调整。
6.根据权利要求4所述的动态调整码率的装置,其特征在于,所述预调整的编码时间戳间隔为第二编码时间戳间隔,所述第二编码时间戳间隔小于所述初始编码时间戳对应的初始编码时间戳间隔;
所述调整模块,用于按照所述第二编码时间戳间隔对所述视频数据的初始编码时间戳进行调整。
7.一种动态调整码率的设备,其特征在于,所述设备包括存储器及处理器;所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行,以实现权利要求1-3任一所述的动态调整码率的方法。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1-3任一所述的动态调整码率的方法。
CN201811186095.5A 2018-10-11 2018-10-11 动态调整码率的方法、装置、设备及存储介质 Active CN109120933B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811186095.5A CN109120933B (zh) 2018-10-11 2018-10-11 动态调整码率的方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811186095.5A CN109120933B (zh) 2018-10-11 2018-10-11 动态调整码率的方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN109120933A CN109120933A (zh) 2019-01-01
CN109120933B true CN109120933B (zh) 2021-05-14

Family

ID=64857926

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811186095.5A Active CN109120933B (zh) 2018-10-11 2018-10-11 动态调整码率的方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN109120933B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110784718B (zh) * 2019-10-31 2021-07-20 广州市网星信息技术有限公司 视频数据编码方法、装置、设备和存储介质
CN111010576B (zh) * 2019-12-18 2021-04-27 腾讯科技(深圳)有限公司 一种数据处理方法及相关设备
CN111083536B (zh) * 2019-12-31 2022-02-22 广州酷狗计算机科技有限公司 调节视频码率的方法和装置
CN111263153B (zh) * 2020-02-20 2022-10-11 广州市百果园信息技术有限公司 视频编码方法、装置、设备及存储介质
CN111478914B (zh) * 2020-04-14 2022-08-16 广州酷狗计算机科技有限公司 时间戳处理方法、装置、终端及存储介质
CN113453114B (zh) * 2021-06-30 2023-04-07 Oppo广东移动通信有限公司 编码控制方法、装置、无线耳机及存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104702922A (zh) * 2013-12-10 2015-06-10 中国电信股份有限公司 一种视频传输方法和***
CN103888846B (zh) * 2014-03-04 2017-02-08 浙江大学 基于QoE的无线视频流业务自适应速率控制方法
CN104010232B (zh) * 2014-05-23 2017-12-12 惠州Tcl移动通信有限公司 一种智能播放在线视频的方法、***、播放器及移动终端
CN104202614B (zh) * 2014-08-15 2016-03-09 小米科技有限责任公司 一种基于网络环境调整视频画质的方法及装置
US10218986B2 (en) * 2016-09-26 2019-02-26 Google Llc Frame accurate splicing
CN107360424B (zh) * 2017-07-28 2019-10-25 深圳岚锋创视网络科技有限公司 一种基于视频编码器的码率控制方法、装置及视频服务器
CN107566795B (zh) * 2017-09-04 2019-11-19 浙江大华技术股份有限公司 一种提高实时画面流畅度的方法、装置及***

Also Published As

Publication number Publication date
CN109120933A (zh) 2019-01-01

Similar Documents

Publication Publication Date Title
CN109120933B (zh) 动态调整码率的方法、装置、设备及存储介质
CN110502954B (zh) 视频分析的方法和装置
CN108401124B (zh) 视频录制的方法和装置
CN108391171B (zh) 视频播放的控制方法及装置、终端
CN109348247B (zh) 确定音视频播放时间戳的方法、装置及存储介质
CN111372126B (zh) 视频播放方法、装置及存储介质
CN108965757B (zh) 视频录制方法、装置、终端及存储介质
CN111586431B (zh) 进行直播处理的方法、装置、设备及存储介质
CN109635133B (zh) 可视化音频播放方法、装置、电子设备及存储介质
CN107896337B (zh) 信息推广方法、装置及存储介质
CN110839174A (zh) 图像处理的方法、装置、计算机设备以及存储介质
CN111586413B (zh) 视频调整方法、装置、计算机设备及存储介质
CN108845777B (zh) 播放帧动画的方法和装置
CN112667835A (zh) 作品处理方法、装置、电子设备及存储介质
CN108848405B (zh) 图像处理方法和装置
CN108734662B (zh) 显示图标的方法和装置
CN110856152A (zh) 播放音频数据的方法、装置、电子设备及介质
CN111010588B (zh) 直播处理方法、装置、存储介质及设备
CN111083526B (zh) 视频转场方法、装置、计算机设备及存储介质
CN111083554A (zh) 直播礼物显示的方法和装置
CN109783176B (zh) 切换页面的方法和装置
CN111586279B (zh) 确定拍摄状态的方法、装置、设备及存储介质
CN108401194B (zh) 时间戳确定方法、装置和计算机可读存储介质
CN107888975B (zh) 视频播放方法、装置及存储介质
CN110933454B (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