« PrécédentContinuer »
APPARATUS FOR PROCESSING A
CONTROL COMMAND SEQUENCE AS
WELL AS A METHOD FOR GENERATING A
CONTROL COMMAND SEQUENCE, AND A
STORAGE MEDIUM FOR STORING A 5
CONTROL COMMAND SEQUENCE
Apparatus for processing a control command sequence as well as a method for generating a control command sequence, and a storage medium for storing a control com- 10 mand sequence.
The invention relates to an apparatus for processing a sequence of control commands for a unit to be controlled as well as a method for generating a sequence of control commands for a unit to be controlled, and a storage medium 15 for storing a sequence of control commands of a unit to be controlled.
The invention is based on an apparatus for processing a sequence of control commands for a unit to be controlled of the generic type of the independent claim 1. Such an apparatus has recently become known by virtue of the fact that the DVD (Digital Versatile Disc) playback devices that are the latest additions to the market have a so-called sub-picture decoding unit (sub-picture decoder). These subpicture decoding units are designed according to the specification described in the DVD Standard (Version 1.0). A specific command set for control commands for driving the ^ display unit is described and agreed in the DVD Standard (Version 1.0). The control commands and, if appropriate, video data are stored in a sub-picture unit. However, only very few control commands for the display control are provided in the current DVD standard. It may therefore be 3J expected that in future DVD standardization proposals with version numbers greater than 1.0, additional control commands which are not yet contained in the current DVD standard (version 1.0) will be defined in order to make the display control even more convenient. If a sequence of control commands in which newly defined control commands also occur is therefore stored on storage media, for example the DVD disk, then the problem that currently exists is that such control command sequences cannot be processed in a compatible manner by a DVD playback ^ device which has been developed according to today's standardization proposal.
The aim of the invention is to take account of the 50 above-described problem today, at an early stage, and, on the one hand, to design new playback devices in such a way that they can process the new control commands without any problems and, on the other hand, to arrange the new control commands in a sub-picture unit in such a way that even the 55 playback devices which are designed according to the current DVD standard (Version 1.0) can decode the sub-picture unit having new control commands, without entering into an undefined state.
The object with regard to the new playback devices is 60 achieved according to the invention by means of the measures specified in claim 1. The invention provides an apparatus for processing a sequence of control commands for a unit to be controlled, which is equipped with first decoding means for the control commands that have already been 65 defined today, and which is additionally distinguished by the fact that the first decoding means (22) are designed in such
a way that when a first end command (CMD END) is
processed, they carry out a comparison of the address of the
end command (CMD END) with an address information
item regarding the start address (SP_NXT_DCSQ_SA) of
the next control command sequence (SP DCSQ1,
SP DCSQ2) and identify, from the difference between the
addresses, whether the first end command is additionally
followed by at least one further control command (SET
BAREA) which is selected from a second set of control
commands (SET BAREA). In addition, the apparatus has
further decoding means which are designed in such a way that they can process the new control commands.
These measures have the advantage that the new playback devices can process the control command sequence including the newly defined control commands without any problems.
Advantageous developments and improvements of the apparatus specified in Claim 1 are possible by virtue of the measures evinced in claims 2-9. Thus, for example, it is very advantageous if, in the case where a next sequence of control commands is not provided, the address information item regarding the start address of the next control command sequence points to the beginning of the last sequence of control commands and then, when the address information item regarding the start address of the next control command sequence is decoded following the decoding of the further end command, the control of the unit to be controlled is set or the last sequence of control commands is repeated. If no abort criterion is provided for the resultant loop, then an endless loop is created which can be interrupted by external intervention.
If the last control command sequence is being processed, the address information item regarding the start address of the next control command sequence points to the beginning of the last control command sequence. It is then advantageous if the first decoding means are designed in such a way that they check whether the address of the first end command is the last or penultimate address of the control program unit, and that if the address is not the last or penultimate address, it is identified that at least one further control command will follow after the decoded end command and be processed by the further decoding means. The abovementioned subpicture unit is cited as an example of the control program unit. These measures ensure that additional commands may be contained in the last control command sequence, too, and are able to be processed reliably by an appropriately designed playback device.
Display control commands come into consideration as control command and are then provided for the control of a display unit. On the other hand, the control commands may also relate to printer control commands or control commands for other units.
The second part of the object of the invention is achieved by the method for generating a sequence of control commands for a unit to be controlled in accordance with claim 10. It is advantageous for such a method if the sequence of control commands has first control commands which, as it were, correspond to the control commands already defined today, and additionally has second control commands which correspond to the extended control commands, the second control commands being arranged in combination after the known, first control commands in the sequence and being separated from the first control commands by an end command. The result achieved by this is that the conventional playback devices ignore the new control commands without entering into an undefined state. As a result of the charac3
teristic of conventional playback devices whereby when an end command is decoded, they read out an address information item on the beginning of the control command sequence and begin the processing of the next control command sequence at the location specified by the address 5 information item, these playback devices will ignore the additional control commands arranged after the end command and, therefore, will not enter into an undefined state. Undefined behaviour of the DVD playback devices designed according to the DVD standard (Version 1.0) is avoided. 10
The generated sequence of control commands is advantageously stored on a storage medium. A storage disk or a magnetic tape comes into particular consideration for this purpose.
The control commands are then advantageously stored 15 sequentially one after the other on such a storage medium. Firstly, the known control commands should follow one after the other and then they should be followed by the new or further control commands. At the same time, the new control commands should be separated from the conven- 20 tional control commands by an end command.
Exemplary embodiments of the invention are illustrated in 2J the drawings and are explained in more detail in the description below.
In the figures:
FIG. 1 shows the rough structure of a so-called subpicture unit (SPU); 30
FIG. 2 shows a refined illustration of the sub-picture unit;
FIG. 3 shows a concrete example of a sub-picture unit serving to output an error message onto a screen device;
FIG. 4 shows a display of the error message on the screen device;
FIG. 5 shows a flow diagram for a subroutine which is processed following the decoding of an end command.
FIG. 6 shows a rough block diagram for a sub-picture decoding unit, and 40
FIG. 7 shows the illustration of a storage disk with a stored sub-picture unit.
DESCRIPTION OF THE INVENTION
The invention is explained in more detail using the 45 example of a sub-picture decoding unit of a DVD playback device. In the exemplary embodiment, a rectangular detail area on a display unit is regarded as the sub-picture. The exemplary embodiment described here assumes that a television receiver serves as the display unit. The control 50 commands in this case relate to commands which effect the display of a sub-picture on the television receiver. The sub-picture is displayed on the screen of the television receiver. This may, for example, involve a rectangular detail in the picture which is provided for example for the display 55 of subtitles in the case of foreign language films. Of course, other applications also come into consideration for such sub-pictures. For example, it is also possible in this way to display error messages on the screen, or specific operating directions after they have been called up by the user of the 60 device. For this case, operating instructions can be stored in the device to be operated. If the device to be operated is a DVD playback device, for example, then the sub-picture may also serve for example to display a text for a karaoke function. In this case, the text of a music title which is to be 65 sung is displayed in a subtitle line and the respective passage to be sung is highlighted.
All sub-pictures of this type are stored in a so-called sub-picture unit (SPU). In the case of error messages, the sub-picture units are stored in a read-only memory, for example. For the case of subtitles, these sub-picture units are usually stored on a storage medium such as, for example, a video cassette or a storage disk (DVD, Photo CD, CDi, etc.). Operating instructions may likewise be held in a read-only memory of the device.
FIG. 1 shows a general illustration of the data format of a sub-picture unit. Each sub-picture unit comprises a header section (SPUH), the data for the individual pixels (PXD) and
one or more sequences of display control commands (SP
DCSQT). In FIG. 1, therefore, the reference number 10 designates a data field for a header section, the reference number 11 designates a data field for the pixel data of the sub-picture and the reference number 12 designates a data field for a table of display control command sequences. The data field 12 comprises one or more data fields 13 for the display control command sequences. In FIG. 1, the individual display control command sequences are numbered consecutively and provided with the reference symbols SP_DCSQ0, SP_DCSQ1, SP_DCSQ2, etc. The abovedescribed structure of sub-picture units corresponds to the stipulations in the DVD Standard (Version 1.0); further details in this respect can therefore also be found in this standard.
The header section (SPUH) of the sub-picture unit comprises the two information items for the size of the subpicture unit as well as the start address of the table for the display control command sequences. The pixel data are stored in compressed form in the data field for the pixels of the sub-picture to be displayed. According to the DVD Standard 1.0, the pixel data of each line are compressed according to a specific run length coding method. For each pixel, two bits are stored for the type of pixel. It is thus signalled whether the pixel concerned is a background pixel, a foreground pixel or a pixel highlighted in a first or second way. A further special feature is that for the common television standards such as NTSC and PAL, the pixels for the first field are stored separately from the pixels for the second field. This is illustrated more specifically in FIG. 2. The reference symbol PXDT indicates that the pixel data of the first field are concerned, and the reference symbol PXDB indicates that the pixel data of the second field are concerned.
The table for the display control command sequences SP DCSQT contains the sequences of display control commands which, for example, change the properties of the sub-picture displayed and control the display instants of the picture. A series of display control commands are defined for this purpose in the DVD standard 1.0. Nine display control commands are defined.
The first display control command FSTA_DSP effects unmoving display of the sub-picture on the screen irrespective of whether the user has switched off the display of sub-pictures when configuring the device. The second display control command STA_DSP controls the start instant for the display of the sub-picture. The third display control
command STP DSP controls the stop instant for the display
of the sub-picture. The fourth display control command
SET COLOR selects the colours for the display of the
sub-picture. The fifth display control command SET
CONTR selects the contrast for the pixels of the sub-picture in comparison with the main picture. The sixth display
control command SET DAREA determines the location
where the sub-picture is displayed. The seventh display control command SET DSPXA determines the start
address of the pixel data. The eighth display control command CHG COLCON effects a change in the colours and
contrast details for the pixel data. The ninth display control
command CMD END indicates the end of a display control
command sequence. 5
Even today, it is foreseeable that it would be desirable to provide even further display control commands in addition to the display control commands described, in order to make the display control more convenient. For example, it is desirable to provide a command which effects a flashing 10 display for a defined detail from the sub-picture. This would be significant for the display of a marking on the screen (cursor). Another example for a new display control command relates, for example, to a command by means of which the colour values of the pixels are changed over for a specific 15 sub-area of the sub-picture. This would improve the colour display of sub-pictures. Further examples of additional display control commands are conceivable.
FIG. 3 now relates to a sub-picture unit having a new command, to be precise the new command for the flashing 20 display of a sub-area from the sub-picture is used therein.
This command is provided with the reference symbol SET
BAREA. The sub-picture unit illustrated in FIG. 3 effects the output of an error message on the screen receiver. The corresponding display of the error message is shown in FIG. 25 4. The error message is displayed in the lower area of the picture and is displayed as it were in the foreground in front of the actual picture. The sub-picture unit is programmed in this case in accordance with FIG. 3 in such a way that a flashing display of the error message is effected. This is now 30 explained specifically in more detail with reference to FIG. 3. The reference number 10 again indicates the header section of the sub-picture unit. The size of the sub-picture unit is stored therein in the hexadecimal address $0000 to $0001. The size SPDSZ amounts to 2540 bytes. This infor- 35 mation item means that the next free memory address is located at the address $09EC. The start address of the table for the display control command sequences is stored under the addresses $0002 to $0003. This start address SP_DCSQTA is located at the address $09C7. The com- 40 pressed pixel data for the first field of the error message are stored in the memory locations having the addresses $0004 to $04E5. The compressed pixel data for the second field of the error message are stored in the memory locations of the addresses $04E6 to $09C6. The first display control com- 45 mand sequence begins at the address $09C7. The start instant of the display control command sequence relative to the start instant of the entire sub-picture unit is stored in the first two addresses. In this case, the 0 is entered there because the start instant of the first display control command 50 sequence is intended to coincide with the start instant of the sub-picture unit. The start address of the next display control command sequence is stored in the memory locations having the addresses $09C9 and $09CA. This address SP_NXT_
DCSQ SA corresponds to the hexadecimal value $09E7. 55
The first actual display control command SET COLOR
follows next. By means of this command, the colours for each pixel of the sub-picture are selected. The command occupies the three memory locations having the addresses $09CB to $09CD. Next comes the command SET_ 60 CONTR, by means of which the contrast values for the pixels of the sub-picture in comparison with the main picture are set. This command also occupies three 35 bytes of memory space. Starting at the address $09D1, the command
SET DAREA for the determination of the size and the 65
location where the sub-picture is to be displayed on the screen device then follows. A rectangular sub-picture is
selected, whose top left corner is located at the picture coordinates (235, 250) and whose bottom right corner is located at the picture coordinates (485,300). In this case, the values 235 and 485 specify the X-coordinate and the values 250 and 300 the Y-coordinate of the respective corner points. This command occupies 7 bytes of memory space. Starting at the address $09D8, the command SET_DSPXA follows, which specifies the address starting at which the pixel data for the first field and for the second field are to be read out. The information items in each case correspond to the start address of the fields for the pixel data PXDT and PXDB. This command has a length of 5 bytes. The command STA_DSP is then situated under the address $09DD. This starts the display of the sub-picture unit. Up to this point, all the commands used have already been determined in the DVD Standard (Version 1.0). A first end command CMD_ END is stored under the address $09DE. When this command is processed, the current address, in this case $09DE, is compared with the address which is stored as address SP_NXT_DCSQ_SA for the next control command sequence in the addresses $09C9 and $09CA. In doing so, it is identified that the addresses to be compared, in this case $09DE and $09E7, differ by more than the value one. This then results in the assessment that the first end command
CMD END is additionally followed by at least one further
command, and the decoding of control commands is therefore continued at the next address $09DF. A new command SET_BAREA, which is not defined in the DVD Standard (Version 1.0), is now stored in the addresses $09DF to $09E5. The flashing display for the entire sub-picture is selected with this command. The X- and Y-coordinates
correspond to those of the command SET DAREA. The
command SET BAREA can therefore be correctly processed only by those sub-picture decoding units which are designed to produce a flashing display of sub-pictures
according to this command. A further end command CMD
END is stored under the memory address $09E6. This ends the first display control command sequence. This command causes the sub-picture decoding unit to proceed to that memory address which is stored according to the information item under addresses $09C9 and $09CA.
The address $09E7 is stored there, so that the information item under the address specified there is evaluated next. This
is the information item SP DCSQ STM, which represents
a figure for the start instant of the associated display control command sequence. The decimal value 879 is stored therein, which corresponds to a time indication of 10 seconds relative to the start instant of the sub-picture unit. After this instant has been reached, which is monitored by a counter in the sub-picture decoding unit, the following commands of the second display control command sequence are processed. Firstly, there again follows the information item for the address where the succeeding sequence of display control commands is stored. The information item $09E7 is contained in this case, which is synonymous with the start address of the second display control command sequence. This indicates to the sub-picture decoding unit that the second display control command sequence simultaneously represents the last sequence of display control commands.
The stop command STP DSP follows next under the
address $09EA. This command stops the display of the sub-picture unit and thus ends the output of the error
message. The end command CMD END for this display
control command sequence is then also stored under the address $09EA. When this further end command is decoded, a check is now made to see whether the address of the end command is the last or penultimate address of the entire