Patent Publication Number: US-8542977-B2

Title: Method of reproducing from storage medium storing interactive graphics stream activated in response to user&#39;s command

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation application of U.S. patent application Ser. No. 11/442,536, filed on May 30, 2006, currently pending, which is a continuation of application Ser. No. 10/954,357, filed on Oct. 1, 2004, currently pending, which claims the priority of Korean Patent Application Nos. 10-2004-0002716 and 10-2004-0022042, respectively filed on Jan. 14, 2004 and Mar. 31, 2004, in the Korean Intellectual Property Office, the disclosures of which are incorporated herein by reference. 
    
    
     BACKGROUND 
     1. Field 
     The following description relates to reproduction of a multimedia image, and more particularly, to method of reproducing from a storage medium storing an interactive graphics stream displayed in response to a user&#39;s command. 
     2. Description of Related Art 
     To reproduce a multimedia image, audio-visual (AV) data of the multimedia image, navigation data controlling reproduction of the AV data, and system data including command information related to a title of AV data to be initially reproduced when the storage medium is inserted in a reproducing apparatus are recorded in a storage medium. Other data can also be recorded in the storage medium. In particular, the AV data is recorded in the storage medium by multiplexing video, audio, subtitles, and a menu as a main stream. 
       FIG. 1  illustrates a block diagram of an example of general AV data recorded in a storage medium. 
     Referring to  FIG. 1 , in a storage medium storing a multimedia image, a video stream  102 , an audio stream  104 , a presentation graphic stream  106  for providing a subtitle, and an interactive graphics stream  108  for providing a menu screen are multiplexed (MUX) and recorded as a main stream. Hereinafter, the multiplexed main stream is called AV data  110 . 
       FIG. 2  illustrates a block diagram of an example of a general reproducing apparatus for reproducing AV data from a storage medium  200  in which the AV data  110  is recorded. 
     Referring to  FIG. 2 , a reproducing apparatus for reproducing a multimedia image reads navigation data, as described above, and obtains control information required for reproducing the AV data  110 . For example, the control information includes a coding type of the AV data  110 , a bit rate, information indicating an area in which the AV data  110  is recorded, and the type of data included in the AV data  110 . By referring to the control information, a reading unit  210 , a demultiplexer  220 , video, presentation, interactive graphics, and audio decoders  230 ,  240 ,  250 , and  260 , respectively, are controlled. 
     In detail, with concurrent reference to  FIGS. 1 and 2 , the reading unit  210  reads multiplexed AV data  110  from a storage medium  200  using the information indicating the area in which the AV data  110  is recorded and transmits the multiplexed AV data  110  to the demultiplexer  220 . The demultiplexer  220  divides the received AV data  110  into the video stream  102 , the audio stream  104 , the presentation graphic stream  106 , and the interactive graphics stream  108  and transmits the divided streams  102  through  108  to the decoders  230  through  260 , respectively. Each stream transmitted to the respective decoder is decoded according to a corresponding data type and ready to be displayed on a screen at a designated time. The decoded video stream  102 , the presentation graphic stream  106 , and/or the interactive graphics stream  108  are overlaid as a single image using a blender  270 . Finally, an image selected based on an output status set by a user is displayed on the screen. For example, an output status can be controlled based on a user&#39;s selection such as of a subtitle on/off status and a mute status, etc. 
     In particular, the interactive graphics decoder  250  receives the interactive graphics stream  108  from the storage medium  200 , decodes the interactive graphics stream  108 , and outputs a menu screen including buttons on the screen at a designated time. A user&#39;s selection can be input by the user selecting a specific button on the output menu screen. That is, a user interactive function can be provided. 
     However, a conventional reproducing apparatus unconditionally outputs a menu screen at a designated time even if a user does not want to watch the menu when reproducing multimedia such as a movie. If an undesired menu screen is displayed when viewing a movie, a user may be inconvenienced. 
     SUMMARY 
     In one general aspect, there is provided a reproducing method of reproducing from a storage medium video data and graphics data for displaying a menu screen, including decoding graphics data, outputting the decoded graphics data when an activation command is generated by a user and the decoded graphics data is first graphics data, and outputting the decoded graphics data at a designated time when the decoded graphics data is second graphics data. The outputting of the first graphics data ends when an output finish time is reached and the first graphics data is deleted from a buffer of a decoder that performed the decoding of the graphics data. When the outputting of the first graphics data ends, an activation command generated by the user is ignored. 
     The reproducing method may further provide that the first graphics data and the second graphics data have an identical or similar structure which includes a field for individually identifying and discriminating between the first graphics data and the second graphics data. 
     The reproducing method may further provide that the first graphics data and the second graphics data have a graphics_segment structure which includes a segment_type field defining the type of the first graphics data and the type of the second graphics data, respectively. 
     The reproducing method may further provide that the first graphics data and the second graphics data have an interactive_composition_segment structure which includes a type field for individually identifying and discriminating between the first graphics data and the second graphics data. 
     The reproducing method may further provide that the type field is defined so that, when a value of the type field is 0, the second graphics data is indicated, and when a value of the type field is 1, the first graphics data is indicated. 
     The reproducing method may further include blending the second graphics data with video data, and displaying the blended data at the designated time. 
     Other features and aspects may be apparent from the following detailed description, the drawings, and the claims. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  illustrates a view of an example of conventional AV data recorded in a storage medium. 
         FIG. 2  illustrates a view of an example of a conventional reproducing apparatus for reproducing a storage medium in which AV data is recorded. 
         FIG. 3  illustrates an example of a configuration of an interactive graphics stream. 
         FIG. 4  illustrates an example of an operation when a normal interactive graphics stream is reproduced. 
         FIGS. 5A and 5B  illustrate an example of operations when an on-demand interactive graphics stream is reproduced. 
         FIGS. 6   a  through  6   c  illustrate an example of a method of discriminating an on-demand interactive graphics stream from a normal interactive graphics stream. 
         FIG. 7  illustrates another example of a method of discriminating an on-demand interactive graphics stream from a normal interactive graphics stream. 
         FIG. 8  illustrates another example of a method of discriminating an on-demand interactive graphics stream from a normal interactive graphics stream. 
         FIG. 9  illustrates a block diagram of an example of a reproducing apparatus for reproducing an on-demand interactive graphics stream. 
         FIG. 10  illustrates a block diagram of another example of a reproducing apparatus for reproducing an on-demand interactive graphics stream. 
         FIGS. 11A-11D  illustrate examples of interactive graphics streams included in AV data. 
         FIG. 12  illustrates an example of a configuration of a player status register recording information regarding an interactive graphics stream. 
         FIG. 13  illustrates another example of a configuration of a player status register recording information regarding an interactive graphics stream. 
         FIG. 14  illustrates an example of a process of handling a command for activating an on-demand interactive graphics stream generated by a user. 
         FIGS. 15A and 15B  illustrate examples of display statuses according to values of a disp_flag flag for the configurations of player status registers shown in  FIGS. 12 and 13 , respectively. 
         FIG. 16  illustrates an example of a system menu of a reproducing apparatus in which menu items for turning an output of an on-demand interactive graphics stream on/off are defined. 
         FIG. 17  illustrates a schematic diagram of an example of a remote control including a button for turning an output of an on-demand interactive graphics stream on/off. 
         FIG. 18  illustrates a flowchart of an example of a method of reproducing a storage medium on which an interactive graphics stream is recorded. 
         FIG. 19  illustrates a detailed flowchart of an example of the method of reproducing a storage medium on which an on-demand interactive graphics stream illustrated in  FIG. 18  is recorded. 
     
    
    
     Throughout the drawings and the detailed description, unless otherwise described, the same drawing reference numerals will be understood to refer to the same elements, features, and structures. The relative size and depiction of these elements may be exaggerated for clarity, illustration, and convenience. 
     DETAILED DESCRIPTION 
     The following detailed description is provided to assist the reader in gaining a comprehensive understanding of the methods, apparatuses, and/or systems described herein. Accordingly, various changes, modifications, and equivalents of the systems, apparatuses, and/or methods described herein will be suggested to those of ordinary skill in the art. Also, descriptions of well-known functions and constructions may be omitted for increased clarity and conciseness. 
     As used in the present Specification, a normal interactive graphics stream refers to a data stream which provides a menu screen at a designated time. Also, as used in the present Specification, an on-demand interactive graphics stream refers to a data stream which provides a menus screen which is displayed only when a user desires. 
       FIG. 3  illustrates an example of a configuration of an interactive graphics stream. 
     Referring to  FIG. 3 , an interactive graphics stream is divided into units of epochs according to how a decoder operates. Information for reproducing a button on a menu screen including a plurality of buttons is called an interactive graphics object. All interactive graphics objects included in an epoch are decoded and stored in an object buffer of an interactive graphics decoder, to be described later, and unless data of a subsequent epoch is input, the stored objects are maintained. Accordingly, in one epoch, the interactive graphics object does not have to be decoded every time it is used, and the already decoded and stored interactive graphics objects can be reused. However, when a subsequent epoch starts after one epoch is finished, all buffers of the decoder are reset, and all stored data disappears. Also, the amount of time after which a buffer of the decoder is reset is defined as a specified time. 
     Display sets are defined as output units of the interactive graphics objects, as shown in  FIG. 3 . A display set indicates a set of interactive graphics objects displayed on a single screen, and one epoch can include at least one display set. There are three types of display sets. The first is an epoch start (ES) display set indicating the start of an epoch, and includes all data for outputting an interactive graphics such as interactive graphics configuration information required for configuring the interactive graphics and object data used for a button image. The second is an acquisition point (AP) display set that can exist after the ES display set and includes all information for configuring an interactive graphic to prepare for a situation such as a user&#39;s random search. The third is a normal state (NC) display set including data that must be changed among interactive graphics in a previous display set, i.e., only data to be updated. As shown in  FIG. 3 , one epoch can include a plurality of display sets. The ES display set exists at an initial part of an epoch, and AP and NC display sets are located at subsequent positions. An ES display set is necessary for each epoch, but the AP and NC display sets are optional. 
     Each display set includes a composition segment storing configuration information of an interactive graphics stream, a plurality of definition segments, each recording object data such as a real image of a button displayed on a screen, and an end segment indicating the end of the display set. The composition segment includes output finish time information, button configuration information, and operation information indicating how a reproducing apparatus responds to a user operation. The composition segment can be realized with an interactive composition segment (ICS) data structure. The definition segment includes an object definition segment (ODS) including object data having image information of a button and a palette definition segment (PDS) including color information adapted to the ODS. 
     Each segment in a single display set is recorded in a packetized elementary stream (PES), which is a packet unit of an MPEG-2 transport stream (TS). A relevant display set is decoded at a decoding time indicated by a decoding time stamp (DTS) included in the PES, and is displayed on a screen at a presentation time indicated by a presentation time stamp (PTS). Also, an output finish time when the output of the relevant display set is complete is determined by a composition_time_out_pts field value recorded in the ICS indicating a data structure of the composition segment. 
     Accordingly, the interactive graphics stream is displayed on the screen at a designated time indicated by the PTS, a user command is received, an operation is performed in response there to, and the interactive graphics stream disappears from the screen at a designated output finish time indicated by composition_time_out_pts. However, if the interactive graphics stream is output using only a designated time, a menu screen is unconditionally output at the designated time even if the user does not want it to. That is, the menu screen can be activated at a time other than when the user wants it to, not just when a user wants it to. 
     Therefore, according to an example, an on-demand interactive graphics stream activated by a user&#39;s command is defined by expanding a function of the interactive graphics stream to perform a user interactive operation. To discriminate from the on-demand interactive graphics stream defined herein, the interactive graphics stream output at a designated time is called a normal interactive graphics stream. 
     The normal interactive graphics stream is displayed on a screen at a designated time and disappears at a later designated time. On the other hand, the on-demand interactive graphics stream is displayed on a screen only when an activation command is generated by a user after all data is decoded and ready to be output, and performs a designated operation in response to an input from the user. That is, as in the normal interactive graphics stream, in the on-demand interactive graphics stream, interactive graphics objects such as buttons can first be displayed at a time designated by the PTS. However, in the on-demand interactive graphics stream, the buttons are not displayed on the screen, unless the user inputs a command to do so. 
     In the normal interactive graphics stream, the composition_time_out_pts indicates a time when the buttons are no longer displayed on the screen. However, in the on-demand interactive graphics stream, the composition_time_out_pts indicates a time when data related to the buttons is deleted from the buffer of the decoder. That is, even if a button activation command is generated by the user after the output finish time, since the on-demand interactive graphics stream to be activated does not exist any longer, the activation command from the user is ignored. 
       FIGS. 4 ,  5 A and  5 B illustrate an example of an operational difference between a normal interactive graphics stream ( FIG. 4 ) and an on-demand interactive graphics stream ( FIGS. 5A and 5B ). 
       FIG. 4  illustrates an operation when a normal interactive graphics stream is reproduced. Referring to  FIG. 4 , normal interactive graphics streams are multiplexed in AV data. Each decoded normal interactive graphics stream is displayed on a screen according to a PTS included in an ICS of an ES display set. Here, a user can navigate or select buttons displayed on the screen. According to a user command, an operation assigned a button is performed. 
     For example, when navigating a button, a state of the button is changed from a selected state to an unselected state, an output image of the button is changed so as to be suitable for the unselected state, and when the user selects a specific button, an operation according to a navigation command assigned to the specific button is performed. Also, when the command assigned to the specific button is a command to move to another location of the AV data, even if an output finish time (composition_time_out_pts) of the normal interactive graphics stream has not been reached yet, the specific button disappears from the screen, and AV data indicated by the move command is displayed on the screen. On the other hand, when the command assigned to the specific button is not the command to move to another location of the AV data, the command defined to the specific button is performed, an output state of each button is maintained until the output finish time (composition_time_out_pts) is reached, and when the output finish time (composition_time_out_pts) is reached, the specific button disappears from the screen. That is, a normal interactive graphics stream is displayed on a screen at a designated time, and when a designated output finish time is reached, the normal interactive graphics stream disappears from the screen. 
       FIGS. 5A and 5B  illustrate an example of operations when an on-demand interactive graphics stream is reproduced. 
     Referring to  FIG. 5A , on-demand interactive graphics streams are multiplexed in AV data. When an on-demand interactive graphics stream is decoded, the on-demand interactive graphics stream is ready to be activated. Even if the on-demand interactive graphics stream is ready to be activated, a relevant button is displayed on a screen only if a user&#39;s command is generated, in which case, a user command can be received. The relevant button displayed on the screen disappears from the screen when an output finish time (composition_time_out_pts) is reached. Also, all decoded data in a buffer of a decoder disappears when the output finish time is reached by setting an epoch to the output finish time. Therefore, a user&#39;s activation command received after the output finish time is ignored. 
     Referring to  FIG. 5B , as with the normal interactive graphics stream shown in  FIG. 4 , an epoch can be defined to terminate before it reaches a subsequent ICS of an ES display set. In this case, since all relevant data in a buffer of a decoder is deleted when the subsequent ICS of the ES display set is reached, even if an output finish time (composition_time_out_pts) has been reached, the relevant data does not have to be deleted from the decoder. However, even if an activation command of a menu is generated by a user after the output finish time is reached, a selected button is not reproduced by recognizing that a valid interactive display duration has ended. That is, a user&#39;s activation command received after the output finish time is ignored. 
     As described above, an on-demand interactive graphics stream and a normal interactive graphics stream have a similar data structure. However, a difference between the two streams is that the displaying of a button on a screen is determined by a user&#39;s activation command in the on-demand interactive graphics stream and by a designated time in the normal interactive graphics stream. That is, if only information for discriminating two types of interactive graphics streams is added, the same data structure can be used for realizing the two types of interactive graphics streams. 
     Additional methods of discriminating the on-demand interactive graphics stream from the normal interactive graphics stream are as follows: 
     First method: a method of discriminating the two streams by using a segment_type field of an ICS 
     Second method: a method of discriminating the two streams by adding an ICS_type field to the ICS 
     Third method: a method of discriminating the two streams by defining an On_demand_ICS structure as a new structure of the on-demand interactive graphics stream. 
       FIGS. 6A through 6C  illustrate an example of a method (the first method) of discriminating an on-demand interactive graphics stream from a normal interactive graphics stream. 
     Referring to  FIGS. 6A and 6B , a graphics_segment structure includes a segment_descriptor  602  which includes a segment_type field  604  indicating a segment type. In  FIG. 6C , segment types, which the segment_type field  604  can indicate, are defined. In the first method, the segment_type field  604  can be defined such that a normal interactive graphics stream type (Normal_ICS)  606  has a value 0x18 and an on-demand interactive graphics stream type (On_demand_ICS)  607  has a value 0x19. That is, the first method discriminates the two types of interactive graphics streams using the segment_type field  604  when the two types of interactive graphics streams have the same structure. 
       FIG. 7  illustrates another example of a method (the second method) of discriminating an on-demand interactive graphics stream from a normal interactive graphics stream. 
     Referring to  FIG. 7 , on-demand and normal interactive graphics streams have the same structure (interactive_composition_segment), and in the second method, the two types of interactive graphics streams are discriminated using an ICS_type field  702 . That is, the ICS_type field is defined so that, if a value of ICS_type is 0, ICS_type indicates a normal interactive graphics stream, and if a value of ICS_type is 1, ICS_type indicates an on-demand interactive graphics stream. 
       FIG. 8  illustrates another example of a method (the third method) of discriminating an on-demand interactive graphics stream from a normal interactive graphics stream. 
     Referring to  FIG. 8 , a newly defined an On_demand_ICS structure is shown. Unlike the first and second methods in which the same structure is used, in the third method, a new structure of an on-demand interactive graphics stream is defined. 
     Unlike a structure of a normal interactive graphics stream, the On_demand_ICS structure, the new structure of the on-demand interactive graphics stream defines pages to be configured operation by operation such as an initial menu page including an initial button informing a user that the on-demand interactive graphics stream is decoded and is ready to be activated by the user and pages including buttons to be displayed after the on-demand interactive graphics stream is activated by the user, i.e., a first menu page through an nth menu page. Each menu page to be displayed can include reproduction information of at least one button to be displayed and command information indicating what operation will be performed if the button is selected. 
     On the basis of an example of an on-demand interactive graphics stream described herein, an example of a configuration of a reproducing apparatus supporting the on-demand interactive graphics stream will be described. 
       FIGS. 9 and 10  illustrate block diagrams of examples of reproducing apparatuses for reproducing an on-demand interactive graphics stream. 
     Referring to  FIG. 9 , an example of an interactive graphics decoder  910  of a reproducing apparatus is shown. AV data read from a storage medium is input to a packet identifier (PID) filter  902 , and only an interactive graphics stream is selectively transmitted to a transport buffer  904  and decoded by the interactive graphics decoder  910 . 
     In the interactive graphics decoder  910 , the interactive graphics stream is temporarily stored in a coding data buffer  912  and then transmitted to a stream graphics processor  914 . After the interactive graphics stream is decoded by the stream graphics processor  914 , button image object data is transmitted to an object buffer  916 , and button configuration information is transmitted to a composition buffer  918 . A graphics controller  920  builds output images for received object data with reference to relevant configuration information and transmits the built image to a graphics plane  930 . That is, at the time identified by a PTS, an output start time of an interactive graphics stream, the graphics controller  920  determines an image to be displayed on a screen and transmits the determined image from the object buffer  916  to the graphics plane  930 . The transmitted image is output with reference to a color lookup table (CLUT)  932  according to color information included in the relevant configuration information. Also, the graphics controller  920  may change a button state according to a move or selection of a button in response to a user command and adapt this result to a screen output. 
     Particularly,  FIG. 9  shows a block diagram of a reproducing apparatus configured such that a normal interactive graphics stream and an on-demand interactive graphics stream use the same buffer memory. Since the two types of interactive graphics streams use the same buffer of the decoder  910  as shown in  FIG. 9 , only one of the normal interactive graphics stream and the on-demand interactive graphics stream can exist in the buffer of the decoder  910  at a given time. That is, only one type of interactive graphics stream can be processed at once. 
       FIG. 10  illustrates a block diagram of another example of a reproducing apparatus for reproducing an on-demand interactive graphics stream. 
     Referring to  FIG. 10 , a reproducing apparatus configured such that a normal interactive graphics stream and an on-demand interactive graphics stream are stored in separate buffer memories is shown. That is, the normal interactive graphics stream is stored in a normal ICS memory area  1010 , and the on-demand interactive graphics stream is stored in an on-demand ICS memory area  1020 . Therefore, the two types of interactive graphics streams can simultaneously exist in buffers. In this case, when a normal interactive graphics stream is input in a state where an on-demand interactive graphics stream exists in a buffer, or when an on-demand interactive graphics stream is input in a state where a normal interactive graphics stream exists in a buffer, the buffer memory of a decoder does not have to be reset. However, when the two types of interactive graphics streams are simultaneously displayed on a screen, it may not be clear which object a user operation is related to, and adapting color information to a screen configuration can be problematic. Therefore, even though not shown in  FIG. 10 , the reproducing apparatus can further include a control unit selecting the normal interactive graphics stream or the on-demand interactive graphics stream to be output and the respective CULT block for the interactive graphics stream. 
       FIG. 11  illustrates an example of an interactive graphics stream included in AV data. 
     Referring to  FIG. 11 ,  FIG. 11A  shows a case where only on-demand interactive graphics streams are recorded in single AV data.  FIG. 11B  shows a case where only normal interactive graphics streams are recorded in single AV data.  FIG. 11C  shows a case where two types of interactive graphics streams are mixed and recorded in single AV data.  FIG. 11D  shows a case where two types of interactive graphics streams are mixed and recorded in single AV data and on-demand interactive graphics streams are separated from the other AV data and recorded. In particular, referring to  FIG. 11D , when the AV data is read from the beginning, on-demand ICS data recorded at the beginning of the AV data is referred to. However, when the AV data is read from a middle position, since only configuration information is recorded in the AV data while object data of a real button image is separately recorded, the button is output using the separately recorded object data with reference to the configuration information recorded in the AV data. In this case, unnecessary data redundancy can be prevented by separately recording the object data. 
     On the basis of the data configurations of an on-demand interactive graphics stream and the configurations of a reproducing apparatus described above, an example of a process of outputting the on-demand interactive graphics stream to a screen according to a user&#39;s activation command will be described. 
       FIGS. 12 and 13  illustrate examples of configurations of player status registers for recording information regarding an interactive graphics stream. 
     Referring to  FIG. 12 , in a player status register (PSR), a number of an interactive graphics stream being currently reproduced or an interactive graphics stream to be reproduced later is recorded. In  FIG. 12 , the number is recorded in bit 0 -bit 7  of a PSR  0 . Therefore, even when reproduction of a multimedia image is temporarily stopped and restarted, an interactive graphics stream that was being reproduced just before can be reproduced again by referring to the PSR  0 . 
     In a reproducing apparatus supporting both normal interactive graphics stream and on-demand interactive graphics stream, it must be determined whether a stream number recorded in the PSR  0  is a number indicating the normal interactive graphics stream or the on-demand interactive graphics stream. Therefore, an example of a reproducing apparatus includes an ICS_usage flag for determining whether an interactive graphics stream number recorded in the PSR  0  is a number indicating the normal interactive graphics stream or the on-demand interactive graphics stream. In  FIG. 12 , the ICS_usage flag is recorded in bit 30  of the PSR  0 . That is, if a stream being currently reproduced is an on-demand interactive graphics stream, the ICS_usage flag is set to 1, and if the stream being currently reproduced is a normal interactive graphics stream, the ICS_usage flag is set to 0. 
     Also, in an on-demand interactive graphics stream, a disp_flag flag is defined to indicate whether the stream is to be displayed on a screen. In  FIG. 12 , the disp_flag flag is recorded in bit 31  of the PSR  0 . If the disp_flag flag is set to 1, when an on-demand interactive graphics stream is ready to be activated, the reproducing apparatus displays an initial menu page on the screen to inform a user that the on-demand interactive graphics stream is ready to be activated. If the disp_flag flag is set to 0, the reproducing apparatus does not display an interactive graphics on the screen. 
     On the other hand, when the disp_flag flag is set to 0 and an on-demand interactive graphics stream is ready to be activated, that is, when the on-demand interactive graphics stream is ready to be activated and the on-demand interactive graphics stream is not to be displayed on the screen, there are two methods of processing the on-demand interactive graphics stream. In the first method, the reproducing apparatus is configured such that the on-demand interactive graphics stream is activated when an activation command is generated by a user. In the second method, the reproducing apparatus is configured such that the on-demand interactive graphics stream is not activated and the user&#39;s command is ignored when generated by the user. 
       FIG. 13  illustrates another example of a configuration of a player status register recording information regarding an interactive graphics stream. Referring to  FIG. 13 , a reproducing apparatus configured to record two types of interactive graphics streams in separate PSRs is shown. That is, a case where information regarding a normal interactive graphics stream is recorded in a PSR  0  and information regarding an on-demand interactive graphics stream is recorded in a PSR  11  is shown. 
     If an ICS_type field indicates a normal interactive graphics stream, information regarding the normal interactive graphics stream is recorded in the PSR  0 , and if the ICS_type field indicates an on-demand interactive graphics stream, information regarding the on-demand interactive graphics stream is separately recorded in the PSR  11 . Accordingly, unlike the configuration shown in  FIG. 12 , an ICS_usage flag for determining an ICS type of an interactive graphics stream is not required. However, in the PSR  11 , it is required that a disp_flag flag indicating whether an initial menu page for informing a user that an on-demand interactive graphics stream is ready to be activated is displayed on a screen, and the operation of the disp_flag flag is the same as  FIG. 12 . In  FIG. 13 , the disp_flag flag is recorded in bit 31  of the PSR  11 . 
       FIG. 14  illustrates an example of a process of handling a command for activating an on-demand interactive graphics stream generated by a user. 
     Referring to  FIG. 14 , when an activation command is generated by a user, a reproducing apparatus determines whether an on-demand interactive graphics stream is ready to be activated in an interactive graphics decoder, and if the on-demand interactive graphics stream is ready to be activated, the on-demand interactive graphics stream is displayed on a screen, a focus is set to receive a user command, and a button selection from the user is ready to be received. If the on-demand interactive graphics stream is not ready to be activated, an activation command from the user is ignored, or a message informing the user that an on-demand interactive graphics stream to be output does not exist is displayed on the screen. 
       FIGS. 15A and 15B  illustrate examples of display statuses according to values of a disp_flag flag for the configurations of player status registers shown in  FIGS. 12 and 13 , respectively. 
     Referring to  FIG. 15A , when a disp_flag flag is set to 1, if an on-demand interactive graphics stream is decoded and ready to be activated, an initial menu page is displayed on a screen informing a user that the on-demand interactive graphics stream is ready to be activated. If an activation command for the on-demand interactive graphics stream is generated by the user, a first menu page is displayed on the screen. 
     Referring to  FIG. 15B , when the disp_flag flag is set to 0, the initial menu page is not displayed on the screen even if the on-demand interactive graphics stream is decoded and ready to be activated. However, when an activation command for the on-demand interactive graphics stream is generated by the user, a reproducing apparatus can be configured so that the activation command is ignored or the first menu page is displayed on the screen. 
       FIG. 16  illustrates an example of a system menu of a reproducing apparatus in which menu items for turning an output of an on-demand interactive graphics stream on/off are defined. If a user sets an On-demand ICS Display item on, a disp_flag flag of a status register storing information regarding the on-demand interactive graphics stream, for example, the PSR  0  or the PSR  11  described above, is set to 1. On the other hand, if the user sets the On-demand ICS Display item off, the reproducing apparatus sets the disp_flag flag of the status register as 0. That is, the disp_flag flag can be changed using a user interface, which is called the system menu. 
       FIG. 17  illustrates a schematic diagram of an example of a remote control including a button for turning an output of an on-demand interactive graphics stream on/off. A user can set a disp_flag flag of a status register to 0 or 1 by pushing a relevant button. 
     On the basis of the data configurations of an on-demand interactive graphics stream and the configurations of a reproducing apparatus described above, an example of a reproducing method will now be described. 
       FIGS. 18 and 19  illustrate flowcharts of examples of a method of reproducing a storage medium on which an interactive graphics stream is recorded. 
     Referring to  FIG. 18 , an interactive graphics stream is read from a storage medium storing normal interactive graphics streams, and/or on-demand interactive graphics streams, in operation  1802 . The read interactive graphics stream is checked in operation  1804 . The type of the decoded interactive graphics stream is checked in operation  1806 . If the decoded interactive graphics stream is a normal interactive graphics stream, the decoded interactive graphics stream is blended with video data and displayed on a screen at a designated time in operation  1808 . If the decoded interactive graphics stream is an on-demand interactive graphics stream, the decoded interactive graphics stream is blended with the video data and displayed on the screen only if an activation command is generated by a user in operation  1810 . 
       FIG. 19  illustrates a detailed flowchart of an example of the process of reproducing the on-demand interactive graphics stream illustrated in  FIG. 18 . 
     Referring to  FIG. 19 , if the decoded interactive graphics stream is an on-demand interactive graphics stream, a disp_flag flag indicating whether the on-demand interactive graphics stream is to be displayed on the screen is read from a player status register in operation  1902 . If a value of the disp_flag flag is 1 in operation  1904 , an initial menu page informing the user that the on-demand interactive graphics stream is ready to be activated is displayed on the screen in operation  1906 . If the user inputs an activation command when the output initial menu page is displayed in operation  1908 , a menu page demanding on the user command is displayed on the screen in operation  1910 . 
     On the other hand, if the value of the disp_flag flag is 0 in operation  1904 , nothing is displayed on the screen, and even if an activation command is generated by the user in operation  1920 , the activation command is ignored in operation  1922 . Even though it is not shown in  FIG. 19 , if the value of the disp_flag flag is 0, nothing is displayed on the screen, and if an activation command is generated by the user using a user interface such as a remote control, the initial menu page is displayed on the screen. 
     By using an on-demand interactive graphics stream according to the examples described above, the on-demand interactive graphics stream can be controlled so that it is displayed on and disappears from a screen at designated times or displayed on the screen only if a user generates a command. 
     According to the examples described above, an interactive graphics such as a button can be controlled by using an on-demand interactive graphics stream so that the button is displayed on a screen when a user generates a command. 
     Also, an interactive graphics stream specialized for a relevant area can be configured by configuring different on-demand interactive graphics streams for certain areas or chapters of AV data. For example, instead of buttons performing fixed functions, information related to actors/actresses, properties, and shooting locations existing in certain areas included in multimedia images can be provided to a user. 
     Furthermore, the number of buttons on a remote control can be reduced by configuring functions corresponding to the buttons of the remote control with a menu driven method using an on-demand interactive graphics stream. 
     A number of examples have been described above. Nevertheless, it will be understood that various modifications may be made. For example, suitable results may be achieved if the described techniques are performed in a different order and/or if the components in a described system, architecture, device, or circuit are combined in a different manner and/or replaced or supplemented by other components or their equivalents. Accordingly, other implementations are with the scope of the following claims.