KR100584563B1 - Computer readable medium recoding program code for reproducing Audio-Visual data in interactive mode by preloading markup document - Google Patents
Computer readable medium recoding program code for reproducing Audio-Visual data in interactive mode by preloading markup document Download PDFInfo
- Publication number
- KR100584563B1 KR100584563B1 KR1020030058893A KR20030058893A KR100584563B1 KR 100584563 B1 KR100584563 B1 KR 100584563B1 KR 1020030058893 A KR1020030058893 A KR 1020030058893A KR 20030058893 A KR20030058893 A KR 20030058893A KR 100584563 B1 KR100584563 B1 KR 100584563B1
- Authority
- KR
- South Korea
- Prior art keywords
- markup document
- preload
- program code
- data
- dvd
- Prior art date
Links
- 230000002452 interceptive effect Effects 0.000 title claims abstract description 43
- 239000000872 buffer Substances 0.000 claims abstract description 86
- 230000003139 buffering effect Effects 0.000 claims abstract description 50
- 238000000034 method Methods 0.000 claims abstract description 48
- 230000036316 preload Effects 0.000 claims description 160
- 230000004044 response Effects 0.000 claims description 15
- 238000012795 verification Methods 0.000 claims 1
- 230000007257 malfunction Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 21
- 238000012217 deletion Methods 0.000 description 18
- 230000037430 deletion Effects 0.000 description 18
- 230000006870 function Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 206010048909 Boredom Diseases 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2355—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B23/00—Record carriers not specific to the method of recording or reproducing; Accessories, e.g. containers, specially adapted for co-operation with the recording or reproducing apparatus ; Intermediate mediums; Apparatus or processes specially adapted for their manufacture
- G11B23/38—Visual features other than those contained in record tracks or represented by sprocket holes the visual signals being auxiliary signals
- G11B23/44—Information for display simultaneously with playback of the record, e.g. photographic matter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4431—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
- G11B2020/10675—Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
- G11B2020/10731—Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control wherein the buffer I/O can be temporarily suspended, e.g. by refusing to accept further data to be buffered
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
- G11B2020/1075—Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data
- G11B2020/10759—Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data content data
- G11B2020/10768—Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data content data by pre-caching the initial portion of songs or other recorded or downloaded data for starting playback instantly
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/25—Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
- G11B2220/2537—Optical discs
- G11B2220/2562—DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs
Abstract
본 발명은 마크업 문서의 버퍼 상태를 제어하기 위한 정보가 기록된 정보저장매체, 그 재생 장치 및 재생 방법에 관한 것이다.The present invention relates to an information storage medium having recorded thereon information for controlling a buffer state of a markup document, a reproduction apparatus and a reproduction method thereof.
본 발명에 따른 마크업 문서를 프리로드하여 AV 데이터를 인터렉티브 모드로 재생하는 방법을 수행하기 위한, 컴퓨터에 의해 실행가능한 프로그램 코드가 기록된 정보저장매체는 상기 마크업 문서를 프리로드하기 위한 버퍼링을 수행하기 위한 제1 프로그램 코드; 및 상기 마크업 문서의 버퍼링이 완료되었는지 여부에 대한 정보를 출력하기 위한 제2 프로그램 코드를 포함하는 것을 특징으로 한다. 이에 따라, DVD에 기록된 AV 데이터를 재생하여 마크업 문서를 통해 디스플레이하는 경우 동영상 화면과 연관된 마크업 문서를 디스플레이하고자 할 때, 마크업 문서의 버퍼링 상태를 조사할 수 있으므로, 디스크의 물리적 파손 또는 네트워크의 오동작(연결 끊김)에 따라 마크업 문서를 버퍼링할 수 없게 되었을 때, 즉, 재생과 다운로드 지연 현상과 같은 오동작 발생시에도 대체 마크업 문서를 활용하거나 자연스러운 넘기기 동작이 가능하게 된다.In order to perform a method of preloading a markup document according to the present invention and reproducing the AV data in the interactive mode, an information storage medium having recorded thereon program code executable by a computer is provided with buffering for preloading the markup document. First program code for performing; And second program code for outputting information on whether or not buffering of the markup document is completed. Accordingly, when the AV data recorded on the DVD is reproduced and displayed through the markup document, when the markup document associated with the movie screen is to be displayed, the buffering state of the markup document can be examined, thereby preventing physical damage of the disc or When a markup document cannot be buffered due to a network malfunction (disconnection), that is, even when a malfunction such as playback and download delay occurs, an alternative markup document may be utilized or a natural flipping operation may be performed.
Description
도 1은 AV 데이터가 기록된 인터렉티브 DVD의 개략도,1 is a schematic diagram of an interactive DVD in which AV data is recorded;
도 2는 도 1의 인터렉티브 DVD를 재생하는 과정에서 발생될 수 있는 끊김현상을 설명하기 위한 참고도,FIG. 2 is a reference diagram for explaining a disconnection phenomenon that may occur in the process of playing the interactive DVD of FIG. 1;
도 3은 프리로드 또는 삭제를 수행하는 재생 장치의 블록도,3 is a block diagram of a playback device for preloading or deleting;
도 4는 프리로드 또는 삭제를 지원하는 DVD(300)의 디렉토리 구조를 도시한 참고도,4 is a reference diagram illustrating a directory structure of a
도 5는 프리로드 또는 삭제를 지원하는 DVD(300)의 볼륨 공간(Volume Space)의 개략도,5 is a schematic diagram of a volume space of the
도 6은 프리로드 또는 삭제가 수행되는 과정을 설명하기 위한 플로우챠트,6 is a flowchart illustrating a process in which preloading or deletion is performed;
도 7은 도 6의 프리로드 정보 해석단계(602단계)의 일 구현예,FIG. 7 is an embodiment of preload
도 8은 도 6의 프리로드 대상 파일의 프리로드 실행단계(603단계)의 일 구현예,FIG. 8 is an embodiment of preload execution step (603) of a preload target file of FIG. 6;
도 9a는 도 6의 프리로드 대상 파일의 프리로드 실행단계(603단계)의 다른 구현예,FIG. 9A illustrates another implementation of the preload execution step (603) of the preload target file of FIG. 6; FIG.
도 9b는 도 6의 프리로드 대상 파일의 프리로드 실행단계(603단계)의 또 다른 구현예,FIG. 9B is another embodiment of a preload execution step (step 603) of the preload target file of FIG. 6; FIG.
도 10은 메모리에 저장된 프리로드 대상 파일 중 적어도 하나를 삭제하는 과정을 설명하기 위한 플로우챠트,10 is a flowchart illustrating a process of deleting at least one of a preload target file stored in a memory;
도 11은 도 10의 삭제 실행단계(1002단계)의 일 구현예,FIG. 11 is an embodiment of a deleting execution step (step 1002) of FIG. 10;
도 12는 도 1과 동일한 순서로 AV 데이터 및 HTML 문서가 기록되어 있을 때 본 발명에 따른 프리로드 수행에 의한 효과를 설명하기 위한 참고도,12 is a reference diagram for explaining an effect of performing preloading according to the present invention when AV data and HTML document are recorded in the same order as in FIG. 1;
도 13 및 14는 본 발명의 바람직한 실시예에 따른 재생 장치의 블록도,13 and 14 are block diagrams of a playback apparatus according to a preferred embodiment of the present invention;
도 15는 본 발명에 따라 버퍼 매니저가 ENAV 버퍼의 마크업 문서의 버퍼링 상태를 매니징하는 과정을 보여주는 개념도,15 is a conceptual diagram illustrating a process of a buffer manager managing a buffering state of a markup document of an ENAV buffer according to the present invention;
도 16은 본 발명의 바람직한 실시예에 따라 컨텐트 디코더와 버퍼 매니저에 의해 실행되는 버퍼 상태 제어 방법을 설명하는 플로우챠트이다.16 is a flowchart for explaining a method of controlling a buffer state executed by a content decoder and a buffer manager according to a preferred embodiment of the present invention.
도 17은 본 발명의 바람직한 실시예에 따라 AV 데이터와 마크업 문서가 기록된 디스크의 개략도,17 is a schematic diagram of a disc on which AV data and a markup document are recorded according to a preferred embodiment of the present invention;
도 18은 도 17과 같이 AV 데이터와 마크업 문서가 기록된 디스크의 디렉토리 구조도,FIG. 18 is a directory structure diagram of a disk on which AV data and markup documents are recorded as shown in FIG. 17;
도 19는 도 17에 따른 디스크의 볼륨 구조와 파일 구조를 보여주는 구조도,19 is a structural diagram showing a volume structure and a file structure of a disk according to FIG. 17;
도 20은 본 발명에 따라 도 17의 디스크에 저장된 마크업 문서 데이터와 AV 데이터가 재생되는 과정을 보여준다.20 illustrates a process of reproducing markup document data and AV data stored in the disk of FIG. 17 according to the present invention.
본 발명은 마크업 문서의 버퍼 상태를 제어하기 위한 정보가 기록된 정보저장매체, 그 재생 장치 및 재생 방법에 관한 것이다.The present invention relates to an information storage medium having recorded thereon information for controlling a buffer state of a markup document, a reproduction apparatus and a reproduction method thereof.
컨텐트와 함께 마크업 문서가 기록된 DVD(이하 "인터렉티브 DVD"라 함)가 판매되고 있다. 인터렉티브 DVD에 기록된 컨텐트는 두 가지 방법으로 재생될 수 있다. 하나는 일반 DVD와 동일하게 디스플레이되는 비디오 모드이고, 다른 하나는 마크업 문서에 의해 정의되는 표시창을 통해 디스플레이되는 인터렉티브 모드이다. 사용자에 의해 인터렉티브 모드가 선택되면 PC에 탑재된 웹브라우저는 인터렉티브 DVD에 기록되어 있는 마크업 문서를 디스플레이한다. 마크업 문서에 의해 정의되는 표시창에는 사용자가 선택한 컨텐트가 표시된다.DVDs having recorded markup documents along with their contents (hereinafter referred to as "interactive DVD") are sold. Content recorded on an interactive DVD can be played back in two ways. One is a video mode displayed like a normal DVD, and the other is an interactive mode displayed through a display window defined by a markup document. When the interactive mode is selected by the user, the web browser mounted on the PC displays the markup document recorded on the interactive DVD. The display window defined by the markup document displays the content selected by the user.
예를 들어, 컨텐트가 AV 데이터인 영화일 경우 마크업 문서의 표시창에는 영화가 상영되고 나머지 부분에는 대본, 줄거리, 출연배우의 사진, 등 다양한 부가정보가 표시될 수 있다. 부가정보는 이미지파일 또는 텍스트파일을 포함한다.For example, when a content is a movie having AV data, a movie may be displayed on a display window of a markup document, and various additional information such as a script, a storyline, a photograph of an actor, and the like may be displayed on the remaining portion. The additional information includes an image file or a text file.
도 1은 AV 데이터가 기록된 인터렉티브 DVD의 개략도이다.1 is a schematic diagram of an interactive DVD in which AV data is recorded.
도 1을 참조하면, 인터렉티브 DVD의 트랙에는 AV 데이터가 MPEG 비트스트림으로 기록되어 있고 복수개의 마크업 문서가 기록되어 있다. 여기서, 마크업 문서는 마크업 문서에 삽입되는 다양한 이미지 파일, 그래픽 파일 등을 망라한 마크업 리소스(resource)를 의미한다.Referring to Fig. 1, AV data is recorded in an MPEG bitstream and a plurality of markup documents are recorded in a track of an interactive DVD. Here, the markup document refers to a markup resource including various image files, graphic files, and the like inserted into the markup document.
도 2는 도 1의 인터렉티브 DVD를 재생하는 과정에서 발생될 수 있는 끊김현상을 설명하기 위한 참고도이다.FIG. 2 is a reference diagram for describing a disconnection phenomenon that may occur in the process of playing the interactive DVD of FIG. 1.
도 2를 참조하면, AV 데이터가 버퍼링되는 버퍼 메모리의 상태(occupancy)와 웹 리소스가 캐싱되는 캐시 메모리의 상태가 표시되어 있다. 도 1과 도 2를 참조하여 AV 데이터가 메모리에 로드되어 디스플레이되는 과정을 살펴보면, 픽업장치는 STARTUP.HTM을 탐색하고 독출하여 캐시 메모리에 로드한다. 로드된 STARTUP.HTM은 활성화된다. 이와 동시에 사용자의 선택에 따른 ① AV 데이터가 버퍼 메모리로 로드된 다음 디스플레이되기 시작한다. 이어서 ② AV 데이터가 로드되어 디스플레이된다. ② AV 데이터의 버퍼링이 완료되면 픽업장치는 ③ AV 데이터가 기록된 위치로 점프하여 버퍼링을 시작한다. 이 때, 사용자가 ④ A.HTM를 요구하면 픽업장치는 ③ AV 데이터에 대한 버퍼링을 중단하고 ④ A.HTM을 탐색하여 캐시 메모리로 로드한다. 그 동안에도 ③ AV 데이터는 계속 디스플레이되기 때문에 버퍼 메모리에 로드되어 디스플레이가능한 데이터는 급격히 줄어들게 된다. ④ A.HTM이 활성화되고 ③ AV 데이터의 버퍼링이 완료된 다음 이어서 ⑤ AV 데이터를 버퍼링한다. ⑤ AV 데이터의 버퍼링이 완료되면 픽업장치는 ⑥ AV 데이터가 기록된 위치로 점프한다. 이와 같은 경우, 버퍼링되어 있던 데이터가 모두 소진되는 현상이 발생할 수 있다. 즉, 종래 인터렉티브-DVD에 있어서, DVD-Video의 영상과 마크업 문서가 서로 동기되어 보여져야 할 경우(예: 특정 배우가 등장하면 그 배우에 대한 약력이 표시되는 경우) 픽업장치는 AV 데이터의 버퍼링을 중단하고 대응 마크업 문서를 탐색하여 캐싱해야 하기 때문에 영상이 갑자기 끊어지는 현상이 발생될 수 있다.Referring to FIG. 2, the state of the buffer memory where the AV data is buffered and the state of the cache memory where the web resource is cached are displayed. Referring to FIGS. 1 and 2, the AV data is loaded into the memory and displayed, and the pickup apparatus searches for, reads, and loads STARTUP.HTM into the cache memory. The loaded STARTUP.HTM is activated. At the same time, ① AV data according to the user's selection is loaded into the buffer memory and then started to be displayed. ② AV data is then loaded and displayed. When the buffering of the AV data is completed, the pickup device jumps to the position where the AV data is recorded and starts buffering. At this time, if the user requests ④ A.HTM, the pickup device stops buffering 3 AV data and searches ④ A.HTM and loads it into the cache memory. In the meantime, since AV data is continuously displayed, the data that can be loaded and displayed in the buffer memory is drastically reduced. ④ A.HTM is activated, ③ AV data is buffered, and then ⑤ AV data is buffered. When the buffering of the AV data is completed, the pickup device jumps to the position where the AV data is recorded. In this case, a phenomenon may occur that all the buffered data is exhausted. That is, in the conventional interactive DVD, when the image of the DVD-Video and the markup document are to be viewed in synchronization with each other (for example, when a specific actor appears, a bio about the actor is displayed), the pickup apparatus is used to display the AV data. The image may be suddenly broken because the buffering must be stopped and the corresponding markup document must be searched and cached.
이에, 본 출원인은 2002년 9월 19일자로 한국특허출원 제02-57393호 "프리로드 정보가 기록된 정보저장매체, 그 재생 장치 및 재생 방법"을 출원한 바 있다. 여기에는 마크업 문서를 사용하여 소정 컨텐트를 인터렉티브 모드로 재생함에 있어서 컨텐트의 끊김현상이 발생되지 않도록 해주는 <프리로드>가 개시되어 있다. 다만, <프리로드>에 의하면, 프리로드 대상 파일 전체를 프리로드할 경우에는 문제가 없으나, 전체 프리로드 대상 파일 중, 적어도 일부를 제대로 읽어 들이지 못할 경우 모두 프리젠테이션할 수 없는 상황이 발생할 수 있다.Accordingly, the applicant has filed on September 19, 2002, Korean Patent Application No. 02-57393, "Information storage medium on which preload information is recorded, its reproducing apparatus, and a reproducing method." Herein, <Preload> is disclosed to prevent content dropout when playing a predetermined content in an interactive mode using a markup document. However, according to the <preload>, there is no problem when preloading the entire preload target file, but if at least a part of the entire preload target file is not properly read, a situation may occur in which all of the preload target files cannot be presented. .
따라서, 본 발명의 목적은 프리로드를 수행함에 있어 프리로드 대상 파일 중 적어도 일부를 제대로 프리로드하지 못할 경우라하더라도 적절히 프리젠테이션이 가능하도록 마크업 문서의 버퍼링 상태를 제어할 수 있는 제어 정보가 기록된 정보저장매체, 그 재생 장치 및 재생 방법을 제공함에 있다.Accordingly, an object of the present invention is to record the control information for controlling the buffering state of the markup document so that the presentation can be properly performed even when at least some of the preload target files are not properly preloaded. An information storage medium, a reproducing apparatus, and a reproducing method thereof are provided.
상기 목적은 본 발명에 따라, AV 데이터를 마크업 문서를 사용하여 인터렉티브 모드로 재생하는 재생 장치에 있어서, 상기 마크업 문서를 버퍼링하는 버퍼; 및 상기 버퍼를 관리하여 상기 마크업 문서를 프리로드하는 버퍼 매니저를 포함하고, 상기 버퍼 매니저는 report 신호에 응답하여 상기 버퍼의 버퍼링 상태 정보를 출력하는 것을 특징으로 하는 재생 장치에 의해서 달성된다.According to the present invention, there is provided a reproduction apparatus for reproducing AV data in an interactive mode using a markup document, comprising: a buffer for buffering the markup document; And a buffer manager for managing the buffer to preload the markup document, wherein the buffer manager outputs buffering state information of the buffer in response to a report signal.
상기 재생 장치는 상기 마크업 문서를 해석하고 디코딩하며 상기 버퍼 매니저로 상기 report 신호를 발생시키는 컨텐트 디코더를 더 포함하고, 상기 버퍼 매 니저는 상기 버퍼링 상태 정보를 상기 컨텐트 디코더로 알려주는 것이 바람직하다.The playback apparatus further includes a content decoder for interpreting and decoding the markup document and generating the report signal to the buffer manager, wherein the buffer manager informs the content decoder of the buffering status information.
상기 컨텐트 디코더는 API를 이용하여 상기 report 신호를 발생시키거나, 상기 마크업 문서의 파일 경로 및 상기 마크업 문서의 속성 중 적어도 하나를 매개변수로 갖는 API를 이용하여 상기 report 신호를 발생시키거나, [obj].isCached(URL,resType) API를 이용하여 상기 report 신호를 발생시킴이 바람직하다(여기서, URL은 상기 마크업 문서의 파일 경로를 나타내는 매개변수이고, resType은 상기 마크업 문서의 속성을 나타내는 매개변수이다).The content decoder generates the report signal using an API, or generates the report signal using an API having at least one of a file path of the markup document and an attribute of the markup document as a parameter. It is preferable to generate the report signal using the [obj] .isCached (URL, resType) API (where URL is a parameter representing a file path of the markup document and resType is an attribute of the markup document). Parameter).
상기 컨텐트 디코더는 API를 통해 상기 버퍼 매니저가 대응하는 마크업 문서의 프리로드에 성공하였는지, 실패하였는지 또는 읽는 중인지를 통지받는 것이 바람직하다.Preferably, the content decoder is informed via an API whether the buffer manager has succeeded, failed, or reading the corresponding markup document.
상기 API는 상기 버퍼 매니저가 대응하는 마크업 문서의 읽기에 성공하면 0 을 반환하고, 실패하면 1을 반환하며, 읽는 중이면 2을 반환하는 것이 바람직하다.The API preferably returns 0 if the buffer manager succeeds in reading the corresponding markup document, returns 1 if it fails, and returns 2 if reading.
상기 버퍼 매니저는 상기 버퍼링 상태 정보를 API를 통해 상기 컨텐트 디코더로 알려주는 것이 바람직하다.The buffer manager preferably informs the content decoder of the buffering state information through an API.
한편, 본 발명의 다른 분야에 따르면, 상기 목적은 마크업 문서를 프리로드하여 AV 데이터를 인터렉티브 모드로 재생하는 방법에 있어서, (a) 상기 마크업 문서를 프리로드하기 위해 버퍼링하는 단계; 및 (b) report 신호에 응답하여 상기 마크업 문서의 버퍼링 상태 정보를 출력하는 단계를 포함하는 것을 특징으로 하는 재생 방법에 의해서도 달성된다.On the other hand, according to another aspect of the present invention, the object is a method for preloading the markup document to reproduce the AV data in the interactive mode, the method comprising the steps of: (a) buffering to preload the markup document; And (b) outputting buffering state information of the markup document in response to a report signal.
상기 (b)단계는 (b1) 상기 마크업 문서의 버퍼링을 관리하는 버퍼 매니저로 상기 마크업 문서를 해석하고 디코딩하는 컨텐트 디코더가 상기 report 신호를 발생시키는 단계; 및 (b2) 상기 버퍼 매니저가 상기 버퍼링 상태 정보를 상기 컨텐트 디코더로 알려주는 단계를 포함하는 것이 바람직하다.Step (b) may include: (b1) generating a report signal by a content decoder for interpreting and decoding the markup document to a buffer manager that manages buffering of the markup document; And (b2) the buffer manager notifying the content decoder of the buffering state information.
상기 (b1)단계는 상기 컨텐트 디코더가 API를 이용하여 상기 report 신호를 발생시키는 단계이거나, 상기 컨텐트 디코더가 상기 마크업 문서의 파일 경로 및 상기 마크업 문서의 속성 중 적어도 하나를 매개변수로 갖는 API를 이용하여 상기 report 신호를 발생시키는 단계이거나, 상기 컨텐트 디코더가 [obj].isCached(URL,resType) API를 이용하여 상기 report 신호를 발생시키는 단계임이 바람직하다(여기서, URL은 상기 마크업 문서의 파일 경로를 나타내는 매개변수이고, resType은 상기 마크업 문서의 속성을 나타내는 매개변수이다).In the step (b1), the content decoder generates the report signal using an API, or the content decoder uses at least one of a file path of the markup document and an attribute of the markup document as parameters. It is preferable that the report signal is generated by using or the content decoder is the step of generating the report signal by using the [obj] .isCached (URL, resType) API. Parameter indicating a file path, and resType is a parameter indicating an attribute of the markup document).
상기 (b2)단계는 상기 컨텐트 디코더가 API를 통해 상기 버퍼 매니저로부터 대응하는 마크업 문서의 읽기에 성공하였는지, 실패하였는지 또는 읽는 중인지를 상기 버퍼링 상태 정보로서 통지받는 단계이거나, 상기 API는 상기 버퍼 매니저가 대응하는 마크업 문서의 읽기에 성공하면 상기 버퍼링 상태 정보로서, 0을 반환하고, 실패하면 1을 반환하며, 읽는 중이면 2를 반환하는 단계를 포함하는 것이 바람직하다.In the step (b2), the content decoder is notified as the buffering status information whether the reading of the corresponding markup document from the buffer manager is successful, failed, or being read through the API, or the API is the buffer manager. Preferably returns 0 as the buffering state information if the reading of the corresponding markup document succeeds, and returns 2 if the reading fails.
한편, 본 발명의 다른 분야에 따르면, AV 데이터; 상기 AV 데이터를 인터랙티브 모드로 재생하기 위한 복수개의 마크업 문서; 및 상기 AV 데이터를 인터랙티브 모드로 재생하기 위해 필요한 마크업 문서를 프리로드하기 위한 버퍼링 상태 정보를 알아보기 위한 제어 정보를 포함하는 것을 특징으로 하는 정보저장매체에 의 해서도 달성된다.On the other hand, according to another field of the present invention, AV data; A plurality of markup documents for reproducing the AV data in an interactive mode; And control information for retrieving buffering state information for preloading a markup document required for reproducing the AV data in the interactive mode.
상기 제어 정보는 소정 마크업 문서에 기록되어 있거나, 상기 버퍼링 상태 정보를 알아보기 위한 report 신호를 발생시키는 API를 사용하여 기록되거나, 상기 버퍼링 상태 정보를 알아보기 위한 report 신호를 발생시키는 [obj].isCached(URL,resType) API를 사용하여 기록됨이 바람직하다(여기서, URL은 상기 마크업 문서의 파일 경로를 나타내는 매개변수이고, resType은 상기 마크업 문서의 속성을 나타내는 매개변수이다).The control information is recorded in a predetermined markup document, is recorded using an API for generating a report signal for retrieving the buffering state information, or generates an report signal for retrieving the buffering state information. It is preferably written using the isCached (URL, resType) API (where URL is a parameter representing the file path of the markup document and resType is a parameter representing the attribute of the markup document).
또한, 본 발명의 다른 분야에 따르면, 상기 목적은 AV 데이터를 마크업 문서를 사용하여 인터렉티브 모드로 재생하는 재생 장치에 있어서, 상기 마크업 문서를 버퍼링하는 버퍼; 상기 버퍼를 관리하여 상기 마크업 문서를 상기 버퍼에 프리로드하는 버퍼 매니저; 및 상기 버퍼에 버퍼링되어 있는 마크업 문서를 가져와서 해석하고 디코딩하는 컨텐트 디코더를 포함하고, 상기 버퍼 매니저는 상기 버퍼의 프리로드 완료 여부를 상기 컨텐트 디코더로 알려주는 것을 특징으로 하는 재생 장치에 의해서도 달성된다.According to another aspect of the present invention, there is provided a reproduction apparatus for reproducing AV data in an interactive mode using a markup document, comprising: a buffer for buffering the markup document; A buffer manager that manages the buffer and preloads the markup document into the buffer; And a content decoder that takes, interprets, and decodes the markup document buffered in the buffer, wherein the buffer manager informs the content decoder whether the buffer has been preloaded. do.
상기 버퍼 매니저는 상기 버퍼의 프리로드 완료 여부를 API를 사용하여 상기 컨텐트 디코더로 알려주거나, fetch 신호에 응답하여 대응하는 마크업 문서를 상기 버퍼에 프리로드하거나, 상기 컨텐트 디코더로부터의 fetch 신호에 응답하여 대응하는 마크업 문서를 상기 버퍼에 프리로드하거나, 상기 컨텐트 디코더로부터의 fetch 신호에 의한 프리로드의 완료 여부를 상기 컨텐트 디코더로 알려주는 것이 바람직하다.The buffer manager informs the content decoder whether the buffer has completed preloading by using an API, preloads a corresponding markup document into the buffer in response to a fetch signal, or responds to a fetch signal from the content decoder. It is preferable to preload a corresponding markup document to the buffer, or to inform the content decoder whether the preload is completed by a fetch signal from the content decoder.
상기 컨텐트 디코더는 API를 이용하여 상기 fetch 신호를 발생시키거나, API를 이용하여 상기 버퍼 매니저로 상기 버퍼의 프리로드 완료 여부를 확인하거나, 대응하는 마크업 문서의 프리로드가 완료되었는지 여부를 API를 사용하여 확인하거나, 상기 프리로드의 완료 여부를 [obj].allDone API를 사용하여 확인하는 것이 바람직하다.The content decoder generates the fetch signal using an API, checks whether the buffer has been preloaded to the buffer manager using the API, or checks whether the preload of the corresponding markup document is completed. It is preferable to use the [obj] .allDone API to check whether the preload is completed or not.
상기[obj].allDone API는 현재 성공 완료이면 성공을 반환하고, 그렇지 않으면 실패를 반환하는 것이 더욱 바람직하다.More preferably, the [obj] .allDone API returns success if the current success is completed, and otherwise returns failure.
한편, 본 발명의 다른 분야에 따르면, 상기 목적은 마크업 문서를 프리로드하여 AV 데이터를 인터렉티브 모드로 재생하는 방법에 있어서, (a) 상기 마크업 문서를 프리로드하기 위해 버퍼링하는 단계; 및 (b) 상기 마크업 문서의 버퍼링이 완료되었는지 여부에 대한 정보를 출력하는 단계를 포함하는 것을 특징으로 하는 재생 방법에 의해서도 달성된다.On the other hand, according to another aspect of the present invention, the object is a method for preloading the markup document to reproduce the AV data in the interactive mode, the method comprising the steps of: (a) buffering to preload the markup document; And (b) outputting information on whether or not buffering of the markup document is completed.
상기 (a)단계는 프리로드를 지시하는 fetch 신호에 응답하여 버퍼링하는 단계를 포함하는 것이 바람직하다.Step (a) preferably includes buffering in response to a fetch signal indicating a preload.
상기 (b)단계는 상기 마크업 문서의 버퍼링이 완료되었는지 여부를 확인하는 API에 응답하여 수행되거나, 상기 마크업 문서의 버퍼링이 완료되었는지 여부를 확인하는 [obj].allDone API에 응답하여 수행됨이 바람직하다.The step (b) is performed in response to an API for checking whether the buffering of the markup document is completed, or in response to an [obj] .allDone API for checking whether the buffering of the markup document is completed. desirable.
한편, 본 발명의 다른 분야에 따르면, 상기 목적은 마크업 문서를 프리로드하여 AV 데이터를 인터렉티브 모드로 재생하는 방법에 있어서, (a) fetch 신호를 사용하여 상기 마크업 문서의 프리로드를 지시하는 단계; 및 (b) 상기 fetch 신호 에 의한 프리로드 지시의 성공 여부를 응답받는 단계를 포함하는 것을 특징으로 하는 재생 방법에 의해서도 달성된다.According to another aspect of the present invention, the above object is a method of preloading a markup document and reproducing the AV data in an interactive mode, the method comprising: (a) indicating a preload of the markup document using a fetch signal; step; And (b) receiving a response indicating whether the preload instruction is successful by the fetch signal.
상기 (a)단계는 컨텐트 디코더가 API를 이용하여 상기 fetch 신호를 상기 마크업 문서의 프리로드를 수행하는 버퍼 매니저로 발생시키는 단계임이 바람직하다.In the step (a), it is preferable that the content decoder generates an fetch signal to a buffer manager which preloads the markup document using an API.
상기 (b)단계는 상기 마크업 문서의 프리로드를 수행하는 버퍼 매니저가 상기 프리로드 지시의 성공 여부를 API를 이용하여 상기 컨텐트 디코더로 알려주는 단계임이 바람직하다.In the step (b), the buffer manager for preloading the markup document informs the content decoder whether the preload instruction is successful by using an API.
또한, 상기 목적은 마크업 문서를 프리로드하여 AV 데이터를 인터렉티브 모드로 재생하는 방법에 있어서, (a) 컨텐트 디코더가 API를 이용하여 현재 프리로드를 완료하였는지 여부를 버퍼 매니저로 확인하는 단계; 및 (b) 상기 버퍼 매니저는 상기 API를 이용하여 현재 프리로드 작업을 성공 완료하였으면 상기 컨텐트 디코더로 성공을 반환하고, 그렇지 않으면 상기 컨텐트 디코더로 실패를 반환하는 단계를 포함하는 것을 특징으로 하는 재생 방법에 의해서도 달성된다.In addition, the object of the present invention is a method of preloading a markup document and playing back AV data in an interactive mode, the method comprising: (a) checking, by a buffer manager, whether a content decoder has completed a current preload using an API; And (b) returning success to the content decoder if the buffer manager has successfully completed the current preload operation using the API; otherwise, returning a failure to the content decoder. It is also achieved by
상기 API는 [obj].allDone API임이 바람직하다.Preferably, the API is [obj] .allDone API.
한편, 본 발명의 다른 분야에 따르면, 상기 목적은 마크업 문서를 프리로드하여 AV 데이터를 인터렉티브 모드로 재생하는 방법을 수행하기 위한, 컴퓨터에 의해 실행가능한 프로그램 코드가 기록된 정보저장매체에 있어서, 상기 마크업 문서를 프리로드하기 위한 버퍼링을 수행하기 위한 제1 프로그램 코드; 및 상기 마크업 문서의 버퍼링이 완료되었는지 여부에 대한 정보를 출력하기 위한 제2 프로그램 코드를 포함하는 것을 특징으로 하는 정보저장매체에 의해서도 달성된다.On the other hand, according to another field of the present invention, an object of the present invention is to provide an information storage medium in which a program code executable by a computer is recorded for performing a method of preloading a markup document to reproduce AV data in an interactive mode. First program code for performing buffering to preload the markup document; And a second program code for outputting information on whether or not buffering of the markup document is completed.
상기 제1 프로그램 코드는 프리로드를 지시하는 fetch 신호에 응답하여 실행됨이 바람직하다.Preferably, the first program code is executed in response to a fetch signal indicating a preload.
상기 제2 프로그램 코드는 상기 마크업 문서의 버퍼링이 완료되었는지 여부를 확인하는 API에 응답하여 실행되거나, 상기 마크업 문서의 버퍼링이 완료되었는지 여부를 확인하는 [obj].allDone API에 응답하여 실행됨이 바람직하다.The second program code is executed in response to an API for checking whether the buffering of the markup document is completed or in response to an [obj] .allDone API for checking whether the buffering of the markup document is completed. This is preferable.
또한, 상기 목적은 마크업 문서를 프리로드하여 AV 데이터를 인터렉티브 모드로 재생하는 방법을 수행하기 위한, 컴퓨터에 의해 실행가능한 프로그램 코드가 기록된 정보저장매체에 있어서, fetch 신호를 사용하여 상기 마크업 문서의 프리로드를 지시하는 제1 프로그램 코드; 상기 fetch 신호에 의한 프리로드 지시의 성공 여부를 응답받는 제2 프로그램 코드를 포함하는 것을 특징으로 하는 정보저장매체에 의해서도 달성된다.In addition, the above object is an information storage medium in which program code executable by a computer is recorded for performing a method of preloading a markup document to reproduce AV data in an interactive mode, by using a fetch signal. First program code indicative of preloading a document; It is also achieved by the information storage medium, characterized in that it comprises a second program code that receives the success or failure of the preload instruction by the fetch signal.
상기 제1 프로그램 코드는 컨텐트 디코더가 API를 이용하여 상기 fetch 신호를 상기 마크업 문서의 프리로드를 수행하는 버퍼 매니저로 발생시키기 위한 것임이 바람직하다.Preferably, the first program code is for a content decoder to generate a fetch signal to a buffer manager that preloads the markup document using an API.
상기 제2 프로그램 코드는 상기 마크업 문서의 프리로드를 수행하는 버퍼 매니저가 상기 프리로드 지시의 성공 여부를 API를 이용하여 상기 컨텐트 디코더로 알려주기 위한 것임이 바람직하다.Preferably, the second program code is for a buffer manager that preloads the markup document to inform the content decoder whether the preload instruction is successful or not using an API.
또한, 상기 목적은 마크업 문서를 프리로드하여 AV 데이터를 인터렉티브 모드로 재생하는 방법을 수행하기 위한, 컴퓨터에 의해 실행가능한 프로그램 코드가 기록된 정보저장매체에 있어서, 컨텐트 디코더가 API를 이용하여 현재 프리로드를 완료하였는지 여부를 버퍼 매니저로 확인하기 위한 제1 프로그램 코드; 및 상기 버퍼 매니저는 상기 API를 이용하여 현재 프리로드 작업을 성공 완료하였으면 상기 컨텐트 디코더로 성공을 반환하고, 그렇지 않으면 상기 컨텐트 디코더로 실패를 반환하도록 하는 제2 프로그램 코드를 포함하는 것을 특징으로 하는 정보저장매체에 의해서도 달성된다.In addition, the above object is to provide a method for preloading a markup document and playing back AV data in an interactive mode, in an information storage medium in which program code executable by a computer is recorded. First program code for confirming with the buffer manager whether the preload has been completed; And second program code for returning success to the content decoder if the buffer manager has successfully completed the current preload operation using the API, and returning a failure to the content decoder. It is also achieved by a storage medium.
상기 API는 [obj].allDone API임이 바람직하다.Preferably, the API is [obj] .allDone API.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
이해를 돕기 위해, 먼저 <프리로드> 및 <삭제>를 수행하는 재생 장치 및 그 방법에 대해 개략적으로 설명한다. For the sake of understanding, a brief description will be given of a playback device and method for performing <preload> and <delete> .
도 3은 프리로드 또는 삭제를 수행하는 재생 장치의 블록도이다.3 is a block diagram of a reproducing apparatus for preloading or erasing.
도 3을 참조하면, 재생 장치는 DVD(300)에 기록된 AV 데이터를 디코딩하여 AV 데이터 스트림으로 재생한 다음 마크업 문서에 의해 정의되는 표시창을 통해 디스플레이할 수 있는 인터렉티브 모드를 지원하는 장치로서, 독출부(1), 제1 메모리(2), 제2 메모리(3), AV 디코더(4), 및 프리젠테이션 엔진(5)을 포함한다. 인터렉티브 모드에서 디스플레이되는 화면은 인터렉티브 화면으로, 마크업 화면에 AV 화면이 매립된 화면을 가리킨다. 마크업 화면은 마크업 문서가 디스플레이된 화면이고 AV 화면은 AV 데이터가 재생되어 얻어지는 화면을 말한다.Referring to FIG. 3, a reproducing apparatus is an apparatus that supports an interactive mode that can decode AV data recorded on a
프리젠테이션 엔진(5)은 후술하는 바와 같이 링크 태그, 자바스크립트(JavaScript) API(Application Program Interface) 또는 자바 애플릿(Java applet) API로 구현된 프리로드 정보 또는 자바스크립트 API 또는 자바 애플릿 API로 구현된 삭제 정보가 해석되어 실행될 수 있도록 링크 태그의 확장, 자바스크립트, 또는 자바 애플릿을 지원한다.As described below, the
독출부(1)는 DVD(300)로부터 마크업 문서 또는 AV 데이터를 독출한다. 제1 메모리(2)는 버퍼 메모리로서 독출부(1)에 의해 독출된 AV 데이터를 버퍼링한다. 제2 메모리(3)는 캐시 메모리로서 수신된 프리로드 파일을 캐싱한다. AV 디코더(4)는 제1 메모리(2)에 저장된 AV 데이터를 디코딩하여 AV 데이터 스트림을 출력한다. 프리젠테이션 엔진(5)은 독출된 마크업 문서에 포함된 프리로드 정보를 해석하고, 해석된 프리로드 정보에 따라 제2 메모리(3)에 프리로드되도록 독출부(1) 또는 인터넷 서버(도시되지 않음)로 프리로드 대상 파일을 요청한다. 또한, 프리로드 대상 파일이 AV 데이터와 동기되어 디스플레이되어야 할 경우 그 프리로드 대상 파일을 제2 메모리(3)로부터 독출하여 AV 디코더(4)로부터 출력된 AV 데이터 스트림과 함께 디스플레이되도록 한다. 또한, 삭제 정보를 해석하여 삭제 대상 파일을 제2 메모리(3)로부터 삭제한다.The
본 실시예에 따른 DVD(300)에는 오디오 데이터 또는 비디오 데이터를 포함하는 AV 데이터가 기록되어 있는 한편, 프리로드 정보 및/또는 삭제 정보가 포함된 마크업 문서가 기록되어 있다. 나아가, 프리로드 리스트 파일 및/또는 삭제 리스트 파일이 더 기록될 수 있다.In the
프리로드 리스트 파일에는 프리로드되어야 할 파일의 명칭이 나열된 프리로드 리스트 및 각 프리로드 대상 파일을 저장하기 위해 필요한 메모리의 크기정보가 기록되어 있다. 프리로드 대상 파일은 대응 AV 데이터가 디스플레이될 경우 동기되어 재생되어야 할 마크업 문서로서 본 실시예에 따라 DVD(300)에 기록되어 있다. 다만, 프리로드 대상 파일은 인터넷을 통해 접속가능한 인터넷 서버에 저장되어 있을 수 있다.In the preload list file, a preload list in which file names to be preloaded are listed and memory size information necessary for storing each preload target file are recorded. The preload target file is recorded on the
「프리로드 정보」는 프리로드 대상 파일을 독출하여 캐시 메모리에 저장할 것을 명령하는 정보이다. 프리로드 정보는 일 예로, 프리로드 리스트 파일의 경로 및/또는 속성이 삽입되어 있는 링크 태그로 구현될 수 있다. 이때 링크 태그는 헤드 태그 내에 삽입된다. 다른 예로, 프리로드 리스트 파일의 경로 및/또는 속성을 매개변수로 가지며 프리로드 리스트 파일을 호출하는 자바스크립트 API 또는 자바 애플릿 API로 구현된다. 또 다른 예로, 직접 프리로드 대상 파일의 경로 및/속성을 매개변수로 가지며 프리로드 대상 파일을 호출하는 자바스크립트 API 또는 자바 애플릿 API로 구현된다. 이 경우 프리로드 리스트 파일은 존재하지 않는다."Preload information" is information for instructing the preload target file to be read and stored in the cache memory. For example, the preload information may be implemented as a link tag in which a path and / or an attribute of the preload list file is inserted. At this time, the link tag is inserted in the head tag. As another example, it is implemented as a JavaScript API or Java Applet API that takes the path and / or attributes of the preload list file as a parameter and calls the preload list file. As another example, it is implemented as a JavaScript API or Java Applet API that takes the path and / or attributes of the preload target file directly and calls the preload target file. In this case, there is no preload list file.
삭제 리스트 파일에는 삭제되어야 할 파일의 위치정보(파일명 및 경로)가 나열된 삭제 리스트가 기록되어 있다. 「삭제 정보」는 삭제 대상 파일을 제2 메모리(3)로부터 삭제할 것을 명령하는 정보이다. 삭제 정보는 일 예로 삭제 리스트 파일의 위치정보를 매개변수로 가지며 삭제 리스트 파일에 기록된 삭제 대상 파일을 삭제하는 자바스크립트 API 또는 자바 애플릿 API로 구현된다. 다른 예로, 직접 삭제 대상 파일의 경로 및/또는 속성을 매개변수로 가지며 삭제 대상 파일을 삭제하는 자바스크립트 API 또는 자바 애플릿 API로 구현된다. 이 경우 삭제 리스트 파일은 존재하지 않는다.The deletion list file records a deletion list in which location information (file name and path) of files to be deleted is listed. "Delete information" is information for instructing to delete a file to be deleted from the
도 4는 프리로드 또는 삭제를 지원하는 DVD(300)의 디렉토리 구조를 도시한 참고도이다.4 is a reference diagram illustrating a directory structure of a
도 4를 참조하면, 루트 디렉토리에는 AV 데이터가 포함된 DVD 비디오 디렉토리 VIDEO_TS와 마크업 문서 등 인터렉티브 기능을 지원하기 위한 데이터가 기록된 DVD 인터렉티브 디렉토리 DVD_ENAV가 마련되어 있다.Referring to FIG. 4, the root directory is provided with a DVD interactive directory DVD_ENAV in which data for supporting an interactive function such as a DVD video directory VIDEO_TS containing AV data and a markup document is recorded.
VIDEO_TS에는 포함된 비디오 타이틀 전체에 대한 헤더 정보가 기록된 VIDEO_TS.IFO 및 첫 번째 비디오 타이틀에 대한 네비게이션 정보가 기록된 VTS_01_0.IFO가 기록되어 있고, 이어서 비디오 타이틀을 구성하는 AV 데이터인 VTS_01_0.VOB, VTS_01_1.VOB,‥이 기록되어 있다. 보다 상세한 구성은 DVD-Video 표준안 「DVD-Video for Read Only Memory Disc 1.0」에 개시되어 있다.VIDEO_TS records VIDEO_TS.IFO in which the header information of the entire video title is recorded, and VTS_01_0.IFO in which the navigation information for the first video title is recorded. Then, VTS_01_0.VOB, AV data constituting the video title, is recorded. VTS_01_1.VOB, ... are recorded. A more detailed configuration is disclosed in the DVD-Video standard "DVD-Video for Read Only Memory Disc 1.0".
DVD_ENAV에는 인터렉티브 정보 전체에 대한 네비게이션 정보가 기록된 DVD_ENAV.IFO 가 기록되어 있고, 시작 문서로 지정된 STARTUP.HTM이 기록되어 있으며, 본 실시예에 따른 프리로드 리스트 파일인 STARTUP.PLD가 마련되어 있다. 또한, 프리로드 대상 파일인 A.HTM, 또는 A.HTM에 삽입되어 표시되기 위한 그래픽 파일 A.PNG가 기록되어 있다. 기타 프리로드 대상 파일 및 이에 삽입되어 표시되기 위한 다양한 형식의 파일이 기록될 수 있다.In DVD_ENAV, DVD_ENAV.IFO in which navigation information for the entire interactive information is recorded is recorded, STARTUP.HTM designated as a start document is recorded, and STARTUP.PLD, which is a preload list file according to the present embodiment, is provided. In addition, A.HTM, which is a preload target file, or a graphic file A.PNG to be inserted and displayed in A.HTM, is recorded. Other preload target files and files of various formats for being inserted into and displayed therein may be recorded.
도 5는 프리로드 또는 삭제를 지원하는 DVD(300)의 볼륨 공간(Volume Space)의 개략도이다.5 is a schematic diagram of a volume space of the
도 5를 참조하면, DVD(300)의 Volume Space에는 Volume과 파일에 대한 제어 정보가 기록된 제어정보 영역, 대응 비디오 타이틀 데이터가 기록된 DVD-Video 데 이터 영역, 및 인터렉티브 모드로 재생될 수 있도록 하는 DVD-Interactive Data 영역을 포함한다.Referring to FIG. 5, in the volume space of the
DVD-Video 데이터 영역에는 도 4의 DVD 비디오 디렉토리 DVD_TS에 저장된 파일, 즉 VIDEO_TS.IFO, VTS_01_0.IFO, VTS_01_0.VOB, VTS_01_1.VOB,‥등이 기록되어 있다. DVD-Interactive 데이터 영역에는 도 4의 DVD 인터렉티브 디렉토리 DVD_ENAV에 저장된 파일, 즉 STARTUP.HTM, STARTUP.PLD, A.HTM 및 A.PNG이 기록되어 있다.In the DVD-Video data area, files stored in the DVD-Video directory DVD_TS of FIG. 4, that is, VIDEO_TS.IFO, VTS_01_0.IFO, VTS_01_0.VOB, VTS_01_1.VOB, and the like are recorded. In the DVD-Interactive data area, files stored in the DVD interactive directory DVD_ENAV in Fig. 4, that is, STARTUP.HTM, STARTUP.PLD, A.HTM and A.PNG are recorded.
상기와 같은 구성을 기초로 프리로드 또는 삭제가 수행되는 과정을 설명하면 다음과 같다.A process of preloading or deleting is performed based on the above configuration.
도 6은 프리로드 또는 삭제가 수행되는 과정을 설명하기 위한 플로우챠트이다.6 is a flowchart for explaining a process in which preloading or deletion is performed.
도 6을 참조하면, 인터렉티브 모드가 선택되면 독출부(1)는 DVD(300)에 기록되어 있는 마크업 문서로서 본 실시예에 따른 HTML 문서를 독출하고(601단계), 프리젠테이션 엔진(5)은 HTML 문서에 포함되어 있는 프리로드 정보를 해석하여 독출부(1) 또는 인터넷 서버로 프리로드를 요청한다(602단계). 이에, 프리로드 대상 파일이 캐시 메모리인 제2 메모리(3)에 저장된다(603단계).Referring to FIG. 6, when the interactive mode is selected, the
한편, 독출부(1)는 대응 AV 데이터를 DVD(300)로부터 독출하여 버퍼 메모리인 제1 메모리(2)에 저장한다(604단계). AV 디코더(4)는 제1 메모리(1)에 저장된 AV 데이터를 디코딩하는 한편(605단계), 프리젠테이션 엔진(5)은 제2 메모리(3)로부터 프리로드 대상 파일을 독출하고 AV 디코더(4)에 의해 디코딩된 AV 데이터 스 트림이 HTML 문서에 의해 정의된 표시창에 디스플레이되도록 한다(606단계).On the other hand, the
도 7은 도 6의 프리로드 정보 해석단계(602단계)의 일 구현예이다.FIG. 7 is an embodiment of the preload
도 7을 참조하면, 프리젠테이션 엔진(5)은 HTML 문서에 기록된 프리로드 리스트 파일의 경로를 인식하고(701단계), 인식된 경로로부터 프리로드 리스트 파일을 독출한다(702단계). 다음으로, 프리로드 리스트 파일에 기록된 프리로드 대상 파일을 인식한다(703단계). 여기서, 프리로드 대상 파일을 인식한다는 것은 프리로드 대상 파일의 경로, 나아가 속성을 파악하는 것을 의미한다.Referring to FIG. 7, the
도 8은 도 6의 프리로드 대상 파일의 프리로드 실행단계(603단계)의 일 구현예이다. 도 8을 참조하면, 프리젠테이션 엔진(5)은 HTML 문서의 헤드 태그 내에 있는 링크 태그 내에 기록된 프리로드 리스트 파일의 경로를 인식하여 프리로드 리스트 파일을 호출한다(801단계). 다음으로, 프리젠테이션 엔진(5)은 프리로드 대상 파일의 경로 및 속성을 변수로 갖는 프리로드 태그를 포함하는 프리로드 리스트 파일을 해석하여 프리로드를 실행한다(802단계).FIG. 8 is an exemplary embodiment of a preload execution step (step 603) of the preload target file of FIG. Referring to FIG. 8, the
도 9a는 도 6의 프리로드 대상 파일의 프리로드 실행단계(603단계)의 다른 구현예이다. 도 9a를 참조하면, 프리젠테이션 엔진(5)은 바디 태그 내에 삽입되어, 프리로드 리스트 파일의 경로를 매개변수로 갖는 API를 호출하여 프리로드 리스트 파일을 독출한다(901a단계). 다음으로, 프리젠테이션 엔진(5)은 프리로드 대상 파일의 경로 및 속성을 변수로 갖는 프리로드 태그를 포함하는 프리로드 리스트 파일을 해석하여 프리로드를 실행한다(901b단계).FIG. 9A illustrates another implementation of the preload execution step (step 603) of the preload target file of FIG. 6. Referring to FIG. 9A, the
도 9b는 도 6의 프리로드 대상 파일의 프리로드 실행단계(603단계)의 또 다 른 구현예이다. 도 9b를 참조하면, 프리젠테이션 엔진(5)은 바디 태그 내에 삽입되어, 직접 프리로드 대상 파일의 경로 및 속성을 매개변수로 갖는 API를 호출하여 프리로드 대상 파일을 메모리에 저장한다(901b단계). 이때, 프리로드 대상 파일의 속성을 파악할 수 있으므로 프리젠테이션 엔진(5)은 속성에 따라 프리로드 대상 파일을 처리한 다음 메모리에 저장할 수 있다.FIG. 9B is another embodiment of the preload execution step (603) of the preload target file of FIG. Referring to FIG. 9B, the
도 10은 메모리에 저장된 프리로드 대상 파일 중 적어도 하나를 삭제하는 과정을 설명하기 위한 플로우챠트이다.10 is a flowchart for describing a process of deleting at least one of preload target files stored in a memory.
도 10를 참조하면, 프리젠테이션 엔진(5)은 HTML 문서에 포함된 삭제정보를 해석하고(1001단계), 삭제 리스트 파일로부터 인식된 삭제 대상 파일을 캐시 메모리인 제2 메모리(3)로부터 삭제한다(1002단계). 다만, 후술하는 소스코드에서 확인되듯이 본 실시예에서의 프리로드 리스트 파일과 삭제 리스트 파일은 동일한 하나의 파일, 즉 STARUP.PLD로 구현하였다. 물론 프리로드 대상 파일의 리스트와 삭제 대상 파일의 리스트가 각각 분리되어 기록된 두 개의 파일로도 구현할 수 있다.Referring to FIG. 10, the
도 11은 도 10의 삭제 실행단계(1002단계)의 일 구현예이다.FIG. 11 is an exemplary embodiment of a deleting
도 11을 참조하면, 삭제 리스트 파일의 경로를 매개변수로 가지고 삭제 리스트 파일에 기록된 삭제 대상 파일을 캐시 메모리인 제2 메모리(3)로부터 삭제하는 API에 의해 실행되도록 한다(1101단계). 여기서,「삭제」의 의미는 물리적으로 해당 데이터를 지우는 가비지 콜렉션 뿐 아니라, 물리적으로 데이터는 그대로 둔 상태에서 플래그 등을 사용하여 해당 데이터가 삭제가능함을 알리거나 여기에 다른 데이터를 기록할 수 있음을 알리는 것을 포함한다.Referring to FIG. 11, the delete target file recorded in the delete list file as a parameter is deleted by the API for deleting from the
도 12는 도 1과 동일한 순서로 AV 데이터 및 HTML 문서가 기록되어 있을 때 본 발명에 따른 프리로드 수행에 의한 효과를 설명하기 위한 참고도이다.FIG. 12 is a reference diagram for explaining an effect of performing preload according to the present invention when AV data and an HTML document are recorded in the same order as in FIG. 1.
도 12에는 MPEG 코딩된 AV 데이터가 버퍼링되는 제1 메모리(2)의 상태(occupancy)와 웹 리소스가 캐싱되는 제2 메모리(3)의 상태가 표시되어 있다. 도 1과 도 12를 참조하여 AV 데이터가 로드되어 디스플레이되는 과정을 살펴보면, 독출부(1)는 STARTUP.HTM을 탐색하여 독출하고 프리젠테이션 엔진(5)은 STARTUP.HTM에 삽입되어 있는 프리로드 정보를 해석하여 ④ A.htm의 프리로드가 수행되도록 한다. 이에 ④ A.HTM이 제2 메모리(3)에 프리로드된다. 한편, 로드된 STARTUP.HTM은 활성화된다. 이와 동시에 사용자의 선택에 따른 ① AV 데이터가 제1 메모리(2)로 로드된 다음 디스플레이되기 시작한다. 이어서 ② AV 데이터가 로드되어 디스플레이된다. ② AV 데이터의 버퍼링이 완료되면 독출부(1)는 ③ AV 데이터를 찾아 점프하여 버퍼링을 시작한다. 이 때, 사용자가 ④ A.HTM를 요구하면 프리젠테이션 엔진(5)은 제2 메모리(3)에 프리로드되어 있는 ④ A.HTM을 독출하여 디스플레이한다. 즉, 독출부(1)가 ③ AV 데이터에 대한 버퍼링을 중단하고 ④ A.HTM을 DVD(300)로부터 탐색하여 제2 메모리(3)로 로드하는 작업을 수행하지 않아도 된다. 따라서, 독출부(1)는 버퍼링을 중단없이 수행할 수 있다. 다만, 독출부(1)가 ⑤ AV 데이터의 버퍼링을 마무리하고 ⑥ AV 데이터로 점프하는 과정에서 제1 메모리(2)에 버퍼링되어 있던 데이터가 줄어들 수 있으나 이미 버퍼링해놓은 데이터의 양이 충분하기 때문에 데이터 부족현상은 발생되지 않는다. 즉, 인터렉티브 모드를 지원하는 DVD에 있어서 DVD-Video의 영상과 HTML 문서가 서로 동기 되어 보여져야 할 경우에도(예: 특정 배우가 등장하면 그 배우에 대한 약력이 표시되는 경우) 대응 HTML 문서가 이미 제2 메모리(3)에 프리로드되어 있기 때문에 독출부(1)는 AV 데이터의 버퍼링을 중단하고 대응 HTML 문서를 탐색하여 캐싱해야할 필요가 없다.FIG. 12 shows the occupancy of the
<프리로드> 및 프리로드된 데이터의 <삭제>에 대한 보다 상세한 설명은 본 출원인이 2002년 9월 19일자로 출원한 한국출원 제02-57393호 "프리로드 정보가 기록된 정보저장매체, 그 재생 장치 및 재생방법"에 기재되어 있다.<Preload> and <deletion> of the preloaded data are described in Korean Application No. 02-57393 filed on Sep. 19, 2002 by the present applicant. Playback apparatus and playback method.
이하에서는, 본 발명에 따라, 프리로드되는 대상 파일들 중 적어도 일부를 제대로 읽어들이지 못한 경우라도 적절한 수준에서 프리젠테이션할 수 있도록 마크업 문서의 버퍼링 상태를 적절히 제어할 수 있는 재생 장치, 방법 및 그 정보저장매체를 설명한다.Hereinafter, according to the present invention, a playback apparatus and method capable of appropriately controlling the buffering state of a markup document so that it can be presented at an appropriate level even when at least some of the pre-loaded target files are not properly read. Describes an information storage medium.
도 13은 본 발명의 바람직한 실시예에 따른 재생 장치의 블록도이다.13 is a block diagram of a playback apparatus according to a preferred embodiment of the present invention.
도 13을 참조하면, 재생 장치는 도 3의 재생 장치와 마찬가지로 인터렉티브 모드를 지원하는 장치로서, <프리로드>를 수행하며, 특히 본 발명에 따라 마크업 문서의 버퍼 상태를 관리하기 위해, AV 버퍼(20), AV 재생 엔진(40), ENAV 버퍼(30) 및 ENAV 엔진(50)을 포함한다. Referring to FIG. 13, the playback apparatus is an apparatus supporting an interactive mode similar to the playback apparatus of FIG. 3, and performs an <preload>, and in particular, in order to manage a buffer state of a markup document according to the present invention, an AV buffer. 20, an
AV 버퍼(20)는 도 3의 제1 메모리(2)에 대응하는 것으로, 디스크(100) 또는 네트워크로부터 가져온 AV 데이터를 버퍼링한다. AV 재생 엔진(40)은 AV 버퍼(20)에 버퍼링되어 있는 AV 데이터를 디코딩하여 AV 스트림을 출력한다. ENAV 버퍼(30)는 도 3의 제2 메모리(3)에 대응하는 캐시 메모리로서, 디스크(100) 또는 네트워크로부터 가져온 마크업 문서를 버퍼링한다. ENAV 엔진(50)은 도 3의 프리젠테이션 엔진(5)에 해당하는 것으로, <프리로드>를 수행하고, ENAV 버퍼(30)에 버퍼링되고 있는 마크업 문서의 버퍼링 상태를 제어한다. 나아가, ENAV 버퍼(30)에 저장되어 있는 마크업 문서를 해석하거나 디코딩하여 AV 재생 엔진(40)으로부터 출력된 AV 스트림이 인터렉티브 모드로 재생되도록 한다.The
도 14는 도 13의 ENAV 엔진(50)의 상세 블록도이다.14 is a detailed block diagram of the
도 14를 참조하면, ENAV 엔진(50)은 그 내부에 ENAV 버퍼(30)를 제어하는 버퍼 매니저(51)와 마크업 문서들을 해석하는 컨텐트 디코더(52)를 가진다.Referring to FIG. 14, the
컨텐트 디코더(52)는 마크업 문서를 파싱하여 해석하는 해석 엔진 및 네트워크로부터 마크업 문서를 가져오는 브라우저를 구비한다. 마크업 문서란 HTML, CSS, JAVASCRIPT와 같은 마크업 텍스트 데이터와 이미지 데이터나 오디오 데이터, 자바 프로그램 등과 같이 마크업 문서가 참조하는 바이너리 데이터를 망라하는 마크업 리소스를 말한다. 마크업 문서는 ENAV 엔진(50) 내의 버퍼 매니저(51)에 의해 디스크(100) 또는 네트워크로부터 불러들여진다.The
버퍼 매니저(51)는 마크업 문서를 <프리로드>하거나 <삭제>함에 있어 본 발명에 따라 ENAV 버퍼(30)에 의한 마크업 문서의 버퍼링 상태를 매니징한다. 보다 구체적으로, 버퍼 매니저(51)는 컨텐트 디코더(52)로부터 입력되는 5 종류의 신호에 따라 동작하게 된다.The
도 15는 본 발명에 따라 버퍼 매니저(51)가 ENAV 버퍼(30)의 마크업 문서의 버퍼링 상태를 매니징하는 과정을 보여주는 개념도이다.15 is a conceptual diagram illustrating a process in which the
도 15를 참조하면, 컨텐트 디코더(52)로부터 버퍼 매니저(51)로 입력되는 신호는 1) fetch 신호, 2) retrieve 신호, 3) release 신호, 4) discard 신호, 5) report 신호가 있다.Referring to FIG. 15, a signal input from the
1) fetch 신호는 사용할 마크업 문서를 ENAV 버퍼(30)에 프리로드해 놓으라는 신호이다. 만약 지정한 마크업 문서가 이미 ENAV 버퍼(30)에 존재하면 I/O 매니저를 이용하여 데이터를 디스크(100)나 네트워크로부터 읽어들이지 않는다. I/O 매니저는 디스크(100)로부터 데이터를 읽어들이는 리더(도시되지 않음) 또는 네트워크로부터 데이터를 가져오기 위한 네트워크 데이터 송수신부(도시되지 않음)를 가리킨다. 리더는 디스크(100)로부터 파일을 독출하고, 네트워크 데이터 송수신부는 HTTP 프로토콜을 사용하여 네트워크로부터 소정 데이터를 가져오거나 내보낸다.1) The fetch signal is a signal to preload the markup document to be used in the
도 15를 참조하면, I/O 매니저는 HTTP 요구인 경우 unblocked I/O를 하고 디스크 상의 파일 요구는 blocked I/O를 사용한다고 정하고 있다. 네트워크로부터 마크업 문서를 가져오는 경우 한 번에 복수개의 마크업 문서를 동시에 가져오는 unblocked 방식에 의한다. 디스크(100)로부터 마크업 문서를 읽어들일 경우 한 번에 복수개의 마크업 문서를 읽어들이게 되면 리더에 구비된 픽업부(도시되지 않음)가 마크업 문서가 기록된 위치로 여러번 이동해야 하므로 읽기 속도의 저하가 발생하므로, 디스크(100)에 저장된 마크업 문서를 읽어들일 경우 일 마크업 문서를 다 읽고난 이후에 다음 마크업 문서를 읽어들이는 순차적인 blocked I/O 방식을 택한다.Referring to FIG. 15, the I / O manager determines that an unsolicited I / O is made for an HTTP request and a blocked I / O is used for a file request on a disk. When importing markup documents from the network, the unblocked method of simultaneously importing multiple markup documents at a time is used. When reading markup documents from the
2) retrieve 신호는 ENAV 버퍼(30)로부터 컨텐트 디코더(52)로 데이터를 가 지고 올 것을 요청하는 신호이다. 따라서 데이터가 디스크로부터 읽어들여지는 중이거나 네트워크로부터 다운로드되고 있는 중이라면 컨텐트는 데이터를 모두 가지고 올 때까지 멈추어(blocking) 있다.2) The retrieve signal is a signal for requesting to bring data from the
3) release 신호는 retrieve 신호를 이용하여 가지고 온 데이터를 사용하지 않음을 알리는 것이다. 따라서 어떤 마크업 문서가 5 회에 거쳐서 retrieve 신호에 의해 참조되었다면 release 신호도 5 회에 거쳐서 발생하게 된다. retrieve 신호가 발생될 때마다 카운터가 올라간다면 release 신호가 발생될 때마다 카운터가 내려간다. 마크업 문서에 대응하는 카운터가 0가 되면(retrieve된 마크업 문서들이 모두 release되면) 후술하는 바와 같이 discard 신호가 발생되었을 때 곧바로 ENAV 버퍼(30)에서 삭제할 수 있게 된다.3) The release signal indicates that the retrieved data is not used. Thus, if a markup document is referenced by a retrieve signal five times, a release signal is also generated five times. If the counter goes up every time the retrieve signal is generated, the counter goes down every time the release signal is generated. When the counter corresponding to the markup document becomes 0 (when all retrieved markup documents are released), as described later, when the discard signal is generated, the counter can be deleted immediately from the
4) discard 신호는 ENAV 버퍼(30)로부터 마크업 문서를 더 이상 사용하지 않을 것이므로 삭제해도 됨을 의미한다. 따라서 이 신호에 따라 지정된 마크업 문서 데이터를 ENAV 버퍼(30)에서 버려지게(메모리 공간을 차지하지 않음) 된다. 다만, 일 어플리케이션에 의해 discard 신호가 발생하였더라도 다른 어플리케이션에 의해 해당 마크업 문서에 대해 retrieve 신호가 발생한 다음 대응 release 신호가 발생하지 않았다면 release 신호가 발생하여야만 대응 마크업 문서를 ENAV 버퍼(30)에서 삭제한다.4) The discard signal means that the markup document is no longer used from the
5) report 신호는 fetch 신호에 따라 읽어들인 마크업 문서가 제대로 ENAV 버퍼(30)에 로드되었는지? 아니면 오류로 인해 적어도 일부의 마크업 문서를 읽어들이지 못했는지? 아니면 지금 마크업 문서를 읽어들이고 있는 중인지를 확인해보 기 위한 신호이다. 또한, 현재 프리로드 진행 중인 마크업 문서의 위치(파일 이름), 지금까지 프리로드된 양, 앞으로 프리로드해야 할 양, 현재 프리로드 작업에 할당된 전체 마크업 문서들의 프리로드 양, 앞으로 프리로드해야 할 남아 있는 마크업 파일들의 양을 확인해 보기 위한 신호이다.5) Is the report signal loaded correctly in the
위의 신호를 발생시키기 위해 마크업 문서에 기록되어 있는 스크립트의 API는 다음과 같다.The API of the script recorded in the markup document to generate the above signal is as follows.
1.[obj].preload(URL,resType)1. [obj] .preload (URL, resType)
1) 내용:1) Content:
소정 프리로드 대상 파일들을 ENAV 버퍼(30)로 미리 읽어올 것을 지시하는 API이다. 사용되는 매개변수는 프리로드 리스트 파일, 프리로드 대상 파일의 위치정보, 나아가 프리로드 대상 파일의 속성을 나타낼 수 있다. 이 API는 fetch 신호를 발생시킨다. 이 함수는 디스크(disc://)에서 또는 네트워크(http://)에서 읽혀지는 모든 파일에 대해서 적용이 가능하다.It is an API for instructing to read the predetermined preload target files into the
2) 매개 변수:2) Parameters:
URL = : 프리로드 리스트 파일의 경로 또는 프리로드 대상 파일의 경로URL =: path of preload list file or path of preload target file
resType = : 대상 파일의 속성resType =: attribute of the target file
3) 반환값:3) Return Value:
프리로드 지시에 성공하면 0을 반환하고 실패하면 -1를 반환한다.If the preload instruction succeeds, it returns 0. If it fails, it returns -1.
4) 예:4) Example:
navigator.preload("disc://dvd_enav/a.htm","text/xml") // disc에 있는 "disc://dvd_enav/a.htm"의 프리로드 대상 파일을 읽어와라. 그 파일은 텍스트 파일로서 xml파일이다.navigator.preload ("disc: //dvd_enav/a.htm", "text / xml") // Read the preload target file of "disc: //dvd_enav/a.htm" on the disc. The file is a text file and an xml file.
navigator.preload("disc://dvd_enav/a.pld ", "xml/preload") // 디스크에 있는 "disc://dvd_enav/a.pld"의 프리로드 리스트 파일에 참조되어진 대상 파일을 읽어와라. 그 파일은 프리로드 파일로서 xml파일이다.navigator.preload ("disc: //dvd_enav/a.pld", "xml / preload") // read the target file referenced in the preload list file of "disc: //dvd_enav/a.pld" on disk come. The file is an xml file as a preload file.
2. [obj].discard(URL,resType)2. [obj] .discard (URL, resType)
1) 내용1) Content
지시하는 삭제 대상 파일들을 ENAV 버퍼(30)에서 삭제하는 API이다. 매개변수는 삭제 리스트 파일, 삭제 대상 파일의 위치정보, 및 삭제 대상파일의 속성을 나타낸다. 이 API는 discard 신호를 발생 시킨다.It is an API that deletes indicated files to be deleted in the
2) 매개 변수:2) Parameters:
URL = : 삭제 리스트 파일의 경로 또는 삭제 대상 파일의 경로URL =: path of delete list file or path of delete target file
resType = : 대상 파일의 속성resType =: attribute of the target file
3) 반환값:3) Return Value:
삭제에 성공하면 0를 반환하고 실패하면 -1를 반환한다.If the delete is successful, it returns 0. If it fails, it returns -1.
4) 예:4) Example:
navigator.discard("disc://dvd_enav/a.htm", "text/xml") // disc에 있는 "disc://dvd_enav/a.htm"의 삭제 대상 파일이 ENAV 버퍼(30)에 있으면 이를 삭제한다. 그 파일은 text파일로서 xml파일이다.navigator.discard ("disc: //dvd_enav/a.htm", "text / xml") // If the file to be deleted from "disc: //dvd_enav/a.htm" on the disc is in the ENAV buffer (30) Delete it. The file is a text file and an xml file.
navigator.discard("disc://dvd_enav/a.pld","xml/preload") // disc에 있는 "disc://dvd_enav/a.pld"의 리스트 파일이 참조하는 파일을 캐시 메모리에서 삭제한다. 그 파일은 리스트 파일로서 xml 파일이다.navigator.discard ("disc: //dvd_enav/a.pld", "xml / preload") // remove the file referenced by the list file of "disc: //dvd_enav/a.pld" from disc in cache memory do. The file is an xml file as a list file.
3. [obj].isCached(URL,resType)3. [obj] .isCached (URL, resType)
1) 내용:1) Content:
지시하는 조사 대상 파일들을 ENAV 버퍼(30)에서 완전하게 읽혀졌는지 확인하는 API이다. 매개변수는 조사 리스트 파일, 조사 대상 파일의 위치정보, 및 대상 파일의 속성을 나타낸다. 이 API는 report 신호를 발생시킨다. 이 함수는 디스크(disc://)에서 또는 네트워크(http://)에서 읽혀지는 모든 파일에 대해서 적용이 가능하다.It is an API that checks whether files to be examined are completely read from the
2) 매개 변수:2) Parameters:
URL = : 조사 리스트 파일의 경로 또는 조사 대상 파일의 경로URL =: path of survey list file or path of survey target file
resType = : 대상 파일의 속성resType =: attribute of the target file
3) 반환값:3) Return Value:
조사 대상 파일 리스트 내의 또는 조사 대상 파일의 읽기에 성공하면 0을 반환하고 읽는데 실패하면 1를 반환하며 읽는 파일 중 읽기를 실패한 파일이 없고 적어도 한 파일이 읽는 중이면 2을 반환한다.Returns 0 if the file to be examined or the file to be examined is successfully read, 1 if the file fails to be read, or 2 if no file has failed to read and at least one file is being read.
4) 예:4) Example:
navigator.isCached("disc://dvd_enav/a.htm", "text/xml") // disc에 있는 "disc://dvd_enav/a.htm"를 읽는 작업이 완료 되었는지 조사한다. 그 파일은 text파일로서 xml파일이다.navigator.isCached ("disc: //dvd_enav/a.htm", "text / xml") // Check to see if you have finished reading "disc: //dvd_enav/a.htm" on the disc. The file is a text file and an xml file.
navigator.isCached ("disc://dvd_enav/a.pld","xml/preload") // disc에 있는 "disc://dvd_enav/a.pld"의 리스트 파일이 참조하는 대상 파일들의 읽기 작업이 완료되었는지 조사한다. 그 파일은 리스트 파일로서 xml 파일이다.navigator.isCached ("disc: //dvd_enav/a.pld", "xml / preload") // read the target files referenced by the list file of "disc: //dvd_enav/a.pld" on disc Investigate if it is complete. The file is an xml file as a list file.
4. [obj].progressNameOfFile4. [obj] .progressNameOfFile
1) 내용: 1) Content:
현재 프리로드 진행 중인 대상 파일의 URI를 리턴하는 속성 값.Attribute value that returns the URI of the target file that is currently in preload.
2) 반환값:2) Return Value:
파일 경로명 또는 URIFile pathname or URI
5. [obj].progressLengthOfFile5. [obj] .progressLengthOfFile
1) 내용: 1) Content:
현재 프리로드 진행 중인 대상 파일에서 현재까지 프리로드를 받은 양.The amount of preloading so far in the target file currently in preload.
2) 반환값:2) Return Value:
바이트 단위로 표현된 양The amount expressed in bytes
6. [obj].remainLengthOfFile6. [obj] .remainLengthOfFile
1) 내용:1) Content:
현재 프리로드 진행 중인 대상 파일에서 현재까지 프리로드된 것을 제외하고 앞으로 프리로드해야 할 남은 양.Remaining amount to be preloaded in the future, except for the one currently preloaded in the target file in progress.
2) 반환값:2) Return Value:
바이트 단위로 표현된 양The amount expressed in bytes
7. [obj].totalLoadingSize7. [obj] .totalLoadingSize
1) 내용:1) Content:
현재 프리로드 파일에서 지정한 프리로드 대상 파일 크기의 전체 합계.The total sum of the preload target file sizes specified by the current preload file.
2) 반환값:2) Return Value:
바이트 단위로 표현된 용량The capacity in bytes
8. [obj].remainLoadingSize8. [obj] .remainLoadingSize
1) 내용: 1) Content:
현재 프리로드 파일에서 지정한 프리로드 대상 파일의 현재까지 프리로드된 것을 제외하고 앞으로 프리로드해야 할 남은 양 전체의 합계.The sum of all remaining amounts that need to be preloaded in the future, except those that have been preloaded up to the current of the specified preload target file in the current preload file.
2) 반환값:2) Return Value:
바이트 단위로 표현된 양The amount expressed in bytes
9. [obj].allDone9. [obj] .allDone
1) 내용:1) Content:
현재 재생 장치의 프리로드 작업 완료 여부.Whether or not the current playback device has finished preloading
2) 반환값:2) Return Value:
성공 완료하면 True, 실패 완료 또는 진행 중인 경우 FalseTrue if successful, false completed or false if in progress
상기 retrieve 신호나 release 신호는 해당 마크업 문서를 사용할 때마다 발생한다. 예를 들어 컨텐트 디코더(52)가 "disc://dvd_enav/a.png"의 이미지를 프리젠테이션하고자 하는 경우 <img src="disc://dvd_enav/a.png" />를 해석한 다음 retrieve 신호를 발생하여 버퍼 매니저(51)로 하여금 이미지를 가져오도록 한 다음 이미지가 디스플레이 장치(도시되지 않음)의 화면에 프리젠테이션한다. 마찬가지 로, 컨텐트 디코더(52)는 디스플레이 화면에서 이미지의 프리젠테이션을 종료한 다음 release 신호를 발생시킨다.The retrieve or release signal is generated each time the corresponding markup document is used. For example, if the
도 16은 본 발명의 바람직한 실시예에 따라 컨텐트 디코더(52)와 버퍼 매니저(51)에 의해 실행되는 버퍼링 상태 제어 방법을 설명하는 플로우챠트이다.16 is a flowchart for explaining a method of controlling a buffering state executed by the
도 17은 본 발명의 바람직한 실시예에 따라 AV 데이터와 마크업 문서가 기록된 디스크의 개략도이며, 도 18은 도 17과 같이 AV 데이터와 마크업 문서가 기록된 디스크의 디렉토리 구조를 보여주고, 도 19는 도 17에 따른 디스크의 볼륨 구조와 파일 구조를 보여준다. 도 20은 도 17의 디스크에 저장된 마크업 문서 데이터와 AV 데이터가 재생되는 순서를 보여준다.17 is a schematic diagram of a disc on which AV data and a markup document are recorded, according to a preferred embodiment of the present invention. FIG. 18 shows a directory structure of a disc on which AV data and a markup document are recorded. 19 shows the volume structure and file structure of the disk according to FIG. 20 shows a sequence in which markup document data and AV data stored in the disk of FIG. 17 are reproduced.
STARTUP.HTM에서 A.HTM에서 D.HTM까지 심리스 재생하기 위해서는 STARTUP.PLD는 다음과 같이 구현되는 것이 바람직하다.In order to seamlessly play from STARTUP.HTM to A.HTM to D.HTM, STARTUP.PLD is preferably implemented as follows.
이와 같은 STARTUP.PLD를 이용하여 STARTUP.HTM이 처음 디스플레이 화면에 나타나면서 인터렉티브 프리젠테이션이 시작된다. 다음은 도 15에 도시된 개념에 따라 동작하기 위해 구현된 STARTUP.HTM의 일 예이다.With this STARTUP.PLD, the interactive presentation starts with STARTUP.HTM first appearing on the display screen. The following is an example of STARTUP.HTM implemented to operate according to the concept shown in FIG. 15.
한편, 다음과 같은 B.HTM은 A.HTM에 이어지는 화면을 구성한다. B.HTM이 재생되는 중에, A.HTM의 프리젠테이션에 필요한 마크업 문서들을 모아 놓은, 즉 B.PLD 내에서 프리로드 대상 파일로 언급된 마크업 문서들은 ENAV 버퍼(30)로부터 제거된다. B.HTM에는 A.HTM의 프리젠테이션에 필요한 마크업 문서들을 모아 놓은, 즉 A.PLD 내에서 프리로드 대상 파일로 언급된 마크업 문서들은 ENAV 버퍼(30)로부터 제거할 것을 명령하는 코드가 기록되어 있다.Meanwhile, the following B.HTM constitutes a screen following A.HTM. While B.HTM is being reproduced, markup documents that have been collected for the presentation of A.HTM, that is, markup documents referred to as preload target files in B.PLD, are removed from
한편, 전술한 인터랙티브 모드에서의 재생 방법은 컴퓨터 프로그램으로 작성 가능하다. 상기 프로그램을 구성하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 프로그램은 컴퓨터가 읽을 수 있는 정보저장매체(computer readable medium)에 저장되고, 컴퓨터에 의하여 읽혀지고 실행됨으로써 상기 인터랙티브 모드에서 재생 방법을 구현한다. 상기 정보저장매체는 자기 기록매체, 광 기록매체, 및 캐리어 웨이브 매체를 포함한다.On the other hand, the above-described reproduction method in the interactive mode can be created by a computer program. Codes and code segments constituting the program can be easily inferred by a computer programmer in the art. The program is also stored in a computer readable medium, and read and executed by a computer to implement the playback method in the interactive mode. The information storage medium includes a magnetic recording medium, an optical recording medium, and a carrier wave medium.
전술한 바와 같이 본 발명에 따르면, 컨텐트의 제작시 프리로드된 상황을 알 수 있는 방법과 그 절차를 적용시킴으로써, 디스크의 물리적 파손이 발생하거나 연결 끊김 등 네트워크 오동작이 발생하여 프리로드 대상 파일의 전체가 프리로드되지 않고 적어도 일부만이 프리로드된 경우에도 프리로드된 파일들만으로의 프리젠테이션이 가능하게 함으로써 컨텐트를 재생함에 있어 발생할 수 있는 오류에 대한 재생 내구력을 높일 수 있다.As described above, according to the present invention, by applying a method and a procedure of knowing the preloaded situation when the content is produced, a network malfunction such as physical damage of the disk or disconnection occurs and thus the entire preloaded file Even if the data is not preloaded and only at least a part of it is preloaded, the presentation can be performed only with the preloaded files, thereby improving playback durability against errors that may occur in playing the content.
또한, 현재까지 얼마나 많은 양을 프리로드했는지, 앞으로 프리로드 과정이 완료되려면 얼마나 더 기다려야 하는지 스크립트 코드를 사용하여 계산할 수 있으므로, 컨텐트 제작자는 사용자에게 프리로드 진행 정보를 제공하여 사용자가 무작정 오랫동안 기다려야 하는 지루함을 없애줄 수 있다.In addition, you can use script code to calculate how much you have preloaded so far and how long you need to wait for the preload process to complete in the future, so that content creators can provide users with preload progress information, Can get rid of boredom.
Claims (9)
Priority Applications (16)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA002498885A CA2498885A1 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
JP2005501364A JP2006503401A (en) | 2002-10-17 | 2003-10-16 | Information storage medium on which control information for controlling buffering state of markup document is recorded, reproducing apparatus and reproducing method thereof |
US10/685,699 US20040141716A1 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
US10/686,521 US20040139394A1 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
PL03375841A PL375841A1 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
MXPA05003904A MXPA05003904A (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium. |
US10/685,696 US20040148627A1 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
BR0314834-3A BR0314834A (en) | 2002-10-17 | 2003-10-16 | Device for playback of av data using an interactive mode dialing document, apparatus for controlling a temporary storage memory that temporarily stores a document for playback of av data in an interactive mode, recording device and / or av data playback using a dial document in an interactive mode, av data playback method in an interactive mode using a dial document, managing a dial document method for use in playback av data in an interactive mode interactive mode, method of managing a markup document for use in reproducing av data in an interactive mode, method of reproducing av data in an interactive mode, computer readable media, method in a computer system for av data processing in an interactive mode using a markup document, and media data storage |
US10/685,697 US20040143853A1 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
US10/685,694 US20040139249A1 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
US10/686,537 US20040139395A1 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
PCT/KR2003/002155 WO2004036576A1 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
AU2003269556A AU2003269556A1 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
EP03751571A EP1552517A4 (en) | 2002-10-17 | 2003-10-16 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
TW92128840A TWI236002B (en) | 2002-10-17 | 2003-10-17 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
MYPI20033962A MY137686A (en) | 2002-10-17 | 2003-10-17 | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20020063631 | 2002-10-17 | ||
KR1020020063631 | 2002-10-17 | ||
KR20030027073 | 2003-04-29 | ||
KR1020030027073 | 2003-04-29 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2003-0058695A Division KR100517507B1 (en) | 2002-10-17 | 2003-08-25 | Information storage medium containing control information for controlling buffering status of markup document, reproducing method and apparatus therefor |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040034373A KR20040034373A (en) | 2004-04-28 |
KR100584563B1 true KR100584563B1 (en) | 2006-05-30 |
Family
ID=37333686
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2003-0058695A KR100517507B1 (en) | 2002-10-17 | 2003-08-25 | Information storage medium containing control information for controlling buffering status of markup document, reproducing method and apparatus therefor |
KR1020030058893A KR100584563B1 (en) | 2002-10-17 | 2003-08-25 | Computer readable medium recoding program code for reproducing Audio-Visual data in interactive mode by preloading markup document |
KR1020030058892A KR100584562B1 (en) | 2002-10-17 | 2003-08-25 | Method of reproducing Audio-Visual data in interactive mode by preloading markup document |
KR1020030058891A KR100584561B1 (en) | 2002-10-17 | 2003-08-25 | Apparatus for reproducing Audio-Visual data in interactive mode using markup document |
KR1020030058890A KR100584560B1 (en) | 2002-10-17 | 2003-08-25 | Information storage medium containing control information for controlling buffering status of markup document |
KR1020030060760A KR100584568B1 (en) | 2002-10-17 | 2003-09-01 | Apparatus for reproducing Audio-Visual data in interactive mode using markup document |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2003-0058695A KR100517507B1 (en) | 2002-10-17 | 2003-08-25 | Information storage medium containing control information for controlling buffering status of markup document, reproducing method and apparatus therefor |
Family Applications After (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030058892A KR100584562B1 (en) | 2002-10-17 | 2003-08-25 | Method of reproducing Audio-Visual data in interactive mode by preloading markup document |
KR1020030058891A KR100584561B1 (en) | 2002-10-17 | 2003-08-25 | Apparatus for reproducing Audio-Visual data in interactive mode using markup document |
KR1020030058890A KR100584560B1 (en) | 2002-10-17 | 2003-08-25 | Information storage medium containing control information for controlling buffering status of markup document |
KR1020030060760A KR100584568B1 (en) | 2002-10-17 | 2003-09-01 | Apparatus for reproducing Audio-Visual data in interactive mode using markup document |
Country Status (2)
Country | Link |
---|---|
KR (6) | KR100517507B1 (en) |
MY (1) | MY137686A (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010008198A2 (en) | 2008-07-15 | 2010-01-21 | Lg Electronics Inc. | A method and an apparatus for processing an audio signal |
-
2003
- 2003-08-25 KR KR10-2003-0058695A patent/KR100517507B1/en not_active IP Right Cessation
- 2003-08-25 KR KR1020030058893A patent/KR100584563B1/en not_active IP Right Cessation
- 2003-08-25 KR KR1020030058892A patent/KR100584562B1/en not_active IP Right Cessation
- 2003-08-25 KR KR1020030058891A patent/KR100584561B1/en not_active IP Right Cessation
- 2003-08-25 KR KR1020030058890A patent/KR100584560B1/en not_active IP Right Cessation
- 2003-09-01 KR KR1020030060760A patent/KR100584568B1/en not_active IP Right Cessation
- 2003-10-17 MY MYPI20033962A patent/MY137686A/en unknown
Also Published As
Publication number | Publication date |
---|---|
KR100584561B1 (en) | 2006-05-30 |
MY137686A (en) | 2009-02-27 |
KR20040034369A (en) | 2004-04-28 |
KR20040034373A (en) | 2004-04-28 |
KR100584560B1 (en) | 2006-05-30 |
KR100517507B1 (en) | 2005-09-28 |
KR20040034372A (en) | 2004-04-28 |
KR20040034370A (en) | 2004-04-28 |
KR20040034381A (en) | 2004-04-28 |
KR20040034371A (en) | 2004-04-28 |
KR100584568B1 (en) | 2006-05-30 |
KR100584562B1 (en) | 2006-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2006050648A (en) | Memory management method | |
US20040139394A1 (en) | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium | |
KR100565056B1 (en) | Method and apparatus for reproducing AV data in interactive mode and information storage medium thereof | |
KR100584563B1 (en) | Computer readable medium recoding program code for reproducing Audio-Visual data in interactive mode by preloading markup document | |
US20040148627A1 (en) | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium | |
KR100644606B1 (en) | Apparatus for reproducing content in interactive mode | |
CN100407320C (en) | Information storage medium, method and apparatus for the information storage medium playback | |
RU2298845C2 (en) | Data storage carrier, having information for controlling buffered state of markup document, and also method and device for reproducing data from data storage carrier | |
KR100553891B1 (en) | Reproducing method for interactive mode using markup documents | |
TWI236002B (en) | Data storage medium having information for controlling buffered state of markup document, and method and apparatus for reproducing data from the data storage medium | |
KR100584576B1 (en) | Information storage medium for reproducing AV data in interactive mode | |
KR100584575B1 (en) | Method for reproducing AV data in interactive mode | |
CA2531221A1 (en) | Method for managing a memory for preloading |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130429 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140429 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20150429 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20160428 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |