KR20050121271A - 그래픽스 표시에 대해 윈도우 정보를 가지고 비디오스트림과 그래픽스를 저장하기 위한 기록매체, 재생장치,기록방법, 재생방법, 프로그램, 및 집적회로 - Google Patents

그래픽스 표시에 대해 윈도우 정보를 가지고 비디오스트림과 그래픽스를 저장하기 위한 기록매체, 재생장치,기록방법, 재생방법, 프로그램, 및 집적회로 Download PDF

Info

Publication number
KR20050121271A
KR20050121271A KR1020057020409A KR20057020409A KR20050121271A KR 20050121271 A KR20050121271 A KR 20050121271A KR 1020057020409 A KR1020057020409 A KR 1020057020409A KR 20057020409 A KR20057020409 A KR 20057020409A KR 20050121271 A KR20050121271 A KR 20050121271A
Authority
KR
South Korea
Prior art keywords
graphics
window
stream
plane
picture
Prior art date
Application number
KR1020057020409A
Other languages
English (en)
Other versions
KR100760118B1 (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 마츠시타 덴끼 산교 가부시키가이샤
Publication of KR20050121271A publication Critical patent/KR20050121271A/ko
Application granted granted Critical
Publication of KR100760118B1 publication Critical patent/KR100760118B1/ko

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
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • 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/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on 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/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4112Peripherals receiving signals from specially adapted client devices having fewer capabilities than the client, e.g. thin client having less processing power or no tuning capabilities
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42646Internal components of the client ; Characteristics thereof for reading from or writing on a non-volatile solid state storage medium, e.g. DVD, CD-ROM
    • 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43074Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of additional data with content streams on the same device, e.g. of EPG data or interactive icon with a TV program
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4314Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for fitting data in a restricted space on the screen, e.g. EPG data in a rectangular grid
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • 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/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • H04N7/163Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • G09G2340/125Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels wherein one of the images is motion video
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1288Formatting by padding empty spaces with dummy data, e.g. writing zeroes or random data when de-icing optical discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/213Read-only discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2541Blu-ray discs; Blue laser DVR discs
    • 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/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • H04N5/44504Circuit details of the additional information generator, e.g. details of the character or graphics signal generator, overlay mixing circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/775Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/782Television signal recording using magnetic recording on tape
    • H04N5/783Adaptations for reproducing at a rate different from the recording rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/84Television signal recording using optical recording
    • H04N5/85Television signal recording using optical recording on discs or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/806Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components with processing of the sound signal
    • H04N9/8063Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components with processing of the sound signal using time division multiplex of the PCM audio and PCM video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • H04N9/8227Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal the additional signal being at least another television signal

Abstract

비디오 스트림과 오디오 스트림을 다중화함으로써 구성되는 AV 클립을 저장하는 기록매체가 개시된다. 비디오 스트림은 다수의 픽처로 이루어진 영화를 나타내고, 그래픽스 스트림은 픽처와 조합될 그래픽스를 나타낸다. 그래픽스 스트림은 또한 그래픽스를 렌더링하기 위한 윈도우를 지정하고 그래픽스를 픽처와 조합하는 재생장치의 플레인 메모리인 플레인 상의 윈도우의 폭, 높이 및 위치를 지시하는 윈도우 정보(WDS)를 포함한다.

Description

그래픽스 표시에 대해 윈도우 정보를 가지고 비디오 스트림과 그래픽스를 저장하기 위한 기록매체, 재생장치, 기록방법, 재생방법, 프로그램, 및 집적회로{RECORDING MEDIUM, REPRODUCTION APPARATUS, RECORDING METHOD, REPRODUCING METHOD, PROGRAM, AND INTEGRATED CIRCUIT FOR RECORDING A VIDEO STREAM AND GRAPHICS WITH WINDOW INFORMATION OVER GRAPHICS DISPLAY}
본 발명은 BD-ROM과 같은 기록매체, 재생장치에 관한 것으로, 구체적으로 비디오 스트림과 그래픽스(graphics) 스트림을 다중화하여 구성된 디지털 스트림을 재생함으로써 서브타이틀(subtitle)을 다는 기술에 관한 것이다.
그래픽스 스트림을 렌더링함으로써 실현되는 서브타이틀을 다는 것은 다른 언어권의 사람이 그들의 모국어 이외의 언어로 제작된 영화를 감상하도록 하기 위한 중요한 기술이다. 종래의 서브타이틀 기술의 일 예로 유럽전기통신 표준협회(ETSI)가 발표한 ETSI EN 300 743 표준에 기초하여 픽셀 버퍼용 메모리 할당 체계가 있다. 픽셀 버퍼(Pixel Buffer)는 압축해제된 그래픽스를 임시로 저장하는 메모리이고, 재생장치는 픽셀 버퍼의 그래픽스를 그래픽스 플레인(Graphics Plane)이라고 불리는 디스플레이 메모리에 기입하며, 그리고 나서 그래픽스가 표시된다. 메모리 할당 체계에서, 영역(Region)의 정의가 픽셀 버퍼에 포함되고, 이 영역에 대응하는 압축해제된 그래픽스가 그래픽스 플레인에 기입된다. 예를 들어, 서브타이틀 "Goodbye ... "가 픽셀 버퍼에 포함되고 영역의 위치와 크기가 "Go" 부분을 포함하도록 정의된 경우, "Go" 부분은 그래픽스 플레인에 기입되고 화면에 표시된다. 마찬가지로, 영역이 위치와 크기가 "Good" 부분을 포함하도록 정의된 경우, "Good" 부분이 화면에 표시된다.
반복하여 영역을 정의하고 그래픽스 플레인에 기입을 함으로써, 서브타이틀 "Goodbye ..."는 처음에 "Go", 다음에 "Good", 이어 "Goodbye"로 화면에 점차 표시되고, 최종적으로 전체 서브타이틀 "Goodbye ..."가 표시된다. 이러한 방법으로 서브타이틀을 표현함으로써, 와이프-인(wipe-in) 효과를 구현할 수 있다.
그러나, ETSI EN 300 743 표준은 그래픽스 플레인에 기입하기 위한 부담이 클 때 그래픽스 디스플레이와 픽처 디스플레이 사이의 동기를 보장하는 것을 전혀 고려하지 않고 있다. 그래픽스 플레인에 기입된 그래픽스는 압축되지 않으며, 따라서 그래픽스의 해상도가 높아짐에 따라 그래픽스 플레인에 기입하기 위한 부담은 증가한다. 그래픽스 플레인에 기입되는 그래픽스의 사이즈는, BD-ROM에 대해 제안되는 표준 해상도인 1920×1080 해상도에서 그래픽스를 표현할 때 2 Mbyte 까지 이며, 2 Mbyte 정도의 큰 그래픽스를 픽처 디스플레이와 동기하여 표현하기 위해서는 픽셀 버퍼에서 그래픽스 플레인으로의 그래픽스 데이터 전송을 위한 더 높은 대역폭이 필요하다. 그러나, 그래픽스를 그래픽스 플레인에 기입하는 데이터 전송을 위해 높은 대역폭을 요구하는 것은 재생장치를 제조하는데 있어 코스트를 줄이는 것을 방해한다. 재생장치가, 이전 디스플레이와의 차이만을 그래픽스 플레인에 기입하는 "적절한 기입(reasonable write)"을 항상 수행하도록 함으로써 그래픽스 플레인에 기입하는데 있어 필요한 대역폭을 더 낮출 수 있다. 그러나, 재생장치가 항상 "적절한 기입"을 수행하도록 요구하는 것은 재생장치에 적용될 수 있는 소프트웨어를 제한한다.
상기한 바와 같이, 그래픽스 플레인에 기입하기 위한 큰 부담은 재생장치가 높은 대역폭에서 동작하거나 적절한 기입을 수행할 것을 요구하며, 그 결과, 재생장치의 제품 개발을 제한한다.
도 1은 본 발명에 따른 기록매체 사용의 일 예를 나타낸다.
도 2는 BD-ROM의 구조를 나타낸다.
도 3은 AV 클립의 구조를 도식적으로 나타내는 다이어그램이다.
도 4a는 프리젠테이션 그래픽스 스트림의 구조를 나타낸다.
도 4b는 기능 세그먼트들을 변환하여 취득한 PES 패킷을 나타낸다.
도 5는 도 5는 다양한 종류의 기능 세그먼트로 구성된 논리구조를 나타낸다.
도 6은 서브타이틀과 에포크의 표시 위치 사이의 관계를 나타낸다.
도 7a는 오브젝트 정의 세그먼트(ODS)의 그래픽스 오브젝트를 정의하는 신택스를 나타낸다.
도 7b는 팔레트 정의 세그먼트(ODS)의 신택스를 나타낸다.
도 8a는 윈도우 정의 세그먼트(WDS)의 신택스를 나타낸다.
도 8b는 프리젠테이션 합성 세그먼트(PCS)의 신택스를 나타낸다.
도 9는 서브타이틀을 달기 위한 표시 설정의 디스크립션의 일 예를 나타낸다.
도 10은 DS1의 WDS와 PDS의 디스크립션의 일 예를 나타낸다.
도 11은 DS2의 PCS의 디스크립션의 일 예를 나타낸다.
도 12는 DS3의 PCS의 디스크립션의 일 예를 나타낸다.
도 13은 Cut-In/Out이 수행될 때 표시 설정의 디스크립션을 타임 라인을 따라 도시하는 예를 보여준다.
도 14는 Fade-In/Out이 수행될 때 표시 설정의 디스크립션을 타임 라인을 따라 도시한 예를 보여준다.
도 15는 스크롤링이 수행될 때 타임 라인을 따라 표시 설정의 디스크립션을 도시한 예를 보여준다.
도 16은 Wipe-In/Out이 수행될 때 타임 라인을 따라 표시 설정의 디스크립션을 도시한 예를 보여준다.
도 17은 윈도우가 4개의 그래픽스 오브젝트를 갖는 경우와 윈도우가 2개의 그래픽스 오브젝트를 갖는 경우의 두 가지 경우를 비교하는 다이어그램이다.
도 18은 디코드 기간을 계산하기 위한 알고리즘의 일 예를 나타낸다.
도 19는 도 18의 알고리즘을 나타내는 플로차트이다.
도 20a와 20b는 도 18의 알고리즘의 플로차트이다.
도 21a는 각 윈도우가 오브젝트 정의 세그먼트를 갖는 경우를 설명한다.
도 21b와 c는 도 18에 인용된 부호들 사이의 순서를 보여주는 타이밍 차트이다.
도 22a는 각 윈도우가 두 개의 오브젝트 정의 세그먼트를 갖는 경우를 설명한다.
도 22b와 c는 도 18에 인용된 부호들 사이의 순서를 보여주는 타이밍 차트이다.
도 23a는 두 개의 윈도우 각각이 ODS를 포함하는 경우를 설명한다.
도 23b는 디코드 기간(2)이 소거 기간(1)과 기입 기간(31)의 총합보다 더 긴 경우를 설명한다.
도 23c는 소거 기간(1)과 기입 기간(31)의 총합이 디코드 기간보다 긴 경우를 설명한다.
도 24는 이 명세서의 예에서 설명한 갱신시의 시프트를 나타낸다.
도 25a는 상기 설명한 갱신을 수행하도록 설명된 4가지 표시 설정을 보여준다.
도 25b는 4가지 표시 설정에 포함된 기능 세그먼트의 DTS와 PTS의 설정을 보여주는 타이밍 차트이다.
도 26은 본 발명에 따른 재생장치의 내부 구조를 나타낸다.
도 27은 기입 속도 Rx, Rc, 및 Rd, 그래픽스 플레인(8), 부호화 데이터 버퍼(13), 오브젝트 버퍼(15), 및 합성 버퍼(16)의 크기를 나타낸다.
도 28은 재생장치에 의한 파이프라인 프로세싱을 나타내는 타이밍 차트이다.
도 29는 그래픽스 플레인의 소거가 완료되기 전에 ODS의 디코딩이 종료되는 경우의 파이프라인 프로세싱의 타이밍 차트이다.
도 30은 기능 세그먼트의 로딩 동작의 프로세스를 나타내는 플로차트이다.
도 31은 다중화의 일 예를 보여준다.
도 32는 DS10이 부호화 데이터 버퍼(13)에 로드되는 방법을 나타낸다.
도 33은 정상 동작에서 DS1, DS10, 및 DS20의 로딩을 보여준다.
도 34는 도 33에 도시된 바와 같은 정상 재생에서 DS1, DS10, 및 DS20의 로딩을 보여준다.
도 35는 그래픽 컨트롤러(17)에 의해 수행되는 프로세스를 나타내는 플로차트이다.
도 36은 그래픽 콘트롤러(17)에 의해 수행되는 프로세스를 나타내는 플로차트이다.
도 37은 그래픽 콘트롤러(17)에 의해 수행되는 프로세스를 나타내는 플로차트이다.
도 38은 PDS의 PTS에 기초한 재생장치의 파이프라인 프로세스를 보여준다.
도 39는 재생장치의 파이프라인 프로세스에서 END의 의미를 설명하는 다이어그램이다.
도 40은 제 2 실시예에 따른 재생장치의 내부 구조를 나타낸다.
도 41은 이중 버퍼를 구성하는 그래픽스 콘트롤러에의 독출과 기입 동작을 도식적으로 설명한다.
도 42는 제 3 실시예에 따른 BD-ROM의 제조 공정을 설명하는 플로차트이다.
본 발명의 목적은 그래픽스 플레인에 기입될 데이터의 양이 큰 경우에도 그래픽스가 픽처 표시와 동기하여 갱신될 수 있는 기록매체를 제공하는 것이다.
상기한 목적을 달성하기 위하여, 본 발명에 따른 기록매체의 일 예는 데이터를 저장하는데 사용되는 기록매체이며, 비디오 스트림과 그래픽스 스트림을 다중화함으로써 구성되는 디지털 스트림을 포함하고, 비디오 스트림은 다수의 화상으로 이루어진 영화를 표시하며, 그래픽스 스트림은, 화상과 조합되는 그래픽스를 표시하는 그래픽스 데이터; 및 그 안에 그래픽스를 렌더링하기 위한 윈도우를 지정하는 윈도우 정보를 포함하고, 윈도우 정보는, 그래픽스를 픽처와 조합하는 재생장치의 플레인 메모리(plane memory)인 플레인 상에 윈도우의 폭, 높이 및 위치를 나타낸다.
그래픽스를 렌더링하기 위한 윈도우로서 각 픽처에 대응하는 플레인의 일부를 지정함으로써, 재생장치가 그래픽스를 전체 플레인에 대해 렌더링할 필요가 없고, 재생장치가 제한된 크기의 윈도우에만 그래픽스를 렌더링하는 것이 충분하다. 플레인에서 윈도우의 외부에 그래픽스를 렌더링할 필요가 없기 때문에, 재생장치에서 소프트웨어의 로드가 감소된다.
또한, 그래픽스와 픽처 사이의 동기 표시를 보장하도록 윈도우의 크기를 설정함으로써, 그래픽스의 갱신이 최악의 경우로 갱신되는 경우에도 오소링(authoring)을 수행하는 제작자에 대해 어떠한 종류의 재생장치에서도 동기 표시를 보증할 수 있다.
또한, 윈도우 정보에 의해 윈도우의 위치와 크기를 설정함으로써, 오소링시 윈도우의 위치와 크기를 조절할 수 있으며, 따라서 화면을 시청할 때 서브타이틀은 화면을 방해하지 않는 곳에 있게 된다. 그러므로, 화면상의 픽처가 시간이 경과함에 따라 변화하더라도 그래픽스의 가독성은 유지되며 이에 따라 영화의 품질을 유지할 수 있다.
그래픽스를 갱신하는데 있어 최악의 경우는 그래픽스가 능률이 가장 적은 동작으로 갱신되는 경우, 예를 들어, 윈도우의 모든 소거와 리드로우의 경우를 의미한다. 최악의 경우에 대비하여 윈도우의 크기를 설정하는 경우, 기록매체에서 윈도우의 크기가 플레인의 1/x이도록 윈도우의 높이와 폭이 설정되는 것이 바람직하다. 여기서, 플레인은 각 픽처에 대응하며, x는 윈도우 갱신 속도와 픽처 표시 속도 간의 비율에 기초하는 실수이다.
이러한 방법으로 윈도우를 설정함으로써, 그래픽스 플레인에 기입하는데 필요한 재생장치의 대역폭은 고정값으로 설정된다. 이러한 대역폭을 만족하도록 재생장치를 구성함으로써, 재생장치에 설치되는 소프트웨어에 관계없이 그래픽스와 픽처 사이의 동기 표시를 구현하는 것이 가능하다.
상기한 바와 같이, 재생장치의 구조에 대한 최소한의 표준을 제공할 수 있다. 전송 속도가 이 최소한의 표준을 만족하도록 설정되는 한, 재생장치의 설계는 개발자의 자유재량이다. 따라서, 재생장치의 개발에서의 가능성을 확장할 수 있다.
[제 1 실시예]
본 발명에 따른 기록매체의 제 1 실시예가 이하 설명된다.
도 1은 본 발명에 따른 기록매체 사용의 일 예를 나타낸다. 도면에서, BD-ROM(100)은 본 발명에 따른 기록매체이다. BD-ROM(100)은 영화작품 데이터를 재생장치(200), 텔레비전(300), 및 리모트 콘트롤러(400)로 구성된 홈시어터 시스템에 제공하는데 이용된다.
본 발명에 따른 기록매체는 BD-ROM의 어플리케이션층을 이용하여 제작된다. 도 2는 BD-ROM의 구조를 나타낸다.
도면에서, BD-ROM은 도면의 하부에 도시되고, BD-ROM의 트랙은 BD-ROM 위에 도시된다. 트랙은 실제 디스크 위에 스파이럴 형상이지만, 도면에서는 선으로 도시된다. 도면에서 볼륨 영역은 물리층, 파일 시스템층, 및 어플리케이션층 갖는다. 도면의 제일 위에서, BD-ROM의 어플리케이션 포맷이 디렉토리 구조를 이용하여 도시되어 있다. 도면에 도시된 바와 같이, BD-ROM은 루트 디렉토리 아래에 BDMV 디렉토리를 가지며, BDMV 디렉토리는 확장자 M2TS(XXX.M2TS)를 갖는 AV 클립을 저장하기 위한 파일, 확장자 CLPI(XXX.CLPI)를 갖는 AV 클립용 관리정보를 저장하기 위한 파일, 및 확장자 XPLS(XXX.XPLS)를 갖는 AV 클립에 대한 논리적 플레이리스트(PL)를 정의하기 위한 파일을 포함한다. 상기의 어플리케이션 포맷을 형성함으로써, 본 발명에 따른 기록매체를 제작할 수 있다. 각 종류에 대해 하나의 파일 이상이 존재하는 경우, 하나의 디렉토리에 동일한 확장자를 갖는 파일을 저장하기 위해서 BDMV 아래에 STREAM, CLIPINE, 및 PLAYLIST로 명명된 디렉토리를 제공하는 것이 바람직하다. 구체적으로, STREAM에 확장자 M2TS를 갖는 파일을, CLIPINE에 확장자 CLPI를 갖는 파일을, 그리고 PLAYLIST에 확장자 MPLS를 갖는 파일을 저장하는 것이 바람직하다.
상기 어플리케이션 포맷의 AV 클립(XXX.M2TS)에 대해 이하 설명된다.
AV 클립(XXX.M2TS)은 비디오 스트림, 적어도 하나의 오디오 스트림, 및 프리젠테이션 그래픽스 스트림을 다중화하여 취득되는 MPEG-TS 포맷(TS는 트랜스포트 스트림이다)의 디지털 스트림이다. 비디오 스트림은 영화의 픽처를 나타내고, 오디오 스트림은 영화의 사운드를 나타내며, 프리젠테이션 그래픽스 스트림은 영화의 서브타이틀을 나타낸다. 도 3은 AV 클립을 도식적으로 설명하는 다이어그램이다.
AV 클립(XXX.M2TS)은 다음과 같은 방식으로 구성된다. 다수의 비디오 프레임(픽처 pj1, pj2, pj3)으로 구성된 비디오 스트림, 다수의 오디오 프레임(도면의 가장 위의 행)의 오디오 스트림은 PES 패킷 라인(도면의 두 번째 행)으로 변환되고, 다시 TS 패킷 라인(도면의 세 번째 행)으로 변환된다. 프리젠테이션 그래픽스 스트림(도면의 가장 아래 행)은 PES 패킷(도면의 아래에서 두 번째 행)으로 변환되고, 다시 TS 패킷(도면의 아래에서 세 번째 행)으로 변환된다. TS 패킷 3라인이 다중화되어 AV 클립(XXX.M2TS)이 구성된다.
도면에서, 하나의 프리젠테이션 그래픽스 스트림만이 다중화된다. 그러나, BD-ROM이 다수의 언어에 호환성을 갖는 경우, 각 언어에 대한 프리젠테이션 그래픽스 스트림이 다중화되어 AV 클립을 구성한다. 상기의 방법으로 구성된 AV 클립은 통상의 컴퓨터 파일과 같이 하나 이상의 하나 이상의 익스텐트(extent)로 분할되고, BD-ROM의 영역에 저장된다.
다음, 프리젠테이션 그래픽스 스트림이 설명된다. 도 4a는 프리젠테이션 그래픽스 스트림의 구조를 나타낸다. 제일 위의 행은 AV 클립에 다중화될 TS 패킷 라인을 나타낸다. 위에서 두 번째 행은 그래픽스 스트림을 구성하는 PES 패킷 라인을 나타낸다. PES 패킷 라인은 기설정된 PID를 갖는 TS 패킷으로부터 페이로드(payload)를 검색하고 검색된 페이로드를 연결함으로써 구성된다.
위에서 세 번째 행은 그래픽스 스트림의 구조를 나타낸다. 그래픽스 스트림은 프리젠테이션 컴포지션 세그먼트(PCS), 윈도우 정의 세그먼트(WDS), 팔레트 정의 세그먼트(PDS), 오브젝트 정의 세그먼트(ODS), 및 디스플레이 설정 종료 세그먼트(END)로 명명된 기능 세그먼트들로 이루어진다. 상기한 기능 세그먼트들 중, PCS는 화면 합성 세그먼트로 불리고, WDS, PDS, ODS, 및 END는 정의 세그먼트로 불린다. PES 패킷과 각 기능 세그먼트는 1대1로 대응하거나, 1대 다수로 대응한다. 다시 말하면, 하나의 기능 세그먼트는 PES 패킷으로 변환된 후 BD-ROM에 기록되거나, 여러 조각으로 분할되어 하나 이상의 PES 패킷으로 변환된 후 BD-ROM에 기록된다.
도 4b는 기능 세그먼트들을 변환하여 취득한 PES 패킷을 나타낸다. 도면에 나타낸 것과 같이, PES 패킷은 패킷 헤더와 페이로드로 이루어지고, 페이로드는 기능 세그먼트의 실제 본체이다. 패킷 헤더는 기능 세그먼트에 대응하는 DTS와 PTS를 포함한다. 패킷 헤더에 포함된 DTS와 PTS는 이하 기능 세그먼트의 DTS 및 PTS라 한다.
상기한 다양한 종류의 기능 세그먼트는 도 5에 나타낸 논리구조를 구성한다. 도 5는 다양한 종류의 기능 세그먼트로 구성된 논리구조를 나타낸다. 도면에서, 가장 위의 행은 에포크(EPOCH)를 나타내고, 중간 행은 표시 설정(DS)을 나타내며, 가장 아래 행은 기능 세그먼트를 나타낸다.
중간 행에 나타낸 DS 각각은 그래픽스 스트림을 구성하는 모든 다수의 기능 세그먼트 중 하나의 화면에 대한 그래픽스를 합성하는 기능 세그먼트의 그룹이다. 도면의 파선은 가장 아래 행의 기능 세그먼트가 속하는 DS를 나타내고, 일련의 기능 세그먼트 PCS, WDS, PDS, ODS, 및 END가 하나의 DS를 구성하는 것을 보여준다. 재생장치는 DS를 구성하는 기능 세그먼트를 판독함으로써 한 화면에 대한 그래픽스를 생성할 수 있다.
가장 위의 행에 나타낸 에포크는 시간을 나타내며, 메모리 관리는 한 에포크의 AV 클립 재생의 일정표를 따라 시간상으로 연속적이다. 또한, 한 에포크는 동일한 시간에 할당된 한 그룹의 데이터를 나타낸다. 여기서 설명한 메모리는 한 화면에 대한 그래픽스를 저장하는 그래픽스 플레인, 및 압축해제된 그래픽스 데이터를 저장하는 오브젝트 버퍼이다. 메모리 관리가 연속적이라는 것은 그래픽스 플레인이나 오브젝트 버퍼의 소거(flash)가 에포크에서 일어나지 않으며, 그래픽스의 삭제와 표현은 그래픽스 플레인의 소정의 직사각 영역에서 수행될 뿐이라는 것을 의미한다(여기서 소거는 플레인이나 버퍼의 저장 데이터의 모든 내용을 제거하는 것을 나타낸다). 직사각 영역의 크기와 위치는 한 에포크 중에 고정된다. 그래픽스의 삭제와 표현이 그래픽스 플레인의 소정의 직사각 영역에서만 수행되는 한, 픽처와 그래픽스 사이의 동기 재생은 보장된다. 다시 말하면, 에포크는 재생 일정의 단위이고, 이 단위로 픽처와 그래픽스가 동기하여 재생되는 것이 보장된다. 그래픽스가 삭제되고 표현되는 영역이 다른 위치로 이동하는 경우, 영역을 이동하기 위한 일정상의 위치와 그 위치가 새로운 에포크가 된 후의 시간을 정의하는 것이 필요하다. 동기 재생은 두 에포크 사이의 경계에서는 보장되지 않는다.
실제 영화를 볼 때, 한 에포크는 서브타이틀이 화면의 같은 직사각 영역에 표시되는 시간이다. 도 6은 서브타이틀과 에포크의 표시 위치 사이의 관계를 나타낸다. 도면에 도시된 예에서, 5개의 서브타이틀 "Actually...", "I was hiding", "my feelings.", "I always", 및 "loved you"가 나타나는 위치가 영화의 픽처에 따라 이동한다. 구체적으로, 서브타이틀 "Actually...", "I was hiding", 및 "my feelings."는 화면의 아래에 나타나지만, 서브타이틀 "I always", "loved you"는 화면의 위에 나타난다. 직사각 영역의 위치는 화면을 시청할 때 서브타이틀이 픽처를 방해하지 않도록 이동한다. 서브타이틀이 아래에 나타나는 시간은 에포크 1이고, 서브타이틀이 위에 나타나는 이어지는 시간은 에포크 2이다. 에포크 1과 2는 각각 서브타이틀이 표현되는 다른 영역을 갖는다. 에포크 1의 영역은 화면의 아래에 위치한 윈도우 1이고, 에포크 2의 영역은 화면의 위에 위치한 윈도우 2이다. 메모리 관리는 에포크 1과 2 각각에 연속적이고, 따라서 윈도우 1과 2에 서브타이틀을 표현하는 것은 픽쳐와 동기한다.
다음, 표시 설정(DS)에 대한 상세한 내용을 설명한다.
도 5의 파선 hkl1과 hkl2는 중간 행의 어떤 세그먼트가 어떤 에포크에 속하는지를 나타낸다. 일련의 DS "EpochStart", "AcquisitionPoint", 및 "NormalCase"는 가장 위의 행의 에포크를 구성한다. "EpochStart", "AcquisitionPoint", 및 "NormalCase"는 DS의 종류들이고, "AcquisitionPoint"와 "NormalCase" 사이의 순서는 중요하지 않으며, 이들 중 어느 것이라도 먼저 올 수 있다.
Epoch Start는 새로운 에포크의 시작을 나타내는 "새로운 표시"의 표시효과를 갖는 DS이다. 이 때문에, Epoch Start는 새로운 화면 합성을 표시하는데 필요한 모든 기능 세그먼트를 포함한다. Epoch Start는, 영화의 챕터(chapter)와 같이, AV 클립의 스킵 동작의 대상인 위치에 제공된다.
Acquisition Point는 "표시 리프레시"의 표시효과를 갖는 DS로서, 그래픽스를 표현하는데 이용되는 내용에서 앞선 DS인 Epoch Start와 동일하다. Acquisition Point는 에포크의 시작점에 제공되지 않지만, 새로운 화면 합성을 표시하는데 필요한 모든 기능 세그먼트를 포함한다. 따라서, Acquisition Point에 대한 스킵 동작이 수행될 때 실패없이 그래픽스를 표시할 수 있다. 따라서, Acquisition Point로 에포크의 중간에 화면을 합성할 수 있다.
Acquisition Point는 스킵 동작의 목표일 수 있는 위치에 제공된다. 이러한 위치의 일 예는 시간 검색을 수행할 때 특정될 수 있는 위치이다. 시간 검색은 사용자가 특정한 시간에 대응하는 재생 포인트로부터 재생을 개시하도록 사용자의 시간 입력에 대응하는 동작이다. 시간은 10분 또는 10초 단위로 대략 특정되고, 따라서 재생이 시작되는 포인트가 10분 간격 또는 10초 간격으로 제공된다. 재생을 시작할 수 있는 포인트에 Acquisition Point를 제공함으로써, 시간 검색후 재생을 부드럽게 수행할 수 있다.
Normal Case는 "표시 갱신"의 표시효과를 갖는 DS로서, 앞선 화면 합성과 다른 요소만을 포함한다. 구체적으로, DSv의 서브타이틀이 DSu의 서브타이틀과 동일하지만 화면이 DSv와 DSu에서 다르게 표시되는 경우, PCS만을 포함하도록 DSv가 제공되고 DSv를 Normal Case로 만든다. 이것에 의해, 앞선 DS의 ODS과 동일한 내용을 갖는 ODS를 제공할 필요가 없고, BD-ROM의 데이터 크기는 감소될 수 있다. 반면에, Normal Case로서 DS가 차이만을 포함하기 때문에, Normal Case를 단독으로 이용하여 화면을 합성할 수 없다.
정의 세그먼트(ODS, WDS, 및 PDS)가 이하 설명된다. 오브젝트 정의 세그먼트(ODS)는 그래픽스 오브젝트를 정의하는 기능 세그먼트이다. 먼저, 그래픽스 오브젝트에 대해 설명한다. BD-ROM에 기록된 AV 클립의 상품 강조점은 하이-비전만큼 높은 해상도이며, 따라서 그래픽스 오브젝트에 대한 해상도는 1920×1080 픽셀로 설정된다. 1920×1080 픽셀의 높은 해상도 때문에, 특정 문자 스타일의 서브타이틀을 화면에 명료하게 표시할 수 있다. 서브타이틀의 색상에 관한 한, 각 픽셀에 대한 인덱스값(색상차 적색 Cr, 색상차 청색 Cb, 휘도 Y, 및 투명도 T)의 비트 길이는 8 비트이고, 따라서 서브타이틀에 대해 풀 컬러(16,777,216 컬러) 중에서 임의의 256 컬러를 선택할 수 있다. 그래픽스 오브젝트로 구현된 서브타이틀은 투명한 배경위에 텍스트를 위치시킴으로써 표현된다.
그래픽스 오브젝트를 정의하는 ODS의 신택스가 도 7a에 도시되어 있다. ODS는 세그먼트가 ODS라는 것을 나타내는 segment_type, ODS의 데이터 길이를 나타내는 segment_length, 에포크에서 ODS에 대응하는 그래픽스 오브젝트를 고유하게 식별하는 segment_id, 에포크 내 ODS의 버전을 나타내는 object_version_number, last_insequence_flag, 및 그래픽스 오브젝트 전체 또는 일부에 대응하는 연속 바이트 시퀀스인 object_data_fragment로 이루어진다.
object_id는 에포크에서 ODS에 대응하는 그래픽스 오브젝트를 고유하게 식별하기 위한 것이다. 그래픽스 스트림의 에포크는 동일한 ID를 갖는 하나 이상의 ODS를 포함한다. 또한, 동일한 ID를 갖는 ODS는 동일한 폭과 높이를 가지며, 오브젝트 버퍼의 공통 영역에 할당된다. 동일한 ID를 갖는 ODS의 하나가 공통 영역에서 독출된 후, 독출된 ODS는 동일한 ID를 갖는 그 후의 ODS에 의해 오버라이트된다. 비디오 스트림의 재생이 진행될 때 오브젝트 버퍼에 독출된 ODS를 동일한 ID를 갖는 그 후의 ODS로 오버라이트함으로써, ODS에 의한 그래픽스는 그에 따라 갱신된다. 동일한 ID를 갖는 그래픽스 오브젝트의 폭과 높이는 동일해야 한다는 크기 제한은 한 에포크 중에만 적용되고, 다른 에포크의 그래픽스 오브젝트는 다른 크기를 가질 수 있다.
다음, last_sequence_flag와 object_data_fragment에 대해 설명한다. 일부 경우, PES 패킷의 페이로드 제한 때문에 서브타이틀을 구성하는 비압축 그래픽스를 하나의 ODS에 저장할 수 없다. 이러한 경우, 그래픽스는 일련의 연속적인 조각(fragment)들로 분리되고, 하나의 조각이 object_data_fragment로 설정된다. 하나의 그래픽스 오브젝트가 하나 이상의 조각으로서 저장될 때, 최종 조각을 제외하고 모든 조각은 같은 크기를 갖는다. 최종 조각은 이전 조각의 크기보다 작거나 같다. 조각을 나르는 ODS는 DS에 동일한 연속 순서로 나타나고, 시퀀스의 끝은 last_sequence_flag를 갖는 ODS가 나타낸다. 상기한 ODS 신택스는 앞선 PES로부터 조각들이 쌓인다는 가정에 기초하지만, 조각은 각 PES가 공백부를 포함하도록 쌓일 수 있다.
다음, 팔레트 정의 세그먼트(PDS)를 설명한다. PDS는 색상변환을 위한 팔레트를 정의하는데 이용된다. 도 7b는 PDS의 신택스를 보여준다. PDS는, 그 세그먼트가 PDS라는 나타내는 segment_type, PDS의 데이터 길이를 나타내는 segment_length, PDS에 포함된 팔레트를 고유하게 식별하는 palette_id, 에포크 내 PDS의 버전을 나타내는 palette_version_number, 및 팔레트의 엔트리 번호를 지정하는 palette_entry_id로 이루어진다. palette_entry_id는 색상차 적색(Cr_value), 색상차 청색(Cb_value), 휘도(Y_value), 및 투명도(T_value)를 나타낸다.
다음, 윈도우 정의 세그먼트(WDS)에 대해 설명한다.
WDS는 그래픽스 플레인의 직사각 영역을 정의하는데 이용된다. 상기한 바와 같이, 메모리 관리는 삭제와 표현이 그래픽스 플레인의 어떤 영역 내에서 수행될 때에만 연속적이다. 그래픽스 플레인의 영역은 WDS에 의해 정의되고 "윈도우(Window)"로 불린다. 도 8a는 WDS의 신택스를 나타낸다. 도면에 나타낸 바와 같이, WDS는 그 세그먼트가 WDS라는 것을 나타내는 segment_type, WDS의 데이터 길이를 나타내는 segment_length, 그래픽스 플레인의 윈도우를 고유하게 식별하는 window_id, 그래픽스 플레인의 윈도우의 최상 좌측 픽셀의 수평 어드레스를 지정하는 window_horizontal_position, 그래픽스 플레인의 윈도우의 최상 좌측 픽셀의 수직 어드레스를 지정하는 window_vertical_position, 그래픽스 플레인의 윈도우 폭을 지정하는 window_width, 및 그래픽스 플레인의 윈도우 높이를 지정하는 window_height로 이루어진다.
window_horizontal_position, window_vertical_position, window_width, 및 window_height가 가질 수 있는 값의 범위를 이하 설명한다. 이 값을 위한 좌표 시스템은 그래픽스 플레인의 영역 내부이며, 그 크기는 높이에 대해서 window_height 그리고 폭에 대해서 window_width에 의해 2차원적으로 나타낸다.
window_horizontal_position은 그래픽스 플레인의 윈도우의 최상 좌측 픽셀의 수평 어드레스를 지정하며, 0 내지 (window_width)-1 범위이다. 또한, window_vertical_position은 그래픽스 플레인의 윈도우의 최상 좌측 픽셀의 수w직 어드레스를 지정하며, 0 내지 (window_height)-1 범위이다.
window_width는 그래픽스 플레인의 윈도우의 폭을 지정한다. 지정된 폭은 1 내지 (video_width) - (window_horizontal_position) 범위 내에 있다. 또한, window_height는 그래픽스 플레인의 윈도우의 높이를 지정하며, 지정된 높이는 1 내지 (video_height) - (window_vertical_position) 범위 내에 있다.
각 에포크에 대한 그래픽스 플레인의 윈도우의 위치와 크기는 window_horizontal_position, window_vertical_position, window_width, 및 window_height에 의해 정의된다. 따라서, 오소링시 윈도의 위치와 크기를 조정할 수 있어 한 에포크의 윈도우가 영화를 시청할 때 픽처에 방해가 되지 않는 위치에 나타나도록 한다. 이것에 의해, 서브타이틀의 가독성은 더 높아진다. 각 에포크에 대해 WDS가 정의되기 때문에, 픽처가 시간 경과에 따라 변하더라도 픽처에 따른 윈도우의 위치를 조정할 수 있다. 그 결과, 영화의 품질은 서브타이틀이 영화의 본체에 포함된 경우와 같이 높게 유지된다.
다음, 표시 설정 세그먼트의 종료(END)가 설명된다. END는 DS의 전송이 완료되었다는 지시를 제공한다. END는 하나의 DS의 최종 ODS 직후에 스트림에 삽입된다. END는 그 세그먼트가 END라는 것을 나타내는 segment_type과 END의 데이터 길이를 나타내는 segment_length로 이루어진다. END는 더 이상의 설명을 필요로 하는 어떠한 다른 요소도 포함하지 않는다.
다음, 프리젠테이션 제작 세그먼트(PCS)가 이하 설명된다.
PCS는 대화형 표시를 만드는데 이용되는 기능 세그먼트이다. 도 8b는 PCS의 신택스를 보여주고 있다. 도면에 나타난 바와 같이, PCS는 segment_type, segment_length, composition_number, composition_state, palette_update_flag, palette_id, 및 윈도우 정보 1-m으로 구성된다.
Composition_number는 0 내지 15 범위의 값으로 DS의 그래픽스 갱신을 식별한다. 그래픽스 갱신이 에포크의 선두와 PCS 사이에 존재하면, composition_number는 그래픽스 갱신이 일어날 때마다 증분된다.
Composition_state는 PCS가 포함되는 DS의 종류, 즉 Normal Case, Acquisition Point, 또는 Epoch Start를 나타낸다.
Palette_update_flag는 PCS가 Palette only Display Update를 서술한다는 것을 나타낸다. Palette only Display Update는 팔레트만이 바로 이전 팔레트로부터 갱신된다는 것을 나타낸다. palette_update_flag 필드는, Palette only Display Update가 수행되면, "1"로 설정된다.
Palette_id는 Palette only Display Update에 사용되는 팔레트를 식별한다.
윈도우 정보 1-m은 PCS가 속하는 DS의 각 윈도우를 제어하는 방법을 나타낸다. 도 8b의 파선 wd1은 윈도우 정보 i의 내부 신택스를 상세하게 나타낸 것이다. 윈도우 정보 i는 object_id, window_id, object_cropped_flag, object_horizontal_position, object_vertical_position, 및 cropping_rectangle_information 1-n으로 구성된다.
Object_id는 윈도우 정보 i에 대응하는 윈도우의 ODS를 식별한다.
Window_id는 그래픽스 오브젝트가 PCS에서 할당되는 윈도우를 식별한다. 두 개의 그래픽스 오브젝트까지 하나의 윈도우에 할당될 수 있다.
Object_cropped_flag는 크롭된 그래픽스 오브젝트의 오브젝트 버퍼에의 표시와 비표시 사이를 스위칭하는데 이용된다. Object_cropped_flag이 "1"로 설정된 경우, 크롭된 그래픽스 오브젝트는 오브젝트 버퍼에 표시되고, "0"으로 설정되면, 그래픽스 오브젝트는 표시되지 않는다.
Object_horizontal_position은 그래픽스 플레인의 그래픽스 오브젝트의 최상 좌측 픽셀의 수평 어드레스를 지정한다.
Object_vertical_position은 그래픽스 플레인의 그래픽스 오브젝트의 최상 좌측 픽셀의 수직 어드레스를 지정한다.
Cropping_rectangle_information 1-n은 object_cropped_flag이 "1"로 설정될 때 사용되는 요소이다. 파선 wd2는 cropping_rectangle_information i에 대한 내부 신택스를 상세하게 설명하는 것이다. 파선 wd2가 나타내는 바와 같이, cropping_rectangle_information i는 4개의 필드, object_cropping_horizontal_position, object_cropping_vertical_position, object_cropping_width, 및 object_cropping_height로 이루어진다.
Object_cropping_horizontal_position은 그래픽스 플레인의 그래픽스 오브젝트의 렌더링 중에 사용되는 크로핑(cropping) 사각의 최상 좌측의 수평 어드레스를 지정한다. 크로핑 사각은 그래픽스 오브젝트의 한 부분을 지정하여 잘라내는데 사용되는 크로핑 프레임으로, ETSI EN 300 743 표준의 Region에 대응한다.
Object_cropping_vertical_position은 그래픽스 플레인의 그래픽스 오브젝트의 렌더링 중에 사용되는 크로핑 사각의 최상 좌측의 수직 어드레스를 지정한다.
Object_cropping_width는 크로핑 사각의 폭을 지정한다.
Object_cropping_height는 크로핑 사각의 높이를 지정한다.
PCS의 구체적인 예를 이하에 상술한다. 예에서, 도 6에 도시된 바와 같이, 서브타이틀 "Actually...", "I was hiding", 및 "my feelings."가 픽처가 진행됨에 따라 그래픽스 플레인에 3회 기입함으로써 점차 나타난다. 도 9는 이러한 서브타이틀 표시를 구현하기 위한 설명의 일 예이다. 도면의 에포크는 DS1(Epoch Start), DS2(Normal Case), 및 DS3(Normal Case)를 포함한다. DS1은 서브타이틀이 표시되는 윈도우를 지정하기 위한 WDS, "Actually... I was hiding my feelings." 라인을 지정하기 위한 ODS, 및 첫 번째 PCS를 포함한다. DS2는 두 번째 PCS를 포함하고, DS3은 세 번째 PCS를 포함한다.
도 10-12는 DS에 포함된 WDS와 PCS의 예를 보여준다. 도 10은 DS1의 PCS의 예를 보여준다.
도 10에서, WDS의 window_horizontal_position과 window_vertical_position은 LP1, 즉 그래픽스 플레인의 윈도우의 최상 좌측 픽셀의 위치로 나타내고 있다. Window_width와 window_height는 각각 윈도우의 폭과 높이를 나타낸다.
도 10에서, object_cropping_horizontal_position과 object_cropping_vertical_position은, 원점이 그래픽스 오브젝트의 최상 좌측 픽셀인 좌표 시스템에서 크로핑 사각의 기준점 ST1을 나타낸다. 크로핑 사각은 ST1에서 object_cropping_width까지의 폭과 ST1에서 object_cropping_height까지의 높이를 갖는 영역이다(두꺼운 선 프레임으로 나타낸 사각). 크롭된 그래픽스 오브젝트는, 그래픽스 플레인의 object_horizontal_position과 object_vertical_position(그래픽스 오브젝트의 최상 좌측 픽셀)에 원점을 갖는 좌표 시스템에 기준점을 갖고 파선 프레임 cp1로 나타낸 사각 안에 위치한다. 이것에 의해, "Actually..."는 그래픽스 플레인의 윈도우에 기입되고, 영화 픽처와 합성되어 화면에 표시된다.
도 11은 DS2의 PCS의 예를 보여준다. DS2의 WDS는 DS1의 WDS와 동일하기 때문에 DS2의 WDS는 설명하지 않는다. DS2의 크로핑 정보에 대한 표현은 도 10에 도시된 크로핑 정보의 표현과 다르다.
도 11에서, 크로핑 정보의 object_cropping_horizontal_position과 object_cropping_vertical_position은 오브젝트 버퍼의 "Actually... I was hiding my feelings." 중에서 서브타이틀 "I was hiding"의 최상 좌측 픽셀을 나타낸다. Object_cropping_width와 object_cropping_height는 서브타이틀 "I was hiding"을 포함하는 사각의 폭과 높이를 나타낸다. 이것에 의해, 서브타이틀 "I was hiding"은 그래픽스 플레인의 윈도우에 기입되고, 이어 영화 픽처와 합성되어 화면에 표시된다.
도 12는 DS3의 PCS의 일 예를 보여준다. DS3의 WDS는 DS1의 WDS와 같기 때문에 설명하지 않는다. DS3의 크로핑 정보의 디스크립션은 도 10에 도시된 크로핑 정보의 디스크립션과 다르다.
도 12에서, 크로핑 정보의 object_cropping_horizontal_position과 object_cropping_vertical_position은 오브젝트 버퍼의 "Actually... I was hiding my feelings." 중에서 서브타이틀 "my feelings."의 최상 좌측 픽셀을 나타낸다. Object_cropping_width와 object_cropping_height는 서브타이틀 "my feelings."를 포함하는 사각의 폭과 높이를 나타낸다. 이것에 의해, 서브타이틀 "my feelings."는 그래픽스 플레인의 윈도우에 기입되고, 이어 영화 픽처와 합성되어 화면에 표시된다.
상기한 바와 같이, DS1, DS2, 및 DS3를 기술함으로써, 화면에 서브타이틀을 표시하는 효과를 얻을 수 있다. 또한, 다른 종류의 효과를 얻을 수도 있고, 다른 효과를 구현하기 위한 디스크립션 규약을 이하 설명한다.
먼저, Cut-In/Out을 위한 디스크립션 규약을 설명한다. 도 13은 Cut-In/Out이 수행될 때 DS 디스크립션을 타임 라인을 따라 도시하는 예를 보여준다.
도면에서, 윈도우(x, y, u, v)의 x와 y는 각각 window_vertical_position과 window_horizontal_position의 값을 나타내고, u와 v는 각각 widow_width와 window_height의 값을 나타낸다. 또한, 도면에서, 크로핑 사각(a, b, c, d)의 a와 b는 object_cropping_vertical_position과 object_cropping_horizontal_position의 값을 각각 나타내고, c와 d는 object_cropping_width와 object_cropping_height의 값을 각각 나타낸다. 표시 설정 DS11, DS12, 및 DS13은 도면의 재생 타임 라인 상의 점 t11, t12, 및 t13에 있다.
점 t11의 DS11은 composition_state가 "Epoch Start"이고 object_cropped_flag가 "0"(no_cropping_rectangle_visible)인 PCS#0, 그래픽스 플레인의 (100, 100)에 폭 700 × 높이 500의 윈도우를 위한 명령문을 갖는 WDS#0, PDS#0, 서브타이틀 "Credits:"를 나타내는 ODS#0, 및 END를 포함한다.
점 t12의 DS12는 PCS#1을 포함하며, PCS#1은 composition_state가 "Normal Case"이고, 그래픽스 오브젝트의 크롭 동작이 오브젝트 버퍼의 (0, 0)부터 600 × 400 사이즈(cropping_rectangle#0(0, 0, 600, 400)) 내에 있다는 것을 나타내며, 그래픽스 플레인의 좌표 (0, 0)(Window#0(0, 0))에 크롭된 그래픽스 오브젝트를 위치시킨다.
점 t13의 DS13은 composition_state가 "Normal Case"이고 크롭된 그래픽스 오브젝트를 제거하도록 object_cropped_flag가 "0"으로 설정되는(no_cropping_rectangle_visible) PCS#2를 포함한다.
상기 설명한 표시 설정에 의하면, 서브타이틀 "Credit:"는 t11에서 표시되지 않고, t12에 나타나며, t13에서 다시 표시되지 않아 Cut-In/Out 효과가 구현된다.
두 번째, Fade-In/Out 효과를 위한 디스크립션 규약을 설명한다. 도 14는 Fade-In/Out이 수행될 때 DS의 디스크립션을 타임 라인을 따라 도시한 예를 보여준다. 표시 설정 DS21, DS22, DS23, 및 DS24는 도면의 재생 타임 라인 상의 점 t21, t22, t23, 및 t24에 있다.
점 t21의 DS21은 composition_state가 "Epoch Start"이고 그래픽스 오브젝트의 크롭 동작이 오브젝트 버퍼의 (0, 0)부터 600 × 400 사이즈(cropping_rectangle#0(0, 0, 600, 400)) 내에 있다는 것을 나타내며 그래픽스 플레인의 좌표 (0, 0)(Window#0(0, 0))에 크롭된 그래픽스 오브젝트를 위치시키는 PCS#0, 그래픽스 플레인의 (100, 100)에 폭 700 × 높이 500의 윈도우를 위한 명령문을 갖는 WDS#0, PDS#0, 서브타이틀 "Fin"을 나타내는 ODS#0, 및 END를 포함한다.
점 t22의 DS22는 composition_state가 "Normal Case"인 PCS#1과, PDS#1을 포함한다. PDS#1은 PDS#0와 동일한 Cr 및 Cb 레벨을 나타내지만, PDS#1이 나타내는 휘도는 PDS#0의 휘도보다 높다.
점 t23의 DS23은 composition_state가 "Normal Case"인 PCS#2, PDS#2, 및 END를 포함한다. PDS#2는 PDS#1과 동일한 Cr 및 Cb 레벨을 나타내지만, PDS#2가 나타내는 휘도는 PDS#1의 휘도보다 낮다.
점 t24의 DS24는 composition_state가 "Normal Case"이고 object_cropped_flag가 "0"(no_cropping_rectangle_visible)인 PCS와, END를 포함한다.
각 DS는 앞선 DS와 다른 PDS를 지정하며, 따라서, 한 에포크 내 하나 이상의 PCS로 제작된 그래픽스 오브젝트의 휘도는 점차 높아지거나 낮아진다. 이것에 의해 Fade-In/Out 효과를 구현할 수 있다.
다음, 스크롤링을 위한 디스크립션 규약을 설명한다. 도 15는 스크롤링이 수행될 때 타임 라인을 따라 DS의 디스크립션을 도시한 예를 보여준다. 표시 설정 DS31, DS32, DS33, 및 DS34는 도면의 재생 타임 라인 상의 점 t31, t32, t33, 및 t34에 있다.
점 t31의 DS31은 composition_state가 "Epoch Start"이고 object_cropped_flag가 "0"(no_cropping_rectangle_visible)인 PCS#0, 그래픽스 플레인의 (100, 100)에 폭 700 × 높이 500의 윈도우를 위한 명령문을 갖는 WDS#0, PDS#0, 서브타이틀 "Credits: Company"를 나타내는 ODS#0, 및 END를 포함한다.
점 t32의 DS32는 PCS#1을 포함하며, PCS#1은 composition_state가 "Normal Case"이고, 그래픽스 오브젝트의 크롭 동작이 오브젝트 버퍼의 (0, 0)부터 600 × 400 사이즈(cropping_rectangle#0(0, 0, 600, 400)) 내에 있다는 것을 나타내며, 그래픽스 플레인의 좌표 (0, 0)(Window#0(0, 0))에 크롭된 그래픽스 오브젝트를 위치시킨다. 오브젝트 버퍼의 (0, 0)으로부터 600 × 400 사이즈의 영역은 2라인에 나타난 서브타이틀 "Credits: Company"의 "Credits:" 부분을 포함하며, 따라서 "Credits:" 부분은 그래픽스 플레인 상에 나타난다.
점 t33의 DS33은 PCS#2를 포함하며, PCS#2는 composition_state가 "Normal Case"이고, 그래픽스 오브젝트의 크롭 동작이 오브젝트 버퍼의 (0, 100)부터 600 × 400 사이즈(cropping_rectangle#0(0, 100, 600, 400)) 내에 있다는 것을 나타내며, 그래픽스 플레인의 좌표 (0, 0)(Window#0(0, 0))에 크롭된 그래픽스 오브젝트를 위치시킨다. 오브젝트 버퍼의 (0, 100)으로부터 600 × 400 사이즈의 영역은 2라인에 나타난 서브타이틀 "Credits: Company"의 "Credits:" 부분과 "Company" 부분을 포함하며, 따라서 "Credits:" 부분과 "Company" 부분이 그래픽스 플레인 상에 나타난다.
점 t34의 DS34는 PCS#3을 포함하며, PCS#3은 composition_state가 "Normal Case"이고, 그래픽스 오브젝트의 크롭 동작이 오브젝트 버퍼의 (0, 200)부터 600 × 400 사이즈(cropping_rectangle#0(0, 200, 600, 400)) 내에 있다는 것을 나타내며, 그래픽스 플레인의 좌표 (0, 0)(Window#0(0, 0))에 크롭된 그래픽스 오브젝트를 위치시킨다. 오브젝트 버퍼의 (0, 200)으로부터 600 × 400 사이즈의 영역은 2라인에 나타난 서브타이틀 "Credits: Company"의 "Company" 부분을 포함하며, 따라서 "Company" 부분은 그래픽스 플레인 상에 나타난다. 상기한 PCS 디스크립션에 의해, 2 라인의 서브타이틀을 스크롤 다운할 수 있다.
마지막으로, Wipe-In/Out 효과에 대한 디스크립션 규약을 설명한다. 도 16은 Wipe-In/Out이 수행될 때 타임 라인을 따라 DS의 디스크립션을 도시한 예를 보여준다. 표시 설정 DS51, DS52, DS53, 및 DS54는 도면의 재생 타임 라인 상의 점 t51, t52, t53, 및 t54에 있다.
점 t51의 DS51은 composition_state가 "Epoch Start"이고 object_cropped_flag가 "0"(no_cropping_rectangle_visible)인 PCS#0, 그래픽스 플레인의 (100, 100)에 폭 700 × 높이 500의 윈도우를 위한 명령문을 갖는 WDS#0, PDS#0, 서브타이틀 "Fin"을 나타내는 ODS#0, 및 END를 포함한다.
점 t52의 DS52는 PCS#1을 포함하며, PCS#1은 composition_state가 "Normal Case"이고, 그래픽스 오브젝트의 크롭 동작이 오브젝트 버퍼의 (0, 0)부터 600 × 400 사이즈(cropping_rectangle#0(0, 0, 600, 400)) 내에 있다는 것을 나타내며, 그래픽스 플레인의 좌표 (0, 0)(Window#0(0, 0))에 크롭된 그래픽스 오브젝트를 위치시킨다. 오브젝트 버퍼의 (0, 0)으로부터 600 × 400 사이즈의 영역은 2라인에 나타난 서브타이틀 "Fin"을 포함하며, 따라서 서브타이틀 "Fin"이 그래픽스 플레인 상에 나타난다.
점 t53의 DS53은 PCS#2를 포함하며, PCS#2는 composition_state가 "Normal Case"이고, 그래픽스 오브젝트의 크롭 동작이 오브젝트 버퍼의 (200, 0)부터 400 × 400 사이즈(cropping_rectangle#0(200, 0, 400, 400)) 내에 있다는 것을 나타내며, 그래픽스 플레인의 좌표 (200, 0)(Window#0(200, 0))에 크롭된 그래픽스 오브젝트를 위치시킨다. 이것에 의해, 윈도우의 좌표 (200, 0)와 (400, 400)가 나타내는 영역은 표시 영역으로 되고, 좌표 (0, 0)과 (199, 400)이 나타내는 영역은 비표시 영역이 된다.
점 t54의 DS54는 PCS#3을 포함하며, PCS#3은 composition_state가 "Normal Case"이고, 그래픽스 오브젝트의 크롭 동작이 오브젝트 버퍼의 (400, 0)부터 200 × 400 사이즈(cropping_rectangle#0(400, 0, 200, 400)) 내에 있다는 것을 나타내며, 그래픽스 플레인의 좌표 (400, 0)(Window#0(400, 0))에 크롭된 그래픽스 오브젝트를 위치시킨다. 이것에 의해, 좌표 (0, 0)과 (399, 400)이 나타내는 영역은 비표시 영역이 된다.
이와 같이, 비표시 영역이 커짐에 따라 표시 영역을 더 작게 되어 Wipe-In/Out 효과가 구현된다.
상기한 바와 같이, Cut-In/Out, Fade-In/Out, Wipe-In/Out, 및 스크롤링과 같은 다양한 효과가 대응하는 스크립트를 이용하여 구현될 수 있으며, 따라서 서브타이틀을 제작하는데 다양한 배열을 할 수 있다.
상기한 효과를 구현하기 위한 제한은 다음과 같다. 스크롤링 효과를 구현하기 위해서, 윈도우를 제거하고 다시 그리는 동작이 필요하다. 도 15의 예를 들면, 그래픽스 플레인으로부터 t32의 그래픽스 오브젝트 "Credits:"를 제거하기 위하여 "윈도우 소거(Window clear)"를 수행하고, 이어 t32와 t33 사이의 간격 중에 "Credits:"의 하부와 "Company"의 상부를 그래픽스 플레인에 기입하는 "윈도우 리드로우(Window redraw)"를 수행할 필요가 있다. 상기 간격이 비디오 프레임의 간격과 동일하다고 가정하면, 스크롤링 효과를 위해 바람직한, 오브젝트 버퍼와 그래픽스 플레인 간의 전송률은 중요한 포인트가 된다.
여기서, 윈도우가 얼마나 클 지에 대한 제한을 살펴본다. Rc는 오브젝트 버퍼와 그래픽스 플레인 간의 전송률이다. 여기서 최악의 시나리오는 윈도우 소거와 윈도우 리드로우 양자를 전송률 Rc로 수행하는 것이다. 이 경우, 윈도우 소거와 윈도우 리드로우 각각은 Rc의 반(Rc/2)의 전송률로 수행되는 것이 요구된다.
윈도우 소거와 윈도우 리드로우를 비디오 프레임과 동기시키기 위하여 다음의 식이 만족될 필요가 있다.
윈도우 크기 × 프레임율 ≒ Rc/2
프레임율이 29.97이면, Rc는 아래의 식으로 표현된다.
Rc = 윈도우 크기 × 2 × 29.97
서브타이틀을 제작하는데 있어서, 윈도우 크기는 그래픽스 플레인의 적어도 25% 내지 33%를 차지한다. 그래픽스 플레인의 전체 픽셀의 수는 1920 × 1080이다. 픽셀당 인덱스 비트 길이가 8 비트라는 것을 고려하면, 그래픽스 플레인의 총 용량은 2 Mbyte (≒ 1920 × 1080 × 8)이다.
윈도우 크기가 그래픽스 플레인의 총 용량의 1/4인 것을 고려하면, 윈도우 크기는 500 Kbyte(= 2Mbyte/4)이다. 이 값을 상기의 식에 대입하면, Rc는 256 Mbps (= 500 Kbyte × 2 × 29.97)이다. 윈도우 소거와 윈도우 리드로우에 대한 비율이 프레임율의 1/2이나 1/4일 수 있다면, Rc가 같더라도 윈도우 크기를 2배 또는 4배로 할 수 있다.
윈도우 크기를 그래픽스 플레인의 25% 내지 33%로 유지하고 서브타이틀을 256 Mbps의 전송률로 표시함으로써, 어떠한 종류의 표시 효과가 구현되어야 하더라도 그래픽스와 영화 픽처 간의 동기 표시를 유지할 수 있다.
다음, 윈도우의 위치, 크기, 및 영역을 설명한다. 상기한 바와 같이, 윈도우의 위치와 영역은 한 에포크 내에서 변화하지 않는다. 위치와 크기가 변화하면 그래픽스 플레인의 목표 기입 어드레스가 변화할 필요가 있고, 어드레스를 변화시킴으로써 오브젝트 버퍼로부터 그래픽스 플레인까지의 전송률을 낮게 하는 오버헤드를 일으키기 때문에 윈도우의 위치와 크기는 한 에포크 내에서 동일하게 설정된다.
윈도우 당 그래픽스 오브젝트의 개수는 제한을 갖는다. 이 개수의 제한은 디코드된 그래픽스 오브젝트를 전송하는데 있어 오버헤드를 줄이기 위해 제공된다. 여기서, 오버헤드는 그래픽스 오브젝트의 에지의 어드레스를 설정할 때 생성되며, 에지의 개수가 많을수록 오버헤드가 많이 생성된다.
도 17은 비교예들, 즉 윈도우가 4개의 그래픽스 오브젝트를 갖는 일 예와 윈도우가 2개의 그래픽스 오브젝트를 갖는 다른 예를 보여준다. 4개의 그래픽스 오브젝트를 갖는 예의 에지의 개수는 2개의 그래픽스 오브젝트를 갖는 예의 에지의 개수의 2배이다.
그래픽스 오브젝트의 개수에 제한이 없으면, 그래픽스를 전송하는데 얼마나 많은 오버헤드가 생성될 수 있는지를 알지 못하게 되고, 따라서 전송 로드가 극단적으로 증가 및 감소한다. 반면에, 윈도우 내 그래픽스 오브젝트의 최대 개수가 2인 경우, 전송률은 4개의 오버헤드까지 고려하여 설정될 수 있다. 따라서, 최소 전송률의 개수를 설정하는 것이 더 용이하다.
다음, PCS와 ODS를 갖는 DS가 AV 클립의 타임 라인에 어떻게 할당되는지를 설명한다. 에포크는 그 안에서 메모리 관리가 재생 타임 라인을 따라 연속적인 시간이다. 에포크는 하나 이상의 DS로 구성되기 때문에, DS를 AV 클립의 재생 타임 라인에 할당하는 방법이 중요하다. AV 클립의 재생 타임 라인은 AV 클립에 다중화된 비디오 스트림을 구성하는 픽처 데이터의 각 부분의 디코딩과 재생을 위한 타이밍을 지정하기 위한 타임 라인이다. 재생 타임 라인 상의 디코딩 및 재생 타이밍은 90 KHz의 정확도로 표현된다. DS의 PCS와 ODS에 첨부된 DTS와 PTS는 재생 타임 라인 상의 동기 제어를 위한 타이밍을 나타낸다. 표시 설정을 재생 타임 라인에 할당하는 것은 PCS와 ODS에 첨부된 DTS와 PTS를 이용하여 동기 제어를 수행하는 것을 의미한다.
먼저, ODS에 첨부된 DTS와 PTS를 이용하여 동기 제어가 어떻게 수행되는지를 설명한다.
DTS는 90 KHz의 정확도로 ODS를 시작하는 시간을 나타내고, PTS는 디코딩이 종료하는 시간을 나타낸다.
DTS의 종료는 동시에 끝나지 않고, 일정한 시간 길이를 갖는다. 디코드 기간의 시작점과 종료점을 명확하게 나타내기 위한 요청에 대응하여, ODS의 DTS와 PTS는 각각 디코딩이 시작하고 종료하는 시간을 나타낸다.
PTS 값은 최종 기한을 나타내고, 따라서 ODS의 디코딩은 PTS가 나타내는 시간까지 완료되어야 하고 압축해제된 그래픽스 오브젝트가 재생장치의 오브젝트 버퍼에 기입될 필요가 있다.
DSn의 임의의 ODSj의 디코드 시작시간은 90 KHz의 정확도로 DTS(DSn[ODS])에 의해 나타난다. 디코드 기간의 최대 길이를 DTS(DSn[ODS])에 추가하는 것은 ODSj의 디코딩이 종료하는 시간이다.
ODSj의 크기가 "SIZE(DSn[ODSj])이고 ODS의 디코딩 속도가 "Rd"인 경우, 초 단위로 나타낸 디코딩에 필요한 최대 시간은 "SIZE(DSn[ODSj])//Rd"로 표현된다. 부호 "//"는 소수 이상은 반올림하는 나눗셈 연산자를 나타낸다.
최대 시간을 90 KHz의 정확도로 표현된 수로 변환하고 ODSj의 DTS에 추가함으로써, PTS에 의해 나타나는 디코딩이 종료하는 시간(90 khz)이 계산된다.
DSn의 ODSj의 PTS는 다음 식으로 표현된다.
PTS(DSn[ODSJ]) = DTS(DSn[ODSj]) + 90,000 × (SIZE(DSN[ODSj])//Rd)
또한, 2개의 연속적인 ODS, 즉 ODSj와 ODSj+1 사이의 관계는 다음의 식을 만족할 필요가 있다.
PTS(DSn[ODSj]) ≤ DTS(DSN[ODSj+1])
다음, PCS의 DTS와 PTS의 설정을 설명한다.
PCS는, DSn의 제 1 ODS(ODS1)의 디코드 시작시간(DTS(DSn[ODS1])) 이전에 그리고 DSn의 제 1 PDS(PDS1)이 유효하게 되는 시간(PTS(DSn[PDS1])) 이전에 재생장치의 오브젝트 버퍼에 로드될 필요가 있다. 따라서, DTS는 다음의 식을 만족하도록 설정될 필요가 있다.
DTS(DSN[PCS]) ≤ DTS(DSn[ODS1])
DTS(DSN[PCS]) ≤ PTS(DSn[PDS1])
또한, DSn 내 PCS의 PTS는 다음의 식으로 표현된다.
PTS(DSn[PCS]) ≥ DTS(DSn[PCS]) + decode_duration(DSn)
"decode_duration(DSn)"은 PCS를 갱신하는데 사용되는 모든 그래픽스 오브젝트를 디코딩하기 위한 시간을 나타낸다. 디코드 시간은 고정값이 아니지만, 재생장치와 디바이스의 상태나 재생장치에 탑재된 소프트웨어에 따라 변화하지 않는다. DSn.PCSn의 화면을 합성하는데 사용되는 오브젝트가 DSn.PCSn.OBJ[j]인 경우, decode_duration(DSn)은 (i) 윈도우를 소거하는데 필요한 시간, (ii) DSn.PCSn.OBJ를 디코딩하기 위한 디코드 시간, (iii) DSn.PCSn.OBJ의 기입에 필요한 시간에 의해 연향을 받는다. Rd와 Rc가 설정되는 경우, decode_duration(DSn)은 항상 동일하다. 따라서, 오소링시 이 시간의 길이를 계산함으로써 PTS가 계산된다.
decode_duration의 계산은 도 18에 도시된 프로그램에 기초하여 수행된다. 도 19, 20a 및 20b는 프로그램의 알고리즘을 도시적으로 보여주는 플로차트이다. 이하, decode_duration의 계산에 대해 이 도면들을 참조하여 설명한다. 먼저, 도 19에 도시된 플로차트에서, PLANEINITIALIZE 함수가 호출된다(도 19의 단계 S1). PLANEINITIALIZE 함수는 DS를 제작하기 위해 그래픽스 플레인을 초기화하는데 필요한 시간을 계산하기 위한 함수를 호출하는데 사용된다. 도 19의 단계 S1에서, 함수는 변수 DSn, DSn.PCS.OBJ[0], 및 decode_duration과 같이 호출된다.
다음에서 도 20a를 참조하여 PLANEINITIALIZE 함수를 설명한다. 도면에서, initialize_duration은 PLANEINITIALIZE 함수의 리턴값을 나타내는 변수이다.
도 20의 단계 S2는 DSn의 PCS의 page_state가 Epoch Start를 나타내는지에 따라 동작을 스위칭하는 if 명령문이다. Page_state가 Epoch Start를 나타내면(DSn.PCS.page_state==epoch_start, 도 18의 단계 S2=Yes), 그래픽스 플레인을 소거하는데 필요한 시간이 initialize_duration으로 설정된다(단계 S3).
오브젝트 버퍼와 그래픽스 플레인 사이의 전송률 Rc가 상기한 바와 같이 256,000,000이고, 그래픽스 플레인의 총 크기가 video_width*video_height로 설정되는 경우, 소거하는데 필요한 시간은 "video_width*video_height//256,000,000"이다. PTS의 시간 정확도로 표현하도록 90,000Hz를 곱한 경우, 그래픽스 플레인을 소거하는데 필요한 시간은 "90,000 × video_width*video_height//256,000,000"이다. 이 시간이 initialize_duration에 추가된다.
Page_state가 Epoch Start를 나타내지 않으면(단계 S2=No), WDS로 정의된 윈도우[i]를 소거하는데 필요한 시간이 모든 윈도우에 대한 initialize_duration에 추가된다(단계 S4). 오브젝트 버퍼와 그래픽스 플레인 사이의 전송률 Rc가 상기한 바와 같이 256,000,000이고 WDS에 속하는 윈도우[i]의 총 크기가 ∑SIZE(WDS.WIN[i])일 때, 소거에 필요한 시간은 "SIZE(WDS.WIN[i])//256,000,000"이다. PTS의 시간 정확도로 표현하도록 90,000Hz를 곱한 경우, WDS에 속하는 그래픽스 플레인을 소거하는데 필요한 시간은 "90,000 × SIZE(WDS.WIN[i])//256,000,000"이다. 이 시간이 initialize_duration에 추가되고, 그 결과로서 initialize_duration이 리턴된다. 상기한 것이 PLANEINITIALIZE 함수이다.
도 19의 단계 S5는 DSn의 그래픽스 오브젝트의 개수가 1인지 2인지의 여부에 따라 동작을 스위칭하는 것(도 18에서 if(DSn.PCS.num_of_object==2), if(DSn.PCS.num_of_object==1))으로, 개수가 2이면(단계 S5), 그래픽스 플레인을 디코딩하기 위한 대기 시간이 decode_duration에 추가된다(단계 S6). 대기 시간의 계산은 WAIT 함수를 호출함으로써 수행된다(도 18에서 decode_duration+=WAT(DSn, DS.PCS.OBJ[0], decode_duration)). DSn, DS.PCS.OBJ[0], decode_duration 으로 설정된 변수를 이용하여 호출되며, 리턴값은 wait_duration 이다.
도 20b는 WAIT 함수의 동작을 보여주는 플로차트이다.
플로차트에서, invoker의 decode_duration은 current_duration으로 설정된다. Object_definition_ready_time은 DS의 그래픽스 오브젝트의 PTS로 설정된 변수이다.
Current_time은 current_time 및 DSn의 PCS의 DTS의 총 값으로 설정된 변수이다. object_definition_ready_time가 current_time 보다 클 때(단계 S7, if(current_time < object_definition_ready_time))에서 Yes), 리턴값으로서 wait_duration은 object_definition_ready_time와 current_time의 차가 되도록 설정된다(단계 S8, wait_duration += object_definition_ready_time - current_time). Decode_duration은 WAIT 함수의 리턴값이 윈도우를 리도로잉하는데 필요한 시간(90,000 × SIZE(WDS.WIN[i])//256,000,000)에 추가한 시간으로 설정된다.
상기의 설명은 그래픽스 플레인의 개수가 1인 경우에 대한 것이다. 도 19의 단계 S5에서, 그래픽스 플레인의 개수가 2인 경우로 판정된다. DSn의 그래픽스 플레인의 개수가 2 이상이면(도 18에서 if(DSn.PCS.num_of_object==2)), 변수로서 PCS의 OBJ[0]를 사용하여 WAIT 함수가 호출되고, 리턴값을 decode_duration에 추가한다(단계 S10).
이어지는 단계 S11에서, DSn의 OBJ[0]이 속하는 윈도우가 그래픽스 오브젝트[1]가 속하는 윈도우와 동일한 지의 여부가 판정된다(if(DSn.OBJ[0].window_id== DSn.PCS.OBJ[1].window_id). 윈도우가 동일하면, 변수로 OBJ[1]를 사용하여 WAIT 함수가 호출되고, 리턴값 wait_duration을 decode_duration에 추가하며(단계 S12), OBJ[0]가 속하는 윈도우를 리드로잉하는데 필요한 시간(90,000*(SIZE(DSn.WDS.OBJ[0].window_id))//256,000,000)을 decode_duration에 추가한다(단계 S13).
윈도우가 다른 것으로 판정되면(단계 S11, "different"), OBJ[0]가 속하는 윈도우를 리드로잉하는데 필요한 시간(90,000*(SIZE(DSn.WDS.OBJ[0].window_id)) // 256,000,000)이 decode_duration에 추가되고(단계 S15), 변수로서 OBJ[1]을 사용하여 WAIT 함수가 호출되고, 리턴값 wait_duration을 decode_duration에 추가하고(단계 S16), OBJ[1]가 속하는 윈도우를 리드로잉하는데 필요한 시간(90,000*(SIZE(DSn.WDS.OBJ[1].window_id))//256,000,000)이 decode_duration에 추가된다(단계 S17).
Decode-duration은 상기한 알고리즘에 의해 계산된다. OCS의 PTS가 설정되는 구체적인 방법이 이하 설명된다.
도 21a는 하나의 ODS가 하나의 윈도우에 포함되는 경우를 설명한다. 도 21b와 21c는 도 18에 도시된 시간 순서로 값을 보여주는 타이밍 차트이다. 각 차트의 바닥 라인 "ODS Decode"와 중간 라인 "Graphics Plane Access"는 재생시 동시에 수행되는 두 가지 동작을 나타낸다. 상기의 알고리즘은 이 두 가지 동작이 나란히 수행되는 것을 가정하여 설명한다.
Graphics Plane Access는 소거 시간(1)과 기입 시간(3)을 포함한다. 소거 시간(1)은 전체 그래픽스 플레인을 소거하는데 필요한 시간(90,000×(그래픽스 플레인의 크기//256,000,000))이나 또는 그래픽스 플레인의 모든 윈도우를 소거 하는데 필요한 시간(90,000×(윈도우[i]의 크기//256,000,000)) 중의 하나를 나타낸다.
기입 시간(3)은 전체 윈도우를 제작하는데 필요한 시간(90,000×(윈도우[i]의 크기//256,000,000))을 나타낸다.
또한, 디코드 시간(2)은 ODS의 DTS와 PTS 사이의 시간을 나타낸다.
소거 시간(1), 디코드 시간(20), 및 기임 시간(3)의 길이는 소거될 범위, 디코드될 ODS의 크기, 및 그래픽스 플레인에 기입될 그래픽스 오브젝트의 크기에 따라 변할 수 있다. 편의상, 도면의 디코드 시간(2)의 시작점은 소거 시간(3)의 시작점과 동일하다.
도 21b는 디코드 시간(2)이 길고, decode_duration이 디코드 시간(2)과 기입 시간(3)의 총합과 동일한 경우를 나타낸다.
도 21c는 소거 시간(1)이 길고, decode_duration이 소거 시간(1)과 기입 시간(3)의 총합과 동일한 경우를 나타낸다.
도 22a 내지 22c는 2개의 ODS가 하나의 윈도우에 포함되는 경우를 나타낸다. 도 22b와 22c 모두에서 디코드 시간(2)은 두 그래픽스를 디코딩하는데 필요한 총 시간을 나타낸다. 마찬가지로, 기입 시간(3)은 두 그래픽스를 그래픽스 플레인에 기입하는데 필요한 총 시간을 나타낸다.
ODS의 수가 2이더라도, 도 21의 경우와 같은 방법으로 decode_duration을 계산할 수 있다. 2개의 ODS를 디코딩하기 위한 디코드 시간(3)이 긴 경우, 도 22b에 나타난 바와 같이, decode_duration은 디코드 시간(2)과 기입 시간(3)의 총합과 동일하다.
소거 시간(1)이 길 경우, decode_duration은 소거 시간(1)과 기입 시간(3)의 총합과 같다.
도 23a는 두 개의 윈도우 각각이 ODS를 포함하는 경우를 설명한다. 앞의 경우와 같이, 소거 시간(1)이 두 개의 ODS를 디코딩하기 위한 디코드 시간(3) 보다 길 때, decode_duration은 소거 시간(1)과 디코드 시간(2)의 총합과 같다. 그러나, 소거 시간(1)이 디코드 시간(3) 보다 짧은 경우, 디코드 시간(2)이 종료하기 전에 첫 번째 윈도우에 기입할 수 있다. 따라서, decode_duration은 소거 시간(1)과 기입 시간(3) 중 어느 하나, 또는 디코드 시간(2)과 기입 시간(3)의 총합과 같지 않다.
첫 번째 ODS를 디코딩하는데 필요한 시간이 기입 시간(31)이고, 두 번째 ODS를 디코딩하는데 필요한 시간이 기입 시간(32)일 때, 도 23b는 디코드 시간(2)이 소거 시간(1)과 기입시간(31)의 총합보다 긴 경우를 나타낸다. 이 경우, decode_duration은 디코드 기간(2)과 기입 기간(32)의 총합과 같다.
도 23c는 소거 시간(1)과 기입 시간(31)의 총합이 디코드 시간(2) 보다 긴 경우를 나타낸다. 이 경우, decode_duration은 소거 시간(1), 기입 시간(31), 및 기입 시간(32)의 총합과 같다.
그래픽스 플레인의 크기는 미리 재생장치의 모델로부터 알려진다. 또한, 윈도우의 크기, ODS의 크기와 개수는 오소링시 알려진다. 따라서, decode_duration이 소거 시간(1)과 기입 시간(3), 디코드 시간(2)과 기입 시간(3), 디코드 시간(2)과 기입 시간(32), 또는 소거 시간(1)과 기입 시간(3) 및 기입 시간(32) 중 어떤 시간 조합과 같은 지를 알 수 있다.
상기에서 설명한 decode_duration의 계산에 기초하여 ODS의 PTS를 설정함으로써, 픽처 데이터를 갖는 그래픽스를 높은 정확도로 동기적으로 표시할 수 있다. 높은 정확도의 이러한 동기 표시는 윈도우를 정의하고 윈도우에 리드로잉할 영역을 한정함으로써 가능하게 된다. 따라서, 윈도우의 개념을 오소링 환경에 도입하는 것은 큰 의미를 갖는다.
다음은 DSn의 WDS의 DTS와 PTS의 설정에 대한 설명이다. WDS의 DTS는 다음 식을 만족하도록 설정될 수 있다.
DTS(DSn[WDS]) ≥ DTS(DSn[PCS])
반면에, DSn의 WDS의 OTS는 그래픽스 플레인에 기입을 시작하는 데드라인을 나타낸다. 그래픽스 플레인의 윈도우에 기입하는데 충분하기 때문에, 그래픽스 플레인에 기입을 시작하는 시간은 WDS를 기입하는데 필요한 시간으로부터 PCS의 PTS가 나타내는 시간 길이를 빼서 결정된다. WDS의 총 크기가 ∑SIZE(WDS.WIN[i])일 때, 소거와 리드로잉을 위한 시간은 "∑SIZE(WDS.WIN[i])//256,000,000" 이다. 90.000KHz의 시간 정확도로 표현하는 경우, 시간은 "90,000 × ∑SIZE(WDS.WIN[i])//256,000,000" 이다.
따라서, 다음의 식으로 WDS의 PTS를 계산할 수 있다.
PTS(DSn[WDS])=PTS(DSn[PCS]) - 90,000×∑SIZE(WDS.WIN[i])//256,000,000
WDS에 나타난 PTS는 데드라인이고, PTS 보다 빠르게 그래픽스 플레인에 기입을 시작할 수 있다. 환언하면, 도 23에 도시된 바와 같이, 일단 윈도우 중 하나에 렌더링될 ODS를 디코딩하면, 디코딩에 의해 얻어지는 그래픽스 오브젝트의 기입은 이 시점에서 시작할 수 있다.
상기한 바와 같이, WDS에 추가된 DTS와 PTS를 이용하여 AV 클립의 재생 타임 라인 상의 어떠한 시점에도 윈도우를 할당할 수 있다.
상기의 설정에 기초하여 표시 설정에서 DTS와 PTS의 설정의 예에 대해 도 24-25에 설명된 구체적인 예를 참조하여 이하 설명한다. 이 예는 그래픽스 플레인에 4회 기입함으로써 서브타이틀이 표시되고 두 개의 서브타이틀 "what is blu-ray."와 "blu-ray is everywhere."의 각각을 표시함으로써 갱신이 수행되는 경우에 대한 것이다. 도 24는 상기 예의 갱신시의 시프트를 설명한다. 점 t1 까지, "what"이 표시되고, t1 이후에 t2 까지 "what is"가 표시되고, 이어 t3에서 "what is blu-ray."가 표시된다. 첫 번째 서브타이틀의 전체 문장이 나타난 후, 두 번째 서브타이틀 "blu-ray is everywhere."가 t4에서 나타난다.
도 25a는 상기한 갱신을 수행하도록 설명되는 2개의 표시 설정을 도시한다. DS1은 t1에서의 갱신을 제어하기 위한 PCS1.2, 채색을 위한 PDS1, 서브타이틀 "what is blu-ray."에 대응하는 ODS1, 및 DS1의 종료 코드로서의 END를 포함한다.
DS2는 t2에서의 갱신을 제어하기 위한 PCS1.2와 END를 포함한다. DS3는 t3에서의 갱신을 제어하기 위한 PCS1.3과 END를 포함한다. DS4는 t4에서의 갱신을 제어하기 위한 PCS2, 색상 변환을 위한 PDS2, 서브타이틀 "blu-ray is everywhere."에 대응하는 ODS2, 및 END를 포함한다.
도 25b의 타이밍 차트를 참조하여, 4개의 표시 설정의 각 기능 세그먼트에 대한 DTS와 PTS의 설정을 설명한다.
타이밍 차트의 재생 타임 라인은 도 24의 타임 라인과 동일하다. 도 25a의 타이밍 차트에서, PTS(PCS1.1), PTS(PCS1.2), PTS(PCS1.3), 및 PTS(PCS2)는 각각 "what"을 표시하기 위한 표시점 t1, "what is"를 표시하기 위한 표시점 t2, "what is blu-ray."를 표시하기 위한 표시점 t3, "blue-ray is everywhere."를 표시하기 위한 표시점 t4에 설정된다. 각 PTS에 기술된 크로핑과 같은 제어가 각 서브타이틀의 표시점에서 수행될 필요가 있기 때문에 각 PTS는 상기와 같이 설정된다.
PTS(ODS1)과 PTS(ODS2)는 PTS(PCS1.1)과 PTS(PCS2)가 지시하는 점에서 decode_duration을 빼서 계산되는 점을 나타내도록 각각 설정된다. 이는 PTS(PCS)가 아래의 식을 만족하도록 설정될 필요가 있기 때문이다.
PTS(DSn[PCS]) ≥ DTS(DSn[PCS]) + decode_duration(DSn)
도 25b에서, PTS(ODS2)는 점 t4 앞에 오는 점 t5를 나타내도록 설정되고, PTS(ODS1)는 점 t0 앞에 오는 점을 나타내도록 설정된다. DTS(ODS2) = PTS(ODS1) 로 나타내는 관계가 여기서 만족된다.
선행하는 ODS의 PTS의 바로 직후의 ODS의 PTS가 더 빨리 표시되도록 설정함으로써, 재생장치는 선행하는 ODS를 오버라이트하도록 ODS가 메모리에 독출되는 동작을 수행하며, 이에 따라 적은 크기의 메모리로 재생 프로세스가 수행되는 것이 가능하다. 이러한 재생 프로세스를 수행함으로써, 재생장치를 위한 메모리 크기의 선택이 더 넓어진다.
PCS1.1의 DTS에 대한 값이 DTS(ODS1)이지시하는 점 이전의 어떠한 점일 수 있기 때문에, PCS1.1의 DTS는 DTS(PCS1.1) = DTS(ODS1)이 되도록 설정된다.
ODS1의 PTS, ODS2의 DTS, 그리고 PCS1.2, PCS1.3 및 PCS2의 PTS는 다음의 식이 나타내는 관계를 만족하도록 점 t0에서 설정된다.
PTS(ODS1) = DTS(ODS2) = PTS(PCS1.2) = PTS(PCS1.3) = PTS(PCS2)
이는 PCS1.2와 PCS1.3의 DTS에 대한 값이 PTS(PCS1.3)이 지시하는 점 이전의 어떠한 점일 수 있으며, PCS2의 DTS는 DTS(PCS2)가 지시하는 점 이전의 어떠한 점일 수 있기 때문이다.
상기에서 설명한 바와 같이, 동시에 하나 이상의 PCS를 독출함으로써 이전의 PCS의 갱신이 완료되자마자 이어지는 PCS의 갱신을 수행할 수 있다.
PCS의 DTS와 PTS, ODS의 PTS와 DTS가 상기한 식이 나타내는 관계를 만족하는 것은 충분하다. 따라서, DTS(ODS2) = PTS(ODS1) 또는 PTS(ODS1) = DTS(ODS2) = PTS(PCS1.2) = PTS(PCS1.3) = DTS(PCS2)가 되도록 값을 설정할 수 있다. 타임 스탬프에 대한 이러한 설정에 의해, 디코딩에서의 부하가 증가하거나 더 많은 버퍼가 필요한 기간의 시간 길이를 조절할 수 있다. 이러한 조절은 재생 중 제어의 가능성을 확장하고, 오소링이나 재생장치의 제조를 수행하는 사람들에게 유익하다.
상기에서 설명한 표시 설정(PCS, WDS, PDS, ODS)의 데이터 구조는 프로그래밍 언어에서 설명된 클래스 구조의 일 예이다. 오소링을 수행하는 제작자는 블루-레이 디스크 사전기록 포맷에서 제공되는 신택스에 따라 클래스 구조를 기술함으로써 BD-ROM 상의 데이터 구조를 얻을 수 있다.
다음, 본 발명에 따른 재생장치의 실제 예를 이하 설명한다. 도 26은 본 발명에 따른 재생장치의 내부 구조를 나타낸다. 본 발명에 따른 재생장치는 도면에 도시한 내부 구조에 기초하여 산업적으로 제조된다. 본 발명에 따른 재생장치는 주로 3가지 부분, 시스템 LSI, 드라이브 디바이스, 및 마이크로컴퓨터 시스템으로 구성되며, 이 세 부분을 장치의 캐비넷과 기판에 실장함으로써 산업적으로 제조할 수 있다. 시스템 LSI는 재생장치의 기능을 수행하는 다양한 처리 유닛이 집적되는 집적회로이다. 상기한 방법으로 제조된 재생장치는 BD 드라이브(1), 독출 버퍼(2), PID 필터(3), 트랜스포트 버퍼(4a-4c), 주변회로(4d), 비디오 디코더(5), 비디오 플레인(6), 오디오 디코더(7), 그래픽스 플레인(8), CLUT 유닛(9), 가산기(10), 그래픽스 디코더(12), 부호화 데이터 버퍼(13), 주변회로(13a), 시스템 그래픽스 프로세서(14), 오브젝트 버퍼(15), 합성 버퍼(16), 및 그래픽 콘트롤러(17)를 포함한다.
BD 드라이브(1)는 BD-ROM의 로드(load)/리드(read)/이젝트(eject)를 수행하고, BD-ROM에 액세스한다.
독출 버퍼(2)는 BD-ROM으로부터 독출된 TS 패킷을 선입선출 순서로 저장하기 위한 FIFO 메모리이다.
PID 필터(3)는 독출 버퍼(2)로부터 출력된 하나 이상의 TS 패킷을 필터링한다. PID 필터(3)에 의한 필터링은 원하는 PID를 갖는 TS 패킷만을 트랜스포트 버퍼(4a-4c)에 기입하는 것이다. 버퍼링은 PID 필터(3)에 의한 필터링에 반드시 필요한 것은 아니며, 따라서 PID 필터(3)에 입력된 TS 패킷은 지연없이 트랜스포트 버퍼(4a-4c)에 기입된다.
트랜스포트 버퍼(4a-4c)는 PID 필터(3)로부터 출력된 TS 패킷을 선입선출 순서로 저장하기 위한 것이다. 트랜스포트 버퍼(4a-4c)로부터 TS 패킷이 출력되는 속도는 속도 Rx이다.
주변회로(4d)는 트랜스포트 버퍼(4a-4c)로부터 독출된 TS 패킷을 기능 세그먼트로 변환하기 위한 배선 로직이다. 변환에 의해 얻어진 기능 세그먼트는 부호화 데이터 버퍼(13)에 저장된다.
비디오 디코더(5)는 PID 필터(3)로부터 출력된 하나 이상의 TS 패킷을 압축해제된 픽처로 디코드하고 비디오 플레인(6)에 기입한다.
비디오 플레인(6)은 영화를 위한 플레인 메모리이다.
오디오 디코더(7)는 PID 필터(3)로부터 출력된 TS 패킷을 디코드하고 압축해제된 오디오 데이터를 출력한다.
그래픽스 플레인(8)은 한 화면에 대한 영역을 갖는 플레인 메모리이고, 한 화면분의 압축해제된 그래픽스를 저장할 수 있다.
CLUT 유닛(9)은 PDS가 나타내는 Y, Cr, 및 Cb에 대한 값에 기초하여 그래픽스 플레인(8)에 저장된 압축해제된 그래픽스의 인덱스 컬러를 변환한다.
가산기(10)은 CLUT 유닛(9)에 의해 색상 변환이 수행된 압축해제된 그래픽스에 PDS가 지시하는 T 값(투명도)을 곱하고, 비디오 플레인에 저장된 비합성된 픽처 데이터를 픽셀당 가산하여 합성된 이미지를 취득하여 출력한다.
그래픽스 디코더(12)는 그래픽스 스트림을 디코드하여 비합성된 그래픽스를 취득하고, 이 비합성된 그래픽스를 그래픽스 오브젝트로 그래픽스 플레인(8)에 기입한다. 그래픽스 스트림을 디코딩함으로써, 서브타이틀과 메뉴가 화면에 나타난다. 그래픽스 디코더(12)는 부호화 데이터 버퍼(13), 주변회로(13a), 스트림 그래픽스 프로세서(14), 오브젝트 버퍼(15), 합성 버퍼(16), 및 그래픽 콘트롤러(17)를 포함한다.
부호화 데이터 버퍼(13)는 기능 세그먼트가 DTS와 PTS와 함께 저장되는 버퍼이다. 기능 세그먼트는 TS 패킷 헤더와 PES 패킷 헤더를 트랜스포트 버퍼(4a-4c)에 저장된 트랜스포트 스트림의 각 TS 패킷으로부터 제거하고 페이로드를 순차적으로 정렬함으로써 취득한다. 제거된 TS 패킷 헤더와 PES 패킷 헤더 중 PTS와 DTS는 PES 패킷들 사이의 대응을 만든 후에 저장된다.
주변회로(13a)는 부호화 데이터 버퍼(13)와 스트림 그래픽스 프로세서(14) 사이의 전송과, 부호화 데이터 버퍼(13)와 합성 버퍼(16) 사이의 전송을 구현하는 배선 로직이다. 전송 동작에서, 현재 시간이 ODS의 DTS가 지시하는 시간인 경우, ODS는 부호화 데이터 버퍼(13)로부터 스트림 그래픽스 프로세서(14)로 전송된다. 현재 시간이 PCS와 PDS의 DTS가 지시하는 시간인 경우, PCS와 PDS는 합성 버퍼(16)로 전송된다.
스트림 그래픽스 프로세서(14)는 ODS를 디코드하고, 디코딩으로 얻어진 인덱스 컬러의 압축해제된 그래픽스를 그래픽스 오브젝트로서 오브젝트 버퍼(15)에 기입한다. 스트림 그래픽스 프로세서(14)에 의한 디코딩은 DTS가 ODS와 일치하는 시각에 시작하고, ODS와 일치하는 PTS가 나타내는 디코드 종료시각에 종료한다. 그래픽스 오브젝트의 디코딩 속도 Rd는 스트림 그래픽스 프로세서(14)의 출력 속도이다.
오브젝트 버퍼(15)는 ETSI EN 300 743 표준의 픽셀 버퍼에 대응하는 버퍼이며, 스트림 그래픽스 프로세서(14)가 수행한 디코드에 의해 취득한 그래픽스 오브젝트가 배치된다. 오브젝트 버퍼(15)는 그래픽스 플레인(8)의 2배 또는 4배 정도의 크기로 설정될 필요가 있다. 이는 스크롤링 효과가 수행되는 경우, 오브젝트 버퍼(15)는 그래픽스 플레인의 2배 또는 4배 정도인 그래픽스 오브젝트를 저장할 필요가 있기 때문이다.
합성 버퍼(16)는 PCS와 PDS가 배치되는 메모리이다.
그래픽스 콘트롤러(17)는 합성 버퍼(16)에 배치된 PCS를 디코드하고 이 PCS에 기초하여 제어를 수행한다. 제어를 수행하기 위한 타이밍은 PCS에 첨부된 PTS에 기초한다.
다음, PID 필터(3), 트랜스포트 버퍼(4a-4c), 그래픽스 플레인(8). CLUT 유닛(9), 부호화 데이터 버퍼(130, 및 그래픽 콘트롤러(17)를 구성하기 위한 전송 속도와 버퍼 크기에 대한 권장값을 설명한다. 도 27은 기입 속도 Rx, Rc, 및 Rd, 그래픽스 플레인(8), 부호화 데이터 버퍼(13), 오브젝트 버퍼(15), 및 합성 버퍼(16)의 크기를 보여준다.
오브젝트 버퍼(15)와 그래픽스 플레인(8) 사이의 전송 속도 Rc는 이 실시예의 재생장치에서 최고 전송 속도이고, 윈도우 크기와 프레임율로부터 256 Mbps(=500 Kbyte ×29.97 × 2)로 계산된다.
Rc와 달리, 스트림 그래픽스 프로세서(14)와 오브젝트 버퍼(15) 사이의 전송 속도 Rd(픽셀 디코딩 속도)는 매 프레임 사이클마다 갱신될 필요가 없으며, Rc의 1/2 또는 1/4이면 Rd에 대해 충분하다. 따라서, Rd는 128 Mbps 또는 64 Mbps 중 하나이다.
트랜스포트 버퍼(4a-4c)와 부호화 데이터 버퍼(13) 사이의 트랜스포트 버퍼 누설 속도 Rx는 압축된 상태의 ODS의 전송 속도이다. 따라서, 압축율을 곱한 전송 속도 Rd는 트랜스포트 버퍼 누설 속도 Rx에 대해 충분하다. ODS의 압축율이 25%로 주어지면, 16 Mbps(=64 Mbps × 25%)이면 충분하다.
도면에 도시된 전송 속도와 버퍼 크기는 최소 기준으로, 더 높은 전송 속도와 더 큰 크기도 가능하다.
상기와 같이 구성된 재생장치에서, 각 요소들은 파이프라인 구조로 디코딩 동작을 수행한다.
도 28은 재생장치에 의한 파이프라인 프로세싱을 보여주는 타이밍 차트이다. 도면의 5번째 행은 BD-ROM의 표시 설정이고, 4번째 행은 PCS, WDS, PDS, 및 ODS로부터 부호화 데이터 버퍼(13)로의 독출 기간을 보여준다. 3번째 행은 스트림 그래픽 프로세서(14)에 의한 각 ODS의 디코드 기간을 나타낸다. 첫 번째 행은 그래픽 콘트롤러(17)가 수행하는 동작을 보여준다.
ODS1과 ODS2에 첨부된 DTS(디코드 시작 시각)는 도면에서 각각 t31과 t32를지시한다. 디코드 시작 시각이 DTS로 설정되기 때문에, 각 ODS는 부호화 데이터 버퍼(13)로 독출될 필요가 있다. 따라서, ODS1의 독출은 ODS1이 부호화 데이터 버퍼(13)로 디코드되는 디코드 기간 dp1 전에 완료된다. 또한, ODS2의 독출은 ODS2가 부호화 데이터 버퍼(13)로 디코드되는 디코드 기간 dp2 전에 완료된다.
반면에, ODS1과 ODS2에 첨부된 PTS(디코드 종료 시각)는 각각 도면에서 t32와 t33을 지시한다. 스트림 그래픽스 프로세서(14)에 의한 ODS1의 디코딩은 t32까지 완료되고, ODS2의 디코딩은 t33으로 지시하는 시각까지 완료된다. 상기한 바와 같이, 스트림 그래픽스 프로세서(14)는 ODS를 부호화 데이터 버퍼(13)에 ODS의 DTS가 지시하는 시각까지 독출하고, 부호화 데이터 버퍼(13)에 독출된 ODS를 ODS의 PTS가 지시하는 시각까지 디코드하며, 디코드된 ODS를 오브젝트 버퍼(15)에 기입한다.
도면에서 첫 번째 행의 기간 cd1은 그래픽스 콘트롤러(17)가 그래픽스 플레인을 소거하는데 필요한 기간이다. 또한, 기간 td1은 오브젝트 버퍼에 취득된 그래픽스 오브젝트를 그래픽스 플레인(8)에 기입하는데 필요한 기간이다. WDS의 PTS는 기입을 시작하는 데드라인이고, PCS의 PTS는 기입의 종료와 표시를 위한 타이밍을 나타낸다. PCS의 PTS가 지시하는 시각에, 대화형 화면을 합성하는 압축해제된 그래픽스가 그래픽스 플레인(8) 상에 취득된다.
CLUT 유닛(9)이 압축해제된 그래픽스의 색상 변환을 수행하고 가산기(10)가 비합성 그래픽스와 비디오 플레인(6)에 저장된 압축해제된 픽처의 합성을 수행한 후, 합성 이미지가 취득된다.
그래픽스 디코더(12)에서, 스트림 그래픽스 프로세서(14)는, 그래픽스 콘트롤러(17)가 그래픽스 플레인(8)의 소거를 수행하는 동안 연속적으로 디코딩을 수행한다. 상기한 파이프라인 프로세싱에 의해, 그래픽스를 신속하게 표시할 수 있다.
도 28에서, 그래픽스 플레인의 소거가 ODS 디코딩 완료 전에 종료하는 경우를 설명한다. 도 29는 그래픽스 플레인의 소거가 완료되기 전에 ODS 디코딩이 종료하는 경우의 파이프라인 프로세싱의 타이밍 차트를 도시하고 있다. 이 경우, ODS 디코딩의 완료시에 그래픽스 플레인에 기입을 할 수 없다. 그래픽스 플레인의 소거가 완료된 때, 디코드로 취득한 그래픽스를 그래픽스 플레인에 기입하는 것이 가능하게 된다.
다음, 제어부(20)와 그래픽스 디코더(12)가 실행되는 방법을 이하 설명한다. 제어부(20)는 도 30에 도시된 동작을 수행하는 프로그램을 기입하고 일반 CPU가 이 프로그램을 실행하도록 함으로써 실행된다. 제어부(20)가 수행하는 동작은 도 30을 참조하여 설명된다.
도 30은 기능 세그먼트의 로딩 동작의 프로세스를 보여주는 플로차트이다. 플로차트에서, SegmentK는 AV 클립을 재생하는데 독출되는 세그먼트(PCS, WDS, PDS, 및 ODS) 각각을 나타내는 변수이다. IGNORE FLAG는 SegmentK가 무시되는지 로드되는지를 결정하는 플래그이다. 플로차트는 루프 구조를 가지며, 이 루프 구조에서 IGNORE FLAG가 먼저 "0"으로 초기화되고 이어 단계 S21-S24와 단계 S7-31이 각 SegmentK에 대해 반복된다(단계 S25와 단계 S26).
단계 S21은 SegmentK가 PCS인지를 판정하기 위한 것으로, SegmentK가 PCS이면 단계 S27과 S28의 판정이 수행된다.
단계 S22는 IGNORE FLAG가 0인지를 판정하기 위한 것이다. IGNORE FLAG가 0이면, 동작은 단계 S23으로 이동하고, IGNORE FLAG가 1이면, 동작은 단계 S24로 이동한다. IGNORE FLAG가 0이면(단계 S22에서 Yes), SegmentK는 단계 S23에서 부호화 데이터 버퍼(13)에 로드된다.
IGNORE FLAG가 1이면(단계 S22에서 No), SegmentK는 단계 S24에서 무시된다. 이것에 의해, DS에 속하는 모든 기능 세그먼트의 나머지는 단계 S22가 No이기 때문에 무시된다(단계 S24).
상기한 바와 같이, SegmentK가 로드되는지 무시되는지의 여부는 IGNORE FLAG에 의해 결정된다. 단계 S27-S31, S34, 및 S35는 IGNORE FLAG를 설정하기 위한 단계이다.
단계 S27에서, SegmentK의 segment_type이 Acquisition Point인지의 여부가 판정된다. SegmentK가 Acquisition Point이면, 동작은 단계 S28로 이동하고, SegmentK가 Epoch Start이거나 Normal Case이면, 동작은 단계 S31로 이동한다.
단계 S28에서, 선행하는 DS가 그래픽스 디코더의 어떠한 버퍼(부호화 데이터 버퍼(13), 스트림 그래픽스 프로세서(14), 오브젝트 버퍼(15), 및 합성 버퍼(16))에라도 존재하는지 여부가 판정된다. 단계 S28의 판정은 단계 S27의 판정이 Yes일 때 이루어진다. 선행하는 DS가 그래픽스 디코더(12)에 존재하지 않는 경우는 스킵 동작이 수행되는 경우를 나타낸다. 이 경우, 표시는 Acquisition Point인 DS로부터 시작하고, 따라서 동작은 단계 S30으로 이동한다(단계 S28의 No). 단계 S30에서, IGNORE FLAG는 0으로 설정되고 동작은 단계 S22로 이동한다.
선행하는 DS가 그래픽스 디코더(12)에 존재하는 경우는 정상 재생이 수행되는 경우를 나타낸다. 이 경우, 동작은 단계 S29로 이동한다(단계 S28에서 Yes). 단계 S29에서, IGNORE FLAG는 1로 설정되고 동작은 단계 S22로 이동한다.
단계 S31에서, PCS의 segment_type이 Normal Case인지의 여부가 판정된다. PCS가 Normal Case이면, 동작은 단계 S34로 이동하고, PCS가 Epoch Start이면, IGNORE FLAG는 단계 S30에서 0으로 설정된다.
단계 S34에서, 단계 S28과 같이, 선행하는 DS가 그래픽스 디코더(12)의 어떠한 버퍼에라도 존재하는지의 여부가 판정된다. 선행하는 DS가 존재하면, IGNORE FLAG는 0으로 설정된다(단계 S30). 선행하는 DS가 존재하지 않으면, 대화형 화면을 합성하기 위하여 충분한 기능 세그먼트를 취득할 수 없고 IGNORE FLAG는 1로 설정된다(단계 S35).
상기한 방법으로 IGNORE FLAG를 설정함으로써, Normal Case를 구성하는 기능 세그먼트는 선행하는 DS가 그래픽스 디코더(12)에 존재하지 않을 때 무시된다.
도 31에 도시된 바와 같이, DS가 다중화된 경우의 예를 들어, DS의 독출이 수행되는 방법을 설명한다. 도 31의 예에서, 3개의 DS가 영화와 다중화된다. DS1의 segment_type은 Epoch Start, DS10의 segment_type은 Acquisition Point, 그리고 DS20의 segment_type은 Normal Case이다.
3개의 DS와 영화가 다중화된 AV 클립에서, 화살표 am1으로 표시한 바와 같이 픽처 데이터 pt10으로의 스킵 동작이 수행된다고 가정하면, DS10은 스킵 목표에 가장 근접하며, 따라서 DS10은 도 30의 플로차트에서 설명한 DS이다. Segment_type이 단계 S27에서 Acquisition Point인 것으로 판정되더라도, IGNORE FLAG는 선행하는 DS가 부호화 데이터 버퍼(13)에 존재하지 않기 때문에 0으로 설정되며, DS10은 도 32의 화살표 md1로 나타낸 바와 같이, 재생장치의 부호화 데이터 버퍼(13)에 로드된다. 반면에, 스킵 목표가 DS10 이후인 경우(도 31의 화살표 am2), DS20이 Normal Case 표시 설정이고 선행하는 DS가 부호화 데이터 버퍼(13)에 존재하지 않기 때문에 DS20은 무시된다(도 32의 화살표 md2).
도 33은 정상 재생에서 DS1, DS10, 및 DS20의 로딩을 도시하고 있다. PCS의 segment_type이 Epoch Start인 DS1은 그대로 부호화 데이터 버퍼(13)에 로드된다(단계 S23). 그러나, PCS의 segment_type이 Acquisition Point인 DS10의 IGNORE FLAG가 1로 설정되기 때문에(단계 S29), DS10을 구성하는 기능 세그먼트는 무시되고 부호화 데이터 버퍼(13)에 로드되지 않는다(도 34의 화살표 rd2, 및 단계 S24). 또한, DS20은 부호화 데이터 버퍼(13)에 로드된다. 이는 PCS의 segment_type이 Normal Case이기 때문이다(도 34의 화살표 rd3).
다음, 그래픽스 콘트롤러(17)에 의한 동작을 설명한다. 도 35-37은 그래픽스 콘트롤러(17)에 의해 수행되는 동작을 나타내는 플로차트이다.
단계 S41-S44는 플로차트의 주요 루틴을 위한 단계이고, 단계 S41-S44에서 기술한 어떠한 이벤트라도 발생하는 것을 대기한다.
단계 S41은 현재의 재생 시각이 PCS의 DTS가 지시하는 시각인지를 판정하는 것이고, 판정이 Yes이면, 단계 S45-S53의 동작이 수행된다.
단계 S45는 OCS의 composition_state가 epoch_start인지를 판정하는 것이고, epoch_start로 판정되면, 그래픽스 플레인(8)은 단계 S46에서 모두 소거된다. epoch_start 이외의 다른 것으로 판정되면, WDS의 window_horizontal_position, window_vertical_position, window_width, 및 window_height가 나타내는 윈도우가 소거된다.
단계 S48은 단계 S46 또는 단계 S47에서 수행되는 소거 이후에 수행되는 단계이며, 임의의 ODSx의 PTS가 지시하는 시각이 경과하였는지를 판정한다. 임의의 ODSx의 디코딩은 소거가 종료하는 시각까지 이미 완료될 수 있다. 이는 전체 그래픽스 플레인(8)의 소거에 시간이 걸리기 때문이다. 따라서, 단계 S48에서, 임의의 ODSx의 디코딩은 소거가 종료되는 시각까지 이미 완료된 것으로 판정된다. 판정이 No이면, 동작은 메인 루틴으로 복귀한다. 임의의 ODSx의 PTS가 지시하는 시각이 이미 경과하였다면, 단계 S49-51의 동작이 수행된다. 단계 S49에서, object_crop_flag가 0인지의 여부가 판정되고, 0을 나타내면, 그래픽스 오브젝트는 "비표시"로 설정된다(단계 S50).
Object_crop_flag가 단계 S49에서 0이 아니면, object_cropping_horizontal_position, object_cropping_vertical_position, cropping_width, 및 cropping_height에 기초하여 크롭된 오브젝트가 object_cropping_horizontal_position와 object_cropping_vertical_position이 지시하는 위치에서 그래픽스 플레인(8)의 윈도우에 기입된다(단계 S51). 상기한 동작에 의해, 하나 이상의 그래픽스 오브젝트가 윈도우에 렌더링된다.
단계 S52에서, 다른 ODSy의 PTS에 대응하는 시각이 경과하였는지의 여부가 판정된다. ODSx를 그래픽스 플레이(8)에 기입할 때, ODSy의 디코딩이 이미 완료되었다면, ODSy는 ODSx가 되고(단계 S53), 동작은 단계 S49로 이동한다. 이것에 의해 단계 S49-S51로부터의 동작이 다른 ODS로 수행된다.
다음, 도 36을 참조하여 이하에 단계 S42와 단계 S54-S59를 설명한다.
단계 S42에서, 현재의 재생점이 WDS의 PTS에 있는지의 여부가 판정된다. 판정이 현재의 재생점이 WDS의 PTS에 있는 것이면, 단계 S54에서 윈도우의 개수가 1 이하인지를 판정한다. 판정이 2이면, 단계 S55-S59의 루프 프로세싱이 수행된다. 루프 프로세싱에서, 단계 S55-S59의 동작은 윈도우에 표시된 두 개의 그래픽스 오브젝트의 각각에 수행된다. 단계 S57에서, object_crop_flag이 0을 나타내는지의 여부가 판정된다. 0을 나타내면, 그래픽스는 표시되지 않는다(단계 S58).
0을 나타내지 않으면, object_cropping_horizontal_position, object_cropping_vertical_position, cropping_width, 및 cropping_height에 기초하여 크롭된 오브젝트는 object_cropping_horizontal_position와 object_cropping_vertical_position이 지시하는 위치에서 그래픽스 플레인(8)의 윈도우에 기입된다(단계 S59). 상기한 동작을 반복함으로써, 하나 이상의 그래픽스 오브젝트가 윈도우에 렌더링된다.
단계 S44에서, 현재의 재생점이 PDS의 PTS에 있는지의 여부가 판정된다. 현재의 재생점이 PDS의 PTS에 있는 것으로 판정되면, pallet_update_flag가 단계 S60에서 하나 이하인지의 여부가 판정된다. 판정이 하나이면, pallet_id가 지시하는 PDS가 CLUT 유닛에 설정된다(단계 S61). 판정이 0이면, 단계 S61은 건너뛴다.
그 후, CLUT 유닛은 영화와 조합될 그래픽스 플레인(8)의 그래픽스 오브젝트의 색상 변환을 수행한다(단계 S62).
다음, 도 37을 참조하여 단계 S43과 단계 S64-S66을 이하 설명한다.
단계 S43에서, 현재의 재생점이 PDS의 PTS에 있는지의 여부를 판정한다. 현재의 재생점이 PDS의 PTS에 있는 것으로 판정되면, 단계 S63에서 윈도우의 개수가 2개 이하인지의 여부를 판정한다. 판정이 1이면, 동작은 메인 루틴으로 복귀한다. 판정이 2이면, 단계 S64-S66의 동작이 수행된다. 단계 S64에서, object_crop_flag가 0을 나타내는지의 여부를 판정한다. 0을 나타내면, 그래픽스는 표시되지 않는다(단계 S65).
0을 나타내지 않으면, object_cropping_horizontal_position, object_cropping_vertical_position, cropping_width, 및 cropping_height에 기초하여 크롭된 오브젝트는 object_cropping_horizontal_position와 object_cropping_vertical_position이 지시하는 위치에서 그래픽스 플레인(8)의 윈도우에 기입된다(단계 S66). 상기한 동작을 반복함으로써, 그래픽스 오브젝트가 각 윈도우에 렌더링된다.
상기의 설명은 PCS의 DTS와 PTS 및 DSn에 속하는 ODS의 DTS와 PTS에 관한 것이다. PDS의 DTS와 PTS 및 END의 DTS와 PTS는 설명하지 않는다. 먼저, DSn에 속하는 PDS의 DTS와 PTS가 설명된다.
DSn에 속하는 PDS에 대해서, 첫 번째 ODS의 디코딩 시작점(DTS(DSn[ODS1]) 이후에 PDS가 합성 버퍼(16)에 로드되는 PCS(DTS[DSn])에 의해 CLUT(9)에 사용할 수 있다면 충분하다. 따라서, DSn의 각 PDS(PDS1-PDSlast)의 PTS 값은 다음의 관계를 만족하도록 설정될 필요가 있다.
DTS(DSn[PCS]) ≤ PTS(DSn[PDS1])
PTS(DSn[PDSj]) ≤ PTS(DSn[PDSj+1]) ≤ PTS(DSn[PDSlast])
PTS(DSn[PDSlast]) ≤ PTS(DSn[ODS1])
PDS의 DTS는 재생 중에 참조되지 않으며, ODS의 DTS는 MPEG2 표준을 만족하기 위하여 PDS의 PTS와 같은 값으로 설정되는 것에 유의하라.
다음은 상기의 관계를 만족하도록 DTS와 PDS가 설정될 때 재생장치의 파이프라인 프로세싱에서 DTS와 PTS의 역할에 대한 설명이다. 도 38은 PDS의 PTS에 기초한 재생장치의 파이프라인을 보여준다. 도 38은 도 26에 기초한다. 도 38의 첫 번째 행은 CLUT 유닛(9)에서 ODS를 설정하는 것을 보여준다. CLUT 유닛(9)에 대한 PDS1-PDSlast의 설정은 PCS와 WDS를 전송한 후, 그리고 ODS1의 디코딩 전에 수행되며, 따라서 CLUT 유닛(9)에 대한 PDS1-PDSlast의 설정은 화살표 up2와 up3으로 도시된 바와 같이 ODS1의 DTS가 지시하는 점 이전에 설정된다.
상기한 바와 같이, PDS의 설정은 ODS의 디코딩에 앞서 수행된다.
다음, DSn의 표시 설정 세그먼트의 END의 PTS의 설정을 설명한다. DSn에 속하는 END는 DSn의 종료를 나타내고, 따라서 END의 PTS가 ODS2의 디코드 종료 시각을 나타내는 것이 필요하다. 디코드 종료 시각은 ODS2(ODSlast)의 PTS(PTS(DSn[PDSlast])에 의해 나타나고, 따라서 END의 PTS는 아래의 식을 만족하는 값으로 설정될 필요가 있다.
DTS(DSn[END]) = PTS(DSn[PDSlast])
DSn과 DSn+1에 속하는 PCS 사이의 관계를 고려하여, DSn의 PCS가 첫 번째 ODS(ODS1)의 로딩 시각 이전에 합성 버퍼(16)에 로드되므로 END의 PTS는 DSn의 PCS의 로딩 시각 이후이고 DSn+1에 속하는 PCS의 로딩 시각 이전이어야 한다. 따라서, END의 PTS는 아래의 관계를 만족할 필요가 있다.
DTS(DSn[PCS]) ≤ PTS(DSn[END]) ≤ DTS(DSn+1[PCS])
반면에, 첫 번째 ODS(ODS1)의 로딩 시각은 최종 PDS(PDSlast)의 로딩 시각 이전이며, 그러므로 END의 PTS(PTS(DSn[END])는 DSn에 속하는 PDS(PTS(DSn[PDSlast])의 로딩 시각 이후여야 한다. 따라서, END의 PTS는 아래의 관계를 만족시킬 필요가 있다.
PTS(DSn[PDSlast]) ≤ PTS(DSn[END])
다음은 재생장치의 파이프라인 프로세싱에서 END의 PTS의 의미에 대한 설명이다. 도 39는 재생장치의 파이프라인 프로세싱에서 END의 의미를 기술하는 다이어그램이다. 도 39는 도 26에 기초하며, 도 39의 각 행은, 도 39의 첫 번째 행이 합성 버퍼(16)의 내용을 나타내는 것을 제외하고 도 26과 실질적으로 동일하다. 또한, 도 39에서, 2개의 표시 설정 DSn과 DSn+1이 설명된다. DSn의 DSlast는 A-ODSs의 최종 ODSn이며, 따라서 END의 PTS가 지시하는 점은 DSn+1의 PCS의 DTS 이전이다.
END의 PTS에 의해, DSn의 ODS의 로딩이 재생 중 완료되는 때를 알 수 있다.
END의 DTS가 재생 중에 참조되지 않더라도, MPEG2 표준을 만족하기 위하여 END의 PTS와 같은 값으로 설정되는 것에 유의해야 한다.
상기한 바와 같이, 그래픽스 플레인의 일부는 이 실시예에 따라 그래픽스를 표시하기 위하여 윈도우로서 지정되며, 따라서 재생장치는 전체 플레인에 대해 그래픽스를 렌더링할 필요가 없다. 재생장치는 윈도우의 기설정된 크기, 가령 그래픽스 플레인의 25% 내지 33%에 대해서만 그래픽스를 렌더링할 수 있다. 윈도우의 그래픽스 이외의 다른 그래픽스의 렌더링은 필요하지 않기 때문에, 재생장치에 소프트웨어의 로드는 감소한다.
그래픽스 플레인의 1/4처럼 그래픽스의 갱신이 수행되는 최악의 경우에도, 재생장치가 256 Mbps와 같은 기설정된 전송 속도로 그래픽스 플레인에 기입을 수행하고, 픽처와의 동기 표시를 보장하도록 윈도우의 크기를 설정함으로써 그래픽스를 픽처와 동기하여 표시할 수 있다.
따라서, 동기 표시가 쉽게 확보될 수 있기 때문에 다양한 재생장치에 대해 고해상도 서브타이틀 표시를 구현할 수 있다.
[제 2 실시예]
제 1 실시예에서, 각 비디오 프레임에 대해 그래픽스를 갱신하도록 윈도우의 크기는 전체 그래픽스 플레인의 1/4로 설정되고, 그래픽스 플레인에 대한 기입 속도 Rc는 256 Mbps로 설정된다. 또한, 갱신 속도를 비디오 프레임율의 1/2 또는 1/4로 설정함으로써, 더 큰 크기의 그래픽스를 갱신할 수 있게 되었다. 그러나, 갱신 속도가 비디오 프레임율의 1/2 또는 1/4인 경우, 그래픽스 플레인에 기입하는데 2 또는 4 프레임이 든다. 하나의 그래픽스 플레인이 제공되는 경우, 그래픽스가 기입되는 2 또는 4 프레임 중 그래픽스의 기입 프로세스가 사용자에게 보일 수 있다. 그러한 경우, 하나의 그래픽스로부터 더 큰 그래픽스로의 순간적인 스위칭과 같은 표시 효과가 효과적으로 구현되지 않을 수 있다. 그러므로, 제 2 실시예에서, 2개의 그래픽스 플레인이 제공된다. 도 40은 제 2 실시예에 따른 재생장치의 내부 구조를 보여준다. 도 40의 재생장치는 2개의 그래픽스 플레인(도면에서 그래픽스 플레인(81)과 그래픽스 플레인(82))을 구비하며, 2개의 그래픽스 플레인은 이중 버퍼를 구성한다. 따라서, 그래픽스 플레인의 다른 하나로부터 독출이 수행되는 동안 그래픽스 플레인의 하나에 기입을 하는 것이 가능하다. 또한, 제 2 실시예에 따른 그래픽스 콘트롤러(17)는 독출되는 그래픽스 플레인을 PCS의 PTS에 의해 지시되는 점에서 스위치한다.
도 41은 이중 버퍼를 구성하는 그래픽스 플레인에서의 독출과 기입 동작을 설명한다. 상부 행은 그래픽스 플레이(81)의 내용을 나타내고, 하부 행은 그래픽스 플레인(82)의 내용을 나타낸다. 프레임 당 그래픽스 프레임 양측의 내용이 제 1 프레임에서 제 5 프레임까지(좌측에서 우측으로) 도시되어 있다. 두꺼운 선으로 둘러싸인 각 프레임에 대한 그래픽스 플레인(81, 82) 부분이 독출 목표이다. 도면에서, 얼굴 마크가 그래픽스 플레이(81)에 포함되어 있고, 얼굴 마크는 오브젝트 버퍼(15)에 있는 태양 마크로 대체되어야 한다. 태양 마크의 크기는 4 Mbyte이고, 이는 오브젝트 버퍼(15)의 최대 크기이다.
태양 마크를 그래픽스 플레인에 대한 기입 속도(Rc=256 Mbps)로 그래픽스 플레인(82)에 기입하는데, 기입이 완료될 때까지 4 프레임이 걸리며, 태양 마크의 1/4만이 제 1 프레임 중, 제 2 프레임 중 2/4, 그리고 제 3 프레임 중 3/4이 그래픽스 플레인(82)에 기입된다. 그러나, 그래픽스 플레인(81)이 화면에 표시될 목표이기 때문에, 태양 마크를 그래픽스 플레인에 기입하는 프로세스는 사용자에게 보이지 않는다. 표시의 목표가 그래픽스 플레인(82)로 스위치하는 제 5 프레임에서, 그래픽스 플레인(82)의 내용은 사용자에게 보일 수 있게 된다. 따라서, 얼굴 마크에서 태양 마크로의 스위칭이 완료된다.
상기한 바와 같이, 제 2 실시예에 따르면, 더 큰 크기의 그래픽스가 4 프레임에 그래픽스 플레인에 기입되는 경우에도 화면의 표시를 동시에 다른 그래픽스로 스위칭하는 것이 가능하며, 따라서 크레딧, 영화의 개요 또는 경고와 같은 것을 전체 화면에 동시에 표시할 때 유용하다.
[제 3 실시예]
제 3 실시예는 BD-ROM의 제조공정에 관한 것이다. 도 42는 제 3 실시예에 따른 BD-ROM의 제조공정을 도시하는 플로차트이다.
BD-ROM의 제조는 자료를 제작하고 영화와 사운드를 기록하기 위한 자료 제작 단계 S201, 오소링 장치를 이용하여 어플리케이션을 생성하기 위한 오소링 단계 S202, 및 BD-ROM의 마스터 디스크를 제작하고 BD-ROM을 완성하도록 프레스하는 프레싱 단계 S203을 포함한다.
BD-ROM의 오소링 단계는 다음과 같이 단계 S204-S209를 포함한다.
단계 S204, 서브타이틀이 표시될 윈도우를 정의하도록 WDS가 기술되고, 단계 S205에서, 윈도우가 같은 크기로 같은 위치에 나타나도록 정의되는 시간이 한 에포크로 설정되고, 각 에포크에 대한 PCS가 기술된다.
상기한 방법으로 PCS를 취득한 후, 서브타이틀을 위한 자료로 그래픽스가 ODS로 변화되며, 단계 S206에서 ODS와 PCS, WDS, 및 PDS와 조합하여 표시 설정을 취득한다. 이어, 단계 S207에서, 표시 설정의 각 기능 세그먼트는 PES 패킷으로 나누어지고, 타임 스탬프를 첨부함으로써 그래픽스 스트림을 취득한다.
마지막으로, 단계 S208에서, 별개로 생성된 그래픽스 스트림과 비디오 스트림과 오디오 스트림을 다중화함으로써 AV 클립이 생성된다.
AV 클립을 취득한 후, AV 클립을 BD-ROM 포맷으로 조정함으로써 어플리케이션 포맷이 완성된다.
[다른 사항들]
상기의 설명은 본 발명에 따른 모든 실시예를 설명하지는 않는다. 본 발명은 아래에 나타낸 변형예에 의해 구현될 수도 있다. 본 출원의 청구항에 기술된 발명은 상기한 실시예 뿐만 아니라 변형예의 확장이나 일반화를 포함한다. 이 확장과 변형의 정도가 출원시점의 해당 분야의 기술 수준의 특성에 기초하지만, 본 출원의 청구항에 따른 발명은 종래 기술의 기술적 문제를 해결하기 위한 수단을 반영하며, 따라서 발명의 범주는 종래 기술의 기술적 문제를 해결하는 수단으로 당업자가 인식하는 기술적 범주를 벗어나지 않는다. 따라서, 본 출원의 청구항에 따른 발명은 실질적으로 발명의 상세한 설명과 일치한다.
(1) BD-ROM은 상기한 모든 실시예를 설명하는데 사용된다. 그러나, 본 발명의 특징은 매체에 기록되는 그래픽스 스트림에 있으며, 이러한 특징은 BD-ROM의 물리적 속성에 좌우되지 않는다. 그래픽스 스트림을 저장할 수 있는 어떠한 기록매체라도 본 발명을 구현할 수 있다. 이러한 기록매체의 예로는 DVD-ROM, DVD-RAM, DVD-RW, DVD-R, DVD+RW, DVD+R, CD-R, 및 CD-RW 같은 광디스크, PD와 MO 같은 자기광 디스크, 콤팩트 플래시 카드, 스마트 매체, 메모리 스틱, 멀티-미디어 카드, 및 PCM-CIA 카드와 같은 반도체 메모리 카드, 및 플렉시블 카드, SuperDisk, Zip, 및 Clik!과 같은 자기 디스크, 그리고 내장형 하드디스크 이외에 ORB, Jaz, SparQ, SyJet, EZFley, 마이크로 드라이브와 같은 리무버블 하드디스크 드라이브를 포함한다.
(2) 상기의 모든 실시예에서 기술한 재생장치는 BD-ROM에 기록된 AV 클립을 디코드하고 디코드된 AV 클립을 TV에 출력한다. 그러나, BD-ROM만을 포함하는 재생장치와 다른 장치 요소를 구비한 TV에 의해서 본 발명을 구현할 수도 있다. 이 경우, 재생장치와 TV는 홈 네트워크를 생성하는 IEEE1394를 통하여 연결될 수 있다. 더욱이, 실시예의 재생장치는 TV에 연결함으로써 사용되지만, 재생장치는 일체형 TV와 재생장치일 수 있다. 또한, 각 실시예의 재생장치의 프로세싱의 필수 부분을 형성하는 LSI(집적회로)만이 실행될 수 있다. 이러한 재생장치와 LSI는 이 명세서에서 모두 설명되었으며, 따라서 제 1 실시예에 따른 재생장치의 내부 구조에 기초한 재생장치를 제조하는 것은 어떤 작업 예를 취하더라도 본 발명의 실시이다. 또한, 본 발명에 따른 재생장치의 무상이나 유상으로의 양도, 대여, 및 수입도 또한 본 발명의 실시로 간주된다. 이러한 일반 사용자에게 상점 정면 디스플레이와 브로슈어의 배포를 통하여 이러한 양도와 대여를 제공하는 것도 본 발명의 실시로 간주된다.
(3) 플로차트에 도시된 프로그램에 의해 실행되는 정보 처리는 하드웨어 자원을 이용하여 구현되며, 따라서 그 처리가 각 플로차트에 도시된 프로그램은 발명으로서만 성립된다. 상기 모든 실시예들이 본 발명에 따른 프로그램을 재생장치에 내장된 것으로 설명하였지만, 제 1 실시예에 따른 프로그램은 단독으로 실시될 수 있다. 프로그램 단독 실시의 예는 (i) 프로그램을 제작하는 것, (ii) 프로그램을 유상 또는 무상으로 대여하는 것, (iii) 프로그램을 양도하는 것, (iv) 프로그램을 수입하는 것, (v) 대화형 전자통신라인을 통하여 프로그램을 공중에 제공하는 것, 및 (vi) 상점 정면의 디스플레이와 브로슈어의 배포를 통하여 일반 사용자에게 양도 및 대여하는 것을 포함한다.
(4) 각 플로차트에서 순차적인 순서로 수행되는 단계들의 시간 요소는 본 발명의 필수적인 특징이고, 각 플로차트에 도시된 프로세스는 재생 방법을 개시한다. 본 발명의 목적을 취득하고 효과를 구현하기 위하여 각 단계의 동작을 순차적으로 실행함으로써 플로차트에 의해 설명된 프로세스를 수행하는 것은 본 발명에 따른 기록 방법의 실시이다.
(5) BD-ROM에 기록시 AV 클립을 구성하는 각 패킷에 확장자 헤더를 추가하는 것이 바람직하다. 확장자 헤더는 arrival_time_stamp와 copy_permission_indicator를 포함하는 TP_extra_header라 불리는 4 바이트 데이터이다. TP_extra_header를 구비하는 TS 패킷(이하, EX를 갖는 TS 패킷이라 함)은 32개 패킷마다 그룹화되고 3개 섹터에 기입된다. EX를 갖는 32개 패킷을 포함하는 하나의 그룹은 6144 byte(=32×192)이며, 이는 3 섹터 6144 byte(=2048×3)의 크기와 같은 크기이다. 3개의 섹터에 저장된 EX를 갖는 32개 TS 패킷 그룹은 정렬유닛(Aligned Unit)으로 불린다.
재생장치가 IEEE1394를 통하여 연결된 홈 네트워크에 사용될 때, 재생장치는 다음의 전송절차에 따라 정렬유닛을 전송한다. 송신자는 정렬유닛에 포함된 EX를 갖는 32개 TS 패킷 각각으로부터 TP_extra_header를 취득하고, DTCP 표준에 기초하여 디코딩한 후 TS 패킷의 몸체를 출력한다. TS 패킷을 출력할 때, 등시적 패킷이 임의의 연속하는 TS 패킷 사이에 삽입된다. 삽입점은 TP_extra_header의 arrival_time_stamp가 지시하는 시간에 기초한 위치이다. TS 패킷의 출력과 함께, 재생장치는 DTCP_descriptor를 출력한다. DTCP_descriptor는 복제 허용에 대한 설정을 나타낸다. 복제가 금지되도록 DTCP_descriptor를 설정함으로써, TS 패킷은 IEEE1394를 통하여 연결되는 홈 네트워크에서 사용될 때 다른 장치에 의해 기록되지 못한다.
(6) 상기한 실시예의 디지털 스트림은 AV 클립이다. 그러나, 디지털 스트림은 DVD-비디오 표준이나 DVD-비디오 레코딩 표준의 비디오 오브젝트(VOB)일 수 있다. VOB는 비디오 스트림과 오디오 스트림을 다중화함으로써 취득되는 ISO/IEC13818-1-표준을 기초로 한 프로그램 스트림이다. 또한, AV 클립의 비디오 스트림은 MPEG4나 WMV 표준에 기초할 수도 있다. 또한, 오디오 스트림은 선형-PCM, 돌비-AC3, MP3, MPEG-AAC 또는 DTS 표준에 기초할 수 있다.
(7) 상기한 실시예의 영화는 아날로그 방송을 통하여 전송되는 아날로그 화상신호를 인코딩하여 얻을 수 있거나, 또는 디지털 방송을 통하여 전송되는 트랜스포트 스트림에 의해 구성되는 스트림 데이터일 수 있다.
또한, 비디오 테이프에 기록된 아날로그 또는 디지털 화상 신호를 엔코딩하여 콘텐츠를 얻을 수 있다. 또한, 콘텐츠는 비디오 카메라로부터 직접 로드되는 아날로그 도는 이미지 화상 신호를 인코딩하여 얻을 수 있다. 또한, 콘텐츠는 분배서버에 의해 전달되는 디지털 작업물일 수 있다.
(8) 제 1 및 제 2 실시예의 그래픽스 오브젝트는 런-랭스 인코딩(run-length limited encoding)에 기초하여 인코딩된 라스터 데이터이다. 런-랭스 인코딩은 서브타이틀을 압축하고 인코딩하는데 가장 적절하기 때문에 그래픽스 오브젝트를 압축하고 인코딩하는데 런-랭스 인코딩이 적용된다. 서브타이틀은 수평방향 길이가 상대적으로 긴 특성을 가지며, 따라서 런-랭스 인코딩을 이용함으로써 높은 압축률을 얻는다. 또한, 런-랭스 인코딩은 압축해제시 로드가 낮기 때문에 디코딩을 위한 소프트웨어를 만드는데 바람직하다. 또한, 서브타이틀과 그래픽스 오브젝트 사이에 디코딩을 위한 장치 구조를 공유하기 위하여, 서브타이틀에 대해서와 같은 압축/해제 방법이 그래픽스 오브젝트에 대해서 적용된다. 그러나, 런-랭스 인코딩을 사용하는 것이 본 발명의 필수 부분은 아니며, 그래픽스 오브젝트는 PNG 데이터일 수 있다. 또한, 그래픽스 오브젝트가 라스터 데이터일 필요는 없고, 벡터 데이터일 수 있다. 더욱이, 그래픽스 데이터는 투과성 그래픽스일 수 있다.
(9) PCS에 의한 표시 효과를 위한 대상은 재생장치의 언어 설정에 기초하여 선택된 서브타이틀을 위한 그래픽스일 수 있다. 이러한 표시를 구현하는 것은 실용적인 가치를 갖는다. 이는 종래의 DVD에서 영화 자체에 의해 구현되는 효과를 재생장치의 언어 설정에 따라 표시되는 서브타이틀 그래픽스에 의해 구현할 수 있게 되기 때문이다.
(10) PCS에 의한 표시 효과를 위한 대상은 재생장치의 언어 설정에 기초하여 선택된 서브타이틀을 위한 그래픽스일 수 있다. 구체적으로, 와이드-비전, 팬-스캔, 및 레터박스와 같은 다양한 표시 모드를 위한 그래픽스가 BD-ROM에 기록되고, 재생장치는 이 재생장치가 연결된 TV를 위한 설정에 기초하여 기록된 설정 중 어느 것을 선택한다. 이 경우, PCS에 기초한 표시 효과는 표시 설정에 따라 표시되는 서브타이틀 그래픽스에 대해 수행되고, 서브타이틀은 더 강렬하고 전문적으로 보인다. 이러한 표시를 구현하는 것은 높은 실용적 가치를 갖는다. 이는 종래의 DVD에서 영화 자체에 의해 구현되는 효과와 유사한 효과를 재생장치의 언어 설정에 따라 표시되는 서브타이틀 그래픽스에 의해 구현할 수 있게 되기 때문이다.
(11) 제 1 실시예에서, 윈도우 크기는, 그래픽스 플레인에 대한 기입 속도 Rc를 그래픽스 플레인의 소거와 리드로우가 한 프레임에서 수행되는 속도로 설정하기 위하여 전체 그래픽스 플레인의 25%가 되도록 설정된다. 그러나, Rc는 소거와 리드로우가 수직 리트레이스(retrace) 기간 중에 완료되도록 설정될 수 있다. 수직 리트레이스 기간이 1/29.93초의 25%인 것으로 가정하면, Rc는 1 Gbps이다. 이러한 방법으로 Rc를 설정하는 것은 그래픽스를 더 부드럽게 표시할 수 있기 때문에 높은 실용적 가치를 갖는다.
또한, 수직 리트레이스 기간 중 기입하는 이외에 라인 스캐닝과 동기하여 기입을 수행할 수도 있다. 이것에 의해, 기입 속도 Rc가 256 Mbps인 경우에도 그래픽스를 부드럽게 표시할 수 있다.
(12) 상기한 실시예에서, 그래픽스 플레인이 재생장치에 설치된다. 그러나, 그래픽스 플레인 대신에 라인용 압축해제된 픽셀을 재생장치에 저장하기 위한 라인 버퍼를 설치할 수도 있다. 화상 신호로의 변환은 라인 단위로 수행되고, 따라서 화상 신호로의 변환은 라인 버퍼만으로 실행될 수 있다.
(13) 상기한 실시예에서, 영화용 텍스트 서브타이틀을 그래픽스의 예로 하여 설명하였다. 그러나, 그래픽스는 디바이스, 캐릭터, 및 상표, 국가 문장, 국기, 국가 엠블렘, 심볼 그리고 국가 정부가 이용하는 국새나 인증, 국제조직의 문장, 기 또는 엠블렘, 도는 특정 아이템의 기원 마크를 구성하는 컬러의 조합과 같은 것을 포함할 수 있다.
(14) 제 1 실시예에서, 서브타이틀을 렌더링하기 위한 윈도우는, 서브타이틀이 수평으로 기입되는 것을 가정하여 화면의 상측이나 화면의 하측 중 어느 하나에 정의된다. 그러나, 윈도우는 서브타이틀을 화면의 좌측이나 우측에 표시하도록 화면의 좌측이나 우측 중 어느 하나에 나타나도록 정의할 수 있다. 이러한 방법으로, 텍스트 방향을 변경하고 서브타이틀을 수직으로 표시할 수 있다.
(15) 상기의 실시예의 AV 클립은 영화를 구성한다. 그러나, AV 클립은 가라오케용으로 사용될 수도 있다. 이 경우, PCS는 서브타이틀의 색상이 노래에 따라 변화하도록 표시 효과를 수행할 수 있다.
본 발명에 따른 기록매체와 재생장치는 서브타이틀을 표시 효과와 함께 표시할 수 있다. 따라서, 시장에 공급되는 영화에 높은 가치를 더할 수 있고, 영화 시장과 소비자 제품을 활성화할 수 있다. 따라서, 본 발명에 따른 기록매체와 재생장치는 영화 산업과 소비자 제품 산업과 같은 산업에 높은 산업적 유용성을 갖는다.

Claims (16)

  1. 데이터를 저장하기 위한 기록매체로서,
    상기 기록매체는,
    비디오 스트림과 그래픽스 스트림을 다중화함으로써 구성되는 디지털 스트림을 포함하며,
    상기 비디오 스트림은 다수의 픽처(picture)로 이루어진 영화를 표시하며,
    상기 그래픽스 스트림은,
    상기 픽처와 조합되는 그래픽스(graphics)를 표시하는 그래픽스 데이터; 및
    그 안에 상기 그래픽스를 렌더링(rendering)하기 위한 윈도우를 지정하는 윈도우 정보를 포함하고,
    상기 윈도우 정보는, 상기 그래픽스를 상기 픽처와 조합하는 재생장치의 플레인 메모리(plane memory)인 플레인 상에 상기 윈도우의 폭, 높이 및 위치를 나타내는 것을 특징으로 하는 기록매체.
  2. 청구항 1에 있어서,
    상기 윈도우의 폭과 높이는 상기 윈도우의 크기가 상기 플레인의 1/x 이도록 설정되고, 상기 플레인은 각 픽처의 크기에 대응하고 x는 윈도우 갱신 속도와 픽처 표시 속도 사이의 비율에 기초한 실수(real number)인 것을 특징으로 하는 기록매체.
  3. 청구항 1에 있어서,
    상기 그래픽스 스트림은 상기 그래픽스 데이터를 디코딩함으로서 취득되는 그래픽스 오브젝트 내 크로핑 프레임(cropping frame)을 지정하는 크롭(crop) 정보를 포함하는 제어 정보를 포함하며,
    상기 윈도우에 렌더링되는 상기 그래픽스는 상기 크로핑 프레임 내 상기 그래픽스 오브젝트의 일부인 것을 특징으로 하는 기록매체.
  4. 청구항 3에 있어서,
    상기 제어 정보는 상기 크로핑 프레임 내 상기 그래픽스 오브젝트의 일부를 렌더링하기 위한 상기 윈도우의 위치를 지정하는 위치 정보를 포함하는 것을 특징으로 하는 기록매체.
  5. 청구항 4에 있어서,
    상기 그래픽스 스트림은 스크롤(scroll), 와이프-인(wipe-in), 와이프-아웃(wipe-out), 컷-인(cut-in), 및 컷-아웃(cut-out) 표시 효과 중의 하나를 구현하기 위한 다수의 제어 정보 부분을 포함하며,
    상기 제어 정보 부분 각각은 서로 다른 크로핑 프레임과 위치를 각각 지정하는 상기 크롭 정보와 상기 위치 정보를 포함하는 것을 특징으로 하는 기록매체.
  6. 비디오 스트림과 그래픽스 스트림을 다중화함으로써 구성되는 디지털 스트림을 재생하는데 사용되는 재생장치로서,
    상기 재생장치는,
    다수의 픽처로 이루어진 영화를 취득하도록 상기 비디오 스트림을 디코드하는 비디오 디코더;
    상기 픽처와 동기하여 표시되도록 그래픽스를 렌더링하는 그래픽스 디코더; 및
    플레인에 대응하고, 상기 그래픽스를 상기 픽처와 조합하는데 사용되는 플레인 메모리를 포함하며,
    상기 그래픽스 스트림은 상기 플레인의 일부를 그 안에 상기 그래픽스를 렌더링하기 위한 윈도우로 지정하는 윈도우 정보를 포함하고,
    상기 그래픽스 디코더에 의한 상기 그래픽스의 렌더링은 상기 플레인 메모리 내 상기 윈도우의 그래픽스의 소거와, 상기 플레인 메모리 내 상기 윈도우에 상기 그래픽스의 기입을 포함하는 것을 특징으로 하는 재생장치.
  7. 청구항 6에 있어서,
    상기 그래픽스 스트림은 압축된 그래픽스 데이터를 포함하며,
    상기 그래픽스 디코더는 상기 압축된 그래픽스 데이터를 디코드하는 프로세서와, 상기 소거 동작과 상기 기입 동작을 수행하는 제어부를 포함하는 것을 특징으로 하는 재생장치.
  8. 청구항 7에 있어서,
    상기 윈도우의 크기는 상기 플레인의 1/x 이도록 설정되고, x는 윈도우 갱신 속도와 픽처 표시 속도 사이의 비율에 기초한 실수이며,
    상기 제어부에 의해 수행되는 상기 기록 동작은 상기 윈도우의 갱신 속도와 상기 윈도우의 크기에 기초한 전송 속도로 수행되는 것을 특징으로 하는 재생장치.
  9. 청구항 7에 있어서,
    상기 그래픽스 디코더는 상기 프로세서에 의해 디코드되는 압축해제된 그래픽스 데이터를 저장하는 오브젝트 버퍼를 포함하고,
    상기 그래픽스 스트림은 상기 그래픽스 데이터를 디코딩함으로서 취득되는 그래픽스 오브젝트 내 크로핑 프레임을 지정하는 크롭 정보를 포함하는 제어 정보를 포함하고,
    상기 제어부는 상기 크로핑 프레임 내 상기 그래픽스 오브젝트의 일부를 크롭하며,
    상기 픽처와 동기하여 표시되는 상기 그래픽스는 상기 크로핑 프레임 내 상기 그래픽스 오브젝트의 부분인 것을 특징으로 하는 재생장치.
  10. 청구항 9에 있어서,
    상기 제어 정보는 상기 크로핑 프레임 내 상기 부분을 렌더링하기 위한 상기 윈도우의 위치를 지정하는 위치 정보를 포함하며,
    상기 크로핑 프레임 내 상기 부분은 상기 위치 정보가 지정한 상기 위치에서 상기 윈도우에 기입되는 것을 특징으로 하는 재생장치.
  11. 청구항 10에 있어서,
    상기 그래픽스 스트림은 다수의 제어 정보 부분을 포함하고,
    상기 제어 정보의 각 부분에서 상기 크롭 정보와 상기 위치 정보가 지시하는 상기 크롭 부분과 상기 위치는 각각 다르며,
    상기 제어부는, 상기 제어 정보의 각 부분의 상기 크롭 정보와 상기 위치 정보에 기초하여 상기 소거와 상기 그래픽스의 기입을 수행함으로써 스크롤, 와이프-인, 와이프-아웃, 컷-인, 및 컷-아웃 표시 효과 중의 하나를 구현하는 것을 특징으로 하는 재생장치.
  12. 청구항 6에 있어서,
    이중 버퍼를 구성하는 2개의 플레인 메모리를 더 포함하며, 상기 그래픽스는, 상기 표시된 그래픽스를 상기 이중 버퍼내 상기 플레인 메모리의 하나에 저장된 내용으로부터 상기 플레인 메모리의 다른 하나에 저장된 내용으로 스위칭함으로써 표시되는 것을 특징으로 하는 재생장치.
  13. 기록매체에 저장하는 방법으로서,
    상기 저장방법은,
    어플리케이션 데이터를 제작하는 단계; 및
    상기 제작된 어플리케이션 데이터를 상기 기록매체에 저장하는 단계를 포함하며,
    상기 어플리케이션 데이터는 비디오 스트림과 그래픽스 스트림을 다중화함으로써 구성되는 디지털 스트림을 포함하고,
    상기 비디오 스트림은 다수의 픽처로 이루어진 영화를 표시하고,
    상기 그래픽스 스트림은,
    상기 픽처와 조합되는 그래픽스를 표시하는 그래픽스 데이터; 및
    그 안에 상기 그래픽스를 렌더링하기 위한 윈도우를 지정하는 윈도우 정보를 포함하고,
    상기 윈도우 정보는, 상기 그래픽스를 상기 픽처와 조합하는 재생장치의 플레인 메모리(plane memory)인 플레인 상에 상기 윈도우의 폭, 높이 및 위치를 나타내는 것을 특징으로 하는 기록방법.
  14. 비디오 스트림과 그래픽스 스트림을 다중화함으로써 구성되는 디지털 스트림을 컴퓨터로 하여금 재생하도록 하는데 사용되는 프로그램으로서,
    상기 프로그램은,
    다수의 픽처로 이루어진 영화를 취득하도록 상기 비디오 스트림을 상기 컴퓨터로 하여금 디코드하도록 하는 코드; 및
    상기 픽처와 동기하여 표시되도록 상기 컴퓨터로 하여금 그래픽스를 렌더링하도록 하는 코드를 포함하며,
    상기 컴퓨터가 상기 그래픽스를 렌더링하도록 하는 상기 코드는, 상기 그래픽스와 픽처를 조합하는데 사용되는 플레인 메모리 내 상기 윈도우의 그래픽스의 소거와 상기 플레인 메모리 내 상기 윈도우에 상기 그래픽스의 기입을 상기 컴퓨터가 수행하도록 하는 코드를 포함하는 것을 특징으로 하는 프로그램.
  15. 비디오 스트림과 그래픽스 스트림을 다중화함으로써 구성되는 디지털 스트림을 재생하는 방법으로서,
    상기 방법은,
    다수의 픽처로 이루어진 영화를 취득하도록 상기 비디오 스트림을 디코딩하는 단계; 및
    상기 픽처와 동기하여 표시되도록 그래픽스를 렌더링하는 단계를 포함하며,
    상기 그래픽스 스트림은 상기 플레인의 일부를 그 안에 상기 그래픽스를 렌더링하기 위한 윈도우로 지정하는 윈도우 정보를 포함하고,
    상기 그래픽스의 렌더링은 상기 그래픽스를 상기 픽처와 조합하는데 사용되는 플레인 메모리 내 상기 윈도우의 그래픽스의 소거와, 상기 플레인 메모리 내 상기 윈도우에 상기 그래픽스의 기입을 포함하는 것을 특징으로 하는 재생방법.
  16. 비디오 스트림과 그래픽스 스트림을 다중화함으로써 구성되는 디지털 스트림을 재생하는데 사용되는 집적회로로서,
    상기 집적회로는,
    다수의 픽처로 이루어진 영화를 취득하도록 상기 비디오 스트림을 디코드하는 비디오 디코더;
    상기 픽처와 동기하여 표시되도록 그래픽스를 렌더링하는 그래픽스 디코더; 및
    플레인에 대응하고, 상기 그래픽스를 상기 픽처와 조합하는데 사용되는 플레인 메모리를 포함하며,
    상기 그래픽스 스트림은 상기 플레인의 일부를 그 안에 상기 그래픽스를 렌더링하기 위한 윈도우로 지정하는 윈도우 정보를 포함하고,
    상기 그래픽스 디코더에 의한 상기 그래픽스의 렌더링은 상기 플레인 메모리 내 상기 윈도우의 그래픽스의 소거와, 상기 플레인 메모리 내 상기 윈도우에 상기 그래픽스의 기입을 포함하는 것을 특징으로 하는 집적회로.
KR1020057020409A 2003-04-28 2004-04-27 기록매체, 재생장치, 기록방법, 재생방법 및 집적회로 KR100760118B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US46597203P 2003-04-28 2003-04-28
US60/465,972 2003-04-28
PCT/JP2004/006074 WO2004098193A2 (en) 2003-04-28 2004-04-27 Recording medium, reproduction apparatus, recording method, reproducing method, program, and integrated circuit for recording a video stream and graphics with window information over graphics display

Publications (2)

Publication Number Publication Date
KR20050121271A true KR20050121271A (ko) 2005-12-26
KR100760118B1 KR100760118B1 (ko) 2007-09-18

Family

ID=33418317

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057020409A KR100760118B1 (ko) 2003-04-28 2004-04-27 기록매체, 재생장치, 기록방법, 재생방법 및 집적회로

Country Status (14)

Country Link
US (3) US7505050B2 (ko)
EP (5) EP2367174B1 (ko)
JP (7) JP3803366B1 (ko)
KR (1) KR100760118B1 (ko)
CN (6) CN101582982B (ko)
AT (1) ATE557392T1 (ko)
AU (1) AU2004234798B2 (ko)
CA (1) CA2523597C (ko)
DK (4) DK2369590T3 (ko)
ES (5) ES2536680T3 (ko)
RU (2) RU2323489C2 (ko)
TW (1) TWI302697B (ko)
WO (1) WO2004098193A2 (ko)
ZA (1) ZA200508211B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101433950B1 (ko) * 2008-04-02 2014-09-23 엘지전자 주식회사 동기 호출방법

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100448452B1 (ko) * 2000-06-09 2004-09-13 엘지전자 주식회사 고밀도 광 기록매체의 메뉴 지원방법
CN100342432C (zh) * 2002-10-02 2007-10-10 Lg电子有限公司 用于控制图形数据再现的数据结构的记录和再现方法
EP1547080B1 (en) 2002-10-04 2012-01-25 LG Electronics, Inc. Recording medium having a data structure for managing reproduction of graphic data and recording and reproducing methods and apparatuses
DK2369590T3 (en) * 2003-04-28 2015-05-04 Panasonic Corp Playback devices, playback method, recording medium, recording devices, recording method for recording a video stream and graphics with window information via graphic display
WO2004097824A1 (en) * 2003-04-29 2004-11-11 Lg Electronics Inc. Recording medium having a data structure for managing reproduction of graphic data and methods and apparatuses of recording and reproducing
US7616865B2 (en) * 2003-04-30 2009-11-10 Lg Electronics Inc. Recording medium having a data structure for managing reproduction of subtitle data and methods and apparatuses of recording and reproducing
DE602004030059D1 (de) 2003-06-30 2010-12-23 Panasonic Corp Aufzeichnungsmedium, Wiedergabegerät, Programm und Wiedergabeverfahren
KR20050005074A (ko) * 2003-07-01 2005-01-13 엘지전자 주식회사 고밀도 광디스크의 그래픽 데이터 관리방법 및 그에 따른고밀도 광디스크
KR20050004339A (ko) * 2003-07-02 2005-01-12 엘지전자 주식회사 고밀도 광디스크의 그래픽 데이터 관리방법 및 그에 따른고밀도 광디스크
KR100882076B1 (ko) 2003-07-11 2009-02-10 파나소닉 주식회사 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체
US7366405B2 (en) 2003-07-11 2008-04-29 Matsushita Electric Industrial Co., Ltd. Recording medium, recording method, reproduction apparatus and method, and computer-readable program
KR20050064150A (ko) * 2003-12-23 2005-06-29 엘지전자 주식회사 고밀도 광디스크의 메뉴 구성방법 및 실행방법과기록재생장치
KR100782808B1 (ko) * 2004-01-13 2007-12-06 삼성전자주식회사 인터렉티브 그래픽 스트림을 기록한 저장 매체 및 그 재생장치
JP4692950B2 (ja) * 2004-06-11 2011-06-01 ソニー株式会社 データ処理装置およびデータ処理方法、プログラムおよびプログラム記録媒体、並びにデータ記録媒体
US8233779B2 (en) 2004-07-09 2012-07-31 Panasonic Corporation Recording medium, recording method, reproduction apparatus and method, and computer-readable program
EP1843351B1 (en) 2005-01-28 2012-08-22 Panasonic Corporation Recording medium, program, and reproduction method
JP2006238147A (ja) * 2005-02-25 2006-09-07 Toshiba Corp コンテンツ再生装置、字幕再生方法及びプログラム
US20080238938A1 (en) * 2005-08-29 2008-10-02 Eklund Don Effects for interactive graphic data in disc authoring
JP4993334B2 (ja) * 2005-09-21 2012-08-08 サミー株式会社 動画像表示装置
JP4830535B2 (ja) 2006-02-22 2011-12-07 ソニー株式会社 再生装置、再生方法および再生プログラム
US20080036758A1 (en) * 2006-03-31 2008-02-14 Intelisum Inc. Systems and methods for determining a global or local position of a point of interest within a scene using a three-dimensional model of the scene
EP2105032A2 (en) * 2006-10-11 2009-09-30 Koninklijke Philips Electronics N.V. Creating three dimensional graphics data
JP5010233B2 (ja) 2006-10-20 2012-08-29 株式会社東芝 映像再生装置及び映像再生方法
US8878870B1 (en) * 2008-08-01 2014-11-04 Marvell International Ltd. Graphic processing techniques and configurations
US9275684B2 (en) * 2008-09-12 2016-03-01 At&T Intellectual Property I, L.P. Providing sketch annotations with multimedia programs
MY158823A (en) * 2008-12-19 2016-11-15 Koninl Philips Electronics Nv Method and device for overlaying 3d graphics over 3d video
CN101778238A (zh) 2009-01-12 2010-07-14 晨星软件研发(深圳)有限公司 字幕窗口显示装置与显示方法
US20110285726A1 (en) * 2009-02-18 2011-11-24 William Gibbens Redmann Method and apparatus for preparing subtitles for display
JP5158225B2 (ja) * 2011-04-18 2013-03-06 ソニー株式会社 再生装置、再生方法および再生プログラム
EP2901689A1 (en) * 2012-09-27 2015-08-05 Dolby Laboratories Licensing Corporation Inter-layer reference picture processing for coding standard scalability
EP2728886A1 (en) * 2012-10-31 2014-05-07 EyeTrackShop AB Registering of timing data in video sequences
CN105025316A (zh) * 2015-07-28 2015-11-04 Tcl集团股份有限公司 一种获取视频是否为全屏播放的方法及系统
CN105530532B (zh) * 2016-03-02 2018-09-07 深圳市茁壮网络股份有限公司 一种滚动字幕显示方法、装置和机顶盒
JP6623876B2 (ja) 2016-03-24 2019-12-25 富士通株式会社 描画処理装置、方法、及びプログラム
JP2018072414A (ja) * 2016-10-25 2018-05-10 ソニーセミコンダクタソリューションズ株式会社 表示制御装置、表示システム、表示制御装置の制御方法、および、プログラム
CN111836093B (zh) * 2019-04-16 2022-05-31 百度在线网络技术(北京)有限公司 视频播放方法、装置、设备和介质

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1337132C (en) * 1988-07-15 1995-09-26 Robert Filepp Reception system for an interactive computer network and method of operation
GB9012326D0 (en) 1990-06-01 1990-07-18 Thomson Consumer Electronics Wide screen television
US5938447A (en) 1993-09-24 1999-08-17 Readspeak, Inc. Method and system for making an audio-visual work with a series of visual word symbols coordinated with oral word utterances and such audio-visual work
US6062863A (en) 1994-09-22 2000-05-16 Kirksey; William E. Method of associating oral utterances meaningfully with word symbols seriatim in an audio-visual work and apparatus for linear and interactive application
US5741136A (en) 1993-09-24 1998-04-21 Readspeak, Inc. Audio-visual work with a series of visual word symbols coordinated with oral word utterances
RU2195708C2 (ru) 1993-09-24 2002-12-27 Ридспик, Инк. Звуковизуальное представление с надписями на нем, способ связывания выразительных устных произнесений с записями по порядку на звуковизуальном представлении и устройство, предназначенное для линейного и интерактивного представления
WO1996019077A1 (en) 1994-12-14 1996-06-20 Philips Electronics N.V. Subtitling transmission system
JPH0981118A (ja) * 1995-09-11 1997-03-28 Casio Comput Co Ltd 画像制御装置
DE69701436T2 (de) * 1996-05-09 2000-07-06 Matsushita Electric Ind Co Ltd Optische multimedia-scheibe, wiedergabevorrichtung und -verfahren zur überlagerung eines untergeordneten bildes auf ein hauptbild in einer ausgeglichenen weise, unabhängig von der schirmposition des hauptbildes
JP3345414B2 (ja) 1996-05-09 2002-11-18 松下電器産業株式会社 主映像が画面上にどのように配置されようとも、副映像をバランス良く主映像上に重ね合わせることができる記録媒体、再生装置、及び再生方法。
EP0920014A4 (en) * 1997-04-12 2002-12-04 Sony Corp EDITING DEVICE AND EDITING METHOD
ID29305A (id) * 1997-12-15 2001-08-16 Matsushita Electric Ind Co Ltd Piringan optik, aparatus perekaman, media penyimpanan komputer-yang-dapat-membaca yang menyimpan program perekaman, dan metoda perekaman
US6473102B1 (en) * 1998-05-11 2002-10-29 Apple Computer, Inc. Method and system for automatically resizing and repositioning windows in response to changes in display
EP1365385B1 (en) 1998-11-09 2012-06-13 Broadcom Corporation Graphics display system with processing of graphics layers, alpha blending and composition with video data
EP1153508B1 (en) * 1999-02-08 2004-05-19 United Video Properties, Inc. Electronic program guide with support for rich program content
JP2001069458A (ja) * 1999-08-27 2001-03-16 Toshiba Corp 静止画のグループ化処理機能付き記録再生装置
GB0007870D0 (en) * 2000-03-31 2000-05-17 Koninkl Philips Electronics Nv Methods and apparatus for making and replauing digital video recordings, and recordings made by such methods
JP2001332006A (ja) * 2000-05-17 2001-11-30 Toshiba Corp 背景画像取り込みシステム
US7133449B2 (en) * 2000-09-18 2006-11-07 Broadcom Corporation Apparatus and method for conserving memory in a fine granularity scalability coding system
CN1316491C (zh) 2000-10-02 2007-05-16 松下电器产业株式会社 记录装置、其记录方法、其重放装置及其重放方法
US7019864B2 (en) 2001-06-22 2006-03-28 Xeikon International N.V. Page composition in an image reproduction system using segmented page elements
US6952236B2 (en) * 2001-08-20 2005-10-04 Ati Technologies, Inc. System and method for conversion of text embedded in a video stream
JP4136383B2 (ja) 2002-01-28 2008-08-20 キヤノン株式会社 テレビ受信装置及びその制御方法
US7196733B2 (en) * 2002-01-28 2007-03-27 Canon Kabushiki Kaisha Apparatus for receiving broadcast data, method for displaying broadcast program, and computer program
US7142225B1 (en) 2002-01-31 2006-11-28 Microsoft Corporation Lossless manipulation of media objects
US20040081434A1 (en) * 2002-10-15 2004-04-29 Samsung Electronics Co., Ltd. Information storage medium containing subtitle data for multiple languages using text data and downloadable fonts and apparatus therefor
US20040213542A1 (en) * 2003-04-22 2004-10-28 Hiroshi Hamasaka Apparatus and method to reproduce multimedia content for a multitude of resolution displays
DK2369590T3 (en) * 2003-04-28 2015-05-04 Panasonic Corp Playback devices, playback method, recording medium, recording devices, recording method for recording a video stream and graphics with window information via graphic display
WO2004097824A1 (en) * 2003-04-29 2004-11-11 Lg Electronics Inc. Recording medium having a data structure for managing reproduction of graphic data and methods and apparatuses of recording and reproducing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101433950B1 (ko) * 2008-04-02 2014-09-23 엘지전자 주식회사 동기 호출방법

Also Published As

Publication number Publication date
AU2004234798A1 (en) 2004-11-11
US20090185789A1 (en) 2009-07-23
EP2369590B1 (en) 2015-02-25
ES2536684T3 (es) 2015-05-27
CN101582983A (zh) 2009-11-18
JP4173512B2 (ja) 2008-10-29
JP4880645B2 (ja) 2012-02-22
JP5094986B2 (ja) 2012-12-12
DK2367174T3 (en) 2015-06-08
RU2007140686A (ru) 2009-05-10
RU2323489C2 (ru) 2008-04-27
ES2383893T3 (es) 2012-06-27
CA2523597A1 (en) 2004-11-11
CN101582982A (zh) 2009-11-18
US8350870B2 (en) 2013-01-08
EP2367174A1 (en) 2011-09-21
RU2442290C2 (ru) 2012-02-10
CN101702756B (zh) 2013-04-17
ES2536681T3 (es) 2015-05-27
EP2369590A1 (en) 2011-09-28
EP1620855B1 (en) 2012-05-09
EP2369588A1 (en) 2011-09-28
US20070057969A1 (en) 2007-03-15
CN101582982B (zh) 2011-11-09
JP2009268113A (ja) 2009-11-12
TW200501108A (en) 2005-01-01
AU2004234798B2 (en) 2007-10-18
KR100760118B1 (ko) 2007-09-18
JP4245651B2 (ja) 2009-03-25
CN100521752C (zh) 2009-07-29
US20100067876A1 (en) 2010-03-18
DK2369589T3 (en) 2015-05-04
JP4245652B2 (ja) 2009-03-25
CN101582983B (zh) 2014-01-22
ES2536683T3 (es) 2015-05-27
ES2536680T3 (es) 2015-05-27
TWI302697B (en) 2008-11-01
ZA200508211B (en) 2007-03-28
CA2523597C (en) 2011-09-27
CN101702750A (zh) 2010-05-05
JP2008278533A (ja) 2008-11-13
CN1781153A (zh) 2006-05-31
ATE557392T1 (de) 2012-05-15
CN101702757A (zh) 2010-05-05
DK2369588T3 (en) 2015-06-08
WO2004098193A2 (en) 2004-11-11
JP2006246496A (ja) 2006-09-14
JP4828618B2 (ja) 2011-11-30
EP2369588B1 (en) 2015-03-04
EP2369589A1 (en) 2011-09-28
JP3803366B1 (ja) 2006-08-02
CN101702756A (zh) 2010-05-05
JP2011176855A (ja) 2011-09-08
DK2369590T3 (en) 2015-05-04
JP2006518946A (ja) 2006-08-17
CN101702757B (zh) 2013-07-31
JP2009021997A (ja) 2009-01-29
CN101702750B (zh) 2013-03-06
RU2005136872A (ru) 2006-06-10
EP2369589B1 (en) 2015-02-25
EP1620855A2 (en) 2006-02-01
WO2004098193A3 (en) 2005-02-24
JP2008295065A (ja) 2008-12-04
EP2367174B1 (en) 2015-03-04
US7505050B2 (en) 2009-03-17

Similar Documents

Publication Publication Date Title
KR100760118B1 (ko) 기록매체, 재생장치, 기록방법, 재생방법 및 집적회로
KR101051821B1 (ko) 기록매체, 기록장치, 기록방법, 재생장치 및 재생방법
KR100984412B1 (ko) 기록매체, 재생장치, 기록방법, 재생방법
JP2007528567A (ja) 記録媒体、再生装置、記録方法、再生方法、プログラム

Legal Events

Date Code Title Description
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: 20120821

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130819

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140826

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150730

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160818

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170823

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190820

Year of fee payment: 13