KR20110126514A - 기록매체, 재생장치, 집적회로 - Google Patents

기록매체, 재생장치, 집적회로 Download PDF

Info

Publication number
KR20110126514A
KR20110126514A KR1020107017009A KR20107017009A KR20110126514A KR 20110126514 A KR20110126514 A KR 20110126514A KR 1020107017009 A KR1020107017009 A KR 1020107017009A KR 20107017009 A KR20107017009 A KR 20107017009A KR 20110126514 A KR20110126514 A KR 20110126514A
Authority
KR
South Korea
Prior art keywords
stream
information
data
file
base view
Prior art date
Application number
KR1020107017009A
Other languages
English (en)
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 KR20110126514A publication Critical patent/KR20110126514A/ko

Links

Images

Classifications

    • 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/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00094Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers
    • G11B20/00115Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers wherein the record carrier stores a unique medium identifier
    • 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/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • 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/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00246Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is obtained from a local device, e.g. device key initially stored by the player or by the recorder
    • 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/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00253Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
    • G11B20/00362Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier the key being obtained from a media key block [MKB]
    • 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
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B20/1251Formatting, e.g. arrangement of data block or words on the record carriers on discs for continuous data, e.g. digitised analog information signals, pulse code modulated [PCM] data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/172Processing image signals image signals comprising non-image signal components, e.g. headers or format information
    • H04N13/178Metadata, e.g. disparity information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/189Recording image signals; Reproducing recorded image signals
    • 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
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/10537Audio or video recording
    • 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
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B2020/1218Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc
    • G11B2020/1224Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc extent, i.e. a set of sectors which numbers form a continuous ascending sequence
    • 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/23Disc-shaped record carriers characterised in that the disc has a specific layer structure
    • G11B2220/235Multilayer discs, i.e. multiple recording layers accessed from the same side
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs

Abstract

기록매체(100)에는 플레이리스트 정보와 복수의 ES가 기록되어 있다. 플레이리스트 정보는 기본 스트림 선택테이블과 확장 스트림 선택테이블을 포함하고, 기본 스트림 선택테이블은 평면 시 재생 모드에서 재생을 허가해야 할 ES를 나타낸다.
상기 확장 스트림 선택테이블은 입체 시 재생 모드에서만 재생을 허가하는 ES를 나타낸다. 확장 스트림 선택테이블에서의 스트림 엔트리는 재생장치가 입체 시 재생 모드로 설정되어 있는 경우에 대응하는 스트림 번호가 재생장치에서의 스트림 번호 레지스터로 설정된 때에 재생장치가 다중분리에 이용해야 할 패킷 식별자를 나타낸다.

Description

기록매체, 재생장치, 집적회로{RECORDING MEDIUM, PLAYBACK DEVICE, AND INTEGRATED CIRCUIT}
본 발명은 3D 영상 및 2D 영상의 재생기술의 기술 분야에 속하는 발명이다.
2D 영상이란 표시장치의 표시화면을 X-Y평면으로 파악하여, 이 X-Y 평면상의 화소에 의해 표현되는 화상이며, 평면 시 화상(平面視 畵像, monoscopic image)이라고도 불린다.
대조적으로 3D 영상이란 표시장치의 화면에서의 X-Y 평면상의 화소에 Z축 방향의 깊이를 더한 화상이다. 3D 영상은 좌측 눈으로 시청해야 하는 레프트 뷰 영상(left-view image)과 우측 눈으로 시청해야 하는 라이트 뷰 영상(right-view image)을 함께 재생하여, 이들 레프트 뷰 영상과 라이트 뷰 영상에 의해 입체 시(steroscopic) 효과를 발휘함으로써 사용자에 의한 시청에 제공된다. 3D 영상에서의 화소 중 정의 Z축 좌표를 갖는 것은 사용자는 표시장치의 화면보다 앞쪽에 있다고 느끼고, 부의 Z축 좌표를 갖는 것은 화면보다 안쪽에 존재한다고 느낀다.
광디스크에 3D 영상을 저장하는 경우에는 2D 영상이 저장된 광디스크만을 재생할 수 있는 재생장치(이하, 「2D 재생장치」라고 부른다)와의 재생 호환성이 요구된다. 3D 영상을 저장한 광디스크를 2D 재생장치가 3D 영상을 2D 영상으로서 재생할 수 없는 경우에는 동일한 콘텐츠를 3D용 디스크와 2D용 디스크의 2 종류를 제작할 필요가 있어서 고비용이 되어 버린다. 따라서 3D 영상이 저장된 광디스크는 2D 재생장치에서는 2D 영상으로서 재생하고, 2D 영상과 3D 영상을 재생할 수 있는 재생장치(이하, 「2D/3D 재생장치」)에서는 2D 영상 혹은 3D 영상으로서 재생할 수 있을 것이 요구된다.
3D 영상이 저장된 광디스크에서의 재생 호환성을 확보하는 기술의 선행기술로는 이하의 특허 문헌 1에 기재된 것이 있다.
특허 문헌 1:일본국 특허 제 3935507호 공보
그런데 종래의 2D 재생장치와 호환성을 유지하면서 재생장치에 3D 재생 모드를 도입하려고 하면 재생 모드가 2D 재생 모드에서 3D 재생 모드로 바뀐다고 하는 사상(事象)을 스트림 선택 프로시저에서 어떻게 취급하는가가 문제가 된다.
스트림 선택 프로시저란 기록매체에 물리적으로 기록되어 있는 복수의 엘리멘터리 스트림 중 어느 것의 재생이 허가되어 있는가를 기록매체에서의 테이블(스트림 선택테이블이라고 한다)에 등록해 두고, 이 스트림 선택테이블에 등록되어 있는 스트림 중에서 다중분리의 대상이 되는 엘리멘터리 스트림의 스트림 번호를 결정하는 처리순서를 말한다.
스트림 선택 프로시저에 의해서 결정된 스트림 번호는 재생장치에서의 스트림 번호 레지스터에 저장된다. 또 스트림 선택 프로시저는 재생장치의 상태 변화가 발생한 때, 예를 들어 재생구간이 완전히 교체되거나 디스크 로딩 등이 이루어진 때에 실행된다. 여기서 종래의 2D 재생장치의 생각의 연장선에 서면, 재생 모드의 변화를 장치의 상태의 변화라고 파악하여 스트림 선택 프로시저를 실행해서 스트림 번호를 다시 설정한다고 하는 생각이 된다.
그러나 재생 모드의 변화에 수반하여 스트림 선택 프로시저가 실행되어서 새로운 스트림 번호가 스트림 번호 레지스터에 저장되면, 모드 변화 후의 스트림의 언어속성이 동일해진다는 보장은 어디에도 없다. 각 스트림이 어떤 언어속성인가는 스트림 선택테이블에서 스트림 번호로 관리되고 있으므로, 스트림 번호가 바뀌면 스트림 속성도 바뀌어 버리기 때문이다. 이 경우, 모드 변환 후에 다시 스트림을 설정한다고 하는 두 번의 수고가 필요하게 되어서 사용자의 입장에서는 사용이 불편해지게 된다.
본 발명의 목적은 재생 모드의 변환 전후에서 언어속성의 동일성을 유지할 수 있는 기록매체를 제공하는 것이다.
상기 과제를 해결하기 위해 본 발명의 기록매체는, 플레이리스트 정보와 복수의 엘리멘터리 스트림이 기록된 기록매체로, 상기 플레이리스트 정보는 기본 스트림 선택테이블과 확장 스트림 선택테이블을 포함하고, 상기 기본 스트림 선택테이블은 스트림 번호에 대응시킨, 평면 시 재생모드에서 재생되는 엘리멘터리 스트림의 리스트를 나타내고, 상기 확장 스트림 선택테이블은 상기 스트림 번호와 동일한 스트림 번호에 대응시킨, 입체 시 재생 모드에서 재생되는 엘리멘터리 스트림의 리스트를 나타내는 것을 특징으로 한다.
상술한 것과 같은 과제해결수단을 구비한 기록매체에 의하면, 재생장치의 재생 모드가 평면 시 재생 모드에서 입체 시 재생 모드로 변화한 경우에, 스트림 선택의 기준은 기본 스트림 선택테이블에서 확장 스트림 선택테이블로 전환되게 된다.
이 경우, 평면 시 재생 모드에서 입체 시 재생 모드로의 변화시에 있어서 스트림 번호 레지스터에서의 스트림 번호를 그대로 하고, 스트림의 언어속성을 변화 전후에서 유지한 채, 디코더에 공급할 스트림을 바꿀 수 있다.
이와 같이 함으로써 언어속성을 유지한 채로 평면 시 재생 모드에서 입체 시 재생 모드로 재생 모드를 변화시킬 수 있게 되고, 또 입체 시 재생모드에서 평면 시 재생 모드로 재생 모드를 변화시킬 수 있게 된다.
또, 평면 시 재생 모드에서의 스트림 선택 프로시저의 수순은 기본 스트림 선택테이블 만에 의하므로, 평면 시 재생 모드에서의 스트림 선택 프로시저의 내용은 평면 시 전용의 재생장치의 스트림 선택 프로시저의 것과 동일한 것으로 할 수 있다. 스트림 선택 프로시저의 완전 호환을 보장할 수 있으므로 입체 시 재생에 대응한 기록매체가 종래의 평면 시 전용의 재생장치에 장전된 경우의 동작의 보장을 용이하게 할 수 있다. 입체 시 재생에 대응한 기록매체가 종래의 평면 시 전용의 재생장치에 장전된 경우에 종래대로의 동작이 이루어지는 것이 보장되므로, 재생장치의 제조 주체는 입체 시 재생에 대응한 기록매체가 종래의 평면 시 전용의 재생장치에 장전됨에 따른 사용자 트러블에 말려들지 않고, 안심하고 시장에 입체 시 재생에 대응한 기록매체를 출시할 수 있다.
도 1은 기록매체, 재생장치, 표시장치, 안경의 사용행위에 대한 형태를 나타낸다.
도 2는 사용자의 얼굴을 좌측에 나타내고, 우측에 대상물인 공룡의 골격을 좌측 눈에서 본 경우의 예를 나타낸다.
도 3은 입체 시를 위한 레프트 뷰 비디오 스트림, 라이트 뷰 비디오 스트림의 내부 구성의 일례를 나타낸다.
도 4는 1plane+Offset 모드에서의 입체 시의 실현의 방법을 나타낸다.
도 5는 오프셋 값을 사용해서 크로핑하여 중첩한 후에 사용자에게 어떻게 표시되는가를 모식적으로 나타낸 도면이다.
도 6은 깊이 뷰 방식의 일례를 나타낸다.
도 7은 3D-Depth 모드로 생성되는 입체 시 화상을 나타낸다.
도 8은 제 1 실시 예의 기록매체에서의 내부 구성을 나타낸다.
도 9는 PES 패킷 열에 비디오 스트림이 어떻게 저장되는가를 나타낸다.
도 10은 메인 TS가 어떻게 다중화되는가를 모식적으로 나타낸다.
도 11은 메인 TS 및 서브 TS의 내부 구성을 나타낸다.
도 12는 플레이리스트정보의 내부 구성을 나타낸다.
도 13은 기본 스트림 선택테이블의 일례를 나타낸다.
도 14는 확장 스트림 선택테이블의 내부 구성을 나타낸다.
도 15는 확장 스트림 선택테이블에서의 스트림 등록 열을 나타낸다.
도 16은 메인 TS, 서브 TS로부터 어떤 엘리멘터리 스트림이 다중분리되는가를 나타낸다.
도 17은 기본 스트림 선택테이블, 확장 스트림 선택테이블에서의 스트림 등록 열이 어떻게 참조되는가를 나타낸다.
도 18은 모드에서의 스트림 번호의 할당 변화를 나타낸다.
도 19는 오브젝트 지향형 컴파일러언어를 이용해 확장 스트림 선택테이블을 기술하기 위한 신텍스를 나타낸다.
도 20은 재생장치의 내부 구성을 나타낸다.
도 21은 결합 스트림 등록 열에 의해서 어떤 패킷 식별자가 다중분리부에 출력되는가를 나타낸다.
도 22는 결합 스트림 등록 열에 의해서 어떤 패킷 식별자가 다중분리부에 출력되는가를 나타낸다.
도 23은 재생장치가 B-D 프레젠테이션 모드로 설정되어 있어 BD 케퍼빌리티가 존재하는 경우에서의 패킷 식별자의 참조 및 패킷출력을 나타낸다.
도 24는 재생장치가 1plane+Offset 모드로 설정되어 있는 경우에서의 패킷 식별자의 참조 및 패킷 출력을 나타낸다.
도 25는 재생장치가 2D프레젠테이션 모드로 설정되어 있는 경우에서의 패킷 식별자의 참조 및 패킷 출력을 나타낸다.
도 26은 재생장치에 B-D 프레젠테이션 모드의 케퍼빌리티가 존재하지 않는 경우에서의 패킷 식별자의 참조 및 패킷 출력을 나타낸다.
도 27은 플레이리스트 재생순서를 나타낸다.
도 28은 스트림 선택 프로시저의 처리순서를 나타낸다.
도 29는 스트림 번호에 대응하는 패킷 식별자의 출력 처리의 순서를 나타낸다.
도 30은 익스텐트와, 파일 2D/파일 베이스, 파일 디펜던트의 대응관계를 나타낸다.
도 31은 인터리브드 스트림 파일과 파일 2D/파일베이스의 관계를 나타낸다.
도 32는 입체 시 인터리브드 스트림 파일, 파일 2D, 파일베이스의 상호 관계를 나타낸다.
도 33은 2D 플레이리스트, 3D 플레이리스트를 나타낸다.
도 34는 3D 플레이리스트에, 서브패스를 하나 더 부가한 플레이리스트를 나타낸다.
도 35는 3D 플레이리스트에, 베이스 뷰 인디케이터를 추가 기입한 도면이다.
도 36은 스트림 파일로부터의 소스 패킷의 판독순서를 나타낸다.
도 37은 제 4 실시 예의 플레이아이템정보, 서브 플레이아이템을 나타낸다.
도 38은 플레이아이템정보, 서브 플레이아이템정보에 의한 멀티앵글구간의 지정을 나타낸다.
도 39는 각 앵글번호가 설정된 경우의 입체 시 영상을 나타낸다.
도 40은 스트림 참조정보, Multi_clip_entrie에 따른 스트림 파일의 판독 순서를 나타낸다.
도 41은 클립정보파일의 내부 구성을 나타낸다.
도 42은 클립정보파일에서의 엔트리 맵 테이블과 익스텐트 스타트포인트 정보를 나타낸다.
도 43은 프로그램정보에서의 스트림 속성정보를 나타낸다.
도 44는 엔트리 맵에 의한 엔트리 포인트의 등록을 나타낸다.
도 45는 입체 시 인터리브드 스트림 파일을 구성하는 데이터블록으로부터 ATC 시퀀스가 어떻게 복원되는가를 나타낸다.
도 46은 ATC 시퀀스 복원부를 구비한 판독부의 내부 구성을 나타낸다.
도 47은 ATC 시퀀스 복원 순서를 나타낸다.
도 48은 비디오 스트림의 내부 구성을 나타낸다.
도 49는 슬라이드 쇼에 대해서 설정된 엔트리 맵의 내부 구성을 나타낸다.
도 50은 슬라이드 쇼 플레이리스트의 재생순서를 나타낸다.
도 51은 다중분리부 및 비디오 디코더의 내부 구성을 나타낸다.
도 52는 3D-LR방식, 3D-Depth 방식에서의 1 디코더+2 플레인의 장치 구성을 나타낸다.
도 53은 PG 스트림의 그래픽스 디코더의 내부 구성을 나타낸다.
도 54는 텍스트 자막 디코더의 내부 구성을 나타낸다.
도 55는 IG 디코더의 디코더 모델을 나타낸다.
도 56은 디코더 모델의 출력을 3D-LR방식으로 출력하기 위한 회로 구성을 나타낸다.
도 57은 디코더 모델의 출력을 1plane+Offset 모드 방식으로 출력하기 위한 회로 구성을 나타낸다.
도 58은 다층화된 광디스크의 내부 구성을 나타낸다.
도 59는 파일시스템을 전제로 한 광디스크의 애플리케이션 포맷을 나타낸다.
도 60은 기록방법의 처리순서를 나타낸다.
도 61은 AV 파일 기입공정의 처리순서를 나타낸다.
도 62는 기록매체의 제조방법을 나타낸다.
도 63은 기록장치의 내부 구성을 나타낸다.
도 64는 2D/3D 재생장치의 구성을 나타낸다.
도 65는 시스템 타깃 디코더(4) 및 플레인 메모리 세트(5a)의 내부 구성을 나타낸다.
도 66은 레지스터 세트(10)의 내부 구성과 재생제어엔진(7b)을 나타내는 도면이다.
도 67은 출력 모드의 선택 모델의 상태천이를 나타낸다.
도 68은 Initialization의 처리순서를 나타낸다.
도 69는 Procedure when playback condition is changed의 처리순서를 나타낸다.
도 70은 3D 재생 모드 실현을 위한 player 설정 레지스터의 비트 할당을 나타낸다.
도 71은 플레인 합성부의 내부 구성을 나타낸다.
도 72는 2D용 3D용의 콘텐츠가 혼재하는 데이터와, 재생장치에서의 그 재생 방법을 나타낸다.
도 73은 2D/3D의 변환을 나타낸다.
도 74는 디펜던트 뷰의 케퍼빌리티, 3D-Depth 뷰의 케퍼빌리티를 나타낸다.
도 75는 3D 재생능력을 더 세밀하게 식별하기 위해서 확장한 시스템 파라미터를 나타낸다.
도 76은 재생장치가 3D용으로 확장된 데이터구조에 대응하고 있는지 아닌지를 식별하는 데이터베이스 식별정보를 나타낸다.
도 77은 사용자의 표시형식의 선호를 설정하는 시스템 파라미터를 나타낸다.
도 78은 현재 재생중의 표시형식을 나타내는 시스템 파라미터이다.
도 79는 3D 오프셋의 보정값을 저장해두기 위한 비트 할당을 나타낸다.
도 80은 2D나 3D의 표시형식을 바꾸는 사용자 오퍼레이션 API를 나타낸다.
도 81은 Change 3D Offset 모드 커멘드의 오피코드, 오퍼랜드를 나타낸다.
도 82는 Change3DPresentationType 커멘드를 나타낸다.
도 83은 3 모드를 위한 TS를 어떻게 파일에 저장하는가를 나타낸다.
도 84는 TS 레벨에서의 다중화를 표 형식으로 나타낸다.
도 85는 TS 패킷의 PID 할당을 나타낸다.
도 86은 프라이머리 비디오 스트림, 프라이머리 오디오 스트림을 나타낸다.
도 87은 PG 스트림, IG 스트림, 텍스트 자막 스트림을 구성하는 TS 패킷을 나타낸다.
도 88은 세컨더리 비디오 스트림, 세컨더리 오디오 스트림을 구성하는 TS 패킷을 나타낸다.
도 89는 2개의 플레이아이템을 심리스 접속하는 형태를 나타낸다.
도 90은 층 경계에서 참조 파일을 전환하기 위한 Subpath 타입을 나타낸다.
도 91은 프라이머리 비디오 스트림, 프라이머리 오디오 스트림의 스트림 등록 열의 기술방법을 나타낸다.
도 92는 PG 스트림의 스트림 등록 열의 기술방법을 나타낸다.
도 93은 IG 스트림의 스트림 등록 열의 기술방법을 나타낸다.
도 94는 세컨더리 오디오 스트림, 세컨더리 비디오 스트림의 스트림 등록 열의 기술방법을 나타낸다.
도 95는 텍스트 자막 스트림의 플레인 오프셋의 시간적 변화를 나타낸다.
도 96은 배경화상을 이루는 I 픽쳐를 나타낸다.
도 97은 2D/3D 재생장치를 집적회로를 이용해서 실현한 구성 예이다.
도 98은 스트림 처리부의 대표적인 구성을 나타내는 기능 블럭도이다.
도 99는 전환부가 DMAC인 경우의 스위칭부(653) 주변의 개념도이다.
도 100은 AV 출력부의 대표적인 구성을 나타내는 기능 블럭도이다.
도 101은 AV 출력부 혹은 재생장치의 데이터 출력 부분을 상세하게 나타내 보인 구성 예이다.
도 102는 집적회로에서의 제어버스 및 데이터버스의 배치를 나타내는 도면이다.
도 103은 집적회로에서의 제어버스 및 데이터버스의 배치를 나타내는 도면이다.
도 104는 재생장치에서의 동작순서를 간단하게 나타내 보인 플로차트(flow chart)이다.
도 105는 재생장치에서의 동작순서를 상세하게 나타내 보인 플로차트(flow chart)이다.
도면을 참조하면서, 상기 과제해결수단을 구비한 기록매체 및 재생장치의 실시 예에 대해서 설명한다. 먼저, 입체 시의 원리에 대해서 간단히 설명한다.
일반적으로 우측 눈과 좌측 눈은 그 위치의 차이에 기인하여 우측 눈으로 보이는 상과 좌측 눈으로 보이는 상에는 보이는 방법에 약간의 차이가 있다. 이 차이를 이용해서 인간은 눈에 보이는 상을 입체로서 인식할 수 있는 것이다. 입체 표시를 하는 경우에는 인간의 시차를 이용해서 평면의 화상이 마치 입체와 같이 보이도록 하고 있다.
구체적으로는, 평면표시의 화상에 있어서 우측 눈 용의 화상과 좌측 눈 용의 화상에는 인간의 시차에 상당하는 보이는 방법의 차이에 상당하는 정도의 차이가 있으며, 이들 화상을 짧은 시간간격으로 전환하여 표시함으로써 마치 입체적인 표시가 이루어지고 있는 것처럼 보이는 것이다.
이 짧은 시간간격이라고 하는 것은 상술의 전환 표시에 의해 인간이 입체적으로 보이는 것으로 착각하는 정도의 시간이면 좋다. 입체 시의 실현법으로는 홀로그래피 기술을 이용하는 방법과 시차 화상을 이용하는 방식이 있다.
먼저, 1번째의 홀로그래피 기술의 특징으로는, 인간이 통상 물체를 인식하는 것과 완전히 똑같이 물체를 입체로서 재현할 수 있으나, 동화상 생성에 관해서는 기술적인 이론은 확립해 있으나 홀로그래피용의 동화상을 리얼 타임으로 생성하는 방대한 연산량을 수반하는 컴퓨터 및 1㎜ 사이에 수천 개의 선을 그을 수 있을 만한 해상도를 가진 표시장치가 필요하지만, 현재의 기술에서의 실현은 매우 어렵고, 상용으로 실용화되어 있는 예는 거의 없다.
2번째의 시차 화상을 이용한 방식이다. 이 방식의 메리트는 고작 우측 눈 용과 좌측 눈 용의 2개의 시점의 영상을 준비하는 것만으로 입체 시를 실현할 수 있다는 점에 있고, 기술적으로는 좌우의 각각의 눈에 대응한 그림을 어떻게 하여 대응하는 눈에만 보일 수 있는가의 관점에서 계시 분리방식을 비롯한 몇 개의 기술이 실용화되어 있다. 계시 분리방식이란 좌측 눈 용 영상 및 우측 눈 용 영상을 시간 축 방향에서 교대로 표시시켜, 눈의 잔상 반응에 의해 좌우의 신을 뇌 내에서 중첩시켜서 입체 영상으로서 인식시키는 방법이다.
또, 본원 명세서에서의 재생장치는 2D 재생 모드, 3D 재생 모드라는 2개의 재생 모드를 구비하고 있고, 이들의 상호 전환을 가능하게 하는 2D/3D 재생장치(player)이다.
도 1은 기록매체, 재생장치, 표시장치, 안경의 사용행위에 대한 형태를 나타낸다. 동 도 (a)에 나타내는 것과 같이, 기록매체의 일례인 기록매체(100), 재생장치(200)는 텔레비전(300), 3D 안경(400), 리모컨(500)과 함께 홈시어터시스템을 구성하며, 사용자에 의한 사용에 제공된다.
기록매체(100)는 상기 홈시어터시스템에 예를 들어 영화작품을 공급한다.
재생장치(200)는 표시장치(300)와 접속되어 기록매체(100)를 재생한다.
표시장치(300)는 텔레비전이며, 영화작품의 재생 영상을 표시하거나 메뉴 등을 표시함으로써 대화적인 조작 환경을 사용자에게 제공한다. 본 실시형태의 표시장치(300)는 3D 안경(400)을 사용자가 착용함으로써 입체 시를 실현하는 것이나, 표시장치(300)가 렌티큘러(lenticular) 방식이면 3D 안경(400)은 불필요해진다. 렌티큘러 방식의 표시장치(300)는 화면 중의 세로방향으로 좌측 눈 용의 픽쳐와 우측 눈 용의 픽쳐를 동시에 교대로 배열하여, 표시장치의 화면 표면에 렌티큘러 렌즈라고 불리는 렌즈를 통해서 좌측 눈 용의 픽쳐를 구성하는 화소는 좌측 눈만 결상하고, 우측 눈 용의 픽쳐를 구성하는 화소는 우측 눈만 결상하도록 함으로써, 좌우의 눈에 시차가 있는 픽쳐를 보여서 입체 시를 실현하도록 한다.
3D 안경(400)은 액정셔터를 구비하며, 계시 분리방식 혹은 편광안경방식에 의한 시차 화상을 사용자에게 시청시킨다. 시차 화상이란 우측 눈에 들어오는 영상과 왼쪽 눈에 들어오는 영상으로 구성되는 1조의 영상이며, 각각의 눈에 대응한 픽쳐만이 사용자의 눈에 들어오도록 하여 입체 시를 실현하게 한다.
동 도면 (b)는 좌측 눈 용 영상의 표시시를 나타낸다. 화면상에 좌측 눈 용의 영상이 표시되고 있는 순간에 상술한 3D 안경(400)은 좌측 눈에 대응하는 액정셔터를 투과로 하고 우측 눈에 대응하는 액정셔터는 차광한다. 동 도면 (c)는 우측 눈 용 영상의 표시시를 나타낸다. 화면상에 우측 눈 용의 영상이 표시되어 있는 순간에 앞에서와 반대로 우측 눈에 대응하는 액정셔터를 투광으로 하고 좌측 눈에 대응하는 액정셔터를 차광한다.
리모컨(500)은 AV 재생을 위한 조작항목을 접수하기 위한 기기이다. 또 리모컨(500)은 계층화된 GUI에 대한 조작을 사용자로부터 접수하는 기기이며, 이 조작 접수를 위해 리모컨(500)은 GUI를 구성하는 메뉴를 호출하는 메뉴 키, 메뉴를 구성하는 GUI 부품의 포커스를 이동시키는 화살표 키, 메뉴를 구성하는 GUI 부품에 대해서 확정 조작을 하는 결정 키, 계층화된 메뉴를 더 상위의 것으로 되돌리기 위한 복귀 키, 수치 키를 구비한다.
도 1의 홈시어터시스템에서 3D 재생 모드에서의 화상표시를 표시장치(300)가 실헹하도록 하는 재생장치의 출력 모드를 "3D출력 모드"라고 한다. 2D 재생 모드에서의 화상표시를 표시장치(300)가 실행하도록 하는 재생장치의 출력 모드를 "2D출력 모드"라고 한다.
이상이 기록매체 및 재생장치의 사용형태에 대한 설명이다.
본 실시 예에서는 입체 시에 사용하는 시차 화상을 정보기록매체에 저장하는 방법을 설명한다.
시차 화상 방식은 우측 눈에 들어오는 영상과 왼쪽 눈에 들어오는 영상을 각각 준비하고, 각각의 눈에 대응한 픽쳐만이 들어가도록 하여 입체 시를 실시하는 방법이다. 도 2는 좌측에 사용자의 얼굴을 나타내고 우측에는 대상물인 공룡의 골격을 좌측 눈에서 본 경우의 예와 대상물인 공룡의 골격을 우측 눈에서 본 경우의 예를 나타내고 있다. 우측 눈 및 좌측 눈의 투광, 차광이 반복되면 사용자의 뇌 내에서는 눈의 잔상 반응에 의해 좌우의 신의 중첩이 이루어져서 얼굴의 중앙의 연장선상에 입체영상이 존재하는 것으로 인식할 수 있다.
시차 화상 중 왼쪽 눈에 들어오는 화상을 좌측 눈 화상(L화상)이라고 하고, 우측 눈에 들어오는 화상을 우측 눈 화상(R화상)이라고 한다. 그리고 각각의 픽쳐가 L화상이 되어 있는 동화상을 레프트 뷰 비디오라고 하고 각각의 픽쳐가 R화상이 되어 있는 동화상을 라이트 뷰 비디오라고 한다. 그리고 레프트 뷰 비디오, 라이트 뷰 비디오를 디지털화하여 압축부호화함으로써 얻어지는 비디오 스트림을 레프트 뷰 비디오 스트림, 라이트 뷰 비디오 스트림이라고 한다.
이들 레프트 뷰 비디오 스트림, 라이트 뷰 비디오 스트림은 시간 방향의 상관 특성을 이용한 픽쳐 간 예측부호화에 더하여, 시점(視點) 간의 상관특성을 이용한 픽쳐 간 예측부호화에 의해서 압축되어 있다. 라이트 뷰 비디오 스트림의 픽쳐는 레프트 뷰 비디오 스트림의 동일한 표시시각의 픽쳐를 참조하여 압축되어 있다. 시점 간의 상관특성을 이용한 비디오 압축의 방법으로서는 Multiview Video Coding(MVC)이라고 불리는 MPEG-4 AVC/H. 264의 수정 규격이 있다. ISO/IEC MPEG와 ITU-T VCEG의 공동 프로젝트인 Joint Video Team(JVT)은 2008년 7월에 Multiview Video Coding(MVC)라고 불리는 MPEG-4 AVC/H. 264의 수정 규격의 책정을 완료했다. MVC는 복수 시점의 영상을 정리해서 부호화하는 규격이며, 영상의 시간방향의 유사성만이 아니라 시점 간의 유사성도 예측부호화에 이용함으로써 복수 시점의 독립한 압축에 비해 압축 효율을 향상하고 있다.
그리고 MVC에 의해서 압축부호화된 레프트 뷰 비디오 스트림 및 라이트 뷰 비디오 스트림 중 단체(單體)로 복호화가 가능해지는 것을 "베이스 뷰 비디오 스트림"이라고 한다. 레프트 뷰 비디오 스트림 및 라이트 뷰 비디오 스트림의 어느 쪽을 베이스 뷰 비디오 스트림으로 지정하는가는 후술하는 베이스 뷰 인디케이터(indicator)에 의해서 정해진다. 또, 레프트 뷰 비디오 스트림 및 라이트 뷰 비디오 스트림 중 베이스 뷰 비디오 스트림을 구성하는 개개의 픽쳐 데이터와의 프레임 간 상관특성에 의거 압축부호화되어 있고, 베이스 뷰 비디오 스트림이 복호 된 다음 복호 가능해지는 비디오 스트림을 "디펜던트 비디오 스트림"이라고 한다.
시점 간의 상관성에 따라서 압축부호화된 레프트 뷰 비디오 스트림 및 라이트 뷰 비디오 스트림으로서 단체로 복호화가 가능해지는 것은 "베이스 뷰 비디오 스트림"이라고 한다. 레프트 뷰 비디오 스트림 및 라이트 뷰 비디오 스트림 중 어느 쪽을 베이스 뷰 비디오 스트림으로 지정하는가는 플레이아이템정보 내의 베이스 뷰 인디케이터에 의해서 정해진다.
MVC 비디오 스트림의 기초가 되는 MPEG4-AVC 형식의 비디오 스트림에 대해서 설명한다.
MVC 비디오 스트림은 GOP 구조로 되어 있고, 클로즈드 GOP와 오픈 GOP로 구성된다. 클로즈드 GOP는 IDR 픽쳐와 이 IDR 픽쳐에 이어지는 B 픽쳐와 P 픽쳐로 구성된다. 오픈 GOP는 Non-IDR I 픽쳐와 Non-IDR I 픽쳐에 이어지는 B 픽쳐와 P 픽쳐로 구성된다.
Non-IDR I 픽쳐, P 픽쳐, B 픽쳐는 다른 픽쳐와의 프레임 상관성에 근거해 압축부호화되어 있다. B 픽쳐란 Bidirectionally predictive(B) 형식의 슬라이스 데이터로 이루어지는 픽쳐를 말하고, P 픽쳐란 Predictive(P) 형식의 슬라이스 데이터로 이루어지는 픽쳐를 말한다. B 픽쳐에는 refrenceB(Br) 픽쳐와 nonrefrenceB(B) 픽쳐가 있다.
클로즈드 GOP는 IDR 픽쳐가 선두에 배치된다. 표시 순서에서 IDR 픽쳐는 선두가 되지 않으나, IDR 픽쳐 이외의 다른 픽쳐(B 픽쳐, P 픽쳐)는 클로즈드 GOP보다 앞의 GOP에 존재하는 픽쳐와 의존관계를 가질 수 없다. 이와 같이 클로즈드 GOP는 의존관계를 완결시키는 역할을 한다.
다음에 GOP의 내부 구성에 대해서 설명한다. 오픈 GOP, 클로즈드 GOP에서의 개개의 픽쳐 데이터는 H. 264 부호화방식에서의 비디오 액세스유닛 구조를 가지고 있다. 각 비디오 액세스유닛은 비디오 액세스유닛 딜리미터(delimiter), 시퀀스 파라미터 세트, 픽쳐 파라미터 세트, 뷰 콤포넌트를 배열함으로써 구성된다.
뷰 콤콘포넌트란 액세스유닛 구조를 가지면서도 시점 간의 상관성에 근거해 압축부호화되어 있는 픽쳐 데이터이다.
비디오 액세스유닛 딜리미터는 네트워크 추상화 유닛으로 변환되어서 소스 패킷에 저장된다. 이 소스 패킷으로부터의 판독을 하는 것이라면 비디오 스트림 내부에서의 랜덤 액세스가 가능해진다.
비디오 액세스유닛과 픽쳐와의 관계는 1 비디오 액세스유닛 = 1 픽쳐이다. 또 BD-ROM에서는 1 PES 패킷 = 1 프레임으로 제한되어 있다. 즉, 동화상이 프레임 구조이면 1 PES 패킷 = 1 픽쳐이며, 필드 구조인 경우에는 1 PES 패킷 = 2 픽쳐가 된다. 이들로부터 PES 패킷은 픽쳐를 1 대 1의 비율로 저장하고 있다.
도 3은 입체 시를 위한 레프트 뷰 비디오 스트림, 라이트 뷰 비디오 스트림의 내부 구성의 일례를 나타낸다.
본 도면의 제 2 단째는 레프트 뷰 비디오 스트림의 내부 구성을 나타낸다. 이 스트림에는 픽쳐 데이터 I1, P2, Br3, Br4, P5, Br6, Br7, P9라는 픽쳐 데이터가 포함되어 있다. 이들 픽쳐 데이터는 Decode Time Stamp(DTS)에 따라서 디코드 된다. 제 1 단째는 좌측 눈 화상을 나타낸다. 그렇게 하여 디코드 된 픽쳐 데이터 I1, P2, Br3, Br4, P5, Br6, Br7, P9를 PTS에 따라서 I1, Br3, Br4, P2, Br6, Br7, P5의 순서로 재생함으로써 좌측 눈 화상이 재생되게 된다.
제 4 단째는 라이트 뷰 비디오 스트림의 내부 구성을 나타낸다. 이 라이트 뷰 비디오 스트림은 P1, P2, B3, B4, P5, B6, B7, P8라는 픽쳐 데이터가 포함되어 있다. 이들 픽쳐 데이터는 DTS에 따라서 디코드 된다.
제 3 단째는 우측 눈 화상을 나타낸다. 그렇게 하여 디코드 된 픽쳐 데이터 P1, P2, B3, B4, P5, B6, B7, P8를 PTS에 따라서 P1, B3, B4, P2, B6, B7, P5의 순서로 재생함으로써 우측 눈 화상이 재생되게 된다.
제 5 단째는 3D 안경(400)의 상태를 어떻게 변화시키는지를 나타낸다. 이 제 5 단째에 나타내는 것과 같이, 좌측 눈 화상의 시청시에는 우측 눈의 셔터를 닫고, 우측 눈 화상의 시청시에는 좌측 눈의 셔터를 닫고 있는 것을 알 수 있다.
본 도면에서, 예를 들어 라이트 뷰 비디오 스트림의 선두 P 픽쳐는 레프트 뷰 비디오 스트림의 I 픽쳐를 참조하고, 라이트 뷰 비디오 스트림의 B 픽쳐는 레프트 뷰 비디오 스트림의 Br픽쳐를 참조하며, 라이트 뷰 비디오 스트림의 두 번째의 P 픽쳐는 레프트 뷰 비디오 스트림의 P 픽쳐를 참조하고 있다. 베이스 뷰 비디오 스트림의 비디오 프레임과 디펜던트 뷰 스트림의 비디오 프레임을 1/48초의 표시 주기에서 "B"-"D"-"B"-"D"와 같이 교호로 출력하는 모드를 "B-D 프레젠테이션 모드"라고 한다.
베이스 뷰 비디오 스트림의 비디오 프레임과 디펜던트 뷰 스트림의 비디오 프레임을 교호로 출력하는 것이 아니라, 재생 모드를 3D모드에 유지한 채로 동일한 비디오 프레임을 2회 이상 반복 출력하는 처리를 하는 재생타입을 B-B 프레젠테이션 모드라고 한다. B-B 프레젠테이션 모드에서는 단독 재생이 가능한 베이스 뷰 비디오 스트림의 비디오 프레임만이 "B"-"B"-"B"-"B"와 같이 반복 출력된다.
이상의 B-D 프레젠테이션 모드, B-B 프레젠테이션 모드가 재생장치의 재생 모드의 기본이 되나, 이들 모드 이외에도 재생장치에는 1plane+Offset 모드라는 재생 모드가 존재한다.
1plane+Offset 모드(3D-Offset 모드라고도 한다)는 플레인 메모리의 후단에 시프트부를 설치하여, 시프트부를 기능시킴으로써 입체 시를 실현하는 재생 모드이다. 플레인 오프셋부는 레프트 뷰 기간 및 라이트 뷰 기간 각각에서 플레인 메모리에서의 라인 단위의 화소의 좌표를 좌 방향 또는 우 방향으로 시프트시켜, 우측 눈 시선 및 좌측 눈 시선의 결상점을 바로 앞 방향 또는 깊이방향으로 변위시킴으로써 깊이감을 변화시킨다. 구체적으로는 레프트 뷰 기간에 좌 방향, 라이트 뷰 기간에 우 방향으로 화소 좌표를 변화시키면 양 눈의 시선의 결상점은 바로 앞이 되고, 레프트 뷰 기간에 우 방향, 라이트 뷰 기간에 좌 방향으로 화소 좌표를 변화시키면 양 눈의 시선의 결상점은 바로 앞이 된다.
이와 같은 플레인 시프트에서는 입체 시를 위한 플레인 메모리가 1 플레인으로 충분하므로 간단하고도 쉽게 입체 시 영상을 만들어 내는데 최적이다. 이 플레인 시프트에서는 평면적인 영상이 바로 앞에 오거나 안쪽으로 끌어들이는 입체 시 영상을 만들어내는데 불과하므로 메뉴나 자막의 입체 시 효과에는 적합하나, 캐릭터나 물체의 입체 시 효과의 실현에는 어딘가 약간 부족하다. 캐릭터의 얼굴의 움푹한 곳이나 요철 등을 재현할 수 없기 때문이다.
1plane+Offset 모드를 지원하는 경우 재생장치의 구성은 이하와 같이 된다. 그래픽스의 재생을 위해 재생장치에는 플레인 메모리와 CLUT부 및 합성부가 존재하고 있고, 이 CLUT부와 합성부의 사이에 플레인 시프트부 삽입될 수 있다. 그리고 시프트부는 디펜던트 뷰 비디오 스트림의 액세스유닛 구조에 내장된 오프셋 시퀀스에서의 오프셋을 이용하여 상술한 것과 같은 화소의 좌표 변화를 실현한다. 이렇게 함으로써 1plane+Offset 모드에서의 화소의 점프 아웃(jump-out)의 정도는 MVC 비디오 스트림과 치밀하게 동기 한 것이 된다. 이 1plane+Offset 모드 중에는 1plane+Zero Offset 모드가 있다. 1plane+Zero Offset 모드는 팝업메뉴가 온인 경우 오프셋 값을 제로로 하여 팝업메뉴인 만큼 입체 시 효과를 나타내는 표시 모드이다.
도 4는 1plane+Offset 모드에서의 입체 시의 실현의 방법을 나타낸다.
1plane+Offset 모드에서 레프트 뷰 비디오를 출력하는 경우, PG 플레인이라 불리는 플레인 메모리에 저장되어 있는 화상 데이터의 좌표를 +오프셋 값만큼 X축의 정의 방향으로 시프트한다. 그리고 레프트 뷰 비디오로부터 오버랩되지 않게 플레인 메모리를 크로핑 한 후 다른 플레인과의 합성에 제공한다(도 4 상단 참조).
라이트 뷰 비디오를 출력하는 경우, 플레인 메모리를 오프셋 값만큼 X축의 부의 방향을 시프트하여, 레프트 뷰 비디오로부터 오버랩되지 않게 플레인 메모리를 크로핑 한 후에 플레인과의 합성에 제공한다(도 4 하단 참조).
도 5는 오프셋 값을 사용해 크로핑하여 중첩한 후에 사용자에게 어떻게 표시되는가를 모식적으로 나타내는 도면이다. 오프셋 값을 사용해서 플레인을 시프트하여 크로핑 하면 좌측 눈과 우측 눈 용으로 시차 화상을 만들어낼 수 있으므로, 평면의 이미지에 대해서 심도를 부여할 수 있게 된다. 이와 같은 심도가 존재하면 사용자에게는 평면 이미지가 표시장치의 화면으로부터 떠오른 것 동일한 표현이 가능하다.
또한, B-D 프레젠테이션 모드에는 L화상, R화상을 이용해 입체 시 효과를 실현하는 3D-LR 방식 외에, 2D 화상과 심도정보를 이용하여 입체 시 효과를 실현하는 3D-Depth 방식이 있다.
3D-Depth 방식이란, 비디오 디코더의 후단에 시차 영상 생성기를 설치하여, 비디오 스트림에서의 개개의 픽쳐 데이터와 이 픽쳐 데이터에서의 개개의 화소의 심도정보로부터 레프트 뷰 픽쳐 데이터, 라이트 뷰 픽쳐 데이터를 만들어 내게 하는 모드이다.
이 심도정보는 화소의 심도를 농담(濃淡)으로 나타내는 그레이 스케일의 픽쳐 데이터(심도정보 픽쳐 데이터라 불린다)로 구성할 수 있다.
도 6은 깊이 뷰 방식의 일례를 나타낸다. 동 도면 (a)는 2D 화상이며, 동 도면 (b)는 (a)에 나타낸 2D에 대해서 작성된 그레이 스케일을 나타낸다. 그레이 스케일은 휘도 성분만의 화소에 의해서 표현된다. 그레이 스케일의 화소 중 휘도가 높은 것일수록(흰 것일수록) 깊이가 얕고, 휘도가 낮은 것일수록(검은 것일수록) 깊이가 깊은 것을 나타낸다. 동 도면 (c), (d)는 그레이 스케일을 이용함으로써 생성되는 좌측 눈 영상, 우측 눈 영상을 나타낸다. 도 7은 3D-Depth 모드에서 생성되는 입체 시 화상을 나타낸다. 2D의 각 프레임별로 좌측 눈 영상과 우측 눈 영상을 생성하면, 고글을 통해서 좌측 눈 영상, 우측 눈 영상을 봄으로써 사용자는 입체 시를 즐길 수 있다.
3D-Depth 방식에서는 2D 재생 가능한 비디오 스트림이 베이스 뷰 비디오 스트림이 된다. 그레이 스케일의 픽쳐 데이터로 구성되는 비디오 스트림이 디펜던트 뷰 비디오 스트림이 된다.
3D-Depth 모드와 3D-LR모드에서는 베이스 뷰 비디오 스트림은 공통화할 수 있으므로, 베이스 뷰 비디오 스트림에 조합시킬 비디오 스트림을 변화시키면 3D-LR모드, 3D-Depth 모드의 영상을 생성할 수 있다. 데이터 관리구조로부터 이들의 조합을 취급하며, 플레이어 및 접속되어 있는 TV 측의 특성에 맞춰서 표시방법을 바꿀 수 있다. 3D-Depth 모드는 재생장치에 전용의 하드웨어가 필요하므로, 특별히 한정하지 않는 이상 본 명세서에서 설명하는 기록매체, 재생장치는 3D-Depth모드에 대응하지 않는 것으로 한다.
(제 1 실시 예)
본원 명세서의 제 1 실시 예는 복수 종별의 엘리멘터리 스트림의 선택을 어떻게 실행하게 하는가의 개량에 관한 것이다.
도 8은 제 1 실시 예의 기록매체에서의 내부 구성을 나타낸다. 본 도면 (a)에 나타내는 것과 같이 제 1 실시 예의 기록매체에는 「인덱스테이블 파일」, 「동작 모드 오브젝트의 프로그램 파일」, 「플레이리스트정보 파일」, 「스트림 정보 파일」, 「스트림 파일」이 기록되어 있다.
<인덱스테이블 파일>
 인덱스테이블 파일은 기록매체 전체에 관한 관리정보이며, 재생장치에 삽입된 후에 인덱스테이블 파일이 최초로 판독됨으로써 재생장치에서 디스크가 고유하게(uniquely) 인식된다. 인덱스테이블 파일은 광디스크의 타이틀 구조를 구성하는 개개의 타이틀과 동작 모드를 규정하는 동작 모드 오브젝트의 대응관계를 규정한다.
타이틀 구조란 광디스크의 장전시에 시청자에 대한 경고나 콘텐츠 공급자에 의한 로고 표시 등을 수반하는 타이틀(퍼스트 플레이 타이틀)의 재생을 개시하고, 퍼스트 플레이 타이틀의 재생 후 영화작품의 본편을 구성하는 일반 타이틀("1", "2", "3"dl라는 시리얼번호로 식별되는 일반적인 타이틀)을 재생하며, 본편 타이틀의 재생이 종료하면 타이틀선택을 접수하는 타이틀(메뉴 타이틀)을 재생하여 사용자에 의한 일반 타이틀의 선택 대기를 실시한다고 하는 것이다. 영화작품과 타이틀과의 관계는 영화작품과 영화작품의 복수 버전과의 관계이다. 즉 1개의 버전밖에 없는 영화작품은 「영화작품 = 타이틀」이라는 관계가 된다. 영화작품에 극장 공개판, 디렉터즈 커트판(director's cut version), TV 방영판 등 복수의 버전이 있는 경우 영화작품에서의 개개의 버전이 1개의 타이틀이 된다. 재생장치에는 현재의 타이틀번호를 저장하는 타이틀번호 레지스터를 포함하며, 복수의 타이틀 중 이 타이틀번호 레지스터에 저장되어 있는 것이 현재의 재생 대상이 된다. 광디스크의 타이틀은 상술한 것과 같은 퍼스트 플레이 타이틀, 일반 타이틀, 메뉴 타이틀의 각각에 동작 모드를 규정하는 동작 모드 오브젝트를 할당함으로써 각각의 타이틀이 어떤 동작 모드로 동작하는가를 상세하게 규정한다. 인덱스테이블에서는 타이틀과 비디오 스트림의 관계를 직접 기술하지 않고 타이틀과 동작 모드 오브젝트의 관계를 기술하여, 동작 모드 오브젝트를 통해서 비디오 스트림을 재생시키게 되어 있다. 이는 AV 재생을 수반하지 않고 동작 모드 오브젝트를 동작시기기만 하는 타이틀을 규정하기 위해서이다.
<동작 모드 오브젝트의 프로그램 파일>
동작 모드 오브젝트의 프로그램 파일은 재생장치의 동작 모드를 규정하는 프로그램인 동작 모드 오브젝트를 저장하고 있다. 동작모드 오브젝트에는 커멘드에 의해서 기술된 것과 오브젝트 지향의 컴파일러언어에 의해서 기술된 것이 있다. 전자의 동작 모드 오브젝트는 커멘드 베이스의 동작 모드에서 복수의 내비게이션 커멘드를 배치 잡(batch job)으로 재생장치에 공급하여, 이들 내비게이션 커멘드에 의거해서 재생장치를 동작시킨다. 이 커멘드 베이스의 동작 모드를 "HDMV 모드"라고 부른다.
후자의 동작 모드 오브젝트는 오브젝트 지향형의 컴파일러언어 베이스의 동작 모드에서 클래스 구조체의 인스턴스(instance)를 재생장치에 공급하며, 이 인스턴스에 의거해서 재생장치를 동작시킨다. 클래스 구조체의 인스턴스에는 Java(TM) 애플리케이션을 이용할 수 있다. 오브젝트 지향형 컴파일러언어 베이스의 동작 모드를 "BD-J모드"라고 부른다.
<플레이리스트정보 파일>
플레이리스트정보 파일은 재생장치에 플레이리스트를 재생시키기 위한 정보를 저장한 파일이다. "플레이리스트"란 트랜스포트 스트림(TS)의 시간 축 상에서 재생구간을 규정하는 동시에, 이 재생구간끼리의 재생순서를 논리적으로 지정함으로써 규정되는 재생경로이며, TS 중 어느 것을 어느 부분만큼 재생하여 어떤 순서로 신을 전개해 가는가를 규정하는 역할을 가지며, 플레이리스트정보는 이 플레이리스트의 "형(型)"을 정의한다. 플레이리스트정보에 의해서 정의되는 재생경로는 이른바 "멀티패스"이다. 멀티패스란 주(主)가 되는 TS에 대해서 정의된 재생경로(메인패스)와 종(從)이 되는 스트림에 대해서 정의된 재생경로(서브패스)를 묶은 것이다. 메인패스는 1개인데 대해 서브패스는 복수 개 정의할 수 있고, 이들 복수의 서브패스는 서브패스 ID라고 불리는 식별자에 의해서 식별된다. 이와 같은 멀티패스의 재생시간 축에는 챕터 위치가 정의된다. 이 챕터 위치를 재생장치에 참조시킴으로써 멀티패스의 시간 축에 대한 임의의 시점에 대한 랜덤 액세스를 재생장치가 실현하게 한다. BD-J모드에서는 재생제어를 위한 Java(TM) 애플리케이션이 이 플레이리스트 정보를 재생하는 JMF 플레이어 인스턴스의 생성을 Java(TM) 가상 머신에 명함으로써 멀티패스에 의한 AV 재생을 개시시킬 수 있다. JMF(JavaMedia Frame work) 플레이어 인스턴스란 JMF 플레이어 클래스를 기초로 하여 가상 머신의 히프 메모리(heap memory) 상에 생성되는 실제의 데이터이다. HDMV 모드에서는 플레이리스트에 의한 재생을 명하는 내비게이션 커맨드를 재생장치에 실행시킴으로써 재생을 개시할 수 있다. 재생장치에는 현재 플레이리스트정보의 번호를 저장하는 플레이리스트번호 레지스터를 포함하며, 복수의 플레이리스트정보 중 이 플레이리스트번호 레지스터에 저장되어 있는 것이 현재의 재생대상이 된다.
<스트림 정보 파일>
스트림 정보 파일은 스트림 파일의 각각과 일대일의 비율로 존재하는 클립정보 파일이며, 스트림 파일 내에 존재하는 소스 패킷 열이 어떤 ATC 시퀀스를 구성하는가, 그들 ATC 시퀀스 내에 어떤 STC 시퀀스가 포함되어 있는가, ATC 시퀀스가 어떤 TS인가를 나타낸다.
스트림 정보 파일은 스트림 파일의 내용을 명확히 하는 것이므로, 스트림 파일 내의 TS를 재생하려고 하는 경우 그 스트림 파일에 대응하는 스트림 정보 파일을 미리 메모리에 판독해둘 필요가 있다. 즉, 스트림 파일 재생에 있어서는 미리 스트림 정보 파일을 메모리에 판독한다고 하는 전치주의가 채용된다. 이와 같은 전치주의를 채용하고 있는 것은 이하의 이유에 의한다. 스트림 파일에 저장되는 TS는 유럽 디지털방송 규격과 호환성이 있는 데이터구조로 되어 있으나, 방송 프로그램으로서 취급하기 위한 PMT, PCR, PAT라는 정보는 스트림 내에 존재하므로, 이들을 재생할 때마다 인출하는 것은 현명하지 않다. 스트림을 재생할 때마다 저속인 기록매체를 액세스해서 TS를 구성하는 패킷을 판독하여 그 TS 패킷의 페이로드(payload)를 해석한다고 하는 처리가 필요해지기 때문이다. 그래서 TS를 구성하는 페이로드의 내용을 해석하지 않고도 TS의 제원을 파악할 수 있도록, TS를 저장한 스트림 파일과 일대일의 비율로 스트림 정보 파일을 마련해 두고, 스트림 재생에 앞서 스트림 정보 파일을 메모리에 판독하는 것으로 하고 있다.
<스트림 파일>
스트림 파일은 1 또는 복수의 소스 패킷 열을 저장하고 있다. 소스 패킷이란 2비트의 복제허가 인디케이터(copy permission indicator)와 30비트의 ATS(도착 시각:Arrival Time Stamp)로 구성되는 4 바이트의 TP_Extra_Header가 부가된 TS 패킷이다. TP_Extra_Header에서의 ATS는 실시간 전송이 이루어져서 등시성이 확보된 상태에서 이루어지는 전송에서의 도달시각을 말한다.
이들 소스 패킷 열 중 어라이벌 타임 클록(ATC) 시간 축에서 타임스탬프가 연속하고 있는 복수의 소스 패킷으로 구성되어 있는 것을 "ATC 시퀀스"라고 부른다. "ATC 시퀀스"란 소스 패킷의 배열이며, 그 Arrival_Time_Stamp가 참조하고 있는 Arrival_Time_Clock에 불연속점(no arrival time-base discontinutiy)이 존재하지 않는 것을 말한다. 다시 말해, 그 Arrival_Time_Stamp가 참조하고 있는 Arrival_Time_Clock에 연속성이 존재하는 소스 패킷 열을 "ATC 시퀀스"라고 한다. ATC 시퀀스는 ATC의 타임스탬프가 연속하고 있는 소스 패킷 열이므로, 재생장치의 어라이벌 타임 클록을 계시하는 클록 카운터가 계시를 하고 있는 동안 ATC 시퀀스를 구성하는 각 소스 패킷은 연속적인 소스 패킷 디패킷타이징 처리 및, 연속적인 패킷 필터링 처리에 제공되게 된다.
ATC 시퀀스가 소스 패킷의 배열인데 대해, STC 시간 축에서의 타임스탬프가 연속하고 있는 TS 패킷의 배열을 STC 시퀀스라고 한다. "STC 시퀀스"란 TS 패킷의 배열이며, TS의 시스템 기준 시각인 STC(System Time Clock)의 불연속점(system time-base discontinuity)을 갖지 않는 것을 말한다. STC의 불연속 점이란 디코더가 STC를 얻기 위해 참조하는 PCR(Program Clock Reference)을 운반하는 PCR 패킷의 불연속 정보(discontinuity_indicator)가 ON인 점이다. STC 시퀀스는 STC의 타임스탬프가 연속하고 있는 TS 패킷 열이므로, 재생장치의 시스템 타임 클록을 계시하는 클록 카운터가 계시를 하고 있는 동안 STC 시퀀스를 구성하는 각 TS 패킷은 재생장치 내에 존재하는 디코더의 연속적인 디코드 처리에 제공되게 된다.
스트림 파일에서의 메인 TS, 서브 TS는 스트림 파일에 대응하는 스트림 정보 파일 내의 클립정보에 의해 1개의 "AV 스트림의 부분" 즉, "AV 클립"으로서 관리되고 있다. 또 스트림 파일에 저장되는 패킷 열은 복수 종별의 PES 스트림을 관리·제어하기 위한 정보로서, 유럽 디지털방송 규격에 규정된 패킷 관리정보(PCR, PMT, PAT)를 구비하고 있다.
PCR(Program_Clock_Reference)은 ATS의 시간 축인 ATC(Arrival Time Clock)와 PTS·DTS의 시간 축인 STC(System Time Clock)의 동기를 취하기 위해서 그 PCR 패킷이 디코더에 전송되는 ATS에 대응하는 STC 시간의 정보를 가진다.
 PMT(Program_map_table)는 스트림 파일 중에 포함되는 영상·음성·그래픽스 등의 각 스트림의 PID와 각 PID에 대응하는 스트림의 속성정보를 가지며, 또 TS에 관한 각종 디스크립터를 갖는다. 디스크립터에는 스트림 파일의 카피의 허가·불허가를 지시하는 카피 컨트롤정보 등이 있다.
PAT(Program Association Table)는 TS 중에 이용되는 PMT의 PID가 무엇인가를 나타내며, PAT 자신의 PID 배열로 등록된다.
이들 PCR, PMT, PAT는 유럽 디지털방송 규격에서 한 개의 방송프로그램(Program)을 구성하는 파셜(partial) TS를 규정하는 역할을 하며, 재생장치는 유럽 디지털방송 규격에서 한 개의 방송프로그램을 구성하는 파셜 TS를 취급하는가와 같이, TS를 디코더에 의한 처리에 제공할 수 있다. 이는 유럽 디지털방송 규격의 단말장치와 기록매체 재생장치와의 호환성을 의도한 것이다. TS 중 멀티 패스의 기축(基軸)이 되는 것을 "메인 TS"라고 한다. 또 서브 패스의 기축이 되는 것을 "서브 TS"라고 한다.
도 8 (b)는 메인 TS의 내부 구성을 나타내고, 도 8 (c)는 서브 TS의 내부 구성을 나타낸다. 동 도면 (b)에 나타내는 것과 같이, 메인 TS는 1개의 베이스 뷰 비디오 스트림과, 32개의 베이스 뷰 PG 스트림, 32개의 베이스 뷰 IG 스트림, 32개의 오디오 스트림을 포함하는 것으로 한다. 동 도면 (c)에 나타내는 것과 같이 서브 TS는 1개의 디펜던트 뷰 비디오 스트림과, 32개의 디펜던트 뷰 PG 스트림, 32개의 디펜던트뷰 IG 스트림을 포함하는 것으로 한다.
다음에, TS의 내부 구성에 대해서 설명한다.
도 9는 PES 패킷 열에 비디오 스트림이 어떻게 저장되는가를 더 자세하게 나타내고 있다. 본 도면 (a)에서의 제 1 단째는 비디오 스트림의 비디오 프레임 열을 나타낸다. 제 2 단째는 PES 패킷 열을 나타낸다. 제 3 단째는 이들 PES 패킷 열을 변환함으로써 얻어지는 TS 패킷 열을 나타낸다. 본 도면의 화살표 yy1, yy2, yy3, yy4에 나타내는 것과 같이 비디오 스트림에서의 복수의 Video Presentation Unit인 I 픽쳐, B 픽쳐, P 픽쳐는 픽쳐별로 분할되어 PES 패킷의 페이로드에 저장된다. 각 PES 패킷은 PES 헤더를 가지며, PES 헤더에는 픽쳐의 표시시각인 PTS(Presentation Time-Stamp)나 픽쳐의 복호시각인 DTS(Decoding Time-Stamp)가 저장된다.
<TS 패킷 열>
도 9 (b)는 TS 패킷의 형식을 나타내고 있다. 제 1 단째는 TS 패킷 열을 나타내고, 제 2 단째는 소스 패킷 열을 나타낸다.
제 1 단째에 나타내는 것과 같이 TS 패킷은 스트림을 식별하는 PID 등의 정보를 갖는 4 Byte의 「TS헤더」와 데이터를 저장하는 184 Byte의 「TS 페이로드」로 나누어지는 고정길이의 패킷이며, 앞에서 설명한 PES 패킷은 분할되어서 TS 페이로드에 저장된다.
제 2 단째에 의하면, TS 패킷에는 4 Byte의 TP_Extra_Header가 부여되어서 192Byte의 소스 패킷으로 변환된 상태로 TS를 구성한다. TP_Extra_Header에는 ATS(Arrival_Time_Stamp) 등의 정보가 기재된다. ATS는 해당 TS 패킷의 PID 필터로의 전송 개시시각을 나타낸다. TS에는 제 3단째에 나타내는 것과 같이 소스 패킷이 배열되게 되며, TS의 선두에서부터 증가하는 번호는 SPN(소스 패킷 번호)이라 불린다.
<TS에서의 다중화>
도 10은 메인 TS가 어떻게 다중화되는가를 모식적으로 나타내는 도면이다. 먼저, 베이스 뷰 비디오 스트림 및 오디오 스트림을(제 1 단째) 각각 PES 패킷 열로 변환하고(제 2 단째), 소스 패킷 열로 변환한다(제 3 단째). 마찬가지로 레프트 뷰 PG 스트림 및 레프트 뷰 인터랙티브 그래픽스(제 7 단째)를 각각 PES 패킷 열로 변환하고(제 6 단째), 다시 소스 패킷 열로 변환한다(제 5 단째). 이렇게 하여 얻어진 비디오, 오디오, 그래픽스를 구성하는 소스 패킷을 그 ATS의 순으로 배열해 간다. 이는 소스 패킷은 그 ATS에 따라서 리드 버퍼에 판독되어야 하기 때문이다. 이렇게 하여 ATS에 따라서 소스 패킷이 배열되면 메인 TS를 얻을 수 있게 된다.
· TS에 다중화되는 엘리멘터리 스트림
 이들 TS에 다중화되는 엘리멘터리 스트림(ES)에는 비디오 스트림, 오디오 스트림, 프레젠테이션 그래픽스 스트림, 인터랙티브 그래픽스 스트림이 있다.
· 비디오 스트림
베이스 뷰가 되는 비디오 스트림은 픽쳐 인 픽쳐 애플리케이션에서의 프라이머리 비디오 스트림을 구성한다. 픽쳐 인 픽쳐 애플리케이션은 이 프라이머리 비디오 스트림 외에도 세컨더리 비디오 스트림으로 구성된다. 프라이머리 비디오 스트림이란 픽쳐 인 픽쳐 애플리케이션에 대해서 친 화면(親畵面)이 되는 픽쳐 데이터로 구성되는 비디오 스트림이다. 대조적으로, 세컨더리 비디오 스트림이란 픽쳐 인 픽쳐에서 자(子) 화면으로서 친 화면의 일부에 삽입되는 픽쳐 데이터로 구성되는 비디오 스트림이다.
프라이머리 비디오 스트림을 구성하는 픽쳐 데이터와 세컨더리 비디오 스트림을 구성하는 픽쳐 데이터는 디코드 후에 각각 다른 플레인 메모리에 저장된다. 세컨더리 비디오 스트림을 구성하는 픽쳐 데이터를 저장하는 플레인 메모리의 전단에는 세컨더리 비디오 스트림을 구성하는 픽쳐 데이터의 스케일링(scaling) 변경 및 표시 좌표의 위치 결정을 실시하는 구성요소(Scaling & Positioning)가 존재한다.
· 오디오 스트림
오디오 스트림에는 프라이머리 오디오 스트림, 세컨더리 오디오 스트림의 2 종류가 있다. 프라이머리 오디오 스트림은 믹싱 재생을 하는 경우에 주 음성이 되어야 할 오디오 스트림이고, 세컨더리 오디오 스트림은 믹싱 재생을 하는 경우에 부 음성이 되어야 할 오디오 스트림이다. 세컨더리 오디오 스트림은 이 믹싱을 위한 다운 샘플링을 위한 정보, 게인 제어를 위한 정보가 존재한다.
· 프레젠테이션 그래픽스 스트림(PG 스트림)
PG 스트림은 디코더에 파이프라인을 채용함으로써 영상과의 치밀한 동기를 실현할 수 있고, 자막 표시에 적합한 그래픽스 스트림이며, 2D PG 스트림과 입체 시 PG 스트림이라는 2개의 종류가 있다. 입체 시 PG 스트림에는 레프트 뷰 PG 스트림 및 라이트 뷰 PG 스트림이라는 2종류의 것이 있다. 레프트 뷰 PG 스트림 및 라이트 뷰 PG 스트림 중 베이스 뷰 인디케이터에 의해서 지정되어 있는 것이 베이스 뷰 PG 스트림이 되고, 베이스 뷰 인디케이터에 의해서 지정되어 있지 않은 것이 디펜던트 뷰 PG 스트림이 된다.
2D PG 스트림 외에 입체 시 PG 스트림을 구비하는 것은, PG 스트림이 자막 문자를 나타내는 경우에, 2D로 표시되는 바로 정면에서 본 자막 문자와, 3D-LR모드에서 좌측 눈 용으로 표시되는 그래픽스와, 우측 눈 용으로 표시되는 자막 문자는 다른 것으로 할 필요 때문이다. 그 때문에 2D 재생의 경우에는 정면에서 본 그래픽스 스트림을 1개, 3D-LR모드용으로는 레프트 뷰 PG 스트림 및 라이트 뷰 PG 스트림의 합계 2개를 표시한다. 마찬가지로 3D-Depth모드의 경우에는 정면에서 본 영상과 심도정보를 나타내는 그레이 스케일 스트림을 재생한다. 2D+offset(2D 호환 스트림)와 3D-LR스트림은 혼재하도록 해서는 안 된다.
2D PG 스트림은 최대 32개, 베이스 뷰 PG 스트림은 최대 32개, 디펜던트 뷰 PG 스트림도 최대 32개 정의할 수 있다. 이들의 PG 스트림에는 각각 다른 패킷 식별자가 부여되어 있고, 다중분리부에 재생해야 할 패킷 식별자를 지시함으로써 이들 PG 스트림 중 원하는 것이 재생에 제공되게 된다.
레프트 뷰 PG 스트림, 라이트 뷰 PG 스트림은 서로 언어속성은 일치시켜 두ㅇ어서 사용자가 표시방식을 바꾸어도 동일한 내용의 자막이 표시되도록 한다. 전제로, 2D 자막과 3D 자막은 1 대 1로 대응하며, 2D에만 해당하는 자막 및 3D에만 해당하는 자막을 설치해서는 안 된다. 교체시의 사용자 혼란을 방지하기 위해서이다. 이와 같이 함으로써 1개의 스트림 번호로 2D/3D 각각의 표시 모드에 대응하는 스트림이 선택되게 된다. 이 경우, 1개의 스트림 번호에서 언어속성 등은 동일하게 되며, 2D와 LR의 자막의 내용은 동일하게 된다.
파이프라인에 의한 디코드 동작의 실현에 의해 동화상과의 치밀한 동기가 실현되므로, PG 스트림의 용도는 자막과 동일한 문자 재생에 한정되지 않는다. 영화작품의 마스코트 캐릭터를 표시하여, 이것을 동화상과 동기시키면서 동작시키는 등, 치밀한 동기가 필요한 그래픽스 재생이면 어떤 것도 PG 스트림에 의한 재생 대상으로서 채용할 수 있다.
스트림 파일에 다중화되지 않으나, 자막을 나타내는 스트림에는 PG 스트림 외에도 텍스트 자막(textST) 스트림이라는 것이 있다. textST 스트림은 자막의 내용을 캐릭터 코드로 나타낸 스트림이다.
PG 스트림, 텍스트 자막 스트림은 이들의 종류가 구별되지 않고 동일한 스트림 종별로 하며, 이들 PG 스트림 및 텍스트 자막 스트림은 동일한 스트림 등록 열에 등록된다. 그리고 스트림 선택의 프로시저를 실행함에 있어서 스트림 등록 열에서의스트림 등록의 순위에 따라서 재생되어야 할 PG 스트림 또는 텍스트 자막 스트림이 정해진다. PG 스트림, 텍스트 자막 스트림은 스트림 종별이 구별되지 않고 스트림 선택의 프로시저에 제공되므로 이들 PG 스트림 및 텍스트 자막 스트림을 1개의 스트림 종별, 즉, "PG_텍스트 자막 스트림"이라는 종별로 취급한다.
2D용의 PG_텍스트 자막 스트림은 1plane+Offset 모드에서 재생된다. 이후의 설명에서는 2D PG_텍스트 자막 스트림을 1plane+OffsetPG_텍스트 자막 스트림으로 하여 설명한다.
· 인터랙티브 그래픽스(IG) 스트림
IG 스트림은 대화 조작의 정보를 구비함으로써 비디오 스트림의 재생 진행에 수반해 메뉴를 표시하거나, 또 사용자 조작에 따라서 팝업메뉴를 표시할 수 있는 그래픽스 스트림이다.
IG 스트림도 PG 스트림과 같이 2D IG 스트림과 입체 시 IG 스트림라는 2개의 종류가 있다. 입체 시 IG 스트림에는 레프트 뷰 IG 스트림 및 라이트 뷰 IG 스트림이라는 2종류가 있다. 레프트 뷰 그래픽스 스트림 및 라이트 뷰 그래픽스 스트림 중 베이스 뷰 인디케이터에 의해 지정되어 있는 것이 베이스 뷰 IG 스트림이 되고, 베이스 뷰 인디케이터에 의해서 지정되어 있지 않은 것이 디펜던트 뷰 IG 스트림이 된다. 2D IG 스트림은 최대 32개, 베이스 뷰 IG 스트림은 최대 32개, 디펜던트 뷰 IG 스트림도 최대 32개 정의할 수 있다. 이들 IG 스트림에는 각각 다른 패킷 식별자가 부여되어 있고, 다중분리부에 재생해야 할 패킷 식별자를 지시함으로써 이들 IG 스트림 중 원하는 것이 재생에 제공되게 된다.
IG 스트림의 제어정보(대화제어 세그먼트(segment)라고 한다)는 유저 인터페이스 모델을 규정하는 정보(User_interface_model)를 가지고 있고, 오서링(authoring) 담당자는 이 유저 인터페이스 모델 정보를 설정함으로써 비디오 스트림의 재생 진행에 수반해 메뉴를 표시하는가(Always 온이라고 한다), 사용자 조작에 따라서 팝업메뉴를 표시하는가(팝업메뉴 온) 중 어느 쪽인가를 지정할 수 있다.
IG 스트림이 대화 조작의 정보를 갖는 의의는 이하와 같다. Java 가상머신이 애플리케이션으로부터의 요구에 따라서 플레이리스트 재생의 개시를 재생제어의 주체인 재생제어엔진에 지시하는 경우, Java 가상 머신은 재생제어엔진에 재생을 명한 후, 플레이리스트 재생을 개시한 취지의 응답을 애플리케이션에 돌려준다. 즉, 재생제어엔진에 의한 플레이리스트 재생이 계속하고 있는 동안 Java 가상 머신은 실행 종료 대기로는 되지 않는다. 왜냐하면, Java 가상 머신은 이른바 이벤트 드리븐형(event-driven-type)의 동작 주체이며, 재생제어엔진이 플레이리스트의 재생을 하고 있는 동안에도 동작을 할 수 있기 때문이다.
한편, HDMV 모드에서 커멘드 인터프리터가 플레이리스트 재생을 재생제어엔진에 명하는 경우, 플레이리스트 재생이 종료할 때까지 그 플레이리스트 재생의 실행 종료 대기가 된다. 재생제어엔진에 의한 재생이 계속하고 있는 동안 커멘드 실행부는 대화적인 처리를 실행할 수 없다. 이 커멘드 인터프리터 대신에 그래픽스 디코더가 대화적인 동작을 실행한다. 그래픽스 디코더에 대화적인 동작을 하게 하기 위해서 IG 스트림에는 버튼 부재를 이용한 대화적인 조작을 규정하는 제어정보가 포함되어 있다.
· 각 스트림 종별에서 허용되는 표시 모드
3D 표시 모드의 어느 것이 허용되는가는 스트림 종별에 따라서 다르다. 프라이머리 비디오 스트림의 3D 표시 모드에는 B-D 프레젠테이션 모드, B-B 프레젠테이션 모드라는 2개의 재생 모드가 허용된다. 프라이머리 비디오 스트림에서 B-B 프레젠테이션 모드가 허용되는 것은 팝업메뉴가 온이 되어 있는 경우만이다. B-D 프레젠테이션 모드로 재생되는 경우에서의 프라이머리 비디오 스트림의 유형을 "입체 시 BD 재생타입"이라고 한다. B-B 프레젠테이션 모드로 재생되는 경우에서의 프라이머리 비디오 스트림의 유형을 입체 시 B-B 재생타입이라고 한다.
PG 스트림의 3D 표시 모드에는 B-D 프레젠테이션 모드, 1plane+Offset 모드, 1plane+Zero Offset 모드라는 3개의 재생 모드가 허용된다. PG 스트림에서 1plane+Zero Offset 모드가 허용되는 것은 팝업메뉴가 온이 되어 있는 경우만이다. B-D 프레젠테이션 모드로 재생되는 경우에서의 PG 스트림의 유형을 "입체 시 재생타입"이라고 한다. 1plane+Offset 모드로 재생되는 경우에서의 PG 스트림, PG_텍스트 자막 스트림의 유형을 1plane+Offset 타입이라고 한다. 1plane+Zero Offset 모드로 재생되는 경우에서의 PG 스트림, PG_텍스트 자막 스트림의 유형을 1plane+Zero Offset 타입이라고 한다.
텍스트 자막 스트림의 3D 표시 모드에는 1plane+Offset 모드, 1plane+Zero Offset 모드라는 2개의 재생 모드가 허용된다. 텍스트 자막 스트림에서 1plane+Zero Offset 모드가 허용되는 것은 팝업메뉴가 온이 되어 있는 경우만이다.
IG 스트림의 3D 표시 모드에는 B-D 프레젠테이션 모드, 1plane+Offset 모드, 1plane+Zero Offset 모드라는 3개의 재생 모드가 허용된다. IG 스트림에서 1plane+Zero Offset 모드가 허용되는 것은 팝업메뉴가 온이 되어 있는 경우만이다. 이후의 설명에서는 특별히 한정하지 않는 한 3D 재생 모드 실행시에는 픽쳐 인 픽쳐는 사용할 수 없는 것으로 한다. 픽쳐 인 픽쳐 및 3D 재생 모드는 어느 것도 비 압축의 픽쳐 데이터를 저장하기 위한 비디오 플레인을 2개 필요로 하기 때문이다. 또 특별히 한정하지 않는 이상 3D 재생 모드에서는 사운드 믹싱도 사용할 수 없는 것으로 한다.
이어서, 메인 TS 및 서브 TS의 내부 구성에 대해서 설명한다. 도 11은 메인 TS 및 서브 TS의 내부 구성을 나타낸다.
동 도면 (a)는 메인 TS의 내부 구성을 나타낸다. 메인 TS는 이하의 소스 패킷에 의해서 구성되어 있다.
0x0100의 패킷 ID를 갖는 소스 패킷은 Program_Map_Table를 구성하며, 0x0101의 패킷 ID를 갖는 TS 패킷은 PCR를 구성한다.
0x1011의 패킷 ID를 갖는 소스 패킷 열은 프라이머리 비디오 스트림을 구성한다.
0x1220의 패킷 식별자를 갖는 소스 패킷 열부터 0x123F의 패킷 ID를 갖는 소스 패킷 열까지는 32개의 베이스 뷰 PG 스트림을 구성한다.
0x1420의 패킷 식별자를 갖는 소스 패킷 열부터 0x143F의 패킷 ID를 갖는 소스 패킷 열까지는 32개의 베이스 뷰 IG 스트림을 구성한다.
0x1100의 패킷 식별자를 갖는 소스 패킷 열부터 0x111F의 패킷 식별자를 갖는 소스 패킷 열까지는 프라이머리 오디오 스트림을 구성한다.
이들 소스 패킷의 패킷 식별자를 다중분리부에 지시함으로써 메인 TS에 다중화되어 있는 복수의 ES 중 원하는 것을 분리해서 디코더에 제공할 수 있다.
도 (b)는 서브 TS의 내부 구성을 나타낸다. 서브 TS는 이하의 소스 패킷에 의해서 구성되어 있다.
Ox1012의 패킷 식별자를 갖는 소스 패킷 열은 디펜던트 비디오 스트림을 구성하며, Ox1240의 패킷 식별자를 갖는 소스 패킷 열부터 0x125F의 패킷 식별자를 갖는 소스 패킷 열까지는 32개의 디펜던트 뷰 PG 스트림을 구성한다.
Ox1440의 패킷 식별자를 갖는 소스 패킷 열부터 0x145F의 패킷 식별자를 갖는 소스 패킷 열은 32개의 디펜던트 뷰 IG 스트림을 구성한다.
이상이 스트림 파일에 대한 설명이다. 이어서, 플레이리스트정보의 상세에 대하여 설명한다.
상술한 것과 같은 멀티패스를 정의하기 위해 도 12와 같은 내부 구성을 갖는다. 도 12 (a)는 플레이리스트정보의 내부 구성을 나타낸다. 동 도 (a)에 나타내는 것과 같이 플레이리스트정보는 「메인패스정보」, 「서브패스정보」,「플레이리스트 마크정보」, 「익스텐션 데이터」를 포함한다. 이하, 이들 구성요소에 대해서 설명한다.
1) 메인패스정보는 1개 이상의 주된 재생구간정보로 구성된다. 도 12 (b)는 메인패스정보 및 서브패스정보의 내부 구성을 나타내는 도면이며, 본 도면에 나타내는 것과 같이 메인패스정보는 1개 이상의 주된 재생구간정보로 구성된다. 서브패스정보는 1개 이상의 종인 재생구간정보로 구성된다.
주된 재생구간정보는 플레이아이템정보라고 불리며, TS의 재생시간 축, In_Time이 되는 시점과 Out_Time이 되는 시점의 조(set)를 1개 이상 정의함으로써 논리적인 재생구간을 정의하는 정보이다. 재생장치에는 현재 플레이아이템의 번호를 저장하는 플레이아이템 번호 레지스터를 포함하며, 복수의 플레이리스트정보 중 이 플레이아이템 번호 레지스터에 저장되어 있는 것이 현재의 재생 대상이 된다
도 12 (c)는 플레이아이템정보의 내부 구성을 나타낸다. 본 도면에 나타내는 것과 같이 「스트림 참조정보」, 「인 타임 아웃 타임 정보」, 「접속상태정보」, 「기본 스트림 선택테이블」을 포함한다.
스트림 참조정보는 플레이아이템을 구성하는 트랜스포트 스트림을 "AV 클립"으로서 관리하고 있는 클립정보파일을 나타내는 「클립정보파일 네임 정보(clip_information_file_name)」, 그 TS에서의 부호화방식을 나타내는 「클립 부호화방식 식별자(Clip_codec_indentifier)」, 당해 TS의 STC 시퀀스에서 인 타임 및 아웃 타임이 설정되어 있는 STC 시퀀스가 어느 것인지를 나타내는 「STC 식별자 레퍼런스(STC_ID_referrence)」를 포함한다.
이상이 플레이아이템정보에 대한 설명이다.
2) 종인 재생구간정보는 서브패스정보라고 불리며, 복수의 서브 플레이아이템 정보로 구성된다. 도 12 (d)는 서브 플레이아이템정보의 내부 구성을 나타낸다. 본 도면에 나타내는 것과 같이 서브 플레이아이템정보는 STC 시퀀스의 시간 축에 인 타임과 아웃 타임의 조를 규정함으로써 서브패스를 구성하는 재생구간을 정의하는 정보이며, 「스트림 참조정보」,「인 타임 아웃 타임 정보」, 「싱크로 플레이아이템 레퍼런스」, 「싱크로 개시시각정보」를 포함한다. 「스트림 참조정보」는 플레이아이템 정보와 마찬가지로 「클립정보파일 네임 정보」 「클립 부호화 방식 식별자」, 「STC 식별자 레퍼런스」를 포함한다.
「인 타임 아웃 타임 정보(SubPlayItem_In_Time,SubPlayItem_Out_Time)」는 STC 시퀀스 시간 축에 둘 수 있는 서브 플레이아이템의 시점과 STC 시퀀스 시간 축 상에서의 서브 플레이아이템의 종점을 나타낸다.
「싱크로 플레이아이템 레퍼런스(Sync_PlayItem_Id)」는 플레이아이템 중 본 서브 플레이아이템이 동기해야 할 것을 고유하게 지정하는 정보이다. 서브 플레이아이템 인 타임은 이 동기 플레이아이템 참조자에 의해 지정된 플레이아이템의 재생시간 축상에 존재한다.
「싱크로 개시시각정보(Sync_Start_PTS_of_PlayItem)」는 동기 플레이아이템 참조자에 의해 지정된 플레이아이템의 STC 시퀀스의 시간 축 중 서브 플레이아이템 인 타임에서 지정된 서브 플레이아이템의 시점이 어느 시점에 사상(寫像)이 되는가를 나타낸다.
3) 플레이리스트 마크정보는 재생구간 고유의 마크 포인트를 정의하는 정보이며, 재생구간을 나타내는 참조자와 디지털 스트림의 시간 축에서 마크 포인트가 어디에 있는가를 나타내는 타임스탬프 및 마크 포인트의 속성을 나타내는 속성정보를 포함하며, 상기 속성정보는 플레이리스트 마크정보에 의해 정의된 마크포인트가 링크 포인트인가 엔트리 마크인가를 나타낸다.
링크 포인트는 링크 커멘드에 의한 링크가 가능하나, 챕터 스킵 조작이 사용자에 의해 이루어진 경우의 선택 대상은 되지 않는 마크포인트이다.
엔트리 마크는 링크 커멘드에 의한 링크가 가능하고, 또한 챕터 스킵 조작이 사용자에 의해 이루어진 경우의 선택 대상이 되는 마크포인트이다.
IG 스트림의 버튼정보 내에 내장된 링크 커멘드는 플레이리스트 마크정보를 개재한 간접 참조의 형식으로 랜덤 액세스 재생의 위치를 지정하고 있다.
<기본 스트림 선택테이블(STreamNumber_table)>
상기 기본 스트림 선택테이블은 평면 시 재생 모드에서 재생할 엘리멘터리 스트림의 리스트이며, 플레이리스트를 구성하는 복수의 플레이아이템 중 그 기본 스트림 선택테이블을 포함하고 있는 것이 현재 플레이아이템이 된 때에 멀티패스의 메인패스에서 참조되어 있는 AV 클립에 다중화되어 있는 ES 및 멀티패스의 서브 패스에서 참조되어 있는 AV 클립에 다중화되어 있는 ES 중 어느 것의 재생을 허가하는가를 복수의 스트림 종별마다 규정한다. 여기에서의 스트림 종별이란 픽쳐 인 픽쳐에서의 프라이머리 비디오 스트림, 픽쳐 인 픽쳐에서의 세컨더리 비디오 스트림, 사운드 믹싱에서의 프라이머리 오디오 스트림, 사운드 믹싱에서의 세컨더리 오디오 스트림, PG_텍스트 자막 스트림, 인터랙티브 그래픽스 스트림이라는 종별을 말하며, 기본 스트림 선택테이블은 이들 스트림 종별마다 재생을 허가해야 할 스트림을 등록할 수 있다. 구체적으로는 기본 스트림 선택테이블은 스트림 등록의 배열로 구성된다. 여기서 스트림 등록이란 기본 스트림 선택테이블이 귀속하고 있는 플레이아이템이 현재 플레이아이템이 된 때에 재생을 허가해야 할 ES가 어떤 스트림인가를 그 스트림 번호에 대응시켜서 나타내는 것이며, 스트림 등록은 논리적인 스트림 번호에 스트림 엔트리 및 스트림 속성의 조합을 대응시키는 데이터구조로 되어 있다. 스트림 등록에서의 스트림 번호는 1, 2, 3이라는 정수 치로 표현되며, 스트림 번호의 최대 수는 대응하는 스트림 종별의 스트림 개수가 된다.
재생장치에는 이 스트림 종별마다 스트림 번호 레지스터가 존재하고 있고, 여기에 저장된 스트림 번호에서 지시되는 ES가 현재 재생대상으로 되어 있는 ES, 즉 현재 스트림이 된다.
이 스트림 엔트리 내에 재생해야 할 ES의 패킷 식별자가 기술된다. 스트림 엔트리 내에 재생해야 할 ES의 패킷 식별자를 기술할 수 있으므로, 스트림 등록에서의 스트림 번호를 재생장치의 스트림 번호 레지스터에 저장하여, 스트림 등록에서의 스트림 엔트리 내의 패킷 식별자에 근거해 재생장치의 PID 필터에 패킷 필터링을 재생장치에 실행시킨다. 이와 같이 함으로써 기본 스트림 선택테이블에서 재생이 허가된 ES의 TS 패킷이 디코더에 출력되어 ES의 재생이 이루어지게 된다.
기본 스트림 선택테이블에서의 이들 스트림 등록은 스트림 번호의 순서에 따라서 배열되어 있고, 스트림 번호의 순서에 근거하는 스트림 등록의 순위는 "재생장치가 재생할 수 있는" “재생장치의 언어설정과 동일한 언어속성을 갖는”이라는 조건을 만족하는 스트림이 복수 존재하는 경우, 스트림 등록 열에서의 스트림 번호의 순위에 의해서 선택 대상이 되는 스트림이 결정된다.
이와 같이 함으로써 기본 스트림 선택테이블에서의 스트림 등록 중에 재생장치가 재생할 수 없는 것이 존재하는 경우에 이 스트림은 재생으로부터 제외되게 되고, 또, 재생장치가 재생할 수 있다는 조건을 만족하는 스트림이 복수 존재하는 경우에는 그들 중 어느 것을 우선적으로 선택해야 하는가라는 지침을 오서링 담당자는 재생장치에 전달할 수 있다.
"재생장치가 재생할 수 있는", “재생장치의 언어설정과 동일한 언어속성을 갖는”의 조건을 만족하는 스트림이 존재하는가 여부의 판정과, "재생할 수 있는"이라는 조건을 만족하는 스트림 중 어느 것을 선택하는가 라고 하는 선택 순서는 스트림 선택 프로시저라고 불린다. 스트림 선택 프로시저는 현재 플레이아이템이 새로운 것으로 바뀐 때, 또, 사용자로부터 스트림 변환이 요구된 때에 실행된다.
현재 플레이아이템이 새로운 것으로 바뀌는 등, 재생장치의 상태변화가 발생한 때에 상술한 것과 같은 판정이나 선택을 하여 재생장치의 스트림 번호 레지스터에 스트림 번호를 설정하는 일련의 순서를 "상태 변화시에 실행해야 하는 프로시저"라고 한다. 스트림 번호 레지스터는 스트림 종별마다 존재하므로, 상기 프로시저는 스트림 종별마다 실행되게 된다.
스트림 변경요구가 사용자에 의해서 이루어진 경우, 상술한 것과 같은 판정이나 선택을 하여, 재생장치의 스트림 번호 레지스터에 스트림 번호를 설정하는 일련의 순서를 "스트림 변화가 요구된 때의 프로시저"라고 한다.
BD-ROM이 장전된 때에 스트림 번호 레지스터를 스트림 등록 열에서의 초기치로 설정해 두는 순서를 "초기화"라고 한다.
기본 스트림 선택테이블에서의 스트림 등록 열은 서브 플레이아이템 정보에 의해서 지정되어 있는 스트림과 플레이아이템정보에 의해서 지정되어 있는 스트림에 일률적으로 우선 순서를 부여하고 있으므로, 비디오 스트림과는 다중화되어 있지 않은 스트림이라도 서브 플레이아이템 정보에 의해서 지정되어 있으면 비디오 스트림과 동기 재생해야 하는 스트림의 선택에서의 선택의 대상이 된다.
그리고 서브 플레이아이템정보에서 지정된 스트림을 재생장치가 재생할 수 있고, 또한, 서브 플레이아이템정보에서 지정된 스트림의 우선 순서가 비디오 스트림과 다중화된 그래픽스 스트림의 우선 순서보다 높은 경우에는 비디오 스트림과 다중화된 스트림 대신에 서브 플레이아이템정보에서 지정된 스트림을 재생에 제공할 수 있다.
도 13은 기본 스트림 선택테이블의 일례를 나타낸다. 동 도 (a)는 스트림 종별로 프라이머리 비디오 스트림, 프라이머리 오디오 스트림, PG 스트림, IG 스트림, 세컨더리 비디오 스트림, 세컨더리 오디오 스트림이라는 종별이 존재하는 경우에 기본 스트림 선택테이블에 설치되는 복수의 스트림 등록 열을 나타낸다. 동 도면 (b)는 기본 스트림 선택테이블에 의해 메인 TS, 서브 TS로부터 어떤 ES가 분리되는가를 나타낸다. 동 도의 좌측은 메인 TS, 서브 TS를 나타내고, 한가운데는 기본 스트림 선택테이블과 다중분리부를 나타낸다. 우측은 기본 스트림 선택테이블에 근거해 분리되는 프라이머리 비디오 스트림, 프라이머리 오디오 스트림, PG 스트림, IG 스트림, 세컨더리 비디오 스트림, 세컨더리 오디오 스트림을 나타낸다.
이어서, 익스텐션 데이터의 상세에 대하여 설명한다.
플레이리스트가 픽쳐 인 픽쳐 애플리케이션을 구성하는 경우, 픽쳐 인 픽쳐 메타데이터는 플레이리스트 파일에서의 익스텐션 데이터의 데이터블록에 저장되어야 한다. MVC 비디오 스트림을 플레이리스트정보가 참조하는 경우, 확장 스트림 선택테이블은 플레이리스트정보 파일의 익스텐션 데이터에서의 데이터블록에 저장되어야 한다.
디스크 상의 MVC 비디오 스트림이나 입체 시 IG 스트림 재생 메뉴에서의 MVC 비디오 스트림을 플레이리스트정보가 참조하는 경우, 서브패스정보의 확장정보(서브패스 블록 익스텐션)는 플레이리스트정보 파일에서의 익스텐션 데이터의 데이터블록에 저장되어야 한다.
플레이리스트정보에서의 익스텐션 데이터의 그 외의 목적은 보류되어 있다.
2D 재생장치는 플레이리스트 파일에서의 익스텐션 데이터와 조우한 때에는 미지의 익스텐션 데이터를 무시하여야 한다.
<확장 스트림 선택테이블(STreamNumber_table_StereoScopic(SS))>
상기 확장 스트림 선택테이블은 입체 시 재생 모드에서 재생해야 할 엘리멘터리 스트림을 나타내는 리스트이며, 입체 시 재생 모드에서만 기본 스트림 선택테이블과 함께 사용되어, 플레이아이템의 재생이나 이에 관련하는 서브패스가 재생되고 있을 때 선택할 수 있는 ES를 정의한다.
상기 확장 스트림 선택테이블은 입체 시 재생 모드에 대해서만 재생을 허가해야 할 ES를 나타내며, 스트림 등록 열을 포함한다. 스트림 등록 열에서의 개개의 스트림 등록정보는 스트림 번호와 그 스트림 번호에 대응하는 스트림 엔트리 및 스트림 속성을 포함한다. 확장 스트림 선택테이블은 입체 시 재생 모드 고유의 확장을 의미하므로, 각 플레이아이템 정보에 확장 스트림 선택테이블(STN_table_SS)이 관련되어 있는 플레이리스트를 "3D 플레이리스트"라고 한다.
확장 스트림 선택테이블에서의 스트림 엔트리는 재생장치가 입체 시 재생 모드로 설정되어 있는 경우에 있어서 대응하는 스트림 번호가 재생장치에서의 스트림 번호 레지스터에 설정된 때에 재생장치가 다중분리에 이용해야 할 패킷 식별자를 나타낸다. 여기서, 기본 스트림 선택테이블과의 차이는 확장 스트림 선택테이블에서의 스트림 등록 열은 스트림 선택 프로시저의 대상이 되지 않는다는 점이다. 즉, 기본 스트림 선택테이블에서의 스트림 등록 열에서의 스트림 등록정보는 개개의 ES의 우선 순서로 해석되며, 어느 스트림 등록정보 내의 스트림 번호가 스트림 번호 레지스터에 기입된다. 그러나 확장스트림 선택테이블에서의 스트림 등록 열은 스트림 선택 프로시저의 대상으로는 되지 않으며, 확장 스트림 선택테이블에서의 스트림 등록정보는 어느 한 스트림 번호가 스트림 번호 레지스터에 저장된 때 그 스트림 번호에 대응하는 스트림 엔트리 및 스트림 속성을 인출한다고 하는 목적에만 이용된다.
2D 재생 모드에서 3D 재생 모드로 재생 모드가 바뀐 때 대상이 되는 스트림 선택테이블이 기본 스트림 선택테이블에서 확장 스트림 선택테이블로 바뀌었으므로, 스트림 선택 프로시저를 실행하게 되면 스트림 번호의 동일성을 유지할 수 없으며, 심지어는 언어속성의 동일성도 상실될 가능성이 있다.
2D 재생 모드로부터 3D 재생 모드로의 변환시에 언어속성을 비롯한 스트림 속성의 동일성을 유지하기 위해서 확장 스트림 선택테이블의 용도는 상기의 것에도 머무르고 있다.
상기 확장 스트림 선택테이블은 디펜던트 뷰 비디오 스트림의 스트림 등록 열, PG 스트림의 스트림 등록 열, IG 스트림의 스트림 등록 열로 구성된다.
확장 스트림 선택테이블에서의 스트림 등록 열은 기본 스트림 선택테이블에서의 동일한 스트림 종별의 스트림 등록 열에 결합된다. 이 결합은 스트림 선택테이블에서의 프라이머리 비디오 스트림의 스트림 등록 열에 확장 스트림 선택테이블에서의 디펜던트 뷰 비디오 스트림의 스트림 등록 열을 결합하고, 스트림 선택테이블에서의 PG 스트림의 스트림 등록 열에 확장 스트림 선택테이블에서의 PG 스트림의 스트림 등록 열을 결합하며, IG 스트림의 스트림 등록 열에 확장 스트림 선택테이블에서의 IG 스트림의 스트림 등록 열을 결합함으로써 이루어진다.
상기의 결합이 이루어지면, 결합 후의 스트림 선택테이블 중 기본 스트림 선택테이블에서의 스트림 등록 열에 대해서 상기 프로시저가 실행된다.
도 14는 확장 스트림 선택테이블의 내부 구성을 나타낸다. 확장 스트림 선택테이블은 확장 스트림 선택테이블의 전체 길이(length), 팝업 기간 고정 오프셋(Fixed_offset_during_Popup), 각 플레이아이템에서의 각각의 스트림 종별에 대응하는 스트림 등록 열로 이루어진다.
여기서 플레이아이템 #1~#N이라는 N개의 플레이아이템이 존재하는 경우, 플레이아이템 #1~#N의 각각 대응하는 스트림 등록 열이 확장 스트림 선택테이블에 설치된다. 각 플레이아이템에 대응하는 스트림 등록 열은 디펜던트 뷰 스트림 등록 열, PG 스트림 등록 열, IG 스트림 등록 열이다.
「Fixed_offset_during_Popup」은 팝업 기간 고정 오프셋이며, IG 스트림에 의한 팝업메뉴가 온으로 설정되어 있는 경우 비디오나 PG_텍스트 자막 스트림의 재생타입을 제어한다. 이「Fixed_offset_during_Popup」 필드는 IG 스트림에서의 user_interface_model 필드가 온, 즉, 팝업메뉴의 유저 인터페이스가 온으로 설정되어 있는 경우 온으로 설정된다. IG 스트림에서의 user_interface_model 필드가 오프, 즉, AlwaysON의 유저 인터페이스로 설정되어 있는 경우 오프로 설정된다.
팝업 기간 고정 오프셋 "=0", 즉, IG 스트림의 유저 인터페이스에서 팝업메뉴가 오프로 설정되어 있는 경우 비디오 스트림은 B-D 프레젠테이션 모드가 된다. 입체 시 PG 스트림은 입체 시 재생타입이 된다. 1plane+Offset 모드의 재생시에 있어서 PG_텍스트 자막 스트림은 1plane+Offset 모드가 된다.
팝업 기간 고정 오프셋 "=1", 즉, IG 스트림의 팝업메뉴가 온인 경우 비디오 스트림은 B-B프레젠테이션 모드가 된다. 입체 시 PG 스트림은 1plane+Offset 모드가 되고, 1plane+Offset용의 PG 스트림은 1plane+Zero offset 재생타입으로서 재생된다.
1plane+Offset 모드에서 PG_텍스트 자막 스트림은 1plane+Zero offset가 된다.
「오프셋 시퀀스 개수정보(도면 중의 number_of_offset_sequence)」는 디펜던트 뷰 스트림에서의 오프셋 시퀀스의 개수를 나타낸다.
확장 스트림 선택테이블에서의 이값은 디펜던트 뷰 스트림에 포함되는 오프셋 시퀀스의 개수와 같게 된다.
도 15는 확장 스트림 선택테이블에서의 스트림 등록 열을 나타낸다.
도 15 (a)는 디펜던트 뷰 비디오 스트림의 스트림 등록 열의 내부 구성을 나타낸다. 디펜던트 뷰 스트림의 스트림 등록 열은 v(x) 개의 SS_dependet_view_block로 구성된다. 여기서, v(x)는 플레이아이템정보 #x의 기본 스트림 선택테이블에서 재생이 허가되어 있는 프라이머리 비디오 스트림의 개수이다. 도면 중의 인출선은 디펜던트 뷰 스트림의 스트림 등록 열의 내부 구성을 클로즈업하여 나타내고 있다. 인출선에 나타내는 것과 같이 SS_dependet_view_block은 스트림 번호와 스트림 엔트리 및 스트림 속성과 number_of_offset_sequence로 구성된다.
스트림 엔트리는 디펜던트 뷰 비디오 스트림의 재생패스가 귀속하고 있는 서브패스를 지정하는 서브패스 식별자 레퍼런스(ref_to_Subpath_id)와 디펜던트 뷰 비디오 스트림이 저장되어 있는 스트림 파일을 지정하는 스트림 파일 레퍼런스(ref_to_subClip_entry_id) 및 당해 스트림 파일에서의 디펜던트뷰 비디오 스트림의 패킷 식별자(ref_to_stream_PID_subclip)를 포함한다.
「스트림 속성」은 디펜던트 뷰 비디오 스트림의 언어속성을 포함한다.
「number_of_offset_sequence」는 디펜던트 뷰 비디오 스트림 내에 존재하는 오프셋의 개수를 나타낸다.
도 15 (a)에서 디펜던트 뷰 비디오 스트림의 스트림 등록 열은 데이터구조상 복수의 디펜던트 뷰 비디오 스트림에 대한 스트림 등록정보를 설치하는 것으로 되어 있다. 통상, 베이스 뷰 비디오 스트림의 개수는 1개이므로 디펜던트 뷰 비디오 스트림에서의 스트림 등록정보의 개수도 유일하게 하나가 된다.
도 15 (b)는 PG 스트림의 스트림 등록 열의 내부 구성을 나타낸다. PG 스트림의 스트림 등록 열은 P(x) 개의 스트림 등록정보로 구성된다. 여기서, P(x)란 플레이아이템정보 #x의 기본 스트림 선택테이블에서 재생이 허가되어 있는 PG 스트림의 개수이다.
도면 중의 인출선은 PG 스트림 등록 열의 공통의 내부 구성을 클로즈업해서 나타내고 있다.
「PGtextST_offset_sequence_id_ref」는 PG_텍스트 자막 스트림 오프셋 시퀀스 레퍼런스 정보이며, 1plane+Offset 모드의 PG_텍스트 자막 스트림에 대한 오프셋 시퀀스를 지시한다.
오프셋 메타데이터는 디펜던트 뷰 비디오 스트림의 액세스유닛에 의해 공급된다. 재생장치는 이 필드에 의해서 제공된 오프셋을 1plane+Offset 모드 타입의 프레젠테이션 그래픽스(PG) 플레인에 적용시켜야 한다.
이 필드가 부정 값(FF)인 경우, 재생장치는 PG 스트림 플레인 메모리에 이 오프셋을 적용하지 않는다.
「is_SS_PG」는 PG 스트림에서의 베이스 뷰 IG의 스트림 엔트리, 디펜던트 뷰 IG의 스트림 엔트리, 스트림 속성의 유효성과 존재를 지시하는 입체 시 프레젠테이션 그래픽스 존부 플래그이다. 입체 시 PG 스트림에서의 구조가 존재하지 않는 경우 이 필드는 0으로 설정되어야 한다. 입체 시 PG 스트림에서의 구조가 존재하는 경우 이 필드는 1로 설정되어야 한다.
「stream_entry_for_base_view」는 베이스 뷰 PG 스트림의 재생 패스가 귀속하고 있는 서브패스를 지정하는 서브패스 식별자 레퍼런스(ref_to_Subpath_id)와 베이스 뷰 PG 스트림이 저장되어 있는 스트림 파일을 지정하는 스트림 파일 레퍼런스(ref_to_subClip_entry_id) 및 당해 스트림 파일에서의 베이스 뷰 PG 스트림의 패킷 식별자(ref_to_stream_PID_subclip)를 포함한다.
「stream_entry_for_depentdent_ view」는 디펜던트 뷰 PG 스트림의 재생 패스가 귀속하고 있는 서브패스를 지정하는 서브패스 식별자 레퍼런스(ref_to_Subpath_id)와 디펜던트 뷰 PG 스트림이 저장되어 있는 스트림 파일을 지정하는 스트림 파일 레퍼런스(ref_to_subClip_entry_id) 및 당해 스트림 파일에서의 디펜던트 뷰 PG 스트림의 패킷 식별자(ref_to_stream_PID_subclip)를 포함한다. 확장 스트림 선택테이블의 스트림 등록정보에서의 stream_entry_for_depentdent_view에 의해서 참조되어 있는 스트림 파일이 기본 스트림 선택테이블의 스트림 엔트리에 따라서 참조되어 있는 스트림 파일과는 다른 경우, 디펜던트 뷰 PG 스트림을 저장하고 있는 스트림 파일을 다시 판독되어야 한다.
「stream_attribute」는 베이스 뷰 PG 스트림 및 디펜던트 PG 스트림의 언어속성을 포함한다.
「SS_PG_textST_offset_sequence_id_ref」는 PG_텍스트 자막 스트림용의 오프셋 시퀀스를 참조하기 위한 레퍼런스 정보이며, PG_텍스트 자막 스트림을 위한 오프셋 시퀀스를 지시한다. 재생장치는 이 필드에 의해서 제공된 오프셋을 PG 플레인에 적용하여야 한다.
이 필드가 부정 값(FF)인 경우 재생장치는 PG 스트림 플레인 메모리에 이 오프셋을 적용하지 않는다.
도 15 (c)는 IG 스트림의 스트림 등록 열의 내부 구성을 나타낸다. IG 스트림의 스트림 등록 열은 I(x)개의 스트림 등록정보로 구성된다. 여기서, I(x)란 플레이아이템정보 #x의 기본 스트림 선택테이블에서 재생이 허가되어 있는 IG 스트림의 개수이다. 도면 중의 인출 선은 스트림 등록 열의 공통의 내부 구성을 클로즈업해서 나타내고 있다.
「IG_offset_sequence_id_ref」는 인터랙티브 그래픽스 오프셋 시퀀스 레퍼런스이며, 1plane+Offset 모드의 IG 스트림의 시퀀스 ID의 레퍼런스이다. 이값은 오프셋 시퀀스에 정의되어 있는 오프셋 시퀀스 ID를 지시한다. 상술한 것과 같이 오프셋 메타데이터는 디펜던트 뷰 비디오 스트림에 의해서 공급된다. 재생장치는 이 필드에 의해서 제공된 오프셋을 1plane+Offset 모드 타입의 IG 스트림에 적용하여야 한다.
이 필드가 부정 값(FF)인 경우 재생장치는 인터랙티브 그래픽스 플레인에 이 오프셋을 적용하지 않는다.
「IG_Plane_offset_direction_during_BB_video」는 B-B프레젠테이션 모드에서 팝업메뉴의 유저 인터페이스에 의해 IG 스트림이 재생되고 있는 동안 1plane+Offset 모드에서의 인터랙티브 그래픽스(IG) 플레인에서의 오프셋 방향을 지시한다.
값 "0"으로 프런트 설정(front setting), 즉, 플레인 메모리는 TV와 시청자의 사이에 존재하고, 레프트 뷰 기간에 있어서 플레인은 우 방향으로, 라이트 뷰 기간에 있어서 플레인은 좌 방향으로 시프트 된다.
값=1로 비하인드 설정(behind setting), 즉, 플레인 메모리는 TV 또는 스크린의 배후에 존재하고, 레프트 플레인은 좌 방향으로, 라이트 플레인은 우 방향으로 시프트 된다.
「IG_Plane_offset_value_during_BB_video」는 B-B프레젠테이션 모드에서 팝업메뉴의 유저 인터페이스에 의해서 IG 스트림이 재생되고 있는 동안 1plane+Offset 모드에서의 IG 플레인의 오프셋 값을 화소 단위로 지시한다.
「is_SS_IG」는 입체 시 인터랙티브 그래픽스 존부 플래그이며, IG 스트림에서의 베이스 뷰 IG의 스트림 엔트리, 디펜던트 뷰 IG의 스트림 엔트리, 스트림 속성의 유효성과 존재를 지시한다. 입체 시 IG 스트림의 데이터구조가 존재하지 않는 경우 이 필드는 값 0으로 설정되어야 한다. 재생이 허가되어 있는 IG 스트림이 입체 시 IG 스트림인 경우 이 필드는 값 1로 설정되어야 한다.
「stream_entry_for_base_view」는 베이스 뷰 IG 스트림의 재생 패스가 귀속하고 있는 서브패스를 지정하는 서브패스 식별자 레퍼런스(ref_to_Subpath_id)와 베이스 뷰 IG 스트림이 저장되어 있는 스트림 파일을 지정하는 스트림 파일 레퍼런스(ref_to_subClip_entry_id)와 당해 스트림 파일에서의 베이스 뷰 IG 스트림의 패킷 식별자(ref_to_stream_PID_subclip)를 포함한다.
「stream_entry_for_depentdent_view」는 디펜던트 뷰 IG 스트림의 재생 패스가 귀속하고 있는 서브패스를 지정하는 서브패스 식별자 레퍼런스(ref_to_ Subpath_id)와 디펜던트 뷰 IG 스트림이 저장되어 있는 스트림 파일을 지정하는 스트림 파일 레퍼런스(ref_to_subClip_entry_id)와 당해 스트림 파일에서의 디펜던트 뷰 IG 스트림의 패킷 식별자(ref_to_stream_PID_subclip)를 포함한다. 확장 스트림 선택테이블의 스트림 등록정보에서의 stream_entry_for_depentdent_view에 의해서 참조되어 있는 스트림 파일이 기본 스트림 선택테이블의 스트림 엔트리에 의해 참조되어 있는 스트림 파일과는 다른 경우에는 디펜던트 뷰 IG 스트림을 저장하고 있는 스트림 파일을 재차 판독해야 한다.
「stream_attribute」는 베이스 뷰 IG 스트림 및 디펜던트 IG 스트림의 언어속성을 포함한다.
「SS_IG_offset_sequence_id_ref」는 입체 시 타입의 IG 스트림을 위한 오프셋 시퀀스 ID의 레퍼런스이며, 디펜던트 비디오 스트림의 오프셋 메타데이터에서의 오프셋 시퀀스를 지시한다. 재생장치는 이 필드에 의해서 제공된 오프셋을 입체 시 타입의 IG 플레인에 적용하여야 한다.
이 필드가 부정 값(FF)인 경우 재생장치는 IG 플레인에 이 오프셋을 적용하지 않는다.
확장 스트림 선택테이블에서의 제한에 대해서 설명한다.
입체 시 디펜던트 뷰 블록에서의 스트림 엔트리는 플레이리스트에서 변화해서는 안 된다.
입체 시 디펜던트 뷰 블록에서의 스트림 엔트리의 타입이 서브패스에 의해서 사용되는 ES타입(스트림 타입=2)이면 서브패스 ID 레퍼런스와 서브 클립 엔트리 ID 레퍼런스(ref_to_subclip_entry_id)는 플레이리스트에서 변화하지 않는다.
스트림 엔트리, 베이스 뷰 용 스트림 엔트리, 디펜던트 뷰 용 스트림 엔트리의 타입으로 허용되는 ES의 타입은 플레이아이템에 의해서 사용되는 AV 클립 내의 ES (스트림 타입=1), 서브패스에 의해서 사용되는 AV 클립 내의 ES(스트림 타입=2)의 2개의 타입뿐이다.
입체 시 디펜던트 뷰 블록에서의 스트림 속성의 스트림 부호화방식은 "0x20"로 설정된다.
도 16은 기본 스트림 선택테이블, 확장 스트림 선택테이블에 의해 메인 TS, 서브 TS로부터 어떤 ES가 다중분리되는가를 나타낸다.
본 도면의 한가운데에는 다중분리부를 나타내고, 그 위쪽에는 기본 스트림 선택테이블과 확장 스트림 선택테이블의 조(set)를 나타낸다. 좌측에는 메인 TS, 서브 TS, 우측에는 다중분리되는 베이스 뷰 비디오 스트림, 디펜던트 뷰 비디오 스트림, 베이스 뷰 PG 스트림, 디펜던트 뷰 PG 스트림, 베이스 뷰 IG 스트림, 디펜던트 뷰 IG 스트림, 프라이머리 오디오 스트림을 나타낸다.
도 17은 도 16과 같은 다중분리가 이루어지는 경우에 기본 스트림 선택테이블, 확장 스트림 선택테이블에서의 스트림 등록 열이 어떻게 참조되는가를 나타낸다. 본 도면의 한가운데에 기본 스트림 선택테이블과 확장 스트림 선택테이블을 나타낸다.
기본 스트림 선택테이블의 좌측은 재생장치에서 현재 스트림의 스트림 번호를 저장하는 스트림 번호 레지스터를 나타낸다. 기본 스트림 선택테이블의 우측은 재생장치에서의 언어설정을 나타낸다. 확장 스트림 선택테이블의 아래쪽은 다중분리부를 나타낸다. 화살표 h1은 PG 스트림의 언어설정과 기본 스트림 선택테이블에서의 PG 스트림의 스트림 등록정보 X에서의 언어속성과의 일치를 모식적으로 나타낸다. 화살표 h2는 PG 스트림의 스트림 번호 레지스터로의 스트림 번호 X의 설정을 모식적으로 나타낸다.
화살표 h3는 IG 스트림의 언어설정과 기본 스트림 선택테이블에서의 IG 스트림의 스트림 등록정보 Y에서의 언어속성과의 일치를 모식적으로 나타낸다. 화살표 h4는 IG 스트림의 스트림 번호 레지스터로의 스트림 번호 Y의 설정을 모식적으로 나타낸다.
본 도면의 스트림 번호의 설정은 기본 스트림 선택테이블에 대한 스트림 선택 프로시저의 결과에 따라서 다중분리에 제공되는 PG 스트림, IG 스트림이 정해지는 것을 상징적으로 나타내고 있다.
화살표 PD1은 확장 스트림 선택테이블 내의 SS_dependent_view_block에서의 스트림 엔트리에 기술되어 있는 패킷 식별자의 출력을 모식적으로 나타낸다. 이 출력에 의해서 다중분리부에서의 다중분리가 이루어지고, 디펜던트 뷰 비디오 스트림이 출력된다.
화살표 PD2는 확장 스트림 선택테이블에서의 PG 스트림의 스트림 등록정보의 스트림 엔트리 중 스트림 번호 X에 대응하는 것의 패킷 식별자의 출력을 모식적으로 나타낸다. 화살표 X1은 화살표 PD1의 패킷 식별자 출력이 스트림 번호 레지스터에 대한 현재 스트림 번호 X의 설정과 연동하고 있는 것을 나타낸다.
화살표 PD3는 확장 스트림 선택테이블에서의 IG 스트림의 스트림 등록정보의 스트림 엔트리 중 스트림 번호 Y에 대응하는 것의 패킷 식별자의 출력을 모식적으로 나타낸다. 화살표 Y1은 화살표 PD3의 패킷 식별자 출력이 스트림 번호 레지스터에 대한 현재 스트림 번호 Y의 설정과 연동하고 있는 것을 나타낸다.
여기에서의 연동이란, 기본 스트림 선택테이블에서의 PG, IG 스트림의 스트림 등록 열에 기술된 스트림 번호 중 스트림 번호 X, Y가 현재의 PG, IG 스트림 번호로서 스트림 번호 레지스터로 설정된 것에 확장 스트림 선택테이블에 기재된 패킷 식별자의 출력이 연동하고 있는 것을 의미한다.
이 출력에 의해서 다중분리부에서의 다중분리가 이루어져서 PG, IG 스트림이 출력된다.
도 18은 모드에서의 스트림 번호의 할당 변화를 나타낸다. 세로 난은 비디오 스트림 #1이라는 스트림 번호, 오디오 스트림 #1, #2라는 스트림 번호, PG 스트림 #1, #2라는 스트림 번호, IG 스트림 #1, #2라는 스트림 번호를 나타내고 있다.
좌측의 점선 틀에만 둘러싸이는 ES는 2D 재생 모드에서만 다중분리의 대상이 되는 ES이다.
우측의 점선 틀에만 둘러싸이는 ES는 3D 재생 모드에서 다중분리의 대상이 되는 ES를 나타낸다.
좌측 및 우측의 점선 틀의 쌍방으로 둘러싸이는 ES는 2D 재생 모드 및 3D 재생모드에서 다중분리의 대상이 되는 ES를 나타낸다.
비디오 스트림 #1의 스트림 번호인 만에 주목하면, 프라이머리 비디오 스트림은 좌우 양쪽 모두의 점선 틀에 둘러싸이므로 2D 재생 모드 및 3D 재생 모드의 쌍방에서 재생 대상이 되어 있는 것을 알 수 있다. 이 2D 비디오 스트림은 레프트 뷰 비디오 스트림이다. 그러나 라이트 뷰 비디오 스트림은 우측의 점선 틀에만 둘러싸여 있으므로 3D 재생 모드에서만 재생되는 것을 알 수 있다.
오디오 스트림 #1, 오디오 스트림 #2의 스트림 번호에 주목하면, 오디오 스트림은 좌우 양쪽 모두의 점선 틀에 둘러싸이므로 2D 재생 모드 및 3D 재생 모드의 쌍방에서 재생 대상으로 되어 있는 것을 알 수 있다.
PG 스트림 #1, PG 스트림 #2의 스트림 번호에 주목하면, 2D PG 스트림은 좌측의 점선 틀에만 둘러싸이므로 2D 재생 모드만에서 재생대상이 되어 있는 것을 알 수 있다. 베이스 뷰 PG 스트림, 디펜던트 뷰 PG 스트림은 우측의 점선 틀에만 둘러싸여 있으므로 3D 재생 모드에서만 재생되는 것을 알 수 있다. IG 스트림도 마찬가지이다.
이상으로부터, 3D 재생 모드에서 비디오 스트림이라고 하는 스트림 종별에서는 디펜던트 뷰 비디오 스트림이 재생 대상으로서 부가될 수 있음을 알 수 있다.
또, 3D 재생 모드에서 PG 스트림이라고 하는 스트림 종별에서는 재생대상이 2D PG 스트림에서 베이스 뷰 PG 스트림 및 디펜던트 뷰 PG 스트림으로 치환되어 있음을 알 수 있다.
상기 확장 스트림 선택테이블은 오브젝트 지향형 컴파일러언어를 이용해서 도 19와 같이 기술하여 컴파일에 제공함으로써 작성할 수 있다. 도 19는 오브젝트 지향형 컴파일러언어를 이용해 확장 스트림 선택테이블을 기술하기 위한 신텍스를 나타낸다.
PlayItem_id를 제어변수로 하는 for문은 Fixed_offset_during_Popup, 디펜던트 뷰 스트림의 스트림 등록 열, PG_텍스트 자막 스트림의 스트림 등록 열, IG 스트림의 스트림 등록 열의 기술을 플레이아이템의 개수만큼 반복하는 루프를 구성한다.
primary_video_stream_id를 제어변수로 하는 for문은 디펜던트 뷰 스트림의 스트림 등록 열을 정의하는 것이며, 디펜던트 뷰 스트림의 스트림 등록 열은 number_of_primary_video_stream_entries만큼 stream_entry, stream_attribute, number_ of_offset_sequence로 이루어지는 SS_dependent_view_block를 기술함으로써 정의된다.
PG_textST_stream_id를 제어변수로 하는 for문은 PG_텍스트 자막 스트림의 스트림 등록 열을 정의하는 것이며, number_of_PG_textST_stream_number_entries만큼 PG_text_offset_sequence_id_ref, is_SS_PG의 기술을 반복하는 루프가 되어 있다. 루프 중에 존재하는 is_SS_PG를 제어변수로 한 if문은 is_SS_PG가 1b이면 stream_entry_for_base_biew(), stream_entry_for_dependent_biew(), stream_ attribute를 정의하는 것이며, 이 if문에 의해 stream_entry_for_ base_biew(), stream_entry_for_dependent_biew(), stream_attribute는 is_SS_PG가 1bd인 경우에만 스트림 등록 열에 추가된다. Is_SS_50PG가 0b이면 stream_entry_for_base_biew(), stream_entry_for_dependent_biew(), stream_attribute는 추가되지 않는다.
IG_stream_id를 제어변수로 하는 for문은 IG 스트림의 스트림 등록 열을 정의하는 것이며, number_of_IG_stream_entries만큼 IG_offset_sequence_id_ref, IG_plane_offset_direction_during_BB_video, IG_plane_offset_value_during_ BB_video, is_SS_IG의 기술을 반복하는 루프로 되어 있다. 루프 중에 존재하는 is_SS_IG를 제어변수로 한 if문은 is_SS_IG가 1b이면 stream_entry_ for_base_biew(), stream_entry_for_dependent_biew(), stream_attribute를 정의하는 것이며, 이 if문에 의해서 stream_entry_for_base_biew(), stream_entry_ for_dependent_biew(), stream_attribute는 is_SS_IG가 1b인 경우만 스트림 등록 열에 추가된다. Is_SS_IG가 0 b이면 stream_entry_for_base_biew(), stream_entry_for_dependent_biew(), stream_attribute는 추가되지 않는다.
이상이 기록매체에 대한 설명이다. 이어서, 재생장치의 상세에 대하여 설명한다.
도 20은 재생장치의 내부 구성을 나타낸다. 본 도면에 나타내는 것과 같이 재생장치는 판독부(201), 메모리(202), 플레이어번호 레지스터(203), 디코더(204), 다중분리부(205), 플레인 메모리 세트(206), 시프트부(207), 레이어 합성부(208), 송수신부(209), 재생제어부(210), 출력 모드 레지스터(211), 컨피그레이션 메모리(212)로 구성된다. 본 도면의 내부 구성은 과제해결수단을 구비한 재생장치를 실시하기 위한 필요 최저한의 구성요소를 기술한 것에 불과하다. 보다 상세한 내부 구성에서는 후단의 실시 예에 설명을 양보한다.
판독부(201)는 기록매체로부터 인덱스테이블, 동작 모드 오브젝트의 프로그램 파일, 플레이리스트정보 파일, 스트림 정보파일, 스트림 파일을 판독한다.
메모리(202)는 플레이리스트정보에 포함되는 기본 스트림 선택테이블과 확장 스트림 선택테이블을 결합함으로써 얻어진 결합 스트림 등록 열을 저장한다.
스트림 종별마다의 플레이어 번호 레지스터(203)는 비디오 스트림의 스트림 번호를 저장하는 비디오 스트림 번호 레지스터, PG 스트림의 스트림 번호를 저장하는 PG 스트림 번호 레지스터, IG 스트림의 스트림 번호를 저장하는 IG 스트림 번호 레지스터, 오디오 스트림 번호를 저장하는 오디오 스트림 번호 레지스터를 포함한다.
스트림 종별마다의 디코더(204)는 비디오 디코더, PG 디코더, IG 디코더, 오디오 디코더로 구성된다.
다중분리부(205)는 패킷 필터링을 실행하는 PID 필터를 구비하며, 기록매체로부터 판독된 복수의 소스 패킷 내의 TS 패킷 중 결합 스트림 등록 열에 기재된 패킷 식별자에 의해서 지시되어 있는 것을 분리하여 각 디코더에 출력한다.
플레인 메모리 세트(206)는 복수의 플레인 메모리로 구성된다. 플레인 메모리란 ES를 디코드함으로써 얻은 1 화면 분의 화소 데이터를 라인 단위로 저장해 두고, 수평 동기신호, 수직 동기신호에 따라서 이들의 화소 데이터를 출력하기 위한 메모리이다. 개개의 플레인 메모리는 비디오 디코더, PG 디코더, IG 디코더의 디코드에 의해서 얻은 1 화면 분의 화소 데이터를 저장한다.
이들 플레인 메모리는 레이어 모델을 구성하고 있고, 개개의 플레인 메모리의 저장 내용은 레이어 합성에 제공된다. 이 레이어 합성은 플레인 메모리의 레이어 모델에서 2개의 계층의 플레인 메모리에 저장되어 있는 화소 데이터의 화소치를 중첩 시키는 처리를 레이어 모델에서의 2개의 계층의 모든 조합에 대해서 실행함으로써 이루어진다.
시프트부(207)는 화소의 좌표의 시프트를 실행한다.
레이어 합성부(208)는 복수의 플레인 메모리에서의 레이어 합성을 한다.
송수신부(209)는 홈시어터시스템에서의 다른 기기와 인터페이스를 개재하여 접속된 때에 상호 인증 페이즈(mutual authentication phase)와 네고시에이션 페이즈(negotiation phase)를 거쳐서 데이터 전송 페이즈로 이행하여 데이터 전송을 한다.
이 네고시에이션 페이즈는 상대 측 기기의 케퍼빌리티(디코드 능력, 재생능력, 표시주파수를 포함한다)를 파악하여 플레이어 설정 레지스터에 설정해 두고, 이후의 전송을 위한 전송방식을 정하는 것이다. 이들 상호인증 페이즈, 네고시에이션 페이즈를 거쳐서 레이어 합성이 이루어진 픽쳐 데이터에서의 1 라인 분의 비 압축·평문형식의 화소 데이터를 표시장치에서의 수평 동기기간에 따라서 표시장치에 높은 전송 레이트로 전송한다. 한편, 표시장치에서의 수평 귀선 시간 및 수직 귀선 시간에 있어서 재생장치와 접속된 다른 장치(표시장치뿐만 아니라 앰프, 스피커를 포함한다)에 비 압축·평문 형식의 오디오 데이터를 전송한다. 이와 같이 함으로써 표시장치, 앰프, 스피커와 동일한 기기는 비 압축·평문 형식의 픽쳐 데이터, 비 압축·평문 형식의 오디오 데이터를 수신할 수 있고, 재생 출력을 실현할 수 있다. 또, 상대 측 기기에 디코드 능력이 존재하는 경우 비디오 스트림, 오디오 스트림의 패스 스루 전송(pass-through transfer)이 가능해진다. 패스 스루 전송에서는 비디오 스트림, 오디오 스트림을 압축·암호화 형식인 채로 전송할 수 있다.
재생제어부(210)는 판독부(201)를 제어하여 기록매체로부터의 인덱스테이블, 동작 모드 오브젝트, 플레이리스트정보, 클립정보, 스트림 파일을 기록매체로부터 판독하는 동시에, 기록매체로부터 판독된 플레이리스트정보, 클립정보에 근거한 재생제어를 실행한다. 스트림 파일의 판독에 있어서는 시간 축의 임의의 시점에 상당하는 소스 패킷을 스트림 파일로부터 판독하는 랜덤 액세스를 실현할 수 있다.
출력 모드 레지스터(211)는 재생 모드를 기억하고 있다.
컨피그레이션 메모리(212)는 각 플레인 메모리의 모드 케퍼빌리티와 현재 모드를 기억하는 불휘발성 메모리이며, 재생장치의 제조 주체에 의해 그 기억 내용이 설정된다. 모드 케퍼빌리티는 비디오 플레인, PG 플레인, IG 플레인이라는 복수의 플레인 메모리 각각이 상술한 것과 같은 재생 모드의 각각을 처리할 수 있는가 여부를 나타낸다. 재생 모드를 처리할 수 있는가 여부는 플레인 메모리에 대응하는 스트림 종별이 무엇인가, 또, 그 재생 모드를 처리하기 위한 하드웨어 구성이 재생장치에 존재하는가 여부에 의해서 정해진다.
현재 모드는 복수의 플레인 메모리 각각이 복수의 재생 모드 중 어느 것으로 설정되어 있는가를 나타낸다.
이상이 재생장치에 대한 설명이다. 이어서, 본 실시 예의 재생장치에 의한 다중분리처리의 상세에 대하여 설명한다.
도 21은 결합 스트림 등록 열에 의해서 어떤 패킷 식별자가 다중분리부에 출력되는가를 나타낸다. 동 도 (a)는 동작 예의 제재로 이용하는 결합 스트림 등록 열을 나타낸다. 결합 스트림 등록 열은 기본 스트림 선택테이블에서의 3개의 스트림 등록정보와 확장 스트림 선택테이블에서의 3개의 스트림 등록정보로 구성되는 것이다. 기본 스트림 선택테이블에서의 3의 스트림 등록정보는 각각, 스트림 번호 "1", "2", "3"의 스트림 번호를 가지며, 3개의 스트림 등록정보에서의 스트림 속성은 영어, 일본어, 중국어의 언어 속성을 가지고 있다.
확장 스트림 선택테이블에서의 3개의 스트림 등록정보는 각각 스트림 번호 "1", "2", "3"의 스트림 번호를 가지며, 3개의 스트림 등록정보에서의 스트림 속성은 영어, 일본어, 중국어의 언어속성을 가지고 있다. 기본 스트림 선택테이블에서의 스트림 등록정보와 확장 스트림 선택테이블에서의 스트림 등록정보와는 스트림 엔트리에서의 패킷 식별자가 다르며, 확장 스트림 선택테이블에서의 스트림 등록정보는 B-D 프레젠테이션 모드를 위한 베이스 뷰 PG 스트림을 위한 패킷 식별자, 디펜던트 뷰 PG 스트림을 위한 패킷 식별자를 포함한다.
동 도면 (b)는 언어설정이 중국어이며, 출력 모드가 2D 재생 모드에 설정된 재생장치에 이와 같은 결합 스트림 등록 열이 공급되었을 경우에서의 스트림 번호의 설정과 패킷 식별자의 출력을 나타낸다.
도면 중의 a1, a2, a3를 부여한 화살표는 언어설정의 일치 판정, 스트림 번호 레지스터에의 스트림 번호의 설정, 다중분리부에의 패킷 식별자의 출력을 모식적으로 나타낸 것이다.
프로시저에서 스트림 번호=3의 스트림 등록정보에서 재생장치 측의 언어설정과 스트림 속성과의 일치가 판정되고, 이 스트림 번호=3의 스트림 등록정보로 포함되는 스트림 번호가 스트림 번호 레지스터에 기입된다. 이때, 기본 스트림 선택테이블에서의 스트림 엔트리에서의 패킷 식별자가 다중분리부에 출력된다. 이와 같이 함으로써 기본 스트림 선택테이블에서의 스트림 번호=3의 스트림 등록정보에서의 스트림 엔트리의 패킷 식별자에 의해서 특정되는 TS 패킷이 디코더에 출력되게 된다.
동 도면 (c)는 언어설정이 중국어이며, 출력 모드가 BD 프레젠테이션 모드로 설정된 재생장치에 이와 같은 결합 스트림 등록 열이 공급되었을 경우에서의 스트림 번호의 설정과 패킷 식별자의 출력을 나타낸다.
도면 중의 a4, a5, a6를 교부한 화살표는 언어설정의 일치 판정, 스트림 번호레지스터에 대한 스트림 번호의 설정, 다중분리부에의 패킷 식별자의 출력을 모식적으로 나타낸 것이다.
프로시저에서 스트림 번호=3의 스트림 등록정보에서 재생장치 측의 언어설정과 스트림 속성과의 일치가 판정되고, 이 스트림 번호=3의 스트림 등록정보로 포함되는 스트림 번호가 스트림 번호 레지스터에 기입된다. 이때, 기본 스트림 선택테이블에서의 스트림 엔트리에서의 패킷 식별자가 다중분리부에 출력된다. 이와 같이 함으로써 확장 스트림 선택테이블에서의 스트림 번호=3의 스트림 등록정보에서의 스트림 엔트리에 저장된 패킷 식별자의 조에 의해서 특정되는 2 계통의 TS 패킷이 디코더에 출력되게 된다.
도 22는 결합 스트림 등록 열에 의해서 어떤 패킷 식별자가 다중분리부에 출력되는가를 나타낸다.
(a)는 동작 예의 제재로 이용하는 결합 스트림 등록 열을 나타낸다. 결합스트림 등록 열은 기본 스트림 선택테이블에서의 3개의 스트림 등록정보와 확장 스트림 선택테이블에서의 3개의 스트림 등록정보로 구성되는 것이다. 기본 스트림 선택테이블에서의 3개의 스트림 등록정보는 각각, 스트림 번호 "1", "2", "3"의 스트림 번호를 가지며, 3개의 스트림 등록정보에서의 스트림 속성은 어느 쪽도 중국어의 언어속성을 가지고 있다.
확장 스트림 선택테이블에서의 3개의 스트림 등록정보는 각각 스트림 번호 "1", "2", "3"의 스트림 번호를 가지며, 3개의 스트림 등록정보에서의 스트림 속성도 중국어의 언어속성을 가지고 있다. 기본 스트림 선택테이블에서의 스트림 등록정보와 확장 스트림 선택테이블에서의 스트림 등록정보에서는 스트림 엔트리에서의 패킷 식별자가 다르며, 확장 스트림 선택테이블에서의 스트림 등록정보는 B-D 프레젠테이션 모드를 위한 베이스 뷰 PG 스트림을 위한 패킷 식별자, 디펜던트 뷰 PG 스트림용의 패킷 식별자를 포함한다.
동 도면 (b)는 언어설정이 중국어이며, 출력 모드가 2D 재생 모드에 설정된 재생장치에 이와 같은 결합 스트림 등록 열이 공급되었을 경우에서의 스트림 번호의 설정과 패킷 식별자의 출력을 나타낸다.
도면 중의 a1, a2, a3를 부여한 화살표는 언어설정의 일치 판정, 스트림 번호의 설정, 패킷 식별자의 출력을 모식적으로 나타낸 것이다
프로시저에서 스트림 번호=1의 스트림 등록정보에서 재생장치 측의 언어설정과 스트림 속성과의 일치가 판정되고, 이 스트림 번호="1"이 스트림 번호 레지스터에 기입된다. 이때, 기본 스트림 선택테이블에서의 스트림 엔트리에서의 패킷 식별자가 다중분리부에 출력된다. 이와 같이 함으로써 기본 스트림 선택테이블에서의 스트림 번호 "1"의 스트림 등록정보에서의 스트림 엔트리의 패킷 식별자에 의해서 특정되는 TS 패킷이 디코더에 출력되게 된다.
(c)는 언어설정이 중국어이며, 출력 모드가 BD 프레젠테이션 모드로 설정된 재생장치에 이와 같은 결합 스트림 등록 열이 공급된 경우에서의 스트림 번호의 설정과 패킷 식별자의 출력을 나타낸다.
도면 중의 a4, a5, a6를 부여한 화살표는 언어설정의 일치 판정, 스트림 번호의 설정, 패킷 식별자의 출력을 모식적으로 나타낸 것이다.
프로시저에서 스트림 번호 "1"의 스트림 등록정보에서 재생장치 측의 언어설정과 스트림 속성과의 일치가 판정되고, 이 스트림 번호 "1"의 스트림 등록정보로 포함되는 스트림 번호가 스트림 번호 레지스터에 기입된다. 이때, 기본 스트림 선택테이블에서의 스트림 엔트리에서의 패킷 식별자가 다중분리부에 출력된다. 이와 같이 함으로써 확장 스트림 선택테이블에서의 스트림 번호 "1"의 스트림 등록정보에서의 스트림 엔트리에 저장된 패킷 식별자의 조에 의해서 특정되는 2 계통의 TS 패킷이 디코더에 출력되게 된다.
도 23은 재생장치가 B-D 프레젠테이션 모드로 설정되어 있고, BD 케퍼빌리티가 존재하는 경우에서의 패킷 식별자의 참조 및 패킷 출력을 나타낸다.
결합 스트림 등록 열과 다중분리부 사이의 화살표는 결합 스트림 등록 열에서의 복수의 스트림 등록 열 중 어느 것의 스트림 엔트리 내의 패킷 식별자가 참조되어 있는가를 나타낸다. 본 도면에서는 기본 스트림 선택테이블 내의 베이스 뷰 비디오 스트림 등록 열에서의 스트림 엔트리 내의 패킷 식별자, 확장 스트림 선택테이블 내의 디펜던트 뷰 스트림 등록 열에서의 스트림 엔트리 내의 패킷 식별자, 확장 스트림 선택테이블 내의 PG_텍스트 자막 스트림 등록 열에서의 스트림 엔트리 내의 패킷 식별자, 확장 스트림 선택테이블 내의 IG 스트림 등록 열에서의 스트림 엔트리 내의 패킷 식별자가 다중분리부에 의해서 참조되어 있는 것을 알 수 있다.
다중분리부와 복수의 디코더와의 사이의 화살표는 스트림 파일에 존재하는 복수의 소스 패킷 중 어느 TS 패킷이 각 디코더에 출력되고 있는가를 나타낸다. 이 화살표와 같이 다중분리부로부터 디코더로, 베이스 뷰 비디오 스트림을 구성하는 TS 패킷, 디펜던트 뷰 비디오 스트림을 구성하는 TS 패킷, 베이스 뷰 PG 스트림을 구성하는 TS 패킷, 디펜던트 뷰 PG 스트림을 구성하는 TS 패킷, 베이스 뷰 IG 스트림을 구성하는 TS 패킷, 디펜던트 뷰 IG 스트림을 구성하는 TS 패킷이 디코더에 출력됨을 알 수 있다.
도 24는 재생장치가 1plane+Offset 모드로 설정되어 있는 경우의 패킷 식별자의 참조 및 패킷 출력을 나타낸다. 결합 스트림 등록 열과 시프트부와의 사이의 화살표는 확장 스트림 선택테이블에서의 PG 스트림에 대응하는 스트림 등록 열에서의 오프셋 레퍼런스 및 확장 스트림 선택테이블에서의 IG 스트림에 대응하는 스트림 등록 열에서의 오프셋 레퍼런스가 1plane+Offset 모드에서 참조되어 있는 것을 나타낸다.
다중분리부와 복수의 디코더와의 사이의 화살표는 스트림 파일에 존재하는 복수의 소스 패킷 중 어느 TS 패킷이 각 디코더에 출력되고 있는가를 나타낸다. 이 화살표와 같이 다중분리부로부터 디코더로, 베이스 뷰 비디오 스트림을 구성하는 TS 패킷, PG 스트림을 구성하는 TS 패킷, IG 스트림을 구성하는 TS 패킷, 오디오 스트림을 구58성 하는 TS 패킷이 디코더에 출력되는 것을 알 수 있다.
비디오 디코더와 시프트부와의 화살표는 상술한 것과 같은 오프셋 레퍼런스에 근거해 디펜던트 뷰 비디오 스트림에서의 오프셋이 PG 스트림에 대한 시프트부, IG 스트림에 대한 시프트부에 공급되고 있는 것을 나타낸다.
도 25는 재생장치가 2D 프레젠테이션 모드로 설정되어 있는 경우에서의 패킷 식별자의 참조 및 패킷 출력을 나타낸다 결합 스트림 등록 열과 다중분리부와의 사이의 화살표는 결합 스트림 등록 열에서의 복수의 스트림 등록 열 중 어느 것의 스트림 엔트리 내의 패킷 식별자가 참조되어 있는가를 나타낸다. 본 도면에서는 기본 스트림 선택테이블 내의 베이스 뷰 비디오 스트림 등록 열에서의 스트림 엔트리 내의 패킷 식별자, 기본 스트림 선택테이블 내의 PG_텍스트 자막 스트림 등록 열에서의 스트림 엔트리 내의 패킷 식별자 기본 스트림 선택테이블 내의 IG 스트림 등록 열에서의 스트림 엔트리 내의 패킷 식별자가 다중분리부에 의해서 참조되어 있는 것을 알 수 있다.
다중분리부와 복수의 디코더와의 사이의 화살표는 스트림 파일에 존재하는 복수의 소스 패킷 중 어느 TS 패킷이 각 디코더에 출력되고 있는가를 나타낸다. 이 화살표와 같이 다중분리부로부터 디코더로, 베이스 뷰 비디오 스트림을 구성하는 TS 패킷, PG 스트림을 구성하는 TS 패킷, IG 스트림을 구성하는 TS 패킷, 오디오 스트림을 구성하는 TS 패킷이 디코더에 출력되는 것을 알 수 있다.
도 26은 재생장치에 B-D 프레젠테이션 모드의 케퍼빌리티가 존재하지 않는 경우에서의 패킷 식별자의 참조 및 패킷 출력을 나타낸다 결합 스트림 등록 열과 다중분리부와의 사이의 화살표는 결합 스트림 등록 열에서의 복수의 스트림 등록 열 중 어느 것의 스트림 엔트리 내의 패킷 식별자가 참조되어 있는가를 나타낸다. 본 도면에서는 기본 스트림 선택테이블 내의 베이스 뷰 비디오 스트림 등록 열에서의 스트림 엔트리 내의 패킷 식별자, 기본 스트림 선택테이블 내의 PG_텍스트 자막 스트림 등록 열에서의 스트림 엔트리 내의 패킷 식별자 기본 스트림 선택테이블 내의 IG 스트림 등록 열에서의 스트림 엔트리 내의 패킷 식별자가 다중분리부에 의해서 참조되어 있는 것을 알 수 있다.
다중분리부와 복수의 디코더와의 사이의 화살표는 스트림 파일에 존재하는 복수의 소스 패킷 중 기본 스트림 선택테이블의 스트림 등록 열에서의 스트림 엔트리에 의해서 지시되어 있는 TS 패킷이 각 디코더에 출력되어 있는가를 나타낸다.
이상의 재생제어는 도 27부터 도 29까지의 플로차트(flow chart)에 나타낸 처리순서를 오브젝트 지향형 컴파일러언어로 기술하여 컴퓨터에 실행시킴으로써 실현될 수 있다.
도 27은 플레이리스트 재생순서를 나타낸다. 본 플로차트는 스텝 S1에서 현재 플레이아이템 번호를 1로 설정한 후, 스텝 S2스텝~S6의 처리를 반복하는 루프를 구성한다. 이 루프에서는 스트림 선택 프로시저에 의해 스트림 번호를 결정하고(스텝 S2), 스트림 번호에 대응하는 ES를 저장한 스트림 파일을 오픈하여 소스 패킷 열을 판독하고(스텝 S3), 판독된 소스 패킷 열 중 스트림 번호에 대응하고 있는 것의 다중분리를 지시하여(스텝 S4), 판독된 소스 패킷을 플레이아이템의 인 타임으로부터 아웃 타임까지, 서브 플레이아이템의 인 타임으로부터 아웃 타임까지 재생하도록 디코더에 명하는(스텝 S5) 처리를 현재 플레이아이템 번호가 최종 번호가 될 때까지 반복하는 것이다. 여기서 최종 번호가 아니면(스텝 S6에서 No) 현재 플레이아이템 번호가 증가(increment)되고 스텝 S2로 이행한다. 최종 번호이면 처리를 종료한다(스텝 S6로 Yes).
도 28은 스트림 선택 프로시저의 처리순서를 나타낸다.
본 플로차트에서는 현재 플레이아이템정보 내의 기본 스트림 선택테이블을 현재 기본 스트림 선택테이블로 설정한다(스텝 S7). 그리고 스텝 S8~스텝 S17의 루프를 실행한다. 스텝 S8~스텝 S17은 PG 스트림, IG 스트림, 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림의 각각에 대해서 스텝 S10~스텝 S17의 처리를 반복하는 것이다. 스텝 S10는 현재 기본 스트림 선택테이블에서의 스트림 x에 대응하는 기본 스트림 선택테이블 엔트리 수가 0인지 아닌지의 판정이며, 스텝 S11은 현재 스트림에서의 스트림 x에 대응하는 스트림 엔트리 수가 스트림 번호레지스터에 저장되어 있는 스트림 번호 이상인지를 판정하는 판정 스텝이다.
스텝 S10, 스텝 S11의 어느 쪽인가가 Yes이면 스텝 S17에서 스트림 번호 레지스터에 저장되어 있는 스트림 번호를 유지한다.
스텝 S10, 스텝 S11의 어느 쪽이라도 No이면 현재 기본 스트림 선택테이블에 등록되어 있는 PES 스트림이 복수의 조건 중 어느 것을 만족하는지를 판정하고(스텝 S12), 만족한다고 판정된 조건의 조합이 동일한 PES 스트림이 복수 존재하는지 아닌지를 판정한다(스텝 S13).
조건을 만족하는 PES 스트림이 유일하게 1개인 경우에는 조건을 만족하는 1개의 PES 스트림을 선택한다(스텝 S14).
조건을 만족하는 PES 스트림이 복수 존재하는 경우, 동일한 조건을 만족한다고 판정된 PES 스트림 중 현재 기본 스트림 선택테이블에서의 우선 순위가 가장 높은 것을 선택한다(스텝 S15). 이렇게 해서 PES 스트림을 선택하면 선택한 PES 스트림의 스트림 엔트리에 대응하는 스트림 번호를 PSR에서의 스트림 번호 레지스터에 기입한다(스텝 S16).
이상의 과정을 거쳐서 현재 플레이아이템에서 재생해야 할 PES 스트림이 확정하면 현재 플레이아이템의 재생을 개시할 필요가 있으나, 현재 플레이아이템 재생의 처리순서는 Procedure when playback condition is changed에 의해서 확정한 출력 모드에 응한 것이 된다.
도 29는 스트림 번호에 대응하는 패킷 식별자의 출력 처리의 순서를 나타낸다. 스텝 S17, 스텝 S18의 판정 스텝을 실행하는 구조로 되어 있다. 스텝 S17은 현재의 출력 모드가 2D 재생 모드인가 여부의 판정이며, 만약 2D 재생 모드이면 스텝 S38에서 기본 스트림 선택테이블에서의 스트림 등록 열 중 현재 스트림 번호에 대응하는 스트림 등록정보의 스트림 엔트리에 의거한 다중분리를 다중분리부에 지시한다.
스텝 S18은 확장 스트림 선택테이블의 Fixed_offset_during_Popup가 온인지 아닌지의 판정이다. 스텝 S17이 No, 스텝 S18이 No이면 스텝 S19~스텝 S30를 실행한다.
스텝 S17~스텝 S30은 비디오 스트림을 입체 시 BD 타입으로 설정하고 비디오 플레인을 B-D 프레젠테이션 모드로 설정하여(스텝 S19), SS_dependent_View_block에서의 스트림 엔트리의 패킷 식별자에 근거하는 다중분리를 지시하고(스텝 S20), 스텝 S21~스텝 S26의 처리를 실행한다.
스텝 S21은 현재 PG 스트림의 스트림 등록정보에서의 is_ss_PG가 온인지 아닌지의 판정이며, 온이면, 스텝 S22에서 PG 스트림을 입체 시 재생타입으로 설정하고, PG 플레인을 BD 프레젠테이션 모드로 하고(스텝 S23), 현재 PG 스트림에 대응하는 스트림 등록정보의 Stream_entry_bese_view,Stream_entry_dependent_view의 패킷 식별자에 근거한 다중분리를 지시한다.
is_ss_PG가 오프이면 PG 스트림을 1plane+Offset 재생타입에 설정하고, PG 플레인을 1plane+Offset 모드로 설정하며(스텝 S24), 현재 PG 스트림의 스트림 등록정보에서의 SS_PG_textST_offset_sequence_id_ref에서 지시되는 오프셋 시퀀스를 디펜던트뷰 비디오 스트림에서 취득하고(스텝 S25), 취득한 오프셋 시퀀스에 근거해 플레인 시프트를 실행한다(스텝 S26).
스텝 S27은 현재 IG 스트림의 스트림 등록정보에서의 is_ss_IG가 온인지 아닌지의 판정이며, 온이면 스텝 S28에서 현재 IG 스트림에 대응하는 스트림 등록정보의 Stream_entry_bese_view,Stream_entry_dependent_view의 패킷 식별자에 의거 다중분리를 지시한다.
is_ss_IG가 오프이면 현재 IG 스트림의 스트림 등록정보에서의 SS_IG_offset_sequence_id_ref에서 지시되는 오프셋 시퀀스를 디펜던트 뷰 비디오 스트림에서 취득하고(스텝 S29), 취득한 오프셋 시퀀스에 근거해 플레인 시프트를 실행한다(스텝 S30).
확장 스트림 선택테이블의 Fixed_offset_during_Popup가 온이면 스텝 S17가 No, 스텝 S18가 Yes가 되고, 스텝 S31~스텝 S37를 실행한다.
스텝 S31~스텝 S37은 비디오 스트림을 입체 시 B-B 타입으로 설정하고, 비디오 플레인을 B-B 프레젠테이션 모드로 설정하며(스텝 S31), 스텝 S32~스텝 S37의 처리를 실행한다.
스텝 S32는 현재 PG 스트림의 스트림 등록정보에서의 is_ss_PG가 온인지 아닌지의 판정이며, 온이면 스텝 S33에서 PG 스트림을 1plane+Offset 모드 타입으로 설정하고, PG 플레인을 1plane+Offset 모드로 설정하고, 현재 PG 스트림의 스트림 등록정보에서의 SS_PG_textST_offset_sequence_id_ref에서 지시되는 오프셋 시퀀스를 디펜던트 뷰 비디오 스트림으로부터 취득하고(스텝 S34), 취득한 오프셋 시퀀스에 근거해 플레인 시프트를 실행한다(스텝 S35). 그 후 스텝 S37로 이행한다.
is_ss_PG가 오프이면 스텝 S36에서 PG 스트림을 1plane+Zero Offset 모드 타입으로 설정하고, PG 플레인을 1plane+Zero Offset63모드로 설정한다. 그 후 스텝 S37로 이행한다. 스텝 S37에서는 현재 IG 스트림의 스트림 등록 열에서의 IG_Plane_offset_direction_during_BB_video에 의해서 나타내는 방향에 대해서 스트림 등록 열에서의 IG_Plane_offset_value_during_BB_video에 의해서 나타내는 양만큼 플레인 시프트를 실행한다. 이상의 처리에 의해 Fixed_offset_during_Popup가 온의 설정시에는 평면적인 동화상에 입체적인 자막이나 메뉴가 합성된 입체 시 영상을 재생에 제공할 수 있다.
이상과 같이 본 실시 예에 의하면, 2D 재생 모드에서 3D 재생 모드로 변화한 경우에 확장 스트림 선택테이블 내에 존재하는 스트림 등록 열로서, 스트림 번호 레지스터에 저장되어 있는 스트림 번호에 의해서 지시되는 것의 스트림 엔트리에 의해서 다중분리의 대상이 되어야 할 스트림을 선택할 수 있다.
3D 재생 모드로 변화한 경우에는 스트림 번호 레지스터에서의 스트림 번호를 그대로 하여 다중분리의 대상이 되는 스트림을 바꿀 수 있으므로, 모드가 바뀌었다고 해도 프로시저를 실행으로 할 필요가 없어진다. 모드 변환에 수반하는 스트림 선택 프로시저의 실행을 회피할 수 있으므로, 변환의 전후에서 동일한 언어속성의 ES를 재생대상으로 할 수 있다.
(제 2 실시 예)
 제 1 실시 예에서는 디펜던트 뷰 데이터블록을 구성하는 서브 TS를 서브 클립 엔트리 ID 레퍼런스로부터 참조하고 있었으므로, 서브 TS가 메인 TS와 분리해 기록되어 있는 경우 2D 재생 모드에서 3D 재생 모드로의 변환시에 있어서 서브 TS의 판독이 발생하여 AV 재생의 심리스성이 손상될 우려가 있다. 그래서 본 실시 예는 메인 TS와 서브 TS가 모두 재생장치에 판독되는 것을 보장하는 개량을 제안한다. 구체적으로는 메인 TS, 서브 TS를 인터리브화 하여 2TS를 1 파일로서 기록하는 것을 제안한다.
전제사항으로 UDF 파일시스템에서의 파일에 대해서 간단하게 설명한다. UDF에서의 파일은 파일 엔트리에 의해서 관리되고 있는 복수의 익스텐트로 구성된다. 「파일 엔트리」는 「기술자 태그」와 「ICB 태그」 및 「할당 기술자」라고를 포함한다.
「기술자 태그」는 자신이 파일 엔트리라는 취지를 나타내는 태그이다. 태그에는 파일 엔트리 기술자, 스페이스 비트 맵 기술자 등의 종별이 있으나, 파일 엔트리인 경우에는 기술자 태그로서 파일 엔트리를 나타내는 "261"이 기술된다.
「ICB 태그」는 파일 엔트리 자신에 관한 속성정보를 나타낸다.
「할당 기술자」는 어느 디렉터리의 하부에 있는 하위 파일을 구성하는 익스텐트의 기록 위치를 나타내는 논리블록번호(LBN)를 포함한다. 할당 기술자는 익스텐트 길이를 나타내는 데이터와 익스텐트의 기록 위치를 나타내는 논리블록번호를 포함한다. 다만 익스텐트 길이를 나타내는 데이터의 상위 2비트는 “00”으로 설정됨으로써 할당이 완료되고 또한 기록이 완료된 익스텐트라는 취지를 나타내며, “01”으로 설정됨으로써 할당이 완료되고 또한 미기록 익스텐트라는 취지를 나타낸다.“11”로 설정됨으로써 할당 식별자의 다음의 익스텐트라는 것을 나타낸다. 어느 디렉터리의 하부에 있는 하위 파일이 복수의 익스텐트로 분할되어 있는 경우에는 파일 엔트리는 익스텐트마다 복수의 할당 기술자를 가지게 된다.
상술한 것과 같은 파일 엔트리의 할당 식별자를 참조함으로써 스트림 파일을 구성하는 익스텐트의 어드레스를 지득할 수 있다.
다음에, 본 실시 예에서 상정되어 있는 파일의 종별에 대해서 설명한다.
<입체 시 인터리브드 스트림 파일(FileSS)>
입체 시 인터리브드 스트림 파일(FileSS)은 2TS를 인터리브 형식으로 한 스트림 파일(2TS인터리브 파일)이며, 5자리 수의 정수 치와 입체 시 재생용의 인터리브드 형식 파일이라는 취지를 나타내는 확장자(ssif)에 의해서 식별된다. 입체 시 인터리브드 스트림 파일은 익스텐트 SS[n]로 구성되고, 익스텐트 SS[n](EXTSS[n])는 인덱스 번호 n에 의해서 특정된다. 인덱스 번호 n은 입체 시 인터리브드 스트림 파일의 선두에서부터 1개씩 증가하는 번호이다.
익스텐트 SS[n]는 디펜던트 뷰 데이터블록과 베이스 뷰 데이터블록의 조로 구성된다.
익스텐트 SS[n]를 구성하는 베이스 뷰 데이터블록, 디펜던트 뷰 데이터블록은 파일 2D, 파일 베이스, 파일 디펜던트로부터의 크로스 레퍼런스의 대상이 된다. 크로스 레퍼런스란 기록매체에 기록된 1개의 데이터 객체를 복수의 파일의 익스텐트로서 파일 엔트리에 등록해 두는 것을 말한다. 본 실시 예에서는 파일 2D의 파일 엔트리, 파일 베이스의 파일 엔트리, 파일 디펜던트의 파일 엔트리에 베이스 뷰 데이터블록의 선두 어드레스 및 연속 길이와 디펜던트 뷰 데이터블록의 선두 어드레스 및 연속 길이가 등록되게 된다.
<파일 베이스(FileBase)>
파일 베이스(FileBase)는 파일 2D에 대응하는 클립정보에서의 익스텐트 스타트포인트 정보에 의해서 지시되는 메인 TS를 "저장하고 있는"이 되는 가상적인 스트림 파일이며, 적어도 1개의 익스텐트 1[i](EXT1[i]라고 부른다)에 의해서 구성된다. 익스텐트 1[i]은 파일 베이스에서의 i번째의 익스텐트이고, i는 익스텐트의 인덱스번호이며, 파일 베이스의 선두를 0으로 하여 증가된다. 파일 베이스는 2TS파일인 입체 시 인터리브드 스트림 파일을 1TS파일로 취급하기 위한 가상적인 스트림 파일이며, 그 파일 엔트리를 재생장치의 메모리 상에서 구축함으로써 가상적으로 생성된다.
실제의 판독에 있어서, 파일 베이스는 이 입체 시 인터리브드 스트림 파일의 파일명을 이용해 파일 오픈을 실행함으로써 특정된다. 구체적으로 말하면 재생장치의 미들웨어는 입체 시 인터리브드 스트림 파일의 파일명을 이용한 파일 오픈이 호출된 경우, 파일 베이스의 익스텐트를 특정하는 파일 엔트리를 메모리 상에서 생성하고, 파일 베이스를 가상적으로 오픈한다. 입체 시 인터리브드 스트림 파일은 "1TS만을 포함하고 있는" 것으로 간주할 수 있고, 2TS의 입체 시 인터리브드 스트림 파일을 1TS의 파일 베이스로 하여 기록매체로부터 읽어낼 수 있다.
B-B 프레젠테이션 모드에서 베이스 뷰 데이터블록만을 읽어내고 싶은 경우에는 이 파일 베이스를 구성하는 익스텐트만이 판독의 대상이 된다. B-B 프레젠테이션 모드로부터 BD 프리젠테이션 모드로의 모드 변경이 있었다고 해도, 판독범위를 파일베이스를 구성하는 익스텐트의 기록 범위에서 입체 시 인터리브드 스트림 파일을 구성하는 익스텐트의 기록영역으로 확대하면, 베이스 뷰 데이터블록, 디펜던트 뷰 데이터블록의 쌍방을 읽어낼 수 있으므로 파일 판독의 효율성을 저하시키는 일은 없다.
<파일 디펜던트(FileDependent)>
 파일 디펜던트(FileDependent)는 서브 TS를 "저장하고 있는" 것으로 인정되는 스트림 파일이며, extent 2[i](EXT2[i])에 의해서 구성된다. EXT2[i]는 파일 디펜던트에서의 i번째의 익스텐트이며, i는 익스텐트의 인덱스 번호이고, 파일 디펜던트의 선두를 0으로 하여 증가된다. 파일 디펜던트는 2TS파일인 입체 시 인터리브드 스트림 파일을 서브 TS를 저장한 1TS파일로서 취급하기 위한 가상적인 스트림 파일이며, 그 파일 엔트리를 재생장치의 메모리 상에서 구축함으로써 가상적으로 생성된다.
디펜던트 뷰 비디오 스트림은 입체 시 인터리브드 스트림 파일의 파일명인 5자리 수 번호에 1을 가산한 번호가 파일이름으로서 부여된다. 이 파일명을 이용해 액세스 된다. 기록매체에는 더미 파일이 기록되고 있고, 디펜던트 뷰 비디오 스트림의 식별번호인 「1을 가산한 번호」가 이 더미 파일에 부여된다. 더미 파일이란 파일명만이 존재하고 있고, 실체인 익스텐트가 존재하지 않는 파일이며, 디펜던트 뷰 비디오 스트림은 이 더미 파일에 저장되는 것으로 취급된다.
<파일 2D(File2D)>
파일 2D는 2D 재생 모드에서 재생되는 메인 TS를 저장하고 있는 1 TS의 스트림 파일이며, 익스텐트 2D로 구성된다. 파일 2D는 5자리 수의 정수 치와 입체 시 재생용의 인터리브드 형식 파일이라는 취지를 나타내는 확장자(ssif)에 의해서 식별된다.
이하, 파일 2D/파일 베이스, 파일 디펜던트의 상호관계에 대해서 설명한다. 도 30은 익스텐트와 파일 2D/파일 베이스, 파일 디펜던트와의 대응관계를 나타낸다. 제 1 단째는 파일 2D/파일 베이스, 파일 디펜던트인 00001. M2ts, 00002. M2ts를 나타내며, 제 2 단째는 베이스 뷰 데이터블록을 저장한 익스텐트, 디펜던트 뷰 데이터블록을 저장한 익스텐트를 나타낸다. 제 3 단째는 입체 시 인터리브드 스트림 파일인 00001.ssif를 나타낸다.
점선의 화살표 h1, h2, h3, h4는 익스텐트 EXT1[i], EXT2[i]가 어느 파일에 귀속하고 있는가 하는 할당 식별자에 의한 귀속관계를 나타낸다. 화살표 h1, h2에 나타나는 귀속관계에 의하면 익스텐트 EXT1[i], EXT1[i+1]는 파일 베이스인 00001. M2ts의 익스텐트로서 등록되어 있는 것을 알 수 있다.
화살표 h3, h4에 나타나는 귀속관계에 의하면, 익스텐트 EXT2[i], EXT2[i+1]은 파일 디펜던트인 00002. M2ts의 익스텐트로서 등록되어 있는 것을 알 수 있다.
화살표 h5, h6, h7, h8에 나타나는 귀속관계에 의하면, 익스텐트 EXT1[i], EXT2[i], EXT1[i+1], EXT2[i+1]는 00001.ssif의 익스텐트로서 등록되어 있음을 알 수 있다. 이상과 같이 익스텐트 EXT1[i], EXT1[i+1]는 00001.ssif에 귀속하는 동시에, 00001. M2ts에 귀속한다고 하는 이중성을 가짐을 알 수 있다. 이 "ssif"라는 확장자는 StereoScopic Interleave File의 머리글자를 취한 것이며, 입체 시 재생을 위해 인터리브 형식으로 되어 있는 것을 나타낸다.
도 31은 인터리브드 스트림 파일과 파일 2D/파일 베이스의 관계를 나타낸다.
동 도 (a)의 제 3 단째는 인터리브드 스트림 파일의 내부 구성을 나타낸다. 베이스 뷰 데이터블록을 저장한 익스텐트 EXT1[1], EXT1[2]의 각각과 디펜던트 뷰 데이터블록을 저장한 액스텐트 EXT2[1], EXT2[2]의 각각이 교호로 배치되어서 구성된다.
제 1 단째는 파일 2D 및 파일 베이스의 내부 구성을 나타낸다. 파일 2D/파일 베이스는 제 3단째에서의 인터리브드 스트림 파일을 구성하는 익스텐트 중 베이스 뷰 데이터블록을 저장한 익스텐트 EXT1[1], EXT1[2]만으로 구성되어 있다. 파일 2D의 파일명은 인터리브드 스트림 파일의 파일명이 동일하나, 확장자가 다르다.
제 2 단째는 파일 디펜던트의 내부 구성을 나타낸다. 파일 디펜던트는 제 3 단째에서의 인터리브드 스트림 파일을 구성하는 익스텐트 중 디펜던트 뷰 데이터블록을 저장하는 익스턴트 EXT2[1], EXT2[2], EXT2[2]만으로 구성되어 있다. 파일 디펜던트의 파일명은 인터리브드 스트림 파일의 파일명에 1을 가산한 것으로 되어 있고, 또 확장자가 다르다.
3D 영상을 포함한 광디스크라고 해도 모든 재생장치가 3D 재생방식에 대응하고 있다고는 할 수 없으므로 2D에서의 재생이 지원되는 것이 바람직하다. 다만, 2D 재생에만 대응한 재생장치는 3D로 확장된 데이터구조 등은 판별할 수 없다. 2D 재생장치는 종래의 2D 재생방식인 상태 그대로의 판별방법이며, 2D 플레이리스트 및 2D 스트림에만 액세스할 수 있을 필요가 있으므로, 레프트 뷰 비디오 스트림에서는 2D방식의 재생장치가 인식할 수 있는 파일 형식으로 저장되어 있다.
1번째의 방법은 상술한 것과 같은 플레이리스트정보의 참조, 즉, 메인 TS는 2D 재생에서도 이용할 수 있도록 2D 재생방식과 동일한 파일명을 사용하고, 인터리브 형식의 스트림 파일은 확장자를 바꾸는 방법이다. 동 도면 (b)에서의 00001.M2ts 및 00001.ssif는 한편은 2D방식, 한편은 3D방식이면서 동일한 파일명"00001 "에 의해서 커플링 되어 있다.
플레이리스트는 메인 TS의 AV 클립 밖에 참조하지 않으므로, 기존의 2D 재생 장치에서는 파일 2D 밖에 재생하지 않는다. 3D 대응의 재생장치는 플레이리스트는 메인 TS가 들어간 파일 2D 밖에 참조하고 있지 않으나 동일한 식별번호를 가지며, 확장자만 다른 파일이 존재하는 경우에는 그 파일을 발견하여 3D 영상을 위한 인터리브 형식의 스트림 파일이다고 판단하여, 메인 TS와 서브 TS를 출력한다.
2번째의 방법은 폴더를 나누는 방법이다. 메인 TS는 기존의 폴더명(예:STREAM)을 갖는 폴더 내에 저장해 두지만, 서브 TS는 3D 특유의 이름을 갖는 폴더(예:SSIF)에 동일한 파일명 「00001」으로 저장해 둔다. 플레이리스트가 파일을 참조할 때, 2D 재생장치에서는 「STREAM」폴더 내의 파일만을 참조하지만, 3D 재생장치의 경우에는 「STREAM」와「SSIF」폴더 중에서 동일한 이름의 파일을 동시에 참조함으로써 메인 TS와 서브 TS를 관련시킬 수 있게 된다.
3번째의 방법은 식별번호에 의하는 것이다. 파일 2D/파일 베이스의 식별번호가 "00001"인 경우 파일 디펜던트의 식별번호는 동 도면 (c)에 나타내는 것과 같이 이 파일 2D/파일 베이스의 식별번호에 "1"을 가산한 번호, 즉,"0002"이라는 식별번호를 부여하는 등, 일정한 룰에 따라서 관련을 시키는 방법이다. 그러나 기록매체의 파일시스템에서 상술한 룰로 명명된 파일 디펜던트는 어디까지나 실체가 없는 더미 파일로서 취급된다. 이는 파일 디펜던트의 실체는 입체 시 인터리브드 스트림 파일에 지나지 않는다는 이유에 의한다. 이렇게 해서 관련이 부여된 파일명을 기본 스트림 선택테이블에서의 스트림 등록정보 및 확장 스트림 선택테이블에서의 스트림 등록정보에서의 스트림 엔트리의 서브 클립 엔트리 ID 레퍼런스(ref_to_subclip_entry_id)에 기술해 둔다. 한편, 재생장치에서는 서브 클립 엔트리 ID 레퍼런스에 기술된 식별번호에 "1"을 가산한 식별번호의 파일명은 더미 파일의 파일명이라고 인증하고, 파일 디펜던트를 가상적으로 오픈하는 처리를 실행한다. 이렇게 하면 스트림 선택 프로시저에서 상술한 것과 같은 관련 부여가 된 파일 디펜던트가 확실하게 기록매체로부터 판독되게 된다.
이상이 파일 2D, 파일 베이스, 파일 디펜던트에 대한 설명이다.
이하, 데이터블록의 상세에 대하여 설명한다.
<베이스 뷰 데이터블록>
베이스 뷰 데이터블록(B[i])은 메인 TS의 i번째의 데이터블록이다. 여기서, 메인 TS란 현재 플레이아이템정보의 클립정보파일명 정보(클립정보파일 네임 정보)를 통해서 메인패스의 기축으로서 지정되어 있는 TS이다. B[i]의 "i"는 파일 베이스의 선두의 데이터블록을 0으로 하여 증가되는 인덱스 번호이다.
베이스 뷰 데이터블록에는 파일 베이스와 파일 2D에서 공통화되는 것과 파일 베이스와 파일 2D에서 공통화되어 있지 않은 것이 있다.
파일 2D 및 파일 베이스에서 공통화되는 베이스 뷰 데이터블록 및 파일 2D 고유의 베이스 뷰 데이터블록은 파일 2D의 익스텐트가 되는 것이며, 재생장치에서의 버퍼 언더 플로를 발생시키지 않는 길이로 설정되어 있다. 그리고 그 선두의 섹터 어드레스는 파일 2D의 파일 엔트리에서의 할당 기술자에 기술되어 있다.
파일 2D와 공통화되어 있지 않은 파일 베이스 고유의 베이스 뷰 데이터블록은 파일 2D의 익스텐트는 되지 않으므로, 재생장치에서의 싱글 버퍼를 언더 플로를 일으키지 않는 길이로 설정되어 있어 것은 아니다. 더 작은 사이즈, 즉, 재생장치에서의 더블 버퍼를 언더 플로 시키지 않는 길이로 설정되어 있다.
또, 파일 베이스 고유의 베이스 뷰 데이터블록은 그 선두 섹터 어드레스가 파일 엔트리에서의 할당 기술자에 기술되어 있지 않다. 대신에, 베이스 뷰 데이터블록에서의 선두 소스 패킷의 소스 패킷이 메인 TS에 대응하는 클립정보파일의 클립정보 내의 익스텐트 스타트포인트 정보에 의해서 포인팅되어 있다. 그 때문에, 파일 베이스 고유의 베이스 뷰 데이터블록의 선두 섹터 어드레스는 입체 시 인터리브드 스트림 파일의 파일 엔트리에서의 할당 기술자와 클립정보 내의 익스텐트 스타트포인트 정보를 이용해 도출할 필요가 있다.
레프트 뷰가 베이스 뷰인 경우, 베이스 뷰 데이터블록은 레프트 뷰 비디오 스트림의 분할부분을 저장한 소스 패킷, 레프트 뷰용의 그래픽스 스트림의 분할부분을 저장한 소스 패킷, 이들과 함께 재생되어야 할 오디오 스트림의 분할부분을 저장한 소스 패킷, 유럽 디지털방송 규격에 규정된 패킷 관리정보(PCR, PMT, PAT) 등, 2D 재생 및 레프트 뷰 재생을 위한 복수 종별의 PES 스트림의 분할부분을 저장한 소스 패킷의 집합체이다. 이 베이스 뷰 데이터블록을 구성하는 패킷은 ATC, STC, SPN이 연속하고 있고, 어느 일정기간의 심리스한 AV 재생을 보장한다.
<디펜던트 뷰 데이터블록>
디펜던트 뷰 데이터블록(D[i])은 서브 TS의 i번째의 데이터블록이다. 서브 TS란 현재 플레이아이템정보에 대응하는 확장 스트림 선택테이블의 스트림 등록 열에서의 스트림 엔트리에서 서브패스의 기축으로서 지정되어 있는 TS이다. D[i]의 "i"는 파일 디펜던트의 선두의 데이터블록을 0으로 하여 증가 되는 인덱스 번호이다.
디펜던트 뷰 데이터블록은 파일 디펜던트의 익스텐트가 되는 것이며, 재생장치에서의 더블 버퍼의 언더 플로를 일으키지 않는 길이로 설정되어 있다.
또, 기록매체의 연속영역 상에서 디펜던트 뷰 데이터블록은 동일한 재생시간에 재생되어야 할 베이스 뷰 데이터블록보다 앞에 배치된다. 그 때문에, 입체 시 인터리브드 스트림 파일의 판독시에 있어서 디펜던트 뷰 데이터블록은 반드시 베이스 뷰 데이터블록보다 먼저 판독되게 된다.
디펜던트 뷰 데이터블록은 파일 2D와 공통화되어 있지 않으므로 그 선두 섹터 어드레스가 파일 2D의 파일 엔트리에서의 할당 기술자에게 기술되어 있지 않다. 대신에, 디펜던트 뷰 데이터블록에서의 선두 소스 패킷의 소스 패킷이 클립정보 내의 익스텐트 스타트포인트 정보에 의해서 포인팅되어 있다. 그 때문에, 디펜던트 뷰 데이터블록의 선두 섹터 어드레스는 파일 2D의 파일 엔트리에서의 할당기술자와 클립정보 내의 익스텐트 스타트포인트 정보를 이용해 도출해 낼 필요가 있다.
디펜던트 뷰가 라이트 뷰인 경우, 디펜던트 뷰 데이터블록은 라이트 뷰 비디오 스트림의 분할부분을 저장한 소스 패킷, 라이트 뷰용의 그래픽스 스트림의 분할부분을 저장한 소스 패킷, 이들과 함께 재생되어야 할 오디오 스트림의 분할부분을 저장한 소스 패킷 등, 라이트 뷰 재생을 위한 복수 종별의 PES 스트림의 분할부분을 저장한 소스 패킷의 집합체이다. 이들 패킷은 ATC, STC, SPN가 연속하고 있는 일정기간의 연속 재생을 보장한다. 연속하는 베이스 뷰 데이터블록과 디펜던트 뷰 데이터블록과는 베이스 뷰 데이터블록을 구성하는 소스 패킷 및 디펜던트 뷰 데이터블록을 구성하는 소스 패킷은 소스 패킷 번호가 연속하고 있으나, 베이스 뷰 데이터블록을 구성하는 복수의 소스 패킷의 ATS 및 디펜던트 뷰 데이터블록을 구성하는 복수의 소스 패킷의 ATS는 어느 쪽도 동일한 값으로 되어 있다. 따라서 베이스 뷰 데이터블록을 구성하는 복수의 소스 패킷 및 디펜던트 뷰 데이터블록을 구성하는 복수의 소스 패킷은 동일한 ATC 시각에 PID 필터에 도달하게 된다.
<익스텐트의 유형>
상술한 것과 같이 파일 2D의 익스텐트에는 파일 베이스의 익스텐트와 공통인 것과 파일 베이스와 공통이 아닌 것이 있다.
파일 2D의 익스텐트가 B[0], B[1], B[2], B[3]2D, B[4] 2D로 구성되고, 파일 베이스의 익스텐트가 B[0], B[1], B[2], B[3]ss, B[4]ss로 구성되는 것으로 한다. B[0], B[1], B[2]는 파일 베이스와 공통화되어 있는 베이스 뷰 데이터블록이다. B[3]2D, B[4]2D는 파일베이스와 공통화되어 있지 않은 파일 2D 고유의 베이스 뷰 데이터블록이다.
또 B[3]ss, B[4]ss는 파일 2D와 공통화되어 있지 않은 파일 베이스 고유의 베이스 뷰 데이터블록이다.
B[3]2D에서의 데이터와 B[3]ss의 데이터는 bit-for-bit의 동일성을 갖는다. B[4]2D에서의 데이터와 B[4]ss의 데이터는 bit-for-bit의 동일성을 갖는다.
이들 파일 2D에서의 데이터블록 B[2], B[3]2D, B[4]2D는 롱 점프를 발생시키는 장소의 직전에 있어서 연속 길이가 긴 익스텐트(big extent)를 구성한다. 파일 2D는 롱 점프의 바로 앞에서 빅 익스텐트를 형성할 수 있으므로, 입체 시 인터리브드 스트림 파일을 2D 재생 모드로 재생하는 경우라도 리드 버퍼의 언더 플로를 염려할 필요는 없다.
파일 2D 및 파일 베이스는 익스텐트가 일부 다르나, 동일성을 가지므로, 이들 파일 2D 및 파일 베이스를 합쳐서 "파일 2D/파일 베이스"라고 한다.
<롱 점프>
일반론이지만, 기록매체에 광디스크를 채용하는 경우, 광 픽업에 판독동작을 일단 정지시키고, 그 사이에 다음의 판독대상영역 상에 광 픽업을 위치시키기 위한 조작을 「점프」라고 한다.
점프에는 광디스크의 회전속도를 증감시키는 조작 외에, 트랙 점프 및 포커스 점프가 있다. 트랙 점프는 광 픽업을 디스크의 반경 방향으로 이동시키는 조작을 말한다. 포커스 점프는 광디스크가 다층 디스크일 때, 광 픽업의 초점을 하나의 기록 층으로부터 다른 기록 층으로 이동시키는 조작을 말한다. 이들 점프는 일반적으로 시크 시간이 긴 동시에, 점프에 의해서 판독이 스킵 되는 섹터 수가 크므로, 특히 「롱 점프」라고 한다. 점프 기간 중 광 픽업에 의한 판독 조작은 정지한다.
점프기간 중 판독조작이 스킵 되는 부분의 길이를 「점프 거리」라고 한다. 점프 거리는 통상 그 부분의 섹터 수로 나타낸다. 상기의 롱 점프는 구체적으로는 점프 거리가 소정의 임계치를 넘는 점프로 정의된다. 그 임계치 예를 들어 BD-ROM의 규격에서는 디스크의 종류 및 드라이브의 판독처리에 관한 성능에 의해 40000 섹터로 규정되어 있다.
롱 점프를 발생시키는 장소의 대표적인 것으로는 기록 층의 경계 외에도, 플레이아이템 간의 1대 n의 다중접속이 존재하는 장소가 있다.
여기서, 1대 n의 플레이아이템의 다중접속을 하는 경우, n개의 플레이아이템을 구성하는 n개의 TS 중 1번째의 것은 그 직전의 플레이아이템을 구성하는 TS의 직후에 배치할 수 있다. 그러나 2번째 이후의 것은 그 직전의 플레이아이템을 구성하는 TS의 직후에 배치할 수 없다. 1대 n의 다중 접속이 존재하는 경우에 있어서 직전의 플레이아이템으로부터 n개의 플레이아이템의 2개째 이후의 플레이아이템으로 점프하는 경우, 그 점프는 1개 이상의 TS의 기록영역을 건너뛸 필요가 있으므로, 1대 n의 플레이아이템의 다중 접속이 존재하는 장소에서는 롱 점프가 발생하게 된다.
<각 모드의 재생경로>
2D 재생 모드의 재생경로는 현재 플레이아이템정보의 클립정보파일 네임 정보에 의해서 참조되는 파일 2D의 익스텐트로 구성된다.
B-D 프레젠테이션 모드의 재생경로는 현재 플레이아이템정보의 클립정보파일 네임 정보에 의해서 참조되는 입체 시 인터리브드 스트림 파일의 익스텐트로 구성된다.
B-B 프레젠테이션 모드의 재생경로는 현재 플레이아이템정보의 클립정보파일 네임 정보에 의해서 참조되는 파일 베이스의 익스텐트로 구성된다.
이들 3개의 모드의 재생경로는 현재 플레이아이템정보의 클립정보파일 네임 정보에 기술되어 있는 파일명을 파일 2D의 파일명으로서 이용하여 파일 오픈을 하는가, 파일 베이스의 파일명으로서 이용하여 파일 오픈을 하는가, 입체 시 인터리브드 스트림 파일의 파일명으로서 이용해 파일 오픈을 하는가를 스위칭할 수 있다. 이들 재생경로의 스위칭은 현재 플레이리스트나 현재 플레이아이템의 변동을 가져오지 않으므로 재생 모드의 변경시의 심리스성을 유지할 수 있다.
따라서 재생장치는 현재 플레이아이템정보의 클립정보파일 네임 정보에 근거해 입체 시 인터리브드 스트림 파일, 파일베이스, 파일 2D 중 어느 하나를 오픈함으로써 각각의 재생 모드에 적합한 데이터블록을 기록매체로부터 읽어낼 수 있다.
<EXT2D, EXT1[n], EXT2[n]의 구체적인 값>
EXT2D의 하한치는 2D 재생 모드의 재생시 각 베이스 뷰 데이터블록으로부터 다음의 베이스 뷰 데이터블록까지의 점프 기간 중에 있어서 재생장치에서의 리드 버퍼의 버퍼 언더 플로를 발생하지 않도록 결정된다.
n번째의 베이스 뷰 데이터블록으로부터 (n+1)번째의 베이스 뷰 데이터블록까지의 점프가 시간 Tjump2D(n)를 필요로 하고, 각 베이스 뷰 데이터블록이 리드 버퍼에 속도 Rud2D로 판독되며, 리드 버퍼로부터 비디오 디코더에 상기 베이스 뷰 데이터블록이 평균 속도 Rbext2D로 전송될 때, EXT2D의 하한치는 이하의 식으로 나타낸다.
EXT2D의 하한치≥(Rud2D×Rbext2D)/(Rud2DRbext2D)×Tjump2D(n)
베이스 뷰 데이터블록 B[n]ss에 대응하는 익스텐트는 EXT1[n]인 것으로 한다. 이 경우, EXT1[n]의 하한치는 B-D 프레젠테이션 모드의 재생시 각 베이스 뷰 데이터블록에서부터 다음의 디펜던트 뷰 데이터블록까지의 점프 기간과 해당 디펜던트 뷰 데이터블록에서부터 다음의 베이스 뷰 데이터블록까지의 점프 기간을 통해서 더블 버퍼의 언더 플로를 일으키지 않도록 결정된다.
여기에서의 더블 버퍼는 리드 버퍼 1, 리드 버퍼 2로 구성되는 것으로 한다.리드 버퍼 1은 2D 재생장치의 리드 버퍼와 동일한 것이다.
B-D 프레젠테이션 모드의 재생에서 n번째의 베이스 뷰 데이터블록에서부터 p번째의 디펜던트 뷰 데이터블록까지의 점프가 시간 TFjump3D(n)를 필요로 하고, p번째의 디펜던트 뷰 데이터블록으로부터 (n+1) 번째의 베이스 뷰 데이터블록까지의 점프가 시간 TBjump3D(n)을 필요로 하는 것으로 한다.
그리고 각 베이스 뷰 데이터블록이 리드 버퍼 1에 속도 Rud3D로 판독되고, 각 디펜던트 뷰 데이터블록이 리드 버퍼 2에 속도 Rud3D로 판독되며, 리드 버퍼 1로부터 비디오 디코더에 상기 베이스 뷰 데이터블록이 평균속도 Rbext3D로 전송될 때 EXT1[n]의 하한치는 이하로 표시된다. 빅 익스텐트의 연속 길이는 이 하한치, 또는 이 하한치를 웃도는 값으로 설정된다.
EXT1[n]의 하한치≥(Rud3D×Rbext3D)/(Rud3DRbext3D) ×(TFjump3D(n)+EXT2[n]/(Rud3D+TBjump3D(n))) EXT2의 하한치는 B-D 프레젠테이션 모드의 재생시 각 디펜던트 뷰 익스텐트로부터 다음의 베이스 뷰 익스텐트까지의 점프기간과 해당 베이스 뷰 익스텐트로부터 다음의 디펜던트 뷰 익스텐트까지의 점프 기간을 통해 재생장치에서의 더블 버퍼에 언더 플로를 발생시키지 않도록 결정되어 있다.
(n+1) 번째의 베이스 뷰 데이터블록에서부터 (p+1) 번째의 디펜던트 뷰 데이터블록까지의 점프가 시간 TFjump3D(n+1)를 요하고, 리드 버퍼 2로부터 디코더에 상기 디펜던트 뷰 스트림 파일이 평균 속도 Rdext3D로 전송될 때 EXT2[n]의 하한치는 이하의 식으로 표시된다.
EXT2[n]의 하한치≥(Rud3D×Rbext3D)/(Rud3DRdext3D) ×(TBjump3D(n)+EXT1[n+1]/(Rud3D+TFjump3D(n+1)))
EXTSS는 베이스 뷰 비디오 스트림의 익스텐트와 디펜던트 뷰 비디오 스트림의 익스텐트로 구성되므로, 그 하한치는 이하의 식과 같이 표시된다.
EXTSS의 하한치≥ EXT1[n] + EXT2[n]
도 32는 입체 시 인터리브드 스트림 파일, 파일 2D, 파일 디펜던트의 상호 관계를 나타낸다. 제 1 단째는 파일 2D를 나타내고, 제 2단째는 기록매체 상의 데이터블록, 제 3 단째는 입체 시 인터리브드 스트림 파일, 제 4 단째는 파일 베이스, 제 5 단째는 파일 디펜덴트를 나타낸다.
제 2 단째에서의 데이터블록은 상술한 D[1], B[1], D[2], B[2], D[3], B[3]ss, D[4], B[4]ss, B[3]2D, B[4]2D이다. 그리고 화살표 ex1, ex2, ex3, ex4는 데이터블록 중 B[1], B[2], B[3]2D, B[4]2D가 파일 2D의 익스텐트를 구성하고 있다고 하는 귀속관계를 나타낸다.
화살표 ex5, ex6은 데이터블록 중 D[1], B[1], D[2], B[2], D[3], B[3]ss, D[4], B[4]ss가 입체 시 인터리브드 스트림 파일의 익스텐트를 구성하고 있다고 하는 귀속관계를 나타낸다.
제 4 단째는 이 입체 시 인터리브드 스트림 파일을 구성하는 데이터블록 중 B[1], B[2], B[3]ss, B[4]ss가 파일 베이스의 액스텐트가 되고, 제 5 단째는 입체 시 인터리브드 스트림 파일을 구성하는 데이터블록 중 D[1], D[2], D[3], D[4]가 파일 디펜던트의 익스텐트가 되는 것을 나타낸다.
도 33은 2D 플레이리스트, 3D 플레이리스트를 나타낸다. 제 1 단째는 2D플레이리스트정보이며, 제 2 단째는 베이스 뷰 데이터블록, 제 3 단째는 3D 플레이리스트, 제 4 단째는 디펜던트 뷰 데이터블록을 나타낸다.
화살표 rf1, rf2, rf3는 2D 플레이리스트정보의 플레이아이템정보에서의 clip_information_file_name에 기술되어 있는 파일명 00001과 확장자 m2TS를 조합시킴으로써 재생경로를 나타낸다. 이 경우, 데이터블록 B[1], B[2], B[3]2D에 의해서 베이스 뷰 측의 재생경로가 구성된다.
화살표 rf4, rf5, rf6, rf7은 3D 플레이리스트정보의 플레이아이템정보에 의해 지정되는 재생경로를 나타낸다. 이 경우, B[1], B[2], B[3]ss, B[4]ss를 이용하여 베이스 뷰 측의 재생경로가 구성된다.
화살표 rf8, rf9, rf10, rf11은 3D 플레이리스트정보의 서브 플레이아이템정보에 의해 지정되는 재생경로를 나타낸다. 이 경우, D[1], D[2], D[3], D[4]를 이용하여 디펜던트 뷰 측의 재생경로가 구성된다. 이들 플레이아이템정보, 서브 플레이아이템정보에 의해 지정되는 재생경로를 구성하는 데이터블록은 플레이아이템정보에서의 clip_information_file_name에 기술되어 있는 파일명과 확장자 ssif를 조합시켜서 파일 오픈을 함으로써 판독할 수 있다.
본 도면의 3D 플레이리스트에서의 클립정보파일 네임 정보, 2D플레이리스트에서의 클립정보파일 네임 정보는 공통의 파일명을 기술하고 있으므로, 이들 3D 플레이리스트, 2D 플레이리스트를 정의하는 플레이리스트정보를 기술함에 있어서는 공통하는 기술로 충분하다(부호 df1, df2 참조). 따라서 이 3D 플레이리스트를 실현하는 플레이리스트정보를 기술해 두면 재생장치의 출력 모드가 입체 시 출력 모드인 때는 3D 플레이리스트로서 기능하고, 재생장치의 출력 모드가 2D출력 모드인 때는 2D 프레이 리스트로서 기능하게 된다. 본 도면의 2D 플레이리스트, 3D 플레이리스트는 1개의 플레이리스트정보를 기술해 둠으로써 이것을 해석하는 재생장치의 출력 모드에 따라서 2D 플레이리스트, 3D 플레이리스트로서 해석되므로, 오서링을 실시하는 사람의 수고를 경감할 수 있다.
입체 시 인터리브드 스트림 파일에 메인 TS, 서브 TS를 저장하는 경우, 2D 플레이리스트의 플레이아이템정보에서의 clip_information_file_name은 파일 2D의 파일명을 기술한다. 3D 플레이리스트의 플레이아이템 정보에서의 clip_information_ file_name은 파일 베이스의 파일명을 기술한다. 파일 베이스는 가상적인 파일이며, 그 파일명은 입체 시 인터리브드 스트림 파일과 동일한 것이므로, 입체 시 인터리브드 스트림 파일의 파일명을 플레이아이템 정보에서의 clip_information_file_name에 기술해 두면 좋다. 확장 스트림 선택테이블의 스트림 등록정보에서의 ref_to_subclip_entry_id는 파일 디펜던트의 파일명을 기술한다. 파일 디펜던트의 파일명은 입체 시 인터리브드 스트림 파일의 식별번호에 1을 가산한 것이다.
도 34는 도 33의 3D 플레이리스트에 서브패스를 하나 더 가산한 플레이리스트를 나타낸다. 도 33의 플레이리스트는 서브패스 ID="1"의 서브패스만을 구비하고 있던 것에 대해, 도 34의 플레이리스트에서의 2번째의 서브패스는 서브패스 ID="2"에 의해서 식별되는 것이며, 다른 데이터블록을 참조하고 있다. 2 이상의 서브패스정보를 설치함으로써 정의되는 복수의 라이트 뷰는 우측 눈으로 피사체를 보는 각도가 다른 복수의 라이트 뷰이며, 라이트 뷰를 구성하는 데이터블록이 그 각도의 수만큼 준비되어 있고, 각도마다 서브패스를 마련하고 있다.
베이스 뷰 데이터블록으로 구성되는 메인 TS에 의해서 규정되는 메인패스와 동기해 재생하는 서브패스를 바꿈으로써 사용자에게는 쾌적한 시차 화상을 이용해 입체 영상을 표시할 수 있게 된다.
이 3D 플레이리스트를 실현하는 플레이리스트정보에서도 재생장치의 출력 모드가 입체 시 출력 모드 때는 3D 플레이리스트로서 기능하고, 재생장치의 출력 모드가 2D출력 모드 때는 2D 플레이리스트로서 기능하게 된다. 도 34의 2D 플레이리스트, 3D 플레이리스트는 1개의 플레이리스트 정보를 기술해 두면 이것을 해석하는 재생장치의 출력 모드에 따라서 2D 플레이리스트, 3D 플레이리스트로서 해석되어서 적절하게 최적의 출력모드가 되므로, 오서링을 실시하는 사람의 수고를 경감할 수 있다.
이하, 베이스 뷰 비디오 스트림의 지정방법에 대해서 설명한다.
일반적으로 스튜디오에서는 레프트 뷰 비디오를 2D 영상으로서 작성하는 것으로 생각되나, 그 중에는 라이트 뷰를 2D 영상으로 작성하는 것이 좋다고 생각될지도 모른다. 그러한 가능성이 존재하므로, 레프트 뷰 및 라이트 뷰 중 어느 쪽을 베이스 뷰로 설정하는가를 나타내는 베이스 뷰 인디케이터를 플레이아이템정보마다 설정할 수 있도록 하고 있다. 레프트 뷰 비디오 스트림 및 라이트 뷰 비디오 스트림 중 어느 쪽을 베이스 뷰 비디오 스트림으로 하는가, 레프트 뷰 PG 스트림 및 라이트 뷰 PG 스트림 중 어느 쪽을 베이스 뷰 PG 스트림으로 하는가, 레프트 뷰 IG 스트림 및 라이트 뷰 IG 스트림 중 어느 쪽을 베이스 뷰 IG 스트림으로 하는가는 이 플레이아이템정보 별 베이스 뷰 인디케이터에 의해서 지시된다.
상술한 것과 같이 디펜던트 뷰 데이터블록은 반드시 베이스 뷰 데이터블록에 선행해서 배치된다는 규칙성을 가지므로, 이 베이스 뷰 인디케이터를 참조하면 라이트 뷰를 재생하기 위한 소스 패킷, 레프트 뷰를 재생하기 위한 소스 패킷의 어느 쪽이 먼저 재생장치에 공급되는가를 알 수 있다.
이 정보에 의해서 라이트 뷰 비디오 스트림이 베이스 뷰 비디오 스트림으로 지정되어 있는 경우에는 비록 라이트 뷰가 서브패스정보에 의해서 지정되어 있었다고 해도 이 라이트 뷰 비디오 스트림을 비디오 디코더에 먼저 투입하여 비 압축의 픽쳐 데이터를 얻는다. 그리고 이 라이트 뷰 비디오 스트림을 디코드함으로써 얻은 비 압축의 픽쳐 데이터에 근거해 움직임 보상(motion compensation)을 한다. 이렇게 하여 어느 쪽을 베이스 뷰로 할 수 있는가 라고 하는 선택에 유연성을 갖게 하고 있다.
도 35 (a)는 도 33의 3D 플레이리스트에 베이스 뷰 인디케이터를 추가한 도면이다.
도 35 (b)는 객체지향 프로그램언어에 의한 베이스 뷰 인디케이터의 기술을 나타낸다. 본 도면은 PlayItem을 정의하는 구조체에서 베이스 뷰 인디케이터를 어떻게 기술하는가 하는 기술 예이다. 본 도면에 나타내는 것과 같이 "0"의 즉치(immediate value)를 지정함으로써 레프트 뷰 비디오 스트림을 베이스 뷰 비디오 스트림으로서 지정할 수 있고 "1"의 즉치를 지정함으로써 라이트 뷰 비디오 스트림을 베이스 뷰 비디오 스트림으로서 지정할 수 있다.
표시장치에의 출력에 사용할 수 있고, 표시장치 측은 각각 2개의 스트림을 구별하기 위해서 이용한다. 셔터 방식의 안경을 사용하는 경우 등에서는 플레이아이템이 참조하는 메인 영상이 레프트 뷰인가 라이트 뷰인가 모르면 안경과 표시장치의 표시를 동기 할 수 없으므로, 레프트 뷰를 표시하고 있을 때는 셔터 방식 안경의 좌측 눈 측의 광을 투과하고, 라이트 뷰를 표시하고 있을 때는 셔터 방식 안경의 우측 눈 측의 광을 투과하도록 안경으로 전환하여 신호를 보내고 있다.
또, 렌티큘러와 같이 표시장치의 화면에 프리즘을 내장한 나안(裸眼, naked eye) 입체 시 방식에서도 레프트 뷰와 라이트 뷰의 구별은 필요하므로, 이 정보를 이용하여 구별을 한다. 이상이 베이스 뷰 인디케이터에 대한 설명이다. 이 베이스 뷰 인디케이터는 시차 화상 중 레프트 뷰 또는 라이트 뷰의 어느 쪽인가가 평면 시 영상으로서 재생할 수 있다는 것을 전제로 하고 있다.
도 36은 스트림 파일로부터의 소스 패킷의 판독 순서를 나타낸다.
스텝 S41은 현재 출력 모드가 3D출력 모드인지 여부의 판단이며, 현재 출력 모드가 2D출력 모드이면 스텝 S43스텝~S46를 실행한다.
스텝 S43에서, 현재 플레이아이템의 Clip_Information_file_name에 기술되어 있는 「XXXXX」와 확장자 「m2ts」에서 지정되어 있는 스트림 파일을 오픈하고, 스텝 S44에서 비디오 스트림의 패킷 ID에 대응하는 엔트리 포인트를 이용하여 현재 PlayItem.In_Time 및 현재 PlayItem. Out_Time을 Start_SPN[i]및 End_SPN[i]로 변환한다.
스텝 S45에서는 패킷 ID[i]의 TS 패킷 [i]를 Start_SPN[i]부터 End_SPN[i]까지 판독하기 위한 판독범위 [i]에 속하는 익스텐트를 특정하고, 스텝 S46에서 판독범위 [i]에 속하는 익스텐트를 연속적으로 판독하도록 기록매체의 드라이브에 지시한다.
현재 출력 모드가 입체 시 출력 모드이면 스텝 S50~스텝 S60의 루프로 이행한다.
스텝 S50에서, 현재 플레이아이템의 Clip_Information_file_name에 기술되어 있는 「XXXXX」와 확장자 「ssif」에서 지정되어 있는 스트림 파일을 오픈하고, 스텝 S51에서 레프트 뷰-비디오 스트림, 라이트 뷰 비디오 스트림 중 현재 플레이아이템 정보의 베이스 뷰 인디케이터에 의해서 지정되어 있는 것을 베이스 뷰 비디오 스트림으로 한다. 그 이외의 것을 디펜던트 뷰 스트림으로 한다.
스텝 S52에서, 베이스 뷰 비디오 스트림의 패킷 ID에 대응하는 엔트리 포인트를 이용하여 현재 PlayItem.In_Time 및 현재 PlayItem.Out_Time을 Start_SPN[i] 및 End_SPN[i]로 변환한다.
스텝 S53에서는 디펜던트 뷰 스트림에 대응하는 SubPlayItem을 특정하고, 디펜던트 뷰 스트림의 패킷 ID [j]에 대응하는 엔트리 포인트 [j]를 이용해 특정된 SubPlayItemIn_Time, SubPlayItemOut_Time을 Start_SPN[j], End_SPN[j]로 변환한다(스텝 S54).
패킷 ID[i]의 TS 패킷 [i]를 Start_SPN[i]에서부터 End_SPN[i]까지 판독하기 위한 판독범위 [i]에 속하는 익스텐트를 특정하고(스텝 S55), 패킷 ID [j]의 TS 패킷 [j]를 Start_SPN[j]에서부터 End_SPN[j]까지 판독하기 위한 판독범위에 속하는 익스텐트를 특정한다(스텝 S56). 그리고 스텝 S57에서 판독범위 [i], [j]에 속하는 익스텐트를 어드레스의 오름 순으로 소트 하고, 스텝 S58에서 소트된 어드레스를 이용해 판독범위 [i], [j]에 속하는 익스텐트를 연속적으로 판독하도록 드라이브에 지시한다. 그 후, 소스 패킷 열이 판독되면 스텝 S59에서 베이스 뷰의 ATC 시퀀스, 디펜던트 뷰의 ATC 시퀀스를 각각 복원하고, 베이스 뷰 용의 PID 필터, 디펜던트 뷰 용의 PID 필터에 보낸다.
이상과 같이 본 실시 예에 의하면 베이스 뷰 데이터블록과 디펜던트 뷰 데이터블록을 1개의 입체 시 인터리브드 스트림 파일에 저장하면서도, 이들을 디코더에 공급할 때 베이스 뷰 용의 ATC 시퀀스와 디펜던트 뷰 용의 ATC 시퀀스를 복원하므로, 디코더 측에서는 입체 시 인터리브드 스트림 파일을 통상의 스트림 파일과 마찬가지로 취급할 수 있다. 따라서 베이스 뷰 비디오 스트림, 디펜던트 뷰 비디오 스트림의 저장 방식에 적극적으로 입체 시 인터리브드 스트림 파일을 도입할 수 있다.
(제 3 실시 예)
 본 실시 예에서는 멀티앵글 재생에 대응하기 위한 데이터구조에 대해서 설명한다.
<입체 시 인터리브드 스트림 파일>
멀티앵글을 구성하는 입체 시 인터리브드 파일이 기록된 기록영역의 데이터 할당에 대해서 설명한다.
멀티앵글을 구성하는 인터리브드 파일의 기록영역에는 복수의 인터리브 유닛이 기록되어 있다. 각 인터리브 유닛은 베이스 뷰 데이터블록 및 디펜던트 뷰 데이터블록의 조의 각각에 대응하고 있다.
멀티앵글 구간에 있고, 앵글번호 "=1"의 설정시에 재생될 베이스 뷰 데이터블록 및 디펜던트 뷰 데이터블록의 조, 앵글번호=2의 설정시에 재생되어야 할 베이스 뷰 데이터블록 및 디펜던트 뷰 데이터블록의 조, 앵글번호=3의 설정시에 재생되어야 할 베이스 뷰 데이터블록 및 디펜던트 뷰 데이터블록의 조, 앵글번호=4의 설정시에 재생되어야 할 베이스 뷰 데이터블록 및 디펜던트 뷰 데이터블록의 조가 존재하는 경우, 입체 시 인터리브드 스트림 파일은 앵글번호=1에 대응하는 인터리브 유닛, 앵글번호=2에 대응하는 인터리브 유닛, 앵글번호에=3에 대응하는 인터리브 유닛, 앵글번호=4에 대응하는 인터리브 유닛으로 구성되게 된다.
각 인터리브 유닛은 인터리브드 스트림 파일에서의 익스텐트 SS(EXTSS)의 익스텐트며, 앵글번호 x가 앵글번호 레지스터에 설정되어 있을 때 판독되어야 할 베이스 뷰 데이터블록 (B[i]Ax)와 앵글번호 x가 앵글번호 레지스터에 설정되어 있을 때 판독되어야 할 디펜던트 뷰 데이터블록 (D[i]Ax)로 구성된다. 따라서 멀티앵글 구간을 구성하는 입체 시 인터리브드 스트림 파일에서는 한 개의 인터리브 유닛이 상술한 것과 같은 EXTSS[i]의 요건을 만족하게 된다.
플레이리스트정보에서의 기본 스트림 선택테이블은 플레이아이템 정보에 의해서 정의되는 재생구간에 있어서 재생이 허가되는 베이스 뷰-비디오 스트림의 패킷 식별자를 나타내며, 확장 스트림 선택테이블(은)는 재생이 허가되는 디펜던트 뷰 스트림의 패킷 식별자를 대응시켜서 나타낸다. 이 점은 제 1 실시 예와 같다. 도 37은 제 4 실시 예의 플레이아이템정보, 서브 플레이아이템을 나타낸다. 동 도면 (a)는 플레이아이템정보, 동 도면 (b)는 서브 플레이아이템정보의 내부 구성을 나타낸다.
플레이아이템정보 및 서브 플레이아이템정보는 플레이아이템이 멀티앵글구간을 구성할지를 나타내는 멀티앵글 플래그(multi_angle 플래그)를 포함한다.
이 플래그가 온으로 설정되어 있는 경우 플레이아이템정보 및 서브 플레이아이템 정보에는 스트림 참조정보의 확장구조(multi_clip_entries)가 설치된다. 스트림 참조정보의 확장구조는 플레이아이템 정보에서의 2번째 이후의 AV 클립의 지정을 포함한다. 이 AV 클립의 지정은 클립정보파일 네임과 STC 식별자 레퍼런스와의 조이다.
플레이아이템정보에서의 스트림 참조정보(clip_information_file_name) 및 서브 플레이아이템정보에서의 스트림 참조정보(clip_information_file_name)는 베이스 뷰 비디오 스트림을 저장한 스트림 파일 및 디펜던트 뷰 스트림을 저장한 스트림 파일이며, 재생장치의 앵글번호 레지스터에서 1번의 앵글번호에 의해 식별되는 것을 지정하고 있다.
플레이아이템정보에서의 스트림 참조정보의 확장구조, 서브 플레이아이템 정보에서의 파일 참조정보의 확장구조는 베이스 뷰 비디오 스트림을 저장한 스트림 파일 및 디펜던트 뷰 스트림을 저장한 스트림 파일이며, 재생장치의 앵글번호레지스터에서 2번 이후의 앵글번호로 식별되는 것을 지정한다.
플레이아이템정보는 베이스 뷰 비디오 스트림의 재생시간 축에서의 인 타임 및 아웃 타임을 나타내는 시각정보를 포함하며, 상기 서브 플레이아이템 정보는 디펜던트 뷰 스트림의 재생시간 축에서의 인 타임 및 아웃 타임을 나타내는 시각정보를 포함한다.
플레이아이템정보의 인 타임 및 아웃 타임은 서브 플레이아이템정보의 인 타임 및 아웃 타임과 등가이다.
플레이아이템정보에서의 파일 참조정보의 확장정보에 의해서 지정되는 스트림 파일의 개수와 서브 플레이아이템정보에서의 파일 참조정보의 확장정보에 의해서 지정되는 스트림 파일의 개수는 동일하다.
도 37 (c)는 플레이아이템정보에서의 In_Time, Out_Time와 인터리브 유닛에서의 베이스 뷰 데이터블록과의 관계를 나타낸다.
본 도면의 상반부분은 4개의 베이스 뷰 데이터블록 B[1]A1, B[1]A2, B[1]A3, B[1]A4에 대응하는 4개의 STC 시퀀스를 나타낸다. 이들 4개의 베이스 뷰 데이터블록 B[1]A1, B[1]A2, B[1]A3, B[1]A4는 앵글번호가 =1, =2, =3, =4로 설정된 때에 판독되어야 할 베이스 뷰 데이터블록이다.
플레이아이템정보에서의 In_Time은 공통되는 4개의 베이스 뷰 데이터블록에 대응하는 4개의 STC 시퀀스의 재생개시시각을 지정하고 있다.
플레이아이템정보에서의 Out_Time은 공통되는 4개의 베이스 데이터블록 B[1]A1, B[1]A2, B[1]A3, B[1]A4에 대응하는 4개의 STC 시퀀스의 선두의 재생종료시각을 지정하고 있다.
본 도면의 하반부분은 4개의 디펜던트 뷰 데이터블록 D[1]A1, D[1]A2, D[1]A3, D[1]A4에 대응하는 4개의 STC 시퀀스를 나타낸다. 이들 4개의 디펜던트 뷰 데이터블록 D[1]A1, D[1]A2, D[1]A3, D[1]A4는 앵글번호가 =1, =2, =3, =4로 설정된 때에 판독되어야 할 디펜던트 뷰 데이터블록이다. 플레이아이템정보에서의 In_Time은 공통되는 4개의 디펜던트 뷰 데이터블록에 대응하는 4개의 STC 시퀀스의 재생개시시각을 지정하고 있다.
플레이아이템정보에서의 Out_Time은 공통되는 4개의 디펜던트 뷰 데이터블록 D[1]A1, D[1]A2, D[1]A3, D[1]A4에 대응하는 4개의 STC 시퀀스의 선두의 재생종료시각을 지정하고 있다.
도 38은 플레이아이템정보, 서브 플레이아이템정보에 의한 멀티앵글구간의 지정을 나타낸다. 제 1 단째는 Multi_clip_entries를 포함한 플레이아이템 정보를 나타내고, 제 2 단째는 플레이아이템정보의 clip_information_file_name에 의해서 참조되는 입체 시 인터리브드 스트림 파일을 나타낸다. 제 3 단째는 인터리브 유닛을 구성하는 베이스 뷰 데이터블록, 디펜던트 뷰 데이터블록의 조를 나타내며, 제 4 단째는 서브 플레이아이템정보의 clip_information_file_name에 의해서 참조되는 입체 시 인터리브드 스트림 파일을 나타낸다. 제 5 단째는 서브 플레이아이템정보를 나타낸다.
플레이아이템정보에서의 clip_information_file_name은 앵글번호 "1"에 대응되어 있고, 플레이아이템정보의 Multi_clip_entrie에서의 clip_information_ file_name은 앵글번호 =2, 3, 4에 대응되어 있다. 그리고 앵글번호 "1"에 대응하는 clip_information_file_name은 00001.ssif의 스트림 파일을 베이스 뷰 비디오 스트림의 공급원으로서 지정하고 있다.
앵글번호 =2, 3, 4에 대응하는 clip_information_file_name은00002.ssif,00003.ssif,00004.ssif를 베이스 뷰 비디오 스트림의 공급원으로서 지정하고 있다.
서브 플레이아이템정보에서의 clip_information_file_name은 앵글번호 "1"에 대응되어 있고, 서브 플레이아이템정보의 Multi_clip_entrie에서의 clip_information_file_name은 앵글번호 =2, 3, 4에 대응되어 있다. 그리고 서브 플레이아이템정보에 있어서 앵글번호 "1"에 대응하는 clip_information_file_name은 00001.ssif의스트림 파일을 디펜던트 비디오 스트림의 공급원으로서 지정하고 있다. 서브 플레이아이템에서의 Multi_clip_entrie의 앵글번호 =2, 3, 4에 대응하는 clip_information_file_name은 00002.ssif,00003.sssif, 00004.ssif의 스트림 파일을 디펜던트 비디오 스트림의 공급원으로서 지정하고 있다.
00001.ssif는 데이터블록 B[1]A1, D[1]A1의 조로 이루어지는 인터리브 유닛을 포함하며, 00002.ssif는 데이터블록 B[1]A2, D[1]A2의 조로 이루어지는 인터리브 유닛, 00003.ssif는 데이터블록 B[1]A3, D[1]A3의 조로 이루어지는 인터리브 유닛, 00004.ssif는 데이터블록 B[1]A4, D[1]A4의 조로 이루어지는 인터리브 유닛을 포함한다. 이들 대응에 의해 재생장치에서의 앵글번호의 설정에 따라서 다른 인터리브 유닛이 재생장치에 판독되게 된다.
여기서, 플레이아이템정보, 서브 플레이아이템정보에서의 스트림 참조정보에 의해서 참조되어 있는 00001.ssif의 스트림 파일이 도 2에 나타내는 공룡의 레프트 뷰 비디오 스트림을 저장하고 있는 것으로 한다.
이 외에, 플레이아이템정보에서의 Multi_clip_entrie 및 서브 플레이아이템 정보에서의 Multi_clip_entrie에 의해서 참조되어 있는 00002.ssif가 도 2에 나타낸 공룡의 후방 앵글로부터의 영상을 나타내는 베이스 뷰 비디오 스트림 및 라이트 뷰 비디오 스트림을 저장하고 있는 것으로 한다.
또, 플레이아이템정보에서의 Multi_clip_entrie 및 서브 플레이아이템 정보에서의 Multi_clip_entrie에 의해서 참조되어 있는 00003.ssif가 도 2에 나타낸 공룡의 좌측 상부 앵글로부터의 영상을 나타내는 베이스 뷰 비디오 스트림 및 라이트 뷰 비디오 스트림을 저장하고 있는 것으로 한다.
이 경우, 재생장치에서의 앵글번호 레지스터의 저장 값의 변환에 의해서 상술한 것과 같은 00001.ssif,00002.ssif,00003.ssif의 스트림 파일이 선택적으로 재생장치에 판독되게 된다.
도 39는 각 앵글번호가 설정된 경우의 입체 시 영상을 나타낸다. 동 도면 (a)는 앵글번호 =1의 설정시에 있어서 플레이아이템정보의 스트림 참조정보에 의해서 참조되는 스트림 파일 및 서브 플레이아이템 정보에서의 스트림 참조정보에 의해서 참조되는 스트림 파일이 판독됨으로써 재생되게 되는 입체 시 영상을 나타낸다.
도 39 (b)는 앵글번호 =2의 설정시에 있어서 플레이아이템정보의 Multi_clip_entrie에 의해서 참조되는 스트림 파일 및 서브플레이아이템정보에서의 Multi_clip_entrie에 의해서 참조되는 스트림 파일이 판독됨으로써 재생되게 되는 입체 시 영상을 나타낸다.
도 39 (c)는 앵글번호 =3의 설정시에 있어서 플레이아이템정보의 Multi_clip_entrie에 의해서 참조되는 스트림 파일 및 서브플레이아이템정보에서의 Multi_clip_entrie에 의해서 참조되는 스트림 파일이 판독됨으로써 재생되게 되는 입체 시 영상을 나타낸다.
앵글번호의 변화에 따라서 스트림 공급원이 되는 스트림 파일이 바뀌므로, 기본 스트림 선택테이블, 확장 스트림 선택테이블의 등록 내용이 동일해도 시청할 수 있는 입체 시 영상을 변화시킬 수 있다.
이상이 본 실시 예의 기록매체에 대한 설명이다. 이어서, 재생장치의 상세에 대하여 설명한다.
재생장치는 그 특유의 구성요소로 앵글번호를 저장하는 앵글번호 레지스터를 구비하고 있다.
본 실시 예의 재생장치에서의 판독부는 앵글번호 레지스터에서의 앵글번호가 1번이면 플레이아이템정보에서의 파일 참조정보 및 서브 플레이아이템정보에서의 파일 참조정보에 의해서 참조되어 있는 스트림 파일을 판독한다.
앵글번호 레지스터에서의 앵글번호가 2번 이후이면 플레이아이템 정보에서의 파일 참조정보의 확장정보 및 서브 플레이아이템 정보에서의 파일 참조정보의 확장정보에 의해서 참조되어 있는 스트림 파일을 판독한다.
베이스 뷰 비디오 스트림에서는 베이스 뷰 비디오 스트림의 시간 축 중 플레이아이템정보의 시각정보에 의해서 나타나는 인 타임에서부터 아웃 타임까지를 재생하고, 디펜던트 뷰 스트림에 대해서는 디펜던트 뷰 스트림의 시간 축 중 종인 재생구간의 시각정보에 의해서 나타나는 인 타임으로부터 아웃 타임까지를 재생한다.
도 40은 Multi_clip_entrie에 따른 스트림 파일의 판독순서를 나타낸다.
스텝 S61은 앵글번호 레지스터에 저장되어 있는 앵글번호는 "1"인가 여부의 판정이며, 만약 앵글번호가 "1"이면 스텝 S62에서 플레이아이템정보에서의 clip_information_file_name에서 지정되어 있는 파일명 및 서브 플레이아이템정보에서의 clip_information_file_name에서 지정되어 있는 파일명의 스트림 파일을 오픈한다.
만약 앵글번호가 "2 이상"이면 스텝 S63에서 플레이아이템 정보의 multi_Clip_entries에서의 clip_information_file_name에서 지정되어 있는 파일명 및 서브 플레이아이템정보의 multi_Clip_entries에서의 clip_information_file_name에서 지정되어 있는 파일명의 스트림 파일을 오픈한다.
스텝 S64에서는 오픈된 스트림 파일의 베이스 뷰 비디오 스트림, 디펜던트 뷰 비디오 스트림을 판독한다.
이상과 같이 본 실시 예에 의하면 어느 스트림 선택테이블의 스트림 등록 열에서 어느 패킷 식별자에 의해 식별되는 베이스 뷰 비디오 스트림 및 디펜던트 뷰 스트림의 공급원을 재생장치에서의 앵글번호 레지스터에서의 앵글번호에 따라서 바꿀 수 있다. 예를 들어, 앵글번호 "1"이면 베이스 뷰 비디오 스트림 및 디펜던트 뷰 스트림의 공급원을 인터리브 스트림 파일이라고 규정하고, 앵글번호 =2이면 베이스 뷰 비디오 스트림 및 디펜던트 뷰 스트림의 공급원을 다른 스트림 파일에 규정할 수 있다.
또, 사용자 조작에 의한 앵글번호의 변화에 따라서 여러 가지 스트림 파일로부터 베이스 뷰 비디오 스트림 및 디펜던트 뷰 스트림을 디코더에 공급할 수 있으므로 입체 시 처리의 앵글 변환을 용이하게 실현될 수 있다.
(제 4 실시 예)
본 실시 예에서는 지금까지의 실시 예에서 설명한 입체 시 재생의 실현을 위해서 어떤 유형의 서브패스를 마련해야 할 것인가, 즉, 서브패스의 유형에 대해서 설명한다.
지금까지의 실시 예의 입체 시 재생의 실현을 위해 디펜던트 뷰 비디오 스트림에 대해서 정의되는 재생구간에는 오프 디스크 타입의 Out-of-MUX 디펜던트 뷰 비디오 스트림 재생 패스(서브패스 타입=5)와 온 디스크 타입의 Out-of-MUX 디펜던트 뷰 비디오 스트림 재생 패스(서브패스 타입=8)가 있다.
먼저, Out-of-MUX 디펜던트 뷰 비디오 스트림 재생 패스(서브패스 타입=5)에 대해서 설명한다. Out-of-MUX 프레임 워크란 BD-ROM 등의 리드 온리 형의 기록매체에 기록되어 있는 디지털 스트림과 재기록형의 기록매체인 로컬 스토리지에 기록되어 있는 디지털 스트림을 동시에 판독하여 디코더에 공급해서 동기 재생시키는 기술이다.
그러므로 Out-of-MUX 디펜던트 뷰 비디오 스트림 재생 패스에 사용되는 서브 플레이아이템은 메인패스에서 분리되어 있다. 플레이리스트에서의 플레이아이템이 디펜던트 뷰 비디오 스트림을 참조하는 서브패스 타입 =5의 서브패스에 관련되어 있으면 이하의 조건을 만족할 필요가 있다.
1) 플레이아이템과 관련된 서브 플레이아이템과는 서로 대응되어서 정렬되어야 한다. 서브 플레이아이템의 재생기간은 관련된 플레이아이템과 동일하게 된다. 구체적으로 말하면,
1-a) 서브 플레이아이템의 개수는 플레이아이템의 개수와 같다.
1-b) 플레이아이템정보와 서브 플레이아이템과는 1대 1 대응이어야 한다. i번째의 서브 플레이아이템에서의 싱크로 플레이아이템 레퍼런스는 i가 아니면 안 된다.
1-c) 서브 플레이아이템에서의 싱크로 스타트타임 플레이아이템은 서브 플레이아이템 인 타임과 등가가 아니면 안 된다.
1-d) 서브 플레이아이템인 타임은 서브 플레이아이템에서의 싱크로 플레이아이템 레퍼런스에 의해서 참조되어 있는 플레이아이템에서의 인 타임과 등가가 된다.
1-e) 서브 플레이아이템 아웃 타임은 서브 플레이아이템에서의 싱크로 플레이아이템 레퍼런스에 의해서 참조되어 있는 플레이아이템에서의 아웃 타임과 등가가 된다.
2) 연속하는 서브 플레이아이템이 접속되어 있는 경우, 서브 플레이아이템의 접속형태정보에 의해서 지시되는 서브 플레이아이템 간의 접속은 클린 브레이크(clean break)를 수반하는 접속형태(connection_condition=5), 또는 ATC 시퀀스 및 STC 시퀀스가 연속하고 있는 접속형태(connection_condition=6)가 된다.
3) 관련하는 플레이리스트 재생타입이 "플레이아이템의 시퀀셜 재생"을 나타내는 경우, 서브 플레이아이템의 엔트리는 재생되는 순서로 배열될 필요가 있다.
4) 서브패스에서의 서브 플레이아이템의 엔트리는 싱크로 플레이아이템 레퍼런스 값에 관련한 순서로 배열되어 있을 필요가 있다. 관련하는 플레이리스트의 플레이리스트 재생타입이 랜덤 셔플(random shuffle)이면 동일한 싱크로 플레이아이템 레퍼런스를 갖는 서브 플레이아이템 간의 재생순서의 순으로 서브 플레이아이템의 순서를 재배열해 둘 필요가 있다.
이상이 서브패스 타입=5의 서브패스가 만족해야 할 조건이다.
서브패스 타입=5의 서브패스는 동기형 Out-of-MUX 타입의 ES 패스 및 Out-of-MUX 디펜던트 뷰 비디오 재생 패스라는 2개의 기능을 가진다. 서브패스 타입=5의 서브패스에 의해서 사용되는 AV 클립은 다중화된 프라이머리 오디오 스트림, PG 스트림, IG 스트림, 세컨더리 오디오 스트림, 디펜던트 뷰 비디오 스트림으로 구성할 수 있다.
다음에, 온 디스크에서의 Out-of-MUX 디펜던트 뷰 비디오 스트림 패스(서브패스 타입=8)에 대해서 설명한다. 메인패스로부터 분리한 디펜던트 뷰 비디오 재생 패스를 재생하는데에 본 타입의 서브플레이아이템은 사용된다. 서브패스 타입=8의 서브패스에 관련된 서브 플레이아이템은 이하의 조건을 만족할 필요가 있다.
1) 플레이아이템과 관련된 서브 플레이아이템과는 서로 대응시켜서 정렬되어야 한다. 서브 플레이아이템의 재생기간은 관련시킨 플레이아이템과 동일하게 된다. 구체적으로 말하면,
1-a) 서브 플레이아이템의 개수는 플레이아이템의 개수와 같다.
1-b) i번째의 서브 플레이아이템에서의 싱크로 플레이아이템 레퍼런스는 i가 아니면 안 된다.
1-c) 서브 플레이아이템에서의 싱크로 스타트타임 플레이아이템은 서브 플레이아이템인 타임과 등가가 아니면 안 된다.
1-d) 서브 플레이아이템 인 타임은 서브 플레이아이템에서의 싱크로 플레이아이템 레퍼런스에 의해서 참조되어 있는 플레이아이템에서의 인 타임과 등가가 된다.
1-e) 서브 플레이아이템 아웃 타임은 서브 플레이아이템에서의 싱크로 플레이아이템 레퍼런스에 의해서 참조되어 있는 플레이아이템에서의 아웃 타임과 등가가 된다.
1-f) 서브 플레이아이템에서의 Multi_clip_entrie의 개수는 싱크로 플레이아이템 레퍼런스에 의해서 참조되어 있는 플레이아이템에서의 Multi_clip_entrie와 동수이다.
2) 접속 상태에 대해서 설명하면, 연속하는 서브 플레이아이템이 접속되어 있는 경우, 서브 플레이아이템의 접속형태정보에 의해서 지시되는 서브 플레이아이템 간의 접속은 클린 브레이크를 수반하는 접속형태(connection_condition=5), 또는 ATC 시퀀스 및 STC 시퀀스가 연속하고 있는 접속형태(connection_condition=6)가 된다.
3) 관련하는 플레이리스트 재생타입이 "플레이아이템의 시퀀셜 재생"을 나타내는 경우, 서브 플레이아이템의 엔트리는 재생되는 순서로 배열될 필요가 있다.
4) 서브패스에서의 서브 플레이아이템의 엔트리는 싱크로 플레이아이템 레퍼런스 값에 관련한 순서로 배열되어 있을 필요가 있다. 관련하는 플레이리스트의 플레이리스트 재생타입이 랜덤 셔플이면 동일한 싱크로 플레이아이템 레퍼런스를 갖는 서브 플레이아이템 간의 재생순서의 순으로 서브 플레이아이템의 순서를 재배열해 둘 필요가 있다.
5) 플레이아이템정보에서의 이즈 멀티앵글 플래그가 온(멀티앵글을 구성한다)으로 설정되어 있고, 서브패스 타입 =8의 서브 플레이아이템 정보로 관련되어 있는 경우, 해당 플레이아이템정보는 스트림 참조정보의 확장구조(Multi_clip_entrie)를 가진다.
확장 스트림 선택테이블에서의 입체 시 디펜던트 뷰 블록(SS_dependent_view_block)을 위한 스트림 엔트리에서의 서브클립 엔트리 ID 레퍼런스는 스트림 엔트리의 서브패스 ID 레퍼런스에 의해서 참조되는 서브패스의 서브 플레이아이템정보에서 1번째의 앵글번호에 대응하는 것으로서 스트림 참조정보로부터참조되어 있는 클립정보파일에서의 서브 클립 엔트리 ID를 참조하여야 한다.
멀티앵글 구간을 구성하는 플레이아이템 및 서브패스의 유형에 대해서 설명한다. 멀티앵글 구간을 구성하는 플레이아이템에는 논 심리스(non-seamless) 멀티앵글 타입의 플레이아이템을 정의할 수 있다.
확장 스트림 선택테이블이 부가된 3D 플레이리스트에서의 플레이아이템 정보는 이즈 심리스 앵글 체인지 플래그(is seamless angle change flag)를 갖는다. 이 이즈 심리스 앵글 체인지 플래그는 앵글 변환이 논 심레스인가 심리스인가를 나타낸다. 이즈 심리스 앵글 체인지 플래그가 0(논 심레스)인 경우, 3D 플레이리스트는 인터랙티브 그래픽스 재생 메뉴의 서브패스(서브패스 타입 =3), 입체 시 인터랙티브 그래픽스 재생 메뉴의 서브패스(서브패스 타입=9)를 가질 수 있다.
이즈 심리스 앵글 체인지 플래그가 0(논 심레스)으로 설정되어있는 경우, 확장 스트림 선택테이블이 부가된 3D 플레이리스트는 입체 시 재생 모드를 위한 디펜던트 뷰 비디오 스트림을 위한 서브패스로서 상술한 것과 같은 서브패스 타입 =3, 8, 9의 서브패스만을 정의할 수 있다. 이것을 제외한 어떤 서브패스도 대응시킬 수 없다.
이상과 같이 본 실시 예에 의하면, 온 디스크로 입체 시 재생을 실현하기 위한 서브패스의 유형, 오프 디스크로 입체 시 재생을 실현하기 위한 서브패스의 유형을 설치하므로, 한 장의 디스크로 입체 시를 실현하거나, 디스크와 다른 기록매체와의 조합으로 입체 시를 실현할 수 있다.
(제 5 실시 예)
본 실시 예에서는 클립정보파일의 상세에 대하여 설명한다.
도 41은 클립정보파일의 내부 구성을 나타낸다.
동 도 (a)는 2D의 클립정보파일, 동 도 (b)는 3D용의 클립정보파일을 나타낸다. 이들 클립정보파일은 「클립정보」, 「시퀀스 정보」, 「프로그램정보」, 「특징점정보」를 포함한다.
「클립정보」는 스트림 파일에 저장되어 있는 소스 패킷 열의 각각이 어떤 AV 클립인가를 ATC 시퀀스마다 나타내는 정보이며, 대응하는 AV 클립에 의해서 구성되는 애플리케이션이 무비, 슬라이드 쇼 등의 어떤 유형에 속하는가(애플리케이션 타입), 대응하는 AV 클립이 어떤 스트림의 유형에 속하는가(스트림 타입), AV 클립에서의 TS 패킷의 전송 레이트(TS 리코딩 그레이트), 앞의 AV 클립을 구성하는 ATC 시퀀스와의 ATC의 차분(ATC 델타), 부호화에 이용한 부호화방식의 식별자를 포함한다.
「시퀀스 정보」는 스트림 파일에 저장되어 있는 1 또는 복수의 소스 패킷 열이 어떤 ATC 시퀀스인지를 나타내는 정보(ATC 시퀀스 정보)를 ATC 시퀀스마다 나타내는 구성으로 되어 있다. ATC 시퀀스 정보는 ATC의 개시점인 소스 패킷이 어디에 존재하는가를 소스 패킷 번호에 의해 나타내는 정보, STC 시퀀스 식별자-ATC 시퀀스 식별자 간의 오프셋과 복수의 STC 시퀀스의 각각에 대한 STC 시퀀스 정보를 포함한다. STC시퀀스 정보는 그 STC 시퀀스에서의 PCR를 저장하고 있는 소스 패킷의 패킷 번호, 그 ATC 시퀀스 중 어디에 STC 시퀀스의 개시점인 소스 패킷이 존재하는가를 나타내는 정보, STC 시퀀스에서의 재생개시시각, 재생종료시각을 포함한다.
「프로그램정보」는 클립정보파일에 의해서 "AV 클립"으로서 관리되고 있는 메인 TS, 서브 TS의 프로그램 구성을 나타내는 정보로, AV 클립이 어떤 ES를 다중화한 것인가를 나타낸다. 구체적으로는 AV 클립에 다중화되어 있는 ES가 어떤 패킷 식별자를 가지고 있는가, 어떤 부호화방식인가를 나타낸다. 비디오 스트림이 MPEG2-video, MPEG4-AVC 등 중 어느 부호화방식을 이용해 압축부호화되어 있는가는 이 프로그램정보 내에 명시된다.
「특징점정보」는 AV 클립에 다중화되어 있는 복수의 ES의 특징점이 어디에 존재하는가를 ES 마다 나타내는 정보이다. ES별로 특징점을 나타내는 정보는 엔트리 맵이라고 부른다.
무엇이 특징점이 되는가는 스트림의 종별마다 다르다. 베이스 뷰 비디오 스트림, 디펜던트 뷰 비디오 스트림의 경우에는 오픈 GOP, 클로즈드 GOP의 선두에 위치하는 I 픽쳐의 액세스유닛 딜리미터(access unit delimiter)가 특징점이 된다. 오디오 스트림의 경우에는 1초 건너 등, 일정기간 간격으로 존재하는 오디오 프레임의 선두 위치를 나타내는 액세스유닛 딜리미터가 특징점이 되고, PG 스트림, IG 스트림의 경우에는 그래픽스 스트림의 디스플레이 세트 중 표시에 필요한 모든 기능 세그먼트를 구비한 것(에포크 스타트(epoch start)의 디스플레이 세트, 애커지션 포인트(acquisition point)의 디스플레이 세트)의 선두 위치를 나타내는 액세스유닛 딜리미터가 특징점이 된다.
또, 특징점을 어떻게 나타내는가는 ATC 시퀀스, STC 시퀀스의 각각에서 다르다. ATC 시퀀스에서 특징점은 소스 패킷 번호로 표현된다. STC 시퀀스에서는 동일한 특징점이 STC 시간 축에서의 시점을 나타내는 PTS를 이용해 표현된다.
상기 차이를 감안하여 ES별 엔트리 맵은 복수의 엔트리 포인트로 구성되어 있다. 구체적으로 말하면, 엔트리 맵을 구성하는 개개의 엔트리 포인트는 ATC 시퀀스에서의 특징점의 소재를 나타내는 소스 패킷 번호가 STC 시퀀스에서의 특징점의 소재를 나타내는 PTS와 대응되어 있고, 그 특징점에의 앵글 변환이 가능한가 아닌가를 나타내는 플래그(is_angle_change 플래그)를 구비하고 있다. 멀티앵글 구간을 구성하는 인터리브 유닛의 선두에 위치하는 소스 패킷은 앵글 변환이 가능하게 되어 있으므로 인터리브 유닛의 선두 소스 패킷을 가리키는 엔트리 포인트의 is_angle_change 플래그는 반드시 온으로 설정된다. 또, 인터리브 유닛의 선두 소스 패킷을 가리키는 엔트리 포인트는 엔트리 포인트에 의해서 플레이아이템정보에서의 In_Time과 대응되어 있다.
ES 별 엔트리 맵은 이들 스트림 종별마다의 특징점의 소스 패킷 번호를 PTS에 대응시켜서 나타내고 있으므로, 이 엔트리 맵을 참조함으로써 STC 시퀀스에서의 임의의 시점에서부터 그 시점에 가장 가까운 ES 별 특징점의 소재를 나타내는 소스 패킷 번호를 이끌어낼 수 있다.
이상이 2D용의 클립정보파일에 대한 설명이다. 이어서, 3D용의 클립정보파일의 상세에 대하여 설명한다. 3D용의 클립정보파일은 도 41 (b)의 내부 구성으로 되어 있고, 통상의 클립정보(관리정보)인 「파일 2D용의 클립정보」외에, 파일 디펜던트용의 클립정보인 「클립 디펜던트 정보(베이스 뷰 관리정보)」, 파일 베이스용의 클립정보인 「클립 베이스정보(베이스 뷰 관리정보)」가 존재한다. 이는 이하의 이유에 의한다. 제 2 실시 예에서 설명한 것과 같이, 입체 시 인터리브드 스트림 파일과 통상의 스트림 파일과의 혼동을 피하기 위해서 입체 시 인터리브드 스트림 파일은 스트림 파일과는 다른 디렉터리에 저장된다. 그러므로 입체 시 인터리브드 스트림 파일에는 클립정보파일을 대응시킬 수 없다. 그래서 클립 디펜던트 정보 및 클립 베이스정보는 파일 2D에 대응하는 클립정보파일에 저장되게 된다.
2D용의 클립정보와 클립 베이스정보 및 클립 디펜던트 정보와의 차이는 클립 베이스정보 및 클립 디펜던트 정보의 내부에 익스텐트 스타트포인트 열을 포함하는 메타데이터(metadata)가 존재하는 점이다.
도 41 (b)에서, 클립 디펜던트 정보는 익스텐트 스타트포인트 열을 포함하며, 클립 베이스정보도 익스텐트 스타트포인트 열을 포함한다. 클립 디펜던트 정보 내에 존재하는 익스텐트 스타트포인트 열은 복수의 익스텐트 스타트포인트 정보로 구성되고, 각 익스텐트 스타트포인트 정보는 파일 디펜던트를 구성하는 복수의 익스텐트의 선두의 소스 패킷 번호를 나타낸다.
클립 베이스정보 내에 존재하는 익스텐트 스타트포인트 열도 복수의 익스텐트 스타트포인트 정보로 구성되고, 각 익스텐트 스타트포인트 정보는 파일 베이스를 구성하는 복수의 익스텐트의 선두의 소스 패킷 번호를 나타낸다.
이들 익스텐트 스타트포인트 정보가 존재하는 기술적 의의에 대해서 설명한다.
스트림 파일에 저장되어 있는 TS는 본래는 1개의 TS이며, ATC 시퀀스도 1개뿐이다. 따라서 클립정보파일의 시퀀스정보를 참조하는 것만으로는 분할부분의 선두가 어디인가를 판별할 수 없다. 한편, 분할부분의 선두는 익스텐트의 선두이기도 하므로, 파일엔트리나 익스텐트 기술자와 같은 파일시스템의 정보를 참조하면 분할부분의 선두가 어디인가를 알 수 있으나, 파일시스템의 정보는 미들웨어로 관리되고 있는 정보이므로 애플리케이션에서 이 익스텐트의 정보를 참조하기는 매우 곤란하다. 그래서 본 실시 예에서는 익스텐트 스타트포인트 정보를 이용하여, 익스텐트가 몇 패킷째인가를 클립정보 내에 나타내도록 하고 있다.
도 41 (c)는 익스텐트 스타트포인트 정보를 기술하기 위한 프로그램 언어에 의한 신텍스를 나타낸다.
본 도면에서, extention_id를 제어변수로 하는 for문은 extention_id를 인수로 하는 익스텐트 스타트포인트를 number_of_extention_start_points만큼 반복하는 루프이다. 인터리브 스트림 파일에서의 익스텐트의 개수 t를 이 number_of_ extention_start_points에 기술하여 상기 for문을 작성하면 인터리브 스트림 파일에 대응하는 익스텐트 스타트포인트 정보가 작성되게 된다.
도 42는 클립정보파일에서의 엔트리 맵 테이블과 익스텐트 스타트포인트 정보를 나타낸다. 본 도 (a)는 엔트리 맵 테이블의 개략 구성을 나타낸다. 인출선 eh1은 엔트리 맵 테이블의 내부 구성을 클로즈업해 나타내고 있다. 이 인출선에 나타내는 것과 같이 엔트리 맵 테이블은 「엔트리 맵 헤더 정보」, 「익스텐트 개시 타입」, 「PID=0x1011에 대한 엔트리 맵」, 「PID=0x1012에 대한 엔트리 맵」, 「PID=0x1220에 대한 엔트리 맵」, 「PID=0x1221에 대한 엔트리 맵」을 포함한다.
「엔트리 맵 헤더 정보」는 엔트리 맵이 가리키는 비디오 스트림의 PID나 엔트리 포인트 수 등의 정보가 저장된다.
「익스텐트 개시 타입」은 레프트 뷰 비디오 스트림 및 라이트 뷰 비디오 스트림 중 어느 쪽의 익스텐트부터 먼저 익스텐트가 배치되어 있는가를 나타낸다.
「PID=0x1011에 대한 엔트리 맵」, 「PID=0x1012에 대한 엔트리 맵」, 「PID=0x1220에 대한 엔트리 맵」, 「PID=0x1221에 대한 엔트리 맵」은 복수 종별의 소스 패킷에 의해 구성되는 PES 스트림의 각각에 대한 엔트리 맵이다. 엔트리 맵에서 한 쌍이 되는 PTS와 SPN의 정보를 "엔트리 포인트"라고 부른다. 또 선두를 "0"로 하여 각 엔트리 포인트마다 증가한 값을 엔트리 포인트 ID(이하 EP_ID)라고 부른다. 이 엔트리 맵을 이용함으로써 재생기는 비디오 스트림의 시간 축 상의 임의의 지점에 대응하는 소스 패킷 위치를 특정할 수 있게 된다. 예를 들어 빨리 감기·되감기의 특수 재생시에는 엔트리 맵에 등록되는 I 픽쳐를 특정하여 선택해서 재생함으로써 AV 클립을 해석하지 않고 효율적으로 처리를 할 수 있다. 또, 엔트리 맵은 AV 클립 내에 다중화되는 각 비디오 스트림마다 작성되며, PID에서 관리된다.
인출선 eh2는 PID=1011의 엔트리 맵의 내부 구성을 클로즈업해서 나타내고 있다. EP_ID=0에 대응하는 엔트리 포인트, EP_ID=1에 대응하는 엔트리 포인트, EP_ID=2에 대응하는 엔트리 포인트, EP_ID=3에 대응하는 엔트리 포인트로 구성된다. EP_ID=0에 대응하는 엔트리 포인트는 온으로 설정된 is_angle_change 플래그와 SPN=3과 PTS=80000과의 대응관계를 나타낸다. EP_ID=1에 대응하는 엔트리포인트는 오프로 설정된 is_angle_change 플래그와 SPN=1500과 PTS=270000과의 대응관계를 나타낸다.
EP_ID=2에 대응하는 엔트리 포인트는 오프로 설정된 is_angle_change 플래그와 SPN=3200과 PTS=360000의 대응관계를 나타낸다. EP_ID=3에 대응하는 엔트리 포인트는 오프로 설정된 is_angle_change 플래그와 SPN=4800과 PTS=450000과의 대응관계를 나타낸다. Is_angle_change 플래그는 그 엔트리 포인트로부터 독립해서 복호 할 수 있는가 여부를 나타내는 플래그이다. 비디오 스트림이 MVC 또는 MPEG4-AVC로 부호화되어 있고, 엔트리 포인트에 IDR 픽쳐가 존재하는 경우 이 플래그는 온으로 설정된다. 엔트리 포인트에 Non-IDR 픽쳐가 존재하는 경우 이 플래그는 오프로 설정된다.
동 도면 (b)는 (a)에 나타낸 PID=1011의 TS 패킷에 대응하는 엔트리 맵 내의 복수의 엔트리 맵에 의해서 어느 소스 패킷이 지시되는가를 나타낸다. EP_ID=0에 대응하는 엔트리 맵은 SPN=3을 지시하고 있고, 이 소스 패킷 번호를 PTS=80000과 대응시키고 있다. EP_ID=1에 대응하는 엔트리 맵은 SPN=1500을 지시하고 있고, 이 소스 패킷 번호를 PTS=270000에 대응시키고 있다.
EP_ID=2에 대응하는 엔트리 맵은 SPN=3200의 소스 패킷을 지시하고 있고, 이 소스 패킷 번호를 PTS=360000에 대응시키고 있다. EP_ID=3에 대응하는 엔트리 맵은 SPN=4800의 소스 패킷을 지시하고 있고, 이 소스 패킷 번호를 PTS=450000와 대응시키고 있다.
도 43은 프로그램정보에서의 스트림 속성정보를 나타낸다.
도면 중의 인출선 ah1은 스트림 속성의 내부 구성을 클로즈업해 나타내고 있다.
이 인출선에 나타내는 것과 같이, PID=0x1011의 TS 패킷에 의해서 구성되는 레프트 뷰 비디오 스트림의 스트림 속성, PID=0x1012의 TS 패킷에 의해서 구성되는 라이트 뷰 비디오 스트림의 스트림 속성, PID=0x1100, PID=0x1101의 TS 패킷에 의해서 구성되는 오디오 스트림의 스트림 속성, PID=0x1220,0x1221의 TS 패킷에 의해서 구성되는 PG 스트림의 스트림 속성과 같이 복수 종별의 소스 패킷에 의해서 구성되는 PES 스트림이 어떤 속성을 가지는가가 이 스트림 속성에 나타나 있다. 이 인출선 ah1에 나타내는 것과 같이 AV 클립에 포함되는 각 스트림에 대한 속성정보가 PID마다 등록된다.
도 44는 엔트리 맵에 의한 엔트리 포인트의 등록을 나타낸다. 제 1 단째는 SC 시퀀스에서 규정되는 시간 축을 나타낸다. 제 2 단째는 클립정보에서의 엔트리 맵을 나타낸다. 제 3 단째는 클립 디펜던트 정보에서의 익스텐트 스타트포인트 정보 및 클립 베이스 정보에서의 익스텐트 스타트포인트 정보를 나타낸다. 제 4 단째는 ATC 시퀀스를 구성하는 소스 패킷 열을 나타낸다. 엔트리 맵이 ATC 시퀀스 중 =n1의 소스 패킷을 지정하고 있는 경우, 이 엔트리 맵의 PTS에는 STC 시퀀스에서의 PTS=t1으로 설정해 둔다. 그렇게 하면 PTS=t1라는 시점을 이용하여 ATC 시퀀스에서의 =n1에서부터의 랜덤액세스를 재생장치에 실행시킬 수 있다. 또 엔트리 맵이 ATC 시퀀스 중에서 =n21의 소스 패킷을 지정하고 있는 경우, 이 엔트리 맵의 PTS에는 STC 시퀀스에서의 PTS=t21로 설정해 둔다. 그렇게 하면 PTS=t21라는 시점을 이용하여 ATC 시퀀스에서의 =n21에서부터의 랜덤 액세스를 재생장치에 실행시킬 수 있다. 이 엔트리 맵을 이용함으로써 재생장치는 비디오 스트림의 시간 축 상의 임의의 지점에 대응하는 소스 패킷을 특정할 수 있다. 예를 들어, 빨리 감기·되감기의 특수 재생 시에는 엔트리 맵에 등록되는 I 픽쳐를 특정해서 선택하여 재생함으로써 AV 클립을 해석하지 않고 효율적으로 처리를 할 수 있다.
또, 제 3단째에서의, 클립 디펜던트 정보에서의 익스텐트 스타트포인트 [i], 클립 베이스정보에서의 익스텐트 스타트포인트 [j]는 제 4 단째에서 디펜던트 뷰 비디오 스트림을 구성하는 익스텐트, 베이스 뷰 비디오 스트림을 구성하는 익스텐트의 선두 소스 패킷 번호가 어느 것인가를 나타낸다.
이에 의해 클립 디펜던트 정보에서의 익스텐트 스타트포인트 [i]로 나타내는 소스 패킷에서부터 클립 베이스정보의 익스텐트 [j]에 의해서 나타내는 소스 패킷의 직전의 소스 패킷까지를 판독해 내면 디펜던트 뷰 비디오 스트림을 구성하는 소스 패킷 열만을 추출할 수 있다.
클립 베이스정보에서의 익스텐트 스타트 [j]로 나타내는 소스 패킷에서부터 클립 디펜던트 정보에서의 익스텐트 [i+1]에 의해서 나타내는 소스 패킷의 직전의 소스 패킷까지를 판독해 내면 베이스 뷰 비디오 스트림을 구성하는 소스 패킷 열만을 추출할 수 있다.
그리고 베이스 뷰 비디오 스트림을 구성하는 소스 패킷끼리, 디펜던트 뷰 비디오 스트림을 구성하는 소스 패킷끼리를 통합하면 베이스 뷰 비디오 스트림을 구성하는 ATC 시퀀스, 디펜던트 뷰 비디오 스트림을 구성하는 ATC 시퀀스를 복원할 수 있다.
도 45는 입체 시 인터리브드 스트림 파일을 구성하는 데이터블록으로부터 ATC 시퀀스가 어떻게 복원되는가를 나타낸다.
제 4 단째는 입체 시 인터리브드 스트림 파일을 구성하는 복수의 데이터블록을 나타내고, 제 3 단째는 메인 TS, 서브 TS에 다중화되는 소스 패킷 열을 나타낸다.
제 2 단째는 디펜던트 뷰를 구성하는 STC 시퀀스(2), 엔트리 맵, 디펜던트 뷰를 구성하는 ATC 시퀀스(2)의 조를 나타내며, 제 1 단째는 베이스 뷰를 구성하는 STC 시퀀스(1), 엔트리 맵, 베이스 뷰를 구성하는 ATC 시퀀스(1)의 조를 나타낸다. 제 3단째로부터 제 2 단째, 제 1 단째로의 화살표는 입체 시 인터리브드 스트림 파일에 인터리브화 되어 있는 2개의 TS(메인 TS, 서브 TS)의 데이터블록으로부터 ATC 시퀀스(1), ATC 시퀀스(2)가 복원되는 것을 모식적으로 나타낸다. 이들의 ATC 시퀀스는 클립정보에서의 엔트리 맵에 의해서 STC 시퀀스와의 대응이 취해진다.
이상이 본 실시 예의 기록매체에 대한 설명이다. 이어서, 재생장치의 상세에 대하여 설명한다.
본 실시 예에서의 재생장치의 판독부는 2개의 기록매체로부터의 소스 패킷 입력을 접수하는 구성으로 되어 있고, 2개의 기록매체 각각을 액세스하기 위한 2개의 드라이브, 이들 2개의 드라이브로부터 입력된 소스 패킷을 일단 저장하고 디코더에 출력하기 위한 2개의 리드 버퍼를 포함한다. 그리고 2개의 드라이브와 2개의 리드 버퍼의 사이에 ATC 시퀀스 복원부가 존재한다. 이 ATC 시퀀스 복원부는 1개의 기록매체로부터 판독된 인터리브드 스트림 파일 내의 소스 패킷으로부터 베이스 뷰를 구성하는 ATC 시퀀스와 디펜던트 뷰 스트림을 구성하는 ATC 시퀀스를 분리하고, 2개의 리드 버퍼 각각에 기입한다. 이렇게 함으로써 재생장치는 베이스 뷰 비디오 스트림을 구성하는 ATC 시퀀스, 디펜던트 뷰 스트림을 구성하는 ATC 시퀀스가 각각 다른 기록매체로부터 판독된 것과 같이 처리할 수 있다. 도 46 (a)는 ATC 시퀀스 복원부를 구비한 판독부의 내부 구성을 나타낸다. 상술한 것과 같이 2개의 드라이브와 2개의 리드 버퍼 사이에 ATC 시퀀스 복원부가 개재되어 있다. 도면 중의 화살표 B0는 1개의 드라이브로부터의 소스 패킷 입력을 상징적으로 나타낸 것이며, 화살표 B1은 베이스 뷰 비디오 스트림을 구성하는 ATC 시퀀스(1)의 기입, 화살표 D1은 디펜던트 뷰 스트림을 구성하는 ATC 시퀀스(2)의 기입을 모식적으로 나타낸다.
도 46 (b)는 ATC 시퀀스 복원부에 의해서 얻은 2개의 ATC 시퀀스가 어떻게 취급되는가를 나타낸다. 도면 중의 한가운데에 다중분리부 내에 존재하는 PID 필터를 나타낸다. 좌측은 ATC 시퀀스 복원부에 의해서 얻은 2개의 ATC 시퀀스를 나타낸다. 우측은 이들 2개의 ATC 시퀀스를 다중분리함으로써 얻어지는 베이스 뷰 비디오 스트림, 디펜던트 뷰 비디오 스트림, 베이스 뷰 PG 스트림, 디펜던트 뷰 PG 스트림, 베이스 뷰 IG 스트림, 디펜던트 뷰 IG 스트림을 나타낸다. 이들 2개의 PID 필터에 의한 다중분리는 제 1 실시 예에 나타낸 기본 스트림 선택테이블, 확장 스트림 선택테이블에 의한다.
이 ATC 시퀀스 복원부는 도 47의 처리를 하드웨어자원에 실행시키는 프로그램을 작성함으로써 실현된다. 도 47은 ATC 시퀀스 복원순서를 나타낸다.
스텝 S71은 베이스 뷰 용의 ATC 시퀀스를 ATC 시퀀스(1)로 하고, 디펜던트 뷰용의 ATC 시퀀스를 ATC 시퀀스(2)로 한다. 스텝 S72에서는 파일 2D에 대응하는 클립정보파일 중 클립 디펜던트 정보 및 클립 베이스정보로부터 익스텐트 스타트포인트 정보를 인출한다. 그리고 스텝 S73~스텝 S77의 루프로 이행한다. 이 루프는 변수 i, 변수 j를 1로 초기화하고(스텝 S73), 스텝 S74~스텝 S76를 실행하며, 그 후, 변수 i, 변수 j를 증가시키는(스텝 S77) 처리를 반복하는 것이다.
스텝 S74는 클립 디펜던트 정보에서 익스텐트 스타트포인트 정보 [i]에서 지시되는 소스 패킷 번호의 소스 패킷에서부터 클립 베이스정보에서 익스텐트 스타트포인트 정보 [j]에서 지시되는 소스 패킷 번호의 직전의 소스 패킷까지를 ATC 시퀀스(2)에 추가한다.
스텝 S75는 클립 베이스정보에서 익스텐트 스타트포인트 정보 [j]에서 지시되는 소스 패킷 번호의 소스 패킷에서부터 클립 디펜던트 정보에서 익스텐트 스타트포인트 정보 [i+1]에서 지시되는 소스 패킷 번호의 직전의 소스 패킷까지를 ATC 시퀀스(1)에 추가한다.
스텝 S76은 익스텐트 스타트포인트 정보 [i+1]이 존재하는가 여부의 판정이다. 만약, 익스텐트 스타트포인트 정보 [i+1]가 존재하지 않는다고 판정된 경우, 스텝 S78에서 클립 베이스정보 내의 익스텐트 스타트포인트 정보 [j]에서 지시되는 소스 패킷 번호의 소스 패킷에서부터 입체 시 인터리브드 스트림 파일의 마지막 소스 패킷까지를 ATC 시퀀스(1)에 추가한다.
이상의 처리를 반복함으로써 베이스 뷰 데이터블록은 ATC 시퀀스(1)에 통합되게 되고, 디펜던트 뷰 데이터블록은 ATC시퀀스(2)에 통합되게 된다. 이상과 같이 ATC 시퀀스(1, 2)가 복원되면, 베이스 뷰 데이터블록의 선두 어드레스 및 연속 길이를 섹터 수로 나타내는 파일 엔트리를 메모리 상에서 생성하고, 파일 베이스를 가상적으로 오픈한다(스텝 S79). 마찬가지로, 디펜던트 뷰 데이터블록의 선두 어드레스 및 연속 길이를 섹터 수로 나타내는 파일 엔트리를 메모리 상에서 생성하고, 파일 디펜던트를 가상적으로 오픈한다(스텝 S80).
익스텐트 스타트포인트 정보는 데이터블록의 선두 어드레스를 소스 패킷 번호로 나타내고 있으므로 소스 패킷 번호로 표현되어 있는 데이터블록의 선두 어드레스 및 소스 패킷 수로 표현되어 있는 데이터 블록의 연속 길이를 섹터 수로 변환할 필요가 있다. 이 변환 순서의 상세를 설명한다.
소스 패킷은 32개 마다 그룹화되고, 3개의 섹터에 기입된다. 32개의 소스 패킷으로 이루어지는 그룹은 6144바이트(=32×192)로, 이는 3개의 섹터 사이즈 6144바이트(=2048×3)와 일치한다. 3개의 섹터에 포함된 32개의 소스 패킷을"Aligned Unit"라 하고, 기록매체로의 기입시에는 Aligned Unit 단위로 암호화가 이루어진다.
데이터블록을 구성하는 소스 패킷은 32개 마다 1개의 Aligned Unit으로 변환되고, 3개의 섹터에 기록되므로 소스 패킷 번호를 32로 나눔으로써 몫(quotient)을 얻고, 그 몫을 Aligned Unit의 어드레스로서 해석한다. 이렇게 얻어진 Aligned Unit 어드레스에 3을 곱함으로써 데이터블록의 선두 소스 패킷에 가장 가까운 섹터 어드레스를 구할 수 있다.
또, 데이터블록의 연속 길이를 나타내는 소스 패킷 수를 32로 나눔으로써 몫을 얻고, 그 몫을 연속 Aligned Unit 수로 해석한다. 이렇게 얻어진 Aligned Unit수에 3을 곱함으로써 데이터블록의 연속 길이를 섹터 수로 표현할 수 있다. 이상의 변환에 의해 얻어진 데이터블록의 어드레스 및 연속 길이를 나타내는 섹터 수를 할당 기술자로 파일베이스의 파일 엔트리 및 파일 디펜던트의 파일 엔트리에 포함시키면, 파일 베이스, 파일 디펜던트의 파일 엔트리를 가상적으로 생성할 수 있다.
<파일 베이스를 오픈하는 것의 기술적 의의>
여기서 임의의 시점에서부터의 랜덤 액세스를 할 때 스트림 파일 내의 섹터 서치를 실시할 필요가 있다. 섹터 서치란 임의의 시점으로부터의 랜덤 액세스를 할 때, 그 시점에 대응하는 소스 패킷의 소스 패킷 번호를 특정하고, 그 소스 패킷 번호의 소스 패킷을 포함한 섹터로부터 파일 리드를 한다고 하는 처리이다.
입체 시 인터리브드 스트림 파일은 한 개의 익스텐트가 크므로 섹터 서치의 탐색 범위가 넓고, 임의의 시점으로부터의 랜덤 액세스가 명해진 때 판독 처가 되는 섹터의 특정에 상당한 처리 시간을 필요로 하는 경우가 있다.
이는 인터리브 스트림 파일은 베이스 뷰 비디오 스트림을 구성하는 데이터블록, 디펜던트 뷰 스트림을 구성하는 데이터블록이 인터리브 배치되어서 한 개의 긴 익스텐트를 구성하고 있고, 인터리브 스트림 파일의 파일 엔트리의 할당 기술자는 그 긴 익스텐트의 선두 어드레스를 나타내고 있는데 지나지 않는다는 이유에 의한다.
이에 대하여 파일 베이스는 길이가 짧은 복수의 익스텐트로 구성되어 있고, 개개의 익스텐트의 선두 어드레스가 할당 기술자에 표시되어 있으므로, 섹터 서치 시의 탐색 범위가 좁고, 임의의 시점으로부터의 랜덤 액세스가 명해진 때 판독 처가 되는 섹터의 특정이 단시간에 완료한다.
즉, 베이스 뷰 비디오 스트림을 구성하는 데이터블록이 파일베이스의 익스텐트로서 관리되어 있고, 데이터블록의 선두 어드레스가 파일 베이스에 대응하는 파일 엔트리에서의 할당 기술자에 명기되어 있으므로, 랜덤 액세스 위치를 포함하고 있는 익스텐트의 선두 어드레스로부터 섹터 서치를 개시하면 조기에 랜덤 액세스 위치가 되는 소스 패킷을 포함한 섹터에까지 도달할 수 있다.
이와 같이 베이스 뷰 비디오 스트림을 구성하는 데이터블록을 파일 베이스의 익스텐트로 관리하고, 각 익스텐트의 선두 어드레스 및 연속 길이를 파일 베이스에 대한 파일 엔트리의 할당 기술자에 나타냄으로써 베이스 뷰 비디오 스트림에서의 임의의 시점으로부터의 랜덤 액세스가 고속으로 된다.
구체적인 섹터 서치의 순서는 이하와 같다. 베이스 뷰 비디오 스트림에 대응하는 엔트리 맵을 이용함으로써 임의의 시점에 대응하는 랜덤 액세스 위치인 소스 패킷 번호를 도출한다.
다음에, 베이스 뷰 비디오 스트림에 대응하는 클립정보 내의 익스텐트 스타트 포인팅 정보를 이용함으로써 랜덤 액세스 위치가 되는 소스 패킷 번호를 포함하고 있는 익스텐트가 어느 것인지를 특정한다.
또, 파일 베이스에 대응하는 파일 엔트리의 할당 기술자를 참조하면 랜덤 액세스 위치가 되는 소스 패킷 번호를 포함하고 있는 익스텐트의 선두 섹터 어드레스를 특정할 수 있다. 그 선두 섹터 어드레스에 파일 포인터를 설정하고, 파일 리드를 실시하여 판독된 소스 패킷에 대한 패킷 해석을 실행함으로써 랜덤 액세스 위치가 되는 소스 패킷 번호의 소스 패킷을 특정한다. 그리고 특정된 소스 패킷 번호의 소스 패킷을 판독한다. 이에 의해, 메인 TS에 대한 랜덤 액세스가 효율적으로 실행되는 된다. 서브 TS도 마찬가지이다.
이상과 같이 본 실시 예에 의하면, 인터리브드 스트림 파일에서의 베이스 뷰 비디오 스트림의 익스텐트, 디펜던트 뷰 비디오 스트림의 익스텐트를 익스텐트 스타트포인트 정보에 의거하여 정렬한 다음 다중분리부, 디코더에 제공하므로, 디코더나 프로그램은 베이스 뷰 비디오 스트림을 저장한 파일 베이스 및 디펜던트 뷰 비디오 스트림을 저장한 파일 디펜던트라는 2개의 파일이 기록매체에 가상적으로 존재하는 것으로 취급할 수 있다.
입체 시를 위한 베이스 뷰 비디오 스트림, 디펜던트 뷰 비디오 스트림을 인터리브 스트림 파일로 기록매체에 기록하면서도 베이스 뷰 비디오 스트림 및 디펜던트 뷰 비디오 스트림의 단체(單體) 액세스를 가능하게 하게 하므로, 재생장치의 처리의 효율성을 향상시킬 수 있다.
또, 익스텐트 스타트포인트 정보는 1 바이트 단위로 익스텐트의 선두를 나타내도 좋지만, 익스텐트가 ECC 블록과 같은 고정길이의 판독 블록사이즈로 정렬하는 경우에는 고정길이 단위로 지정하는 것이 바람직하다. 이렇게 함으로써 어드레스를 식별하기 위해서 필요한 정보량을 억제할 수도 있다.
(제 6 실시 예)
본 실시 예는 입체 시 슬라이드 쇼의 애플리케이션을 실현하는 개량에 관한 것이다.
슬라이드 쇼는 정지화면으로 구성되어 있으므로 영화보다 고 정밀도의 랜덤 액세스가 요구된다. 고 정밀도의 랜덤 액세스란 1매 앞, 10매 앞과 같이 "1매의 픽쳐"를 액세스 단위로 한 랜덤 액세스이다. 비디오 스트림의 엔트리 맵은 1초 간격과 같이, 1초 정도의 시간 정밀도를 가지며, 이 1초라는 시간간격에는 20~30매의 픽쳐가 포함될 수 있다. 이런 이유에서 상술한 엔트리 맵을 이용하여 픽처 정밀도에서의 랜덤 액세스를 실현하려고 하면 엔트리 맵의 참조만으로는 충분하지 않고, 스트림에 대한 해석이 필요하게 된다.
여기에서의 "스트림의 해석"이란 엔트리 맵에 기재되어 있는 엔트리 위치에서부터 픽쳐의 헤더를 인출하고, 이 헤더로부터 픽쳐의 사이즈를 판독하며, 그 사이즈에 의거하여 다음의 픽쳐의 기록 위치를 특정한다고 하는 처리를 몇 번이나 반복하여 원하는 픽쳐의 기록 위치까지 찾아간다고 하는 것이다. 이러한 해석은 스트림에 대한 고 빈도의 액세스를 수반하는 것이므로, 엔트리 위치로부터 3매 앞, 5매 앞의 픽쳐를 판독하는 것만으로도 상당한 시간이 걸린다. 픽쳐 정밀도의 랜덤 액세스에 상당한 시간이 걸리므로, 사용자 조작에 즉응하여 전후의 픽쳐를 표시시키거나 10매 전후의 픽쳐를 표시시킬 수 있는 기능을 슬라이드 쇼에 추가하려고 해도 제작자 측이 기대하는 유용성(usability)은 없다.
슬라이드 쇼에 대한 엔트리 포인트는 비디오 스트림에서의 픽쳐마다의 엔트리 어드레스를 재생시각에 대응시켜서 나타내고 있다. 그리고, 플레이리스트 마크정보는 개개의 픽쳐 데이터를 지정하도록 하고 있다.
이와 같이 개개의 픽쳐 데이터가 엔트리 포인트와 플레이리스트 마크정보에 의해서 지시되면 1매 앞, 3매 앞과 같이 픽쳐 정밀도의 랜덤 액세스가 요구되었다고 하더라도 비디오 스트림의 해석을 수반하는 일 없이 픽쳐 정밀도의 랜덤 액세스를 실현할 수 있다.
시간 축 상의 임의의 시점으로부터 비디오 스트림 상의 기록 위치를 도출할 수 있고, 또, 1매 앞, 3매 앞과 같은 픽쳐 정밀도에서의 랜덤 액세스를 실현할 수 있으므로, 사용자 조작에 즉응하여 전후의 픽쳐를 표시시키거나 수 매 전후의 픽쳐를 표시시킬 수 있는 애플리케이션을 제작할 수 있다.
지금까지의 실시 예에서 입체 시 재생이 가능한 비디오 스트림은 인터리브 형식으로 하고 있었지만, 이와 같이 인터리브 형식으로 하면 슬라이드 쇼를 구성하는 픽쳐 데이터는 L-L-L, R-R-R과 같은 순서로 배열되게 된다. 이러한 순서의 모든 픽쳐 데이터가 슬라이드 쇼를 구성하고 있고, 개개의 픽쳐 데이터가 엔트리포인트에 의해서 지시되면, 엔트리 포인트는 00:00→00:01→00:02, 00:00→00:01→00:02와 같은 순서로 배열되게 된다.
엔트리 맵에서의 엔트리 포인트는 그 재생시각이 오름 순이 되도록 배열되어야 하며, 엔트리 맵에 대한 제약에 위반한다. 그래서 AV 클립의 애플리케이션 타입이 슬라이드 쇼인 경우의 특유의 제한으로 레프트 뷰 스트림을 구성하는 픽쳐 데이터 및 라이트 뷰 스트림을 구성하는 픽쳐 데이터를 1TS화 한다. 이와 같이, 1TS화하면 레프트 뷰 스트림을 구성하는 픽쳐 데이터 및 라이트 뷰 스트림을 구성하는 픽쳐 데이터를 L-R-L-R-L-R라는 순서로 배열할 수 있고, 그리고 이들 픽쳐 데이터의 엔트리 포인트에 대해서는 그 엔트리 포인트에서의 재생시각이 00:00→00:00→00:01→00:01→00:02→00:02→00:03, 00:03이 되도록 배열할 수 있다.
1매의 슬라이드를 이루는 픽쳐 데이터를 시간 순서로 배열하고, 또 다중화를 실시함으로써 다중화된 픽쳐 데이터의 덩어리가 기록매체의 연속영역에 기록되게 된다.
도 48은 비디오 스트림의 내부 구성을 나타낸다. 본 도면에서는 동 도면 (a)는 무비 애플리케이션을 구성하는 비디오 스트림을 나타낸다. (a)의 제 2 단째는 베이스 뷰 비디오 스트림과 디펜던트 뷰 스트림을 인터리브 형식으로 한 입체 시 인터리브드 스트림 파일을 나타낸다. 도면 중의 R1, R2, R3, R4는 디펜던트 뷰 비디오 스트림을 구성하는 픽쳐 데이터이며, L1, L2, L3, L4는 베이스 뷰 비디오 스트림을 구성하는 픽쳐 데이터이다. R5, R6, R7, R8은 디펜던트 뷰 비디오 스트림을 구성하는 픽쳐 데이터이다.
제 1 단째는 이 인터리브 스트림 파일과 실체를 동일하게 하는 디펜던트 뷰 스트림의 스트림 파일을 나타낸다. 파일 명과 m2ts의 확장자에 의해서 구성된다. 이 디펜던트 뷰 스트림의 스트림 파일은 R1, R2, R3, R4, R5, R6, R7, R8에 의해서 구성된다. 이상과 같이 무비 애플리케이션에서는 디펜던트 뷰 스트림이 사용됨으로써 구성되는 것을 알 수 있다.
동 도면 (b)의 제 2 단째는 정지화상 슬라이드 쇼에서의 I 픽쳐를 나타낸다. 도면 중의 레프트 뷰 픽쳐 「L」, 라이트 뷰 픽쳐 「R」은 「L」 「R」 「L」 「R」 「L」 「R」의 순서로 다중화되어 기록되어 있음을 알 수 있다.
베이스 뷰 정지화상인 픽쳐 데이터의 선두인 액세스유닛 딜리미터(access unit delimiter)는 디펜던트 뷰 정지화상인 픽쳐 데이터의 선두보다 선행하고 있고, 또한, 디펜던트 뷰 정지화상인 픽쳐 데이터의 후미는 상기 베이스 뷰 정지화상의 다음에 재생되어야 할 베이스 뷰 정지화상의 픽쳐 데이터에서의 선두를 나타내는 액세스유닛 딜리미터보다 선행하고 하고 있다. 그리고 이들 베이스 뷰 정지화상의 픽쳐 데이터의 선두인 액세스유닛 딜리미터를 저장한 소스 패킷, 디펜던트 뷰 정지화상의 픽쳐 데이터의 선두인 액세스유닛 딜리미터를 저장한 소스 패킷은 자신 이외의 픽쳐 데이터를 포함하고 있지 않다. 즉, 베이스 뷰 정지화상을 나타내는 픽쳐 데이터, 디펜던트 뷰 정지화상을 나타내는 픽쳐 데이터는 완결한 상태로 베이스 뷰 - 디펜던트 뷰 - 베이스 뷰 - 디펜던트 뷰의 순으로 기록영역에 배열되어 있다.
그러나 제 1 단째에 나타낸 것과 같이, 디펜던트 뷰 스트림은 사용되고 있지 않고, 슬라이드 쇼 애플리케이션에서는 라이트 뷰의 영상을 디펜던트 뷰 스트림으로 액세스 할 수 없다.
레프트 뷰의 픽쳐 데이터, 라이트 뷰의 픽쳐 데이터를 다중화하고 있는 것은 이하의 이유에 의한다. 픽쳐 데이터를 한 개의 익스텐트로 기록매체에 기록하려고 하면 최소 익스텐트 길이를 만족할 수 없다. 최소 익스텐트 길이를 만족하기 위해서 복수의 픽쳐 데이터를 상술한 것과 같이 시간순서로 배치한 후에 다중화하여, 다중화된 TS를 기록한다. 이렇게 함으로써 최소 익스텐트 길이를 만족하도록 TS를 분할하여 기록할 수 있게 된다.
대조적으로, 사이즈가 비교적 작으므로 1매의 정지화상을 표시하기 위한 데이터를 모아서 배치하는 것이 판독효율이 상승하게 된다.
이어서, AV 클립에서의 애플리케이션의 종별을 나타내는 정보(application_type)가 슬라이드 쇼(application_type=2or3)인 경우의 엔트리 맵 설정에 대해서 설명한다. 시간 축 상의 복수의 시점(t1~t7)에서 재생이 이루어지도록 PTS가 설정된 IDR 픽쳐가 슬라이드 쇼 내에 존재하는 것으로 한다. 이 경우, 이 슬라이드 쇼에 대한 엔트리 맵 설정은 도 49와 같이 된다. 도 49는 슬라이드 쇼에 대하여 설정된 엔트리 맵의 내부 구성을 나타낸다.
슬라이드 쇼에서는 모든 픽쳐를 지시하도록 엔트리 맵을 설정하므로, 엔트리 맵에서의 개개의 Entry_Point#1~#7은 슬라이드 쇼에서의 개개의 IDR 픽쳐의 재생 시점 t1, t2, t3, t4, t5, t6, t7를 엔트리 시각(PTS_EP_start)으로 특정하고, 엔트리 위치(SPN_EP_start)와 대응되어 있음을 알 수 있다.
이렇게 하여, 각 IDR 픽쳐의 재생 시점이 엔트리 시각으로 엔트리 맵에 의해서 지정되므로, t1~t7 중 어느 것을 랜덤 액세스의 액세스 처로 선택하는 경우에도 선행하는 IDR 픽쳐를 경유한다고 하는 우회의 오버헤드가 발생하는 일은 없다.
본 도면의 제 1 단째는 PlayListMark 정보의 설정을 나타내며, 제 2 단째는 플레이아이템 정보에서의 인 타임의 지정을 나타낸다. 제 3 단째는 L화상, R화상을 나타내며, 제 4 단째는 엔트리 맵, 제 5 단째는 소스 패킷 열을 나타낸다.
슬라이드 쇼에서는 모든 레프트 뷰 픽쳐, 라이트 뷰 픽처를 지시하도록 엔트리 맵을 설정하므로, 엔트리 맵에서의 개개의 Entry_Point #1~#7은 슬라이드 쇼에서의 개개의 IDR 픽처의 재생 시점 t1, t2, t3, t4, t5, t6, t7를 엔트리 시각 (PTS_EP_start)로 특정하여, 엔트리 위치(SPN_EP_start)와 대응시키고 있음을 알 수 있다.
제 3 단째에서의 시점 t2, t4, t6 중 t6를 액세스 처로 하여 랜덤 액세스를 실행하려고 하면, 시점 t6 그 자체가 PTS_EP_start에 지시되어 있으므로 앞의 레프트 뷰 픽쳐를 경유하는 일 없이 시점 t6에 해당하는 기록 위치(SPN=N6)를 액세스할 수 있다.
모든 레프트 뷰 픽쳐의 재생 시점도 PTS_EP_start에 의해 지시되어 있으므로 슬라이드 쇼에서의 시간 정보를 이용한 랜덤 액세스를 고속으로 실행할 수 있다.
상술한 것과 같은 엔트리 맵 설정에 수반하여 클립정보에서의 Application_Type을 2 또는 3으로 표시해 두면, 슬라이드 쇼를 구성하는 모든 픽쳐에 대하여 엔트리 맵 상에 엔트리가 존재하는 것이 식별되므로, 엔트리 맵의 엔트리를 참조함으로써 판독 데이터의 범위가 판명되고, 전후의 스트림을 여분으로 해석할 필요가 없어진다.
이상이 기록매체에 대한 설명이다. 이어서, 재생장치의 상세에 대하여 설명한다. 재생장치가 슬라이드 쇼의 재생을 하기 위해서는 재생제어엔진이 도 50에 나타내는 처리순서로 재생을 하면 좋다.
도 50은 슬라이드 쇼 플레이리스트의 재생순서를 나타낸다. 스텝 S81은 현재 플레이아이템 번호를 "1"로 초기화하고, 스텝 S82에서 현재 플레이아이템에서의 clip_information_file_name의 애플리케이션 타입이 슬라이드 쇼인지 여부를 판정한다. 만약 무비 애플리케이션이면, 스텝 S83에서 무비 애플리케이션의 처리를 한다.
슬라이드 쇼이면 스텝 S84~스텝 S90의 처리를 반복하는 루프로 이행한다. 이 루프는 스텝 S85, 스텝 S86의 판정을 거쳐서 현재 PlayItem.In_Time에 합치하거나 가장 가까운 엔트리포인트 [i]를 엔트리 맵으로부터 특정하고(스텝 S87), 엔트리포인트 [i]에 의해 지시된 소스 패킷 번호의 소스 패킷으로부터 엔트리 포인트 [i+1]에 의해 지시된 소스 패킷 번호의 직전의 소스 패킷까지를 판독하여 베이스 뷰 측의 PID 필터에 보내는 처리(스텝 S88), 엔트리 포인트 [i+1]에 의해 지시된 소스 패킷 번호의 소스 패킷으로부터 엔트리 포인트 [i+2]에 의해 지시된 소스 패킷 번호의 직전의 소스 패킷까지를 판독하여 디펜던트 뷰 측의 PID 필터에 보내는 처리(스텝 S89)를 현재 PlayItem 번호가 최종의 PlayItem 번호가 될 때까지 반복한다고 하는 것이다(스텝 S94). 이 스텝 S94의 판정이 Yes가 되지 않는 한 현재 PlayItem 번호는 증가된 후에 스텝 S85로 이행한다.
스텝 S85는 스킵 백 조작이 이루어졌는지 여부의 판정이고, 스텝 S86은 스킵 넥스트 조작이 이루어졌는지 여부의 판정이다. 스킵 넥스트 조작이 이루어지면 현재 챕터 번호가 증가되고(스텝 S90), 스킵 백 조작이 이루어지면 현재 챕터 번호가 "1"인지 여부가 판정되며(스텝 S91), "1"이 아니면 감소된다(스텝 S92).
그리고 스텝 S93에서는 현재 챕터 번호에 대응하는 PlayListMark의 PlayItem_ref_id에서 참조되어 있는 PlayItem 번호를 현재 PlayItem 번호로 하고 스텝 S55로 이행한다.
이상과 같이 본 실시 예에 의하면, 스트림 해석을 하는 일 없이 임의의 L화상의 픽쳐 데이터, R화상의 픽쳐 데이터의 세트를 판독하여 재생에 제공할 수 있으므로, 사용자의 스킵 조작에 따라 임의의 픽처 데이터를 랜덤 액세스할 수 있는 슬라이드 쇼 애플리케이션을 용이하게 실현할 수 있다.
(제 7 실시 예)
본 실시 예에서는 다중분리부, 디코더, 플레인 메모리의 하드웨어 스케일에 대하여 설명한다.
본 실시 예에서의 다중분리부는 소스 패킷 디 패킷다이저, PID 필터와의 세트를 1개 이상 포함한다. 이 소스 패킷 디 패킷다이저, PID 필터의 세트는 스트림 입력의 계통수에 따른 수만큼 존재한다.
도 51은 다중분리부 및 비디오 디코더의 내부 구성을 나타낸다.
동 도면 (a)는 다중분리부의 디코더 모델을 나타낸다. 다중분리부(SourceDe-packetizer and PID filter)의 세트는 2개가 된다. 이는 다중분리부가 본래 2개의 기록매체로부터의 2 계통의 스트림 입력을 처리하는 구성으로 되어있기 때문이다. 2D 재생 모드에서는 2개의 기록매체로부터의 스트림 입력을 처리할 수 있으나, 3D 재생 모드에서는 L과 R, 2D와 Depth라는 2 계통의 스트림 입력을 처리하게 된다.
동 도면 (a)에 나타내는 것과 같이 다중분리부는 소스 디 패킷다이저(22), PID 필터(23), 소스 디 패킷다이저(27), PID 필터(28)로 구성된다.
소스 디 패킷다이저(22)는 리드 버퍼(2a)에 소스 패킷이 축적된 경우, ATC 카운터가 생성하는 ATC의 값과 소스 패킷의 ATS값이 동일하게 된 순간에 AV 클립의 기록 레이트에 따라서 그 TS 패킷을 PID 필터에 전송한다. 이 전송시에 각 소스 패킷의 ATS에 따라서 디코더로의 입력 시각을 조정한다.
PID 필터(23)는 소스 디 패킷다이저(22)로부터 출력된 TS 패킷 중 TS 패킷의 PID가 재생에 필요한 PID에 일치하는 것을 PID에 따라서 각종 디코더에 출력한다.
소스 디 패킷다이저(26)는 리드 버퍼(2b)에 소스 패킷이 축적된 경우 ATC 카운터가 생성하는 ATC의 값과 소스 패킷의 ATS 값이 동일하게 된 순간에 AV 클립의 시스템 레이트에 따라서 그 TS 패킷만을 PID 필터에 전송한다. 이 전송시에 각 소스 패킷의 ATS에 따라서 디코더로의 입력 시각을 조정한다.
PID 필터(27)는 소스 디 패킷다이저(26)로부터 출력된 TS 패킷 중 TS 패킷의 PID가 재생에 필요한 PID에 일치하는 것을 PID에 따라서 각종 디코더에 출력한다.
다음에 프라이머리 비디오 디코더(31)의 내부 구성에 대하여 설명한다.
도 51 (b)는 프라이머리 비디오 디코더의 내부 구성을 나타낸다. 프라이머리 비디오디코더(31)는 TB(51), MB(52), EB(53), TB(54), MB(55), EB(56), 디코더 코어(57), 버퍼 스위치(58), DPB(59), 픽쳐 스위치(60)로 구성된다.
Transport Buffer(TB)(51)은 레프트 뷰 비디오 스트림을 포함하는 TS 패킷이 PID 필터(23)에서 출력된 때에 TS 패킷의 상태로 일단 축적되는 버퍼이다.
Multiplexed Buffer(MB)(52)는 TB에서 EB에 비디오 스트림을 출력할 때 일단 PES 패킷을 축적해 두기 위한 버퍼이다. TB에서 MB에 데이터가 전송될 때 TS 패킷의 TS헤더는 제거된다.
Elementaly Buffer(EB)(53)은 부호화 상태에 있는 비디오 액세스유닛이 저장되는 버퍼이다. MB에서 EB에 데이터가 전송될 때 PES 헤더가 제거된다.
Transport Buffer(TB)(54)는 라이트 뷰 비디오 스트림을 포함하는 TS 패킷이 PID 필터에서 출력된 때 TS 패킷의 상태로 일단 축적되는 버퍼이다.
Multiplexed Buffer(MB)(55)는 TB에서 EB에 비디오 스트림을 출력할 때 일단 PES 패킷을 축적해 두기 위한 버퍼이다. TB에서 MB에 데이터가 전송될 때 TS 패킷의 TS헤더는 제거된다.
Elementaly Buffer(EB)(56)은 부호화 상태에 있는 비디오 액세스유닛이 저장되는 버퍼이다. MB에서 EB에 데이터가 전송될 때 PES 헤더가 제거된다.
디코더 코어(57)는 비디오 스트림의 개개의 비디오 액세스유닛을 소정의 복호 시각(DTS)에 디코드함으로써 프레임/필드 화상을 작성한다. AV 클립에 다중화되는 비디오 스트림의 압축부호화 형식에는 MPEG2, MPEG4-AVC, VC1 등이 있으므로, 스트림의 속성에 따라서 디코더 코어(57)의 디코드 방법은 바뀐다. 베이스 뷰 비디오 스트림을 구성하는 픽쳐 데이터를 디코드할 때 디코더 코어(57)는 미래 방향 또는 과거 방향으로 존재하는 픽쳐 데이터를 참조 픽쳐로 이용하여 모션 보상(motion compensation)을 한다. 그리고 디펜던트 뷰 비디오 스트림을 구성하는 개개의 픽쳐 데이터의 디코드시에 디코더 코어(57)는 베이스 뷰 비디오 스트림을 구성하는 픽쳐 데이터를 참조 픽처로 이용하여 모션 보상을 한다. 이렇게 하여 픽쳐 데이터가 디코드 되면, 디코더 코어(57)는 디코드 된 프레임/필드 화상을 DPB(59)에 전송하고, 표시 시각(PTS)의 타이밍에 대응하는 프레임/필드 화상을 픽쳐 스위치에 전송한다.
버퍼 스위치(58)는 디코더 코어(57)가 비디오 액세스유닛을 디코드할 때에 취득한 디코드 스위치 정보를 사용하여 다음의 액세스유닛을 EB(53), EB(56)의 어느 것에서 인출할지를 결정하고, EB(53)와 EB(56)에 축적된 픽쳐를 비디오 액세스유닛에 할당된 복호시각(DTS)의 타이밍에 디코더 코어(57)에 전송한다. 레프트 뷰 비디오 스트림과 라이트 뷰 비디오 스트림의 DTS는 시간 축 상에서 픽쳐 단위로 교호로 오도록 설정되어 있으므로, 예를 들어 DTS를 무시해서 앞당겨서 디코드하는 경우 픽쳐 단위로 비디오 액세스유닛을 디코더 코어(57)에 전송하는 것이 바람직하다.
Decoded PIcture Buffer(DPB)(59)는 복호 된 프레임/필드 화상을 일시적으로 보유해 두는 버퍼이다. 디코더 코어(57)가 픽쳐 간 예측부호화된 P 픽쳐나 B 픽쳐 등의 비디오 액세스유닛을 디코드할 때 이미 디코드 된 픽쳐를 참조하기 위해서 이용한다.
픽쳐 스위치(60)는 디코더 코어(57)로부터 전송된 디코드가 완료된 프레임/필드 화상을 비디오 플레인에 기입하는 경우, 그 기록 처를 레프트 뷰 비디오 플레인, 라이트 뷰 비디오 플레인으로 전환한다. 레프트 뷰의 스트림의 경우에는 비 압축의 픽쳐 데이터가 레프트 뷰 비디오 플레인에, 라이트 뷰의 스트림의 경우에는 비 압축의 픽처 데이터가 라이트 뷰 비디오 플레인에 순시(瞬時)에 기입되게 된다.
모드 전환시의 비디오 디코더의 동작에 대하여 설명한다. LR방식의 경우에는 L측의 출력만으로 전환되면 2D 표시가 되고, Depth 방식의 경우에는 심도(深度) 정보의 처리를 포기하고, 심도 정보를 부가하지 않으면 2D 영상으로 전환할 수 있다. 단, LR방식과 Depth 방식은 필요로 하는 데이터가 다르므로 상호 전환을 할 때에는 디코드하는 스트림의 재선택이 필요하다.
다음에, 재생장치에서의 디코더 및 플레인 메모리의 규모에 대하여 설명한다.
장치 구성이 1 디코더가 되는가, 2 디코더가 되는가, 1 플레인이 되는가, 2 플레인이 되는가는 스트림 종별과 입체 시 방식의 조합에 따라서 바뀐다.
3D-LR방식을 채용하는 경우, MVC 비디오 스트림이 재생 대상이면 1 디코더+2 플레인 구성이 된다.
3D-Depth 방식을 채용하는 경우도 1 디코더+2 플레인 구성이 되고, 시차 화상 생성기가 필요하다. 이는 프라이머리 비디오 스트림, 세컨더리 비디오 스트림에서도 동일하다. 도 52는 3D-LR방식, 3D-Depth 방식에서의 1 디코더+2 플레인의 장치 구성을 나타낸다. 도 52 (a)는 3D-LR방식을 채용하는 경우에서의 1 디코더+2 플레인 구성을 나타낸다. 도 52 (b)는 3D-Depth 방식을 채용하는 경우에서의 1 디코더+2 플레인 구성을 나타낸다.
MVC 비디오 스트림에서 장치 구성이 1 디코더가 되는 것은 개개의 압축 픽쳐 데이터의 매크로 블록의 모션 보상을 실현할 때 비 압축의 레프트 뷰 픽쳐 데이터, 및 비 압축의 라이트 뷰 픽쳐 데이터를 참조 화상으로 이용하기 때문이다. 디코디드 픽처 버퍼에 참조 화상이 되는 비 압축의 레프트 뷰 픽쳐 데이터 및 비 압축의 라이트 뷰 픽쳐 데이터가 저장된다.
이상이 비디오 디코더, 비디오 플레인에 대한 설명이다.
PG 스트림에서의 재생장치의 구성은 1plane+Offset 방식을 채용하는 경우 1 디코더+1 플레인 구성이 된다. 3D-LR방식, 3D-Depth 방식을 채용하는 경우 2 디코더+2 플레인 구성이 된다.
마찬가지로, IG 스트림에서의 재생장치의 구성은 3D-LR방식을 채용하는 경우 2 디코더+2 플레인 구성이 된다. 한편, 1plane+Offset 방식을 채용하는 경우 1 디코더+1 플레인 구성이 된다.
텍스트 자막 스트림에서의 재생장치 구성에서는 3D-LR방식이 존재하지 않고, 1plane+Offset 모드인 경우, 1 디코더+1 플레인 구성이 된다. 3D-Depth 방식인 경우 1 디코더+2 플레인 구성이 된다.
다음에, PG 스트림의 내부 구성과 PG 스트림을 디코드하는 PG 디코더의 내부 구성에 대하여 설명한다.
레프트 뷰 PG 스트림 및 라이트 뷰 PG 스트림은 모두 복수의 디스플레이 세트를 포함한다. 디스플레이 세트란 한 개의 화면 표시를 구성하는 기능 세그먼트(segment)의 집합이다. 기능 세그먼트는 약 2K 바이트의 PES 패킷의 페이로드에 저장되어서 디코더에 공급되고, DTS, PTS를 이용하여 재생제어가 이루어지는 처리 단위이다.
디스플레이 세트에는 이하의 유형이 있다.
A. 에포크 스타트(Epoch-start)의 디스플레이 세트
에포크 스타트의 디스플레이 세트란 그래픽스 디코더에서의 콤포지션 버퍼, 코드 데이터 버퍼, 그래픽스 플레인을 리셋하여 메모리 관리를 개시시키는 기능 세그먼트의 집합이며, 화면 구성에 필요한 기능 세그먼트를 모두 포함하고 있다.
B. 노멀 케이스의 디스플레이 세트
노멀 케이스의 디스플레이 세트란 그래픽스 디코더에서의 콤포지션 버퍼, 코드 데이터 버퍼, 그래픽스 플레인의 메모리 관리를 계속한 채로 화면 구성을 하는 디스플레이 세트이며, 선행하는 디스플레이 세트로부터의 차분이 되는 기능 세그먼트를 포함하고 있다.
C. 애커지션 포인트(Acquisition-point)의 디스플레이 세트
애커지션 포인트의 디스플레이 세트란 화면 구성에 필요한 기능 세그먼트를 모두 포함하는 디스플레이 세트이나, 그래픽스 디코더에서의 콤포지션 버퍼, 코드 데이터 버퍼, 그래픽스 플레인의 메모리 관리를 리셋시키지 않는 디스플레이 세트이다. 애커지션 포인트의 디스플레이 세트에는 앞의 디스플레이 세트와는 다른 내용의 기능 세그먼트가 존재해도 좋다.
D. 에포크 컨티뉴(Epoch-continue)의 디스플레이 세트
에포크 컨티뉴의 디스플레이 세트란 PG 스트림의 재생을 허가하고 있는 플레이아이템과 그 직전의 플레이아이템의 접속형태가 클린 브레이크(clean break)를 수반하는 심리스 접속(CC=5)인 경우, 재생장치에서의 콤포지션 버퍼, 코드 데이터 버퍼, 오브젝트 버퍼, 그래픽스 플레인에서의 메모리 관리를 그대로 계속시키는 취지를 나타낸다. 이때, 오브젝트 버퍼, 그래픽스 플레인 상에 얻어진 그래픽스 오브젝트는 폐기되는 일 없이 오브젝트 버퍼, 그래픽스 플레인 상에서 존속한다.
레프트 뷰와 라이트 뷰는 STC 시퀀스에서의 재생시간 축의 동일 시점에 이들 디스플레이 세트의 시작점 및 종료점이 할당되어 있다. 그리고 레프트 뷰 PG 스트림과 라이트 뷰 PG 스트림에서는 시간 축 상의 동일한 시점에 존재하는 디스플레이 세트의 유형은 동일하게 되어있다. 즉 레프트 뷰 측의 디스플레이 세트가 에포크 스타트의 디스플레이 세트라면 STC 시퀀스의 시간 축에서 동일한 시점의 라이트 뷰 측의 디스플레이 세트는 에포크 스타트의 디스플레이 세트가 된다.
또, 레프트 뷰 측의 디스플레이 세트가 애커지션 포인트의 디스플레이 세트이면, STC 시퀀스의 시간 축에서 동일한 시점의 라이트 뷰 측의 애커지션 포인트의 디스플레이 세트도 애커지션 포인트의 디스플레이 세트가 된다.
각 디스플레이 세트는 복수의 기능 세그먼트를 포함한다. 이 복수의 기능 세그먼트에는 이하의 것이 있다.
(1) 오브젝트 정의 세그먼트
오브젝트 정의 세그먼트는 그래픽스 오브젝트를 정의하는 기능 세그먼트이다. 그래픽스 정의 세그먼트는 코드값과 그 코드값의 런랭스(run length)를 이용함으로써 그래픽스 오브젝트를 정의하고 있다.
(2) 팰릿 정의 세그먼트(pallet definition segment)
팰릿 정의 세그먼트는 각 코드값과 휘도, 적색 차·청색 차의 대응관계를 나타내는 팰릿 데이터를 포함한다. 레프트 뷰 그래픽스 스트림의 팰릿 정의 세그먼트와 라이트 뷰 그래픽스 스트림의 팰릿 정의 세그먼트는 코드값과 휘도 및 색 차의 대응관계가 동일한 내용으로 설정되어 있다.
(3) 윈도 정의 세그먼트
윈도 정의 세그먼트는 비 압축의 그래픽스 오브젝트를 화면상에 전개하기 위한 플레인 메모리에서 윈도라고 불리는 직사각형 프레임(frame)을 정의하는 기능 세그먼트이다. 그래픽스 오브젝트의 렌더링(rendering)은 그 플레인 메모리의 내부에서 제한되고 있으며, 이 윈도의 외부에서는 그래픽스 오브젝트의 렌더링은 실시할 수 없다.
플레인 메모리의 일부를 그래픽스의 표시를 위한 윈도로 지정하므로 재생장치는 플레인 전체의 그래픽스 렌더링을 할 필요는 없다. 어느 한정된 크기의 윈도에 대해서만 그래픽스 렌더링을 하면 된다. 표시용의 평면 중 윈도 이외의 부분의 렌더링을 생략할 수 있으므로 재생장치 측의 소프트웨어의 부담은 훨씬 더 가벼워진다.
(4) 화면 구성 세그먼트
화면 구성 세그먼트는 그래픽스 오브젝트를 이용한 화면 구성을 규정하는 기능 세그먼트이며, 그래픽스 디코더에서의 콤포지션 컨트롤러에 대한 복수의 제어 항목을 포함한다. 화면 구성 세그먼트는 그래픽스 스트림에서의 디스플레이 세트의 상세를 규정하는 동시에, 그래픽스 오브젝트를 이용한 화면 구성을 규정하는 기능 세그먼트이다. 이러한 화면 구성에는 Cut-In/Out, Fade-In/Out, Color Change, Scroll, Wipe-In/Out라 하는 것이 있고, 화면 구성 세그먼트에 의한 화면 구성을 수반함으로써 어느 자막을 서서히 소거하면서 다음의 자막을 표시시킨다고 하는 표시 효과가 실현 가능하게 된다.
(5) 엔드 세그먼트(End segment)
1개의 디스플레이 세트에 속하는 복수의 기능 세그먼트의 최후미(最後尾)에 위치하는 기능 세그먼트이다. 재생장치는 화면 구성 세그먼트에서 이 엔드 세그먼트까지가 1개의 디스플레이 세트를 구성하는 기능 세그먼트라고 해석한다.
PG 스트림에서 디스플레이 세트의 개시시점은 화면 구성 세그메트를 저장한 PES 패킷의 DTS에 의해서 특정되고, 디스플레이 세트의 종료시점은 화면 구성 세그먼트를 저장한 PES 패킷의 PTS에 의해서 특정된다.
레프트 뷰 그래픽스 스트림 및 라이트 뷰 그래픽스 스트림은 패킷타이즈드 엘리멘터리 스트림(PES)이고, 화면 구성 세그먼트는 PES 패킷에 저장되며, 화면 구성 세그먼트를 저장한 PES 패킷의 PTS는 화면 구성 세그먼트가 속하는 디스플레이 세트에 의한 표시를 언제 실행하는가를 나타낸다.
화면 구성 세그먼트를 저장한 PES 패킷의 PTS의 값은 레프트 뷰 비디오 스트림과 라이트 뷰 비디오 스트림에서 동일한 내용으로 되어 있다.
· PG 디코더의 디코더 모델
PG 디코더는 PG 스트림에서 판독되는 기능 세그먼트를 저장하는 「코디드 데이터 버퍼」와, 화면 구성 세그먼트를 디코드하여 그래픽스 오브젝트를 얻는 「스트림 그래픽스 프로세서」와, 디코드에 의해 얻어진 그래픽스 오브젝트를 저장하는 「오브젝트 버퍼」와, 화면 구성 세그먼트를 저장하는 「콤포지션 버퍼」와, 콤포지션 버퍼에 저장된 화면 구성 세그먼트를 해독하여 이들 화면 구성 세그먼트에서의 제어 항목에 의거하여 오브젝트 버퍼에 얻어진 그래픽스 오브젝트를 이용하여 그래픽스 플레인 상에서 화면 구성을 하는 「콤포지션 컨트롤러」를 포함한다.
이 그래픽스 플레인의 전단(前段)에는 기능 세그먼트를 구성하는 TS 패킷의 입력 속도를 조정하기 위한 트랜스포트 버퍼가 존재한다.
그래픽스 디코더의 후단에는 그래픽스 플레인과 팰릿 정의 세그먼트에 의거하여 그래픽스 플레인에 저장된 그래픽스 오브젝트를 구성하는 화소 코드를 휘도 및 색 차로 변환하는 CLUT부와, 플레인 시프트를 위한 시프트부가 존재한다.
PG 스트림에서의 파이프라인은 그래픽스 디코더가 어느 디스플레이 세트에 속하는 오브젝트 정의 세그먼트를 디코드하여 그래픽스 오브젝트를 오브젝트 버퍼에 기입하는 처리와 선행하는 디스플레이 세트에 속하는 오브젝트 정의 세그먼트를 디코드함으로써 얻어진 그래픽스 오브젝트를 오브젝트 버퍼에서 플레인 메모리에 기입하는 처리를 동시에 실행함으로써 이루어진다.
도 53은 PG 스트림의 그래픽스 디코더의 내부 구성을 나타낸다. 동 도면 (a)는 1plane+Offset 모드 방식으로 표시하기 위한 디코더 모델이다. 도 53 (b)는 LR방식의 데이터를 표시하는 경우의 디코더 모델이다.
본 도면에서 그래픽스 디코더의 본체에 해당하는 부분은 검은 프레임으로 둘러싸여 있고, 그래픽스 디코더 후단에 해당하는 부분은 일점 쇄선으로 둘러싸여 있다.
동 도면 (a)에서는 그래픽스 디코더는 1 디코더 구성으로 되어 있고, 그래픽스 플레인도 1 플레인 구성으로 되어 있다. 그러나 그래픽스 플레인의 출력이 레프트 뷰, 라이트 뷰의 각각으로 나누어져 있고, 각각의 레프트 뷰 출력, 라이트 뷰 출력에 대하여 시프트부가 부가된다.
동 도면 (b)에서는 트랜스포트 버퍼 - 그래픽스 디코더 - 그래픽스 플레인 - CLUT부가 2세트 존재하고 있고, 레프트 뷰 스트림, 라이트 뷰 스트림을 각각 독립적으로 처리할 수 있다.
오프셋 시퀀스는 디펜던트 뷰 비디오 스트림에 포함되어 있으므로, 플레인 오프셋 형식에서는 그래픽스 디코더는 1 디코더 구성으로 되고, 이 1개의 그래픽스 디코더의 출력이 레프트 뷰와 라이트 뷰로 전환된다.
PG 디코더의 2D/3D 전환 시의 동작은 이하와 같다.
1. 1plane+Offset 모드와 2D 모드의 상호 전환시는 심리스로 교체된다. 이는 Offset를 무효화함으로써 이루어진다.
2. 3D-LR모드와 2D모드에서는 PID 전환이 수반하므로 일단 자막이 사라진다. 이는 스트림 전환과 동일하다.
3. 3D-LR모드와 L모드에서는 L(BaseView 측)만의 표시로 전환한다. 심리스로 전환이 가능하나, 표시 위치가 치우칠 가능성이 있다.
3D-Depth 모드와 2D모드에서는 2D 표시 중에도 백그라운드에서 그레이스케일(grayscale)로 나타나는 심도 정보를 디코드하여 레프트 뷰의 그래픽스 오브젝트, 라이트 뷰의 그래픽스 오브젝트를 생성해두면 그래픽스 오브젝트의 전환을 심리스로 실시할 수 있다.
PG 디코더에서 모드 전환을 실행하는 경우 Depth 모드, 1plane+Offset 모드에서 2D모드로의 전환이 용이하다. 그러나 3D-LR방식의 경우 입체 시의 그래픽스 오브젝트와 2D의 그래픽스 오브젝트는 다르므로 전환시에 처리하는 PG 스트림의 변경이 필요하게 되어 다음의 PG 스트림이 공급될 때까지 그래픽스 오브젝트가 표시되지 않을 가능성이 생긴다.
그래픽스 오브젝트가 표시되지 않는 기간을 형성하고 싶지 않은 경우에는 정면에서 보는 2D 그래픽스 오브젝트가 아니라 베이스 뷰의 그래픽스 오브젝트로만 전환하는 것도 가능하다. 이 경우, 조금 왼쪽으로 치우친 영상으로 보일 가능성이 남는다. 입체 시 PG를 2D PG로 전환하는 경우 어느 방법을 이용할지를 관리 데이터에 설정해 두는 것도 가능하다.
· 텍스트 자막 디코더의 디코더 모델
텍스트 자막 스트림은 복수의 자막 기술 데이터로 구성된다.
텍스트 자막 디코더는 자막 기술 데이터로부터 텍스트 코드와 제어정보를 분리하는 「자막 프로세서」와, 자막 기술 데이터로부터 분리된 텍스트 코드를 저장하는 「관리정보 버퍼」와, 폰트 데이터를 이용하여 관리정보 버퍼 내의 텍스트 코드를 비트 맵으로 전개하는 「텍스트 렌더(text render)」와, 전개에 의해 얻어진 비트 맵을 저장하는 「오브젝트 버퍼」와, 자막 기술 데이터로부터 분리된 제어정보를 이용하여 시간 축에 따른 텍스트 자막 재생의 제어를 실행하는 「렌더링 제어부」를 포함한다.
텍스트 자막 디코더의 전단에는 폰트 데이터의 프리 로드를 하는 「폰트 프리 로드 버퍼」, 텍스트 자막 스트림을 구성하는 TS 패킷의 입력 속도를 조정하는 「TS 버퍼」, 플레이아이템의 재생에 앞서 텍스트 자막 스트림을 프리로드 해 두기 위한 「자막 프리로드 버퍼」가 존재한다.
그래픽스 디코더의 후단에는 「그래픽스 플레인」과, 팰릿 정의 세그먼트에 의거하여 그래픽스 플레인에 저장된 그래픽스 오브젝트를 구성하는 화소 코드를 휘도 및 색 차로 변환하는 「CLUT부」와, 플레인 시프트를 위한 시프트부가 존재한다.
도 54는 텍스트 자막 디코더의 내부 구성을 나타낸다. 동 도면 (a)는 1plane+Offset 모드에서의 텍스트 자막 디코더의 디코더 모델을 나타내며, 도 54 (b)는 3D-LR방식에서의 텍스트 자막 디코더의 디코더 모델을 나타낸다. 본 도면에서 텍스트 자막 디코더 본체에 해당하는 부분은 검은 프레임으로 둘러싸고, 텍스트 자막 디코더 후단에 해당하는 부분은 일점 쇄선으로 둘러싸고 있다. 텍스트 자막 디코더 전단에 해당하는 부분은 점선 틀로 둘러싸고 있다.
동 도면 (a)에서는 그래픽스 플레인의 출력이 레프트 뷰, 라이트 뷰의 각각으로 나누어져 있고, 개개의 레프트 뷰 출력, 라이트 뷰 출력에 대하여 시프트부가 부가된다.
동 도면 (b)에서는 레프트 뷰 용의 그래픽스 플레인과 라이트 뷰 용의 그래픽스 플레인이 존재하고 있고, 텍스트 자막 디코더에 의해서 전개된 비트 맵을 이들 각각의 그래픽스 플레인에 기입한다. 3D-LR방식의 텍스트 자막 디코더에서는 컬러 팰릿 정보가 확장되어 있으며, 자막용의 문자/배경/가장자리의 3색에 더하여 Depth용에 3색이 추가되어 있다. 그리고 렌더링 엔진이 자막을 렌더링할 수 있다.
텍스트 자막 스트림은 PG 스트림과 달리, 그래픽스 데이터를 비트 맵으로 보내는 것이 아니라 폰트 데이터와 문자 코드를 보냄으로써 렌더링 엔진에서 자막을 생성하므로, 자막의 입체 시는 1plane+Offset 모드에 의해서 실현된다. 텍스트 자막을 1plane+Offset모드로 표시하는 경우 모드의 전환은 폰트 세트의 전환이나 렌더링 방식의 전환에 의해서 이루어진다. L/R폰트 세트나 OpenGL폰트 세트를 정의함으로써 모드 전환을 실시하는 방법도 있다. 렌더링 엔진이 3D 표시를 하는 것도 가능하다.
3D-LR모드에서는 베이스 뷰와 디펜던트 뷰에서 독립한 폰트 세트나 OpenGL 폰트 세트를 정의함으로써 입체 시 재생을 실현한다. 또, 렌더링 엔진이 3D 폰트를 렌더링함으로써 입체 시 재생을 실현해도 좋다.
3D-Depth 모드의 경우에는 심도 영상을 렌더링 엔진으로 생성한다.
이상이 텍스트 자막 스트림 및 텍스트 자막 디코더에 대한 설명이다. 이어서, IG 스트림의 내부 구성과 IG 디코더의 구성에 대하여 설명한다.
· IG 스트림
레프트 뷰 IG 스트림, 라이트 뷰 IG 스트림은 모두 복수의 디스플레이 세트를 포함하고, 각 디스플레이 세트는 복수의 기능 세그먼트를 포함한다. 디스플레이 세트에는 PG 스트림과 마찬가지로 에포크 스타트의 디스플레이 세트, 노멀 케이스의 디스플레이 세트, 애커지션 포인트의 디스플레이 세트, 에포크 컨티뉴의 디스플레이 세트가 존재한다.
이들 디스플레이 세트에 속하는 복수의 기능 세그먼트에는 이하의 종류가 있다.
(1) 오브젝트 정의 세그먼트
이 오브젝트 정의 세그먼트는 PG 스트림의 것과 동일하다. 단, IG 스트림의 그래픽스 오브젝트는 페이지의 인 이펙트(in-effect), 아웃 이펙트(out-effect), 버튼 부재의 노멀 상태, 셀렉티드 상태, 액티브 상태를 정의하는 것이다. 오브젝트 정의 세그먼트는 버튼 부재의 동일한 상태를 정의하는 것끼리, 동일한 이펙트 영상을 구성하는 것끼리 그룹화되어 있다. 동일한 상태를 정의하는 오브젝트 정의 세그먼트를 모은 그룹을 그래픽스 데이터 집합이라고 한다.
(2) 팰릿 정의 세그먼트
팰릿 정의 세그먼트는 PG 스트림의 것과 동일하다.
(3) 대화제어 세그먼트
대화제어 세그먼트는 복수의 페이지 정보를 포함하고, 복수의 페이지 정보는멀티 페이지 메뉴의 화면 구성을 규정하는 정보이며, 각 페이지 정보는 이펙트 시퀀스와, 복수의 버튼정보와, 팰릿 식별자의 참조치를 포함한다.
버튼정보는 그래픽스 오브젝트를 버튼 부재의 1 상태로 표시시킴으로써 멀티 페이지 메뉴를 구성하는 각 페이지 상에서 대화적인 화면 구성을 실현하는 정보이다.
이펙트 시퀀스(effect sequence)는 그래픽스 오브젝트를 이용하여 페이지 정보에 대응하는 페이지의 표시에 앞서 재생되는 인 이펙스, 또는 당해 페이지의 표시 후에 재생되는 아웃 이펙트를 구성하는 것이며, 이펙트 정보를 포함한다.
이펙트 정보는 인 이펙트 또는 아웃 이펙트를 재생할 때의 개개의 화면 구성을 규정하는 정보이며, 그래픽스 플레인 상의 윈도 정의 세그먼트에서 정의된 윈도(부분영역)에서 어떠한 화면 구성을 실행해야할지를 규정하는 화면 구성 오브젝트와 동 영역에서의 다음의 화면 구성과의 시간간격을 나타내는 이펙트 기간정보를 포함한다.
이펙트 시퀀스에서의 화면 구성 오브젝트는 PG 스트림의 화면 구성 세그먼트와 동일한 제어 내용을 규정한다. 오브젝트 정의 세그먼트 중 상기 인 이펙트에 이용되는 그래픽스 오브젝트를 정의하는 것은 그래픽스 데이터 열에서 버튼 부재에 이용되는 그래픽스 오브젝트를 정의하는 오브젝트 정의 세그먼트보다 앞에 배치되어 있다.
페이지 정보에서의 각 버튼정보는 그래픽스 오브젝트를 버튼 부재의 1 상태로서 표시시킴으로써 멀티 페이지 메뉴를 구성하는 각 페이지 상에서 대화적인 화면 구성을 실현하는 정보이다. 상기 버튼정보는 세트 버튼 페이지 커멘드를 포함하며, 세트 버튼 페이지 커멘드는 대응하는 버튼 부재가 액티브 상태가 된 때에 퍼스트 페이지 이외의 다른 페이지를 현재 페이지로 설정하는 처리를 재생장치에 행하게 하는 커맨드이다.
IG 스트림의 재생시에 플레인 시프트에서의 오프셋을 페이지별로 변경시키고 싶은 경우에는 버튼정보에 오프셋을 변경하는 내비게이션 커멘드를 포함시켜 두고, 해당하는 버튼정보에서 내비게이션 커맨드의 오토 액티베이트를 규정해 둔다. 이에 의해, IG 스트림의 스트림 등록정보에 규정되어 있는 오프셋의 값이나 방향을 자동으로 변경할 수 있도록 한다.
(4) 엔드 세그먼트
1개의 디스플레이 세트에 속하는 복수의 기능 세그먼트의 최후미에 위치하는 기능 세그먼트이다. 대화제어 세그먼트에서 이 엔드 세그먼트까지가 1개의 디스플레이 세트를 구성하는 기능 세그먼트라고 해석된다.
레프트 뷰 그래픽스 스트림과 라이트 뷰 그래픽스 스트림에서 동일하게 되는 대화제어 세그먼트의 제어 항목에는 버튼 근접정보, 셀렉션 타임아웃 타임스탬프, 사용자 타임아웃 듀레이션(user time-out duration), 콤포지션 타임아웃 정보가 있다.
1. 버튼 근접정보
버튼 근접정보는 어느 버튼이 셀렉티드 상태가 되어 있고, 상하좌우 방향 중 어느 하나를 지시하는 키 조작이 있었을 경우 어느 버튼을 셀렉티드 상태로 해야 하는가를 지정하는 정보이다.
2. 셀렉션 타임아웃 타임스탬프
셀렉션 타임 아웃 타임스탬프는 현재 페이지에서의 버튼 부재를 자동으로 활성화하여 세트 버튼 페이지 커멘드를 재생 장치에 실행시키기 위한 타임아웃 시간을 나타낸다.
3. 사용자 타임아웃 듀레이션
사용자 타임아웃 듀레이션은 현재 페이지를 퍼스트 페이지로 되돌리고, 퍼스트 페이지만이 표시되어 있는 상태로 하기 위한 타임아웃 시간을 나타낸다.
4. 콤포지션 타임아웃 정보
콤포지션 타임아웃 정보는 대화제어 세그먼트에 의한 대화적인 화면 표시를 종료시키는 시간을 나타낸다. IG 스트림에서 디스플레이 세트의 개시시점은 대화제어 세그먼트를 저장한 PES 패킷의 DTS에 의해서 특정되고, 디스플레이 세트의 종료시점은 대화제어 세그먼트의 콤포지션 타임아웃 시각에 의해서 특정된다. 레프트 뷰, 라이트 뷰에서는 이들 DTS와 콤포지션 타임아웃 시각은 동일한 시점에 설정된다.
· IG 디코더의 디코더 모델
IG 디코더는 IG 스트림에서 판독되는 기능 세그먼트를 저장하는 「코디드 데이터 버퍼」와, 화면 구성 세그먼트를 디코드하여 그래픽스 오브젝트를 얻는 「스트림 그래픽스 프로세서」와, 디코드에 의해 얻어진 그래픽스 오브젝트를 저장하는 「오브젝트 버퍼」와, 화면 구성 세그먼트를 저장하는 「콤포지션 버퍼」와, 콤포지션 버퍼에 저장된 화면 구성 세그먼트를 해독하고, 이들 화면 구성 세그먼트에서의 제어 항목에 의거하여 오브젝트 버퍼에서 얻어진 그래픽스 오브젝트를 이용하여 그래픽스 플레인상에서 화면 구성을 하는 「콤포지션 컨트롤러」를 포함한다.
이 그래픽스 플레인의 전단에는 기능 세그먼트를 구성하는 TS 패킷의 입력 속도를 조정하기 위한 「트랜스포트 버퍼」가 존재한다.
그래픽스 디코더의 후단에는 「그래픽스 플레인」과, 팰릿 정의 세그먼트에 의거하여 그래픽스 플레인에 저장된 그래픽스 오브젝트를 구성하는 화소 코드를 휘도 및 색 차로 변환하는 「CLUT부」와, 플레인 시프트를 위한 「시프트부」가 존재한다.
도 55는 IG 디코더의 디코더 모델을 나타낸다. 본 도면에서는 IG 디코더 본체에 해당하는 부분은 검은 프레임으로 둘러싸고, 그래픽스 디코더 후단에 해당하는 부분은 일점 쇄선으로 둘러싸고 있다. IG 디코더 전단에 해당하는 부분은 점선 프레임으로 둘러싸고 있다.
도 55 (a)는 2D형식의 IG 스트림을 1plane+Offset 모드 방식에 의해서 LR형식으로 표시하기 위한 디코더 모델이다. 동 도면 (b)는 IG 스트림의 디코더 모델이나, LR방식의 데이터를 표시하는 경우의 디코더 모델이다.
이러한 디코더에서는 메뉴 그래픽스의 심도 정보를 프로그램에서 제어하기 위해 시스템 파라미터의 값을 오프셋에 반영하기 위한 회로를 포함하고 있다.
동 도면 (b)는 2 디코더 모델이고, 커멘드에 의해 offset치의 변경이 가능해진다. 따라서 메뉴의 심도 정보를 커멘드에 의해 바꿀 수 있다. Offset치는 좌우 다른 값도 부여된다. 한편, Depth 방식의 경우 Offset는 무효가 된다.
그래픽스 디코더에서의 콤포지션 컨트롤러는 대화 화면에 존재하는 버튼 부재 중 현재 버튼이 되는 것을 셀렉티드 상태에 대응하는 그래픽스 데이터 집합의 그래픽스 데이터를 이용하여 표시하고, 그 이외의 버튼 부재를 노멀 상태에 대응하는 그래픽스 데이터 집합을 이용하여 표시함으로써 대화 화면의 초기 표시를 실현한다.
상하 좌우의 4 방향 중 어느 하나를 지정하는 취지의 사용자 조작이 있었을 경우, 현재 버튼의 주변에 위치하는 노멀 상태의 버튼 부재 중 사용자 조작에 의해서 지정된 방향에 존재하는 것의 번호를 버튼 번호 레지스터에 기입하고, 당해 기입에 의해서 새로 현재 버튼이 된 버튼 부재를 노말 상태에서 셀렉티드 상태로 변화시킨다.
대화 화면에서 셀렉티드 상태로 되어 있는 버튼 부재를 액티브 상태로 변화시키는 취지의 사용자 조작이 있었을 경우, 당해 액티브 상태를 구성하는 그래픽스 데이터를 그래픽스 데이터 집합에서 인출하여 표시에 제공함으로써 대화 화면의 갱신을 실현한다.
이들 대화 화면의 갱신은 레프트 뷰, 라이트 뷰에서 공통으로 실행할 필요가 있으므로, 2 디코더 모델에서 콤포지션 컨트롤러를 레프트 뷰 용의 그래픽스 디코더와 라이트 뷰 용의 그래픽스 디코더에서 공통화하는 것이 바람직하다.
이 경우, 입체 시 IG 스트림에서의 레프트 뷰·라이트 뷰의 내비게이션 커맨드는 동일화하고, 3D용과 2D용의 그래픽스 오브젝트의 버튼 구성을 동일하게 함으로써 상호 전환을 실현한다.
2D IG 스트림과 입체 시 IG 스트림에서는 내비게이션 커멘드 및 버튼정보의 속성 및 수 등이 동일하면 그래픽스 오브젝트의 표시만의 전환이 가능해진다. 3D-LR모드에서 L화상만으로의 전환에서는 재로드 없이 전환이 가능하나, 표시 위치가 치우칠 가능성이 있다. 어느 것을 채용하는가의 타이틀 제작자의 의도를 플래그에 표시시켜 두고, 이 플래그에 의거하여 재생장치가 전환을 하는 것이 바람직하다.
이하에 모드 전환시의 유의 사항을 정리했다.
· 1plane+Offset 모드와 2D모드의 전환에서는 재 로드는 발생하지 않는다. 이는 IG 스트림의 로드는 필요하지 않고, Offset의 무효화만이 되기 때문이다.
· 3D-LR모드와 2D모드의 전환에서 스트림이 다르므로 재 로드가 발생한다.
· 3D-Depth와 2D 사이에서는 프리로드시에 심도 정보의 디코드가 완료되어 있으면 재 로드는 발생하지 않는다.
· AV 재생 개시 전에 메모리에 판독한다고 하는 프리로드 모델이 채용되고 있었다고 하더라도 2D모드/3D모드의 전환에 수반하여 IG 스트림의 재 로드가 발생하면 심리스 재생은 보증되지 않는 경우가 생긴다.
이상이 IG 스트림 및 IG 디코더에 대한 설명이다. 이어서, 플레인 메모리의 상세에 대하여 설명한다.
1plane+Offset 모드 방식에서의 플레인 메모리 구성에 대해서 설명한다.
플레인 메모리의 레이어 합성은 플레인 메모리의 레이어 모델에서 계층 간의 플레인 메모리에 저장되어 있는 화소 데이터의 화소치를 중첩시키는 처리를 레이어 모델에서의 계층 간의 모든 조합에 대하여 실행함으로써 이루어진다. 합성부(208)에 의한 레이어 합성은 플레인 메모리의 레이어 모델에서 2개의 계층의 플레인 메모리에 저장되어 있는 화소 데이터의 화소치를 중첩시킨다고 하는 처리를 레이어 모델에서의 2개의 계층의 모든 조합에 대하여 실행함으로써 이루어진다.
계층 간의 중첩은 어느 계층에 위치하는 플레인 메모리의 라인 단위의 화소치에 투과율 α를 가중으로서 곱하는 동시에, 그 하위 계층에 위치하는 플레인 메모리의 라인 단위의 화소치에 (1 - 투과율α)라는 가중을 곱하고, 이들 휘도의 가중이 부여된 화소 값끼리를 가산하여, 가산 결과를 그 계층에서의 라인 단위의 화소의 화소치로 하는 처리이다. 이 계층 간의 중첩을 레이어 모델의 인접하는 2개의 계층에 위치하는 라인 단위의 화소끼리 반복해서 실행함으로써 상기 레이어 합성은 실현된다.
플레인 메모리 후단은 상술한 것과 같은 CLUT부, 시프트부 외에 레이어 합성을 실현하기 위해, 개개의 화소치에 투과율을 곱하기 위한 곱셈부, 화소끼리의 가산을 하기 위한 가산부, 세컨더리 비디오의 위치 결정 및 스케일링 변경을 하기 위한 Scalling & Positioning부를 포함한다. 도 56은 이들 디코더 모델의 출력을 합성하여 3D-LR방식으로 출력하기 위한 회로구성을 나타낸다. 프라이머리 비디오 플레인, PG 플레인, IG 플레인, 세컨더리 비디오 플레인의 레이어 모델은 검은 프레임으로 둘러싸이고, 플레인 메모리 후단에 해당하는 부분은 일점 쇄선으로 둘러싸여 있다. 본 도면으로부터 명백한 바와 같이, 상술한 것과 같은 레이어 모델은 2세트 존재하고 있음을 알 수 있다. 또, 플레인 메모리 후단에 해당하는 부위도 2세트 존재하고 있음을 알 수 있다.
레이어 모델, 플레인 메모리 후단이 2세트 존재함으로써 3D-LR방식에서의 플레인 메모리 구성은 프라이머리 비디오 플레인, PG 플레인, IG 플레인, 세컨더리 비디오플레인의 각각이 레프트 뷰 용과 라이트 뷰 용으로 나누어져 있고, 이들 플레인 메모리의 출력을 레이어 합성을 레프트 뷰, 라이트 뷰의 각각에 대하여 실행하도록 되어 있다.
세컨더리 비디오 플레인에서는 프라이머리 비디오 스트림과 마찬가지로 세컨더리 비디오 스트림을 3D-LR모드나 3D-Depth 모드로 표시하는 것이 가능하다. 또, PG 스트림과 같이 2D 영상에 오프셋을 부여하여 평면의 영상을 앞에 떠오르도록 표시하는 것도 가능하다.
도 57은 이들 디코더 모델의 출력을 합성하여 1plane+Offset 모드 방식으로 출력하기 위한 회로 구성을 나타내고 있다.
레프트 뷰 용의 프라이머리 비디오 플레인, 라이트 뷰 용의 프라이머리 비디오 플레인, PG 플레인, IG 플레인, 세컨더리 비디오 플레인의 레이어 모델은 검은 프레임으로 둘러싸고, 플레인 메모리 후단에 해당하는 부분은 일점 쇄선으로 둘러싸여 있다. 본 도면으로부터도 명백한 바와 같이, 상술한 것과 같은 레이어 모델은 1세트만이 존재하고 있음을 알 수 있다. 또, 플레인 메모리 후단에 해당하는 부위는 2세트 존재하고 있다.
1plane+Offset 모드 방식에서는 프라이머리 비디오 플레인은 레프트 뷰의 것과 라이트 뷰의 것이 준비되어 있다. 세컨더리 비디오 플레인, PG 플레인, IG 플레인에 대해서는 레프트 뷰, 라이트 뷰 각각으로 나누어져 있지 않고, 레프트 뷰, 라이트 뷰에서 공통의 1매의 플레인 메모리만이 존재한다. 그리고 이들 레프트 뷰 출력, 라이트 뷰 출력의 각각에 대하여 상술한 것과 같은 레이어 합성이 이루어지게 되어 있다.
재생장치는 B-D 프레젠테이션 모드, 1plane+Offset 모드의 양쪽을 지원할 필요가 있으므로, 재생장치의 하드웨어 구성으로 기본적으로 2 디코더+2 플레인의 구성으로 되어 있고, 1plane+Offset 모드, 2D 재생 모드로 재생장치가 전환된 때 1 디코더+1 플레인의 세트 중 일방을 무효화하여 1 디코더+1 플레인 구성이 된다.
3D 재생 모드에서 2D 재생 모드로의 전환이 발생하고, 재생장치의 구성이 2디코더+2 플레인 구성에서 1 디코더+1 플레인 구성으로 변화한 경우, 다중분리의 대상은 L화상을 구성하는 TS 패킷만이 된다. 그렇다면, 3D 안경을 통해서 L화상, R화상을 시청하고 있던 사용자는 3D 재생 모드에서 2D 재생 모드로 전환되자마자 L화상밖에 볼 수 없게 된다.
이 경우, 양 눈에 의한 TV의 시청이 한쪽 눈에 의한 TV의 시청으로 전환되게 되어 눈의 부담이 커지고, 오한을 느끼는 사용자도 나온다. 그래서 본 실시 예에서는 전환이 이루어진 경우에 PID 필터의 대상을 L화상을 구성하는 TS 패킷, R화상을 구성하는 TS 패킷에서 L화상을 구성하는 TS 패킷으로 전환하는 동시에, 그래픽스 디코더에서의 메모리 관리를 리셋한다. 그리고 전환에서 상술한 것과 같은 오한이 생기는 일이 없도록 자막을 일단 소거하는 것으로 한다.
이상과 같이 본 실시 예에 의하면 디코더 구성을 2 디코더 구성에서 1 디코더 구성으로 전환할 때 플레인 메모리에서의 자막을 일단 리셋하므로 양 눈에 의한 TV의 시청이 한쪽 눈에 의한 TV의 시청으로 전환함에 따른 눈의 부담을 완화할 수 있다.
(제 8 실시 예)
본 실시 예에서는 지금까지의 실시 예에서 설명한 기록매체를 만들기 위한 형태, 즉, 기록매체의 생산행위의 형태에 대하여 설명한다.
지금까지의 실시 예에서 설명한 기록매체는 다층화된 광디스크인 BD-ROM 디스크, BD-ROM 디스크와 재생 호환성이 있는 BD-RE 디스크, BD-R 디스크, AVC-HD 미디어로서 작성할 수 있다.
도 58은 다층화된 광디스크의 내부 구성을 나타낸다.
제 1 단째는 다층화된 광디스크의 일 예인 BD-ROM를 나타내고, 제 2 단째는 각 기록 층상에 존재하는 나선 트랙을 수평방향으로 연장하여 묘사한 도면이다. 이들 기록 층에서의 나선 트랙은 1개의 연속하는 볼륨영역으로서 취급된다. 볼륨영역은 최 내주에 위치하는 리드인, 최 외주에 위치하는 리드 아웃, 이 사이에 존재하는 제 1 기록 층의 기록영역, 제 2 기록 층의 기록영역, 제 3 기록 층의 기록영역으로 구성된다. 이들 제 1 기록 층의 기록영역, 제 2 기록 층의 기록영역, 제 3 기록 층의 기록영역은 1개의 연속하는 논리어드레스 공간을 구성한다.
볼륨영역은 선두에서부터 광디스크를 액세스하는 단위로 일련번호가 할당되어 있고, 이 번호를 논리어드레스라고 한다. 광디스크로부터의 데이터의 판독은 논리어드레스를 지정함으로써 실시한다. 여기서, BD-ROM과 같은 판독전용 디스크의 경우에는 기본적으로 논리어드레스가 연속하고 있는 섹터는 광디스크 상의 물리적인 배치에서도 연속하고 있다. 즉, 논리어드레스가 연속하고 있는 섹터의 데이터는 시크를 실시하지 않고 판독할 수 있다. 단, 기록 층의 경계에서는 논리어드레스가 연속하고 있다고 하더라도 연속적인 판독은 할 수 없다. 따라서, 층 경계의 논리어드레스는 미리 기록장치에 등록되어 있는 것으로 한다.
볼륨영역은 리드인 영역의 직후에 파일시스템 관리정보가 기록되어 있고, 이것에 이어서 파일시스템 관리정보에서 관리되는 파티션 영역이 존재한다. 파일시스템은 디스크 상의 데이터를 디렉터리 또는 파일이라 불리는 단위로 표현하는 구조이며, BD-ROM의 경우에는 UDF(Universal Disc Format)에 의해서 기록된다. 평소 사용하고 있는 PC(퍼스널 컴퓨터)의 경우에도 FAT 또는 NTFS로 불리는 파일시스템을 통함으로써 디렉터리나 파일과 같은 구조로 하드디스크에 기록된 데이터가 컴퓨터상에서 표현되어서 유용성을 높이고 있다. 이 파일시스템에 의해 통상의 PC와 동일하게 기록되어 있는 논리 데이터를 디렉터리, 파일 구조를 사용하여 판독할 수 있게 되어 있다.
제 4 단째는 파일시스템에서 관리되는 파일시스템 영역에서의 영역 할당을 나타낸다. 파일시스템 영역 중 내주 측에는 비 AV 데이터 기록영역이 존재한다. 비 AV 데이터 기록영역의 직후에는 AV 데이터 기록영역이 존재한다. 제 5 단째는 이들 비 AV 데이터 기록영역 및 AV 데이터 기록영역의 기록 내용을 나타낸다. AV 데이터 기록영역에는 AV 파일을 구성하는 익스텐트가 존재한다. 비 AV 데이터 기록영역에는 AV 파일 이외의 비 AV 파일을 구성하는 익스텐트가 존재한다.
도 59는 파일시스템을 전제로 한 광디스크의 애플리케이션 포맷을 나타낸다.
BDMV 디렉터리는 BD-ROM에서 취급하는 TS나 관리정보 등의 데이터가 기록되어있는 디렉터리이다. BDMV 디렉터리의 아래에는 「PLAYLIST 디렉터리」, 「CLIPINF 디렉터리」, 「STREAM 디렉터리」, 「BDJO 디레크트리」, 「JAR 디렉터리」라 불리는 5개의 서브 디렉터리가 존재하고, BDMV 디렉터리에는 「index. Bdmv」, 「MovieObject. Bdmv」의 2종류의 파일이 배치되어 있다.
「index. Bdmv(파일명 고정)」는 인덱스 테이블을 저장하고 있다.
「MovieObject.Bdmv(파일명 고정)」는 1개 이상의 무비 오브젝트를 저장하고 있다. 무비 오브젝트는 커멘드 인터프리터를 제어 주체로 한 동작 모드(HDMV 모드)에서 재생장치가 실시해야 할 제어순서를 규정하는 프로그램 파일이며, 1개 이상의 커멘드와 GUI에 대한 메뉴 콜, 타이틀 콜이 사용자에 의해서 이루어진 경우에 이들 콜을 마스크 할지 여부를 규정하는 마스크 플래그를 포함한다.
「BDJO 디렉터리」에는 확장자 bdjo가 부여된 프로그램 파일(xxxxx. Bdjo["xxxxx"는 가변, 확장자 "bdjo"는 고정])이 존재한다. 이 프로그램 파일은 BD-J모드에서 재생장치가 실시해야 할 제어순서를 규정하는 BD-J오브젝트를 저장하고 있다. 이 BD-J 오브젝트는 「애플리케이션 관리테이블」을 포함한다. BD-J 오브젝트 내의 「애플리케이션 관리 테이블」은 타이틀을 생존 구간으로 한 애플리케이션 시그널링을 재생장치에 실시하게 하기 위한 테이블이다. 애플리케이션 관리테이블은 BD-J 오브젝트에 대응하는 타이틀이 현재 타이틀이 된 때에 동작시켜야 할 애플리케이션을 특정하는 「애플리케이션 식별자」와 「제어 코드」를 포함한다. 애플리케이션 관리 테이블에 의해 생존 구간이 규정되는 BD-J애플리케이션을 특히 「BD-J 애플리케이션」이라고 한다. 제어 코드는 AutoRun로 설정된 경우 이 애플리케이션을 히프 메모리에 로드한 후에 자동으로 기동하는 취지를 나타내며, Present에 설정된 경우에 이 애플리케이션을 히프 메모리에 로드한 후에 다른 애플리케이션으로부터의 콜을 기다려서 기동해야 한다는 취지를 나타낸다. 한편, BD-J 애플리케이션 중에는 타이틀이 종료했다고 하더라도 그 동작이 종료하지 않는 애플리케이션이 있다. 이러한 애플리케이션을 "타이틀 언바운더리 애플리케이션"이라고 한다.
이 Java(등록상표) 애플리케이션의 실체에 해당하는 것이 BDMV 디렉터리 아래의 JAR 디렉터리에 저장된 Java(등록상표) 아카이브 파일(YYYYY. Jar)이다.
애플리케이션은 예를 들어 Java(등록상표) 애플리케이션이며, 가상머신의 히프영역(워크 메모리라고도 한다)에 로드된 1개 이상의 xlet 프로그램으로 이루어진다. 이 워크 메모리에 로드된 xlet 프로그램 및 데이터로 애플리케이션은 구성되게 된다.
「PLAYLIST 디렉터리」에는 확장자 mpls가 부여된 플레이리스트 정보파일(xxxxx. Mpls["xxxxx"는 가변, 확장자 "mpls"는 고정])이 존재한다.
「CLIPINF 디렉터리」에는 확장자 clpi가 부여된 클립정보파일(xxxxx.clpi ["xxxxx"는 가변, 확장자 "clpi"는 고정])이 존재한다.
이상의 디렉터리에 존재하는 파일을 구성하는 익스텐트는 비 AV 데이터 영역에 기록된다.
「STREAM 디렉터리」는 스트림 파일을 저장하고 있는 디렉터리이며, 본 디렉터리에는 xxxxx. M2ts(["xxxxx"는 가변, 확장자 "m2ts"는 고정])이라는 형식으로 스트림 파일이 저장된다.
상술한 것과 같은 파일은 파티션 영역에서 물리적으로 연속하는 복수의 섹터 상에 형성된다. 파티션 영역은 「파일세트 기술자가 기록된 영역」, 「종단 기술자가 기록된 영역」, 「ROOT 디렉터리 영역」, 「BDMV 디렉터리 영역」, 「JAR 디렉터리 영역」,「BDJO 디렉터리 영역」, 「PLAYLIST 디렉터리 영역」, 「CLIPINF 디렉터리 영역」, 「STREAM 디렉터리 영역」으로 구성되고, 파일시스템에 의해서 액세스 되는 영역이다. 이하, 이들 영역에 대하여 설명한다.
「파일세트 기술자」는 디렉터리 영역 중 ROOT 디렉터리의 파일 엔트리가 기록되어 있는 섹터를 가리키는 논리블록번호(LBN)를 포함한다.「종단 기술자」는 파일세트 기술자의 종단을 나타낸다.
다음에, 디렉터리 영역의 상세에 대하여 설명한다. 상술한 것과 같은 복수의디렉터리 영역은 모두 공통의 내부 구성을 갖고 있다. 즉, 「디렉터리 영역」은 「파일 엔트리」와, 「디렉터리 파일」과, 「하위 파일에 대한 파일 기록영역」으로 구성된다.
「파일 엔트리」는 「기술자 태그」와, 「ICB 태그」와, 「할당 기술자」를 포함한다.
「기술자 태그」는 자신이 파일 엔트리라는 취지를 나타내는 태그이다.
「ICB 태그」는 파일 엔트리 자신에 관한 속성정보를 나타낸다.
「할당 기술자」는 디렉터리 파일의 기록 위치를 나타내는 논리블록번호(LBN)를 포함한다. 이상이 파일 엔트리에 대한 설명이다. 이어서, 디렉터리 파일의 상세에 대하여 설명한다.
「디렉터리 파일」은 「하위 디렉터리에 대한 파일식별 기술자」와 「하위 파일의 파일 식별 기술자」를 포함한다.
「하위 디렉터리의 파일 식별 기술자」는 자신의 아래에 있는 하위 디렉터리를 액세스하기 위한 참조정보이며, 그 하위 디렉터리를 나타내는 식별정보와, 그 하위 디렉터리의 디렉터리 명의 길이와, 하위 디렉터리의 파일 엔트리가 어느 논리블록번호에 기록되어 있을까를 나타내는 파일 엔트리 어드레스와, 그 하위 디렉터리의 디렉터리 명으로 구성된다.
「하위 파일의 파일 식별 기술자」는 자신의 아래에 있는 파일을 액세스하기 위한 참조정보이며, 그 하위 파일을 나타내는 식별정보와, 그 하위 파일명의 길이와, 하위 파일에 대한 파일 엔트리가 어느 논리블록번호에 기록되어 있는가를 나타내는 파일 엔트리 어드레스와, 하위 파일의 파일명으로 구성된다.
이들 디렉터리의 디렉터리 파일에서의 파일 식별 기술자에는 하위 디렉터리 및 하위 파일의 파일 엔트리가 어느 논리블록에 기록되어 있는가가 나타나 있으므로, 이 파일 식별 기술자를 찾아가면 ROOT 디렉터리의 파일 엔트리에서 BDMV 디렉터리의 파일 엔트리에 도달할 수 있으며, 또, BDMV 디렉터리의 파일 엔트리에서 PLAYLIST 디렉터리의 파일 엔트리에 도달할 수 있다. 마찬가지로, JAR 디렉터리, BDJO 디렉터리, CLIPINF 디렉터리, STREAM 디렉터리의 파일 엔트리에도 도달할 수 있다.
「하위 파일의 파일 기록영역」은 어느 디렉터리의 아래에 있는 하위 파일의 실체가 기록되어 있는 영역이며, 당해 하위 파일에 대한 「파일 엔트리」와 1개 이상의 「익스텐트」가 기록되어 있다.
본원의 주안이 되는 스트림 파일은 그 파일이 귀속하는 디렉터리의 디렉터리 영역 내에 존재하는 파일 기록영역을 말하며, 디렉터리 파일에서의 파일 식별 기술자 및 파일 엔트리에서의 할당 식별자를 찾아감으로써 액세스할 수 있다.
이상이 기록매체의 내부 구성에 대한 설명이다. 이어서, 도 58 및 도 59에 나타낸 기록매체를 만드는 방법, 즉, 기록방법의 형태에 대하여 설명한다.
본 실시 예의 기록방법은 상술한 것과 같은 AV 파일, 비 AV 파일을 실시간으로 작성하여 AV 데이터 기록영역, 비 AV 데이터 기록영역에 직접 기입하는 실시간 리코딩뿐만 아니라, 볼륨영역에 기록해야 할 비트 스트림의 전체상을 사전에 작성하고, 이 비트 스트림을 기초로 원반 디스크를 작성하여, 이 원반 디스크를 프레스 함으로써 광디스크를 양산한다고 하는 프리 포맷 리코딩도 포함한다. 본 실시 예의 기록매체는 실시간 리코딩에 의한 기록방법 및 프리 포맷 리코딩에 의한 기록방법에 의해서도 특정되는 것이기도 하다.
도 60은 기록방법의 처리순서를 나타낸다. 스텝 S101은 기록장치가 동화상, 음성, 자막, 메뉴와 같은 데이터 소재의 임포트(import)를 하고, 스텝 S102에서는 데이터 소재를 디지털화하여 압축부호화하여 MPEG 규격에 따른 인코드를 함으로써 PES를 얻는다. 스텝 S103에서는 PES를 다중화하여 대응하는 클립정보를 생성하고, 스텝 S104에서는 AV 클립과 클립정보를 각각 다른 파일에 저장한다.
스텝 S105에서는 AV 클립의 재생경로를 규정하는 플레이리스트, 플레이리스트를 이용한 제어순서를 규정하는 프로그램, 이들에 대한 관리정보를 작성하고, 스텝 S106에서는 AV 클립, 클립정보, 플레이리스트, 프로그램 파일, 그 외의 관리정보를 기록매체에 기록한다.
도 61은 AV 파일 기록공정의 처리순서를 나타낸다.
스텝 S401에서 xxxxx.ssif를 구축하여 기록장치의 메모리 상에 파일 엔트리를 작성한다. 스텝 S402는 빈 연속 섹터 영역을 확보할 수 있었는가 여부의 판정이며, 확보할 수 있었으면 스텝 S403에서 빈 연속 섹터 영역에 디펜던트 뷰 데이터블록을 구성하는 소스 패킷 열을 EXT2[i]만큼 기록하고, 그 후, 스텝 S404~스텝 S408를 실행한다. 확보할 수 없는 경우에는 스텝 S409에서 예외처리를 한 후에 기록방법을 종료한다.
스텝 S404~스텝 S408은 스텝 S407이 No로 판정될 때까지 스텝 S404~스텝 S406, 스텝 S408의 처리를 반복하는 루프를 구성하고 있다.
스텝 S405는 빈 연속 섹터 영역에, 베이스 뷰 데이터블록을 구성하는 소스 패킷 열을 EXT1[i]만큼 기록한다. 스텝 S406은 소스 패킷 열이 기록된 선두 어드레스 및 연속 길이를 나타내는 할당 식별자를 파일 엔트리에 추기(追記)하여 익스텐트로 등록한다. 이에 수반하여, 기록된 소스 패킷 열의 선두 소스 패킷 번호를 지시하는 익스텐트 스타트 포인트 정보를 클립 베이스정보, 클립 디펜던트 정보 내의 메타데이터에 추기한다.
스텝 S407은 루프의 종료조건을 규정하는 것이며, 베이스 뷰 데이터블록, 디펜던트 뷰 데이터블록에 미기록의 소스 패킷이 존재하는가 여부의 판정을 한다. 존재하면 스텝 S408로 이행하여 루프를 계속한다. 존재하지 않으면 스텝 S410으로 이행한다.
스텝 S408은 연속 섹터 영역이 존재하는가 여부의 판정이며, 존재하면 스텝 S403으로 이행하고, 존재하지 않으면 스텝 S402까지 되돌아온다.
스텝 S410에서는 xxxxx.ssif를 클로즈하고, 파일 엔트리를 기록매체에 기록한다. 스텝 S411에서는 xxxxx. M2ts를 구축하여 메모리에 xxxxx. M2ts의 파일 엔트리를 생성한다. 스텝 S412에서는 파일 2D에서 고유한 베이스 뷰 데이터블록의 선두 어드레스 및 연속 길이를 나타내는 할당 기술자를 xxxxx. M2ts의 파일 엔트리에 추기한다. 스텝 S413에서는 xxxxx. M2ts를 클로즈하고, 파일엔트리를 기록한다.
스텝 S404는 EXTSS+EXT2D의 범위 내에 롱 점프의 발생지점이 존재하는가 여부의 판정이다. 여기에서의 롱 점프의 발생 지점은 층 경계인 것으로 한다. EXTSS+EXT2D의 범위 내에 층 경계가 존재하는 경우, 스텝 S420에서 베이스 뷰 데이터블록을 복제하고, 베이스 뷰 데이터블록 B[i]ss와 베이스 뷰 데이터블록 B[i]2D를 롱 점프 발생지점의 직전까지 기록하며, 그 후 스텝 S406으로 이행한다. 이들이 파일 2D의 익스텐트, 파일 베이스의 익스텐트가 된다.
실시간 리코딩 기술에 의해 기록방법을 실현하는 경우, 당해 기록방법을 실행하는 기록장치는 실시간으로 AV 클립을 작성하여 BD-RE 또는 BD-R, 하드디스크, 반도체 메모리 카드에 기록한다.
이 경우 AV 클립은 아날로그 입력 신호를 기록장치가 실시간 인코드함으로써 얻어진 TS라도 좋고, 기록장치가 디지털 입력한 TS를 세분화함으로써 얻어지는 TS라도 좋다. 실시간 리코딩을 실행하는 기록장치는 비디오 신호를 인코드하여 비디오 스트림을 얻는 비디오 인코더와, 오디오 신호를 인코드하여 오디오 스트림을 얻는 오디오 인코더와, 비디오 스트림, 오디오 스트림 등을 다중화하여 MPEG2-TS를 얻는 멀티플렉서와, MPEG2-TS형식의 디지털 스트림을 구성하는 TS 패킷을 소스 패킷으로 변환하는 소스 패킷다이저를 구비하고, 소스 패킷 형식으로 변환된 MPEG2 디지털 스트림을 AV 클립파일에 저장하여 BD-RE, BD-R 등에 기록한다. 디지털 스트림의 기록과 동시에, 기록장치의 제어부는 메모리 상에서 클립정보나 플레이리스트정보를 생성하는 처리를 한다. 구체적으로는 사용자에 의해서 녹화처리가 요구된 때, 제어부는 AV 클립의 스트림 파일 및 클립정보파일을 BD-RE, BD-R 상에 구축한다.
그리고 장치 외부로부터 입력되는 TS에서 비디오 스트림에서의 GOP의 선두위치가 검출되거나, 인코더에 의해서 비디오 스트림의 GOP가 생성되면, 기록장치의 제어부는 이 GOP에서 선두에 위치하는 인트라 픽처(intra picture)의 PTS와 이 GOP의 선두 부분을 저장한 소스 패킷의 패킷번호를 취득하고, 이 PTS 및 패킷 번호의 세트를 EP_PTS 엔트리 및 EP_SPN 엔트리의 세트로 하여 클립정보파일의 엔트리맵에 추기한다. 이후, GOP가 생성될 때마다 EP_PTS 엔트리 및 EP_SPN 엔트리의 세트를 클립정보파일의 엔트리 맵에 추기해 간다. 이때, GOP의 선두가 IDR 픽쳐인 경우에는 "온"으로 설정된 is_angle_change 플래그를 EP_PTS 엔트리 및 EP_SPN 엔트리의 세트에 추가한다. GOP의 선두가 IDR 픽쳐가 아닌 경우에는 "오프"로 설정된 is_angle_change 플래그를 EP_PTS 엔트리 및 EP_SPN 엔트리의 세트에 추가한다.
또, 클립정보파일에서의 스트림의 속성정보에 대해서는 기록되어야 할 스트림의 속성에 따라 설정한다. 이상과 같이 하여 AV 클립, 클립정보가 생성되어서 BD-RE, BD-R에 기록되면, 이 클립정보 내의 엔트리 맵을 통해서 재생경로를 정의하는 플레이리스트 정보를 생성하여 BD-RE, BD-R에 기록한다. 이와 같은 처리를 실시간 리코딩 기술에서 실행함으로써 AV 클립 - 클립정보 - 플레이리스트 정보라는 계층 구조를 BD-RE, BD-R상에 얻을 수 있다.
이상이 실시간 리코딩에 의한 기록방법을 실행하는 기록장치이다. 이어서, 프리포맷 리코딩에 의한 기록방법에 대하여 설명한다.
프리포맷 리코딩에 의한 기록방법은 편집행정을 포함하는 광디스크의 제조방법이 된다.
광디스크의 제조방법은 편집스텝, 서명스텝, 미디어 키 취득스텝, 미디 어 키 암호스텝, 물리포맷스텝, 식별자 매입스텝(identifier embedding step), 마스터링 스텝(mastering step), 리플리케이션 스텝(replication step)을 포함한다. 도 62는 기록매체의 제조방법을 나타낸다. 동 도면 (a)의 편집 스텝 S201은 광디스크의 볼륨 영역의 전체상을 나타내는 비트 스트림을 작성한다.
서명스텝 S202는 광디스크의 제조시에 AACS LA에 대하여 서명요구를 한다. 구체적으로는 비트 스트림의 일부분을 추출하여 AACS LA에 송부한다. 여기서 AACS LA는 차세대의 디지털 가전기기에서의 저작물 보호기술에 관한 라이선스를 관리하는 단체이다. 편집장치를 이용하여 광디스크의 편집을 실시하는 편집사이트 및 마스터링 장치를 이용하여 마스터링을 실행하는 마스터링 사이트는 AACS LA에서 라이선스의 제공을 받는다. 또, 미디어 키, 무효화 정보를 관리한다. 그리고, AACS LA에서 서명된 비트 스트림의 일부분을 취득한다.
미디어 키 취득 스텝 S203는 AACS LA로부터 미디어 키를 취득한다. 미디어 키는 항상 고유한 것이 사용되는 것은 아니며, 지금까지 제조된 광디스크의 매수가 일정 매수까지 달하면 새로운 것으로 갱신된다. 미디어 키를 갱신함으로써 특정의 메이커나 기기를 배제할 수 있으며, 만일 암호 키가 유출되어도 무효화 정보를 이용함으로써 그 자체를 무효화할 수 있다.
미디어 키 암호화 스텝 S204는 미디어 키 취득 스텝에 의해 취득한 미디어 키를 이용하여 비트 스트림의 암호화에 이용한 키를 암호화한다.
물리포맷스텝 S205는 비트 스트림에 대하여 물리포맷을 실행한다.
식별자 매입스텝 S206은 광디스크에 수록되는 비트 스트림에 일반의 기기에서는 검출할 수 없는 고유한 식별자를 전자 워터마크(electronic watermark)로 매입한다. 이에 의해, 부정한 마스터링에 의한 해적판의 양산을 막을 수 있다.
마스터링 스텝 S207은 광디스크의 원반을 제작한다. 먼저, 유리기판상에 포토레지스트 층을 형성하고, 당해 포토레지스트 층에 대하여 원하는 그루브(groove)나 피트에 대응하도록 레이저 광을 조사하여 노광하고, 현상 처리를 한다. 이 그루브나 피트는 8-16 변조된 비트 스트림의 각 비트치를 나타내는 것이다. 그 후, 이와 같은 레이저 커팅에 의해서 그루브나 피트에 대응한 요철(凹凸)이 형성된 포토레지스트를 기초로 광디스크의 원반을 제작한다.
리플리케이션 스텝 S208은 광디스크의 원반을 이용하여 그 복제인 광디스크를 대량생산 한다.
도 62 (b)는 편집 스텝의 처리순서를 나타낸다.
스텝 S301은 BD-ROM의 타이틀 구조를 결정하는 공정이다. 이에 의해 타이틀 구조 정보가 작성된다. 타이틀 구조 정보란 트리구조(tree structure)를 이용하여 BD-ROM에서의 재생 단위의 관계, 예를 들어, 타이틀, 무비 오브젝트, BD-J 오브젝트, 플레이리스트 간의 관계를 규정하는 정보이다. 구체적으로 말하면, 타이틀 구조 정보는 제작하려고 하는 BD-ROM의 「디스크 명」에 대응하는 노드, 그 BD-ROM에서 Index. Bdmv에서 재생 가능한 「타이틀」에 대응하는 노드, 그 타이틀을 구성하는 「무비 오브젝트 및 BD-J 오브젝트」에 대응하는 노드, 당해 무비 오브젝트 및 BD-J 오브젝트로부터 재생되는 「플레이리스트」의 노드를 규정하고, 이들 노드를 엣지(edge)에서 연결시킴으로써 타이틀, 무비 오브젝트, BD-J 오브젝트, 플레이리스트 간의 관계를 규정한다.
스텝 S302는 타이틀에 이용하는 동화상, 음성, 정지화상, 자막 정보의 임포트를 실시하는 공정이다.
스텝 S303는 GUI를 경유한 사용자 조작에 따른 편집처리를 타이틀 구조 정보에 실시함으로써 BD-ROM 시나리오 데이터를 작성하는 공정이다. 여기서 BD-ROM 시나리오 데이터란 AV 스트림의 재생시에 타이틀 단위에서의 재생을 재생장치에 실시하게 하는 정보이며, BD-ROM에서는 인데스 테이블, 무비 오브젝트, 플레이리스트로 정의되어 있는 정보가 시나리오에 해당한다. BD-ROM 시나리오 데이터에는 스트림을 구성하는 소재정보, 재생구간, 재생경로를 나타내는 정보, 메뉴 화면 배치, 메뉴로부터의 천이정보 등을 포함한다.
스텝 S304는 인코드공정이며, BD-ROM 시나리오 데이터에 의거하여 인코드를 해서 PES 스트림을 얻는다.
스텝 S305는 BD-ROM 시나리오 데이터에 따른 다중화 공정이며, 이 공정에 의해서 PES 스트림을 다중화하여 AV 클립을 얻는다.
스텝 S306에서는 BD-ROM으로의 기록을 위한 데이터베이스를 얻는다. 여기에서의 데이터베이스란 상술한 BD-ROM에서 정의되는 인덱스 테이블, 무비 오브젝트, 플레이리스트, BD-J 오브젝트 등의 총칭이다.
스텝 S307에서는 Java(TM) 프로그램, 다중화 공정으로 얻어진 AV 클립, BD-ROM 데이터베이스를 입력으로 하고, BD-ROM에 준거한 파일시스템 포맷으로 AV 파일, 비 AV 파일을 작성한다.
다음에, 편집 스텝의 작업에 이용되는 기록장치에 대하여 설명한다. 여기서 설명하는 기록장치는 영화 콘텐츠의 반포를 위해서 제작 스튜디오에 설치되고, 오서링 스태프(authoring staff)의 사용에 제공된다. 오서링 스태프로부터의 조작에 따라서 MPEG 규격에 따라 압축부호화된 디지털 스트림 및 어떻게 영화 타이틀을 재생하는가를 기록한 시나리오를 생성하고, 이들 데이터를 포함하는 BD-ROM용의 볼륨 비트 스트림을 생성하여 마스터링 사이트에 인도하기 위한 기록매체에 기록한다고 하는 것이 본 발명의 기록장치의 사용형태이다.
도 63은 기록장치의 내부 구성을 나타낸다. 본 도면에 나타내는 것과 같이, 기록장치는 비디오 인코더(501), 소재 제작부(502), 시나리오 생성부(503), BD 프로그램 제작부(504), 다중화 처리부(505), 포맷 처리부(506)에 의해 구성된다.
비디오 인코더(501)는 레프트 뷰의 비 압축의 비트 맵 등의 화상 이미지와 라이트 뷰의 비 압축의 비트 맵 등의 화상 이미지로부터 MPEG4-AVC나 MPEG2 등의 압축 방식에 따라서 부호화하여 레프트 뷰 비디오 스트림과 라이트 뷰 비디오 스트림을 작성한다. 이때, 라이트 뷰 비디오 스트림은 레프트 뷰 비디오 스트림의 표시 시각에 대응하는 프레임과 픽쳐 간 예측부호화에 의해서 부호화한다. 이 픽쳐 간 예측부호화의 처리의 과정에서 레프트 뷰의 이미지와 라이트 뷰의 이미지의 모션 벡터로부터 3D 영상시의 깊이 정보를 추출하고, 프레임 깊이 정보 저장부(501a)에 기록한다. 비디오 인코더(501)는 픽쳐 간의 상관특성을 이용한 화상 압축을 하기 위해서 8x8나 16x16의 매크로블록 단위로 모션 벡터를 추출하여 화상 압축을 한다.
매크로 블록에서의 모션 벡터를 추출하는 처리에서 배경에 집이 존재하고, 전경에 사람이 존재하는 동화상을 모션 벡터 추출의 대상으로 한다. 이 경우, 좌측 눈 화상과 우측 눈 화상에서 픽쳐 간 예측을 한다. 그렇게 하면 「집」의 이미지의 개소에는 모션 벡터가 검출되지 않지만 「사람」의 개소에서는 모션 벡터가 검출된다.
검출된 모션 벡터를 추출하여 3D 영상을 표시했을 때의 프레임 단위의 깊이 정보를 작성한다. 깊이 정보는 예를 들어 8비트의 심도를 갖는 프레임의 해상도와 동일한 이미지를 채용하는 것을 생각할 수 있다.
소재 제작부(502)는 오디오 스트림, PG 스트림, IG 스트림 등의 각 스트림을 작성하고, 오디오 스트림 저장부(502a), IG 스트림 저장부(502b), PG 스트림 저장부(502c)에 기록한다.
오디오 스트림 작성시에 소재 제작부(502)는 비 압축의 LinearPCM 음성 등을 AC3 등의 압축 방식에 따라서 부호화함으로써 오디오 스트림을 작성한다. 그 외에도 소재 제작부(502)는 자막 이미지와 표시 타이밍 및 페이드 인/페이드 아웃 등의 자막의 효과를 포함한 자막정보 파일을 기초로 하여 BD-ROM 규격에 준거한 PG 스트림의 포맷인 PG 스트림을 작성한다. 소재 제작부(502)는 메뉴에 사용하는 비트맵 이미지와 메뉴에 배치되는 버튼의 천이나 표시 효과를 기재한 메뉴 파일을 기초로 하여 BD-ROM 규격에 준거한 메뉴 화면의 포맷인 IG 스트림을 작성한다.
시나리오 생성부(503)는 소재 제작부(502)에서 작성한 각 스트림의 정보나 오서링 스태프로부터의 GUI를 경유한 조작에 따라서 BD-ROM 포맷에서 시나리오를 작성한다. 여기서 말하는 시나리오는 인덱스 파일, 무비 오브젝트 파일, 플레이리스트 파일 등의 파일이 거기에 해당한다. 또, 시나리오 생성부(503)는 다중화 처리를 실현하기 위한 각 AV 클립이 어느 스트림으로 구성되는가를 기술한 파라미터 파일을 작성한다. 여기서 작성되는 인덱스 파일, 무비 오브젝트 파일, 플레이리스트 파일 등의 파일은 제 1 실시 예 및 제 2 실시 예에서 설명한 데이터구조가 된다.
BD 프로그램 제작부(504)는 GUI등의 사용자 인터페이스를 통해서 사용자로부터의 요구에 따라서 BD 프로그램 파일의 소스 코드를 작성하고, BD 프로그램을 작성한다. 이때, BD 프로그램 파일의 프로그램이 GFX 플레인의 깊이를 설정하기 위해서 비디오 인코더(501)가 출력한 깊이 정보를 이용할 수 있다.
다중화 처리부(505)는 BD-ROM 시나리오 데이터에 기술되어 있는 레프트 뷰 비디오 스트림, 라이트 뷰 비디오 스트림, 비디오, 오디오, 자막, 버튼 등의 복수의 스트림을 다중화하여 MPEG2-TS 형식의 AV 클립을 작성한다. 이때, AV 클립과 쌍이 되는 클립정보파일도 동시에 작성한다.
다중화 처리부(505)는 스스로 생성한 엔트리 맵과 AV 클립에 포함되는 스트림마다의 음성 속성, 영상 속성 등을 나타내는 속성정보를 쌍으로 해서 클립정보파일을 작성한다. 클립정보파일의 구성은 지금까지의 각 실시의 예에서 설명한 데이터구조가 된다.
포맷 처리부(506)는 시나리오 생성부(503)에서 생성한 BD-ROM 시나리오 데이터와, BD 프로그램 제작부(504)에서 제작한 BD 프로그램 파일, 다중화 처리부(505)에서 생성한 AV 클립이나 클립정보파일, BD-ROM 규격에 준거한 포맷으로 파일이나 디렉터리를 배치하고, BD-ROM 규격에 준거한 파일시스템인 UDF의 포맷으로 디스크 이미지를 작성하며, 디스크 이미지를 나타내는 비트 스트림을 BD-ROM 비트 스트림 저장부(507)에 기록한다.
또, 이때 비디오 인코더(501)가 출력한 깊이 정보를 이용하여 PG, IG, 세컨더리 비디오 스트림의 3D 메타데이터를 작성한다. 3D 영상의 물체와 중첩되지 않도록 이미지의 화면상의 배치를 자동으로 설정하거나, 깊이가 중첩되지 않도록 오프셋 값을 조정한다. 이렇게 하여 작성된 디스크 이미지의 파일 레이아웃은 지금까지 설명한 파일 레이아웃의 데이터구조로 설정한다. 생성한 디스크 이미지를 BD-ROM 프레스용 데이터로 변환하고, 이 데이터에 대하여 프레스 공정을 실시함으로써 BD-ROM의 제조가 가능해지게 된다.
(제 9 실시 예)
본 실시 예에서는 지금까지의 실시 예에서 설명한 재생장치의 기능을 통합한 2D/3D 재생장치의 내부 구성에 대해서 설명한다.
도 64는 2D/3D 재생장치의 구성을 나타내고 있다. 2D/3D 재생장치는 BD-ROM드라이브(1), 리드 버퍼(2a), 리드 버퍼(2b,2c), ATC 시퀀스 복원부(2c), 시스템 타깃 디코더(4), 플레인 메모리 세트(5a), 플레인 합성부(5b), HDMI 송수신부(6), 재생제어부(7), 관리정보 메모리(9), 레지스터 세트(10), 프로그램 실행부(11), 프로그램 메모리(12), HDMV 모듈(13), BD-J 플랫폼(14), 미들웨어(15), 모드 관리모듈(16), 사용자 이벤트 처리부(17), 로컬 스토리지(18), 불휘발성 메모리(19)로 구성되어 있다.
BD-ROM 드라이브(1)는 2D 재생장치와 마찬가지로 재생제어부(7)로부터의 요구를 기초로 BD-ROM 디스크로부터 데이터를 판독하나, BD-ROM 디스크로부터 판독된 AV 클립은 리드 버퍼(2a)나 리드 버퍼(2b)에 전송된다.
3D 영상을 재생할 때에는 재생제어부(7)에서는 베이스 뷰 데이터블록과 디펜던트 뷰 데이터블록을 익스텐트 단위로 교호로 판독하는 취지를 지시하는 판독요구가 보내진다. BD-ROM 드라이브(1)는 베이스 뷰 데이터블록을 구성하는 익스텐트를 리드 버퍼(2a)에 판독하고, 디펜던트 뷰 데이터블록을 구성하는 익스텐트를 리드 버퍼(2b)에 판독한다. 3D 영상을 재생할 때에는 베이스 뷰 데이터블록과 디펜던트 뷰 데이터블록의 양쪽을 동시에 판독할 필요가 있으므로 2D 재생장치의 BD-ROM 드라이브 이상의 스피드 성능이 요구된다.
리드 버퍼(2a)는 BD-ROM 드라이브(1)가 판독한 베이스 뷰 데이터블록의 데이터를 저장하는 듀얼 포트 메모리 등으로 구성된 버퍼이다.
리드 버퍼(2b)는 BD-ROM 드라이브(1)가 판독한 디펜던트 뷰 데이터블록의 데이터를 저장하는 듀얼 포트 메모리 등으로 구성된 버퍼이다.
ATC 시퀀스 복원부(2c)는 리드 버퍼에 대한 데이터 입력 원을 BD-ROM 드라이브(1) 또는 로컬 스토리지(18) 중 어느 하나로 전환하기 위한 스위치이다.
시스템 타깃 디코더(4)는 리드 버퍼(2a)에 판독된 소스 패킷과 리드 버퍼(2b)에 판독된 소스 패킷에 대하여 다중분리처리를 하여 스트림의 디코드 처리를 한다.
플레인 메모리 세트(5a)는 복수의 플레인 메모리로 구성된다. 플레인 메모리에는 레프트 뷰 비디오 플레인, 라이트 뷰 비디오 플레인, 세컨더리 비디오 플레인, IG 플레인, PG 플레인이라고 하는 것이 있다.
플레인 합성부(5b)는 지금까지의 실시 예에서 설명한 플레인 합성을 한다. 텔레비전 등으로 출력하는 경우에는 3D의 방식에 맞춘 출력을 한다. 셔터 안경을 이용하여 교호로 좌측 눈 이미지·우측 눈 이미지를 재생할 필요가 있는 경우에는 그대로 출력하며, 예를 들어 렌티큘러의 텔레비전에 출력하는 경우에는 임시 버퍼(temporary buffer)를 준비하여, 먼저 전송되는 좌측 눈 이미지를 임시 버퍼에 저장하고, 오른쪽 눈 이미지가 전송된 후에 동시에 출력한다.
HDMI 송수신부(6)는 예를 들어 HDMI 규격(HDMI:High Definition Multimedia Interface)에 따라서 제 1 실시 예에 설명한 인증 페이즈, 네고시에이션 페이즈를 실행한다. 네고시에이션 페이즈에서는 입체 시 표시에 대응하고 있는가에 관한 정보, 평면표시 가능한 해상도에 관한 정보, 입체 표시가능한 해상도에 관한 정보를 텔레비전으로부터 수신할 수 있다.
재생제어부(7)는 재생엔진(7a), 재생제어엔진(7b)을 포함하고, 3D 플레이리스트의 재생이 프로그램 실행부(11) 등에서 명해지면 3D 플레이리스트 중에서 재생 대상이 되는 플레이아이템의 베이스 뷰 데이터블록을 특정하고, 그 플레이아이템과 동기하여 재생되는 3D용의 서브패스의 서브 플레이아이템의 디펜던트 뷰 데이터블록을 특정한다. 그 후, 대응하는 클립정보파일의 엔트리 맵을 해석하여, 어느 쪽의 익스텐트에서 먼저 익스텐트가 배치되어 있는가를 나타내는 익스텐트 개시 타입에 의거하여 재생 개시 지점에서 베이스 뷰 데이터블록의 익스텐트와 디펜던트 뷰 데이터블록의 익스텐트를 교호로 판독하도록 BD-ROM 드라이브(1)에 요구한다. 재생 개시를 할 경우에는 최초의 익스텐트를 리드 버퍼(2a)나 리드 버퍼(2b)에 완전히 판독한 후에 리드 버퍼(2a)와 리드 버퍼(2b)로부터 시스템 타깃 디코더(4)에 전송을 개시한다.
재생엔진(7a)은 AV 재생 기능을 실행한다. AV 재생 기능이란 DVD 재생장치, CD 재생장치로부터 답습한 기능 군(群)이며, 재생 개시, 재생 정지, 일시정지, 일시정지의 해제, 정지화면 기능의 해제, 재생 속도를 즉치로 지정한 빨리 감기,재생 속도를 즉치로 지정한 되감기, 음성 전환, 세컨더리 비디오용의 픽처 데이터 전환, 앵글 변환과 같은 처리이다.
재생제어엔진(7b)은 HDMV 모드의 동작 주체인 커맨드 인터프리터, BD-J 모드의 동작 주체인 Java 플랫폼으로부터의 함수 호출에 따라서 플레이리스트의 재생 기능을 실행한다. 플레이리스트 재생 기능이란 상술한 AV 재생 기능 중 재생 개시나 재생 정지를 현재 플레이리스트를 구성하는 현재 플레이리스트 정보, 현재 클립정보에 수반하여 실시하는 것을 말한다.
관리정보 메모리(9)는 현재 플레이리스트 정보나 현재 클립정보를 저장해 두기 위한 메모리이다. 현재 플레이리스트 정보란 BD-ROM 또는 빌트 인(built-in) 미디어 드라이브, 리무버블 미디어 드라이브에서 액세스할 수 있는 복수의 플레이리스트 정보 중 현재 처리 대상으로 되어 있는 것을 말한다. 현재 클립정보란 BD-ROM 또는 빌트인 미디어 드라이브, 리무버블 미디어 드라이브에서 액세스할 수 있는 복수의 클립정보 중 현재 처리 대상으로 되어 있는 것을 말한다.
재생 상태/설정 레지스터(Player Status/Setting Register) 세트(10)는 지금까지의 실시 예에서 설명한 재생 상태 레지스터, 재생 설정 레지스터 외에 프로그램 파일이 이용하는 임의의 정보를 저장할 수 있는 범용 레지스터를 포함한다.
프로그램 실행부(11)는 BD 프로그램 파일에 저장된 프로그램을 실행하는 프로세서이다. 저장된 프로그램에 따라서 동작을 하여 다음과 같은 제어를 한다. (1) 재생제어부(7)에 대하여 플레이리스트 재생을 명령한다. (2) 시스템 타깃 디코더에 대하여 메뉴나 게임의 그래픽스를 위한 PNG·JPEG를 전송하여 화면에 표시한다. 이들은 프로그램의 만들기에 따라서 자유롭게 실시할 수 있으며, 어떻게 제어하는가는 편집공정에 의한 BD-J 애플리케이션의 프로그래밍 공정에 의해서 결정된다.
프로그램 메모리(12)는 현재 동적 시나리오를 저장해 두고, HDMV 모드의 동작 주체인 HDMV 모듈, BD-J 모드의 동작 주체인 Java 플랫폼에 의한 처리에 제공되는 메모리이다. 현재 동적 시나리오란 BD-ROM에 기록되어 있는 Index.bdmv, BD-J 오브젝트, 무비 오브젝트 중, 현재 실행 대상으로 되어 있는 것을 말한다. 또 프로그램 메모리(12)는 히프 메모리를 포함한다.
히프 메모리는 시스템 애플리케이션의 바이트 코드, BD-J 애플리케이션의 바이트 코드, 시스템 애플리케이션이 이용하는 시스템 파라미터, BD-J 애플리케이션이 이용하는 애플리케이션 파라미터가 배치되는 스택 영역이다.
HDMV 모듈(13)은 HDMV 모드의 동작 주체가 되는 DVD 가상 플레이어이고, HDMV 모드의 실행 주체가 된다. 본 모듈은 커멘드 인터프리터를 구비하고, 무비 오브젝트를 구성하는 내비게이션 커멘드를 해독하여 실행함으로써 HDMV 모드의 제어를 실행한다. 내비게이션 커멘드는 DVD-Video와 유사한 신텍스(syntax)로 기술되어 있으므로 이러한 내비게이션 커맨드를 실행함으로써 DVD-Video와 같은 재생제어를 실현할 수 있다.
BD-J 플랫폼(14)은 BD-J 모드의 동작 주체인 Java 플랫폼이며, Java2Micro_Edition(J2ME) Personal Basis Profile(PBP1.0)과, Globally Executable MHP specification(GEM1.0. 2) for package media targets를 풀 실장하고 있으며, 클래스 로더, 바이트코드 인터프리터, 애플리케이션 매니저로 구성된다.
클래스 로더는 시스템 애플리케이션의 하나이며, JAR 아카이브 파일에 존재하는 클래스 파일에서 바이트 코드를 판독하여 히프 메모리(31)에 저장함으로써 BD-J 애플리케이션의 로드를 한다.
바이트 코드 인터프리터는 이른바 Java 가상 머신이며, 히프 메모리에 저장되어 있는 BD-J 애플리케이션을 구성하는 바이트 코드, 시스템 애플리케이션을 구성하는 바이트 코드를 네이티브 코드로 변환하여 MPU에 실행시킨다.
애플리케이션 매니저는 시스템 애플리케이션의 하나이며, BD-J 오브젝트 내의 애플리케이션 관리 테이블에 의거하여 BD-J 애플리케이션을 기동하거나 BD-J 애플리케이션을 종료하는 등 BD-J 애플리케이션의 애플리케이션 시그널링을 실시한다. 이상으로, BD-J 플랫폼부의 내부 구성에 대한 설명을 마친다.
미들웨어(15)는 내장 소프트웨어를 위한 오퍼레이팅 시스템이며, 커널(kernel), 디바이스 드라이버로 구성된다. 커널은 BD-J 애플리케이션으로부터의 애플리케이션 프로그래밍 인터페이스(API)의 콜에 따라서 재생장치 특유의 기능을 BD-J 애플리케이션에 제공한다. 또, 할당신호에 의해 할당 핸들러부를 기동하는 등의 하드웨어 제어를 실현한다.
모드 관리모듈(16)은 BD-ROM 또는 빌트인 미디어 드라이브, 리무버블 미디어 드라이브에서 판독된 Index.bdmv를 보유하고, 모드 관리 및 분기 제어를 한다. 모드 관리모듈에 의한 모드 관리는 동적 시나리오를 BD-J 플랫폼(22), HDMV 모듈의 어느 것에 실행시키는가 하는 모듈의 할당이다.
사용자 이벤트 처리부(17)는 리모컨을 통한 사용자 조작에 응답하여 프로그램 실행부(16)나 재생제어부(7)에 처리의 실행을 의뢰한다. 예를 들어, 리모컨으로 버튼을 눌렀을 경우에는 그 버튼에 포함되는 커멘드를 실행하도록 프로그램 실행부(16)에 의뢰한다. 예를 들어, 리모컨으로 빨리 감기·되감기 버튼이 눌렸을 경우에는 재생제어부(7)에 현재 재생하고 있는 플레이리스트의 AV 클립에 대한 빨리 감기 및 되감기 처리의 실행을 명령한다.
로컬 스토리지(18)는 하드 디스크를 액세스하기 위한 빌트인 미디어 드라이브, 반도체 메모리 카드를 액세스하기 위한 리무버블 미디어 드라이브를 구비하고, 다운로드된 추가 콘텐츠나 애플리케이션이 사용하는 데이터 등의 보존에 이용된다. 추가 콘텐츠의 보존영역은 BD-ROM별로 나누어져 있으며, 또 애플리케이션이 데이터의 보유에 사용할 수 있는 영역은 애플리케이션별로 나뉘어져 있다.
불휘발성 메모리(19)는 판독 기입 가능한 메모리 등의 기록매체이며, 전원이 공급되지 않아도 기록 내용을 보유할 수 있는 매체, 예를 들어 플래시 메모리, FeRAM 등이다. 이는 레지스터 세트(10)에서의 기억 내용의 백업에 이용된다.
다음에, 시스템 타깃 디코더(4) 및 플레인 메모리 세트(5a)의 내부 구성에 대하여 설명한다. 도 65는 시스템 타깃 디코더(4) 및 플레인 메모리 세트(5a)의 내부 구성을 나타낸다. 본 도면에 나타내는 것과 같이, 시스템 타깃 디코더(4) 및 플레인 메모리 세트(5a)는 ATC 카운터(21), 소스 디 패킷다이저(22), PID 필터(23), STC 카운터(24), ATC 카운터(25), 소스 디 패킷다이저(26), PID 필터(27), 프라이머리 비디오 디코더(31), 레프트 뷰 비디오 플레인(32), 라이트 뷰 비디오 플레인(33), 세컨더리 비디오 디코더(34), 세컨더리 비디오 플레인(35), PG 디코더(36), PG 플레인(37), IG 디코더(38), IG 플레인(39), 프라이머리 오디오 디코더(40), 세컨더리 오디오 디코더(41), 믹서(42), 렌더링 엔진(43), GFX 플레인(44), 렌더링 메모리(45)로 구성된다.
프라이머리 비디오 디코더(31)는 레프트 뷰 비디오 스트림을 디코드하고, 디코드 결과인 비 압축의 비디오 프레임을 레프트 뷰 비디오 플레인(32)에 기록한다.
레프트 뷰 비디오 플레인(32)은 예를 들어 1920×2160(1280×1440)과 같은 해상도에 의해서 픽쳐 데이터를 저장할 수 있는 플레인 메모리이다.
라이트 뷰 비디오 플레인(33)은 예를 들어 1920×2160(1280×1440)과 같은 해상도에 의해서 픽쳐 데이터를 저장할 수 있는 플레인 메모리이다.
세컨더리 비디오 디코더(34)는 프라이머리 비디오 디코더와 동일한 구성을 가지며, 입력되는 세컨더리 비디오 스트림의 디코드를 하여 표시시각(PTS)의 타이밍에 픽쳐를 세컨더리 비디오 플레인에 기록한다.
세컨더리 비디오 플레인(35)은 시스템 타깃 디코더(4)에서 세컨더리 비디오 스트림이 디코드 된 세컨더리 비디오용의 픽쳐 데이터용 데이터가 출력된다.
PG 디코더(36)는 소스 디 패킷다이저로부터 입력되는 복수의 TS 패킷에서 PG 스트림을 추출해서 디코드하고, 비 압축의 그래픽스 데이터를 표시시각(PTS)의 타이밍에 PG 플레인에 기록한다.
PG 플레인(37)에는 PG 스트림을 디코드함으로써 얻어진 비 압축의 그래픽스 오브젝트가 저장된다.
IG 디코더(38)는 소스 패킷다이저로부터 입력되는 복수의 TS 패킷에서 IG 스트림을 추출해서 디코드하고, 비 압축의 그래픽스 오브젝트를 표시시각(PTS)의 타이밍에 IG 플레인에 기록한다.
IG 플레인(39)에는 IG 스트림을 디코드함으로써 얻어진 그래픽스 데이터가 저장된다.
프라이머리 오디오 디코더(40)는 프라이머리 오디오 스트림을 디코드한다.
세컨더리 오디오 디코더(41)는 세컨더리 오디오 스트림을 디코드한다.
믹서(42)는 프라이머리 오디오 디코더(40)의 디코드 결과와 세컨더리 오디오 디코더(41)의 디코드 결과를 합성한다.
렌더링 엔진(43)은 Java2D, OPEN-GL과 같은 기반 소프트웨어를 구비하고, BD-J 애플리케이션으로부터의 요구에 따라서 JPEG 데이터/PNG 데이터의 디코드를 하여 이미지나 위젯(widget)을 얻어서 IG 플레인 및 백그라운드 그래픽스 플레인에 기록한다. JPEG 데이터를 디코드함으로써 얻어지는 화상 데이터는 GUI의 벽지가 되는 것이며, 백그라운드 그래픽스 플레인에 기록된다. PNG 데이터를 디코드함으로써 얻어지는 화소 데이터는 IG 플레인에 기록되며, 애니메이션을 수반하는 버튼표시를 실현할 수 있다. 이들 JPEG 데이터/PNG 데이터를 디코드함으로써 얻어진 이미지나 위젯은 BD-J 애플리케이션이 타이틀 선택이나 자막 선택, 음성 선택을 접수하기 위한 메뉴를 표시하거나, 스트림 재생 연동형의 게임을 동작시킬 때 GUI 부품을 구성하기 위해서 사용된다. 그 외, BD-J 애플리케이션이 WWW 사이트를 액세스할 때 그 WWW 사이트의 브라우저 화면을 구성하기 위해서 이용된다.
GFX 플레인(44)은 JPEG, PNG 등의 그래픽스 데이터가 디코드 된 후에 기록되는 플레인 메모리이다.
렌더링 메모리(45)는 렌더링 엔진에 의해서 디코드 되어야 할 PNG 데이터, JPEG 데이터가 판독되는 메모리이다. 이 이미지 메모리에는 BD-J 애플리케이션이 라이브 재생 모드를 실행할 때 캐시 영역(cache area)이 확보된다. 라이브 재생 모드란 네트워크상에 존재하는 WWW 사이트의 브라우저 화면과 BD-ROM에 의한 스트림 재생을 조합하는 것이며, 캐시 영역은 라이브 재생 모드시의 현재의 브라우저 화면 및 직전의 브라우저 화면을 캐시해 두기 위한 캐시 메모리이고, 비 압축의 PNG 데이터 또는 비 압축의 JPEG 데이터로, 상기 브라우저 화면을 구성하는 것이 여기에 저장되게 된다.
이상과 같이 본 실시 예에 의하면, 지금까지의 실시 예에서 설명한 특징을 포함한 기록매체를 BD-ROM로 실현될 수 있으며, 또 지금까지의 실시 예에서 설명한 특징을 포함한 재생장치를 BD-ROM 재생장치로 실현할 수 있다.
(제 10 실시 예)
본 실시 예에서는 레지스터 세트의 상세에 대하여 설명한다.
레지스터 세트는 복수의 플레이어 상태 레지스터, 복수의 플레이어 설정 레지스터로 구성된다. 개개의 플레이어 상태 레지스터, 플레이어 설정 레지스터는 모두 어장(語長)이 32비트의 레지스터이며, 32비트 길이의 레지스터의 각각에는 레지스터 번호가 부여되며, 이 레지스터 번호를 이용하여 액세스해야 할 레지스터가 특정된다.
각 레지스터의 1 어(語, 32비트)를 구성하는 각 비트 데이터의 비트 위치는b0~b31라고 한다. 최상위 비트는 b31, 최하위 비트는 b0라고 불린다. 그리고, 32비트 중, bx비트째의 비트 위치에서 by비트째의 비트 위치까지의 비트 범위는 [bx:by]라는 표기로 표현된다.
소정의 레지스터 번호의 플레이어 설정 레지스터/플레이어 상태 레지스터에 저장되어 있는 32비트 길이의 비트열로서 임의의 비트 범위 [bx:by]인 것의 값은 프로그램이 동작을 할 때의 동작 시스템의 환경 변수(시스템 파라미터 또는 플레이어 변수라 한다)로 취급된다. 재생제어를 하는 프로그램은 시스템 프로퍼티(system property)나 애플리케이션 프로그래밍 인터페이스(API)를 통해서 시스템 파라미터를 취득할 수 있다. 또, 특별히 금지되지 않은 한 이들 플레이어 상태 레지스터, 플레이어 설정 레지스터의 값을 프로그램은 재기록할 수 있다. BD-J 애플리케이션에 대해서는 시스템 파라미터의 취득이나 재기록에 대해서 정당권한이 JAR 아카이브 파일에서의 퍼미션 관리 테이블에 의해서 부여되어 있는 것이 요건이 된다.
플레이어 상태 레지스터는 재생장치의 MPU가 산술연산이나 비트연산을 할 때, 그 피 연산자가 되는 수치를 저장해 두기 위한 하드웨어 자원이며, 광디스크가 장전되었을 때 초기치가 설정되고, 또 현재 플레이아이템의 변경 등, 재생장치의 상태가 변화한 때 그 저장치의 유효성이 판정되는 레지스터이다. 이 저장치로는 현재의 타이틀번호, 현재의 플레이리스트 번호, 현재의 플레이아이템 번호, 현재의 스트림 번호, 현재의 챕터 번호 등이 있다. 광디스크의 장전시에 초기치가 저장되므로 이 저장치는 일시적인 것이며, 광디스크가 이젝트 되거나 또는 재생장치의 전원이 끊어지면 이 저장치는 유효성을 잃는다.
플레이어 설정 레지스터는 전원 대책이 시행되어 있는 점이 플레이어 상태 레지스터와 다르다. 전원 대책이 시행되어 있으므로, 재생장치의 전원 차단시에 그 저장치가 불휘발성 메모리에 저장되고, 재생장치의 전원 투입시에 그 저장치가 복귀된다. 재생장치의 제조주체가 재생장치의 출하시에 정한 재생장치의 각종 컨피규레이션(configuration)이나, 사용자가 셋 업 순서에 따라서 설정한 각종 컨피규레이션, 그리고 재생 장치가 TV 시스템이나 스테레오, 앰프 등의 홈시어터 시스템의 기기와 접속된 때에 접속 상대가 되는 기기와의 네고시에이션에 의해 판명한 상대 측 기기의 케퍼빌리티(capability)가 플레이어 설정 레지스터로 설정된다.
도 66은 레지스터 세트(10)의 내부 구성과 재생제어엔진(7b)을 묘사한 도면이다.
본 도면의 좌측에는 레지스터 세트(10)의 내부 구성을 나타내고 있다. 우측에는 재생 제어 엔진(7b)의 내부 구성을 나타내고 있다.
각각의 레지스터 번호가 할당된 플레이어 상태 레지스터, 플레이어 설정 레지스터는 어느 것인지를 나타낸다.
PSR1은 오디오 스트림을 위한 스트림 번호 레지스터이며, 현재의 오디오 스트림 번호를 저장한다.
PSR2는 PG 스트림을 위한 스트림 번호 레지스터이며, 현재의 PG 스트림 번호를 저장한다.
PSR4는 1~100의 값으로 설정됨으로써 현재의 타이틀번호를 나타낸다.
PSR5는 1~999의 값으로 설정됨으로써 현재의 챕터 번호를 나타내고, 0xFFFF로 설정됨으로써 재생장치에서 챕터 번호가 무효임을 나타낸다.
PSR6은 0~999의 값으로 설정됨으로써 현재 플레이리스트의 번호를 나타낸다.
PSR7은 0~255의 값으로 설정됨으로써 현재 플레이아이템의 번호를 나타낸다.
PSR8은 0~OxFFFFFFFF의 값으로 설정됨으로써 45KHz의 시간 정밀도를 이용하여 현재의 재생 시점(현재 PTM)을 나타낸다. 이상이 PSR에 대한 설명이다.
PSR10는 IG 스트림을 위한 스트림 번호 레지스터이며, 현재의 IG 스트림 번호를 저장한다. PSR21은 사용자가 입체 시 재생을 실행하는 것을 의도하고 있는지 여부를 나타낸다.
PSR22는 출력 모드치를 나타낸다.
PSR23는 "Display Capability for video"의 설정이다. 이는 재생장치의 접속 상대인 표시장치에 입체 시 재생을 실행하는 능력이 존재하는가 여부를 나타낸다.
PSR24는 "Player Capability for 3D"의 설정이다. 이는 재생장치에 입체 시 재생을 실행하는 능력이 존재하는가 여부를 나타낸다.
한편, 재생제어엔진(7b)의 내부에는 레지스터 세트(10)에서의 PSR4, PSR6, PSR21, PSR23와 관리정보 메모리(9)에서의 현재 플레이리스트 정보의 스트림 선택테이블을 참조하여 현재 플레이리스트에서의 출력모드를 고유하게 정하는 프로시저 실행부(8)를 구비하고 있다. Player Capability for 3D는 재생장치의 3D 재생에 관한 능력 전반을 의미하는 것이므로 "3D-Capability"로 간단하게 표기하는 경우가 있다.
PSR23는 출력 모드를 규정하는 것이며, 그 상태천이의 선택 모델은 도 67에 나타내는 것과 같이 규정되어 있다.
도 67은 출력 모드의 선택 모델의 상태천이를 나타낸다. 이 선택 모델에는 2의 일반적인 상태가 존재한다. 타원은 이 일반적인 상태, 즉, 출력 모드치가 취할 수 있는 값인 "Invalid", "valid"를 모식적으로 묘사한 것이다. Invalid는 출력 모드가 무효이며, Valid는 출력 모드가 유효한 취지를 나타낸다.
일반적인 상태는 상태천이가 일어나지 않는 한 유지된다. 상태천이에는 플레이리스트 재생의 개시, 내비게이션 커멘드나 BD-J 애플리케이션에 의해 요구된 출력 모드 변화, BD-J 타이틀로의 점프가 있다. 상태천이가 발생한 때 출력 모드 프리 레퍼런스를 획득하기 위한 프로시져(procedure)가 실행된다.
도면 중의 화살표 jm1, jm2, jm3, ····, jm12는 상태천이의 트리거가 되는 사상을 모식적으로 나타낸다. 본 도면에서의 상태천이에는 이하의 것이 있다.
「Load a disc」란 BD-ROM이 장전된 상태를 의미한다.
「Start Presentation」란 HDMV 모드에서 플레이리스트의 재생개시(start Playlist playback)를 의미한다. BD-J 모드에서는 BD-J 타이틀로의 분기를 의미한다. 왜냐하면, BD-J 모드에서는 BD-J 타이틀로 분기한 경우 반드시 플레이리스트의 재생이 개시된다고는 할 수 없기 때문이다. 「Jump to BD-J title」는 BD-J 타이틀로의 분기를 의미한다. 구체적으로는 인덱스 테이블에서 BD-J 애플리케이션에 대응된 타이틀(BD-J 타이틀)이 현재 타이틀이 되는 것을 말한다.
「Start Playlist Playback」는 어떠한 플레이리스트를 의미하는 플레이리스트 번호가 PSR로 설정되고, 플레이리스트 정보가 현재 플레이리스트 정보로 메모리에 판독되는 것을 말한다.
「Change Output Mode」란 BD-J 애플리케이션이 API를 콜 함으로써 출력 모드를 변화하는 것을 말한다. 「Terminate presentation」란 HDMV 모드의 경우에는 플레이리스트의 재생이 종료하는 것을 말하고, BD-J 모드의 경우에는 BD-J 타이틀로부터 인덱스 테이블에서 무비 오브젝트에 대응된 타이틀(HDMV 타이틀)로 점프하는 것을 말한다.
디스크가 로드된 때에 출력 모드 상태는 일시적인 상태 "Initialization"로 천이한다. 출력 모드 셀렉션 상태는 일시적으로 "Initialization state"로 천이한 후, invalid state로 천이한다.
Output Mode Selection 상태는 재생 개시(Start Presentation)가 액티브가 될 때까지 Invalid로 유지된다. HDMV 모드에서 "Start Presentation"는 플레이리스트의 재생이 개시된 것을 의미한다. BD-J 모드에서 "Start Presentation"는 BD-J 타이틀의 재생이 개시되어 BD-J 애플리케이션이 어떠한 동작을 개시한 것을 의미한다. 반드시 플레이리스트의 재생이 개시되었음을 의미한다고는 할 수 없다.
Start Presentation가 액티브가 된 때에 출력 모드는 일시적인 상태인"Procedure when playback condition is changed"로 천이한다.
출력 모드는 Procedure when playback condition is changed의 결과에 따라서 Valid로 천이한다. 출력 모드가 유효하고, Start Presentation가 종료하면, 상태는 Invalid로 천이한다.
무비 오브젝트에서의 내비게이션 커멘드는 콘텐츠 공급자가 출력 모드 프리 레퍼런스로 설정하기 위해서 플레이리스트 재생의 개시에 앞서 실행되어야 한다. 무비 오브젝트에서의 내비게이션 커멘드가 실행된 때 이 모델에서는 Invalid가 된다.
도 68은 Initialization의 처리순서를 나타낸다.
스텝 S501은 디스크 언바운드의 BD-J 애플리케이션이 동작 중인지 여부의 판정이며, 스텝 S502는 PSR23에서의 Stereoscopic Display Capability가 "Capability 있음"을 나타내고, Index. Bdmv에서의 Initial_output_mode 정보가 "입체 시 출력 모드"를 나타내는지 여부의 판정이다.
스텝 S501가 Yes이면 스텝 S503에서 현재의 출력 모드를 유지한다. 스텝 S501가 No, 스텝 S502가 Yes이면 스텝 S4에서 PSR22를 입체 시 출력 모드로 설정한다. 스텝 S501이 No, 스텝 S502가 No이면 스텝 S5에서 PSR22에서의 출력 모드를 2D출력 모드로 설정한다.
도 69는 Procedure when playback condition is changed의 처리순서를 나타낸다. 스텝 S511은 PSR22에서의 출력 모드는 2D 출력 모드인지 여부의 판정이며, 스텝 S513는 PSR23에서의 Stereoscopic Display Capability가 "Capability 있음"을 나타내고, 또, 플레이리스트에 확장 스트림 선택테이블이 존재하는가 여부의 판정이다.
스텝 S511가 Yes이면 스텝 S512에서 현재 출력 모드를 변화시키지 않는다. 스텝 S511가 No, 스텝 S513가 Yes라도 현재 출력 모드를 변화시키지 않는다(스텝 S512). 스텝 S511이 No, 스텝 S513가 No이면 현재 출력 모드를 2D 출력 모드로 변화시킨다(스텝 S514).
플레이리스트의 재생을 개시할 때에 유의해야 할 것은 각각의 플레이아이템에서 재생 가능한 PES 스트림이 개개의 플레이아이템에서의 스트림 선택테이블에서 규정되어 있다는 점이다. 따라서, 현재 플레이아이템의 재생을 개시할 때, 먼저 현재 플레이아이템의 스트림 선택테이블에서 재생이 허가되어 있는 PES 스트림 중에서 플레이아이템의 재생에 최적의 것을 선택할 필요가 있다. 이 선택의 순서는 "스트림 선택 프로시저"라 불린다.
이하, 3D 재생 모드 실현을 위한 플레이어 설정 레지스터의 비트 할당에 대하여 설명한다. 3D 재생 모드의 실현을 위해서 이용되고 있는 레지스터는 21번, 22번, 23번, 24번의 레지스터이며, 이들 레지스터에서의 비트 할당을 나타낸 것이 도 70이다. 도 70은 3D 재생 모드 실현을 위한 플레이어 설정 레지스터의 비트 할당을 나타낸다.
동 도면 (a)는 PSR21의 비트 할당을 나타낸다. 본 도면에서 최하위 비트 b0가 출력 모드 프리 레퍼런스이고, 0b로 설정됨으로써 2D 출력모드라는 취지를 나타내며, 1b로 설정됨으로써 입체 시 출력 모드라는 취지를 나타낸다. 내비게이션 커멘드나 BD-J애플리케이션은 이 PSR21의 값을 재기록할 수는 없다.
동 도면 (b)는 PSR22의 비트 할당을 나타낸다.
PSR22에서의 b0는 현재의 출력 모드를 나타낸다. 출력 모드가 변화하면 재생장치에서의 비디오 출력은 대응해서 변화해야 한다. 출력 모드의 값은 선택 모델에 의해서 제어되어야 한다.
동 도면 (c)는 PSR23의 비트 할당을 나타낸다. 본 도면에 나타내는 것과 같이 PSR23에서의 b0는 접속된 TV 시스템에서의 입체 시 표시 케퍼빌리티를 나타낸다. 구체적으로는 "0"으로 설정됨으로써 접속된 TV 시스템이 입체 시 재생 인케이퍼블(incapable)이라는 취지를 나타내고, "1"로 설정됨으로써 입체 시 재생 케이퍼블(capable)임을 나타낸다.
표시장치와 네고시에이션을 실시하는 어떠한 인터페이스가 재생장치에서 지원되고 있는 경우에는 재생이 개시하기 전에 이들 값은 자동으로 설정된다. 이들 값이 자동으로 설정되지 않는 경우에는 사용자에 의해서 설정된다.
동 도면 (d)는 PSR24의 비트 할당을 나타낸다. 본 도면에 나타내는 것과 같이, PSR24에서의 b0는 재생장치에서의 입체 시 표시 케퍼빌리티를 나타낸다. 입체 시 표시 케퍼빌리티는 0으로 설정됨으로써 입체 시 재생타입이 인케이퍼블이라는 취지를 나타내고, 1로 설정됨으로써 케이퍼블임을 나타낸다.
이상과 같이 본 실시 예에 의하면, 재생장치의 상태 변화나 사용자로부터의 스트림 전환 요구가 있었다고 하더라도 출력 모드의 유효성을 유지할 수 있다.
(제 11 실시 예)
본 실시 예는 메모리나 미들웨어에 포함된 3D 메타데이터에 의거한 플레인 시프트를 실행하는 개량에 관한 것이다.
도 71은 플레인 합성부의 내부 구성을 나타낸다. 메모리 내에 포함된 3D 메타데이터에 의거하여 플레인에 저장되어 있는 비 압축 픽쳐 데이터, 그래픽스 데이터를 크로핑 하는 크로핑부(61a,b,c)와, 프로그램 API에 의거하여 플레인에 저장되어 있는 비 압축 그래픽스 데이터를 크로핑하는 크로핑부(61d)와, 출력 내용을 레프트 뷰 비디오 플레인과, 라이트 뷰 비디오 플레인으로 전환하는 스위치(62)와, 플레인 끼리의 합성을 하는 가산부(63, 64, 65, 66)로 구성된다.
플레인 메모리에는 레프트 뷰 비디오 플레인, 라이트 뷰 비디오 플레인, 세컨더리 비디오 플레인, IG 플레인, PG 플레인, GFX 플레인이 있고, 이들은 레프트 뷰 비디오 플레인, 라이트 뷰 비디오 플레인, 세컨더리 비디오 플레인, IG 플레인, PG 플레인, GFX 플레인의 순으로 배열되어 있다. 레프트 뷰 비디오 플레인과 라이트 뷰 비디오 플레인에는 시스템 타깃 디코더(4)에서 PTS의 타이밍에 영상 데이터가 기록되어 있다. 플레인 합성부(5b)는 레프트 뷰 비디오 플레인과 라이트 뷰 비디오 플레인 중 PTS의 타이밍에 영상 데이터가 기록된 쪽의 플레인을 선택하고, 세컨더리 비디오 플레인, PG 플레인, IG 플레인과의 중첩처리에 전송된다.
이상과 같이 본 실시 예에 의하면, 메모리나 미들웨어에 포함된 오프셋에 의거하여 플레인 시프트를 실행할 수 있다.
(제 12 실시 예)
본 실시 예에서는 B-D 프레젠테이션 모드로 3D-Depth 방식이 허용되어 있는 경우에서 2D용, 3D용의 콘텐츠가 혼재하는 데이터와 재생장치를 어떻게 구성할지를 설명한다.
전제로 3D 디스크(2D 호환)는 2D 재생장치에서 재생 가능한 것이다.
3D 디스크(2D 호환)에서 2D 재생에 관련하는 내비게이션 데이터 구조·스트림 및 파일 배치 조건은 2D 디스크에서의 규정을 만족한다. 따라서 2D 재생장치에서 2D부분만을 재생 가능하게 한다.
그리고 3D 재생장치에서도 2D 재생으로 전환한 경우에는 2D 재생용의 콘텐츠가 표시된다.
3D 디스크(3D 전용)는 파일 배치 조건은 3D에 최적화되어 있으며, 2D 재생장치로는 재생할 수 없다. 이는, 3D-LR 스트림을 1TS로 다중화하여 2D 재생장치에서의 대응 상한 이상으로 3D용으로 TS 레이트를 상승시키기 때문이다. 2D 재생장치로 재생했을 경우에는 프로그램에서 경고화면으로 천이하고, 3D 전용의 재생에는 천이하지 않는다. 그러나 이 경우에도 퍼스트 플레이 타이틀이나 특정 타이틀만 2D 재생장치에 대응할 필요가 있다.
2D 표시로 전환한 경우에는 베이스 뷰 영상만 표시하는 것으로 하며, 2D용의 스트림은 없다.
도 72는 2D용, 3D용의 콘텐츠가 혼재하는 데이터 및 재생장치에서의 그 재생 방법을 나타낸다.
도 72 (a)는 각종 디스크에 기록된 콘텐츠의 구성과 각종 재생장치로 재생되는 재생방법의 관계를 표 형식으로 나타내고 있다. 동 도면 (a)의 가로의 난은 2D 디스크, 2D 호환의 3D 디스크, 3D 전용의 3D 디스크를 나타낸다. 가로의 난은 2D 재생장치, 3D 재생장치를 나타낸다. 3D 대응 재생장치란 2D 재생, 3D 재생의 어느 것으로도 실시할 수 있는 재생장치이다. 2D 콘텐츠 밖에 기록되지 않은 디스크는 3D 대응의 재생장치로 재생해도 2D 콘텐츠 밖에 표시되지 않는다.
동 도면의 표에 나타낸 대응관계에 의하면, 디스크에 3D 전용의 콘텐츠밖에 포함되지 않는 경우 3D 콘텐츠에 대응하고 있지 않은 2D 재생장치에서는 재생할 수 없다. 이와 같은 디스크가 있었다고 하더라도 디스크의 형상은 2D, 3D의 것과 구별할 수 없으므로, 사용자가 잘못해서 3D 디스크를 2D 재생장치에서 재생을 시도해도 아무것도 영상 및 음성이 재생되지 않으며, 무엇이 일어나고 있는지조차 모르는 경우가 발생할 수 있다.
이러한 케이스를 방지하기 위해서, 3D 콘텐츠가 기록된 디스크라고 하더라도 2D 재생장치에서도 재생할 수 있도록 2D 콘텐츠, 3D 콘텐츠를 포함하는 하이브리드 디스크를 생각한다. 하이브리드 디스크는 3D 재생장치에서는 3D 콘텐츠가 재생되고, 3D에 대응하지 않는 2D 재생장치에서는 2D 콘텐츠가 재생된다.
단, 2D용의 AV 스트림과 3D용의 AV 스트림을 각각 디스크에 기록하면 중복하는 내용의 데이터가 용장(冗長)으로 기록되게 되어 데이터 용량이 여분으로 필요하게 된다. 그래서 2D용 AV 스트림 3D용 AV 스트림 중 공통부분을 공유화하여, 데이터사이즈를 필요 충분하게 억제하면서 2D 재생장치에서도 3D 재생장치에서도 적절한 데이터가 재생되는 방법이 필요하다.
이하는 이들 데이터를 관리하는 관리정보에 대하여 설명한다. 도 72 (b)는 인덱스 테이블의 내부 구성을 나타낸다. 본 도면에서 퍼스트 플레이 타이틀에 대응하는 엔트리에는 2D 재생장치/3D 재생장치에서 공통으로 동작하는 프로그램을 기술해 둔다. 이와 같이 함으로써 2D 재생장치에 장전된 경우의 동작을 보장할 수 있다.
도 73은 2D/3D의 전환을 나타내는 상태 천이도이다.
동 도면 좌측은 비디오에서의 상태천이를 나타낸다. 본 도면은 상태 L, 상태 L+R, 상태 L+Depth라는 3개의 상태로 구성된다.
동그라미 기호 1의 천이는 출력단의 스위치 전환이 발생하는 것에 의한 상태천이를 나타낸다. 동그라미 기호 2의 천이에서는 출력단의 스위치 전환이 발생하는 것에 의한 상태천이를 나타낸다.
동그라미 기호 3의 천이는 디코드하는 스트림이 전환되므로 디코더 전환이 발생하는 것에 의한 상태천이를 나타낸다. 심리스 전환은 보증되지 않는다.
동 도면 (b)는 Graphics : 자막 그래픽스, 렌더링 자막 그래픽스, 메뉴 그래픽스에서의 상태천이를 나타낸다.
동그라미 기호 4의 천이는 플레인의 오프셋 전환에 의한 상태천이를 나타낸다.
동그라미 기호 5의 천이는 출력단의 스위치 변환에 의한 상태천이를 나타낸다.
동그라미 기호 6의 천이는 디코드하는 스트림의 전환에 의한 상태천이를 나타낸다. 심리스 접속은 보증되지 않는다. 프리로드 스트림의 전환은 AV가 중단된다.
동그라미 기호 7의 천이에서는 디코드하는 스트림의 전환에 의한 상태천이를 나타낸다. 심리스 접속은 보증되지 않는다.
동그라미 기호 8의 천이는 L로부터 LR의 전환, LR에서 L로의 전환에 의한 상태천이를 나타낸다. 디코드하는 스트림의 전환은 수반하지 않는다.
(제 13 실시 예)
본 실시 예는 3D 재생에 필요한 시스템 파라미터에 대하여 설명한다.
도 74에서부터 도 79까지는 3D 재생에 필요한 시스템 파라미터에 관한 설명이다.
도 74는 디펜던트 뷰의 케퍼빌리티, 3D-Depth 뷰의 케퍼빌리티를 나타낸다.
도 75는 3D 재생능력을 더 상세하게 식별하기 위한 시스템 파라미터의 확장을 나타낸다. 구체적으로 말하면, 본 도면의 비트 할당은 [b22:b16]가 1plane+Offset 방식, [b14:b8]가 3D-Depth 방식, [b6:b0]가 3D-LR방식의 각각에 할당되어 있으며, 이들 비트 열에서의 각 비트가 배경화상 플레인, 프라이머리 비디오 플레인, 세컨더리 비디오 플레인, 텍스트 자막의 플레인, PG 플레인, IG 플레인, Java 그래픽스의 플레인의 각각에 대하여 케퍼빌리티의 유무를 나타낼 수 있다.
도 76은 재생장치가 3D용으로 확장된 데이터구조에 대응하고 있는가 여부를 식별하는 데이터베이스 식별정보를 나타낸다. 이 데이터베이스 정보는 재생장치가 대응할 수 있는 애플리케이션 포맷의 버전 수를 포함하고, 플레이어 프로파일 정보가 된다. 프로그램에 의해 재생하는 스트림을 선택할 때 3D용으로 확장된 관리 데이터를 취급할 수 있는지 여부를 판정하기 위해서 이용하는 것도 가능하다.
도 77은 사용자의 표시형식의 기호를 설정하는 시스템 파라미터이며, 1개의 디스크에 LR방식이나 Depth 방식 등의 데이터가 포함될 때 디스크 상의 프로그램은 이 시스템 파라미터의 값을 참고로 하여 사용자에게 있던 데이터를 포함하는 PlayList를 선택하여 재생을 개시할 수 있다. 본 도면에서 3D Presentation Prefernece는 00b로 설정됨으로써 2D presentation mode를 의미한다. 01b로 설정됨으로써 3D-LR presentation mode를 의미하고, 10b로 설정됨으로써 3D-Depth presentationmode를 의미한다.
도 78은 현재 재생 중의 표시형식을 나타내는 시스템 파라미터이며, 이 시스템 파라미터를 참조함으로써 프로그램은 메뉴 그래픽스 등을 2D로 표시하면 좋은지, LR방식으로 표시하면 좋은지 등을 판단하는 것이 가능해 진다.
본 도면에서 3D Presentation Type은 00b로 설정됨으로써 2D presentation mode를 의미한다. 01b로 설정됨으로써 3D-LR presentationmode를 의미하고, 10b로 설정됨으로써 3D-Depth presentation mode를 의미한다.
또, b31에서 b16까지의 각 비트는 배경화상의 플레인 메모리, 프라이머리 비디오의 플레인 메모리, 세컨더리 비디오의 플레인 메모리, 텍스트 자막의 플레인 메모리, Java Graphics의 플레인 메모리의 각각에 할당되어 있으며, 3D방식의 가부를 각 방식별로 표시할 수도 있다.
오프셋 값의 보정에 관하여 설명한다. 디스플레이의 크기에 의해 적절한 오프셋 값은 다른 경우가 있다. 따라서, 재생장치는 디스플레이에 따라서 적절한 오프셋 값을 설정해 둠으로써 자막 그래픽스나 메뉴 그래픽스를 오프셋 방식으로 표시할 때 이 시스템 파라미터의 값을 가감하여 더 적절한 표시로 할 수 있게 된다. 도 79는 3D오프셋의 보정 값을 저장해 두기 위한 비트 할당을 나타낸다. [b15]는 Offset Type을 나타내고, [b14]는 Direction를 나타낸다. [b13, b8]는 3D offset for Right, 3D offset for Left를 나타낸다. Offset Type은 값 0으로 설정됨으로써 즉치 지정을 나타내고, 그래픽스 스트림에서 규정되어 있는 오프셋 값은 무효임을 나타낸다. 값 1로 설정됨으로써 그래픽스 스트림에 대하여 설정되어 있는 오프셋 값으로의 보정 값이라는 취지를 나타낸다. Direction은 값 0으로 마이너스, 값 1로 플러스 방향임을 나타낸다. 3D offset for Right는 라이트 뷰 시의 오프셋, 3D offset for Left는 레프트 뷰 시의 오프셋을 나타낸다.
이 시스템 파라미터의 값은 디스크 상의 프로그램에서 부여하는 것도 가능하며, 그 경우에는 신에 따라서 그래픽스의 심도를 변화시키기 위해서 이용할 수 있다.
(2D/3D 전환 사용자 오퍼레이션)
2D/3D 전환 사용자 오퍼레이션 API에 대해서 설명한다. 도 80은 2D나 3D의 표시형식을 전환하는 사용자 오퍼레이션 API를 나타낸다. 동 도면 (a)의 API는 어느 방식으로 전환하는지를 식별하는 인수를 가지고 있다. 이 API 사용자 이벤트 처리부와 미들웨어 사이의 API이다. 이 API에서의 서식은 Change3DPresentationType(3D Presentation Type)이다. 인수 3D Presentation Type로는 00: 2D, 01: 3D-LR, 10: 3D-Depth의 어느 것을 지정할 수 있다.
Change3DPresentationTypeAPI의 이용을 허가할지 여부는 사용자 오퍼레이션 마스크 테이블에 포함할 수 있다. 도 80 (b)는 사용자 오퍼레이션 마스크 테이블(UO_mask_table)에 Change3DPresentationType을 기술하는 경우의 소스 코드의 기술 예를 나타낸다.
(3D 오프셋의 변경)
3D 오프셋의 변경 커멘드에 대하여 설명한다.
도 81은 Change 3D Offset 모드 커멘드의 오피코드(operation code), 오퍼랜드(operand)를 나타낸다. 동 도면 상단은 이들 오퍼랜드, 오피코드의 비트 할당을 나타낸다. 당해 커멘드에는 2개의 오퍼랜드가 있고, 이들 오퍼랜드에는 라이트 뷰를 위한 오프셋, 레프트 뷰를 위한 오프셋을 지정할 수 있다.
(2D/3D 전환 커멘드)
동 도면 하단은 2D/3D 전환 커멘드를 나타낸다. 이 커멘드의 오퍼랜드에는 2D, 1plane+Offset, 3D-LR, 3D-Depth 중 어느 하나를 지정할 수 있다.
(3D에서의 재생 모드의 전환)
3D에서의 재생 모드의 전환을 행하기 위한 커멘드에 대하여 설명한다. 이 커멘드에 의해 상기 시스템 파라미터의 값을 변경하여 표시형식을 전환할 수 있다.
도 82는 Change3DPresentationType 커멘드를 나타낸다. 동 도면 상단은 비트 할당을 나타낸다. 이 커멘드는 b63~b32에서의 3D Display Type의 재생 모드에 재생 모드를 변경시키는 취지를 나타낸다.
도 82의 하단은 Graphics Offset치 설정 커멘드의 포맷을 나타낸다. 이 커멘드는 어느 것의 PSR에 3D 재생타입을 설정한다고 하는 것이며(Set 3D Presentation Type to PSRxx), 오퍼랜드에는 전환 후의 모드로 2D, 1plane+Offset 모드, 3D-LR, 3D-Depth 중 어느 하나를 지정할 수 있다.
(제 14 실시 예)
본 실시 예에서는 2D용 AV 스트림 3D용 AV 스트림 중 공통 부분을 공유화하여 데이터 사이즈를 필요 충분하게 억제하는 방법에 대하여 설명한다.
도 83은 3 모드를 위한 TS를 어떻게 파일에 저장하는가를 나타낸다. LR방식에 필요한 데이터블록과 Depth 방식에 필요한 데이터블록을 효율 좋게 디스크로부터 판독하기 위해서 레프트 뷰 용의 데이터블록(L)과, 라이트 뷰 용의 데이터블록(R)과, Depth용의 데이터블록(D)을 교호로 디스크 상에 기록하고, 각각 마다 파일 시스템으로부터 참조함으로써 인터리브 배치된 AV 클립의 3개의 스트림 파일을 기록매체상에서 정의한다.
2D 재생용의 플레이리스트(2DPlayList)는 레프트 뷰 용의 데이터블록(L)이 포함되는 파일을 참조하고, LR방식용의 플레이리스트(3D-LRPlayList)는 레프트 뷰 용의 데이터블록(L)이 포함되는 AV 클립과 라이트 뷰 용의 데이터블록(R)이 포함되는 AV 클립을 참조한다.
디스크 상에는 라이트 뷰 용의 데이터블록(R), 레프트 뷰 용의 데이터블록(L), Depth의 데이터블록(D)을 인터리브로 기록하는 경우의 기록 방식에 대해서 설명한다.
이들 데이터블록이 인터리브 배치됨으로써 입체 시 인터리브드 스트림 파일을 구성하고 있다. 그리고 이 입체 시 인터리브드 스트림 파일은 3개의 파일로부터의 크로스 레퍼런스(cross-reference)의 대상이 된다. 1번째의 파일은 레프트 뷰 용의 데이터블록(L)만을 수록내용으로 하는 클립 1(2D/L)의 스트림 파일이다. 2번째는 라이트 뷰 용의 데이터블록(R)만을 수록내용으로 하는 클립 2 (R)의 스트림 파일이다. 3번째는 Depth용의 데이터블록(D)만을 수록내용으로 하는 클립 3(D)의 스트림 파일이다. 이러한 크로스 레퍼런스를 실현하면 재생장치가 3개의 재생 모드의 각각에 설정된 때 자신의 재생 모드에 따른 스트림 파일만을 판독하면 좋다.
도 83 (a)의 우측의 최상단은 R, L, D, R, L, D라는 배열로 레프트 뷰 용의 데이터블록(L), 라이트 뷰 용의 데이터블록(R), Depth용의 데이터블록(D)의 데이터블록이 인터리브 배치된 입체 시 인터리브드 스트림 파일이 존재한다.
이 아래에 클립 1(2D/L), 클립 2 (R), 클립 3(D)을 저장한 3개의 스트림 파일을 나타낸다. 크로스 레퍼런스에 의해서, 클립 1(2D/L)은 레프트 뷰 용의 데이터블록(L)만, 클립 2 (R)는 라이트 뷰 용의 데이터블록(R)만, 클립 3(d)는 Depth용의 데이터블록(D)만을 저장하고 있음을 알 수 있다. 좌측은 2D, 3D-LR모드, 3D-Depth 모드라고 하는 3개의 모드를 나타낸다. 그 사이의 선은 각 모드에서 어느 AV 클립을 사용한다고 하는 사용 관계를 나타낸다.
이 사용 관계에 의하면, AV 클립 1은 2D, 3D-LR모드, 3D-Depth 모드의 어느 것에서도 참조 가능하고, AV 클립 2는 3D-LR모드에서만 참조 가능하며, AV 클립 3은 3D-Depth 모드에서만 참조 가능함을 알 수 있다.
크로스 레퍼런스의 다른 방법으로는 3D-LR모드에서 필요한 레프트 뷰 용의 데이터블록(L), 라이트 뷰 용의 데이터블록(R)을 1개의 AV 클립의 스트림 파일로 패키지하고, 3D-Depth 모드에서 필요한 레프트 뷰 용의 데이터블록(L), Depth용의 데이터블록(D)을 1개의 AV 클립의 스트림 파일로 패키지 하는 것을 생각할 수 있다.
도 83 (b)의 우측은 클립 1(2D/L), 클립 2 (LR), 클립 3(LD)을 저장한 3개의 스트림 파일을 나타낸다. 크로스 레퍼런스에 의해서, 클립 1(2D/L)은 레프트 뷰 용의 데이터블록(L)만, 클립 2 (LR)는 레프트 뷰 용의 데이터블록(L), 라이트 뷰 용의 데이터블록(R)의 세트, 클립 3(LD)은 레프트 뷰 용의 데이터블록(L), Depth용의 데이터블록(D)의 세트를 저장하고 있음을 알 수 있다.
도 83 (b)의 좌측은 2D, 3D-LR방식, 3D-Depth 방식이라는 3개의 모드를 나타낸다. 그 사이의 선은 각 모드에서 어느 스트림 파일의 AV 클립을 사용한다고 하는 사용 관계를 나타낸다.
이 사용 관계에 의하면, AV 클립 1은 2D 모드에서만 참조 가능하고, AV 클립 2는 3D-LR모드에서만 참조 가능하며, AV 클립 3은 3D-Depth 모드에서만 참조 가능함을 알 수 있다.
레프트 뷰 용의 데이터블록(L), 라이트 뷰 용의 데이터블록(R), Depth용의 데이터블록(D)을 1TS로 다중화하여, 3개의 재생 모드에 대응한 플레이리스트에서 참조한다고 하는 크로스 레퍼런스의 방법도 생각할 수 있다.
도 83 (c)의 우측에 레프트 뷰 용의 데이터블록(L), 라이트 뷰 용의 데이터 블록(R), Depth용의 데이터블록(D)이 다중화된 TS를 나타낸다. 좌측에 2D 플레이리스트, 3D(LR) 플레이리스트, 3D(Depth) 플레이리스트라는 3개의 플레이리스트를 나타낸다. 그 사이의 선은 각 모드에서 어느 AV 클립을 사용한다고 하는 사용 관계를 나타낸다.
어느 방법으로 데이터를 기록한 경우에도 스트림 식별자를 미리 할당해 둠으로써 각각의 데이터를 인출하는 효율을 간단화 할 수 있다.
도 84는 TS 레벨에서의 다중화를 표 형식으로 나타낸다. 가로의 난은 2D/L용의 AV 클립(Clip1(2D/L)), R용의 AV 클립(Clip2 (R)), Depth용의 AV 클립(Clip3(D)), 1 Clip의 각각을 나타낸다. 세로의 란은 프라이머리 비디오 스트림, 프라이머리 오디오 스트림, PG, IG, 세컨더리 비디오 스트림, 세컨더리 오디오 스트림의 각각을 나타낸다. 본 도면에서 클립 1, 2, 3은 인터리브 배치된다. 이들 중 2D 재생장치는 AV 클립 1만을 재생하고, 3D-LR 재생장치는 AV 클립 1, 2를 재생한다. 3D-Depth 재생장치는 AV 클립 1, 3을 재생한다.
(제 15 실시 예)
제 1 실시 예에서 설명한 3D-LR모드, 3D-Depth 모드, 1plane+Offset모드 중 어느 하나로 설정된 경우, 재생장치에서의 스트림 번호에 의해서 어느 패킷 식별자의 ES가 재생에 제공되는가에 대하여 설명한다.
전제로 2D 그래픽스 스트림, LR의 그래픽스 스트림, Depth용의 그래픽스 스트림의 패킷 식별자는 +20/40/60의 범위로 나누어서 구분하는 것으로 한다. 단, 어느 하나의 PID치라도 스트림 선택테이블에서 PID를 직접 지정할 수 있게 한다.
PG 스트림을 일 예로 취하면, 2D PG 스트림과 입체 시 PG 스트림의 대응을 취하기 위해 다중화된 스트림의 PID의 관련부여는 2D PG 스트림의 패킷 식별자에 0x20/0x40/0x60를 가산함으로써 입체 시 PG 스트림의 패킷 식별자를 도출하는 등의 룰 부여를 한다.
도 85는 TS 패킷의 PID 할당을 나타낸다. AV 클립에는 이들 패킷 식별자가 할당된 TS 패킷이 존재한다.
도 86은 프라이머리 비디오 스트림, 프라이머리 오디오 스트림을 나타낸다.
동 도면 (a)의 점선 틀은 각 출력 모드에서 어느 패킷 식별자의 TS 패킷이 다중분리의 대상이 되는가를 나타낸다. 2D모드에서는 Base View를 구성하는 TS 패킷이 다중분리의 대상이 되고, 3D-LR모드에서는 Base View+Dependent View를 구성하는 TS 패킷이 다중분리의 대상이 되며, 3D-Depth모드에서는 Base View+심도 정보를 구성하는 TS 패킷이 다중분리의 대상으로 되어 있음을 알 수 있다. 구체적으로 말하면, 재생장치가 2D모드인 경우, 패킷 식별자=0x1101의 TS 패킷이 다중분리의 대상이 된다.
3D-LR모드인 경우 패킷 식별자=0x1101의 TS 패킷과 패킷 식별자=0x1012의 TS 패킷이 다중분리의 대상이 된다.
3D-Depth 모드인 경우 패킷 식별자=0x1101의 TS 패킷과 심도정보를 구성하는 패킷 식별자=0x1013의 TS 패킷이 다중분리의 대상이 된다.
동 도면 (b)의 표는 세컨더리 비디오 스트림과의 조합의 가부를 나타낸다. 본 표에 의하면, 베이스 뷰 비디오 스트림이 MPEG4-AVC Base View이고, 디펜던트 뷰 비디오 스트림이 MPEG4-AVC Dependent View인 경우 세컨더리 비디오 스트림과의 공존이 불가가 된다. 베이스 뷰 비디오 스트림이 MPEG4-AVC이고, 디펜던트 뷰 비디오 스트림이 MPEG4-AVC인 경우도 세컨더리 비디오 스트림과의 공존이 불가가 된다. VC-1도 마찬가지이다.
베이스 뷰 비디오 스트림, 디펜던트 뷰 비디오 스트림의 부호화방식이 MPEG2 Video인 경우 세컨더리 비디오 스트림과의 공존은 불가가 된다.
도 86 (c)는 스트림 번호=1, 2, 3이 할당되는 프라이머리 오디오 스트림의 내부 구성을 나타낸다. 기본적으로는 2D모드, 3D모드를 통해서 오디오 스트림은 공통이 된다. 점선 틀은 3개의 모드의 각각에서 어느 TS 패킷이 다중분리의 대상이 되는가를 나타낸다. 본 도면에서 패킷 식별자=0x1101의 오디오 스트림은 채널 확장된 스트림인 것으로 한다.
2D/3D 재생시에 오디오 스트림의 스트림 번호가 값=1로 설정되면 패킷 식별자=0x1100의 TS 패킷이 다중분리의 대상이 된다.
2D/3D 재생시에 오디오 스트림의 스트림 번호가 값=2로 설정되면 패킷 식별자=0x1101의 TS 패킷이 다중분리의 대상이 된다.
2D 재생시에 오디오 스트림의 스트림 번호가 값=3으로 설정되면 패킷 식별자=0x1102의 TS 패킷이 다중분리의 대상이 된다.
도 87은 PG 스트림, IG 스트림, 텍스트 자막 스트림을 구성하는 TS 패킷을 나타낸다.
도 87(a)는 스트림 번호=1, 스트림 번호=2의 PG 스트림을 나타낸다. 2D 자막과 3D 자막은 1 대 1로 대응한다.
도면 중의 점선 틀은 2D 재생 모드, 3D-3D-LR모드, 3D-3D-Depth 모드와 같은 3개의 모드의 각각에서 어느 TS 패킷이 다중분리의 대상이 되는가를 나타낸다.
3D-Depth 모드에서 PG 스트림의 스트림 번호가 값=1로 설정되면 패킷 식별자=0x1260의 TS 패킷에 의해서 구성되는 PG 스트림이 재생되게 된다.
2D모드, 1plane+Offset 모드, 3D-LR모드에서 PG 스트림의 스트림 번호가 값=1로 설정되면 패킷 식별자=0x1200의 TS 패킷이 다중분리의 대상이 된다.
3D-Depth 모드에서 PG 스트림의 스트림 번호가 값=2로 설정되면 패킷 식별자=0x1261의 TS 패킷에 의해서 구성되는 PG 스트림이 다중분리의 대상이 된다.
2D,1plane+Offset 모드에서 PG 스트림의 스트림 번호가 값=2로 설정되면 패킷 식별자=0x1201의 TS 패킷에 의해서 구성되는 PG 스트림이 다중분리의 대상이 된다.
3D-LR모드에서 PG 스트림의 스트림 번호가 값=2로 설정되면 패킷 식별자 =0x1221,0x1241의 TS 패킷에 의해서 구성되는 PG 스트림이 다중분리의 대상이 된다.
도 87 (b)는 텍스트 자막 스트림을 나타낸다.
2D모드에서 텍스트 자막 스트림의 스트림 번호가 값=1로 설정된 경우 0x1800의 TS 패킷이 다중분리의 대상이 된다. 2D모드에서 텍스트 자막 스트림의 스트림 번호가 값=2로 설정된 경우에도 0x1800의 TS 패킷이 다중분리의 대상이 된다.
1plane+Offset(3D-LR) 모드, 3D-Depth 모드에서 텍스트 자막 스트림의 스트림 번호가 값=1로 설정된 경우 0x1801의 TS 패킷이 다중분리의 대상이 된다. 텍스트 자막 스트림의 스트림 번호가 값=2로 설정된 경우에도 0x1801의 TS 패킷이 다중분리의 대상이 된다.
도 87(c)는 IG 스트림을 나타낸다.
3D-Depth 모드에서 IG 스트림의 스트림 번호가 스트림 번호=1로 설정된 경우 0x1460의 TS 패킷이 다중분리의 대상이 된다. IG 스트림의 스트림 번호가 스트림 번호=2로 설정된 경우 0x1461의 TS 패킷이 다중분리의 대상이 된다.
2D,1plane+Offset 모드에서 IG 스트림의 스트림 번호가 스트림 번호=1로 설정된 경우 0x1400의 TS 패킷이 다중분리의 대상이 된다. IG 스트림의 스트림 번호가 스트림 번호=2로 설정된 경우 0x1401의 TS 패킷이 다중분리의 대상이 된다.
3D-LR(2Dec) 모드에서 IG 스트림의 스트림 번호가 스트림 번호=1로 설정된 경우 0x1400의 TS 패킷이 다중분리의 대상이 된다. IG 스트림의 스트림 번호가 스트림 번호=2로 설정된 경우 0x1421의 TS 패킷, 0x1441의 TS 패킷이 다중분리의 대상이 된다.
도 88은 세컨더리 비디오 스트림, 세컨더리 오디오 스트림을 구성하는 TS 패킷을 나타낸다.
도 88 (a)는 세컨더리 비디오 스트림을 나타낸다.
3D-LR모드에서 스트림 번호가 값=1로 설정된 경우 라이트 뷰 용의 0x1B20의 TS 패킷, 레프트 뷰 용의 0x1B00의 TS 패킷이 다중분리의 대상이 된다.
2D모드에서 스트림 번호가 값=1로 설정된 경우 레프트 뷰 용의 0x1B00의 TS 패킷이 다중분리의 대상이 된다.
1plane+Offset 모드에서 스트림 번호가 값=1로 설정된 경우 레프트 뷰 용의 0x1B00, Offset 정보가 다중분리의 대상이 된다.
3D-Depth 모드에서 스트림 번호가 값=1로 설정된 경우 레프트 뷰 용의 0x1B00, Depth 정보의 0x1B40의 TS 패킷이 다중분리의 대상이 된다.
스트림 번호가 값=2로 설정된 경우 모드의 여하를 불문하고 레프트 뷰 용의 0x1B00가 다중분리의 대상이 된다.
프라이머리 비디오 스트림이 3D 표시형식일 때 세컨더리 비디오 스트림은 재생장치의 디코드 성능과 프라이머리 비디오 스트림의 표시형식에 맞춰서 2D 재생 모드, 1plane+Offset 모드, 3D-LR모드, 3D-Depth모드를 선택할 수 있다.
프라이머리 오디오 스트림과 믹싱하여 출력하는 케이스에 대하여 설명한다.
세컨더리 오디오 스트림도 프라이머리 오디오 스트림과 마찬가지로 2D/3D에서 동일한 것을 사용할 수도 있고, 나누는 것도 가능하다. 나누는 경우에는 확장 스트림을 설정하거나 또는 스트림을 나누어도 좋다.
도 88 (b)는 세컨더리 오디오 스트림을 나타낸다.
2D 재생 모드에서 스트림 번호=1로 설정된 경우 0x1100의 TS 패킷이 다중분리의 대상이 된다. 3D 재생 모드에서도 0x1100의 TS 패킷이 다중분리의 대상이 된다.
2D 재생 모드, 3D 재생 모드에서 스트림 번호=2로 설정된 경우 0x1101의 TS 패킷이 다중분리의 대상이 된다.
2D 재생 모드에서 스트림 번호=3으로 설정된 경우 0x1102의 TS 패킷이 다중분리의 대상이 된다. 3D 재생 모드에서 스트림 번호=3으로 설정된 경우 0x1103의 TS 패킷이 다중분리의 대상이 된다.
이상이 개별의 스트림에 관한 2D/3D 표시방식에 따른 관리방법의 설명이다.
(제 16 실시 예)
본 실시 예에서는 접속 상태 정보에 의한 접속 상태에 대한 개량에 관한 것이다.
접속 상태 정보는 대응하는 플레이아이템이 현재 플레이아이템의 플레이아이템 정보가 된 때에 그 직전의 플레이아이템과 현재 플레이아이템의 접속이 어떤 접속 타입인지를 나타낸다. 여기서 플레이아이템은 In_Time, Out_Time이 설정되어 있는 STC 시퀀스와 그 STC 시퀀스의 모체가 되는 ATC 시퀀스에 의해서 구성된다. ATC 시퀀스의 접속이 연속하고 있는지 불연속인지, STC 시퀀스의 접속이 연속하고 있는지 불연속인지에 의해서 이 플레이아이템과 직전의 플레이아이템의 접속형태는 이하의 3개의 형태로 분류된다.
1번째는 ATC 시퀀스 및 STC 시퀀스가 연속하지 않고, 심리스 재생을 보장할 수 없는 접속형태이며, Connection_Condition=1로 불린다.
2번째는 ATC 시퀀스가 연속하지 않고, STC 시퀀스에 클린 브레이크가 존재하는 접속형태이며, Connection_Condition=5로 불린다. 클린 브레이크를 수반하는 접속형태에서는 연속 재생되는 2개의 비디오 스트림 중 접속점 직후에 위치하는 비디오 스트림에서의 최초의 비디오 프레젠테이션 유닛의 개시시각과 접속점 직전에 위치하는 비디오 스트림에서의 최후의 비디오 프레젠테이션 유닛의 종료시각은 시스템 타임 클록 시간 축에서 연속하고 있다. 이에 의해 심리스 접속이 가능하게 된다.
한편으로, ATC 시퀀스의 접속점을 경유하여 연속 재생되는 2개의 오디오 스트림 중 접속점 직후에 위치하는 오디오 스트림의 최초의 오디오 프레젠테이션 유닛과 접속점 직전에 위치하는 오디오 스트림에서의 최후의 오디오 프레젠테이션 유닛 사이에서는 오버랩이 존재한다. 이 오버랩에 대해서는 오디오 출력의 뮤트가 이루어진다.
3번째는 ATC 시퀀스 및 STC 시퀀스가 연속하고 있는 접속형태이며, Connection_Condition=6으로 불린다. 이 접속형태에서 상기 접속을 경유한 2개의 비디오 스트림의 접속점은 GOP의 바운더리와 일치한다.
Connection_Condition=5에서의 심리스 접속은 이하의 과정을 거침으로써 이루어진다.
현재의 ATC 시퀀스와 그 직전의 ATC 시퀀스의 ATC의 차분치(ATC_delta)는 클립정보에 저장되어 있으므로, 직전의 플레이아이템을 구성하는 ATC_Sequence를 처리하기 위한 클록 카운터의 계시치(ATC1)에 ATC_delta를 가산함으로써 현재 플레이아이템을 구성하는 ATC_Sequence를 처리하기 위한 클록 카운터의 계시치(ATC2)를 얻는다.
또 상술한 플레이아이템이 전환하는 경우에는 STC_delta로 불리는 오프셋 값을 구한다.
이렇게 하여 얻어진 STC_delta를 직전의 플레이아이템을 구성하는 STC 시퀀스를 처리하기 위해서 이용되고 있던 클록 카운터의 계시치(STC1)에 가산함으로써 새로운 현재 플레이아이템을 구성하는 STC 시퀀스를 처리하기 위한 클록 카운터의 계시치(STC2)를 산출할 수 있다.
선행 STC 시퀀스에서 최후에 재생되는 픽쳐의 표시 개시시각을 PTS1(1stEND), 픽쳐의 표시기간을 Tpp로 하고, 후속 STC 시퀀스에서 최초로 표시되는 픽쳐의 개시시각을 PTS2 (2ndSTART)로 한 경우, CC=5에서는 PTS1(1stEND)+Tpp의 시각과 PTS2 (2ndSTART)의 시각을 일치시킬 필요가 있으므로 STC_delta는,
STC_delta=PTS1(1stEND)+TppPTS2 (2ndSTART) 
의 계산식으로부터 산출된다.
기본 스트림 선택테이블, 확장 스트림 선택테이블에 대하여 검토하면, 상술한 것과 같은 심리스 접속을 실현하는 경우 전후의 플레이아이템 정보간에 동일해야 한다. 그러나 기본 스트림 선택테이블, 확장 스트림 선택테이블에서의 파일의 지정 방법은 달라도 좋다.
2개의 스트림 파일의 경우와 1개의 Clip으로 다중화된 경우의 ES를 심리스로 접속하기 위해서는 스트림의 속성이 동일할 것 등의 조건 외에 기본 스트림 선택테이블, 확장 스트림 선택테이블에서 허가되어 있는 ES가 동일하면 충분하다.
즉, 2TS 인터리브의 플레이아이템 정보와 1TS 다중화의 플레이아이템 정보를 심리스로 접속하려면 기본 스트림 선택테이블, 확장 스트림 선택테이블에서 허가되어 있는 ES가 동일하면 충분하다.
상기 접속은 이하와 같은 케이스에서 발생한다.
a. 멀티앵글 구간에서의 플레이아이템정보 접속
b. 디스크 콘텐츠와 다운로드 콘텐츠 플레이아이템정보 접속
c. 동화상과 정지화상의 플레이아이템정보 접속
도 89는 2개의 플레이아이템을 심리스로 접속하는 형태를 나타낸다. 동 도면 (a)는 2개의 Clip 파일의 경우와 1개의 Clip로 다중화된 경우의 스트림을 심리스로 접속하는 경우의 구성을 나타낸다.
도 89 (b)는 서브 플레이아이템에서의 In_Time, Out_Time의 설정을 나타낸다. SubPath 타입=8, 9, 10에 포함되는 서브 플레이아이템은 대응하는 플레이아이템 정보와 개시시각 및 종료시각이 동일하게 된다.
(제 17 실시 예)
본 실시 예에서는 다층화된 광디스크의 각 기록 층에는 3D/2D 공용의 데이터블록 B[i]ss와 2D전용의 데이터블록 B[i]2D를 설치하는 경우에 이들을 경유하여 재생하는 재생 패스를 설치하는 것을 제안한다.
앞의 실시 예에 의한 스트림 파일의 기록에서 층 경계의 직전에는 3D 전용의 데이터블록 B[i]ss, 2D 전용의 데이터블록 B[i]2D를 기록하므로, 층 경계에서 2D 재생장치와 3D 재생장치가 참조하는 파일을 전환하기 위한 3D 우회로(迂廻路)로 새로운 서브패스를 정의한다.
도 90은 층 경계에서 참조 파일을 전환하기 위한 Subpath 타입을 나타낸다. 동 도면 (a)에서 서브패스정보타입=8인 경우 디펜던트 뷰 for LR임을 나타내고, 서브패스정보타입=9인 경우 디펜던트 뷰 for Depth임을 나타낸다. SubPath 타입=10은 층 경계에서 2D 재생장치와 3D 재생장치가 참조하는 파일을 전환하기 위한 3D 우회로임을 나타낸다. 1개의 PlayList에서 2D/3D를 전환할 필요가 없으면 PlayList를 나누어도 좋다.
3D 전용 디스크(2D 재생장치용 할당 없음)에서는 서브패스 타입=10의 우회가 아니라 플레이아이템정보가 참조하는 Clip를 재생한다.
도 90 (b)는 서브패스 타입 =8, =9의 서브패스를 구성하는 AV 클립을 나타내고, 도 90 (c)는 서브패스 타입 =10의 서브패스를 구성하는 AV 클립을 나타낸다. 지금까지의 실시 예에서 설명한 것과 같이, 층 경계와 같이 롱 점프가 발생하는 장소에서는 2D 재생을 위한 AV 클립과 3D 재생을 위한 AV 클립을 분리로 할 필요가 있으므로, 서브패스 타입 =10의 서브 플레이아이템에 대해서는 AV 클립 2, AV 클립 3에 의해서 구성되어 있다.
(제 18 실시 예)
지금까지의 실시 예에서의 확장 스트림 선택테이블은 3D-LR방식, 1plane+Offset 모드에 대응하는 것이었으나, 본 실시 예는 3D-Depth방식에도 대응할 수 있는 확장 스트림 선택테이블의 기술을 실현한다.
프라이머리 비디오 스트림의 재생을 허가하는 스트림 등록 열과 프라이머리 오디오 스트림의 재생을 허가하는 스트림 등록 열의 기술방법을 설명한다.
도 91은 소스 코드를 이용한 프라이머리 비디오 스트림의 재생을 허가하는 스트림 등록 열과 프라이머리 오디오 스트림의 재생을 허가하는 스트림 등록 열과의 기술방법의 일 예이다.
1번째의 for문은 프라이머리 비디오 스트림의 스트림 등록 열을 정의하는 것이며, dependent_view_is_available와 depth_is_available와 2개의 if문을 주 비디오 스트림의 개수만큼 정의한다고 하는 루프 문이다.
dependent_view_is_available는 라이트 뷰의 데이터블록이 존재하는가 여부를 나타낸다. depth_is_available는 depth의 데이터블록이 존재하는가 여부를 나타낸다. 루프 중의 Stream_entry는 이들 데이터가 존재하는 경우, 대응하는 Clip 파일이 어느 파일인지, 그 파일 중에서 어느 데이터가 대상이 되는 데이터인지 식별하기 위한 PID를 포함한다.
for 문 중의 dependent_view_is_available를 조건식으로 한 if문은 dependent_view_is_available가 유효한 경우 스트림 엔트리와 스트림 속성을 추가하는 취지를 나타낸다.
for 문 중의 depth_is_available를 조건식으로 한 if문은 depth_is_available가 유효한 경우 스트림 엔트리와 스트림 속성을 추가하는 것이다.
2번째의 for문은 프라이머리 오디오 스트림의 스트림 등록 열을 정의하는 것이며, replace_3D_audio_stream와, 스트림 엔트리와 스트림 속성을 프라이머리 오디오 스트림의 개수만큼 정의한다고 하는 루프 문이다.
replace_3D_audio_stream는 3D 재생 모드의 실행시에 오디오 스트림의 전환을 실행해야할지 여부를 지시한다.
(PG_텍스트 자막 스트림)
PG_텍스트 자막 스트림의 재생을 허가하는 스트림 등록 열의 기술방법을 설명한다. 이 기술은 1개의 스트림 번호에 대하여 LR방식의 데이터가 존재하는지, 심도 정보가 존재하는지를 식별하고, 필요한 파일이 어느 것인지를 지정하는 것이다.
도 92는 PG_텍스트 자막 스트림의 스트림 등록 열을 기술하기 위한 소스 코드의 기술 예를 나타낸다.
도면 중의 for 문은 오프셋이 유효한지 여부를 나타내는 offset_is_available와, LR방식이 유효한지 여부를 나타내는 LR_streams_are_available와, 3D-Depth 방식이 유효한지 여부를 나타내는 Depth_stream_is_available와, 3개의 if문을 자막 그래픽스 스트림의 개수만큼 배열한다고 하는 반복구조를 정의한다.
offset_is_available를 조건식으로 한 if문은 offset_is_available가 유효한 경우 스트림 엔트리, 스트림 속성을 설치하는 것이다.
LR_streams_are_available를 조건식으로 한 if문은 LR_streams_are_available가 유효한 경우 스트림 엔트리 좌측 용과 스트림 엔트리 우측 용과 스트림 속성을 추가하는 것이다.
Depth_stream_is_available를 조건식으로 한 if문은 Depth_stream_is_ available가 유효한 경우 스트림 엔트리, 스트림 속성을 추가하는 것이다.
(IG 스트림)
IG 스트림의 재생을 허가하는 스트림 등록 열의 기술방법을 설명한다.
도 93은 IG 스트림의 스트림 등록 열의 기술을 나타낸다.
도면 중의 for에서 offset_is_available와, LR_streams_are_available와, Depth_stream_is_available와, 3개의 if문이 메뉴 그래픽스 스트림의 개수만큼 존재한다.
offset_is_available를 조건식으로 한 if문은 offset_is_available가 유효한 경우 스트림 엔트리, 스트림 속성을 추가시키는 것이다.
LR_streams_are_available를 조건식으로 한 if문은 LR_streams_are_available가 유효한 경우 스트림 엔트리 좌측 용, 스트림 엔트리 우측 용, 스트림 속성을 추가하는 것이다.
Depth_stream_is_available를 조건식으로 한 if문은 Depth_stream_is_ available가 유효한 경우, 스트림 엔트리, 스트림 속성이 추가된다.
도 94는 세컨더리 오디오 스트림, 세컨더리 비디오 스트림의 스트림 등록 열의 기술을 나타낸다.
(세컨더리 오디오 스트림)
세컨더리 오디오 스트림의 재생을 허가하는 스트림 등록 열의 기술에 대하여 설명한다.
도면 중의 1번째의 for문은 replace_3D_audio_stream, 스트림 엔트리, 스트림 속성의 세트를 세컨더리 오디오 스트림의 개수만큼 정의하는 루프를 형성하고 있다. replace_3D_audio_stream는 3D 재생 모드에서 세컨더리 오디오 스트림의 치환을 실행하는가 여부를 나타낸다.
2번째의 for문은 dependent_view_is_available, Depth_is_available의 세트와 2개의 if문을 포함한다.
dependent_view_is_available를 조건식으로 한 if문은 dependent_view_is_ available가 유효한 경우, 스트림 엔트리, 스트림 속성을 추가하는 것이다.
Depth_is_available를 조건식으로 한 if문은 Depth_is_available가 유효한 경우 스트림 엔트리, 스트림 속성을 추가하는 것이다.
(세컨더리 비디오 스트림의 스트림 등록 열)
세컨더리 비디오 스트림의 재생을 허가하는 스트림 등록 열의 기술에 대하여 설명한다.
2번째의 for문은 세컨더리 비디오 스트림의 스트림 등록 열을 정의하는 것이며, dependent_view_is_available와, depth_is_available와, 2개의 if문을 세컨더리 비디오 스트림의 개수만큼 정의한다고 하는 루프문이다.
for 문 중의 dependent_view_is_available를 조건식으로 한 if문은 dependent_view_is_available가 유효한 경우 스트림 엔트리와 스트림 속성을 추가하는 취지를 나타낸다.
for 문 중의 depth_is_available를 조건식으로 한 if문은 depth_is_available가 유효한 경우 스트림 엔트리와 스트림 속성을 추가하는 것이다.
이상과 같이 본 실시 예에 의하면 3D-LR방식, 1plane+Offset 모드만이 아니라 3D-Depth 방식으로 대응할 수 있는 확장 스트림 선택테이블을 작성할 수 있다.
(제 19 실시 예)
본 실시 예에서는 텍스트 자막 스트림의 플레인 오프셋에 대하여 설명한다.
텍스트 자막(textST) 스트림은 AV 스트림에 다중화되지 않으므로, 그 재생시에는 텍스트 자막 스트림 본체와 텍스트의 전개에 이용되는 폰트를 재생에 앞서 메모리에 프리로드 해 둘 필요가 있다. 또 텍스트 자막 스트림 중 어느 언어를 정상적으로 표시할 수 있는지 여부는 BD-ROM 재생장치에서 언어 코드마다 설정된 케퍼빌리티 플래그로 설정된다. 한편, PG 스트림에 의한 자막 재생에는 케퍼빌리티 플래그의 참조는 불필요해진다. PG 스트림에서의 자막은 런렝스 압축된 자막을 전개하면 충분하기 때문이다.
이상은 텍스트 자막 스트림의 일반적인 구성이다. 이하, 3D 재생모드 특유의 텍스트 자막 스트림의 개량에 대하여 설명한다. 1plane+Offset(3D-LR) 모드, 3D-Depth 모드에서 재생의 대상이 되는 텍스트자막 스트림(0x1801의 TS 패킷으로 구성되는 것)은 프레임에서 플레인 오프셋을 갱신할 수 있는 구조로 되어 있고, 플레인용의 팰릿 구조를 추가할 수 있다. 이는 원활한 심도 변경을 위해 오프셋의 정보만을 프레임별로 텍스트 자막 디코더에 보내고자하는 요망에 의한다.
2개의 오프셋 정보의 차분은 심도를 시간에서 선형(線形)으로 변화시킬 수도 있다. 2점간을 비선형으로 보완하고, 원활하게 가감속하면서 오프셋을 변경하는 것도 가능하다.
도 95는 텍스트 자막 스트림의 플레인 오프셋의 시간적 변화를 나타내는 그래프이다. 본 도면에서 점선은 비선형 보간(補間)을, 실선은 선형 보간을 나타낸다.
이상과 같이 본 실시 예에 의하면, 플레인 오프셋의 설정에 선형 보간, 비선형 보간을 이용할 수 있어서 자막의 돌출 정도를 원활하게 변화시킬 수 있게 된다.
(제 20 실시 예)
본 실시 예에서는 플레인의 레이어 모델에서 최하층에 존재하는 플레인 메모리의 개량이다. 이 플레인 메모리는 백그라운드 플레인 메모리로 불리며, 배경 벽지 화상을 저장한다. 인터렉티브 그래픽스의 팝업메뉴를 재생하는 경우, BD-J 애플리케이션이 팝업메뉴를 표시하는 경우, 이 백그라운드 플레인 메모리의 저장 내용이 배경 벽지 화상으로 이용된다. 그리고 본 실시 예에서는 백그라운드 플레인의 저장 내용을 프라이머리 비디오 스트림의 2D/3D 전환에 추종하여 표시형식을 전환한다. 도 96은 배경화상을 이루는 I픽처를 나타낸다. 배경화상(벽지)을 설정하기 위해서 JPEG 또는 I프레임을 L/R 개별적으로 지정한다. 2D/3D 전환시는 MainView 속성(=L or R)에서 지정되는 좌우 어느 하나의 화상을 표시한다.
(제 21 실시 예)
제 8 실시 예의 재생장치(200)는 빌트인 미디어 드라이브, 리무버블 미디어를 포함하는 로컬 스토리지를 구비하고 있고, 이것으로의 기록을 상정한 구성으로 되어 있으므로, 본원 명세서에 기재된 재생장치는 기록장치로서의 기능을 겸비하고 있다고 할 수 있다. 재생장치(200)가 기록장치로서 기능을 하는 경우 이하의 형태에 의해서 확장 스트림 선택테이블을 포함한 플레이리스트정보의 기록을 실행한다.
i) 재생장치(200)가 온디맨드 메뉴팩처 서비스(on-demand manufacture service) 또는 전자적 셀 스루 서비스(electronic sell-through service)(MODEST)의 공급을 받는 기능을 갖는 경우에는 BD-J 오브젝트의 기입을 이하와 같이 실시한다.
즉, 재생장치(200)가 온디맨드 메뉴팩처 서비스 또는 전자적 셀 스루 서비스에 의해서 BD-J 오브젝트의 공급을 받을 때 리무버블 미디어에서의 루트 디렉터리의 아래에 디폴트의 디렉터리와 MODEST 디렉터리를 구축하고, MODEST 디렉터리의 아래에 BDMV 디렉터리를 구축한다. MODEST 디렉터리는 퍼스트 MODEST 디렉터리이며, 퍼스트 MODEST 디렉터리는 상기 서비스를 처음 받은 때 구축되는 MODEST 디렉터리이다. 사용자가 2번째 이후에 서비스를 받은 때 재생장치(200)에서의 제어부는 2번째 이후의 서비스에 대응하는 MODEST 디렉터리를 구축한다.
그리고 상술한 것과 같이 플레이리스트정보를 취득하면 제어부는 디폴트 디렉터리에 스타트 업 프로그램을 기록하고, MODEST 디렉터리 아래의 BDMV 디렉터리에 BD-J 오브젝트를 기록한다. 이 스타트 업 프로그램은 기록매체가 재생장치(200)에 장전된 때에 최초로 실행되어야 할 프로그램이며, BDMV 디렉터리를 선택하는 조작을 사용자로부터 접수하기 위한 메뉴를 재생장치(200)에 표시시켜서 루트변경 기능을 재생장치(200)에 실행시킨다. 이 루트 변경기능은 메뉴에 대한 선택 조작이 사용자에 의해서 이루어진 경우 선택된 BDMV 디렉터리가 속하는 MODEST 디렉터리를 루트 디렉터리로 인식시키는 기능이다. 이러한 루트 변경기능에 의해서 BD-ROM를 재생하는 것과 동일한 제어순서에 의해서 취득한 플레이리스트 정보에 의거한 재생제어를 실행할 수 있다.
ii) 매니지드 카피(managed copy)를 실현하는 기록장치로서의 실시
기록장치는 매니지드 카피에 의해서 디지털 스트림을 기록하는 것이라도 좋다.
매니지드 카피란, BD-ROM 등의 판독전용 기록매체에 기록되어 있는 디지털 스트림이나 플레이리스트 정보, 클립정보, 애플리케이션 프로그램을 다른 광디스크(BD-R, BD-RE, DVD-R, DVD-RW, DVD-RAM 등)이나 하드디스크, 리무버블 미디어(SD메모리 카드, 메모리스틱, 컴팩트 플래시(등록상표), 스마트 미디어, 멀티미디어 카드 등)등의 판독 기입 가능한 기록매체에 카피할 때 서버와의 통신을 하여 인증이 이루어져서 허가된 상태에서만 카피를 실행할 수 있게 하는 기술이다. 이 기술에 의해 백업 회수를 제한하거나 과금된 상태에서만 백업을 허락하는 등의 제어를 할 수 있다.
BD-ROM에서 BD-R, BD-RE로의 카피를 실현하는 경우, 카피 원(copy source)과 카피 처(copy destination)에서 기록용량이 동일하다면 매니지드 카피에서는 카피 원이 되는 BD-ROM에서의 비트 스트림을 최 내주에서 최 외주까지 순차 카피하고 간다고 하는 동작으로 충분하다.
매니지드 카피가 이종매체 간의 카피를 상정한 것이라면 트랜스 코드가 필요하게 된다. 여기서 "트랜스 코드"란 BD-ROM에 기록되어 있는 디지털 스트림의 형식을 MPEG2TS 형식에서 MPEG2 프로그램 스트림 형식 등으로 변환하거나, 비디오 스트림 및 오디오 스트림에 할당되어 있는 비트 레이트를 낮게 하여 재 인코드함으로써 디지털 스트림을 카피 처 미디어의 애플리케이션 포맷에 적합하게 하는 처리를 말한다. 이러한 트랜스 코드에 있어서는 상술한 실시간 타임 리코딩의 처리를 함으로써 AV 클립, Clip 정보, 플레이리스트 정보를 얻을 필요가 있다.
이상과 같이 본 실시 예에 의하면 지금까지의 실시 예에서 설명한 재생장치를 기록장치/재생장치 겸용 타입으로 실시할 수 있다.
(제 22 실시 예)
본 실시 예는 오디오 스트림에 대한 개량에 관한 것이다.
오디오 스트림의 부호화방식에는 LPCM의 외에 DD/DD+, DTS-HD, DD/MLP가 있다. DD/DD+, DTS-HD, DD/MLP라는 부호화방식의 오디오 스트림의 오디오 프레임은 기본 데이터와 확장 데이터로 구성된다. DD/DD+의 기본 데이터는 인디펜드 서브 스트림이고, DD/DD+의 확장데이터는 디펜드 서브 스트림이며, DTS-HD의 기본 데이터는 코어 서브 스트림이고, DTS-HD의 확장 데이터는 익스텐션 서브 스트림이며, DD/MLP의 기본 데이터는 DD데이터이고, DD/MLP의 확장 데이터는 MLP 오디오이다.
이들 부호화방식에 대응하기 위해 재생장치에는 스테레오 재생의 능력이 존재하는지 서라운드 재생의 능력이 존재하는가를 각 부호화 방식마다 나타내는 컨피규레이션 레지스터(configuration register), 재생장치에서의 언어설정을 나타내는 언어설정 레지스터, 재생 대상이 되는 오디오 스트림의 번호를 저장하는 스트림 번호 레지스터가 존재한다. 그리고 복수의 오디오 스트림 중 어느 하나를 재생 대상으로 선택하기 위해서 재생장치는 기록매체에 기록되어 있는 복수 오디오 스트림의 각각이 복수의 조건 중 어느 조건을 만족하는지를 판정하여, 만족한다고 판정된 조건의 조합에 따라서 오디오 스트림을 선택하는 프로시저를 실행한다.
이 복수의 조건에는 제 1 조건, 제 2 조건, 제 3 조건이 있고, 제 1 조건은 오디오 스트림의 부호화방식과 컨피규레이션 레지스터의 설정치를 비교함으로써 재생할 수 있다고 판정되는 것이며, 제 2 조건은 오디오 스트림의 언어 코드와 언어설정 레지스터의 설정치를 비교하는 것에 의한 언어속성의 일치이며, 제 3 조건은 오디오 스트림의 채널 수와 컨피규레이션 레지스터의 설정치를 비교함으로써 서라운드 출력을 할 수 있다고 판정되는 것이다.
제 1 조건, 제 2 조건, 제 3 조건 모두를 만족하는 오디오 스트림이 존재하지 않는 경우, 제 1 조건 및 제 2 조건을 만족하는 오디오 스트림 중 STN_table에서의 스트림 등록이 선두에 위치하고 있는 오디오 스트림을 선택하고, 그 오디오 스트림의 스트림 번호를 재생장치에서의 스트림 번호 레지스터(PSR1)로 설정한다. 이와 같이 함으로써 가장 최적의 오디오 스트림이 선택되게 된다. 재생장치에서의 상기 세팅 레지스터는 복수의 부호화방식의 기본 데이터에 대응한 제 1의 플래그 군과 복수의 부호화방식의 확장 데이터에 대응한 제 2의 플래그 군을 포함하며, 제 1의 플래그 군은 기본 데이터의 서라운드 출력을 처리할 수 있는가 여부를 부호화방식마다 나타내는 복수의 플래그에 의해서 구성되어 있고, 제 2의 플래그 군은 확장 데이터의 서라운드 출력을 처리할 수 있는가 여부를 부호화 방식마다 나타내는 복수의 플래그에 의해서 구성되어 있다.
오디오 스트림은 텔레비전의 재생방식의 영향을 받지 않으므로 5.1ch 등에서 음향효과 및 정위(定位)가 있는 오디오 스트림을 기록해 두면 2D모드, 3D모드에서 공유할 수 있다.
2D모드/3D모드의 표시형식은 시각적인 표시의 차이이며, 오디오 스트림에 채용되어 있는 상술한 부호화방식은 5.1ch 등의 멀티채널을 이용하여 디스플레이보다 전면에 음을 정위 시킬 수 있다.
이 경우, 멀티채널 확장방식에 대응하는 재생장치에서만 확장데이터 된 멀티채널 재생이 가능해진다. 상기 오디오 스트림의 부호화방식은 이미 그것들에 대응한 형식이므로 2D모드와 3D모드에서 음성을 전환할 필요는 없다.
그러나 2D모드와 3D모드에서 음의 정위 상태를 바꾸고 싶은 경우에는 3D 재생장치에서만 재생되는 확장 부분을 오디오 스트림으로 설정할지, 또는 2D모드와 3D모드에서 재생되는 오디오를 전환하면 좋다.
2D 재생 모드와 3D 재생 모드에서 오디오의 정위 등을 변화시키고 싶은 경우, 오디오 스트림을 구성하는 오디오 액세스유닛 내에 3D 재생 모드를 위한 확장 데이터를 설정해 두고, 2D 재생 모드와 3D 재생모드에서 다른 TS 패킷의 다중분리를 실시하도록 확장 스트림 선택테이블 내에 오디오 스트림의 스트림 등록 열을 설치해 둔다. 그리고 3D 재생 모드에서 이 3D 재생 모드용의 오디오 스트림을 재생시키면 음성의 정위 위치를 3D 재생 모드시에 변화시킬 수 있다.
그러나 동일한 스트림 번호를 갖는 스트림은 2D 재생 모드와 3D 재생 모드에서 재생해야 할 오디오 스트림이 다른 경우에도 언어속성은 동일하게 하여야 한다. 어느 스트림 번호에서 2D모드로 밖에 재생되지 않는 오디오, 3D모드로 밖에 재생되지 않는 오디오는 없다. 이는 2D 재생 모드와 3D 재생 모드의 전환시의 사용자의 혼란을 방지하기 위해서이다.
2D모드와 3D모드에서 오디오 스트림 자체가 다른 경우에도 관리구조상 1개로 취급하므로 2D모드용의 오디오 스트림의 언어속성과 3D모드용의 오디오 스트림의 언어속성은 일치시켜 둔다.
(제 23 실시 예)
본 실시 예에서는 앞에서 설명한 실시 예에서 설명된 구조의 데이터를 재생하는 재생장치에 관하여 집적회로(603)를 이용해서 실현한 구성 예에 대하여 설명한다.
도 97은 2D/3D 재생장치를 집적회로를 이용하여 실현된 구성 예이다.
매체 IF부(601)는 매체로부터 데이터를 수신하여(판독하여) 집적회로(603)에 전송한다. 또 매체 IF부(601)는 앞에서 설명한 실시 예에서 설명한 구조의 데이터를 매체로부터 수신한다. 매체 IF부(601)는 예를 들어 매체가 광디스크나 하드 디스크인 경우에는 디스크 드라이브, 매체가 SD카드나 USB 메모리 등의 반도체 메모리인 경우에는 카드 IF, 매체가 CATV 등을 포함한 방송파인 경우에는 CAN 튜너나 Si튜너, 매체가 이더넷(ethernet)(등록상표), 무선 LAN, 무선 공중회선 등의 네트워크인 경우에는 네트워크 IF 등이다.
메모리(602)는 매체로부터 수신한(판독한) 데이터를 일단 저장하거나, 집적회로(603)에서의 처리 도중의 데이터를 일시적으로 저장하는 메모리로 예를 들어 SDRAM(Synchronous Dynamic Random Access Memory), DDRx SDRAM(Double-Date-Ratex Synchronous Dynamic Random Access Memory; x=1, 2, 3,···) 등이 이용된다. 또, 메모리(602)는 임의의 개수를 구비하고 있으면 좋고, 필요에 따라서 단수라도 복수라도 상관없다.
집적회로(603)는 매체 IF부(601)로부터 전송된 데이터에 대하여 영상 및 음성처리를 시행하는 시스템 LSI로, 주 제어부(606), 스트림 처리부(605), 신호 처리부(607), 메모리 제어부(609), AV 출력부(608) 등으로 구성된다.
주 제어부(606)는 타이머 기능이나 할당기능을 갖는 프로세서 코어를 가지며, 프로세서 코어는 프로그램 메모리 등에 저장된 프로그램에 따라서 집적회로(603) 전체의 제어를 한다. 또, 프로그램 메모리 등에는 미리 OS 등의 기본 소프트가 저장되어 있다.
스트림 처리부(605)는 주 제어부(606)의 제어하에 매체에서 매체 IF부(601) 경유로 전송된 데이터를 수신하고, 집적회로(603) 내의 데이터버스를 경유하여 메모리(602)에 저장하거나, 수신한 데이터를 영상계 데이터, 음성계 데이터로 분리한다. 앞에서 설명한 것과 같이 매체 상에서는 레프트 뷰 비디오 스트림을 포함한 2D/L용의 AV 클립과 라이트 뷰 비디오 스트림을 포함한 R용의 AV 클립이 몇 개의 익스텐트로 분할된 상태로 교호로 배치되어 있다. 따라서 주 제어부(606)는 집적회로(603)가 레프트 뷰 스트림을 포함한 좌측 눈 용 데이터를 수신했을 경우에는 메모리(602)의 제 1 영역에 데이터가 저장되도록, 라이트 뷰 비디오 스트림을 포함한 우측 눈 용 데이터를 수신했을 경우에는 메모리(602)의 제 2 영역에 데이터가 저장되도록 제어한다. 여기서, 좌측 눈 용 데이터는 좌측 눈 용 익스텐트에 속해 있고, 우측 눈 용 데이터는 우측 눈 용 익스텐트에 속해 있다. 또, 메모리(602)에서의 제 1, 제 2 영역은 단일의 메모리가 논리적으로 영역 분할된 것이라도 좋고, 물리적으로 다른 메모리라도 좋다.
신호 처리부(607)는 주 제어부(606)의 제어하에 스트림 처리부(605)가 분리한 영상계 데이터, 음성계 데이터에 대하여 적절한 방식으로 디코드한다. 영상계 데이터는 MPEG-2, MPEG-4 AVC, MPEG4-MVC, SMPTE VC-1 등의 방식을 사용하여 부호화 기록되어 있으며, 또 음성계 데이터는 돌비 AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD, 리니어 PCM 등의 방식으로 압축 및 부호화 기록되어 있으므로, 신호 처리부(607)는 이들에 대응한 방식으로 디코드한다. 또, 신호 처리부(607)의 모델은 예를 들어 제 9 실시 예의 도 65에서의 각종 디코더가 거기에 해당한다.
메모리 제어부(609)는 집적회로 내의 각 기능 블록으로부터 메모리(602)로의 액세스를 조정한다.
AV 출력부(608)는 주 제어부(606)의 제어하에 신호 처리부(607)에서 디코드 된 영상계 데이터를 중첩하거나, 영상계 및 데이터의 포맷변환 등을 하여 집적회로(603) 외로 출력한다.
도 98은 스트림 처리부(65)의 대표적인 구성을 나타내는 기능 블록도이다. 스트림 처리부(65)는 디바이스 스트림 IF부(651), 다중분리부(652), 전환부((653) 등을 구비한다.
디바이스 스트림 IF부(651)는 매체 IF부(601)와 집적회로(603) 간의 데이터 전송용 인터페이스이며, 예를 들어 매체가 광디스크나 하드디스크인 경우에는 SATA(Serial Advanced Technology Attachment), ATAPI(Advanced Technology Attachment Packet Interface), PATA(Parallel Advanced Technology Attachment), 매체가 SD카드나 USB 메모리 등의 반도체 메모리인 경우에는 카드 IF, 매체가 CATV 등을 포함한 방송 등의 경우에는 튜너 IF, 매체가 이더넷, 무선 LAN, 무선 공중회선 등의 네트워크의 경우에는 네트워크 IF 등이다. 또, 매체의 종류에 따라서는 디바이스 스트림 IF부(651)가 매체 IF부(601)의 기능의 일부를 떠맡아도 상관없고, 매체 IF부(601)가 집적회로(603)에 내장되어 있어도 상관없다.
다중분리부(652)는 매체로부터 전송된 영상 및 음성을 포함한 재생 데이터를 영상계 데이터와 음성계 데이터로 분리한다. 앞에서 설명한 각 익스텐트는 영상·음성·PG(자막)·IG(메뉴) 등의 각 소스 패킷으로 구성되어 있고(단, 디펜던트는 음성을 포함하지 않는 경우도 있다), 각 소스 패킷에 포함되어 있는 PID(식별자)에 따라서 영상계·음성계의 각 TS 패킷으로 분리하여 신호 처리부(607)에 전송한다. 처리가 완료된 데이터는 직접 또는 일단 메모리(602)에 저장된 후, 신호 처리부 (607)에 전송된다. 또, 다중분리부(652)의 모델은 예를 들어 제 9 실시 예의 도 65에서의 소스 디 패킷다이저, PID 필터가 거기에 해당한다.
전환부(653)는 디바이스 스트림 IF부(651)가 좌측 눈 용 데이터를 수신했을 때에는 메모리(602)의 제 1 영역에 저장되도록, 우측 눈 용 데이터를 수신했을 때에는 메모리(602)의 제 2 영역에 저장되도록 출력 처(저장 처)를 전환한다. 여기서, 전환부(653)는 예를 들어 DMAC(Direct Memory AccessController)이다. 도 99는 전환부(653)가 DMAC인 경우의 전환부(653) 주변의 개념도이다. DMAC는 주 제어부(606)의 제어하에 디바이스 스트림 IF부가 수신한 데이터와 그 데이터 저장 처 어드레스를 메모리 제어부(609)에 대하여 송신한다. 구체적으로는 디바이스 스트림 IF부가 좌측 눈 용 데이터를 수신했을 때는 어드레스 1(제 1의 저장 영역)을, 우측 눈 용 데이터를 수신했을 때는 어드레스 2 (제 2의 저장 영역)를 메모리 제어부(609)에 송신함으로써 수신 데이터에 의해서 그 출력 처(저장 처)를 전환하고 있다. 메모리 제어부(609)는 DMAC로부터 보내진 저장 처 어드레스에 따라서 메모리(602)에 데이터를 저장한다. 또, 주 제어부(606) 대신에 전환부(653)를 제어하는 전용의 회로를 설치해도 상관없다.
여기에서는 스트림 처리부(65)의 대표적인 구성으로 디바이스 스트림 IF부(651), 다중분리부(652), 전환부(653)에 대하여 설명하였으나, 수신한 암호화 데이터나 키 데이터 등을 복호하는 암호 엔진부, 매체 ~ 재생장치 간의 기기 인증 프로토콜 등의 실행제어나 비밀키를 보유하는 시큐어 관리부, 다이렉트 메모리 액세스용의 컨트롤러 등을 더 구비하고 있어도 좋다. 지금까지는 매체로부터 수신한 데이터를 메모리(602)에 저장할 때에 전환부(653)가 좌측 눈 용 데이터·우측 눈 용 데이터 등에 의해서 저장 처를 전환하는 경우에 대하여 설명해 왔으나, 매체로부터 수신한 데이터를 일단 메모리(602)에 저장한 후에 다중분리부(652)로 데이터를 전송할 때에 좌측 눈 용 데이터· 우측 눈 용 데이터를 할당하여도 좋다.
도 100은 AV 출력부(608)의 대표적인 구성을 나타내는 기능 블록도이다. AV 출력부(608)는 화상 중첩부(681)와 비디오 출력 포맷 변환부(682), 오디오·비디오 출력 IF부(683) 등을 구비한다.
화상 중첩부(681)는 디코드 된 영상계의 데이터를 중첩한다. 구체적으로는 레프트 뷰 비디오데이터 또는 라이트 뷰 비디오데이터와, PG(자막), IG(메뉴)를 픽쳐 단위로 중첩한다. 화상 중첩부(681)의 모델은 예를 들어 제 11 실시 예, 도 71 등이다.
비디오 출력 포맷 변환부(682)는 디코드 된 영상계 데이터에 대하여 확대 또는 축소하는 리사이즈 처리, 주사 방식을 프로그래시브 방식 및 인터레이스 방식의 일방에서 타방으로 변환하는 IP변환 처리, 노이즈를 제거하는 노이즈 축소 처리, 프레임 레이트를 변환하는 프레임 레이트 변환처리 등을 필요에 따라서 실시한다.
오디오·비디오 출력 IF부(683)는 화상 중첩이나 포맷 변환된 영상계 데이터와 디코드 된 음성계 데이터에 대하여 데이터 송신형식에 맞춰서 인코드 등을 실시한다. 또, 후술하는 것과 같이, 오디오·비디오출력 IF부(683)는 일부 집적회로 (603) 외에 구비되어도 상관없다.
도 101은 AV 출력부(608) 또는 재생장치의 데이터 출력 부분을 보다 상세하게 나타낸 구성 예이다. 본 실시 예에서의 집적회로(603) 및 재생장치는 복수의 영상계 데이터, 음성계 데이터의 데이터 송신형식에 대응하고 있다. 도 100에서의 오디오·비디오 출력 IF부(683)는 아날로그 비디오 출력 IF부(683a), 아날로그 오디오 출력 IF부(683c), 디지털 오디오 출력 IF부(683b)에 대응한다.
아날로그 비디오 출력 IF부(683a)는 화상 중첩 처리나 출력 포맷 변환처리된 영상계 데이터를 아날로그 영상신호형식으로 변환 및 인코드하여 출력한다. 예를 들어, NTSC, PAL, SECAM의 3 방식 중 어느 하나에 대응한 컴포지트 비디오 인코더, S영상 신호(Y/C분리)용 인코더, 컴포넌트 영상 신호용 인코더나, DAC(D/A 컨버터) 등이 거기에 해당한다.
디지털 오디오·비디오 출력 IF부(683b)는 디코드 된 음성계 데이터와 화상 중첩처리나 출력 포맷 변환된 영상계 데이터를 일체화하고, 또 암호화한 후에 데이터 송신 규격에 맞춰서 인코드하여 출력한다. 예를 들어, HDMI(High-Definition Multimedia InterFace) 등이 거기에 해당한다.
아날로그 오디오 출력 IF부(683c)는 디코드 된 음성계 데이터를 D/A변환하여 아날로그 음성 데이터를 출력하는 오디오 DAC 등이 거기에 해당한다.
이들 영상계 데이터 및 음성계 데이터의 송신형식은 표시장치·스피커 측이 서포트하고 있는 데이터 수신장치(데이터 입력단자)에 의존해서 전환되거나, 또 사용자의 선택에 의해서 송신형식을 전환하는 것이 가능하다. 또, 단일의 송신형식만이 아니라 병행해 복수의 송신형식으로 동일한 콘텐츠에 대응한 데이터를 송신하는 것도 가능하다.
여기에서는 AV 출력부(608)의 대표적인 구성으로 화상 중첩부(681), 비디오 출력 포맷 변환부(682), 오디오·비디오 출력 IF부(683)에 대하여 설명했으나, 필터처리, 화면합성, 곡선 묘화, 3D 표시 등의 그라픽스 처리를 하는 그래픽스 엔진부 등을 더 구비하고 있어도 좋다.
이상이 본 실시 예에서의 재생장치의 구성에 대한 설명이다. 또, 앞에서 설명한 집적회로(603)에 포함되는 각 기능 블록은 모두가 내장되어 있지 않아도 좋고, 역으로, 도 97의 메모리(602)가 집적회로(603)에 내장되어 있어도 좋다. 또, 본 실시 예에서는 주 제어부(606)와 신호 처리부(607)는 다른 기능 블록으로 설명해 왔지만, 주 제어부(606)가 신호 처리부(607)의 처리의 일부를 실시해도 상관없다.
또, 집적회로(603)에서의 제어버스나 데이터버스의 경로는 각 처리 블록의 처리순서나 처리 내용에 의해서 임의로 배치되지만, 예를 들어 도 102와 같이 각 처리 블록끼리를 직접 연결하도록 데이터버스를 배치해도 좋고, 도 103과 같이 각 처리 블록끼리를 메모리(602)(메모리 제어부(609))를 개재하여 연결하도록 데이터버스를 배치해도 좋다.
또, 집적회로(603)는 복수의 칩을 하나의 패키지로 밀봉하여 외견상 하나의 LSI로 한 다중 칩 모듈이라도 상관없다. 또, LSI 제조 후에 프로그램할 수 있는 FPGA(Field Programmable Gate Array)나, LSI 내부의 회로 셀의 접속이나 설정을 재구성 가능한 리콘피규러블 프로세서를 이용해도 좋다.
다음에, 이상과 같이 구성된 재생장치의 동작에 대하여 설명한다.
도 104는 매체로부터 데이터를 수신하고(판독하고), 디코드한 후에 영상 신호 및 음성신호로 출력하는 재생동작순서를 간단하게 나타내는 플로차트이다.
S601: 매체로부터 데이터를 수신한다(판독한다)(매체 IF부(601)→스트림 처리부(65)).
S602: S601에서 수신된(판독된) 데이터를 각종 데이터(영상계 데이터·음성계 데이터)로 분리한다(스트림 처리부(65)).
S603: S602에서 분리된 각종 데이터를 적절한 형식으로 디코드한다(신호 처리부(607)).
S604: S603에서 디코드 처리된 각종 데이터 중 영상계의 것에 대하여 중첩 처리를 한다(AV 출력부(608)).
S606: S602~S65에서 처리된 영상계 데이터 및 음성계 데이터를 출력한다(AV 출력부(608)).
도 105는 더 상세하게 재생동작순서를 나타낸 플로차트이다. 각 동작 및 처리는 주 제어부(606)의 제어하에 행해진다.
S701: 스트림 처리부(605)의 디바이스·스트림 IF부(651)는 매체 IF부(601)를 통해서 매체에 저장되어 있는 재생되는 데이터 이외의 데이터를 재생하기 위해서 필요한 데이터(플레이리스트, 클립정보 등)를 수신하고(판독하고), 메모리(602)에 저장한다(매체 IF부(601), 디바이스 IF부(651), 메모리 제어부(609), 메모리(602)).
S702: 주 제어부(606)는 수신된 클립정보에 포함되는 스트림 속성정보로부터 매체에 저장되어 있는 영상 데이터 및 음성 데이터의 압축형식을 인식하고, 대응하는 디코드 처리를 할 수 있도록 신호 처리부(607)의 초기화를 실시한다(주 제어부(606)).
S703: 스트림 처리부(605)의 디바이스·스트림 IF부(651)는 매체 IF부(601)를 통해서 매체에 저장되어 있는 영상 및 음성 등 재생되는 데이터를 수신하고(판독하고), 전환부(653), 메모리 제어부(609)를 경유해서 메모리(602)에 저장한다. 또, 데이터는 익스텐트 단위로 수신하고(판독되고), 좌측 눈 용 데이터를 수신한(판독한) 때에는 제 1 영역에, 우측 눈 용 데이터를 수신한(판독한) 때에는 제 2 영역에 저장되도록 주 제어부(606)가 전환부(653)를 제어하고, 전환부(653)가 데이터의 출력 처(저장 처)를 전환한다(매체 IF부(601), 디바이스 IF부(651), 주 제어부(606), 전환부(653), 메모리 제어부(609), 메모리(602)).
S704: 메모리(602)에 저장된 데이터는 스트림 처리부(605)의 다중분리부(652)에 전송되고, 다중분리부(652)는 스트림 데이터를 구성하는 소스 패킷에 포함되는 PID에 따라서 영상계(주 영상, 부 영상, PG(자막), IG(메뉴)), 음성계(음성, 부 음성)의 어느 것인지를 인식하고, TS 패킷 단위로 신호 처리부(607)의 대응하는 각 디코더에 전송한다(다중분리부(652)).
S705: 신호 처리부(607)의 각 디코더는 전송되어 온 TS 패킷에 대하여 적절한 방식으로 디코드 처리를 한다(신호 처리부(607)).
S706: 신호 처리부(607)에서 디코드 된 영상계 데이터 중 레프트 뷰 비디오 스트림 및 라이트 뷰 비디오 스트림에 대응하는 데이터를 표시장치에 맞춰서 리사이즈 한다(비디오 출력 포맷 변환부(682)).
S707: S706에서 리사이즈 된 비디오 스트림과 PG(자막)·IG(메뉴)가 중첩된다(화상 중첩부(681)).
S708: S707에서 중첩된 영상 데이터에 대하여 주사방식의 변환인 IP변환을 실시한다(비디오 출력 포맷 변환부(682)).
S709: 지금까지의 처리를 한 영상계 데이터 및 음성계 데이터에 대하여 표시장치·스피커(4)의 데이터 출력 방식, 또는 표시장치·스피커(4)로의 데이터 송신방식에 따라서 인코드나 D/A 변환 등을 실시한다. 예를 들어 영상계 데이터·음성계 데이터를 각각 아날로그 또는 디지털 출력에 대응하기 위해서 처리를 한다. 영상계 데이터의 아날로그 출력으로는 컴포지트 영상신호나 S 영상신호나 컴포넌트 영상신호 등을 지원하고 있다. 또, 영상계 및 음성계 데이터의 디지털 출력은 HDMI를 서포트하고 있다(오디오·비디오 출력 IF부(683)).
S710: S709에서 처리된 영상계 데이터 및 음성계 데이터를 표시장치·스피커에 송신하고 출력한다(오디오·비디오 출력 IF부(683), 표시장치·스피커(4)).
이상이 본 실시 예에서의 재생장치의 동작순서의 설명이다. 또. 처리마다 처리 결과를 메모리(602)에 일단 저장해도 상관없다. 또, 본 동작순서에서는 비디오 출력 포맷 변환부(682)에서 리사이즈 처리 및 IP 변환처리를 하는 경우에 대하여 설명했으나, 필요에 따라서 처리를 생략해도 상관없고, 또 다른 처리(노이즈 축소 처리, 프레임 레이트 변환처리 등)을 실시해도 상관없다. 또, 가능한 것에서는 처리순서를 변경해도 상관없다.
(비고)
이상, 본원의 출원 시점에서 출원인이 알 수 있는 최선의 실시 예에 대하여 설명했으나, 이하에 설명하는 기술적 토픽에 대해서는 개량이나 변경실시를 더 부가할 수 있다. 각 실시 예에 설명한 것과 같이 실시하거나, 이들 개량 및 변경을 시행할지 여부는 모두 임의적이며, 실시하는 사람의 주관에 의한 것임에 유의하기 바란다.
(파일끼리의 대응부여)
제 3 실시 예에서 식별정보를 이용한 대응부여의 구체적인 예에서는 레프트 뷰의 식별번호에 "1"을 가산한 것을 라이트 뷰의 식별번호로 하였다. 그러나, 레프트 뷰의 식별번호에 "10000"를 가산한 것을 라이트 뷰의 식별번호로 채용해도 좋다.
파일명에 의한 커플링 방식으로 파일의 대응부여를 실현하는 경우, 재생장치 측이 커플링 되어 있는 파일을 발견하기 위한 구조가 필요하고, 상술한 것과 같은 룰이 부여된 파일을 발견하여 플레이리스트에서 참조되어 있지 않은 파일도 재생하는 구조가 필요하다. 이러한 방법을 이용하는 경우에는 3D 대응 재생장치에 상기의 구조가 필요하나, 2D 영상과 3D 영상으로 플레이리스트를 나눌 필요가 없고, 종래로부터 보급되어 있는 2D 재생장치로 안전하게 동작시키는 것도 가능해진다.
Depth 방식을 위한 그레이 스케일과 같이 1개에서는 입체 시 영상을 재생할 수 없는 스트림에 관해서는 잘못해서 기기가 그 파일을 단체(單體)로 재생하지 않도록 확장자를 바꾸어서 구별한다. 단체에서는 재생할 수 없는 파일을 식별하기 위한 3D대응 파일을 기존 기기로부터 DLNA(Digital Living Network Alliance)를 개재하여 참조하는 경우 등의 사용자 혼란을 방지한다. 파일 번호를 동일하게 하고, 확장자를 구별함으로써 파일명만으로 페어링 정보를 표현하는 것도 가능하게 된다.
(입체 시 방식)
제 1 실시 예에서 설명의 전제로 한 시차 화상 방식은 좌우의 영상을 시간 축 방향으로 교호로 표시시키기 위해서, 예를 들어, 통상의 2차원의 영화이면 1초에 24매의 영상을 표시시키는데 비해 좌우의 영상을 합해서 1초에 48매의 영상을 표시시킬 필요가 있다. 따라서 이 방식에서는 한 화면의 재기록이 비교적 빠른 표시장치에 적합하다. 이 시차 화상을 이용한 입체 시는 이미 유원지의 놀이기구 등에서 일반적으로 사용되고 있으며, 기술적으로도 확립되어 있으므로 가정에서의 실용화에 가장 가까운 것이라고 할 수 있다. 시차 화상을 이용한 입체 시를 위한 방법은 이들 외에도 2색 분리방식 등 다양한 기술이 제안되어 있다. 본 실시 예에서는 계시분리방식 혹은 편광 안경방식을 예로 이용해서 설명했으나, 시차 화상을 이용하는 한 이들 2개의 방식에 한정되는 것은 아니다.
TV(300)에 대해서도 렌티큘러 렌즈뿐만이 아니라 동일한 기능을 갖는 디바이스, 예를 들어 액정 소자를 이용해도 좋다. 또, 좌측 눈 용의 화소에는 종 편광의 필터, 우측 눈 용의 화소에는 횡 편광의 필터를 설치하고, 시청자는 좌측 눈 용에는 종 편광, 우측 눈 용에는 횡 편광의 필터를 설치한 편광 안경을 이용해서 표시장치의 화면을 보는 것에 의해서 입체 시를 실현시켜도 좋다.
(레프트 뷰, 라이트 뷰의 적용대상)
레프트 뷰와 라이트 뷰를 준비하는 것은 본편에 관련되는 비디오 스트림 만이 아니고 썸네일 화상에 적용하는 것도 가능하다. 비디오 스트림의 경우와 마찬가지로, 2D 재생장치에서는 종래의 2D용 썸네일을 표시하나 3D 재생장치에서는 3D용으로 준비된 좌측 눈 썸네일과 우측 눈 썸네일을 3D 표시방식에 맞춰서 출력한다.
마찬가지로, 메뉴 화상이나 챕터 서치용의 신 별 썸네일 화상, 신 별 축소 화면에도 응용하는 것이 가능하다.
(프로그램의 실시 예)
각 실시 예에 설명한 애플리케이션 프로그램은 이하와 같이 해서 만들 수 있다. 먼저, 소프트웨어 개발자는 프로그램 언어를 이용하여 각 플로차트나 기능적인 구성요소를 실현하는 소스프로그램을 기술한다. 이 기술시에 소프트웨어 개발자는 프로그래밍 언어의 구문에 따라 클래스 구조체나 변수, 배열 변수, 외부 함수의 콜을 이용하여 각 플로차트나 기능적인 구성요소를 구현하는 소스프로그램을 기술한다.
기술된 소스 프로그램은 파일로 컴파일러에 부여된다. 컴파일러는 이들 소스 프로그램을 번역해서 오브젝트 프로그램을 생성한다.
컴파일러에 의한 번역은 구문 해석, 최적화, 자원 할당, 코드 생성과 같은 과정으로 이루어진다. 구문 해석에서는 소스 프로그램의 어구해석, 구문 해석 및 의미 해석을 하고, 소스 프로그램을 중간 프로그램으로 변환한다. 최적화에서는 중간 프로그램에 대하여 기본 블록화, 제어 플로 해석, 데이터 플로 해석이라는 작업을 한다. 자원 할당에서는 타깃이 되는 프로세서의 명령 세트로의 적합을 도모하기 위해, 중간 프로그램 중의 변수를 타깃이 되는 프로세서의 프로세서가 가지고 있는 레지스터 또는 메모리에 할당한다. 코드 생성에서는 중간 프로그램 내의 각 중간 명령을 프로그램 코드로 변환하고, 오브젝트 프로그램을 얻는다.
여기서 생성된 오브젝트 프로그램은 각 실시 예에 설명한 플로차트의 각 스텝이나 기능적 구성요소의 각각의 순서를 컴퓨터에 실행시키는 1개 이상의 프로그램 코드로 구성된다. 여기서 프로그램 코드는 프로세서의 네이티브 코드, JAVA(등록상표) 바이트코드와 같이 다양한 종류가 있다. 프로그램 코드에 의한 각 스텝의 실현에는 다양한 형태가 있다. 외부 함수를 이용하여 각 스텝을 실현할 수 있는 경우, 이 외부 함수를 콜 하는 콜 문이 프로그램 코드가 된다. 또, 1개의 스텝을 실현하는 프로그램 코드가 각각의 오브젝트 프로그램에 귀속하는 경우도 있다. 명령 종이 제한되어 있는 RISC 프로세서에서는 산술연산명령이나 논리연산명령, 분기명령 등을 조합함으로써 플로차트의 각 스텝을 실현해도 좋다.
오브젝트 프로그램이 생성되면 프로그래머는 이들에 대하여 링커(linker)를 기동한다. 링커는 이들 오브젝트 프로그램이나 관련하는 라이브러리 프로그램을 메모리 공간에 할당하고, 이들을 1개에 결합하여 로드 모듈을 생성한다. 이렇게 하여 생성되는 로드 모듈은 컴퓨터에 의한 판독을 전제로 한 것이며, 각 플로차트에 나타낸 처리순서나 기능적인 구성요소의 처리순서를 컴퓨터에 실행시키는 것이다. 이러한 프로그램을 컴퓨터 판독 가능한 기록매체에 기록하여 사용자에게 제공해도 좋다.
(광디스크의 재생)
BD-ROM 드라이브는 반도체 레이저, 콜리메이트 렌즈, 빔 스플리터, 대물렌즈, 집광렌즈, 광검출기를 갖는 광학 헤드를 구비한다. 반도체 레이저로부터 출사된 광 빔은 콜리메이트 렌즈, 빔 스플리터, 대물렌즈를 거쳐서 광디스크의 정보 면에 집광된다.
집광된 광 빔은 광디스크 상에서 반사/회절되고, 대물렌즈, 빔 스플리터, 집광렌즈를 거쳐서 광검출기에 집광된다. 광 검출기에 집광된 빛의 광량에 따라서 재생신호를 생성한다.
(기록매체의 변형 예)
각 실시 예에서의 기록매체는 광디스크, 반도체 메모리 카드 등, 패키지 미디어 전반을 포함하고 있다. 본 실시 예의 기록매체는 미리 필요한 데이터가 기록된 광디스크(예를 들어, BD-ROM, DVD-ROM 등의 기존의 판독 가능한 광디스크)를 예에 설명하나, 이에 한정될 필요는 없으며, 예를 들어, 방송 또는 네트워크를 경유해서 배신(配信)된 본 발명의 실시에 필요한 데이터를 포함한 3D 콘텐츠를 광디스크에 기록하는 기능을 갖는 단말장치(예를 들어 좌측에 기재한 기능은 재생장치에 포함되어 있어도 좋고, 재생장치와는 다른 장치라도 좋다)를 이용하여 기록 가능한 광디스크(예를 들어, BD-RE, DVD-RAM 등의 기존의 기록 가능한 광디스크)에 기록하고, 이 기록한 광디스크를 본 발명의 재생장치에 적용해도 본 발명의 실시는 가능하다.
(반도체 메모리 카드 기록장치 및 재생장치의 실시 예)
각 실시 예에서 설명한 데이터 구조를 반도체 메모리에 기록하는 기록장치 및 재생하는 재생장치의 실시 예에 대해서 설명한다.
먼저, 전제가 되는 기술로 BD-ROM에 기록되어 있는 데이터의 저작권 보호의 구조에 대해서 설명한다.
BD-ROM에 기록된 데이터 중 예를 들어 저작권의 보호, 데이터의 비닉성의 향상의 관점에서 데이터의 일부가 필요에 따라서 암호화되어 있는 경우가 있다.
예를 들어, BD-ROM에 기록된 데이터 중 암호화되어 있는 데이터는 예를 들어 비디오 스트림에 대응하는 데이터, 오디오 스트림에 대응하는 데이터, 또는 이들을 포함하는 스트림에 대응하는 데이터이다.
이후, BD-ROM에 기록된 데이터 중 암호화되어 있는 데이터의 해독에 대하여 설명한다.
반도체 메모리 카드 재생장치에서는 BD-ROM 내의 암호화된 데이터를 해독하기 위해서 필요한 키에 대응하는 데이터(예를 들어 디바이스 키)가 미리 재생장치에 기억되어 있다.
한편, BD-ROM에는 암호화된 데이터를 해독하기 위해서 필요한 키에 대응하는 데이터(예를 들어 상술한 디바이스 키에 대응하는 MKB(미디어 키 블록))와 암호화된 데이터를 해독하기 위한 키 자체를 암호화한 데이터(예를 들어 상술한 디바이스 키 및 MKB에 대응하는 암호화 타이틀 키)가 기록되어 있다. 여기서, 디바이스 키, MKB, 및 암호화 타이틀 키는 쌍으로 되어 있으며, BD-ROM 상의 통상 카피할 수 없는 영역(BCA로 불리는 영역)에 기록된 식별자(예를 들어 볼륨 ID)와도 대응부여가 되어 있다. 이 조합이 정당하지 않으면, 암호의 해독을 할 수 없는 것으로 한다. 조합이 정당한 경우에만 암호 해독에 필요한 키(예를 들어 상술한 디바이스 키, MKB 및 볼륨 ID를 기초로 암호화 타이틀 키를 복호해서 얻을 수 있는 타이틀 키)를 도출할 수 있으며, 이 암호 해독에 필요한 키를 이용하여 암호화된 데이터의 해독이 가능해진다.
장전된 BD-ROM를 재생장치에서 재생하는 경우, 예를 들어 BD-ROM 내의 암호화 타이틀 키, MKB와 쌍으로 되어 있는(또는 대응하는) 디바이스 키가 재생장치 내에 없으면, 암호화된 데이터는 재생이 이루어지지 않는다. 왜냐하면, 암호화된 데이터의 해독에 필요한 키(타이틀 키)는 키 자체가 암호화 되어(암호화 타이틀 키) BD-ROM 상에 기록되어 있으며, MKB와 디바이스 키의 조합이 정당하지 않으면, 암호의 해독에 필요한 키를 도출해낼 수 없기 때문이다.
역으로, 암호화 타이틀 키, MKB, 디바이스 키 및 볼륨 ID의 조합이 정당하면, 예를 들어 상술한 암호 해독에 필요한 키(디바이스 키, MKB 및 볼륨 ID를 기초로 암호화 타이틀 키를 복호 해 얻을 수 있는 타이틀 키)를 이용하여 비디오 스트림이 디코더에 의해 디코드 되고, 오디오 스트림이 오디오 디코더에 의해 디코드 되도록 재생장치는 구성되어 있다.
이상이 BD-ROM에 기록되어 있는 데이터의 저작권 보호의 구조이나, 이 구조는 BD-ROM에 반드시 한정되는 것이 아니며, 예를 들어, 판독/기록 가능한 반도체 메모리(예를 들어 SD 카드 등의 휴대성을 갖는 반도체 메모리카드)에 적용했을 경우에서도 실시가 가능하다.
반도체 메모리 카드 재생장치의 재생순서에 대해서 설명한다. 광디스크에서는 예를 들어 광디스크 드라이브를 통해서 데이터를 판독하도록 구성되어 있던 것에 대하여, 반도체 메모리 카드를 이용했을 경우에는 반도체 메모리 카드 내의 데이터를 판독하기 위한 I/F를 통해서 데이터를 판독하도록 구성하면 좋다.
더 상세하게는 재생장치의 슬롯에 반도체 메모리 카드가 삽입되면, 반도체 메모리 카드 I/F를 경유해서 재생장치와 반도체 메모리 카드가 전기적으로 접속된다. 반도체 메모리 카드에 기록된 데이터는 반도체 메모리카드 I/F를 통해서 판독하도록 구성되면 좋다.
(수신장치로서의 실시 예)
각 실시 예에서 설명한 재생장치는 본 실시 예에서 설명한 데이터에 상응하는 데이터(배신 데이터)를 전자 배신 서비스의 배신 서버로부터 수신하고, 반도체 메모리 카드에 기록하는 단말장치로도 실현할 수 있다.
이러한 단말장치는 각 실시 예에서 설명한 재생장치가 그러한 동작을 행할 수 있도록 구성되어 있어도 좋고, 본 실시 예의 재생장치와는 별도로 반도체 메모리에 배신 데이터를 기억하는 것을 실시하는 전용의 단말장치에서 행하는 형태라도 좋다. 여기에서는 재생장치가 행하는 예에 대해서 설명한다. 또 기록 처의 반도체 메모리로 SD카드를 예로 하여 설명을 한다.
재생장치가 구비하는 슬롯에 삽입된 SD메모리 카드에 배신 데이터를 기록하는 경우, 먼저 배신 데이터를 축적하는 배신 서버에 배신 데이터의 송신을 요구한다. 이때, 재생장치는 삽입한 SD메모리 카드를 고유하게 식별하기 위한 식별정보(예를 들어 개개의 SD메모리 카드 고유의 식별번호, 더 구체적으로는, 예를 들어 SD메모리 카드의 일련번호 등)을 SD메모리 카드에서 판독하고, 판독한 식별정보를 배신 요구와 함께 배신 서버에 송신한다.
이 SD메모리 카드를 고유하게 식별하기 위한 식별 정보는 예를 들어 상술한 볼륨 ID에 상당한다.
한편, 배신 서버에서는 배신하는 데이터 중 필요한 데이터(예를 들어 비디오 스트림, 오디오 스트림 등)이 암호 해독에 필요한 키(예를 들어 타이틀 키)를 이용하여 암호의 해제를 할 수 있도록 암호화가 이루어져서 서버상에 저장되어 있다.
예를 들어 배신 서버는 비밀키를 보유하고 있고, 반도체 메모리 카드의 고유의 식별번호의 각각 대하여 다른 공개키 정보가 동적으로 생성될 수 있도록 구성되어 있다.
또, 배신 서버는 암호화된 데이터의 해독에 필요한 키(타이틀 키) 자신에 대하여 암호화를 할 수 있도록 구성되어 있다(즉, 암호화 타이틀 키를 생성할 수 있도록 구성되어 있다).
생성되는 공개키 정보는 예를 들어 상술한 MKB, 볼륨 ID 및 암호화 타이틀 키에 상당하는 정보를 포함한다. 암호화된 데이터는 예를 들어 반도체 메모리 고유의 식별번호, 후술하는 공개키 정보에 포함되는 공개키 본체, 및 재생장치에 미리 기록된 디바이스 키의 조합이 정당하면, 암호 해독에 필요한 키(예를 들어, 디바이스 키, MKB 및 반도체 메모리 고유의 식별번호를 기초로 암호화 타이틀 키를 복호 해서 얻을 수 있는 타이틀 키)가 얻어지며, 이 얻어진 암호 해독에 필요한 키(타이틀 키)를 이용하여 암호화된 데이터의 해독을 할 수 있는 것이다.
다음에, 재생장치는 수신한 공개키 정보와 배신 데이터를 슬롯에 삽입한 반도체 메모리 카드의 기록영역에 기록한다.
다음에, 반도체 메모리 카드의 기록영역에 기록한 공개키 정보와 배신 데이터에 포함되는 데이터 중 암호화한 데이터를 복호해서 재생하는 방법의 일 예에 대하여 설명한다.
수신한 공개키 정보는 예를 들어 공개키 본체(예를 들어 상술의 MKB 및 암호화 타이틀 키), 서명 정보, 반도체 메모리 카드의 고유의 식별번호, 및 무효로 할 디바이스에 관한 정보를 나타내는 디바이스 리스트가 기록되어 있다.
서명 정보에는 예를 들어, 공개키 정보의 해시 값을 포함한다.
디바이스 리스트에는 예를 들어, 부정하게 재생이 이루어질 가능성이 있는 디바이스에 관한 정보가 기재되어 있다. 이는 예를 들어 재생장치에 미리 기록된 디바이스 키, 재생장치의 식별번호, 또는 재생장치가 구비하는 디코더의 식별번호와 같이, 부정하게 재생될 가능성이 있는 장치, 장치에 포함되는 부품, 또는 기능(프로그램)과 같은 것을 고유하게 특정하기 위한 정보이다.
반도체 메모리 카드의 기록영역에 기록한 배신 데이터 중 암호화된 데이터의 재생에 관하여 설명한다.
먼저, 공개키 본체를 이용하여 암호화한 데이터를 복호하기 전에 복호 키 본체를 기능시켜도 좋은지 여부에 관한 체크를 한다.
구체적으로는 (1) 공개키 정보에 포함되는 반도체 메모리 고유의 식별정보와 반도체 메모리 카드로 미리 기억되어 있는 고유의 식별번호가 일치하는가 여부의 체크, (2) 재생장치 내에서 산출한 공개키 정보의 해시 값과 서명 정보에 포함되는 해시 값이 일치하는가의 체크, (3) 공개키 정보에 포함되는 디바이스 리스트에 나타낸 정보에 의거하여 재생을 하는 재생장치가 부정한 재생이 가능한지 여부의 체크(예를 들어 공개키 정보에 포함되는 디바이스 리스트에 나타내는 디바이스 키와, 재생장치에 미리 기억된 디바이스 키가 일치하는가 여부의 체크)를 한다. 이들 체크를 하는 순서는 어떤 순서로 행해도 좋다.
상술한 (1)~(3)의 체크에서 공개키 정보에 포함되는 반도체메모리 고유의 식별정보와 반도체 메모리에 미리 기억되어 있는 고유의 식별번호가 일치하지 않고, 재생장치 내에서 산출한 공개키 정보의 해시 값과 서명정보에 포함되는 해시 값이 일치하지 않거나, 또는 재생을 하는 재생장치가 부정하게 재생될 가능성이 있다고 판단한 경우 중 어느 하나를 만족하면, 재생장치는 암호화된 데이터의 해독이 이루어지지 않도록 제어한다.
또, 공개키 정보에 포함되는 반도체 메모리 카드의 고유의 식별 정보와 반도체 메모리 카드에 미리 기억되어 있는 고유의 식별번호가 일치하고, 또한 재생장치 내에서 산출한 공개키 정보의 해시 값과 서명 정보에 포함되는 해시 값이 일치하며, 또한 재생을 하는 재생장치가 부정하게 재생될 가능성이 없다고 판단한 것이면, 반도체 메모리 고유의 식별번호, 공개키 정보에 포함되는 공개키 본체, 및 재생장치에 미리 기록된 디바이스 키의 조합이 정당하다고 판단하고, 암호 해독에 필요한 키(디바이스 키, MKB 및 반도체 메모리 고유의 식별번호를 기초로 암호화 타이틀 키를 복호하여 얻어지는 타이틀 키)를 이용하여 암호화된 데이터의 해독을 한다.
예를 들어 암호화된 데이터가 비디오 스트림, 오디오 스트림인 경우, 비디오 디코더는 상술한 암호 해독에 필요한 키(암호화 타이틀 키를 복호해서 얻어지는 타이틀 키)를 이용하여 비디오 스트림을 복호하고(디코드하고), 오디오 디코더는 상술한 암호 해독에 필요한 키를 이용하여 오디오 스트림을 복호한다(디코드한다).
이와 같이 구성함으로써, 전자 배신시에 부정하게 이용될 가능성이 있는 재생장치, 부품, 기능(프로그램) 등을 알고 있는 경우, 이들을 식별하기 위한 정보를 디바이스 리스트에 나타내고, 배신하도록 하면, 재생장치 측이 디바이스 리스트에 나타낸 것을 포함하는 경우에는 공개키 정보(공개키 본체)를 이용한 복호를 억제할 수 있도록 할 수 있으므로, 반도체 메모리 고유의 식별번호, 공개키 정보에 포함되는 공개키 본체, 및 재생 장치에 미리 기록된 디바이스 키의 조합이 비록 정당해도 암호화된 데이터의 해독이 이루어지지 않도록 제어할 수 있으므로, 부정한 장치상에서의 배신 데이터의 이용을 억제할 수 있게 된다.
또, 반도체 메모리 카드에 미리 기록되어 있는 반도체 메모리 카드의 고유의 식별자는 비닉성이 높은 기록영역에 저장하는 구성을 채용하는 것이 바람직하다. 왜냐하면, 반도체 메모리 카드에 미리 기록되어 있는 고유의 식별번호(예를 들어 SD메모리 카드를 예로 하면 SD메모리 카드의 일련번호 등)은 개찬이 이루어지면, 불법 복사가 용이하게 되어 버린다. 왜냐하면, 복수의 반도체 메모리 카드에는 각각 다른 고유의 식별번호가 할당되어 있으나, 이 고유의 식별번호가 동일하게 되도록 개찬이 이루어져 버리면 상술한 (1)의 판정이 의미를 잃어버리게 되어 개찬이 이루어진 수에 상당하는 불법 복사가 이루어질 가능성이 있기 때문이다.
따라서, 반도체 메모리 카드의 고유의 식별번호와 같은 정보는 비닉성이 높은 기록영역에 기록하는 구성을 채용하는 것이 바람직하다.
이들 구성을 실현하기 위해서, 예를 들어 반도체 메모리 카드는 반도체 메모리 카드의 고유의 식별자와 같은 비닉성이 높은 데이터를 기록하기 위한 기록영역을 통상의 데이터를 저장하는 기록영역(제 1의 기록영역이라고 한다)과는 다른 기록영역(제 2의 기록영역이라고 한다)에 설치할 것, 및 이 제 2의 기록영역으로의 액세스를 하기 위한 제어 회로를 설치하는 동시에, 제 2의 기록영역으로의 액세스에는 제어회로를 통해서만 액세스할 수 있는 구성으로 한다.
예를 들어, 제 2의 기록영역에 기록되어 있는 데이터는 암호화가 이루어져서 기록되어 있으며, 제어 회로는 예를 들어 암호화된 데이터를 복호하기 위한 회로가 포함되어 있다. 제어 회로에 제 2의 기록영역으로의 데이터의 액세스가 일치한 경우에는 암호를 복호하고, 복호한 데이터를 되돌리도록 구성하면 좋다. 또는 제어 회로는 제 2의 기록영역에 기록되어 있는 데이터의 저장 장소 정보를 보유하고 있으며, 데이터의 액세스의 요구가 있으면, 대응하는 데이터의 저장 장소를 특정하고, 특정한 저장 장소로부터 판독한 데이터를 되돌리는 구성이라도 좋다.
재생장치상에서 동작하는 애플리케이션에서 전자 배신을 이용하여 반도체 메모리카드에 기록을 요구하는 애플리케이션은 메모리 카드 I/F를 통해서 제어 회로에 제 2의 기록영역에 기록된 데이터(예를 들어 반도체 메모리 고유의 식별번호)로의 액세스 요구를 발행하면, 요구를 받은 제어 회로는 제 2의 기록영역에 기록된 데이터를 판독하여 재생장치상에서 동작하는 애플리케이션에 되돌린다. 이 반도체 메모리 카드의 고유의 식별번호와 함께 필요한 데이터의 배신 요구를 배신 서버에 요구하고, 배신 서버로부터 보내지는 공개키 정보, 및 대응하는 배신 데이터를 제 1의 기록영역에 기록하도록 구성하면 좋다.
또, 재생장치상에서 동작하는 애플리케이션에서 전자 배신을 이용하여 반도체 메모리 카드에 기록을 요구하는 애플리케이션은 메모리 카드 I/F를 통해서 제어 회로에 제 2의 기록영역에 기록된 데이터(예를 들어 반도체 메모리 고유의 식별번호)로의 액세스 요구를 발행하기 전에 애플리케이션의 개찬이 되어 있지 않은가를 사전에 체크하는 것이 바람직하다. 개찬의 체크에는 예를 들어 기존의 X.509 사양에 준거한 디지털 증명서를 이용한 체크 등을 이용해도 좋다.
또, 반도체 메모리 카드의 제 1의 기록영역에 기록된 배신 데이터로의 액세스는 반도체 메모리 카드가 갖는 제어 회로를 통해서 액세스할 필요는 반드시 없다.
본 발명의 정보기록매체는 3D 영상을 저장하고 있으나 2D 영상을 재생하는 장치와 3D 영상을 재생하는 장치의 어디에서도 재생할 수 있으므로, 호환성을 의식하지 않고 3D 영상을 저장한 영화 타이틀 등의 동화상 콘텐츠를 시장에 공급 할 수 있어서, 영화 시장이나 민생기기시장을 활성화시킬 수 있다.
따라서 본 발명의 기록매체, 재생장치는 영화 산업이나 민생기기산업에서 높은 이용 가능성을 갖는다.
100 기록매체
200 재생장치
300 표시장치
400 3D 안경
500 리모컨

Claims (22)

  1. 플레이리스트정보와 복수의 엘리멘터리 스트림이 기록된 기록매체로,
    상기 플레이리스트정보는 기본 스트림 선택테이블과 확장 스트림 선택테이블을 포함하며,
    상기 기본 스트림 선택테이블은 스트림 번호에 대응시킨 평면 시 재생 모드에서 재생되는 엘리멘터리 스트림의 리스트를 나타내고,
    상기 확장 스트림 선택테이블은 상기 스트림 번호와 동일한 스트림 번호에 대응시킨 입체 시 재생 모드에서 재생되는 엘리멘터리 스트림의 리스트를 나타내는 것을 특징으로 하는 기록매체.
  2. 제 1 항에 있어서,
    상기 엘리멘터리 스트림의 리스트는 엘리멘터리 스트림의 스트림 엔트리를 스트림 번호에 대응시키고,
    상기 스트림 엔트리는 상기 엘리멘터리 스트림에 대응하는 패킷 식별자를 포함하는 것을 특징으로 하는 기록매체.
  3. 제 1 항에 있어서,
    상기 평면 시 재생 모드에서 재생되는 엘리멘터리 스트림은 베이스 뷰 비디오 스트림이고,
    상기 입체 시 재생 모드에서 재생되는 엘리멘터리 스트림은 베이스 뷰 비디오 스트림과 함께 재생되는 디펜던트 뷰 비디오 스트림이며,
    상기 기본 스트림 선택테이블에 나타내는 리스트에 포함되는 베이스 뷰 비디오 스트림의 수는 상기 확장 스트림 선택테이블에 나타나는 리스트에 포함되는 디펜던트 뷰 비디오 스트림의 수와 동일한 것을 특징으로 하는 기록매체.
  4. 제 1 항에 있어서,
    상기 엘리멘터리 스트림은 그래픽스 스트림이고,
    상기 확장 스트림 선택테이블은 식별 플래그를 포함하며,
    상기 식별 플래그는,
    입체 시 재생 모드에서 재생되는 그래픽스 스트림에 좌측 눈 용 그래픽스 스트림과 우측 눈 용 그래픽스 스트림의 쌍이 존재하는가 여부를 나타내는 것을 특징으로 하는 기록매체.
  5. 제 4 항에 있어서,
    그래픽스 스트림에는 프레젠테이션 그래픽스 스트림과 인터랙티브 그래픽스 스트림이 있는 것을 특징으로 하는 기록매체.
  6. 플레이리스트정보와 스트림 파일이 기록된 기록매체의 재생을 하는 재생장치로,
    상기 플레이리스트정보는 기본 스트림 선택테이블과 확장 스트림 선택테이블을 포함하고,
    상기 기본 스트림 선택테이블은 스트림 번호에 대응시킨 평면 시 재생 모드에서 재생되는 엘리멘터리 스트림의 리스트를 나타내며,
    상기 확장 스트림 선택테이블은 상기 스트림 번호와 동일한 스트림 번호에 대응시킨 입체 시 재생 모드에서 재생되는 엘리멘터리 스트림의 리스트를 나타내고,
    상기 스트림 파일에 저장되어 있는 복수의 패킷을 순차 판독하는 판독수단과,
    판독된 복수의 패킷 중 소정의 패킷 식별자를 갖는 것을 분리하는 다중분리수단과,
    다중분리된 패킷을 디코드하는 디코더를 구비하며,
    입체 시 재생 모드에서 상기 다중분리수단은,
    상기 확장 스트림 선택테이블이 나타내는 엘리멘터리 스트림의 리스트 중 상기 스트림 번호에 대응하는 스트림 엔트리에 의해서 나타나는 패킷 식별자를 다중분리에 이용하는 것을 특징으로 하는 재생장치.
  7. 제 6 항에 있어서,
    상기 엘리멘터리 스트림은 그래픽스 스트림이고,
    상기 확장 스트림 선택테이블은 식별 플래그를 포함하며,
    상기 식별 플래그는,
    입체 시 재생 모드에서 재생되는 그래픽스 스트림에 좌측 눈 용 그래픽스 스트림과 우측 눈 용 그래픽스 스트림의 쌍이 존재하는가 여부를 나타내고,
    상기 다중분리수단은 식별 플래그가 좌측 눈 용 그래픽스 스트림과 우측 눈 용 그래픽스 스트림의 쌍이 존재한다는 취지를 나타내는 경우,
    좌측 눈 용 그래픽스 스트림과 우측 눈 용 그래픽스 스트림의 쌍을 디코더에 공급하는 것을 특징으로 하는 재생장치.
  8. 제 7 항에 있어서,
    그래픽스 스트림에는 프레젠테이션 그래픽스 스트림과 인터랙티브 그래픽스 스트림이 있는 것을 특징으로 하는 재생장치.
  9. 플레이리스트정보와 복수의 엘리멘터리 스트림이 기록된 기록매체로부터 수신한 데이터에 대하여 영상 및 음성신호 처리를 하는 반도체 집적회로로,
    상기 복수의 엘리멘터리 스트림은 좌측 눈 용 데이터와 우측 눈 용 데이터를 포함하고,
    상기 좌측 눈 용 데이터와 상기 우측 눈 용 데이터는 각각 다중화된 후, 복수의 좌측 눈 용 데이터 군과 복수의 우측 눈 용 데이터 군으로 분할되어 교호로 배치된 데이터로서 기록되어 있으며,
    각각의 상기 좌측 눈 용 데이터 군과 각각의 상기 우측 눈 용 데이터 군은 영상계 데이터를 포함하고,
    각각의 상기 좌측 눈 용 데이터 군과 각각의 상기 우측 눈 용 데이터 군의 적어도 어느 하나는 음성계 데이터를 포함하며,
    상기 플레이리스트정보는 기본 스트림 선택테이블과 확장 스트림 선택테이블을 포함하고,
    상기 기본 스트림 선택테이블은 스트림 번호에 대응시킨 평면 시 재생 모드에서 재생되는 엘리멘터리 스트림의 리스트를 나타내고,
    상기 확장 스트림 선택테이블은 상기 스트림 번호와 동일한 스트림 번호에 대응시킨 입체 시 재생 모드에서 재생되는 엘리멘터리 스트림의 리스트를 나타내며,
    상기 반도체 집적회로는,
    상기 반도체 집적회로를 제어하는 주 제어부와,
    상기 기록매체로부터 상기 좌측 눈 용 데이터 군과 상기 우측 눈 용 데이터 군이 교호로 배치된 데이터를 수신하고, 상기 반도체 집적회로의 내부 또는 외부에 설치된 메모리에 일단 저장한 후에, 상기 영상계 데이터와 상기 음성계 데이터로 다중분리하는 스트림 처리부와,
    상기 음성계 데이터와 상기 영상계 데이터를 각각 디코드하는 신호 처리부와,
    디코드 된 상기 영상계 데이터와 상기 음성계 데이터를 출력하는 AV 출력부를 구비하고 있으며,
    상기 스트림 처리부는 수신한 상기 데이터를 상기 메모리에 저장할 때 저장 처를 전환하는 전환부를 구비하고 있고,
    상기 메모리는 제 1 영역과 제 2 영역을 구비하고 있고,
    상기 주 제어부는 상기 좌측 눈 용 데이터 군에 속해 있는 데이터를 상기 제 1 영역에 저장하도록 상기 전환부를 제어하며,
    상기 우측 눈 용 데이터 군에 속해 있는 데이터를 상기 제 2 영역에 저장하도록 상기 전환부를 제어하는 것을 특징으로 하는 반도체 집적회로.
  10. 플레이리스트정보와 베이스 뷰 비디오 스트림과 디펜던트 뷰 비디오 스트림이 기록된 기록매체로,
    상기 플레이리스트정보는 주가 되는 재생구간정보와 종이 되는 재생구간 정보를 포함하며, 상기 주가 되는 재생구간정보는 상기 베이스 뷰 비디오 스트림의 재생시간 축에서의 개시시간 및 종료시간을 나타내는 시각정보를 포함하고,
    상기 종이 되는 재생구간정보는 상기 디펜던트 뷰 비디오 스트림의 재생시간 축에서의 개시시간 및 종료시간을 나타내는 시각정보를 포함하며, 상기 주가 되는 재생구간정보의 시각정보에 의해서 나타내는 개시시간은 상기 종이 되는 재생구간정보의 시각정보에 의해서 나타내는 개시시간과 동일하고, 상기 주가 되는 재생구간정보의 시각정보에 의해서 나타내는 종료시간은 상기 종이 되는 재생구간정보의 시각정보에 의해서 나타내는 종료시간과 동일한 것을 특징으로 하는 기록매체.
  11. 제 10 항에 있어서,
    상기 주가 되는 재생구간정보와 상기 종이 되는 재생구간정보의 각각은 멀티앵글 구간을 구성하는가 여부를 나타내는 플래그를 가지며,
    상기 주가 되는 재생구간정보가 갖는 플래그와 상기 종이 되는 재생구간정보가 갖는 플래그가 모두 멀티앵글 구간을 구성하는 것을 나타내는 경우,
    상기 주가 되는 재생구간에서의 앵글 수는 상기 종이 되는 재생구간에서의 앵글 수와 동일한 것을 특징으로 하는 기록매체.
  12. 플레이리스트정보와 베이스 뷰 비디오 스트림과 디펜던트뷰 비디오 스트림이 기록된 기록매체를 재생하는 재생장치로,
    상기 플레이리스트정보는 주가 되는 재생구간정보와 종이 되는 재생구간 정보를 포함하고,
    상기 주가 되는 재생구간정보는 상기 베이스 뷰 비디오 스트림의 재생시간 축에서의 개시시간 및 종료시간을 나타내는 시각정보를 포함하며,
    상기 종이 되는 재생구간정보는 상기 디펜던트 뷰 비디오 스트림의 재생시간 축에서의 개시시간 및 종료시간을 나타내는 시각정보를 포함하고,
    상기 주가 되는 재생구간정보의 시각정보에 의해서 나타내는 개시시간은 상기 종이 되는 재생구간정보의 시각정보에 의해서 나타내는 개시시간과 동일하며,
    상기 주가 되는 재생구간정보의 시각정보에 의해서 나타내는 종료시간은 상기 종이 되는 재생구간정보의 시각정보에 의해서 나타내는 종료시간과 동일하고, 상기 베이스 뷰 비디오 스트림을 재생하는 경우, 베이스 뷰 비디오 스트림의 시간 축 중 주가 되는 재생구간정보의 시각정보에 의해서 나타내는 개시시간부터 종료시간까지를 재생하고,
    상기 디펜던트 뷰 비디오 스트림을 재생하는 경우, 디펜던트 뷰 비디오 스트림의 시간 축 중 종이 되는 재생구간의 시각정보에 의해서 나타내는 개시시간부터 종료시간까지를 재생하며,
    상기 베이스 뷰 비디오 스트림의 시간 축과 상기 디펜던트 뷰 비디오 스트림의 시간 축은 동일한 것을 특징으로 하는 재생장치.
  13. 플레이리스트정보와 베이스 뷰 비디오 스트림과 디펜던트뷰 비디오 스트림이 기록된 기록매체에서 수신한 데이터에 대하여 영상 및 음성신호 처리를 하는 반도체 집적회로로,
    상기 베이스 뷰 비디오 스트림과 상기 디펜던트 뷰 비디오 스트림은 각각 다중화된 후, 복수의 베이스 뷰 데이터 군과 복수의 디펜던트 뷰 데이터 군으로 분할되어서 교호로 배치된 데이터로서 기록되어 있고,
    각각의 상기 베이스 뷰 데이터 군과 각각의 상기 디펜던트 뷰 데이터 군은 영상계 데이터를 포함하며,
    각각의 상기 베이스 뷰 데이터 군과 각각의 상기 디펜던트 뷰 데이터 군의 적어도 어느 하나는 음성계 데이터를 포함하고,
    상기 플레이리스트정보는 주가 되는 재생구간정보와 종이 되는 재생구간정보를 포함하며,
    상기 주가 되는 재생구간정보는 상기 베이스 뷰 비디오 스트림의 재생시간 축에서의 개시시간 및 종료시간을 나타내는 시각정보를 포함하고,
    상기 종이 되는 재생구간정보는 전기 디펜던트 뷰 비디오 스트림의 재생시간 축에서의 개시시간 및 종료시간을 나타내는 시각정보를 포함하고,
    상기 주가 되는 재생구간정보의 시각정보에 의해서 나타내는 개시시간은 상기 종이 되는 재생구간정보의 시각정보에 의해서 나타내는 개시시간과 동일하며,
    상기 주가 되는 재생구간정보의 시각정보에 의해서 나타내는 종료시간은 상기 종이 되는 재생구간정보의 시각정보에 의해서 나타내는 종료시간과 동일하고,
    상기 반도체 집적회로는,
    상기 반도체 집적회로의 제어를 하는 주 제어부와,
    상기 기록매체로부터 상기 베이스 뷰 데이터 군과 상기 디펜던트 뷰 데이터 군이 교호로 배치된 데이터를 수신하고, 상기 반도체 집적회로의 내부 또는 외부에 설치된 메모리에 일단 저장한 후, 상기 영상계 데이터와 상기 음성계 데이터로 다중분리하는 스트림 처리부와,
    상기 음성계 데이터와 상기 영상계 데이터를 각각 디코드하는 신호 처리부와,
    디코드 된 상기 영상계 데이터와 상기 음성계 데이터를 출력하는 AV 출력부를 구비하고 있으며,
    상기 스트림 처리부는 수신한 상기 데이터를 상기 메모리에 저장할 때 저장 처를 전환하는 전환부를 구비하고 있으며,
    상기 메모리는 제 1 영역과 제 2 영역을 가지고 있고,
    상기 주 제어부는,
    상기 베이스 뷰 데이터 군에 속해 있는 데이터를 상기 제 1 영역에 저장하도록 상기 전환부를 제어하고,
    상기 디펜던트 뷰 데이터 군에 속해 있는 데이터를 상기 제 2 영역에 저장하도록 상기 전환부를 제어하는 것을 특징으로 하는 반도체 집적회로.
  14. 베이스 뷰 스트림과 디펜던트 뷰 스트림 및 관리정보가 기록된 기록매체로,
    상기 베이스 뷰 스트림은 1개 이상의 베이스 뷰 익스텐트로 분할되고,
    상기 디펜던트 뷰 스트림은 1개 이상의 디펜던트 뷰 익스텐트로 분할되며,
    상기 베이스 뷰 익스텐트와 상기 디펜던트 뷰 익스텐트를 교호로 배치하여 인터리브 스트림 파일을 구성하고 있고,
    상기 관리정보는 베이스 뷰 관리정보와 디펜던트 뷰 관리정보를 포함하고,
    상기 베이스 뷰 관리정보는 상기 베이스 뷰 익스텐트의 선두 위치를 나타내는 익스텐트 스타트포인트 정보를 포함하며, 디펜던트 뷰 관리정보는 상기 디펜던트 뷰 익스텐트의 선두의 위치를 나타내는 익스텐트 스타트포인트 정보를 포함하는 것을 특징으로 하는 기록매체.
  15. 제 14 항에 있어서,
    상기 베이스 뷰 관리정보에서의 익스텐트 스타트포인트 정보는 상기 베이스 뷰 스트림의 선두에서부터의 상대 어드레스이고,
    상기 디펜던트 뷰 관리정보에서의 익스텐트 스타트포인트 정보는 상기 디펜던트 뷰 스트림의 선두에서부터의 상대 어드레스인 것을 특징으로 하는 기록매체.
  16. 베이스 뷰 스트림과 디펜던트 뷰 스트림 및 관리정보가 기록된 기록매체를 재생하는 재생장치로,
    상기 베이스 뷰 스트림은 1개의 이상의 베이스 뷰 익스텐트로 분할되고,
    상기 디펜던트 뷰 스트림은 1개 이상의 디펜던트 뷰 익스텐트로 분할되며,
    상기 베이스 뷰 익스텐트와 상기 디펜던트 뷰 익스텐트를 교호로 배치하여 인터리브 스트림 파일을 구성하고 있으며,
    상기 관리정보는 베이스 뷰 관리정보와 디펜던트 뷰 관리정보를 포함하고,
    상기 베이스 뷰 관리정보는 상기 베이스 뷰 익스텐트의 선두 위치를 나타내는 익스텐트 스타트포인트 정보를 포함하며, 디펜던트 뷰 관리정보는 상기 디펜던트 뷰 익스텐트의 선두 위치를 나타내는 익스텐트 스타트포인트 정보를 포함하고,
    상기 인터리브 스트림 파일로부터 상기 베이스 뷰 익스텐트 및 상기 디펜던트 뷰 익스텐트를 판독하는 판독수단과,
    판독된 상기 베이스 뷰 익스텐트 및 상기 디펜던트 뷰 익스텐트로부터 패킷 시퀀스를 복원하는 복원수단과,
    복원된 패킷 시퀀스로부터 개개의 패킷을 다중분리하는 다중분리수단과,
    다중분리에 의해 얻어지는 패킷을 디코드하는 디코더를 구비하고,
    상기 복원수단은,
    상기 베이스 뷰 관리정보 및 상기 디펜던트 뷰 관리정보에서의 익스텐트 스타트포인트 정보에 의거하여 상기 베이스 뷰 스트림을 구성하는 패킷의 열과 상기 디펜던트 뷰 스트림을 구성하는 패킷의 열을 복원하는 것을 특징으로 하는 재생장치.
  17. 베이스 뷰 스트림과 디펜던트 뷰 스트림 및 관리정보가 기록된 기록매체로부터 수신한 데이터에 대하여 영상 및 음성신호 처리를 하는 반도체 집적회로로,
    상기 베이스 뷰 스트림은 1개 이상의 베이스 뷰 익스텐트로 분할되고,
    상기 디펜던트 뷰 스트림은 1개 이상의 디펜던트 뷰 익스텐트로 분할되며,
    상기 베이스 뷰 익스텐트와 상기 디펜던트 뷰 익스텐트를 교호로 배치하여 인터리브 스트림 파일을 구성하고 있고,
    상기 관리정보는 베이스 뷰 관리정보와 디펜던트 뷰 관리정보를 포함하며,
    상기 베이스 뷰 관리정보는 상기 베이스 뷰 익스텐트의 선두 위치를 나타내는 익스텐트 스타트포인트 정보를 포함하고, 디펜던트 뷰 관리정보는 상기 디펜던트 뷰 익스텐트의 선두 위치를 나타내는 익스텐트 스타트포인트 정보를 포함하며,
    각각의 상기 베이스 뷰 익스텐트와 각각의 상기 디펜던트 뷰 익스텐트는 영상계 데이터를 포함하고,
    각각의 상기 베이스 뷰 익스텐트와 각각의 상기 디펜던트 뷰 익스텐트의 적어도 어느 하나는 음성계 데이터를 포함하며,
    상기 반도체 집적회로는,
    상기 반도체 집적회로의 제어를 하는 주 제어부와,
    상기 기록매체로부터 상기 인터리브 스트림 파일을 수신하고, 상기 반도체 집적회로의 내부 또는 외부에 설치된 메모리에 일단 저장한 후, 상기 영상계 데이터와 상기 음성계 데이터로 다중분리하는 스트림 처리부와,
    상기 음성계 데이터와 상기 영상계 데이터를 각각 디코드하는 신호 처리부와,
    디코드 된 상기 영상계 데이터와 상기 음성계 데이터를 출력하는 AV 출력부를 구비하고 있으며,
    상기 스트림 처리부는 수신한 상기 데이터를 상기 메모리에 저장할 때 저장 처를 전환하는 전환부를 구비하고 있고,
    상기 메모리는 제 1 영역과 제 2 영역을 가지고 있으며,
    상기 주 제어부는 상기 베이스 뷰 익스텐트에 속해 있는 데이터를 상기 제 1 영역에 저장하도록 상기 전환부를 제어하고,
    상기 디펜던트 뷰 익스텐트에 속해 있는 데이터를 상기 제 2 영역에 저장하도록 상기 전환부를 제어하는 것을 특징으로 하는 반도체 집적회로.
  18. 베이스 뷰 비디오 스트림과 디펜던트 뷰 비디오 스트림이 기록되어 있는 기록매체로,
    상기 베이스 뷰 비디오 스트림과 상기 디펜던트 뷰 비디오 스트림이 입체 시 정지화상을 구성하는 경우, 1매의 입체 시 정지화상을 구성하는 쌍(pair)인 베이스 뷰 정지화상과 디펜던트 뷰 정지화상에 있어서, 상기 베이스 뷰 정지화상의 선두는 상기 디펜던트 뷰 정지화상의 선두보다 선행하고 있고, 또한, 상기 디펜던트 뷰 정지화상의 후미는 상기 베이스 뷰 정지화상의 다음의 베이스 뷰 정지화상의 선두보다 선행하고 있는 것을 특징으로 하는 기록매체.
  19. 베이스 뷰 비디오 스트림과 디펜던트 뷰 비디오 스트림이 기록되어 있는 기록매체를 재생하는 재생장치로,
    상기 베이스 뷰 비디오 스트림과 상기 디펜던트 뷰 비디오 스트림이 입체 시 정지화상을 구성하는 경우, 1매의 입체 시 정지화상을 구성하는 쌍인 베이스 뷰 정지화상과 디펜던트 뷰 정지화상에 있어서, 상기 베이스 뷰 정지화상의 선두는 상기 디펜던트 뷰 정지화상의 선두보다 선행하고 있고, 또한, 상기 디펜던트 뷰 정지화상의 후미는 상기 베이스 뷰 정지화상의 다음의 베이스 뷰 정지화상의 선두보다 선행하고 있으며,
    상기 베이스 뷰 정지화상과 상기 디펜던트 뷰 정지화상을 판독하는 판독수단과,
    판독된 상기 베이스 뷰 정지화상과 상기 디펜던트 뷰 정지화상의 쌍을 디코드하는 디코더를 구비하는 것을 특징으로 하는 특징으로 하는 재생장치.
  20. 베이스 뷰 비디오 스트림과 디펜던트 뷰 비디오 스트림이 기록되어 있는 기록매체로부터 수신한 데이터에 대하여 영상 및 음성신호 처리를 하는 반도체 집적회로로,
    상기 베이스 뷰 비디오 스트림과 상기 디펜던트 뷰 비디오 스트림은 각각 다중화된 후, 복수의 베이스 뷰 데이터 군과 복수의 디펜던트 뷰 데이터 군으로 분할되어 교호로 배치된 데이터로서 기록되어 있으며,
    각각의 상기 베이스 뷰 데이터 군과 각각의 상기 디펜던트 뷰 데이터 군은 영상계 데이터를 포함하고,
    각각의 상기 베이스 뷰 데이터 군과 각각의 상기 디펜던트 뷰 데이터 군의 적어도 어느 하나는 음성계 데이터를 포함하며,
    상기 베이스 뷰 비디오 스트림과 상기 디펜던트 뷰 비디오 스트림이 입체 정지화상을 구성하는 경우,
    상기 베이스 뷰 비디오 스트림과 상기 디펜던트 뷰 비디오 스트림은 하나의 트랜스포트 스트림에 다중화되어 있고,
    상기 반도체 집적회로는,
    상기 반도체 집적회로의 제어를 하는 주 제어부와,
    상기 기록매체로부터 상기 베이스 뷰 데이터 군과 상기 디펜던트 뷰 데이터 군이 교호로 배치된 데이터를 수신하고, 상기 반도체 집적회로의 내부 또는 외부에 설치된 메모리에 일단 저장한 후, 상기 영상계 데이터와 상기 음성계 데이터로 다중분리하는 스트림 처리부와,
    상기 음성계 데이터와 상기 영상계 데이터를 각각 디코드하는 신호 처리부와,
    디코드 된 상기 영상계 데이터와 상기 음성계 데이터를 출력하는 AV 출력부를 구비하고 있으며,
    상기 스트림 처리부는 수신한 상기 데이터와 상기 메모리에 저장할 때 저장 처를 전환하는 전환부를 구비하고 있고,
    상기 메모리는 제 1 영역과 제 2 영역을 가지고 있으며,
    상기 주 제어부는 전기 베이스 뷰 데이터 군에 속해 있는 데이터를 상기 제 1 영역에 저장하도록 상기 전환부를 제어하고,
    상기 디펜던트 뷰 데이터 군에 속해 있는 데이터를 상기 제 2 영역에 저장하도록 상기 전환부를 제어하는 것을 특징으로 하는 반도체 집적회로.
  21. 그래픽스 스트림이 기록된 기록매체의 재생을 하는 재생장치로,
    다중분리부와,
    상기 그래픽스 스트림을 디코드하는 디코더와,
    디코더에 의해 얻어진 비 압축의 그래픽스를 저장하는 플레인 메모리를 구비하고,
    상기 그래픽스 스트림에 좌측 눈 용 그래픽스 스트림과 우측 눈 용 그래픽스 스트림의 쌍이 존재하며,
    입체 시 재생 모드에서 상기 디코더가 상기 좌측 눈 용 그래픽스 스트림과 상기 우측 눈 용 그래픽스 스트림을 디코드하는 경우,
    입체 시 재생 모드와 평면 시 재생 모드의 전환시에 그래픽스 표시의 소거를 하는 것을 특징으로 하는 재생장치.
  22. 그래픽스 스트림이 기록된 기록매체의 재생을 하는 재생장치에 장착될 수 있는 집적회로로,
    다중분리부와 상기 그래픽스 스트림을 디코드하는 디코더를 구비하고,
    상기 그래픽스 스트림에 좌측 눈 용 그래픽스 스트림과 우측 눈 용 그래픽스 스트림의 쌍이 존재하며,
    입체 시 재생 모드에서 상기 디코더가 상기 좌측 눈 용 그래픽스 스트림과 상기 우측 눈 용 그래픽스 스트림을 디코드하는 경우,
    입체 시 재생 모드와 평면 시 재생 모드의 전환시에 그래픽스 표시의 소거를 하는 것을 특징으로 하는 집적회로.
KR1020107017009A 2009-02-19 2010-02-04 기록매체, 재생장치, 집적회로 KR20110126514A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009037226 2009-02-19
JPJP-P-2009-037226 2009-02-19

Publications (1)

Publication Number Publication Date
KR20110126514A true KR20110126514A (ko) 2011-11-23

Family

ID=42633672

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107017009A KR20110126514A (ko) 2009-02-19 2010-02-04 기록매체, 재생장치, 집적회로

Country Status (17)

Country Link
US (1) US20110090305A1 (ko)
EP (1) EP2400771B1 (ko)
JP (6) JP4574748B2 (ko)
KR (1) KR20110126514A (ko)
CN (5) CN101933337B (ko)
AR (1) AR075527A1 (ko)
AU (1) AU2010203000B8 (ko)
BR (1) BRPI1001232A2 (ko)
CA (1) CA2708189C (ko)
DK (1) DK2400771T3 (ko)
ES (1) ES2526441T3 (ko)
MX (1) MX2010008147A (ko)
MY (1) MY152341A (ko)
RU (1) RU2525750C2 (ko)
TW (1) TW201127016A (ko)
WO (1) WO2010095382A1 (ko)
ZA (1) ZA201005044B (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244630A (ja) * 2009-04-07 2010-10-28 Sony Corp 情報処理装置、情報処理方法、プログラム、及び、データ構造
RU2538307C2 (ru) * 2009-05-12 2015-01-10 Сони Корпорейшн Структура данных и носитель данных, воспроизводящее устройство, способ воспроизведения, программа и носитель для хранения программы
JP2011041249A (ja) 2009-05-12 2011-02-24 Sony Corp データ構造および記録媒体、並びに、再生装置、再生方法、プログラム、およびプログラム格納媒体
JP2012089931A (ja) * 2010-10-15 2012-05-10 Sony Corp 情報処理装置、情報処理方法およびプログラム
CN102625092A (zh) * 2011-01-27 2012-08-01 天脉聚源(北京)传媒科技有限公司 一种移动设备播放视频的方法和装置
JP2012169730A (ja) * 2011-02-10 2012-09-06 Nec Personal Computers Ltd 画像処理方法及び画像処理装置
WO2012111320A1 (ja) * 2011-02-16 2012-08-23 パナソニック株式会社 映像符号化装置、映像符号化方法、映像符号化プログラム、映像再生装置、映像再生方法及び映像再生プログラム
MX2013009122A (es) * 2011-02-17 2013-11-04 Panasonic Corp Dispositivo de codificacion de video, metodo de codificacion de video, programa de codificacion de video, dispositivo de reproduccion de video, metodo de reproduccion de video y programa de reproduccion de video.
CN103202028A (zh) * 2011-03-11 2013-07-10 日立民用电子株式会社 记录装置/方法/介质、再现装置/方法
US8887206B2 (en) * 2011-06-09 2014-11-11 Cstereo3D, Llc Device and method for rendering and delivering 3-D content
JP2013026696A (ja) * 2011-07-15 2013-02-04 Sony Corp 送信装置、送信方法および受信装置
JP2013066075A (ja) * 2011-09-01 2013-04-11 Sony Corp 送信装置、送信方法および受信装置
US8611642B2 (en) * 2011-11-17 2013-12-17 Apple Inc. Forming a steroscopic image using range map
US9041819B2 (en) 2011-11-17 2015-05-26 Apple Inc. Method for stabilizing a digital video
KR20140105367A (ko) * 2011-12-28 2014-09-01 파나소닉 주식회사 재생장치, 송신장치, 재생방법 및 송신방법
US20150131455A1 (en) * 2012-07-19 2015-05-14 Electronics And Telecommnications Research Intitute Method and apparatus for selectively performing packet error classification of multiple packet streams multiplexed to same port
US10547713B2 (en) 2012-11-20 2020-01-28 Nvidia Corporation Method and system of transmitting state based input over a network
US20140195594A1 (en) * 2013-01-04 2014-07-10 Nvidia Corporation Method and system for distributed processing, rendering, and displaying of content
JP6303829B2 (ja) * 2014-06-03 2018-04-04 富士通株式会社 多重化プログラム、多重化装置、及び多重化方法
CN104702919B (zh) * 2015-03-31 2019-08-06 小米科技有限责任公司 播放控制方法及装置、电子设备
WO2017043504A1 (ja) 2015-09-10 2017-03-16 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
US10630773B2 (en) 2015-11-12 2020-04-21 Nvidia Corporation System and method for network coupled cloud gaming
US11027199B2 (en) 2015-11-12 2021-06-08 Nvidia Corporation System and method for network coupled gaming
DE102017109021B4 (de) * 2016-05-11 2022-10-27 Carl Zeiss Meditec Ag System für das stereoskopische Visualisieren eines Objektbereichs sowie Objektbereich-Visualisierungsverfahren
TWI606724B (zh) * 2016-10-03 2017-11-21 和碩聯合科技股份有限公司 多媒體播放裝置及其播放方法
CN108122558B (zh) * 2017-12-22 2020-12-29 深圳国微技术有限公司 一种latm aac音频流的实时转容实现方法及装置
WO2019215984A1 (ja) * 2018-05-09 2019-11-14 オリンパス株式会社 画像処理装置及び画像生成方法
CN109561263A (zh) * 2018-11-23 2019-04-02 重庆爱奇艺智能科技有限公司 在vr设备的3d视频中实现3d字幕效果
CN112711817B (zh) * 2019-10-24 2023-04-28 深圳市建筑设计研究总院有限公司 一种受弯构件的支座连接方法
CN112040264B (zh) * 2020-09-06 2023-04-21 北京字节跳动网络技术有限公司 互动系统、方法、装置、计算机设备及存储介质

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4739418A (en) * 1985-03-20 1988-04-19 Victor Company Of Japan, Ltd. Information signal recording disc recorded with stereoscopic television signal
JPS63151293A (ja) * 1986-12-16 1988-06-23 Mitsubishi Electric Corp 映像再生装置
JPH01109990A (ja) * 1987-10-23 1989-04-26 Sanyo Electric Co Ltd 立体ビデオディスクレコーダ
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
US6502199B2 (en) * 1995-09-29 2002-12-31 Matsushita Electric Industrial Co., Ltd. Method and an apparatus for reproducing bitstream having non-sequential system clock data seamlessly therebetween
EP0888018B1 (en) * 1996-02-28 2006-06-07 Matsushita Electric Industrial Co., Ltd. Optical disk having plural streams of digital video data recorded thereon in interleaved manner, and apparatuses and methods for recording on, and reproducing from, the optical disk
EP2175665B1 (en) * 1996-12-04 2012-11-21 Panasonic Corporation Optical disk for high resolution and three-dimensional video recording, optical disk reproduction apparatus, and optical disk recording apparatus
WO1999012348A1 (en) * 1997-08-29 1999-03-11 Matsushita Electric Industrial Co., Ltd. Optical disc for recording high resolution and normal image, optical disc player, optical disc recorder, and playback control information generator
US7184648B1 (en) * 1999-06-25 2007-02-27 Koninklijke Philips Electronics N.V. Incomplete streams
KR20030007447A (ko) * 2000-03-03 2003-01-23 테너 네트워크스, 인크. 내부 프로세서 메모리 공간을 이용한 고속 데이터 처리
KR100354840B1 (ko) * 2000-05-09 2002-10-05 최부진 입체영상 취득을 위한 촬영기 및 촬영방법
JP4251864B2 (ja) * 2002-12-13 2009-04-08 シャープ株式会社 画像データ作成装置およびそのデータを再生する画像データ再生装置
CN100484224C (zh) * 2003-01-20 2009-04-29 日本先锋公司 信息记录装置和方法、信息重放装置和方法、信息录放装置和方法
JP4331488B2 (ja) * 2003-02-20 2009-09-16 パナソニック株式会社 集積回路及びそれを用いた電子機器
JP4251907B2 (ja) * 2003-04-17 2009-04-08 シャープ株式会社 画像データ作成装置
JP4228767B2 (ja) * 2003-04-25 2009-02-25 ソニー株式会社 再生装置、再生方法、再生プログラムおよび記録媒体
JP4121888B2 (ja) * 2003-04-28 2008-07-23 シャープ株式会社 コンテンツ表示装置およびコンテンツ表示プログラム
JP2004357156A (ja) * 2003-05-30 2004-12-16 Sharp Corp 映像受信装置および映像再生装置
KR100884149B1 (ko) * 2004-06-02 2009-02-17 파나소닉 주식회사 슬라이드 쇼에서 랜덤 액세스를 고속으로 실현할 수 있는 기록매체, 재생장치, 컴퓨터 판독 가능한 기록매체, 기록방법, 재생방법
EP1781046A4 (en) * 2004-08-18 2010-01-20 Sharp Kk IMAGE DATA DISPLAY APPARATUS
WO2006109717A1 (ja) * 2005-04-07 2006-10-19 Matsushita Electric Industrial Co., Ltd. 記録媒体、再生装置、記録方法、再生方法
JP2007004896A (ja) * 2005-06-23 2007-01-11 Toshiba Corp 情報記憶媒体、情報転送方法、情報再生方法、及び情報記録方法
KR100657322B1 (ko) * 2005-07-02 2006-12-14 삼성전자주식회사 로컬 3차원 비디오를 구현하기 위한 인코딩/디코딩 방법 및장치
JP2007129368A (ja) * 2005-11-01 2007-05-24 Matsushita Electric Ind Co Ltd 情報記録装置およびその方法
JP2006230001A (ja) * 2006-03-20 2006-08-31 Sony Corp 再生装置、再生方法、再生プログラムおよび記録媒体
JP5011842B2 (ja) * 2006-06-22 2012-08-29 株式会社ニコン 画像再生装置
JP5100746B2 (ja) * 2007-03-22 2012-12-19 三菱電機株式会社 映像再生装置および映像再生方法
JP2009033348A (ja) * 2007-07-25 2009-02-12 Toshiba Corp ビデオ会議アプリケーションサーバ、ビデオ会議方法およびプログラム
KR20110036882A (ko) * 2008-06-24 2011-04-12 파나소닉 주식회사 기록매체, 재생장치, 집적회로, 재생방법, 프로그램

Also Published As

Publication number Publication date
EP2400771A1 (en) 2011-12-28
ZA201005044B (en) 2012-01-25
JP2011010312A (ja) 2011-01-13
TW201127016A (en) 2011-08-01
EP2400771B1 (en) 2014-11-19
JP2011019228A (ja) 2011-01-27
CN102547346A (zh) 2012-07-04
AR075527A1 (es) 2011-04-06
RU2525750C2 (ru) 2014-08-20
CN102881304A (zh) 2013-01-16
CN102547359A (zh) 2012-07-04
JP4588119B1 (ja) 2010-11-24
AU2010203000B8 (en) 2014-10-09
RU2010132152A (ru) 2013-03-27
CA2708189C (en) 2016-03-29
AU2010203000B2 (en) 2014-09-25
MX2010008147A (es) 2010-11-25
JP2011030221A (ja) 2011-02-10
CN101933337B (zh) 2012-10-31
JP4574748B2 (ja) 2010-11-04
CN102685435B (zh) 2013-07-17
JP4588118B1 (ja) 2010-11-24
JP5336436B2 (ja) 2013-11-06
AU2010203000A8 (en) 2014-10-09
JP4701312B2 (ja) 2011-06-15
CN101933337A (zh) 2010-12-29
WO2010095382A1 (ja) 2010-08-26
JPWO2010095382A1 (ja) 2012-08-23
CN102685435A (zh) 2012-09-19
CN102547359B (zh) 2014-12-10
BRPI1001232A2 (pt) 2016-02-10
EP2400771A4 (en) 2013-11-27
MY152341A (en) 2014-09-15
DK2400771T3 (en) 2015-02-23
ES2526441T3 (es) 2015-01-12
US20110090305A1 (en) 2011-04-21
CA2708189A1 (en) 2010-08-19
JP2011019230A (ja) 2011-01-27
AU2010203000A1 (en) 2010-09-02
JP2011015408A (ja) 2011-01-20

Similar Documents

Publication Publication Date Title
JP4574748B2 (ja) 記録媒体、再生装置、記録方法、記録媒体再生システム
JP4629805B2 (ja) 再生装置、記録方法、記録媒体再生システム
JP4564107B2 (ja) 記録媒体、再生装置、システムlsi、再生方法、記録方法、記録媒体再生システム
JP5491437B2 (ja) 3d映像を再生するための再生装置
WO2010095381A1 (ja) 記録媒体、再生装置、集積回路
WO2010038409A1 (ja) 再生装置、記録媒体、及び集積回路
WO2010095410A1 (ja) 記録媒体、再生装置、集積回路
WO2010143441A1 (ja) 再生装置、集積回路、記録媒体
WO2010143439A1 (ja) 再生装置、集積回路、記録媒体

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application