KR20050052928A - Display playback device reproducing audio-visual data and interactive contents and display playback method thereof - Google Patents

Display playback device reproducing audio-visual data and interactive contents and display playback method thereof Download PDF

Info

Publication number
KR20050052928A
KR20050052928A KR1020030086511A KR20030086511A KR20050052928A KR 20050052928 A KR20050052928 A KR 20050052928A KR 1020030086511 A KR1020030086511 A KR 1020030086511A KR 20030086511 A KR20030086511 A KR 20030086511A KR 20050052928 A KR20050052928 A KR 20050052928A
Authority
KR
South Korea
Prior art keywords
application
directory
execution
engine
storage medium
Prior art date
Application number
KR1020030086511A
Other languages
Korean (ko)
Inventor
정현권
김광민
Original Assignee
삼성전자주식회사
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 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020030086511A priority Critical patent/KR20050052928A/en
Publication of KR20050052928A publication Critical patent/KR20050052928A/en

Links

Classifications

    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4432Powering on the client, e.g. bootstrap loading using setup parameters being stored locally or received from the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4435Memory management

Abstract

동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 장치 및 그 재생 방법이 개시된다.Disclosed are a reproducing apparatus for reproducing moving image data and interactive content, and a reproducing method thereof.

본 발명에 따른 동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 장치는, 상기 동영상 데이터를 디코딩 하여 재생하는 프리젠테이션 엔진; 상기 인터랙티브 컨텐츠를 해석하여 재생하는 어플리케이션 엔진; 및 상기 동영상 데이터의 재생 및 상기 인터랙티브 컨텐츠의 재생을 제어하는 어플리케이션 매니저를 포함하는 것을 특징으로 한다.A reproduction apparatus for reproducing moving picture data and interactive contents according to the present invention, includes: a presentation engine for decoding and reproducing the moving picture data; An application engine for interpreting and playing back the interactive content; And an application manager for controlling playback of the video data and playback of the interactive content.

이에 따라, 동영상 정보의 재생 외에 사용자와의 인터랙티브 기능을 제공하는 프로그램 기능 및 마크업 문서로부터 관련 정보를 가져와 재생하는 브라우징 기능 등의 부가 기능을 제공할 수 있다.Accordingly, it is possible to provide additional functions such as a program function that provides an interactive function with the user in addition to the reproduction of the moving picture information, and a browsing function that retrieves and reproduces relevant information from the markup document.

Description

동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 장치 및 그 재생 방법{Display playback device reproducing audio-visual data and interactive contents and display playback method thereof}Display playback device reproducing audio-visual data and interactive contents and display playback method

본 발명은 저장 매체의 재생에 관한 것으로, 보다 상세하게는 동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 장치 및 그 재생 방법에 관한 것이다.The present invention relates to the reproduction of a storage medium, and more particularly, to a reproduction apparatus for reproducing moving picture data and interactive content and a reproduction method thereof.

현재의 저장 매체에 기록된 동영상 데이터는 압축 부호화된 동영상 정보 및 동영상 정보의 재생을 제어하기 위한 네비게이션 정보를 포함하고 있다. 보다 구체적으로, 동영상 정보는 MPEG(Motion Picture Experts Group) 표준에 따라 부호화된 비디오, 오디오 및/또는 서브 오브젝트를 포함하는 동영상 스트림(Audio-Visual Stream)으로 구성된다. 여기에 동영상 스트림의 부호화 속성 또는 랜덤 액세스를 위한 엔트리 포인트(entry point) 등의 부가정보와 동영상의 재생 순서를 정하여 객체로 만든 플레이 리스트(playlist) 등을 더 포함할 수 있다. The moving picture data recorded in the current storage medium includes compressed coded moving picture information and navigation information for controlling reproduction of the moving picture information. More specifically, the moving picture information is composed of a moving picture stream (Audio-Visual Stream) including video, audio, and / or sub-objects encoded according to the Motion Picture Experts Group (MPEG) standard. It may further include additional information such as encoding attributes of the video stream or an entry point for random access, a play list made of an object by determining the playback order of the video.

한편, 네비게이션 정보는 전술한 플레이 리스트를 재생시키는 명령이나, 다른 플레이 리스트로 분기하는 명령 등의 동영상 정보의 재생을 제어하는 네비게이션 커맨드(navigation commands)로 이루어져 있다. 통상 네비게이션 정보는 바이너리 코드의 테이블 형태로 저장되어 있다. 이에 따라, 저장 매체의 네비게이션 정보를 참고하여 동영상 정보를 재생할 수 있으며, 사용자는 고화질의 영화 감상 등 동영상을 시청할 수 있다. 이러한 네비게이션 커맨드의 모임을 무비 오브젝트(Movie Object)라고 한다.On the other hand, the navigation information is composed of navigation commands for controlling the reproduction of the moving picture information such as a command for reproducing the aforementioned play list or a command for branching to another play list. In general, navigation information is stored in the form of a table of binary codes. Accordingly, the video information can be played by referring to the navigation information of the storage medium, and the user can watch a video such as watching a high quality movie. This collection of navigation commands is called a movie object.

그러나, 종래의 동영상을 기록한 저장 매체는, 재생되는 동영상을 이용한 게임이나 채팅 등 사용자와의 인터랙티브 기능을 제공하는 자바 어플리케이션 프로그램 또는 마크업 문서로부터 재생되는 동영상과 관련된 정보를 가져와 표시할 수 있는 브라우징 기능을 제공하는 어플리케이션 등의 인터랙티브 컨텐츠(Interactive Contents)를 동영상 데이터와 함께 제공하지 못하는 문제점이 있었다.However, a conventional storage medium for recording a moving picture includes a browsing function capable of importing and displaying information related to a moving picture from a Java application program or markup document that provides an interactive function with a user, such as a game or a chat using a reproduced moving picture. There has been a problem in that interactive content such as an application providing a video cannot be provided together with video data.

한편, 인터랙티브 DVD(Digital Versatile Disc)는 퍼스널 컴퓨터 또는 가전기기형 재생장치 등에서, 동영상 데이터 외에 마크업 문서를 함께 재생할 수 있는 저장 매체이다. 인터랙티브 DVD에는 종래 DVD-Video 규격에 따라 동영상 데이터가 담겨 있으며 추가적으로 인터랙티브 기능을 지원하기 위한 마크업 문서(Markup Document)가 더 기록되어 있다. On the other hand, an interactive DVD (Digital Versatile Disc) is a storage medium that can reproduce markup documents together with video data in a personal computer or home appliance type playback apparatus. The interactive DVD contains moving image data according to the conventional DVD-Video standard, and further includes a markup document for supporting the interactive function.

인터랙티브 DVD를 재생하면, 동영상 데이터가 재생되어 표시되는 동영상 화면이 마크업 문서로부터 재생되는 마크업 화면에 매립되어 표시된다. 예를 들어, 인터랙티브 DVD에 영화 타이틀이 기록된 경우, 동영상 화면에는 영화가 상영되고 마크업 화면의 나머지 부분에는 영화의 대본, 줄거리, 출연배우의 사진, 등 다양한 부가 정보가 표시된다. 부가 정보는 비디오 타이틀과 동기 되어 표시되기도 한다. 즉, 특정 출연배우가 등장하기 시작할 때 그 배우에 대한 이력 정보가 표시하여 사용하는 경우가 그 예이다. When the interactive DVD is played back, the moving picture screen on which the moving picture data is reproduced and displayed is embedded in the markup screen being reproduced from the markup document. For example, when a movie title is recorded on an interactive DVD, a movie is displayed on a moving picture screen, and various additional information such as a script of the movie, a plot, a picture of an actor, and the like are displayed on the rest of the markup screen. The additional information may be displayed in synchronization with the video title. For example, when a specific actor begins to appear, history information about the actor is displayed and used.

그러나, 인터랙티브 DVD는 마크업 언어를 이용한 문서 포맷으로서, 프로그래밍 기능이 제공되지 않아, 게임, 채팅 등과 같은 자바 프로그램 어플리케이션의 작성에는 적합하지 않은 문제점이 있었다. However, interactive DVD is a document format using a markup language, and since programming is not provided, there is a problem in that it is not suitable for writing a Java program application such as a game or a chat.

따라서, 본 발명의 목적은 전술한 문제점을 해결하기 위하여 동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 장치 및 그 재생 방법을 제공하는 것이다.Accordingly, an object of the present invention is to provide a reproduction apparatus and a reproduction method for reproducing moving image data and interactive contents in order to solve the above-mentioned problems.

상기 목적은, 동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 장치에 있어서, 동영상 데이터를 디코딩 하여 재생하는 프리젠테이션 엔진; 인터랙티브 컨텐츠를 해석하여 재생하는 어플리케이션 엔진; 및 동영상 데이터의 재생 및 인터랙티브 컨텐츠의 재생을 제어하는 어플리케이션 매니저를 포함하는 것을 특징으로 하는 재생 장치에 의해 달성된다.An object of the present invention is to provide a playback apparatus for playing back moving picture data and interactive contents, comprising: a presentation engine for decoding and playing back moving picture data; An application engine for interpreting and playing back interactive content; And an application manager for controlling playback of video data and playback of interactive content.

인터랙티브 컨텐츠에는 프로그래밍이 가능한 자바 애플리케이션 및 마크업 문서를 이용한 마크업 언어 어플리케이션이 포함되며, 어플리케이션 엔진은, 자바 애플리케이션을 실행하는 프로그램 엔진 및 마크업 언어 애플리케이션을 실행하는 브라우저 엔진을 포함하는 것이 바람직하다. The interactive content includes a programmable Java application and a markup language application using a markup document, and the application engine preferably includes a program engine for executing the Java application and a browser engine for executing the markup language application.

