IP Library Granted Patent US 7,254,175
Granted Patent B2
US 7,254,175 · App. 11/141,955 · Granted Aug 7, 2007

Frame-accurate seamless splicing of information streams

Assignee: CrystalMedia Technology, Inc.
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 7,254,175
App. No.
11/141,955
Granted
Aug 7, 2007
Kind
B2
Abstract

A method and apparatus for generating universal splice point adapters, where during a splicing operation an “out-point splicing adapter” is used to transition from an exit stream, while an “in-point splicing adapter” is used to transition to an entry stream.

Claims (64)

1. A method for generating a splice point adapter, comprising the steps of:

identifying at least one out-frame within a transport stream, said out-frame representing a last frame of said transport stream to be included in a spliced transport stream;

decoding, for each identified out-frame, a respective portion of said transport stream including said out-frame; and

re-encoding each decoded portion of said transport stream to produce a respective out-point adapter, each of said out-point adapters including a predefined terminating out-point condition.

2. The method of claim 1 , further comprising the steps of:

identifying at least one in-frame within said transport stream, said in-frame representing a first frame of said transport stream to be included in a spliced transport stream;

decoding, for each identified in-frame, a respective portion of said transport stream including said in-frame; and

re-encoding each decoded portion of said transport stream to produce a respective in-point adapter, each of said in-point adapters including an predefined initial in-point condition.

3. The method of claim 2 , further comprising the step of:

associating each in-point with a respective in-point adapter, wherein, in the case of a concatenating said transport stream to an additional transport stream at a particular in-point, said decoded portion of said transport stream proximate said particular in-point is replaced by said in-point adapter associated with said particular in-point.

4. The method of claim 2 , further comprising the step of indexing each of said transport stream, said step of indexing comprising the steps of:

parsing a transport layer of said transport stream to identify packets associated with at least one of sequence headers, picture headers and predefined splicing syntax; and

determining, for each frame in said transport stream, at least one of a picture number, a picture coding type, a start of frame transport packet number, an end of frame transport packet number, a presentation time stamp (PTS) and a decode time stamp (DTS).

5. The method of claim 4 , wherein said determinations for each frame are stored in a meta file for subsequent use in generating a transition stream.

6. The method of claim 1 , further comprising the step of:

associating each out-point with a respective out-point adapter, wherein, in the case of a concatenating an additional transport stream to said transport stream at a particular out-point, said decoded portion of said transport stream proximate said particular out-point is replaced by said out-point adapter associated with said particular out-point.

7. The method of claim 1 , wherein said decoded portion of said transport stream including said out-frame comprises said out-frame and all preceding frames, in display order, from said out-frame to a prior I-frame;

in the case of said out-frame comprising a B-frame, defining the frame immediately preceding said prior I-frame in transmission order as a final first transport stream frame in said transition stream; and

in the case of said out-frame not comprising a B-frame, defining said out-frame as said final first transport stream frame in said transition stream.

8. The method of claim 1 , wherein said portion of transport stream including said in-frame to be decoded is determined according to the steps of:

decoding, in display order, said in-frame and all non-I-frames following said in-frame up to a next I-frame.

9. A method for generating a splice point adapter, comprising the steps of:

identifying at least one in-frame within a transport stream, said in-frame representing a first frame of said transport stream to be included in a spliced transport stream;

decoding, for each identified in-frame, a respective portion of said transport stream including said in-frame; and

re-encoding each decoded portion of said transport stream to produce a respective in-point adapter, each of said in-point adapters including an predefined initial in-point condition.

10. The method of claim 9 , further comprising the steps of:

identifying at least one out-frame within said transport stream, said out-frame representing a last frame of said transport stream to be included in a spliced transport stream;

decoding, for each identified out-frame, a respective portion of said transport stream including said out-frame; and

re-encoding each decoded portion of said transport stream to produce a respective out-point adapter, each of said out-point adapters including a predefined terminating out-point condition.

11. The method of claim 10 , further comprising the step of:

associating each out-point with a respective out-point adapter, wherein, in the case of a concatenating an additional transport stream to said transport stream at a particular out-point, said decoded portion of said transport stream proximate said particular out-point is replaced by said out-point adapter associated with said particular out-point.

12. The method of claim 10 , wherein said decoded portion of said transport stream including said out-frame comprises said out-frame and all preceding frames, in display order, from said out-frame to a prior I-frame;

in the case of said out-frame comprising a B-frame, defining the frame immediately preceding said prior I-frame in transmission order as a final first transport stream frame in said transition stream; and

