FIELD

The present disclosure relates to the technical field of video playback, in particular to a method and apparatus for determining a video bit rate, an electronic device, and a storage medium.

BACKGROUND

When video playback services are provided, in order to provide good quality of experience (QoE) under dynamically changing network conditions, many video players currently use consecutively numbered video blocks to play videos. When each video is cut into many blocks, a video player applies an adaptive bit rate algorithm to switch a video bit rate in units of blocks to adapt to the current network conditions. The higher the bit rate is, the better the quality of the videos is.

The purpose of the adaptive bit rate algorithm is to provide a good QoE, which mainly includes three parts: a high video bit rate, less playback stuttering, and less bit rate switching. At present, the adaptive bit rate (ABR) algorithm is often used to switch the bit rate. The algorithm predicts a future throughput when selecting a bit rate for each video block, and maximizes a defined QoE factor in a prediction space.

SUMMARY

In a first aspect, an embodiment of the present disclosure provides a method for determining a video bit rate. The method is applied in a device for playing a video based on consecutively numbered video blocks, and includes:

determining a cancellation parameter ξ(k) configured to cancel a throughput prediction error of a k-th video block Fk, k being a positive integer;

determining, a cache amount prediction value of each of video blocks from the video block Fkto a(k+N−1)-th video block Fk+N−1at the end of download thereof based on a throughput prediction value of each of the video blocks from the video block Fkto the (k+N−1)-th video block Fk+N−1and the cancellation parameter ξ(k), N being a positive integer greater than 1;

determining a video playback quality loss value based on a weight value of a bit rate change between adjacent video blocks requested and a cache prediction error between the cache amount prediction value and a preset cache amount target value of each of the video blocks from the video block Fkto the (k+N−1)-th video block Fk+N−1at the end of download thereof, and determining a bit rate r(k) in response to the video playback quality loss value being minimum; and

requesting the video block Fkat a bit rate that does not exceed the bit rate r(k).

In a second aspect, the present disclosure provides an electronic device, including a processor and a memory configured to store an executable instruction of the processor:

the processor is configured to execute followings:

determining a cancellation parameter ξ(k) configured to cancel a throughput prediction error of a k-th video block Fk, k being a positive integer;

determining a cache amount prediction value of each of video blocks from the video block Fkto a(k+N−1)-th video block Fk+N−1at the end of download thereof based on a throughput prediction value of each of the video blocks from the video block Fkto the (k+N−1)-th video block Fk+N−1and the cancellation parameter ξ(k), N being a positive integer greater than 1;

determining a video playback quality loss value based on a weight value of a bit rate change between adjacent video blocks requested and a cache prediction error between the cache amount prediction value and a preset cache amount target value of each of the video blocks from the video block Fkto the video block Fk+N−1at the end of download thereof, and determining a bit rate r(k) in response to the video playback quality loss value being minimum; and

requesting the video block Fkat a bit rate that does not exceed the bit rate r(k).

In a third aspect, the present disclosure further provides a non-transitory computer storage medium, on which a computer program is stored, and the method described in the first aspect of the present disclosure are implemented in response to the program being executed by a processing unit.