재생 장치는 착탈식 저장 매체, 로컬 스토리지 저장 매체 및 네트웍 상의 저장 매체 중 적어도 하나로부터 인터랙티브 컨텐츠를 독출하여 재생하는 것이 바람직하다.The playback device preferably reads and reproduces interactive content from at least one of a removable storage medium, a local storage storage medium, and a storage medium on a network.

어플리케이션 매니저는 착탈식 저장 매체가 재생 장치로 삽입되는 경우 맨 처음 실행시켜야 할 어플리케이션을 찾는 것이 바람직하며,The application manager preferably finds the first application to be executed when the removable storage medium is inserted into the playback device.

어플리케이션을 실행시키기에 전에 어플리케이션 실행환경 초기화를 수행하는 것이 바람직하다.It is a good idea to initialize the application runtime before running the application.

어플리케이션 실행환경 초기화는, 메모리 상의 파일 시스템에서 동영상 데이터를 관리하는 디렉토리, 비휘발성 메모리를 관리하는 디렉토리, 휘발성 메모리를 관리하는 디렉토리 및 착탈식 저장 매체를 관리하는 디렉토리를 참조하도록 하는 디렉토리 초기화를 포함하는 것이 바람직하다.Initializing the application execution environment includes initializing the directory to refer to a directory managing movie data, a directory managing nonvolatile memory, a directory managing volatile memory, and a directory managing removable storage media in a file system on memory. desirable.

어플리케이션 매니저는 어플리케이션 실행환경 초기화가 수행된 후, 어플리케이션 엔진에서 어플리케이션을 실행시키기에 전에, 어플리케이션 초기화를 수행하는 것이 바람직하며,The application manager preferably performs application initialization after the application execution environment initialization is performed and before the application engine is executed.

어플리케이션 초기화는, 메모리 상에 어플리케이션의 실행 디렉토리를 생성하고, 저장 매체상의 어플리케이션의 저장 디렉토리와는 별도로 메모리의 파일 시스템에서 실행 디렉토리를 관리하는 것이 바람직하다.Application initialization preferably creates an execution directory of the application on the memory and manages the execution directory in the file system of the memory separately from the storage directory of the application on the storage medium.

어플리케이션 매니저는, 더 이상 실행될 어플리케이션이 존재하지 않거나, 다른 어플리케이션 실행 모드로 전환하는 경우에, 어플리케이션 실행환경 종료화를 수행하는 것이 바람직하며, When the application manager no longer exists, or when the application manager switches to another application execution mode, the application manager preferably terminates the application execution environment.

어플리케이션 실행환경 종료화는 어플리케이션의 실행 디렉토리 및 휘발성 메모리를 관리하는 디렉토리의 내용을 삭제하는 것이 바람직하다.Application execution environment termination preferably deletes the contents of the directory managing the application execution directory and the volatile memory.

어플리케이션 매니저는, 어플리케이션을 어플리케이션 엔진에서 실행시키는 경우에, 어플리케이션 엔진에 정의된 소정의 실행 라이프 사이클에 따라 동작하도록 제어하는 것이 바람직하며, 무비 모드의 경우, 어플리케이션은 동작중 및 정지 상태 중 어느 하나의 실행 상태를 갖고, 자바 어플리케이션 실행 모드의 경우, 어플리케이션은 로드, 정지, 동작중 및 소멸 상태 중 어느 하나의 실행 상태를 갖으며, 마크업 언어 어플리케이션 모드의 경우, 어플리케이션은 로드, 동작중 및 종료 상태 중 어느 하나의 실행 상태를 갖는 것이 바람직하다.When the application manager runs the application in the application engine, it is preferable to control the application manager to operate according to a predetermined execution life cycle defined in the application engine. In the Java application execution mode, the application has one of the loaded, stopped, running, and destroyed states. In the markup language application mode, the application is loaded, running, and terminated. It is preferable to have an execution state of either.

한편 본 발명의 다른 분야에 따르면, 상기 목적은 동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 방법에 있어서, (a) 어플리케이션 실행환경을 초기화하는 단계; (b) 어플리케이션을 초기화하는 단계; (c) 어플리케이션의 라이프 사이클이 종료되면, 실행 중이던 어플리케이션을 종료화하는 단계; 및 (d) 더 이상 실행될 어플리케이션이 존재하지 않거나, 실행 모드를 전환하는 경우에, 어플리케이션 실행환경을 종료화하는 단계를 포함하는 것을 특징으로 하는 재생 방법에 의해서도 달성된다.According to another aspect of the present invention, the above object is a playback method for playing video data and interactive content, comprising: (a) initializing an application execution environment; (b) initializing the application; (c) terminating the running application when the life cycle of the application ends; And (d) terminating the application execution environment if there are no more applications to be executed or switching the execution mode.

(a) 단계는, 메모리 상의 파일 시스템에서 동영상 데이터를 관리하는 디렉토리, 비휘발성 메모리를 관리하는 디렉토리, 휘발성 메모리를 관리하는 디렉토리 및 착탈식 저장 매체를 관리하는 디렉토리를 참조하도록 디렉토리를 초기화하는 단계이며, Step (a) is a step of initializing a directory to refer to a directory managing video data, a directory managing nonvolatile memory, a directory managing volatile memory, and a directory managing removable storage medium in a file system on a memory.

(b) 단계는, 메모리 상에 어플리케이션의 실행 디렉토리를 생성하고, 저장 매체 상의 어플리케이션의 저장 디렉토리와는 별도로 메모리의 파일 시스템에서 실행 디렉토리를 관리하는 단계이고,step (b) is to create an execution directory of the application on the memory and to manage the execution directory in the file system of the memory separately from the storage directory of the application on the storage medium,

(c) 단계는, 어플리케이션의 실행 디렉토리의 내용을 삭제하는 단계이며,Step (c) is to delete the contents of the execution directory of the application.

(d) 단계는, 휘발성 메모리를 관리하는 디렉토리의 내용을 삭제하는 단계인 것이 바람직하다.Step (d) is preferably a step of deleting the contents of the directory managing the volatile memory.

이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대해 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of the present invention.

도 1은 본 발명의 바람직한 실시예에 따른 동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 장치의 일 예를 나타낸 도면이다.1 is a view showing an example of a playback device for playing back video data and interactive content according to a preferred embodiment of the present invention.

도 1을 참조하면, 본 발명의 바람직한 실시예에 따른 재생 장치(130)는 저장 매체(100, 110 및/또는 120)로부터 동영상 데이터(102)와 어플리케이션 파일(104, 112 및/또는 122)을 읽어들여 재생하며, 디스플레이 장치(140)를 통해 동영상 데이터 및 인터랙티브 컨텐츠를 출력한다.Referring to FIG. 1, a playback device 130 according to a preferred embodiment of the present invention stores video data 102 and application files 104, 112, and / or 122 from storage media 100, 110, and / or 120. Read and play, and output video data and interactive content through the display device 140.

저장 매체에는 광 디스크와 같은 착탈식 저장 매체(100), 하드디스크와 같은 로컬 스토리지(110) 뿐 아니라, 네트웍 또는 인터넷(120) 등을 통해 어플리케이션 파일을 다운로드받는 것도 포함된다. 착탈식 저장 매체(100)에는 비디오 및 오디오 데이터가 압축 부호화된 동영상 데이터(102)와 게임, 채팅, 부가 정보 표시등의 인터랙티브 기능을 제공하기 위한 어플리케이션 파일(104)이 기록된다. 이러한 인터랙티브 컨텐츠(어플리케이션 파일)는 착탈식 저장 매체뿐만 아니라, 로컬 스토리지(110) 또는 네트웍 또는 인터넷(120) 서버 등에 저장될 수도 있다. The storage medium includes not only a removable storage medium 100 such as an optical disk, a local storage 110 such as a hard disk, but also a download of an application file through a network or the Internet 120. The removable storage medium 100 records video data 102 in which video and audio data are compressed and encoded, and an application file 104 for providing an interactive function of a game, a chat, and an additional information indicator. Such interactive content (application file) may be stored in a local storage 110 or a network or internet 120 server, as well as a removable storage medium.

본 발명의 바람직한 실시예에 따른 재생 장치(130)는, 저장 매체로부터 동영상 데이터를 읽어들여 AV 디코더를 통해 동영상 데이터를 디코딩한 후 영상과 소리의 형태로 출력한다. The playback apparatus 130 according to an exemplary embodiment of the present invention reads video data from a storage medium, decodes the video data through an AV decoder, and outputs the video data in the form of video and sound.

한편, 인터랙티브 컨텐츠(104, 112 및/또는 122)는 자바 어플리케이션과 같이 프로그램에 의해 동작하는 형태와, HTML(Hyper Text Markup Language) 마크업 문서에 정의된 데이터 구조에 따라 동작하는 형태가 있다. 이하에서는, 전자를 프로그램 데이터(Program data)라 약칭하고, 후자를 브라우저 데이터(Browser data)라 약칭한다. 프로그램 데이터 및/또는 브라우저 데이터 형태의 인터랙티브 컨텐츠를 통칭하여 어플리케이션 파일이라고 하기도 한다.On the other hand, the interactive content 104, 112 and / or 122 has a form that operates according to a program, such as a Java application, and a data structure defined in the Hyper Text Markup Language (HTML) markup document. In the following, the former is abbreviated as program data and the latter is abbreviated as browser data. Interactive content in the form of program data and / or browser data may be collectively referred to as an application file.

