KR100882078B1 - 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체 - Google Patents

디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체 Download PDF

Info

Publication number
KR100882078B1
KR100882078B1 KR1020077020958A KR20077020958A KR100882078B1 KR 100882078 B1 KR100882078 B1 KR 100882078B1 KR 1020077020958 A KR1020077020958 A KR 1020077020958A KR 20077020958 A KR20077020958 A KR 20077020958A KR 100882078 B1 KR100882078 B1 KR 100882078B1
Authority
KR
South Korea
Prior art keywords
pcs
graphics
epochm
display set
dsn
Prior art date
Application number
KR1020077020958A
Other languages
English (en)
Other versions
KR20070107764A (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 KR20070107764A publication Critical patent/KR20070107764A/ko
Application granted granted Critical
Publication of KR100882078B1 publication Critical patent/KR100882078B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • 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
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising
    • 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
    • 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/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
    • 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
    • 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
    • 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
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/641Multi-purpose receivers, e.g. for auxiliary information
    • 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

BD-ROM에는 비디오 스트림과 그래픽스 스트림을 다중화함으로써 얻어진 AV 클립이 기록되어 있다. PTS(EPOCHm DSlast[PCS])과 DTS(EPOCHm+1 DSfirst[PCS])는 PTS(EPOCHm DSlast[PCS]) ≤ DTS(EPOCHm+1 DSfirst[PCS])를 만족한다. 여기서, PTS(EPOCHm DSlast[PCS])는 상기 최종 디스플레이 세트 EPOCHm.DSlast의 PCS를 포함하는 패킷의 프리젠테이션 타임 스탬프이고, DTS(EPOCHm+1 DSfirst[PCS])는 상기 최상 디스플레이 세트 EPOCHm+1.DSfirst의 PCS를 포함하는 패킷의 디코딩 타임 스탬프이다.
Figure R1020077020958
오버랩, 오버라이팅, 중복, 중복, 제어 세그먼트, ODS, 합성, 표시

Description

디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체{REPRODUCTION APPARATUS FOR PARALLEL PROCESSING OF DISPLAY SET, RECORDING MEDIUM, RECORDING METHOD, REPRODUCTION METHOD, AND COMPUTER-READABLE RECORDING MEDIUM}
본 발명은 BD-ROM과 같은 기록매체 및 재생장치에 관한 것으로, 특히 비디오 스트림 및 그래픽스 스트림을 다중화하여 생성되는 디지털 스트림을 재생함으로써 자막을 다는 기술에 관한 것이다.
그래픽스 스트림을 생성함으로써 표시되는 자막은 서로 다른 지역의 사람이 외국어 영화를 즐기기 위한 중요한 수단이다. 이러한 그래픽스 스트림은 동영상을 대표하는 비디오 스트림과 함께 다중화되고 기록매체에 기록된다. 그래픽스 스트림은 각각 디스플레이 제어정보와 그래픽스 데이터로 이루어진 다수의 디스플레이 세트를 포함한다. 디스플레이 세트의 각각은 동영상 재생시 각 자막을 표시하는데 이용된다. 디스플레이 세트는 기록매체로부터 판독되어 동영상의 재생이 진행됨에 따라 하나씩 처리되어 동영상과 함께 자막을 표시한다.
여기서, 바로 앞선 디스플레이 세트의 처리가 완료된 후에만 각 디스플레이 세트가 처리된다면, 처리 지연이 전개된다. 따라서, 그래픽스 데이터가 다수의 디 스플레이 세트를 포함하는 경우, 디스플레이 세트의 병렬 처리의 필요성이 생긴다.
그래픽스 스트림에 속하는 두 개의 디스플레이 세트의 프리제테이션 컴포지션 세그먼트의 액티브 기간이 중첩되면, 디스플레이 세트 DSn+1의 프리젠테이션 컴포지션 세그먼트나 오브젝트 정의 세그먼트가 상기 디스플레이 세트 DSn의 프리젠테이션 컴포지션 세그먼트의 액티브 기간이 종료되기 전에 판독되는 경우가 있을 수 있다. 디스플레이 세트 DSn+1의 프리젠테이션 컴포지션 세그먼트나 오브젝트 정의 세그먼트가 이와 같이 판독되면, DSn의 끝에서 오브젝트 버퍼와 그래픽스 플레인을 비울 수 없게 된다.
본 발명은 DSn의 끝에서 오브젝트 버퍼와 그래픽스 플레인이 비워지도록 하는 기록매체를 제공하는 것을 목적으로 한다.
상기 목적은, 비디오 스트림(Video Stream)과 그래픽스 스트림(Graphics Stream)을 다중화함으로써 생성된 디지털 스트림이 기록된 기록매체로, 상기 그래픽스 스트림은 각각 그래픽스 표시를 위해 사용되는 복수의 디스플레이 세트를 포함하고, 그래픽스 스트림 내의 디스플레이 세트는 PCS(Presentation Composition Segment)를 포함함으로써, PCS에 의거하여 그래픽스 화면을 구성하는 기능을 기기가 발휘하도록 하는 것이며, 상기 디스플레이 세트는, PCS와, 그래픽스 오브젝트를 정의하기 위한 ODS(Object Definition Segment)와, WDS(Window Definition Segment), 및 END 세그먼트를 포함하고, 상기 PCS는, 상기 비디오 스트림의 재생시간 축 상에서 상기 디스플레이 세트의 상기 PCS의 액티브 기간을 지정하는 시간정보를 구비하며, 각 세그먼트는 패킷에 포함되고, 상기 시간정보는 PCS를 저장한 패킷에 부가된 디코딩 타임 스탬프(time stamp)와 프리젠테이션 타임 스탬프이며, 디코딩 타임스탬프는 PCS의 디코드를 언제 개시하는가를 기기에 지시하고, 프리젠테이션 타임스탬프는 PCS에 의거하여 구성된 그래픽스 화면의 표시를 언제 개시하는가를 기기에 지시하며, 상기 그래픽스 스트림의 n번째 디스플레이 세트 DSn이 메모리 관리유닛 EPOCHm의 최종 디스플레이 세트 DSlast이고, 바로 이어지는 디스플레이 세트 DSn+1이 메모리 관리유닛 EPOCHm+1의 최상 디스플레이 세트 DSfirst이면, PTS(EPOCHm DSlast[PCS])과 DTS(EPOCHm+1 DSfirst[PCS])는 다음 관계식을 만족하며, 그래픽스 스트림은 드라이브에 의해서 액세스 됨으로써 재생장치의 그래픽스 디코더 내의 버퍼에 판독되고, PCS는 그래픽스 디코더 내의 컨트롤러에 의한 참조에 제공되며, ODS는 그래픽스 디코더 내의 프로세서에 의해 디코더에 제공됨으로써 당해 컨트롤러가 그래픽스 표시기능을 발휘하도록 하는 것인 것을 특징으로 하는 기록매체에 의해 달성될 수 있다.
PTS(EPOCHm DSlast[PCS]) ≤ DTS(EPOCHm+1 DSfirst[PCS])
여기서, PTS(EPOCHm DSlast[PCS])는 상기 최종 디스플레이 세트 EPOCHm.DSlast의 PCS를 포함하는 패킷의 프리젠테이션 타임 스탬프이고, DTS(EPOCHm+1 DSfirst[PCS])는 상기 최상 디스플레이 세트 EPOCHm+1.DSfirst의 PCS를 포함하는 패킷의 디코딩 타임 스탬프이다.
이러한 구성에 의하면, 두 개의 디스플레이 세트가 서로 다른 Epoch에 속하는 경우, 이들 두 디스플레이 세트의 프리젠테이션 컴포지션 세그먼트의 액티브 기간이 중첩되지 않는다. 따라서, DSn+1의 프리젠테이션 컴포지션 세그먼트나 오브젝트 정의 세그먼트가 DSn의 프리젠테이션 컴포지션 세그먼트의 액티브 기간이 종료되기 전에 판독될 수 있다면, DSn의 끝에서 오브젝트 버퍼와 그래픽스 플레인을 비울 수 있다.
(제 1 실시 예)
이하, 본 발명에 관한 기록매체의 실시 예에 대하여 설명한다. 먼저, 본 발명에 관한 기록매체의 실시행위 중 사용행위에 대한 예를 설명한다. 도 1은 본 발명에 관한 기록매체의 사용행위에 대한 예를 나타내는 도면이다. 도 1에서 본 발명에 관한 기록매체는 BD-ROM(100)이다. 이 BD-ROM(100)은 재생장치(200), 텔레비전300), 리모컨(400)에 의해 형성되는 홈시어터시스템에 영화작품을 공급하는 용도로 제공된다.
이상이 본 발명에 관한 기록매체의 사용형태에 대한 설명이다.
이어 본 발명에 관한 기록매체의 실시행위 중 생산행위에 관한 형태에 대하여 설명한다. 본 발명에 관한 기록매체는 BD-ROM의 응용 층에 대한 개량에 의해 실시할 수 있다. 도 2는 BD-ROM의 구성을 나타내는 도면이다.
본 도면의 제 4 단째에 BD-ROM을 나타내고, 제 3 단째에 BD-ROM 상의 트랙을 나타낸다. 본 도면의 트랙은 BD-ROM의 내주에서 외주에 걸쳐서 나선형상으로 형성되어 있는 트랙을 가로 방향으로 확대하여 묘사(Rendering)하고 있다. 이 트랙은 리드인 영역(Read-in Area)과, 볼륨 영역(Volume Area)과, 리드 아웃 영역(Read-out Area)으로 이루어진다. 본 도면의 볼륨 영역은, 물리 층, 파일시스템 층, 응용 층이라는 레이어 모델(layer model)을 갖는다. 디렉터리 구조를 사용하여 BD-ROM의 응용 층 포맷(애플리케이션 포맷)을 표현하면 도면 중 제 1 단째와 같이 된다. 본 도면에 도시한 바와 같이, BD-ROM에는 ROOT 디렉터리 아래에 BDMV 디렉터리가 있으며, BDMV 디렉터리의 하부에는 AVClip을 저장한 파일(XXX.M2TS), AVClip의 관리정보를 저장한 파일(XXX.CLPI), AVClip에서의 논리적인 재생경로(PL)를 정의한 파 일(YYY.MPLS)이 존재한다. 본 도면에 도시한 바와 같은 애플리케이션 포맷을 작성함으로써 본 발명에 관한 기록매체는 생산된다. 또한, XXX.M2TS, XXX.CLPI, YYY.MPLS라는 파일이 각각 복수 존재하는 경우에는, BDMV디렉터리의 하부에 STREAM 디렉터리, CLIPINF 디렉터리, PLAYLIST 디렉터리라는 3개의 디렉터리를 설치하고, STREAM 디렉터리에 XXX.M2TS와 동일한 종별의 파일을, CLIPINF 디렉터리에 XXX.CLPI와 동일한 종별의 파일을, PLAYLIST 디렉터리에 YYY.MPLS와 동일한 종별의 파일을 저장하는 것이 바람직하다.
이 애플리케이션 포맷에서의 AVClip(XXX.M2TS)에 대하여 설명한다.
AVClip(XXX.M2TS)는 MPEG-TS(Transport Stream)형식의 디지털 스트림으로, 비디오 스트림, 하나 이상의 오디오 스트림, 프레젠테이션 그래픽스 스트림(Presentation Graphics Stream)을 다중화함으로써 얻을 수 있다. 비디오 스트림은 영화의 동영상 부분을, 오디오 스트림은 영화의 음성 부분을, 프레젠테이션 그래픽스 스트림은 영화의 자막을 각각 표시하고 있다. 도 3은 AVClip이 어떻게 구성되어 있는가를 모식적으로 나타내는 도면이다.
AVClip(중간 단), 복수의 비디오 프레임(픽쳐 pj 1, 2, 3)으로 이루어지는 비디오 스트림, 복수의 오디오 프레임으로 이루어지는 오디오 스트림을 (상 1단째), PES 패킷 열로 변환하고(상 2단째), 또한 TS 패킷으로 변환하며(상 3단째), 동일하게 프레젠테이션 그래픽스 스트림(하 1단째)을 PES 패킷 열로 변환하고(하 2단째), 또한 TS 패킷으로 변환하여(하 3단째), 이들을 다중화함으로써 구성된다.
본 도면에서 다중화되는 프레젠테이션 그래픽스 스트림은 하나이지만, BD- ROM이 다언어(多言語) 대응형인 경우 그 언어별로 프레젠테이션 그래픽스 스트림이 AVClip에 다중화된다. 이러한 과정을 거쳐서 생성된 AVClip은, 통상의 컴퓨터 파일과 마찬가지로, 복수의 익스텐트(Extent)로 분할되어 BD-ROM 상의 영역에 기록된다.
이어서, 프레젠테이션 그래픽스 스트림에 대하여 설명한다. 도 4(a)는 프레젠테이션 그래픽스 스트림의 구성을 도시한 도면이다. 제 1 단째는 AVClip을 구성하는 TS 패킷 열을 나타낸다. 제 2 단째는 그래픽스 스트림을 구성하는 PES 패킷 열을 나타낸다. 제 2 단째에서의 PES 패킷 열은 제 1 단째에서의 TS 패킷 중 소정의 PID를 갖는 TS 패킷에서 페이로드(Payload)를 발췌하여 연결함으로써 구성된다.
제 3 단째는 그래픽스 스트림의 구성을 나타낸다. 그래픽스 스트림은 PCS(Presentation Composition Segment), WDS(Window Define Segment), PDS(Palette Definition Segment) , ODS(Object_Definition_Segment), END(END of Display Set Segment)로 불리는 기능 세그먼트로 이루어진다. 이들 기능 세그먼트 중 PCS는 화면구성 세그먼트라 불리고, WDS, PDS, ODS, END는 정의 세그먼트라 불린다. PES 패킷과 기능 세그먼트의 대응관계는 1 대 1의 관계, 1 대 다(多)의 관계이다. 즉, 기능 세그먼트는 하나의 PES 패킷으로 변환되어서 BD-ROM에 기록되거나, 또는 플래그먼트(Fragment) 화 되어 복수 PES 패킷으로 변환되어서 BD-ROM에 기록된다.
도 4(b)는 기능 세그먼트를 변환함으로써 얻어지는 PES 패킷을 나타내는 도면이다. 도 4(b)에 도시한 바와 같이 PES 패킷은 패킷 헤더(Packet Header)와 페이 로드로 이루어지며, 이 페이로드가 기능 세그먼트 실체에 해당한다. 또, 패킷 헤더에는, 이 기능 세그먼트에 대응하는 DTS, PTS가 존재한다. 또한, 이후의 설명에서는 기능 세그먼트가 저장되는 PES 패킷의 헤더 내에 존재하는 DTS 및 PTS를 기능 세그먼트의 DTS 및 PTS로서 취급한다.
이들 다양한 종별의 기능 세그먼트는 도 5와 같은 논리구조를 구축한다. 도 5는 다양한 종별의 기능 세그먼트에 의해 구성되는 논리구조를 나타내는 도면이다. 본 도면은 제 3 단째에 기능 세그먼트를, 제 2 단째에 디스플레이 세트(Display Set)를, 제 1 단째에 Epoch를 각각 나타낸다.
제 2 단째의 디스플레이 세트(DS로 약칭한다)는 그래픽스 스트림을 구성하는 복수 기능 세그먼트 중, 한 화면 분의 그래픽스를 구성하는 집합을 말한다. 도면 중의 점선은 제 3 단째의 기능 세그먼트가 어느 DS에 귀속해 있는가 라고 하는 귀속관계를 나타낸다.
PCS-WDS-PDS-ODS-END라는 일련의 기능 세그먼트가 하나의 DS를 구성하고 있다는 것을 알 수 있다. 재생장치는 이 DS를 구성하는 복수의 기능 세그먼트를 BD-ROM에서 판독하면 한 화면 분의 그래픽스를 구성할 수 있다.
제 1 단째의 Epoch는, AVClip의 재생시간 축 상에 있어서 메모리 관리의 연속성을 가지고 있는 하나의 기간 및 이 기간에 할당된 데이터 군(群)을 말한다. 여기서 상정하고 있는 메모리는 한 화면 분의 그래픽스를 저장해 두기 위한 그래픽스 플레인(Graphics Plane), 신장(伸長)된 상태의 그래픽스 데이터를 저장해 두기 위한 오브젝트 버퍼이다. 이들에 대한 메모리 관리에 연속성이 있다고 하는 것은, 이 Epoch에 해당하는 기간을 통해서 이들 그래픽스 플레인 및 오브젝트 버퍼의 플래시(Flash)가 발생하지 않으며, 그래픽스 플레인 내의 어떤 정해진 직사각형 영역 내에서만 그래픽스의 소거 및 재묘사가 행해지는 것을 말한다(※ 여기서 플래시란, 플레인 및 버퍼의 저장 내용을 전부 클리어 해 버리는 것을 말한다). 이 직사각형 영역의 가로 세로의 크기 및 위치는 Epoch에 해당하는 기간에서 시종 고정되어 있다. 그래픽스 플레인에서 이 고정화된 영역 내에서 그래픽스의 소거 및 재묘사를 행하고 있는 한은 영상과 그래픽스의 동기가 보장된다. 즉, Epoch는 영상-그래픽스의 동기 보장이 가능한 재생시간 축 상의 한 단위라고 할 수 있다. 그래픽스 플레인에 있어서, 그래픽스의 소거·재묘사를 행해야 할 영역을 갱신하고자 하는 경우에는, 재생시간 축 상에서 그 변경시점을 정의하고, 그 변경시점 이후를 새로운 Epoch로 하지 않으면 안 된다. 이 경우, 2개의 Epoch의 경계에서는 영상-그래픽스의 동기는 보장되지 않는다.
Epoch에서의 자막의 위치관계에 비유하면, 재생시간 축 상에서, 화면상의 어느 정해진 직사각형 영역 내에 자막이 출현해 있는 기간이 Epoch라고 할 수 있다. 도 6은 자막의 표시위치와 Epoch의 관계를 도시한 도면이다. 본 도면에서는 동영상의 각 픽쳐의 도안에 따라 자막의 위치를 변경하는 배려가 이루어지고 있다. 즉, 5개의 자막 「Actually」「I lied to you」 「Sorry」 「Three years have passed」 「since then」중, 3개의 자막 「Actually」 「I lied to you」 「Sorry」는 화면의 하측에,「Three years have passed」「since then」는 화면의 상측에 배치되어 있다. 이는, 화면의 가시성을 고려하여, 화면 중의 여백에 자막에 해당하는 위치에 자막을 배치하는 것을 의도하고 있다. 이러한 시간적인 변동이 있는 경우, AVClip의 재생시간 축에 있어서, 하측의 여백에 자막이 출현해 있는 기간이 하나의 Epoch 1, 상측의 여백에 자막이 출현해 있는 기간이 다른 Epoch 2가 된다. 이들 2개의 Epoch는, 각각 독자의 자막의 묘사영역을 갖게 된다. Epoch 1에서는 화면 하측의 여백이 자막의 묘사영역(window 1)이 된다. 한편, Epoch 2에서는 화면 상측의 여백이 자막의 묘사영역(window 2)이 된다. 이들 Epoch 1, 2에 있어서, 버퍼·플레인에서의 메모리 관리의 연속성은 보증되어 있으므로, 상술한 여백에서의 자막표시는 심리스(Seamless)하게 행해진다. 이상이 Epoch에 대한 설명이다. 이어, Display Set에 대하여 설명한다.
도 5에서의 점선 hk1, 2는, 제 2 단째의 기능 세그먼트가 어느 Epoch에 귀속해 있는가라고 하는 귀속관계를 나타낸다. Epoch Start, Acquisition Point, Normal Case라는 일련의 DS는 제 1 단째의 Epoch를 구성하고 있음을 알 수 있다. 『Epoch Start』,『Acquisition Point』『Normal Case』는 DS의 유형이다. 본 도면에서의 Acquisition Point, Normal Case의 순서는 일 예에 불과하며, 어느 쪽이 먼저라도 된다.
『Epoch Start』는 "신 표시(New Display)"라고 하는 표시효과를 가져오는 DS이며, 새로운 Epoch의 개시를 나타낸다. 따라서, Epoch Start는 다음 화면합성에 필요한 모든 기능 세그먼트를 포함하고 있다. Epoch Start는 영화작품에서의 챕터(Chapter) 등 선두검색이 이루어지는 것이 판명되는 위치에 배치된다.
『Acquisition Point』는, "표시 리플레시(Display Refresh)"라는 표시효과 를 가져오는 Display Set이며, 선행하는 Epoch Start와 완전히 동일한 Display Set을 말한다. Acquisition Point인 DS는 Epoch의 개시시점은 아니나, 다음 화면합성에 필요한 모든 기능 세그먼트를 포함하고 있으므로, Acquisition Point인 DS에서 선두검색을 행하면, 그래픽스 표시를 확실하게 실현할 수 있다. 즉, Acquisition Point인 DS는, Epoch의 도중에서의 화면구성을 가능하게 하는 역할을 갖는다.
Acquisition Point인 Display Set은 선두검색 처가 될 수 있는 위치에 포함된다. 그와 같은 위치에는 타임 서치(Time Search)에 의해 지정될 수 있는 위치가 있다. 타임 서치는 몇 분 몇 초라는 시간입력을 사용자로부터 수신하여, 그 시간입력에 상당하는 재생시점에서 선두검색을 행하는 조작이다. 이러한 시간입력은 10분 단위, 10초 단위와 같이 대략적인 단위로 이루어지므로, 10분 간격의 재생위치, 10초 간격의 재생위치가 타임 서치에 의해 지정될 수 있는 위치가 된다. 이와 같이 재생위치가 타임 서치에 의해 지정될 수 있는 위치에 Acquisition Point를 설치해 둠으로써, 타임 서치 시의 그래픽스 스트림 재생을 적절하게 할 수 있다.
『Normal Case』는, "표시 업 데이트"라는 표시효과를 가져오는 DS이며, 앞의 화면합성에서의 차분만을 포함한다. 예를 들어, 어느 DSv의 자막은 선행하는 DSu와 동일한 내용이지만, 화면구성이 이 선행하는 DSu와 다른 경우, PCS와 END만의 DSv를 설치하여 이 DSv를 노말 케이스(Normal Case)의 DS로 한다. 이렇게 하면, 중복하는 ODS를 설치할 필요가 없어지므로 BD-ROM에서의 용량 삭감에 기여할 수 있다. 한편, 노말 케이스의 DS는 차분에 지나지 않으므로, 노말 케이스 단독으로는 화면구성을 행할 수 없다.
이어 Definition Segment(ODS,WDS, PDS)에 대하여 설명한다.
『Object_Definition_Segment』는 그래픽스 오브젝트를 정의하는 기능 세그먼트이다. 이 그래픽스 오브젝트에 대하여 이하 설명한다. BD-ROM에 기록되어 있는 AVClip은 하이비전과 같은 고화질을 세일즈 포인트로 하고 있으므로, 그래픽스 오브젝트의 해상도도 1920×1080 화소라는 고 정세(精細)한 크기로 설정되어 있다. 1920×1080라는 해상도가 있으므로, BD-ROM에서는 극장 상영용 자막의 글자체, 즉, 손으로 쓴 듯한 글자체의 자막표시를 선명하게 재현할 수 있다. 그래픽스 오브젝트는 복수의 런 렝스(run length) 데이터로 이루어진다. 런 렝스 데이터란, 화소 값을 나타내는 픽셀 코드(Pixel Code)와 화소 값의 연속 길이에 의해 화소 열을 표현한 데이터이다. 픽셀 코드는 8비트의 값이고 1~255의 값을 취한다. 런 렝스 데이터에서는 이 Pixel Code에 의해 풀 컬러의 16,777,216색에서 임의의 256색을 선택해서 화소의 색으로 설정할 수 있다. 또, 자막으로 표시될 경우, 그래픽스 오브젝트는 투명색의 배경에 문자 열을 배치함으로써 묘사하지 않으면 안 된다.
ODS에 의한 그래픽스 오브젝트의 정의는 도 7(a)에 나타낸 바와 같은 데이터 구조로 이루어진다. ODS는, 도 7(a)에 나타낸 바와 같이, 자신이 ODS라는 것을 나타내는 『 segment_type』과, ODS의 데이터 길이를 나타내는 『 segment_length』와, Epoch에서의 이 ODS에 대응하는 그래픽스 오브젝트를 일의(一意)적으로 식별하는 『 object_id』와, Epoch에서의 ODS의 버전을 나타내는 『 object_version_number』와, 『last_in_sequence_flag』와, 그래픽스 오브젝트의 일부 또는 전부인 연속 바이트 길이 데이터 『 object_data_fragment』로 이루어진 다.
『object_id』는 ODS는 디코드 되어서 대응하는 그래픽스 오브젝트가 오브젝트 버퍼 상에 판독된 경우, 이 그래픽스 오브젝트와 오브젝트 버퍼에서 이 그래픽스 오브젝트가 점유하고 있는 영역을 일의적으로 식별하는 식별자이다. 하나 이상의 그래픽스 오브젝트가 저장된 상태에서 오브젝트 버퍼의 메모리 공간에서의 각각의 영역은 이 object_id에 의해 식별되게 된다. 반대로, 어떤 object_id가 2개 이상의 디스플레이 세트에 부가되어 있는 경우, 선행하는 ODS에 대응하는 그래픽스 오브젝트는 오브젝트 버퍼에 저장된 후, 동일한 object_id를 갖는 후속 그래픽스 오브젝트에 의해 오버라이트(Over Write) 된다. 이러한 업 데이트는 아주 작은 빈 영역의 발생이나, 그래픽스 오브젝트의 이산배치를 피하려는 배려이다. 그 이유는 다음과 같다. 그래픽스 표시를 행하기 위하여, 오브젝트 버퍼 상의 그래픽스 오브젝트는 끊임 없이 그래픽스 플레인에 전송되게 된다. 오브젝트 버퍼 내에 아주 작은 빈 영역이 발생하거나, 또 동일한 object_id를 갖는 그래픽스 오브젝트가 흩어져서 이산적으로 배치되면, 그래픽스 오브젝트를 판독하기 위한 오버헤드가 발생하여, 오브젝트 버퍼→그래픽스 플레인의 전송 시에 있어서의 전송 효율이 떨어진다. 이 효율저하는 그래픽스-동영상의 동기 표시에 악영향을 미칠 수밖에 없다. 이러한 사정에서, 오브젝트 버퍼 상에 있는 object_id에 의해 식별되는 그래픽스 오브젝트가 공유하고 있는 영역은 동일한 크기와 동일한 object_id를 갖는 그래픽스 오브젝트만에 의해 오버라이트를 할 수 있게 되어 있다.
그래픽스 오브젝트 오버라이트에서 후속하는 그래픽스 오브젝트의 사이즈는 선행하는 것과 동일한 사이즈가 아니면 안 된다. 선행하는 그래픽스 오브젝트에 비해 너무 작아도 안 되고 너무 커도 안 된다. 업 데이트에 있어서 그래픽스 오브젝트의 사이즈가 동일하게 되도록 그래픽스 오브젝트를 작성해 두는 것은 편집 담당자에게 있어서의 책무가 된다. 동일한 ID를 갖는 그래픽스 오브젝트의 가로세로 사이즈를 동일하게 하는 제한은 하나의 Epoch 내의 제한에 지나지 않는다. 어떤 Epoch에 속하는 그래픽스 오브젝트와 다음 Epoch에 속하는 그래픽스 오브젝트는 가로세로 사이즈가 변해도 된다.
『last_in_sequence_flag』, 『object_data_fragment』에 대하여 설명한다. PES 패킷의 페이로드의 제한 때문에 자막을 구성하는 비 압축 그래픽스가 하나의 ODS에서는 저장할 수 없는 경우가 있다. 그러한 경우, 그래픽스를 분할함으로써 얻어진 1 부분(플래그먼트)이 object_data_fragment에 설정된다. 하나의 그래픽스 오브젝트를 복수 ODS에 저장하는 경우, 최후의 플래그먼트를 제외한 모든 플래그먼트는 동일한 사이즈가 된다. 즉, 최후의 플래그먼트는 그 이전의 플래그먼트 사이즈 이하가 된다. 이들 플래그먼트를 저장한 ODS는 DS에서 동일한 순서로 출현한다. 그래픽스 오브젝트의 최후는, last_in_sequence_flag를 갖는 ODS에 의해 지시된다. 상술한 ODS의 데이터 구조는 앞의 PES 패킷으로부터 플래그먼트를 채워가는 저장법을 전제로 하고 있으나, 각 PES 패킷에 공간이 생기도록 채워가는 저장법이라도 좋다. 이상이 ODS의 설명이다.
『Palette Definition Segment(PDS)』는 색 변환용의 팔레트(palette)를 정의하는 정보이다. 팔레트는 1~255의 픽셀 코드와 화소 값의 조합을 나타내는 데이 터이다. 여기서 화소 값은 적색 차 성분(Cr값), 청색 차 성분(Cb값), 휘도 성분(Y값), 투명도(T값)로 구성된다. 각 런 랭스 데이터가 갖는 픽셀 코드를 팔레트에 제시되는 화소 값으로 대체함으로써 런 랭스 데이터는 발색(發色)되게 된다. PDS의 데이터 구조를 도 7(b)에 도시한다. 도 7(b)에 도시한 바와 같이, PDS는 자신이 PDS임을 나타내는 『segment_type』, PDS의 데이터 길이를 나타내는 『segment_ length』, 이 PDS에 포함되는 팔레트를 일의적으로 식별하는 『 Pallet_id』, Epoch에서의 Epoch의 PDS의 버전을 나타내는 『pallet_version_number』, 각 엔트리에 대한 정보 『pallet_entry』로 이루어진다. 『pallet_entry』는, 각 엔트리에서의 적색 차 성분(Cr값), 청색 차 성분(Cb값), 휘도 성분(Y값), 투명도(T값)를 나타낸다.
이어서 WDS에 대하여 설명한다.
『window_definition_segment』는 그래픽스 플레인의 직사각형 영역을 정의하기 위한 기능 세그먼트이다. Epoch에서는 클리어 및 재묘사가 그래픽스 플레인에서의 어떤 직사각형 영역 내에서 행해지고 있을 때에만 메모리 관리에 연속성이 발생하는 것은 이미 설명했다. 이 그래픽스 플레인에서의 직사각형 영역은 "윈도(window)"라고 불리며, 이 WDS에 의해 정의된다. 도 8(a)는 WDS의 데이터 구조를 도시한 도면이다. 본 도면에서 도시한 바와 같이, WDS는 그래픽스 플레인에서 윈도를 일의적으로 식별하는 『window_id』와 그래픽스 플레인에서의 좌상(左上) 화소의 수평위치를 나타내는 『window_horizontal_position』과, 그래픽스 플레인에서의 좌상 화소의 수직위치를 나타내는 『 window_vertical_position』과, 그래픽스 플레인에서의 윈도의 가로 폭을 나타내는 『 window_width』와, 그래픽스 플레인에서의 세로 폭을 나타내는 『 window_height』를 이용하여 표현된다.
window_horizontal_position, window_vertical_position, window_width, window_height가 취득할 수 있는 값에 대하여 설명한다. 이들이 상정하고 있는 좌표계는 그래픽스 플레인의 내부 영역이며, 이 그래픽스 플레인은 세로: video_height, 가로: video_width라는 2차원 형상의 크기를 갖는다.
window_horizontal_position은, 그래픽스 플레인에서의 좌상 화소의 수평 어드레스이므로, 1~video_width의 값을 취하고, window_vertical_position은 그래픽스 플레인에서의 좌상 화소의 수직 어드레스이므로 1~video_height의 값을 취한다.
window_width는, 그래픽스 플레인에서의 윈도의 가로 폭이므로, 1~video_width_window_horizontal_position의 값을 취하고, window_height는 그래픽스 플레인에서의 세로 폭이므로, 1~video_height_window_vertical_position의 값을 취한다.
WDS의 window_horizontal_position, window_vertical_position, window_width, window_height에 의해, 그래픽스 플레인의 어디에 윈도를 배치할지, 윈도의 크기를 어느 만큼으로 할지를 Epoch별로 규정할 수 있다. 따라서, 어떤 Epoch에 속하는 픽처가 표시되는 기간에 있어서, 픽처 내의 도안에 방해가 되지 않도록, 픽처 상의 여백에 해당하는 위치에 윈도가 나타나도록 편집 시에 조정해 둘 수 있다. 이로 인해 그래픽스에 의한 자막표시를 보기 쉽게 할 수 있다. WDS는 Epoch별로 정의 가능하므로, 픽처의 도안에 시간적인 변동이 있어도 그 변동에 따 라 그래픽스를 보기 쉽게 표시할 수 있다. 따라서, 결과적으로 자막이 영상 본체에 포함된 것과 동일한 레벨까지 영화작품의 품질을 높일 수 있다.
이어『 END of Display Set Segment』에 대하여 설명한다. END of Display Set Segment는 디스플레이 세트의 전송 종료를 나타내는 지표이고, 디스플레이 세트에서의 기능 세그먼트 중 최후의 ODS의 직후에 배치된다. 이 END of Display Set Segment의 내부구성은 자신이 END of Display Set Segment인 것을 나타내는 『 segment_type』과, 당해 기능 세그먼트의 데이터 길이를 나타내는 『 segment_length』로 이루어지고, 구체적인 설명이 필요한 구성요소는 아니다. 따라서 도시는 생략한다.
이상이 ODS, PDS, WDS, END에 대한 설명이다. 이어 PCS에 대하여 설명한다.
PCS는 대화적인 화면을 구성하는 기능 세그먼트이다. PCS는 도 8(b)에 나타낸 데이터 구조로 구성된다. 본 도면에 도시한 바와 같이, PCS는 『 segment_type』과, 『segment_length』와, 『composition_number』와, 『composition_state』와, 『pallet_update_flag』와, 『pallet_id』와, 『composition_object(1)~(m)』으로 구성된다.
『composition_number』는 0에서 15까지의 수치를 이용하여 디스플레이 세트에서의 그래픽스 업 데이트를 식별한다. 어떻게 식별하는가 하면, Epoch의 선두에서 본 PCS까지 그래픽스 업 데이트가 존재하면, 이들 그래픽스 업 데이트를 경유할 때마다 인크리먼트(increment) 된다고 하는 룰에 의해 composition_number가 설정된다.
『composition_state』는, 본 PCS로부터 시작하는 디스플레이 세트가 Normal Case인지, Acquisition Point인지, Epoch Start인지를 나타낸다.
『pallet_update_flag』는, 본 PCS에 있어서 Pallet Only Display Update가 이루지고 있는가 여부를 나타낸다. Pallet Only Display Update란, 직전의 팔레트만을 새로운 것으로 절환(Switching)함으로써 이루어지는 업 데이트를 말한다. 본 PCS에서 이러한 업 데이트가 이루어지면 본 필드는 "1"로 설정된다.
『pallet_id』는 Pallet Only Display Update에 이용되어야 할 팔레트를 나타낸다.
『composition_object(1)...(n)』은, 이 PCS가 속하는 디스플레이 세트에서의 화면구성을 실현하기 위한 제어정보이다. 도 8(b)의 점선 wd1은 임의의 composition_object(i)의 내부구성을 클로즈업하고 있다. 이 점선 wd1로 도시한 바와 같이, composition_object(i)는, 『object_id_ref』, 『window_id_ref』, 『object_cropped_flag』, 『object_horizontal_position』, 『object_vertical_ position』, 『cropping_rectangle 정보(1)(2)...(n)』으로 이루어진다.
『object_id_ref』는, 그래픽스 오브젝트 식별자 (object_id)의 참조 값이다. 이 참조 값은 composition_object(i)에 대응하는 화면구성을 실현함에 있어서 이용해야 할 그래픽스 오브젝트의 식별자를 의미한다.
『window_id_ref』는 윈도 식별자(window_id)의 참조 값이다. 이 참조 값은 composition_object(i)에 대응하는 화면구성을 실현함에 있어서 어느 윈도에 그래픽스 오브젝트를 표시해야 하는가를 나타낸다.
『object_cropped_flag』는, 오브젝트 버퍼에 있어서 크롭(Crop)된 그래픽스 오브젝트를 표시할지, 그래픽스 오브젝트를 비 표시로 할지를 절환하는 플래그이다. "1"로 설정된 경우, 오브젝트 버퍼에 있어서 크롭된 그래픽스 오브젝트가 표시되고, "0"으로 설정된 경우 그래픽스 오브젝트는 비 표시가 된다.
『object_horizontal_position』은 그래픽스 플레인에서의 그래픽스 오브젝트의 좌상 화소의 수평위치를 나타낸다.
『object_vertical_position』은 그래픽스 플레인에서의 좌상 화소의 수직위치를 나타낸다.
『cropping_rectangle정보(1)(2)...(n)』은 『object_cropped_flag』가 1로 설정되어 있는 경우에 유효해지는 정보요소이다. 점선 wd2은 임의의 cropping_ rectangle 정보(i)의 내부구성을 클로즈업하고 있다. 이 점선으로 나타낸 바와 같이, cropping_rectangle정보(i)는, 『object_cropping_horizontal_position』, 『object_cropping_vertical_address』, 『object_cropping_width』, 『object_ cropping_heigh』로 이루어진다.
『object_cropping_horizontal_position』은 그래픽스 플레인에서의 크롭 직사각형(cropped Rectangle)의 좌상 화소의 수평위치를 나타낸다. 크롭 직사각형은 그래픽스 오브젝트의 일부를 잘라내기 위한 틀로, ETSI EN 300 743 표준규격에서의 "Region"에 상당한다.
『object_cropping_vertical_address』는 그래픽스 플레인에서의 크롭 직사각형의 좌상 화소의 수직위치를 나타낸다.
『object_cropping_width』는 그래픽스 플레인에서의 크롭 직사각형의 가로 폭을 나타낸다.
『object_cropping_height』는, 그래픽스 플레인에서의 크롭 직사각형의 세로 폭을 나타낸다.
이상이 PCS의 데이터 구조이다. 이어 PCS의 구체적인 기술(Description)에 대하여 설명한다. 이 구체 예는, 도 6에 도시한 자막의 표시, 즉, 동영상의 재생의 진행에 따라, 3회 그래픽스 플레인으로의 기록에 의해 『Actually』 『I lied to you』 『Sorry』과 같이 서서히 표시하도록 하는 것이다. 도 9는 이러한 자막표시를 실현하기 위한 기술 예이다. 본 도면에서의 Epoch는, DS1(Epoch Start), DS2(Normal Case), DS3(Normal Case)를 갖는다. DS1은 자막의 표시 틀이 되는 우윈도를 정의하는 WDS, 대본 『 Actually I lied to you Sorry』을 나타내는 ODS, 첫 번째의 PCS를 구비한다. DS2(Normal Case)는 두 번째의 PCS를 갖는다. DS3(Normal Case)는 세 번째의 PCS를 갖는다.
이어 각각의 PCS를 어떻게 기술하는가에 대하여 설명한다. 디스플레이 세트에 속하는 WDS, PCS의 기술 예를 도 10~도 12에 나타낸다. 도 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)을 나타내고 있다. 그리고 기준점에서 object_cropping_width, object_cropping_height에 나타낸 범위(도면 중의 두꺼운 틀 부분)가 크롭 범위가 된다. 크롭된 그래픽스 오브젝트는, 그래픽스 플레인에서의 좌표계에서, object_horizontal_position, object_vertical_position을 기준점(좌상)으로 한 점선의 범위 cp1에 배치된다. 이렇게 함으로써 『 Autually』이 그래픽스 플레인의 윈도 내에 기록된다. 이로 인해 자막 『 Actually』은 동화상과 합성되어서 표시된다.
도 11은 DS2에서의 PCS의 기술 예를 도시한 도면이다. 본 도면에서의 WDS의 기술은 도 10과 동일하므로 설명을 생략한다. 크롭 정보의 기술은 도 10과 다르다. 도 11에서의 크롭 정보의 object_cropping_horizontal_position, object_cropping_ vertical_position은, 오브젝트 버퍼 상의 자막 『Actually I lied to you Sorry』 중 『 I lied to you』의 좌상 좌표를 나타내고, object_cropping_height, object_cropping_width는, 『I lied to you』가 가로 폭, 세로 폭을 나타낸다. 이렇게 함으로써 『 I lied to you』가 그래픽스 플레인에서의 윈도 내에 기록된다. 이로 인해 자막 『 I lied to you』는 동화상과 합성되어서 표시된다.
도 12는 DS3에서의 PCS의 기술 예를 도시한 도면이다. 본 도면에서의 WDS의 기술은 도 10과 동일하므로 설명을 생략한다. 크롭 정보의 기술은 도 10과 다르다. 도 12에서의 크롭 정보의 object_cropping_horizontal_position, object_ cropping_vertical_position은, 오브젝트 버퍼 상의 자막 『 Actually I lied to you Sorry』 중 『 Sorry』의 좌상 좌표를 나타내고, object_cropping_height, object_cropping_width는 『 Sorry』의 가로 폭, 세로 폭을 나타낸다. 이렇게 함으로써, 『Sorry』가 그래픽스 플레인에서의 윈도 내에 기록된다. 이로 인해 자막『 Sorry』는 동화상과 합성되어서 표시된다. 도 13은 도 10~도 12에 도시한 바와 같은 그래픽스 업 데이트를 실현함에 있어서의 오브젝트 버퍼에서의 메모리 공간을 도시한 도면이다. 본 도면에 도시한 바와 같이, 오브젝트 버퍼는 새로 폭, 가로 폭, 위치가 고정된 저장 영역 A, B, C, D가 4개 있으며, 이 중 저장 영역 A에 도 11에 도시한 자막이 저장된다. 이들 4개의 저장영역 A, B, C,D의 각각은 저장되어 있는 그래픽스 오브젝트에 대응하는 object_id에 의해 식별된다. 즉, object_id=1에 의해 저장영역 A가, object_id=2에 의해 저장영역 B가, object_id=3에 의해 저장영역 C가 각각 식별된다. 그래픽스 플레인으로의 전송효율을 유지하기 위하여, 이들 저장영역의 세로 폭, 가로 폭은 시종 고정되어 있다. 동일한 object_id를 갖는 그래픽스 오브젝트가 디코드에 의해 새로 얻어지면, 그들 저장영역은 그 새로 얻어진 그래픽스 오브젝트에 의해 오버라이트 된다. 예를 들어, 도 10에 도시한 자막과 동일한 위치에 동일한 크기로 자막을 표시하고자 하는 경우, 후속하는 디스플레이 세트에서 동일한 object-id를 부가한 ODS를 설치하면 된다. 이와 같이 동일한 object_id를 부가하는 것만으로도 오브젝트 버퍼 상에 존재하는 그래픽스 오브젝트는 새로운 그래픽스 오브젝트로 오버라이트 되며, 그 새로운 그래픽스 오브젝트는 앞의 그래픽스 오브젝트와 동일한 크기, 동일한 위치에서 표시되게 된다.
표시효과 실현에 있어서의 제약에 대하여 설명한다. 원활한 표시효과 실현을 위해서는, 윈도 클리어와 윈도 재묘사가 필요하다. 윈도 클리어와 윈도 재묘사를 비디오 프레임의 시간 간격으로 실현하는 경우, 오브젝트 버퍼와 그래픽스 플레인 사이의 전송 레이트는 어느 정도 필요할까.
여기서 윈도를 어느 정도의 크기로 할 지의 제한에 대하여 검토한다. 오브젝트 버퍼-그래픽스 플레인 사이의 전송 레이트를 Rc로 하면, 가장 나쁜 케이스에서는 이 전송 레이트 Rc로 윈도 클리어와 윈도 재묘사를 행하지 않으면 안 된다. 그렇다면, 윈도 클리어, 윈도 재묘사의 각각을 Rc의 절반 정도의 전송 레이트(Rc/2)로 실현하지 않으면 안 된다.
이들 윈도 클리어-윈도 재묘사를 비디오 프레임과 동기시키려면, 윈도 사이즈×프레임 레이트≒Rc2를 만족할 필요가 있다. 이 프레임 레이트가 29.97이라면, Rc는 윈도 사이즈×2×29.97이 된다.
자막 표시에 있어서는, 그래픽스 플레인 전체에 대하여 최저 25%~33% 정도의 크기가 필요하다. 여기서 그래픽스 플레인의 총 화소 수는 1920×1080이고, 한 화소 당 인덱스의 비트 길이를 8비트로 하면, 그래픽스 플레인의 총 용량은 2M바이트(≒1920×1080×8)가 된다.
이 총 용량의 1/4를 윈도 사이즈로 하면 500k바이트(=2M바이트/4)가 된다. 이를 상술한 식에 대입해서 Rc를 이끌어내면, Rc는 256Mbps(500k바이트×2×29.97)로 산출할 수 있다.
이 25%~33%라는 크기라면, 256Mbps라는 전송 레이트로 자막의 표시를 행하고 있는 한, 어떠한 표시효과를 실현하는 경우에도 동영상과 동기를 유지할 수 있다.
반대로, 윈도 클리어 및 재묘사의 레이트가 비디오 프레임의 프레임 레이트의 1/2, 1/4로도 좋다면, Rc가 비록 동일하더라도 윈도 사이즈를 2배, 4배로 할 수 있다. 이상이 윈도의 크기에 대한 설명이다. 이어, 윈도의 위치, 범위에 대하여 설명한다. 상술한 바와 같이, Epoch에 있어서 윈도의 위치, 범위는 일관성이 있다.
Epoch에 있어서, 윈도의 위치, 범위를 일관성 있게 유지해 두는 것은 이하의 이유에 의한다. 윈도의 위치, 범위를 바꾸면, 그래픽스 플레인에 대한 기록 처 어드레스를 바꾸지 않으면 안 되며, 오버헤드가 발생하므로, 이러한 오버헤드에 의해 오브젝트 버퍼로부터 그래픽스 플레인으로의 전송 레이트가 저하하기 때문이다.
윈도에는 그래픽스 오브젝트의 개수가 제한되어 있다. 이 개수 제한은 디코드 된 그래픽스 오브젝트의 전송에 있어서의 오버헤드를 저감할 목적으로 설치되어 있다. 여기에서의 오버헤드는 그래픽스 오브젝트의 에지 부분의 어드레스를 설정할 때에 발생한다. 그렇게 하면, 에지 부분이 많이 존재할수록 오버헤드의 발생횟수가 많아진다.
윈도에서의 그래픽스 오브젝트의 수에 제한이 없으면, 그래픽스 전송에 있어서 발생하는 오버헤드 수가 미지수가 되어, 전송 부하의 증감이 심해진다. 한편, 윈도에서의 그래픽스의 개수가 2개까지라고 하면, 최악으로 4개의 오버헤드가 발생한다고 보아서 전송 레이트를 설정하면 되므로, 미니멈 스탠더드(minimum standard)인 전송 레이트를 수치화하기 쉽게 된다.
이상이 윈도에 대한 설명이다. 이어 이들 PCS, ODS를 갖는 디스플레이 세트가 AVClip의 재생시간 축 상에 어떻게 할당되는가에 대하여 설명한다. Epoch는 재 생시간 축 상에서 메모리 관리가 연속하는 기간이며, Epoch는 1개 이상의 디스플레이 세트로 구성되므로, 디스플레이 세트를 어떻게 AVClip의 재생시간 축에 할당할지가 문제가 된다. 여기서 AVClip의 재생시간 축이란, AVClip에 다중화된 비디오 스트림을 구성하는 개개의 픽처 데이터의 디코드 타이밍, 재생 타이밍을 규정하기 위해 상정되는 시간 축을 말한다. 이 재생시간 축에서 디코드 타이밍, 재생 타이밍은 90KHz의 시간 정밀도로 표현된다. 디스플레이 세트 내의 PCS, ODS에 부가된 DTS, PTS는 이 재생시간 축에서 동기제어를 실현해야 할 타이밍을 나타낸다. 이 PCS, ODS에 부가된 DTS, PTS를 이용하여 동기제어를 행하는 것이 재생시간 축에 대한 디스플레이 세트의 할당이다.
먼저, ODS에 부가된 DTS, PTS에 의해 어떠한 동기제어가 이루어지는가에 대하여 설명한다.
DTS는 ODS의 디코드를 개시해야 할 시간을 90KHz의 시간 정밀도로 나타내고 있으며, PTS는 디코드 종료 시각을 나타낸다.
ODS의 디코드는 순간적으로는 완료하지 않으며 시간적인 길이를 가지고 있다. 이 디코드 시간의 개시 점·종료 점을 명확히 하고자 하는 필요에 따라, ODS에 대한 DTS, PTS는 디코드 개시시각, 디코드 종료시각을 나타내고 있다.
PTS의 값은 데드라인이므로, PTS에 나타난 시각까지는 ODS의 디코드가 이루어지고, 비 압축 상태의 그래픽스 오브젝트를 재생장치상의 오브젝트 버퍼가 취득할 수 있어야 한다.
DSn에 속하는 임의의 ODSj의 디코드 개시시각은 90KHz의 시간 정밀도로 DTS(DSn[ODSj])에 나타나므로, 이에 디코드를 요하는 최장시간을 부가한 시각이 디스플레이 세트의 ODSj의 디코드 종료시각이 된다.
ODSj의 사이즈를 "SIZE(DSn[ODSj])", ODS의 디코드 레이트를 "Rd"로 하면, 디코드에 요하는 최장 시간(초)은 "SIZE(DSn[ODSj]//Rd"가 된다. 여기서 "//"는, 소수점 이하 절상 나눗셈을 나타내는 연산자이다.
이 최장시간을 90KHz의 시간정밀도로 변환하고, ODSj의 DTS에 가산함으로써 PTS로 표시되어야 할 디코드 종료시각(90KHz)은 산출된다.
DSn에 속하는 ODSj의 PTS를 수학 식으로 나타내면, 이하의 식과 같다.
PTS(DS[ODSj])=DTS(DSn[ODSj])+90.000×(SIZE(DSn[ODSj]//Rd)
그리고 서로 인접하는 2개의 ODS(ODSj, ODSj+1) 사이에서는 이하의 관계를 만족시킬 필요가 있다.
PTS(DSn[ODSj]≤DTS(DSn[ODSj+1])
또, DSn에 속하는 END는 DSn의 종료를 나타내는 것이므로 DSn에 속하는 최후의 ODS(ODSlast)의 디코드 종료 시각을 나타내면 된다. 이 디코드 종료 시각은 ODS2(ODSlast)의 PTS(PTS(DSn[ODSlast]))에 나타나 있으므로, END의 PTS는 다음 식에 나타나는 값으로 설정된다.
PTS(DSn[END])=PTS(DSn[ODSlast])
이어서, PCS의 DTS, PTS의 설정에 대하여 설명한다.
PCS의 DTS 값은 DSn에서의 최초의 ODS(ODS1)의 디코드 개시시점이거나, 그 이전의 시점을 나타낸다. 왜냐하면, PCS는 DSn에서의 최초의 ODS(ODS1)의 디코드 개시시점(DTS(DSn[ODS1]) 및 DSn에서의 최초의 PDS(PDS1)이 유효하게 되는 시점(PTS(DSn[PDS1])과 동시이거나, 또는 그 이전에 재생장치상의 버퍼에 로드되지 않으면 안 되기 때문이다. 따라서, 이하의 식의 관계를 만족하는 값으로 설정하지 않으면 안 된다.
DTS(DSn[PCS])≤DTS(DSn[ODS1])
DTS(DSn[PCS])≤PTS(DSn[PDS1])
그리고 DSn에서의 PCS의 PTS는 이하의 수학 식으로 산출된다.
PTS(DSn[PCS])≥DTS(DSn[PCS])+decodeduration(DSn)
여기서 decodeduration(DSn)은 PCS의 업 데이트에 이용되는 모든 그래픽스 오브젝트의 디코드 및 표시에 필요한 시간이다. 이 디코드 시간은 고정 값이 아니다. 그러나 각 재생장치의 상태나 재생장치의 실장상황에 의해 변동하는 것도 아니다. 본 DSn.PCSn의 화면합성에 이용되는 오브젝트를 DSn.PCSn.OBJ[j]로 한 경우, decodeduration(DSn)은, 윈도 클리어에 필요한 시간(i), DSn.PCSn.OBJ의 디코드기간(ii), DSn, PCSn, OBJ의 기록에 필요한 시간(iii)에 의해 변동이 되는 값이 된다. Rd, Rc만 미리 정해져 있으면 어떠한 실장상태의 재생장치라도 동일한 값이 된다. 따라서, 편집 시에 있어서는 이들 기간의 길이를 산출하여 그 값으로부터 PTS를 계산하고 있다.
decode_duration의 계산은 도 14의 프로그램에 의거하여 행해진다. 또, 도 15, 도 16(a) (b)는 이 프로그램의 알고리즘을 도식화한 플로차트이다. 이후, 이들 도면을 참조하면서 decode_duration의 산출에 대하여 설명한다. 도 15의 플로차트 에 있어서, 우선 먼저, PLANEINITIALIZATINTIME 함수를 불러와서 되돌림 값(Return Value)을 decode_duration에 가산한다(도 15의 스텝 S1).
PLANEINITIALIZATINTIME 함수(도 16(a))는, 디스플레이 세트를 표시함에 있어서, 그래픽스 플레인의 초기화에 요하는 시간을 구하는 함수를 불러오기 위한 함수로, 도 15의 스텝 S1에서는 DSn, DSn.PCS.OBJ[0], decode_duration을 인수로 설정하여 이 함수를 불러온다.
이어서, 도 16(a)를 참조하면서 PLANEINITIALIZATINTIME함수에 대하여 설명한다. 도 16(a)에 있어서, initialize_duration이란, PLANEINITIALIZATINTIME함수의 되돌림 값을 나타내는 변수이다.
도 16의 스텝 S2는 DSn의 PCS에서의 composition_state가 Epoch Start인지의 여부에 따라 처리를 변환하는 if문이다. 만약 composition_state가 Epoch Start라면(도 14의 DSn.PCS.composition_state==EPOCH_START, 스텝 S2=YES), 그래픽스 플레인에서의 클리어에 요하는 시간을 initialize_duration으로 설정한다(스텝 S3).
오브젝트 버퍼 그래픽스 플레인 사이의 전송 레이트 Rc를, 상술한 바와 같이, 256,000,000으로 하고, 그래픽스 플레인의 총 사이즈를 video_width* video_height로 하면, 클리어에 요하는 시간(초)은 「video_width*video_ height//256,000,000」이 된다. 여기에 90,000Hz를 곱하여 PTS의 시간 정밀도로 표현하면, 그래픽스 플레인의 클리어에 요하는 시간은 「90000×video_width* video_height//256,000,000」이 된다. 이 시간을 initialize_duration에 더하고, initialize_duration을 되돌림 값으로 하여 복귀한다.
만약, composition_state가 Epoch Start가 아니라면(스텝 S2=No), WDS에 의해 정의되는 window[i]의 클리어에 요하는 시간을 initialize_duration에 더하는 처리를 모든 윈도에 대하여 반복한다(스텝 S4). 오브젝트 버퍼-그래픽스 플레인 간의 전송 레이트 Rc를 상술한 바와 같이 256,000,000으로 하고, WDS에 속하는 window[i]의 총 사이즈를 ∑SIZE(WDS.WIN[i])라 하면, 클리어에 요하는 시간(초)은 「∑SIZE(WDS.WIN[i]//256,000,000」이 된다. 여기에, 90,000Hz를 곱하여 PTS의 시간 정밀도로 표현하면, WDS에 속하는 모든 윈도의 클리어에 요하는 시간은 「9000×∑SIZE(WDS.WIN[i]//256,000,000」이 된다. 이 시간을 initialize_duration에 더하고, initialize_duration을 되돌림 값으로 하여 복귀한다. 이상이 PLANEINITIALIZATINTIME 함수이다.
도 15의 스텝 S5는, DSn에 속하는 그래픽스 오브젝트의 수가 2인가, 1인가에 의해 처리를 절환하는 것으로(도 14의 if(DSn.PCD.num_of_object==2), if(DSn.PCS.num_of_object==1)), 만약 "1"이면(스텝 S5=1) 그래픽스 오브젝트의 디코드를 행하기 위한 대기시간을 decode_duration에 더한다(스텝 S6). 이 대기시간의 산출은, WAIT 함수의 호출(도 14의 decode_duration +=WAIT(DSn, DSn.PCS.OBJ[0], decode_duration))에 의해 실현된다. 이 함수 호출에 있어서의 인수는 DSn, DSn.PCS.OBJ[0], decode_duration이고, 대기시간을 나타내는 wait_duration이 되돌림 값으로 반환된다.
도 16(b)는 WAIT 함수의 처리순서를 나타내는 플로차트이다. 이 WAIT 함수에 있어서, current_duration에는 호출 원의 decode_duration이 설정되어 있다. object_define_ready_time은, 디스플레이 세트의 그래픽스 오브젝트 [i]의 PTS가 설정되는 변수이다.
current_time이란, DSn의 PCS의 DTS에 current_duration을 더한 값이 설정되는 변수이다. 이 current_time에 따라, object_define_ready_time이 큰 경우(스텝 S7이 Yes, if(current_time<object_define_ready_time))에는, 되돌림 값인 wait_duration은 object_define_ready_time과 current_time의 차분(差分)이 설정되게 된다(스텝 S8, wait_duration +=object_define_ready_time_current_time). 이상이 Wait 함수이다. 스텝 S6에 있어서, decode_duration에는 이 Wait 함수의 되돌림 값과, OBJ[0]를 윈도에 묘사하는데 필요한 시간을 더한 시간(90,000*(SIZE(DSn. WDS.WIN[0]//256,000,000)이 설정되게 된다(스텝 S9).
이상은 DSn의 그래픽스 오브젝트가 하나인 경우의 처리이다. 도 15의 스텝 S5는 그래픽스 오브젝트의 수가 2인가 여부를 판정하고 있다. DSn의 그래픽스 오브젝트가 2 이상이면(도 14의 if(DSn.PCS.num_of_object==2)), DSn, DSn.PCS.OBJ[0], decode_duration을 인수로 하여 wait 함수를 불러오고, 그 되돌림 값을 decode_duration에 가산한다(스텝 S10).
이어지는 스텝 S11은, DSn의 OBJ[0]이 속하는 윈도가 그래픽스 오브젝트 [1]가 속하는 윈도와 동일한가에 대한 판정으로(if(DSn.PCS.OBJ[0].window_ id==DSn.PCS.OBJ[1].window_id), 만일 동일하면 DSn, DSn,PCS,OBJ[1],decode_ duration을 인수로 하여 wait 함수를 불러오고, 그 되돌림 값 wait_duration을 decode_duration에 가산한다(스텝 S12). OBJ[0]이 속하는 윈도의 재묘사에 필요한 시간(90,000*SIZE(DSn, WDS.OBJ[0], window_id)//256,000,000)을 decode_duration에 더한다(스텝 S13).
만약 속하는 윈도가 다르면(스텝 S11에서 "다르다"), OBJ[0]가 속하는 윈도의 재묘사에 필요한 시간(90,000*SIZE(DSn.WDS.OBJ[0],window_id)//256,000,000)을 decode_duration에 더한다(스텝 S15).
DSn, DSn.PCS.OBJ[1], decode_duration을 인수로 하여 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은 산출된다. 이 PCS의 PTS가 구체적으로 어떻게 설정되는지에 대하여 설명한다.
도 17(a)는 하나의 윈도에 하나의 ODS가 존재하는 케이스를 상정한 도면이다. 도 17(b) (c)는, 도 14에서 인용한 각 수치의 시간적인 전후 관계를 나타내는 타이밍차트이다. 본 차트에는 3개의 단이 있으며, 이들 단 중 "그래픽스 플레인 액세스"의 단, "ODS 디코드"의 단은, 재생 시에 병행되는 2개의 처리를 나타낸다. 상술한 알고리즘은 이들 2개의 처리의 병렬 실행을 상정하고 있다.
그래픽스 플레인 액세스는, 클리어 기간(1), 기록기간(3)으로 이루어진다. 이 클리어 기간(1)은 그래픽스 플레인 전체의 클리어에 요하는 기간(90,000×(그래픽스 플레인의 사이즈//256,000,000), 그래픽스 플레인에서의 모든 윈도의 클리어에 요하는 시간(∑(90,000×(window[i]의 사이즈//256,000,000))) 중 어느 하나를 의미한다.
기록기간(3)은 윈도 전체 묘사에 요하는 기간(90,000×(window 사이즈//256,000,000))을 의미한다.
한편, 디코드기간(2)은, ODS의 DTS에서부터 PTS까지에 제시되는 기간을 의미한다. 이들 클리어 기간(1)~기록기간(3)은 클리어해야 할 범위, 디코드해야 할 ODS의 사이즈, 그래픽스 플레인에 기록해야 할 그래픽스 오브젝트의 사이즈에 의해 변화할 수 있다. 본 도면에서는 설명의 간략화를 위해 ODS의 디코드기간(2)의 시점은 클리어 기간(1)의 시점과 동일하다고 가정하고 있다.
도 17(b)는 디코드기간(2)이 길어지는 케이스로, Decode_Duration은 디코드 기간(2)+기록기간(3)이 된다.
도 17(c)는 클리어기간(1)이 길어지는 케이스로, Decode_Duration은 클리어 기간(1)+기록기간(3)의 기간이 Decode_Duration이 된다.
도 18(a)~(c)는 하나의 윈도에 2개의 ODS가 존재하는 케이스를 상정한 도면이다. 본 도면(b)(c)에서의 디코드기간(2)은 2개의 그래픽스의 디코드에 요하는 기간의 총합을 의미한다. 그래픽스 기록기간(3)도 2개의 그래픽스를 그래픽스 플레인에 기록하는 기간의 총합을 의미한다. ODS가 2개로 되어 있으나, 도 17과 마찬가지로 생각하면 Decode_Duration을 산출할 수 있다. 2개의 ODS를 디코드하기 위한 디코드기간(2)이 긴 경우는, 도 18(b)에 도시한 바와 같이, Decode_Duration은 디코드기간(2)+기록기간(3)으로 산출되게 된다.
클리어 기간(1)이 긴 경우에는, 도 18(c)에 도시한 바와 같이, Decode_Duration은 클리어 기간(1)+기록기간(3)이 된다.
도 19(a)는 2개의 윈도의 각각에 ODS가 하나씩 존재하는 케이스를 상정하고 있다. 이 경우에도 클리어 기간(1)이 2개의 ODS를 디코드하기 위한 총 디코드기간(2)보다 긴 경우, Decode_Duration은 클리어 기간(1)+기록기간(3)이 된다. 문제는 클리어 기간(1)이 디코드기간(2)보다 짧아지는 케이스이다. 이 경우, 디코드기간(2)의 경과를 기다리지 않고, 첫 번째 윈도로의 기록이 가능하다. 따라서, 클리어 기간(1)+기록기간(3), 디코드기간(2)+기록기간(3)의 길이에는 이르지 않는다. 여기서 첫 번째의 ODS의 디코드에 요하는 기간을 기록기간(31), 두 번째의 ODS의 디코드에 요하는 기간을 기록기간(32)으로 한다. 도 19(b)는, 디코드기간(2)이 클리어 기간(1)+기록기간(31)보다 길어지는 케이스를 나타낸다. 이 경우, Decode_Duration은, 디코드기간(2)+기록기간(32)이 된다.
도 19(c)는 클리어 기간(1)+기록기간(31)이 디코드기간(2)보다 길어지는 케이스를 나타낸다. 이 경우 Decode_Duration은 클리어 기간(1)+기록기간(31)+기록기간(32)이 된다.
그래픽스 플레인의 사이즈는 플레이어 모델에서 미리 판명하였으며, 또한 윈도의 사이즈, ODS의 사이즈, 개수도 편집 단계에서 판명하고 있으므로, 이들로부터 Decode_Duration이 클리어 기간(1)+기록기간(3), 디코드기간(2)+기록기간(3), 디코드기간(2)+기록기간(32), 클리어 기간(1)+기록기간(31)+기록기간(32) 중 어느 것이 된다. 이러한 Decode_Duration 산출을 기초로 PCS의 PTS를 설정하면, 픽처 데이터와 동기표시를 높은 시간 정밀도로 실현할 수 있다. 이와 같은 고 정밀도의 동기제 어는 윈도를 정의하고, 클리어·재묘사하는 범위를 이 윈도에 한정함으로써 성립하므로, 편집 환경에 이 윈도의 개념을 도입한 것은 의의가 크다.
이어 DSn에서의 WDS의 DTS, PTS의 설정에 대하여 설명한다. WDS의 DTS는 이하의 수학 식을 만족하도록 설정하면 된다.
DTS(DSn[WDS]≥DTS(DSn[PCS]
한편, DSn에서의 WDS의 PTS는 그래픽스 플레인에 대한 기록을 개시해야 할 데드라인을 나타낸다. 그래픽스 플레인으로의 기록은 윈도만으로 족하므로, PCS의 PTS에 표시되는 시각에서 WDS의 기록에 요하는 기간을 빼면, 그래픽스 플레인으로의 기록을 개시해야 할 시각은 정해진다. WDS의 총 사이즈를 ∑SIZE(WDS.WIN[i])로 하면, 이것의 클리어 및 재묘사에 요하는 시간은『∑SIZE(WDS.WIN[i]//256,000,000』이 된다. 그리고 이들을 90.000KHz의 시간 정밀도로 표현하면 『 90000×∑SIZE(WDS.WIN[i])//256,000,000』이 된다.
따라서 이하의 수학 식으로부터 WDS의 PTS를 산출하면 된다.
PTS(DSn[WDS])=PTS(DSn[PCS])-90000×∑SIZE(WDS.WIN[i]//256,000,000
이 WDS에 나타나는 PTS는 데드라인이므로, 이보다 빠른 시점에서 그래픽스 플레인의 기록을 개시하여도 된다. 즉, 도 19에 도시한 바와 같이, 2개의 윈도 중 하나의 윈도에 표시해야 할 ODS의 디코드가 완료하면, 그 시점에서 디코드에 의해 얻은 그래픽스 오브젝트의 기록을 개시하여도 된다.
이와 같이 WDS에 부가된 DTS, PTS를 이용하여 AVClip의 재생시간 축의 임의의 시점에 윈도를 할당할 수 있다.
이상이, PCS, WDS의 DTS, PTS의 설명이다.
각 DS의 PCS는 그것의 DTS가 나타낸 시간부터 그것의 PTS가 나타낸 시간까지 액티브이다. PCD가 액티브인 이 기간은 DS의 PCS의 액티브 기간이라 불린다.
다음은 DS의 PCS의 액티브 기간이 어떻게 중복되는지를 설명한다. 그래픽스 스트림이 다수의 DS를 포함하는 경우, 둘 이상의 DS를 병렬로 처리하는 것이 바람직하다. 재생장치에서 이러한 병렬 처리를 가능하게 하기 위하여, DS의 PCS의 액티브 기간은 중복될 필요가 있다. 반면, 블루-레이 디스크 리드-온리 포맷(Blue-ray Disc Read-Only Format)은 최소 필요 구조의 재생장치로 디코딩이 수행되는 것을 규정한다.
블루-레이 디스크 리드-온리 포맷의 디코더 모델은 파이프라인 처리에 기초를 두고 있다(파이프라인 디코딩 모델). 파이프라인 디코딩 모델은 오브젝트 버퍼로부터 그래픽스 플레인으로 하나의 DS의 그래픽스 오브젝트를 판독할 수 있는 반면 다음 DS의 그래픽스 오브젝트를 디코딩 및 오브젝트 버퍼에 기입할 수 있다.
재생장치가 파이프라인 디코딩 모델을 수반하는 경우, 도입 간격은 적절하게 결정될 필요가 있다. 여기서 말하는 도입 간격이란 하나의 DS의 처리 시작부터 다음 DS의 처리 시작까지의 시간이다. 오브젝트 버퍼를 포함하는 하나의 DS의 처리는 두 개의 프로세스, 즉 ODS를 디코딩하고 비 압축 그래픽스 오브젝트를 오브젝트 버퍼에 기입하는 프로세스와 오브젝트 버퍼로부터 비 압축 그래픽스 오브젝트를 판독하고 이를 그래픽스 플레임에 기입하는 프로세스로 분리될 수 있다. 이같이 함으로써, 하나의 DS의 PCS의 액티브 기간은 도 20에서 도시된 바와 같이 분석될 수 있 다. 도면에 도시된 바와 같이, 하나의 DS의 처리는 ODS를 디코딩하고 그래픽스를 오브젝트 버퍼에 기입하는데 필요한 시간과 오브젝트 버퍼로부터 그래픽스를 판독하고 이를 그래픽스 플레인에 기입하는데 필요한 시간으로 구성된다.
파이프라인 디코딩 모델은 그래픽스를 오브젝트 버퍼에 기입함과 동시에 그래픽스를 오브젝트 버퍼로부터 판독할 수 있다. 따라서, 두 DS가 도 21에 도시된 바와 같이 병렬로 처리될 수 있다. 도 21은 파이프라인 디코딩 모델에서 두 DS(DSn과 DSn+1)가 어떻게 병렬 처리되는지를 보여준다.
설명한 바와 같이, DSn과 DSn+1은 병렬로 처리되어 DSn에 대한 오브젝트 버퍼로부터의 판독 시간이 DSn+1에 대한 오브젝트 버퍼에의 기입 시간과 중복된다.
이러한 병렬 처리에서, DSn+1의 그래픽스 오브젝트는, DSn의 그래픽스 오브젝트를 오브젝트 버퍼에 기입하는 것이 완료된 후, 오브젝트 버퍼에 기입된다.
DSn의 ODS의 디코딩 종료시간은 DSn의 END의 PTS로 나타낸다. 또한, DSn+1의 ODS 디코딩을 시작하는 가장 빠른 시간은 DSn+1의 PCS의 DTS로 나타낸다. 그러므로, DSn의 END의 타임스탬프와 DSn+1의 END의 타임스탬프는 만족하도록 미리 설정된다.
PTS(DSn[END]) ≤ DTS(DSn+1[PCS])
이러한 방법으로 도입 간격을 설정함으로써, DSn과 DSn+1은 파이프라인 디코딩 모델에서 병렬로 처리될 수 있다.
도 22는 세 개의 DS(DS0, DS1, 및 DS2)의 PCS의 액티브 기간이 중복되는 경우를 보여준다.
다음은 DS를 중복하는데 있어서 기능 세그먼트의 타입스탬프가 재생시간 축에 어떻게 설정되는지를 설명한다. 도 23은 그것의 PCS가 중복하는 액티브 기간을 갖는 DS0와 DS1 각각의 기능 세그먼트의 타임스탬프를 보여준다. 도면에서, WDS의 DTS, PDS, 및 DS0의 최상부 ODS(ODS1)는 DS0의 PCS의 DTS와 동일하도록 설정된다. 이것은, DS0의 PCS의 액티브 기간이 시작한 직후 DSn의 ODS의 디코딩이 시작되는 것을 의미한다. 따라서, ODS1의 디코딩은 PCS의 DTS로 나타낸 시간에 개시된다. 반면, DS0의 최종 ODS인 ODSn의 디코딩은 DS0의 END의 PTS로 나타낸 시간에 종료된다. 여기서, WDS의 DTS, PDS, 및 DS0의 최상부 ODS는 대신 DS0의 PCS의 DTS보다 늦도록 설정될 수 있다는 것에 유의해야 한다.
DS1의 PCS의 DTS는 DS0의 END의 PTS로 나타낸 시간과 같거나 더 늦다. 따라서, DS1의 ODS의 디코딩이 DS1의 PCS의 DTS로 나타낸 시간에 시작되는 경우, DS0와 DS1은 파이프라인 디코딩 모델에서 병렬로 처리될 수 있다.
다음은 이러한 파이프라인 처리에서 그래픽스 플레인의 렌더링 프로세스를 검토한다.
DSN과 DSn+1이 병렬로 처리되는 경우, DSn에 대한 디코딩에 의해 취득한 그래픽스 오브젝트와 DSn+1에 대한 디코딩에 의해 취득한 그래픽스 오브젝트는 동시에 그래픽스 플레인에 기입될 수 있으며, 이는 DSn의 그래픽스 오브젝트를 화면에 표시하는데 실패를 가져온다.
이를 방지하기 위하여, DSn의 PCS의 PTS와 DSn+1의 PCS의 PTS는 다음과 같이 설정될 필요가 있다.
PTS(DSn[PCS]) + (90,000 × ∑SIZE(DSn[WDS].Window[i]))//256,000,000
≤ PTS(DSn+1[PCS])
여기서, ∑SIZE(DSn[WDS].Window[i])는 Window[i]의 총 사이즈이고, (90,000 × ∑SIZE(DSn[WDS].Window[i]))//256,000,000는 Window[i]에 렌더링하는데 필요한 시간이다. 이와 같이 DSn+1의 그래픽스 오브젝트의 표시시간을 지연함으로써, DSn+1의 그래픽스 오브젝트가 DSn의 그래픽스 오브젝트에 겹쳐쓰기되는 것을 방지한다. 도 24는 이 식에 따른 DS0 내지 DS2의 PCS의 PTS를 보여준다.
윈도의 사이즈가 그래픽스 플레인의 1/4인 경우, PTS(DSn[PCS])와 PTS(DSn+1[PCS]) 사이의 간격은 비디오 스트림의 한 프레임 주기와 동등하다.
다음은 DSn의 PCS의 액티브 기간의 중복에 대한 제약을 설명한다. 하나의 DS에 속하는 그래픽스 오브젝트가 업데이트를 이루도록 바로 앞선 DS에 속하는 그래픽스 오브젝트와 동일한 object_id를 가지고 있다면, 이들 DS의 PCS의 액티브 기간은 중복될 수 없다. DS0는 object_id=1인 ODS를 포함하고, DS1은 동일한 object_id=1을 갖는 ODS를 포함한다고 가정한다.
이러한 DS0과 DS1의 PCS의 액티브 기간이 중복한다면, DS1의 ODS가 재생장치(200)에 로드되고 DS0의 끝 이전에 디코드된다. 이 경우, DS0의 그래픽스 오브젝 트는 DS1의 그래픽스 오브젝트에 의해 겹쳐 쓰인다. 이것은 DS1의 그래픽스 오브젝트가 DS0의 그래픽스 오브젝트 대신에 화면에 나타나도록 한다. 이를 방지하기 위하여, DS의 PCS의 액티브 기간의 중복은 그래픽스 업데이트의 경우 금지된다.
도 25(a)는 두 DS가 파이프라인으로 처리될 수 있는 경우를 보여주고, 도 25(b)는 두 DS가 파이프라인으로 처리될 수 없는 경우를 보여준다. 이들 도면에서, DS0는 ODSA와 ODSB를 가지며, DS1은 ODSC와 ODSD를 갖는다. DS1의 ODSC 및 ODSD가 DS0의 ODSA 및 ODSB와 다른 object_id를 갖는다면, DS0와 DS1의 PCS의 액티브 기간은 도 25(a)에 도시된 바와 같이 중복될 수 있다. 반면, DS1의 ODSC 및 ODSD가 DS0의 ODSA 및 ODSB와 동일한 object_id를 갖는다면, DS0와 DS1의 PCS의 액티브 기간은 도 25(b)에 도시된 바와 같이 중복될 수 없다.
이러한 제약은 "전송 가속(transfer acceleration)"이라는 다음의 방법에 의해 극복될 수 있다. 예를 들어, DS0가 object_id=1인 ODSA를 포함하고 DS1이DS0의 ODSA를 업데이트하기 위한 ODSC를 포함하는 경우, DS1의 ODSC는 최초 object_id=1과 다른 object_id를 부여받는다. DS1의 ODSC의 그래픽스 오브젝트가 오브젝트 버퍼에 저장된 후에만, ODSC의 object_id는 object_id=1로 변경되어 DS0의 ODSA의 그래픽스 오브젝트를 겹쳐 쓴다. 이러한 방법에 의하면, 상기의 제약은 극복된다. 즉, 오브젝트 버퍼의 이전의 그래픽스 오브젝트를 업데이트 하기 위한 그래픽스 오브젝트는 이전의 그래픽스 오브젝트가 표시되기를 기다리지 않고 오브젝트 버퍼에 로드될 수 있다.
상기한 방법은 그래픽스 업데이트에 이용될 수 있기 때문에, 하나의 DS는 그 자신의 PCS에 의해 참조되는 ODS 뿐만 아니라 이어지는 DS의 PCD에 의해 참조되는 ODS를 종종 실행할 수 있다. 이 경우, 어떤 ODS가 DS에 속하는지를 재생장치(200)에 지시할 필요가 있다. 그렇게 하기 위하여, DS의 실행된 모든 ODS 이후에 END가 위치한다. 재생장치(200)는 DS의 END를 참조하여 DS에 속하는 ODS의 끝을 검출한다.
도 26은 END로 나타낸 ODS의 전송의 끝을 보여준다. 도면에서, 첫 번째 레벨은 하나의 DS에 속하는 기능 세그먼트를 보여주고, 두 번째 레벨은 이들 기능 세그먼트의 BD-ROM(100)의 배열을 보여준다. PCS, WDS, PDS, 및 ODS와 같은 기능 세그먼트는 TS 패킷으로 변환되고 똑같이 TS 패킷으로 변환된 비디오 스트림과 함께 BD-ROM(100)에 기록된다.
기능 세그먼트에 대응하는 TS 패킷과 비디오 스트림에 대응하는 TS 패킷 각각은 ATS라 불리는 타임스탬프와 PCS가 주어진다. 기능 세그먼트에 대응하는 TS 패킷과 비디오 스트림에 대응하는 TS 패킷은 동일한 타입스탬프를 갖는 TS 패킷이 서로 인접하도록 BD-ROM(100)에 배열된다.
이것은, DS에 속하는 PCS, WDS 및 PDS는, 비디오 스트림에 대응한 TS 패킷(도면에서 문자 V로 나타냄)이 이들 사이에 삽입되기 때문에, BD-ROM(100)에서 연속되지 않다는 것을 의미한다. 기능 세그먼트에 대응하는 TS 패킷이 BD-ROM(100)에 간격을 두고 나타나는 경우, 어떤 TS 패킷이 DS에 속하는지까지 즉시 검출하는 것은 어렵다. 또한, DS는 DS의 PCS에 의해 참조되지 않는 ODS를 포함할 수 있으며, 이는 검출을 더욱 어렵게 만든다. 그러나, 이 실시예에서, DS에 속하는 최종 ODS 이후에 END가 제공된다. 따라서, DS에 속하는 기능 세그먼트가 간격을 두고 나타날 때에도, 어떤 ODS가 DS에 속하는지까지 검출하는 것은 용이하다.
도 27은 액티브 기간 중복과 object_id 부여 사이의 관계를 보여준다. 도 27(a)는 네 개의 DS(DS0, DS1, DS2, 및 DS3)를 보여준다. DS0의 PCS는 어떠한 그래픽스 오브젝트라도 디스플레이를 기술하지 않는다. DS1의 PCS는 화면상의 오브젝트 X와 Y의 디스플레이를 기술하고, DS2의 PCS는 화면상의 오브젝트 A, Y, 및 C의 디스플레이를 기술하며, DS3의 PCS는 화면상의 오브젝트 D의 디스플레이를 기술한다.
도 27(b)는 DS에 속하는 ODS와 DS의 PCS의 액티브 기간을 보여준다. DS0은 오브젝트 X의 ODS를 포함한다. DS1은 오브젝트 Y의 ODS를 포함한다. DS2는 오브젝트 A, B, 및 C의 ODS를 포함한다. DS3은 오브젝트 D의 ODS를 포함한다. 네 개의 DS 각각에서 표시된 그래픽스 오브젝트와 전달된 ODS 사이의 불일치는 상기한 전송 가속에 기여할 수 있다. 이들 DS의 PCS의 액티브 기간은 부분적으로 중복된다. 도 27(c)는 오브젝트 버퍼의 그래픽스 오브젝트의 배열을 보여준다.
object_id 0, 1, 2, 3, 및 4가 오브젝트 X Y, A, B, 및 C에 각각 할당된다고 가정하자. 이와 같이 함으로써, DS3에 속하는 오브젝트 D는 object_id 5, 3, 및 0 중 어느 것이든 할당될 수 있다.
object_id 5는, 이 object_id가 DS0 내지 DS2에 할당되지 않기 때문에, 가능하다.
object_id 3은, 이 object_id를 갖는 오브젝트 B가 DS2에 포함되지만 어떠한 DS든 PCS에 의해 참조되지 않으므로, 가능하다.
object_id 0은, 이 object_id를 갖는 오브젝트 X가 DS1에 표시되기 때문에, 가능하다. DS1의 PCS의 액티브 기간이 이미 종료되어 있는 한, 오브젝트 X 대신에 오브젝트 D를 표시하는 문제는 일어나지 않을 것이다.
반대로, 오브젝트 D에 object_id 1, 2, 및 4 중 어느 것이든 할당하는 것은 불가능하다. 이러한 object_id 중 어느 것이든 오브젝트 D에 할당되면, 오브젝트 D는 DS2에 표시될 세 개의 오브젝트 A, Y, 및 C 중 어느 것을 대신하여 표시되게 될 것이다.
따라서, 오브젝트 D는, DS3의 PCS의 액티브 기간과 중복하는 DS의 PCS의 액티브 기간에 참조되지 않은 오브젝트 또는 그것의 액티브 기간이 이미 종료한 DS이 PCS에 의해 참조되는 오브젝트와 동일한 object_id가 할당될 수 있다.
DSn과 DSn+1의 PCS의 액티브 기간의 중복은 DSn과 DSn+1이 그래픽스 스트림에서 동일한 Epoch에 속한다는 전제조건에 기초한다. DSn와 DSn+1이 다른 Epoch에 속한다면, DSn과 DSn+1의 PCS의 액티브 기간은 중복될 수 없다. 이것은, DSn+1의 PCS나 ODS가 DSn의 PCS의 액티브 기간이 종료하기 전에 로드되면, DSn의 PCS의 액티브 기간의 끝에서 오브젝트 버퍼와 그래픽스 플레인을 씻어내는 것이 불가능하게 되기 때문이다.
DSn이 EPOCHm의 최종 DS(이하, "EPOCHm DSlast[PCS]"라 함)이고 DSn+1이EPOCHm+1의 최상부 DS(이하, "EPOCHm+1 DSfirst[PCS]"라 함)인 경우, DSn과 DSn+1의 PCS의 PTS는 다음 식을 만족할 필요가 있다.
PTS(EPOCHm DSlast[PCS]) ≤ DTS(EPOCHm+1 DSfirst[PCS])
또한, DSn과 DSn+1의 PCS의 액티브 기간의 중복은 그래픽스 스트림이 프리젠테이션 그래픽스 스트림이라는 전제조건에 기초한다. 두 가지 종류의 그래픽스 스트림, 즉 프리젠테이션 그래픽스 스트림과, 대화형 디스플레이를 만들도록 주로 의도된 대화형 그래픽스 스트림이 있다.
DSn과 DSn+1이 대화형 그래픽스 스트림에 속하면, DSn과 DSn+1의 중복은 금지된다. 대화형 그래픽스 스트림에서, 세그먼트 실행 제어정보는 대화형 합성 세그먼트(ICS)로 불린다. 따라서, DSn과 DSn+1의 시간정보는, DSn+1의 ICS의 액티브 기간이 DSn의 ICS의 액티브 기간 바로 이후에 시작되도록, 설정될 필요가 있다. DSn의 ICS의 액티브 기간의 끝은 DSn의 ICS의 PTS로 나타내고, DSn+1의 ICS의 액티브 기간의 시작은 DSn+1의 ICS의 DTS로 나타낸다. 여기서, PTS(DSn[ICS])와 DTS(DSn+1[ICS])는 다음 식을 만족할 필요가 있다.
PTS(DSn[ICS]) ≤ DTS(DSn+1[ICS])
이것으로 DSn의 PCS의 액티브 기간의 중복에 대한 설명을 완료한다.
지금까지 설명한 디스플레이 세트(PCS, WDS, PDS, ODS)의 데이터 구조는 프로그래밍 언어로 기술된 클래스 구조체의 인스턴스(Instance)이며, 편집을 행하는 제작자는, Blu_ray Disc Read Only Format에 규정된 구문에 따라 클래스 구조체를 기술함으로써, BD-ROM 상의 이들의 데이터 구조를 얻을 수 있다. 이상이 본 발명에 관한 기록매체의 실시 예이다. 이어 본 발명에 관한 재생장치의 실시 예에 대하여 설명한다.
도 28은 본 발명에 관한 재생장치의 내부구성을 도시한 도면이다. 본 발명에 관한 재생장치는 본 도면에 도시한 내부에 의거하여 공업적으로 생산된다. 본 발명에 관한 재생장치는, 주로 시스템 LSI와, 드라이브 장치, 마이크로 컴퓨터 시스템이라는 3개의 파트로 이루어지고, 이들 파트를 장치의 캐비닛 및 기판에 실장 함으로써 공업적으로 생산할 수 있다. 시스템 LSI는 재생장치의 기능을 담당하는 다양한 처리부를 집적한 집적회로이다. 이렇게 생산되는 재생장치는, BD 드라이브, 리드 버퍼(Read Buffer)(2), PID 필터(3), 트랜스포트 버퍼(Transport Buffer)(4a, b, c), 주변회로(4d), 비디오 디코더(5), 비디오 플레인(6), 오디오 디코더(7), 그래픽스 플레인(8), CLUT부(9), 가산기(10), 그래픽스 디코더(12), 코디드 데이터 버퍼(Coded Data Buffer)(13), 주변회로(13a), 스트림 그래픽스 프로세서(Stream Graphics Processor)(14), 오브젝트 버퍼(object Buffer)(15), 콤포지션 버퍼(Composition Buffer)(16), 그래픽스 컨트롤러(Graphics Controller)(17)로 구성된다.
BD-ROM 드라이브(1)는 BD-ROM의 로딩/리드/이젝트를 행하고, BD-ROM에 대한 액세스를 실행한다.
리드 버퍼(2)는 FIFO 메모리이고, BD-ROM에서 판독된 TS 패킷이 선입선출(先入先出)식으로 저장된다.
PID 필터(3)는 리드 버퍼(2)에서 출력되는 복수의 TS 패킷에 대하여 필터링을 행한다. PID 필터(3)에 의한 필터링은 TS 패킷 중 원하는 PID를 갖는 것만을 트랜스포트 버퍼(4a, b, c)에 기록함으로써 이루어진다. PID 필터(3)에 의한 필터링에서는 버퍼링은 필요하지 않다. 따라서, PID 필터(3)에 입력된 TS 패킷은 시간지연 없이 트랜스포트 버퍼(4a, b, c)에 기록된다.
트랜스포트 버퍼(4a, b, c)는 PID 필터(3)로부터 출력된 TS 패킷을 선입선출 식으로 저장해 두는 메모리이다. 이 트랜스포트 버퍼(4a)로부터 TS 패킷이 인출되는 속도를 속도 Rx로 한다.
주변회로(4d)는 트랜스포트 버퍼(4a, b, c)로부터 판독된 TS 패킷을 기능 세그먼트로 변환하는 처리를 행하는 와이어 로직(Wire-Logic)이다. 변환에 의해 얻어진 기능 세그먼트는 코디드 데이터 버퍼(13)에 저장된다.
비디오 디코더(5)는 PID 필터(3)로부터 출력된 복수의 TS 패킷을 복호하여 비 압축 방식의 픽처를 얻어서 비디오 플레인(6)에 기록한다.
비디오 플레인(6)은 동영상용 플레인 메모리이다.
오디오 디코더(7)는 PID 필터(3)로부터 출력된 TS 패킷을 복호화하여 비 압축방식의 오디오 데이터를 출력한다.
그래픽스 플레인(8)은 한 화면 분의 영역을 갖는 플레인 메모리이고, 한 화면 분의 비 압축 그래픽스를 저장할 수 있다.
CLUT부(9)는 그래픽스 플레인(8)에 저장된 비 압축 그래픽스에서의 인덱스 컬러를 PDS에 나타내는 Y, Cr, Cb 값에 의거하여 변환한다.
가산기(10)는 CLUT부(9)에 의해 색 변환된 비 압축 그래픽스에 PDS에 제시되는 T값(투명율)을 곱하고, 비디오 플레인(6)에 저장된 비 압축 상태의 픽처 데이터와 화소별로 가산하여 합성화상을 얻어서 출력한다.
그래픽스 디코더(12)는 그래픽스 스트림을 디코드하여 비 압축 그래픽스를 얻어서, 이것을 그래픽스 오브젝트로서 그래픽스 플레인(8)에 기록한다. 그래픽스 스트림의 디코드에 의해 자막이나 메뉴가 화면상에 나타나게 된다.
그래픽스 디코더(12)에 의한 파이프라인은, DSn에 속하는 그래픽스 오브젝트를 오브젝트 버퍼(15)에 기록하는 처리, DSn+1에 속하는 그래픽스 오브젝트를 오브젝트 버퍼(15)에서 판독하는 처리를 동시에 실행함으로써 파이프라인이 실행된다.
이 그래픽스 디코더(12)는 코디드 데이터 버퍼(13), 주변회로(13a), 스트림 그래픽스 프로세서(14), 오브젝트 버퍼(15), 콤포지션 버퍼(16), 그래픽스 컨트롤러(17)로 구성된다.
코디드 데이터 버퍼(13)는 기능 세그먼트가 DTS, PTS와 함께 저장되는 버퍼이다. 이러한 기능 세그먼트는 트랜스포트 버퍼(4a, b, c)에 저장된 트랜스포트 스트림의 각 TS 패킷에서, TS 패킷 헤더, PES 패킷 헤더를 제거하고, 페이로드를 순차적으로 배열함으로써 얻어진 것이다. 제거된 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)에 의한 디코드는 순간적으로 행해지며, 디코드에 의해, 스트림 그래픽스 프로세서(14)는 그래픽스 오브젝트를 일시적으로 보유한다. 스트림 그래픽스 프로세서(14)에 의한 디코드는 순간적으로 이루어지지만, 스트림 그래픽스 프로세서(14)로부터 오브젝트 버퍼(15)로의 기록은 순간적으로 끝나지 않는다. BD-ROM 규격의 플레이어 모델에서는, 오브젝트 버퍼(15)로의 기록은 128Mbps라는 전송 레이트로 이루어지기 때문이다. 오브젝트 버퍼(15)로의 기록 완료시점은 END 세그먼트의 PTS에 나타나므로, 이 END 세그먼트의 PTS에 나타나는 시점이 경과할 때까지 다음 DS에 대한 처리를 기다리게 된다. 각 ODS를 디코드함으로써 얻은 그래픽스 오브젝트의 기록은 그 ODS에 관련된 DTS의 시각에 개시하고, ODS에 관련된 PTS에 나타나는 디코드 종료 시각까지 종료한다.
기록 시에 있어서, DSn측의 그래픽스 데이터와 DSn+1 측의 그래픽스 데이터에 할당되어 있는 object_id가 별개인 경우, 스트림 그래픽스 프로세서(14)는 DSn측의 그래픽스 데이터와 DSn+1 측의 그래픽스 데이터를 오브젝트 버퍼(15)에서의 다른 영역에 기록한다. 이로 인해 DSn의 PCS에 의해 참조되는 그래픽스 오브젝트는 DSn+1에 속하는 그래픽스 오브젝트에 의해 오버라이트 되지 않고, 파이프라인으로 표시에 제공된다. 양 그래픽스 오브젝트에 할당되어 있는 Object_id가 동일한 경우, 상기 스트림 그래픽스 프로세서(14)는 오브젝트 버퍼(15)에서 선행 DS측의 그래픽스 데이터가 저장되어 있는 영역과 동일한 영역에 후속 DS측의 그래픽스 데이터를 오버라이트 한다. 이러한 경우 파이프라인은 행하지 않는다. 또, DS에 속하는 그래픽스 오브젝트에는 동일 DS의 PCS에 의해 참조되어 있는 것과 참조되지 않은 것이 있다. 스트림 그래픽스 프로세서(14)는 PCS에 의해 참조되어 있는 그래픽스 오브젝트 뿐만 아니라 참조되지 않은 그래픽스 오브젝트를 차례로 디코드하여, 디코드에 의해 얻은 그래픽스를 오브젝트 버퍼(15)에 저장한다.
오브젝트 버퍼(15)는 ETSI EN 300 743 표준규격에서의 픽셀 버퍼에 상당하는 버퍼로, 스트림 그래픽스 프로세서(14)의 디코드에 의해 얻은 그래픽스 오브젝트가 배치된다. 오브젝트 버퍼(15)는 그래픽스 플레인(8)의 2배/4배의 크기로 설정하지 않으면 안 된다. 왜냐하면, 스크롤링(Scrolling)을 실현하는 경우를 고려하면, 그래픽스 플레인(8)의 2배, 4배의 그래픽스 오브젝트를 저장해두지 않으면 안 되기 때문이다.
콤포지션 버퍼(16)는 PCS, PDS가 배치되는 메모리이다. 처리해야 할 디스플레이 세트가 2개 있으며, 이들 유효구간이 중복해 있는 경우, 콤포지션 버퍼(16)에는 처리해야 할 PCS가 복수 저장되어 있다.
그래픽스 컨트롤러(17)는 PCS의 해독을 행하고, PCS의 해독결과에 따라 그래픽스 오브젝트의 오브젝트 버퍼(15)로의 기록 및 오브젝트 버퍼(15)로부터의 그래 픽스 오브젝트의 판독을 행하여, 그래픽스 오브젝트의 표시를 실행한다. 그래픽스 컨트롤러(17)에 의한 표시는 PCS를 저장한 PES 패킷의 PTS에 나타나는 시점에서 실행된다.
오브젝트 C에 의한 화면구성을 실행함에 있어서, 그래픽스 컨트롤러(17)는 이하의 처리를 행한다. 그래픽스 컨트롤러(17)는 오브젝트 C에 기술된 그래픽스 오브젝트 식별자의 참조 값 (object_id_ref)를 판독하고, 그 object_id_ref에 의해 지시되는 그래픽스 오브젝트 중, object_cropping_horizontal_position, object_ cropping_vertical_position에서, object_cropping_width, object_cropping_height에 나타나는 크롭 범위를 절취하여 그래픽스 플레인의 object_horizontal_ position, object_vertical_position에 의해 표시되는 위치에 기록한다. 이 참조 값이 오브젝트 C와 동일한 디스플레이 세트에 속하는 그래픽스 오브젝트를 나타내고 있는 경우, 동일한 디스플레이 세트에 속하는 ODS가 디코드 된 후가 아니면 상술한 그래픽스 플레인으로의 기록은 행할 수 없다.
한편, 오브젝트 C가 속하는 디스플레이 세트의 Composition_state가 Normal Case인 경우, 디코드에 의해 얻어진 그래픽스 오브젝트가 미리 오브젝트 버퍼 내에 저장되어 있으므로, ODS의 디코드를 기다리지 않고, 상술한 그래픽스 플레인으로의 기록을 행할 수 있다.
Pallet Only Display Update 시의 그래픽스 컨트롤러(17)의 판독 처리는 다음과 같다. 디스플레이 세트가 BD-ROM에서 판독된 경우, 그래픽스 컨트롤러(17)는 PCS의 Pallet_update_flag가 "1"인지 여부를 판정한다. 만약 1이면, PCS의 pallet_id에 기술되어 있는 팔레트 데이터를 이용한 화소 값 변환을 CLUT부(9)에 명령한 후에, 오브젝트 버퍼(15)에서 그래픽스 오브젝트를 판독하고, 오브젝트 버퍼(8)에 저장해둔다. CLUT부(9)에 대한 팔레트 데이터의 설정만을 행함으로써 그래픽스의 갱신을 행하는 것이다.
이어서, PID필터(3), 트랜스포트 버퍼(4a, b, c), 그래픽스 플레인(8), CLUT부(9), 코디드 데이터 버퍼(13)~그래픽스 컨트롤러(17)를 구성하기 위한 전송 레이트, 버퍼 사이즈의 권장 값에 대하여 설명한다. 도 29는 기록 레이트 Rx, Rc, Rd, 그래픽스 플레인(8), 코디드 데이터 버퍼(13), 오브젝트 버퍼(15), 콤포지션 버퍼(16)의 사이즈를 도시한 도면이다.
오브젝트 버퍼(15)-그래픽스 플레인(8) 사이의 전송 레이트 Rc는 본 장치에서 가장 높은 전송 레이트로, 윈도 사이즈, 프레임 레이트로부터 256Mbps(=500K바이트×29.97×2)로 산출된다.
스트림 그래픽스 프로세서(14)-오브젝트 버퍼(15) 사이의 전송 레이트 Rd(Pixel Decoding Rate)는, Rc와 달리 비디오 프레임의 주기에 의한 업 데이트는 요구되지 않으며, Rc의 1/2, 1/4이면 된다. 따라서, 128Mbps, 64Mbps가 된다.
트랜스포트 버퍼(4a, b, c)-코디드 데이터 버퍼(13) 사이의 트랜스포트 버퍼 리크 레이트(Leak Rate) Rx는 압축상태인 ODS의 전송 레이트이다. 따라서, 트랜스포트 버퍼 리크 레이트는 Rd에 압축률을 곱한 전송 레이트이면 된다. ODS의 압축률을 25%로 가정하면 16Mbps(=64Mbps×25%)로 족하다.
이 도면에 나타내는 전송 레이트 버퍼 규모는 어디까지나 미니멈 스탠다드이 며, 이보다도 큰 값으로의 실장을 부정하고 있는 것은 아니다.
이상과 같이 구성된 재생장치에 있어서 각 구성요소는 파이프라인 식으로 디코드 처리를 행할 수 있다.
도 30은 재생장치에 의한 파이프라인 처리를 도시한 타이밍차트이다. 제 5 단째는, BD-ROM에서의 디스플레이 세트를 나타내고, 제 4 단째는 코디드 데이터 버퍼(13)에 대한 PCS, WDS, PDS, ODS의 판독기간을 나타낸다. 제 3 단째는 스트림 그래픽스 프로세서(14)에 의한 각 ODS의 디코드기간을, 제 2 단째는 콤포지션 버퍼(16)의 저장내용을, 제 1 단째는 그래픽스 컨트롤러(17)의 처리내용을 나타낸다.
ODS1, 2에 부여된 DTS(디코드 개시시각)는 도면 중의 t31, t32의 시점을 나타내고 있다. 디코드 개시시각이 DTS에 규정되어 있으므로, 각 ODS는 자신의 DTS에 나타나는 시각까지 코디드 데이터 버퍼(13)에 판독하지 않으면 안 된다. 따라서, ODS1의 판독은 코디드 데이터 버퍼(13)로의 ODS1의 디코드기간 dp1의 직전까지 완료하고 있다. 코디드 데이터 버퍼(13)로의 ODS2의 판독은 ODS2의 디코드기간 dp2의 직전까지 완료하고 있다.
한편, ODS1, 2에 부여된 PTS(디코드 종료 시각)는, 도면 중의 t32, t33의 시점을 나타내고 있다. 스트림 그래픽스 프로세서(14)에 의한 ODS1의 디코드는 t32까지 완료하고, ODS2의 디코드는 t33에 나타난 시각까지 완료한다. 이상과 같이, 스트림 그래픽스 프로세서(14)는, 각 ODS의 DTS에 나타난 시각까지 ODS를 코디드 데이터 버퍼(13)에 판독하고, 코디드 데이터 버퍼(13)에 판독된 ODS를 각 ODS의 PTS에 나타난 시각까지 디코드하여 오브젝트 버퍼(15)에 기록한다.
본 도면의 제 1 단째에서의 기간 cd1은 그래픽스 컨트롤러(17)가 그래픽스 플레인(8)을 클리어할 때 필요한 기간이다. 또, 기간 td1은 오브젝트 버퍼(15) 상에 얻어진 그래픽스 오브젝트를 그래픽스 플레인(8)에 기록할 때 필요한 기간이다. WDS의 PTS는 이 기록의 개시에 있어서의 데드라인을 나타내고, PCS의 PTS는 이 기록의 종료시점 및 표시 타이밍을 나타낸다. 이 PCS의 PTS에 나타난 시점이 되면, 대화화면을 구성하는 비 압축 그래픽스가 그래픽스 플레인(8) 상에 얻어진다. 이 비 압축 그래픽스의 색 변환을 CLUT부(9)가 행하도록 하고, 비디오 플레인(6)에 저장되어 있는 비 압축 픽처와의 합성을 가산기(10)가 행하도록 하면 합성화상을 얻을 수 있게 된다.
그래픽스 디코더(12)에 있어서, 그래픽스 컨트롤러(17)가 그래픽스 플레인(8)의 클리어를 실행하고 있는 동안에도 스트림 그래픽스 프로세서(14)의 디코드는 계속해서 행해진다. 이상과 같은 파이프라인 처리에 의해 그래픽스의 표시를 신속하게 실시할 수 있다.
도 30에서는 그래픽스 플레인의 클리어가 ODS의 디코드보다 빨리 끝나는 경우를 상정하였으나, 도 31은 ODS의 디코드가 그래픽스 플레인의 클리어보다 빨리 끝나는 경우를 상정한 파이프라인 처리를 나타낸 타이밍차트이다. 이 경우, ODS의 디코드가 완료한 단계에서는 그래픽스 플레인으로의 기록을 실행할 수 없고, 그래픽스 플레인의 클리어가 완료한 시점에서 디코드에 의해 얻어진 그래픽스를 그래픽스 플레인에 기록할 수 있다.
재생장치에서의 버퍼 점유량의 시간적 천이에 대하여 도 32를 참조하면서 설 명한다. 도 32는 도 28에서의 콤포지션 버퍼(16), 오브젝트 버퍼(15), 코디드 데이터 버퍼(13), 그래픽스 플레인(8)의 시간적 천이를 나타내는 타이밍차트이다. 본 도면은, 제 1 단째에서 제 4 단째까지 그래픽스 플레인(8), 오브젝트 버퍼(15), 코디드 데이터 버퍼(13), 콤포지션 버퍼(16)에서의 점유량의 시간적 천이를 나타내고 있다. 이 점유량의 시간적 천이는 횡 축을 시간 축으로 하고, 종 축을 점유량으로 한 절선 그래프의 표기로 표현하고 있다.
도 32의 제 4 단째는 콤포지션 버퍼(16)에서의 점유량의 시간적 천이를 나타낸다. 본 도면에 도시한 바와 같이, 콤포지션 버퍼(16)의 시간적 천이는, 코디드 데이터 버퍼(13)에서 출력되어, PCS가 저장됨에 따른 단조증가 vf0을 포함한다.
제 3 단째는 코디드 데이터 버퍼(13)에서의 점유량의 시간적 천이를 나타낸다. 본 도면에 나타낸 바와 같이, 코디드 데이터 버퍼(13)의 시간적 천이는, ODS가 저장됨에 따른 단조증가 Vf1, Vf2와, 저장된 ODS가 순차 스트림 그래픽스 프로세서(14)에 의해 인출됨에 따른 단조감소 Vg1, Vg2를 포함한다. 단조증가 Vf1, Vf2의 기울기는 트랜스포트 버퍼(4a, b, c)에서 코디드 데이터 버퍼(13)로의 출력 레이트 Rx에 의하고, 단조감소 Vg1, Vg2의 기울기는 스트림 그래픽스 프로세서(14)에 의한 디코드이며, 순식간에 실행된다. 즉, ODS에 대한 디코드는 순식간에 행해지며, 스트림 그래픽스 프로세서(14)는 디코드에 의해 얻은 비 압축 그래픽스를 유지한다. 스트림 그래픽스 프로세서(14)에서 오브젝트 버퍼(15)로의 전송로의 기록 레이트는 128Mbps이므로, 이 기록 레이트에 의해 오브젝트 버퍼(15)의 점유량은 증가한다.
제 2 단째는 오브젝트 버퍼(15)에서의 점유량의 시간적 천이를 나타낸다. 본 도면에 나타낸 바와 같이, 오브젝트 버퍼(15)의 시간적 천이는 스트림 그래픽스 프로세서(14)에서 출력된 ODS가 저장됨에 따른 단조증가 Vh1, Vh2를 포함한다. 단조증가 Vh1, Vh2의 기울기는 스트림 그래픽스 프로세서(14)에서 오브젝트 버퍼(15)로의 전송 레이트 Rd에 의거한다.
제 3 단째의 단조감소가 발생하는 기간 및 제 2 단째의 단조증가가 발생하는 기간이 디코드기간이다. 이 디코드기간의 시기는 ODS의 DTS에 나타나 있으며, 디코드기간의 종기(終期)는 ODS의 PTS에 나타나 있다. 이 ODS의 PTS에 나타난 기간까지 비 압축 그래픽스가 오브젝트 버퍼(15)에 저장되면, ODS에 대한 디코드는 완료하게 된다. ODS의 PTS에 나타난 기간까지 비 압축 그래픽스가 오브젝트 버퍼(15)에 저장되는 것이 필수 조건이고, 이 디코드기간에서의 단조증가, 단조감소는 어떠한 것이어도 된다.
제 1 단째는 그래픽스 플레인(8)에서의 점유량의 시간적 천이를 나타낸다. 본 도면에 도시한 바와 같이 그래픽스 플레인(8)의 시간적 천이는 오브젝트 버퍼(15)에서 출력된 디코드 끝난 ODS가 저장됨에 따른 단조증가 Vf3을 포함한다. 단조증가 Vf3의 기울기는, 오브젝트 버퍼(15)에서 그래픽스 플레인(8)으로의 전송 레이트 Rc에 의거한다. 이 단조증가의 종기는 PCS의 PTS에 나타나 있다.
ODS에 부여된 DTS, PTS, ICS에 부여된 DTS, PTS 그리고 도 29에 도시한 각 버퍼의 사이즈, 전송 레이트를 이용하면, 본 도면과 같은 그래프를 작도(作圖)함으로써, BD-ROM에 의해 공급해야 할 AVClip의 재생 시에 있어서 각 버퍼의 상태가 어떻게 변화하는가가 편집 단계에서 밝혀진다.
이 버퍼상태의 천이는 DTS, PTS에 나타나는 값을 치환함으로써 조정할 수 있으므로, 재생장치 측의 디코더의 스펙을 넘는 복호부하의 발생을 회피하거나, 재생에 있어서의 버퍼 오버플로(overflow)를 회피할 수 있다. 따라서, 재생장치의 개발에 있어서의 하드웨어, 소프트웨어의 실장이 쉬워진다.
이상이 재생장치의 내부구성이다. 이어 그래픽스 디코더(12)를 어떻게 실장 하는지에 대하여 설명한다. 그래픽스 디코더(12)는 도 33의 처리순서를 행하는 프로그램을 작성하여 CPU에 실행시킴으로써 실행할 수 있다. 이하, 도 33을 참조하면서 제어부(20)의 처리순서에 대하여 설명한다.
도 33은 기능 세그먼트의 로드 처리의 처리순서를 나타낸 플로차트이다. 본 플로차트에 있어서 SegmentK는 AVClip의 재생 시에 있어서 판독된 Segment(PCS, WDS,PDS,ODS)의 각각을 의미하는 변수이고, 무시 플래그는 이 SegmentK를 무시할지 로드할지를 절환하는 플래그이다. 본 플로차트는 무시 플래그를 0으로 초기화한 후 스텝 S21~S24, 스텝 S27~S31의 처리를 모든 SegmentK에 대하여 반복하는 루프 구조를 갖고 있다(스텝 S25, 스텝 S26).
스텝 S21은 SegmentK가 PCS인지의 여부의 판정이고, 만약 SegmentK가 PCS라면 스텝 S27, 스텝 S28의 판정을 행한다.
스텝 S22는 무시 플래그가 1인지 여부의 판정이다. 무시 플래그가 0이라면, 스텝 S23으로 이행하고, 1이라면 스텝 S24로 이행한다. 무시 플래그가 1이라면(스텝 S22에서 No), 스텝 S23에서 SegmentK를 코디드 데이터 버퍼(13)에 로드한다.
무시 플래그가 0으로 설정되어 있으면(스텝 S22가 No), 스텝 S24에 있어서 SegmentK가 무시된다. 이로 인해 DS에 속하는 기능 세그먼트는 모두 스텝 S22가 No가 되어 무시되게 된다(스텝 S24).
이와 같이, SegmentK가 무시될지 로드될지는 무시 플래그의 설정에 의해 결정된다. 스텝 S27~S31, S34, S35는 이 무시 플래그를 설정하는 처리이다.
스텝 S27은 PCS에서의 composition_state가 Acquisition Point인지 여부의 판정이다. SegmentK가 Acquisition Point라면 스텝 S28로 이행하고, SegmentK가 만약 Epoch Start거나 Normal Case라면 스텝 S31로 이행한다.
스텝 S28은 선행하는 DS가 그래픽스 디코더(12) 내의 어느 버퍼(코디드 데이터 버퍼(13), 스트림 그래픽스 프로세서(14), 오브젝트 버퍼(15), 콤포지션 버퍼(16))에 존재하는지의 판정이고, 스텝 S27이 Yes인 경우에 실행된다. 그래픽스 디코더(12) 내에 DS가 존재하지 않는 케이스란, 선두 검색이 이루어진 케이스를 말한다. 이 경우, Acquisition Point인 DS에서 표시를 개시하지 않으면 안 되므로 스텝 S30으로 이행한다(스텝 S28에서 No).
스텝 S30은 무시 플래그를 0으로 설정하고 스텝 S22로 이행한다.
그래픽스 디코더(12) 내에 DS가 존재하는 케이스란, 통상 재생이 행해진 케이스를 말한다. 이 경우 스텝 S29로 이행한다(스텝 S28에서 Yes). 스텝 S29는 무시 플래그를 1로 설정하고 스텝 S22로 이행한다.
스텝 S31은 PCS에서의 composition_state가 Normal Case인지 여부의 판정이다. 만약 Normal Case라면 스텝 S34로 이행한다. SegmentK가 Epoch Start라면, 스텝 S30에 있어서 무시 플래그를 0으로 설정한다. 스텝 S34는 스텝 S28과 동일하고, 선행하는 DS가 그래픽스 디코더(12) 내에 존재하는지의 여부를 판정한다. 만약 존재하면, 무시 플래그를 0으로 설정한다(스텝 S30). 존재하지 않으면, 원래 대화화면을 구성하는 충분한 기능 세그먼트를 얻을 수 없으므로, 무시 플래그를 1로 설정한다(스텝 S35). 이러한 플래그 설정에 의해 선행하는 DS가 그래픽스 디코더(12)에 존재하지 않는 경우, Normal Case를 구성하는 기능 세그먼트는 무시되게 된다.
DS가 도 34과 같이 다중화되어 있는 경우를 상정하여, DS의 판독이 어떻게 행해지는지를 설명한다. 도 34의 일례에서는 3개의 DS가 동영상과 다중화되어 있다. 이 3개의 DS 중, 처음의 DS1은 composition_state가 Epoch Start, DS10은 Acquisition Point, DS20은 Normal Case이다.
이러한 3개의 DS가 동영상과 다중화되어 있는 AVClip에 있어서, 픽처 데이터pt10에서의 선두검색이 화살표 am1에 나타낸 바와 같이 행해진다. 이 경우, 선두검색 위치에 가장 가까운 DS10이 도 33의 플로차트의 대상이 된다. 스텝 S27에 있어서, composition_state는 Acquisition Point로 판정되지만, 선행하는 DS는 코디드 데이터 버퍼(13) 상에 존재하지 않으므로 무시 플래그는 0으로 설정되고, 이 DS10이 도 35의 화살표 md1에 나타낸 바와 같이 재생장치의 코디드 데이터 버퍼(13)에 로드된다. 한편, 선두검색 위치가 DS10의 존재 위치보다 뒤인 경우(도 34의 화살표 am2), DS20은 Normal Case의 디스플레이 세트가고, 선행하는 DS20은 코디드 데이터 버퍼(13)에 존재하지 않으므로, 이 디스플레이 세트는 무시되게 된다(도 35의 화살표 md2).
도 36과 같이 통상 재생이 행해진 경우의 DS1, 10, 20의 로드는 도 36에 나 타낸 바와 같이 된다. 3개의 DS 중 PCS의 composition_state가 Epoch Start인 DS1은, 그대로 코디드 데이터 버퍼(13)에 로드되지만(스텝 S23), PCS의 composition_state가 Acquisition Point인 DS10에 대해서는 무시 플래그가 1로 설정되므로(스텝 S29), 이를 구성하는 기능 세그먼트는 코디드 데이터 버퍼(13)에 로드되지 않고 무시된다(도 37의 화살표 rd2, 스텝 S24). 또 DS20에 대해서는 PCS의 composition_state는 Normal Case이므로, 코디드 데이터 버퍼(13)에 로드된다(도 37의 화살표 rd3).
이어 그래픽스 컨트롤러(17)의 처리순서에 대하여 설명한다, 도 38~도 40은 그래픽스 컨트롤러(17)의 처리순서를 나타내는 플로차트이다.
스텝 S41~스텝 S44는 본 플로차트의 메인 루틴이고, 스텝 S41~스텝 S44에 규정한 어느 사상(事象, Event)의 성립을 기다린다.
스텝 S41은 현재의 재생시점이 PCS의 시각으로 되어 있는지 여부의 판정이고, 만약 되어 있으면 스텝 S45~스텝 S53의 처리를 행한다.
스텝 S45는 PCS의 composition_state가 Epoch_Start인지 여부의 판정이고, 만약 Epoch Start라면, 스텝 S46에 있어서 그래픽스 플레인(8)을 모두 클리어 한다. 그 이외이면, 스텝 S47에 있어서 WDS의 window_horizontal_position, window_vertical_position, window_width, window_height에 나타나는 윈도를 클리어한다.
스텝 S48은 스텝 S46 또는 스텝 S47에서 클리어 후에 실행되는 스텝이고, 임의의 ODSx의 PTS 시각이 이미 경과했는지 여부의 판정이다. 즉, 그래픽스 플레 인(8) 전체의 클리어에 있어서는, 그 클리어 시간에 장시간을 소비하므로, 어떤 ODS(ODSx)의 디코드가 이미 완료해 있는 것도 있다. 스텝 S48은 그 가능성을 검증하고 있다. 만약, 경과하고 있지 않으면 메인 루틴으로 복귀한다. 어느 ODS의 디코드 시각을 경과하고 있으면, 스텝 S49~스텝 S51을 실행한다. 스텝 S49는 Object_cropped_flag가 0을 나타내고 있는지 여부의 판정이고, 만약 0을 나타내고 있으면, 그래픽스 오브젝트를 비 표시로 한다(스텝 S50).
만약 0을 표시하고 있지 않으면, object_cropping_horizontal_position, object_cropping_vertical_position, cropping_width, cropping_height에 의거하여 크롭된 그래픽스 오브젝트를 그래픽스 플레인(8)의 window에서 object_horizontal_ position, object_vertical_position에 나타나는 위치에 기록한다(스텝 S51). 이상의 처리에 의해, 윈도에 1개 이상의 그래픽스 오브젝트가 묘사되게 된다.
스텝 S52는 다른 ODSy의 PTS 시각이 경과했는지 여부의 판정이다. ODSx를 그래픽스 플레인(8)에 기록하고 있을 때, 다른 ODS의 디코드가 이미 완료하고 있으면, 이 ODSy를 ODSx로 하여(스텝 S53) 스텝 S49로 이행한다. 이로 인해, 다른 ODS에 대해서도 스텝 S49~S51의 처리가 반복해서 행해진다.
이어, 도 39를 참조하여 스텝 S42, 스텝 S54~스텝 S59에 대하여 설명한다.
스텝 S42는 현재의 재생시점이 WDS의 PTS인지 여부의 판정이고, 만약 WDS의 PTS라면, 스텝 S54에 있어서 윈도가 1개인가 여부를 판정하고, 만약 2개라면 메인루틴에 복귀한다. 윈도가 1개라면 스텝 S55~스텝 S59의 루프처리를 행한다. 이 루프처리는 윈도에 표시되는 2개의 그래픽스 오브젝트 각각에 대하여 스텝 S57~스텝 S59를 실행하는 것이다. 스텝 S57은 object_cropped_flag가 0을 나타내고 있는지의 여부의 판정이고, 만약 0을 나타내고 있으면 그래픽스 오브젝트를 비 표시로한다(스텝 S58).
만약 0을 나타내고 있지 않으면, object_cropping_horizontal_position, object_cropping_vertical_position, cropping_width, cropping_height에 의거하여 크롭된 그래픽스 오브젝트를 그래픽스 플레인(8)의 window에서 object_horizontal_ position, object_vertical_position에 나타나는 위치에 기록한다(스텝 S59). 이상의 처리를 반복하면 윈도에 1개 이상의 그래픽스 오브젝트가 묘사되게 된다.
스텝 S44은 현재의 재생시점이 PCS의 PTS에 나타나는 시점인지 여부의 판정이고, 만약 그렇다면, 스텝 S60에서 Pallet_update_flag가 1을 나타내고 있는지의 여부를 판정한다. 만약 1을 나타내고 있으면 pallet_id에 나타나는 PDS를 CLUT부에 설정한다(스텝 S61). 0을 나타내고 있으면 스텝 S61을 스킵한다.
그 후, 그래픽스 플레인(8)에서의 그래픽스 오브젝트의 색 변환을 CLUT부에 행하도록 해서 동화상과 합성한다(스텝 S62).
이어, 도 40을 참조해서 스텝 S43, 스텝 S64~스텝 S66에 대하여 설명한다.
스텝 S43은 현재의 재생시점이 ODS의 PTS인지 여부의 판정이고, 만약 ODS의 PTS라면, 스텝 S63에서 윈도가 2개인지의 여부를 판정한다. 만약 1개이면 메인 루틴으로 복귀한다.
스텝 S43 및 스텝 S63의 판정은 이하의 의미를 갖는다. 즉, 윈도가 2개 있는 경우, 각각의 윈도에는 1개씩 그래픽스 오브젝트가 표시된다. 그렇게 하면, 각각의 ODS의 디코드가 완료한 때마다, 디코드에 의해 얻은 그래픽스 오브젝트를 그래픽스 플레인에 기록해 가는 처리가 필요하게 된다(예:도 19(b)의 케이스). 이에 현재시점이 ODS의 PTS에 나타나는 시점이고, 윈도가 2개이면 각각의 그래픽스 오브젝트를 그래픽스 플레인에 기록하기 위해 스텝 S64~스텝 S66을 실행한다. 스텝 S64는 object_cropped_flag가 0을 나타내고 있는지 여부의 판정이고, 만약 나타내고 있으면, 그래픽스 오브젝트를 비 표시로 한다(스텝 S65).
만약 0을 표시하고 있지 않으면, object_cropping_horizontal_position, object_cropping_vertical_position, cropping_width, cropping_height에 의거하여 크롭된 그래픽스 오브젝트를 그래픽스 플레인(8)의 window에서 object_horizontal_ position, object_vertical_position에 나타나는 위치에 기록한다(스텝 S66). 이상의 처리를 반복하면 각 윈도에 그래픽스 오브젝트가 묘사되게 된다.
이 실시예에 의하면, 하나의 디스플레이 세트의 처리는 바로 앞선 디스플레이 세트의 제어 세그먼트의 액티브 기간 중에 시작된다. 다시 말해, 디스플레이 세트의 처리는 바로 앞선 디스플레이 세트의 처리가 완료되기를 기다리지 않고 개시될 수 있다. DS의 처리가 시작되는 타이밍은, 바로 앞선 디스플레이 세트의 제어 세그먼트의 액티브 기간 중, 바로 앞선 디스플레이 세트의 그래픽스의 디코딩과 전송이 완료되는 때이다. 따라서, 디스플레이 세트의 처리는 바로 앞선 디스플레이 세트의 그래픽스의 전송 완료부터 바로 앞선 디스플레이 세트의 제어 세그먼트의 액티브 기간의 끝까지의 시간만큼 앞당길 수 있다.
디스플레이 세트의 처리가 이와 같이 바로 앞선 디스플레이 세트의 제어 세 그먼트의 액티브 기간 중에 시작되는 경우라도, 디스플레이 세트의 그래픽스 오브젝트가 오브젝트 버퍼에 기입되는 시간은 바로 앞선 디스플레이 세트의 그래픽스 오브젝트가 오브젝트 버퍼에 기입되는 시간과 중복되지 않는다. 따라서, 판독과 기입이 동시에 이루어질 수 있는 듀얼 포트 메모리가 오브젝트 버퍼로 이용되는 한, 둘 이상의 디스플레이 세트는 단일 스트림 그래픽스 프로세서로 파이프라인 처리될 수 있다. 이러한 파이프라인 처리는, 재생장치(200)의 내부구조를 복잡하게 하지 않고, 디스플레이 세트의 처리 효율을 향상시킨다.
(제 2 실시 예)
본 실시 예는 BD-ROM의 제조공정에 관한 실시 예이다. 도 41은 제 1 실시 예에 나타낸 PCS를 작성하기 위한 제조공정을 도시한 도면이다.
BD-ROM의 제작공정은 동영상 녹화, 음성 수록 등의 소재작성을 행하는 소재 제작공정(S201), 편집장치를 이용하여 애플리케이션 포맷을 생성하는 편집공정(S202), BD-ROM의 원반을 작성하고, 프레스·접합을 행하여 BD-ROM을 완성시키는 프레스 공정(S203)을 포함한다.
이들 공정 중 BD-ROM을 대상으로 한 편집 공정은 이하의 스텝 S204~스텝 S210을 포함한다.
스텝 S204에 있어서, 제어정보, 윈도 정의정보, 팔레트 정의정보, 그래픽스를 기술하고, 스텝 S205에서는, 제어정보, 윈도 정의정보, 팔레트 정의정보, 그래픽스를 기능 세그먼트로 변환한다. 그리고 스텝 S206에 있어서, 동기하고자 하는 픽처가 출현하는 타이밍에 의거하여 PCS의 PTS를 설정하고, 스텝 S207에서는, PTS[PCS]의 값에 의거하여 DTS[ODS], PTS[ODS]를 설정한다. 스텝 S208에 있어서, DTS[ODS]의 값에 의거하여 DTS[PCS], PTS[PDS], DTS[WDS], PTS[WDS]를 설정하고, 스텝 S209에서는, 플레이어 모델에서의 각 버퍼의 점유량의 시간적 천이를 그래프화한다. 스텝 S210에서는, 그래프화된 시간적 천이가 플레이어 모델의 제약을 만족하는지 여부를 판정하고, 만약 만족하지 않으면 스텝 S211에서의 각 기능 세그먼트의 DTS, PTS를 치환한다. 만약 만족하면 스텝 S212에서 그래픽스 스트림을 생성하고, 스텝 S213에서 그래픽스 스트림을 별도로 생성된 비디오 스트림, 오디오 스트림과 다중화하여 AVClip를 얻는다. 이후, AVClip을 BD-ROM의 포맷에 적합하도록 함으로써 애플리케이션 포맷을 완성한다.
(비고)
이상의 설명은 본 발명의 모든 실시행위의 예를 나타내고 있는 것은 아니다. 하기 (A) 내지 (O)의 변경을 실시한 실시행위의 예에 의해서도 본 발명의 실시는 가능하다. 본원의 청구항에 기재된 각 발명은 이상에 기재한 복수의 실시 예 및 이들 변형 예를 확장한 기재 및 일반화한 기재로 되어있다. 확장 내지 일반화의 정도는 본 발명의 기술분야의 출원 당시의 기술수준의 특성에 의거한다.
(A) 모든 실시 예에서는 본 발명에 관한 기록매체를 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, Clip! 등의 자기기록 디스크(i), ORB, Jaz, SparQ, SyJet, EZFley, 마이크로 드라이브 등의 리무버블 하드디스크 드라이브(ii)라도 좋다. 또한, 기기내장형 하드디스크라도 좋다.
(B) 모든 실시 예에서의 재생장치는 BD-ROM에 기록된 AVClip을 디코드한 후 TV에 출력하였으나, 재생장치를 BD-ROM 드라이브만으로 하고 그 이외의 구성요소를 TV에 구비하도록 해도 되며, 이 경우, 재생장치와 TV를 IEEE1394로 접속된 홈네트워크에 내장할 수 있다. 또, 실시 예에서의 재생장치는 텔레비전과 접속해서 이용하는 타입이지만, 디스플레이와 일체형으로 된 재생장치라도 된다. 또한, 각 실시 예의 재생장치에 있어서 처리의 본질적 부분을 이루는 시스템 LSI(집적회로)만을 실시하여도 된다. 이들 재생장치 및 집적회로는 모두 본원 명세서에 기재된 발명이므로, 이들 중 어느 하나의 형태라도, 제 1 실시 예에 제시한 재생장치의 내부구성을 기초로 재생장치를 제조하는 행위는 본원 명세서에 기재된 발명의 실시행위가 된다. 제 1 실시 예에 제시한 재생장치의 유상·무상에 의한 양도(유상의 경우는 판매, 무상의 경우는 증여가 된다), 대여, 수입하는 행위도 본 발명의 실시행위이다. 점포 앞 전시, 카탈로그 권유, 팸플릿 배포에 의해 이들의 양도나 대여를 일반 사용자에게 요청하는 행위도 본 재생장치의 실시행위이다.
(C) 각 플로차트에 나타낸 프로그램에 의한 정보처리는 하드웨어 자원을 이 용하여 구체적으로 실현되어 있으므로, 상기 플로차트에 처리순서를 나타낸 프로그램은 단일체로 발명으로 성립한다. 모든 실시 예는 재생장치에 내장된 형태로 본 발명에 관한 프로그램의 실시행위에 대한 실시 예를 제시하였으나, 재생장치에서 분리하여, 제 1 실시 예에 제시한 프로그램 단일체를 실시하여도 된다. 프로그램 단일체의 실시행위에는, 이들 프로그램을 생산하는 행위(1)나, 무상·유상에 의해 프로그램을 양도하는 행위(2), 대여하는 행위(3), 수입하는 행위(4), 쌍방향의 전자통신회선를 경유하여 공중에 제공하는 행위(5), 점포 앞 전시, 카탈로그 권유, 팸플릿 배포에 의해 프로그램의 양도나 대여를 일반 사용자에게 요청하는 행위(6)가 있다.
(D) 각 플로차트에 있어서 시계열로 실행되는 각 스텝의 「시간」의 요소를 발명을 특정하기 위한 필수사항으로 생각한다. 그렇다면, 이들 플로차트에 의한 처리순서는 재생방법의 사용형태를 개시하고 있음을 알 수 있다. 각 스텝의 처리를 시계열로 행함으로써, 본 발명의 본래의 목적을 달성하고, 작용 및 효과를 얻을 수 있도록 이들 플로차트의 처리를 행하는 것이라면, 본 발명에 관한 기록방법의 실시행위에 해당하는 것은 말할 것도 없다.
(E) BD-ROM에 기록함에 있어서, AVClip을 구성하는 각 TS 패킷에는 확장 헤더를 부여해 두는 것이 바람직하다. 확장 헤더는 TP_extra_header라고 불리고, 『Arrival_Time_Stamp』와『copy_permission_indicator』를 포함하여 4 바이트의 데이터 길이를 갖는다. TP_extra_header부착 TS 패킷(이하 EX부착 TS 패킷이라 한다)은, 32개마다 그룹화되어서 3개의 섹터에 기록된다. 32개의 EX부착 TS 패킷으로 이 루어지는 그룹은 6144 바이트(=32×192)이고, 이는 3개의 섹터 사이즈 6144 바이트(=2048×3)와 일치한다. 3개의 섹터에 수납된 32개의 EX부착 TS 패킷을 "Aligned Unit"라고 한다.
IEEE1394를 통하여 접속된 홈네트워크에서의 이용시에 있어서, 재생장치는 이하와 같은 송신처리로 Aligned Unit의 송신을 행한다. 즉, 송신 측 기기는 Aligned Unit에 포함되는 32개의 EX부착 TS 패킷의 각각에서 TP_extra_header를 제거하고, TS 패킷 본체를 DTCP 규격에 기초하여 암호화하여 출력한다. TS 패킷의 출력에 있어서는 TS패킷 사이의 수개소에 등시성(isochronous) 패킷을 삽입한다. 이 삽입 장소는 TP_extra_header의 Arrival_Time_Stamp에서 나타내는 시각에 근거한 위치이다. TS패킷의 출력에 따라 재생장치는 DTPC_Descriptor를 출력한다. DTPC_Descriptor은, TP_extra_header에서의 복제 허가 여부 설정을 나타낸다. 여기서 「복제금지」를 나타내도록 DTCP_Descriptor를 기술해 놓으면, IEEE1394를 통하여 접속된 홈네트워크에서의 이용시에 있어서 TS 패킷은 다른 기기에 기록되지 않는다.
(F) 각 실시 예에서의 디지털 스트림은 BD-ROM규격의 AVClip이었으나, DVD-Video 규격, DVD-Video Recording 규격의 VOB(Video Object)라도 된다. VOB는 비디오 스트림, 오디오 스트림을 다중화함으로써 얻어진 ISO/IECI13818-1 규격 준거의 프로그램 스트림이다. 또, AVClip에서의 비디오 스트림은 MPEG4나 WMV방식이어도 된다. 또, 오디오 스트림은 Linear-PCM방식, Dolby-AC3방식, MP3방식, MPEG-AAC방식, dts방식이라도 된다.
(G) 각 실시 예에서의 영화작품은 아날로그 방송으로 방송된 아날로그 영상신호를 인코드함으로써 얻어진 것이라도 좋다. 디지털 방송으로 방송된 트랜스포트 스트림으로 구성되는 스트림 데이터라도 좋다.
또, 비디오 테이프에 기록되어 있는 아날로그/디지털 영상신호를 인코드하여 콘텐츠를 얻어도 된다. 또한, 비디오 카메라에서 직접 취득한 아날로그/디지털 영상신호를 인코드하여 콘텐츠를 얻어도 된다. 그 외에도, 배신서버에 의해 배신되는 디지털 저작물이라도 된다.
(H) 제 1 실시 예 ~ 제 2 실시 예에 나타낸 그래픽스 오브젝트는 런 렝스 부호화된 라스터 데이터(Raster Data)이다. 그래픽스 오브젝트의 압축·부호화 방식에 런 렝스 부호 방식을 채용한 것은, 런 렝스 부호화는 자막의 압축·신장에 가장 적합하기 때문이다. 자막에는 동일 화소 값의 수평방향의 연속길이가 비교적 길어지는 특성이 있고, 런 렝스 부호화에 의한 압축을 행하면 높은 압축률을 얻을 수 있다. 또, 신장을 위한 부하도 가벼워서, 복호처리의 소프트웨어화에 적합하기 때문이다, 그러나, 그래픽스 오브젝트에 런 렝스 부호화 방식을 채용하고 있다는 것은 본 발명의 필수사항은 아니며, 그래픽스 오브젝트는 PNG 데이터라도 된다. 또, 라스터 데이터가 아니라, 벡터 데이터라도 되며, 더 나아가 투명한 도안이라도 된다.
(I) PCD에 의한 표시효과의 대상은 장치 측의 언어설정에 따라 선택된 자막의 그래픽스라도 좋다. 이로 인해, 현상의 DVD에서 동화상 본체에서 표현한 것과 같은 문자를 이용한 표시효과를 장치 측의 언어설정에 따라 표시된 자막 그래픽스 로 실현할 수 있으므로, 실용상의 가치는 높다.
또, PCS에 의한 표시효과의 대상은 장치 측의 디스플레이 세트에 따라 선택된 자막 그래픽스라도 된다. 즉, 와이드비전, 팬 앤드 스캔(pan and scan), 레터 박스(letterbox)용이라는 다양한 표시모드용 그래픽스가 BD-ROM에 기록되어 있으며, 장치 측은 자신에게 접속된 텔레비전의 설정에 따라 이들 중 어느 하나를 선택해서 표시한다. 이 경우, 그렇게 표시된 자막 그래픽스에 대하여 PCS에 의거한 표시효과를 행하므로 보기 좋게 된다. 이로 인해, 동영상 본체로 표현하는 것과 같은 문자를 이용한 표시효과를 장치 측의 디스플레이 세트에 따라서 표시된 자막으로 실현할 수 있으므로, 실용상의 가치는 크다.
(J) 제 1 실시 예에서는, 그래픽스 플레인으로의 기록 레이트(Rc)는, 1 비디오 프레임 내에 그래픽스 플레인 클리어 및 재묘사가 가능해지도록, 윈도의 사이즈를 전체의 25%로 정하였으나, 이들 클리어·재묘사가 수직귀선기간에 완수하도록 Rc를 정하여도 된다. 수직귀선기간은 1/29.93초의 25%로 가정하면, Rc는 1Gbps가 된다. Rc를 이와 같이 설정함으로써 그래픽스 표시는 원활하게 행해지므로, 실용상의 효과는 크다.
또, 수직귀선기간에서의 기록에 더해, 라인 스캔에 동기한 기록을 병용하여도 된다. 이로 인해 Rc=256Mbps의 기록 레이트라도 원활한 표시의 실현이 가능해진다.
(K) 각 실시 예에서 재생장치에는 그래픽스 플레인을 실장 하였으나, 이 그래픽스 플레인에 대신하여, 1 라인 분의 비 압축 화소를 저장하는 라인 버퍼를 구 비하여도 된다. 영상신호로의 변환은 수평 행(라인)별로 이루어지므로 이 라인 버퍼만 구비하고 있으면, 이 영상신호로의 변환은 이루어지기 때문이다.
(L) 그래픽스인 자막은 영화의 대사를 나타내는 문자열로 하여 설명을 진행하였으나, 동영상과 치밀하게 동기하여 표시되는 것이면 어떠한 것이라도 좋다. 예를 들어, 일러스트나 도안, 캐릭터, 심벌마크를 묘사하여도 된다. 상표를 구성하는 도형, 문자, 색채의 조합이나, 나라의 문장(紋章), 기장(旗章), 기장(記章), 국가가 채용하는 감독/증명용 공공의 기호·인장, 정부 간·국제기관의 문장, 기장(旗章), 기장(記章), 특정상품의 원산지 표시를 포함하여도 된다.
(M) 제 1 실시 예에서는 자막을 화면의 상측, 하측에 가로로 표시하고, 윈도를 그래픽스 플레인의 상측, 하측으로 정의하였으나, 자막을 화면의 우측, 좌측에 표시하고, 윈도를 그래픽스 플레인의 우측, 좌측에 정의하여도 된다. 이렇게 함으로써, 일본어 자막을 세로로 표시할 수 있다.
(O) 그래픽스 디코더(12)가 DSn 및 DSn+1에 대한 처리를 파이프라인 식으로 행하는 것은, DSn 및 DSn+1이 그래픽스 스트림에서의 동일한 Epoch에 귀속해 있는 경우이고, 상기 DSn 및 DSn+1이 서로 다른 Epoch에 속해 있는 경우, DSn에서의 그래픽스 표시를 개시한 후에 DSn+1에 대한 처리를 개시한다.
또, 그래픽스 스트림에는, 동영상과의 동기를 주목적으로 한 프레젠테이션 계의 것이 있고, 대화적인 표시를 주목적으로 한 인터랙티브 계의 것이 있으며, 상기 그래픽스 디코더는 그래픽스 스트림이 프레젠테이션 계의 경우 2개의 DS에 대한 파이프라인 식으로 행하고, 그래픽스 스트림이 인터랙티브 계인 경우 2개의 DS에 대한 파이프라인 식으로 행하지 않는다.
상술한 변경 실시는 가능하지만, 청구항에 기재된 각 발명은 종래기술의 기술적 과제를 해결하기 위한 수단을 반영한 것으로, 청구항에 기재된 각 발명의 기술범위는 종래기술의 기술적 과제 해결이 당업자에 의해 인식되는 기술범위를 넘지 않는다. 따라서, 본원의 청구항에 기재된 각 발명은 상세한 설명의 기재와 실질적인 대응관계를 갖는다.
본 발명에 관한 기록매체 및 재생장치는 상기 실시 예에 내부구성이 개시되어 있으며, 이 내부구성에 의거하여 공업적으로 양산하는 것이 가능하므로, 자질에 있어서 공업상 이용할 수 있다. 이로 인해 본 발명에 관한 기록매체 및 재생장치는 산업상 이용 가능성을 갖는다.
도 1은 본 발명에 관한 기록매체의 사용행위에 대한 형태를 나타내는 도면이다.
도 2는 BD-ROM의 구성을 도시한 도면이다.
도 3은 AVClip이 어떻게 구성되어 있는가를 모식적으로 도시한 도면이다.
도 4(a)는 프레젠테이션 그래픽스 스트림의 구성을 도시한 도면이다.
도 4(b)는 기능 세그먼트를 변환함으로써 얻어진 PES 패킷을 도시한 도면이다.
도 5는 다양한 종별의 기능 세그먼트에 의해 구성되는 논리구조를 도시한 도면이다.
도 6은 자막의 표시위치와 Epoch의 관계를 도시한 도면이다.
도 7(a)는 ODS에 의한 그래픽스 오브젝트의 정의를 도시한 도면이다.
도 7(b)는 PDS의 데이터 구조를 도시한 도면이다.
도 8(a)는 WDS의 데이터 구조를 도시한 도면이다.
도 8(b)는 PCS의 데이터 구조로 구성된다.
도 9는 자막표시를 실현하기 위한 Display Set의 기술 예이다.
도 10은 DS1에서의 WDS, PCS의 기술 예를 도시한 도면이다.
도 11은 DS2에서의 PCS의 기술 예를 도시한 도면이다.
도 12는 DS3에서의 PCS의 기술 예를 도시한 도면이다.
도 13은 도 10~도 12에 도시한 바와 같은 그래픽스 업 데이트를 실현함에 있 어서의 오브젝트 버퍼에서의 메모리 공간을 도시한 도면이다.
도 14는 decode_duration의 계산 알고리즘의 일례를 도시한 도면이다.
도 15는 도 14의 프로그램의 알고리즘을 도식화한 플로차트이다.
도 16(a)(b)는 도 14의 프로그램의 알고리즘을 도식화한 플로차트이다.
도 17(a)는 1개의 window에 1개의 ODS가 존재하는 케이스를 상정한 도면이다.
도 17(b)(c)는 도 14에서 인용한 각 수치의 시간적인 전후 관계를 도시한 타이밍차트이다.
도 18(a)는 1개의 window에 2개의 ODS가 존재하는 케이스를 상정한 도면이다.
도 18(b)(C)는 도 14에서 인용한 각 수치의 시간적인 전후 관계를 도시한 타이밍차트이다.
도 19(a)는 2개의 window 각각에 ODS가 1개씩 존재하는 케이스를 상정한 타이밍차트이다.
도 19(b)는 디코드기간(2)이 클리어 기간(1)+기록기간(31)보다 길어지는 케이스를 도시한 타이밍차트이다.
도 19(c)는 클리어 기간(1)+기록기간(31)이 디코드기간(2)보다 길어지는 케이스를 도시한 타이밍차트이다.
도 20은 하나의 DS의 콘텐츠의 처리를 보여준다.
도 21은 두 개의 DS가 파이프라인 디코더 모델에서 병렬로 어떻게 처리되는 지를 보여준다.
도 22는 세 개의 DS의 PCS의 액티브 기간을 중복한 일 예를 보여준다.
도 23은 각 DS의 기능 세그먼트의 타임스탬프(Time Stamp)에 대한 설정을 도시한 도면이다.
도 24는 각 DS의 PCS의 타임스탬프를 보여준다.
도 25(a)는 두 DS의 PCS의 액티브 기간이 중복되는 경우를 보여준다.
도 25(b)는 두 DS의 PCS의 액티브 기간이 중복되지 않는 경우를 보여준다.
도 26은 전송의 완료를 나타내는 END 세그먼트를 보여준다.
도 27(a) 내지 27(c)는 액티브 기간 중복과 object_id 부여 사이의 관계를 보여준다.
도 28은 본 발명에 관한 재생장치의 내부구성을 도시한 도면이다.
도 29는, 기록 레이트(Rx, Rc, Rd), 그래픽스 플레인(8), 코디드 데이터 버퍼(Coded Data Buffer)(13), 오브젝트 버퍼(Object Buffer)(15), 콤포지션 버퍼(Composition Buffer)(16)의 사이즈를 나타낸 도면이다.
도 30은 재생장치에 의한 파이프라인 처리를 도시한 타이밍차트이다.
도 31은 ODS의 디코드가 그래픽스 플레인의 클리어보다 빨리 끝나는 경우를 상정한 파이프라인 처리를 도시한 타이밍차트이다.
도 32는 콤포지션 버퍼(16), 오브젝트 버퍼(15), 코디드 데이터 버퍼(13), 그래픽스 플레인(8)에서의 축적량의 시간적 천이를 도시한 타이밍차트이다.
도 33은 기능 세그먼트의 로드 처리의 처리순서를 도시한 플로차트이다.
도 34는 다중화의 일례를 도시한 도면이다.
도 35는 DS10이 재생장치의 코디드 데이터 버퍼(13)에 로드된 상태를 도시한 도면이다.
도 36은 통상 재생이 행해지는 경우를 도시한 도면이다.
도 37은 도 36과 같이 통상 재생이 행해진 경우의 DS1, 10, 20의 로드를 도시한 도면이다.
도 38은 그래픽스 컨트롤러(Graphics Controller)(17)의 처리순서를 도시한 플로차트이다.
도 39는 그래픽스 컨트롤러(17)의 처리순서를 도시한 플로차트이다.
도 40은 그래픽스 컨트롤러(17)의 처리순서를 도시한 플로차트이다.
도 41은 제 1 실시 예에 나타낸 PCS가 기록된 BD-ROM을 제조하기 위한 제조공정을 도시한 도면이다.

Claims (5)

  1. 비디오 스트림(Video Stream)과 그래픽스 스트림(Graphics Stream)을 다중화함으로써 생성된 디지털 스트림이 기록된 기록매체로,
    상기 그래픽스 스트림은 각각 그래픽스 표시를 위해 사용되는 복수의 디스플레이 세트를 포함하고, 그래픽스 스트림 내의 디스플레이 세트는 PCS(Presentation Composition Segment)를 포함함으로써, PCS에 의거하여 그래픽스 화면을 구성하는 기능을 기기가 발휘하도록 하는 것이며,
    상기 디스플레이 세트는, PCS와, 그래픽스 오브젝트를 정의하기 위한 ODS(Object Definition Segment)와, WDS(Window Definition Segment), 및 END 세그먼트를 포함하고,
    상기 PCS는, 상기 비디오 스트림의 재생시간 축 상에서 상기 디스플레이 세트의 상기 PCS의 액티브 기간을 지정하는 시간정보를 구비하며,
    각 세그먼트는 패킷에 포함되고,
    상기 시간정보는 PCS를 저장한 패킷에 부가된 디코딩 타임 스탬프(time stamp)와 프리젠테이션 타임 스탬프이며, 디코딩 타임스탬프는 PCS의 디코드를 언제 개시하는가를 기기에 지시하고, 프리젠테이션 타임스탬프는 PCS에 의거하여 구성된 그래픽스 화면의 표시를 언제 개시하는가를 기기에 지시하며,
    상기 그래픽스 스트림의 n번째 디스플레이 세트 DSn이 메모리 관리유닛 EPOCHm의 최종 디스플레이 세트 DSlast이고, 바로 이어지는 디스플레이 세트 DSn+1이 메모리 관리유닛 EPOCHm+1의 최상 디스플레이 세트 DSfirst이면, PTS(EPOCHm DSlast[PCS])과 DTS(EPOCHm+1 DSfirst[PCS])는 다음 관계식을 만족하며,
    PTS(EPOCHm DSlast[PCS]) ≤ DTS(EPOCHm+1 DSfirst[PCS])
    그래픽스 스트림은 드라이브에 의해서 액세스 됨으로써 재생장치의 그래픽스 디코더 내의 버퍼에 판독되고, PCS는 그래픽스 디코더 내의 컨트롤러에 의한 참조에 제공되며, ODS는 그래픽스 디코더 내의 프로세서에 의해 디코더에 제공됨으로써 당해 컨트롤러가 그래픽스 표시기능을 발휘하도록 하는 것인 것을 특징으로 하는 기록매체.
    여기서, PTS(EPOCHm DSlast[PCS])는 상기 최종 디스플레이 세트 EPOCHm.DSlast의 PCS를 포함하는 패킷의 프리젠테이션 타임 스탬프이고, DTS(EPOCHm+1 DSfirst[PCS])는 상기 최상 디스플레이 세트 EPOCHm+1.DSfirst의 PCS를 포함하는 패킷의 디코딩 타임 스탬프이다.
  2. 기록매체로부터 디지털 스트림을 판독하여, 상기 디지털 스트림에 다중화된 비디오 스트림과 그래픽스 스트림을 재생하는 재생장치로,
    상기 비디오 스트림을 디코드하여 동영상을 생성하는 비디오 디코더(5); 및
    상기 그래픽스 스트림을 디코드하여 그래픽스 오브젝트를 생성하는 그래픽스 디코더(12)를 포함하며,
    상기 그래픽스 스트림은 각각 그래픽스 표시를 위해 사용되는 복수의 디스플레이 세트를 포함하고,
    상기 디스플레이 세트는, PCS(Presentation Composition Segment)와 그래픽스 오브젝트를 정의하기 위한 ODS(Object Definition Segment)를 포함하고,
    상기 PCS는, 상기 비디오 스트림의 재생시간 축 상에서 상기 디스플레이 세트의 상기 PCS의 액티브 기간을 지정하는 시간정보를 구비하며,
    각 세그먼트는 패킷에 포함되고,
    상기 시간정보는 패킷에 기록된 디코딩 타임 스탬프(time stamp)와 프리젠테이션 타임 스탬프를 포함하고,
    연속하는 디스플레이 세트 DSn과 DSn+1이 상기 그래픽스 스트림의 서로 다른 메모리 관리유닛에 속하면, 상기 그래픽스 디코더(12)는, 상기 디스플레이 세트 DSn의 PCS에 기초하여 합성된 그래픽스 디스플레이의 표시가 개시되는 시각 또는 그 이후에 상기 디스플레이 세트 DSn+1을 처리하기 시작하며,
    상기 디스플레이 세트 DSn이 메모리 관리유닛 EPOCHm의 최종 디스플레이 세트 DSlast이고, 상기 디스플레이 세트 DSn+1이 메모리 관리유닛 EPOCHm+1의 최상 디스플레이 세트 DSfirst이면, PTS(EPOCHm DSlast[PCS])과 DTS(EPOCHm+1 DSfirst[PCS])는 다음 관계식을 만족하는 것을 특징으로 하는 재생장치.
    PTS(EPOCHm DSlast[PCS]) ≤ DTS(EPOCHm+1 DSfirst[PCS])
    여기서, PTS(EPOCHm DSlast[PCS])는 상기 최종 디스플레이 세트 EPOCHm.DSlast의 PCS를 포함하는 패킷의 프리젠테이션 타임 스탬프이고, DTS(EPOCHm+1 DSfirst[PCS])는 상기 최상 디스플레이 세트 EPOCHm+1.DSfirst의 PCS를 포함하는 패킷의 디코딩 타임 스탬프이다.
  3. 디지털 스트림을 기록매체에 기록하는 기록방법으로,
    디지털 스트림을 기록매체에 기록함에 있어서, 비디오 스트림과 그래픽스 스트림의 다중화를 하고,
    그래픽스 스트림을 기록매체에 기록함에 있어서, 그래픽스 화면을 실현하는 복수의 디스플레이 세트를 그래픽스 스트림에 포함시키며,
    상기 디스플레이 세트는, PCS(Presentation Composition Segment)와, 그래픽스 오브젝트를 정의하기 위한 ODS(Object Definition Segment)와, WDS(Window Definition Segment), 및 END 세그먼트를 포함하고,
    PCS를 기록매체에 기록함에 있어서, PCS에 시간정보를 포함시키며, 시간정보는 비디오 스트림의 재생시간 축 상에서 동일 디스플레이 세트에 속하는 PCS의 액티브 기간을 지정하는 정보이며,
    각 세그먼트는 패킷에 포함되고,
    상기 시간정보는 패킷에 기록된 디코딩 타임 스탬프(time stamp)와 프리젠테이션 타임 스탬프를 포함하고,
    상기 그래픽스 스트림의 n번째 디스플레이 세트 DSn이 메모리 관리유닛 EPOCHm의 최종 디스플레이 세트 DSlast이고, 바로 이어지는 디스플레이 세트 DSn+1이 메모리 관리유닛 EPOCHm+1의 최상 디스플레이 세트 DSfirst이면, PTS(EPOCHm DSlast[PCS])과 DTS(EPOCHm+1 DSfirst[PCS])는 다음 관계식을 만족하는 것을 특징으로 하는 기록방법.
    PTS(EPOCHm DSlast[PCS]) ≤ DTS(EPOCHm+1 DSfirst[PCS])
    여기서, PTS(EPOCHm DSlast[PCS])는 상기 최종 디스플레이 세트 EPOCHm.DSlast의 PCS를 포함하는 패킷의 프리젠테이션 타임 스탬프이고, DTS(EPOCHm+1 DSfirst[PCS])는 상기 최상 디스플레이 세트 EPOCHm+1.DSfirst의 PCS를 포함하는 패킷의 디코딩 타임 스탬프이다.
  4. 기록매체로부터 디지털 스트림을 판독하고, 상기 디지털 스트림에 다중화된 비디오 스트림과 그래픽스 스트림을 재생하는 프로세스를 컴퓨터상에서 구현하는 재생방법으로,
    상기 비디오 스트림을 디코딩하여 동영상을 생성하는 단계; 및
    상기 그래픽스 스트림을 디코딩하여 그래픽스 오브젝트를 생성하는 단계를 포함하며,
    상기 그래픽스 스트림은 각각 그래픽스 표시를 위해 사용되는 복수의 디스플레이 세트를 포함하고,
    상기 디스플레이 세트는, PCS(Presentation Composition Segment)와 그래픽스 오브젝트를 정의하기 위한 ODS(Object Definition Segment)를 포함하고,
    상기 PCS는, 상기 비디오 스트림의 재생시간 축 상에서 상기 디스플레이 세트의 상기 PCS의 액티브 기간을 지정하는 시간정보를 구비하며,
    각 세그먼트는 패킷에 포함되고,
    상기 시간정보는 패킷에 기록된 디코딩 타임 스탬프(time stamp)와 프리젠테이션 타임 스탬프를 포함하고,
    연속하는 디스플레이 세트 DSn과 DSn+1이 상기 그래픽스 스트림의 서로 다른 메모리 관리유닛에 속하면, 상기 그래픽스 스트림을 디코딩하는 단계는, 상기 디스플레이 세트 DSn의 PCS에 기초하여 합성된 그래픽스 디스플레이의 표시가 개시되는 시각 또는 그 이후에 상기 디스플레이 세트 DSn+1을 처리하기 시작하며,
    상기 디스플레이 세트 DSn이 메모리 관리유닛 EPOCHm의 최종 디스플레이 세트 DSlast이고, 상기 디스플레이 세트 DSn+1이 메모리 관리유닛 EPOCHm+1의 최상 디스플레이 세트 DSfirst이면, PTS(EPOCHm DSlast[PCS])과 DTS(EPOCHm+1 DSfirst[PCS])는 다음 관계식을 만족하는 것을 특징으로 하는 재생방법.
    PTS(EPOCHm DSlast[PCS]) ≤ DTS(EPOCHm+1 DSfirst[PCS])
    여기서, PTS(EPOCHm DSlast[PCS])는 상기 최종 디스플레이 세트 EPOCHm.DSlast의 PCS를 포함하는 패킷의 프리젠테이션 타임 스탬프이고, DTS(EPOCHm+1 DSfirst[PCS])는 상기 최상 디스플레이 세트 EPOCHm+1.DSfirst의 PCS를 포함하는 패킷의 디코딩 타임 스탬프이다.
  5. 기록매체로부터 디지털 스트림을 판독하고, 상기 디지털 스트림에 다중화된 비디오 스트림과 그래픽스 스트림을 재생하는 기능을 컴퓨터가 실행하도록 하는 프로그램을 저장한 컴퓨터 판독 가능한 기록매체로,
    상기 프로그램은 상기 컴퓨터가,
    상기 비디오 스트림을 디코딩하여 동영상을 생성하는 기능; 및
    상기 그래픽스 스트림을 디코딩하여 그래픽스 오브젝트를 생성하는 기능을 실행하도록 하며,
    상기 그래픽스 스트림은 각각 그래픽스 표시를 위해 사용되는 복수의 디스플레이 세트를 포함하고,
    상기 디스플레이 세트는, PCS(Presentation Composition Segment)와 그래픽스 오브젝트를 정의하기 위한 ODS(Object Definition Segment)를 포함하고,
    상기 PCS는, 상기 비디오 스트림의 재생시간 축 상에서 상기 디스플레이 세트의 상기 PCS의 액티브 기간을 지정하는 시간정보를 구비하며,
    각 세그먼트는 패킷에 포함되고,
    상기 시간정보는 패킷에 기록된 디코딩 타임 스탬프(time stamp)와 프리젠테이션 타임 스탬프를 포함하고,
    연속하는 디스플레이 세트 DSn과 DSn+1이 상기 그래픽스 스트림의 서로 다른 메모리 관리유닛에 속하면, 상기 그래픽스 스트림을 디코딩하는 기능은, 상기 디스플레이 세트 DSn의 PCS에 기초하여 합성된 그래픽스 디스플레이의 표시가 개시되는 시각 또는 그 이후에 상기 디스플레이 세트 DSn+1을 처리하기 시작하며,
    상기 디스플레이 세트 DSn이 메모리 관리유닛 EPOCHm의 최종 디스플레이 세트 DSlast이고, 상기 디스플레이 세트 DSn+1이 메모리 관리유닛 EPOCHm+1의 최상 디스플레이 세트 DSfirst이면, PTS(EPOCHm DSlast[PCS])과 DTS(EPOCHm+1 DSfirst[PCS])는 다음 관계식을 만족하는 것을 특징으로 하는 컴퓨터 판독 가능한 기록매체.
    PTS(EPOCHm DSlast[PCS]) ≤ DTS(EPOCHm+1 DSfirst[PCS])
    여기서, PTS(EPOCHm DSlast[PCS])는 상기 최종 디스플레이 세트 EPOCHm.DSlast의 PCS를 포함하는 패킷의 프리젠테이션 타임 스탬프이고, DTS(EPOCHm+1 DSfirst[PCS])는 상기 최상 디스플레이 세트 EPOCHm+1.DSfirst의 PCS를 포함하는 패킷의 디코딩 타임 스탬프이다.
KR1020077020958A 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체 KR100882078B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US48684403P 2003-07-11 2003-07-11
US60/486,844 2003-07-11

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020067000486A Division KR100882075B1 (ko) 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체

Publications (2)

Publication Number Publication Date
KR20070107764A KR20070107764A (ko) 2007-11-07
KR100882078B1 true KR100882078B1 (ko) 2009-02-10

Family

ID=34062142

Family Applications (7)

Application Number Title Priority Date Filing Date
KR1020077020961A KR100882079B1 (ko) 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체
KR1020107026509A KR101051835B1 (ko) 2003-07-11 2004-07-09 기록매체, 기록방법, 재생장치 및 재생방법
KR1020077020958A KR100882078B1 (ko) 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체
KR1020077020952A KR100882076B1 (ko) 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체
KR1020067000481A KR101037025B1 (ko) 2003-07-11 2004-07-09 기록매체, 기록방법, 재생장치 및 방법
KR1020067000486A KR100882075B1 (ko) 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체
KR1020077020956A KR100882077B1 (ko) 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020077020961A KR100882079B1 (ko) 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체
KR1020107026509A KR101051835B1 (ko) 2003-07-11 2004-07-09 기록매체, 기록방법, 재생장치 및 재생방법

Family Applications After (4)

Application Number Title Priority Date Filing Date
KR1020077020952A KR100882076B1 (ko) 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체
KR1020067000481A KR101037025B1 (ko) 2003-07-11 2004-07-09 기록매체, 기록방법, 재생장치 및 방법
KR1020067000486A KR100882075B1 (ko) 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체
KR1020077020956A KR100882077B1 (ko) 2003-07-11 2004-07-09 디스플레이 세트의 병렬처리를 수행할 수 있는 재생장치, 기록매체, 기록방법, 재생방법, 및 컴퓨터 판독가능한 기록매체

Country Status (8)

Country Link
US (2) US7415192B2 (ko)
EP (2) EP1645124B1 (ko)
JP (8) JP4020952B2 (ko)
KR (7) KR100882079B1 (ko)
CN (6) CN101202091B (ko)
DE (6) DE602004010668T2 (ko)
TW (6) TWI405201B (ko)
WO (2) WO2005006747A1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1923469B1 (en) 2002-03-29 2009-12-02 Asahi Kasei Pharma Corporation Method of detecting mild impaired glucose tolerance or insulin hyposecretion
CA2629241A1 (en) * 2003-07-31 2005-02-10 Samsung Electronics Co., Ltd. Information storage medium storing graphic data and apparatus and method of processing the graphic data
KR100739676B1 (ko) 2003-07-31 2007-07-13 삼성전자주식회사 그래픽 데이터를 포함하는 정보저장매체, 그 처리장치 및처리방법
KR100561417B1 (ko) * 2004-02-09 2006-03-16 삼성전자주식회사 Av 데이터의 재생상태를 전환할 수 있는 인터랙티브그래픽 스트림을 기록한 정보저장매체, 그 재생방법 및 장치
RU2378722C2 (ru) * 2004-03-26 2010-01-10 ЭлДжи ЭЛЕКТРОНИКС ИНК. Носитель записи, способ и устройство для воспроизведения потоков текстовых субтитров
DE602005017878D1 (de) * 2004-03-26 2010-01-07 Lg Electronics Inc Aufzeichnungsmedium und verfahren und vorrichtung zum wiedergeben eines auf dem aufzeichnungsmedium aufgezeichneten textuntertitelstroms
US8249416B2 (en) * 2005-01-28 2012-08-21 Panasonic Corporation Recording medium, program, and reproduction method
KR101377736B1 (ko) * 2006-10-11 2014-03-24 코닌클리케 필립스 엔.브이. 3차원 그래픽 데이터의 생성
EP2051253A4 (en) * 2007-02-28 2010-12-29 Panasonic Corp PLAYING DEVICE, PLAY PROCESS AND SYSTEM LSI
CN101911124B (zh) 2007-12-26 2013-10-23 皇家飞利浦电子股份有限公司 用于覆盖图形对象的图像处理器
US8306387B2 (en) * 2008-07-24 2012-11-06 Panasonic Corporation Play back apparatus, playback method and program for playing back 3D video
JP4985807B2 (ja) * 2009-04-15 2012-07-25 ソニー株式会社 再生装置および再生方法
KR101537615B1 (ko) * 2009-07-17 2015-07-17 엘지전자 주식회사 기록매체, 데이터 기록/재생 방법 및 데이터 기록/재생 장치
ES2750328T3 (es) * 2010-09-30 2020-03-25 Fujitsu Ltd Dispositivo de codificación de imagen dinámica, método de codificación de imagen dinámica y programa informático para codificación de imagen dinámica
CN103152654A (zh) * 2013-03-15 2013-06-12 杭州智屏软件有限公司 低延迟的视频片段截取技术
JP6844112B2 (ja) * 2016-03-17 2021-03-17 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0924934A1 (en) * 1997-12-22 1999-06-23 Nec Corporation Coding/decoding apparatus, coding/decoding system and multiplexed bit stream
US6104706A (en) 1993-06-09 2000-08-15 Intelligence-At-Large, Inc. Method and apparatus for multiple media digital communication system
EP1214842A1 (en) 1999-09-20 2002-06-19 Tivo, Inc. Closed caption tagging system
US20030117529A1 (en) 1995-07-21 2003-06-26 Wiebe De Haan Method of video information transmission, as well as an information carrier, a device for receiving and a device for transmitting video information

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0651571B1 (en) * 1993-11-02 2000-03-15 Texas Instruments Incorporated A graphics data unit and method for a television receiver
AU701684B2 (en) * 1994-12-14 1999-02-04 Koninklijke Philips Electronics N.V. Subtitling transmission system
JP3528989B2 (ja) * 1995-01-20 2004-05-24 ソニー株式会社 データ多重化装置、データ多重化方法、多重化データ処理装置および多重化データ処理方法
CN100351911C (zh) * 1995-08-21 2007-11-28 松下电器产业株式会社 根据交互控制实现意外性场景展开的多媒体光盘再生装置
WO1997013365A1 (fr) * 1995-09-29 1997-04-10 Matsushita Electric Industrial Co., Ltd. Procede et dispositif d'enregistrement et de reproduction de train binaire intercale sur et a partir d'un support
TW436777B (en) 1995-09-29 2001-05-28 Matsushita Electric Ind Co Ltd A method and an apparatus for reproducing bitstream having non-sequential system clock data seamlessly therebetween
TW385431B (en) * 1995-09-29 2000-03-21 Matsushita Electric Ind Co Ltd A method and an apparatus for encoding a bitstream with plural possible searching reproduction paths information useful in multimedia optical disk
US5838316A (en) * 1996-01-26 1998-11-17 International Business Machines Corporation Method and system for presenting a plurality of animated display objects to a user for selection on a graphical user interface in a data processing system
TW335487B (en) 1996-02-28 1998-07-01 Matsushita Electric Ind Co Ltd A method and an apparatus for interleaving bitstream to record thereof on a recording medium, and reproducing the interleaved bitstream therefrom
JP3728344B2 (ja) 1996-03-22 2005-12-21 パイオニア株式会社 情報再生装置及び情報再生方法
JP3345414B2 (ja) * 1996-05-09 2002-11-18 松下電器産業株式会社 主映像が画面上にどのように配置されようとも、副映像をバランス良く主映像上に重ね合わせることができる記録媒体、再生装置、及び再生方法。
US5929857A (en) * 1997-09-10 1999-07-27 Oak Technology, Inc. Method and apparatus for dynamically constructing a graphic user interface from a DVD data stream
US6526214B2 (en) * 1998-04-13 2003-02-25 Oak Technology, Inc. DVD sub-picture decoder with minimal buffering
JP3058870B1 (ja) 1999-02-05 2000-07-04 株式会社次世代デジタルテレビジョン放送システム研究所 Afc回路
JP3805985B2 (ja) 1999-02-18 2006-08-09 株式会社東芝 ストリームデータの情報記憶媒体、その記録方法、再生方法、記録装置および再生装置
EP1035735A3 (en) * 1999-03-12 2007-09-05 Kabushiki Kaisha Toshiba Moving image coding and decoding apparatus optimised for the application of the Real Time Protocol (RTP)
JP3363407B2 (ja) * 1999-08-17 2003-01-08 株式会社第一興商 歌詞字幕表示装置
KR100657241B1 (ko) * 1999-09-03 2006-12-18 삼성전자주식회사 동영상 기록/재생 장치와 방법 및 기록 매체
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
EP1284986A4 (en) 2000-04-17 2005-08-24 James E Rothman COMPLEXIZING PROTEIN ANTIGENES AND HEAT SHOCK PROTEINS BY JAVELIN
EP1173031A1 (en) * 2000-07-14 2002-01-16 Deutsche Thomson-Brandt Gmbh Method and device for recording sub-titles
US7068719B2 (en) * 2001-06-01 2006-06-27 General Instrument Corporation Splicing of digital video transport streams
JP2002374494A (ja) 2001-06-14 2002-12-26 Fuji Electric Co Ltd ビデオコンテンツファイル生成システムおよびビデオコンテンツファイル検索方法。
JP3871123B2 (ja) 2001-06-16 2007-01-24 三星電子株式会社 プリロードフォント情報を有する情報貯蔵媒体、その再生装置及び再生方法
DE10130156B4 (de) * 2001-06-22 2013-08-08 Qimonda Ag Verfahren und System zur bidirektionalen Signalübertragung
CA2439048C (en) * 2001-11-30 2011-10-04 Matsushita Electric Industrial Co., Ltd. A method and an apparatus for stream conversion, a method and an apparatus for data recording, and data recording medium
JP4061567B2 (ja) 2001-12-03 2008-03-19 松下電器産業株式会社 Dvdオーディオ再生装置、及びdvdオーディオ再生方法
JP4136383B2 (ja) * 2002-01-28 2008-08-20 キヤノン株式会社 テレビ受信装置及びその制御方法
AU2003269521B2 (en) * 2002-10-15 2009-05-28 Lg Electronics Inc. Recording medium having data structure for managing reproduction of multiple graphics streams recorded thereon and recording and reproducing methods and apparatuses
US20040213542A1 (en) * 2003-04-22 2004-10-28 Hiroshi Hamasaka Apparatus and method to reproduce multimedia content for a multitude of resolution displays
CN101582982B (zh) * 2003-04-28 2011-11-09 松下电器产业株式会社 记录介质和方法、再现装置和方法、程序和集成电路
KR100897466B1 (ko) * 2003-06-30 2009-05-14 파나소닉 주식회사 기록매체, 재생장치, 기록방법, 재생방법
KR20050004339A (ko) * 2003-07-02 2005-01-12 엘지전자 주식회사 고밀도 광디스크의 그래픽 데이터 관리방법 및 그에 따른고밀도 광디스크

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6104706A (en) 1993-06-09 2000-08-15 Intelligence-At-Large, Inc. Method and apparatus for multiple media digital communication system
US20030117529A1 (en) 1995-07-21 2003-06-26 Wiebe De Haan Method of video information transmission, as well as an information carrier, a device for receiving and a device for transmitting video information
EP0924934A1 (en) * 1997-12-22 1999-06-23 Nec Corporation Coding/decoding apparatus, coding/decoding system and multiplexed bit stream
EP1214842A1 (en) 1999-09-20 2002-06-19 Tivo, Inc. Closed caption tagging system

Also Published As

Publication number Publication date
KR101037025B1 (ko) 2011-05-25
CN100576900C (zh) 2009-12-30
JP4126075B2 (ja) 2008-07-30
EP1645123B1 (en) 2007-09-12
KR20070108244A (ko) 2007-11-08
TW201115570A (en) 2011-05-01
JP4048224B2 (ja) 2008-02-20
DE602004008923T2 (de) 2008-01-17
DE602004022884D1 (de) 2009-10-08
TWI405200B (zh) 2013-08-11
TWI345232B (en) 2011-07-11
CN101202091B (zh) 2012-11-28
CN1849820A (zh) 2006-10-18
TWI405201B (zh) 2013-08-11
JP4126078B2 (ja) 2008-07-30
DE602004008923D1 (de) 2007-10-25
US7415192B2 (en) 2008-08-19
US8139915B2 (en) 2012-03-20
DE602004022885D1 (de) 2009-10-08
TWI405202B (zh) 2013-08-11
JP2007528567A (ja) 2007-10-11
WO2005006746A1 (en) 2005-01-20
CN101217675B (zh) 2011-05-04
JP2007306579A (ja) 2007-11-22
JP4510854B2 (ja) 2010-07-28
JP2007329941A (ja) 2007-12-20
WO2005006747A1 (en) 2005-01-20
CN1849821A (zh) 2006-10-18
CN101202930B (zh) 2010-09-22
JP4569931B2 (ja) 2010-10-27
JP4126076B2 (ja) 2008-07-30
TW200506839A (en) 2005-02-16
EP1645124B1 (en) 2007-12-12
KR20060039429A (ko) 2006-05-08
JP2007534182A (ja) 2007-11-22
JP2007273080A (ja) 2007-10-18
EP1645123A1 (en) 2006-04-12
KR20070108243A (ko) 2007-11-08
DE602004010668D1 (de) 2008-01-24
JP2007273081A (ja) 2007-10-18
EP1645124A1 (en) 2006-04-12
DE602004022344D1 (de) 2009-09-10
TWI405199B (zh) 2013-08-11
CN101202930A (zh) 2008-06-18
US20060222334A1 (en) 2006-10-05
CN101202091A (zh) 2008-06-18
JP4020952B2 (ja) 2007-12-12
KR100882076B1 (ko) 2009-02-10
TW201115569A (en) 2011-05-01
KR20100132081A (ko) 2010-12-16
KR100882077B1 (ko) 2009-02-10
KR101051835B1 (ko) 2011-07-25
JP4126077B2 (ja) 2008-07-30
US20090016705A1 (en) 2009-01-15
TWI363335B (en) 2012-05-01
DE602004022883D1 (de) 2009-10-08
TW201115568A (en) 2011-05-01
KR20070107763A (ko) 2007-11-07
JP2007312396A (ja) 2007-11-29
DE602004010668T2 (de) 2008-12-04
TW200511277A (en) 2005-03-16
CN101217675A (zh) 2008-07-09
KR20060041216A (ko) 2006-05-11
KR20070107764A (ko) 2007-11-07
TW201115567A (en) 2011-05-01
JP2008072726A (ja) 2008-03-27
CN1849821B (zh) 2012-06-20
CN101217676A (zh) 2008-07-09
KR100882079B1 (ko) 2009-02-10
CN101217676B (zh) 2010-09-01
KR100882075B1 (ko) 2009-02-10

Similar Documents

Publication Publication Date Title
KR101102758B1 (ko) 기록매체, 재생장치, 기록방법, 프로그램, 재생방법
JP5094986B2 (ja) 集積回路
JP4510854B2 (ja) 再生システム

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130104

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140103

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150105

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20151217

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20161220

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20171219

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20181219

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20191219

Year of fee payment: 12