Patent US5844594A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5844594A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for MPEG encoding

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1995-10-05
•
Granted: 1998-12-01
•
Expires: 2015-10-05
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract MPEG compression for video/audio data is completed in real- or better than real-time by using computer processors in thousands of television receiver set-top boxes interconnected to a cable television network. The set-top boxes form a massively parallel, distributed computer network. MPEG compression for video/audio services is completed by partitioning the processing of video/audio frames into subtasks, and distributing these subtasks to set-top boxes which are not being used for subscriber services. After compression, the compressed video/audio frames are collected from the set-top boxes and are reconstructed into a compressed video/audio stream in the proper temporal order.

Inventors

  • 👤 Robert Ferguson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 14:31
CPC Classifications
H; H04; H04N; H04N7/00; H04N7/08; H04N7/083; H04N19/00; H04N19/42; H04N19/436; H04N19/439; H04N19/60; H04N19/61; H04N21/00; H04N21/40; H04N7/16; H04N7/173; H04N7/17309; H04N7/17318; H04N7/24; H04N19/30

Claims Analysis

Total Claims: 47
Claim 1
Independent Claim 255 words
A method of MPEG encoding a series of input image data provided from a digital source using an apparatus including a plurality of cable television receivers, each television receiver including a processing unit, each television receiver having a first state in which the processing unit therein is performing a subscriber function such as display of video to a user, and a second state in which said processing unit is not performing a subscriber function, the receiver including means for changing between the first and second states, the apparatus further including a central facility coupled to each of said television receivers, the central facility including mass storage means, a control processor, and the digital source, the method comprising: at the central facility, identifying television receivers that are in the second state; partitioning the series of input image data from the digital source into a plurality of subparts to be processed in a plurality of subtasks; allocating said subtasks among processing units in said television receivers that have been discerned to be in the second state as a plurality of subtasks; at the television receivers, performing an MPEG encoding process on each of the subparts as part of execution of each of said subtasks; collecting MPEG processed data from said receivers into said mass storage to form a composite set of MPEG processed data; sensing a subtask interruption caused by a television receiver being changed from the second state before completing the subtask allocated thereto; and automatically recovering from said subtask interruption and completing the MPEG encoding.
Claim 2
Independent Claim 255 words
A method of MPEG encoding a series of input image data provided from a digital source using an apparatus including a plurality of cable television receivers, each television receiver including a processing unit, each television receiver having a first state in which the processing unit therein is performing a subscriber function such as display of video to a user, and a second state in which said processing unit is not performing a subscriber function, the receiver including means for changing between the first and second states, the apparatus further including a central facility coupled to each of said television receivers, the central facility including mass storage means, a control processor, and the digital source, the method comprising: at the central facility, identifying television receivers that are in the second state; partitioning the series of input image data from the digital source into a plurality of subparts to be processed in a plurality of subtasks; allocating said subtasks among processing units in said television receivers that have been discerned to be in the second state as a plurality of subtasks; at the television receivers, performing an MPEG encoding process on each of the subparts as part of execution of each of said subtasks; collecting MPEG processed data from said receivers into said mass storage to form a composite set of MPEG processed data; sensing a subtask interruption caused by a television receiver being changed from the second state before completing the subtask allocated thereto; and automatically recovering from said subtask interruption and completing the MPEG encoding.
Claim 3
Dependent Claim 34 words
The method of claim 1 which includes consulting a database in determining how to allocate subtasks among said units, the database including data related to patterns of cable television receiver usage by cable subscribers.
Claim 4
Dependent Claim 38 words
The method of claim 1 in which the automatically recovering step includes allocating a given subtask to a plurality of different processing units for redundant processing, wherein interruption of a subtask does not unduly interrupt the MPEG encoding.
Claim 5
Dependent Claim 21 words
The method of claim 3 which includes comparing MPEG processed data returned from at least two different of said processing units.
Claim 6
Dependent Claim 40 words
The method of claim 3 which includes consulting a database in determining how many different processing units to use in redundantly processing a given subtask, the database including data related to patterns of cable television receiver usage by cable subscribers.
Claim 7
Dependent Claim 49 words
The method of claim 1 which includes setting a time-out timer at the central facility for each television receiver allocated a subtask, and sensing a subtask interruption by failure of a television receiver to return data to the central facility before the expiry of the time-out timer corresponding thereto.
Claim 8
Dependent Claim 22 words
The method of claim 1 which further includes JPEG encoding and decoding the series of input image data prior to MPEG encoding.
Claim 9
Dependent Claim 19 words
The method of claim 7 which includes performing the JPEG decoding by the processing units in the television receivers.
Claim 10
Dependent Claim 38 words
The method of claim 1 which includes using a processing unit in a television receiver to produce exactly one I frame, and one or more B and P frames, for each of the subparts allocated to said unit.
Claim 11
Dependent Claim 62 words
The method of claim 1 which includes using a processing unit in a television receiver to produce one or more I, B and P frames for each of the subparts allocated to said unit, and transmitting said frames from the processing unit in the television receiver back to the central facility before processing of the subtask by the processing unit is completed.
Claim 12
Dependent Claim 22 words
The method of claim 1 in which the automatically recovering step includes reallocating said interrupted subtask to a different, substitute television receiver.
Claim 13
Dependent Claim 40 words
The method of claim 11 in which the reallocating includes providing restoration data from the central facility to the substitute television receiver to allow it to resume processing of the interrupted subtask from an intermediate state, rather than starting over.
Claim 14
Dependent Claim 24 words
The method of claim 11 in which the reallocating includes reinitializing the substitute processing unit to start the interrupted subtask from the beginning thereof.
Claim 15
Dependent Claim 35 words
The method of claim 1 in which data transfers related to the MPEG encoding process occur exclusively between the central facility and the television processing units, rather than also between different television receiver processing units.
Claim 16
Dependent Claim 71 words
In a computer programmed with MPEG compression software to process input moving image data to produce MPEG-encoded output data corresponding thereto, an improvement comprising means for achieving a compression ratio in excess of 100 to one with an ongoing delay of less than thirty minutes irrespective of the duration of the input moving image data, using a processor that, at other times, is used to perform functions unrelated to MPEG encoding.
Claim 17
Dependent Claim 71 words
In a computer programmed with MPEG compression software to process input moving image data to produce MPEG-encoded output data corresponding thereto, an improvement comprising means for achieving a compression ratio in excess of 100 to one with an ongoing delay of less than thirty minutes irrespective of the duration of the input moving image data, using a processor that, at other times, is used to perform functions unrelated to MPEG encoding.
Claim 18
Dependent Claim 43 words
The computer of claim 15 which includes means for providing input moving image data to the computer at a rate in excess of 400 megabits per second, and for providing MPEG-encoded output data corresponding thereto at a rate below 4 megabits per second.
Claim 19
Dependent Claim 68 words
In a method of MPEG compression that includes partitioning a video program into a plurality of clips for processing by a plurality of compression processors, an improvement comprising providing a plurality of different video programs that together total N hours of programming, and MPEG compressing all of said programs, simultaneously, to produce a corresponding plurality of MPEG-compressed programs, and completing said simultaneous compression in less than N hours.
Claim 20
Dependent Claim 68 words
In a method of MPEG compression that includes partitioning a video program into a plurality of clips for processing by a plurality of compression processors, an improvement comprising providing a plurality of different video programs that together total N hours of programming, and MPEG compressing all of said programs, simultaneously, to produce a corresponding plurality of MPEG-compressed programs, and completing said simultaneous compression in less than N hours.
Claim 21
Dependent Claim 28 words
The method of claim 17 which includes partitioning, at a control station, said N hours of programming into plural compression subtasks, and allocating said subtasks among plural processors.
Claim 22
Dependent Claim 22 words
The method of claim 18 which further includes automatically recovering from an interruption of subtask processing by one of said plural processors.
Claim 23
Dependent Claim 32 words
The method of claim 19 which includes allocating a given subtask to two or more different processors for redundant processing, wherein interruption of the subtask does not unduly interrupt the MPEG encoding.
Claim 24
Dependent Claim 19 words
The method of claim 20 which includes comparing MPEG processed data from at least two of said different processors.
Claim 25
Dependent Claim 47 words
The method of claim 19 which includes setting a time-out timer at the control station for each processor allocated a subtask, and sensing a subtask interruption by failure of a processor to return data to the control station before the expiry of the time-out timer corresponding thereto.
Claim 26
Dependent Claim 16 words
The method of claim 19 which includes reallocating said interrupted subtask to a different, substitute processor.
Claim 27
Dependent Claim 36 words
The method of claim 23 which includes providing restoration data from the control station to the substitute processor to allow it to resume processing of the interrupted subtask from an intermediate state, rather than starting over.
Claim 28
Dependent Claim 20 words
The method of claim 23 which includes reinitializing the substitute processor to start the interrupted subtask from the beginning thereof.
Claim 29
Dependent Claim 27 words
The method of claim 18 which includes coupling each of the plural processors only to the control station, and not to any other of said plural processors.
Claim 30
Dependent Claim 19 words
The method of claim 18 which further includes JPEG encoding and decoding the video program prior to MPEG encoding.
Claim 31
Dependent Claim 15 words
The method of claim 27 which includes performing the JPEG decoding at said plural processors.
Claim 32
Dependent Claim 25 words
The method of claim 18 which includes generating exactly one I-frame, and one or more B and P frames, as an output from each subtask.
Claim 33
Dependent Claim 26 words
The method of claim 17 which includes using said compression processors for non-compression functions at other times, wherein the compression processors do not comprise dedicated hardware.
Claim 34
Dependent Claim 88 words
In a computer programmed with MPEG compression software to process input moving image data to produce MPEG-encoded output data corresponding thereto, an improvement including plural processors receiving compression subtasks from a control station, said plural processors and control station collectively achieving a compression ratio in excess of 100 to one with an ongoing delay of less than thirty minutes irrespective of the duration of the input moving image data, at least some of said plural processors, at other times, being used to perform functions unrelated to MPEG encoding.
Claim 35
Dependent Claim 88 words
In a computer programmed with MPEG compression software to process input moving image data to produce MPEG-encoded output data corresponding thereto, an improvement including plural processors receiving compression subtasks from a control station, said plural processors and control station collectively achieving a compression ratio in excess of 100 to one with an ongoing delay of less than thirty minutes irrespective of the duration of the input moving image data, at least some of said plural processors, at other times, being used to perform functions unrelated to MPEG encoding.
Claim 36
Dependent Claim 40 words
The method of claim 31 which further includes consulting a database to determine how to allocate subtasks among said plural processors, the database including data related to patterns of usage of said processors for said functions unrelated to MPEG encoding.
Claim 37
Dependent Claim 22 words
The method of claim 31 which further includes automatically recovering from an interruption of subtask processing by one of said plural processors.
Claim 38
Dependent Claim 32 words
The method of claim 33 which includes allocating a given subtask to two or more different processors for redundant processing, wherein interruption of the subtask does not unduly interrupt the MPEG encoding.
Claim 39
Dependent Claim 19 words
The method of claim 34 which includes comparing MPEG processed data from at least two of said different processors.
Claim 40
Dependent Claim 47 words
The method of claim 33 which includes setting a time-out timer at the control station for each processor allocated a subtask, and sensing a subtask interruption by failure of a processor to return data to the control station before the expiry of the time-out timer corresponding thereto.
Claim 41
Dependent Claim 16 words
The method of claim 33 which includes reallocating said interrupted subtask to a different, substitute processor.
Claim 42
Dependent Claim 36 words
The method of claim 37 which includes providing restoration data from the control station to the substitute processor to allow it to resume processing of the interrupted subtask from an intermediate state, rather than starting over.
Claim 43
Dependent Claim 20 words
The method of claim 37 which includes reinitializing the substitute processor to start the interrupted subtask from the beginning thereof.
Claim 44
Dependent Claim 27 words
The method of claim 31 which includes coupling each of the plural processors only to the control station, and not to any other of said plural processors.
Claim 45
Dependent Claim 20 words
The method of claim 31 which further includes JPEG encoding and decoding the moving image data prior to MPEG encoding.
Claim 46
Dependent Claim 15 words
The method of claim 41 which includes performing the JPEG decoding at said plural processors.
Claim 47
Dependent Claim 25 words
The method of claim 41 which includes generating exactly one I-frame, and one or more B and P frames, as an output from each subtask.

References Cited (Backward Citations)

WO1994001964A1 Cited
JPH07222163A Cited
US5546336A Cited
US5721878A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-11-30 2002-06-01 2002-12-01 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-11-30 2006-06-01 2006-12-01 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-11-30 2010-06-01 2010-12-01 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag