Compression of an electronic programming guide
First Claim
Patent Images
1. A method for compressing an electronic programming guide, comprising:
- assembling data representative of said electronic programming guide and comprising a plurality of characters;
determining a number of bits required to represent each of said characters in Huffman code;
selecting a plurality of candidate character strings from said data, said candidate character strings occurring more than a threshold number of times in said data and comprising at least two said characters;
calculating a savings value for each of said candidate character strings using at least said number of bits required to represent in Huffman code each of said characters comprising said candidate character string;
selecting at least one replacement character string from said candidate character strings based on said savings values;
preparing a Huffman table comprising Huffman codes for each of said plurality of characters and each of said at least one replacement character strings; and
compressing said electronic programming guide using said Huffman table.
19 Assignments
0 Petitions
Accused Products
Abstract
Television programming information comprising an electronic programming guide is compressed by more than fifty percent, and decompressed in environments with only moderate processing power and storage space. The coding scheme of the present invention is based on Huffman coding of characters comprising the electronic programming guide and replacement character strings occurring in the data that have high savings values. A look-up table and binary tree are constructed from the Huffman codes for use in compressing and decompressing the electronic programming guide, and a set-top box for use in the decompression operation is provided.
222 Citations
16 Claims
-
1. A method for compressing an electronic programming guide, comprising:
-
assembling data representative of said electronic programming guide and comprising a plurality of characters; determining a number of bits required to represent each of said characters in Huffman code; selecting a plurality of candidate character strings from said data, said candidate character strings occurring more than a threshold number of times in said data and comprising at least two said characters; calculating a savings value for each of said candidate character strings using at least said number of bits required to represent in Huffman code each of said characters comprising said candidate character string; selecting at least one replacement character string from said candidate character strings based on said savings values; preparing a Huffman table comprising Huffman codes for each of said plurality of characters and each of said at least one replacement character strings; and compressing said electronic programming guide using said Huffman table. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A set-top box for receiving and decompressing a signal comprising an electronic programming guide in compressed form, said electronic programming guide comprising a plurality of characters, said set-top box comprising:
-
means for receiving said signal and providing data comprising a digital representation of said electronic programming guide in compressed form; a first storage space for storing a Huffman tree, said Huffman tree including at least one terminal branch representing a character string, said character string comprising at least two characters; a second storage space for storing application software for use with said Huffman tree to perform a decompression operation; a third storage space for storing said data; and a microcontroller connected to said receiver means and to said first, second, and third storage spaces for causing said application software to perform said decompression operation on said data to obtain said electronic programming guide in decompressed form. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
Specification