« PreviousContinue »
METHODS AND APPARATUS FOR
EFFICIENTLY ACCESSING PERIODICALLY
CROSS-REFERENCE TO RELATED
This application claims the benefit of: (i) U.S. Provisional Patent Application No. 60/172,701, filed Dec. 10, 1999, and entitled "METHODS AND APPARATUS FOR EFFICIENTLY ACCESSING PERIODICALLY BROADCAST DATA", and which is hereby incorporated by reference herein.
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention generally relates to broadcast systems. More particularly, the present invention provides methods and apparatus for accessing data that is periodically transmitted by a broadcaster.
2. Description of the Related Art
In a conventional broadcasting system, a broadcaster transmits information in the form of audio, video, data, etc. over a medium such as air, cable, phone line (DSL, for example) that can be received by any number of receivers. For example, transmitted radio waves can be received with a radio receiver tuned to a particular transmission channel. Conventional broadcast communication is typically a one way communication since the receiver does not having control over the content of nor the time of the broadcast transmission.
To facilitate discussion, FIG. 1 illustrates a TV broadcast system 100 that includes a TV broadcaster 102 and a TV receiver 104. The TV receiver 104 can be an analog or a digital TV receiver suitable for reception of voice, video, and data transmitted by the TV broadcaster 102. In a broadcast system, data can be transmitted in a cyclical manner conceptualized in the art as a "data carousel" 106. As used herein, a data carousel refers to a mechanism for cyclic transmission of data modules, for example, as defined by MPEG-2 Digital Storage Medium Command and control (DSM-CC of ISO/IEC 138118-6) User-to-Network Download Protocol. To elaborate, the carrousel 106 illustrates cyclical transmission of data in the broadcast system 100. Data on the carrousel 106 can include data segments A, B, C, and D. Each data segment, such as data segment A, can consist of individual data files XI, X2, X3, and X4. During a typical broadcast session, the carrousel 106 can be visualized as rotating clockwise such that data on the carrousel 106 is transmitted when it reaches a transmission point 108. In this manner data portions A, B, C, and D are sequentially transmitted as the carrousel 106 rotates clockwise in such a manner that a particular data file is re-transmitted when carrousel 106 completes its rotation with respect to an associated point of transmission. For example, the data file XI will be re-transmitted every time the associated reference
point 108 undergoes a full rotation. In this way, each of the data files on the carrousel 106 is cyclically re-transmitted every T seconds, where T is the time it takes for carrousel 106 to make a complete rotation with respect to the point of
5 transmission 108, also referred to as the carousel's period. Unfortunately, however, due to the cyclical nature of the carrousel type broadcasting system, the TV broadcast system 100 has an inherent delay associated with the retransmission of data. To elaborate, at a time tl when a
10 vertical bar 110 is aligned with the point of transmission 108, the TV broadcaster 102 will start transmitting the data file XI. The transmission of data file XI will complete at a subsequent time t2 when transmission of data file X2 is initiated. If the TV receiver 104 requires data file XI some
15 time after transmission of data file XI, the TV receiver 104 must wait until file XI is retransmitted which could be at most at a time T later. For example, it data file XI is required by the receiver 104 at a time t2 (which for this example happens to be shortly after transmission of file XI has
20 completed) a potentially long delay will be encountered before file XI is re-transmitted. This delay can be almost as long as the time T required to complete a full transmission cycle.
Thus, cyclical retransmission of data can result in long 25 delays between the time data is requested (or needed) and the time data is received and accessed. With carrousels typically having hundreds of megabytes of data, the periodic nature of the data carrousel arrangement could potentially result in delays of up to several seconds in accessing 30 required data. This potential delay is exacerbated in those situations where the broadcast medium include low bandwidth links, such as the Internet. Even though this delay may not be very significant in non-interactive situations, it can be especially problematic for interactive applications such as 35 interactive TV, such as WEB TVTM, where it is highly desirable to provide a user with requested information on demand.
In view of foregoing, there is a need for improved methods and apparatus to for accessing data in a real time 40 basis in broadcast systems.
SUMMARY OF THE INVENTION
Broadly speaking, the invention relates to methods and
45 apparatus for accessing data that is periodically transmitted by a broadcaster. In accordance with one aspect of the invention, a receiver capable of reducing the delay conventionally encountered in accessing periodically transmitted data in a broadcasting system is disclosed. In one embodi
50 ment, the receiver includes a file accessing system capable of providing access to a storage medium arranged to selectively store data that is periodically transmitted by the broadcaster. In this way, because the selected periodically transmitted data is saved in the storage medium it can be
55 accessed quickly by the receiver.
In accordance with another embodiment of the present invention, a receiver including a data accessing system and a data storage medium is disclosed. Data transmitted by the broadcasters can be stored in the data storage medium. In
60 this way, data is readily available for access by the data accessing system, thereby reducing the delay associated with accessing periodically broadcast data in a broadcast system.
In another embodiment, the receiver includes a viewing 65 portion suitable for displaying images such as a TV monitor, a computer monitor, and the like. A user may interact with the receiver. For example, while watching the broadcast of
a sporting event, a viewer may request specific information relating to the sporting event as it is being displayed in the viewing portion.
In accordance with another embodiment of the present invention, a data accessing system including a data access requester and a data accessor, is disclosed. In one embodiment, multiple requests to store data are processed independently by a data saver using multiple processing threads. In this manner, requests to store data can quickly be made by a data access requester and efficiently processed by a data saver. A request to store data can be dispatched as soon as the need for data is perceived, e.g. a user has activated an interactive button to request information. Alternatively, the data access requester can dispatch requests to the data saver, in anticipation of future need, e.g., when it is anticipated that a particular data file will be required for access.
A method of accessing data in a broadcast system, in accordance with a particular embodiment of the present invention. A new class can be defined to represent a periodically transmitted file in a broadcast system, e.g., a carrousel file class. An instance of the new class is instantiated. Next, an instance of a data accessing object for the new class is created. In one embodiment, creating an instance of a data accessing object is achieved by instancing pre-defined data accessing operations, e.g., file input output (I/O) operations. Thus, pre-existing data accessing operations, e.g., for accessing conventional files can be re-defined and re-used to access a new file class, e.g., a carrousel file class. Prior to accessing data, a request is made to acquire data. This request initiates a new independent process, e.g., another threat of execution, in accordance with one embodiment of the present invention.
The invention has numerous advantages. One advantage is that the delay time for accessing data in a broadcasting system is significantly reduced. Another advantage is that data access can be provided without requiring a receiver to know the exact location of data. Yet another advantage is that data version updates can be provided to a receiver efficiently. Still another advantage is that cost effective and simple solutions can be implemented by using familiar file access facilities.
The invention can be implemented in numerous ways, including as a computer system, an apparatus, and a method. Several embodiments of the invention are discussed below.
Other aspects and advantages of the invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention will be readily understood by the following detailed description in conjunction with the accompanying drawings, wherein like reference numerals designate like structural elements, and in which:
FIG. 1 illustrates a TV broadcast system including a broadcaster and a TV receiver.
FIG. 2 illustrating a receiver suitable for accessing data transmitted by a broadcaster in a broadcasting system in accordance with one embodiment of the present invention.
FIG. 3 illustrates a receiving system in accordance with another embodiment of the present invention.
FIG. 4 illustrates a data accessing system in accordance with yet another embodiment of the present invention.
FIG. 5 illustrates a method of accessing data in a broadcast system in accordance with a particular embodiment of the present invention.
5 DETAILED DESCRIPTION OF THE
The invention relates to methods, apparatus, and data structures suitable for accessing data in a broadcast system.
10 In accordance with one aspect of the invention, a receiver capable of storing periodically transmitted data is disclosed. By storing the data locally, the receiver reduces the delay conventionally encountered in accessing periodically transmitted data in a broadcasting system. In one embodiment,
15 the receiver includes a file accessing system capable of providing access to a storage medium containing data transmitted by the broadcaster. Selected portions of the periodically transmitted data are saved in the storage medium thereby providing quick access by the receiver in those
20 situations, such as interactive TV, where fast response is essential.
Referring now to FIG. 2 illustrating a receiver 200 suitable for accessing data transmitted by a broadcaster in a broadcasting system, in accordance with one embodiment of
25 the present invention. The receiver 200 includes a data accessing system 202 and a data storage medium 204. It should be noted that the receiver 200 can be any device suitable for reception of broadcast data, e.g., a digital TV, set-top box, analog TV, a computer including a lap top
30 computer, etc. For example, the receiver can be a digital TV or a set up box running an interactive program. The receiver can be implemented as a virtual machine supporting an open interface, e.g., Java, Java TV, etc. Data transmitted by the broadcaster can be stored in the data storage medium 204. In
35 this way, data is readily available for access by the data accessing system 202 thereby reducing the delay associated with accessing the periodically broadcast data. In one implementation, the storage medium 204 is a hard disk type device capable of storing hundreds of megabytes of data,
40 however, it should be noted that the storage medium 204 can be any storage device suitable for storing data such as magnetic tape, Random Access Memory (RAM), Compact Disk (CD), floppy disk, and the like.
Although the data storage medium 204 is depicted as a
45 part of the receiver 200, it should be noted that data storage medium 204 can reside outside of the receiver 200 without departing from the scope and spirit of the invention. Alternatively, data storage medium 204 can be implemented as a part of data accessing system 202. It should also be noted
50 that the data storage medium 204 can be implemented as a buffer or other suitable mechanisms to pass data to data accessing system 202.
Referring now to FIG. 3, illustrating a system 201 that includes the receiver 200 coupled to the data accessing
55 system 202, the data storage medium 204, and a display 302 in accordance with another embodiment of the present invention. The display 302 is any device suitable for displaying images such as a TV monitor, a computer monitor, and the like. The displayed images can include graphics,
60 text, video, etc. Images can be displayed in one or more viewing portions 304,306, and 308 that can take the form of graphical user interface (GUI) elements useful in providing control and data inputs as well as displaying output data. In the described embodiment, various audio signals can be
65 generated by an audio outputting device 310. In addition, a user may interact with the receiver 200 using the various GUI elements included in the viewing portions 304-308.