WO2019019931A1 - 一种基于视频编码器的码率控制方法、装置及视频服务器 - Google Patents
一种基于视频编码器的码率控制方法、装置及视频服务器 Download PDFInfo
- Publication number
- WO2019019931A1 WO2019019931A1 PCT/CN2018/095610 CN2018095610W WO2019019931A1 WO 2019019931 A1 WO2019019931 A1 WO 2019019931A1 CN 2018095610 W CN2018095610 W CN 2018095610W WO 2019019931 A1 WO2019019931 A1 WO 2019019931A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- frame
- timestamp
- video encoder
- code rate
- video
- 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.)
- Ceased
Links
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/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
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- 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/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23608—Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
Definitions
- the invention belongs to the field of video, and in particular relates to a code rate control method and device based on a video encoder and a video server.
- the main direction is to carry out more accurate bandwidth estimation and better rate control strategy, but it has not been studied, how to make the video encoder complete the code rate switching when it is necessary to switch the output bit rate, and Ensure that the code is not interrupted.
- various video encoders of various live broadcast platforms generally provide constant bit rate coding (Costant Bit) in coding parameter control. Rate, CBR) or variable bit rate encoding (Variable Bit Rate, VBR), the code rate of the constant rate coded code is basically unchanged, and the variable code rate code changes according to the content.
- CBR constant bit rate coding
- VBR Variable Bit Rate
- the current common scheme of dynamic rate control is to close the original video encoder instance, re-create a new video encoder instance, configure the code rate of the new video encoder to be switched, and pass the newly created video encoder.
- Components to implement the application of new rate parameters are to close the original video encoder instance, re-create a new video encoder instance, configure the code rate of the new video encoder to be switched, and pass the newly created video encoder.
- the problem with this approach is that on a platform with limited resources, the video encoder instance cannot be created arbitrarily. In this case, the original video encoder must be turned off, and then the configuration is started to start a new video encoder. The following steps are required:
- the frame to be encoded can only wait for the initialization of the new video encoder to be completed, so the output video stream will be stuck. If the real-time to-be-coded frame cannot be temporarily stored or the temporary storage space is invalid, these frames can only be discarded during the handover, and the final encoded picture will have a frame skipping.
- the object of the present invention is to provide a video encoder based code rate control method, device, computer readable storage medium and video server, which aims to solve the problem of turning off the original video encoder and then creating a new video encoder.
- the dynamic rate control scheme causes the output video stream to be stuck, and the real-time to-be-coded frame may be discarded during the handover, so that the coded picture may have a problem of frame skipping.
- the present invention provides a code rate control method based on a video encoder, comprising the following steps:
- the time stamp of the frame transmitted to the video encoder during the handover process is modified
- the timestamp of the output frame is restored to the original timestamp.
- the present invention provides a code rate control device based on a video encoder, the device comprising:
- a modifying module configured to modify a timestamp of a frame transmitted to the video encoder during the switching process when the code rate needs to be switched during the video playing process
- a transmitting module configured to transmit the frame after the modified time stamp to the video encoder
- a recovery module for restoring the timestamp of the output frame to the original timestamp for each frame output by the video encoder.
- the present invention provides a computer readable storage medium storing a computer program, the computer program being executed by a processor to implement a video encoder based code rate control method as described above A step of.
- the present invention provides a video server, including:
- One or more processors are One or more processors;
- One or more computer programs wherein the one or more computer programs are stored in the memory and configured to be executed by the one or more processors, the processor implementing the computer program The steps of the video encoder based code rate control method as described above.
- the time stamp of the frame transmitted to the video encoder during the switching process is modified during the video playback, when the code rate needs to be switched; for each frame output by the video encoder, the frame will be output.
- the timestamp is restored to the original timestamp, thereby controlling the actual code rate of the output frame of the video encoder.
- real-time applications such as live broadcast, there will be no jam caused by the interruption of the encoding.
- the switching process is very smooth.
- FIG. 1 is a flowchart of a code rate control method based on a video encoder according to Embodiment 1 of the present invention.
- FIG. 2 is a schematic diagram of a video encoder based code rate control apparatus according to Embodiment 2 of the present invention.
- FIG. 3 is a schematic structural diagram of a video server according to Embodiment 4 of the present invention.
- Embodiment 1 is a diagrammatic representation of Embodiment 1:
- a video encoder based code rate control method includes the following steps:
- S101 is specifically:
- the first adjacent frame timestamp interval corresponding to the first code rate is modified to the second adjacent frame corresponding to the second code rate.
- a timestamp interval wherein a ratio of the second code rate to the first code rate and a ratio of the second adjacent frame timestamp interval to the first adjacent frame timestamp interval are equal;
- the timestamp of the current frame is modified based on the actual timestamp of the most recent frame that has been transmitted to the video encoder and the second adjacent frame timestamp interval.
- the method before S101, the method further includes the following steps:
- a fixed frame rate and code rate are configured, and the video encoder is encoded according to the correct time stamp.
- the video encoder encodes according to the configured code rate, outputs the video, and the output video rate is consistent with the configured code rate.
- the correct timestamp means that the adjacent frame timestamp interval corresponds to the frame rate, and the video code rate output by the video encoder is consistent with the configured code rate.
- the frame after the timestamp is modified is transmitted to the video encoder.
- S103 may specifically include the following steps:
- the adjacent frame timestamp interval must correspond to the frame rate.
- the first frame time is 0ms
- the second frame is 33.33 ms
- the third frame is 66.66 ms, and so on.
- the video encoder The output video bit rate is consistent with the configured code rate, which is 2 Mbps;
- the interval between adjacent frame timestamps is The 66.66 ms mode, which modifies the timestamp of each frame transmitted to the video encoder.
- the actual timestamp of the most recent frame that has been transmitted to the video encoder is 2000ms.
- the timestamp of the next frame is 2033.33 ms (frame interval 33.33 ms), but the current frame is modified to achieve a frame interval of 66.66 ms.
- the time stamp is 2066.66 ms and is transmitted to the video encoder;
- the adjacent frame timestamp interval becomes 66.66 ms.
- the input frame sequence becomes, 15 frames per second, and the total number of output bytes previously allocated to 30 frames. (2 M bit), now assigned to 15 frames, in order to ensure that the number of bytes per second is unchanged, the average size of each frame will be increased by 2 times.
- the actual output code rate of the video encoder can be controlled at any stage in the encoding process.
- the timestamp of the frame transmitted to the video encoder during the switching process is modified; for each frame output by the video encoder, The timestamp of the output frame is restored to the original timestamp, thereby controlling the actual code rate of the output frame of the video encoder.
- Embodiment 2 is a diagrammatic representation of Embodiment 1:
- a video encoder based code rate control apparatus includes:
- the modifying module 11 is configured to modify a timestamp of a frame transmitted to the video encoder during the switching process when the code rate needs to be switched during the video playing process;
- the transmitting module 12 is configured to transmit the modified timestamp frame to the video encoder
- the recovery module 13 is configured to restore the timestamp of the output frame to the original timestamp for each frame output by the video encoder.
- the modifying module 11 may specifically include:
- a first modifying submodule configured to: when the first code rate needs to be switched to the second code rate, modify the first adjacent frame timestamp interval corresponding to the first code rate to the second code a second adjacent frame timestamp interval corresponding to the rate, wherein a ratio of the second code rate to the first code rate and a ratio of the second adjacent frame timestamp interval to the first adjacent frame timestamp interval are equal;
- a second modification submodule configured to modify a timestamp of the current frame according to an actual timestamp of the latest frame that has been transmitted to the video encoder and a second adjacent frame timestamp interval.
- the recovery module 13 may specifically include:
- a searching module configured to search for, according to a timestamp of the received frame mark, each frame of the video encoder output, to find a corresponding original timestamp
- the recovery submodule is used to restore the timestamp of the output frame to the original timestamp.
- Embodiment 3 is a diagrammatic representation of Embodiment 3
- the third embodiment of the present invention further provides a computer readable storage medium, where the computer readable storage medium stores a computer program, and when the computer program is executed by the processor, the video encoder is provided according to the first embodiment of the present invention.
- the steps of the rate control method are not limited to the third embodiment of the present invention.
- Embodiment 4 is a diagrammatic representation of Embodiment 4:
- FIG. 3 is a block diagram showing a specific structure of a video server according to Embodiment 4 of the present invention.
- a video server includes:
- One or more processors 101 are One or more processors 101;
- One or more computer programs wherein the one or more computer programs are stored in the memory 102 and configured to be executed by the one or more processors 101, when the processor 101 executes the computer program
- the steps of the video encoder based code rate control method provided by the first embodiment of the present invention are implemented.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明适用于视频领域,提供了一种基于视频编码器的码率控制方法、装置及视频服务器。所述方法包括以下步骤:在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改;将修改时间戳后的帧传送给视频编码器;对于视频编码器输出的每帧,将输出帧的时间戳恢复为原始时间戳。本发明不会出现因为编码中断而造成的卡顿,切换过程非常平滑。
Description
本发明属于视频领域,尤其涉及一种基于视频编码器的码率控制方法、装置及视频服务器。
在直播应用中,推送直播流时,由于网络带宽存在波动,根据当前带宽实时控制视频编码器输出码率,从而自动适应带宽尤为重要。目前存在多种算法,主要方向在于进行更准确的带宽估算以及更优的码率控制策略,但是却没有研究,当需要切换输出码率时,应该如何使视频编码器完成码率的切换,并且保证编码不被中断。
目前各类直播平台各类视频编码器,在编码参数控制上,一般提供恒定码率编码(Constant Bit
Rate,CBR)或可变码率编码(Variable
Bit Rate,VBR),恒定码率编码的编码输出码率基本不变,可变码率编码会根据内容进行变化。但不论哪种方式,都不能在编码过程中,由软件实时修改和控制编码码率。
所以目前动态码率控制的常见方案是,关闭原有视频编码器实例,再重新创建新视频编码器实例,配置新视频编码器的码率为需要切换的码率,通过新创建的视频编码器组件来实现新码率参数的应用。
然而,这种方式存在的问题是,在资源有限的平台上,视频编码器实例并不能任意创建,这时,必须先关闭原有视频编码器,再创建配置启动新的视频编码器,这个过程需要执行以下步骤:
1.等待原来的视频编码器所有编码帧完成编码并输出;
2.关闭原来的视频编码器;
3.创建并配置和启动新的视频编码器;
4.将最新要编码的数据传送到新视频编码器上,开始应用新码率编码。
由于上述过程中不能进行编码,将造成切换码率时,待编码的帧只能等待新视频编码器初始化完成,因此输出视频流会卡顿。如果实时待编码帧无法暂存或暂存空间无效,在切换期间,这些帧只能被丢弃,那么最终编码画面会出现跳帧。
本发明的目的在于提供一种基于视频编码器的码率控制方法、装置、计算机可读存储介质及视频服务器,旨在解决目前先关闭原有视频编码器,再创建配置启动新的视频编码器的动态码率控制方案,导致输出视频流会卡顿,且实时待编码帧在切换期间可能被丢弃,使编码画面会出现跳帧的问题。
第一方面,本发明提供了一种基于视频编码器的码率控制方法,包括以下步骤:
在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改;
将修改时间戳后的帧传送给视频编码器;
对于视频编码器输出的每帧,将输出帧的时间戳恢复为原始时间戳。
第二方面,本发明提供了一种基于视频编码器的码率控制装置,所述装置包括:
修改模块,用于在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改;
传送模块,用于将修改时间戳后的帧传送给视频编码器;
恢复模块,用于对于视频编码器输出的每帧,将输出帧的时间戳恢复为原始时间戳。
第三方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述的基于视频编码器的码率控制方法的步骤。
第四方面,本发明提供了一种视频服务器,包括:
一个或多个处理器;
存储器;以及
一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述处理器执行所述计算机程序时实现如上述的基于视频编码器的码率控制方法的步骤。
在本发明中,由于在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改;对于视频编码器输出的每帧,将输出帧的时间戳恢复为原始时间戳,从而控制视频编码器的输出帧的实际码率。不需要关闭原来的视频编码器,创建和配置新视频编码器,不会因为重开过程,造成编码中断,在直播等实时性强的应用场景中,不会出现因为编码中断而造成的卡顿,切换过程非常平滑。
图1是本发明实施例一提供的基于视频编码器的码率控制方法流程图。
图2是本发明实施例二提供的基于视频编码器的码率控制装置的示意图。
图3是本发明实施例四提供的视频服务器的结构示意图。
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一:
请参阅图1,本发明实施例一提供的基于视频编码器的码率控制方法包括以下步骤:
S101、在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改。
在本发明实施例一中,S101具体为:
在视频播放的过程中,当需要将第一码率切换至第二码率时,将第一码率对应的第一相邻帧时间戳间隔修改为第二码率对应的第二相邻帧时间戳间隔,其中,第二码率与第一码率的比例和第二相邻帧时间戳间隔与第一相邻帧时间戳间隔的比例相等;
根据已经传送给视频编码器的最近一帧的实际时间戳和第二相邻帧时间戳间隔修改当前帧的时间戳。
在本发明实施例一中,S101之前,所述方法还包括以下步骤:
在视频编码器初始化阶段,配置固定的帧率和码率,按照正确的时间戳传送帧给视频编码器进行编码;
视频编码器按照配置的码率进行编码,输出视频,输出的视频码率和配置的码率一致。
正确的时间戳是指相邻帧时间戳间隔与帧率对应,这时视频编码器输出的视频码率和配置的码率一致
S102、将修改时间戳后的帧传送给视频编码器;
S103、对于视频编码器输出的每帧,将输出帧的时间戳恢复为原始时间戳。
在本发明实施例一中,S103具体可以包括以下步骤:
创建正确的时间戳和修改后的时间戳的映射表;
将进行修改的帧的原始时间戳和修改后的时间戳相应添加到所述映射表;
对于视频编码器输出的每帧,根据接收到的帧标记的时间戳,从所述映射表中查找,找到对应的原始时间戳;
将输出帧的时间戳恢复为原始时间戳。
由于传送给视频编码器的每帧实际时间戳发生改变,造成实际传送给视频编码器的帧率发生改变,最终视频编码器的码率控制被影响。
下面举例说明如下:
假设刚开始需要编码帧率 30 帧/秒,输出码率 2Mbps 的视频。 在中间某个阶段,需要将输出码率由2Mbps切换至 4 Mbps。
1.
创建视频编码器,配置帧率 30帧/秒(相应的,相邻帧时间戳间隔是 33.33 ms), 码率 2Mbps;
2.
开始传送帧给视频编码器,相邻帧时间戳间隔必须与帧率对应,例如第一帧时间为 0ms,第二帧是 33.33 ms,第三帧是 66.66 ms,依次类推,这时视频编码器输出的视频码率和配置的码率一致,为 2Mbps;
3.
当需要将输出码率切换至 4Mbps时,按照相邻帧时间戳间隔为
66.66 ms 的方式,修改传送给视频编码器的每帧的时间戳。 比如,已经传送给视频编码器的最近一帧的实际时间戳是2000ms, 正常情况,下一帧的时间戳为 2033.33 ms(帧间隔 33.33ms),但为了使帧间隔达到 66.66 ms,修改当前帧的时间戳为 2066.66 ms,传送给视频编码器;
4.
创建正确的时间戳和修改后的时间戳的映射表;
5.
将进行修改的帧的原始时间戳和修改后的时间戳相应添加到所述映射表;
6.
对于视频编码器输出的每帧,根据接收到的帧标记的时间戳,从所述映射表中查找,找到对应的原始时间戳;
7.
将输出帧的时间戳恢复为原始时间戳。
由于传送给视频编码器的帧,相邻帧时间戳间隔变成了 66.66 ms,在视频编码器看来,输入帧序列变成了,每秒 15 帧,之前分配给 30 帧的输出字节总数(2 M bit),现在分配给 15 帧,为了保证每秒字节数不变,平均每帧的大小将被增大为原来2倍。
通过上面的方法,可以在编码过程中,任意阶段,控制视频编码器的实际输出码率为实际码率。
在本发明实施例一中,由于在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改;对于视频编码器输出的每帧,将输出帧的时间戳恢复为原始时间戳,从而控制视频编码器的输出帧的实际码率。不需要关闭原来的视频编码器,创建和配置新视频编码器,不会因为重开过程,造成编码中断,在直播等实时性强的应用场景中,不会出现因为编码中断而造成的卡顿,切换过程非常平滑。
实施例二:
请参阅图2,本发明实施例二提供的基于视频编码器的码率控制装置包括:
修改模块11,用于在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改;
传送模块12,用于将修改时间戳后的帧传送给视频编码器;
恢复模块13,用于对于视频编码器输出的每帧,将输出帧的时间戳恢复为原始时间戳。
在本发明实施例二中,修改模块11具体可以包括:
第一修改子模块,用于在视频播放的过程中,当需要将第一码率切换至第二码率时,将第一码率对应的第一相邻帧时间戳间隔修改为第二码率对应的第二相邻帧时间戳间隔,其中,第二码率与第一码率的比例和第二相邻帧时间戳间隔与第一相邻帧时间戳间隔的比例相等;
第二修改子模块,用于根据已经传送给视频编码器的最近一帧的实际时间戳和第二相邻帧时间戳间隔修改当前帧的时间戳。
在本发明实施例二中,恢复模块13具体可以包括:
创建模块,用于创建正确的时间戳和修改后的时间戳的映射表;
添加模块,用于将进行修改的帧的原始时间戳和修改后的时间戳相应添加到所述映射表;
查找模块,用于对于视频编码器输出的每帧,根据接收到的帧标记的时间戳,从所述映射表中查找,找到对应的原始时间戳;
恢复子模块,用于将输出帧的时间戳恢复为原始时间戳。
实施例三:
本发明实施例三还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如本发明实施例一提供的基于视频编码器的码率控制方法的步骤。
实施例四:
图3示出了本发明实施例四提供的视频服务器的具体结构框图,一种视频服务器,包括:
一个或多个处理器101;
存储器102;以及
一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器102中,并且被配置成由所述一个或多个处理器101执行,处理器101执行所述计算机程序时实现如本发明实施例一提供的基于视频编码器的码率控制方法的步骤。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
- 一种基于视频编码器的码率控制方法,其特征在于,包括以下步骤:在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改;将修改时间戳后的帧传送给视频编码器;对于视频编码器输出的每帧,将输出帧的时间戳恢复为原始时间戳。
- 如权利要求1所述的方法,其特征在于,所述在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改之前,所述方法还包括:在视频编码器初始化阶段,配置固定的帧率和码率,按照正确的时间戳传送帧给视频编码器进行编码;视频编码器按照配置的码率进行编码,输出视频,输出的视频码率和配置的码率一致。
- 如权利要求2所述的方法,其特征在于,所述正确的时间戳是指相邻帧时间戳间隔与帧率对应,使视频编码器输出的视频码率和配置的码率一致。
- 如权利要求1所述的方法,其特征在于,所述在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改具体为:在视频播放的过程中,当需要将第一码率切换至第二码率时,将第一码率对应的第一相邻帧时间戳间隔修改为第二码率对应的第二相邻帧时间戳间隔,其中,第二码率与第一码率的比例和第二相邻帧时间戳间隔与第一相邻帧时间戳间隔的比例相等;根据已经传送给视频编码器的最近一帧的实际时间戳和第二相邻帧时间戳间隔修改当前帧的时间戳。
- 如权利要求1所述的方法,其特征在于,所述对于视频编码器输出的每帧,将输出帧的时间戳恢复为原始时间戳具体包括:创建正确的时间戳和修改后的时间戳的映射表;将进行修改的帧的原始时间戳和修改后的时间戳相应添加到所述映射表;对于视频编码器输出的每帧,根据接收到的帧标记的时间戳,从所述映射表中查找,找到对应的原始时间戳;将输出帧的时间戳恢复为原始时间戳。
- 一种基于视频编码器的码率控制装置,其特征在于,所述装置包括:修改模块,用于在视频播放的过程中,当需要切换码率时,将切换过程中传送给视频编码器的帧的时间戳进行修改;传送模块,用于将修改时间戳后的帧传送给视频编码器;恢复模块,用于对于视频编码器输出的每帧,将输出帧的时间戳恢复为原始时间戳。
- 如权利要求6所述的装置,其特征在于,所述修改模块具体包括:第一修改子模块,用于在视频播放的过程中,当需要将第一码率切换至第二码率时,将第一码率对应的第一相邻帧时间戳间隔修改为第二码率对应的第二相邻帧时间戳间隔,其中,第二码率与第一码率的比例和第二相邻帧时间戳间隔与第一相邻帧时间戳间隔的比例相等;第二修改子模块,用于根据已经传送给视频编码器的最近一帧的实际时间戳和第二相邻帧时间戳间隔修改当前帧的时间戳。
- 如权利要求6所述的装置,其特征在于,所述恢复模块具体包括:创建模块,用于创建正确的时间戳和修改后的时间戳的映射表;添加模块,用于将进行修改的帧的原始时间戳和修改后的时间戳相应添加到所述映射表;查找模块,用于对于视频编码器输出的每帧,根据接收到的帧标记的时间戳,从所述映射表中查找,找到对应的原始时间戳;恢复子模块,用于将输出帧的时间戳恢复为原始时间戳。
- 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的基于视频编码器的码率控制方法的步骤。
- 一种视频服务器,包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述的基于视频编码器的码率控制方法的步骤。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020503817A JP7009610B2 (ja) | 2017-07-28 | 2018-07-13 | ビデオエンコーダに基づく符号化ビットレート制御方法、装置及びビデオサーバー |
| US16/634,548 US11190773B2 (en) | 2017-07-28 | 2018-07-13 | Video coder-based code rate control method and device, and video server |
| EP18838256.8A EP3661205A4 (en) | 2017-07-28 | 2018-07-13 | METHOD AND DEVICE FOR CONTROL OF CODE RATE BASED ON A VIDEO ENCODER, AND VIDEO SERVER |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201710632656.9 | 2017-07-28 | ||
| CN201710632656.9A CN107360424B (zh) | 2017-07-28 | 2017-07-28 | 一种基于视频编码器的码率控制方法、装置及视频服务器 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2019019931A1 true WO2019019931A1 (zh) | 2019-01-31 |
Family
ID=60285510
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2018/095610 Ceased WO2019019931A1 (zh) | 2017-07-28 | 2018-07-13 | 一种基于视频编码器的码率控制方法、装置及视频服务器 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US11190773B2 (zh) |
| EP (1) | EP3661205A4 (zh) |
| JP (1) | JP7009610B2 (zh) |
| CN (1) | CN107360424B (zh) |
| WO (1) | WO2019019931A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116320433A (zh) * | 2023-03-29 | 2023-06-23 | 山东云海国创云计算装备产业创新中心有限公司 | 一种用于编码器的码率计算方法、装置、设备及介质 |
| CN120358223A (zh) * | 2023-12-22 | 2025-07-22 | 武汉万睦健康科技有限公司 | 一种基于rtmp推流的视频会议直播平台推荐方法 |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107360424B (zh) | 2017-07-28 | 2019-10-25 | 深圳岚锋创视网络科技有限公司 | 一种基于视频编码器的码率控制方法、装置及视频服务器 |
| CN109120933B (zh) * | 2018-10-11 | 2021-05-14 | 广州酷狗计算机科技有限公司 | 动态调整码率的方法、装置、设备及存储介质 |
| CN111010576B (zh) * | 2019-12-18 | 2021-04-27 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及相关设备 |
| CN112423072B (zh) * | 2020-09-02 | 2025-02-07 | 上海幻电信息科技有限公司 | 直播场景下的视频推送方法及系统 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102098571A (zh) * | 2009-12-14 | 2011-06-15 | 中国电信股份有限公司 | 一种数据动态推送的方法及系统 |
| CN103561283A (zh) * | 2013-10-30 | 2014-02-05 | 乐视致新电子科技(天津)有限公司 | 一种智能电视的码率切换方法及装置 |
| US20140112384A1 (en) * | 2012-10-22 | 2014-04-24 | General Instrument Corporation | Algorithms for determining bitrate for a statistical multiplexing system using scene change |
| CN106488265A (zh) * | 2016-10-12 | 2017-03-08 | 广州酷狗计算机科技有限公司 | 一种发送媒体流的方法和装置 |
| CN107360424A (zh) * | 2017-07-28 | 2017-11-17 | 深圳岚锋创视网络科技有限公司 | 一种基于视频编码器的码率控制方法、装置及视频服务器 |
Family Cites Families (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004289295A (ja) | 2003-03-19 | 2004-10-14 | Fujitsu Ltd | データ処理システム、データ処理装置及びデータ処理方法 |
| JP2005157414A (ja) | 2003-11-20 | 2005-06-16 | Canon Inc | 印刷システムおよびクライアント装置およびモバイル装置および印刷デバイス装置および印刷制御方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム |
| KR100526189B1 (ko) * | 2004-02-14 | 2005-11-03 | 삼성전자주식회사 | 트랜스코딩 전후에 타이밍 파라미터를 일정하게유지시키는 트랜스코딩 시스템 및 방법 |
| US20060239563A1 (en) * | 2005-04-25 | 2006-10-26 | Nokia Corporation | Method and device for compressed domain video editing |
| WO2007024648A2 (en) * | 2005-08-25 | 2007-03-01 | Nms Communications Corporation | Methods and apparatus for differential encoding |
| JP2007173987A (ja) * | 2005-12-19 | 2007-07-05 | Canon Inc | マルチメディアデータ送受信システム、及び装置、又はプログラム |
| US9544602B2 (en) * | 2005-12-30 | 2017-01-10 | Sharp Laboratories Of America, Inc. | Wireless video transmission system |
| US20070270103A1 (en) * | 2006-05-16 | 2007-11-22 | Samsung Electronics Co., Ltd. | Method and apparatus for transmitting/receiving uncompressed audio/video data |
| EP1860884A1 (en) * | 2006-05-26 | 2007-11-28 | BRITISH TELECOMMUNICATIONS public limited company | Video processing |
| JP5493471B2 (ja) | 2009-05-27 | 2014-05-14 | ソニー株式会社 | 情報処理装置および方法 |
| KR20110090596A (ko) * | 2010-02-04 | 2011-08-10 | 삼성전자주식회사 | 지터 보정 방법 및 장치 |
| US20140056354A1 (en) * | 2012-08-21 | 2014-02-27 | Mediatek Inc. | Video processing apparatus and method |
| EP2711929A1 (en) * | 2012-09-19 | 2014-03-26 | Nokia Corporation | An Image Enhancement apparatus and method |
| CN104661112B (zh) * | 2013-11-18 | 2019-06-25 | 南京中兴力维软件有限公司 | 基于可伸缩选择窗口的视频流文件传输方法及装置 |
| EP3140779A4 (en) * | 2014-05-09 | 2017-11-29 | Google LLC | Systems and methods for using eye signals with secure mobile communications |
| US10080019B2 (en) * | 2014-09-19 | 2018-09-18 | Intel Corporation | Parallel encoding for wireless displays |
| DE112016001705T5 (de) * | 2015-04-13 | 2017-12-28 | Sony Semiconductor Solutions Corp. | Empfangsvorrichtung, empfangsverfahren und programm |
| US10951683B2 (en) * | 2015-07-13 | 2021-03-16 | Projector.Is, Inc. | Systems and methods for remote interaction |
| CN105933800A (zh) * | 2016-04-29 | 2016-09-07 | 联发科技(新加坡)私人有限公司 | 一种视频播放方法及其控制终端 |
| US10389987B2 (en) * | 2016-06-12 | 2019-08-20 | Apple Inc. | Integrated accessory control user interface |
| CA2958163C (en) * | 2017-02-15 | 2019-02-12 | Synaptive Medical (Barbados) Inc. | Digitally enhanced surgical instruments |
| US10646288B2 (en) * | 2017-04-12 | 2020-05-12 | Bio-Medical Engineering (HK) Limited | Automated steering systems and methods for a robotic endoscope |
| JP7058946B2 (ja) * | 2017-04-28 | 2022-04-25 | キヤノン株式会社 | 情報処理装置、情報処理システム、情報処理方法及びプログラム |
-
2017
- 2017-07-28 CN CN201710632656.9A patent/CN107360424B/zh active Active
-
2018
- 2018-07-13 JP JP2020503817A patent/JP7009610B2/ja active Active
- 2018-07-13 US US16/634,548 patent/US11190773B2/en active Active
- 2018-07-13 EP EP18838256.8A patent/EP3661205A4/en active Pending
- 2018-07-13 WO PCT/CN2018/095610 patent/WO2019019931A1/zh not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102098571A (zh) * | 2009-12-14 | 2011-06-15 | 中国电信股份有限公司 | 一种数据动态推送的方法及系统 |
| US20140112384A1 (en) * | 2012-10-22 | 2014-04-24 | General Instrument Corporation | Algorithms for determining bitrate for a statistical multiplexing system using scene change |
| CN103561283A (zh) * | 2013-10-30 | 2014-02-05 | 乐视致新电子科技(天津)有限公司 | 一种智能电视的码率切换方法及装置 |
| CN106488265A (zh) * | 2016-10-12 | 2017-03-08 | 广州酷狗计算机科技有限公司 | 一种发送媒体流的方法和装置 |
| CN107360424A (zh) * | 2017-07-28 | 2017-11-17 | 深圳岚锋创视网络科技有限公司 | 一种基于视频编码器的码率控制方法、装置及视频服务器 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP3661205A4 * |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116320433A (zh) * | 2023-03-29 | 2023-06-23 | 山东云海国创云计算装备产业创新中心有限公司 | 一种用于编码器的码率计算方法、装置、设备及介质 |
| CN120358223A (zh) * | 2023-12-22 | 2025-07-22 | 武汉万睦健康科技有限公司 | 一种基于rtmp推流的视频会议直播平台推荐方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP3661205A1 (en) | 2020-06-03 |
| EP3661205A4 (en) | 2020-12-30 |
| US11190773B2 (en) | 2021-11-30 |
| JP7009610B2 (ja) | 2022-01-25 |
| JP2020528242A (ja) | 2020-09-17 |
| CN107360424B (zh) | 2019-10-25 |
| CN107360424A (zh) | 2017-11-17 |
| US20210092400A1 (en) | 2021-03-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2019019931A1 (zh) | 一种基于视频编码器的码率控制方法、装置及视频服务器 | |
| CN110430441B (zh) | 一种云手机视频采集方法、系统、装置及存储介质 | |
| CN110784718B (zh) | 视频数据编码方法、装置、设备和存储介质 | |
| CN109743600B (zh) | 基于可穿戴的现场运维自适应视频流传输速率控制方法 | |
| CN101873482B (zh) | 实时流媒体集群转码系统 | |
| CN111294647B (zh) | 一种视频处理方法、装置及设备、存储介质 | |
| US20150110134A1 (en) | Adapting a Jitter Buffer | |
| CN103780907A (zh) | 一种视频数据流量整形的方法和装置 | |
| CN111147860B (zh) | 一种视频数据的解码方法及装置 | |
| CN111741248B (zh) | 一种数据传输方法、装置、终端设备和存储介质 | |
| WO2021139418A1 (zh) | 图像处理装置、远端设备及通信系统 | |
| CN115883848A (zh) | 一种编码控制方法、装置、设备、存储介质及产品 | |
| CN108809921B (zh) | 一种音频处理方法、视联网服务器和视联网终端 | |
| US12401706B2 (en) | Loss-resilient real-time video streaming | |
| CN112383775A (zh) | 一种基于云手机的视频数据传输方法 | |
| CN109769142B (zh) | 一种城市媒体墙灯光秀的视频切割方法及系统 | |
| CN111131743A (zh) | 基于浏览器的视频通话方法、装置、电子设备及存储介质 | |
| CN102724502B (zh) | 一种视频编码中码率的控制方法及装置 | |
| CN1195952A (zh) | 图象传输装置和图象传输方法 | |
| CN110769297A (zh) | 一种音视频数据的处理方法和系统 | |
| CN110769179B (zh) | 一种音视频数据流的处理方法和系统 | |
| CN115484494B (zh) | 一种数字孪生视频流的处理方法、装置及设备 | |
| CN112104835B (zh) | 一种视频传输方法、装置、设备和可读存储介质 | |
| CN116506727A (zh) | 协同拍摄系统、方法及设备 | |
| CN110475089B (zh) | 一种多媒体数据的处理方法和视联网终端 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18838256 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2020503817 Country of ref document: JP Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2018838256 Country of ref document: EP |