Systems and methods for providing video on demand in an intelligent television
US-9185325-B2 · Nov 10, 2015 · US
US10735800B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10735800-B2 |
| Application number | US-201715443118-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 27, 2017 |
| Priority date | Feb 12, 2013 |
| Publication date | Aug 4, 2020 |
| Grant date | Aug 4, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Live streaming video content is processed and stored for real-time delivery of the content, future VoD viewing of the content, and time-shifted viewing of the content, by manipulating a common manifest or playlist. Previously stored content may be reordered and/or recombined in order to provide a personalized content viewing experience.
Opening claim text (preview).
What is claimed is: 1. A method for effectuating time-shifted playback operations with respect to a real-time streaming program at a client device, the real-time streaming program processed into one or more distinct encodings each including a respective set of sequential segments, the method comprising: receiving a time-shift request from a user of the client device while playing the real-time streaming program; responsive to receiving the time-shift request from the user, determining a target wall-clock time for the real-time streaming program on the client device in a manner that depends on a type of the time-shift request from the user; and subsequent to determining the target wall-clock time for the real-time streaming program on the client device: restarting a media player of the client device, the media player performing; generating a new master manifest request containing the target wall-clock time as a new timestamp for restarting the real-time streaming program at a corresponding video position; and responsive to receiving a new master manifest, generating one or more variant manifest requests for specifying a particular encoding of the real-time streaming program, wherein a variant manifest is provided as a sliding-window variant manifest constructed from the new master manifest based on the target wall-clock time, and wherein the sliding-window variant manifest is constructed by adding a new reference to a next segment and removing an existing reference to an earliest segment in a predetermined window of most recent segments. 2. The method as recited in claim 1 , further comprising: determining that the time-shift request is a pause request; and obtaining a current playback wall-clock timestamp with respect to the real-time streaming program and setting the current playback wall-clock timestamp as the target wall-clock time upon restarting the media player. 3. The method as recited in claim 2 , wherein the current playback wall-clock timestamp is calculated as a sum of a wall-clock time corresponding to a video position at a last playback action and a time duration of playback since the last playback action. 4. The method as recited in claim 1 , further comprising: determining that the time-shift request is a rewind request; and calculating a rewind target wall-clock timestamp by subtracting a rewind duration from a current playback wall-clock timestamp with respect to the real-time streaming program and setting the rewind target wall-clock timestamp as the target wall-clock time upon restarting the media player. 5. The method as recited in claim 1 , further comprising: determining that the time-shift request is a fast forward request; and calculating a fast forward target wall-clock timestamp by adding a fast forward time duration to a current playback wall-clock timestamp with respect to the real-time streaming program and setting the fast forward target wall-clock timestamp as the target wall-clock time upon restarting the media player. 6. An apparatus for effectuating time-shifted playback operations with respect to a real-time streaming program at a client device, the real-time streaming program processed into one or more distinct encodings each including a respective set of sequential segments, the apparatus comprising: a processor; and a memory coupled to the processor, the memory containing program instructions for performing the following acts when executed by the processor: receive a time-shift request from a user of the client device while playing the real-time streaming program; responsive to receiving the time-shift request from the user, determine a target wall-clock time for the real-time streaming program on the client device in a manner that depends on a type of the time-shift request from the user; and subsequent to determining the target wall-clock time for the real-time streaming program on the client device: restart a media player of the client device; generate a new master manifest request containing the target wall-clock time as a new timestamp for restarting the real-time streaming program at a corresponding video position; and responsive to receiving a new master manifest, generate one or more variant manifest requests for specifying a particular encoding of the real-time streaming program, wherein a variant manifest is provided as a sliding-window variant manifest constructed from the new master manifest based on the target wall-clock time, and wherein the sliding-window variant manifest is constructed by adding a new reference to a next segment and removing an existing reference to an earliest segment in a predetermined window of most recent segments. 7. The apparatus as recited in claim 6 , wherein the program instructions further comprise instructions configured to: determine that the time-shift request is a pause request; and obtain a current playback wall-clock timestamp with respect to the real-time streaming program and set the current playback wall-clock timestamp as the target wall-clock time upon restarting the media player. 8. The apparatus as recited in claim 7 , wherein the current playback wall-clock timestamp is calculated as a sum of a wall-clock time corresponding to a video position at a last playback action and a time duration of playback since the last playback action. 9. The apparatus as recited in claim 6 , wherein the program instructions further comprise instructions configured to: determine that the time-shift request is a rewind request; and calculate a rewind target wall-clock timestamp by subtracting a rewind duration from a current playback wall-clock timestamp with respect to the real-time streaming program and set the rewind target wall-clock timestamp as the target wall-clock time upon restarting the media player. 10. The apparatus as recited in claim 6 , wherein the program instructions further comprise instructions configured to: determine that the time-shift request is a fast forward request; and calculate a fast forward target wall-clock timestamp by adding a fast forward time duration to a current playback wall-clock timestamp with respect to the real-time streaming program and set the fast forward target wall-clock timestamp as the target wall-clock time upon restarting the media player.
by placing content in organized collections, e.g. EPG data repository (details of retrieval of video data and associated meta data in video databases G06F16/739) · CPC title
Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP] · CPC title
Remote storage of video programmes received via the downstream path, e.g. from the server · CPC title
Live feed · CPC title
involving advertisement data (advertising per se G06Q30/02) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.