Method and apparatus for processing digital data
AssigneeInternational Business Machines Corporation
InventorsLauren Lee Post, Michael Joseph Koval, Darryl Ray Polk
Life of this patent
Estimating the term…
Abstract
A method and apparatus for synchronizing a data stream that contains video data in which the video data includes frames. As frames are being processed, a number of frames processed is identified along with a number of frames dropped during processing. A synchronization speed is identified using the number of frames processed and the number of frames dropped. A frame is selectively dropped from the data stream based on the synchronization speed.
Claims39
A method in a data processing system for synchronizing audio data and video data in a data stream, wherein the video data includes a plurality of frames associated with a plurality of frames types, the method comprising:
- identifying a synchronization process for the data stream using the plurality of frames and the associated plurality frame types, wherein the synchronization process is identified based on a speed of the apparatus, within the data processing system, processing the data stream;
- and
- selectively decoding the plurality of frames using the identified synchronization process.
A method in a data processing system for synchronizing video data in a data stream including video data wherein the video data includes a plurality of frames identified by a plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames, the method comprising:
- identifying a synchronization speed using the plurality of frames associated with the plurality of frame types;
- and
- selectively decoding the plurality of frames based on the identified synchronization speed and the plurality of frame types.
A method in a data processing system for synchronizing video data in a data stream, wherein the data stream is an MPEG data stream, including video data, wherein the video data includes a plurality of frames identified by a plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames, the method comprising:
- identifying a synchronization speed using the plurality of frames associated with the plurality of frame types;
- selectively decoding the plurality of frames based on the identified synchronization speed;
- and
- wherein the plurality of fame types include B frames, I frames, and P frames and wherein the step of selectively decoding the plurality of frames based on the identified synchronization speed comprises dropping all frames if the synchronization speed is slow.
A method in a data processing system for synchronizing video data in a data stream, wherein the data stream is an MPEG data stream, including video data, wherein the video data includes a plurality of frames identified by a plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames, the method comprising:
- identifying a synchronization speed using the plurality of frames associated with the plurality of frame types;
- selectively decoding the plurality of frames based on the identified synchronization speed,
- wherein the plurality of fame types include B frames, I frames, and P frames and wherein the step of selectively decoding the plurality of frames based on the identified synchronization speed comprises dropping all frames if the synchronization speed is slow;
- and
- wherein the synchronization speed is slow if a percentage of dropped frames is equal to or greater than sixty-five percent.
A method in a data processing system for synchronizing video data in a data stream, wherein the data stream is an MPEG data stream, including video data, wherein the video data includes a plurality of frames identified by a plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames, the method comprising:
- identifying a synchronization speed using the plurality of frames associated with the plurality of frame types;
- selectively decoding the plurality of frames based on the identified synchronization speed;
- and
- wherein the plurality of frame types include B frames, I frames, and P frames and wherein the step of selectively decoding the plurality of frames based on the identified synchronization speed comprises dropping only P frames and B frames if the synchronization speed is medium.
A method in a data processing system for synchronizing video data in a data stream, wherein the data stream is an MPEG data stream, including video data, wherein the video data includes a plurality of frames identified by a plurality of frame type in which each frame within the plurality of frames is associated with a frame type from the plurality of frames, the method comprising:
- identifying a synchronization speed using the plurality of frames associated with the plurality of frame types;
- selectively decoding the plurality of frames based on the identified synchronization speed;
- wherein the plurality of frame type, include B frames, I frames, and P frames and wherein the step of selectively decoding the plurality of frames based on the identified synchronization speed comprises dropping only P frames and B frames if the synchronization speed is medium;
- and
- wherein the synchronization speed is medium if the percentage of dropped frames is in a range from thirty-five percent to sixty-five percent.
A method in a data processing system for synchronizing video data in a data stream, wherein the data stream is an MPEG data stream, including video data, wherein the video data includes a plurality of frames identified by a plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames, the method comprising:
- identifying a synchronization speed using the plurality of frames associated with the plurality of frame types;
- selectively decoding the plurality of frames based on the identified synchronization speed;
- and
- wherein the plurality of frame types include B frames, I frames, and P frames and wherein the step of selectively decoding the plurality of frames based on the identified synchronization speed comprises dropping only graphical object B frames if the synchronization speed is fast.
A method in a data processing system for synchronizing video data in a data stream, wherein the data stream is an MPEG data stream, including video data, wherein the video data includes a plurality of frames identified by a plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames, the method comprising:
- identifying a synchronization speed using the plurality of frames associated with the plurality of frame types;
- selectively decoding the plurality of frames based on the identified synchronization speed,
- wherein the plurality of frame types include B frames, I frames, and P frames and wherein the step of selectively decoding the plurality of frames based on the identified synchronization speed comprises dropping only graphical object B frames if the synchronization speed is fast;
- and
- wherein the synchronization speed is fast if the percentage of dropped frames is in a range from zero percent to thirty-five percent.
A method for synchronizing a data stream including data, wherein the video data includes a plurality of frames having a plurality of frame types, the method comprising:
- processing frames from the plurality of frames;
- determining a number of frames processed;
- determining a number of frames dropped during processing;
- identifying a synchronization speed using the number of frames processed and the number of frames dropped;
- and
- selectively dropping a frame in the data stream based on the synchronization speed and a frame type associated with the frame.
A method for synchronizing a data stream including video data, wherein the video data includes a plurality of frames, the method comprising:
- processing frames from the plurality of frames;
- determining a number of frames processed;
- determining a number of frames dropped during processing;
- identifying a synchronization speed using the number of frames processed and the number of frames dropped;
- selectively dropping a frame in the data stream based on the synchronization speed;
- and
- wherein the plurality of video frames includes I frames, B frames, and P frames, and wherein the step of selectively dropping frames comprises dropping all frames.
A method for synchronizing a data stream including video data, wherein the video data includes a plurality of frames, the method comprising:
- processing frames from the plurality of frames;
- determining a number of frames processed;
- determining a number of frames dropped during processing;
- identifying a synchronization speed using the number of frames processed and the number of frames dropped;
- selectively dropping a frame in the data stream based on the synchronization speed;
- and
- wherein the plurality of frames includes I frames, B frames, and P frames, and wherein the step of selectively dropping frames comprises dropping only B frames and P frames.
A method for synchronizing a data stream including video data, wherein the video data includes a plurality of frames, the method comprising:
- processing frames from the plurality of frames;
- determining a number of frames processed;
- determining a number of frames dropped during processing;
- identifying a synchronization speed using the number of frames processed and the number of frames dropped;
- selectively dropping a frame in the data stream based on the synchronization speed;
- and
- wherein the plurality of frames includes I frames, B frames, and P frames, and wherein the step of selectively dropping frames comprises dropping only B frames.
A data processing system for synchronizing audio data and video data in a data stream, wherein the video data includes a plurality of frames associated with a plurality of frame types, the data processing system comprising:
- identification means for identifying a synchronization process for the data stream using the plurality of frames and the associated plurality of frame types, wherein the synchronization process is identified based on a speed of the apparatus, within the data processing system, processing the data stream;
- and
- decoding means for selectively decoding the plurality of frames using the identified synchronization process.
An apparatus for synchronizing audio data and video data in a data stream, the apparatus comprising:
- reception means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames identified by plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames;
- identification means for identifying a synchronization speed using the plurality of frames associated with the plurality frame types;
- and
- decoding means for selectively decoding the plurality of frames based on the identified synchronization speed and the plurality of frame types.
An apparatus for synchronizing audio data and video data in a data stream, the apparatus comprising:
- reception means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames identified by plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames;
- identification means for identifying a synchronization speed using the plurality of frames associated with the plurality frame types;
- decoding means for selectively decoding the plurality of frames based on the identified synchronization speed;
- and
- wherein the plurality of frame types includes B frames, I frames, and P frames and wherein the decoding means drops all frames if the synchronization speed is slow.
An apparatus for synchronizing audio data and video data in a data stream, the apparatus comprising:
- reception means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames identified by plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames;
- identification means for identifying a synchronization speed using the plurality of frames associated with the plurality frame types;
- decoding means for selectively decoding the plurality of frames based on the identified synchronization speed;
- wherein the plurality of frame types includes B frames, I frames, and P frames and wherein the decoding means drops all frames if the synchronization speed is slow;
- and
- wherein the synchronization speed is slow if a percentage of dropped frames is equal to or greater than sixty-five percent.
An apparatus for synchronizing audio data and video data in a data stream, the apparatus comprising:
- reception means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames identified by plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames;
- identification means for identifying a synchronization speed using the plurality of frames associated with the plurality frame types;
- decoding means for selectively decoding the plurality of frames based on the identified synchronization speed;
- and
- wherein the plurality of frame types include B frames, I frames, and P frames and wherein the decoding means drops only P frames and B frames if the synchronization speed is medium.
An apparatus for synchronizing audio data and video data in a data stream, the apparatus comprising:
- reception means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames identified by plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames;
- identification means for identifying a synchronization speed using the plurality of frames associated with the plurality frame types;
- decoding means for selectively decoding the plurality of frames based on the identified synchronization speed;
- wherein the plurality of Same types include B frames, I frames, and P frames and wherein the decoding means drops only P frames and B frames if the synchronization speed is medium;
- and
- wherein the synchronization speed is medium if the percentage of dropped frames is in a range from thirty-five percent to sixty-five percent.
An apparatus for synchronizing audio data and video data in a data stream, the apparatus comprising:
- reception means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames identified by plurality of frame types in which each if frame within the plurality of frames is associated with a frame type from the plurality of frames;
- identification means for identifying a synchronization speed using the plurality of frames associated with the plurality frame types;
- decoding means for selectively decoding the plurality of frames based on the identified synchronization speed;
- and
- wherein the plurality of frame types includes B frames, frames, and P frames and wherein the decoding means drops only B frames if the synchronization speed is fast.
An apparatus for synchronizing audio data and video data in a data stream, the apparatus comprising:
- reception means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames identified by plurality of frame types in which each frame within the plurality of frames is associated with a frame type from the plurality of frames;
- identification means for identifying a synchronization speed using the plurality of frames associated with the plurality frame types;
- decoding means for selectively decoding the plurality of frames based on the identified synchronization speed;
- wherein the plurality of frame types includes B frames, I frames, and P frames and wherein the decoding means drops only B frames if the synchronization speed is fast;
- and
- wherein the synchronization speed is fast if the percentage of dropped frames is in a range from zero percent to thirty-five percent.
An apparatus for processing video data in a data stream, the apparatus comprising:
- receiving means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames having a plurality of frame types;
- processing means for processing frames from the plurality of frames;
- first determination means for determining a number of frames processed;
- second determination means for determining a number of frames dropped during processing;
- identification means for identifying a synchronization speed suing the number of frames processed and the number of frames dropped;
- and
- dropping means for selectively dropping a frame in the data stream based on the synchronization speed and a frame type associated with the frame.
An apparatus for processing video data in a data stream, the apparatus comprising:
- receiving means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames;
- processing means for processing frames from the plurality of frames;
- first determination means for determining a number of frames processed;
- second determination means for determining a number of frames dropped during processing;
- identification means for identifying a synchronization speed using the number of frames processed and the number of frames dropped;
- dropping means for selectively dropping a frame in the data stream based on the synchronization speed;
- and
- wherein the plurality of video frames includes I frames, B frames, and P frames and wherein the dropping means drops all frames for a selected portion of the data stream.
An apparatus for processing video data in a data stream, the apparatus comprising:
- receiving means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames;
- processing means for processing frames from the plurality of frames;
- first determination means for determining a number of frames processed;
- second determination means for determining a number of frames dropped during processing;
- identification means for identifying a synchronization speed using the number of frames processed and the number of frames dropped;
- dropping means for selectively dropping a frame in the data stream based on the synchronization speed;
- and
- wherein the plurality of frames includes I frames, B frames, and P frames and wherein the dropping means drops only B frames and P frames within a selected portion of the data stream.
An apparatus for processing video data in a data stream, the apparatus comprising:
- receiving means for receiving the data stream, wherein the video data in the data stream includes a plurality of frames;
- processing means for processing frames from the plurality of frames;
- first determination means for determining a number of frames processed;
- second determination means for determining a number of frames dropped during processing;
- identification means for identifying a synchronization speed using the number of frames processed and the number of frames dropped;
- dropping means for selectively dropping a frame in the data stream based on the synchronization speed;
- and
- wherein the plurality of frames includes I frames, B frames, and P frames and wherein the dropping means drops only B frames within a selected portion of the data stream.
A computer program product for use in a data processing stream for processing video data in a data steam, the computer program product comprising:
- a computer usable medium;
- first instructions for receiving the data stream, wherein the video data includes a plurality of frames;
- second instructions for processing frames from the plurality of frames;
- third instructions for determining a number of frames processed;
- fourth instructions for determining a number of frames dropped during processing;
- fifth instructions for identifying a synchronization speed using the number of frames processed and the number of frames dropped;
- and
- sixth instructions for selectively dropping a frame in the data processing system based on the synchronization speed, wherein the instructions are embodied within the computer usable medium.
Dependencies are inferred from the claim text.