KR20120006431A - 기록 장치, 기록 방법, 재생 장치, 재생 방법, 기록 매체 및 프로그램 - Google Patents

기록 장치, 기록 방법, 재생 장치, 재생 방법, 기록 매체 및 프로그램 Download PDF

Info

Publication number
KR20120006431A
KR20120006431A KR20107026917A KR20107026917A KR20120006431A KR 20120006431 A KR20120006431 A KR 20120006431A KR 20107026917 A KR20107026917 A KR 20107026917A KR 20107026917 A KR20107026917 A KR 20107026917A KR 20120006431 A KR20120006431 A KR 20120006431A
Authority
KR
South Korea
Prior art keywords
data
stream
view video
video
picture
Prior art date
Application number
KR20107026917A
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 KR20120006431A publication Critical patent/KR20120006431A/ko

Links

Images

Classifications

    • 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/156Mixing image signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/11Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information not detectable on the record carrier
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42646Internal components of the client ; Characteristics thereof for reading from or writing on a non-volatile solid state storage medium, e.g. DVD, CD-ROM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • H04N21/4325Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/84Television signal recording using optical recording
    • H04N5/85Television signal recording using optical recording on discs or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • H04N9/8227Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal the additional signal being at least another television signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Television Signal Processing For Recording (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진 기본 화상 스트림과 확장 화상 스트림이 기록되어 있는 BD 등의 기록 매체를, 복수 시점의 영상 데이터의 재생에 대응하고 있지 않은 장치에 있어서도 재생시킬 수 있도록 할 수 있는 기록 장치, 기록 방법, 재생 장치, 재생 방법, 기록 매체 및 프로그램에 관한 것이다. Base view video를 저장한 Access Unit에는 MVC 헤더의 부호화가 금지되어 있다. MVC 헤더가 없는 Access Unit에 저장되어 있는 view component에 대해서는, 그 view_id가 0인 것으로서 인식하도록 정의되어 있다. 본 발명은 BD-ROM 규격에 대응한 재생 장치에 적용할 수 있다.

Description

기록 장치, 기록 방법, 재생 장치, 재생 방법, 기록 매체 및 프로그램{RECORDING DEVICE, RECORDING METHOD, REPRODUCTION DEVICE, REPRODUCTION METHOD, RECORDING MEDIUM, AND PROGRAM}
본 발명은 기록 장치, 기록 방법, 재생 장치, 재생 방법, 기록 매체 및 프로그램에 관한 것이며, 특히 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진 기본 화상 스트림과 확장 화상 스트림이 기록되어 있는 BD 등의 기록 매체를, 복수 시점의 영상 데이터의 재생에 대응하고 있지 않은 장치에 있어서도 재생시킬 수 있도록 한 기록 장치, 기록 방법, 재생 장치, 재생 방법, 기록 매체 및 프로그램에 관한 것이다.
영화 등의 콘텐츠로서는 2차원 화상의 콘텐츠가 주류이지만, 최근에는 입체시가 가능한 입체 화상의 콘텐츠가 주목을 모으고 있다.
입체 화상의 표시에는 전용 디바이스가 필요하며, 그러한 입체용 디바이스로서는, 예를 들어 NHK(일본 방송 협회)가 개발한 IP(Integral Photography) 입체 화상 시스템이 있다.
입체 화상의 화상 데이터는, 복수의 시점의 화상 데이터(복수의 시점으로부터 촬영된 화상의 화상 데이터)로 이루어지고, 시점의 수가 많고, 또한 시점이 광범위에 이를수록, 여러 방향으로부터 피사체를 볼 수 있는, 소위 「광시야각 텔레비전」을 실현할 수 있다.
입체 화상 중, 시점의 수가 가장 적은 것은 시점의 수가 2시점인 스테레오 화상(소위 3D 화상)이다. 스테레오 화상의 화상 데이터는, 좌안으로 관찰되는 화상인 좌측 화상의 데이터와, 우안으로 관찰되는 화상인 우측 화상의 데이터로 이루어진다.
한편, 영화 등의, 고해상도의 화상의 콘텐츠는 그 데이터량이 많기 때문에, 그러한 데이터량이 많은 콘텐츠를 기록하기 위해서는 대용량의 기록 매체가 필요하게 된다.
그러한 대용량의 기록 매체로서는, BD(Blu-Ray(등록 상표))-ROM(Read Only Memory) 등의 Blu-Ray(등록 상표) Disc(이하, BD라고도 함)가 있다.
일본 특허 공개 제2005-348314호 공보
그런데, BD의 규격에서는, 스테레오 화상을 포함하는 입체 화상의 화상 데이터를, BD에 어떻게 기록하고, 또한 재생할지는 규정되어 있지 않다.
스테레오 화상의 화상 데이터는, 좌측 화상의 데이터의 스트림과 우측 화상의 데이터의 스트림의 2개의 데이터 스트림으로 이루어진다. 가령, 2개의 데이터 스트림을 그대로 BD에 기록한 것만으로는, 이미 보급되어 있는 BD 플레이어에서 재생하지 못할 우려가 있다.
본 발명은 이러한 상황을 감안하여 이루어진 것이며, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진 기본 화상 스트림과 확장 화상 스트림이 기록되어 있는 BD 등의 기록 매체를, 복수 시점의 영상 데이터의 재생에 대응하고 있지 않은 장치에 있어서도 재생시킬 수 있도록 하는 것이다.
본 발명의 일측면의 기록 장치는, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 출력하는 부호화 수단을 구비한다.
상기 부호화 수단에는, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진 상기 데이터 헤더가 부가된 데이터로 이루어지는 상기 기본 화상 스트림으로부터 상기 데이터 헤더를 제거시키고, 상기 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 상기 기본 화상 스트림을 출력시킬 수 있다.
상기 부호화 수단에는, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보로서, 1 이상의 값을 상기 데이터 헤더에 설정하고, 상기 확장 화상 스트림을 출력시킬 수 있다.
본 발명의 일측면의 기록 방법은, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 출력하는 스텝을 포함한다.
본 발명의 일측면의 프로그램은, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 출력하는 스텝을 포함하는 처리를 컴퓨터에 실행시킨다.
본 발명의 일측면의 기록 매체는, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림이 기록된 것이다.
본 발명의 다른 측면의 재생 장치는, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 1 이상의 값의 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 기록 매체로부터 판독하는 판독 수단과, 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 값이 작은 시점의 데이터부터 순서대로 처리를 행하는 수단이며, 상기 데이터 헤더가 부가되어 있지 않은 상기 기본 화상 스트림의 데이터를, 0의 값이 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 데이터로 하고, 상기 기본 화상 스트림의 데이터를, 상기 확장 화상 스트림의 데이터보다 먼저 복호하는 복호 수단을 구비한다.
본 발명의 다른 측면의 재생 방법은, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 1 이상의 값의 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 기록 매체로부터 판독하고, 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 값이 작은 시점의 데이터부터 순서대로 처리를 행하는 경우에, 상기 데이터 헤더가 부가되어 있지 않은 상기 기본 화상 스트림의 데이터를, 0의 값이 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 데이터로 하고, 상기 기본 화상 스트림의 데이터를, 상기 확장 화상 스트림의 데이터보다 먼저 복호하는 스텝을 포함한다.
본 발명의 다른 측면의 프로그램은, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 1 이상의 값의 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 기록 매체로부터 판독하고, 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 값이 작은 시점의 데이터부터 순서대로 처리를 행하는 경우에, 상기 데이터 헤더가 부가되어 있지 않은 상기 기본 화상 스트림의 데이터를, 0의 값이 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 데이터로 하고, 상기 기본 스트림의 데이터를, 상기 확장 화상 스트림의 데이터보다 먼저 복호하는 스텝을 포함하는 처리를 컴퓨터에 실행시킨다.
본 발명의 일측면에 있어서는, 복수 시점의 영상 데이터가 소정의 부호화 방식으로 부호화되고, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림이 출력된다.
본 발명의 다른 측면에 있어서는, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 1 이상의 값의 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림이 기록 매체로부터 판독되고, 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 값이 작은 시점의 데이터부터 순서대로 처리를 행하는 경우에, 상기 데이터 헤더가 부가되어 있지 않은 상기 기본 화상 스트림의 데이터가, 0의 값이 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 데이터로 되고, 상기 기본 화상 스트림의 데이터가, 상기 확장 화상 스트림의 데이터보다 먼저 복호된다.
본 발명에 따르면, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진 기본 화상 스트림과 확장 화상 스트림이 기록되어 있는 BD 등의 기록 매체를, 복수 시점의 영상 데이터의 재생에 대응하고 있지 않은 장치에 있어서도 재생시킬 수 있다.
도 1은 본 발명을 적용한 재생 장치를 포함하는 재생 시스템의 구성예를 도시하는 도면.
도 2는 촬영의 예를 도시하는 도면.
도 3은 MVC 인코더의 구성예를 도시하는 블록도.
도 4는 참조 화상의 예를 도시하는 도면.
도 5는 TS의 구성예를 도시하는 도면.
도 6은 TS의 다른 구성예를 도시하는 도면.
도 7은 TS의 또 다른 구성예를 도시하는 도면.
도 8은 AV 스트림의 관리의 예를 도시하는 도면.
도 9는 Main Path와 Sub Path의 구조를 도시하는 도면.
도 10은 광 디스크에 기록되는 파일의 관리 구조의 예를 도시하는 도면.
도 11은 PlayList 파일의 구문을 도시하는 도면.
도 12는 도 11에 있는 reserved_for_future_use의 사용 방법의 예를 도시하는 도면.
도 13은 3D_PL_type의 값의 의미를 도시하는 도면.
도 14는 view_type의 값의 의미를 도시하는 도면.
도 15는 도 11의 PlayList()의 구문을 도시하는 도면.
도 16은 도 15의 SubPath()의 구문을 도시하는 도면.
도 17은 도 16의 SubPlayItem(i)의 구문을 도시하는 도면.
도 18은 도 15의 PlayItem()의 구문을 도시하는 도면.
도 19는 도 18의 STN_table()의 구문을 도시하는 도면.
도 20은 재생 장치의 구성예를 도시하는 블록도.
도 21은 도 20의 디코더부의 구성예를 도시하는 도면.
도 22는 비디오 스트림의 처리를 행하는 구성을 도시하는 도면.
도 23은 비디오 스트림의 처리를 행하는 구성을 도시하는 도면.
도 24는 비디오 스트림의 처리를 행하는 다른 구성을 도시하는 도면.
도 25는 Access Unit의 예를 도시하는 도면.
도 26은 비디오 스트림의 처리를 행하는 또 다른 구성을 도시하는 도면.
도 27은 합성부와, 그 전단의 구성을 도시하는 도면.
도 28은 합성부와, 그 전단의 구성을 도시하는 다른 도면.
도 29는 소프트 제작 처리부의 구성예를 도시하는 블록도.
도 30은 소프트 제작 처리부를 포함하는 각 구성의 예를 도시하는 도면.
도 31은 기록 장치에 설치되는 3D video TS 생성부의 구성예를 도시하는 도면.
도 32는 기록 장치에 설치되는 3D video TS 생성부의 다른 구성예를 도시하는 도면.
도 33은 기록 장치에 설치되는 3D video TS 생성부의 또 다른 구성예를 도시하는 도면.
도 34는 Access Unit을 디코드하는 재생 장치측의 구성을 도시하는 도면.
도 35는 디코드(복호화) 처리를 도시하는 도면.
도 36은 Close GOP 구조를 도시하는 도면.
도 37은 Open GOP 구조를 도시하는 도면.
도 38은 GOP 내의 최대 프레임·필드 수를 도시하는 도면.
도 39는 Close GOP 구조를 도시하는 도면.
도 40은 Open GOP 구조를 도시하는 도면.
도 41은 EP_map에 설정된 디코드 개시 위치의 예를 도시하는 도면.
도 42는 Dependent view video의 GOP 구조를 정의하지 않은 경우에 발생하는 문제에 대하여 도시하는 도면.
도 43은 픽처 서치의 개념을 도시하는 도면.
도 44는 광 디스크 상에 기록된 AV 스트림의 구조를 도시하는 도면.
도 45는 Clip AV 스트림의 예를 도시하는 도면.
도 46은 도 45의 Clip AV 스트림에 대응한 EP_map을 개념적으로 도시하는 도면.
도 47은 SPN_EP_start가 가리키는 소스 패킷의 데이터 구조의 예를 도시하는 도면.
도 48은 컴퓨터의 하드웨어의 구성예를 도시하는 블록도.
<제1 실시 형태>
[재생 시스템의 구성예]
도 1은, 본 발명을 적용한 재생 장치(1)를 포함하는 재생 시스템의 구성예를 도시하는 도면이다.
도 1에 도시한 바와 같이, 이 재생 시스템은, 재생 장치(1)와 표시 장치(3)가 HDMI(High Definition Multimedia Interface) 케이블 등으로 접속됨으로써 구성된다. 재생 장치(1)에는 BD 등의 광 디스크(2)가 장착된다.
광 디스크(2)에는, 시점의 수가 2개인 스테레오 화상(소위 3D 화상)을 표시하기 위하여 필요한 스트림이 기록되어 있다.
재생 장치(1)는, 광 디스크(2)에 기록되어 있는 스트림의 3D 재생에 대응한 플레이어이다. 재생 장치(1)는, 광 디스크(2)에 기록되어 있는 스트림을 재생하고, 재생하여 얻어진 3D 화상을 텔레비전 수상기 등으로 이루어지는 표시 장치(3)에 표시시킨다. 음성에 대해서도 마찬가지로 재생 장치(1)에 의해 재생되어, 표시 장치(3)에 설치되는 스피커 등으로부터 출력된다.
3D 화상의 표시의 방식으로서 다양한 방식이 제안되어 있다. 여기에서는 3D 화상의 표시의 방식으로서, 이하의 타입 1의 표시 방식과, 타입 2의 표시 방식을 채용한다.
타입 1의 표시 방식은, 3D 화상의 데이터를 좌안으로 관찰되는 화상(L 화상)의 데이터와, 우안으로 관찰되는 화상(R 화상)의 데이터로 구성하고, L 화상과 R 화상을 교대로 표시함으로써, 3D 화상을 표시하는 방식이다.
타입 2의 표시 방식은, 3D 화상을 생성하는 기초가 되는 화상인 원화상의 데이터와 Depth의 데이터를 사용하여 생성되는 L 화상과 R 화상을 표시함으로써, 3D 화상을 표시하는 방식이다. 타입 2의 표시 방식에서 사용되는 3D 화상의 데이터는, 원화상의 데이터와, 원화상에 제공함으로써 L 화상과 R 화상을 생성할 수 있는 Depth의 데이터로 구성된다.
타입 1의 표시 방식은, 시청할 때에 안경이 필요하게 되는 표시 방식이다. 타입 2의 표시 방식은, 안경 없이 3D 화상을 시청할 수 있는 표시 방식이다.
광 디스크(2)에는 타입 1과 2 중 어느 하나의 표시 방식에 의해서도 3D 화상을 표시할 수 있는 스트림이 기록되어 있다.
그러한 스트림을 광 디스크(2)에 기록하기 위한 부호화의 방식으로서, 예를 들어 H.264 AVC(Advanced Video Coding)/MVC(Multi-view Video coding)이 채용된다.
[H.264 AVC/MVC Profile]
H.264 AVC/MVC에서는, Base view video라고 불리는 화상 스트림과, Dependent view video라고 불리는 화상 스트림이 정의되어 있다. 이하, 적절하게 H.264 AVC/MVC를 간단히 MVC라고 한다.
도 2는, 촬영의 예를 도시하는 도면이다.
도 2에 도시한 바와 같이, 동일한 피사체를 대상으로 하여, L 화상용의 카메라와 R 화상용의 카메라에 의해 촬영이 행해진다. L 화상용의 카메라와 R 화상용의 카메라에 의해 촬영된 영상의 엘리멘터리 스트림이 MVC 인코더에 입력된다.
도 3은, MVC 인코더의 구성예를 도시하는 블록도이다.
도 3에 도시한 바와 같이, MVC 인코더(11)는, H.264/AVC 인코더(21), H.264/AVC 디코더(22), Depth 산출부(23), Dependent view video 인코더(24) 및 멀티플렉서(25)로 구성된다.
L 화상용의 카메라에 의해 촬영된 영상#1의 스트림은 H.264/AVC 인코더(21)와 Depth 산출부(23)에 입력된다. 또한, R 화상용의 카메라에 의해 촬영된 영상#2의 스트림은 Depth 산출부(23)와 Dependent view video 인코더(24)에 입력된다. 영상#2의 스트림이 H.264/AVC 인코더(21)와 Depth 산출부(23)에 입력되고, 영상#1의 스트림이 Depth 산출부(23)와 Dependent view video 인코더(24)에 입력되도록 하여도 된다.
H.264/AVC 인코더(21)는, 영상#1의 스트림을, 예를 들어 H.264 AVC/High Profile 비디오 스트림으로서 부호화한다. H.264/AVC 인코더(21)는, 부호화하여 얻어진 AVC 비디오 스트림을, Base view video 스트림으로서 H.264/AVC 디코더(22)와 멀티플렉서(25)에 출력한다.
H.264/AVC 디코더(22)는, H.264/AVC 인코더(21)로부터 공급된 AVC 비디오 스트림을 디코드하고, 디코드하여 얻어진 영상#1의 스트림을 Dependent view video 인코더(24)에 출력한다.
Depth 산출부(23)는, 영상#1의 스트림과 영상#2의 스트림에 기초하여 Depth를 산출하고, 산출한 Depth의 데이터를 멀티플렉서(25)에 출력한다.
Dependent view video 인코더(24)는, H.264/AVC 디코더(22)로부터 공급된 영상#1의 스트림과, 외부로부터 입력된 영상#2의 스트림을 인코드하여, Dependent view video 스트림을 출력한다.
Base view video에는, 다른 스트림을 참조 화상으로 하는 예측 부호화가 허용되어 있지 않지만, 도 4에 도시한 바와 같이, Dependent view video에는 Base view video를 참조 화상으로 하는 예측 부호화가 허용되어 있다. 예를 들어 L 화상을 Base view video로 함과 함께 R 화상을 Dependent view video로 하여 부호화를 행한 경우, 그 결과 얻어지는 Dependent view video 스트림의 데이터량은, Base view video 스트림의 데이터량에 비교하여 적어진다.
또한, H.264/AVC에서의 부호화이기 때문에, Base view video에 대하여 시간 방향의 예측은 행해지고 있다. 또한, Dependent view video에 대해서도, view 사이의 예측과 함께, 시간 방향의 예측이 행해지고 있다. Dependent view video를 디코드하기 위해서는, 인코드 시에 참조처로 한, 대응하는 Base view video의 디코드가 먼저 종료될 필요가 있다.
Dependent view video 인코더(24)는, 이러한 view 사이의 예측도 사용하여 부호화하여 얻어진 Dependent view video 스트림을 멀티플렉서(25)에 출력한다.
멀티플렉서(25)는, H.264/AVC 인코더(21)로부터 공급된 Base view video 스트림과, Depth 산출부(23)로부터 공급된 Dependent view video 스트림(Depth의 데이터)과, Dependent view video 인코더(24)로부터 공급된 Dependent view video 스트림을, 예를 들어 MPEG2 TS로서 다중화한다. Base view video 스트림과 Dependent view video 스트림은 1개의 MPEG2 TS로 다중화되는 경우도 있고, 별도의 MPEG2 TS에 포함되는 경우도 있다.
멀티플렉서(25)는, 생성된 TS(MPEG2 TS)를 출력한다. 멀티플렉서(25)로부터 출력된 TS는, 다른 관리 데이터와 함께 기록 장치에 있어서 광 디스크(2)에 기록되고, 광 디스크(2)에 기록된 형태로 재생 장치(1)에 제공된다.
타입 1의 표시 방식에 있어서 Base view video와 함께 사용되는 Dependent view video와, 타입 2의 표시 방식에 있어서 Base view video와 함께 사용되는 Dependent view video(Depth)를 구별할 필요가 있는 경우, 전자를 D1 view video라고 하고, 후자를 D2 view video라고 한다.
또한, Base view video와 D1 view video를 사용하여 행해지는, 타입 1의 표시 방식에서의 3D 재생을 B-D1 재생이라고 한다. Base view video와 D2 view video를 사용하여 행해지는, 타입 2의 표시 방식에서의 3D 재생을 B-D2 재생이라고 한다.
재생 장치(1)는, 유저에 의한 지시 등에 따라서 B-D1 재생을 행하는 경우, Base view video 스트림과 D1 view video 스트림을 광 디스크(2)로부터 판독하여 재생한다.
또한, 재생 장치(1)는, B-D2 재생을 행하는 경우, Base view video 스트림과 D2 view video 스트림을 광 디스크(2)로부터 판독하여 재생한다.
또한, 재생 장치(1)는, 통상의 2D 화상의 재생을 행하는 경우, Base view video 스트림만을 광 디스크(2)로부터 판독하여 재생한다.
Base view video 스트림은 H.264/AVC로 부호화되어 있는 AVC 비디오 스트림이기 때문에, BD의 포맷에 대응한 플레이어이면, 그 Base view video 스트림을 재생하여, 2D 화상을 표시시키는 것이 가능하게 된다.
이하, Dependent view video가 D1 view video인 경우에 대하여 주로 설명한다. 간단히 Dependent view video라고 할 때는 D1 view video를 나타내게 된다. D2 view video에 대해서도, D1 view video와 마찬가지로 하여 광 디스크(2)에 기록되어, 재생된다.
[TS의 구성예]
도 5는 TS의 구성예를 도시하는 도면이다.
도 5의 Main TS에는 Base view video, Dependent view video, Primary audio, Base PG, Dependent PG, Base IG, Dependent IG의 각각의 스트림이 다중화되어 있다. 이와 같이 Dependent view video 스트림이, Base view video 스트림과 함께 Main TS에 포함되어 있는 경우도 있다.
광 디스크(2)에는 Main TS와 Sub TS가 기록되어 있다. Main TS는, 적어도 Base view video 스트림을 포함하는 TS이다. Sub TS는, Base view video 스트림 이외의 스트림을 포함하고, Main TS와 함께 사용되는 TS이다.
비디오와 마찬가지로 3D에서의 표시가 가능하게 되도록, 후술하는 PG, IG에 대해서도 Base view와 Dependent view의 각각의 스트림이 준비되어 있다.
각각의 스트림을 디코드하여 얻어진 PG, IG의 Base view의 플레인은, Base view video 스트림을 디코드하여 얻어진 Base view video의 플레인과 합성되어 표시된다. 마찬가지로, PG, IG의 Dependent view의 플레인은, Dependent view video 스트림을 디코드하여 얻어진 Dependent view video의 플레인과 합성되어 표시된다.
예를 들어, Base view video 스트림이 L 화상의 스트림이며, Dependent view video 스트림이 R 화상의 스트림인 경우, PG, IG에 대해서도, 그 Base view의 스트림은 L 화상의 그래픽의 스트림이 된다. 또한, Dependent view의 PG 스트림, IG 스트림은 R 화상의 그래픽의 스트림이 된다.
한편, Base view video 스트림이 R 화상의 스트림이며, Dependent view video 스트림이 L 화상의 스트림인 경우, PG, IG에 대해서도, 그 Base view의 스트림은 R 화상의 그래픽의 스트림이 된다. 또한, Dependent view의 PG 스트림, IG 스트림은 L 화상의 그래픽의 스트림이 된다.
도 6은, TS의 다른 구성예를 도시하는 도면이다.
도 6의 Main TS에는 Base view video, Dependent view video의 각각의 스트림이 다중화되어 있다.
한편, Sub TS에는 Primary audio, Base PG, Dependent PG, Base IG, Dependent IG의 각각의 스트림이 다중화되어 있다.
이와 같이 비디오 스트림이 Main TS로 다중화되고, PG, IG의 스트림 등이 Sub TS로 다중화되어 있는 경우도 있다.
도 7은, TS의 또 다른 구성예를 도시하는 도면이다.
도 7의 A의 Main TS에는 Base view video, Primary audio, Base PG, Dependent PG, Base IG, Dependent IG의 각각의 스트림이 다중화되어 있다.
한편, Sub TS에는 Dependent view video 스트림이 포함되어 있다.
이와 같이 Dependent view video 스트림이 Base view video 스트림과는 다른 TS에 포함되어 있는 경우도 있다.
도 7의 B의 Main TS에는 Base view video, Primary audio, PG, IG의 각각의 스트림이 다중화되어 있다. 한편, Sub TS에는 Dependent view video, Base PG, Dependent PG, Base IG, Dependent IG의 각각의 스트림이 다중화되어 있다.
Main TS에 포함되는 PG, IG는 2D 재생용의 스트림이다. Sub TS에 포함되어 있는 스트림은 3D 재생용의 스트림이다.
이와 같이 PG의 스트림과 IG의 스트림을 2D 재생과 3D 재생에 있어서 공유하지 않도록 하는 것도 가능하다.
이상과 같이, Base view video 스트림과 Dependent view video 스트림이 별도의 MPEG2 TS에 포함되는 경우가 있다. Base view video 스트림과 Dependent view video 스트림을 별도의 MPEG2 TS에 포함하여 기록하는 경우의 장점에 대하여 설명한다.
예를 들어 1개의 MPEG2 TS로서 다중화할 수 있는 비트 레이트가 제한되어 있는 경우를 생각한다. 이 경우에 있어서, Base view video 스트림과 Dependent view video 스트림의 양쪽을 1개의 MPEG2 TS에 포함시켰을 때에는, 그 제약을 만족시키기 위해 각 스트림의 비트 레이트를 내릴 필요가 있다. 그 결과, 화질이 떨어져 버리게 된다.
각각 다른 MPEG2 TS에 포함시킴으로써, 비트 레이트를 내릴 필요가 없게 되어, 화질을 떨어뜨리지 않아도 된다.
[어플리케이션 포맷]
도 8은, 재생 장치(1)에 의한 AV 스트림의 관리의 예를 도시하는 도면이다.
AV 스트림의 관리는, 도 8에 도시한 바와 같이 PlayList와 Clip의 2개의 레이어를 사용하여 행해진다. AV 스트림은, 광 디스크(2)뿐만 아니라, 재생 장치(1)의 로컬 스토리지에 기록되어 있는 경우도 있다.
여기에서는, 1개의 AV 스트림과 그것에 부수되는 정보인 Clip Information의 페어를 1개의 오브젝트라고 생각하고, 그들을 통합하여 Clip이라고 한다. 이하, AV 스트림을 저장한 파일을 AV 스트림 파일이라고 한다. 또한, Clip Information을 저장한 파일을 Clip Information 파일이라고도 한다.
AV 스트림은 시간축 상에 전개되고, 각 Clip의 액세스 포인트는, 주로 타임 스탬프에서 PlayList에 있어서 지정된다. Clip Information 파일은, AV 스트림 중의 디코드를 개시해야 할 어드레스를 찾거나 하기 위해 사용된다.
PlayList는 AV 스트림의 재생 구간의 집합이다. AV 스트림 중의 1개의 재생 구간은 PlayItem이라고 불린다. PlayItem은, 시간축 상의 재생 구간의 IN점과 OUT점의 페어로 표시된다. 도 8에 도시한 바와 같이, PlayList는 1개 또는 복수의 PlayItem에 의해 구성된다.
도 8의 왼쪽에서 1번째의 PlayList는 2개의 PlayItem으로 구성되고, 그 2개의 PlayItem에 의해, 좌측의 Clip에 포함되는 AV 스트림의 전반 부분과 후반 부분이 각각 참조되고 있다.
왼쪽에서 2번째의 PlayList는 1개의 PlayItem으로 구성되고, 그에 의해 우측의 Clip에 포함되는 AV 스트림 전체가 참조되고 있다.
왼쪽에서 3번째의 PlayList는 2개의 PlayItem으로 구성되고, 그 2개의 PlayItem에 의해, 좌측의 Clip에 포함되는 AV 스트림의 어느 한 부분과, 우측의 Clip에 포함되는 AV 스트림의 어느 한 부분이 각각 참조되고 있다.
예를 들어, 왼쪽에서 1번째의 PlayList에 포함되는 좌측의 PlayItem이 재생 대상으로서 디스크 네비게이션 프로그램에 의해 지정된 경우, 그 PlayItem이 참조하는, 좌측의 Clip에 포함되는 AV 스트림의 전반 부분의 재생이 행해진다. 이와 같이 PlayList는, AV 스트림의 재생을 관리하기 위한 재생 관리 정보로서 사용된다.
PlayList 중에서, 1개 이상의 PlayItem의 배열에 의해 만들어지는 재생 패스를 메인 패스(Main Path)라고 한다.
또한, PlayList 중에서, Main Path에 병행하여, 1개 이상의 SubPlayItem의 배열에 의해 만들어지는 재생 패스를 서브 패스(Sub Path)라고 한다.
도 9는, Main Path와 Sub Path의 구조를 도시하는 도면이다.
PlayList는, 1개의 Main Path와 1개 이상의 Sub Path를 가질 수 있다.
상술한 Base view video 스트림은, Main Path를 구성하는 PlayItem이 참조하는 스트림으로서 관리된다. 또한, Dependent view video 스트림은, Sub Path를 구성하는 SubPlayItem이 참조하는 스트림으로서 관리된다.
도 9의 PlayList는, 3개의 PlayItem의 배열에 의해 만들어지는 1개의 Main Path와, 3개의 Sub Path를 갖고 있다.
Main Path를 구성하는 PlayItem에는 선두부터 순서대로 각각 ID가 설정된다. Sub Path에도, 선두부터 순서대로 Subpath_id=0, Subpath_id=1 및 Subpath_id=2의 ID가 설정된다.
도 9의 예에 있어서는, Subpath_id=0의 Sub Path에는 1개의 SubPlayItem이 포함되고, Subpath_id=1의 Sub Path에는 2개의 SubPlayItem이 포함된다. 또한, Subpath_id=2의 Sub Path에는 1개의 SubPlayItem이 포함된다.
1개의 PlayItem이 참조하는 Clip AV 스트림에는, 적어도 비디오 스트림(메인 화상 데이터)이 포함된다.
또한, Clip AV 스트림에는, Clip AV 스트림에 포함되는 비디오 스트림과 동일한 타이밍에서(동기하여) 재생되는 오디오 스트림이 1개 이상 포함되어도 되고, 포함되지 않아도 된다.
Clip AV 스트림에는, Clip AV 스트림에 포함되는 비디오 스트림과 동기하여 재생되는 비트맵의 자막 데이터(PG(Presentation Graphic))의 스트림이 1개 이상 포함되어도 되고, 포함되지 않아도 된다.
Clip AV 스트림에는, Clip AV 스트림 파일에 포함되는 비디오 스트림과 동기하여 재생되는 IG(Interactive Graphic)의 스트림이 1개 이상 포함되어도 되고, 포함되지 않아도 된다. IG의 스트림은, 유저에 의해 조작되는 버튼 등의 그래픽을 표시시키기 위하여 사용된다.
1개의 PlayItem이 참조하는 Clip AV 스트림에는, 비디오 스트림과, 그것과 동기하여 재생되는 0개 이상의 오디오 스트림, 0개 이상의 PG 스트림, 및 0개 이상의 IG 스트림이 다중화되어 있다.
또한, 1개의 SubPlayItem은, PlayItem이 참조하는 Clip AV 스트림과는 다른 스트림(별도 스트림)의 비디오 스트림, 오디오 스트림 또는 PG 스트림 등을 참조한다.
이러한 PlayList, PlayItem, SubPlayItem을 사용한 AV 스트림의 관리에 대해서는, 예를 들어 일본 특허 공개 제2008-252740호 공보, 일본 특허 공개 제2005-348314호 공보에 기재되어 있다.
[디렉토리 구조]
도 10은, 광 디스크(2)에 기록되는 파일의 관리 구조의 예를 도시하는 도면이다.
도 10에 도시한 바와 같이, 파일은 디렉토리 구조에 의해 계층적으로 관리된다. 광 디스크(2) 상에는 1개의 root 디렉토리가 작성된다. root 디렉토리 아래가, 1개의 기록 재생 시스템에서 관리되는 범위가 된다.
root 디렉토리 아래에는 BDMV 디렉토리가 놓여진다.
BDMV 디렉토리의 바로 아래에, 「Index.bdmv」의 이름이 설정된 파일인 Index 파일과, 「MovieObject.bdmv」의 이름이 설정된 파일인 MovieObject 파일이 저장된다.
BDMV 디렉토리 아래에는 BACKUP 디렉토리, PLAYLIST 디렉토리, CLIPINF 디렉토리, STREAM 디렉토리 등이 설정된다.
PLAYLIST 디렉토리에는, PlayList를 기술한 PlayList 파일이 저장된다. 각PlayList 파일에는, 5자리의 숫자와 확장자 「.mpls」를 조합한 이름이 설정된다. 도 10에 도시하는 1개의 PlayList 파일에는 「00000.mpls」의 파일명이 설정되어 있다.
CLIPINF 디렉토리에는 Clip Information 파일이 저장된다. 각 Clip Information 파일에는, 5자리의 숫자와 확장자 「.clpi」를 조합한 이름이 설정된다.
도 10의 3개의 Clip Information 파일에는, 각각 「00001.clpi」, 「00002.clpi」, 「00003.clpi」의 파일명이 설정되어 있다. 이하, 적절하게 Clip Information 파일을 clpi 파일이라고 한다.
예를 들어, 「00001.clpi」의 clpi 파일은, Base view video의 Clip에 관한 정보가 기술된 파일이다.
「00002.clpi」의 clpi 파일은, D2 view video의 Clip에 관한 정보가 기술된 파일이다.
「00003.clpi」의 clpi 파일은, D1 view video의 Clip에 관한 정보가 기술된 파일이다.
STREAM 디렉토리에는 스트림 파일이 저장된다. 각 스트림 파일에는, 5자리의 숫자와 확장자 「.m2ts」를 조합한 이름, 혹은 5자리의 숫자와 확장자 「.ilvt」를 조합한 이름이 설정된다. 이하, 적절하게 확장자 「.m2ts」가 설정된 파일을 m2ts 파일이라고 한다. 또한, 확장자 「.ilvt」가 설정된 파일을 ilvt 파일이라고 한다.
「00001.m2ts」의 m2ts 파일은 2D 재생용의 파일이며, 이 파일을 지정함으로써 Base view video 스트림의 판독이 행해진다.
「00002.m2ts」의 m2ts 파일은 D2 view video 스트림의 파일이며, 「00003.m2ts」의 m2ts 파일은 D1 view video 스트림의 파일이다.
「10000.ilvt」의 ilvt 파일은 B-D1 재생용의 파일이며, 이 파일을 지정함으로써 Base view video 스트림과 D1 view video 스트림의 판독이 행해진다.
「20000.ilvt」의 ilvt 파일은 B-D2 재생용의 파일이며, 이 파일을 지정함으로써 Base view video 스트림과 D2 view video 스트림의 판독이 행해진다.
도 10에 도시한 것 외에, BDMV 디렉토리 아래에는 오디오 스트림의 파일을 저장하는 디렉토리 등도 설정된다.
[각 데이터의 구문]
도 11은, PlayList 파일의 구문을 도시하는 도면이다.
PlayList 파일은, 도 10의 PLAYLIST 디렉토리에 저장되는, 확장자 「.mpls」가 설정되는 파일이다.
도 11의 type_indicator는, 「xxxxx.mpls」의 파일의 종류를 나타낸다.
version_number는, 「xxxx.mpls」의 버전 넘버를 나타낸다. version_number는 4자리의 숫자로 이루어진다. 예를 들어, 3D 재생용의 PlayList 파일에는, 「3D Spec version」인 것을 나타내는 "0240"이 설정된다.
PlayList_start_address는, PlayList 파일의 선두의 바이트로부터의 상대 바이트 수를 단위로 하여, PlayList()의 선두 어드레스를 나타낸다.
PlayListMark_start_address는, PlayList 파일의 선두의 바이트로부터의 상대 바이트 수를 단위로 하여, PlayListMark()의 선두 어드레스를 나타낸다.
ExtensionData_start_address는, PlayList 파일의 선두의 바이트로부터의 상대 바이트 수를 단위로 하여, ExtensionData()의 선두 어드레스를 나타낸다.
ExtensionData_start_address 뒤에는, 160bit의 reserved_for_future_use가 포함된다.
AppInfoPlayList()에는 재생 제한 등의, PlayList의 재생 컨트롤에 관한 파라미터가 저장된다.
PlayList()에는, Main Path나 Sub Path 등에 관한 파라미터가 저장된다. PlayList()의 내용에 대해서는 후술한다.
PlayListMark()에는, PlayList의 마크 정보, 즉 챕터 점프 등을 명령하는 유저 오퍼레이션 또는 커맨드 등에서의 점프처(점프 포인트)인 마크에 관한 정보가 저장된다.
ExtensionData()에는 프라이빗 데이터를 삽입할 수 있게 되어 있다.
도 12는, PlayList 파일의 기술의 구체예를 도시하는 도면이다.
도 12에 도시한 바와 같이, PlayList 파일에는 2bit의 3D_PL_type과 1bit의 view_type이 기술된다.
3D_PL_type은, PlayList의 종류를 나타낸다.
view_type은, PlayList에 의해 재생이 관리되는 Base view video 스트림이 L 화상(L view)의 스트림인지, R 화상(R view)의 스트림인지를 나타낸다.
도 13은, 3D_PL_type의 값의 의미를 도시하는 도면이다.
3D_PL_type의 값의 00은, 2D 재생용의 PlayList인 것을 나타낸다.
3D_PL_type의 값의 01은, 3D 재생 중 B-D1 재생용의 PlayList인 것을 나타낸다.
3D_PL_type의 값의 10은, 3D 재생 중 B-D2 재생용의 PlayList인 것을 나타낸다.
예를 들어, 3D_PL_type의 값이 01이나 10인 경우에는, PlayList 파일의 ExtenstionData()에 3DPlayList 정보가 등록된다. 예를 들어, 3DPlayList 정보로서, Base view video 스트림과 Dependent view video 스트림의 광 디스크(2)로부터의 판독에 관한 정보가 등록된다.
도 14는, view_type의 값의 의미를 도시하는 도면이다.
view_type의 값의 0은, 3D 재생을 행하는 경우에는, Base view video 스트림이 L view의 스트림인 것을 나타낸다. 2D 재생을 행하는 경우에는, Base view video 스트림이 AVC 비디오 스트림인 것을 나타낸다.
view_type의 값의 1은, Base view video 스트림이 R view의 스트림인 것을 나타낸다.
view_type이 PlayList 파일에 기술됨으로써, 재생 장치(1)는, Base view video 스트림이 L view의 스트림인지 R view의 스트림인지를 식별하는 것이 가능하게 된다.
예를 들어, HDMI 케이블을 통하여 표시 장치(3)에 비디오 신호를 출력하는 경우, L view의 신호와 R view의 신호를 각각 구별한 후에 출력하는 것이 재생 장치(1)에 요구될 것으로 사료된다.
Base view video 스트림이 L view의 스트림인지 R view의 스트림인지를 식별할 수 있도록 함으로써, 재생 장치(1)는, L view의 신호와 R view의 신호를 구별하여 출력하는 것이 가능하게 된다.
도 15는, 도 11의 PlayList()의 구문을 도시하는 도면이다.
length는, 이 length 필드 직후부터 PlayList()의 마지막까지의 바이트 수를 나타내는 32비트의 부호 없는 정수이다. 즉, length는, reserved_for_future_use부터 PlayList의 마지막까지의 바이트 수를 나타낸다.
length 뒤에는, 16비트의 reserved_for_future_use가 준비된다.
number_of_PlayItems는, PlayList 중에 있는 PlayItem의 수를 나타내는 16비트의 필드이다. 도 9의 예의 경우, PlayItem의 수는 3이다. PlayItem_id의 값은, PlayList 중에서 PlayItem()가 나타내는 순서대로 0부터 할당된다. 예를 들어, 도 9의 PlayItem_id=0, 1, 2가 할당된다.
number_of_SubPaths는, PlayList 중에 있는 Sub Path의 수를 나타내는 16비트의 필드이다. 도 9의 예의 경우, Sub Path의 수는 3이다. SubPath_id의 값은, PlayList 중에서 SubPath()가 나타내는 순서대로 0부터 할당된다. 예를 들어, 도 9의 Subpath_id=0, 1, 2가 할당된다. 그 후의 for 구문에서는, PlayItem의 수만큼PlayItem()가 참조되고, Sub Path의 수만큼 SubPath()가 참조된다.
도 16은, 도 15의 SubPath()의 구문을 도시하는 도면이다.
length는, 이 length 필드 직후부터 Sub Path()의 마지막까지의 바이트 수를 나타내는 32비트의 부호 없는 정수이다. 즉, length는, reserved_for_future_use부터 PlayList의 마지막까지의 바이트 수를 나타낸다.
length 뒤에는, 16비트의 reserved_for_future_use가 준비된다.
SubPath_type은, Sub Path의 어플리케이션의 종류를 나타내는 8비트의 필드이다. SubPath_type은, 예를 들어 Sub Path가 오디오인지, 비트맵 자막인지, 텍스트 자막인지 등의 종류를 나타내는 경우에 이용된다.
SubPath_type 뒤에는, 15비트의 reserved_for_future_use가 준비된다.
is_repeat_SubPath는, Sub Path의 재생 방법을 지정하는 1비트의 필드이며, Main Path의 재생 동안에 Sub Path의 재생을 반복하여 행할지 또는 Sub Path의 재생을 한번만 행할지를 나타낸다. 예를 들어, Main Path가 참조하는 Clip과 Sub Path가 참조하는 Clip의 재생 타이밍이 상이한 경우(Main Path를 정지 화상의 슬라이드 쇼의 패스로 하고, Sub Path를 BGM으로 하는 오디오의 패스로서 사용하는 경우 등)에 이용된다.
Is_repeat_SubPath 뒤에는, 8비트의 reserved_for_future_use가 준비된다.
number_of_SubPlayItems는, 1개의 Sub Path 중에 있는 SubPlayItem의 수(엔트리 수)를 나타내는 8비트의 필드이다. 예를 들어, 도 9의 SubPath_id=0의 SubPlayItem의 number_of_SubPlayItems는 1이며, SubPath_id=1의 SubPlayItem의 number_of_SubPlayItems는 2이다. 그 후의 for 구문에서는, SubPlayItem의 수만큼, SubPlayItem()가 참조된다.
도 17은, 도 16의 SubPlayItem(i)의 구문을 도시하는 도면이다.
length는, 이 length 필드 직후부터 Sub playItem()의 마지막까지의 바이트 수를 나타내는 16비트의 부호 없는 정수이다.
도 17의 SubPlayItem(i)는, SubPlayItem이 1개의 Clip을 참조하는 경우와, 복수의 Clip을 참조하는 경우로 나누어 기술되어 있다.
SubPlayItem이 1개의 Clip을 참조하는 경우에 대하여 설명한다.
Clip_Information_file_name[0]은 참조하는 Clip을 나타낸다.
Clip_codec_identifier[0]은 Clip의 코덱 방식을 나타낸다. Clip_codec_identifier[0] 뒤에는 reserved_for_future_use가 포함된다.
is_multi_Clip_entries는 멀티 Clip의 등록의 유무를 나타내는 플래그이다. is_multi_Clip_entries의 플래그가 서 있는 경우, SubPlayItem이 복수의 Clip을 참조하는 경우의 구문이 참조된다.
ref_to_STC_id[0]은 STC 불연속점(시스템 타임 베이스의 불연속점)에 관한 정보이다.
SubPlayItem_IN_time은 Sub Path의 재생 구간의 개시 위치를 나타내고, SubPlayItem_OUT_time은 종료 위치를 나타낸다.
sync_PlayItem_id와 sync_start_PTS_of_PlayItem은, Main Path의 시간축 상에서 Sub Path가 재생을 개시하는 시각을 나타낸다.
SubPlayItem_IN_time, SubPlayItem_OUT_time, sync_PlayItem_id, sync_start_PTS_of_PlayItem은, SubPlayItem이 참조하는 Clip에 있어서 공통으로 사용된다.
「if(is_multi_Clip_entries==1b」이며, SubPlayItem이 복수의 Clip을 참조하는 경우에 대하여 설명한다.
num_of_Clip_entries는 참조하는 Clip의 수를 나타낸다. Clip_Information_file_name [SubClip_entry_id]의 수가, Clip_Information_file_name[0]을 제외한 Clip의 수를 지정한다.
Clip_codec_identifier[SubClip_entry_id]는 Clip의 코덱 방식을 나타낸다.
ref_to_STC_id[SubClip_entry_id]는 STC 불연속점(시스템 타임 베이스의 불연속점)에 관한 정보이다. ref_to_STC_id[SubClip_entry_id] 뒤에는 reserved_for_future_use가 포함된다.
도 18은, 도 15의 PlayItem()의 구문을 도시하는 도면이다.
length는, 이 length 필드 직후부터 PlayItem()의 마지막까지의 바이트 수를 나타내는 16비트의 부호 없는 정수이다.
Clip_Information_file_name[0]은, PlayItem이 참조하는 Clip의 Clip Information 파일의 이름을 나타낸다. 또한, Clip을 포함하는 mt2s 파일의 파일명과, 그것에 대응하는 Clip Information 파일의 파일명에는 동일한 5자리의 숫자가 포함된다.
Clip_codec_identifier[0]은 Clip의 코덱 방식을 나타낸다. Clip_codec_identifier[0] 뒤에는 reserved_for_future_use가 포함된다. reserved_for_future_use 뒤에는 is_multi_angle, connection_condition이 포함된다.
ref_to_STC_id[0]은 STC 불연속점(시스템 타임 베이스의 불연속점)에 관한 정보이다.
IN_time은 PlayItem의 재생 구간의 개시 위치를 나타내고, OUT_time은 종료 위치를 나타낸다.
OUT_time 뒤에는 UO_mask_table(), PlayItem_random_access_mode, still_mode가 포함된다.
STN_table()에는, 대상의 PlayItem이 참조하는 AV 스트림의 정보가 포함된다. 또한, 대상의 PlayItem과 관련하여 재생되는 Sub Path가 있는 경우, 그 Sub Path를 구성하는 SubPlayItem이 참조하는 AV 스트림의 정보도 포함된다.
도 19는, 도 18의 STN_table()의 구문을 도시하는 도면이다.
STN_table()는, PlayItem의 속성으로서 설정되어 있다.
length는, 이 length 필드 직후부터 STN_table()의 마지막까지의 바이트 수를 나타내는 16비트의 부호 없는 정수이다. length 뒤에는 16비트의 reserved_for_future_use가 준비된다.
number_of_video_stream_entries는, STN_table() 중에서 엔트리되는(등록되는), video_stream_id가 제공되는 스트림의 수를 나타낸다.
video_stream_id는, 비디오 스트림을 식별하기 위한 정보이다. 예를 들어, Base view video 스트림이 이 video_stream_id에 의해 특정된다.
Dependent view video 스트림의 ID에 대해서는, STN_table() 내에서 정의되도록 하여도 되고, Base view video 스트림의 ID에 소정의 값을 가산하거나 하여 계산에 의해 구해지도록 하여도 된다.
video_stream_number는, 비디오 전환에 사용되는, 유저로부터 보이는 비디오 스트림 번호이다.
number_of_audio_stream_entries는, STN_table() 중에서 엔트리되는, audio_stream_id가 제공되는 1번째의 오디오 스트림의 스트림의 수를 나타낸다. audio_stream_id는, 오디오 스트림을 식별하기 위한 정보이며, audio_stream_number는, 음성 전환에 사용되는 유저로부터 보이는 오디오 스트림 번호이다.
number_of_audio_stream2_entries는, STN_table() 중에서 엔트리되는, audio_stream_id2가 제공되는 2번째의 오디오 스트림의 스트림의 수를 나타낸다. audio_stream_id2는, 오디오 스트림을 식별하기 위한 정보이며, audio_stream_number는, 음성 전환에 사용되는 유저로부터 보이는 오디오 스트림 번호이다. 이 예에 있어서는, 재생하는 음성을 전환할 수 있도록 이루어져 있다.
number_of_PG_txtST_stream_entries는, STN_table() 중에서 엔트리되는, PG_txtST_stream_id가 제공되는 스트림의 수를 나타낸다. 이 중에서는, 비트맵 자막을 런렝스 부호화한 PG 스트림과 텍스트 자막 파일(txtST)이 엔트리된다. PG_txtST_stream_id는, 자막 스트림을 식별하기 위한 정보이며, PG_txtST_stream_number는, 자막 전환에 사용되는 유저로부터 보이는 자막 스트림 번호이다.
number_of_IG_stream_entries는, STN_table() 중에서 엔트리되는, IG_stream_id가 제공되는 스트림의 수를 나타낸다. 이 중에서는 IG 스트림이 엔트리된다. IG_stream_id는, IG 스트림을 식별하기 위한 정보이며, IG_stream_number는, 그래픽 전환에 사용되는 유저로부터 보이는 그래픽 스트림 번호이다.
Main TS, Sub TS의 ID도 STN_table()에 등록된다. 그 ID가 엘리멘터리 스트림이 아니고 TS의 ID인 것은, stream_attribute()에 기술된다.
[재생 장치(1)의 구성예]
도 20은, 재생 장치(1)의 구성예를 도시하는 블록도이다.
컨트롤러(51)는, 미리 준비되어 있는 제어 프로그램을 실행하여, 재생 장치(1)의 전체 동작을 제어한다.
예를 들어, 컨트롤러(51)는, 디스크 드라이브(52)를 제어하여, 3D 재생용의 PlayList 파일을 판독한다. 또한, 컨트롤러(51)는, STN_table에 등록되어 있는 ID에 기초하여, Main TS와 Sub TS를 판독시켜, 디코더부(56)에 공급시킨다.
디스크 드라이브(52)는, 컨트롤러(51)에 의한 제어에 따라서 광 디스크(2)로부터 데이터를 판독하고, 판독한 데이터를, 컨트롤러(51), 메모리(53) 또는 디코더부(56)에 출력한다.
메모리(53)는, 컨트롤러(51)가 각종 처리를 실행하는 데 있어서 필요한 데이터 등을 적절하게 기억한다.
로컬 스토리지(54)는 예를 들어 HDD(Hard Disk Drive)에 의해 구성된다. 로컬 스토리지(54)에는, 서버(72)로부터 다운로드된 Dependent view video 스트림 등이 기록된다. 로컬 스토리지(54)에 기록되어 있는 스트림도 디코더부(56)에 적절하게 공급된다.
인터넷 인터페이스(55)는, 컨트롤러(51)로부터의 제어에 따라서 네트워크(71)를 통하여 서버(72)와 통신을 행하여, 서버(72)로부터 다운로드한 데이터를 로컬 스토리지(54)에 공급한다.
서버(72)로부터는, 광 디스크(2)에 기록되어 있는 데이터를 업데이트시키는 데이터가 다운로드된다. 다운로드한 Dependent view video 스트림을 광 디스크(2)에 기록되어 있는 Base view video 스트림과 함께 사용할 수 있도록 함으로써, 광 디스크(2)의 내용과는 다른 내용의 3D 재생을 실현하는 것이 가능하게 된다. Dependent view video 스트림이 다운로드되었을 때, PlayList의 내용도 적절하게 갱신된다.
디코더부(56)는, 디스크 드라이브(52) 또는 로컬 스토리지(54)로부터 공급된 스트림을 디코드하고, 얻어진 비디오 신호를 표시 장치(3)에 출력한다. 오디오 신호도 소정의 경로를 통하여 표시 장치(3)에 출력된다.
조작 입력부(57)는, 버튼, 키, 터치 패널, 조그 다이얼, 마우스 등의 입력 디바이스나, 소정의 리모트 커맨더로부터 송신되는 적외선 등의 신호를 수신하는 수신부에 의해 구성된다. 조작 입력부(57)는 유저의 조작을 검출하고, 검출한 조작의 내용을 나타내는 신호를 컨트롤러(51)에 공급한다.
도 21은, 디코더부(56)의 구성예를 도시하는 도면이다.
도 21에 있어서는 비디오 신호의 처리를 행하는 구성이 도시되어 있다. 디코더부(56)에 있어서는, 오디오 신호의 디코드 처리도 행해진다. 오디오 신호를 대상으로 하여 행해진 디코드 처리의 결과는, 도시하지 않은 경로를 통하여 표시 장치(3)에 출력된다.
PID 필터(101)는, 디스크 드라이브(52) 또는 로컬 스토리지(54)로부터 공급된 TS가 Main TS인지 Sub TS인지를, TS를 구성하는 패킷의 PID나 스트림의 ID 등에 기초하여 식별한다. PID 필터(101)는, Main TS를 버퍼(102)에 출력하고, Sub TS를 버퍼(103)에 출력한다.
PID 필터(104)는, 버퍼(102)에 기억된 Main TS의 패킷을 순차적으로 판독하고, PID에 기초하여 할당한다.
예를 들어, PID 필터(104)는, Main TS에 포함되어 있는 Base view video 스트림을 구성하는 패킷을 B video 버퍼(106)에 출력하고, Dependent view video 스트림을 구성하는 패킷을 스위치(107)에 출력한다.
또한, PID 필터(104)는, Main TS에 포함되어 있는 Base IG 스트림을 구성하는 패킷을 스위치(114)에 출력하고, Dependent IG 스트림을 구성하는 패킷을 스위치(118)에 출력한다.
PID 필터(104)는, Main TS에 포함되어 있는 Base PG 스트림을 구성하는 패킷을 스위치(122)에 출력하고, Dependent PG 스트림을 구성하는 패킷을 스위치(126)에 출력한다.
도 5를 참조하여 설명한 바와 같이, Base view video, Dependent view video, Base PG, Dependent PG, Base IG, Dependent IG의 각각의 스트림이 Main TS로 다중화되어 있는 경우가 있다.
PID 필터(105)는, 버퍼(103)에 기억된 Sub TS의 패킷을 순차적으로 판독하고, PID에 기초하여 할당한다.
예를 들어, PID 필터(105)는, Sub TS에 포함되어 있는 Dependent view video 스트림을 구성하는 패킷을 스위치(107)에 출력한다.
또한, PID 필터(105)는, Sub TS에 포함되어 있는 Base IG 스트림을 구성하는 패킷을 스위치(114)에 출력하고, Dependent IG 스트림을 구성하는 패킷을 스위치(118)에 출력한다.
PID 필터(105)는, Sub TS에 포함되어 있는 Base PG 스트림을 구성하는 패킷을 스위치(122)에 출력하고, Dependent PG 스트림을 구성하는 패킷을 스위치(126)에 출력한다.
도 7을 참조하여 설명한 바와 같이, Dependent view video 스트림이 Sub TS에 포함되어 있는 경우가 있다. 또한, 도 6을 참조하여 설명한 바와 같이, Base PG, Dependent PG, Base IG, Dependent IG의 각각의 스트림이 Sub TS로 다중화되어 있는 경우가 있다.
스위치(107)는, PID 필터(104) 또는 PID 필터(105)로부터 공급된 Dependent view video 스트림을 구성하는 패킷을 D video 버퍼(108)에 출력한다.
스위치(109)는, B video 버퍼(106)에 기억된 Base view video의 패킷과, D video 버퍼(108)에 기억된 Dependent view video의 패킷을, 디코드의 타이밍을 규정하는 시각 정보에 따라서 순차적으로 판독한다. Base view video의 어느 한 픽처의 데이터를 저장한 패킷과, 그것에 대응하는 Dependent view video의 픽처의 데이터를 저장한 패킷에는 예를 들어 동일한 시각 정보가 설정되어 있다.
스위치(109)는, B video 버퍼(106) 또는 D video 버퍼(108)로부터 판독한 패킷을 비디오 디코더(110)에 출력한다.
비디오 디코더(110)는, 스위치(109)로부터 공급된 패킷을 디코드하고, 디코드함으로써 얻어진 Base view video 또는 Dependent view video의 데이터를 스위치(111)에 출력한다.
스위치(111)는, Base view video의 패킷을 디코드하여 얻어진 데이터를 B video 플레인 생성부(112)에 출력하고, Dependent view video의 패킷을 디코드하여 얻어진 데이터를 D video 플레인 생성부(113)에 출력한다.
B video 플레인 생성부(112)는, Base view video의 플레인을 스위치(111)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
D video 플레인 생성부(113)는, Dependent view video의 플레인을 스위치(111)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
스위치(114)는, PID 필터(104) 또는 PID 필터(105)로부터 공급된 Base IG 스트림을 구성하는 패킷을 B IG 버퍼(115)에 출력한다.
B IG 디코더(116)는, B IG 버퍼(115)에 기억된 Base IG 스트림을 구성하는 패킷을 디코드하고, 디코드하여 얻어진 데이터를 B IG 플레인 생성부(117)에 출력한다.
B IG 플레인 생성부(117)는, Base IG의 플레인을 B IG 디코더(116)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
스위치(118)는, PID 필터(104) 또는 PID 필터(105)로부터 공급된 Dependent IG 스트림을 구성하는 패킷을 D IG 버퍼(119)에 출력한다.
D IG 디코더(120)는, D IG 버퍼(119)에 기억된 Dependent IG 스트림을 구성하는 패킷을 디코드하고, 디코드하여 얻어진 데이터를 D IG 플레인 생성부(121)에 출력한다.
D IG 플레인 생성부(121)는, Dependent IG의 플레인을 D IG 디코더(120)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
스위치(122)는, PID 필터(104) 또는 PID 필터(105)로부터 공급된 Base PG 스트림을 구성하는 패킷을 B PG 버퍼(123)에 출력한다.
B PG 디코더(124)는, B PG 버퍼(123)에 기억된 Base PG 스트림을 구성하는 패킷을 디코드하고, 디코드하여 얻어진 데이터를 B PG 플레인 생성부(125)에 출력한다.
B PG 플레인 생성부(125)는, Base PG의 플레인을 B PG 디코더(124)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
스위치(126)는, PID 필터(104) 또는 PID 필터(105)로부터 공급된 Dependent PG 스트림을 구성하는 패킷을 D PG 버퍼(127)에 출력한다.
D PG 디코더(128)는, D PG 버퍼(127)에 기억된 Dependent PG 스트림을 구성하는 패킷을 디코드하고, 디코드하여 얻어진 데이터를 D PG 플레인 생성부(129)에 출력한다.
D PG 플레인 생성부(129)는, Dependent PG의 플레인을 D PG 디코더(128)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
합성부(130)는, B video 플레인 생성부(112)로부터 공급된 Base view video의 플레인과, B IG 플레인 생성부(117)로부터 공급된 Base IG의 플레인과, B PG 플레인 생성부(125)로부터 공급된 Base PG의 플레인을 소정의 순서로 겹침으로써 합성하고, Base view의 플레인을 생성한다.
또한, 합성부(130)는, D video 플레인 생성부(113)로부터 공급된 Dependent view video의 플레인과, D IG 플레인 생성부(121)로부터 공급된 Dependent IG의 플레인과, D PG 플레인 생성부(129)로부터 공급된 Dependent PG의 플레인을 소정의 순서로 겹침으로써 합성하고, Dependent view의 플레인을 생성한다.
합성부(130)는, Base view의 플레인과 Dependent view의 플레인의 데이터를 출력한다. 합성부(130)로부터 출력된 비디오 데이터는 표시 장치(3)에 출력되어, Base view의 플레인과 Dependent view의 플레인이 교대로 표시됨으로써 3D 표시가 행해진다.
[T-STD(Transport stream-System. Target Decoder)의 제1 예]
여기에서, 도 21에 도시한 구성 중, 디코더와, 그 주변의 구성에 대하여 설명한다.
도 22는, 비디오 스트림의 처리를 행하는 구성을 도시하는 도면이다.
도 22에 있어서, 도 21에 도시한 구성과 동일한 구성에는 동일한 부호를 부여하고 있다. 도 22에 있어서는, PID 필터(104), B video 버퍼(106), 스위치(107), D video 버퍼(108), 스위치(109), 비디오 디코더(110) 및 DPB(Decoded Picture Buffer)(151)가 도시되어 있다. 도 21에는 도시되어 있지 않지만, 비디오 디코더(110)의 후단에는, 디코드를 마친 픽처의 데이터가 기억되는 DPB(151)가 설치된다.
PID 필터(104)는, Main TS에 포함되는 Base view video 스트림을 구성하는 패킷을 B video 버퍼(106)에 출력하고, Dependent view video 스트림을 구성하는 패킷을 스위치(107)에 출력한다.
예를 들어, Base view video 스트림을 구성하는 패킷에는, PID=0이 PID의 고정값으로서 할당되어 있다. 또한, Dependent view video 스트림을 구성하는 패킷에는, 0 이외의 고정의 값이 PID로서 할당되어 있다.
PID 필터(104)는, PID=0이 헤더에 기술되어 있는 패킷을 B video 버퍼(106)에 출력하고, 0 이외의 PID가 헤더에 기술되어 있는 패킷을 스위치(107)에 출력한다.
B video 버퍼(106)에 출력된 패킷은, TB(Transport Buffer)1, MB(Multiplexing Buffer)1을 통하여 VSB1에 기억된다. VSB1에는 Base view video의 엘리멘터리 스트림의 데이터가 기억된다.
스위치(107)에는, PID 필터(104)로부터 출력된 패킷뿐만 아니라, 도 21의 PID 필터(105)에 있어서 Sub TS로부터 추출된 Dependent view video 스트림을 구성하는 패킷도 공급된다.
스위치(107)는, PID 필터(104)로부터 Dependent view video 스트림을 구성하는 패킷이 공급된 경우, 그것을 D video 버퍼(108)에 출력한다.
또한, 스위치(107)는, PID 필터(105)로부터 Dependent view video 스트림을 구성하는 패킷이 공급된 경우, 그것을 D video 버퍼(108)에 출력한다.
D video 버퍼(108)에 출력된 패킷은, TB2, MB2를 통하여 VSB2에 기억된다. VSB2에는 Dependent view video의 엘리멘터리 스트림의 데이터가 기억된다.
스위치(109)는, B video 버퍼(106)의 VSB1에 기억된 Base view video의 패킷과, D video 버퍼(108)의 VSB2에 기억된 Dependent view video의 패킷을 순차적으로 판독하여, 비디오 디코더(110)에 출력한다.
예를 들어, 스위치(109)는, 어느 한 시각의 Base view video의 패킷을 출력한 직후에 그것과 동일한 시각의 Dependent view video의 패킷을 출력하는 등과 같이, 동일한 시각의 Base view video의 패킷과 Dependent view video의 패킷을 계속해서 비디오 디코더(110)에 출력한다.
Base view video의 어느 한 픽처의 데이터를 저장한 패킷과, 그것에 대응하는 Dependent view video의 픽처의 데이터를 저장한 패킷에는, 그 인코드 시에, PCR(Program Clock Reference) 동기가 확보된 동일한 시각 정보가 설정되어 있다. Base view video 스트림과 Dependent view video 스트림이 각각 다른 TS에 포함되어 있는 경우에도, 대응하는 픽처의 데이터를 저장한 패킷에는 동일한 시각 정보가 설정된다.
시각 정보는 DTS(Decoding Time Stamp), PTS(Presentation Time Stamp)이며, 각 PES(Packetized Elementary Stream) 패킷에 설정된다.
즉, 각각의 스트림의 픽처를 인코드순/디코드순으로 배열하였을 때에 동일한 시각에 위치하는 Base view video의 픽처와 Dependent view video의 픽처가, 대응하는 픽처가 된다. 어느 한 Base view video의 픽처의 데이터를 저장하는 PES 패킷과, 디코드순으로 그 픽처와 대응하는 Dependent view video의 픽처의 데이터를 저장하는 PES 패킷에는, 동일한 DTS가 설정되어 있다.
또한, 각각의 스트림의 픽처를 표시순으로 배열하였을 때에 동일한 시각에 위치하는 Base view video의 픽처와 Dependent view video의 픽처도, 대응하는 픽처가 된다. 어느 한 Base view video의 픽처의 데이터를 저장하는 PES 패킷과, 표시순으로 그 픽처와 대응하는 Dependent view video의 픽처의 데이터를 저장하는 PES 패킷에는, 동일한 PTS가 설정되어 있다.
후술하는 바와 같이 Base view video 스트림의 GOP 구조와 Dependent view video 스트림의 GOP 구조가 동일한 구조인 경우, 디코드순으로 대응하는 픽처는, 표시순으로도 대응하는 픽처가 된다.
패킷의 전송이 직렬로 행해지는 경우, 어느 한 타이밍에서 B video 버퍼(106)의 VSB1로부터 판독된 패킷의 DTS1과, 직후의 타이밍에서 D video 버퍼(108)의 VSB2로부터 판독된 패킷의 DTS2는, 도 22에 도시한 바와 같이 동일한 시각을 나타내게 된다.
스위치(109)는, B video 버퍼(106)의 VSB1로부터 판독한 Base view video의 패킷, 또는 D video 버퍼(108)의 VSB2로부터 판독한 Dependent view video의 패킷을 비디오 디코더(110)에 출력한다.
비디오 디코더(110)는, 스위치(109)로부터 공급된 패킷을 순차적으로 디코드하고, 디코드하여 얻어진 Base view video의 픽처의 데이터, 또는 Dependent view video의 픽처의 데이터를 DPB(151)에 기억시킨다.
DPB(151)에 기억된 디코드를 마친 픽처의 데이터는, 소정의 타이밍에서 스위치(111)에 의해 판독된다. 또한, DPB(151)에 기억된 디코드를 마친 픽처의 데이터는, 다른 픽처의 예측에 비디오 디코더(110)에 의해 사용된다.
데이터의 전송이 직렬로 행해지는 경우, 어느 한 타이밍에서 출력된 Base view video의 픽처의 데이터의 PTS와, 직후의 타이밍에서 출력된 Dependent view video의 픽처의 데이터의 PTS는, 동일한 시각을 나타내게 된다.
Base view video 스트림과 Dependent view video 스트림은 도 5 등을 참조하여 설명한 바와 같이 1개의 TS로 다중화되는 경우가 있고, 도 7을 참조하여 설명한 바와 같이 각각 다른 TS에 포함되는 경우가 있다.
도 22의 디코더 모델을 실장함으로써, 재생 장치(1)는, Base view video 스트림과 Dependent view video 스트림이 1개의 TS로 다중화되어 있는 경우에도, 각각 다른 TS에 포함되는 경우에도 대응하는 것이 가능하게 된다.
예를 들어 도 23에 도시한 바와 같이 1개의 TS가 공급되는 상황밖에 상정되어 있지 않은 경우, Base view video 스트림과 Dependent view video 스트림이 각각 다른 TS에 포함되는 경우 등에는 대응할 수 없다.
또한, 도 22의 디코더 모델에 따르면, 동일한 DTS를 갖기 때문에, Base view video 스트림과 Dependent view video 스트림이 상이한 TS에 포함되는 경우에도, 정확한 타이밍에서 비디오 디코더(110)에 패킷을 공급할 수 있다.
Base view video용의 디코더와 Dependent view video용의 디코더를 각각 병렬로 설치하여도 된다. 이 경우, Base view video용의 디코더와 Dependent view video용의 디코더에는, 각각 동일한 시각의 패킷이 동일한 타이밍에서 공급된다.
[제2 예]
도 24는, 비디오 스트림의 처리를 행하는 다른 구성을 도시하는 도면이다.
도 24에 있어서는, 도 22의 구성 외에, 스위치(111), L video 플레인 생성부(161) 및 R video 플레인 생성부(162)가 도시되어 있다. 또한, PID 필터(105)도 스위치(107)의 전단에 도시되어 있다. 중복되는 설명에 대해서는 적절하게 생략한다.
L video 플레인 생성부(161)는, L view video의 플레인을 생성하는 것이며, 도 21의 B video 플레인 생성부(112) 대신에 설치된다.
R video 플레인 생성부(162)는, R view video의 플레인을 생성하는 것이며, 도 21의 D video 플레인 생성부(113) 대신에 설치된다.
이 예에 있어서는, 스위치(111)는, L view의 비디오 데이터와 R view의 비디오 데이터를 식별하여 출력할 필요가 있게 된다.
즉, 스위치(111)는, Base view video의 패킷을 디코드하여 얻어진 데이터가 L view와 R view 중 어느 비디오 데이터인지를 식별할 필요가 있다.
또한, 스위치(111)는, Dependent view video의 패킷을 디코드하여 얻어진 데이터가 L view와 R view 중 어느 비디오 데이터인지를 식별할 필요가 있다.
L view와 R view의 식별에는, 도 12와 도 14를 참조하여 설명한 view_type이 사용된다. 예를 들어, 컨트롤러(51)는, PlayList 파일에 기술되어 있는 view_type을 스위치(111)에 출력한다.
view_type의 값이 0인 경우, 스위치(111)는, DPB(151)에 기억된 데이터 중, PID=0으로 식별되는 Base view video의 패킷을 디코드하여 얻어진 데이터를 L video 플레인 생성부(161)에 출력한다. 상술한 바와 같이, view_type의 값의 0은, Base view video 스트림이 L view의 스트림인 것을 나타낸다.
이 경우, 스위치(111)는, 0 이외의 PID로 식별되는 Dependent view video의 패킷을 디코드하여 얻어진 데이터를 R video 플레인 생성부(162)에 출력한다.
한편, view_type의 값이 1인 경우, 스위치(111)는, DPB(151)에 기억된 데이터 중, PID=0으로 식별되는 Base view video의 패킷을 디코드하여 얻어진 데이터를 R video 플레인 생성부(162)에 출력한다. view_type의 값의 1은, Base view video 스트림이 R view의 스트림인 것을 나타낸다.
이 경우, 스위치(111)는, 0 이외의 PID로 식별되는 Dependent view video의 패킷을 디코드하여 얻어진 데이터를 L video 플레인 생성부(161)에 출력한다.
L video 플레인 생성부(161)는, L view video의 플레인을 스위치(111)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
R video 플레인 생성부(162)는, R view video의 플레인을 스위치(111)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
H.264 AVC/MVC로 인코드된 Base view video, Dependent view video의 엘리멘터리 스트림 내에는, L view인지 또는 R view인지를 나타내는 정보(필드)가 존재하지 않는다.
따라서, view_type을 PlayList 파일에 설정해 둠으로써, 기록 장치는, Base view video 스트림과 Dependent view video 스트림이 각각 L view와 R view 중 어느 스트림인지를 재생 장치(1)에 식별시키는 것이 가능하게 된다.
재생 장치(1)는, Base view video 스트림과 Dependent view video 스트림이 각각 L view와 R view 중 어느 스트림인지를 식별하고, 식별 결과에 따라서 출력처를 전환할 수 있다.
IG, PG의 플레인에 대해서도 각각 L view와 R view가 준비되어 있는 경우, 비디오 스트림의 L view와 R view를 구별할 수 있음으로써, 재생 장치(1)는 L view끼리, R view끼리의 플레인의 합성을 용이하게 행할 수 있다.
상술한 바와 같이, HDMI 케이블을 통하여 비디오 신호를 출력하는 경우, L view의 신호와 R view의 신호를 각각 구별한 후에 출력하는 것이 요구되는데, 재생 장치(1)는 그 요구에 대응하는 것이 가능하게 된다.
DPB(151)에 기억된 Base view video의 패킷을 디코드하여 얻어진 데이터와, Dependent view video의 패킷을 디코드하여 얻어진 데이터의 식별이, PID가 아니고, view_id에 기초하여 행해지도록 하여도 된다.
H.264 AVC/MVC에서의 인코드 시, 인코드 결과의 스트림을 구성하는 Access Unit에는 view_id가 설정된다. view_id에 의해, 각 Access Unit이 어느 view component의 유닛인지가 식별 가능하게 되어 있다.
도 25는, Access Unit의 예를 도시하는 도면이다.
도 25의 Access Unit#1은 Base view video의 데이터를 포함하는 유닛이다. Access Unit#2는 Dependent view video의 데이터를 포함하는 유닛이다. Access Unit은 픽처 단위에서의 액세스가 가능하게 되도록, 예를 들어 1매의 픽처의 데이터를 통합한 유닛이다.
H.264 AVC/MVC에서의 인코드가 행해짐으로써, Base view video와 Dependent view video의 각 픽처의 데이터는, 이러한 Access Unit에 저장된다. H.264 AVC/MVC에서의 인코드 시, Access Unit#2 내에 도시한 바와 같이, 각각의 view component에는 MVC 헤더가 부가된다. MVC 헤더에는 view_id가 포함된다.
도 25의 예의 경우, Access Unit#2에 대해서는, 그 Access Unit에 저장되는 view component가 Dependent view video인 것을 view_id로부터 식별하는 것이 가능하게 된다.
한편, 도 25에 도시한 바와 같이, Access Unit#1에 저장된 view component인 Base view video에는 MVC 헤더가 부가되어 있지 않다.
상술한 바와 같이 Base view video 스트림은 2D 재생에도 사용되는 데이터이다. 따라서, 그것과의 호환성을 확보하기 위하여, Base view video에는 인코드 시에 MVC 헤더가 부가되지 않는다. 혹은, 한번 부가된 MVC 헤더가 제거된다. 기록 장치에 의한 인코드에 대해서는 후술한다.
재생 장치(1)에는, MVC 헤더가 부가되어 있지 않은 view component에 대해서는, 그 view_id가 0이며, view component를 Base view video인 것으로서 인식하도록 정의(설정)되어 있다. Dependent view video에는 0 이외의 값이 view_id로서 인코드 시에 설정된다.
이에 의해, 재생 장치(1)는, 0인 것으로서 인식한 view_id에 기초하여 Base view video를 식별할 수 있고, 실제로 설정되어 있는 0 이외의 view_id에 기초하여 Dependent view video를 식별할 수 있다.
도 24의 스위치(111)에 있어서는, Base view video의 패킷을 디코드하여 얻어진 데이터와 Dependent view video의 패킷을 디코드하여 얻어진 데이터의 식별이, 이러한 view_id에 기초하여 행해지도록 하여도 된다.
[제3 예]
도 26은, 비디오 스트림의 처리를 행하는 또 다른 구성을 도시하는 도면이다.
도 26의 예에 있어서는, 도 24의 L video 플레인 생성부(161) 대신에 B video 플레인 생성부(112)가 설치되고, R video 플레인 생성부(162) 대신에 D video 플레인 생성부(113)가 설치되어 있다. B video 플레인 생성부(112)와 D video 플레인 생성부(113)의 후단에는 스위치(171)가 설치되어 있다. 도 26에 도시한 구성에 있어서도, view_type에 기초하여 데이터의 출력처가 전환되도록 이루어져 있다.
스위치(111)는, DPB(151)에 기억된 데이터 중, Base view video의 패킷을 디코드하여 얻어진 데이터를 B video 플레인 생성부(112)에 출력한다. 또한, 스위치(111)는, Dependent view video의 패킷을 디코드하여 얻어진 데이터를 D video 플레인 생성부(113)에 출력한다.
Base view video의 패킷을 디코드하여 얻어진 데이터와, Dependent view video의 패킷을 디코드하여 얻어진 데이터는, 상술한 바와 같이 PID 또는 view_id에 기초하여 식별된다.
B video 플레인 생성부(112)는, Base view video의 플레인을 스위치(111)로부터 공급된 데이터에 기초하여 생성하고, 출력한다.
D video 플레인 생성부(113)는, Dependent view video의 플레인을 스위치(111)로부터 공급된 데이터에 기초하여 생성하고, 출력한다.
스위치(171)에 대해서는, PlayList 파일에 기술되어 있는 view_type이 컨트롤러(51)로부터 공급되어 있다.
view_type의 값이 0인 경우, 스위치(171)는, B video 플레인 생성부(112)로부터 공급된 Base view video의 플레인을 L view video의 플레인으로서 합성부(130)에 출력한다. view_type의 값의 0은, Base view video 스트림이 L view의 스트림인 것을 나타낸다.
또한, 이 경우, 스위치(171)는, D video 플레인 생성부(113)로부터 공급된 Dependent view video의 플레인을 R view video의 플레인으로서 합성부(130)에 출력한다.
한편, view_type의 값이 1인 경우, 스위치(171)는, D video 플레인 생성부(113)로부터 공급된 Dependent view video의 플레인을 L view video의 플레인으로서 합성부(130)에 출력한다. view_type의 값의 1은, Base view video 스트림이 R view의 스트림인 것을 나타낸다.
또한, 이 경우, 스위치(171)는 B video 플레인 생성부(112)로부터 공급된 Base view video의 플레인을 R view video의 플레인으로서 합성부(130)에 출력한다.
도 26의 구성에 의해서도, 재생 장치(1)는, L view와 R view를 식별하고, 식별 결과에 따라서 출력처를 전환할 수 있다.
[플레인 합성 모델의 제1 예]
도 27은, 도 21에 도시한 구성 중, 합성부(130)와, 그 전단의 구성을 도시하는 도면이다.
도 27에 있어서도, 도 21에 도시한 구성과 동일한 구성에는 동일한 부호를 부여하고 있다.
스위치(181)에는 Main TS 또는 Sub TS에 포함되는 IG 스트림을 구성하는 패킷이 입력된다. 스위치(181)에 입력되는 IG 스트림을 구성하는 패킷에는, Base view의 패킷과 Dependent view의 패킷이 포함된다.
스위치(182)에는 Main TS 또는 Sub TS에 포함되는 PG 스트림을 구성하는 패킷이 입력된다. 스위치(182)에 입력되는 PG 스트림을 구성하는 패킷에는, Base view의 패킷과 Dependent view의 패킷이 포함된다.
도 5 등을 참조하여 설명한 바와 같이, IG, PG에 대해서도, 3D 표시를 행하기 위한 Base view의 스트림과 Dependent view의 스트림이 준비되어 있다.
Base view의 IG가 Base view video와 합성하여 표시되고, Dependent view의 IG가 Dependent view video와 합성하여 표시됨으로써, 유저는 비디오뿐만 아니라, 버튼이나 아이콘 등을 3D로 보게 된다.
또한, Base view의 PG가 Base view video와 합성하여 표시되고, Dependent view의 PG가 Dependent view video와 합성하여 표시됨으로써, 유저는, 비디오뿐만 아니라, 자막의 텍스트 등을 3D로 보게 된다.
스위치(181)는, Base IG 스트림을 구성하는 패킷을 B IG 디코더(116)에 출력하고, Dependent IG 스트림을 구성하는 패킷을 D IG 디코더(120)에 출력한다. 스위치(181)는, 도 21의 스위치(114)와 스위치(118)의 기능을 갖는다. 도 27에 있어서는, 각 버퍼의 도시를 생략하고 있다.
B IG 디코더(116)는, 스위치(181)로부터 공급된 Base IG 스트림을 구성하는 패킷을 디코드하고, 디코드하여 얻어진 데이터를 B IG 플레인 생성부(117)에 출력한다.
B IG 플레인 생성부(117)는, Base IG의 플레인을 B IG 디코더(116)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
D IG 디코더(120)는, 스위치(181)로부터 공급된 Dependent IG 스트림을 구성하는 패킷을 디코드하고, 디코드하여 얻어진 데이터를 D IG 플레인 생성부(121)에 출력한다. Base IG 스트림과 Dependent IG 스트림이 1개의 디코더에 의해 디코드되도록 하여도 된다.
D IG 플레인 생성부(121)는, Dependent IG의 플레인을 D IG 디코더(120)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
스위치(182)는, Base PG 스트림을 구성하는 패킷을 B PG 디코더(124)에 출력하고, Dependent PG 스트림을 구성하는 패킷을 D PG 디코더(128)에 출력한다. 스위치(182)는, 도 21의 스위치(122)와 스위치(126)의 기능을 갖는다.
B PG 디코더(124)는, 스위치(182)로부터 공급된 Base PG 스트림을 구성하는 패킷을 디코드하고, 디코드하여 얻어진 데이터를 B PG 플레인 생성부(125)에 출력한다.
B PG 플레인 생성부(125)는, Base PG의 플레인을 B PG 디코더(124)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
D PG 디코더(128)는, 스위치(182)로부터 공급된 Dependent PG 스트림을 구성하는 패킷을 디코드하고, 디코드하여 얻어진 데이터를 D PG 플레인 생성부(129)에 출력한다. Base PG 스트림과 Dependent PG 스트림이 1개의 디코더에 의해 디코드되도록 하여도 된다.
D PG 플레인 생성부(129)는, Dependent PG의 플레인을 D PG 디코더(128)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
비디오 디코더(110)는, 스위치(109)(도 22 등)로부터 공급된 패킷을 순차적으로 디코드하고, 디코드하여 얻어진 Base view video의 데이터 또는 Dependent view video의 데이터를 스위치(111)에 출력한다.
스위치(111)는, Base view video의 패킷을 디코드하여 얻어진 데이터를 B video 플레인 생성부(112)에 출력하고, Dependent view video의 패킷을 디코드하여 얻어진 데이터를 D video 플레인 생성부(113)에 출력한다.
B video 플레인 생성부(112)는, Base view video의 플레인을 스위치(111)로부터 공급된 데이터에 기초하여 생성하고, 출력한다.
D video 플레인 생성부(113)는, Dependent view video의 플레인을 스위치(111)로부터 공급된 데이터에 기초하여 생성하고, 출력한다.
합성부(130)는, 가산부(191 내지 194) 및 스위치(195)로 구성된다.
가산부(191)는, D PG 플레인 생성부(129)로부터 공급된 Dependent PG의 플레인을, D video 플레인 생성부(113)로부터 공급된 Dependent view video의 플레인 상에 겹치도록 하여 합성하고, 합성 결과를 가산부(193)에 출력한다. D PG 플레인 생성부(129)로부터 가산부(191)에 공급되는 Dependent PG의 플레인에는, 색 정보의 변환 처리(CLUT(Color Look Up Table) 처리)가 실시된다.
가산부(192)는, B PG 플레인 생성부(125)로부터 공급된 Base PG의 플레인을, B video 플레인 생성부(112)로부터 공급된 Base view video의 플레인 상에 겹치도록 하여 합성하고, 합성 결과를 가산부(194)에 출력한다. B PG 플레인 생성부(125)로부터 가산부(192)에 공급되는 Base PG의 플레인에는, 색 정보의 변환 처리나 오프셋값을 사용한 보정 처리가 실시된다.
가산부(193)는, D IG 플레인 생성부(121)로부터 공급된 Dependent IG의 플레인을, 가산부(191)에 의한 합성 결과 상에 겹치도록 하여 합성하고, 합성 결과를 Dependent view의 플레인으로서 출력한다. D IG 플레인 생성부(121)로부터 가산부(193)에 공급되는 Dependent IG의 플레인에는, 색 정보의 변환 처리가 실시된다.
가산부(194)는, B IG 플레인 생성부(117)로부터 공급된 Base IG의 플레인을, 가산부(192)에 의한 합성 결과 상에 겹치도록 하여 합성하고, 합성 결과를 Base view의 플레인으로서 출력한다. D IG 플레인 생성부(121)로부터 가산부(194)에 공급되는 Base IG의 플레인에는, 색 정보의 변환 처리나 오프셋값을 사용한 보정 처리가 실시된다.
이와 같이 하여 생성된 Base view의 플레인과 Dependent view의 플레인에 기초하여 표시되는 화상은, 버튼이나 아이콘이 전방면에 보이고, 그 아래(깊이 방향)에 자막의 텍스트가 보이고, 그 아래에 비디오가 보이는 화상이 된다.
스위치(195)는, view_type의 값이 0인 경우, Base view의 플레인을 L view의 플레인으로서 출력하고, Dependent view의 플레인을 R view의 플레인으로서 출력한다. 스위치(195)에는 컨트롤러(51)로부터 view_type이 공급된다.
또한, 스위치(195)는, view_type의 값이 1인 경우, Base view의 플레인을 R view의 플레인으로서 출력하고, Dependent view의 플레인을 L view의 플레인으로서 출력한다. 공급된 플레인 중 어느 플레인이 Base view의 플레인인지 Dependent view의 플레인인지는, PID나 view_id에 기초하여 식별된다.
이와 같이 재생 장치(1)에 있어서는, Base view의 플레인끼리, Dependent view의 플레인끼리, video, IG, PG의 각 플레인의 합성이 행해진다.
video, IG, PG의 모든 플레인의 합성이 끝난 단계에서, Base view의 플레인끼리를 합성한 결과가 L view인지 또는 R view인지가 view_type에 기초하여 판단되어, R view의 플레인과 L view의 플레인이 각각 출력된다.
또한, video, IG, PG의 모든 플레인의 합성이 끝난 단계에서, Dependent view의 플레인끼리를 합성한 결과가 L view인지 또는 R view인지가 view_type에 기초하여 판단되어, R view의 플레인과 L view의 플레인이 각각 출력된다.
[제2 예]
도 28은, 합성부(130)와, 그 전단의 구성을 도시하는 도면이다.
도 28에 도시한 구성 중, 도 27에 도시한 구성과 동일한 구성에는 동일한 부호를 부여하고 있다. 도 28에 있어서는, 합성부(130)의 구성이 도 27의 구성과 상이하다. 또한, 스위치(111)의 동작이, 도 27의 스위치(111)의 동작과 상이하다. B video 플레인 생성부(112) 대신에 L video 플레인 생성부(161)가 설치되고, D video 플레인 생성부(113) 대신에 R video 플레인 생성부(162)가 설치되어 있다. 중복되는 설명에 대해서는 생략한다.
스위치(111)와, 합성부(130)의 스위치(201) 및 스위치(202)에 대해서는, 동일한 view_type의 값이 컨트롤러(51)로부터 공급된다.
스위치(111)는, 도 24의 스위치(111)와 마찬가지로, Base view video의 패킷을 디코드하여 얻어진 데이터와, Dependent view video의 패킷을 디코드하여 얻어진 데이터의 출력처를 view_type에 기초하여 전환한다.
예를 들어, view_type의 값이 0인 경우, 스위치(111)는, Base view video의 패킷을 디코드하여 얻어진 데이터를 L video 플레인 생성부(161)에 출력한다. 이 경우, 스위치(111)는, Dependent view video의 패킷을 디코드하여 얻어진 데이터를 R video 플레인 생성부(162)에 출력한다.
한편, view_type의 값이 1인 경우, 스위치(111)는, Base view video의 패킷을 디코드하여 얻어진 데이터를 R video 플레인 생성부(162)에 출력한다. 이 경우, 스위치(111)는, Dependent view video의 패킷을 디코드하여 얻어진 데이터를 L video 플레인 생성부(161)에 출력한다.
L video 플레인 생성부(161)는, L view video의 플레인을 스위치(111)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
R video 플레인 생성부(162)는, R view video의 플레인을 스위치(111)로부터 공급된 데이터에 기초하여 생성하고, 합성부(130)에 출력한다.
합성부(130)는 스위치(201), 스위치(202), 가산부(203 내지 206)로 구성된다.
스위치(201)는, B IG 플레인 생성부(117)로부터 공급된 Base IG의 플레인과 D IG 플레인 생성부(121)로부터 공급된 Dependent IG의 플레인의 출력처를 view_type에 기초하여 전환한다.
예를 들어, view_type의 값이 0인 경우, 스위치(201)는, B IG 플레인 생성부(117)로부터 공급된 Base IG의 플레인을 L view의 플레인으로서 가산부(206)에 출력한다. 이 경우, 스위치(201)는, D IG 플레인 생성부(121)로부터 공급된 Dependent IG의 플레인을 R view의 플레인으로서 가산부(205)에 출력한다.
한편, view_type의 값이 1인 경우, 스위치(201)는, D IG 플레인 생성부(121)로부터 공급된 Dependent IG의 플레인을 L view의 플레인으로서 가산부(206)에 출력한다. 이 경우, 스위치(201)는, B IG 플레인 생성부(117)로부터 공급된 Base IG의 플레인을 R view의 플레인으로서 가산부(205)에 출력한다.
스위치(202)는, B PG 플레인 생성부(125)로부터 공급된 Base PG의 플레인과 D PG 플레인 생성부(129)로부터 공급된 Dependent PG의 플레인의 출력처를 view_type에 기초하여 전환한다.
예를 들어, view_type의 값이 0인 경우, 스위치(202)는, B PG 플레인 생성부(125)로부터 공급된 Base PG의 플레인을 L view의 플레인으로서 가산부(204)에 출력한다. 이 경우, 스위치(202)는, D PG 플레인 생성부(129)로부터 공급된 Dependent PG의 플레인을 R view의 플레인으로서 가산부(203)에 출력한다.
한편, view_type의 값이 1인 경우, 스위치(202)는, D PG 플레인 생성부(129)로부터 공급된 Dependent PG의 플레인을 L view의 플레인으로서 가산부(204)에 출력한다. 이 경우, 스위치(202)는, B PG 플레인 생성부(125)로부터 공급된 Base PG의 플레인을 R view의 플레인으로서 가산부(203)에 출력한다.
가산부(203)는, 스위치(202)로부터 공급된 R view의 PG의 플레인을, R video 플레인 생성부(162)로부터 공급된 R view video의 플레인 상에 겹치도록 하여 합성하고, 합성 결과를 가산부(205)에 출력한다.
가산부(204)는, 스위치(202)로부터 공급된 L view의 PG의 플레인을, L video 플레인 생성부(161)로부터 공급된 L view video의 플레인 상에 겹치도록 하여 합성하고, 합성 결과를 가산부(206)에 출력한다.
가산부(205)는, 스위치(201)로부터 공급된 R view의 IG의 플레인을, 가산부(203)에 의한 합성 결과의 플레인 상에 겹치도록 하여 합성하고, 합성 결과를 R view의 플레인으로서 출력한다.
가산부(206)는, 스위치(201)로부터 공급된 L view의 IG의 플레인을, 가산부(204)에 의한 합성 결과의 플레인 상에 겹치도록 하여 합성하고, 합성 결과를 L view의 플레인으로서 출력한다.
이와 같이 재생 장치(1)에 있어서는, video, IG, PG의 각각의 Base view의 플레인과 Dependent view의 플레인에 대하여, 다른 플레인과의 합성 전에, 어느 플레인이 L view인지 또는 R view인지가 판단된다.
그 판단이 행해진 후, L view의 플레인끼리, R view의 플레인끼리를 합성하도록, video, IG, PG의 각 플레인의 합성이 행해진다.
[기록 장치의 구성예]
도 29는, 소프트 제작 처리부(301)의 구성예를 도시하는 블록도이다.
비디오 인코더(311)는, 도 3의 MVC 인코더(11)와 마찬가지의 구성을 갖고 있다. 비디오 인코더(311)는, 복수의 영상 데이터를 H.264 AVC/MVC로 인코드함으로써 Base view video 스트림과 Dependent view video 스트림을 생성하고, 버퍼(312)에 출력한다.
예를 들어, 비디오 인코더(311)는, 인코드 시, 동일한 PCR을 기준으로 하여 DTS, PTS를 설정한다. 즉, 비디오 인코더(311)는, 어느 한 Base view video의 픽처의 데이터를 저장하는 PES 패킷과, 디코드순으로 그 픽처와 대응하는 Dependent view video의 픽처의 데이터를 저장하는 PES 패킷에 동일한 DTS를 설정한다.
또한, 비디오 인코더(311)는, 어느 한 Base view video의 픽처의 데이터를 저장하는 PES 패킷과, 표시순으로 그 픽처와 대응하는 Dependent view video의 픽처의 데이터를 저장하는 PES 패킷에 동일한 PTS를 설정한다.
비디오 인코더(311)는, 후술하는 바와 같이 디코드순으로 대응하는 Base view video의 픽처와 Base view video의 픽처에, 복호에 관한 보조적인 정보인 부가 정보로서 각각 동일한 정보를 설정한다.
또한, 비디오 인코더(311)는, 후술하는 바와 같이 표시순으로 대응하는 Base view video의 픽처와 Base view video의 픽처에, 픽처의 출력순을 나타내는 POC의 값으로서 각각 동일값을 설정한다.
또한, 비디오 인코더(311)는, 후술하는 바와 같이 Base view video 스트림의 GOP 구조와 Dependent view video 스트림의 GOP 구조를 일치시키도록 하여 인코드를 행한다.
오디오 인코더(313)는, 입력된 오디오 스트림을 인코드하고, 얻어진 데이터를 버퍼(314)에 출력한다. 오디오 인코더(313)에는 Base view video, Dependent view video 스트림과 함께 디스크에 기록시키는 오디오 스트림이 입력된다.
데이터 인코더(315)는, PlayList 파일 등의 비디오, 오디오 이외의 상술한 각종 데이터를 인코드하고, 인코드하여 얻어진 데이터를 버퍼(316)에 출력한다.
데이터 인코더(315)는, 비디오 인코더(311)에 의한 인코드에 따라서, Base view video 스트림이 L view의 스트림인지, R view의 스트림인지를 나타내는 view_type을 PlayList 파일에 설정한다. Base view video 스트림의 종류가 아니고, Dependent view video 스트림이 L view의 스트림인지, R view의 스트림인지를 나타내는 정보가 설정되도록 하여도 된다.
또한, 데이터 인코더(315)는, 후술하는 EP_map을, Base view video 스트림의 Clip Information 파일과, Dependent view video 스트림의 Clip Information 파일에 각각 설정한다. 디코드 개시 위치로서 EP_map에 설정된 Base view video 스트림의 픽처와, Dependent view video 스트림의 픽처는 대응하는 픽처가 된다.
다중화부(317)는, 각각의 버퍼에 기억된 비디오 데이터, 오디오 데이터 및 스트림 이외의 데이터를 동기 신호와 함께 다중화하고, 오류 정정 부호화부(318)에 출력한다.
오류 정정 부호화부(318)는, 에러 정정용의 코드를 다중화부(317)에 의해 다중화된 데이터에 부가한다.
변조부(319)는, 오류 정정 부호화부(318)로부터 공급된 데이터에 대하여 변조를 실시하여, 출력한다. 변조부(319)의 출력은, 재생 장치(1)에 있어서 재생 가능한 광 디스크(2)에 기록되는 소프트웨어가 된다.
이와 같은 구성을 갖는 소프트 제작 처리부(301)가 기록 장치에 설치된다.
도 30은, 소프트 제작 처리부(301)를 포함하는 구성의 예를 도시하는 도면이다.
도 30에 도시한 구성의 일부가 기록 장치 내에 설치되는 경우도 있다.
소프트 제작 처리부(301)에 의해 생성된 기록 신호는 프리마스터링 처리부(331)에 있어서 마스터링 처리가 실시되어, 광 디스크(2)에 기록해야 할 포맷의 신호가 생성된다. 생성된 신호는 원반 기록부(333)에 공급된다.
기록용 원반 제작부(332)에 있어서는, 유리 등으로 이루어지는 원반이 준비되고, 그 위에 포토레지스트 등으로 이루어지는 기록 재료가 도포된다. 이에 의해, 기록용 원반이 제작된다.
원반 기록부(333)에 있어서, 프리마스터링 처리부(331)로부터 공급된 기록 신호에 대응하여 레이저 빔이 변조되어, 원반 상의 포토레지스트에 조사된다. 이에 의해, 원반 상의 포토레지스트가 기록 신호에 대응하여 노광된다. 그 후, 이 원반을 현상하여, 원반 상에 피트를 출현시키는 것이 행해진다.
금속 원반 제작부(334)에 있어서, 원반에 전기 주조 등의 처리가 실시되어, 유리 원반 상의 피트를 전사한 금속 원반이 제작된다. 이 금속 원반으로부터, 또한 금속 스탬퍼가 제작되어, 이것이 성형용 금형으로 된다.
성형 처리부(335)에 있어서, 성형용 금형에, 인젝션 등에 의해 PMMA(아크릴) 또는 PC(폴리카르보네이트) 등의 재료를 주입하고, 고정화시키는 것이 행해진다. 혹은, 금속 스탬퍼 상에 2P(자외선 경화 수지) 등을 도포한 후, 자외선을 조사하여 경화시키는 것이 행해진다. 이에 의해, 금속 스탬퍼 상의 피트를, 수지로 이루어지는 레플리카 상에 전사할 수 있다.
성막 처리부(336)에 있어서, 레플리카 상에 반사막이 증착 혹은 스퍼터링 등에 의해 형성된다. 혹은 또한, 레플리카 상에 반사막이 스핀 코팅에 의해 형성된다.
후속 가공 처리부(337)에 있어서, 이 디스크에 대하여 내외경의 가공이 실시되어, 2매의 디스크를 맞붙이는 등의 필요한 처치가 실시된다. 또한, 라벨을 부착하거나, 허브를 설치하거나 한 후, 카트리지에 삽입한다. 이와 같이 하여 재생 장치(1)에 의해 재생 가능한 데이터가 기록된 광 디스크(2)가 완성된다.
<제2 실시 형태>
[H.264 AVC/MVC Profile 비디오 스트림의 운용 1]
광 디스크(2)의 규격인 BD-ROM 규격에 있어서는, 상술한 바와 같이, H.264 AVC/MVC Profile을 채용함으로써 3D 영상의 부호화가 실현된다.
또한, BD-ROM 규격에 있어서는, Base view video 스트림을 L view의 영상의 스트림으로 하고, Dependent view video 스트림을 R view의 영상의 스트림으로 한다.
Base view video를 H.264 AVC/High Profile 비디오 스트림으로서 부호화함으로써, 과거의 플레이어나 2D 재생에만 대응한 플레이어에 있어서도, 3D 대응의 디스크인 광 디스크(2)를 재생하는 것이 가능하게 된다. 즉, 하위 호환성을 확보하는 것이 가능하게 된다.
구체적으로는, Base view video의 스트림만을 H.264 AVC/MVC 비대응 디코더에 있어서도 디코드(재생) 가능하게 된다. 즉, Base view video 스트림은, 기존의 2D의 BD 플레이어에 있어서도 반드시 재생 가능한 스트림이 된다.
또한, Base view video 스트림을, 2D 재생과 3D 재생에 있어서 공통으로 사용함으로써, 오소링 시의 부하의 경감을 도모하는 것이 가능하게 된다. 오소링측은, AV 스트림에 관해서는, 종래 행하고 있던 작업 외에, Dependent view video 스트림을 준비하면 3D 대응의 디스크를 제작하는 것이 가능하게 된다.
도 31은, 기록 장치에 설치되는 3D video TS 생성부의 구성예를 도시하는 도면이다.
도 31의 3D video TS 생성부는, MVC 인코더(401), MVC 헤더 제거부(402) 및 멀티플렉서(403)로 구성된다. 도 2를 참조하여 설명한 바와 같이 촬영된 L view의 영상#1의 데이터와, R view의 영상#2의 데이터가 MVC 인코더(401)에 입력된다.
MVC 인코더(401)는, 도 3의 MVC 인코더(11)와 마찬가지로, L view의 영상#1의 데이터를 H.264/AVC로 부호화하고, 부호화하여 얻어진 AVC 비디오 데이터를 Base view video 스트림으로서 출력한다. 또한, MVC 인코더(401)는, L view의 영상#1의 데이터와 R view의 영상#2의 데이터에 기초하여 Dependent view video 스트림을 생성하여, 출력한다.
MVC 인코더(401)로부터 출력된 Base view video 스트림은, Base view video의 각 픽처의 데이터를 저장한 Access Unit으로 이루어진다. 또한, MVC 인코더(401)로부터 출력된 Dependent view video 스트림은, Dependent view video의 각 픽처의 데이터를 저장한 Access Unit으로 이루어진다.
Base view video 스트림을 구성하는 각 Access Unit과 Dependent view video 스트림을 구성하는 각 Access Unit에는, 저장되어 있는 view component를 식별하기 위한 view_id를 기술한 MVC 헤더가 포함되어 있다.
Dependent view video의 MVC 헤더에 기술되는 view_id의 값으로서는, 1 이상의 고정값이 사용된다. 도 32, 도 33의 예에 있어서도 마찬가지이다.
즉, MVC 인코더(401)는, 도 3의 MVC 인코더(11)와는 달리, MVC 헤더를 부가한 형태로 Base view video와 Dependent view video의 각각의 스트림을 생성하여, 출력하는 인코더이다. 도 3의 MVC 인코더(11)에 있어서는, H.264 AVC/MVC로 부호화된 Dependent view video에만 MVC 헤더가 부가되어 있다.
MVC 인코더(401)로부터 출력된 Base view video 스트림은 MVC 헤더 제거부(402)에 공급되고, Dependent view video 스트림은 멀티플렉서(403)에 공급된다.
MVC 헤더 제거부(402)는, Base view video 스트림을 구성하는 각 Access Unit에 포함되는 MVC 헤더를 제거한다. MVC 헤더 제거부(402)는, MVC 헤더를 제거한 Access Unit으로 구성되는 Base view video 스트림을 멀티플렉서(403)에 출력한다.
멀티플렉서(403)는, MVC 헤더 제거부(402)로부터 공급된 Base view video 스트림과, MVC 인코더(401)로부터 공급된 Dependent view video 스트림을 포함하는 TS를 생성하여, 출력한다. 도 31의 예에 있어서는, Base view video 스트림을 포함하는 TS와 Dependent view video 스트림을 포함하는 TS가 각각 출력되어 있는데, 상술한 바와 같이 동일한 TS로 다중화되어 출력되는 경우도 있다.
이와 같이 실장 방법에 따라서는, L view의 영상과 R view의 영상을 입력하고, MVC 헤더부의 Base view video와 Dependent view video 각각의 스트림을 출력하는 MVC 인코더도 생각할 수 있다.
또한, 도 31에 도시한 구성 전체를 도 3에 도시한 바와 같이 MVC 인코더 중에 포함시키는 것도 가능하다. 도 32, 도 33에 도시한 구성에 대해서도 마찬가지이다.
도 32는, 기록 장치에 설치되는 3D video TS 생성부의 다른 구성예를 도시하는 도면이다.
도 32의 3D video TS 생성부는, 혼합 처리부(411), MVC 인코더(412), 분리부(413), MVC 헤더 제거부(414) 및 멀티플렉서(415)로 구성된다. L view의 영상#1의 데이터와, R view의 영상#2의 데이터가 혼합 처리부(411)에 입력된다.
혼합 처리부(411)는, L view의 각 픽처와 R view의 각 픽처를 부호화순으로 배열한다. Dependent view video의 각 픽처는 대응하는 Base view video의 픽처를 참조하여 부호화가 행해지기 때문에, 부호화순으로 배열한 결과는, L view의 픽처와 R view의 픽처가 교대로 배열되는 것이 된다.
혼합 처리부(411)는, 부호화순으로 배열한 L view의 픽처와 R view의 픽처를 MVC 인코더(412)에 출력한다.
MVC 인코더(412)는, 혼합 처리부(411)로부터 공급된 각 픽처를 H.264 AVC/MVC로 부호화하고, 부호화하여 얻어진 스트림을 분리부(413)에 출력한다. MVC 인코더(412)로부터 출력된 스트림에는, Base view video 스트림과 Dependent view video 스트림이 다중화되어 있다.
MVC 인코더(412)로부터 출력된 스트림에 포함되는 Base view video 스트림은, Base view video의 각 픽처의 데이터를 저장한 Access Unit으로 이루어진다. 또한, MVC 인코더(412)로부터 출력된 스트림에 포함되는 Dependent view video 스트림은, Dependent view video의 각 픽처의 데이터를 저장한 Access Unit으로 이루어진다.
Base view video 스트림을 구성하는 각 Access Unit과 Dependent view video 스트림을 구성하는 각 Access Unit에는, 저장되어 있는 view component를 식별하기 위한 view_id를 기술한 MVC 헤더가 포함되어 있다.
분리부(413)는, MVC 인코더(412)로부터 공급된 스트림으로 다중화되어 있는 Base view video 스트림과 Dependent view video 스트림을 분리하여, 출력한다. 분리부(413)로부터 출력된 Base view video 스트림은 MVC 헤더 제거부(414)에 공급되고, Dependent view video 스트림은 멀티플렉서(415)에 공급된다.
MVC 헤더 제거부(414)는, 분리부(413)로부터 공급된 Base view video 스트림을 구성하는 각 Access Unit에 포함되는 MVC 헤더를 제거한다. MVC 헤더 제거부(414)는, MVC 헤더를 제거한 Access Unit으로 구성되는 Base view video 스트림을 멀티플렉서(415)에 출력한다.
멀티플렉서(415)는, MVC 헤더 제거부(414)로부터 공급된 Base view video 스트림과, 분리부(413)로부터 공급된 Dependent view video 스트림을 포함하는 TS를 생성하여, 출력한다.
도 33은, 기록 장치에 설치되는 3D video TS 생성부의 또 다른 구성예를 도시하는 도면이다.
도 33의 3D video TS 생성부는, AVC 인코더(421), MVC 인코더(422) 및 멀티플렉서(423)로 구성된다. L view의 영상#1의 데이터는 AVC 인코더(421)에 입력되고, R view의 영상#2의 데이터는 MVC 인코더(422)에 입력된다.
AVC 인코더(421)는, L view의 영상#1의 데이터를 H.264/AVC로 부호화하고, 부호화하여 얻어진 AVC 비디오 스트림을 Base view video 스트림으로서 MVC 인코더(422)와 멀티플렉서(423)에 출력한다. AVC 인코더(421)로부터 출력된 Base view video 스트림을 구성하는 각 Access Unit에는 MVC 헤더가 포함되어 있지 않다.
MVC 인코더(422)는, AVC 인코더(421)로부터 공급된 Base view video 스트림(AVC 비디오 스트림)을 디코드하여, L view의 영상#1의 데이터를 생성한다.
또한, MVC 인코더(422)는, 디코드하여 얻어진 L view의 영상#1의 데이터와, 외부로부터 입력된 R view의 영상#2의 데이터에 기초하여 Dependent view video 스트림을 생성하여, 멀티플렉서(423)에 출력한다. MVC 인코더(422)로부터 출력된 Dependent view video 스트림을 구성하는 각 Access Unit에는 MVC 헤더가 포함되어 있다.
멀티플렉서(423)는, AVC 인코더(421)로부터 공급된 Base view video 스트림과, MVC 인코더(422)로부터 공급된 Dependent view video 스트림을 포함하는 TS를 생성하여, 출력한다.
도 33의 AVC 인코더(421)가 도 3의 H.264/AVC 인코더(21)의 기능을 갖고, MVC 인코더(422)가 도 3의 H.264/AVC 디코더(22)와 Dependent view video 인코더(24)의 기능을 갖게 된다. 또한, 멀티플렉서(423)가 도 3의 멀티플렉서(25)의 기능을 갖게 된다.
이와 같은 구성을 갖는 3D video TS 생성부를 기록 장치 내에 설치함으로써, Base view video의 데이터를 저장하는 Access Unit에 대한 MVC 헤더의 부호화를 금지하는 것이 가능하게 된다. 또한, Dependent view video의 데이터를 저장하는 Access Unit에, 1 이상의 view_id가 설정된 MVC 헤더가 포함되도록 할 수 있다.
도 34는, Access Unit을 디코드하는 재생 장치(1)측의 구성을 도시하는 도면이다.
도 34에 있어서는, 도 22 등을 참조하여 설명한 스위치(109)와 비디오 디코더(110)가 도시되어 있다. Base view video의 데이터를 포함하는 Access Unit#1과, Dependent view video의 데이터를 포함하는 Access Unit#2가 버퍼로부터 판독되어, 스위치(109)에 공급된다.
Base view video를 참조하여 부호화가 행해지고 있기 때문에, Dependent view video를 정확하게 복호하기 위해서는, 우선, 대응하는 Base view video를 복호해 두는 것이 필요하게 된다.
H.264/MVC 규격에 있어서는, 디코더측이, MVC 헤더에 포함되는 view_id를 이용하여 각 Access Unit의 복호 순서를 산출하도록 이루어져 있다. 또한, Base view video에는 그 인코드 시에, 항상 최소의 값을 view_id의 값으로서 설정하는 것이 정해져 있다. 디코더는, 최소의 view_id가 설정되어 있는 MVC 헤더를 포함하는 Access Unit으로부터 복호를 개시함으로써, Base view video와 Dependent view video를 정확한 순서로 복호할 수 있도록 이루어져 있다.
그런데, 재생 장치(1)의 비디오 디코더(110)에 공급되는, Base view video를 저장한 Access Unit에는 MVC 헤더의 부호화가 금지되어 있다.
따라서, 재생 장치(1)에 있어서는, MVC 헤더가 없는 Access Unit에 저장되어 있는 view component에 대해서는, 그 view_id가 0인 것으로서 인식하도록 정의되어 있다.
이에 의해, 재생 장치(1)는, 0인 것으로서 인식한 view_id에 기초하여 Base view video를 식별할 수 있고, 실제로 설정되어 있는 0 이외의 view_id에 기초하여 Dependent view video를 식별할 수 있다.
도 34의 스위치(109)는, 최소의 값인 0이 view_id로서 설정되어 있다고 인식한 Access Unit#1을 우선 비디오 디코더(110)에 출력하여, 디코드를 행하게 한다.
또한, 스위치(109)는, Access Unit#1의 디코드가 종료된 후, 0보다 큰 고정값인 Y가 view_id로서 설정되어 있는 유닛인 Access Unit#2를 비디오 디코더(110)에 출력하여, 디코드를 행하게 한다. Access Unit#2에 저장되어 있는 Dependent view video의 픽처는, Access Unit#1에 저장되어 있는 Base view video의 픽처에 대응하는 픽처이다.
이와 같이 Base view video를 저장한 Access Unit에 대한 MVC 헤더의 부호화를 금지함으로써, 광 디스크(2)에 기록되어 있는 Base view video 스트림을, 종래의 플레이어에 있어서도 재생 가능한 스트림으로 할 수 있다.
BD-ROM 규격을 확장한 BD-ROM 3D 규격의 Base view video 스트림의 조건으로서, 종래의 플레이어에 있어서도 재생 가능한 스트림으로 하는 조건이 결정된 경우에도, 그 조건을 만족하도록 할 수 있다.
예를 들어, 도 35에 도시한 바와 같이, Base view video와 Dependent view video에 각각 MVC 헤더를 부가해 두고, Base view video로부터 먼저 디코드가 행해지도록 한 경우, 그 Base view video는 종래의 플레이어에 있어서는 재생할 수 없는 것이 된다. 종래의 플레이어가 탑재하는 H.264/AVC 디코더에 있어서는, MVC 헤더는 미정의의 데이터이다. 그러한 미정의의 데이터가 입력된 경우, 디코더에 따라서는 그것을 무시할 수 없어, 처리가 파탄될 우려가 있다.
또한, 도 35에 있어서는, Base view video의 view_id는 X, Dependent view video의 view_id는, X보다 큰 Y이다.
또한, MVC 헤더의 부호화를 금지한 경우에도, Base view video의 view_id를 0으로서 간주하도록 정의함으로써, 재생 장치(1)에 Base view video의 디코드를 먼저 행하게 하고, 그 후에 대응하는 Dependent view video의 디코드를 행하게 할 수 있다. 즉, 정확한 순서로 디코드를 행하게 하는 것이 가능하게 된다.
[운용 2]
GOP 구조에 대하여
H.264/AVC 규격에는, MPEG-2 비디오 규격에서의 GOP(Group Of Pictures) 구조가 정의되어 있지 않다.
따라서, H.264/AVC 비디오 스트림을 취급하는 BD-ROM 규격에 있어서는, H.264/AVC 비디오 스트림의 GOP 구조를 정의하고, 랜덤 액세스 등의 GOP 구조를 이용한 각종 기능을 실현하고 있다.
H.264 AVC/MVC로 부호화하여 얻어진 비디오 스트림인 Base view video 스트림과 Dependent view video 스트림에도, H.264/AVC 비디오 스트림과 마찬가지로 GOP 구조의 정의가 존재하지 않는다.
Base view video 스트림은 H.264/AVC 비디오 스트림이다. 따라서, Base view video 스트림의 GOP 구조는, BD-ROM 규격에 있어서 정의된 H.264/AVC 비디오 스트림의 GOP 구조와 동일한 구조가 된다.
Dependent view video 스트림의 GOP 구조에 대해서도, Base view video 스트림의 GOP 구조, 즉 BD-ROM 규격에 있어서 정의된 H.264/AVC 비디오 스트림의 GOP 구조와 동일한 구조로서 정의한다.
BD-ROM 규격에 있어서 정의된 H.264/AVC 비디오 스트림의 GOP 구조에는 다음과 같은 특징이 있다.
1. 스트림 구조에 관한 특징
(1) Open GOP/Closed GOP 구조
도 36은, Closed GOP 구조를 도시하는 도면이다.
도 36의 각 픽처는 H.264/AVC 비디오 스트림을 구성하는 픽처이다. Closed GOP에는 IDR(Instantaneous Decoding Refresh) 픽처가 포함된다.
IDR 픽처는 I 픽처이며, IDR 픽처를 포함하는 GOP 내 중에서 처음으로 디코드된다. IDR 픽처의 디코드 시, 참조 픽처 버퍼(도 22의 DPB(151))의 상태나, 그때까지 관리되고 있던 프레임 번호나 POC(Picture Order Count) 등의 디코드에 관한 모든 정보는 리셋된다.
도 36에 도시한 바와 같이, Closed GOP인 현재 GOP에 있어서는, 그 현재 GOP의 픽처 중, IDR 픽처보다 표시순으로 앞(과거)의 픽처는, 직전의 GOP의 픽처를 참조하는 것이 금지된다.
또한, 현재 GOP의 픽처 중, IDR 픽처보다 표시순으로 뒤(미래)의 픽처는, IDR 픽처를 넘어, 직전의 GOP의 픽처를 참조하는 것이 금지된다. H.264/AVC에 있어서는, 표시순으로 I 픽처 뒤에 있는 P 픽처로부터, 그 I 픽처보다 앞의 픽처를 참조하는 것도 허용되어 있다.
도 37은, Open GOP 구조를 도시하는 도면이다.
도 37에 도시한 바와 같이, Open GOP인 현재 GOP에 있어서는, 그 현재 GOP의 픽처 중, non-IDR I 픽처(IDR 픽처가 아닌 I 픽처)보다 표시순으로 앞의 픽처는, 직전의 GOP의 픽처를 참조하는 것이 허용된다.
또한, 현재 GOP의 픽처 중, non-IDR I 픽처보다 표시순으로 뒤의 픽처는, non-IDR I 픽처를 넘어 직전의 GOP의 픽처를 참조하는 것이 금지된다.
(2) GOP의 선두의 Access Unit에는 SPS, PPS가 반드시 부호화된다.
SPS(Sequence Parameter Set)는, 시퀀스 전체의 부호화에 관한 정보를 포함하는, 시퀀스의 헤더 정보이다. 어느 한 시퀀스의 디코드 시, 시퀀스의 식별 정보 등이 포함되는 SPS가 처음으로 필요하게 된다. PPS(Picture Parameter Set)는, 픽처 전체의 부호화에 관한 정보를 포함하는, 픽처의 헤더 정보이다.
(3) GOP의 선두의 Access Unit에는 최대 30개까지의 PPS를 부호화할 수 있다. 복수의 PPS를 선두의 Access Unit에 부호화한 경우에는, 각 PPS의 id(pic_parameter_set_id)는 통합되어서는 안된다.
(4) GOP의 선두 이외의 Access Unit에는 최대 1개까지의 PPS를 부호화할 수 있다.
2. 참조 구조에 관한 특징
(1) I·P·B 픽처는, 각각 I·P·B 슬라이스만으로 구성되는 픽처인 것이 요구된다.
(2) 표시순으로 참조 픽처(I or P 픽처) 직전의 B 픽처는, 부호화순으로는, 반드시 그 참조 픽처 직후에 부호화되어 있는 것이 요구된다.
(3) 참조 픽처(I or P 픽처)의 부호화순과 표시순은 유지되는 것(동일한 것)이 요구된다.
(4) P 픽처로부터 B 픽처를 참조하는 것은 금지된다.
(5) 부호화순으로, 비참조 B 픽처(B1)가 비참조 픽처(B2) 앞인 경우, 표시순도 B1이 앞이 되는 것이 요구된다.
비참조 B 픽처는, 부호화순으로 뒤에 있는 다른 픽처에 의해 참조되지 않는 B 픽처이다.
(6) 참조 B 픽처는, 표시순으로 직전, 또는 직후의 참조 픽처(I or P 픽처)를 참조할 수 있다.
(7) 비참조 B 픽처는, 표시순으로 직전, 또는 직후의 참조 픽처(I or P 픽처), 또는 참조 B 픽처를 참조할 수 있다.
(8) 연속하는 B 픽처의 수를 최대 3매로 하는 것이 요구된다.
3. GOP 내의 최대 프레임·필드 수에 관한 특징
GOP 내의 최대 프레임·필드 수는, 도 38에 도시한 바와 같이 비디오의 프레임 레이트에 따라서 규정되어 있다.
도 38에 도시한 바와 같이, 예를 들어 프레임 레이트가 29.97프레임/초로 인터레이스 표시를 행하는 경우, 1GOP의 픽처로 표시시키는 것이 가능한 최대 필드 수는 60이다. 또한, 프레임 레이트가 59.94프레임/초로 프로그레시브 표시를 행하는 경우, 1GOP의 픽처로 표시시키는 것이 가능한 최대 프레임 수는 60이다.
이상과 같은 특징을 갖는 GOP 구조를, Dependent view video 스트림의 GOP 구조로서도 정의한다.
또한, Base view video 스트림의 어느 한 GOP의 구조와, 대응하는 Dependent view video 스트림의 GOP의 구조를 일치시키는 것을 제약으로서 규정한다.
이상과 같이 하여 정의한 Base view video 스트림 또는 Dependent view video 스트림의 Closed GOP 구조를 도 39에 도시한다.
도 39에 도시한 바와 같이, Closed GOP인 현재 GOP에 있어서는, 그 현재 GOP의 픽처 중, IDR 픽처 또는 앵커 픽처보다 표시순으로 앞(과거)의 픽처는, 직전의 GOP의 픽처를 참조하는 것이 금지된다. 앵커 픽처에 대해서는 후술한다.
또한, 현재 GOP의 픽처 중, IDR 픽처 또는 앵커 픽처보다 표시순으로 뒤(미래)의 픽처는, IDR 픽처 또는 앵커 픽처를 넘어, 직전의 GOP의 픽처를 참조하는 것이 금지된다.
도 40은, Base view video 스트림 또는 Dependent view video 스트림의 Open GOP 구조를 도시하는 도면이다.
도 40에 도시한 바와 같이, Open GOP인 현재 GOP에 있어서는, 그 현재 GOP의 픽처 중, non-IDR 앵커 픽처(IDR 픽처가 아닌 앵커 픽처)보다 표시순으로 앞의 픽처는, 직전의 GOP의 픽처를 참조하는 것이 허용된다.
또한, 현재 GOP의 픽처 중, non-IDR 앵커 픽처보다 표시순으로 뒤의 픽처는, non-IDR 앵커 픽처를 넘어 직전의 GOP의 픽처를 참조하는 것이 금지된다.
이상과 같이 하여 GOP 구조를 정의함으로써, 예를 들어 Base view video 스트림의 어느 한 GOP와, 대응하는 Dependent view video 스트림의 GOP 사이에서는, Open GOP인지, Closed GOP인지와 같은 스트림 구조의 특징이 일치하게 된다.
또한, Base view video의 비참조 B 픽처에 대응하는 Dependent view video의 픽처는 반드시 비참조 B 픽처가 되는 바와 같이, 픽처의 참조 구조의 특징도 일치하게 된다.
또한, Base view video 스트림의 어느 한 GOP와, 대응하는 Dependent view video 스트림의 GOP 사이에서는 프레임 수, 필드 수도 일치하게 된다.
이와 같이 Dependent view video 스트림의 GOP 구조를 Base view video 스트림의 GOP 구조와 동일한 구조로서 정의함으로써, 스트림 사이의 대응하는 GOP끼리 동일한 특징을 갖게 하는 것이 가능하게 된다.
또한, 스트림의 도중부터 디코드를 행하는 경우에도 문제없이 그것을 행하는 것이 가능하게 된다. 스트림 도중부터의 디코드는, 예를 들어 트릭 플레이나 랜덤 액세스 시에 행해진다.
프레임 수가 상이한 바와 같이, 스트림 사이의 대응하는 GOP끼리의 구조가 상이한 경우, 한쪽의 스트림은 정상적으로 재생할 수 있음에도 다른 쪽의 스트림을 재생할 수 없는 경우가 발생할 우려가 있지만, 그것을 방지할 수 있다.
스트림 사이의 대응하는 GOP끼리의 구조를 상이한 것으로 하여 스트림의 도중부터 디코드를 개시한 경우, Dependent view video의 디코드에 필요하게 되는 Base view video의 픽처가 디코드되어 있지 않은 경우가 발생할 우려도 있다. 이 경우, 결과적으로 Dependent view video의 픽처를 디코드할 수 없어, 3D 표시를 행할 수 없게 된다. 또한, 실장 방법에 따라서는, Base view video의 화상도 출력할 수 없을 가능성이 있지만, 그와 같은 문제도 피할 수 있다.
EP_map에 관해서
Base view video 스트림과 Dependent view video 스트림의 GOP 구조를 이용함으로써, 랜덤 액세스나 트릭 플레이 시의 디코드의 개시 위치를 EP_map에 설정하는 것이 가능하게 된다. EP_map은 Clip Information 파일에 포함된다.
디코드 개시 위치로서 EP_map에 설정 가능한 픽처의 제약으로서 다음 2가지 제약을 규정한다.
1. Dependent view video 스트림에 설정 가능한 위치를, SubsetSPS에 계속해서 배치되는 앵커 픽처의 위치나, SubsetSPS에 계속해서 배치되는 IDR 픽처의 위치로 한다.
앵커 픽처는, H.264 AVC/MVC로 규정되는 픽처이며, 시간 방향을 참조하지 않고, view 사이의 참조를 행하여 부호화된 Dependent view video 스트림의 픽처이다.
2. Dependent view video 스트림의 어느 한 픽처를 디코드 개시 위치로서 EP_map에 설정하는 경우, 대응하는 Base view video 스트림의 픽처도, 디코드 개시 위치로서 EP_map에 설정한다.
도 41은, 상기 2가지 제약을 만족하는 EP_map에 설정된 디코드 개시 위치의 예를 도시하는 도면이다.
도 41에 있어서는, Base view video 스트림을 구성하는 픽처와, Dependent view video 스트림을 구성하는 픽처를 디코드순으로 도시하고 있다.
Dependent view video 스트림의 픽처 중 착색하여 나타내는 픽처(P1)는 앵커 픽처 또는 IDR 픽처이다. 픽처(P1)의 데이터를 포함하는 Access Unit의 직전 Access Unit에는 SubsetSPS가 포함된다.
도 41의 예에 있어서는, 백색 화살표#11로 나타낸 바와 같이, 픽처(P1)가, Dependent view video 스트림의 EP_map에 디코드 개시 위치로서 설정되어 있다.
픽처(P1)에 대응하는 Base view video 스트림의 픽처인 픽처(P11)는 IDR 픽처이다. 백색 화살표#12로 나타낸 바와 같이, IDR 픽처인 픽처(P11)도 Base view video 스트림의 EP_map에 디코드 개시 위치로서 설정되어 있다.
랜덤 액세스나 트릭 플레이가 지시되었기 때문에, 픽처(P1)와 픽처(P11)부터 디코드를 개시하는 경우, 우선 픽처(P11)의 디코드가 행해진다. IDR 픽처이기 때문에, 다른 픽처를 참조하지 않고, 픽처(P11)를 디코드하는 것이 가능하다.
픽처(P11)의 디코드가 종료되었을 때, 이어서 픽처(P1)가 디코드된다. 픽처(P1)의 디코드에는 디코드를 마친 픽처(P11)가 참조된다. 앵커 픽처 또는 IDR 픽처이기 때문에, 픽처(P11)의 디코드가 종료되어 있으면 픽처(P1)의 디코드는 가능하다.
그 후, Base view video의 픽처(P1)의 다음 픽처, Dependent view video의 픽처(P11)의 다음 픽처, …와 같은 식으로 디코드가 행해진다.
대응하는 GOP의 구조가 동일하고, 또한 대응하는 위치부터 디코드가 개시되기 때문에, Base view video에 대해서도 Dependent view video에 대해서도, EP_map에 설정된 픽처 이후의 픽처를 문제없이 디코드할 수 있다. 이에 의해 랜덤 액세스를 실현하는 것이 가능하게 된다.
도 41의 수직 방향으로 표시된 점선으로부터 좌측에 배열되는 픽처는 디코드되지 않는 픽처가 된다.
도 42는, Dependent view video의 GOP 구조를 정의하지 않은 경우에 발생하는 문제에 대하여 도시하는 도면이다.
도 42의 예에 있어서는, 착색하여 나타내는 Base view video의 IDR 픽처인 픽처(P21)가 디코드 개시 위치로서 EP_map에 설정되어 있다.
Base view video의 픽처(P21)부터 디코드를 개시하는 경우에 있어서, 픽처(P21)에 대응하는 Dependent view video의 픽처인 픽처(P31)가 앵커 픽처가 아닌 경우를 생각한다. GOP 구조를 정의하지 않은 경우, Base view video의 IDR 픽처에 대응하는 Dependent view video의 픽처가 IDR 픽처 또는 앵커 픽처라는 보장은 없다.
이 경우, Base view video의 픽처(P21)의 디코드가 끝났을 때에도 픽처(P31)를 디코드할 수는 없다. 픽처(P31)의 디코드에는 시간 방향의 참조도 필요하게 되지만, 수직 방향으로 표시된 점선으로부터 좌측(디코드순으로 앞)의 픽처는 디코드되어 있지 않다.
픽처(P31)를 디코드할 수 없음으로써, 픽처(P31)를 참조하는 Dependent view video의 다른 픽처도 디코드할 수 없게 된다.
Dependent view video 스트림의 GOP 구조를 정의해 둠으로써, 이러한 것을 피할 수 있다.
Base view video뿐만 아니라, Dependent view video에 대해서도 EP_map에서 디코드 개시 위치를 설정해 둠으로써, 재생 장치(1)는 디코드의 개시 위치를 용이하게 특정하는 것이 가능하게 된다.
Base view video의 어느 한 픽처만을 디코드 개시 위치로서 EP_map에 설정해 둔 경우, 재생 장치(1)는, 디코드 개시 위치의 픽처에 대응하는 Dependent view video의 픽처를 계산에 의해 특정할 필요가 있어, 처리가 복잡해져 버린다.
비록 대응하는 Base view video와 Dependent view video의 픽처끼리 동일한 DTS/PTS를 가지고 있었다고 하여도 비디오의 비트 레이트가 상이한 경우에는 TS에서의 바이트 배열까지 일치시킬 수 없기 때문에, 이 경우에 처리가 복잡해진다.
도 43은, Base view video 스트림과 Dependent view video 스트림으로 이루어지는 MVC 스트림을 대상으로 한 랜덤 액세스나 트릭 플레이를 행할 때에 필요하게 되는 픽처 서치의 개념을 도시하는 도면이다.
도 43에 도시한 바와 같이, 랜덤 액세스나 트릭 플레이를 행할 때, non-IDR 앵커 픽처나 IDR 픽처가 서치되어, 디코드 개시 위치가 결정된다.
여기에서, EP_map에 대하여 설명한다. Base view video의 디코드 개시 위치를 EP_map에 설정하는 경우에 대하여 설명하지만, Dependent view video의 디코드 개시 위치에 대해서도, 마찬가지로 하여 Dependent view video의 EP_map에 설정된다.
도 44는, 광 디스크(2) 상에 기록된 AV 스트림의 구조를 도시하는 도면이다.
Base view video 스트림을 포함하는 TS는, 6144바이트의 크기를 갖는 정수개의 얼라인드 유닛(Aligned Unit)으로 구성된다.
얼라인드 유닛은, 32개의 소스 패킷(Source Packet)으로 이루어진다. 소스 패킷은 192바이트를 갖는다. 1개의 소스 패킷은, 4바이트의 트랜스포트 패킷 엑스트라 헤더(TP_extra header)와, 188바이트의 트랜스포트 패킷(Transport Packet)으로 이루어진다.
Base view video의 데이터는, MPEG2 PES 패킷으로 패킷화되어 있다. PES 패킷의 데이터부에 PES 패킷 헤더가 부가되어 PES 패킷이 형성된다. PES 패킷 헤더에는, PES 패킷이 전송하는 엘리멘터리 스트림의 종류를 특정하는 스트림 ID가 포함된다.
PES 패킷은, 또한 트랜스포트 패킷으로 패킷화된다. 즉, PES 패킷이 트랜스포트 패킷의 페이로드의 크기로 분할되고, 페이로드에 트랜스포트 패킷 헤더가 부가되어 트랜스포트 패킷이 형성된다. 트랜스포트 패킷 헤더는, 페이로드에 저장되는 데이터의 식별 정보인 PID를 포함한다.
또한, 소스 패킷에는, Clip AV 스트림의 선두를 예를 들어 0으로 하고, 소스 패킷마다 1씩 증가하는 소스 패킷 번호가 부여된다. 또한, 얼라인드 유닛은, 소스 패킷의 제1바이트째부터 시작된다.
EP_map은, Clip의 액세스 포인트의 타임 스탬프가 제공되었을 때에, Clip AV 스트림 파일 중에서 데이터의 판독을 개시해야 할 데이터 어드레스를 검색하기 위하여 사용된다. EP_map은, 엘리멘터리 스트림 및 트랜스포트 스트림으로부터 추출된 엔트리 포인트의 리스트이다.
EP_map은, AV 스트림 중에서, 디코드를 개시해야 할 엔트리 포인트를 검색하기 위한 어드레스 정보를 갖는다. EP_map 중의 1개의 EP 데이터는, PTS와, PTS에 대응하는 Access Unit의, AV 스트림 중의 어드레스와의 쌍으로 구성된다. AVC/H.264에 있어서는, 1Access Unit에는 1픽처분의 데이터가 저장된다.
도 45는, Clip AV 스트림의 예를 도시하는 도면이다.
도 45의 Clip AV 스트림은, PID=x로 식별되는 소스 패킷으로 이루어지는 비디오 스트림(Base view video 스트림)이다. 비디오 스트림은, 소스 패킷마다, 소스 패킷 내의 트랜스포트 패킷의 헤더에 포함되는 PID에 의해 구별된다.
도 45에 있어서는, 비디오 스트림의 소스 패킷 중, IDR 픽처의 선두 바이트를 포함하는 소스 패킷에 착색되어 있다. 착색되어 있지 않은 사각은, 랜덤 액세스 포인트로 되지 않는 데이터가 포함되는 소스 패킷이나, 다른 스트림의 데이터가 포함되어 있는 소스 패킷을 나타낸다.
예를 들어, PID=x로 구별되는 비디오 스트림의 랜덤 액세스 가능한 IDR 픽처의 선두 바이트를 포함하는, 소스 패킷 번호 X1의 소스 패킷은, Clip AV 스트림의 시간축 상에서 PTS=pts(x1)의 위치에 배치된다.
마찬가지로, 다음에 랜덤 액세스 가능한 IDR 픽처의 선두 바이트를 포함하는 소스 패킷은 소스 패킷 번호 X2의 소스 패킷으로 되어, PTS=pts(x2)의 위치에 배치된다.
도 46은, 도 45의 Clip AV 스트림에 대응한 EP_map의 예를 개념적으로 도시하는 도면이다.
도 46에 도시한 바와 같이, EP_map은, stream_PID, PTS_EP_start 및 SPN_EP_start로 구성된다.
stream_PID는, 비디오 스트림을 전송하는 트랜스포트 패킷의 PID를 나타낸다.
PTS_EP_start는, 랜덤 액세스 가능한 IDR 픽처부터 시작되는 Access Unit의 PTS를 나타낸다.
SPN_EP_start는, PTS_EP_start의 값에 의해 참조되는 Access Unit의 제1 바이트째를 포함하는 소스 패킷의 어드레스를 나타낸다.
비디오 스트림의 PID가 stream_PID에 저장되고, PTS_EP_start와 SPN_EP_start의 대응 관계를 나타내는 테이블 정보인 EP_map_for_one_stream_PID()가 생성된다.
예를 들어, PID=x의 비디오 스트림의 EP_map_for_one_stream_PID[0]에는, PTS=pts(x1)과 소스 패킷 번호 X1, PTS=pts(x2)와 소스 패킷 번호 X2, …, PTS=pts(xk)와 소스 패킷 번호 Xk가 각각 대응하여 기술된다.
이러한 테이블이, 동일한 Clip AV 스트림으로 다중화된 각각의 비디오 스트림에 대해서도 생성된다. 생성된 테이블을 포함하는 EP_map이, 당해 Clip AV 스트림에 대응하는 Clip Information 파일에 저장된다.
도 47은, SPN_EP_start가 가리키는 소스 패킷의 데이터 구조의 예를 도시하는 도면이다.
상술한 바와 같이, 소스 패킷은, 188바이트의 트랜스포트 패킷에 4바이트의 헤더를 부가한 형태로 구성된다. 트랜스포트 패킷 부분은, 헤더부(TP header)와 페이로드부로 이루어진다. SPN_EP_start는, IDR 픽처부터 시작되는 Access Unit의 제1 바이트째를 포함하는 소스 패킷의 소스 패킷 번호를 나타낸다.
AVC/H.264에 있어서는, Access Unit 즉 픽처는, AU 구분자(Access Unit Delimiter)부터 개시된다. AU 구분자 뒤에, SRS와 PPS가 이어진다. 그 후에, IDR 픽처의 슬라이스의 데이터의, 선두 부분 또는 전체가 저장된다.
트랜스포트 패킷의 TP 헤더에 있는 payload_unit_start_indicator의 값이 1인 것은, 새로운 PES 패킷이 이 트랜스포트 패킷의 페이로드부터 시작되는 것을 나타낸다. 이 소스 패킷으로부터, Access Unit이 개시되게 된다.
이러한 EP_map이, Base view video 스트림과 Dependent view video 스트림에 대하여 각각 준비된다.
[운용 3]
Base view video 스트림과 Dependent view video 스트림을 구성하는 각 픽처에는 POC(Picture Order Count)가 부호화 시에 설정되어 있다. POC는, 픽처의 표시순을 나타내는 값이다.
AVC/H.264에 있어서는, POC는 「모든 참조 픽처를 "참조용으로 미사용"으로 표시하는 메모리 관리 제어 동작을 포함하는 이전 픽처에 대해 또는 복호화순으로 이전 IDR 픽처에 대해 출력순으로 픽처 위치에 따라 감소하지 않는 값을 갖는 변수」로서 규정되어 있다.
부호화 시, Base view video 스트림의 픽처에 설정하는 POC와, Dependent view video 스트림의 픽처에 설정하는 POC는 통일하여 운용된다.
예를 들어, Base view video 스트림의 표시순으로 1번째의 픽처에는 POC=1이 설정되고, 그 이후, 1씩 값을 늘려 POC가 각 픽처에 설정된다.
또한, Dependent view video 스트림의 표시순으로 1번째의 픽처에는, Base view video 스트림의 1번째의 픽처에 설정되는 것과 동일한 POC=1이 설정되고, 그 이후, 1씩 값을 늘려 POC가 각 픽처에 설정된다.
상술한 바와 같이 Base view video 스트림의 GOP 구조와 Dependent view video 스트림의 GOP 구조는 동일하기 때문에, Base view video 스트림과 Dependent view video 스트림의 각 픽처에는, 표시순으로 대응하는 픽처끼리, 동일한 POC가 설정된다.
이에 의해, 재생 장치(1)는, 동일한 POC가 설정되어 있는 view component를, 표시순으로 대응하는 view component로서 처리하는 것이 가능하게 된다.
예를 들어, 재생 장치(1)는, Base view video 스트림의 픽처 중 POC=1이 설정되어 있는 픽처와, Dependent view video 스트림의 픽처 중 POC=1이 설정되어 있는 픽처를, 대응하는 픽처로서 처리할 수 있다.
또한, Base view video 스트림과 Dependent view video 스트림을 구성하는 각 픽처에는 Picture Timing SEI(Supplemental Enhancement Information)가 설정되어 있다. SEI는 H.264/AVC로 규정되는, 디코드에 관한 보조적인 정보를 포함하는 부가 정보이다.
SEI 중 1개인 Picture Timing SEI에는, 부호화 시의 CPB(Coded Picture Buffer)로부터의 판독 시각, 디코드 시의 DPB(도 22의 DPB(151))로부터 판독 시각 등의 시각 정보가 포함된다. 또한, 표시 시각의 정보, 픽처 구조의 정보 등이 포함된다.
부호화 시, Base view video 스트림의 픽처에 설정하는 Picture Timing SEI와, Dependent view video 스트림의 픽처에 설정하는 Picture Timing SEI는 통일하여 운용된다.
예를 들어, Base view video 스트림의 부호화순으로 1번째의 픽처에 CPB로부터의 판독 시각으로서 T1이 설정된 경우, Dependent view video 스트림의 부호화순으로 1번째의 픽처에도, CPB로부터의 판독 시각으로서 T1이 설정된다.
즉, Base view video 스트림과 Dependent view video 스트림의 각 픽처에는, 부호화순 또는 복호순으로 대응하는 픽처끼리, 동일한 내용의 Picture Timing SEI가 설정된다.
이에 의해, 재생 장치(1)는, 동일한 Picture Timing SEI가 설정되어 있는view component를, 복호순으로 대응하는 view component로서 처리하는 것이 가능하게 된다.
POC, Picture Timing SEI는, Base view video와 Dependent view video의 엘리멘터리 스트림에 포함되는 것이며, 재생 장치(1)에 있어서는 비디오 디코더(110)에 의해 참조된다.
비디오 디코더(110)는, 엘리멘터리 스트림에 포함되는 정보에 기초하여, 대응하는 view component를 식별하는 것이 가능하게 된다. 또한, 비디오 디코더(110)는, Picture Timing SEI에 기초하여 정확한 복호순으로, 또한 POC에 기초하여 정확한 표시순으로 되도록 디코드 처리를 행하는 것이 가능하게 된다.
대응하는 view component를 식별하기 위하여 PlayList 등을 참조할 필요가 없기 때문에, System Layer나, 그 이상의 Layer에 문제가 일어난 경우의 대처가 가능하게 된다. 또한, 문제가 일어난 Layer에 의존하지 않는 디코더 실장도 가능하게 된다.
상술한 일련의 처리는, 하드웨어에 의해 실행할 수도 있고, 소프트웨어에 의해 실행할 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 전용의 하드웨어에 내장되어 있는 컴퓨터 또는 범용의 퍼스널 컴퓨터 등에, 프로그램 기록 매체로부터 인스톨된다.
도 48은, 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어의 구성예를 도시하는 블록도이다.
CPU(Central Processing Unit)(501), ROM(Read Only Memory)(502), RAM(Random Access Memory)(503)은, 버스(504)에 의해 서로 접속되어 있다.
버스(504)에는 또한 입출력 인터페이스(505)가 접속되어 있다. 입출력 인터페이스(505)에는 키보드, 마우스 등으로 이루어지는 입력부(506), 디스플레이, 스피커 등으로 이루어지는 출력부(507)가 접속된다. 또한, 버스(504)에는 하드 디스크나 불휘발성의 메모리 등으로 이루어지는 기억부(508), 네트워크 인터페이스 등으로 이루어지는 통신부(509), 리무버블 미디어(511)를 구동하는 드라이브(510)가 접속된다.
이상과 같이 구성되는 컴퓨터에서는, CPU(501)가, 예를 들어 기억부(508)에 기억되어 있는 프로그램을 입출력 인터페이스(505) 및 버스(504)를 통하여 RAM(503)에 로드하여 실행함으로써, 상술한 일련의 처리가 행해진다.
CPU(501)가 실행하는 프로그램은, 예를 들어 리무버블 미디어(511)에 기록하거나, 혹은 근거리 네트워크, 인터넷, 디지털 방송 등의, 유선 또는 무선의 전송 매체를 통하여 제공되어, 기억부(508)에 인스톨된다.
또한, 컴퓨터가 실행하는 프로그램은, 본 명세서에서 설명하는 순서를 따라 시계열로 처리가 행해지는 프로그램이어도 되고, 병렬로, 혹은 호출이 행해졌을 때 등의 필요한 타이밍에서 처리가 행해지는 프로그램이어도 된다.
본 발명의 실시 형태는, 상술한 실시 형태에 한정되는 것이 아니라, 본 발명의 요지를 일탈하지 않는 범위에 있어서 다양한 변경이 가능하다.
1: 재생 장치
2: 광 디스크
3: 표시 장치
11: MVC 인코더
21: H.264/AVC 인코더
22: H.264/AVC 디코더
23: Depth 산출부
24: Dependent view video 인코더
25: 멀티플렉서
51: 컨트롤러
52: 디스크 드라이브
53: 메모리
54: 로컬 스토리지
55: 인터넷 인터페이스
56: 디코더부
57: 조작 입력부

Claims (9)

  1. 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 출력하는 부호화 수단을 구비하는, 기록 장치.
  2. 제1항에 있어서, 상기 부호화 수단은, 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진 상기 데이터 헤더가 부가된 데이터로 이루어지는 상기 기본 화상 스트림으로부터 상기 데이터 헤더를 제거하고, 상기 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 상기 기본 화상 스트림을 출력하는, 기록 장치.
  3. 제1항에 있어서, 상기 부호화 수단은, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보로서, 1 이상의 값을 상기 데이터 헤더에 설정하고, 상기 확장 화상 스트림을 출력하는, 기록 장치.
  4. 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 출력하는 스텝을 포함하는, 기록 방법.
  5. 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 출력하는 스텝을 포함하는 처리를 컴퓨터에 실행시키는, 프로그램.
  6. 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림이 기록된, 기록 매체.
  7. 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 1 이상의 값의 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 스트림을 기록 매체로부터 판독하는 판독 수단과,
    상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 값이 작은 시점의 데이터부터 순서대로 처리를 행하는 수단이며, 상기 데이터 헤더가 부가되어 있지 않은 상기 기본 화상 스트림의 데이터를, 0의 값이 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 데이터로 하고, 상기 기본 화상 스트림의 데이터를, 상기 확장 화상 스트림의 데이터보다 먼저 복호하는 복호 수단을 구비하는, 재생 장치.
  8. 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 1 이상의 값의 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 기록 매체로부터 판독하고,
    상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 값이 작은 시점의 데이터부터 순서대로 처리를 행하는 경우에, 상기 데이터 헤더가 부가되어 있지 않은 상기 기본 화상 스트림의 데이터를, 0의 값이 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 데이터로 하고, 상기 기본 화상 스트림의 데이터를, 상기 확장 화상 스트림의 데이터보다 먼저 복호하는 스텝을 포함하는, 재생 방법.
  9. 복수 시점의 영상 데이터를 소정의 부호화 방식으로 부호화하여 얻어진, 시점의 식별 정보를 포함하는 데이터 헤더가 부가되어 있지 않은 데이터로 이루어지는 기본 화상 스트림과, 확장 시점의 데이터인 것을 나타내는 1 이상의 값의 상기 식별 정보를 포함하는 상기 데이터 헤더가 부가된 데이터로 이루어지는 확장 화상 스트림을 기록 매체로부터 판독하고,
    상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 값이 작은 시점의 데이터부터 순서대로 처리를 행하는 경우에, 상기 데이터 헤더가 부가되어 있지 않은 상기 기본 화상 스트림의 데이터를, 0의 값이 상기 식별 정보로서 상기 데이터 헤더에 설정되어 있는 데이터로 하고, 상기 기본 스트림의 데이터를, 상기 확장 화상 스트림의 데이터보다 먼저 복호하는 스텝을 포함하는 처리를 컴퓨터에 실행시키는, 프로그램.
KR20107026917A 2009-04-08 2010-03-25 기록 장치, 기록 방법, 재생 장치, 재생 방법, 기록 매체 및 프로그램 KR20120006431A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009094254A JP4962525B2 (ja) 2009-04-08 2009-04-08 再生装置、再生方法、およびプログラム
JPJP-P-2009-094254 2009-04-08

Publications (1)

Publication Number Publication Date
KR20120006431A true KR20120006431A (ko) 2012-01-18

Family

ID=42936181

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20107026917A KR20120006431A (ko) 2009-04-08 2010-03-25 기록 장치, 기록 방법, 재생 장치, 재생 방법, 기록 매체 및 프로그램

Country Status (15)

Country Link
US (1) US9088775B2 (ko)
EP (1) EP2285127B1 (ko)
JP (1) JP4962525B2 (ko)
KR (1) KR20120006431A (ko)
CN (2) CN102625122B (ko)
AU (1) AU2010235599B2 (ko)
BR (1) BRPI1002816A2 (ko)
CA (1) CA2724974C (ko)
ES (1) ES2526578T3 (ko)
HK (1) HK1157551A1 (ko)
MX (1) MX2010013210A (ko)
MY (1) MY156159A (ko)
RU (1) RU2525483C2 (ko)
TW (1) TWI444042B (ko)
WO (1) WO2010116895A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8885709B2 (en) 2008-09-18 2014-11-11 Panasonic Corporation Image decoding device, image coding device, image decoding method, image coding method, and program
JP2011199396A (ja) * 2010-03-17 2011-10-06 Ntt Docomo Inc 動画像予測符号化装置、動画像予測符号化方法、動画像予測符号化プログラム、動画像予測復号装置、動画像予測復号方法、及び動画像予測復号プログラム
KR101831775B1 (ko) 2010-12-07 2018-02-26 삼성전자주식회사 멀티미디어 컨텐츠를 송수신하는 송신 장치 및 수신 장치와, 그 재생 방법
US9491437B2 (en) 2010-12-07 2016-11-08 Samsung Electronics Co., Ltd. Transmitter for transmitting data for constituting content, receiver for receiving and processing data, and method therefor
JPWO2012169204A1 (ja) * 2011-06-08 2015-02-23 パナソニック株式会社 送信装置、受信装置、送信方法及び受信方法
US20140160238A1 (en) * 2011-07-29 2014-06-12 University-Industry Cooperation Group Of Kyung Hee University Transmission apparatus and method, and reception apparatus and method for providing 3d service using the content and additional image seperately transmitted with the reference image transmitted in real time
US10447990B2 (en) 2012-02-28 2019-10-15 Qualcomm Incorporated Network abstraction layer (NAL) unit header design for three-dimensional video coding
US9014255B2 (en) * 2012-04-03 2015-04-21 Xerox Corporation System and method for identifying unique portions of videos with validation and predictive scene changes
PL2843945T3 (pl) 2012-04-23 2020-07-27 Sun Patent Trust Sposób kodowania obrazów, sposób dekodowania obrazów, urządzenie do kodowania obrazów, urządzenie do dekodowania obrazów oraz urządzenie do kodowania/dekodowania obrazów

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US429072A (en) * 1890-05-27 Machine for cutting circular plates
US353144A (en) * 1886-11-23 Table-corner
US5619256A (en) * 1995-05-26 1997-04-08 Lucent Technologies Inc. Digital 3D/stereoscopic video compression technique utilizing disparity and motion compensated predictions
WO1998025413A1 (en) * 1996-12-04 1998-06-11 Matsushita Electric Industrial Co., Ltd. Optical disc for high resolution and three-dimensional image recording, optical disc reproducing device, and optical disc recording device
EP1011268B1 (en) 1997-08-29 2010-03-03 Panasonic Corporation Optical disk having hierarchically encoded digital video recorded thereon, reproducing and recording apparatuses therefor
JP4051841B2 (ja) * 1999-12-01 2008-02-27 ソニー株式会社 画像記録装置および方法
KR100397511B1 (ko) * 2001-11-21 2003-09-13 한국전자통신연구원 양안식/다시점 3차원 동영상 처리 시스템 및 그 방법
AU2003231508A1 (en) * 2002-04-25 2003-11-10 Sharp Kabushiki Kaisha Multimedia information generation method and multimedia information reproduction device
JP3707685B2 (ja) * 2002-05-08 2005-10-19 ソニー株式会社 光ディスク装置、光ディスクの記録方法、光ディスクの記録方法のプログラム及び光ディスクの記録方法のプログラムを記録した記録媒体
JP2003333505A (ja) * 2002-05-14 2003-11-21 Pioneer Electronic Corp 記録媒体、映像記録装置、映像再生装置及び映像記録再生装置
KR100751422B1 (ko) * 2002-12-27 2007-08-23 한국전자통신연구원 스테레오스코픽 비디오 부호화 및 복호화 방법, 부호화 및복호화 장치
EP1713276B1 (en) * 2004-02-06 2012-10-24 Sony Corporation Information processing device, information processing method, program, and data structure
JP4608953B2 (ja) 2004-06-07 2011-01-12 ソニー株式会社 データ記録装置、方法およびプログラム、データ再生装置、方法およびプログラム、ならびに、記録媒体
JP2006238373A (ja) * 2005-02-28 2006-09-07 Sony Corp 符号化装置および方法、復号装置および方法、画像処理システムおよび画像処理方法、記録媒体、並びにプログラム
KR100931871B1 (ko) * 2005-04-13 2009-12-15 노키아 코포레이션 비디오 데이터의 효과적인 fgs 부호화 및 복호화를 위한방법, 장치, 시스템
WO2007010779A1 (ja) * 2005-07-15 2007-01-25 Matsushita Electric Industrial Co., Ltd. パケット送信装置
JP4638784B2 (ja) * 2005-07-19 2011-02-23 オリンパスイメージング株式会社 画像出力装置及びプログラム
EP1806930A1 (en) * 2006-01-10 2007-07-11 Thomson Licensing Method and apparatus for constructing reference picture lists for scalable video
WO2007081176A1 (en) * 2006-01-12 2007-07-19 Lg Electronics Inc. Processing multiview video
US8767836B2 (en) * 2006-03-27 2014-07-01 Nokia Corporation Picture delimiter in scalable video coding
MX2008012382A (es) * 2006-03-29 2008-11-18 Thomson Licensing Metodos y aparatos para usarse en un sistema de codificacion de video de multiples vistas.
EP2005752A4 (en) * 2006-03-30 2010-06-09 Lg Electronics Inc METHOD AND APPARATUS FOR DECODING / ENCODING A VIDEO SIGNAL
KR101137347B1 (ko) * 2006-05-11 2012-04-19 엘지전자 주식회사 이동통신 단말기 및 그 단말기를 이용한 이미지 표출 방법
CN101578884B (zh) * 2007-01-08 2015-03-04 诺基亚公司 提供和使用译码的媒体流的互操作点的预定信令的系统和方法
KR101396948B1 (ko) * 2007-03-05 2014-05-20 경희대학교 산학협력단 하이브리드 다시점 및 계층화 비디오 코딩 방법과 장치
JP2008252740A (ja) 2007-03-30 2008-10-16 Sony Corp リモートコマンダおよびコマンド発生方法、再生装置および再生方法、プログラム、並びに、記録媒体
SI3264780T1 (sl) * 2007-04-18 2020-08-31 Dolby International Ab Kodirni sistemi, pri katerih se uporablja dodatni niz sekvenčnih parametrov za skalabilno kodiranje videa ali večpogledno kodiranje
WO2008140190A1 (en) * 2007-05-14 2008-11-20 Samsung Electronics Co, . Ltd. Method and apparatus for encoding and decoding multi-view image
JP4720785B2 (ja) * 2007-05-21 2011-07-13 富士フイルム株式会社 撮像装置、画像再生装置、撮像方法及びプログラム
KR101388265B1 (ko) * 2007-06-11 2014-04-22 삼성전자주식회사 2d 영상 미디어 표준을 기반으로 3d 입체영상 파일을생성 및 재생하기 위한 시스템 및 방법
US20080317124A1 (en) * 2007-06-25 2008-12-25 Sukhee Cho Multi-view video coding system, decoding system, bitstream extraction system for decoding base view and supporting view random access
CN101222630B (zh) * 2007-11-30 2010-08-18 武汉大学 一种实现实时双帧参考的时域可分级视频编码方法
KR101506217B1 (ko) * 2008-01-31 2015-03-26 삼성전자주식회사 스테레오스코픽 영상의 부분 데이터 구간 재생을 위한스테레오스코픽 영상 데이터스트림 생성 방법과 장치, 및스테레오스코픽 영상의 부분 데이터 구간 재생 방법과 장치
US8565576B2 (en) * 2008-05-01 2013-10-22 Panasonic Corporation Optical disc for reproducing stereoscopic video image
RU2502214C2 (ru) 2008-09-30 2013-12-20 Панасоник Корпорэйшн Носитель записи, устройство воспроизведения, системная бис, способ воспроизведения, очки и устройство отображения для трехмерных изображений
US8947504B2 (en) * 2009-01-28 2015-02-03 Lg Electronics Inc. Broadcast receiver and video data processing method thereof
JP2010244630A (ja) * 2009-04-07 2010-10-28 Sony Corp 情報処理装置、情報処理方法、プログラム、及び、データ構造
CA2718447C (en) * 2009-04-28 2014-10-21 Panasonic Corporation Image decoding method, image coding method, image decoding apparatus, and image coding apparatus
US20120212579A1 (en) * 2009-10-20 2012-08-23 Telefonaktiebolaget Lm Ericsson (Publ) Method and Arrangement for Multi-View Video Compression
PL2596637T3 (pl) * 2010-07-21 2021-12-13 Dolby Laboratories Licensing Corporation Systemy i sposoby dostarczania wielowarstwowego wideo zgodnego z ramką
US20120219069A1 (en) * 2011-02-28 2012-08-30 Chong Soon Lim Methods and apparatuses for encoding and decoding images of a plurality of views using multiview video coding standard and mpeg-2 video standard

Also Published As

Publication number Publication date
JP4962525B2 (ja) 2012-06-27
MX2010013210A (es) 2010-12-21
EP2285127A1 (en) 2011-02-16
CA2724974C (en) 2014-08-19
MY156159A (en) 2016-01-15
EP2285127B1 (en) 2014-11-19
TWI444042B (zh) 2014-07-01
CN102625122B (zh) 2016-05-04
JP2010245968A (ja) 2010-10-28
TW201041390A (en) 2010-11-16
ES2526578T3 (es) 2015-01-13
RU2010149262A (ru) 2012-06-10
CN102047673B (zh) 2016-04-13
HK1157551A1 (zh) 2012-06-29
BRPI1002816A2 (pt) 2016-02-23
WO2010116895A1 (ja) 2010-10-14
US9088775B2 (en) 2015-07-21
RU2525483C2 (ru) 2014-08-20
AU2010235599A1 (en) 2010-10-14
AU2010235599B2 (en) 2015-03-26
CA2724974A1 (en) 2010-10-14
CN102625122A (zh) 2012-08-01
US20110081131A1 (en) 2011-04-07
EP2285127A4 (en) 2013-03-13
CN102047673A (zh) 2011-05-04

Similar Documents

Publication Publication Date Title
JP4993224B2 (ja) 再生装置および再生方法
JP4957823B2 (ja) 再生装置および再生方法
WO2010116997A1 (ja) 情報処理装置、情報処理方法、再生装置、再生方法、および記録媒体
JP5267886B2 (ja) 再生装置、記録媒体、および情報処理方法
JP4962525B2 (ja) 再生装置、再生方法、およびプログラム
US20100260484A1 (en) Playback apparatus, playback method, and program
CA2725009C (en) Information processing apparatus, information processing method, program, and recording medium
JP4993233B2 (ja) 記録方法
JP4984193B2 (ja) 再生装置、再生方法、および記録方法
JP4993234B2 (ja) 再生装置、再生方法、および記録方法
JP4984192B2 (ja) 記録方法
JP4985883B2 (ja) 再生装置、再生方法、および記録方法
JP4993044B2 (ja) 再生装置、再生方法、および記録方法

Legal Events

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