Systems and methods for improving quality of service while streaming code-agnostic content
Systems and methods are described for a media guidance application (e.g., implemented on a user device) that improves quality of service while streaming code-agnostic content by optimizing buffering based on bit rate.
1. A method comprising:
receiving a request for a content item, wherein the content item comprises a first portion, a second portion, and third portion, and wherein the first portion of the content item is scheduled for playing before the second portion of the content item and the second portion is scheduled for playing before the third portion of the content item;
accessing a first minimum bit rate for transmission of the second portion;
accessing a second minimum bit rate for transmission of the third portion from a manifest file;
comparing the first minimum bit rate for the second portion and the second minimum bit rate for the third portion;
and
in response to determining that the second minimum bit rate for the third portion is greater than the first minimum bit rate for the second portion:
while the first portion is playing, buffering the third portion, that is scheduled for playing after the second portion, prior to buffering of the second portion.
2. The method of claim 1 , wherein the content item comprises video content, and wherein the second minimum bit rate is based on maintaining a minimum video resolution during playing of the third portion.
3. The method of claim 2 , further comprising:
detecting a threshold number of different colors in the third portion; and
determining, based on the threshold number of different colors, the minimum video resolution.
4. The method of claim 2 , further comprising:
detecting a threshold frame rate for the third portion; and
determining, based on the threshold frame rate, the minimum video resolution.
5. The method of claim 1 , further comprising:
playing the second portion of the content item; and
playing the third portion of the content item subsequent to the second portion.
6. The method of claim 1 , wherein the first minimum bit rate of the second portion is based on a content attribute of the second portion.
7. The method of claim 1 , further comprising:
determining that current bandwidth conditions support buffering the third portion while the first portion is being played without stalling the playing of the first portion.
8. The method of claim 1 , wherein the first and second minimum bit rates are predetermined by a content provider.
9. The method of claim 1 , wherein the first portion is playing on a user device.
10. A system comprising:
buffer memory for buffering content; and
control circuitry configured to:
receive a request for a content item, wherein the content item comprises a first portion, a second portion, and third portion, and wherein the first portion of the content item is scheduled for playing before the second portion of the content item and the second portion is scheduled for playing before the third portion of the content item;
access a first minimum bit rate for transmission of the second portion;
access a second minimum bit rate for transmission of the third portion from a manifest file;
compare the first minimum bit rate for the second portion and the second minimum bit rate for the third portion; and
in response to determining that the second minimum bit rate for the third portion is greater than the first minimum bit rate for the second portion:
while the first portion is playing, buffer, in the buffer memory, the third portion, that is scheduled for playing after the second portion, prior to buffering of the second portion.
11. The system of claim 10 , wherein the content item comprises video content, and wherein the second minimum bit rate is based on maintaining a minimum video resolution during playing of the third portion.
12. The system of claim 11 , wherein the control circuitry is further configured to:
detect a threshold number of different colors in the third portion; and
determine, based on the threshold number of different colors, the minimum video resolution.
13. The system of claim 11 , wherein the control circuitry is further configured to:
detect a threshold frame rate for the third portion; and
determine, based on the threshold frame rate, the minimum video resolution.
14. The system of claim 10 , wherein the control circuitry is further configured to:
play the second portion of the content item; and
play the third portion of the content item subsequent to the second portion.
15. The system of claim 10 , wherein the first minimum bit rate of the second portion is based on a content attribute of the second portion.
16. The system of claim 10 , wherein the control circuitry is further configured to:
determine that current bandwidth conditions support buffering the third portion while the first portion is being played without stalling the playing of the first portion.
17. The system of claim 10 , wherein the first and second minimum bit rates are predetermined by a content provider.
18. The system of claim 10 , wherein the first portion is playing on a user device.