Video encoding and decoding apparatus, method, and system
Abstract
A video sequence is encoded by encoding key frames to obtain coded data and non-key frames to obtain error-correcting information. In the encoding process, key frame data are stored in a buffer, first motion information pertaining to the key frames is obtained, and the first motion information is applied to the stored key frame data to generate predicted key frame data. Second motion information pertaining to the non-key frames is also obtained and used to generate predicted non-key frame data. Either the first motion information is obtained from the second motion information, or the second motion information is obtained from the first motion information. The encoder accordingly does not have to obtain motion information from the decoder, and can estimate the amount of error-correcting information to send to the decoder.
Claims
exact text as granted — not AI-modified1 . An encoding apparatus for encoding a sequence of moving-picture frames that has been divided into a sequence of key frames and a sequence of non-key frames, the encoding apparatus including a key frame encoder for encoding the key frames to generate coded data and a non-key frame encoder for encoding the non-key frames to generate error-correcting information, wherein:
the key frame encoder comprises a first key frame buffer for storing key frame data, a first motion information generator for obtaining first motion information pertaining to the key frames, and a first motion compensator for applying the first motion information to the key frame data stored in the first key frame buffer to generate first predicted key frame data; and the non-key frame encoder comprises a second motion information generator for obtaining second motion information pertaining to the non-key frames, and a predicted image generator for using the second motion information to generate predicted non-key frame data; and wherein one of the first and second motion information generators supplies one of the first and second motion information to another one of the first and second motion information generators for use in generating another one of the first and second motion information.
2 . The encoding apparatus of claim 1 , wherein:
the key frame encoder obtains the coded data representing some of the key frames by encoding differences between the key frames and the first predicted key frame data; the key frame encoder obtains the key frame data stored in the first key frame buffer by locally decoding the coded data; the non-key frame encoder obtains the error-correcting information representing the non-key frames by encoding the non-key frames; and the non-key frame encoder further comprises an amount estimator that uses the predicted non-key frame data to decide how much of the error-correcting information to output from the non-key frame encoder.
3 . The encoding apparatus of claim 1 , wherein:
the second motion information generator generates the second motion information from the key frames and/or the non-key frames and supplies the second motion information to the first motion information generator; and the first motion information generator generates the first motion information by extrapolation from the second motion information.
4 . The encoding apparatus of claim 1 , wherein:
the first motion information generator generates the first motion information from the key frame data stored in the first key frame buffer and supplies the first motion information to the second motion information generator; and the second motion information generator generates the second motion information by interpolation from the first motion information.
5 . The encoding apparatus of claim 4 , wherein the second motion information generator also uses the key frames and/or the non-key frames to generate the second motion information for at least one non-key frame for which the first motion information needed for interpolation is unavailable.
6 . A system for encoding and decoding a sequence of moving-picture frames that has been divided into a sequence of key frames and a sequence of non-key frames, the system including the encoding apparatus of claim 1 and a decoding apparatus, the decoding apparatus comprising:
a key frame decoder for decoding the decoded data to obtain decoded key frame data and generating second predicted non-key frame data from the decoded key frame data; and a non-key frame decoder for receiving the error-correcting information output from the encoding apparatus and applying the error-correcting information to the second predicted non-key frame data to generate decoded non-key frame data.
7 . The system of claim 6 , wherein the key frame decoder further comprises:
a second key frame buffer for storing key frame data; and a second motion compensator for receiving the first motion information from the first motion information generator and applying the first motion information to the key frame data stored in the second key frame buffer to generate the second predicted non-key frame data.
8 . A method of encoding a sequence of moving-picture frames that has been divided into a sequence of key frames and a sequence of non-key frames to obtain coded data representing the key frames and error-correcting information representing the non-key frames, the method comprising:
storing key frame data in a first key frame buffer; obtaining first motion information pertaining to the key frames; applying the first motion information to the key frame data stored in the first key frame buffer to generate first predicted key frame data; obtaining second motion information pertaining to the non-key frames; and using the second motion information to generate predicted non-key frame data; wherein one of the first and second motion information is obtained from another one of the first and second motion information.
9 . The method of claim 8 , further comprising:
obtaining the coded data representing some of the key frames by encoding differences between the key frames and the first predicted key frame data; locally decoding the coded data to obtain the key frame data stored in the first key frame buffer; obtaining the error-correcting information representing the non-key frames by encoding the non-key frames; and using the predicted non-key frame data to decide how much of the error-correcting information to output.
10 . The method of claim 8 , wherein:
the second motion information generator generates the second motion information from the key frames and/or the non-key frames; and the first motion information generator generates the first motion information by extrapolation from the second motion information.
11 . The method of claim 8 , wherein:
the first motion information generator generates the first motion information from the key frame data stored in the first key frame buffer; and the second motion information generator generates the second motion information by interpolation from the first motion information.
12 . The method of claim 11 , wherein for at least one non-key frame, for which the first motion information needed for interpolation is unavailable, the second motion information generator generates the second motion information from the key frames and/or the non-key frames.
13 . A method of decoding a sequence of moving-picture frames that has been divided into a sequence of key frames and a sequence of non-key frames and encoded by an encoding apparatus using the method of claim 8 , the method comprising:
decoding the decoded data to obtain decoded key frame data; generating second predicted non-key frame data from the decoded key frame data; and receiving the error-correcting information output from the encoding apparatus and applying the error-correcting information to the second predicted non-key frame data to generate decoded non-key frame data.
14 . The method of claim 13 , further comprising:
storing the decoded key frame data in a second key frame buffer; receiving the first motion information from the encoding apparatus; and applying the first motion information to the key frame data stored in the second key frame buffer to generate the second predicted key frame data.
15 . A machine readable tangible medium storing instructions executable by a computing device to encode a sequence of moving-picture frames that has been divided into a sequence of key frames and a sequence of non-key frames and obtain coded data representing the key frames and error-correcting information representing the non-key frames by the method of claim 8 .Join the waitlist — get patent alerts
Track US2010220787A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.