System and method for modifying media streams using metadata
US-11917323-B2 · Feb 27, 2024 · US
US9531983B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9531983-B2 |
| Application number | US-201314096743-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 4, 2013 |
| Priority date | Apr 25, 2005 |
| Publication date | Dec 27, 2016 |
| Grant date | Dec 27, 2016 |
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.
A module may provide codec-independent services including determining frame display order, frame dependency sets, and queuing the dependency frames in advance so as to enable display of a video. The module enables a video to be played forwards or backwards at a variety of playback speeds from any position within the video. In one implementation, a device communicatively coupled to a plurality of decoders accesses a video that includes a plurality of frames. One or more of the frames are decodable by one or more of the communicatively coupled decoders. The device identifies a frame in the video that is to be displayed, and determines a plurality of dependency frames in the video upon which decoding of the frame to be displayed depends. The device provides an indication that one or more associated dependency frames are to be decoded.
Opening claim text (preview).
What is claimed is: 1. A method of decoding coded video data, comprising, when a display mode is selected involving display of the decoded video data in a non-sequential display order, then for each frame of data to be displayed: reading a metadata table provided with the coded video data, the metadata table storing information of each coded frame of the video data; identifying an entry of the metadata table that is associated with the frame to be displayed; determining, from the identified entry, whether the coded video data of the frame to be displayed is coded as at least one of a sync or partial sync frame; in accordance with a determination that the coded video data of the frame is coded as at least one of a sync or partial sync frame, queuing the coded video data of the frame in a decoding queue; in accordance with a determination that the coded video data of the frame is not coded as at least one of a sync or partial sync frame, searching the metadata table for other coded frames to be decoded in conjunction with decoding of the frame to be displayed and queuing frame(s) identified from the search in the decoding queue together with the coded video data of the frame; and decoding the queued frames in order according to the decoding queue. 2. The method of claim 1 further comprising: determining, from the identified entry, whether the coded video data of the frame to be displayed is droppable, and not decoding the frame when playback has been stopped or reversed. 3. The method of claim 1 further comprising: determining, from the identified entry, whether the coded video data of the frame to be displayed is droppable, and not decoding the frame when buffer space is needed. 4. The method of claim 1 wherein the searching further comprises: identifying entries of the metadata table which are close in an entry sample number and are indicated to be either a sync or partial sync frame and queuing those frame(s). 5. The method of claim 1 further comprising: determining, from the identified entry, what the number of the partial sync threshold is and decoding at least that number of partial sync frames before decoding the frame to be displayed. 6. The method of claim 1 further comprising: determining, from the identified entry, a decode duration; and and calculating a decode time from the decode duration compared with a decode time of the previously decoded frame. 7. The method of claim 6 further comprising: determining, from the identified entry, a display offset; and calculating a display time for the frame by summing the decode time and the display offset. 8. A non-transitory machine-readable storage device encoded with instructions that, when executed by a processing apparatus, cause the processing apparatus to perform operations comprising: when a display mode is selected involving display of the decoded video data in a non-sequential display order, then for each frame of data to be displayed: reading a metadata table provided with the coded video data, the metadata table storing information of each coded frame of the video data; identifying an entry of the metadata table that is associated with the frame to be displayed; determining, from the identified entry, whether the coded video data of the frame to be displayed is coded as at least one of a sync or partial sync frame; queuing the coded video data of the frame to be displayed in a decoding queue in response to the coded video data of the frame to be displayed being coded as at least one of a sync or partial sync frame, and in response to the coded video data of the frame to be displayed being not so coded, searching the metadata table for other coded frames to be decoded in conjunction with decoding of the frame to be displayed and queuing frame(s) identified from the search in the decoding queue together with the coded video data of the frame to be displayed; and; decoding the queued frames in order according to the decoding queue. 9. The non-transitory machine-readable storage device of claim 8 , where the operations further comprise: determining, from the identified entry, whether the coded video data of the frame to be displayed is droppable, and not decoding the frame when playback has been stopped or reversed. 10. The non-transitory machine-readable storage device of claim 8 , where the operations comprise: determining, from the identified entry, whether the coded video data of the frame to be displayed is droppable, and not decoding the frame when buffer space is needed. 11. The non-transitory machine-readable storage device of claim 8 , where the operations comprise: identifying entries of the metadata table which are close in an entry sample number and are indicated to be either a sync or partial sync frame and queuing those frame(s). 12. The non-transitory machine-readable storage device of claim 8 , where the operations comprise: determining, from the identified entry, what the number of a partial sync threshold is and decoding at least that number of partial sync frames before decoding the frame to be displayed. 13. The non-transitory machine-readable storage device of claim 8 , where the operations comprise: determining, from the identified entry, a decode duration; and and calculating a decode time from the decode duration compared with a decode time of the previously decoded frame. 14. The non-transitory machine-readable storage device of claim 13 , where the operations comprise: determining, from the identified entry, a display offset; and calculating a display time for the frame by summing the decode time and the display offset. 15. A system comprising digital electronic circuitry configured to perform operations comprising: when a display mode is selected involving display of the decoded video data in a non-sequential display order, then for each frame of data to be displayed: reading a metadata table provided with the coded video data, the metadata table storing information of each coded frame of the video data; identifying an entry of the metadata table that is associated with the frame to be displayed; determining, from the identified entry, whether the coded video data of the frame to be displayed is coded as at least one of a sync or partial sync frame; in response to determining that the coded video data of the frame to be displayed is coded as at least one of a sync or partial sync frame, queuing coded video data for the frame to be displayed in a decoding queue; in response to determining that the coded video data of the frame to be displayed is not coded as at least one of a sync or partial sync frame, searching the metadata table for other coded frames to be decoded in conjunction with decoding of the frame to be displayed and queuing frame(s) identified from the search in the decoding queue together with the coded video data of the frame to be displayed; and decoding the queued frames in order according to the decoding queue. 16. The system of claim 15 , where the operations comprise: determining, from the identified entry, whether the coded video data of the frame to be displayed is droppable, and not decoding the frame when playback has been stopped or reversed. 17. The system of claim 15 , where the operations comprise: determining, from the identified entry, whether the coded video data of the frame to be displayed is droppable, and not decoding the frame when buffer space is needed. 18. The system of claim 15 , where the operations comprise: identifying entries of the metadata table which are close in an ent
Television signal recording · CPC title
by playing back content from the storage medium (reproduction of recorded television signals H04N5/76; reproduction of recorded television signals H04N9/79) · CPC title
Prioritisation of hardware or computational resources · CPC title
Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder · CPC title
Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.