IP Library Granted Patent US 7,657,109
Granted Patent B2
US 7,657,109 · App. 10/561,984 · Granted Feb 2, 2010

Method for run-length encoding of a bitmap data stream

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,657,109
App. No.
10/561,984
Granted
Feb 2, 2010
Kind
B2
Abstract

Subtitling aims at the presentation of text information and graphical data, encoded as pixel bitmaps. The size of subtitle bitmaps may exceed video frame dimensions, so that only portions are displayed at a time. The bitmaps are a separate layer lying above the video, e.g. for synchronized video subtitles, animations and navigation menus, and therefore contain many transparent pixels. An advanced adaptation for bitmap encoding for HDTV, e.g. 1920×1280 pixels per frame as defined for the Blu-ray Disc Prerecorded format, providing optimized compression results for such subtitling bitmaps, is achieved by a four-stage run length encoding. Shorter or longer sequences of pixels of a preferred color, e.g. transparent, are encoded using the second or third shortest code words, while single pixels of different color are encoded using the shortest code words, and sequences of pixels of equal color use the third or fourth shortest code words.

Claims (17)

1. A method for run-length encoding of a data stream, the data stream comprising bitmap formatted subtitle or menu data for video presentation on a display, wherein the subtitle or menu data include graphics or text or both, comprising the steps of

defining a preferred color;

defining a range of run-lengths;

encoding pixels of the preferred color to first code words with two or three bytes, wherein said first code words comprise a run-length value, and wherein the run-length value comprised in first code words having three bytes exceeds said defined range and may exceed the width of the display;

encoding pixels of another than the preferred color to second code words with one, three or four bytes, wherein the second code words comprise a color value, and wherein second code words having three or four bytes comprise a run-length value, and wherein the run-length value comprised in second code words having four bytes exceeds said defined range and may exceed the width of the display.

2. Method according to claim 1 , wherein said color values and the preferred color are mapped with a look-up table to display colors.

3. Method according to claim 1 , wherein the shortest redundant code word is used for line synchronization.

4. Method for run-length decoding of an encoded data stream for a video presentation on a display, comprising the steps of

determining the first byte of a code word;

if said first byte has not a defined first value, decoding said first byte to a single pixel having individual color defined by the value of said first byte, the color being other than a defined first color;

if said first byte has the defined first value, determining the first and second bit of the following byte being the second byte;

if the first and second bit of the second byte have a first value, decoding the remaining bits of the second byte to a sequence of pixels of the defined first color, wherein said remaining bits of the second byte define the sequence length;

if the first and second bit of the second byte have a second value, decoding said remaining bits of the second byte together with the following third byte to a sequence of pixels of the defined first color, wherein said remaining bits of the second byte and said third byte define the sequence length, and wherein said sequence length may exceed the display width;

if the first and second bit of the second byte have a third value, decoding said remaining bits of the second byte together with the third byte to a sequence of pixels, wherein said remaining bits of the second byte define the sequence length and the third byte defines the pixels color; and

if the first and second bit of the second byte have a fourth value, decoding said remaining bits of the second byte together with the third and a following fourth byte, wherein said remaining bits of the second byte and the third byte define the sequence length and the fourth byte defines the pixel color, and wherein said sequence length may exceed the display width.

5. Method according to claim 4 , wherein said defining of a pixel color from the first, third or fourth byte and from said first value comprises using a look-up table.

6. Method according to claim 4 , wherein the encoded data stream for a video presentation is a separate layer overlaying other video data on the display, further comprising the step of selecting a portion of said separate layer for displaying.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY NAME FROM INTERDIGITAL CE PATENT HOLDINGS TO INTERDIGITAL CE PATENT HOLDINGS, SAS. PREVIOUSLY RECORDED AT REEL: 47332 FRAME: 511. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 28, 2024
From: THOMSON LICENSING
To: INTERDIGITAL CE PATENT HOLDINGS, SAS
Reel/Frame 066703/0509 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2018
From: THOMSON LICENSING
To: INTERDIGITAL CE PATENT HOLDINGS
Reel/Frame 047332/0511 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2005
From: GANDOLPH, DIRK; HORENTRUP, JOBST; KOCHALE, AXEL; OSTERMANN, RALF; PETERS, HARTMUT
To: THOMSON LICENSING
Reel/Frame 017410/0215 →