IP Library Granted Patent US 8,804,845
Granted Patent B2
US 8,804,845 · App. 11/831,906 · Granted Aug 12, 2014

Non-enhancing media redundancy coding for mitigating transmission impairments

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,804,845
App. No.
11/831,906
Granted
Aug 12, 2014
Kind
B2
Abstract

In one embodiment, a method comprises identifying a plurality of frames of interest from a primary stream of encoded frames. The method further comprises selecting at least one of the frames of interest for inclusion in a separate redundant stream. The method further comprises producing another encoded instance of the at least one selected encoded frame. The method further comprises associating the another encoded instance of the at least one selected frame in the separate redundant stream with the corresponding selected encoded frame in the primary stream. The method further comprises providing the primary stream, the separate redundant stream, and a common clock reference to a decoder.

Claims (48)

1. A method comprising:

identifying a plurality of frames of interest from a primary stream of encoded frames;

selecting at least one of the frames of interest for inclusion in a separate redundant stream, wherein frame selection differentiates between IDR frames, I frames, and anchor frames based on respectively assigned levels, wherein the anchor frames may comprise an I frame, an IDR frame, or a forward predicted frame dependent only on a most recently decoded anchor frame;

assigning a first level to an anchor frame only if a video encoder uses relative lower quantization values resulting in a higher number of bits;

assigning a second level to a reference frame that is not an anchor frame, wherein the reference frame references one or more anchor frames;

assigning a third level to an anchor frame that is a forward predicted frame;

assigning a fourth level to a reference frame which only references anchor frames;

producing another encoded instance of the at least one selected encoded frame;

associating the another encoded instance of the at least one selected encoded frame in the separate redundant stream with the corresponding selected frame in the primary stream; and

providing the primary stream, the separate redundant stream, and a common clock reference to a decoder.

2. The method of claim 1 , further comprising: selecting the at least one frame based on importance of the selected frame to decoding of the primary stream.

3. The method of claim 1 , further comprising: selecting the least one frame based on frame type of the at least one frame.

4. The method of claim 1 , further comprising: selecting the least one frame if the at least one frame is a non-discardable frame.

5. The method of claim 1 , further comprising: selecting the least one frame if the at least one frame is a forward-predicted frame.

6. The method of claim 1 , further comprising: selecting the least one frame if the at least one frame is an anchor frame.

7. The method of claim 1 , further comprising: specifying the common clock reference.

8. The method of claim 1 , further comprising transmitting the primary stream at a first time and the redundant stream at a second time, the first time earlier than the second time.

9. The method of claim 1 , further comprising transmitting the primary stream on a first channel and the redundant stream on a second channel different than the first channel.

10. The method of claim 1 , further comprising transmitting the primary stream at a first bitrate and the redundant stream at a second bitrate lower than the first bitrate.

11. A system comprising:

means for processing a primary stream of encoded frames;

means for selecting from the primary stream of encoded frames at least one frame, wherein frame selection differentiates between IDR frames, I frames, and anchor frames based on respectively assigned levels, wherein the anchor frames may comprise an I frame, an IDR frame, or a forward predicted frame dependent only on a most recently decoded anchor frame;

assigning a first level to an anchor frame only if a video encoder uses relative lower quantization values resulting in a higher number of bits;

assigning a second level to a reference frame that is not an anchor frame, wherein the reference frame references one or more anchor frames;

assigning a third level to an anchor frame that is a forward predicted frame;

assigning a fourth level to a reference frame which only references anchor frames;

means for including another encoded instance of the at least one selected encoded frame in a separate redundant stream;

means for specifying a common clock reference; means for associating the another encoded instance of the at least one selected encoded frame in the separate redundant stream with the corresponding selected frame in the primary stream; and

means for providing the primary stream, the separate redundant stream, and common clock reference to a decoder.

12. The system of claim 11 , further comprising: means for selecting the least one frame based on importance of the selected frame to decoding of the encoded stream.

13. The system of claim 11 , further comprising: means for selecting the least one frame based on frame type of the at least one frame.

14. The system of claim 11 , further comprising: means for selecting the least one frame based on a number of frames which depend on the at least one frame.

15. The system of claim 11 , further comprising: means for selecting the least one frame if the at least one frame is a forward-predicted frame.

16. An apparatus comprising:

a redundant stream generator configured to process a primary stream of encoded frames to produce a redundant stream;

a multiplexer configured to combine the primary stream and the redundant stream into a combined stream; and

a network interface configured to transmit the combined stream to a decoder, the redundant stream generator further configured to:

select from the primary stream of encoded frames at least one frame; include another encoded instance of the at least one selected encoded frame in a separate redundant stream, wherein frame selection differentiates between IDR frames, I frames, and anchor frames based on respectively assigned levels, wherein the anchor frames may comprise an I frame, an IDR frame, or a forward predicted frame dependent only on a most recently decoded anchor frame;

assigning a first level to an anchor frame only if a video encoder uses relative lower quantization values resulting in a higher number of bits;

assigning a second level to a reference frame that is not an anchor frame, wherein the reference frame references one or more anchor frames;

assigning a third level to an anchor frame that is a forward predicted frame;

assigning a fourth level to a reference frame which only references anchor frames;

specify a common clock reference; and

associate the another encoded instance of the at least one selected encoded frame in the separate redundant stream with the corresponding selected frame in the primary stream.

17. The apparatus of claim 16 , wherein the redundant stream generator is further configured to select the least one frame if the at least one frame is an anchor frame.

18. The apparatus of claim 16 , wherein the redundant stream generator is further configured to select the least one frame based on a direction of a reference frame referred to by the at least one frame.

19. The apparatus of claim 16 , wherein the redundant stream generator is further configured to select the least one frame based on a number of frames which depend on the at least one frame.

20. The apparatus of claim 16 , wherein the redundant stream generator is further configured to select the least one frame based on size of the at least one frame.

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT 7523479 NEEDS TO BE INCLUDED, WAS ACCIDENTALLY MISSED WHEN RECORDING ASSIGNMENT PREVIOUSLY RECORDED ON REEL 049603 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE NEED TO INCLUDE PATENT 7523479 IN THE ASSIGNMENT. WAS ACCIDENTALLY MISSED ON LAST RECORDING. Recorded Jun 9, 2021
From: CISCO TECHNOLOGY, INC.
To: TECH 5 SAS
Reel/Frame 058043/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 4, 2019
From: THOMSON LICENSING SAS
To: INTERDIGITAL VC HOLDINGS, INC
Reel/Frame 050262/0282 →
MERGER Recorded Jun 23, 2019
From: TECH 5
To: THOMSON LICENSING
Reel/Frame 049560/0317 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2019
From: CISCO TECHNOLOGY, INC.
To: TECH 5
Reel/Frame 049561/0809 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2007
From: RODRIGUEZ, ARTURO A.; VERSTEEG, WILLIAM C.; KERNEN, THOMAS
To: CISCO TECHNOLOGY, INC.
Reel/Frame 019906/0896 →