DYNAMIC INTRA-CODED MACROBLOCK REFRESH INTERVAL FOR VIDEO ERROR CONCEALMENT
First Claim
1. A method for video error concealment of a video signal, comprising the steps of:
- receiving a plurality of macroblocks, each frame of the video signal having an integer number of macroblocks;
selecting a refresh interval based upon network call rates and packet-loss error rates; and
encoding a subset of the plurality of macroblocks as refresh intra-coded macroblocks based upon the selected refresh interval;
wherein the selected refresh interval is an integer m, the integer m and factors of the integer m when divided into the integer number of macroblocks per frame do not give integer quotients.
10 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides, in one embodiment, a system and method for concealing video errors. The system includes a coding engine for processing each frame of a video signal to generate macroblocks, selecting a refresh interval based upon network communication parameters, and encoding one or more of the macroblocks as refresh intra-coded macroblocks based upon the selected refresh interval. The refresh intra-coded macroblocks are placed into discrete data packets for transmission across a network to one or more remote devices. Upon receiving other refresh intra-coded macroblocks from a remote device via the network, the coding engine decodes the received intra-coded macroblocks, and places the decoded macroblocks in a newly decoded video frame to be used as reference frame macroblocks for reducing video errors associated with prediction drift.
50 Citations
30 Claims
-
1. A method for video error concealment of a video signal, comprising the steps of:
-
receiving a plurality of macroblocks, each frame of the video signal having an integer number of macroblocks;
selecting a refresh interval based upon network call rates and packet-loss error rates; and
encoding a subset of the plurality of macroblocks as refresh intra-coded macroblocks based upon the selected refresh interval;
wherein the selected refresh interval is an integer m, the integer m and factors of the integer m when divided into the integer number of macroblocks per frame do not give integer quotients. - View Dependent Claims (2, 3, 5, 6, 7, 8, 9, 10, 11)
-
-
4. (canceled)
-
12. An electronic-readable medium having embodied thereon a program, the program being executable by a machine to perform method steps for video error concealment of a video signal, the method steps comprising:
-
receiving a plurality of macroblocks, each frame of the video signal having an integer number of macroblocks;
selecting a refresh interval based upon network call rates and packet-loss error rates; and
encoding a subset of the plurality of macroblocks as refresh intra-coded macroblocks based upon the selected refresh interval, wherein the selected refresh interval is an integer m, the integer m and factors of the integer m when divided into the integer number of macroblocks per frame do not give integer quotients. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
-
13. (canceled)
-
21. A system for video error concealment, comprising:
-
a coding engine configured to process each frame of a video signal to generate macroblocks, each frame having an integer number of macroblocks dependent upon a video signal format, select a refresh interval based upon network communication parameters, wherein the selected refresh interval is an integer m, the integer m and factors of the integer m when divided into the integer number of macroblocks per frame do not give integer quotients, and encode a subset of macroblocks from the generated macroblocks as refresh intra-coded macroblocks based upon the selected refresh interval; and
a macroblock packetization engine configured to place each of the encoded macroblocks into discrete data packets for transmission across a network. - View Dependent Claims (22, 23, 25, 26, 27, 28)
-
-
24. (canceled)
-
29. A system for video error concealment of a video signal, comprising:
-
means for receiving a plurality of macroblocks, each frame of the video signal having an integer number of macroblocks;
means for selecting a refresh interval based upon network call rates and packet-loss error rates. wherein the selected refresh interval is an integer m, the integer m and factors of the integer m when divided into the integer number of macroblocks per frame do not give integer quotients; and
means for encoding a subset of the plurality of macroblocks as refresh intra-coded macroblocks based upon the selected refresh interval. - View Dependent Claims (30)
-
Specification