The invention relates to a system for recording broadcast programmes and to a method of recording broadcast programmes.
New forms of consumer electronics products are continually being developed. Many efforts have been focused on the convergence of computer technology and home entertainment systems that center on the television (TV) set. Important areas are interactive television and enhanced functionality, by merging broadcast television and Internet. WO 01/11874 describes a system wherein WWW uniform resource locators (URLs) are simulcast with TV signals. For example, URLs may be included into the vertical banking interval (VBI) of a broadcast TV signal or in a separate data channel of a digital TV video stream. When prompted by a message in the TV broadcast, the user may select one or more of the URLs to contact a web site over Internet and perform a transaction to obtain additional information relating to the broadcast. Such information may, for example, be information on the actors, directors, etc.
WO 01/11874 further describes that the broadcast receiver also includes a storage device. If the user wants to access the web site, display of the broadcast is temporarily halted and the web content is displayed on the screen. The broadcast programme is in the mean time recorded in the storage device and display of the programme is continued from storage when the user has finished accessing the web.
Storage capacity of recording capacity is continuously increasing. This enables having a media server in a home with a substantial library of recorded content, such as audio (e.g. in PCM or MP3 encoding), video (e.g. in MPEG encoding), still images (e.g. in JPEG encoding), etc. In particular, audio and/or video may be recorded from live broadcasts. The increasing power of the recording system is expected to also result in a significant increase in demand being made on the system. Users of the system may expect that each person in a home can simultaneously playback anything that is already stored in the system and record whatever is being broadcast. Naturally, there are limits to the storing and playback capacity of the recording system. These limits may lie in physical limitations, such as bandwidth, of the storage device but may also lie in limitations of the broadcast receiver that, for example, can only receive and decode one or two channels at a time. If in the known system capacity is exceeded, a broadcast programme will not be recorded. The user has simply missed the opportunity to record the broadcast.
It is an object of the invention to provide an improved transmission system end recording system better capable of dealing with recording tasks that exceed the current capability of the system.
To meet the object of the invention, a transmission system includes a broadcasting system for broadcasting programmes, a download system including a server for storing content parts of at least some of the broadcast programmes in association with respective content part identifiers; and a communication system for on demand downloading of programme content parts stored in the server; and a recording system including a broadcast receiver for receiving broadcast programmes, a download receiver for requesting and receiving content parts from the server; a recorder including a storage system for storing received programmes and for playback of stored programmes; and a controller operative to determine whether an instructed recording of a broadcast programme would exceed a predetermined capacity of the recording system for recording and playback of programmes during at least part of a corresponding broadcast period; and if so, instruct the recorder to record content parts of the broadcast programme during a part of the broadcast period in which the capacity is not exceeded; store an identification of a content part of the broadcast programme that can not be recorded; determine a period in which the capacity of the recorder is not exceeded; instruct the download receiver to download the not recorded content part from the server in the determined period and instruct the recorder to record the downloaded content part in association with the broadcast programme.
According to the invention, content parts of some (or preferably all) programmes being broadcast are also stored in a server. Preferably, the entire programme is stored in the server. If a recording task exceeds the capability of the system (e.g. the user wishes to record two broadcast programmes during a partially overlapping period and the broadcast receiver and/or recorder is not capable of doing this) at least one recording task is halted during the period in which the capacity is exceeded. The system administrates which content part of the programme is then not recorded. This missing part is downloaded from a server at a moment the system does have the capacity and is then recorded in association with the programme, i.e. combined with the part (if any) that was already recorded during the live broadcast. The temporary lack of capacity may have many causes, including too many playback tasks that must be performed during the recording period. The system is able to identify the content parts being broadcast and select the not recorded parts from the server. Any suitable content part identification may be used. For example, the recording system may store a broadcasting timestamp, where the server maintains a table mapping the broadcast timestamp to stored parts. The content parts may also be associated with characteristic point information (CPI) in a way known from DVR (Blu Ray Disc).
According to the measure of claim 2, whenever capacity is exceeded the controller is capable of selecting between the conflicting tasks. In a preferred embodiment, as described in the dependent claim 3, it is checked whether a programme to be recorded is available on the server for subsequent downloading. If so, it is not necessary to perform a live recording of this programme. Priority can be given to other recording and/or playback tasks.
According to the measure of the dependent claim 3, broadcast programmes are associated with an identifier. The identifier is used to check whether a programme to be broadcast is available for later downloading in the server. If so, recording can be delayed without serious consequences. If not, it is preferred to record the live broadcast (unless all of the other tasks that are candidates for being halted are even more important).
According to the measure of the dependent claim 4, each broadcast programme is associated with at least one programme attribute. The controller is programmed to give priority to executing a recording task relating to a programme with at least one predetermined programme attribute. The programme attribute of a programme to be recorded is a parameter in the decision making process.
According to the measure of the dependent claim 5, the programme attribute includes at least one of the following:
For example, priority may be given to events that are one-off events, such as typically is the case for programme categories like news and sport.
According to the measure of the dependent claim 6, the system has a user profile and uses the profile for deciding which task to halt/execute during a period of a capacity conflict. Preferably, the profile includes at least one of the following:
Preferably, the system interacts with the user if there is a conflict. The system may then present all relevant information (such a programme category, whether or not the programme can be downloaded subsequently, etc.). The user can then decide. It is preferred that the system uses the input to optimize the rules/profile it uses to decide/propose which task to execute/halt. The user can then, at a certain moment, instruct the system to operate fully automatically, possibly only providing its decision to the user. In the latter case, the user only needs to intervene if the user disagrees with the decision.
These and other aspects of the invention are apparent from and will be elucidated with reference to the embodiments described hereinafter.
In the drawings:
A typical system operates as a multi-channel system, implying that the multiplexer 20 can handle A/V information received from a number of (parallel) sources and interacts with the transmitter 30 to broadcast the information along a corresponding number of channels or multiplexed into separate transport streams. In addition to A/V signals, messages or applications or any other sort of digital data may be introduced in some or all of these services/channels interlaced with the transmitted digital audio and video information. As such a transport stream includes one or more services, each with one or more service components. A service component is a mono-media element Examples of service components are a video elementary stream, an audio elementary stream, a Java application (Xlet), or other data type. A transport stream is formed by time-multiplexing one or more elementary streams and/or data.
According to the invention, communication is enabled in the system to facilitate downloading of content parts of a programme that could not be recorded during the live broadcast of the title. The content parts are downloaded from a download system 90, including a server 92 and a communication system 94. Preferably, the communication is bi-directional. Advantageously, the same communication is also used for interactive applications, such as interactive video, e-commerce and so on, and to enable the receiver to obtain additional information/functionality from a web site on the server 92. Shown is the use of a wide area network 80, preferably the open Internet, where the added functionality and interactivity is provided by a web site on a server 92. The content parts to be recorded are typically downloaded on demand by a receiver/recorder. Other added functionality that is stored in the server may be broadcast or multicast from the server. To this end, preferably, the server 92 also has a connection to the multiplexer 20. This may be a direct link but may also be via the Internet. It will be understood that the communication functionality of Internet or similar communication system may be provided in any suitable form. For example, the receiver may communicate via a cable network or satellite connection, directly using Internet protocols. Alternatively, the receiver may have a telephone-based dial-in connection to an access provider that provides access to the Internet. The receiver may, but need not use Internet protocols. If the server 92 does use Internet protocols, protocol conversion may take place, for example using a gateway.
Although the system according to the invention is described for a conventional digital broadcast system, in principle the invention can also be applied for non-conventional broadcast transmissions. For example, the same concepts can be applied where a programme is supplied to a group of receivers where an individual receiver can not control the start of a transmission or cannot easily interrupt a recording of a transmission without loosing content parts.
The described broadcasting system broadcasts programmes, typically audio/video (AV) programmes.
According to the invention, the server 92 includes a storage for storing content parts of at least some of the broadcast programmes. The parts are stored in association with respective content part identifiers. The communication system 94 enables downloading of selective parts of the stored content on demand by indication the content parts using the identifier or other identifying information that can be converted to the stored identifier. The server is preferably implemented using hardware/software that is conventional for web servers or video on demand servers. The storage may, for example, be based on a RAID system. Preferably, the server stores content parts of each programme broadcast by a service provider. It may store only part of the title (e.g. the last half of the programme). It will be appreciated that it is preferred that the entire programme is stored. The download system may also include a payment system for payment of downloads. The payment may, for example, be on a subscription basis, or on a usage basis (e.g. per programme, per amount of downloaded data, or per time duration of the playback time of the downloaded part). The downloaded content may be protected using conditional access techniques.
In a further embodiment, enhanced functionality for the programme, that has been broadcast or is being broadcast, is available via the Internet through a web site. The web site may, but needs not, be on the same server as the one used for downloading the not-live recorded content parts. In the description here, it is assumed that the additional information is also provided via the download system 90. The web site on the server 92 may contain many additional information parts, of which some have a clear correspondence with content parts of the programme. For example, the web site may include more subtitles or languages than in the broadcast programme. For example, a DVD may have been supplied in different versions for different regional areas. As the different versions are developed more languages and sub-titles may be developed as well. These languages and sub-titles can be stored in the server 92 and provided from the server during the live broadcast, preferably synchronous to the broadcast. The additional information may be provided from the server to the broadcast system or through the download system. It may also be downloaded at a later moment for subsequent recording or for synchronous playback with a playback of the stored content. As a further example, the server may store interviews with the director, script writers, or actors, where parts of the interview link to content parts being discussed. In this way, the viewer watching the interview (retrieved from the web site) can also view the content parts being discussed. Similarly, games and quizzes may be developed and made available through the web site that may or may not link web-based content to the programme content. Further examples of enhanced functionality are:
The enhanced functionality can be used to adapt the broadcast content to a specific audience. The type of audience may be explicitly indicated by the user or automatically determined based on the use of the system by the user, resulting in the creation of a user profile. In itself it is known how automatically user profiles can be created based on the usage of a system. This will not be described further here.
It will be appreciated that the various functions, such as the tuner function 210, the de-multiplexer function 220, the optional descrambler/decryptor function 230, and the decoder function 240 may be performed using dedicated hardware. Some functions or part of the functions may also performed by a programmable processing function, for instance using a digital signal processor (DSP) loaded with a suitable program. The various functions within the recording system are operated under control of the controller 250, which typically includes an embedded microprocessor or microcontroller. The controller operates under control of a suitable program. The program is typically loaded from a non-volatile memory, such as a ROM. Preferably, the program is updateable, e.g. via downloading or via a removable storage medium. The program is then stored in a rewriteable non-volatile memory, such as a hard disk or flash memory. To keep the figure simple, the control relationship between the controller and the other functions are not shown. Only the role that the controller can have in recording the broadcast/downloaded content parts, managing the storing/playback capacity, processing of the web data and synchronizing the presentation of AV content and web content are shown. For presenting the web content, the controller may execute an application similar to web browsers known from PCs. It will be appreciated that for certain information a much simpler application may be used. For example, sub-titles retrieved from the Internet can be overlaid in a way that Teletext sub-titles are overlaid. The user needs not to be aware that the actual added content is retrieved from the web.
According to the invention, the controller 250 manages at least the capacity of the recording system for recording and playback of programmes. The capacity may include the number of programmes that can be received simultaneously by the broadcast reception subsystem (tuner, de-multiplexer, conditional access system, decoder), that can be recorded simultaneously, that can be played back simultaneously, etc. The capacity of these items may have a dependency, for example playback and recording typically share an interface to the storage and share the same read/write head. Thus, playback operations will reduce the recording capacity and vice versa. The controller 250 can receive an instruction to record a broadcast programme, typically via the user interface 295. The instruction may also be received via other means, such as an in-home network. The instruction includes an identification of the programme, such as a channel number. The user may also indicate the period of broadcasting of the programme. Alternatively, the controller may retrieve this information automatically, for example from an electronic programme guide (EPG). The controller knows the current recording and playback tasks. It may also know some future tasks (already programmed automatic recordings or playback operations). Typically, the controller maintains such information in a memory, such as a RAM. Based on this information, the controller determines whether the instructed recording of the broadcast programme would exceed the predetermined capacity during at least part of the corresponding broadcast period. If so, the controller ensures that those parts of the live broadcast are recorded that take place when there is sufficient capacity in the recording (i.e. no conflicting tasks that cannot be executed in parallel). The controller also stores an identification of the content parts of the broadcast programme that could not be recorded during the live broadcast due to lack of capacity. It then determines a period in which the capacity of the recorder is not exceeded. During such a period, it instructs the download receiver to download the not recorded content parts from the server and instructs the recorder to record the downloaded content part in association with the broadcast programme. So, after completion of the download the entire programme has been recorded as if it were received in one operation.
In a preferred embodiment, whenever capacity is exceeded that controller is capable of selecting between the conflicting tasks. Advantageously, the controller checks whether a programme to be recorded is available on the server for subsequent downloading. It may use a programme identifier for this verification. If there are several overlapping recording tasks, the controller preferably checks for each of those tasks whether the programme is available in the server for downloading. A programme does not need to be recorded during the live broadcast if it is available in the server for downloading at a period subsequent to the broadcast when there is sufficient capacity. If already available in the server before the actual broadcast of the programme, the programme parts that can not be recorded live can already be recorded via downloading before the start of the actual broadcast. Also such programmes do not need to be recorded live. Priority can be given to other recording and/or playback tasks.
In a preferred embodiment, one or more programme attributes of a programme to be recorded are used in the decision making process. The controller may retrieve the programme attributes from an EPG or from a web site, e.g. from the server 92. The controller is programmed to give priority to executing a recording task relating to a programme with at least one predetermined programme attribute, such as a news broadcast. The controller preferably stores the attributes for each task to be executed, so that it can perform the decision making at every suitable moment (e.g. when it receives a new playback or recording instruction).
Preferably, the system has a user profile and uses the profile for deciding which task to halt/execute during a period of a capacity conflict. Preferably, the profile includes for which of the programme attributes the user has a preference. In addition it may include a preference for giving priority to playback or to recording in case of a conflict. The controller ensures that the profile is stored, preferably in non-volatile memory, such as the storage 290 or solid state memory like flash memory. Advantageously, the controller automatically compiles and adjusts the profile based on the behavior of the user. The controller may also enable a user to define and/or adjust the profile, for example in the form of rules.
Preferably, the system interacts with the user through the user interface if there is a conflict. The system may then present all relevant information (such a programme category, whether or not the programme can be downloaded subsequently, etc.). The user can then decide which task(s) should be executed during the period of lack of capacity. It is preferred that the system uses the input to optimize the rules/profile it uses to decide/propose which task to execute/halt. The user can then, at a certain moment, instruct the system to operate fully automatically, possibly only providing its decision to the user. In the latter case, the user only needs to intervene if the user disagrees with the decision.
It will be appreciated that the controller is able to identify the content parts being broadcast and select the not recorded parts from the server. Any suitable content part identification may be used. For example, the recording system may store a broadcasting timestamp, where the server maintains a table mapping the broadcast timestamp to stored parts. The content parts may also be associated with characteristic point information (CPI) in a way known from DVR (Blu Ray Disc). It is then preferred that the recording system and the server use the same rules for associating CPIs with content part (e.g. labeling each I-frame of an MPEG-2 stream with a CPI tag, or inserting a chapter every minute).
An example of a mapping will be described for MHP. MHP defines Normal Play Time (NPT) which is included in the Transport Stream that is broadcast and is accessible to the applications. It provides a continuous monotonically increasing time base independent of any timing discontinuities in the broadcast. NPT does not need to be included in a broadcast but is part of MHP and so can be used in this case to define the time relation between the stored content and the broadcast. The NPT can also be paused for some time e.g. during a commercial break the NPT of the main programme will pause. There may be multiple NPTs in the broadcast but only one can be increasing at any point in time e.g. the NPT of the main programme may be paused during an inserted news bulletin during which a separate NPT will increase. Essentially, the NPT is an offset from the Transport Stream timing (based on PCR) but without discontinuities. PCR is an acronym from MPEG-2 Transport Stream. It stands for Program Clock Reference and it is the basic timing in the Transport Stream along with the PTS/DTS times (Presentation Time Stamp and Display Time Stamp). The PCR is repeated in the Transport Stream (e.g. every 100 ms) to give the current time and the PTS/DTS refer to the same time base as the PCR.
A broadcast programme is recorded in a storage, such as the internal storage 290 of
It should be noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design many alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. Use of the verb “comprise” and “include” and its conjugations do not exclude the presence of elements or steps other than those stated in a claim. The article “a” or “an” preceding an element does not exclude the presence of a plurality of such elements. The invention may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. A computer program product may be stored/distributed on a suitable medium, such as optical storage, but may also be distributed in other forms, such as being distributed via the Internet or wired or wireless telecommunication systems. In a system/device/apparatus claim enumerating several means, several of these means may be embodied by one and the same item of hardware. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage.
Number | Date | Country | Kind |
---|---|---|---|
03101002.8 | Apr 2003 | EP | regional |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IB04/50395 | 4/5/2004 | WO | 10/5/2005 |