Frame-accurate editing of encoded A/V sequences
First Claim
Patent Images
1. A data processing apparatus, comprising:
- means for reading a first frame sequence of frame-based data and a second frame sequence of frame-based data from a storage device and for editing the first and second frame sequences, to link from a first edit point in the first frame sequence to a second edit point in the second sequence, wherein for each of the stored first and second frame sequences a number of the frames (I-frames) are intra-coded without reference to any other frame of the sequence, a number (P-frames) are respectively coded with reference to one further frame of the sequence, and the remainder (B-frames) are respectively coded with reference to two or more further frames of the sequence; and
joining means for seamlessly joining the first frame sequence to the second frame sequence, said joining means including bridge generation means configured to create a bridge frame sequence to link the first and second edit points by a jump from the first edit point to the bridge frame sequence and a jump from the bridge frame sequence to the second edit point, and by selective incorporation of frames from the stored first and second frame sequences and selective recoding of one or more of the frames within the bridge sequence as determined by the coding type (I,P,B) of the frames from the first and second sequences indicated by the respective edit points.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus are provided for generating bridge segments to enable editing jumps to be made from one A/V segment to another while handling timing and frame constraints imposed by the A/V segment compliance with coding conventions, such as MPEG. The bridge segment is constructed by copying data from the two sequences to be bridged, with some demultiplexing, decoding, remultiplexing and re-encoding of this data to maintain the validity of the edited data stream. Different procedures in terms of copying and/or re-encoding are applied in dependence on the picture encoding types at the source and destination of the edit via the bridging segment.
-
Citations
23 Claims
-
1. A data processing apparatus, comprising:
-
means for reading a first frame sequence of frame-based data and a second frame sequence of frame-based data from a storage device and for editing the first and second frame sequences, to link from a first edit point in the first frame sequence to a second edit point in the second sequence, wherein for each of the stored first and second frame sequences a number of the frames (I-frames) are intra-coded without reference to any other frame of the sequence, a number (P-frames) are respectively coded with reference to one further frame of the sequence, and the remainder (B-frames) are respectively coded with reference to two or more further frames of the sequence; and
joining means for seamlessly joining the first frame sequence to the second frame sequence, said joining means including bridge generation means configured to create a bridge frame sequence to link the first and second edit points by a jump from the first edit point to the bridge frame sequence and a jump from the bridge frame sequence to the second edit point, and by selective incorporation of frames from the stored first and second frame sequences and selective recoding of one or more of the frames within the bridge sequence as determined by the coding type (I,P,B) of the frames from the first and second sequences indicated by the respective edit points. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for editing sequences of frame-based data to link from a first edit point in a first frame sequence to a second edit point in a second sequence, wherein for each of the frame sequences a number of the frames (I-frames) are intra-coded, without reference to any other frame of the sequence, a number (P-frames) are respectively coded with reference to one further frame of the sequence, and the remainder (B-frames) are respectively coded with reference to two or more further frames of the sequence, the method including:
-
seamlessly joining the first frame sequence to the second frame sequence, said seamlessly joining including creating a bridge frame sequence to link the first and second edit points by a jump from the first edit point to the bridge frame sequence and a jump from the bridge frame sequence to the second edit point, the bridge frame sequence incorporating frames from the first and second frame sequences with selective recoding of frames within the bridge sequence being determined by the coding type (I,P,B) of the frames from the first and second sequences indicated by the respective edit points. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
detecting respective time stamps in the first and second sequences;
deriving a value specifying a discontinuity between the time stamps;
calculating an offset to be applied to time stamps of the second sequence to remove said discontinuity; and
applying said offset to the second sequence.
-
-
15. The method as claimed in claim 10, wherein the storage device is an optical disc and the location of the first and second sequences thereon is indicated by a table of contents held by the disc.
-
16. The method as claimed in claim 10, wherein the frame indicated by the first edit point is a B-frame and the jump to the first frame of the bridge frame sequence is made on the nearest preceding P-frame in the display order of the first sequence.
-
17. The method as claimed in claim 16, wherein the first frame of the bridge sequence following the jump thereto comprises a reference frame extracted from the second sequence followed by those B-frames of the first sequence up to the first edit point, said B-frames having been re-encoded with reference to the reference frame.
-
18. The method as claimed in claim 10, wherein the frame indicated by the first edit point is an I-frame or a P-frame and the jump to the first frame of the bridge sequence is made following the nearest preceding B-frame in the display order of the first sequence.
-
19. The method as claimed in claim 10, wherein the frame indicated by the second edit point is a B-frame and the bridge sequence frames preceding the jump to the second sequence comprise those second sequence frames from the nearest P-frame preceding the indicated frame in bit stream order and any intervening B-frames.
-
20. The method as claimed in claim 10, wherein the frame indicated by the second edit point is a P-frame and the bridge sequence frame preceding the jump to the second sequence comprises the P-frame.
-
21. The method as claimed in claim 19 or claim 20, wherein the contents of a P-frame included prior to the jump from the bridge sequence to the second sequence are re-encoded in the bridge sequence as an I-frame.
-
22. The method as claimed in claim 10, wherein the frame indicated by the second edit point is an I-frame and the bridge sequence frame preceding the jump to the second sequence comprises the I-frame.
-
23. A storage device comprising a plurality of frame sequences together with one or more bridge sequences linking respective pairs of sequences at specified edit points and a table of contents identifying the respective storage address of each frame sequence and bridge sequence, each bridge sequence having been generated following the method of claim 10.
Specification