Remote pause buffer
Systems, apparatuses, and methods are described for replacing at least a part of a local time shift buffer of a user device with a remote time shift buffer.
1. A method comprising:
generating, by a computing device, master pause buffers for a content item being transmitted to a user device, wherein the master pause buffers comprise buffers having different sizes for different service levels;
receiving, from the user device, a request to pause playback of the content item;
copying, based on the request, a first portion of the content item from a first master pause buffer, of the master pause buffers and corresponding to a service level associated with the user device, to an individual pause buffer;
updating the first master pause buffer and the individual pause buffer to add a second portion, of the content item, that is received by the computing device after the copying; and
after determining that the playback of the content item, at the user device, was paused for a time threshold of the individual pause buffer, automatically causing playback, at the user device, of content from the individual pause buffer.
2. The method of claim 1 , wherein the master pause buffers are associated with different time durations.
3. The method of claim 1 , further comprising:
receiving, from the user device, a manifest request for a manifest corresponding to the individual pause buffer, wherein the manifest request comprises an address of the individual pause buffer,
wherein the automatically causing playback, at the user device, of the content from the individual pause buffer comprises:
sending the manifest;
receiving a content request for content indicated in the manifest;
converting a format of the content indicated in the manifest to match a playback format of the user device; and
sending the content indicated in the manifest.
4. The method of claim 1 , further comprising:
receiving, from the user device, a manifest request for a manifest corresponding to the individual pause buffer; and
after the receiving the manifest request for the manifest corresponding to the individual pause buffer, converting a format of content indicated in the manifest to match a playback format of the user device.
5. The method of claim 1 , further comprising:
after receiving the request, receiving, from the user device, a second request for independent frames included in the content item; and
sending, to the user device, the independent frames included in the content item.
6. The method of claim 1 , further comprising:
while the playback of the content item, at the user device, is paused, receiving, from a second user device, a second request to pause playback of the content item at the second user device; and
generating, based on the second request, a second individual pause buffer by duplicating the individual pause buffer.
7. The method of claim 1 , further comprising:
receiving a second request to pause playback of another content item; and
updating, based on the second request, the individual pause buffer by copying at least a portion of the another content item to the individual pause buffer.
8. The method of claim 1 , wherein the request comprises information indicating the service level associated with the user device.
9. The method of claim 1 , further comprising:
determining, based on a tune time associated with the user device beginning output of the content item and a pause time associated with the user device pausing the playback of the content item, whether to copy an entirety of the first master pause buffer to the individual pause buffer.
10. The method of claim 1 , further comprising:
determining, based on a time interval between a tune time associated with the user device beginning output of the content item and a pause time associated with the user device pausing the playback of the content item, to copy a portion of the first master pause buffer to the individual pause buffer.
11. A method comprising:
generating, by a computing device, master pause buffers for a content item being transmitted to a user device, wherein the master pause buffers comprise different sizes for different service levels;
receiving, from the user device, a request to pause playback of the content item, and indications of a tune time associated with the user device beginning output of the content item and a pause time associated with the user device pausing the playback of the content item;
copying, based on the tune time, the pause time, and a service level associated with the user device, a first portion of the content item from a first master pause buffer, of the master pause buffers, to an individual pause buffer; and
based on determining that a pause state, of the playback of the content item at the user device, satisfies a threshold associated with the individual pause buffer, automatically causing the user device to exit the pause state.
12. The method of claim 11 , wherein the master pause buffers are associated with different storage time durations.
13. The method of claim 11 , wherein the copying the first portion of the content item from the first master pause buffer to the individual pause buffer comprises:
limiting the copying to copying a portion, corresponding to a time interval between the tune time and the pause time, of the content item.
14. The method of claim 11 , further comprising:
updating the first master pause buffer and the individual pause buffer to add a second portion of the content item, wherein the second portion of the content item is different from the first portion of the content item and is received by the computing device after the copying the first portion of the content item from the first master pause buffer to the individual pause buffer.
15. The method of claim 11 , further comprising:
releasing, based on an indication of the user device requesting another content item, a resource of the individual pause buffer.
16. The method of claim 11 , further comprising:
receiving, from the user device, a manifest request for a manifest corresponding to the individual pause buffer,
wherein the automatically causing the user device to exit the pause state comprises:
sending the manifest;
receiving a content request for content indicated in the manifest;
converting a format of the content indicated in the manifest to match a playback format of the user device; and
sending the content indicated in the manifest.