METHOD FOR DISPLAYING ADVERTISEMENTS USING SET-TOP BOX
TECHNICAL FIELD The invention relates to a method for displaying advertisements using a set-top box.
BACKGROUND ART
One of the ways of displaying advertisements is broadcasting them by the means of a television signal to a television receiver, where previously prepared graphic sequences are displayed and accompanied by a soundtrack. Such advertisements are most often broadcast during program intermissions. This method proves to be exceedingly expensive, what constitutes its major drawback. This is due to high costs of preparing the advertisements themselves, as well as to high broadcasting fees. The fees depend on the length of the advertisement, and on the particular time interval it will be displayed. Another shortcoming is the fact that a viewer can easily avoid watching the advertisement by simply changing the channel on the television set.
Description of a different method of displaying advertisements is presented in IPO's publication WO 02/13520 A1. It is a method of displaying advertisements using an OSD (on-screen display) system, which is used to display graphic and text information directly on the screen. The advertisements described in that publication are always visible when the television receiver is switched on. The advertisements managing system displays the advertisements continuously, which may be troublesome to the viewer.
The specification of the US patent No. 5,325,183, in turn, describes a system of on-screen display of receiver settings, which enables displaying of color graphics, including the advertisement graphics. It presents a method of displaying advertisements, which the viewer would be forced to watch, having no possibility to switch them off.
Another US patent No. 5,233,423 discloses advertisements, which are overlaid on a currently broadcast program. Advertisements are stored in a
ROM-type memory, where data received from 'telephone or cable television network can be stored. The advertisements may be displayed in preset time intervals or when the viewer calls up any of the television receiver control functions, for example when changing the channel or adjusting the brightness of the screen. The advertisements may be displayed in various sizes and in different locations on the screen. The presented system makes up an integral part of the television receiver and it is not possible to add it to devices already present on the market. Moreover, it employs a switch, which needs to be operated in order to display the advertisement image in parallel with the broadcast television signal.
DISCLOSURE OF INVENTION
According to the present invention, in a method for displaying advertisements using a set-top box, the displaying of the advertisement on the screen of a TV-set in the form of graphic and text information is activated when the TV-set settings are changed using a remote control unit.
Preferably the advertisement is displayed in a frame not larger than the size of the screen of the TV-set.
Preferably the size of the advertisement is changed in accordance with the change in the TV-set settings.
Preferably the position of the advertisement is changed in accordance with the change in TV-set settings.
Preferably the advertisement is placed next to the indicator of the TV-set setting that is being changed.
Preferably the advertisement is placed over the indicator of the TV-set setting that is being changed.
Preferably TV-set settings are changed by means of a set-top box.
It is best for the advertisement data to be sent to the set-top box in a form of a file.
It is best to send advertisement files in a terrestrial, satellite or cable television data stream.
Preferably advertisement files are transmitted via a data interface, using a television broadcast signal, and/or a cable television return channel, and/or a radio signal.
Preferably advertisement information, related to a single advertisement, is sent to the set-top box as a graphic file, including the content of the advertisement, and a data file, containing information about the advertisement.
Preferably the advertisement content of the graphic file is stored in different graphic formats.
Preferably the information concerning the advertisement contained in the data file is in the form of a formatted text.
Preferably the graphic file and the data file are associated with each other in such a way that a data file points to a given graphic file.
Preferably the graphic file and the data file are associated with each other in such a way that the files have common names and different extensions.
It is best to display the advertisement in relation to the advertisement description data, from which a table is created.
Preferably the advertisement description data comprises a time interval, a program type and a channel name, for which the advertisement can be displayed, and also a priority, an expiration time and a status of the advertisement.
Preferably, before displaying the advertisements, a collection of advertisements, designated for display at a given time, is created.
It is best to create a set of advertisements based on the data used to describe the advertisements.
Preferably, an advertisement is chosen for display by drawing, from the collection of advertisements designated for display at a given time, with respect to the priority of each advertisement comprised in the collection of advertisements.
Preferably, an advertisement is chosen for display, from the collection of advertisements designated for display at a given time, in a sequence defined by the priority of each advertisement comprised in the collection of
advertisements.
It is best to update the set of advertisements to be displayed at such a time, when the parameters of the displayed television signal have changed, or when a preset period of time from the last update has expired.
It is best to define the status of an advertisement based on supplementary advertisements.
It is best to consider the supplementary advertisements to be advertisements displayed in place of the standard ones.
It is best to store advertisement files only for a period defined by the expiration time of the advertisement.
Preferably the display of advertisements is controlled by software pre- installed in the set-top box.
Preferably the display of advertisements is controlled by software transmitted in the television stream designated for control of advertisements at a certain channel or during a certain program.
BRIEF DESCRIPTION OF DRAWINGS
The object of this invention is shown in implementation examples in the enclosed drawing, in which:
Fig. 1 illustrates a TV-set with an advertisement displayed on the screen;
Figs 2A and 2B illustrate a TV-set screen with an advertisement of a changing size;
Fig. 3 illustrates a part of the set-top box responsible for generating the video signal;
Fig. 4 illustrates a block diagram of the set-top box;
Fig. 5 illustrates the structure of a graphic file;
Fig. 6 illustrates the structure of a data file;
Fig. 7 illustrates the flow diagram of an algorithm for adding data to an advertisement table;
Fig. 8 illustrates the flow diagram of an algorithm for monitoring the expiration time of an advertisement;
Fig. 9 illustrates the flow diagram of an algorithm for displaying an advertisement;
Fig. 10 illustrates the flow diagram of an algorithm for choosing an advertisement;
Fig. 11 illustrates the flow diagram of an algorithm for searching for a set of advertisements; and
Fig. 12 illustrates the flow diagram of a drawing algorithm for choosing an advertisement.
BEST MODE FOR CARRYING OUT THE INVENTION In the disclosed solution, information about the advertised product is displayed along with the viewed television channel. A small icon 3, displayed in a frame 2 on the TV-set screen 1, represents the advertisement. The icon 3 may be displayed anywhere on the screen 1 In Fig. 1 it is placed above the TV-set settings indicator, which may represent, among others, a sound volume control, channel settings or picture quality adjustment.
A set-top box 8, shown in Fig. 1 , receives a signal via the interface 10. It processes the signal and sends it via the interface 7 to a TV-set. A viewer controls the functions of the set-top box 8 and the TV-set by the remote control unit 9.
The main signal, transmitted to the TV-set is a satellite, cable, or terrestrial signal. In the methods currently in use, this signal is transmitted in the MPEG format, which allows the simultaneous transmission of picture, sound and additional data. When the viewer chooses a specific function using the remote control unit 9, an appropriate command is sent, via infrared interface, to the set-top box 8. After receiving the command, a processor inside the set-top box 8 performs the required task. For instance, changing the channel, adjusting picture brightness or sound volume. This involves activating certain functionality of a tuner, a graphic processor or other circuit. At the same time, an information display system generates on the screen information about the chosen function.
Along with showing information about the chosen function, the described system also displays a frame 2, containing the icon 3, which is the advertisement itself. This means that the advertisement will be displayed each time the remote control unit 9 is used. The frame 2 includes an indicator 4, which defines the value 6 of the specific setting 5 of the TV-set on a scale, for instance the sound volume setting. The frame 2, along with the internal icon 3 may be displayed at a specific place or move along with the changing value of the TV-set settings. In a different variant, shown in Figs. 2A and 2B, a change in the setting value from 16 to that of 17, on the function setting scale 5, is accompanied by a change in the size of the icon 13 for the value of 16 to icon size 14 for the value of 17. The icon 13 is contained in the window 12, therefore the change of the icon size is well visible against the background of the window 12.
In case of an advertisement shown at a fixed place, the parameters of its placement may be set, for instance, by the coordinates of its upper left corner. They are stored in memory as two variables with default values (for example, defining the placement of the advertisement in the upper left corner of the screen). However, the viewer can be allowed to change the placement of advertisement display, for instance if it were to overlay an important part of the program being viewed.
After choosing an appropriate option, the variables defining the advertisement placement are updated.
Fig. 3 shows set-top box circuits responsible for picture generation. The circuits are treated as functional components. It is irrelevant whether they form a single integrated circuit or they are separate devices. The signal 29 supplied to the TV-set is generated by the video signal generator 28. This signal is delivered, usually in a digital form, to the image generator 28 by the mixer 27, which receives input signals from several sources and combines them. The input signals may be generated by a source 24 of a static signal, a video signal system 25, reading data also directly from the video decoder 23, and an onscreen display (OSD) system 26. The source 24 of a static signal, the video
signal system 25, the video decoder 23 and the on-screen display system 26 use the RAM memory 21 from which they read data via the memory controller 22. All systems are controlled by the CPU (Central Processing Unit) 3f
The on-screen display system 26, controlled by the CPU 30, delivers to the mixer 27 the image to be overlaid on the video image. The on-screen display system 26 includes functionality that allows displaying the images in arbitrary place on the screen. Data concerning these images is read from the RAM 21. That data is previously generated by an appropriate function of the CPU 30.
Fig. 4 shows a detailed architecture of the set-top box 14, with emphasis on elements used to operate the advertising system. The set-top box 40 shown here contains a signal receiving block 42, comprising tuners and demodulators, which receives signals from various sources 41, including satellite, cable, and terrestrial television signals. The second signal receiving unit is a return channel system 43 allowing for a two-way data transfer: from the user to the operator and vice-versa. Either a cable television or a telephone network may constitute this channel. The received signals are processed in the demultiplexer 44, which splits the incoming MPEG signal into an audio stream 45, video stream 46 and data stream 47. The functionality of the set-top box is controlled by the CPU 48. The CPU 48 processes data received in the data stream 47 and controls their storage in the RAM 50, flash memory 49 or hard drive 51
Advertisement data is sent to the set-top box in a form of files. These files may be sent via a return channel or included as data in the MPEG stream. The return channel is an interface allowing data transfer and comprises appropriate protocols for data flow control. An application controlling the flow of data in the return channel monitors the incoming data and directs the advertisement files to an application for managing these files.
Advertisement data may also be sent in an MPEG stream in which the television signal is broadcast. The MPEG stream contains a private section, which may be used for data transmission. It is also possible to send data in user-defined packets. The application controlling the flow of data in the MPEG stream arranges the incoming data into files, according to information
contained therein. After receiving advertisement files, it directs them to an appropriate application for managing these files.
Transmission of advertisement data in the form of separate, relatively small files may be considered inefficient. If it is necessary to send a large number of files, they may be sent as a single package, constituting a single file. The package can be split back into the individual files in the set-top box. Packages of files, as well as individual files, may be compressed in order to take up less memory space.
The advertisements displaying system, prior to displaying the advertisement, selects the advertisement and reads its content. Information concerning a single advertisement may be sent to the set-top box as two separate files. The first file, which is a graphic file, contains the contents of the advertisement. This may be either graphics or text to be displayed on the screen. The second file, which is a data file, contains information concerning the advertisement display specifications (at what times, during which programs and on which channels it should be shown), the priority (determining the frequency of display) as well as its expiration time (the period of time, over which a given advertisement is to be shown). The two files are associated with each other in a way that makes clear which data file relates to which graphic file. This can be done, for instance, by using a common file name with different extensions, for example advertisementl .bmp and advertisementl .dat.
Fig. 5 shows a structure of a graphic file. In its simplest form, it comprises a header 6_1 and data 62. The header 6_1 defines the format in which the data is stored, by specifying the format of the graphic file or by specifying the way the text is formatted. The rest of the file comprises data 62 describing the content of the advertisement.
Fig. 6 shows a structure of a data file. It comprises a header 65 and a number of fields describing categories 66, 68 and their values 67, 69. The header 65 comprises information concerning the number of fields contained in the file and their length. This allows to quickly determine the contents of the data file, which may contain an arbitrary number of fields, depending on how a given advertisement is classified. The following table contains examples of
individual fields and their values. The mentioned fields include: "Time Interval", "Program Type", "Channel name", "Priority", "Duration", and "Supplementary Advertisement".
The "Time Interval" field describes the times at which the given advertisement should be shown. For instance, children advertisements should be shown in the mid-afternoon.
The "Program Type" field is used when the system has access to information regarding currently shown programs. Such information may be obtained from the MPEG stream of the currently received program.
The "Channel Name" field defines the name of the channel on which the advertisement should be shown.
The "Priority" field includes a value defining the frequency at which a given advertisement should be shown. The higher the priority, the more often the advertisement is displayed.
The "Expiration Time" field defines the number of days during which an advertisement is to be displayed. If it is defined with the accuracy of one day, this field should be updated once a day.
The "Supplementary Advertisement" field defines the status of special advertisements, which are to be shown together with specific programs.
The application receiving new advertisement files stores them in nonvolatile memory (for example, a Flash memory or a hard drive) and next adds data from the data files to an advertisement table, stored in the volatile or a non-volatile memory. When an advertisement is stored in the non-volatile memory, the table has to be set up each time the set-top box is turned on, basing on the data files stored in the non-volatile memory. Due to splitting the advertisement information into graphic and data files, it is possible to send these files separately. Typically, data and graphic files for a new advertisement are sent simultaneously. In case when a customer wishes to change the advertisement display preferences, only a data file containing the updated preferences needs to be transmitted. For example, when changing the time interval from 10.00 - 12.00 to 11.00 - 13.00, only the data file is sent.
The algorithm of the function for adding data to the advertisement table is shown in Fig. 7. This function is initiated in step 71 by the arrival of the new data. After receiving information about a new incoming data file, it is read in step 72. Next, in step 73, a check is performed if the advertisement table already contains a record of this file. If it does, then in step 74 an update is initiated for the record, based on data contained in the file. If it does not, then in step 75 the system adds a new record to the table.
The algorithm of monitoring the expiration time is shown in Fig. 8. The update process begins in step 81, starting with a first record 82. The value of the expiration time is decreased by 1 in step 83. In step 84 it is checked if the decreased time is equal to zero. If it is, it indicates that the advertisement has expired. Then, its graphic and data files are removed from the memory and from the advertisement table in step 85. In step 86 it is checked if the record being analyzed is the last record in the table. If so, the update process is finished in step 87. If not, the function proceeds to the next record in step 88.
The algorithm of displaying an advertisement is shown in Fig. 9. The displaying is initiated in step 9_1 at the moment when the user presses any button on the remote control unit. The advertisement is first chosen in step 92. Parameters defining the placement of the advertisement on the screen are read in step 93. Next, in step 94, the system sends the graphic file and the
placement parameters to the on-screen display system. The on-screen display system displays the advertisement together with the information about the chosen remote control unit function.
The manner of receiving and storing advertisements described above concerned advertisements broadcast by the operator as destined to be displayed according to given criteria, described as regular advertisements. However, the system can also provide a set of supplementary advertisements, to be displayed during a specific program, for example a football match, which has an exceptionally high viewing rate. A company ordering the advertisement broadcast can purchase a set of special advertisements to be displayed only during that match. The set of special advertisements will then be transmitted during the broadcast of that program. Data files of those advertisements would have the "Supplementary Advertisement" field active. The remaining fields would then define the relevant time, the program and the channel number.
After receiving an advertisement labeled as "Supplementary Advertisement", a new table, called the "Supplementary Advertisement Table", similar to a regular advertisement table, is created. In case of the supplementary advertisements, in the time interval for which a supplementary advertisement is scheduled, no other advertisement may be displayed. This gives a possibility of blocking the display of other advertisements on a given channel.
Fig. 10 shows an algorithm for choosing an advertisement to be displayed. In step 95 of this algorithm the current set-top box parameters are read, such as the time, name and type of the program being received. Next, in step 96 it is checked if any parameters of the broadcast television program have been changed since the moment the last set of advertisements was located. Changes could arise because the user could have switched the channel, the type of program broadcast on a chosen channel could have changed or some predetermined time (for instance 15 minutes) elapsed since the last location of advertisement set. If the parameters have changed, in step 97 the system locates a new set of advertisements corresponding to the new parameters. In step 98 the system chooses an advertisement according to the
new criteria. If there was no change in parameters, in step 98 the system chooses an advertisement from the old set, bypassing step 97.
An algorithm for locating a set of advertisements is shown in Fig. 11. A search function first looks through the advertisement table in step 101. In step 102 it checks if an advertisement fulfilling the predefined criteria has been found. The check is first performed on the set of supplementary advertisements. If advertisements fulfilling the criteria are found, a set of advertisements, created in step 104. will be composed of supplementary advertisements. If no supplementary advertisements fulfilling the criteria are found, the standard advertisement table is searched in step 103. This table should contain appropriate advertisements, because some of them are usually meant to be displayed at any time on all channels. A set of advertisements ready to be displayed is created in step 104.
Fig. 12 shows an algorithm for choosing an advertisement from the set created in step 104. At first, priorities of the chosen advertisements are read from standard or supplementary advertisement tables in step 106. The priorities are used to determine the order in which the advertisements are broadcast or as weight factors in case the advertisements are chosen randomly. The advertisement to be displayed is then chosen in step 107.
There are several methods for choosing the advertisements. Two examples are given below.
The first method uses the priorities of the advertisements as weight factors when the advertisement is chosen randomly using one of several known drawing algorithms. Using this method, an advertisement with a priority factor of 5 is five times more likely to be chosen than an advertisement with a priority factor of 1.
The second method uses the priorities of advertisements to establish the order of their display. In this method, advertisements with a higher priority will be displayed first.
The above description demonstrates the most advanced version of the system. The system functionality can be modified or limited to accommodate to
set-top boxes with low processing power or to cases where the operator is not able to service all the functionality of the system.
One of the possible modifications allows the advertisement manager to omit the functionality of displaying the advertisements on a user-specified point on the screen and use a default setting, for instance, the upper left corner of the screen.
Another modification omits the priority settings. Then, all the advertisements have the same probability of display.
It is also possible to omit creating the supplementary advertisement tables. This is useful in systems where the operator is unable to broadcast advertisements continuously in the MPEG stream.
Another possibility is to omit the expiration time of the advertisement. The advertisement in this case would remain valid until it is replaced with a new one.
Yet another modification refers to omitting the broadcasting of data files. Advertisement tables would not be created then. The hard disc would store only graphic files and the advertisement locating function would pick only one advertisement. This solution can be used in systems where it is impossible to determine the time, the program or the channel.
The system described above, indicated that the system servicing the advertisement display is installed in the set-top box and manages advertisement display on all channels. Another possibility would be to create individual applications for individual channels, responsible for displaying advertisements only on those channels. In such a case, the application would be broadcast in the MPEG stream along with advertisement data. After initiation of the application, the system reads advertisement data and displays the advertisements according to the previously described algorithms. Such a solution allows for broadcast of applications dedicated explicitly to the specific programs.
The presented solution has several advantages compared to the known methods of managing advertisements. The solution described here is a set-top box application and does not require additional equipment. It can be
implemented in set-top boxes, which are already on the market. It allows easy reception of broadcast advertisement data. Moreover, it also allows transmitting not only the advertisement data but also an application for displaying advertisements in a specific program.