AU1999701A - Record carrier, device for playing back a record carrier, method for playing back a record carrier, device for recording a record carrier and method for recording a record carrier - Google Patents

Record carrier, device for playing back a record carrier, method for playing back a record carrier, device for recording a record carrier and method for recording a record carrier Download PDF

Info

Publication number
AU1999701A
AU1999701A AU19997/01A AU1999701A AU1999701A AU 1999701 A AU1999701 A AU 1999701A AU 19997/01 A AU19997/01 A AU 19997/01A AU 1999701 A AU1999701 A AU 1999701A AU 1999701 A AU1999701 A AU 1999701A
Authority
AU
Australia
Prior art keywords
data
priority
file
playback
record carrier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
AU19997/01A
Other versions
AU771314B2 (en
Inventor
Erik C. Schijlander
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of AU1999701A publication Critical patent/AU1999701A/en
Application granted granted Critical
Publication of AU771314B2 publication Critical patent/AU771314B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • G11B19/12Control of operating function, e.g. switching from recording to reproducing by sensing distinguishing features of or on records, e.g. diameter end mark
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs

Description

WO 01/35416 1 PCT/EPOO/11114 Record carrier, device for playing back a record carrier, method for playing back a record carrier, device for recording a record carrier and method for recording a record carrier. The invention pertains to a record carrier. The invention also pertains to a device for playing back a record carrier. The invention further pertains to a method for playing back a record carrier. 5 Several standards are in development for digital storage and reproduction of audiovisual data such as the SVCD and DVD standard. SVCD describes storage of audiovisual data in the form of MPEG2-files, which may be reproduced under control of a so called Play Sequence Descriptor (PSD). The audiovisual data and the PSD are stored at the 10 record carrier. The PSD is a set of control structures that enables the playback of preprogrammed sequences with user selection and interaction. User selection may for example take place by menus which are displayed on a display device, and from which the user may select an item by pointing at a position of the display device with a pointing device such as a mouse. Reading such a menu from the record carrier may delay the interaction 15 speed. It is an object of the invention to provide a record carrier, a device for reproducing audiovisual data from a record carrier and a method for reproducing audiovisual 20 data from the record carrier which allow a higher interaction speed. To that end a record carrier of the invention comprises information organized in a plurality of files containing audio visual data and playback control data for controlling playback of the audiovisual data on a playback device while enabling user interaction, the information further comprising priority information, indicating the relative priority with 25 which the files are to be stored in a cache memory of the playback device. A record carrier according to the invention is particularly suitable for playback on a playback device according to the invention. A playback device according to the invention comprises read means for reading the data from a record carrier, a cache memory for storing data from the record carrier, user input means for receiving user input, control WO 01/35416 2 PCT/EPOO/11114 means for processing the control data, and reproduction means for reproducing the audio visual data, the device being adapted to read priority information and to store files into the cache memory with a priority determined by this priority information. Preferably the priority information (priority) is related to an estimated 5 frequency with which the said data is accessed. The priority information enables the playback device to store frequently accessed control data in its cache memory, while keeping less frequently accessed files at the record carrier. Such control data comprises for example menu items. This type of data is often used to request information from a user how to proceed with the playback. Loading such a menu item from the record carrier may take one or two seconds 10 and therewith hampers the speed of interaction between the playback device and the user. By providing the priority information at the record carrier a playback device according to the invention is enabled to store this type of data in a cache memory and to therewith improve the interaction speed. The cache memory may be relatively small as the priority information indicates which information is the most relevant to store therein. The priority information 15 preferably discerns at least 8 levels. This enables a playback device having only a relatively small cache memory to select only the most frequently accessed files for storage in the cache memory. If on the other hand such a record carrier is played back at a playback device having a greater cache memory, in addition to those files other files may be stored in the cache memory which are less frequently accessed, but still important. 20 It is possible to attach each item of priority information to the file to which it corresponds. Preferably however. the priority information is contained in a single file. This allows a playback device to retrieve the priority information with one file access. An attractive embodiment of the playback device according to the invention is characterized by means for rewriting the priority information at the record carrier in 25 accordance with the frequency with which the files are actually accessed by a user. This allows the playback device to adapt the record carrier to the profile of a particular user. The invention also provides a method for playback of a record carrier comprising information organized in a plurality of files containing audiovisual data and playback control data for controlling playback of the audiovisual data while enabling user 30 interaction, which method comprises the steps of a. determining whether a cache memory does have sufficient unoccupied space, aa. if it is determined that the cache memory does not have sufficient unoccupied space, then determining whether the cache memory does have space sufficiently large which WO 01/35416 3 PCT/EPOO/11114 is occupied by one or more further data files having a priority value lower than the priority value of the first data file, aaa. if the outcome of step aa is true, then overwriting said one or more further data files by the first data file. 5 A preferred embodiment of said method is characterised in that if the outcome of step a is true then ab it is determined whether the first data file has a priority value higher than a predetermined value, aba if the outcome of step ab is true then the first data unit is loaded from the 10 record carrier into the cache memory. The advantage of this embodiment is that it is prevented that files having a too low priority would be loaded into the cache memory. Such files generally would only stay relatively short into the cache memory as they would be overwritten by files having a higher priority. 15 The cache memory of a playback device according to the invention may also be loaded during an initialisation stage of the device by means of the following method for playback of a record carrier comprising information organized in a plurality of files containing audiovisual data and playback control data for controlling playback of the audiovisual data while enabling user interaction, which method comprises a procedure for 20 loading files in a cache memory comprising the steps of d setting a reference priority value, e for a plurality of files examining whether a priority value assigned thereto is higher than the reference priority value, ea if the outcome of step e is true examining whether the cache memory 25 comprises sufficient space for storing the said data unit, eaa if the outcome of step ea is true then loading said data unit into said space, f reducing the reference priority value, g determining whether the reference priority value is greater than or equal to a 30 bottom priority value, ga repeating steps d to g if the outcome of step g is true. A record carrier according to the invention may be recorded with a device for recording a record carrier comprising information organized in a plurality of files containing audio visual data and playback control data for controlling playback of the audiovisual data WO 01/35416 4 PCT/EPOO/11114 on a playback device while enabling user interaction, the information further comprising priority information, indicating the relative priority with which the files are to be stored in a cache memory of the playback device, the playback device comprising 5 - means for obtaining the audiovisual data, - means for composing the control data, - priority determining means for determining the priority information, - formatting means for formatting the audiovisual data and the control data into files, 10 - recording means for recording the information comprising the priority information, the audiovisual data and the control data at the record carrier. A record carrier according to the invention may be recorded with a method for recording a record carrier comprising information organized in a plurality of files containing audio visual data and playback control data for controlling playback of the audiovisual data 15 on a playback device while enabling user interaction, the information further comprising priority information, indicating the relative priority with which the files are to be stored in a cache memory of the playback device, the method comprising the steps of - obtaining the audiovisual data, 20 - composing the control data, - determining the priority information, - formatting the audiovisual data and the control data into files, - storing the information comprising the priority information, the audiovisual data and the control data at the record carrier. 25 The playback control program may be recorded at the same information carrier together with the audiovisual data, but may otherwise be stored at a separate record carrier or in a ROM of the playbackdevice. 30 These and other aspects of the invention are described in more detail with reference to the drawing and with reference to an appendix: "Specification Proposal for a Video Disc Play Control Program (PCP)" which is incorporated by reference herein. In the drawing: Figure 1 shows an embodiment of a record carrier according to the invention, WO 01/35416 5 PCT/EPOO/11114 Figure 2 shows an embodiment of a device according to the invention, Figure 3 shows an embodiment of a method according to the invention, Figure 4 shows relations between several aspects of the invention, Figure 5 shows a further embodiment of a method according to the invention. 5 Figure 1 shows a record carrier 1 which comprises information organized in a plurality of files 2 containing audiovisual data 11 and playback control data 12 for interactively controlling reproduction of the audiovisual data 11 on a playback device. The 10 playback control data on the one hand controls playback of the audiovisual data and on the other hand allows for user interaction, for example by providing options from which the user can choose. In the embodiment disclosed here the files have a file structure as described in section 3 of the appendix. Part of the file structure is a file header (Fileheader) containing a file identification (FileID). In an embodiment the audiovisual data maybe contained in one 15 or more of the following four types of MPEG files. The first type is an MPEG movie file (File_ID = 10). This type of file contains a video stream, one or more audio streams and a private stream. A second type of file is an MPEG audio file (File_ID = 11). This type of file contains one or more audio streams, but no video stream. A third type of file is an MPEG picture file (FileID = 12). It contains a video stream with one or more still pictures, but no 20 audio stream. A fourth type of MPEG file (FileID = 13), a so called MPEG show file comprising a video stream with one or more still pictures and one or more audio streams. Further the audiovisual data may comprise JPEG picture files (File_ID = 20) and bitmap image files denoted as BMP in the Figure (File_ID = 21). The playback control data 12 comprises one or more so called Play Control Program files (PCP, File_ID = 3), which may 25 include a PCP-file for startup. Each PCP-file may contain one or more functional blocks FB. An FB on its turn contains one or more commands CMD1, ... CMIDn, as described in section 4.5 of the appendix. Further the playback control data comprises a Play Item Table file (PIT file, FileID = 2). The structure of the PCP-file is described in detail in section 3.2 and the PIT-file is described in section 3.3 of the appendix. Furthermore the record carrier comprises 30 a File Record Table file (FRT-file, File_ID = 1) as described in section 3.1 of the appendix. The FRT-file comprises information about all files at the record carrier 1, such as their size and address at the record carrier as well as general information about the record carrier. The record carrier is preferably a medium which is randomly accessible, such as a disc, as described in the appendix, or a card. The medium is for example an optical, a magnetic or a WO 01/35416 6 PCT/EPOO/11114 magneto-optical medium. The information at the record carrier 1 further comprises priority information, indicating the relative priority with which the files 2 are to be stored in a cache memory of the playback device. In the embodiment described here the priority information is contained in a 5 single file, in this case the FRT-file. For each of the files 2, including itself, the FRT-file comprises an entry denoted as "priority" which has a value in the range of 0 to 15. The priority information is related to the estimated frequency with which the said data is accessed. A high value of priority represents a high estimated frequency. In the embodiment described here the control data is comprised in one or more control programs, the PCP-files 0 which comprise references to menus, e.g. in the form of MPEG picture files. Preferably these files have a high priority, preferably the highest value (15). Figure 2 shows a playback device according to the invention for playback of the record carrier 1 described above with reference to Figure 1. The playback device comprises read means 20 for reading the data from the record carrier 1. The read means 20 5 are provided with control means 21 to control the reading of data from the record carrier 1 upon instructions by processing means 30 for processing the control data. The data read from the record carrier 1 is transmitted via a bus 15. The device further comprises a cache memory 39 for storing data from the record carrier 1. In addition the device has a process memory 31 for storing data which is being used by the processing means 30. The device also comprises !0 user input means 40, 41 for enabling user interaction. The user input means are for example a keyboard or a pointing device such as a mouse. The processing means 30 interactively select audiovisual data from the record carrier I and have these reproduced by audio reproduction means 53, 54 comprising an MPEG-audio decoder 53 and video reproduction means 51, 52 comprising an MPEG-video decoder 51. The device according to the invention is adapted to Z5 read priority information and to store files in the cache memory 39 in accordance with this priority information. To this end the device reads the priority information from the FRT-file and if the cache memory 39 is too small to store all files, the device stores those files in the cache memory 39 which have the highest priority value. The processing means 30 comprise interpreter means 32 for interpreting commands CMD1, ... in the functional blocks FB of the 30 play control program file PCP. The interpreter 32 sequentially interprets the commands and writes/reads a plurality of Player API registers, also denoted as Registers, which function as an application programmers interface. These Registers and their function are described in section 4.3.2 of the appendix. For example upto 16 hotspot areas may be defined by writing the Registers 128-191. A next PCP-file may be selected by writing its file number in the WO 01/35416 7 PCT/EPOO/11114 Register numbered 226. A play item, for example an MPEG file may be selected by writing an identification of said item in Register 228. Note that most Registers correspond to a separate register for writing and for reading. By reading a Register status information returned by the executing means 34 may be retrieved. For example, if the Register numbered 5 228 is read a so called play event ID value may be retrieved. The latter indicates a cause for ending the playback of the MPEG-file. A more detailed description is given in section 4.4.6 of the appendix. The interpreting means and executing means of the processing means may be incorporated in software on a single processor or may be implemented as different processors. The mutual relation of the different files is shown in Figure 4. When a file 10 number of a PCP-file is written in register 226, the execution means 34 retrieve the file address of said PCP-file form the FRT-file. If this file is not already available in the cache memory 39, it is loaded from the record carrier 1 into the process memory 31. If the Play Control Program file writes an identification of a Play-item in the register 228, control is passed to the execution means 34. These look up the corresponding filenumber of an 15 audiovisual file and the entry point within said file in the Play Item Table PIT and have said play-item reproduced. The file address of said audio visual file is retrieved from its file number by means of the FRT-file. If control is passed to the execution means 34 then operation of the interpreting means 32 is suspended until an event is detected by event handler means 35. The event handler means 35 may detect at least one of the following 20 events, the expiration of a time interval, an input by a user, the occurrence of trigger data in the audiovisual data. This is illustrated in Figure 1 of the appendix. A command set Timer, by writing a value to Register 252, has the effect that a timer 35 starts to count down from said value and that a timer event occurs if count down is completed. A trigger event occurs if a trigger detector 37 detects that trigger-data corresponding to a trigger-mask loaded in 25 Register 249 occur in an MPEG stream which is read from the currently selected file. A user may cause an event in several ways. In the first place one or more hot spots may be defined by writing a selection or all of the registers 128 to 191. If the user points to a hotspot, a hotspot event occurs. Otherwise a userkey event occurs if a key is pressed which is enabled by the userkey mask. The latter is assigned to Register 250. If the reproduction of the MPEG 30 file is completed likewise an event, EndofFile event, occurs. If an event occurs the event handler means 35 enable the interpreter means 32 to continue the interpretation with a command (Command #n+1) succeeding the command (#n) at which the operation of the interpreter means 32 was suspended.
WO 01/35416 8 PCT/EPOO/11114 If a file is accessed, the procedure illustrated in Figure 3 is followed. First in step SI it is examined whether the file to be accessed is already in the cache memory 39. If this is the case, then in step S2 the file is copied from the cache memory 39 into the process memory 31. Subsequently the file can be processed in step S3. If the file to be accessed is not 5 available in the cache memory 39 then it is loaded from the record carrier 1 into the process memory 31 in step S4. Next it is examined in step S5 whether in the cache memory 39 enough free space is available to store the file. If the outcome is positive the file is copied from the process memory 31 into the free space of the cache memory 39 in step S7.If the outcome of the examination in step S5 is negative the program step S6 is executed. Therein it 10 is examined whether enough space in the cache memory 39 is available which is occupied by files having a lower priority than the file which was accessed. If this is the case than that file is copied from process memory 31 into the said space in the cache memory 39 (step S7). Otherwise the said file is not copied into the cache memory 39. An embodiment of the device according to the invention also includes a 15 procedure for loading the cache memory 39 during initialization. Such a procedure is described with reference to Figure 5. In a first program step S1O a priority reference value PR is initialized at 15. In a second program step Sll a filenumber I is initialized at 1. Next in step S12 it is examined whether the file with file number I has a priority equal to PR. If this is not the case than the procedure continues with step S15. Otherwise the procedure continues 20 with step S13 wherein it is examined whether the size of the file with filenumber I is less or equal than the free space in the cache memory 39. If this is true than said file is loaded into the cache memory 39 in step S14. If it is not true than the procedure continues with step S15, wherein the filenumber is increased by 1. Subsequently in step S16 it is examined whether the filenumber is less or equal than the total number of files. If this is true than the procedure 25 continues with step S12. If this is not true than the priority reference value is decreased by one in step S17. Subsequently it is examined whether the new priority reference value is greater than or equal to 0 in step S18. If this is true than the procedure continues with step S11. If it is false then the procedure is completed. It is remarked that the scope of protection of the invention is not restricted to 30 the embodiments described herein. For example, while an embodiment of the apparatus according to the invention is described which comprises detection means to detect which type of record carrier is present, an other embodiment comprises input means which enable a user to provide that information. The apparatus may comprise recording means for recording an information stream on the record carrier in addition to the reading means. Neither is the scope WO 01/35416 9 PCT/EPOO/11114 of protection restricted by the reference numerals included in the claims. The word 'comprising' does not exclude other parts than those mentioned in a claim. The word 'a(n)' preceding an element does not exclude a plurality of those elements. The invention further resides in each new feature or combination of features. 5 WO 01/35416 10 PCT/EPOO/11114 Specification Proposal for a Video Disc Play Control Program (PCP) 5 By Erik Schylander version 3-Nov-99 11:43 10 A Play Control Program (PCP) is used for the user navigation when playing the disc. The user can select the parts to play from presented menus. It is applicable to any 2K sector addressable media, e.g. CD-ROM, DVD-ROM. In the current VCD and SVCD specifications a Play Sequence Descriptor (PSD) file is used for the PCP with a fixed syntax and semantics. It has the drawback that it is static (pre determined) and can not adopt to the input of user. No conditional testing or computations are supported. The Playback is programmed by recorded Play Lists and Selection Lists that define the MPEG streams to play. In SVCD an extension was introduced called Command Lists which allowed conditional testing and some limited computations. This proposal is based on about the same concept, but without using Play Lists or Selection Lists. It also supports event handling triggered by a MPEG stream playback point, a timer or a user input. This is also very different from DVD, where the control and navigation data is stored in the MPEG stream, which makes the authoring and testing very complicated. Revision history rev#ld - 26/10/99 NVRAM size allocated by Discinfo, and fixed location at Reg[0j. Fixed type errors, updated figure 1, outline changes rev#2a - 27/10/99 Simplified Player registers to avoid MSB, LSB bytes (Hotspots.OGT, Audio_stream), and reallocated register numbers. Added JPEG and BMP file types values. Added as extension OGT rendering in a hotspot area. Rev#2b - 1/11/99 Changed name of DRT to-FRT, and PIN to PIT to use more correct wording. Added Player States (stopped, playing, paused, scanning). Added field in MPEG info record for PlayingTime. Added field in MPEG info record for average sector (bit) rate. Rev#2c - 2/11/99 Filled in Error codes Added place holders for Systems Overview Cc: D. de Jong, CP&T.
WO 01/35416 1 PCT/EP00/11114 Table of Contents 1 G ENERA L......................................................................................................................................................... 12 1.1 NORMATIVE REFERENCES ....................................................................... 12 5 1.2 CONVENTIONS .................................................................................... 1......................................................... 12 1.3 ABBREVIATIONS AND GENERAL DEFINITIONS ............................................................................................. 12 1.4 DATA TYPES AND STRUCTURES.......................................................................................... 13 1.5 SYSTEM OVERVIEW...................................................................................................................................... 14 1.5.1 Player Reference M odel...................................................................................................................... 14 0 1.5.2 Disc Reader M module ........................................................................................................................... 14 1.5.3 M PEG decoder.................................................................................................................................... 14 1.5.4 Overlay Graphics and Text (OGT) ................................................................................................. 14 1.5.5 Playback Controller ............................................................................................................................ 15 1.5.6 Cache M emory ................................................................................................................................... 15 15 2 DISC STRUCTURE ......................................................................................................................................... 15 3 FILE STRUCTURE....................................................................................................................................... 15 3.1 FILE RECORD TABLE (FRT) FILE ................................................................................................................. 16 3.2 PLAY ITEM TABLE (PIT) FILE ...................................................................................................................... 17 3.3 PLAY CONTROL PROGRAM (PCP) FILE ........................................................................................................ 17 20 3.4 M PEG FILES ................................................................................................................................................ 17 3.4.1 M PEG file characteristics................................................................................................................... 17 4 PLAY CO NTRO L PRO G RAM (PCP)......................................................................................................... 18 4.1 PCP FILE STRUCTURE .......................................................................................................................... 1...... 18 4.2 PCP INTERPRETER .............................................................................................................................--....... 18 25 4.2.1 PCP structure...................................................................................................................................... 18 4.2.2 PCP Interpreter reference model.................................................................................................... 19 4.2.3 FB program flow structure ................................................................................................................. 19 4.2.4 Plave r States ....................................................................................................................................... 20 4.3 PCP REGISTERS ..............................................................................................................-----.................... 20 30 4.3.1 Variable registers, R[0..95 ................................................................................................................ 20 4.3.2 Player API registers, R[ 128..255] ................................................ .......... .......... ............. 21 4.4 PCP PLAYER (API) FUNCTIONS.......................................................................................................... 23 4.4.1 FB local variables memory( size )function .................................................................................... 23 4.4.2 FB( address functionss ....................................................................................................................... 23 35 4.4.3 GotoPCP(File number) function....... ..... .............................................. 23 4.4.4 GotoDisc(Disc-n um ber)function .............................................................................. 24 4.4.5 Play() function .................................................................................................................................... 24 4.4.6 Pla y _event() ........................................................................................................................................ 25 4.4.7 M PEG file info function ...................................................................................................................... 26 40 4.4.8 OGTselect(channel)function ............................................................................................................ 26 4.4.9 Audio select( stream number )function ........................................... 26 4.4.10 Audio mi xing( data )function ...................................................................................................... 26 4.4.1] Hotspot() function ............................................................................................................................... 26 4.4.12 Userkey() functions ............................................................................................................................. 26 45 4.4.13 Timner(time) function ..................................................................................................... 27 4.4.14 Error handling .......................................................................................- ... -....................... ------.. 27 4.4.15 OGTrendering function..................................................................................................................... 28 4.5 PCP COMMAND DEFINITIONS ...................................................................................................................... 28 4.5.1 Command codes.................................................................................................................................. 29 50 4.5.2 operand symbols .................................................................................................... 29 4.5.3 opcode conditions ............................................................................................................................... 29 4.5.4 opcodefunction definitions ................................................................................................................. 30 4.5.5 Programmin g examples ...................................................................................................................... 30 55 WO 01/35416 12 PCT/IEPOO/11114 General Normative References The following Standards contain provisions, which, through reference in this document, are used this document. ISO 646 7-bit coded character set for information interchange ISO 9660 Volume label and file structure (1509660) of CD-ROM for information interchange ISO/IEC 11172-3:1993 Information technology-coding of moving picture and associated audio for digital __________________storage media up to about 1,5Mbit/s Audio (MEG 1) ISO/IEC:13818-1,-2,-3 Generic coding of moving picture and associated audio information (MEG2); the 2 nd edition:1996/1997 1997 edition shall apply for audio coding ISO/IEC: 10918-1 Digital compression and coding of Still Images (JPEG) IEC:13346 UDF 2.0 as defined b OSTA (Universal Disc File system) 5 Conventions Bold terms are defined in this document Values and comments are written in italic. Hex values are preceded by a $ character Binary values are preceded by % character 10 Strings are within double quotation marks, as. Abbreviations and general definitions The following abbreviations are used in this document. #or ##Abbreviation for " Number of " Album An Album is a collection of discs with the same AlbumID. AlbumID An unique value that identifies all discs belong $n Binary~~~~n vaue are prceedbyuhaace Audio stream The MPEG stream can contain one or more audio streams numbered I to max. It is optional to support surround sound in the Extended stream. Bitmap image An image representation where each pixel is represented by on or more bits. These bits represent different color values in a color lookup table (CLUT). CLUT A Color Look-Up Table, defining a color value (RGB) for each entry. FRT File Record Table, see 0 Hotspot A Hotspot is defined by the ID number and the area coordinates on the screen. Hotspots are used for user interaction on the screen, so a user can select a hotspot (by cursor or pointer control) to interact with the PCP. The selection of a Hotspot generates a Userinput event. It can be used by (computer) playback systems that use pointing devices for user interaction, or for systems that can highlight selected areas. The area within the indicated co-ordinates should be highlighted. The player can chose frame thickness and color. Such highlighting is recommended to have two views, one when pointer inside area or one when selected. If more hotspot areas contain the point selected, (in the case of overlapping selection areas) then the selection area with the lowest Selection Number is selected. Hotspot area The hotspot coordinate area defines a rectangular Selection Area on the screen. A scaled coordinate system is used such that the extreme upper left screen co-ordinate is 0,0 and the extreme lower right screen co-ordinate is 255,255.
WO 01/35416 13 PCT/EPOO/11114 I-picture For I-field pictures, i.e. when a video frame is encoded in the form of two fields, the sector containing the start of the I-picture with the first of both fields shall be referred to (even when the 2 "d field is closer to the expected grid). JPEG Joint Photographic Experts Group, See ISO/IEC 10918. Isb Least significant bit. LSB Least Significant Byte. MPEG Moving Picture Experts Group, see ISO/IEC 11172. MPEGPS A MPEG-2 Program Stream, that can contain a video stream, zero or more Audio streams and a MPEG private stream. MPEG A MPEG private stream that contains the OGT data and Triggerdata private stream msb Most significant bit. MSB Most Significant Byte. N/A. Not Applicable. NVRAM A Non Volatile memory in the Playback device to permanent store a part of the Global variable registers for a disc, and shall be recalled when a disc belonging to the same album is played again. This is an optional feature of the playback device. unction that is called when a register is set. The playback device shall uniquely allocate the NV-RAM memory for each disc by using the Album ID as unique identification. OGT Data that define the Overlay Graphics and Text function for the MPEG decoder. The MPEG stream can contain in the Private stream up to 8 OGT channels numbered from 1 to max. PIT Play Items Table, a list of all MPEG file entry points (access sectors). PCP Playback Control program. The program is recorded in a form that is very compact and easy to implement. It's compiled and optimized during the authoring process. The playback device (player) uses the PCP for navigation and playback selection. Playback A compliant device that contains a disc loader with optical pick-up unit and device servo controller, MPEGdecoder, and Playback processor with user I/F, player control and PCP interpreter. PS A MPEG Program Stream, a collection of MPEG Elementary streams. RT Real Time, a classification for (MPEG) files that has to decode data for Real Time output. R/W Read and Write, used to define the characteristics of the PCP registers. Data types and structures The following data types are used in this specification: Bit A binary digit that can have value %0 or % 1. Bits are numbered as b#nunber n-bit data A stream of n number of bits, where the first bit =b#n-1 and the last bit=b#O (msb) True A logical state of a n-bit data value, where one or more bits = %I False A logical state of a n-bit data value, where all bits = %0 Byte A 8-bit data value, that represent the values 0..255 WO 01/35416 14 PCT/EPOO/11114 Zero-byte A byte with the value of 0 ($00) Reserved byte A Zero-byte reserved for future use; Character A byte representing a Character, coded as IS0646 Digit One of the Characters "0123456789" Number A positive value represented by a String of Digit N-byte integer A signed value of N bytes recorded in 2's complement format N-byte word An unsigned value of N bytes Item Any data as an array[0..lastbvte] of byte, where the Item size = last bvte+1; <Item> Optional items are enclosed by <> Itemtype One of the following data types: Boolean: False..True Byte Character N-byte integer N-byte word String[] Array[] Record Array[ 0 last item ] of A collection of consecutive indexed items, from 0 to the last item, of the same Item_type Item-type. Index A n-byte word, used to indicate or reference an item in an array String[ length I An array of up to max. length number of character's. The string is padded with Zero byte's for not used characters. An empty string contains only Zero-byte's. Fielditem A data structure defined as Struc{ Item name <,Item name> of Item type } Record A data structure defined as Struc{ Fielditem <; Field_item> } These items form a block of consecutive bytes, recorded in sequential order. Table An Array[ 0.. lastrecord 1 of Record System overview This is a disc system to present full motion pictures with associated audio by using any ROM 5 (2K addressable sector) disc format. The system uses the ISO/IEC MPEG2 standard definitions to compress the video, still picture and audio information for full screen TV quality pictures together with associated high quality audio. The disc also contain high quality still pictures (menus) and a Playback Control Program file for navigation and playback control of the disc. 10 Player Reference Model The system consists of a disc and a compliant playback device (player). Disc Reader Module 15 MPEG decoder Overlay Graphics and Text (OGT) WO 01/35416 15 PCT/EPOO/11114 Playback Controller Cache Memory This is an optional feature in a playback device. To access a file in a player can take up to 1 5 or 2 seconds, but by storing frequently used files in a Cache RAM memory the access time can be neglected. When a MPEG file is read for the first time, the playback device can decide to store the file in the cache depending on the priority value and how full the cache is. The priority value gives an estimated likelihood that the file will be used again. This is specially useful for Menu still picture files, which normally have a size of 1-200KB. The cache 10 memory need to be 1MB or more, but with the falling memory prices this will only add a marginal cost to a player. Disc structure Disc An Array [0..lastsector] of Sector. Sector An Array[0..2047] of Byte. User data is recorded in the Sector. Sector addres A 3-byte word value representing the Sector index number in the Disc array. Sector size The sector size is fixed to 2048 bytes. 15 File structure File User bytes are stored on the disc as an Array[0 .. last byte] of byte, indexed by File.byteposition. The File is recorded in the consecutive sectors as defined by Disc[file-startaddress .. file endaddress] of Sector. The last sector is padded with zero_byte's. File start address The sectoraddress value of the first sector of a file. File end address The sectoraddress value of the last sector of a file. Filesize A 3-byte word value representing the number of Sectors recorded on the disc that the file occupy. The value is = (File_end_address - Filestartaddress+1). Note that the number of bytes in the file is = (Filesize * Sector-size). File-byte-position An index of a byte in File[0 .. last byte]. Structured_file A file starting with a Fileheader, followed by an Array of Items, indexed from 0 to lastitem. The item structure is depending on FileID value, and is defined below for each specified FileID. The file structure = struc{ File-header; array[O..last item] of Item } Fileheader A record that contains information about the structured__file defined as Struc{ FileID, Item-offs, Item_size, Itemcount of 2-byte word; <, Info of Array[0..lastbyte] of byte > }. File_ID A word identifying a specific file. Specified fileID's are: 0 = unspecified file 1 = File Record Table (FRT) file 2 = Play Item Table (PIT) file 3 = Play Control Program (PCP) file 10 = MPEG movie file 11 = MPEG audio file 12 = MPEG picture file 13 = MPEG show file 20 = JPEG picture file 21 = Bitmap image file (.BMP) Other values are reserved for future use. Item offs A 2-byte word for the file__byte.position of the first Item with index = 0. Item size A 2-byte word for the number of bytes an Item contains.
WO 01/35416 16 PCT/EPOO/11114 Item count A 2-byte word for the number of items in the file = (last item+ 1). Info An optional field to store specific information. File Record Table (FRT) file A structured file that contains a Table of Filedirectory_records indexed by a Filenumber. The record contains information about where the files are located on the disc. 5 The default Filenumber of this file = 0. UDF file name = "FRT.BIN" Fileheader The fileheader is defined as: FileID = 1 Item-offs = 24 Item-size = 16 Itemcount = number of File-directory-records Info = Disc info of 16 bytes Disc-info A 16 byte Record that contain information about the disc, defined as Struc{ AlbumID = 4-byte word; DiscID = 2-byte word; Disccount = 2-byte word; NVRAMsize = 1-byte word; Reserved = 7 Zero-bytes }. AlbumID A unique number that is the same for all discs that belong to the same Album. DiscID A sequential number starting from 1 that identifies the sequential order of the disc in the Album. Disc count A 2-byte word that contains the total number of discs in the Album. NVRAMsize A 1-byte value that defines the number of Global Variable registers, Reg[O.. NVRAM size-1], that shall be permanently stored into the NVRAM of the playback device when the disc is stopped by an Endo or Goto-disc() function. At startup of a disc the NVRAM data shall be loaded into the same specified Global Variables again. If the NVRAMsize = 0 then no action required. The playback device support of this NVRAM feature is optional. Filedirectory-record A 16 byte record of 4 fields that contain file information data, defined as: Struc{ Fileaddress, Filesize of 3-byte word; FileID of 2-byte word: File-info of 8 byte record }. The FileID = the File ID value of the referenced file. File address A 3-byte word sectoraddress of the first sector of the file. Fileinfo A 8 byte record that contains information about the file, defined as Struc{ Priority = 4-bit word ( 0.. 15); Restriction-category = 4-bit item. (t.b.d) Video-type = 8-bit item; (PA L /NTSC, full- / sub-picture) Audiostreams = 8-bit item; (see 0 and 0) OGTstreams = 8-bit item; (see 0) Playing-time = 2 byte item; (see 0) Sectorrate = 1 byte item, that for RT files, indicates the average number of sectors (in units of 16K or 8 sectors) per second. For non RT files this value is 0. (see 0) This value is used by the Playback controller to estimate the entry point into a MPEG file for a scan function or jump to time (seconds) function, by calculating the sector offset as (Sectorrate * time). Reserved = 1 Zero-byte }. Priority A value 0.. 15 that indicates the frequency distribution a file is expected to be accessed, where the value of 15 is used for the most frequent files, e.g. Menu's. This value can be used to support a cache memory feature in the playback device to improve the playback performance, see 0. File number A 2-byte word Item index of the File directory-record in the FRT file WO 01/35416 17 PCT/EPOO/11114 Play Item Table (PIT) file A structured file that contains Play-item-records. The default Filenumber of this file = 1. UDF file name = "PIT.BIN" Fileheader The Fileheader is defined as: FileID = 2 Item-offs = 8 Item-size= 5 Itemcount = number of Play Items. Play-itemrecord A 5 byte record that contains location information of Playitems, defined as Struc{ File-number of 2-byte word; Access Point of 3-byte word } PIN A 2-byte word Item index of the PIT file. It is used by the PCP player function. 5 Play Control Program (PCP) file A structuredfile of sequentially stored FBs that together represent a Playback Control Program. For the PCP file structure see section 0. A PCP file is referenced by its Filenumber. The default Filenumber for the startup PCP file = 2. UDF file name = "PCPnnnnn.BIN", where nnnnn is a 5-digit zero preceding Number equal to the File number in the FRT file File-header The file-header is defined as FileID = 3 Item-offs = 8 Item-size = 5 Item count = number of Commands. Item count shall be less than 64K. 10 MPEG files MPEG file A file containing a MPEGPS. MPEG movie file A MPEGfile with a motion picture video stream and one or more audio streams and a private stream. The File ID = 10 MPEG audio file A MPEGfile with one or more audio streams, and no video stream. The File ID = 11. MPEG picture file A MPEGfile with a video stream that contain one or more still pictures and no audio stream. The File ID = 12. MPEG show file A MPEGfile with a video stream that contain one or more still pictures and one or more audio streams. The File ID = 13. MPEG file characteristics 15 Play-item A part of a MPEGfile, starting at an accesspoint, and ending at the end of the MPEG PS. The playback of a Play-item can conditionally end at any trigger-point checked by the PCP interpreter. A Play Item can be the whole or part of a MPEG file containing: * MPEG Video; with or without MPEG Audio * One, or more, MPEG encoded Still Pictures; with or without MPEG Audio.
WO 01/35416 18 PCT/EPOO/11114 e MPEG Audio only with no pictures or video. If a Play Item includes one or more still pictures, the last picture is displayed until it is replaced by a new Play Item. Access-point A 3-byte reference address to a MPEGfile sector that contains the beginning of a MPEG I-picture or for a MPEG audio file the beginning of a audio frame. These are the entry points where the PCP program can sta-t playing in a MPEG file. Trigger-point A 3-byte reference address to a MPEG file sector that contains Triggerdata stored in the Private Stream. When the playback-device is playing a MPEGfile and passes a Trigger.point then it should check if a Trigger-event() function should be called. Triggerdata A 16-bit data value in the MPEG private stream, which can be filtered by a Trigger-mask to decide if a Trigger-event() shall be called. Play Control Program (PCP) The PCP contains the navigation structure of the disc. The PCP is stored in PCP files. The file is divided into functional blocks called FB. At startup of the disc the PCP file with Filenumber = play, the PCP interpreter starts to interpret the first FB at address = 0, and continue until an Endo function is called. PCP file structure Command A 5-byte item that contains the PCP interpreter instruction code. Commands are referenced from 0 to last Command in the FB. Commandindex A 2-byte word Itemindex in a FB. The Commandindex is = 0 for the first Command in a FB. FB A block of consecutive Commands, that represent a FB function that can be called by setting the FBaddress register. The size of a FB block shall be less than ?? Commands. FBaddress A 2-byte word Itemindex of the first Command in the FB. The address of the first FB in the PCP file = 0. 5 PCP Interpreter The PCP interpreter shall interpret and execute the Command instructions in the FB. These Commands shall be interpreted in sequential order one by one, until a Return() or an other function is called. If an error is detected the Error handler shall be called. Most Commands 10 will only be executed if a specified Command condition is fulfilled. The PCP interpreter is easy to implement with a standard micro-controller, as it needs only to handle three simple type of operations: * Read / Write of variable and register data * Arithmetic operations on variables 15 * Command interpreter sequence management PCP structure The relation between the different PCP data elements are shown in the figure below.
WO 01/35416 19 PCT/EPOO/11114 PCP00002 file PCP00003 file PCPnnnnn file FB0000 FBxxxx last FB Command Command Command 0000 0001 last PCP Interpreter reference model The PCP interpreter reads the commands in the FB one by one and executes the command instruction as defined in section 0. The command reads and writes data into the Variable 5 Array. Values written into the register variables shall be stored in memory. If a value is written into the Player register part then a specific function is called and shall be executed before the next command is interpreted. See the figure below. Variable Array Reg[i] PCP -- -- Register variables nnnn interpreter / Reserved variables Player register API Read status Write commands 10 FB program flow structure The control flow structure between FB's, PCP files, and discs is shown in the figure below.
WO 01/35416 20 PCT/EPOO/11114 Sta rt Call() Call() FB 00 Reun)FB xx Rtro FB yy Change Change So( PCP file() disc()So) Player States The MPEG player in the MPEG device can be in one of the states as described below. These states are important for the Playo function, see 0 5 State Description Stopped The MPEG player stopped decoding the MPEG stream, either by a Play() command or by an EndofFile event. The last MPEG picture should remain on the screen. Playing The MPEG player is active decoding the current MPEG stream. Paused The MPEG player can be paused during Playing directly by the user. It does not effect the Interpreter as it is halted waiting for an Evento. When the user wants to continue the Player shall return to the Playing state. Scanning The MPEG player can scan the MPEG stream (file) forward or reverse during Playing directly by the user. It does not effect the Interpreter as it is halted waiting for an Evento. In the MPEG info record there is a field that gives the average bitrate to guide the player on how many sectors to jump per second. When the user wants to continue the Player shall return to the Playing state. PCP registers The PCP interpreter uses an array R[O..255] of 2-byte (16-bit) registers, that contain 10 variables and player registers that functions as an API for the PCP interpreter to interface with the player functions and MPEG decoder. The PCP-registers can be read and written to by the PCP interpreter. The 256 registers are indexed from 0 to 255. The player shall set the defined player registers reflecting the current player status to be read by the PCP interpreter. At start up of the disc the default player values should be used. Some players allow the user 15 to change the default values. The PCP can control the player by writing a value to a R/W player register, and the player has then to execute controls that would generate the same status. Note that a R/W player register actually consists of two different registers, one for read of the player status, and one for giving a command to the player. When the player is busy executing a register command, then these values could be different. 20 Variable registers, R[O..95] Index Re ister Description 0.. 31 Global variables These 32 registers, indexed 0 to 31, are used for storing global accessible variables. At startup these variables shall not be set, except if the NV-RAM function is WO 01/35416 PCT/EPOO/11114 21 supported, those that has been stored in the NV-RAM.. At read return the set value. At write set value. 32 .. 63 Parameters These 32 registers, indexed 32 to 63, are used for passing parameters to a FB function, and for returning parameters from a FB function. Before calling a FB function intermediate results should be saved in the local FB variables. At startup the variables should not be set, and shall keep its values during the change of a disc. At read return value. At write set value. 64 .. 95 Local FB variables Up to 32 registers, indexed 64 to 95, can be allocated to be used locally by the called FB function or the error handler. These variables are allocated by setting the FB varsize register. Allocated local FB variables shall be saved in memory before the new FB function starts. Local FB variables of the calling FB function shall be restored from memory by the Returno function. Allocated variables shall be set to 0. At read return the set value. At write set value. 96.. reserved Reserved for future extensions. 127 Player API registers, R[128..255] Index Register Description 128.. Hotspot area-top At startup the register shall be set to -1 if Hotspots are supported by the 143 ID = #128 .. #143 playback device else it shall be set to -2. At read return the vertical position of the top line of the hotspot(#ID) selection area. ID values 128 .143 are mapped to register values 128 .. 143. If the hotspot is disabled then return -1. See 0 At write set the top position for the hotspot(#ID). If this register is set to -I then the hotspot is disabled. 144.. Hotspot areabottom At startup the register shall be set to -I if Hotspots are supported by the 159 ID = #128 .. #143 playback device else it shall be set to -2. At read return the vertical position of the bottom line of the hotspot(#ID) selection area. ID values 128 .. 143 are mapped to register values 176 .. 191. If the hotspot is disabled then return -1. See 0 At write set the bottom position for the hotspot(#ID). If this register is set to -I then the hotspot is disabled. The hotspot bottom value shall be >= top value. 160.. Hotspot-arealeft At startup the register shall be set to -1 if Hotspots are supported by the 175 ID = #128 .. #143 playback device else it shall be set to -2. At read return the horizontal left most pixel position of the hotspot(#ID) selection area. ID values 128 ..143 are mapped to register values 192 .. 207. If the hotspot is disabled then return -1. See 0 At write set the horizontal left most pixel position for the hotspot(#ID). If this register is set to -1 then the hotspot is disabled. 176.. Hotspot-area right At startup the register shall be set to -1 if Hotspots are supported by the 191 ID = #128 .. #143 playback device else it shall be set to -2. At read return the horizontal right most pixel position of the hotspot(#ID) selection area. ID values 128 ..143 are mapped to register values 208 .. 223. If the hotspot is disabled then return -1. See 0 At write set the horizontal left most pixel position for the hotspot(#ID). If this register is set to -1 then the hotspot is disabled. The hotspot right value shall be >= left value. 192.. reserved 223 224 Locals-size At startup the register shall be set to 0. At read return the current FB local variables size. At write call the FB local variables memory(size) function, See 0. 225 FB address At startup the register shall be set to 0.
WO 01/35416 22 PCT/EPOO/11114 At read return current FBaddress. At write call the FB(address) function. See 0. 226 FileNumber At startup the register shall be set to 2. (thefirst PCPfile) At read return the File_Number of the current PCPfile. At write call the gotoPCP(FileNumber) function. See 0. 227 DiscNumber At startup the register shall be set to 1. At read return the DiscNumber of the current disc. At write call the gotoDisc(Disc_Number) function. See 0. 228 Play-item At startup the register shall be set to -1. At read return the play event ID value. At write call the play(PIN) function. See 0. 229 MPEG file info At startup the register is set to -1. At read return current MPEG file number if the last write call was successful, else return -1. At write call the MPEGfileinfo(file number) function. See 0 230 Playing-time At startup the register is set to 0. At read return the playing time (in seconds) of the current MPEG file updated by the MPEGfileinfo function. At write do nothing. 231 OGT channels At startup set to 0. At read return the number of current available OGT channels of the current MPEG file updated by the MPEG fileinfo function. See 0. At write do nothing. 232 OGTselect At startup set to 0. At read return the current selected OGT channel. If OGT disabled then return 0. At write call the OGT select(channel) function. See 0. 233 Audiostreams At startup set to 0. At read return the number of current available Audio streams of the current MPEG file updated by the MPEG_fileinfo function. See 0. At write do nothing. 234 Audioselect At startup set to 1. At read return the current selected Audio-stream number. If Audio disabled then return 0. At write call the Audio select(stream number) function. See 0. 235 Audiomixing At startup the register set to playback device default value. (stereo=3) At read return the current Audio mixing setting At write call the Audiomixing(data) function. See 0. 236 OGT-image This is an optional extension. At startup the register shall be set to -I if OGT rendering is supported by the playback device else it shall be set to -2. At read return the current FileNumber of the Image file. If no image displayed then return -1. If this function is not supported then return -2. At write call the OGT rendering function, see 0 237.. reserved Reserved for future extensions. 248 249 Trigger-mask This register is used to filter the Trigger-data in the MPEG stream to define if a trigger event shall occur. See 0. At startup this register is preset to -1 ($FFFF). At read return the current trigger mask. At write set the Trigger-mask. If the register is set to 0 then the Trigger function is disabled. 250 Userkey-mask This register is used to enable and filter the User keys. Each bit represents one of the keys. If the bit is set then the key is enabled, else it's disabled. At startup this register is preset to -1 ($FFFF). At read return the current mask. At write set the user key mask. Bit#0 represents the user key with number = 0 and so on until bit #15 that represents the user key with number = 15. If the register is set to 0 then all user keys are disabled. 251 Inputdata This register returns the last pressed User key number or selected Hotspot ID number. For user kev values see 0. and for Hotspot ID values see 0.
WO 01/35416 23 PCT/EPOO/11114 At startup this register is set to -1. At read return the current Input-data (User key or Hotspot number). At write reset the Input.data to 0. If the value is in the range 128..143 then also highlight the corresponding hotspot area else no hotspot shall be highlighted. 252 Timerdata At startup the register shall be set to 0. At read return the current Timer value ( in units of 1/10 see). At write call the Timer(start time) function. See 0. 253 NVRAM At startup the register shall be set to the NVRAMsize value in the Discinfo record. At read; If no Global registers could be restored form the NVRAM then return 0, else return the NVRAMsize value. At write no action. 254 Error handler block At startup the register is set to -1. At read return current Error handler address. See 0 At write set the location of the PCPblock to execute by the PCP interpreter when an Error has been detected. 255 Errorcode At startup the register is set to 0. At read return current Errorcode. See 0. At write the Errorcode will be reset to 0. Note: Reserved registers shall not be used. They are reserved for future use. Operations with reserved registers, shall generate an error. PCP Player (API) functions The Playback device shall support the following functions. 5 FB local variables memory( size ) function This function is called when the FB varsize register is set. It shall allocate the number of requested local FB variables in memory. The total memory is limited to 256 variables (512 bytes), so this function is to optimize the memory usage handling by the PCP interpreter. Up to 32 variables can be allocated for each FB function. The size value is reset to 0 when a new FB function is called, so the register must be set to 1.32 before local FB variables can be used, else an error will be detected. FB( address ) functions These functions are called by setting the FB-address register with a value as defined below Value Function Description -1 Returno Continue to interpret the Command following the Command that called the FB function or error handler. o Reset() Clear the Local Variable stack, and the Return stack. Start interpret the first FB at FB address = 0. nnnn Function() If nnnn is a valid FB address then call the FB function at address = value. Set the local FB variable size to 0. else ErrorO Generate an Error Goto.PCP(Filenumber) function These function is called by setting the Filenumber register with a value as defined below Value Function Description 2 Restarto Load default FCP file with file-number = 2. Clear the Local Variable stack, and the Return stack. Start interpret the first FB at FB address = 0. nnnn GotoPCP() If nnnn is a valid Filenumber for a PCP file, then load the FCP file with filenumber = nnnn. Clear the Local Variable stack, and the Return stack. Start interpret the first FB at FBaddress = 0. else Erroro Generate an Error WO 01/35416 24 PCT/EPOO/11114 GotoDisc(Disc_number) function These function is called by setting the Discnumber register with a value as defined below Value Function Description 0 EndO A function that ends the PCP playback (interpreter execution) and returns control to the playback device. 1 GotoDisc() Stop playing current disc. Change disc to a disc with this Discnumber. Start Disc coun playing the disc. Note that the Global variables shall not change values during t ~the disc change. else Error Generate an Error Playo function This function is called by setting the Play-Item register with a value as defined below. Value Function Description -1 Stop If the Player was Playing then the MPEG decoder shall be stopped and the last MPEG picture shall remain on the screen. PIN Play If PIN value is valid and the player was Stopped then the playback device shall start playing the PlayItem indexed by the value in the play item register. The PCP interpreter will wait to execute the Command until a playevent() has occurred. If PIN value is valid and the player was Playing then continue playing and halt the interpreter to wait for a Playevento. else Error Generate an Error 5 WO 01/35416 25 PCT/EPO/11114 Figure 1 Playo function program flow Command T Timer= 0 Set Timer Time Timer event Command m a Set Trigger Trieer mask-j Trigger event Command Set Hotspots H!osotaea.s Hotspot event Set Userkey serk ask Userkey event Command #n ---- -- Set s*;tar~tplaying End of File MPEG file from Command (PIN) # n+1 Command Continu check last Command decide to continue or stop Stop Command play Set PlayItem( Playevent() A Play-event can only occur during the Playo function, and the corresponding playeventID value shall be returned in the Play-item register. The play-events are listed 5 below: Play-even Play-event Description t ID code -1 Endoffile An event called from the MPEG player, to mark that the player has reached the end of the MPEG file. -2 Timerterminate An event called from the player controller, to mark that the timer has reached the time = 0. -3 Trigger-point An event called from the MPEG decoder, to mark that a specific point in a MPEGfile has been passed during playback. The event shall be called if the logical result of (MPEG trigger data & Trigger mask) = True. It is possible to use different kind of triggers by setting the msb bits as selectors and the lower bits as a trigger number. -4 Userkeyinput A function called from the player controller, to mark that a user key has been activated by the user. The event shall be called if the User key was enabled by the userkey-mask -5 Hotspot-select A function called from the player controller, to mark that a hotspot has been selected by the user. The event shall be called if the hotspot was enabled by valid area coordinates.
WO 01/35416 26 PCT/EPOO/11114 MPEG file info function This function is called when the MPEGfileinfo register is set to a filenumber of a Filedirectory-record in the FRT file. The Playing-time, OGT and Audiostream registers shall be set according to the Fileinfo stored in the Filedirectoryrecord. This 5 register shall return 0 if the filenumber is not valid or the FileID <> 10 (MPEG file), else it shall return -1. OGTselect(channel) function This function is called when the OGTselect register is set. Select the OGTchannel to the set channel. If set to 0 then disable display of OGT. If set to an invalid value then return 0 (disable). Audio-select( stream number) function This function is called when the Audioselect register is set. Select the Audio stream to the set number. If it is set to 0 then disable (mute) audio. If it is set to an invalid value then return 0 (disable). 5 Audio-mixing( data ) function This function is called when the Audiomixing register is set. Set the Audio mixing as defined by the set data value as defined below: Data Audio mixing setting description value 0 Audio mute 1 Left channel only 2 Right channel only 3 Stereo 4 Surround sound else Do nothing Hotspoto function The hotspot function is used for user interaction on the screen, so a user can select a hotspot (by cursor or pointer control) to interact with the PCP. The ID number (128 .. 143) of a selected hotspot shall be stored in the Input__data register. The area within the indicated co ordinates (top, bottom, left, right) shall be highlighted. Highlighting can be done e.g. by drawing a frame around the selected hotspot area, or by changing the contrast within the selected area. The playback device can chose frame thickness and color. Such highlighting is recommended to have two views, one when the pointer is inside the hotspot area or one when the hotspot is selected. If more hotspot areas contain the point selected, (in the case of overlapping selection areas) then the selection area with the lowest ID number shall be returned in the Input data register. A hotspot is enabled when all area values are valid defined by (all values >=0 and within the screen area, and bottom >= top, and right >= left). If a hotspot is disabled then all hotspot area registers shall return -1. A hotspot area can be highlighted by writing a valid ID number for an enabled hotspot in the Inputdata register. If the Input-data register is set to an invalid value then it shall return -1. Userkey( functions The Userkeyo function is initiated by an user interaction pressing an enabled key. The key is enabled if the corresponding Userkey-mask bit is set to 1. The function returns the Key number value in the Inputdata register as defined in the table below: WO 01/35416 27 PCT/EPOO/11114 Key Userkey-mask bits User Key number (msb..lsb) description 0 %0000 0000 0000 0001 Numeric key 0 1 %0000 0000 0000 0010 Numeric key 1 2 %0000 0000 0000 0100 Numeric key 2 3 %0000 0000 0000 1000 Numeric key 3 4 %0000 0000 0001 0000 Numeric key 4 5 %0000 0000 0010 0000 Numeric key 5 6 %0000 0000 0100 0000 Numeric key 6 7 %0000 0000 1000 0000 Numeric key 7 8 %0000 0001 0000 0000 Numeric key 8 9 %0000 0010 0000 0000 Numeric key 9 10 %0000 0100 0000 0000 Up key 1 11 %0000 1000 0000 0000 Down key d 12 %0001 0000 0000 0000 Left key 13 %0010 0000 0000 0000 Right key -> 14 %0100 0000 0000 0000 Enter key .J 15 %1000 0000 0000 0000 Trigger key * Timer(time) function This function is called when the Timerdata register is set. The timer is started when the Timer-data register is set to a value that is >0 (in units of 1/10 sec), and decrement the register value each 1/10 second until it reaches 0, when the timer is stopped. If the Timerdata register is set to 0, then the timer shall be stopped. Error handling 5 Errors are handled by the Error handler, that can choose to skip the current command or to end the PCP playback. The location of the Error handler command block is stored in a dedicated register. The error handler returns to the next command (skip) by a return command, and ends the PCP playback by calling an End() function. Different types of errors that can occur during the PCP playback. The error code can be read from the Errorcode 0 register. Error Error type Description code 0 void No error 1 Read error Disc damaged 2 Access error Sector address not found 3 File error Wrong PIN number 4 Invalid File An invalid Filenumber was set. number 5 Command code Command code not valid error 6 Command index Command index out of range 7 Execution error Divide by 0 8 Invalid register A reserved register was addressed 9 Invalid Disc A Discnumber > Disccount was set. number else reserved WO 01/35416 28 PCT/EPOO/11114 OGTrendering function This function is an optional extension. If it is not supported then it shall return -2 in the OGTjimage register. This function is called when the OGT-image register is set to a filenumber of a 5 Filedirectoryrecord in the FRT file. The image data of the file shall be rendered into a selected Hotspot area. Parts of the image area outside the hotspot selection area shall be discarded (cropped). Normally OGT can only be used when playing a movie file. This function can be used to overlay selectable OGT images on still pictures and menus. This is useful to interact with the user without loading a new picture and 10 can also be selective on language preferences. PCP Command definitions All commands are 5 bytes. The first byte is an opcode, and the following 4 bytes shall be operands. The PCP interpreter shall execute the command as defined by the opcode and 15 operands in the Table below. Most commands are conditional, depending on the value of one or two variables, meaning that the command shall only be executed if the condition is TRUE. A variable value or Register setting in the Variable Array can be written by a command, and reading a value is done by a conditional test. The registers are referenced by R[index]. Commands are referenced by Cmd[index], where the index is a value >0 relative to the 20 beginning of the current Function Block FB.
WO 01/35416 29 PCT/EPOO/11114 Command codes byte #1 opcode byte Byte byte byte msb lsb #2 #3 #4 #5 7..A 5..3 2..0 Opcode name 'C code like description 00 condl xxx i dd dd calculatel xxx if cond1 { R[j]=R[j] opcode(xxx) dddd 01 condi xxx i j k I calculate2 xxx if cond1 { RU]=R[k] opcode(xxx) R[1] } 10 cond1 000 i -- k I move if condl I R[k]=R[l] } 10 cond2 001 i j k 1 move if cond2 { R[k]=R[l] 10 condl 010 i j dd dd set const if condl I RUI=dddd } 10 cond I 011 i j dd dd set random if cond l { RU]=random value; 0<=R[j]<=dddd ); if (dddd=$0000) (randomize/change seed} 10 000 100 i j dd dd fill for (n=j; n<j+i; ++n) {R[n]=dddd } 11 cond1 000 i -- idx idx jump if condl {jump to Cmd[idx]) I I cond2 001 i j idx idx jump if cond2 (jump to Cmd[idx]} I I condl 100 i -- idx idx loop] if cond I{ --R[i]; jump to Cmd[idx] } 1 cond2 101 i j idx idx loop2 if cond2 { --R[i]; jump to Cmd[idx]} 11 condl 110 i j idx idx loop3 ifcond I { --R[i]; -- R[j]; jump to Cmd[idx]) Notel: If an index or other value is out of range then an ExceptionError shall be executed. Note2: bit 7 is msb and bit 0 is Isb. 5 Note3: if all bytes #1 to #5 are equal to 0 then execution skipped as a No Operation ( NOP). operand symbols In the PCP opcode and operand definition table special symbols are used for different definitions as specified in the following table. symbols length Meaning i,j, k, I 1 byte These letters are used to index variables ( e.g. variable with index i is R[i]); If i identifies a is reserved variable then opcode instruction is not executed dddd 2 bytes a signed 16-bit constant. where bvte#4 is the msb and byte#5 lsb cond1 3 bits Test for execution; if the test fails then jump to next Command else execute the opcode cond2 idx 2 bytes Used for jump to a command with index = idx xxx bits See separate definition table for meaning -- 1 byte Byte is not used (VOID) 10 opcode conditions Reading Array variables is done by a conditional test. If a condition is not TRUE then the next command entry shall be executed. The cond_1 test compares a variable R[i) compared to 0, and the cond_2 test compares the relation between two variables R[i] and RU] as defined below. 15 bit 5..3 cond_1 semantics cond_2 semantics msb..lsb I I %000 True R[i]==j %001 R[i]>0 R[i]>R[j] %010 R[i]<0 R[i]<RU] %011 R[i]==0 R[i]==R[j] %101 R[i>=0 R[i]>=R[j] %110 R[il<=o R[i]<=R[j] WO 01/35416 30 PCT/EPOO/11114 opcode function definitions calculate_1 function -- If cond1 TRUE then variable R[j] indexed by byte #3 is set the outcome of calculation with the constant = dddd, defined by bytes #4 and #5, where byte #4 is MSB. The type of calculation is specified by the opcode(xxx) bits 2..0, as in table below. 5 calculate_2 function -- If cond2 TRUE then variable R[j] indexed by byte #3 is set the outcome of calculation of variable R[k] defined by byte #4 and R[l] defined by byte #5. The type of calculation is specified by the opcode(xxx) bits 2..0, as shown below. xxx bits 2.. Meaning Note example C-code if R[k]=15 and R[l]=7 then m s b ...ls b M I N o t e I %000 ADD addition Rj]=R[k] + R[l] R[j]= 22 %001 SUB subtraction R[j]=R[k] - R[l] R[j]= 8 %010 MUL multiplication RUj=R[k) * R[l] RU]= 105 %011 DIV integer division R[j)=R[k] / R[l] R[j)= 2 %100 MOD modulo division RU]=R[k] % R[l] R[j]= I %101 AND logical AND RU]=R[k] & R[l] RUI= 7 %110 OR logical OR R[j]=R[k] R[l] RUI= 15 %111 XOR logical XOR R[j]=R[kl ^ R[ll RU= 8 Note There is no carry flag for variable wrap around indication. 10 move function -- The variable R[k] indexed by byte #4 is set equal to the variable R[k] indexed by byte #5. set function -- The variable R[j] indexed by byte #3 is set to value dddd defined by byte #4 15 and #5. random function -- The variable R[j] indexed by byte #3 is set to a random value between 0 (zero) and dddd defined by byte #4 and #5. If dddd=0 then randomize the random generator. 20 fill function -- Fill N variables starting from R[j] with dddd defined by byte #4 and #5, where N is equal the value of R[i] indexed by byte #2 jump function -- Jump immediate to a command with index = idx defined by byte #4 and #5. 25 loop_1 function -- Decrement R[i], defined by byte #2, and cond#1 true then jump to the command with index = idx defined by byte #4 and #5. loop_2 function -- Decrement R[i], defined by byte #2, and if cond#2 true then jump to the 30 command with index = idx defined by byte #4 and #5. loop_3 function -- Decrement R[i], defined by byte #2 and decrement R[j], defined by byte #3, and cond#1 true then jump to the command with index = idx defined by byte #4 and #5. Programming examples 35 This section is informative. E -- I |

Claims (11)

1. Record carrier (1) comprising information organized in a plurality of files containing audio visual data (11) and playback control data (12) for controlling playback of the audiovisual data on a playback device while enabling user interaction, the information further comprising priority information (priority), indicating the relative priority with which 5 the files are to be stored in a cache memory (39) of the playback device.
2. Record carrier according to claim 1, characterized in that the priority information (priority) is contained in a single file (FRT). 0
3. Record carrier according to claim 1, characterised in that the priority information (priority) is related to an estimated frequency with which the said data is accessed.
4. Record carrier according to claim 1, characterised in that the control data is .5 comprised in a control program (PCP) which comprises references to menus, and that the data representing the control program and the menus has a relatively high priority.
5. Playback device for playback of a record carrier (1) comprising information organized in a plurality of files containing audiovisual data (11) and playback control data 2O (12) for controlling playback of the audiovisual data while enabling user interaction, the playback device comprising read means (20) for reading the data from a record carrier, a cache memory (39) for storing data from the record carrier, user input means (40,41) for receiving user input, control means (30) for processing the control data, and reproduction means (51-54) for reproducing the audio visual data, the device being adapted to read priority 25 information (priority) and to store files into the cache memory with a priority determined by this priority information. WO 01/35416 32 PCT/EPOO/11114
6. Playback device according to claim 5, characterized by means for rewriting the priority information at the record carrier in accordance with the frequency with which the files are actually accessed by a user.
7. Method for playback of a record carrier (1) comprising information organized 5 in a plurality of files containing audiovisual data and playback control data for controlling playback of the audiovisual data while enabling user interaction, which method comprises the steps of a. determining whether a cache memory (39) does have sufficient unoccupied space (S5), 10 aa. if it is determined that the cache memory (39) does not have sufficient unoccupied space, then determining whether the cache memory does have space sufficiently large which is occupied by one or more further data files having a priority value lower than the priority value of the first data file (S6), aaa. if the outcome of step aa is true, then overwriting said one or more further data 15 files by the first data file (S7),
8. Method for playback according to claim 7, characterised in that if the outcome of step a is true then ab determining whether the first data file has a priority value higher than a 20 predetermined value, aba if the outcome of step ab is true then loading the first data unit from the record carrier into the cache memory,
9. Method for playback of a record carrier comprising information organized in a 25 plurality of files containing audiovisual data and playback control data for controlling playback of the audiovisual data while enabling user interaction, which method comprises a procedure for loading files in a cache memory comprising the steps of d setting a reference priority value (PR),(step S10), e for a plurality of files examining whether a priority value assigned thereto is 30 higher than the reference priority value (step S12) ea if the outcome of step e is true examining whether the cache memory comprises sufficient space for storing the said data unit (step S13), eaa if the outcome of step ea is true then loading said data unit into said space (step S 14), WO 01/35416 33 PCT/EPOO/11114 f reducing the reference priority value (S 17), g determining whether the reference priority value is greater than or equal to a bottom priority value (S 18), ga repeating steps d to g if the outcome of step g is true. 5
10. Device for recording a record carrier (1) comprising information organized in a plurality of files containing audio visual data (11) and playback control data (12) for controlling playback of the audiovisual data on a playback device while enabling user interaction, the information further comprising priority information (priority), indicating the 10 relative priority with which the files are to be stored in a cache memory (39) of the playback device, the playback device comprising means for obtaining the audiovisual data, means for composing the control data, 15 priority determining means for determining the priority information, formatting means for formatting the audiovisual data and the control data into files, recording means for recording the information comprising the priority information, the audiovisual data and the control data at the record carrier. 20
11. Method for recording a record carrier (1) comprising information organized in a plurality of files containing audio visual data (11) and playback control data (12) for controlling playback of the audiovisual data on a playback device while enabling user interaction, the information further comprising priority information (priority), indicating the relative priority with which the files are to be stored in a cache memory (39) of the playback 25 device, the method comprising the steps of - obtaining the audiovisual data, - composing the control data, - determining the priority information, 30 - formatting the audiovisual data and the control data into files, - storing the information comprising the priority information, the audiovisual data and the control data at the record carrier.
AU19997/01A 1999-11-10 2000-11-09 Record carrier, device for playing back a record carrier, method for playing back a record carrier, device for recording a record carrier and method for recording a record carrier Ceased AU771314B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP99203754 1999-11-10
EP99203754 1999-11-10
PCT/EP2000/011114 WO2001035416A2 (en) 1999-11-10 2000-11-09 Record carrier, device and method for playing back a record carrier, device for recording a record carrier

Publications (2)

Publication Number Publication Date
AU1999701A true AU1999701A (en) 2001-06-06
AU771314B2 AU771314B2 (en) 2004-03-18

Family

ID=8240848

Family Applications (1)

Application Number Title Priority Date Filing Date
AU19997/01A Ceased AU771314B2 (en) 1999-11-10 2000-11-09 Record carrier, device for playing back a record carrier, method for playing back a record carrier, device for recording a record carrier and method for recording a record carrier

Country Status (8)

Country Link
EP (1) EP1145247A2 (en)
JP (1) JP2003514335A (en)
KR (1) KR20020007288A (en)
CN (1) CN1344413A (en)
AU (1) AU771314B2 (en)
ID (1) ID30033A (en)
TW (1) TW548640B (en)
WO (1) WO2001035416A2 (en)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7088910B2 (en) * 2001-02-09 2006-08-08 Microsoft Corporation Optimizing use of storage space in a video data recording system
CN100418151C (en) * 2002-10-17 2008-09-10 三星电子株式会社 Information storage medium including device-aspect-ratio information, method and apparatus therefor
KR20040076313A (en) * 2003-02-25 2004-09-01 이승룡 Method of Seperated Buffer cache Management
JP2007506388A (en) * 2003-09-25 2007-03-15 サムスン エレクトロニクス カンパニー リミテッド Audio and video data display apparatus and display method, and recording medium on which program for performing the method is recorded
RU2345428C2 (en) * 2003-09-25 2009-01-27 Самсунг Электроникс Ко., Лтд. Photo and video data display unit and method
TW200518070A (en) 2003-10-10 2005-06-01 Matsushita Electric Ind Co Ltd Recording medium, reproduction device, program, and reproduction method
JP4345559B2 (en) * 2004-04-15 2009-10-14 ソニー株式会社 Information processing apparatus, information processing method, program, and program recording medium
KR100677132B1 (en) * 2004-09-09 2007-02-02 삼성전자주식회사 Storage medium recording multimedia data for reproduction of audio-visual data and programming function, and reproducing apparatus and method thereof
EP1669855A1 (en) * 2004-12-02 2006-06-14 Deutsche Thomson-Brandt Gmbh Method for generating multi-language menus
JP4349277B2 (en) 2004-12-24 2009-10-21 株式会社日立製作所 Movie playback device
JP2006180306A (en) 2004-12-24 2006-07-06 Hitachi Ltd Moving picture recording and reproducing apparatus
KR20060131610A (en) * 2005-06-15 2006-12-20 엘지전자 주식회사 Recording medium, method and apparatus for mixing audio data
JP2007011564A (en) * 2005-06-29 2007-01-18 Sony Corp Recording device and method, program, and program recording medium
KR100723512B1 (en) * 2005-11-23 2007-05-30 삼성전자주식회사 Cache buffer control method and disk drive using the same
US8355305B1 (en) * 2011-07-14 2013-01-15 Disney Enterprises, Inc. System and method for initialization of media asset modules for improved execution sequence on a playback environment

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2517863B1 (en) * 1981-12-09 1992-03-13 Moulene Daniel INFORMATION PROCESSING APPARATUS
US5008820A (en) * 1987-03-30 1991-04-16 International Business Machines Corporation Method of rapidly opening disk files identified by path names
JPH02139783A (en) * 1988-11-18 1990-05-29 Alpine Electron Inc Compact disk player
JPH0554085A (en) * 1991-08-28 1993-03-05 Fuji Xerox Co Ltd Moving image retrieval supporting device
JP3136036B2 (en) * 1993-11-16 2001-02-19 富士通株式会社 Control method of disk controller
WO1998009290A1 (en) * 1996-08-29 1998-03-05 Philips Electronics N.V. Playback control in digital video disc players
JP4295837B2 (en) * 1997-03-20 2009-07-15 ソニー株式会社 Data reproducing apparatus and data reproducing method

Also Published As

Publication number Publication date
EP1145247A2 (en) 2001-10-17
KR20020007288A (en) 2002-01-26
CN1344413A (en) 2002-04-10
ID30033A (en) 2001-11-01
AU771314B2 (en) 2004-03-18
WO2001035416A2 (en) 2001-05-17
JP2003514335A (en) 2003-04-15
WO2001035416A3 (en) 2001-11-01
TW548640B (en) 2003-08-21

Similar Documents

Publication Publication Date Title
CN101646094B (en) Recording device, recording method and reproduction method
AU771314B2 (en) Record carrier, device for playing back a record carrier, method for playing back a record carrier, device for recording a record carrier and method for recording a record carrier
KR100788655B1 (en) Storage medium recorded text-based subtitle data including style information thereon, display playback device and display playback method thereof
CN101777372B (en) Reproduction device and reproduction method
US8032007B2 (en) Reading device, program, and reading method
US20060146660A1 (en) Optical disc, reproducing device, program, reproducing method, recording method
US20040047588A1 (en) Package medium, reproduction apparatus, and reproduction method
US20090016700A1 (en) Recording medium, program, and reproduction method
US8184944B2 (en) Recording medium, recording device, recording method, and playback device
KR101227289B1 (en) Video information reproduction method, video information reproduction device, recording medium, and video content
US8582960B2 (en) Storage medium storing moving-image data that includes mode information, and reproducing apparatus and method
WO2006019000A1 (en) Reproduction device, reproduction method, reproduction program, recording medium, and data structure
US8341526B2 (en) Method of reproducing interactive graphic streams from information storage medium
KR20070014946A (en) Method and apparatus for presenting data and recording data and recording medium
US20070110400A1 (en) Apparatus for reproducing data and method thereof
RU2367035C2 (en) Method and device for playing back files of streams of text subtitles
RU2377668C2 (en) Recording medium and method and device for playing back and recording text subtitle streams
JP2004007518A (en) Package medium, reproducing device and reproducing method
US20050094973A1 (en) Moving picture reproducing apparatus in which player mode information is set, reproducing method using the same, and storage medium
KR20090017386A (en) Information storage medium, reproducing apparatus, and reproducing method
KR20070092086A (en) Method and apparatus for reproducing data, recordim medium and, method and apparatus for recording data
JP2002100165A (en) Optical disk reproducing device
KR20070092080A (en) Method and apparatus for reproducing recording medium, recording medium and method and apparatus for recording recording medium
KR20070014947A (en) Method and apparatus for presenting data and recording data and recording medium
WO2007024077A2 (en) Apparatus for reproducing data, method thereof, apparatus for recording the same, method thereof and recording medium

Legal Events

Date Code Title Description
FGA Letters patent sealed or granted (standard patent)