이들 프로그램 데이터 및/또는 브라우저 데이터를 포함하는 인터랙티브 컨텐츠는 후술하는 각 어플리케이션 엔진에 의해 실행된다. 후술하는 어플리케이션 매니저는 각 어플리케이션 엔진을 제어한다. 사용자는 리모트 컨트롤러, 마우스 등의 입력 장치를 통해 어플리케이션을 제어할 수 있다. Interactive content including these program data and / or browser data is executed by each application engine described later. The application manager described later controls each application engine. The user can control the application through an input device such as a remote controller or a mouse.

예를 들면, 저장 매체에 영화와 같은 비디오 및 오디오로 구성된 동영상 데이터가 기록되고, 인터랙티브 컨텐츠(어플리케이션 파일)로 영화에 대한 대본, 촬영장소에 대한 정보, 배우 및 감독의 인터뷰 정보 등을 저작한 어플리케이션이 기록되어 있는 경우, 각각을 재생하여 하나의 화면에 출력할 수 있다. 사용자는 리모콘 등을 조작하여 어플리케이션을 제어할 수도 있다. 이에 따라, 동영상 데이터와 함께 사용자와의 인터랙티브 기능을 제공하는 다양한 어플리케이션이 재생될 수 있다. For example, video data consisting of video and audio such as a movie is recorded on a storage medium, and an interactive content (application file) is an application that authors a script for a movie, information on a shooting location, interview information of an actor and a director, and the like. If this is recorded, each can be reproduced and output on one screen. The user may control the application by operating a remote controller or the like. Accordingly, various applications that provide an interactive function with the user together with the video data may be played.

나아가, 인터랙티브 컨텐츠는 선택적으로 착탈식 저장매체로부터 읽어 들일 수도 있고, 재생 장치에 구비된 네트웍 인터페이스를 이용하여 영화사의 웹 서비스와 접속하여 어플리케이션 파일을 다운로드받을 수도 있으며, 영화사에서 제작한 새로운 어플리케이션 파일을 다운로드받은 후 하드디스크와 같은 로컬 스토리지에 저장하고, 차후에 사용자가 원하는 시점에 다시 재생할 수도 있다.Furthermore, interactive content may be selectively read from a removable storage medium, the application file may be downloaded by connecting to a web service of a film company using a network interface provided in a playback device, or a new application file produced by a film company may be downloaded. After receiving it, you can save it to local storage such as a hard disk and play it again later.

이하에서는 본 발명의 바람직한 실시예에 따른 동영상 데이터 및 인터랙티브 컨텐츠를 함께 재생하는 재생 장치의 하드웨어 구성을 살펴본다.Hereinafter, a hardware configuration of a playback apparatus that plays back video data and interactive content according to a preferred embodiment of the present invention will be described.

도 2는 본 발명의 바람직한 실시예에 따른 재생 장치의 하드웨어의 구성의 일 예를 나타낸 도면이다.2 is a diagram illustrating an example of a hardware configuration of a playback apparatus according to a preferred embodiment of the present invention.

도 2를 참조하면, 본 발명의 바람직한 실시예에 따른 재생 장치(200)는, 호스트 프로세서(210), AV 디코더(212), 그래픽 제어기(214), 비디오 랜더러(220), 오디오 랜더러(222), 사용자 인터페이스(224), 메모리(230) 및 기타 저장 매체에 대한 인터페이스(232, 234 및/또는 236)를 포함한다. Referring to FIG. 2, a playback apparatus 200 according to a preferred embodiment of the present invention includes a host processor 210, an AV decoder 212, a graphics controller 214, a video renderer 220, and an audio renderer 222. , Interfaces 232, 234, and / or 236 to user interface 224, memory 230, and other storage media.

호스트 프로세서(210)는, 재생 장치(200)의 전체 동작을 제어한다. 후술하는 동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 각 어플리케이션 엔진은 호스트 프로세서(210) 상에서 실행된다.The host processor 210 controls the overall operation of the reproduction device 200. Each application engine that reproduces video data and interactive content, which will be described later, is executed on the host processor 210.

AV 디코더(212)는, 저장 매체로부터 읽어들여 메모리(230) 또는 외부 메모리(도시하지 않음)에 저장된 동영상 데이터를 읽어들여 디코딩한 후, 영상 데이터를 비디오 랜더러(220)로 출력한다. The AV decoder 212 reads from the storage medium, decodes moving image data stored in the memory 230 or an external memory (not shown), and outputs the image data to the video renderer 220.

그래픽 제어기(214)는, 전술한 호스트 프로세서 상에서 실행되는 재생 엔진이 인터랙티브 컨텐츠를 재생하여 출력한 결과인 그래픽 데이터를, AV 디코더(212)에서 출력된 영상 데이터와 합성하기에 알맞은 데이터로 변환하여 비디오 랜더러(220)로 출력한다. The graphics controller 214 converts the graphic data, which is the result of the reproduction engine playing on the above-described host processor to reproduce and output the interactive content, into data suitable for compositing with the image data output from the AV decoder 212, and the video. Output to the renderer 220.

비디오 랜더러(220)는, AV 디코더(212)로부터 출력된 영상 데이터와 그래픽 제어기(214)로부터 출력된 그래픽 데이터를 합성하여 비디오 출력 장치로 출력한다. 여기에는 비디오 영상의 크기를 줄이는 스케일러 기능 및 그래픽 데이터를 영상 데이터와 합성하는 블랜딩 기능이 포함된다. The video renderer 220 synthesizes the image data output from the AV decoder 212 and the graphic data output from the graphic controller 214 and outputs them to the video output device. This includes a scaler function to reduce the size of the video image and a blending function to synthesize graphic data with the image data.

오디오 랜더러(222)는, AV 디코더(212)에서 디코딩 하여 출력되는 멀티 채널 오디오 데이터 스트림을 합성하여 오디오 출력 장치로 출력한다. The audio renderer 222 synthesizes a multi-channel audio data stream decoded by the AV decoder 212 and outputs the synthesized audio channel to the audio output device.

사용자 인터페이스(224)는, 리모콘, 마우스, 키보드, 조이스틱과 같은 사용자 입력 장치의 입력 신호를 처리하여 호스트 프로세서(210)에 전달한다. The user interface 224 processes and inputs input signals of a user input device such as a remote controller, a mouse, a keyboard, and a joystick to the host processor 210.

기타 저장 매체에 대한 인터페이스(232, 234 및/또는 236)로서, 착탈식 드라이브 인터페이스(232), 로컬 스토리지 인터페이스(234), 네트웍 인터페이스(236) 등이 포함된다.Interfaces 232, 234 and / or 236 to other storage media include removable drive interfaces 232, local storage interfaces 234, network interfaces 236, and the like.

착탈식 드라이브 인터페이스(232)는, 착탈식(removable) 저장 매체로부터 동영상 데이터 및/또는 인터랙티브 컨텐츠 등의 데이터를 읽어들여 메모리(230)에 저장한다. The removable drive interface 232 reads data such as moving picture data and / or interactive content from a removable storage medium and stores the data in the memory 230.

로컬 스토리지 인터페이스(234)는, 하드디스크 드라이브와 같이 재생 장치에 고정되어 착탈이 불가능한 저장 매체로부터 동영상 데이터 및/또는 인터랙티브 컨텐츠 등의 데이터를 읽어들여 메모리(230)에 저장한다. The local storage interface 234 reads data such as moving image data and / or interactive content from a storage medium that is fixed to a playback device such as a hard disk drive and is not removable, and stores the data in the memory 230.

네트웍 인터페이스(236)는, 인터넷과 같은 외부 네트웍 망을 연결하여 원격지의 서버 등으로부터 인터랙티브 컨텐츠를 다운로드받아 메모리(230) 또는 로컬 스토리지(234)에 저장한다.The network interface 236 connects an external network such as the Internet, downloads interactive content from a remote server, and stores the interactive content in the memory 230 or the local storage 234.

이하에서는 본 발명의 바람직한 실시예에 따른 동영상 데이터 및 인터랙티브 컨텐츠를 함께 재생하는 재생 장치의 소프트웨어 구성을 살펴본다.Hereinafter, a software configuration of a playback apparatus that plays back video data and interactive content according to a preferred embodiment of the present invention will be described.

도 3은 본 발명의 바람직한 실시예에 따른 재생 장치의 소프트웨어의 구성의 일 예를 나타낸 도면이다.3 is a diagram showing an example of the configuration of the software of the playback apparatus according to the preferred embodiment of the present invention.

도 3을 참조하면, 전술한 재생 장치의 하드웨어 기반(300) 위에서, 호스트 프로세서(210)에서 실행되는 소프트웨어의 구성이 도시되어 있다. 본 발명에 따른 재생 장치의 소프트웨어는 프리젠테이션 엔진(310), 어플리케이션 엔진(312, 314 및/또는 316) 및 어플리케이션 매니저(318)를 포함한다. Referring to FIG. 3, the configuration of software executed in the host processor 210 is illustrated on the hardware base 300 of the above-described playback apparatus. The software of the playback device according to the present invention includes a presentation engine 310, an application engine 312, 314 and / or 316 and an application manager 318.

프리젠테이션 엔진(310)은, 전술한 AV 디코더(212)를 제어하여 압축 부호화된 동영상 데이터를 디코딩 하여 재생한다. The presentation engine 310 controls the above-described AV decoder 212 to decode and reproduce compressed and encoded video data.

어플리케이션 엔진(312, 314 및/또는 316)은, 네비게이션 엔진(312), 프로그램 엔진(314) 및/또는 브라우저 엔진(316)을 포함한다. The application engines 312, 314 and / or 316 include a navigation engine 312, a program engine 314 and / or a browser engine 316.

네비게이션 엔진(312)은, 네비게이션 명령어와 같은 동영상 데이터의 재생을 제어하는 명령어들의 모음으로 이루어진 무비(Movie) 애플리케이션을 실행한다. The navigation engine 312 executes a Movie application consisting of a collection of commands that control the playback of video data, such as navigation commands.

