MXPA00008119A - System for forming, partitioning and processing electronic program guides - Google Patents
System for forming, partitioning and processing electronic program guidesInfo
- Publication number
- MXPA00008119A MXPA00008119A MXPA/A/2000/008119A MXPA00008119A MXPA00008119A MX PA00008119 A MXPA00008119 A MX PA00008119A MX PA00008119 A MXPA00008119 A MX PA00008119A MX PA00008119 A MXPA00008119 A MX PA00008119A
- Authority
- MX
- Mexico
- Prior art keywords
- data
- information
- program guide
- program
- version
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 21
- 238000000638 solvent extraction Methods 0.000 title 1
- 230000008859 change Effects 0.000 claims abstract description 29
- 230000005540 biological transmission Effects 0.000 claims description 50
- 238000000034 method Methods 0.000 claims description 28
- 238000003860 storage Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 7
- 230000032823 cell division Effects 0.000 claims description 3
- 230000000007 visual effect Effects 0.000 claims description 3
- 238000005192 partition Methods 0.000 abstract 1
- 210000004027 cell Anatomy 0.000 description 24
- 230000008569 process Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 10
- 238000001914 filtration Methods 0.000 description 7
- 238000001824 photoionisation detection Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 230000006854 communication Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000011181 container closure integrity test Methods 0.000 description 5
- 239000002131 composite material Substances 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 230000007175 bidirectional communication Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 2
- 210000000130 stem cell Anatomy 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 235000014676 Phragmites communis Nutrition 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- PWPJGUXAGUPAHP-UHFFFAOYSA-N lufenuron Chemical compound C1=C(Cl)C(OC(F)(F)C(C(F)(F)F)F)=CC(Cl)=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F PWPJGUXAGUPAHP-UHFFFAOYSA-N 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
Abstract
A program guide information data structure and processing system facilitates decoding. A decoder acquires ancillary information conveyed in hierarchically ordered data tables comprising packetized program guide data. The ancillary information includes hierarchically associated version identifiers enabling the decoder to identify change in data table content by examination of the version identifiers in hierarchical order. The decoder acquires cell numbers (e.g. identifying cell type, area, broadcast time and complexity level) assigned to individual partitions of the program guide information in order to adapt to dynamically re-partitioned program guide data.
Description
A SYSTEM TO FORM, DIVIDE AND PROCESS PROGRAM GUIDES
Field of the Invention This invention relates to the field of digital signal processing, and more particularly, to digital guides. programs for channels and programs.
BACKGROUND OF THE INVENTION The formation and processing of large program guides that transmit information regarding potentially thousands of transmission program channels that cover a wide geographical area, presents a number of problems. The geographic area covered may cover all of the United States of America or entire continents, for example, and may have to be acquired, collated, encoded, and transmitted in large quantities in a format that facilitates the subsequent decoding of the transmission material. The bandwidth required to process these large amounts of information expands in proportion to the amount of information that is being processed. Accordingly, there is a need to structure program guide data in order to optimize the use of the available bandwidth. The degree to which the data structure of the program guide can be optimized is limited by the cost of a decoding unit to receive the structured data. In fact, there is a compromise that is going to be made between the transmission bandwidth and the complexity of the decoder. At one end of the commitment, all duplicate and redundant data elements in the program guide information are eliminated, in order to minimize the bandwidth of transmission and processing required. As a result, each decoder needs to receive, put in zone. buffer, distribute, and collate the information from a whole stream of data from the program guide, thus needing a complete and expensive decoder. At the other end of the commitment, the program guide information is divided into individual subsets tailored to the requirements of a particular User or group of Users. This means that each decoder needs to receive, buffer, distribute, and collate targeted information that contains minimal redundancy, which facilitates the use of a simpler and cheaper decoder, which requires less processing power. However, this division requires a larger transmission bandwidth to accommodate the increased redundancy of information resulting from the need to incorporate duplicate information references from the program guide into multiple subsets of different program guides corresponding to the different divisions. . The problems involved in processing large amounts of program guide information, and to achieve a desirable compromise between transmission bandwidth and decoder complexity, are solved by a system according to the present invention. The derived problems involved in the structuring and division of the program guide data to facilitate both COTTIO decoding and the selectable generation of program guide by a decoder, are also solved by a system in accordance with the invention.
SUMMARY OF THE INVENTION A decoder acquires auxiliary information transmitted in hierarchically ordered data tables comprising program guide data _in packages. The auxiliary information includes hierarchically associated version identifiers, which make it possible for the decoder to identify changes in the contents of the data table by examining the version identifiers in the hierarchical order. The decoder acquires the cell numbers (for example, that identify cell type, area, transmission time, and complexity level) assigned to the individual divisions of the program guide information, in order to adapt it to the data of the dynamically redivided program guide.
Brief Description of the Drawings In the drawing: Figure 1 shows a file format / hierarchical table of a very large program guide (VLPG) for use in the transmission of program-specific information, in accordance with the invention. Figure 2 shows a Guide Table format
Master (MGT) to be used in the transmission of the specific information of the program, in accordance with the invention. Figure 3 shows a Channel Information Table (CIT) format, for use in the transmission of program-specific information, which incorporates area-based division, in accordance with the invention. Figure 4 shows a data structure format of multimedia objects, incorporating division based on area and time, according to the invention. Figures 5, 6, and 7, show examples of data structures for the basic information files of channel, event, and control object, in accordance with the invention. Figure 8 shows a data structure for a carouselld compatible with MPEG (as used in the tables of Figures 5, 6, and 7), which includes identifier fields, which allow division based on area and time. Figure 9 shows a data structure format of Master Database Table, which incorporates hierarchical database version identifiers, and cell division identifiers that support dynamic redivision of the program guide, in accordance with the invention. Figure 10 shows an example data structure for a cell type indicator (as used in the Table of Figure 9), which incorporates the fields of identifiers based on area, time, and complexity, according to the invention . Figure 11 shows a hierarchical directory format for an object database, which includes subdirectories of channels, events, and control, according to the invention. Figure 12 shows a method for generating the specific information of the program according to the invention. Figure 13 is a block diagram of a digital video receiver apparatus, for demodulating and decoding transmission signals containing VLPG information, in accordance with the principles of the invention.
Detailed Description of the Drawings Broadcast programs transmitted in digital format are encoded and transmitted together with the auxiliary information, including the specific information of the program
(PSI) used in the decoding of associated programs and data. The specific information of the program includes the data of the program guide, and the information to be used in the identification and assembly of the individual data packages, to recover the content of the selected program channels. The specific information of the program and the content of the associated program, is conveniently structured to transmit large program guides that transmit information regarding potentially thousands of transmission program channels and associated multimedia objects that cover a wide geographical area, such as entire continents. , countries, or states, for example. Multimedia objects include audio clips, video clips, animation, frozen images, Internet data, email messages, text, and other types of data. Multimedia objects are data entities that can be viewed as independent units, and are associated with images within individual programs, or with components of the program guide. Multimedia objects are incorporated into composite video images that represent a program guide or a video program, for example. The auxiliary information data structure supports unidirectional communication applications, for example passive vision and bidirectional communication applications, for example, interactive type functions, and also supports storage applications. The specific information of the program and the content of the associated program, can be supplied by different service providers via the Internet in the transmission / multicast mode, or by means of terrestrial, satellite, or cable transmission, on a subscription or other basis of payment to be seen. The data structure facilitates the acquisition and decoding of multimedia objects encoded in different data formats, and communicated in different communication protocols, both from local and remote sources. Later on, the data referred to as compatible with MPEG, conform to the MPEG2 image coding standard (Moving Pictures Expert Group, Expert Group of Moving Images), called the "MPEG standard". This standard is comprised of a coding section of the system (ISO / IEC 13818-1, June 10, 1994), and a video coding section (ISO / IEC 13818-2, January 20, 1995).
The elements of the data structure according to the principles of the invention can be transmitted in an MPEG compatible format (according to section 2.4.4 of the MPEG systems standard), or it can be transmitted in a compatible format with the Program and System Information Protocol for Terrestrial Broadcast and Cable, published by the Advanced Television Systems Committee (ATSC) (Advanced Television Systems Committee), November 10 of 1997, hereinafter referred to as the PSIP standard, or other ATSC standards. In addition, the elements of the data structure can be formed in accordance with other MPEG standards, such as MPEG-4 or MPEG-7 standards, or with proprietary or customized requirements of a particular system. The principles of the invention can be applied to terrestrial transmission systems, cable, satellite, Internet, or computer network, where the type of coding or the modulation format can be varied. These systems may include, for example, systems not compatible with MPEG, which involve other types of coded data streams and other methods for transmitting program-specific information. In addition, although the system disclosed is described as the processing of transmission programs, this is an example only. The term 'program' is used to represent any form of packaged data, such as audio data, telephone messages, computer programs, Internet data, or other communications, for example. Figure 1 shows an overview of a file format / hierarchical table of a very large program guide (VLPG), for use in a transport stream level data structure that transmits program-specific information. The structure comprises multiple hierarchically arranged and interlaced tables. Tables consist of data arrays and parameters that are used to enumerate, and describe collections or sequences of television channels, television programs, channel parameters, program parameters, associated multimedia objects, and object parameters, and so on. The configuration of the example hierarchical table in Figure 1 includes a Master Guide Table (MGT) 120, Master Data Table (MDBT) 122, Table of Contents and Classification (CCT) 114, System Time Table (STT) ) 116, and Evaluation Region Table (RRT) 118. The hierarchy in Figure 1 also shows the Earth, Cable, and Satellite Channel Information Tables (TCIT, point 112, CCIT, point 110, and SCIT, point 108, respectively), where the network provider, for example, CBS, NBC, HBO, Comcast, etc., collates the channel information. Additional tables include the Program Information Tables (SIT 106, SIT 104, and SIT 102), where the source collates the programs or services. An MGT contains information to be used in the acquisition of program-specific information transmitted in other tables. A channel information table -CIT (for example, TCIT, CCIT, or SCIT) contains information to tune and navigate in order to receive the channel of the program selected by a User. An SIT contains descriptive lists of programs (events) that can be received on the channels listed in the CIT. A CIT, SIT, or other table can be used to transmit information that makes it possible for a user to select and tune to a particular program. A CIT is normally used to transmit parameters to acquire audiovisual content content data, which remain constant during various events (television programs). An SIT is normally used to transmit data parameters of audiovisual program content that remain constant during an event (individual television program). The specific information of the additional program that describes and complements the points within the hierarchical tables, it is transmitted within the descriptor information elements. In order to accommodate sufficient data for a wide-area program guide, the individual tables in the hierarchy of Figure 1 can conveniently be divided by area (for example, a geographic, transmission, or network market area) , as per scheduled transmission time. In addition, the data of the table can be further divided according to a third parameter, such as the level of complexity of the data, or a multimedia object, in order to allow scaling in decoding, for example, this type The division of the program guide is represented by the three-dimensional cells illustrated in diagram 100. In fact, the VLPG structure of the. Figure 1 supports virtually any type of division that a guidance provider may require. Division based on area and time is achieved by including both time and area identifiers in one or more of the tables in Figure 1, and in the associated object data. The advantage of including the division identifiers of area and time in the transport level of the communication protocol in this way is that the processing load (for example, to distribute the data) is reduced in a decoder, which is presented in another way if the division is done at a higher level, let's say the level of the Application layer. As a result, the filtering of the program guide is done in the transport layer, and is carried out directly by means of a transport chip contained in a decoding unit. However, it is possible to include the time and area identifiers for both the data in the table and for the objects at a higher level if desired. In the transmission and processing of a program guide, the bandwidth demand grows with the amount of information of channels and programs and the number of associated objects that need to be transmitted. For a large program guide, even a simple case may require the transmission of thousands of references of information and objects. A simple program guide may not have images, audio, or video clips, but you would still need at least text descriptions for the thousands of programs (events) you carry. It is possible to send the information of the program guide without redundancy and without divisions in a single tray or data file. In such a case, and in the absence of transport level divisions, the text descriptions (for example) will end in a single data file. This means, for example, that a decoder in San Diego will receive all the material (text descriptions of events, images, or any other objects) from all other cities in the United States, and will not be able to discard the useless material at the level of transport. Consequently, in the absence of divisions at the transport level, it is necessary for a decoder to filter the information of the program guide received at the application level. This is an intense task in processor, delayed, and high load, which requires sophisticated software and significant processing power, and raises the cost of a decoding unit. The VLPG data structure of Figure 1 conveniently provides the option of employing area-based division at the level of the transport layer. The information in the program guide can be divided into an Eastern area, a Central area, or a Mountain area, and a Pacific area, for example. So, a decoder in San Diego would no longer need to receive the program guide information from the other three regions. Accordingly, this division significantly reduces the distribution and filtering load on a decoder, and the smaller divisions (eg, on a state-by-state basis) further reduces the distribution and filtering load. Another advantage of this division, is that the time involved to download the applicable split program guide information is reduced. However, the division of information in the program guide involves introducing redundant program guide data, because this division requires duplication of data references. As an example, if a basketball game is played in the Pacific and Mountain regions, then two copies of the descriptive infoxmation of the associated text must be transmitted, one copy for each of the divisions directed in the regions of the region. Pacific and Mountain. It can be seen that, as the number of divisions increases, the amount of redundant information also increases, necessitating a larger transmission bandwidth. As a result, there is a decompensation between the bandwidth and the information filtering load. A large number of divisions implies a rapid filtering of information, but at the cost of a greater bandwidth. When there is only one division, there are no redundancies, and therefore, the bandwidth is minimal, but the filtering load is larger, because all information references in the program guide need to be distributed. The time and area cells can be mapped into a data structure compatible with MPEG-2, by using the MPEG-2 PSI and DSM-CC fields. Not all tables may need to include identifiers based on the area. For example, program content evaluations are usually applicable anywhere in the United States. In the VLPG architecture of Figure 1, a significant advantage is obtained by applying the area-based division to the Channel Information Table (CIT) and the Master Guide Table. An oil defines the alignment of the channel (list of available channels) for a service provider, and depends on the geographical area covered by the service provider. The channel alignment for land transmission in Indianapolis is different from the alignment of the channel alignment for a cable provider in Philadelphia, for example. In the system of Figure 1, the MGT also depends on the geographical area, but this is not necessarily the case. The ability to perform a focused direction of program guide information to particular audiences is an advantage derived from being able to make fine divisions based on the area of channel alignments at the transmission market level. In order to do this, different "instances" of tables are created. A table instance is a version of a table that is directed to a particular market area, and incorporates an area identifier to identify the applicable market area. Multiple instances of a single table can be transmitted concurrently, each carrying different information. The different instances of tables are recognized using the "table_id_extension" field of the MPEG-2 protocol. Figures 2 and 3 show a Master Guide Table (MGT) format and a Channel Information Table (CIT) format, respectively, to be used in the transmission of the. specific information of the program, and that incorporates a field of table_id_extension for the identification of the market area. The MGT of Figure 2, and in the CIT of Figure 3, this field of identification of the market area is called a "network provider", and is shown in the MGT data structure as reference 130, and in the structure of CIT data as reference 140. The provider_net area identifier field is a 16-bit field used to uniquely identify a network provider. The meaning of the network provider depends on the transmission medium. Specifically, for terrestrial transmission, a network provider is a collection of stations within a geographic region, for cable transmission, a network provider is a local cable service provider, and for satellite transmission, a network provider is a satellite service provider. The data structure of Figure 1 conveniently allows different types of program and program-specific guidance information to be directed to different areas. This feature allows to have flexibility in the selection of an acceptable compromise between the complexity of the decoder and the bandwidth of the processing involved in the transmission and reception of the program guide data. As an example, it may be acceptable to divide the multimedia objects into areas larger than the channel alignment information. The data structure in Figure 1 gives guide providers the ability to divide different types of data into different area graduations, from large areas to fine areas (for example, areas as large as countries, states, or counties, and going to such fine areas as cities, towns, city blocks, or even individual clients). In addition, the information of the program guide can be checked in a decoder to provide a User with a choice between program guides for different areas (for example, between two neighboring areas or a choice of guides from any of the areas available), or for different periods of transmission time. As such, a program guide can be selected in a decoder from one or more available program guides associated with different areas, in response to the selection input of a User, by means of a remote unit or other introduction device of data. In making this selection, a decoder compares a region identification designation (associated with the received program guide information) with a previously stored region identification designation that represents the location of the decoder. This region identification designation may comprise a postal code, a telephone area code, and any other region identification code. Figure 4 shows a data structure format of multimedia objects for transmitting objects within a VLPG. The multimedia object data structure division based on area and time through the use of area and time identifier fields within a carousel identifier compatible with MPEG DSM-CC (reference 150 in Figure 4). Figures 5, 6, and 7 show examples of the data structure of the objects comprising channel, event, and control objects, respectively. In a specific manner, Figure 5 shows a binary file of Basic Channel Information File (BIF channel), Figure 6 shows a binary file of Basic Event Information File (Event BIF), and Figure 7 shows a binary file of Basic Information File of Control (BIF of control). In a manner similar to Figure 4, the channel, event, and control object data of Figures 5 to 7 include the area and time identifier fields within the carousel identifiers compatible with MPEG DSM-CC (references 153, 157, and 159 of Figures 5 to 7, respectively). Reference 252 of Figure 8 shows an example carrousel data structure for an MPEG compliant carousel (as used in the tables of Figures 4, 5, 6, and 7). The carouselld includes a 16-bit directory reference identifier for use as a database reference, an 8-bit time identifier, and an 8-bit area identifier. These fields make it possible for a decoder to selectively filter the data of the program guide based on the divisions based on area and time. In the VLPG data structure of Figure 1, a Master Data Base Table (MDBT) is used, reference 122) to define the divisions of the program guide (cells), and to inform a decoder of the cells available in their location for decoding. Figure 9 shows a data structure of Master Database Table that incorporates hierarchical base version identifiers and cell division identifiers, which conveniently make possible the dynamic redivision of the program guide. The code between references 170 and 178 comprises a cycle defining the divided cells. Within this cycle, the field named "cell_type" (reference 172) determines an index of a cell, as illustrated in Figure 10. Reference 179 of Figure 10 shows a structure of example data for a type indicator of cell. The cell type indicator includes an 8-bit complexity level identifier used to define a level of complexity of an object. The cell type indicator also includes an 8-bit area identifier and an 8-bit time identifier to define the divisions based on area and time. An information reference of an individual object or program guide includes a carousel (as defined in Figure 8, and as shown in reference 150 of Figure 4), to link the object with a time and area index of the object. your mother cell. The dynamic redivision of the program guide is achieved by reconfiguring the list of cells in the MDBT, and by dynamically altering the time and area index identifiers of the mother cell within a carrousel. Accordingly, a guide provider can dynamically redirect a program guide data structure to adapt to changes in the available transmission bandwidth or the sophistication of the decoder. A guide provider may use finer divisions to provide faster object filtering times if the increased bandwidth becomes available, or it may use larger divisions to conserve bandwidth if the decoder processing capabilities are improved. As such, a decoder in San Diego can now have access to the program guide information associated with areas 0 and 7, while, in the future, the decoder can be given access to program guide information associated with areas 0 and 9, reflecting the finer division, for example. In the future, it is entirely possible to provide real-time access to multimedia objects present in the guides that cover areas as large as the United States of America, by selecting an appropriate compromise between the band aspect and the division. Figure 11 shows a hierarchical directory format for an object database, which includes object files under the subdirectories of channels, events, and control. Figure 11 shows that a particular event, such as "event 2", can have its own -directory that contains its required files, for example, "event 2" has four associated objects (references 240, 242, 244, and 246). in Figure 11). Using the object database, an address based on the directory is mapped to the transport level fields for processing. Given a path, such as / VLPG / TIEMP0l / AREAl / events / event2 / event-bif, (path through directory references 220, 224, 228, 232, 238, 242 of Figure 11) for example, there is one, and only one object with a certain carousel and module Id. For example, in this case, the following mapping is applied: / VLPG - • >; files extracted from the VLPG / TIEMP01 object database > 0x01 (time variable) / AREA1 > 0x01 (area variable) / events / event2 > 0x3005 (directory number variable). Therefore, this database address is mapped to a carousel of 0x01013005. In addition, event.bif (reference 242) has a module that can be determined from the program guide information (such as the value 0x0002 in this example). The reverse mapping from the fields at the transport level to a directory-based address is also unique, and can be derived in a similar way. The structure of the directory exemplified in Figure 11 supports the operation of the software to process and interact with the objects transmitted. The processing software can be transmitted in the form of a file, together with objects, and then interpreted or compiled and executed by means of a decoder. This processing software can be used for numerous applications, including to conveniently create program guides based on the content in a decoder in a language such as HTML
(Hyper Text Mark-up Language, Hypertext Markup Language),
SGML (Standardized Generalized Mark-up Language, Language
Standardized Generalized Mark), Java, ActiveX, and any other language supported by decoder. As an example, every Sunday a guide provider may want to prepare a website that describes all the movies available on Sunday to be transmitted to the decoding units that contain a web browser, and that support HTML software. The information in the Sunday guide is encoded in HTML, and transmitted to the decoders as HTML software files that describe the special website. HTML files are located anywhere in the directory structure of the Object Database, and together they generate image, text, video, and audio files, which make up the list of the Sunday movie guide comprising the site special web As such, the website of the Sunday guide is transmitted as part of a database of objects, and is not accessed conventionally from an Internet server. Other websites of the special program guide that can be transmitted in this way can list, for example, (a) a DVD / VCR program available for playback, (b) other Internet websites, (c) fax numbers / pre-stored telephone for access, (d) videophone functions, and (e) home appliance control functions. A User may initiate the display of the web site of the special Sunday guide contained in the Object Database, by using a remote unit or other data entry device, to select a reference from the associated exhibited menu, or display icons, and can similarly browse through the broadcast website, and review the advertised movies. In addition, a User may initiate commands through the website, such as (a) programming a VCR or DVD unit, (b) tuning in to a desired channel, or (c) accessing other Internet sites that are similarly transmitted as part of the of the database of objects, or that are conventionally accessed by telephone line (or cable). In addition, when starting this Internet access over the telephone line (or cable), a decoder can acquire access information from a transmission source or another source. This access information includes (a) an Internet URL, (b) an Internet IP address, (c) an email address, and (d) a telephone / fax / videophone number, for example. The structure of the hierarchical directory in Figure 11 illustrates another advantage offered by the VLPG structure in Figure 1. In a large program guide, managing the updating of constituent tables and objects involves examining a large number of version numbers ( thousands of version numbers may be involved). A decoder downloads a particular program guide table or object after the determination of a version number change, and ignores tables or objects where no version number change is indicated. This task can be aided by listing all the version numbers of tables and objects that are susceptible to change in a table, such as MGT. The MGT is transmitted at a fast enough speed to enable a decoder to examine the MGT to determine which tables or objects have changed, and to acquire a changed table or object in a timely manner. However, the distribution of each entry in the MGT can become very long in a large guide structure. This problem is solved by means of a control system of the hierarchical version, where there are several tables that perform the control of the version. These tables are configured in a tree structure, as exemplified in Figure 11. In Figure 11, table 238 (event 2) controls the version of the tables / files under table 238. Table 232 (events) controls all versions of tables 336 (event 1), and 238. Table 228 (AREA1) controls the versions of tables 230 (channels), 232, and 236
(control) only. In this way, the information of the version number stored in each table is small, and you can go through the tree from top to bottom, and you may quickly find the files, tables, or objects that need updating. Although a multilevel structure is described above, a two-layered version control structure can also be used to control the version of the objects in the database in the VLPG of Figure 1. In the example of two layers, the top layer of the tree hierarchy is the Master Database Table (MDBT), as exemplified in Figure 9. The second level, below the MDBT level, consists of cells that comprise Basic Channel Information Files , Event, and Control, as exemplified in the above-described data structures of Figures 5, 6, and 7, respectively. A change in any of the Channel, Event, or Control files is signaled by a change in their respective version numbers, reference 160 (Figure 5), reference 163 (Figure 6), and reference 167 (Figure 7). In addition, any change in the file version numbers of Channel, Event, or Control, is signaled by a change in the next version number of the hierarchical level (cell), that is, this change is signaled by a change in the number of version 176 in the MDBT of the
Figure 9. As a specific example, if a channel logo
(which is an image in the database) changes from one version to another, then the BIF channel will reflect this change in reference 160 (Figure 5). The MDBT will also signal the change in reference 176 to the cell level (Figure 9). A decoder examines the MDBT first, and determines that the cell version number has changed, and then examines the BIF files to identify the objects that have changed inside the cell. The structure of the Master Database Table
(MDBT) of Figure 9 provides another advantage in the processing of large program guides. The "energy of sophistication and processing of the decoder, and the
'ability to process complex multimedia objects, evolves over time. For example, the first generations of the upper box decoders were largely restricted to the processing of images in a bitmap form. However, newer decoder generations can use decompression software to download JPEG, GIF, or other image formats, and future generations will be able to process not only images, but also movie clips in multiple formats. Accordingly, it is desirable to structure the program guide data to support the scalability of the decoder, i.e. to allow a range of decoders of different complexity to process the program guide information using the level of processing power with the what should they try? In this way, low complexity decoders can identify objects that can process, and discard objects that exceed their processing capabilities. Otherwise, objects of high complexity may impair the operation of the low complexity decoders, causing an overflow of the buffer zone or other problems. The MDBT data structure of Figure 9 (and the
Figure 10) conveniently supports efficient discrimination of complexity of multimedia objects in a decoding unit. For this purpose, the MDBT assigns PID values (packet identifier) to the cells in the database. In Figure 9, reference 172 identifies a particular cell, and is associated with a PID value by reference 174. In addition, reference 172 defines the type__24-bit field cell that defines the coordinates of time, area, and complexity of one cell (see Figure 10). As such, an object complexity level identifier is included in a transport layer field compatible with MPEG-2. In this way, objects in the database that belong to different levels of complexity are transmitted in streams identified by different PIDs. A decoder is previously assigned a level of complexity, and the decoder applies the MDBT (specifically reference 172) in the selection and trap of PID values for cells with complexity levels that match or are below the complexity level previously. assigned to the decoder. Objects of complexity level that exceed the capabilities of the decoders are conveniently discarded at the transport level. Figure 12 shows a flow diagram of a method for forming program-specific information, according to the invention. The method of Figure 12 generates program-specific information, including data from MGT, MDBT, CCT, STT, RRT, TCIT, CCIT, SCIT, and SIT, and descriptors that contain the convenient features previously described. The method can be employed in a decoder to transmit the program guide data, or it can be used to encode the program guide data within a decoder unit to be transmitted to another device. Following the start in step 250 of Figure 12, in step 253, a method based on the data structuring principles described above is selected to divide the program-specific information. The specific information of the program is divided according to the segments of time and areas, types of network, levels of complexity, cells, and programs (events). In step 255, the PID values are assigned to accommodate the specific information of the divided program. If a transport protocol other than MPEG is used, the PID values can be replaced by appropriate parameters that identify the logical channels. In step 257, an MGT and an MDBT (or other type of control tables) are generated, to include those formed _during the division operations. The MGT transmits information to be used in the acquisition of program-specific information transmitted in other tables. The MDBT transmits information to be used in the acquisition of multimedia objects from a transport stream. In step 260, the individual tables CCT, STT, RRT, TCIT, CCIT, SCIT, and SIT, etc. are formed, which comply with the divided structure. The individual tables incorporate links of multimedia objects, version numbers, and derived identifiers in accordance with the principles of the invention previously described. An oil is formed (e.g., TCIT, CCIT, and SCIT) containing the channel and program identification information, which makes it possible to acquire available transmission programs and channels containing packet identifiers to identify the data streams in individual packages that constitute the individual programs that will be transmitted in the particular channels. In addition, in step 260, a SIT is generated containing the programming information of the program guide, which includes descriptive lists of programs (events), which can be received in the channels listed in the CIT. In step 263, the tables formed in step 260, together with the associated multimedia objects, are formatted to be compatible with a desired data and protocol format. These data formats and protocols include, for example, Program Specific Information compatible with MPEG-2 DSM-CC, DSS, and an Internet-compatible file transfer format. In step 265, the resulting formatted tables and multimedia objects are incorporated into a stream of data at their designated locations for terrestrial transmission. The MGT and MDBT are incorporated into the data stream in step 267. In step 270, the program-specific information produced in step 267, together with the representative components of the video and audio program (and other data) for multiple channels, it is multiplexed and formatted in a transport stream for its production. In step 270, the outgoing transport stream is further processed to be suitable for terrestrial transmission to another device, such as a receiver, video server, or storage device, to register in a storage medium, for example. The processes performed in step 270 include known coding functions, such as Reed-Solomon data compression, interleaving, mixing, trellis coding, and carrier modulation. The process is completed and completed in step 275. In the process of Figure 12, multiple CITs, SITs, and associated extension tables can be formed, and can be incorporated into the specific information of the program, in order to accommodate expanded numbers of channels. In addition, in other modalities, tables can be processed similarly for transmission by satellite, cable, or the Internet, for example. In the video receiver system of Figure 13, a transmitter carrier modulated with signals carrying audio, video, and associated data representing the content of the transmission program is received by the antenna 10, and processed by the unit 13. The resulting digital output signal is demodulated by demodulator 15. The demodulated output from unit 15 is decoded in trellis, mapped in byte length data segments, deinterleaved, and the Reed error is corrected. Solomon by the decoder 17. The output data corrected from the unit 17 is in the form of a transport data stream compatible with MPEG containing audio, video, and multiplexed data representative of the program. The transport stream from the unit 17 is demultiplexed into the audio, video, and data components by the unit 22, which are then processed by the other elements of the decoder system 100. In one mode, the decoder provides decoded MPEG data for display. and for audio playback in units 50 and 55, respectively. In another mode, the transport stream from the unit 17 is processed by the decoder 100, to provide a data stream compatible with MPEG for storage in the storage medium 105, by means of the storage device 90. A user selects for see either a television channel (user-selected channel-SCC), or an on-screen menu, such as a program guide, by using a remote control unit 70. The controller 60 uses the selection information provided from the remote control unit 70 via the interface 65, to appropriately configure the elements of Figure 13, in order to receive a desired program channel to view. The controller 60 comprises the processor 62 and the processor 64. The unit 62 processes (i.e., distributes, collates, and assembles) the system time information, and the program-specific information, including the program guide information. The processor 64 performs the remaining control functions required in the operation of the decoder 100. Although the functions of the unit 60 can be implemented as separate elements 62 and 64, as illustrated in FIG. 13, they can alternatively be implemented within a single processor. For example, the functions of units 62 and 64 can be incorporated into the program instructions of a microprocessor. The controller 60 configures the processor 13, the demodulator 15, the decoder 17, and the decoder system 100, to demodulate and decode the format of the input signal and the type of coding. In addition, the controller 60 configures the units 13, 15, and 17 for other communication modes, such as for receiving cable television (CATV) signals, and for bidirectional communication by means of the coaxial line 14, or for bidirectional communication (eg, Internet), for example, by means of the telephone line 11. In an analog video mode, an NTSC compatible signal is received by units 13, 15, and 17, and is processed by decoder 100 for video display and audio reproduction in units 50 and 55, respectively. The units 13, 15, 17, and the subunits within the decoder 100, are individually configured for the type of input signal by the controller 60, which establishes the control register values within these elements using a signal busbar. bidirectional data and control C. The transport stream provided to decoder 100 comprises data packets containing program channel data and auxiliary system time information and program-specific information, including program guide information. The unit 22 directs the auxiliary information packets to the controller 60, which distributes, collates, and assembles this information into the hierarchically configured tables described above.
(as exemplified in Figure 1). The individual data packets that comprise the channel of the program selected by the User SC, are identified and assembled using the specific information of the assembled program. In addition, the program-specific information contains conditional access, network information, and identification and link data, which make it possible for the system of Figure 13 to be tuned to a desired channel, and assemble the data packets to form complete programs. The program-specific information also contains data that supports the identification and assembly of auxiliary information. The program-specific information and system time is assembled by the controller 60 into multiple hierarchically configured and interleaved tables according to the structure of Figure 1. The STT contains a time reference indicator and the associated correction data sufficient for that a decoder establishes a transmission time of a program by a transmission source. The MGT contains information to acquire the program-specific information transmitted in other tables, such as identifiers to identify data packets associated with the other tables. The CIT (for example TCIT) contains information to tune in and navigate in order to receive a program channel selected by the User. The SIT contains descriptive lists of programs (events), which can be received in the channels listed in the CIT. The RRT contains program content evaluation information, such as MPAA (Motion Picture Association of America, Moving Image Association of America), or evaluation information compatible with the V-chip, which is checked by region (for example, by country or by state within the United States of North America). The specific information of the additional program that describes and complements the references within the hierarchical tables, is transmitted within the information elements of the descriptors. The program-specific information and system time acquired by the controller 60 via the unit 22 is stored within the internal memory of the unit 60. The controller 60 uses the program guide information acquired in the conditioning of access to programs, and programming of program processing functions, including, viewing, recording, and playing programs. The controller 60 and the processor 22 determine, from the CIT, the PIDs of video streams, audio, and sub-images, in the packet decoded transport stream introduced to the decoder 100 from the unit 17. The video streams , audio, and sub-image constitute the desired program that is being broadcast on the selected channel SC. The processor 22 provides video, audio, and sub-image streams compatible with MPEG to the video decoder 25, the audio decoder 35, and the sub-picture processor 30, respectively. The video and audio streams contain compressed video and audio data that represent the program content of the selected channel SC. The sub-image data contains the SIT, CCT, and RRT information associated with the program content of the SC channel. The decoder 25 decodes and decompresses the video data into MPEG-compatible packets from the unit 22, and provides the representative pixel data of the decompressed program to the NTSC 45 encoder via the multiplexer 40. In a similar manner, the audio processor 35 decoding the audio data in packets from the unit 22, and providing decoding and amplified audio data, synchronized with the associated decompressed video data, to the device 55, for audio playback. The processor 30 decodes and decompresses the sub-image data received from the unit 22. The processor 30 assembles, collates, and interprets the RRT, CST, CIT, and data objects from unit 22, to produce the data from the formatted program guide to be produced towards OSD 37. OSD 37 processes the SIT, RRT, and CCT , and other information, to generate pixel-mapped data representing subtitling, control, and information menu displays, including selectable menu options, and other references to be displayed on the visual display device 50. The control and information menus that exhibits make it possible for a user to select a program to view, and program future program processing functions, including a) tune to receive a selected program to watch, b) record a program on a storage medium 105, and c) play a program from the middle 105.
The control and information displays, including text and graphics produced by the OSD generator 37, are generated in the form of data from a pixel map superimposed under the address of the controller 60. The pixel map data superimposed from the unit 37 are combined and synchronized with the representative data of uncompressed pixels from the MPEG decoder 25, in the encoder 45, by means of the multiplexer 40, under the address of the controller 60. The data of the combined pixel map representing a program of video on the SC channel, together with the associated sub-image data, are encoded by the NTSC 45 encoder, and are produced on the device 50 for visual display. In a storage mode of the system of Figure 13, the output data corrected from the unit 17 is processed by the decoder 100, to provide a data stream compatible with MPEG for storage. In this mode, a program is selected to be stored by a user by means of the remote unit 70 and the interface 65. The processor 22, in conjunction with the processor 60, forms the specific information of the condensed program, including the MGT data. , MDBT, CCT, STT, RRT, TCIT, and SIT, and the descriptors that contain the convenient features previously described. The condensed program specific information supports the decoding of the selected program for storage, but excludes unrelated information. The processor 60, in conjunction with the processor 22, forms a composite MPEG compliant data stream containing the packet content data of the selected program, and the specific information of the associated condensed program. The composite data stream is produced to the storage interface 95. The storage interface 95 places the composite data stream in the buffer zone to reduce the gaps and the variation of the bit rate in the data. The resulting buffer data is processed by the storage device 90, to be suitable for storage in the medium 106. The storage device 90 encodes the data stream placed in the buffer zone from the interface 95 using techniques of known error coding, such as channel coding, interleaving, and Reed-Solomon coding, to produce a coded datastream suitable for storage. The unit 90 stores the resulting coded data stream that incorporates the program-specific information condensed in the medium 105. The architecture of Figure 13 is not exclusive. Other architectures may be derived in accordance with the principles of the invention, to accomplish the same objectives.
In addition, the functions of the decoder elements 100 of Figure 13, and the steps of the process of Figure 12, can be fully or partially implemented within the program instructions of a microprocessor. In addition, the principles of the invention apply to any form of electronic program guide compatible with MPEG or not compatible with MPEG. A data stream formed in accordance with the principles of the invention can be used in a variety of applications, including the video server, or PC-type communication via telephone lines, for example, a program data stream with one or more video, audio, and data components, formed to incorporate the specific information of the program in accordance with the principles of the invention, can be recorded on a storage medium, and can be transmitted or retransmitted to other servers, PCs, or receivers. The key elements of the data structure described herein can be conveniently used to transmit auxiliary program information in a wide variety of data transport structures that can be used to deliver program content or program guide information . These transport structures, for example, may include MPEG-PSI, Internet TCP / IP (Transport Control Protocol / Internet Protocol, Transport Control Protocol / Internet Protocol), DSS (Digital Satellite System, Digital Satellite System), ATM (Asynchronous Transfer Mode, Asynchronous Transfer Mode), and so on.
Claims (18)
1. An apparatus for acquiring program data in packets from at least one first source, which comprises: a processor for acquiring the program guide information, and for acquiring auxiliary information transmitted in data tables hierarchically ordered in the data of programs in packages, including this auxiliary information: (a) a first version identifier transmitted in a primary data table, and updated in response to a change of version in at least one of a plurality of secondary tables hierarchically linked to the table of primary data, and (b) a second version identifier transmitted in a secondary data table, and updated in response to at least one of: a version change in the secondary table, and a version change in a hierarchically tertiary table linked to the secondary table; a processor for determining a change in the content of the secondary data table, by examining the second version identifier, to determine a change immediately after the determination of a change in the first version identifier; and an acquisition processor, to acquire the secondary data table in response to the determination of the change. .
The apparatus according to claim 1, wherein: the primary data table comprises a root database table to indicate the change of version in the data tables of the hierarchically ordered program guide.
The apparatus according to claim 1, wherein: the secondary data table is used to indicate a change in the multimedia objects comprising objects associated with at least one of (a) the transmission channels, (b) the transmission programs, and (c) the user interface controls.
The apparatus according to claim 1, wherein: the primary data table is used to indicate a change in at least one of (a) the information tables of the electronic program guide, and (b) the information specific to the MPEG compatible program.
The apparatus according to claim 1, wherein: the auxiliary information is a two-level hierarchical configuration containing only a primary table and secondary tables.
6. An apparatus for adaptively decoding the program guide data into removable packets, which comprises: a processor for acquiring program guide data comprising divisions of the hierarchically ordered data table, and including division information, including this division information: division identifiers assigned to the individual divisions of the program guide data, where the data divisions of the program guide can be dynamically redivided by reallocating the division identifiers into the information of the program guide. division; and a processor for identifying the reassigned split identifiers, and for acquiring the additional program guide data in response to the identified reassigned split identifiers.
The apparatus according to claim 6, wherein: the division identifiers identify the data divisions of the program guide based on at least one of (a) an area, (b) a transmission time, ( c) a level of complexity, and (d) a type of division.
8. A method for forming packet program data to be suitable for processing in a decoder, which comprises the steps of: forming the program guide information and auxiliary information into hierarchically ordered data tables, and including auxiliary information: (a) a first version identifier transmitted in a primary data table, and updated in response to a version change in at least one of a plurality of secondary tables hierarchically linked to the primary data table, and (b) a second version identifier transmitted in a secondary data table, and updated in response to at least one of: a version change in the secondary table, and a version change in a tertiary table hierarchically linked to the secondary table; and incorporating auxiliary information and program guide information into packet data, to be produced in a transmission channel.
9. A method according to claim 8, which includes the step of: forming the primary data table to comprise a root database table to indicate the change of version in the data tables of the program guide hierarchically ordered.
A method according to claim 8, wherein: forming the secondary data table to indicate a change in the multimedia objects comprising objects associated with at least one of (a) the transmission channels, (b) the transmission programs, and (c) user interface controls.
11. A method according to claim 8, wherein: forming the primary data table to indicate a change in at least one of (a) the information tables of the electronic program guide, and (b) the specific information of the MPEG compatible program.
12. A method according to claim 8, wherein: the auxiliary information is a two-level hierarchical configuration that contains only a primary table and secondary tables.
13. A method for forming packet program data to be suitable for processing in a decoder, which comprises the steps of: dividing the program guide information and auxiliary information into hierarchically ordered data table divisions, and includes a database in the auxiliary information, including this database: (a) updatable version numbers to indicate the change of content of a division, and (b) numbers of cells assigned to the individual divisions of the information of the program guide, where the cell divisions of the program guide information can be dynamically redivided by reassigning the cell number in the database; and incorporate auxiliary information and program guide information into packet data to be produced in a transmission channel.
14. A method according to claim 13, wherein: the auxiliary information contains a multimedia object comprising objects associated with at least one of (a) the transmission channels, (b) the transmission programs, and ( c) user interface controls.
15. A method according to claim 14, wherein: an object comprises at least one of (a) a video segment, (b) an audio segment, (c) text, (d) an icon representing a user selectable game for visual display, (e) an HTML or SGML document, (f) a menu of selectable games, (g) an image window to be presented within a comprehensive picture, and (h) a window of image to start a multimedia function.
16. A method according to claim 13, wherein: a cell number incorporates at least one of (a) an area identifier, (b) a transmission time identifier, and (c) a level identifier of complexity.
17. A storage medium containing digital data representing video information comprising: representative data of the video program; program guide information comprising divisions of the hierarchically ordered data table; auxiliary information that includes a database in the auxiliary information, including this database: the version numbers hierarchically associated with the divisions of the data table hierarchically ordered in the information of the program guide.
18. A storage medium according to claim 17, which includes: cell numbers assigned to the individual divisions of the program guide information, wherein a cell number incorporates at least one of (a) an identifier of area, (b) a transmission time identifier, (c) a complexity level identifier, and (d) a division type identifier.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US60/075,412 | 1998-02-20 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| MXPA00008119A true MXPA00008119A (en) | 2001-07-09 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100583057B1 (en) | Apparatus and method for decoding packetized program data | |
| US7032236B1 (en) | Multimedia system for processing program guides and associated multimedia objects | |
| JP4327233B2 (en) | A system that forms and processes programs, maps, and information suitable for terrestrial, cable, and satellite broadcasting | |
| KR100609338B1 (en) | Method for forming and processing character data for use in broadcast program specific information | |
| JP2001520491A (en) | System for formatting and processing multimedia program data and program guide information | |
| CN1201578C (en) | Program guide information and processor providing program and channel substitution | |
| KR100586857B1 (en) | Method and apparatus for decoding packetized program information, storage medium containing digital data, and method for forming program guide information | |
| MXPA00008119A (en) | System for forming, partitioning and processing electronic program guides | |
| MXPA00008117A (en) | A multimedia system for adaptively forming and processing expansive program guides | |
| MXPA00008118A (en) | A multimedia system for processing program guides and associated multimedia objects | |
| HK1036901B (en) | A multimedia system for processing program guides and associated multimedia objects | |
| HK1036902B (en) | A multimedia system for adaptively forming and processing expansive program guides | |
| MXPA00000347A (en) | A system for forming and processing program specific information suitable for terrestrial, cable or satellite broadcast | |
| MXPA00000344A (en) | A system for forming and processing program specific information containing text data for terrestrial, cable or satellite broadcast |