in the case of said out-frame not comprising a B-frame, defining said out-frame as said final first transport stream frame in said transition stream.

13. The method of claim 9 , further comprising the step of:

associating each in-point with a respective in-point adapter, wherein, in the case of a concatenating said transport stream to an additional transport stream at a particular in-point, said decoded portion of said transport stream proximate said particular in-point is replaced by said in-point adapter associated with said particular in-point.

14. The method of claim 9 , wherein said portion of transport stream including said in-frame to be decoded is determined according to the steps of:

decoding, in display order, said in-frame and all non-I-frames following said in-frame up to a next I-frame.

15. The method of claim 9 , further comprising the step of indexing each of said transport stream, said step of indexing comprising the steps of:

parsing a transport layer of said transport stream to identify packets associated with at least one of sequence headers, picture headers and predefined splicing syntax; and

determining, for each frame in said transport stream, at least one of a picture number, a picture coding type, a start of frame transport packet number, an end of frame transport packet number, a presentation time stamp (PTS) and a decode time stamp (DTS).

16. The method of claim 15 , wherein said determinations for each frame are stored in a meta file for subsequent use in generating a transition stream.

17. In a system for processing transport streams, apparatus for generating a splice point adapter comprising:

a controller, for identifying at least one out-frame within a transport stream, said out-frame representing a last frame of said transport stream to be included in a spliced transport stream;

a decoder, responsive to said controller, for decoding each identified out-frame, a respective portion of said transport stream including said out-frame; and

an encoder, for re-encoding each decoded portion of said transport stream to produce a respective out-point adapter, each of said out-point adapters including a predefined terminating out-point condition.

18. The apparatus of claim 17 , wherein:

said controller identifies at least one in-frame within said transport stream, said in-frame representing a first frame of said transport stream to be included in a spliced transport stream;

said decoder decodes, for each identified in-frame, a respective portion of said transport stream including said in-frame; and

said encoded re-encodes each decoded portion of said transport stream to produce a respective in-point adapter, each of said in-point adapters including an predefined initial in-point condition.

19. The apparatus of claim 18 , wherein:

said controller associates each in-point with a respective in-point adapter, wherein, in the case of a concatenating said transport stream to an additional transport stream at a particular in-point, said decoded portion of said transport stream proximate said particular in-point is replaced by said in-point adapter associated with said particular in-point.

20. The apparatus of claim 18 , wherein:

said controller parses a transport layer of said transport stream to identify packets associated with at least one of sequence headers, picture headers and predefined splicing syntax; and

said controller determines, for each frame in said transport stream, at least one of a picture number, a picture coding type, a start of frame transport packet number, an end of frame transport packet number, and

presentation time stamp (PTS) and a decode time stamp (DTS).

21. The apparatus of claim 20 , further comprising:

a memory, for storing within a meta file said controller determinations for each frame in said transport stream, said meta file intended for subsequent use in generating a transition stream.

22. The apparatus of claim 17 , wherein:

said controller associates each out-point with a respective out-point adapter, wherein, in the case of a concatenating an additional transport stream to said transport stream at a particular out-point, said decoded portion of said transport stream proximate said particular out-point is replaced by said out-point adapter associated with said particular out-point.

23. The apparatus of claim 17 , wherein said decoded portion of said transport stream including said out-frame comprises said out-frame and all preceding frames, in display order, from said out-frame to a prior I-frame;

in the case of said out-frame comprising a B-frame, said controller defines the frame immediately preceding said prior I-frame in transmission order as a final first transport stream frame in said transition stream; and

in the case of said out-frame not comprising a B-frame, said controller defines said out-frame as said final first transport stream frame in said transition stream.

24. The apparatus of claim 17 , wherein said controller causes said decoder to decode, in display order, said in-frame and all non-I-frames following said in-frame up to a next I-frame to provide said portion of transport stream including said in-frame to be decoded.

Assignments (2)
MERGER Recorded Jan 18, 2008
From: CRYSTALMEDIA TECHNOLOGY, INC.
To: MEDIATEK USA INC.
Reel/Frame 020385/0631 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2007
From: SARNOFF CORPORATION
To: CRYSTALMEDIA TECHNOLOGY, INC.
Reel/Frame 019035/0896 →
Continuity (3)
Continuation 0943064400 · Oct 29, 1999
Continuation In Part 0934721300 · Jul 2, 1999
Related Publication 20050281328A1 · Dec 22, 2005