프로그램 엔진(314)은, 자바의 바이트 코드(Byte code)와 같은 명령어들의 모음으로 이루어진 자바 어플리케이션(프로그램 데이터라고도 함)을 실행한다. 즉, 게임, 채팅, 디렉터스 코멘터리(director's commentary) 등의 기능을 구현하는 특정 프로그램을 실행하여, 동영상을 이용한 사용자와의 인터랙티브 기능을 제공한다. The program engine 314 executes a Java application (also called program data) consisting of a collection of instructions, such as Java's byte code. That is, a specific program that implements functions such as game, chat, director's commentary, and the like is executed to provide an interactive function with a user using a video.

브라우저 엔진(316)은, HTML과 같은 마크업 문서로 이루어진 마크업 언어 어플리케이션(브라우저 데이터라고도 함)을 실행한다. 즉, 브라우저 데이터에 포함된 마크업 언어나 실행용 스크립트 언어로 구성된 브라우징 명령을 실행하여, 마크업 문서로부터 동영상 데이터와 관련된 정보를 가져와 동영상 데이터와 함께 이를 재생할 수 있다.The browser engine 316 executes a markup language application (also referred to as browser data) composed of markup documents such as HTML. That is, by executing a browsing command composed of a markup language or an execution script language included in the browser data, information related to moving image data may be retrieved from the markup document and reproduced together with the moving image data.

이 때, 전술한 네비게이션 엔진(312), 프로그램 엔진(314) 및 브라우저 엔진(316)은 전술한 프리젠테이션 엔진(310)에 대한 API 함수(도 3의 실선 화살표 참조)를 사용하여 동영상을 이용한 인터랙티브 기능을 제공할 수 있다.At this time, the above-described navigation engine 312, program engine 314 and browser engine 316 are interactive using a video using the API function (see solid arrow in FIG. 3) for the presentation engine 310 described above. Can provide functionality.

어플리케이션 매니저(318)는, 전술한 각각의 어플리케이션 엔진(312, 314 및/또는 316)들을 제어하여 동영상 데이터의 재생 및 어플리케이션의 실행을 관리한다. 어플리케이션 매니저(318)에 대해서는 도 4에서 상술한다.The application manager 318 controls the respective application engines 312, 314 and / or 316 described above to manage the reproduction of moving image data and the execution of the application. The application manager 318 is described in detail with reference to FIG. 4.

전술한 소프트웨어 리소스들은 도 3에 도시된 바와 같이 하드웨어 리소스(300)를 기반으로 특히 호스트 프로세서(210) 상에서 실행된다.The aforementioned software resources are executed in particular on the host processor 210 based on the hardware resource 300 as shown in FIG. 3.

그밖에 재생 장치의 소프트웨어에는, 어플리케이션 엔진에서 요구하는 GUI(Graphic User Interface) 기능이나 그래픽 이미지 핸들링 기능을 제공하는 네이티브 라이브러리(native library), 어플리케이션 엔진에서 요구하는 메모리 할당 요구, 태스크 생성 요구등 실시간 운영체계가 지원하는 기능을 제공하는 시스템 소프트웨어, JPEG, PNG 및 폰트 데이터(Font data)와 같은 데이터를 디코딩 하는 네이티브 컨텐트 디코더(Native Content Decoder) 등을 포함할 수 있다.In addition, the software of the playback device includes a real-time operating system such as a graphical user interface (GUI) function required by the application engine or a native library providing graphic image handling, a memory allocation request required by the application engine, and a task generation request. It may include a system software that provides a function supported by the native content decoder, a native content decoder for decoding data such as JPEG, PNG and font data.

도 4는 도 3에 도시된 어플리케이션 매니저(318)가 인터랙티브 컨텐츠의 재생을 제어하는 과정을 설명하기 위한 도면이다.4 is a diagram for describing a process of the application manager 318 illustrated in FIG. 3 controlling playback of interactive content.

도 4를 참조하면, 어플리케이션 매니저(318)는, 착탈식 저장 매체, 로컬 스토리지, 네트웍 등의 저장 매체로부터 읽어들인 어플리케이션 파일을 해석하여 어플리케이션 엔진(312, 314 및/또는 316)에서 실행할 수 있도록 준비한다. 이 과정에서 어플리케이션 파일은 실행될 수 있는 형태의 어플리케이션 컨텍스트(application context)로 생성된다. 컨텍스트는 마이크로소프트의 윈도우나 리눅스에서 사용되는 실행 프로세스(process)와 같은 의미이다. 간단한 예를 들면, 윈도에서 계산기 프로그램을 두 번 실행시키는 경우, 저장 매체에 저장된 프로그램 파일은 하나이지만, 메모리 상에는 2개의 실행 프로세스(컨텍스트)가 생성된다.Referring to FIG. 4, the application manager 318 analyzes an application file read from a storage medium such as a removable storage medium, a local storage, or a network, and prepares the application file to be executed by the application engines 312, 314, and / or 316. . In this process, the application file is generated as an application context of an executable form. Context is synonymous with the execution process used by Microsoft's Windows or Linux. In a simple example, when running the calculator program twice in Windows, there is only one program file stored on the storage medium, but two execution processes (contexts) are created on the memory.

또한, 어플리케이션 매니저(318)는 광디스크와 같은 저장 매체가 재생 장치로 삽입되는 경우, 맨 처음 실행시켜야 하는 어플리케이션 파일을 찾는다. 나아가, 각 어플리케이션 파일이 어떤 실행모드에서 동작하는지를 판단하여 해당하는 실행모드로 동작시키기 위해 해당하는 어플리케이션 엔진(312, 314 및/또는 316)을 초기화한다. 여기서 실행 모드란 무비 모드, 프로그램 모드(또는 자바 실행 모드) 및/또는 브라우저 모드(또는 마크업 실행 모드) 중하나를 가리킨다. 각 어플리케이션 엔진의 동작 정의에 따라 한 개 또는 복수개의 어플리케이션이 실행될 수 있다.In addition, the application manager 318 finds an application file to be executed first when a storage medium such as an optical disc is inserted into the playback apparatus. Furthermore, the application engines 312, 314 and / or 316 are initialized to determine which execution mode each application file operates in and to operate in the corresponding execution mode. Here, the execution mode refers to one of a movie mode, a program mode (or Java execution mode), and / or a browser mode (or markup execution mode). One or a plurality of applications may be executed according to the operation definition of each application engine.

이하에서는 어플리케이션 매니저(318)가 어플리케이션 엔진을 초기화/종료화하는 과정을 설명한다.Hereinafter, a process of initializing / terminating the application engine by the application manager 318 will be described.

도 5는 본 발명에 따른 어플리케이션 매니저(318)가 어플리케이션의 실행환경 및 어플리케이션을 초기화/종료화하는 과정을 설명하기 위한 도면이다.5 is a view for explaining a process in which the application manager 318 according to the present invention initializes / terminates the execution environment of the application and the application.

도 5를 참조하면, 어플리케이션 매니저(318)는 어플리케이션 엔진에서 어플리케이션이 실행되기 전에 도시된 바와 같이 실행에 필요한 초기화 작업을 수행한다. Referring to FIG. 5, the application manager 318 performs an initialization task required for execution as shown before the application is executed in the application engine.

어플리케이션 실행환경의 초기화(Application Execution Environment Initialization)(500)란, 어플리케이션이 실행되기 이전에, 현재의 실행모드와 다른 실행 모드로 모드 전환이 되거나, 저장 매체가 재생 장치에 삽입되는 경우, 어플리케이션의 실행 전에 그 실행 환경을 초기화하는 과정을 말한다. 어플리케이션의 초기화(Application Initialization)(510 또는 520)란, 저장 매체에 기록된 어플리케이션 파일을 디렉토리 구조를 가진 메모리 상의 파일 시스템에 로드하는 과정과 어플리케이션에서 필요로 하는 자원을 로드하는 과정에서 일어나는 모든 작업을 말한다. 보통 어플리케이션의 실행을 위한 실행 디렉토리의 생성 등이 이루어지는데, 구체적인 과정은 후술한다.Application Execution Environment Initialization 500 refers to the execution of an application when a mode is switched to an execution mode different from the current execution mode or a storage medium is inserted into a playback device before the application is executed. This is the process of initializing the execution environment before. Application initialization (510 or 520) refers to all operations that occur during the process of loading application files recorded on the storage medium into a file system on a memory having a directory structure and loading resources required by the application. Say. Usually, an execution directory is created for executing an application, and the like, which will be described later.

어플리케이션의 실행환경이 초기화(500)되면, 실행될 어플리케이션의 라이프 사이클(512)에 따라 어플리케이션의 초기화(510)가 이루어지며, 라이프 사이클이 종료됨에 따라 어플리케이션이 종료화(Application Finalization)(514)된다. 실행될 어플리케이션이 존재하는 동안 이 과정이 반복되며, 더 이상 실행될 어플리케이션이 존재하지 않으면, 어플리케이션 실행환경이 종료화(Application Execution Environment Finalization)(502)된다.When the execution environment of the application is initialized 500, the application is initialized 510 according to the life cycle 512 of the application to be executed. As the life cycle ends, the application is terminated (Application Finalization) 514. This process is repeated while there is an application to be executed, and if there are no more applications to be executed, the application execution environment is terminated (Application Execution Environment Finalization) 502.

도 6은 도 5에 도시된 어플리케이션 라이프 사이클(512 및 522)로서 무비 모드에 적용되는 경우의 일 예를 설명하기 위한 도면이다.FIG. 6 is a diagram for describing an example in which the application life cycles 512 and 522 illustrated in FIG. 5 are applied to a movie mode.

도 6을 참조하면, 동영상 데이터를 재생하는 무비 모드의 경우 어플리케이션의 라이프 사이클은 액티브(active) 상태 및 정지(paused) 상태를 포함할 수 있다. 액티브(active) 상태란, 영상과 오디오가 정상 재생되는 상태 또는 고속 재생되는 상태, 비디오 재생과 오디오 재생은 멈추고 버튼은 정지된 영상 위에서 움직이는 대기(Still) 상태를 의미한다. 정지(paused) 상태란, 사용자의 일시 멈춤 버튼에 의하여 동작하는 상태이고 사용자는 또한 일시 멈춤 취소 동작에 의해 액티브(active) 상태로 돌아가도록 제어할 수 있다. 액티브(active) 상태 이후에 다른 실행 모드(예를 들면, 프로그램 모드 또는 브라우저 모드)로 모드 전환할 경우에는 전환된 모드의 새로운 어플리케이션 엔진(예를 들면, 프로그램 엔진 또는 브라우저 엔진)으로 재생 장치의 제어권을 넘길 수도 있다.Referring to FIG. 6, in a movie mode for playing video data, a life cycle of an application may include an active state and a paused state. The active state refers to a state in which video and audio are normally played or fast played, and video and audio are stopped and buttons are moved in a still state. The paused state is a state of operation by a pause button of the user and the user may also control to return to an active state by a pause cancellation operation. If you switch to a different execution mode (eg program mode or browser mode) after an active state, you control the playback device with a new application engine (eg program engine or browser engine) in the switched mode. You can also pass

도 7은 도 5에 도시된 어플리케이션 라이프 사이클(512 및 522)로서 프로그램 모드에 적용되는 경우의 일 예를 설명하기 위한 도면이다.FIG. 7 is a diagram for describing an example in which the application life cycles 512 and 522 illustrated in FIG. 5 are applied to a program mode.

도 7을 참조하면, 프로그램 모드의 자바 어플리케이션은, 로드(loaded), 정지(pause), 액티브(active) 및 디스트로이(destroyed)의 4가지 상태의 라이프 사이클을 갖는다. 어플리케이션 매니저(318)는, 자바 어플리케이션의 실행을 위하여 자바 어플리케이션을 실행할 디렉토리를 만들고, 자바 어플리케이션 파일을 미리 메모리 상의 파일 시스템에 로드한다. 이 과정을 거쳐 초기화된 자바 어플리케이션은 4가지 상태의 라이프 사이클에 따라 실행된다. Referring to FIG. 7, a Java application in program mode has four life cycles: loaded, paused, active, and destroyed. The application manager 318 creates a directory for executing the Java application to execute the Java application, and loads the Java application file in the file system on the memory in advance. Java applications initialized through this process run according to the life cycle of four states.

로드(loaded) 상태란, 예를 들면, 자바 가상 머신(Java Virtual Machine: 이하 JVM으로 약칭함) 실행 엔진과 같은 프로그램 엔진이, 자바 어플리케이션의 실행파일인 클래스(class) 파일을 자바 가상 머신(JVM)의 실행 메모리에 해석된 코드로 로드한 상태를 말한다. 해석과정에는 다수의 클래스(class) 파일과 실행 엔진내의 클래스 패키지(class package)간의 연결(Linking)과정을 포함한다. 또한 실행을 위한 자바 어플리케이션의 컨텍스트도 생성된 상태이다. In the loaded state, for example, a program engine, such as a Java Virtual Machine (JVM) execution engine, uses a Java virtual machine (JVM) as a class file that is an executable file of a Java application. ) Is the state loaded by the interpreted code in the execution memory. The interpretation process involves the linking of multiple class files with class packages in the execution engine. It also creates a context for the Java application to run.

정지(pause) 상태란, 자바 가상 머신(JVM) 실행 엔진과 같은 프로그램 엔진이, 자바 어플리케이션의 해석된 실행코드 중 initXlet() 메소드의 호출을 완료한 상태를 말한다.A pause state is a state in which a program engine, such as a Java virtual machine (JVM) execution engine, completes a call to an initXlet () method in interpreted executable code of a Java application.

액티브(active) 상태란, 자바 가상 머신(JVM) 실행 엔진과 같은 프로그램 엔진이, 자바 어플리케이션의 해석된 실행코드 중 startXlet() 메소드의 호출을 완료한 상태를 말한다. 이 상태에서 자바 어플리케이션은 자바 가상 머신(JVM) 상에서 이벤트를 수신하고 이벤트에 따른 호출 동작을 계속해서 실행할 수 있다. An active state is a state in which a program engine, such as a Java virtual machine (JVM) execution engine, completes a call to the startXlet () method in interpreted executable code of a Java application. In this state, a Java application can receive events on the Java Virtual Machine (JVM) and continue executing the call operations.

디스트로이(destroyed) 상태란, 자바 가상 머신(JVM) 실행 엔진과 같은 프로그램 엔진이, 자바 어플리케이션의 해석된 실행코드 중 DestroyXlet() 메소드를 실행한 상태이다. 더 이상 자바 어플리케이션의 컨텍스트가 존재하지 않는 상태이다. 컨텍스트가 없어지면, 어플리케이션 매니저(318)는 해당 컨텍스트가 사용했던 어플리케이션의 종료화(Application Finalization)를 수행한다. 이것은 후술하는 어플리케이션의 실행 디렉토리인 APPS 디렉토리의 모든 파일들이 제거되는 것을 의미한다. 디스트로이(destroyed) 상태 이후에 다른 실행 모드(예를 들면, 무비 모드 또는 브라우저 모드)로 모드 전환할 경우에는 전환된 모드의 새로운 어플리케이션 엔진(예를 들면, 네비게이션 엔진 또는 브라우저 엔진)으로 재생 장치의 제어권을 넘길 수도 있다.A destroyed state is a state in which a program engine, such as the Java virtual machine (JVM) execution engine, executes a DestroyXlet () method in interpreted executable code of a Java application. The context of the Java application no longer exists. When the context disappears, the application manager 318 performs application finalization used by the context. This means that all files in the APPS directory, which is the execution directory of the application described later, are removed. If you switch to a different execution mode (for example, movie mode or browser mode) after the destroyed state, you control the playback device with a new application engine (for example, a navigation engine or a browser engine) in the switched mode. You can also pass

도 8은 도 5에 도시된 어플리케이션 라이프 사이클(512 및 522)로서 브라우저 모드에 적용되는 경우의 일 예를 설명하기 위한 도면이다.FIG. 8 is a diagram for describing an example in which the application life cycles 512 and 522 illustrated in FIG. 5 are applied to a browser mode.

도 8을 참조하면, 브라우저 모드의 마크업 언어 어플리케이션은, 로드(loaded), 액티브(active) 및 터미네이트(terminated)의 3가지 상태의 라이프 사이클을 갖는다. 어플리케이션 매니저(318)는, 마크업 언어 어플리케이션의 실행을 위하여 마크업 언어 어플리케이션을 실행할 디렉토리를 만들고, 마크업 언어 어플리케이션 파일을 미리 메모리 상의 파일 시스템에 로드한다. 이 과정을 거쳐 초기화된 마크업 언어 어플리케이션은 3가지 상태의 라이프 사이클에 따라 실행된다. Referring to FIG. 8, a markup language application in a browser mode has three life cycles: loaded, active, and terminated. The application manager 318 creates a directory for executing the markup language application to execute the markup language application, and loads the markup language application file into the file system on the memory in advance. The markup language application initialized through this process is executed according to three life cycles.

로드(loaded) 상태란, 마크업 언어 어플리케이션 엔진과 같은 브라우저 엔진을 통해 마크업 문서를 분석하고, 해석된 문서를 재생 장치의 내부에서 처리할 수 있는 데이터 구조로 실행 엔진 내의 실행 메모리에 로드한 상태를 말한다. 이러한 로드과정이 성공하면 마크업 문서는 액티브(active) 상태로 전환되며 사용자와 인터랙션을 할 수 있다.A loaded state is a state in which a markup document is analyzed through a browser engine such as a markup language application engine, and the interpreted document is loaded into execution memory in the execution engine as a data structure that can be processed inside the playback device. Say. If this loading process succeeds, the markup document becomes active and can interact with the user.

터미네이트(terminated) 상태란, 마크업 문서가 더 이상 실행 엔진의 실행 메모리에서 사용되지 않고 제거된 상태를 의미한다. 터미네이트(terminated) 상태 이후에는 어플리케이션 실행 디렉토리의 모든 파일들이 제거된다. 어플리케이션 엔진은 새로운 문서를 다시 메모리에 로드하여 로드(loaded) 상태로 전환하여 새로운 어플리케이션을 시작할 수 있다. 또는 디스트로이(destroyed) 상태 이후에 다른 실행 모드(예를 들면, 무비 모드 또는 프로그램 모드)로 모드 전환할 경우에는 전환된 모드의 새로운 어플리케이션 엔진(예를 들면, 네비게이션 엔진 또는 프로그램 엔진)으로 재생 장치의 제어권을 넘길 수도 있다.The terminated state means that the markup document is no longer used in the execution engine's execution memory and has been removed. After the terminated state, all files in the application run directory are removed. The application engine can start a new application by loading the new document back into memory and transitioning to the loaded state. Or when switching to another execution mode (for example, a movie mode or a program mode) after the destroyed state, a new application engine (for example, a navigation engine or a program engine) in the switched mode is used to You can also pass control.

다른 실행 모드로 모드 전환을 하는 경우에는 어플리케이션 실행환경 종료화(Application Execution Environment Finalization)(502)가 수행되며, 어플리케이션 매니저(318)는 후술하는 실행 디렉토리인 APPS 디렉토리와 휘발성 메모리를 관리하는 디렉토리인 TEMPORAL 디레토리의 데이터를 삭제하고 새로운 실행모드로 전환한다.When the mode is switched to another execution mode, the application execution environment finalization (Application Execution Environment Finalization) 502 is performed, and the application manager 318 is TEMPORAL which is a directory managing the APPS directory and the volatile memory, which will be described later. Delete the data in the directory and switch to the new run mode.

도 9는 도 5에 도시된 어플리케이션 실행환경의 초기화(500) 과정에서 생성되는 파일 디렉토리 구조를 설명하기 위한 도면이다.FIG. 9 is a diagram for describing a file directory structure generated during the initialization 500 of the application execution environment shown in FIG. 5.

도 9를 참조하면, 어플리케이션 매니저(318)는 어플리케이션 실행환경의 초기화 과정으로 동영상 데이터를 관리하는 BDMV 디렉토리와 TEMPORAL, PERSISTENT, AUXILIARY, ROMDAT의 디렉토리를 메모리 상의 파일 시스템 내에 생성한다. Referring to FIG. 9, the application manager 318 creates a BDMV directory for managing video data and a directory of TEMPORAL, PERSISTENT, AUXILIARY, and ROMDAT in a file system on a memory in an initialization process of an application execution environment.

TEMPORAL 디렉토리는, 어플리케이션이 접근 가능한 휘발성 저장 매체의 디렉토리를 연결한 디렉토리이다. TEMPORAL 디렉토리는 어플리케이션간의 고속의, 일시적 파일 공유에 사용될 수 있다. PERSISTENT 디렉토리는, 하드디스크 등과 같은 비휘발성 저장매체의 디렉토리를 연결한 디렉토리이다. PERSISTENT 디렉토리는 인터넷등의 외부 매체로부터 수신한 데이터를 저장할 수 있다. 동영상 데이터, 재생 제어 정보, 자바 어플리케이션, 마크업 언어 어플리케이션 등을 저장한 파일이 저장될 수 있다. 또한 AUXILIARY은 착탈식 저장 매체의 디렉토리를 연결한 디렉토리이다. AUXILIARY 디렉토리는 착탈식 보조 저장 매체가 재생 장치에 연결될 때, 그 착탈식 저장 매체의 디렉토리와 연결해주는 디렉토리이다. ROMDAT 디렉토리는 실제 착탈식 광디스크의 디렉토리를 연결한 디렉토리이다. BDMV 디렉토리는 ROMDAT 디렉토리의 AV 데이터 또는 어플리케이션 데이터 및 기타 다른 디렉토리의 AV 데이터 또는 어플리케이션 데이터를 이용하여 어플리케이션의 실행과정에서 생성해낸 AV 데이터의 디렉토리이다. 또한 구현 예에 따라, 전술한 디렉토리 명은 변경될 수 있으며, getDirectoryName("PERSISTENT") 등의 응용 프로그램 인터페이스(API)를 통해 현재 재생 장치에서 사용하고 있는 PERSISTENT 디렉토리 명의 정확한 경로명을 알아낼 수도 있다. The TEMPORAL directory is a directory that connects directories of volatile storage media accessible to applications. The TEMPORAL directory can be used for fast, temporary file sharing between applications. The PERSISTENT directory is a directory in which a directory of a nonvolatile storage medium such as a hard disk is connected. The PERSISTENT directory can store data received from an external medium such as the Internet. A file storing video data, playback control information, a Java application, a markup language application, and the like may be stored. Also, AUXILIARY is a directory that connects directories of removable storage media. The AUXILIARY directory is a directory which, when a removable auxiliary storage medium is connected to a playback device, connects to the directory of the removable storage medium. The ROMDAT directory is a directory that connects the directories of the actual removable optical disc. The BDMV directory is a directory of AV data generated during execution of an application by using AV data or application data of the ROMDAT directory and AV data or application data of another directory. In addition, according to the implementation example, the above-described directory name may be changed, and an exact path name of the PERSISTENT directory name currently used in the playback device may be determined through an application program interface (API) such as getDirectoryName ("PERSISTENT").

예를 들어, 무비 모드의 어플리케이션의 경우, BDMV 디렉토리의 MovieObject.bdmv 파일에서 어플리케이션 실행 오브젝트가 추출되어 전술한 네비게이션 엔진에 의해 실행된다. 실행되는 무비 모드의 어플리케이션의 상태는 도 6에 도시된 바와 같은 상태도에 따라 동작한다. For example, in the case of an application in the movie mode, an application execution object is extracted from the MovieObject.bdmv file in the BDMV directory and executed by the above-described navigation engine. The state of the application in the movie mode to be executed operates according to the state diagram as shown in FIG.

도 10은 도 5에 도시된 어플리케이션의 초기화(510) 과정에서 생성되는 파일 디렉토리 구조를 설명하기 위한 도면이다.FIG. 10 is a diagram for describing a file directory structure generated during the initialization 510 of the application illustrated in FIG. 5.

도 10을 참조하면, 어플리케이션 매니저(318)는 도 5에 도시된 바와 같이 어플리케이션 실행환경의 초기화(500)를 마친 후, 실행될 어플리케이션을 초기화(510)한다. Referring to FIG. 10, the application manager 318 initializes 510 an application to be executed after finishing the initialization 500 of the application execution environment as illustrated in FIG. 5.

어플리케이션의 초기화(510)란, 어플리케이션 실행환경의 초기화(500)를 통해 메모리 상의 파일 시스템에 생성한 디렉토리에 대하여 어플리케이션 실행 디렉토리를 생성하고, 어플리케이션 파일(app.jar)을 로드하거나 또는 실제 저장 매체에 저장된 어플리케이션 파일과 연결하는 것을 말한다. The initialization of the application 510 is to create an application execution directory with respect to a directory created in the file system on the memory through the initialization of the application execution environment 500, load the application file (app.jar) or to the actual storage medium Linking with a stored application file.

한편, 종래의 선 마이크로 시스템의 자바인 J2SE는, 저장 매체 상의 저장 디렉토리를 바로 실행 디렉토리로 사용한다. 따라서, 읽기 전용 저장 매체에 파일 쓰기가 필요한 자바 어플리케이션이 저장된 경우, 저장 매체에의 기록이 불가능하므로 어플리케이션의 실행에 실패하게 된다. On the other hand, J2SE, which is a Java of the conventional sun microsystem, uses a storage directory on a storage medium as an execution directory. Therefore, when a Java application that requires file writing is stored in a read-only storage medium, writing to the storage medium is impossible and thus the execution of the application fails.

그러나, 본 발명에 따른 재생 장치에 있어서는, 실행 디렉토리가 메모리 상의 파일 시스템에 생성되고, 어플리케이션 파일(app.jar)을 로드하거나, 또는 실제 저장 매체에 저장된 어플리케이션 파일과 연결함으로써, 메모리 상의 실행 디렉토리를 읽고 쓰기가 모두 가능하여, 읽기 전용 저장 매체에 어플리케이션 파일이 저장된 경우라도 실행이 가능하다는 장점이 있다.However, in the playback apparatus according to the present invention, an execution directory is created in a file system on a memory, and an execution directory on the memory is loaded by loading an application file (app.jar) or by connecting with an application file stored in an actual storage medium. Since both reading and writing are possible, even if an application file is stored in a read-only storage medium, it can be executed.

이하에서는 전술할 본 발명에 따른 재생 장치의 구성을 기초로 동영상 데이터 및 인터랙티브 컨텐츠의 재생 방법을 살펴본다.Hereinafter, a method of playing video data and interactive content will be described based on the configuration of a playback device according to the present invention described above.

도 11은 본 발명의 바람직한 실시예에 따른 동영상 데이터 및 인터랙티브 컨텐츠의 재생 방법을 나타내는 플로우차트이다.11 is a flowchart illustrating a method of playing video data and interactive content according to an exemplary embodiment of the present invention.

도 11을 참조하면, 동영상 데이터와 함께 인터랙티브 컨텐츠를 재생하기 위하여, 먼저 어플리케이션의 실행환경을 초기화한다(1100 단계). 전술한 바와 같이, 어플리케이션 실행환경의 초기화는 BDMV, TEMPORAL, PERSISTENT, AUXILIARY, ROMDAT 등의 디렉토리를 메모리 상의 파일 시스템 내에 생성하는 과정을 포함한다. 다음으로 실행될 어플리케이션을 초기화한다(1102 단계). 즉, 어플리케이션 실행환경의 초기화를 통해 메모리 상의 파일 시스템에 생성한 디렉토리에 대하여, 어플리케이션 실행 디렉토리를 생성하고, 어플리케이션 파일을 로드하거나 또는 실제 저장 매체에 저장된 어플리케이션 파일과 연결하는 과정이 포함된다. 어플리케이션이 초기화된 후에는 각 어플리케이션의 라이프 사이클에 따라 동작하며, 어플리케이션의 라이프 사이클이 종료되면(1104 단계), 실행 중이던 어플리케이션을 종료화한다(1106 단계). 즉, 생성된 어플리케이션 실행 디렉토리를 삭제하는 과정이 포함된다. 어플리케이션의 초기화/종료화 과정(1102 단계 내지 1106 단계)은 실행될 어플리케이션이 존재하는 동안 반복될 수 있으며, 더 이상 실행될 어플리케이션이 존재하지 않으면(1108 단계), 어플리케이션 실행환경을 종료화한다(1110 단계). 즉, 휘발성 메모리를 관리하는 디렉토리(TEMPORAL 디렉토리)가 삭제되며, 어플리케이션을 실행 중인 엔진에서 어플리케이션 매니저로 제어권이 넘어가게 된다. Referring to FIG. 11, in order to reproduce interactive content together with video data, first, an execution environment of an application is initialized (step 1100). As described above, initialization of the application execution environment includes creating a directory such as BDMV, TEMPORAL, PERSISTENT, AUXILIARY, ROMDAT, etc. in a file system on a memory. Next, the application to be executed is initialized (step 1102). That is, a process of creating an application execution directory, loading an application file, or connecting an application file stored in an actual storage medium with respect to a directory created in a file system on a memory through initialization of an application execution environment. After the application is initialized, it operates according to the life cycle of each application. When the life cycle of the application ends (step 1104), the running application is terminated (step 1106). That is, the process of deleting the generated application execution directory is included. The initialization / termination process of the application (steps 1102 to 1106) may be repeated while there are applications to be executed, and if there are no more applications to be executed (step 1108), the application execution environment is terminated (step 1110). . That is, the directory managing the volatile memory (TEMPORAL directory) is deleted, and control is transferred from the engine running the application to the application manager.

전술한 어플리케이션 실행환경 및 어플리케이션의 초기화/종료화 과정은 어플리케이션의 라이프 사이클 외에도 실행 모드를 변경하는 모드 전환의 경우에도 수행될 수 있다.The above-described application execution environment and the initialization / termination process of the application may be performed in the case of mode switching to change the execution mode in addition to the life cycle of the application.

본 발명은 또한 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 디스크 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code on a computer readable recording medium. Computer-readable recording media include all kinds of recording devices that store data that can be read by a computer system. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical disk, and the like, and may also include those implemented in the form of carrier waves (eg, transmission over the Internet). do. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이상의 설명은 본 발명의 일 실시예에 불과할 뿐, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 본질적 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현할 수 있을 것이다. 따라서, 본 발명의 범위는 전술한 실시예에 한정되지 않고 특허 청구범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.The above description is only one embodiment of the present invention, and those skilled in the art may implement the present invention in a modified form without departing from the essential characteristics of the present invention. Therefore, the scope of the present invention should not be limited to the above-described examples, but should be construed to include various embodiments within the scope equivalent to those described in the claims.

전술한 바와 같이 본 발명에 따르면, 동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 장치 및 그 재생 방법이 제공된다. 이에 따라, 동영상 데이터의 재생 외에 사용자와의 인터랙티브 기능을 제공하는 프로그램 기능과 마크업 문서로부터 관련 정보를 재생할 수 있는 브라우징 기능 등의 부가 기능을 제공할 수 있다.As described above, according to the present invention, there is provided a reproducing apparatus for reproducing moving picture data and interactive contents and a reproducing method thereof. Accordingly, it is possible to provide additional functions such as a program function for providing an interactive function with the user in addition to the reproduction of the moving picture data, and a browsing function for reproducing related information from the markup document.

본 발명에 따른 재생 장치는, 마크업 언어뿐만 아니라 자바 어플리케이션 등의 프로그램 모드를 지원함으로, 마크업 언어를 이용한 종래의 인터랙티브 DVD 재생 장치에 비하여 게임, 채팅 등과 같은 어플리케이션 프로그램을 작성하고 동작시키기에 더 편리하다. The playback apparatus according to the present invention supports a program mode such as a Java application as well as a markup language, and thus is more suitable for creating and operating an application program such as a game or a chat than a conventional interactive DVD playback apparatus using a markup language. It is convenient.

또한, 매체 상의 어플리케이션 파일의 저장 디렉토리와 별도로 메모리 상에 실행 디렉토리를 생성함으로써, 쓰기 기능을 가진 자바 어플리케이션이 읽기 전용 저장 매체에 저장되어 있는 경우에도 해당 어플리케이션을 실행시킬 수 있다.In addition, by creating an execution directory on a memory separate from a storage directory of an application file on a medium, the application can be executed even when a Java application having a writing function is stored in a read-only storage medium.

나아가, 메모리 상의 실행 디렉토리는 메모리 상의 다른 디렉토리와 연결되어 어플리케이션간의 파일 공유가 가능하고, 비휘발성 로컬 스토리지에 연결된 디렉토리도 제공되므로 비휘발성 저장 매체에 쉽게 접근할 수 있다. Furthermore, the execution directory on the memory can be connected to other directories on the memory to allow file sharing among applications, and a directory connected to nonvolatile local storage can be provided to provide easy access to nonvolatile storage media.

또한, 어플리케이션 매니저에 의해 어플리케이션 실행환경의 초기화/종료화가 수행됨으로써, 어플리케이션의 실행 종료 또는 실행 모드의 전환 시에, 재생 장치가 생성한 파일들에 대해서 각 어플리케이션이 일일이 관리할 필요가 없다. 이에 따라, 어플리케이션이 실행 종료가 잘못되어 다른 어플리케이션 실행 시에 메모리가 부족하게 되는 등의 메모리 관리상의 문제점을 해결할 수 있다.In addition, the initialization and termination of the application execution environment are performed by the application manager, so that each application does not need to manage each file generated by the playback apparatus at the end of execution of the application or switching of the execution mode. As a result, a problem in memory management, such as the application being terminated incorrectly and running out of memory when executing another application, can be solved.

도 1은 본 발명의 바람직한 실시 예에 따른 동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 장치의 일 예를 나타낸 도면,1 is a view showing an example of a playback device for playing video data and interactive content according to an embodiment of the present invention;

도 2는 본 발명의 바람직한 실시예에 따른 재생 장치의 하드웨어의 구성의 일 예를 나타낸 도면,2 is a diagram showing an example of a hardware configuration of a playback apparatus according to a preferred embodiment of the present invention;

도 3은 본 발명의 바람직한 실시예에 따른 재생 장치의 소프트웨어의 구성의 일 예를 나타낸 도면,3 is a view showing an example of the configuration of the software of the playback device according to a preferred embodiment of the present invention;

도 4는 도 3에 도시된 어플리케이션 매니저(318)가 인터랙티브 컨텐츠의 재생을 제어하는 과정을 설명하기 위한 도면,4 is a view for explaining a process of the application manager 318 shown in FIG. 3 controls the playback of interactive content;

도 5는 본 발명에 따른 어플리케이션 매니저(318)가 어플리케이션의 실행환경 및 어플리케이션을 초기화/종료화하는 과정을 설명하기 위한 도면,5 is a view for explaining a process of the application manager 318 initializes / terminates the application execution environment and the application according to the present invention;

도 6은 도 5에 도시된 어플리케이션 라이프 사이클(512 및 522)로서 무비 모드에 적용되는 경우의 일 예를 설명하기 위한 도면,FIG. 6 is a view for explaining an example where the application life cycles 512 and 522 shown in FIG. 5 are applied to a movie mode.

도 7은 도 5에 도시된 어플리케이션 라이프 사이클(512 및 522)로서 프로그램 모드에 적용되는 경우의 일 예를 설명하기 위한 도면, FIG. 7 is a diagram for explaining an example in which the application life cycles 512 and 522 illustrated in FIG. 5 are applied to a program mode.

도 8은 도 5에 도시된 어플리케이션 라이프 사이클(512 및 522)로서 브라우저 모드에 적용되는 경우의 일 예를 설명하기 위한 도면,FIG. 8 is a diagram for describing an example in which the application life cycles 512 and 522 illustrated in FIG. 5 are applied to a browser mode.

도 9는 도 5에 도시된 어플리케이션 실행환경의 초기화(500) 과정에서 생성되는 파일 디렉토리 구조를 설명하기 위한 도면,FIG. 9 is a view for explaining a file directory structure generated during the initialization 500 of the application execution environment shown in FIG. 5;

도 10은 도 5에 도시된 어플리케이션의 초기화(510) 과정에서 생성되는 파일 디렉토리 구조를 설명하기 위한 도면,FIG. 10 is a diagram for describing a file directory structure generated in the process of initializing an application 510 of FIG. 5;

도 11은 본 발명의 바람직한 실시예에 따른 동영상 데이터 및 인터랙티브 컨텐츠의 재생 방법을 나타내는 플로우차트이다.11 is a flowchart illustrating a method of playing video data and interactive content according to an exemplary embodiment of the present invention.

Claims (19)

동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 장치에 있어서,In the playback device for playing back video data and interactive content, 상기 동영상 데이터를 디코딩 하여 재생하는 프리젠테이션 엔진;A presentation engine for decoding and playing the video data; 상기 인터랙티브 컨텐츠를 해석하여 재생하는 어플리케이션 엔진; 및An application engine for interpreting and playing back the interactive content; And 상기 동영상 데이터의 재생 및 상기 인터랙티브 컨텐츠의 재생을 제어하는 어플리케이션 매니저를 포함하는 것을 특징으로 하는 재생 장치.And an application manager for controlling playback of the video data and playback of the interactive content. 제1항에 있어서, The method of claim 1, 상기 인터랙티브 컨텐츠에는 프로그래밍이 가능한 자바 애플리케이션 및 마크업 문서를 이용한 마크업 언어 어플리케이션이 포함되며,The interactive content includes a programmable Java application and a markup language application using a markup document. 상기 어플리케이션 엔진은, 자바 애플리케이션을 실행하는 프로그램 엔진 및 마크업 언어 애플리케이션을 실행하는 브라우저 엔진을 포함하는 것을 특징으로 하는 재생 장치.The application engine includes a program engine for executing a Java application and a browser engine for executing a markup language application. 제1항에 있어서,The method of claim 1, 착탈식 저장 매체, 로컬 스토리지 저장 매체 및 네트웍 상의 저장 매체 중 적어도 하나로부터 상기 인터랙티브 컨텐츠를 독출하여 재생하는 것을 특징으로 하는 재생 장치. And reproducing the interactive content from at least one of a removable storage medium, a local storage storage medium, and a storage medium on a network. 제3항에 있어서, 상기 어플리케이션 매니저는 상기 착탈식 저장 매체가 상기 재생 장치로 삽입되는 경우 맨 처음 실행시켜야 할 어플리케이션을 찾는 것을 특징으로 하는 재생 장치.4. The playback device of claim 3, wherein the application manager finds an application to be executed first when the removable storage medium is inserted into the playback device. 제1항에 있어서, 상기 어플리케이션 매니저는 상기 어플리케이션을 실행시키기에 전에 어플리케이션 실행환경 초기화를 수행하는 것을 특징으로 하는 재생 장치.The playback apparatus of claim 1, wherein the application manager initializes an application execution environment before executing the application. 제5항에 있어서, 상기 어플리케이션 실행환경 초기화는, 메모리 상의 파일 시스템에서 동영상 데이터를 관리하는 디렉토리, 비휘발성 메모리를 관리하는 디렉토리, 휘발성 메모리를 관리하는 디렉토리 및 착탈식 저장 매체를 관리하는 디렉토리를 참조하도록 하는 디렉토리 초기화를 포함하는 것을 특징으로 하는 재생 장치.The method of claim 5, wherein the initialization of the application execution environment refers to a directory managing video data, a directory managing nonvolatile memory, a directory managing volatile memory, and a directory managing removable storage medium in a file system on a memory. And a directory initialization. 제5항에 있어서, 상기 어플리케이션 매니저는 상기 어플리케이션 실행환경 초기화가 수행된 후, 상기 어플리케이션 엔진에서 상기 어플리케이션을 실행시키기에 전에, 상기 어플리케이션 초기화를 수행하는 것을 특징으로 하는 재생 장치.The playback apparatus of claim 5, wherein the application manager performs the application initialization after the application execution environment initialization is performed and before the application engine executes the application. 제7항에 있어서, 상기 어플리케이션 초기화는, 메모리 상에 상기 어플리케이션의 실행 디렉토리를 생성하고, 저장 매체상의 상기 어플리케이션의 저장 디렉토리와는 별도로 메모리의 파일 시스템에서 상기 실행 디렉토리를 관리하는 것을 특징으로 하는 재생 장치.8. The reproduction of claim 7, wherein the application initialization creates an execution directory of the application on a memory and manages the execution directory in a file system of a memory separately from a storage directory of the application on a storage medium. Device. 제5항에 있어서, 상기 어플리케이션 매니저는, 더 이상 실행될 상기 어플리케이션이 존재하지 않거나, 다른 어플리케이션 실행 모드로 전환하는 경우에, 어플리케이션 실행환경 종료화를 수행하는 것을 특징으로 하는 재생 장치.6. The playback apparatus of claim 5, wherein the application manager performs an application execution environment termination when the application to be executed no longer exists or when switching to another application execution mode. 제9항에 있어서, 상기 어플리케이션 실행환경 종료화는 상기 어플리케이션의 실행 디렉토리 및 상기 휘발성 메모리를 관리하는 디렉토리의 내용을 삭제하는 것을 특징으로 하는 재생 장치.10. The reproducing apparatus according to claim 9, wherein the application execution environment terminating deletes contents of an execution directory of the application and a directory managing the volatile memory. 제1항에 있어서, 상기 어플리케이션 매니저는, 상기 어플리케이션을 상기 어플리케이션 엔진에서 실행시키는 경우에, 상기 어플리케이션 엔진에 정의된 소정의 실행 라이프 사이클에 따라 동작하도록 제어하는 것을 특징으로 하는 재생 장치.The reproducing apparatus according to claim 1, wherein the application manager controls to operate according to a predetermined execution life cycle defined in the application engine when the application is executed in the application engine. 제11항에 있어서, 무비 모드의 경우, 상기 어플리케이션은 동작중 및 정지 상태 중 어느 하나의 실행 상태를 갖는 것을 특징으로 하는 재생 장치.12. The playback apparatus of claim 11, wherein in the movie mode, the application has an execution state of any one of an active state and a stopped state. 제11항에 있어서, 자바 어플리케이션 실행 모드의 경우, 상기 어플리케이션은 로드, 정지, 동작중 및 소멸 상태 중 어느 하나의 실행 상태를 갖는 것을 특징으로 하는 재생 장치.12. The playback apparatus of claim 11, wherein in the Java application execution mode, the application has an execution state of any one of a load, a stop, an active state, and an extinction state. 제11항에 있어서, 마크업 언어 어플리케이션 모드의 경우, 상기 어플리케이션은 로드, 동작중 및 종료 상태 중 어느 하나의 실행 상태를 갖는 것을 특징으로 하는 재생 장치.12. The playback apparatus according to claim 11, wherein in the markup language application mode, the application has an execution state of any one of a load, an operation, and an end state. 동영상 데이터 및 인터랙티브 컨텐츠를 재생하는 재생 방법에 있어서,In the playback method for playing back video data and interactive content, (a) 어플리케이션 실행환경을 초기화하는 단계;(a) initializing an application execution environment; (b) 어플리케이션을 초기화하는 단계;(b) initializing the application; (c) 어플리케이션의 라이프 사이클이 종료되면, 실행 중이던 어플리케이션을 종료화하는 단계; 및(c) terminating the running application when the life cycle of the application ends; And (d) 더 이상 실행될 어플리케이션이 존재하지 않거나, 실행 모드를 전환하는 경우에, 어플리케이션 실행환경을 종료화하는 단계를 포함하는 것을 특징으로 하는 재생 방법.and (d) terminating the application execution environment when there are no more applications to be executed or when switching the execution mode. 제15항에 있어서,The method of claim 15, 상기 (a) 단계는, 메모리 상의 파일 시스템에서 상기 동영상 데이터를 관리하는 디렉토리, 비휘발성 메모리를 관리하는 디렉토리, 휘발성 메모리를 관리하는 디렉토리 및 착탈식 저장 매체를 관리하는 디렉토리를 참조하도록 디렉토리를 초기화하는 단계임을 특징으로 하는 재생 방법.The step (a) may include initializing a directory to refer to a directory managing the video data, a directory managing a nonvolatile memory, a directory managing a volatile memory, and a directory managing a removable storage medium in a file system on a memory. The playback method characterized in that. 제15항에 있어서,The method of claim 15, 상기 (b) 단계는, 메모리 상에 상기 어플리케이션의 실행 디렉토리를 생성하고, 저장 매체 상의 상기 어플리케이션의 저장 디렉토리와는 별도로 메모리의 파일 시스템에서 상기 실행 디렉토리를 관리하는 단계임을 특징으로 하는 재생 방법.The step (b) is a step of creating an execution directory of the application on the memory, and managing the execution directory in the file system of the memory separately from the storage directory of the application on the storage medium. 제15항에 있어서,The method of claim 15, 상기 (c) 단계는, 어플리케이션의 실행 디렉토리의 내용을 삭제하는 단계임을 특징으로 하는 재생 방법.The step (c) is to delete the contents of the execution directory of the application. 제15항에 있어서,The method of claim 15, 상기 (d) 단계는, 상기 휘발성 메모리를 관리하는 디렉토리의 내용을 삭제하는 단계임을 특징으로 하는 재생 방법.And (d) deleting the contents of the directory managing the volatile memory.
KR1020030086511A 2003-12-01 2003-12-01 Display playback device reproducing audio-visual data and interactive contents and display playback method thereof KR20050052928A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030086511A KR20050052928A (en) 2003-12-01 2003-12-01 Display playback device reproducing audio-visual data and interactive contents and display playback method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030086511A KR20050052928A (en) 2003-12-01 2003-12-01 Display playback device reproducing audio-visual data and interactive contents and display playback method thereof

Publications (1)

Publication Number Publication Date
KR20050052928A true KR20050052928A (en) 2005-06-07

Family

ID=37248741

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030086511A KR20050052928A (en) 2003-12-01 2003-12-01 Display playback device reproducing audio-visual data and interactive contents and display playback method thereof

Country Status (1)

Country Link
KR (1) KR20050052928A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022025633A1 (en) * 2020-07-31 2022-02-03 삼성전자 주식회사 Image output method and electronic device supporting same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022025633A1 (en) * 2020-07-31 2022-02-03 삼성전자 주식회사 Image output method and electronic device supporting same

Similar Documents

Publication Publication Date Title
US20140237332A1 (en) Managing application states in an interactive media environment
KR20040049488A (en) Apparatus and method for executing an applet
US8582960B2 (en) Storage medium storing moving-image data that includes mode information, and reproducing apparatus and method
US9002182B2 (en) Storage medium storing program management information, and reproducing method and apparatus
JP5254304B2 (en) Recording medium on which program management information is recorded, method for reproducing the same, and apparatus therefor
US20040247294A1 (en) Information storage medium storing moving picture data and additional data, reproducing apparatus and method therefor
JP2007535857A (en) Recording medium recording application having programming function, reproducing apparatus, and reproducing method thereof
KR20050048416A (en) Storage medium including preloading data, display playback device and display playback method thereof
KR20050052928A (en) Display playback device reproducing audio-visual data and interactive contents and display playback method thereof
US20080170840A1 (en) Information storage medium, information playback apparatus, and information playback method
KR101014665B1 (en) Information storage medium containing preload information, apparatus and method for reproducing therefor
KR100694123B1 (en) Storage medium including audio-visual data and application programs, apparatus and method thereof
KR20060031750A (en) Storage medium recording multimedia data for reproduction of audio-visual data and programming function, and reproducing apparatus and method thereof
KR100561433B1 (en) Storage medium storing program management information, reproducing apparatus for the storage medium, and method therefor
KR100636211B1 (en) AV data reproducing apparatus and method which containing memory management table, and memory management method therein
KR20060059572A (en) Storage medium including information for playing back playlist automatically and apparatus and method thereof

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination