This application is based upon and claims the benefit of priority from prior Japanese Patent Application No. 2004-089301, filed Mar. 25, 2004, the entire contents of which are incorporated herein by reference.
1. Field of the Invention
The present invention relates to an information recording medium such as an optical disk and methods of recording/playback information onto/from the information recording medium.
2. Description of the Related Art
In recent years, DVD-Video disks providing high image quality and advanced functions, and video players that play back such disks have prevailed, and the range of choice for peripheral devices and the like used to play back multi-channel audio so provided has broadened. An environment that allows users to personally implement a home theater and freely enjoy movies, animations, and the like with high image quality and high sound quality at home has become available. As described in Jpn. Pat. Appln. KOKAI Publication No. 10-50036 (p. 18 to 20, FIGS. 50 to 57), a playback apparatus which can superimpose various menus by changing, e.g., text colors for playback of video pictures from a disk has been proposed.
However, in recent years, along with the improvement of image compression techniques, a demand has arisen for realization of higher image quality from both users and content providers. In addition to realization of higher image quality, the content providers require an environment that can provide more attractive contents to users by upgrading and expanding the contents (e.g., more colorful menus, improvement of interactiveness, and the like) in contents such as menu windows, bonus video pictures, and the like as well as the title itself. Furthermore, some users require to freely enjoy contents by playing back still image data sensed by the user, subtitle text data acquired via the Internet, and the like by freely designating their playback positions, playback regions, or playback times.
To meet such requirements, it is desired to provide a technique that can implement colorful expressions which display buttons with still pictures or small animations at arbitrary positions and arbitrary sizes on the screen together with background audio playback, and highlight such buttons, and can form attractive contents.
According to one aspect of the present invention, there is provided an information recording medium for use in playback information recorded thereon, the information comprising a first object configured to be played back based on a program chain as a logical unit; a second object recorded independently of the first object and configured to be played back; and a playback sequence defining a playback condition of the second object.
According to another aspect of the present invention, there is provided an information playback method, comprising playing back a playback sequence from an information recording medium storing a first object configured to be played back based on a program chain as a logical unit, a second object recorded independently of the first object and configured to be played back, and the playback sequence defining a playback condition of the second object; and playing back at least one of the first and second objects in accordance with the playback sequence.
According to still another aspect of the present invention, there is provided an information recording method, comprising recording on a first area of an information recording medium, a first object configured to be played back based on a program chain as a logical unit and a second object recorded independently of the first object and configured to be played back; and recording on a second area of the information recording medium, a playback sequence defining a playback condition of the second object.
The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention, and together with the general description given above and the detailed description of the embodiments given below, serve to explain the principles of the invention.
An information recording medium and its playback apparatus according to an embodiment of the present invention will be described hereinafter with reference to the accompanying drawings.
Information recorded on the disk 1 occupies a lead-in area 10, volume/file structure information area 11, data area 12, and lead-out area 13 from the inner periphery side, as indicated by symbol b in
The video data recording area includes a video manager recording area (Video Manager (VMG)) 30 that records management information associated with the entire DVD-Video contents recorded in the video recording area 20, and a video title set recording areas (Video Title Set (VTS)) 40 which are arranged for respective titles, and record management information and video information (video objects) for respective titles together, as indicated by symbol d in
The video manager recording area (VMG) 30 includes a video manager information area (Video Manager Information (VMGI)) 31 that indicates management information associated with the overall video data recording area 20, an expanded video object area (VMGM_EVOBS) 32 for a menu, and a video manager information backup area (VMGI_BUP) 33 that records the same information as in the video manager information area (VMGI) 31 as a backup of the video manager information area (VMGI) 31, as indicated by symbol e in
In addition to the above areas, the video manager recording area (VMG) 30 includes an advanced function graphics object area (VMGM_AGOBS) 34 for a menu, which allows playback of button layout, button highlight indication, background audio, effect sound, moving picture, and animation, and a playback sequence (PSQ) area 35 which specifies playback control of objects other than expanded video objects (EVOBs).
One video title set recording area (VTS) 40 that records management information and video information (video objects) together for each title includes a video title set information area (VTSI) 41 which records management information for all contents in the video title set recording area (VTS) 40, an expanded video object area (VTSTT_EVOBS) 42 for a title, which records video object data (video information of a title) in this video title set, and a video title set information backup area (VTSI_BUP) 43 which records the same information as in the video title set information area (VTSI) 41 as backup data of the video title set information area (VTSI) 41, as indicated by symbol f in
Furthermore, each video title set recording area 40 includes an advanced function graphics object area (VTSTT_AGOBS) 44 for a title that allows playback of button layout, button highlight indication, background audio, effect sound, moving picture, and animation, and a high definition text object (VTSTT_ATOBS) 45 which can be played back as a subtitle.
The HVDVD_TS directory basically includes a group of files which belong to a menu group used for a menu, and groups of files which belong to title set groups used for titles. As the group of files that belong to the menu group, an information file (HVI00001.IFO) for a video manager, its backup file (HVI0001.BUP), and playback data files (HVM00001.EVO to HVM00003.EVO) of expanded video object sets for a menu used as background frames of a menu are stored.
Furthermore, as the group of files that belong to a title set #n group, an information file (HVIxxx01.IFO: xxx=001 to 999) for a video title set having information used to manage a title set #n, its backup file (HVIxxx01.BUP: xxx=001 to 999), playback data files (HVTxxxyy.EVO: xxx=001 to 999, yy=01 to 99) of expanded video object sets for the title set #n used as a title are stored.
The ADV_OBJ directory stores control information files (HVI . . . .PSQ) for the playback sequence PSQ, advanced function graphics object files (HVM . . . .AGO) for a menu (this object can be formed using a technique such as Macromedia Flash(R) or the like, which forms contents by combining audio data and vector graphics animation data), advanced function graphics object files (HVT . . . .AGO) for respective title set (#1 to #n) groups (this object can also be formed using Macromedia Flash(R) or the like), and advanced function text object files (HVT . . . .ATO) for respective title set (#1 to #n) groups (this object can be formed using Open Type fonts, True Type fonts, and the like).
Note that the playback data file (e.g., HVM00001.AGO) of the advanced function graphics object for a menu can be mixed to the playback data files (HVM00001.EVO to HVM00003.EVO), which belong to the menu group in the HVDVD_TS directory, by α blend. This mixing allows button layout and button highlight indication on the screen, and also allows playback of a small animation with background audio.
Note that the α blend mixes RGB data with a transparency α, and can superimpose an image on another image so that a lower image can be seen. “α” in this case indicates the contrast of an upper image to be superimposed on a lower image to the lower image. For example, when α=100%, the upper image is displayed to completely cover the lower image; when α=0%, the upper image to be superimposed disappears. For example, when α is around 50%, the upper image to be superimposed is displayed as a translucent image on the lower image.
Each playback data file (HVTxxxyy.AGO: xxx=001 to 999, yy=01 to 99) of the advanced graphics object can be mixed to the playback data files (HVTxxxyy.EVO: xxx=001 to 999, yy=01 to 99), which belong to the title set #n group in the HVDVD_TS directory, by α blend. This mixing allows button layout ana button highlight indication on the screen and also allows playback of small animation with background audio together with title contents.
Each playback data file (HVTxxxyy.ATO: xxx=001 to 999, yy=01 to 99) of the high-definition text object can be played back in place of sub-picture data which is recorded in the expanded video object set for the title set #n and is used as a subtitle (or together with sub-picture data as needed). By playing back this high-definition text object, a high-definition subtitle can be superimposed on the lower image (main picture) (since the high-definition subtitle can be displayed, not only fine subtitle characters can be displayed, but also many characters can be displayed within a limited display space).
Each control information file (HVI00000.PSQ) for the playback sequence PSQ, which defines the playback sequence in advance, describes the playback conditions (timings, positions, sizes, and the like) and/or user action conditions (operation regulations, valid period, and the like) of advanced function graphics objects (.AGO extension) and high-definition text objects (.ATO extension), which can be played back together with the expanded video object sets (.EVO extension). This description can use a language such as extended markup language (XML), Java(R), and the like.
The video title set information management table (VTSI_MAT) 410 records management information common to a video title set of interest. Since this common management information is allocated in the first area (management information in the video title set information area (VTSI) 41, the common management information in the video title set can be immediately loaded, the playback control process of the information playback apparatus can be simplified, and its control processing time can be shortened.
In the program chain program map 52, a plurality of pieces of program entry cell number 520 information that record entry cell numbers (EN_CN) indicating the cell numbers corresponding to entries are allocated in correspondence with the number of entries. The cell position information table (C_POSIT) 54 has a structure in which a plurality of pieces of cell position information (C_POSI) 540 each formed of a pair of a cell EVOB_ID number (C—l EVOB_IDN) and cell ID number (C_IDN) are allocated in turn.
Note that the cell category (C_CAT) indicates whether the cell of interest forms an interleaved block corresponding to multi-angle playback or a part of general continuous block, and indicates whether the cell corresponds to the start or last cell of the interleaved block when that cell forms an interleaved block corresponding to multi-angle playback.
The cell playback information (C_PBI) 530 further records information such as cell command start number information (C_CMD_SN) as information associated with the first cell command number from which a sequential process of a plurality of cell commands that can be designated for each cell starts, cell command continuous number information (C_CMD13 C_Ns) indicating the number of commands, the command processes of which are to be continuously executed as well as the cell command designated by the cell command start number information (C_CMD_SN), and the like.
In the embodiment shown in
The advanced navigation object 351A can be formed using a Script language such as European computer manufacturers association (ECMA) script, JavaScript, action script, or the like. The text object 351B can be formed using a markup language such as hypertext markup language (HTML), extensible hypertext markup language (XHTML), synchronized multimedia integration language (SMIL), or the like. The advanced graphics object 351C can include still picture data such as JPEG, GIF, PNG, bitmap, or the like, moving picture data such as MPEG-4, MPEG-2, or the like, or animation data such as animation GIF, MNG, scalable vector graphics (SVG), or the like. The audio object 351D can include audio data such as MPEG, AC-3, DTS, MP3, or the like.
Furthermore, all these objects (advanced navigation object 351A, text object 351B, advanced graphics object 351C, and audio object 351D can be formed using the aforementioned Macromedia Flash(R) (corresponding to advanced function graphics objects 34 and 44 in
That is, using the objects shown in
A timed text object 354 includes text data and font data (corresponding to the high-definition text object 45 in
As font data, vector font data, such as Open Type font data, True Type font data, or the like is used. The text data is rendered using this vector font data in accordance with its additional information. The playback apparatus can store the aforementioned font data in advance (e.g., in a media decoder 216 in
Assume that the aforementioned data are recorded in advance on the information recording medium 1. However, for example, when these data are to be changed according to the intention of the content provider (content producer), changed data may be stored in an external server. In this way, the latest data can be provided to the playback apparatus.
In addition, in the embodiment of the present invention, objects such as an audio streaming object, AV streaming object, Vclick streaming object, and the like can be played back. Since these data have a large data size, they are recorded on an external server (in, e.g., a server 201 in
An audio streaming object 355A in
The playback apparatus sends position information or time information of data to be retrieved to the server, and the server sends a part of corresponding data to the playback apparatus. When the time information is sent, the server must convert the time information into position information. In order to synchronize the audio streaming object 355A with audio of the DVD-Video, meta data included in the audio streaming object 355A or that (e.g., mixing coefficients, priority information, and the like) defined by the playback sequence PSQ can be used.
An AV streaming object 355B can be used in the same manner as the aforementioned audio streaming object 355A. That is, the AV streaming object 355B can be used to output commentary audio given by a director or actor of a movie together with his (her) video picture in synchronism with the video and audio data of the DVD-Video, and to distribute video data different from that of the DVD-Video. The AV streaming object 355B can include AV data such as MPEG-4, MPEG-2, WindowsMedia(R), and the like.
A Vclick streaming object 355C can include information used to display fields that can be clicked by the user, comment information for such clickable fields, information of actions to be taken after the user clicks that field, and the like.
The aforementioned embodiment can be summarized as follows.
<Playback Control>
The objects to be supported includes the DVD-Video expanded video objects (EVOB) 353; Flash objects (FLASH) 351; timed text objects (TTXT) 354; and streaming objects 355 such as AV streaming objects, audio stream objects, and Vclick streaming objects. As a unit that plays back these objects, zero or one VMG group and one or more VTS groups are defined on the information recording medium 1.
The VMG group is used to form various menus, and is an area that records data used to form menus such as a root menu, title menu, audio language menu, subtitle language menu, angle menu, and the like. Each VTS group is an area that records data used to form a title. One playback sequence (PSQ) 35 is included in the information recording medium 1, and defines the times and positions of the objects to be played back across the VMG group and VTS group.
In the VMG group, zero or more VMGM_EVOBs are set as DVD-Video objects (EVOB) for a menu, and the video manager information (VMGI) which stores program chain (PGC) information that controls playback of objects is set as its DVD navigation (management information). Furthermore, zero or more Flash objects are set in the VMG group.
In each VTS group, one or more VTSTT_EVOBs are set as DVD-Video objects (EVOB), and video title set information (VTSI) which stores program chain (PGC) information that controls playback of this object is set as DVD navigation (management information). Furthermore, zero or more Flash objects, zero or more timed text objects, and zero or more streaming objects are set in each VTS group.
In the example of
In contrast, DVD-Video navigation information read out from the information recording medium 1 is parsed by a DVD-Video playback engine 125. In the DVD-Video playback engine 125, an MPEG stream formed by multiplexing DVD-Video objects is demultiplexed, and demultiplexed video (main picture), audio (audio), and sub-picture streams are processed by corresponding decoders (not shown). The processed data are sent to a layout engine 130. Since playback time information of the DVD-Video objects is also required upon playing back objects other than the DVD-Video objects, it is sequentially sent to the playback sequence parser 12 and is used in playback control of respective objects.
Furthermore, Flash objects, timed text objects, and the like read out from the information recording medium 1 or designated external server 110 are temporarily stored in a buffer 105 for each group. The Flash objects buffered by the buffer 105 are sent to a Flash playback engine 127, and the timed text objects are sent to a timed text playback engine 128. Data of these objects can be accessed without disturbing playback of the DVD-Video by storing them in the buffer 105, i.e., by avoiding access to the information recording medium 1. In this manner, synchronous playback of the DVD-Video objects and these objects (Flash objects, timed text objects, and the like) can be implemented. Note that the object data are stored in the buffer 105 for each group. Alternatively, the object data may be stored for a plurality of groups or for an information recording medium in accordance with the size of the buffer 105.
The Flash objects are parsed and decoded by the Flash playback engine 127. Note that the Flash playback engine 127 parses a user input. Then, the engine 127 sends a command to an interface handler 124 as an action corresponding to “that user input” set in each Flash object in advance. As this command, a command for controlling playback of the DVD-Video, a command for controlling playback of the timed text objects and streaming objects, and a command for changing the attributes of the timed text objects and streaming objects are available.
The interface handler 124 transfers commands sent from the Flash playback engine 127 to respective engines 125, 128, 129. The Flash playback engine 127 can write and read information to or from a user information storage area (persistent storage) (which is assured on, e.g., a nonvolatile memory, hard disk drive, or the like) 126 in the playback apparatus. The user information includes the user's personal information, access history, game score, and the like.
The timed text objects are parsed and decoded by the timed text playback engine 128. Each timed text objects describes information such as text information to be displayed, a font name (font data name) used in display, a font size to be displayed, a font color to be displayed, display effects, and the like, and is rendered using corresponding font data according to these pieces of information. Also, streaming objects are parsed and decoded by a streaming playback engine 129.
The layout engine 130 scales (enlarges/reduces in scale) decoded object data sent from the respective engines 125, 127 to 129 in accordance with the designation of the playback sequence parser 123. Furthermore, the layout engine 130 forms a screen layout based on a layout designated from the playback sequence parser 123, and applies RGB mixing with transparency α to respective objects in accordance with an α value (a value indicating % of the transparency or contrast) designated by the playback sequence parser 123 to composite pictures, thus generating an output picture.
Note that the Flash objects and timed text objects may be downloaded from an external server (e.g., 201 in
The playback sequence parser 123 is a block for parsing playback sequence data and controlling respective object playback blocks, and includes a playback sequence parsing unit 123A, DVD clock 123B, and playback information processor 123C. The playback information processor 123C includes processing units of Flash playback information, timed text playback information, stream playback information, and DVD-Video playback information.
The playback sequence parsing unit 123A parses the playback sequence acquired from the information recording medium 1 or an external server (110 in
The DVD clock 123B sequentially receives the same values as those of the DVD clocks in the DVD-Video playback engine 125. The DVD-Video playback information processing unit in the playback information processor 123C sequentially receives playback information (e.g., VMG space or VTS space, title number, PGC number, cell number, audio stream number, sub-picture stream number, angle number, and the like) of the DVD-Video playback engine 125. The Flash playback information processing unit in the playback information processor 123C sequentially receives playback information (e.g., object file name, playback time information, and the like) of the Flash playback engine 127. The timed text playback information processing unit in the playback information processor 123C sequentially receives playback information (e.g., object file name, font name, font size, font color, effects, and the like) of the timed text playback engine 128. Likewise, the streaming playback information processing unit in the playback information processor 123C sequentially receives playback information of the streaming playback engine 129.
FIGS. 12 to 15 show examples of playback images to be played back by the playback apparatus according to the embodiment of the present invention.
As shown in
A start time t8 and end time tlO are set for MM Flash #3351#3 for a playback menu, and a start time t6 and end time t9 are set for timed text #3354#3 for an English subtitle and timed text #6354#6 for a Japanese subtitle. In this way, information (354#3) of timed text #3 and that (354#6) of timed text #6 can be designated to partially overlap the playback period of Flash #2351#2 (t6 to t7).
Note that “MM Flash” of “MM Flash #3351#3” is an elaborate object for a menu, which uses a graphical user interface (GUI) during moving picture playback, and menu expression of the existing DVD-Video, and has contents which can include animation data and/or still picture data.
Although not shown, for example, timed text #1354#1 can be set to have a playback period t1 to t5, and timed text #4354#4 can be set to have a playback period t1 to t10. In this case, the start time of timed text #1 and timed text #4 matches that of Flash #1 (start synchronous) but the end times of timed text #1 and timed text #4 do not match that of Flash #1 (end asynchronous). In this case, an irregular setting is available: the end time of timed text #4 is matched with that of another Flash #3. Such synchronous/asynchronous settings of “start time” and/or “end time” can be freely set by description contents of “start_ptm=” “ ” and/or “end_ptm=” “ ” in the following PSQ description example.
A description example of the playback sequence PSQ in the above example (
In the example of
In the example of
A description example of the playback sequence PSQ in the above example (
A description example of the playback sequence PSQ in the above example (
Assume that the user issues a jump instruction to given time t2 in PGC#3 at time t1 during playback of PGC#1 of the DVD-Video. At this time, the Flash object interrupt playback of Flash #1, which is being played back, and starts playback from time t3 of Flash #3 corresponding to PGC#3. In this manner, even when a discontinuous action such as jump or the like is interposed during playback, the DVD-Video and Flash objects can be synchronously played back.
A description example of the playback sequence PSQ in the above example (
In this example, the screen size of the expanded video object (EVOB) in the DVD-Video mode on the screen 170A is reduced by the scaling function and is laid out on the upper left area. A Flash object is embedded on the upper right area. A timed text object is displayed on the lower half area of the screen together with a comment of the screen. Furthermore, hot spots (fields on the screen where some process is executed upon clicking a mouse button; to be also referred to as “Vclick” hereinafter as needed) 701 to windmill information are superimposed on the expanded video object (EVOB) on the upper left area. When the user clicks the hot spot, display jumps to (windmill) related information (not shown), thus playing back that related information.
The file configuration and screen display examples based on that configuration of the playback sequence (PSQ) that defines the playback conditions of Flash objects, timed text objects, and the like will be described in detail below.
The <video_pbseq> field includes zero or one <vmg> tag, zero or one or more <vts> tags, and zero or one <idle> tag. The <vmg> field represents the VMG space in the DVD-Video. That is, the <vmg> field indicates that additional objects such as a Flash object (to be referred to as a graphics object hereinafter), timed text object (to be referred to as a text object hereinafter), audio streaming object, AV streaming object, and Vclick streaming object described in the <vmg> field are appended to DVD-Video data on the VMG space.
The <vts> field represents the VTS space in the DVD-Video. That is, the <vts> field designates the VTS space number by appending a num attribute in the <vts> tag, and indicates that additional objects such as a Flash object (to be referred to as a graphics object hereinafter), timed text object (to be referred to as a text object hereinafter), audio streaming object, AV streaming object, and Vclick streaming object described in the <vts> field are appended to DVD-Video data on the VTS space. For example, <vts num=“n”> represents the n-th VTS space. That is, <vts num=“n”> indicates that the aforementioned additional objects described in the <vts num=“n”> field are appended to DVD-Video data that forms the n-th VTS space.
The <vmg> field includes zero or one or more <vmgm> tags, and zero or one or more <fp> tags. The <vmgm> field represents a VMG menu domain on the VMG space, and designates the VMG menu domain number by appending a num attribute in the <vmgm> tag. For example, <vmgm num=“n”> represents the n-th VMG menu domain. <vmgm num=“n”> indicates that the aforementioned additional objects described in the <vmgm num=“n”> field are appended to DVD-Video data that forms the n-th VMG menu domain. Note that the VMG space includes language blocks. That is, one VMG menu domain corresponds to one language unit. Therefore, the VMG menu domains can be managed using language codes in place of the numbers. In this case, each VMG menu domain can be expressed by <vmgm lang=“xx”> (xx is a language code specified by ISO639) using a lang attribute in place of the num attribute. For example, <vmgm lang=“jp”> indicates a VMG menu domain in Japanese, and <vmgm lang=“en”> indicates a VMG menu domain in English.
Furthermore, the <vmgm> field includes zero or one or more <pgc> tags. The <pgc> field represents a Program Chain (PGC) in the VMG menu domain, and designates the PGC number by appending a num attribute in the <pgc> tag. For example, <pgc num=“n”> represents the n-th PGC. <pgc num=“n”> indicates that the aforementioned objects described in the <pgc num=“n”> field are appended to DVD-Video data that forms the n-th PGC.
Although not shown, the <fp> field represents a first play domain on the VMG space, and includes zero or one or more <pgc> tags. This <pgc> field indicates a PGC (Program Chain) to be executed by the playback apparatus first.
The <vts> field includes one or more <vts_tt> tags, and zero or one or more <vtsm> tags. The <vts_tt> field represents a title domain on the VTS space, and designates the title domain number by appending a num attribute in the <vts_tt> tag. For example, <vts_tt num=“n”> indicates the n-th title domain. <vts_tt num=“n”> indicates that the aforementioned additional objects described in the <vts_tt num=“n”> field are appended to DVD-Video data that forms the n-th title domain.
The <vtsm> field represents a VTS menu domain on the VTS space, and designates the VTS menu domain number by appending a num attribute in the <vtsm> tag. For example, <vtsm num=“n”> indicates the n-th VTS menu domain. <vtsm num=“n”> indicates that the aforementioned additional objects described in the <vtsm num=“n”> field are appended to DVD-Video data that forms the n-th VTS menu domain.
Since the VTS space includes language blocks, i.e., since one VTS menu domain corresponds to one language unit, the VTS menu domains can be managed using language codes in place of the numbers. In this case, each VTS menu domain can be expressed by <vtsm lang=“xx”> (xx is a language code specified by ISO639) using a lang attribute in place of the num attribute. For example, <vtsm lang=“jp”> indicates a VTS menu domain in Japanese, and <vtsm lang=“en”> indicates a VTS menu domain in English.
Furthermore, the <vts_tt> or <vtsm> field includes zero or one or more <pgc> tags. The <pgc> field represents a PGC (Program Chain) in the title domain or VTS menu domain, and designates the PGC number by appending a num attribute in the <pgc> tag. For example, <pgc num=“n”> represents the n-th PGC. <pgc num=“n”> indicates that the aforementioned objects described in the <pgc num=“n”> field are appended to DVD-Video data that forms the n-th PGC.
Finally, although not shown, the <idle> tag represents a state which is not synchronized with playback of the DVD-Video. That is, in the state defined by the <idle> tag, no DVD-Video objects are played back, and this state includes only additional objects such as a Flash object (to be referred to as a graphics object hereinafter), timed text object (to be referred to as a text object hereinafter), audio streaming object, AV streaming object, and Vclick streaming object. The <idle> tag includes zero or one or more <pgc> tags. This <pgc> tag represents a Program Chain (PGC). However, the PGC represented by this tag has no DVD-Video time information, and the playback start time and playback end time cannot be designated.
In the example shown in
The <object> tag indicates the location of the additional object using a “data” attribute. In this example, the location of the graphics object is designated by “file://dvdrom:/adv_obj/flash.swf” (see 801 in
With this description, a graphics object 812 can be appended to designated DVD-Video contents 811, as shown in
The next additional object is designated using an <object> tag in <vmgm num=“n”> in <vmg>. This indicates that the additional object designated by the <object> tag is appended to the entire first VMG menu domain on the VMG space. The <object> tag indicates the location of the additional object using a “data” attribute. In this example, the location of an audio streaming object is designated by “http://www.hddvd.com/adv_obj/commentary.ac3” (see 802 in
With this description, as shown in
The third additional object is designated using an <object> tag in <pgc num=“1”> in <vts_tt num=“1”> in <vts num=“1”>. This indicates that the additional object designated by the <object> tag is appended to the first PGC in the first title domain on the first VTS space. The <object> tag indicates the location of the additional object using a “data” attribute. In this example, the location of a Vclick streaming object is designated by “http://www.hddvd.com/adv_obj/hotspot.vck” (see 803 in
With this description, as shown in
For example, when the user selects (clicks) the Vclick object 833 on the right side of the screen, an action corresponding to this clicking is described in the Vclick object 833, and the playback apparatus operates according to this description. In this example, the object 833 describes playback of a markup page 837, and also a reduction instruction of the DVD-Video contents in response to the user's clicking (reference numeral 838 denotes DVD-Video contents reduced in scale).
The fourth Vclick stream is designated using an <object> tag in <vts_tt num=“n”> in <vts num=“1”>. This indicates that the additional object designated by the <object> tag is appended to the n-th title domain on the first VTS space.
The <object> tag indicates the location of the additional object using a “data” attribute. In this example, the location of a markup language object is designated by “file://dvdrom:/adv_obj/index.xhtm” (see 804 in
Furthermore, the fifth Vclick stream is also designated using an <object> tag in <vts_tt num=“n”> in <vts num=“1>. This indicates that the additional object designated by the <object> tag is appended to the n-th title domain on the first VTS space. That is, the two additional objects are appended to the n-th title domain on the first VTS space.
The <object> tag indicates the location of the additional object using a “data” attribute. In this example, the location of a text object is designated by “file://dvdrom:/adv_obj/ttext.xml” (see 805 in
The “width” attribute indicates the length (unit: pixels) in the horizontal direction upon displaying the additional object. The “height” attribute indicates the length (unit: pixels) in the vertical direction upon displaying the additional object. When the length designated by “width/height” is smaller than the original length of the additional object, the additional object is reduced; when it is larger than the original length of the additional object, the additional object is enlarged. The “position” attribute indicates the coordinate position (unit: pixels) upon displaying the additional object. Note that the coordinate position can be expressed by “(x, y)” of a system which has the upper left point as an origin “(0, 0)”, the abscissa as the x-axis, and the ordinate as the y-axis.
Note that the “width”, “height”, and “position” attributes can be expressed using a “style” attribute as follows:
Note that “top:X1px” indicates the X-coordinate (X1 is a pixel value) of the layout position of an object (DVD-Video contents in the following example) from the upper left corner of the screen. “left:Y1px” indicates the Y-coordinate (Y1 is a pixel value) of the layout position of an object (DVD-Video contents in the following example) from the upper left corner of the screen. These pieces of information are equivalent to those designated by the aforementioned “position” attribute. Also, “width:X2px” indicates the length of an object to be laid out in the horizontal direction (X2 is a pixel value). This information is equivalent to that designated by the aforementioned “width” attribute. Furthermore, “height:Y2px” indicates the length of an object to be laid out in the vertical direction (Y2 is a pixel value). This information is equivalent to that designated by the aforementioned “height” attribute. Also, “position:fixed;” indicates that the layout method designates an absolute position and fixed position.
The “start” attribute expresses a relative value of the display start time of the additional object on the precision of ‘HH:MM:SS:FF’ (time:minute:second:frame) format. The “end” attribute expresses a relative value of the display end time of the additional object on the precision of ‘HH:MM:SS:FF’ (time:minute:second:frame) format. Note that the “start” and “end” attributes represent relative times from the PGC start position when the additional object is appended to the PGC as in this example. If the additional object is appended to a title domain (“<vts_tt>”), these attributes represent the relative times from the start position of the title domain.
The “priority” attribute indicates the relationship between the additional object and DVD-Video contents. The “priority” attribute of the DVD-Video contents normally indicates “0” as a default value. If the “priority” attribute assumes a positive value, the additional object is laid out on the front side of the DVD-Video contents; if the “priority” attribute assumes a negative value, the additional object is laid out behind the DVD-Video contents. If there are a plurality of objects, they are laid out in turn on the front side as they have larger values.
Note that priority upon receiving processes of user's operations can be designated using the “priority” attribute (or another new attribute). For example, assume that a menu screen formed by the DVD-Video contents and that formed by the graphics object are simultaneously displayed. In this case, the “priority” attribute of the DVD-Video contents normally indicates “0” as a default value. If the “priority” attribute of the graphics object assumes a positive value, the graphics object processes user's operations prior to the DVD-Video contents. If the “priority” attribute of the graphics object assumes a negative value, the DVD-Video contents process user's operations prior to the graphics object. If there are a plurality of objects, they have higher priority as they have larger values.
In the second example (see 852 in
In the third example (see 853 in
Note that an “alpha” attribute represents an alpha value, i.e., transparency α. The alpha value can designate from “0” to “255”: 0 indicates transparency, and “255”, opacity. Also, the alpha value can be expressed in percentage figures, i.e., from “0%” to “100%”. At this time, “0%” indicates transparency, and “100%”, opacity. The next <object> tag is used to display the graphics object, and “width”, “height”, and “position” attributes are omitted since the graphics object is to be full-screen displayed.
In the fourth example (see 854 in
For example, when audio stream #1 of the DVD-Video contents corresponds to a Japanese language, and audio stream #2 corresponds to an English language, Flash #3 (see 871) is configured using Japanese (that is, display of the graphics object is described in Japanese or the access destination of the graphics object is contents described in Japanese), as shown in
In practice, the playback apparatus searches this playback sequence (PSQ) file for the corresponding graphics object with reference to a system parameter indicating the audio stream number in the playback apparatus, and plays it back. For example, when audio stream #1 is played back, and corresponding Flash #3 is displayed, if the user changes audio to be played back to audio stream #2 using a remote controller or the like, Flash #4 corresponding to the changed audio stream is displayed as the graphics object to be displayed according to the playback sequence file.
In this example, audio streams are managed using the stream numbers, but they may be managed using language codes in place of the stream numbers. In this case, each audio stream can be expressed by audio_lang=“xx” (xx is a language code specified by ISO639) using an audio_lang attribute in place of the audio attribute. For example, audio_lang=“jp” indicates an audio stream in Japanese, and audio_lang=“en” indicates an audio stream in English.
In the fifth example (see 855 in
For example, when sub-picture stream #1 of the DVD-Video contents corresponds to a Japanese subtitle, and sub-picture stream #3 corresponds to an English subtitle, Flash #5 (see 891 in
In practice, the playback apparatus searches this playback sequence (PSQ) file for the corresponding graphics object with reference to a system parameter indicating the sub-picture stream number in the playback apparatus, and plays it back. For example, when sub-picture stream #1 is played back, and corresponding Flash #5 is displayed, if the user changes a subtitle (sub-picture) to be played back to sub-picture stream #3 using a remote controller or the like, Flash #7 corresponding to the changed sub-picture stream is displayed as the graphics object to be displayed according to the playback sequence file.
In this example, sub-picture streams are managed using the stream numbers, but they may be managed using language codes in place of the stream numbers. In this case, each sub-picture stream can be expressed by subpic_lang=“xx” (xx is a language code specified by IS0639) using a subpic_lang attribute in place of the subpic attribute. For example, subpic_lang=“jp” indicates a sub-picture stream in Japanese, and subpic_lang=“en” indicates a sub-picture stream in English.
In the sixth example (see 856 in
Normally, in case of different angles, since the layouts of persons, buildings, and the like differ, the sizes and positions of graphics objects are preferably independently set for respective angles. (Respective graphics object data may be multiplexed to one graphics object.) In practice, the playback apparatus searches this playback sequence (PSQ) file for the corresponding graphics object with reference to a system parameter indicating the angle number in the playback apparatus, and plays it back.
In the seventh example (see 857 in
Based on such settings, when the (default) display aspect ratio is “16:9” and the (current) display mode is “wide”, Flash #10 is synchronously played back as a graphics object (see 932 in
For example, a graphics object which is displayed right beside a person at the aspect ratio “16:9” is displayed on the upper or lower (black) portion of the screen when the aspect ratio is “4:3” in the “letterbox” display mode. At the aspect ratio “4:3” in the “pan-scan” display mode, the right and left portions of the screen are cut, but a graphics object is changed to a displayable position. According to the screen configuration, the size of a graphics object can be reduced or enlarged, or the text size in the graphics object can be reduced or enlarged. As a result, a graphics object can be displayed in correspondence with the display state of the DVD-Video contents. In practice, the playback apparatus searches this playback sequence (PSQ) file for the corresponding graphics object with reference to system parameter indicating “default display aspect ratio” and “current display mode” in the playback apparatus, and plays it back.
In the eighth example (see 858 in
Finally, a case will be exemplified below wherein the aforementioned functions can be used in combination. That is, in the ninth example (see 859 in
The playback apparatus of this embodiment loads the playback sequence (PSQ) file in advance or refers to it as needed prior to playback of the DVD-Video contents, thus changing, in real time, additional objects such as a Flash object, timed text object, audio streaming object, markup language object, and Vclick streaming object, which are to be appended sequentially, in accordance with the playback state of the DVD-Video contents. In this way, even when the user has changed the playback state, an additional object suited to the changed playback state can be played back.
The number of files (the number of objects) of one additional object is increased to reduce the file size, thereby decreasing an area (buffer) used to store additional objects required for the playback apparatus. Although the file size becomes large, the number of files is decreased (i.e., one object includes a plurality of additional objects). In this way, when the playback state of the DVD-Video contents has changed, additional objects can be smoothly switched. Hence, a high degree of freedom in authoring can be assured upon forming additional objects.
The extracted object data are stored in the buffer (step ST14). Upon storing the object data in the buffer, some methods of determining the order of buffering of objects (methods of setting priority of loading into the buffer) are available.
In the first example of that method, objects are loaded in turn from those with smaller PGC numbers of the DVD-Video contents corresponding to respective streams. For example, when object #1 is appended to PGC#l, object #2 is appended to PGC#2, and streams to be loaded are objects #1 and #2, object #1 is loaded first into the buffer, and object #2 is then loaded into the buffer.
In the second example, the priority of loading is determined in accordance with a language pre-set in a player (a client 200 in
In the third example, streams to be loaded, which are recorded on the disk, are given priority over those recorded on the external server. For example, when object #2 is recorded on the external server, and objects #1 and #3 are recorded on the disk, objects #1 and #3 are loaded into the buffer in the order of their numbers, and object #2 is then loaded into the buffer upon loading objects #1 to #3.
In the fourth example, objects are loaded into the buffer in the order of objects described in the playback sequence (PSQ) or in the order of objects described in information of objects to be extracted (corresponding to the aforementioned loading information) designated by the playback sequence. In this case, the content provider can determine the priority of objects, and the playback sequence or loading information must be created accordingly.
After objects are stored up to a size assigned to the buffer (for example, this size is designated by the playback sequence) (YES in step ST16), playback of the DVD-Video contents starts. Alternatively, if the size of objects stored in the buffer has reached a predetermined playback size (for example, this size is designated by the playback sequence), playback of the DVD-Video contents may start.
After playback of the DVD-Video contents has started (step ST18), its playback information (title, PGC number, audio stream number, sub-picture stream number, angle number, aspect ratio information, playback time information, and the like) is acquired (step ST20), and the playback sequence is searched for the corresponding object on the basis of at least some pieces of information (e.g., PGC number) of the acquired information (step ST22). If data of the object to be played back is currently stored in the buffer (YES in step ST24), playback of that object immediately starts in synchronism with the current DVD playback.
If data of the object is not currently stored in the buffer (NO in step ST24), data of the retrieved object is loaded into the buffer (step ST28) by deleting unnecessary data from the buffer (step ST26), or by overwriting the buffer area of unnecessary data. If the data size to be loaded into the buffer has reached a minimum playback size, playback of the buffered object starts in synchronism with the current DVD playback.
As a result of this synchronous playback, a layout shown in, e.g.,
Reference numeral 200 denotes a client; 201, a server; and 221, a network that connects the server and client. Client 200 comprises moving picture playback engine 203, Vclick engine 202, disc device 230, user interface 240, network manager 208, and disc device manager 213. Reference numerals 204 to 206 denote devices included in the moving picture playback engine; 207, 209 to 212, and 214 to 218, devices included in the Vclick engine; and 219 and 220, devices included in the server. Client 200 can play back moving picture data, and can display a document described in a markup language (e.g., HTML or the like), which are stored in disc device 230. Also, client 200 can display a document (e.g., HTML) on the network.
When meta data associated with moving picture data stored in client 200 is stored in server 201, client 200 can execute a playback process using this meta data and the moving picture data in disc device 230. Server 201 sends media data M1 to client 200 via network 221 in response to a request from client 200. Client 200 processes the received media data in synchronism with playback of a moving picture to implement additional functions of hypermedia and the like (note that “synchronization” is not limited to a physically perfect match of timings but some timing error is allowed).
Moving picture playback engine 203 is used to play back moving picture data stored in disc device 230, and has devices 204, 205, and 206. Reference numeral 231 denotes a moving picture data recording medium (more specifically, a DVD, video CD, video tape, hard disc, semiconductor memory, or the like). Moving picture data recording medium 231 records digital and/or analog moving picture data. Meta data associated with moving picture data may be recorded on moving picture data recording medium 231 together with the moving picture data. Reference numeral 205 denotes a moving picture playback controller, which can control playback of video/audio/sub-picture data Dl from moving picture data recording medium 231 in accordance with a “control signal” output from interface handler 207 of Vclick engine 202.
More specifically, moving picture playback controller 205 can output a “trigger” signal indicating the playback status of video/audio/sub-picture data D1 to interface handler 207 in accordance with a “control” signal which is generated upon generation of an arbitrary event (e.g., a menu call or title jump based on a user instruction) from interface handler 207 in a moving picture playback mode. In this case (at a timing simultaneously with output of the trigger signal or an appropriate timing before or after that timing), moving picture playback controller 205 can output a “status” signal indicating property information (e.g., an audio language, sub-picture caption language, playback operation, playback position, various kinds of time information, disc contents, and the like set in the player) to interface handler 207. By exchanging these signals, a moving picture read process can be started or stopped, and access to a desired location in moving picture data can be made.
AV decoder 206 has a function of decoding video data, audio data, and sub-picture data recorded on moving picture data recording medium 231, and outputting decoded video data (mixed data of the aforementioned video and sub-picture data) and audio data. Moving picture playback engine 203 can have the same functions as those of a playback engine of a normal DVD video player which is manufactured on the basis of the existing DVD video standard. That is, client 200 in
Interface handler 207 makes interface control among modules such as moving picture playback engine 203, disc device manager 213, network manager 208, meta data manager 210, buffer manager 211, script interpreter 212, media decoder 216 (including meta data decoder 217), layout manager 215, AV renderer 218, and the like. Also, interface handler 207 receives an input event by a user operation (operation to an input device such as a mouse, touch panel, keyboard, or the like) and transmits an event to an appropriate module.
Interface handler 207 has an access table parser that parses a Vclick access table, an information file parser that parses a Vclick information file, a property buffer that records property information managed by the Vclick engine, a system clock of the Vclick engine, a moving picture clock as a copy of moving picture clock 204 in the moving picture playback engine, and the like.
Network manager 208 has a function of acquiring a document (e.g., HTML), still picture data, audio data, and the like onto buffer 209 via the network, and controls the operation of Internet connection unit 222. When network manager 208 receives a connection/disconnection instruction to/from the network from interface handler 207 that has received a user operation or a request from meta data manager 210, it switches connection/disconnection of Internet connection unit 222. Upon establishing connection between server 201 and Internet connection unit 222 via the network, network manager 208 exchanges control data and media data (object meta data).
Data to be transmitted from client 200 to server 201 include a session open request, session close request, media data (object meta data) transmission request, status information (OK, error, etc.), and the like. Also, status information of the client may be exchanged. On the other hand, data to be transmitted from the server to the client include media data (object meta data) and status information (OK, error, etc.)
Disc device manager 213 has a function of acquiring a document (e.g., HTML), still picture data, audio data, and the like onto buffer 209, and a function of transmitting video/audio/sub-picture data Dl to moving picture playback engine 203. Disc device manager 213 executes a data transmission process in accordance with an instruction from meta data manager 210.
Buffer 209 temporarily stores media data Ml which is sent from server 201 via the network (via the network manager). Moving picture data recording medium 231 records media data M2 in some cases. In such case, media data M2 is stored in buffer 209 via the disc device manager. Note that media data includes Vclick data (object meta data), a document (e.g., HTML), and still picture data, moving picture data, and the like attached to the document.
When media data M2 is recorded on moving picture data recording medium 231, it may be read out from moving picture data recording medium 231 and stored in buffer 209 in advance prior to the start of playback of video/audio/sub-picture data D1. This is for the following reason: since media data M2 and video/audio/sub-picture data D1 have different data recording locations on moving picture data recording medium 231, if normal playback is made, a disc seek or the like occurs and seamless playback cannot be guaranteed. The above process can avoid such problem.
As described above, when media data M1 downloaded from server 201 is stored in buffer 209 as in media data M2 recorded on moving picture data recording medium 231, video/audio/sub-picture data D1 and media data can be simultaneously read out and played back.
Note that the storage capacity of buffer 209 is limited. That is, the data size of media data M1 or M2 that can be stored in buffer 209 is limited. For this reason, unnecessary data may be erased under the control (buffer control) of metal data manager 210 and/or buffer manager 211.
Meta data manager 210 manages meta data stored in buffer 209, and transfers meta data having a corresponding time stamp to media decoder 216 upon reception of an appropriate timing (“moving picture clock” signal) synchronized with playback of a moving picture from interface handler 207.
When meta data having a corresponding time stamp is not present in buffer 209, it need not be transferred to media decoder 216. Meta data manager 210 controls to load data for a size of the meta data output from buffer 209 or for an arbitrary size from server 201 or disc device 230 onto buffer 209. As a practical process, meta data manager 210 issues a meta data acquisition request for a designated size to network manager 208 or disc device manager 213 via interface handler 207. Network manager 208 or disc device manager 213 loads meta data for the designated size onto buffer 209, and sends a meta data acquisition completion response to meta data manager 210 via interface handler 207.
Buffer manager 211 manages data (a document (e.g., HTML), still picture data and moving picture data appended to the document, and the like) other than meta data stored in buffer 209, and sends data other than meta data stored in buffer 209 to parser 214 and media decoder 216 upon reception of an appropriate timing (“moving picture clock” signal) synchronized with playback of a moving picture from interface handler 207. Buffer manager 211 may delete data that becomes unnecessary from buffer 209.
Parser 214 parses a document written in a markup language (e.g., HTML), and sends a script to script interpreter 212 and information associated with a layout to layout manager 215.
Script interpreter 212 interprets and executes a script input from parser 214. Upon executing the script, information of an event and property input from interface handler 207 can be used. When an object in a moving picture is designated by the user, a script is input from meta data decoder 217 to script interpreter 212.
AV renderer 218 has a function of controlling video/audio/text outputs. More specifically, AV renderer 218 controls, e.g., the video/text display positions and display sizes (often also including the display timing and display time together with them) and the level of audio (often also including the output timing and output time together with it) in accordance with a “layout control” signal output from layout manager 215, and executes pixel conversion of a video in accordance with the type of a designated monitor and/or the type of a video to be displayed. The video/audio/text outputs to be controlled are those from moving picture playback engine 203 and media decoder 216. Furthermore, AV renderer 218 has a function of controlling mixing or switching of video/audio data input from moving picture playback engine 203 and video/audio/text data input from the media decoder in accordance with an “AV output control” signal output from interface handler 207.
Layout manager 215 outputs a “layout control” signal to AV renderer 218. The “layout control” signal includes information associated with the sizes and positions of moving picture/still picture/text data to be output (often also including information associated with the display times such as display start/end timings and duration), and is used to designate AV renderer 218 about a layout used to display data. Layout manager 215 checks input information such as user's clicking or the like input from interface handler 207 to determine a designated object, and instructs meta data decoder 217 to extract an action command such as display of associated information which is defined for the designated object. The extracted action command is sent to and executed by script interpreter 212.
Media decoder 216 (including meta data decoder) decodes moving picture/still picture/text data. These decoded video data and text image data are transmitted from media decoder 216 to AV renderer 218. These data to be decoded are decoded in accordance with an instruction of a “media control” signal from interface handler 207 and in synchronism with a “timing” signal from interface handler 207.
Reference numeral 219 denotes a meta data recording medium of the server such as a hard disc, semiconductor memory, magnetic tape, or the like, which records meta data to be transmitted to client 200. This meta data is associated with moving picture data recorded on moving picture data recording medium 231. This meta data includes object meta data. Reference numeral 220 denotes a network manager of the server, which exchanges data with client 200 via network 221.
As described above, according to various embodiments of the present invention, since a Flash object, which can display buttons with a still picture image, background audio, or small animation and allows highlight display at arbitrary positions to have arbitrary sizes on the screen, and a timed text object can be set in addition to the conventional video contents, the degree of freedom of the content provider can be improved, thus providing more colorful contents to the user.
Points of the embodiment of the present invention will be summarized below.
(1) Of objects stored in the disk, only minimum required objects (video, audio, and sub-picture in case of DVD ROM Video) are multiplexed using an MPEG program stream. Objects which can be superimposed later are recorded and stored on the disk as independent objects. Each independent object is superimposed as needed on an object obtained from the MPEG program stream by α blend (that provides transparency α (contrast corresponding to α%) to RGB mixing).
(2) With the concept of (1), a high-definition subtitle is implemented by a timed text object in addition to a (conventional, low-resolution) subtitle using a sub-picture object stored on the disk.
(3) With the concept of (1), colorful graphics such as a menu and the like can be implemented by a Flash object which can superimpose and highlight buttons on a video object stored in the disk by α blend.
(4) In addition to the concept of (1), a common application interface (API) that can control a program chain (PGC) is introduced to implement playback control of all objects stored in the disk.
(5) The playback sequence (PSQ) explained with reference to
Note that the present invention is not limited to the aforementioned specific embodiments, but can be embodied by variously modifying constituent elements without departing from the scope of the invention when it is practiced. For example, the present invention can be applied not only to DVD-ROM Video that is currently available worldwide but also to recordable/reproducible DVD-VR (video recorder) whose demand has been increasing in recent years. Furthermore, the present invention can be applied to a reproduction system or a recording/reproduction system of next-generation HD-DVD which will spread in the near future.
As has been described in detail above, according to the present invention, an information recording medium and its playback apparatus which can realize colorful expressions and can form attractive contents can be provided.
Additional advantages and modifications will readily occur to those skilled in the art. Therefore, the invention in its broader aspects is not limited to the specific details and representative embodiments shown and described herein. Accordingly, various modifications may be made without departing from the spirit or scope of the general inventive concept as defined by the appended claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
2004-089301 | Mar 2004 | JP | national |