IP Library Granted Patent US 6,925,501
Granted Patent B2
US 6,925,501 · App. 09/836,006 · Granted Aug 2, 2005

Multi-rate transcoder for digital streams

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 6,925,501
App. No.
09/836,006
Granted
Aug 2, 2005
Kind
B2
Abstract

Methods and apparatus are provided to produce a plurality of different rate output bitstreams from a common input bit stream. Overhead data is extracted from the input bit stream. The input bit stream is partially decoded. Thereafter, the at least partially decoded bit stream is re-encoded at different rates, to produce multiple re-encoded bit streams having different rates. The overhead data is combined with each re-encoded bit stream, thereby providing multiple versions of said encoded bit stream at different rates.

Claims (72)

1. Transcoder apparatus for an encoded bit stream, comprising:

a data processor for extracting overhead data from said bit stream;

a decoder for at least partially decoding said bit stream;

a rate control processor for re-encoding the at least partially decoded bit stream at different rates, to produce multiple re-encoded versions of said bit stream, each version of said bit stream carrying the same content and having different rates; and

a multiplexer adapted to combine the overhead data with each of said re-encoded bit streams, and to substantially simultaneously output multiple versions of said encoded bit stream at different rates.

2. Apparatus in accordance with claim 1 wherein:

said encoded bit stream is a compressed video bit stream; and

said transcoder is located at a streaming video server for providing said multiple versions to different clients substantially simultaneously.

3. Apparatus in accordance with claim 1 wherein:

said encoded bit stream is a compressed video bit stream; and

said overhead data comprises at least one of video object sequence (VOS), video object (VO), video object layer (VOL), video object plane (VOP), group of video object planes (GOV) and motion vector (MV) data.

4. Apparatus in accordance with claim 1 wherein said overhead data is extracted from packet headers contained in said encoded bit stream.

5. Apparatus in accordance with claim 1 wherein said rate control processor re-encodes said at least partially decoded bit stream a plurality of times to produce said multiple re-encoded bit streams on a sequential basis.

6. Apparatus in accordance with claim 5 wherein said rate control processor re-encodes said at least partially decoded bit stream separately for each of the multiple re-encoded bit streams.

7. Apparatus in accordance with claim 1 , wherein:

said encoded bit stream is received at a first rate; and

said rate control processor operates at a second rate of at least N times said first rate, where N is the number of re-encoded bit streams provided;

such that the re-encoded bit streams are all provided substantially concurrently with the original compressed video bit stream.

8. Apparatus in accordance with claim 1 , wherein:

first functions that do not effect the rates of the re-encoded bit streams are performed only once on said encoded bit stream; and

second functions that effect said rates are performed separately for each re-encoded bit stream.

9. Apparatus in accordance with claim 8 , wherein:

said encoded bit stream is a compressed video bit stream;

said first functions comprise at least one of variable length decoding and dequantization; and

said second functions comprise at least one of requantization, variable length coding, and motion compensation.

10. Apparatus in accordance with claim 1 , wherein said rate control processor comprises a plurality of encoders operating in parallel to produce said multiple re-encoded bit streams.

11. Apparatus in accordance with claim 1 , wherein said re-encoded bitstreams are provided as variable bitrate streams.

12. Apparatus in accordance with claim 1 , wherein said re-encoded bitstreams are provided as constant bitrate streams.

13. Apparatus in accordance with claim 1 , wherein:

processor cycles of said rate control processor are monitored; and

at least one processing step is skipped in the event the number of processing cycles available to complete a rate control operation may otherwise be insufficient.

14. Apparatus in accordance with claim 13 , wherein:

said encoded bit stream is a compressed video bit stream; and

at least one of a motion compensation step and a DCT step are skipped for a bi-directionally predicted (B) frame in the event the number of processing cycles available to complete a rate control operation may otherwise be insufficient.

15. Apparatus in accordance with claim 13 , wherein the rate control processor:

re-encodes said at least partially decoded bit stream a plurality of times to produce said multiple re-encoded bit streams on a sequential basis; and

selectively skips said at least one processing step for fewer than all of said multiple re-encoded bit streams.

16. A method for providing a plurality of different rate output bitstreams from a common input bit stream, comprising:

extracting overhead data from said input bit stream;

at least partially decoding said input bit stream;

re-encoding the at least partially decoded bit stream at different rates to produce multiple re-encoded versions of said bit stream, each version of said bit stream carrying the same content and having different rates; and

combining the overhead data with each of said re-encoded bit streams; and

outputting substantially simultaneously multiple versions of said encoded bit stream at different rates.

17. A method in accordance with claim 16 , wherein said multiple versions are simultaneously provided from a server to a plurality of different clients.

18. A method in accordance with claim 16 , wherein:

said input bit stream comprises a compressed video bit stream; and

said overhead data comprises at least one of video object sequence (VOS), video object (VO), video object layer (VOL), video object plane (VOP), group of video object planes (GOV) and motion vector (MV) data.

19. A method in accordance with claim 16 , wherein said overhead data is extracted from packet headers contained in said encoded bit stream.

20. A method in accordance with claim 16 , wherein said re-encoding step re-encodes said at least partially decoded bit stream a plurality of times to produce said multiple re-encoded bit streams on a sequential basis.

21. A method in accordance with claim 20 , wherein said re-encoding step re-encodes said at least partially decoded bit stream separately for each of the multiple re-encoded bit streams.

22. The method in accordance with claim 16 , wherein:

said encoded bit stream is received at a first rate; and

said re-encoding step is performed at a second rate of at least N times said first rate, where N is the number of re-encoded bit streams provided;

such that the re-encoded bit streams are all provided substantially concurrently with the original compressed video bit stream.

23. A method in accordance with claim 16 , wherein;

first functions that do not effect the rates of the re-encoded bit streams are performed only once on said encoded bit stream; and

second functions that effect said rates are performed separately for each re-encoded bit stream.

24. A method in accordance with claim 23 , wherein:

said input bit stream comprises a compressed video bit stream;

said first functions comprise at least one of variable length decoding and dequantization; and

said second functions comprise at least one of requantization, variable length coding, and motion compensation.

25. A method in accordance with claim 16 , wherein said re-encoded bitstreams are provided as variable bitrate streams.

26. A method in accordance with claim 16 , wherein said re-encoded bitstreams are provided as constant bitrate streams.

27. A method in accordance with claim 16 , wherein:

processing cycles of said re-encoding step are monitored; and

at least one re-encoding step is skipped in the event the number of processing cycles available to complete a re-encoding operation may otherwise be insufficient.

28. A method in accordance with claim 27 , wherein:

said input bit stream is a compressed video bit stream; and

at least one of a motion compensation step and a DCT step are skipped for a bi-directionally predicted (B) frame in the event the number of processing cycles available to complete a re-encoding operation may otherwise be insufficient.

29. A method in accordance with claim 27 , wherein the re-encoding step:

re-encodes said at least partially decoded bit stream a plurality of times to produce said multiple re-encoded bit streams on a sequential basis; and

selectively skips said at least one processing step for fewer than all of said multiple re-encoded bit streams.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2014
From: MOTOROLA MOBILITY LLC
To: GOOGLE TECHNOLOGY HOLDINGS LLC
Reel/Frame 034358/0264 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2013
From: GENERAL INSTRUMENT CORPORATION
To: GENERAL INSTRUMENT HOLDINGS, INC.
Reel/Frame 030764/0575 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2013
From: GENERAL INSTRUMENT HOLDINGS, INC.
To: MOTOROLA MOBILITY LLC
Reel/Frame 030866/0113 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2001
From: WANG, LIMIN; LUTHRA, AJAY
To: GENERAL INSTRUMENT CORPORATION, A DELAWARE CORPORATION
Reel/Frame 011726/0618 →