KR100496703B1 - 비디오데이터의택일적인재생이가능한멀티미디어스트림생성방법과멀티미디어광디스크오소링시스템 - Google Patents

비디오데이터의택일적인재생이가능한멀티미디어스트림생성방법과멀티미디어광디스크오소링시스템 Download PDF

Info

Publication number
KR100496703B1
KR100496703B1 KR10-1998-0703811A KR19980703811A KR100496703B1 KR 100496703 B1 KR100496703 B1 KR 100496703B1 KR 19980703811 A KR19980703811 A KR 19980703811A KR 100496703 B1 KR100496703 B1 KR 100496703B1
Authority
KR
South Korea
Prior art keywords
data
information
vob
video
stream
Prior art date
Application number
KR10-1998-0703811A
Other languages
English (en)
Other versions
KR19990071538A (ko
Inventor
야스히코 야마네
다쿠미 하세베
가즈히코 나카무라
히데키 후쿠다
도모유키 오카다
요시이치로 가시와기
요시히로 모리
겐지 다가와
Original Assignee
마쯔시다덴기산교 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마쯔시다덴기산교 가부시키가이샤 filed Critical 마쯔시다덴기산교 가부시키가이샤
Publication of KR19990071538A publication Critical patent/KR19990071538A/ko
Application granted granted Critical
Publication of KR100496703B1 publication Critical patent/KR100496703B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/04Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the shape
    • G06K19/041Constructional details
    • G06K19/042Constructional details the record carrier having a form factor of a credit card and including a small sized disc, e.g. a CD or DVD
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/30Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
    • G11B27/3027Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is digitally coded
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B20/1254Formatting, e.g. arrangement of data block or words on the record carriers on discs for mixed data, i.e. continuous and discontinuous data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/775Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/84Television signal recording using optical recording
    • H04N5/85Television signal recording using optical recording on discs or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/806Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components with processing of the sound signal
    • H04N9/8063Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components with processing of the sound signal using time division multiplex of the PCM audio and PCM video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • H04N9/8227Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal the additional signal being at least another television signal

Abstract

본 발명은, 일련의 관련된 내용을 갖는 각각의 타이틀을 구성하는 동화상 데이터, 오디오 데이터, 부영상 데이터의 정보를 반송하는 비트 스트림에 여러 가지 처리를 실시하고, 사용자의 요망에 부응한 내용을 갖는 타이틀을 구성하는 비트 스트림을 생성하여, 그 생성된 비트 스트림을 소정의 기록 매체에 효율적으로 기록하고, 그와 같이 생성된 비트 스트림으로부터 또한 사용자의 요망에 부응한 타이틀 내용을 재생하는 오소링 시스템을 제공한다. 소스 데이터인 멀티미디어 비트 스트림의 내용에 대하여, 사용자가 키보드 등의 수단에 입력한 편집내용을, 오소링 인코드 파라미터로 변환시키는 동시에, 오소링 시스템에 근거하는 데이터 구조 등에 의해서 규정되는 조건을 만족하고 있는지를 판정하고, 만족하고 있지 않는 경우에는, 사용자에게 피드백하여 편집정보의 재입력을 촉구한다.

Description

비디오 데이터의 택일적인 재생이 가능한 멀티미디어 스트림 생성 방법과 멀티미디어 광디스크 오소링 시스템
본 발명은, 일련의 관련되게 만들어진 내용을 갖는 각각의 타이틀을 구성하는 동화상(動畵像) 데이터, 오디오 데이터, 부영상(副映像) 데이터 정보를 반송하는 비트 스트림(bit stream)에 여러 가지 처리를 실시하고, 사용자의 요망에 부응한 내용을 갖는 타이틀을 구성하는 비트 스트림을 생성하여, 그 생성된 비트 스트림을 소정의 기록 매체에 효율적으로 기록하고, 그와 같이 생성된 비트 스트림으로부터 또한 사용자 요망에 부응한 타이틀 내용을 재생하는 오소링 시스템(authoring system)에 관한 것이다. 더욱, 상세히 설명하면, 서로 관련지어진 음성 정보, 동화상 정보로서 구성된 멀티미디어 스트림을 생성하는 생성 방법과, 멀티미디어 스트림을 디지털 데이터로서 저장하는 멀티미디어 광디스크의 오소링 시스템에 관한 것이다.
최근, 아날로그 영상이나 비디오 CD 등을 이용한 시스템에서, 동화상, 음성, 및 부영상 등의 멀티미디어 데이터를 디지털 처리하여, 일련의 관련되어진 내용을 갖는 타이틀을 구성하는 오소링 시스템이 실용화되어 있다. 이러한 음성 정보 및 동화상 정보 등으로서 구성된 멀티미디어 스트림으로서는 MPEG(Moving Picture Experts Group) 형식의 데이터가 있다. MPEG 형식의 데이터의 기록 매체로서는 비디오 CD가 있으며, 그 오소링 시스템은 워크스테이션을 베이스로 하는 것이 있다. 비디오 CD를 이용한 시스템에서는, 약 600M 바이트의 기억 용량을 가지고 원래 디지털 오디오의 기록용이던 CD 매체 상에, MPEG 형식의 고압축률의 동화상 압축 수법으로서, 동화상 데이터의 기록을 실현하고 있다.
이러한 오소링 시스템에서는, 우선 동화상 정보를 기본 인코딩하고, 음성 정보를 기본 인코딩하여, 이들의 기본 인코딩된 데이터를 또한 시스템 인코딩함으로써 MPEG 스트림을 생성한다. 이어서, 사용자의 요망, 요컨대, 시나리오에 상응한 내용을 구현하기 위하여 MPEG 스트림의 재생 순로(順路)의 재생 순서인 재생 경로를 결정한다. 이 시나리오 정보와 MPEG 스트림이 중첩된 데이터를, CD 매체의 디스크 이미지로 변환하여, CD 매체에 기록하고 마스터 디스크를 작성한다. 프레스 등의 적절한 방법을 이용하여서, 마스터 디스크로부터 배포용의 디스크를 복제 생산한다.
최근, 비디오 CD에 비해서 대용량인 DVD라고 불리는 광디스크 기록 매체가 등장하였다. DVD에서는 장시간의 동화상의 저장이 가능하고, 이것을 살린 종래에 없는 매력적인 기능으로서, 영상 데이터의 택일적 재생 기능이 실현되어 있다. 택일적 재생이라는 것은, 복수의 영상 데이터를 소정의 구간으로 분할하여 광디스크에 다중으로 배열한 구간을 형성하고, 디스크 재생 장치는 이 다중으로 배열된 구간을 스킵(skip) 재생하면서, 다중으로 입력된 영상 데이터 내의 지정된 영상 데이터만을 재생하는 것에 의해 실행된다. 이 다중 배열 구간을 택일적 영상 재생 구간이라고 한다.
택일적 재생 기능의 응용 예로서는, 시청(視聽) 제한 정보에 의해 재생 영상을 선택적으로 재생하는 퍼렌틀 로크(parental lock) 재생이 있다. 구체적으로는 영화 등에서의 폭력 장면의 표시비(非) 표시의 선택적 재생을 가능하게 하는 것이다. 택일적 재생 기능의 별도의 응용 예로서는, 상이한 앵글(angle)의 영상을 선택적으로 재생하는 멀티앵글 재생이 있다. 구체적인 예로서는, 야구 중계에서, 타자 시선(視線), 투수 시선, 혹은 외야석 시선으로부터 얻어진 화상과 같이, 재생 화상의 촬영된 영상 앵글을 임의로 바꾸는 선택적 재생을 가능하게 하는 것이다.
택일적 영상 재생 구간은 스킵 재생되기 때문에, 이것에 속하는 비디오 데이터는, 인코드(encode) 조건이나, 그 조합에 관한 다방면에 걸치는 제한 사항을 만족하지 않으면 안 된다. 그러나, 종래의 비디오 CD 등의 오소링 시스템의 공정에서는, 모든 MPEG 데이터는 원칙적으로, 동일 조건으로 생성되기 때문에, 이 공정을 그대로 응용하였다면, 상기 제한 사항을 만족하지 않는 영상 데이터에 의해, 결함을 갖는 택일적 영상 재생 구간이 작성되고 만다. 이러한 결함의 택일적 영상 재생 구간을 갖는 디스크는, 재생 시(時)에, 디스크 재생 장치에 대하여 오동작 등을 발생시킨다.
요컨대, 마스터 디스크의 완성 후에 재생할 때까지는, 택일적인 영상 재생 구간의 결함을 검출할 수 없다. 이 때문에, 타이틀 제작자는 재차 마스터 디스크를 인코드의 공정에서 오소링하여 고칠 필요가 있고, 부담이 지극히 크다. 이 부담의 크기는 MPEG2의 인코드의 경우, 특히 심각하다. 일반적으로, MPEG1에 비교해서, 상당히 고품질의 영상 및 음성 스트림을 제공할 수 있는 MPEG2 인코드에는, 그 재생 시간의 적어도 2배의 시간을 필요로 한다. 왜냐하면, MPEG2에서의 영상 화질(畵質)은, 인코딩 시에 지정하는 비트 전송속도 등의 파라미터나, 이용하는 필터에 의해 화질이 좌우된다. 그 때문에, 인코딩한 화질을 체크하여 MPEG2의 제공할 수 있는 화질이 되도록, 재차 파라미터를 조정하여 최종적인 인코딩을 실행하는 2 패스(path) 인코딩을 하기 때문이다. 이와 같이, 택일적인 영상 재생 구간을 갖는 멀티미디어 스트림을 생성하기 위해서는 대단히 많은 노력을 필요로 한다고 하는 문제점이 있다.
또한, MPEG2에서는, MPEG1과 다소 상이한 압축 방식, 데이터 형식이 채용되어 있다. MPEG1과 MPEG2의 내용 및 그 상위(相違)에서는, ISO 11172, 및 ISO 13818의 MPEG 규격서에 상술되어 있기 때문에, 설명을 생략한다. MPEG2에서도, 비디오 인코드 스트림의 구조에 관하여서는 규정되어 있지만, 시스템 스트림의 계층 구조 및 하위의 계층 레벨의 처리 방법이 명확히 되어 있지 않다.
본원은, 상기 문제를 감안하여, 택일적인 영상 재생 구간을 갖는 멀티미디어 스트림을 효율이 좋게 생성하기 위한 생성 방법과 그 오소링 시스템을 제공하는 것을 목적으로 한다.
도 1은 멀티미디어 비트 스트림의 데이터 구조를 나타낸 모식도(模式圖).
도 2는 도 38에 나타낸 편집 정보 작성부를 끼운 오소링 인코더의 구조를 나타낸 블록도.
도 3은 본 발명에 관한 DVD 오소링 디코더의 구조를 나타낸 블록도.
도 4는 멀티 레이티드 타이틀 스트림의 일례(一例)를 나타낸 모식도.
도 5는 본 발명에 따른 비트 스트림의 일부이고, VTS의 데이터 구조를 나타낸 모식도.
도 6은 시스템 스트림의 상세한 데이터 구조를 나타낸 모식도.
도 7은 시스템 스트림의 팩(pack) 데이터 구조를 나타낸 모식도.
도 8은 본 발명에 따른 내비게이션 팩(NV)의 데이터 구조를 나타낸 모식도.
도 9는 본 발명에 따른 DVD 시스템에서의 다중장면 제어의 시나리오의 예를 나타낸 모식도.
도 10은 멀티앵글 제어에서의 시스템 스트림의 접속을 나타낸 모식도.
도 11은 다중장면 제어에 대응하는 VOB의 예를 나타낸 모식도.
도 12는 본 발명에 따른, DVD 오소링 인코더의 구조를 나타낸 블록도.
도 13은 본 발명에 따른 VOB 세트 데이터 열(列)의 구조를 나타낸 모식도.
도 14는 본 발명에 따른 VOB 데이터 열의 구조를 나타낸 모식도.
도 15는 본 발명에 따른 인코드 파라미터의 구조를 나타낸 모식도.
도 16은 본 발명에 따른 DVD 다중장면 제어에서의 프로그램 체인 구성 예를 나타낸 모식도.
도 17은 본 발명에 따른 DVD 다중장면 제어에서의 VOB의 구성 예를 나타낸 모식도.
도 18은 본 발명에 따른 내비게이션 팩(NV)의 검색 정보의 데이터 구조 예를 나타낸 모식도.
도 19는 멀티앵글 제어의 개념을 나타낸 모식도.
도 20은 본 발명에 따른 인코드 제어 방법의 전반부를 나타낸 흐름도.
도 21은 도 20에 나타낸 본 발명에 따른 인코드 제어 방법의 후반부를 나타낸 흐름도.
도 22는 멀티앵글 제어 시(時)의 비(非) 심리스(seamless) 절환 스트림의 인코드 파라미터 생성 동작을 나타낸 흐름도.
도 23은 도 22에 나타낸 VOB 데이터 공통 설정 루틴(routine)의 상세한 동작을 나타낸 흐름도.
도 24는 멀티앵글 제어 시의 심리스 절환 스트림의 인코드 파라미터 생성 동작을 나타낸 흐름도.
도 25는 퍼렌틀 로크 제어 시의 인코드 파라미터 생성 동작을 나타낸 흐름도.
도 26은 단일 장면의 인코드 파라미터 생성 동작을 나타낸 흐름도.
도 27은 도 12에 나타낸 본 발명에 따른 DVD 인코더의 포매터(formatter)의 동작을 나타낸 흐름도.
도 28은 도 12에 나타낸 본 발명에 따른 포매터의 비(非) 심리스 절환 멀티앵글 제어 시의 동작을 나타낸 흐름도.
도 29는 도 12에 나타낸 본 발명에 따른 포매터의 심리스 절환 멀티앵글 제어 시의 동작을 나타낸 흐름도.
도 30은 도 12에 나타낸 본 발명에 따른 포매터의 퍼렌틀 로크 제어 시의 동작을 나타낸 흐름도.
도 31은 도 12에 나타낸 본 발명에 따른 포매터의 단일 장면의 포매터 동작을 나타낸 흐름도.
도 32는 본 발명에 따른 디코드(decode) 시스템 테이블의 구조를 나타낸 모식도.
도 33은 본 발명에 따른 디코드 테이블의 구조를 나타낸 모식도.
도 34는 시스템 스트림 데이터의 구성 예를 나타낸 모식도.
도 35는 연속 블록 내의 데이터 구조를 나타낸 모식도.
도 36은 인터리브(interleave) 블록 내의 데이터 구조를 나타낸 모식도.
도 37은 도 12에 나타낸 본 발명에 따른 편집 정보 작성부의 제1실시형태에 따른 구조를 나타낸 블록도.
도 38은 도 12에 나타낸 본 발명에 따른 편집 정보 작성부의 제2실시형태에 따른 구조를 나타낸 블록도.
도 39는 도 37 및 도 39에 나타낸 편집 정보 작성부의 동작을 나타낸 흐름도.
도 40은 도 3에 나타낸 본 발명에 따른 시나리오 선택부의 구조를 나타낸 블록도.
도 41은 본 발명에 따른 멀티미디어 광디스크 오소링 시스템에 의해서 생성된 멀티미디어 비트 스트림이 기록된 광디스크인 DVD 재생 장치의 일례의 설명도.
도 42는 본 발명에 근거하는 광디스크의 비디오 데이터와 그 재생 순서를 나타낸 설명도.
도 43은 비디오 테이블 VTBL의 구성을 나타낸 설명도.
도 44는 오디오 테이블 ATBL의 구성을 나타낸 설명도.
도 45는 도 12에 나타낸 본 발명에 따른 편집 정보 작성부의 제3실시형태에 따른 구조를 나타낸 블록도.
도 46은 택일적인 재생 영상 구간이 멀티앵글 구간 혹은 퍼렌틀 로크 구간인가의 검증 동작을 나타낸 흐름도.
일련의 연관된 내용을 갖는 각각의 타이틀을 구성하는 동화상 데이터, 오디오 데이터, 부영상 데이터의 정보를 반송하는 소스 스트림(source stream)에 여러가지 처리를 실시하여, 사용자의 요망에 부응한 내용을 갖는 타이틀을 구성하는 비트 스트림을 생성하는 오소링 시스템에서, 해당 소스 스트림의 내용을 편집단위로 제시하는 수단과, 해당 제시된 편집단위(VOB)에 대하여 편집지시 데이터를 생성하는 수단을 갖는 것을 특징으로 하는 오소링 시스템이다.
<1.1> 오소링 시스템의 데이터 구조
<1.2> 오소링 인코더 EC
<1.3> 시나리오 데이터 St7의 생성
<1.4> 오소링 디코더 DCD
<1.5> 시나리오 선택 데이터 St51의 생성
<2.1> 퍼렌틀 로크 제어 및 멀티앵글 제어
<2.2> 퍼렌틀 로크 제어용 택일적 재생 구간의 분할
<2.3> 퍼렌틀 로크 제어용 택일적 재생 구간의 제한 값의 일례
<2.4> 앵글용 택일적 재생 구간의 분할
<2.5> 다중장면
<3.1> DVD 시스템의 데이터 구조
<3.2> DVD 인코더
<3.3> DVD 디코더
<3.3.1> 다중장면
<3.3.2> 심리스
<3.3.3> 심리스의 상세
<3.4.1> 인터리브
<3.4.2> 인터리브의 정의
<3.4.3> 인터리브 블록, 유닛 구조
<3.5.1> 다중장면
<3.5.2> 퍼렌틀
<3.5.3> 멀티앵글
<3.6.1> 흐름도: 인코더
<3.6.2> 포매터 흐름
<3.7> 디코더의 흐름도
<3.7.1> 디스크로부터 스트림 버퍼 전송 흐름
<3.8> DVD 플레이어
<1.1> 오소링 시스템의 데이터 구조
우선, 도 1을 참조하여, 본 발명에서의 기록 장치, 기록 매체, 재생 장치 및, 그것들의 기능을 포함하는 오소링 시스템에서 처리의 대상이 되는 멀티미디어 데이터의 비트 스트림의 논리 구조를 설명한다. 사용자가 내용을 인식하고, 이해하여, 혹은 즐길 수 있는 화상 및 음성 정보를 1타이틀로 한다. 이 타이틀이라는 것은, 영화로 말하면, 최대로는 1편의 영화의 완전한 내용을, 그리고 최소로서는, 각각의 장면의 내용을 나타내는 정보량에 상당한다.
소정수의 타이틀 분의 정보를 포함하는 비트 스트림 데이터로부터, 비디오 타이틀 세트(video title set) VTS가 구성된다. 이후, 간단히 하기 위해 , 비디오 타이틀 세트를 VTS라고 한다. VTS는, 상술한 각각의 타이틀의 내용 자체를 나타내는 영상, 오디오 등의 재생 데이터와, 그것들을 제어하는 제어 데이터를 포함하고 있다.
소정수의 VTS에서, 오소링 시스템에서의 비디오 데이터 단위인 비디오 존(video zone) VZ가 형성된다. 이후, 간편화를 위해 비디오 존을 VZ라고 한다. 1개의 VZ에, K+1개의 VTS#0 ~ VTS#K(K는, 0을 포함하는 정(正)의 정수(整數))가 직선적으로 연속하여 배열된다. 그리고 그 안에 1개, 바람직하게는 선두(先頭)의 VTS#0이, 각각의 VTS에 포함되는 타이틀의 내용 정보를 나타내는 비디오 매니저로서 이용된다. 이렇게 구성된, 소정수의 VZ으로부터, 오소링 시스템에서의 멀티미디어 데이터의 비트 스트림의 최대 관리 단위인 멀티미디어 비트 스트림(MBS)이 형성된다.
<1.2> 오소링 인코더 EC
도 2에, 사용자의 요망에 부응한 임의의 시나리오에 따라서, 오리지널의 멀티미디어 비트 스트림을 인코딩하여, 새로운 멀티미디어 비트 스트림 MBS를 생성하는 본 발명에 따른 오소링 인코더(EC)의 제1실시형태를 나타낸다. 또한, 오리지널의 멀티미디어 비트 스트림은, 영상 정보를 나르는 비디오 스트림(St1), 캡션(caption) 등의 보조 영상 정보를 나르는 부영상 스트림(St3), 및 음성 정보를 나르는 오디오 스트림(St5)으로서 구성되어 있다. 비디오 스트림 및 오디오 스트림은, 소정의 시간 사이에 대상으로부터 얻어지는 화상 및 음성의 정보를 포함하는 스트림이다. 한편, 부영상 스트림은 1화면 분, 요컨대 순간의 영상 정보를 포함하는 스트림이다. 필요하면, 1화면 분의 부영상을 비디오 메모리 등에 수집하여, 그 수집된 부영상 화면을 계속적으로 표시할 수 있다.
이것들의 멀티미디어 소스 데이터(St1, St3, St5)는, 실황중계의 경우에는, 비디오 카메라 등의 수단으로부터 영상 및 음성 신호가 실시간으로 공급된다. 또한, 비디오 테이프 등의 기록 매체로부터 재생된 실시간이 아닌 영상 및 음성 신호가 되기도 한다. 한편, 동(同) 도면에서는, 간편화를 위해, 3종류의 멀티미디어 소스 스트림으로서, 3종류 이상으로 각각의 상이한 내용을 나타내는 소스 데이터가 입력되더라도 좋은 것은 말할 필요도 없다. 이러한 복수의 타이틀의 음성, 영상, 보조 영상 정보를 갖는 멀티미디어 소스 데이터를, 멀티타이틀 스트림이라고 한다.
오소링 인코더(EC)는, 편집 정보 작성부(100), 인코드 시스템 제어부(200), 비디오 인코더(300), 비디오 스트림 버퍼(400), 부영상 인코더(500), 부영상 스트림 버퍼(600), 오디오 인코더(700), 오디오 스트림 버퍼(800), 시스템 인코더(900), 비디오 존 포매터(1300), 기록부(1200), 및 기록 매체(M)로 구성되어 있다. 동 도면에서, 본 발명의 인코더에 의해서 인코딩된 비트 스트림은, 일례로서 광디스크 매체에 기록된다.
오소링 인코더(EC)는, 오리지널의 멀티미디어 타이틀의 영상, 부영상, 및 음성에 관한 사용자의 요망에 부응해서 멀티미디어 비트 스트림(MBS)의 해당 부분의 편집을 지시하는 시나리오 데이터로서 출력할 수 있는 편집 정보 생성부(100)를 구비하고 있다. 편집 정보 작성부(100)는, 바람직하게는, 디스플레이부, 스피커부, 키보드, CPU, 및 소스 스트림 버퍼부 등으로 구성된다. 편집 정보 작성부(100)는, 상술한 외부 멀티미디어 스트림 원(源)에 접속되어 있으며, 멀티미디어 소스 데이터(St1, St3, St5)의 공급을 받는다.
사용자는 멀티미디어 소스 데이터를 디스플레이부 및 스피커를 이용하여 영상 및 음성을 재생하고, 타이틀의 내용을 인식할 수 있다. 더욱이, 사용자는 재생된 내용을 확인하면서, 원하는 시나리오에 따른 내용의 편집지시를 키보드부를 이용하여 입력한다. 편집지시 내용이라는 것은, 복수의 타이틀 내용을 포함하는 각각의 소스 데이터의 전부 혹은, 각각에 대하여 소정 시간마다 각각의 소스 데이터의 내용을 1개 이상 선택하여, 그것들의 선택된 내용을 소정의 방법으로 접속 재생하는 정보를 말한다.
CPU는, 키보드 입력에 따라서, 멀티미디어 소스 데이터의 각각의 스트림(St1, St3, St5)의 편집 대상 부분의 위치, 길이, 및 각각의 편집 부분간의 시간적 상호 관계 등의 정보를 코드화한 시나리오 데이터(St7)를 생성한다. 한편, 후에, 도 37, 도 38, 도 39, 및 도 40을 참조하여, 편집 정보 작성부(100)의 구조 및 동작을 포함해서, 시나리오 데이터(St7)의 작성에 관해서 자세히 설명한다.
소스 스트림 버퍼는 소정의 용량을 가지며, 멀티미디어 소스 데이터의 각각의 스트림(St1, St3, St5)을 소정의 시간(Td) 지연시킨 뒤에 출력한다. 이것은, 사용자가 시나리오 데이터(St7)를 작성함과 동시에 인코딩을 하는 경우, 요컨대 순차(順次) 인코드 처리의 경우에는, 후술한 바와 같이, 시나리오 데이터(St7)에 근거하여, 멀티미디어 소스 데이터의 편집 처리 내용을 결정하는 데 약간의 시간(Td)을 필요로 하기 때문에, 실제로 편집 인코딩을 하는 경우에는, 이 시간(Td)만큼 멀티미디어 소스 데이터를 지연시켜, 편집 인코드와 동기(同期)시킬 필요가 있기 때문이다. 이러한, 순차 편집 처리의 경우, 지연시간(Td)은, 시스템 내의 각각의 요소간에서의 동기 조정에 필요한 정도이기 때문에, 통상적으로 소스 스트림 버퍼는 반도체 메모리 등의 고속 기록 매체로서 구성된다.
그렇지만, 타이틀의 전체를 통해서 시나리오 데이터(St7)를 완성시킨 후에, 멀티미디어 소스 데이터를 단숨에 인코딩하는, 소위 일괄 편집 시에서는, 지연시간(Td)은, 1타이틀 분 혹은 그 이상의 시간이 필요하다. 이러한 경우에는, 소스 스트림 버퍼는, 비디오 테이프, 자기 디스크, 광디스크 등의 저속 대용량 기록 매체를 이용하여 구성할 수 있다. 요컨대, 소스 스트림 버퍼는 지연시간(Td) 및 제조 비용에 상응해서, 적당한 기억 매체를 이용하여 구성하면 좋다.
인코드 시스템 제어부(200)는, 편집 정보 작성부(100)에 접속되어 있으며, 시나리오 데이터(St7)를 편집 정보 작성부(100)로부터 수신한다. 인코드 시스템 제어부(200)는, 시나리오 데이터(St7)에 포함되는 편집 대상부의 시간적 위치 및 길이에 관한 정보에 근거하여, 멀티미디어 소스 데이터의 편집 대상 분을 인코딩하기 위한 각각의 인코드 파라미터 데이터 및 인코드 개시, 종료의 타이밍 신호(St9, St11, St13)를 각각 생성한다. 또한, 인코드 시스템 제어부(200)는, 시나리오 데이터(St7)의 입력을 수신하여, 오소링 인코더(EC)에 유효한 비트 스트림의 편집 최소 단위 레벨에서의 편집 제어 지시 데이터(St7 ‘)로 인코딩 하여, 편집 정보 작성부(100)에 피드백 시킨다. 또한, 편집 제어 지시 데이터(St7’ )의 생성에 대해서는, 도 37을 참조하여 나중에 설명한다.
상술한 바와 같이, 각각의 멀티미디어 소스 데이터(St1, St3, St5)는, 소스 스트림 버퍼에 의해서, 시간(Td) 지연하여 출력할 수 있기 때문에, 각각의 타이밍(St9, St11, St13)과 동기하고 있다. 요컨대, 신호(St9)는 비디오 스트림(St1)으로부터 인코딩 대상 부분을 추출하여, 비디오 인코드 단위를 생성하기 위해서, 비디오 스트림(St1)을 인코딩하는 타이밍을 지시하는 비디오 인코드 신호이다. 마찬가지로, 신호(St11)는, 부영상 인코드 단위를 생성하기 위해서, 부영상 스트림(St3)을 인코딩하는 타이밍을 지시하는 부영상 스트림 인코드 신호이다. 또한, 신호(St13)는, 오디오 인코드 단위를 생성하기 위해서, 오디오 스트림(St5)을 인코딩하는 타이밍을 지시하는 오디오 인코드 신호이다.
인코드 시스템 제어부(200)는, 또한, 시나리오 데이터(St7)에 포함되는 멀티미디어 소스 데이터의 각각의 스트림(St1, St3, St5)의 인코드 대상 부분간의 시간적 상호 관계 등의 정보에 근거하여, 인코딩된 멀티미디어 인코드 스트림을, 소정의 상호관계가 되도록 배열하기 위한 타이밍 신호(St21, St23, St25)를 생성한다.
인코드 시스템 제어부(200)는, 1비디오 존(VZ)분의 각각의 타이틀의 타이틀 편집단위(VOB)에 관하여, 그 타이틀 편집단위(VOB)의 재생 시간을 나타내는 재생시간 정보(IT) 및 비디오, 오디오, 부영상의 멀티미디어 인코드 스트림을 다중화(멀티플렉스)하는 시스템 인코딩을 위한 인코드 파라미터를 나타내는 스트림 인코드 데이터(St33)를 생성한다.
인코드 시스템 제어부(200)는, 소정의 상호적 시간 관계에 있는 각각의 스트림의 타이틀 편집단위(VOB)로부터, 멀티미디어 비트 스트림(MBS)의 각각의 타이틀의 편집단위(VOB)의 접속 또는, 각각의 편집단위를 중첩하고 있는 인터리브 타이틀 편집단위(VOBs)를 생성하기 위한, 각각의 타이틀 편집단위(VOB)를 멀티미디어 비트 스트림(MBS)으로서, 포맷(format)하기 위한 포맷 파라미터를 규정하는 배열 지시 신호(St39)를 생성한다.
비디오 인코더(300)는, 편집 정보 작성부(100)의 소스 스트림 버퍼, 및 인코드 시스템 제어부(200)에 접속되어 있으며, 비디오 스트림(St1)과 비디오 인코딩을 위한 인코드 파라미터 데이터 및 인코드 개시 종료의 타이밍 신호(St9)의, 예컨대, 인코드의 개시 종료 타이밍, 비트 전송속도, 인코드 개시 종료 시에 인코드 조건, 소재의 종류로서, NTSC 신호 또는 PAL 신호 혹은 텔레시니(telecine) 소재인지 등의 파라미터가 각각 입력된다. 비디오 인코더(300)는, 비디오 인코드 신호(St9)에 근거하여, 비디오 스트림(St1)의 소정의 부분을 인코딩하여, 비디오 인코드 스트림(St15)을 생성한다.
마찬가지로, 부영상 인코더(500)는, 편집 정보 작성부(100)의 소스 버퍼 및 인코드 시스템 제어부(200)에 접속되어 있으며, 부영상 스트림(St3)과 부영상 스트림 인코드 신호(St11)가 각각 입력된다. 부영상 인코더(500)는, 부영상 스트림 인코딩을 위한 파라미터 신호(St11)에 근거하여, 부영상 스트림(St3)의 소정의 부분을 인코딩하여, 부영상 스트림(St17)을 생성한다.
오디오 인코더(700)는, 편집 정보 작성부(100)의 소스 버퍼 및 인코드 시스템 제어부(200)에 접속되어 있으며, 오디오 스트림(St5)과 오디오 인코드 신호(St13)가 각각 입력된다. 오디오 인코더(700)는, 오디오 인코딩을 위한 파라미터 데이터 및 인코드 개시 종료 타이밍의 신호(St13)에 근거하여, 오디오 스트림(St5)의 소정의 부분을 인코딩하여, 오디오 인코드 스트림(St19)을 생성한다.
비디오 스트림 버퍼(400)는, 비디오 인코더(300)에 접속되어 있으며, 비디오 인코더(300)로부터 출력되는 비디오 인코드 스트림(St15)을 보존한다. 비디오 스트림 버퍼(400)는 또한 인코드 시스템 제어부(200)에 접속되어, 타이밍 신호(St21)의 입력에 근거하여서, 보존하고 있는 비디오 인코드 스트림(St15)을, 타이밍 비디오 인코드 스트림(St27)으로서 출력한다.
마찬가지로, 부영상 스트림 버퍼(600)는, 부영상 인코더(500)에 접속되어 있으며, 부영상 인코더(500)로부터 출력되는 부영상 인코드 스트림(St17)을 보존한다. 부영상 스트림 버퍼(600)는 또한, 인코드 시스템 제어부(200)에 접속되어, 타이밍 신호(St23)의 입력에 따라서, 보존하고 있는 부영상 인코드 스트림(St17)을, 타이밍 부영상 인코드 스트림(St29)으로서 출력한다.
또한, 오디오 스트림 버퍼(800)는, 오디오 인코더(700)에 접속되어 있으며, 오디오 인코더(700)로부터 출력되는 오디오 인코드 스트림(St19)을 보존한다. 오디오 스트림 버퍼(800)는 또한, 인코드 시스템 제어부(200)에 접속되어, 타이밍 신호(St25)의 입력에 따라서, 보존하고 있는 오디오 인코드 스트림(St19)을 타이밍 오디오 인코드 스트림(St31)으로서 출력한다.
시스템 인코더(900)는, 비디오 스트림 버퍼(400), 부영상 스트림 버퍼(600), 및 오디오 스트림 버퍼(800)에 접속되어 있으며, 타이밍 비디오 인코드 스트림(St27), 타이밍 부영상 인코드 스트림(St29), 및 타이밍 오디오 인코드 스트림(St31)이 입력된다. 시스템 인코더(900)는, 또한 인코드 시스템 제어부(200)에 접속되어 있으며, 스트림 인코드 데이터(St33)가 입력된다.
시스템 인코더(900)는, 시스템 인코드의 인코드 파라미터 데이터 및 인코드 개시 종료 타이밍의 신호(St33)에 따라서, 각각의 타이밍 스트림(St27, St29, St31)에 다중화 처리를 실시하여 편집단위(VOB)(St35)를 생성한다.
비디오 존 포매터(1300)는, 시스템 인코더(900)에 접속되어, 타이틀 편집단위(St35)를 입력시킨다. 비디오 존 포매터(1300)는 또한, 인코드 시스템 제어부(200)에 접속되어, 멀티미디어 비트 스트림(MBS)을 포맷하기 위한 포맷 파라미터 데이터 및 포맷 개시 종료 타이밍의 신호(St39)를 입력시킨다. 비디오 존 포매터(1300)는, 타이밍 편집단위(St39)에 따라서, 1비디오 존(VZ) 분의 타이틀 편집단위(St35)를, 사용자의 요망 시나리오에 따르는 순서로 차례로 바꾸어서, 편집 완료된 멀티미디어 비트 스트림(St43)을 생성한다.
이 사용자의 요망 시나리오의 내용으로 편집된 멀티미디어 비트 스트림(St43)은, 기록부(1200)에 전송된다. 기록부(1200)는 편집 멀티미디어 비트 스트림(MBS)을 기록 매체(M)에 상응한 형식의 데이터(St43)로 가공하여, 기록 매체(M)에 기록한다. 이 경우, 멀티미디어 비트 스트림(MBS)에는, 미리 비디오 존 포매터(1300)에 의해서 생성된 매체상의 물리 어드레스를 나타내는 볼륨 파일 스트럭쳐(volume file structure)(VFS)가 포함된다.
또한, 인코딩된 멀티미디어 비트 스트림(St35)을, 이하에서 서술하는 바와 같은 디코더에 직접 출력하여, 편집된 내용을 재생하도록 하여도 좋다. 이 경우는, 멀티미디어 비트 스트림(MBS)에는, 볼륨 파일 스트럭쳐(VFS)는 포함되지 않는 것은 말할 필요도 없다.
<1.3> 시나리오 데이터 St7의 생성
이어서, 상술한 시나리오 데이터(St7)의 생성 방법에 관해서, 편집 정보 작성부(100)의 구성을 나타낸 도 37을 참조하면서 설명한다. 편집 정보 작성부(100)는, 편집 정보 입력부(102), 편집 정보 변환부(104), 오소링 편집 파라미터 판정기(110), 편집 정보 표시부(106), 및 스트림 입력 버퍼(109)로서 이루어지고, 각각 도 37에 나타낸 바와 같이, 서로 접속되어 있다. 스트림 입력 버퍼(109)에는, 편집 대상인 비디오, 부영상, 및 오디오의 소스 스트림(St1, St2, 및 St3)을 편집 타이밍과 동기하여 일시적으로 유지한다. 편집 정보 입력부(102)는, 사용자의 요망을 반영한 편집지시를 오소링 인코더(EC)에 입력하는 수단이고, 상술한 키보드에 해당한다. 편집 정보 변환부(104)는, 편집 정보 입력부(102)로부터 사용자가 입력한 편집지시 신호를 변환하여 시나리오 데이터(St7)를 생성하는 수단이다.
또한, 오소링 편집 파라미터 판정기(110)는, 스트림 입력 버퍼(109)에 대해 소스 스트림에 대한 편집 타이밍과의 동기신호(St300)를 출력한다.
오소링 편집 파라미터 판정기(110)는, 또한, 코드화된 사용자의 편집지시 내용이, 오소링 시스템에 이용되는 멀티미디어 비트 스트림의 데이터 구조, 오소링 인코더(EC), 및 후술하는 오소링 디코더(DC)의 구조 및 기능상의 제약, 요컨대 오소링 편집 파라미터의 조건을 만족하는지의 여부를 판단한다. 오소링 편집 파라미터 판정기(110)는, 편집 정보 변환부(104)와 아울러, 상술한 CPU에 해당한다. 한편, 오소링 편집 파라미터 판정기(110)는, 이렇게 하여, 소스 스트림을 편집 가능 최소 단위로서, 사용자에게 제시하는 기능을 갖고 있다.
오소링 편집 파라미터 판정기(110)는, 사용자의 편집 제어 지시 데이터(St7R)가 오소링 편집 파라미터 조건을 만족하는 경우에는, 이 편집 제어 지시 데이터(St7R)를 도 2에 나타낸 시나리오 데이터(St7)로서, 인코드 시스템 제어부(200)에 출력한다. 인코드 시스템 제어부(200)는, 이 편집 제어 지시 데이터에 따라서, 오소링 인코드 파라미터를 작성한다. 오소링 인코더(EC)는 이 오소링 인코드 파라미터에 따라서, 소스 스트림(St1, St3, St5)을 인코딩 하여 오소링 타이틀 비트 스트림을 생성한다.
또한 오소링 편집 파라미터 판정기(110)는, 사용자의 편집 제어 지시 데이터(St7R)에 포함되는 오소링 편집 파라미터 조건의 판정 결과, 요컨대 그 오소링 편집 파라미터와 편집 조건 값의 각각 나타내는 데이터를, 편집 파라미터 데이터를 편집 정보 표시부(106)에서 이용할 수 있는 편집 정보 데이터(St302)로서 출력한다. 편집 정보 표시부(106)는, 상술한 디스플레이에 해당하며, 사용자는 그 디스플레이에 표시된 편집 파라미터와 편집 조건 값을 확인함으로써, 편집 정보 입력부(102)를 이용하여 올바른 편집지시를 입력하여 고칠 수 있다.
이어서, 도 2 및 도 38을 참조하여, 상기 도 37에 나타낸 것과 상이한 구성으로 편집 정보 작성부(100)를 구성한 경우의 오소링 인코더(EC)에 관해서 설명한다. 도 38에 나타낸 편집 정보 작성부(100)는, 도 37에 나타낸 편집 정보 작성부(100)의 오소링 편집 파라미터 판정기(110)가 편집 정보 변환부(111)로 교환되어 있다. 또한, 편집 정보 변환부(104)는 시나리오 데이터(St7)를 이 편집 정보 변환부(111)와 인코드 시스템 제어부(200)에 동시에 출력한다. 인코드 시스템 제어부(200)는, 시나리오 데이터(St7)에 따라서, 오소링 편집 파라미터 판정기(110)(도 37)에서와 마찬가지로, 편집 제어 지시 데이터(St7)를 생성하는 동시에, 또한 코드화된 사용자 편집지시 내용이 오소링 편집 파라미터의 조건을 만족하는지의 여부를 판단한다. 그리고 인코드 시스템 제어부(200)는, 도 2에 나타낸 바와 같이, 그 판정 결과를 나타내는 데이터를 편집 제어 지시 데이터(St7 ‘)를 매입()하여 편집 정보 작성부(100) 내부의 편집 정보 변환부(111)에 출력한다.
편집 정보 변환부(111)는, 오소링 편집 파라미터 판정기(110)(도 37)와 마찬가지로, 시나리오 데이터(St7)로서 편집 정보 데이터(St302)를 출력한다. 또한, 편집 정보 변환부(111)는, 인코드 시스템 제어부(200)로부터 입력된 편집 제어 지시 데이터(St7 ‘)에 포함되는 판정 결과를 편집 정보 데이터(St302)에 끼워서 출력한다.
이어서, 도 39의 흐름도를 참조하여, 우선 도 37에 나타낸 편집 정보 작성부(100)의 동작에 관해서 설명한다.
단계#201에서, 사용자는 편집 정보 표시부(106)에 표시되는 소스 스트림(St1, St3, St5)의 내용에 대하여, 편집 정보 입력부(100)를 이용하여 원하는 타이틀 편집지시를 입력한다.
단계#202에서, 편집 정보 변환부(104)는 시나리오 데이터(St7)를 생성하고, 오소링 편집 파라미터 판정기(110)는 편집 파라미터 데이터(St302)를 생성하며, 편집 정보 표시부(106)는 편집지시 내용을 사용자에 대하여 제시한다.
단계#203에서, 오소링 편집 파라미터 판정기(110)는, 시나리오 데이터(St7)에 따라서, 편집지시 데이터(St7R)를 생성한다.
단계#204에서, 편집지시 데이터(St7R)가 오소링 편집 파라미터 조건을 만족하는지의 여부를 판정한다. 조건을 만족한다고 판정되는 경우에는, 이 편집 제어 지시 데이터(St7R)를 시나리오 데이터(St7)(도 2)로서, 인코드 시스템 제어부(200)에 출력한다.
한편, 단계#204에서, 오소링 편집 파라미터 조건이 만족하지 않는다고 판정되는 경우에는, 전술한 오소링 편집 정보 데이터(St302)를 편집 정보 표시부(106)에 출력하여, 제어를 단계#201로 복귀시킨다. 사용자가 입력한 편집 제어 지시가 오소링 편집 파라미터 조건을 만족할 때까지, 단계#201, #202, #203, 및 #204의 루프(loop)를 반복한다.
단계#205에서는, 인코드 시스템 제어부(200)가, 이 편집 제어 지시 데이터에 근거하여, 오소링 인코드 파라미터를 작성한다. 오소링 인코더(EC)는 이 오소링 인코드 파라미터에 따라서, 소스 스트림(St1, St3, St5)을 인코딩하여 오소링 타이틀 비트 스트림을 생성한다.
또한, 도 38에 나타낸 편집 정보 작성부(100)의 동작도 기본적으로는, 도 39에 나타낸 흐름도와 마찬가지이지만, 단계#203 및 #204에서는, 오소링 편집 파라미터 판정기(110)(도 37)가 아니고, 인코드 시스템 제어부(200)(도 2)가 시나리오 데이터(St7)에 근거하여 편집 제어 지시 데이터(St7 ‘)를 생성하여, 오소링 편집 파라미터 조건이 만족하는지를 판정한다.
이어서, 오소링 인코드 파라미터의 일례에 관해서 간단히 설명한다. 지금 설명을 간단히 하기 위해서, 오소링 인코드 파라미터는, 장면에 상당하는 소재의 개시·종료 시각을 나타내는 S_TIME, 소재의 종류를 나타내는 SRS_KIND, 장면의 종류를 나타내는 SN_ KIND, 및 장면의 재생 정보를 나타내는 SN_ PBI의 4종류의 파라미터 군(群)으로서 이루어지는 것으로 한다. 장면에 상당하는 소재의 개시·종료 시각(S_TIME)은, 각각의 장면을 인코딩하기 위한 입력 소스의 개시 시각과 종료 시각의 정보, 예컨대 디지털 VTR의 테이프 내에서의 인코드 개시 시각·종료 시각이다. 소재의 종류(SRS_KIND)는, 소재가 텔레시니 변환된 것인지 등을 나타내는 정보이다. 장면의 종류(SN_KIND)는, 멀티 앵글 장면인지의 여부, 퍼렌틀 로크 장면인지의 여부를 나타내는 정보이다. 장면의 재생 순서 정보(SN_PBI)는, 장면에 사용되는 타이틀 정보와 그 타이틀 내에서의 재생 순서를 나타내는 정보이다. 장면 재생 정보(SN_PBI)는 복수의 타이틀로 사용되는 장면이면, 그 타이틀 수만큼 존재하는 것이 된다. 편집 내용에 의해서, 이들 4종류 이상의 파라미터가 설정되는 것은 말할 필요도 없다.
<1.4> 오소링 디코더(DCD)
이어서, 도 3을 참조하여, 본 발명에 따른 멀티미디어 비트 스트림 오소링 시스템을 위에서 설명한 바의 DVD 시스템에 적용한 경우의, 오소링 디코더(DC)의 하나의 실시형태를 나타낸다. DVD 시스템에 적용한 오소링 인코더(DCD)(이후, DVD 디코더라고 한다)는, 본 발명에 따른 DVD 인코더(ECD)에 의해 편집된 멀티미디어 비트 스트림(MBS)을 디코딩하여, 사용자가 원하는 시나리오에 따라 각각의 타이틀의 내용을 전개한다. 또한, 본 실시형태에서는, DVD 인코더(EC)에 의해서 인코딩된 멀티미디어 비트 스트림(St45)은, 기록 매체(M)에 기록되어 있다.
오소링 디코더(DCD)는, 멀티미디어 비트 스트림 재생부(2000), 시나리오 선택부(2100), 디코드 시스템 제어부(2300), 스트림 버퍼(2400), 시스템 디코더(2500), 비디오 버퍼(2600), 부영상 버퍼(2700), 오디오 버퍼(2800), 동기 제어부(2900), 부영상 디코더(3100), 오디오 디코더(3200), 리오더 버퍼(3300), 및 절환기(3400), 합성부(3500), 비디오 데이터 출력 단자(3600), 오디오 데이터 출력 단자(3700), 및 비디오 디코더(3801)로서 구성되어 있다.
또한, 절환기(3400)는 동기 제어부(2900)에 접속되어, 절환 지시 신호(St103)의 입력을 수신하고 있다.
멀티미디어 비트 스트림 재생부(2000)는, 기록 매체(M)를 구동시키는 기록 매체 구동 유닛(2004), 기록 매체(M)에 기록되어 있는 정보를 판독하여 2값의 판독 신호(St57)를 생성하는 판독 헤드 유닛(2006), 판독 신호(ST57)에 여러 가지의 처리를 실시하여 재생 비트 스트림(St61)을 생성하는 신호 처리부(2008), 및 기구 제어부(2002)로서 구성된다. 기구 제어부(2002)는, 디코드 시스템 제어부(2300)에 접속되어, 멀티미디어 비트 스트림 재생 지시 신호(St53)를 수신하고, 기록 매체 구동 유닛(모터)(2004) 및 신호 처리부(2008)를 각각 제어하는 재생 제어 신호(St55, St59)를 생성한다.
디코더(DCD)는, 오소링 인코더(EC)에서 편집된 멀티미디어 타이틀의 영상, 부영상, 및 음성에 관해, 사용자가 원하는 부분이 재생되도록, 대응하는 시나리오를 선택하여 재생하도록, 오소링 디코더(DC)에 지시를 내려주는 시나리오 데이터로서 출력할 수 있는 시나리오 선택부(2100)를 구비하고 있다.
시나리오 선택부(2100)는, 바람직하게는, 키보드 및 CPU 등으로 구성된다. 사용자는, 오소링 인코더(EC)에 입력된 시나리오의 내용에 따라서, 원하는 시나리오를 키보드부를 조작하여 입력한다. CPU는, 키보드 입력에 따라서, 선택된 시나리오를 지시하는 시나리오 선택 데이터(St51)를 생성한다. 시나리오 선택부(2100)는, 예컨대, 적외선 통신장치 등에 의해서, 디코드 시스템 제어부(2300)에 접속되어 있다.
디코드 시스템 제어부(2300)는, 디코드 시스템 제어부(2300)에 생성된 시나리오 선택 데이터(St51)에 따라서 멀티미디어 비트 스트림 재생부(2000)의 동작을 제어하는 재생 지시 신호(St53)를 생성한다. 디코드 시스템 제어부(2300)는, 또한, 시나리오 데이터(St53)로부터 사용자의 재생 지시 정보를 추출하여, 디코드 제어에 필요한, 디코드 정보 테이블을 생성한다. 디코드 정보 테이블에 대해서는, 나중에, 도 32, 및 도 33을 참조하여 상세히 설명한다. 또한, 디코드 시스템 제어부(2300)는, 스트림 재생 데이터(St63) 중의 파일 데이터 영역(FDS) 정보로부터, 비디오 매니저(VMG), VTS 정보(VTSI), PGC 정보(C_PBI#j), 셀 재생 시간(C_PBTM)등의 광디스크(M)에 기록된 타이틀 정보를 추출하여 타이틀 정보(St200)를 생성한다.
<1.5> 시나리오 선택 데이터(St51)의 생성
도 40을 참조하여 시나리오 선택부(2100)를 상세히 설명한다. 시나리오 선택부(2100)는, 시나리오 선택 정보 입력부(2102), 시나리오 선택 정보 변환부(2104), 타이틀 정보 표시부(2106)로서 구성되어 있다. 시나리오 선택 정보 입력부(2102)는, 원격제어기 등 인간이 조작 가능한 것으로부터의 시나리오 선택 데이터로서 입력되거나, 혹은 시나리오 선택 정보를 포함하는 컴퓨터 파일 등의 전자적인 데이터가 시나리오 선택 데이터로서 입력되어도 좋다. 시나리오 선택 정보 변환부(2104)는, 시나리오 선택 정보 입력부(2105)로부터의 정보를 디코드 시스템 제어부(2300)에서 처리 가능한 코드 정보(St51)로 변환한다. 타이틀 정보 표시부(2106)는, 재생된 타이틀 정보(St200)(도 3)를 표시하는 타이틀 정보 표시부이다. 예컨대, 디스크내에 복수의 타이틀이 존재하는 경우 등, 그 타이틀 선택을 위한 화면 정보를 원격 제어기 등에 표시하는 것이다. 이 정보 표시부(2106)는, 반드시 시나리오 선택부(2100)에 없을지라도 좋으며, 비디오 데이터 출력 단자(3600)에 접속하는 CRT 등의 표시장치에, 전술한 타이틀 선택을 위한 화면 정보를 표시하는 것이라도 상관없다.
다시, 도 3을 참고로 하면, 스트림 버퍼(2400)는, 소정의 버퍼 용량을 갖고, 멀티미디어 비트 스트림 재생부(2000)로부터 입력되는 재생 신호 비트 스트림(St61)을 일시적으로 보존하는 동시에, 각각의 스트림의 어드레스 정보 및 동기 초기값 데이터를 추출하여 스트림 제어 데이터(St63)를 생성한다. 스트림 버퍼(2400)는, 디코드 시스템 제어부(2300)에 접속되어 있으며, 생성한 스트림 제어 데이터(St63)를 디코드 시스템 제어부(2300)에 공급한다.
동기 제어부(2900)는, 디코드 시스템 제어부(2300)에 접속되어 있으며, 동기 제어 데이터(St81)에 포함되는 동기 초기값 데이터(SCR)를 수신하여, 내부의 시스템 클록(STC)에 세트하여, 리셋(reset)된 시스템 클록(St79)을 디코드 시스템 제어부(2300)에 공급한다.
디코드 시스템 제어부(2300)는, 시스템 클록(St79)에 따라서, 소정의 간격으로 스트림 판독 신호(St65)를 생성하여, 스트림 버퍼(2400)에 입력한다.
이 경우의 판독 단위는 팩(pack)이다. 디코드 시스템 제어부(2300)에서는, 스트림 버퍼(2400)로부터 추출한 스트림 제어 데이터 중의 SCR과, 동기 제어부(2900)로부터의 시스템 클록(St79)을 비교하여, St63 중의 SCR보다도 시스템 클록(St79)이 커진 시점에서 판독 요구 신호(St65)를 생성한다. 이러한 제어를 팩 단위로 시행함으로써, 팩 전송을 제어한다.
스트림 버퍼(2400)는, 판독 신호(St65)에 따라서, 재생 비트 스트림(St61)을 소정의 간격으로 출력한다.
디코드 시스템 제어부(2300)는, 또한, 시나리오 선택 데이터(St51)에 근거하여, 선택된 시나리오에 대응하는 비디오, 부영상, 오디오의 각각의 스트림의 ID를 나타내는 디코드 스트림 지시 신호(St69)를 생성하여, 시스템 디코더(2500)에 출력한다.
시스템 디코더(2500)는, 스트림 버퍼(2400)로부터 입력되어진 비디오, 부영상, 및 오디오의 스트림을, 디코드 지시 신호(St69)의 지시에 따라서, 각각, 비디오 인코드 스트림(St71)으로서 비디오 버퍼(2600)에, 부영상 인코드 스트림(St73)으로서 부영상 버퍼(2700)에, 및 오디오 인코드 스트림(St75)으로서 오디오 버퍼(2800)에 출력한다.
타이틀 중에, 예컨대 일본어, 영어, 불어 등, 언어별의 오디오 등의 복수의 오디오 데이터, 및 일본어 자막, 영어 자막, 불어 자막 등, 언어별의 자막 등의 복수의 부영상 데이터가 존재하는 경우, 각각에 ID가 부여되어 있다. 요컨대, 도 7을 참고하여 설명하는 바와 같이, 비디오 데이터 및 MPEG 오디오 데이터에는, 스트림 ID가 부여되고, 부영상 데이터, AC3 방식의 오디오 데이터, 리니어 PCM 및 내비게이션 팩(navigation pack)(NV) 정보에는, 서브스트림 ID가 부여된다. 사용자는 ID를 의식하는 것은 아니나, 어떤 언어의 오디오 혹은 자막을 선택할 것인지를 시나리오 선택부(2100)에서 선택한다. 영어의 오디오를 선택하면, 시나리오 선택 데이터(St51)로서 영어의 오디오에 대응하는 ID가 디코드 시스템 제어부(2300)에 반송된다. 또한, 디코드 시스템 제어부(2300)는 시스템 디코더(2500)에 그 ID를 디코드 지시 신호(St69) 상에 반송하여 건네준다.
시스템 디코더(2500)는, 스트림 버퍼(2400)로부터 입력되어지는 비디오, 부영상, 및 오디오의 스트림을, 디코드 지시 신호(St69)의 지시에 따라서, 각각, 비디오 인코드 스트림(St71)으로서 비디오 버퍼(2600)에, 부영상 인코드 스트림(St73)으로서 부영상 버퍼(2700)에, 및 오디오 인코드 스트림(St75)으로서 오디오 버퍼(2800)에 출력한다. 요컨대, 시스템 디코더(2500)는, 시나리오 선택부(2100)로부터 입력되는, 스트림의 ID와, 스트림 버퍼(2400)로부터 전송되는 팩의 ID가 일치한 경우에 각각의 버퍼(비디오 버퍼(2600), 부영상 버퍼(2700), 오디오 버퍼(2800))에 해당 팩을 전송한다.
또한, 시스템 디코더(2500)는, 각각의 스트림(St67)의 각각의 최소 제어 단위에서의 재생 개시시간(PTS) 및 디코드 개시시간(DTS)을 검출하여, 시간 정보 신호(St77)를 생성한다. 이때, 시간 정보 신호(St77)는, 디코드 시스템 제어부(2300)를 경유하여, 동기 제어 데이터(St81)로서 동기 제어부(2900)에 입력된다.
동기 제어부(2900)는, 동기 제어 데이터(St81)로서, 각각의 스트림에 대하여, 각각이 디코드 후에 소정의 순서가 되는 디코드 개시 타이밍을 결정한다. 동기 제어부(2900)는, 이 디코드 타이밍에 따라서, 비디오 스트림 디코드 개시 신호(St89)를 생성하여, 비디오 디코더(3800)에 입력한다. 마찬가지로, 동기 제어부(2900)는, 부영상 디코드 개시 신호(St91) 및 오디오 디코드 개시 신호(St93)를 생성하여, 부영상 디코더(3100) 및 오디오 디코더(3200)에 각각 입력한다.
비디오 디코더(3801)는, 비디오 스트림 디코드 개시 신호(St89)에 따라서, 비디오 출력 요구 신호(St84)를 생성하여, 비디오 버퍼(2600)에 대하여 출력한다. 비디오 버퍼(2600)는, 비디오 출력 요구 신호(St84)를 수신하고, 비디오 스트림(St83)을 비디오 디코더(3801)에 출력한다. 비디오 디코더(3801)는, 비디오 스트림(St83)에 포함되는 재생 시간 정보를 검출하고, 재생 시간에 상당하는 양(量)의 비디오 스트림(St83)의 입력을 수신하는 시점에서, 비디오 출력 요구 신호(St84)를 무효로 한다. 이렇게 하여, 소정 재생 시간에 상당하는 비디오 스트림이 비디오 디코더(3801)에서 디코딩 되어, 재생된 비디오 신호(St95)가 리오더 버퍼(3300)와 절환기(3400)에 출력된다.
비디오 인코드 스트림은, 프레임간의 상관을 이용한 부호화이기 때문에, 프레임 단위로 본 경우, 표시 순서와 부호화 스트림 순서가 일치하지 않는다. 따라서, 디코드 순서로 표시할 수 있는 것은 아니다. 그 때문에, 디코드를 종료한 프레임을 일시적으로 리오더 버퍼(3300)에 저장한다. 동기 제어부(2900)에서 표시 순서로 되도록 St103을 제어하여 비디오 디코더(3801)의 출력(St95)과, 리오더 버퍼의 출력(St97)을 절환하여, 합성부(3500)에 출력한다.
마찬가지로, 부영상 디코더(3100)는, 부영상 디코드 개시 신호(St91)에 따라서, 부영상 출력 요구 신호(St86)를 생성하여, 부영상 버퍼(2700)에 공급한다. 부영상 버퍼(2700)는, 비디오 출력 요구 신호(St84)를 수신하고, 부영상 스트림(St85)을 부영상 디코더(3100)에 출력한다. 부영상 디코더(3100)는, 부영상 스트림(St85)에 포함되는 재생 시간 정보에 따라서, 소정의 재생 시간에 상당하는 양(量)의 부영상 스트림(St85)을 디코딩하고, 부영상 신호(St99)를 재생하여, 합성부(3500)에 출력한다.
합성부(3500)는, 선택기(3400)의 출력 및 부영상 신호(St99)를 중첩시켜, 영상 신호(St105)를 생성하여, 비디오 출력 단자(3600)에 출력한다.
오디오 디코더(3200)는, 오디오 디코드 개시 신호(St93)에 근거하여, 오디오 출력 요구 신호(St88)를 생성하고, 오디오 버퍼(2800)에 공급한다. 오디오 버퍼(2800)는, 오디오 출력 요구 신호(St88)를 수신하고, 오디오 스트림(St87)을 오디오 디코더(3200)에 출력한다. 오디오 디코더(3200)는, 오디오 스트림(St87)에 포함되는 재생 시간 정보에 따라서, 소정의 재생 시간에 상당하는 양(量)의 오디오 스트림(St87)을 디코딩하여, 오디오 출력 단자(3700)에 출력한다.
이렇게 하여서, 사용자의 시나리오 선택에 응답하여, 실시간으로 사용자가 요망하는 멀티미디어 비트 스트림(MBS)을 재생할 수 있다. 요컨대, 사용자가 상이한 시나리오를 선택할 때마다, 오소링 디코더(DCD)는 그 선택된 시나리오에 대응하는 멀티미디어 비트 스트림(BS)을 재생함으로써, 사용자가 요망하는 내용을 재생할 수 있다.
한편, 디코드 시스템 제어부(2300)는, 전술한 적외선 통신장치 등을 경유하여, 시나리오 선택부(2100)에 타이틀 정보 신호(St200)를 공급하더라도 좋다. 시나리오 선택부(2100)는, 타이틀 정보 신호(St200)에 포함되는 스트림 재생 데이터(St63) 중의 파일 데이터 영역(FDS) 정보로부터, 광디스크(M)에 기록된 타이틀 정보를 추출하고, 내장한 디스플레이에 표시함으로써, 사용자에 의한 대화형의 시나리오 선택을 가능하게 한다.
또한, 상술한 예에서는, 스트림 버퍼(2400), 비디오 버퍼(2600), 부영상 버퍼(2700), 및 오디오 버퍼(2800)와, 리오더 버퍼(3300)는, 기능적으로 상이하기 때문에, 각각 별도의 버퍼로서 나타내고 있다. 그러나, 이들 버퍼에서 요구되는 판독 입력 및 판독 출력 속도의 수배의 동작 속도를 갖는 버퍼 메모리를 시분할로 사용함으로써, 1개의 버퍼 메모리를 이들 개별의 버퍼로서 기능시킬 수 있다.
이상에서 설명한 바와 같이, 본 발명의 오소링 시스템에서는, 기본 타이틀 내용에 대하여, 각각의 내용을 나타내는 최소 편집단위의 복수의 분기 가능한 서브스트림을 소정의 시간적 상관관계로 배열해야 하는 멀티미디어 소스 데이터를 실시간 혹은 일괄해서 인코딩하여, 복수의 임의의 시나리오에 따르는 멀티미디어 비트 스트림을 생성할 수 있다.
또한, 이와 같이 인코딩된 멀티미디어 비트 스트림을, 복수의 시나리오 내의 임의의 시나리오에 따라서 재생할 수 있다. 그리고, 재생 중이더라도, 선택한 시나리오로부터 별도의 시나리오를 선택하여(절환하여)도, 그 새로 선택된 시나리오에 상응한(동적으로) 멀티미디어 비트 스트림을 재생할 수 있다. 또한, 임의의 시나리오에 따라 타이틀 내용을 재생 중에도, 또한, 복수의 장면 내의 임의의 장면을 동적으로 선택하여 재생할 수 있다.
이와 같이, 본 발명에서의 오소링 시스템에서는, 인코딩하여 멀티미디어 비트 스트림(MBS)을 실시간으로 재생할 뿐만 아니라, 반복 재생할 수 있다. 상술한 본 발명에 따른 오소링 시스템을, DVD 시스템, 특히 심리스 접속 오소링에 적용한 경우에 관해서 어떠한지를 상세히 설명한다.
<2.1> 퍼렌틀 로크 제어 및 멀티앵글 제어
본 발명에서의 퍼렌틀 로크 제어 및 멀티앵글 제어에 관해서 설명한다. 퍼렌틀 로크 제어에서의 시청 레벨에 의해 영상이 컷(cut)된 구간을 갖는 비디오 데이터의 시간은, 다른 비디오 데이터와 비교하여 단축된다. 따라서, 퍼렌틀 로크 제어에 따른 택일적으로 재생되는 각각의 비디오 데이터의 길이는 각각 상이하다.
한편 멀티앵글 제어에서는, 각각의 앵글 구간의 영상 및 음성은 동일한 시간축에 평행되도록 재생되기 때문에, 각각의 앵글 구간의 비디오 데이터의 재생 시간은 동등하다. 특필해야 할 것은, 여기서 말하는 재생 시간이라는 것은, 광의(廣義)의 의미이고, 데이터가 디스크로부터 판독되어, 영상이나 음성의 출력 신호로 변환되고, 영상 출력, 음성 출력될 수 있는 시간이다. 협의로 해석하여, 디스크로부터 판독되는 시간만이나, 판독된 데이터의 복호가 완료되는 시간만을 의미하는 것은 아니다. 또한, 각각의 앵글 구간은 그 재생 시간은 동등하더라도 각각의 영상내용은 다르기 때문에, MPEG2 방식으로 압축되는 데이터량은 가변으로 되어, 당연히, 변환된 각각의 재생 구간의 데이터량은 다른 것으로 된다.
퍼렌틀 로크 제어 및 멀티앵글 제어의 배경이 되는 기술의 하나는, 공통적으로, 비디오 데이터의 택일적인 재생이다. 택일적인 재생을 실현하는 데에서의 과제는, 각각의 비디오 데이터를 전후의 비디오 데이터로부터 어느 것이나 도중에서 끊기는 일없게 재생하는 것이다. 그렇지만, 각각의 비디오 데이터를 광디스크 상의 연속 영역에 각각 배치한 경우, 전후의 비디오 데이터를 인접한 영역에 배치 가능한 비디오 데이터는 1개이기 때문에, 인접하지 않은 비디오 데이터에 대해서는, 디스크 탐색이 발생하여, 영상의 연속적인 재생이 도중에서 끊기게 된다.
어느 정도의 탐색은 디스크 재생 장치가 재생 데이터를 버퍼링(buffering)하면서 재생함으로써, 그 기다림을 흡수할 수 있지만, 택일적인 재생 구간이 길게 되면, 디스크 재생 장치에 요구되는 버퍼 소비량의 크기가 크게 되어 대응할 수 없게 된다. 이것을 버퍼 오버플로우(buffer overflow)라고 부른다. 이 때문에, 각각의 탐색의 기다림을 작게 하기 위해서 인터리브 기록이라는 기술이 이용된다.
즉, 각각의 비디오 데이터를 소정 구간(인터리브 유닛이라고 한다)으로 분할하여, 이것을, 광디스크 상의 연속 영역에 교호(交互)로 배치한 택일적 재생 구간을 형성한다. 이에 따라, 각각의 탐색 거리를 분할 구간의 크기로 억제할 수 있고, 택일적 재생 구간이 장시간에 걸치는 경우라도, 버퍼를 오버플로우하지 않고 재생하는 것이 가능하다. 이하에서, 퍼렌틀 로크 제어 및 멀티앵글 제어에서, 버퍼 오버플로우 없이 재생하는 방법을 설명한다.
<2.2> 퍼렌틀 로크 제어용 택일적 재생 구간의 분할
퍼렌틀 로크 제어용의 택일적 재생 구간을 형성함에서는, 상술한 버퍼 오버 플로우와, 반대로 재생해야할 영상 데이터가 버퍼 내에 없게 되는 버퍼 언더플로우(underflow)를, 디스크 재생 장치에 일으키지 않도록 해당 구간을 형성할 필요가 있다. 버퍼 오버플로우를 일으키지 않도록 택일적 재생 구간을 형성하기 위해서는, 디스크 재생 장치의 버퍼 크기나 탐색 속도 등의 성능을 고려할 필요가 있다.
즉, 버퍼 크기와 탐색 성능으로부터 도입되는 영상이 도중에서 끊기지 않는 디스크 재생 장치의 최대의 점프 시간을 JMT로 하면, 택일적 재생 구간을 형성하기 위해서 인터리브 유닛에 분할된 각각의 비디오 데이터의 분할 수 M의 최소 값 Mmin은 다음의 식으로 나타낸다.
Mmin ≥ VOBMaxTime/JMT (식 1)
또한, VOBMaxTime는 택일적 재생 구간에 속하는 비디오 데이터의 최장 시간이다. 식 1은 택일적 재생 구간을 형성하는 비디오 데이터를 인터리브 유닛으로 분할하는 수가 M 이상의 값에서 있어야 하고, 이 경우, 인터리브 유닛의 재생 중에 버퍼가 오버플로우하는 문제가 발생하고, 또한, 점프하였다고 해도, 버퍼 중에 충분한 데이터가 축적되어 있지 않기 때문에, 결과적으로 버퍼 언더플로우되는 문제가 있다.
또한, 상술한 버퍼 언더플로우를 발생시키지 않기 위해서는, 점프 전에 버퍼 중에 존재하는 1인터리브 유닛의 영상 데이터에 의한 영상 디코드를 완료할 때까지 점프가 종료되고, 또한, 점프 후에 다음 디코딩을 위한 인터리브 유닛의 영상 데이터를 버퍼에 재생 완료하면 좋다.
즉,
JT : JUMP에 걸리는 시간(예컨대 0.4sec)
BitRate : 재생장치의 트랙 버퍼의 입력 데이터 전송속도(EX.10Mbps : 고정값)
ILUM : 인터리브 유닛의 데이터량
으로 하면,
버퍼 중의 영상 데이터가 보증하는 재생시간(ILUMT)은, 점프 발생 시에 다음의 영상 데이터의 디코드 준비가 완료될 때까지의 최장값보다도 클 필요가 있으며, 이하의 식을 만족할 필요가 있다.
ILUMT > JT + (ILUM/BitRate) (식 2)
이에 따라 택일적 재생 구간의 분할 수(M)는 다음 식으로 구한다.
M=VOBTime/ILUMT (식 3)
VOBTime는, 택일적 재생 구간을 구성하는 각각의 비디오 데이터의 재생 시간이다.
택일적 재생 구간을 구성하는 비디오 데이터의 최소값을 VOBminTime로 하면, 인터리브 유닛 분할 수 M의 최대값 Mmax는 다음의 식으로 나타낸다.
Mmax ≤ VOBminTime/(JT+(ILUM/BitRate)) (식 4)
즉, 최대 분할 수 Mmax 이하이면, 디스크 재생 장치에 버퍼 언더플로우의 문제가 발생하게 된다.
이상에서 설명한 바와 같이, 택일적 재생 구간을 형성함에서는 (식 1), (식 4)을 만족하는 M 값(Mmin, Mmax)으로 분할할 필요가 있다.
<2.3> 퍼렌틀 로크 제어용 택일적 재생 구간의 제한 값의 일례
이하에서, 퍼렌틀 로크 제어용 택일적 재생 구간의 제한 값의 구체 예를 나타낸다.
VOB의 최대 비트 전송속도 : 8Mbps
VOBminTime : 4.0sec
VOBTime : 120sec 이상
으로 하면,
제2식에 의해, ILUMT > 0.4+8*2/10=2.0(sec)
제1식에 의해, JMT = 250Mbit/8=31.25(sec)
제4식에 의해, Mmax ≤ VOBminTime/ILUMT=4.0/2.0=2
제3식에 의해, M=VOBTime/JMT=120/31.25=3.84
이 경우, 제3식 및 제4식으로부터 얻어진 값이, 서로 다른 것을 만족하지 않기 때문에 에러로 한다.
<2.4> 앵글용 택일적 재생 구간의 분할
멀티앵글 제어용의 택일적 재생 구간을 형성함에서는, 상술한 버퍼 오버플로우를 고려하여 구간의 분할 수를 결정하는 동시에, 비디오 데이터의 구조가 각각의 비디오 데이터로 균질하게 되도록 고려할 필요가 있다. 이것은, 퍼렌틀과 상이하고, 재생 중에 사용자의 지정에 의해 동적으로 영상을 바꿀 필요가 있기 때문이다. 이 때문에 길이가 다르면 절환 후의 영상과 동기가 얻어지지 않고, 오디오 등의 도중에서 끊어짐이 발생하여 버리는 등의 문제 등이 발생한다.
절환 전과 절환 후의 비디오 데이터의 구조가 동등하게 되기 위해서는, 비디오 데이터에 포함되는 영상 데이터를 구성하는 GOP(group of picture) 구조가 동등하게 될 필요가 있다. 여기서 말하는 “GOP 구조가 동등하다”는 것은, 대응하는 인터리브 유닛에 포함되는 GOP 수 및 그 영상 수가 동등하다는 것을 의미한다. 즉, 기본 인코딩 시에 앵글 구간을 구성하는 비디오 데이터를 구성하는 것으로 되는 영상 정보는, 이 제한 하에서 기본 인코딩될 필요가 있다.
상기 문제가 발생하는 전형적인 예는, 소재가 필름(24Frame/second)의 경우이고 또한 텔레시니 변환이 행하여지고 있는 경우이다. 텔레시니 변환이라는 것은 필름의 초당 프레임 수가 24이기 때문에, 통상의 텔레비전 신호로 변환할 때에 필드 보간을 실시하여, 초당 프레임 수를 30으로 변환하는 처리이다. 텔레시니 변환된 소재를 MPEG 데이터로 변환하는 것에서는, 보간에 의해 삽입된 필드는 쓸데없이 길기 때문에, 압축 효율을 올리기 위해서 역 텔레시니 변환을 실시하여 프레임 수를 24로 되돌리고 나서 MPEG 데이터로 압축된다.
그렇지만, 이 역 텔레시니 변환은 전체로서 30프레임을 24프레임으로 변환하고는 있지만, 국소적인 비디오 데이터가 일률적으로 이 비율로 변환되는 것은 아니고, 국소적으로는 24~30으로 흩어져 변환된다. 이 때문에, 앵글 구간에 속하는 각각의 비디오 데이터에 대하여, 이 역 텔레시니 변환을 실시하면 영상 수는 일정하게 되지 않고, 각각의 VOB의 GOP 구조가 상이한 것으로 된다.
상기 GOP 구조가 동등한 조건에서의 하나로 된, 영상 수에 관해서 상술한다. 여기서 말하는 영상 수라는 것은 정확하게는, GOP에 포함되는 재생된 영상 수를 의미한다. 따라서, GOP에서의 인코드 대상 프레임과, 재생되는 영상 수는 일치한다고 말할 수는 없다. 역 텔레시니 변환에서, 30fps에서 24fps로 인코딩되는 경우, 영상수는 분명히 감소한다. 이 경우, 변환에 의해 어떤 필드가 솎아내어졌는지, 또한 언제 재생하면 좋은지에 대한 정보는, RFF 플래그(flag)나 TFF 플래그로서 인코딩 후의 스트림으로 기술된다. (RFF : Repeat First Field, TFF : Top Field First). 따라서, 인코드 대상 프레임이 동일한 구조를 갖는 GOP이더라도, 상기 플래그(RFF)가 ON으로 되어 있는 영상 수가 다르면, 재생 시간이 달라진다.
또한, 더욱이, 비디오 데이터에 포함되는 음성 데이터의 채널 수 및 부영상 데이터의 채널 수는 동등할 필요가 있다. 이것은, 채널 수가 다르면, 비디오 데이터가 절환되기 전에 선택되어 있던 채널이 비디오 데이터의 절환 후에 존재하지 않기 때문이다. 즉, 기본 인코딩 시에, 앵글 구간에 속하는 비디오 데이터에 포함되는 음성 데이터 또는 부영상 데이터는 그 채널 수가 동등하게 되는 만큼 기본 인코딩될 필요가 있다.
본 발명에 따른 DVD 시스템의 데이터 구조에 관하여, 도 5, 도 6, 도 7, 및 도 8을 참조하여, 후에 설명한다.
<2.5> 다중장면
상술한, 퍼렌틀 로크 재생 및 멀티앵글 재생의 요구를 만족시키기 위해, 각각의 요구한 내용의 타이틀을 각각 준비하고 있으면, 단지 일부분의 상이한 장면 데이터를 갖는 대략 동일한 내용의 타이틀을 요구 수만큼 준비하여, 기록 매체에 기록해야 한다. 이것은 기록 매체의 대부분의 영역에 동일한 데이터를 반복하여 기록하는 것으로 되기 때문에, 기록 매체의 기억용량의 이용 효율을 현저히 소외시킨다. 더욱이, DVD와 같은 대용량의 기록 매체를 갖는다고 하여도, 모든 요구에 대응하는 타이틀을 기록하는 것은 불가능하다. 이러한 문제는, 기본적으로 기록 매체의 용량을 증가시키면 해결된다고 할 수 있지만, 시스템 자원의 유효한 이용의 관점에서 대단히 바람직하지 못하다.
DVD 시스템에서는, 이하에 개략적으로 설명하는 다중장면 제어를 이용하여, 여러 종류의 변화를 갖는 타이틀을 최저 필요 한도의 데이터로서 갖도록 구성하여, 기록 매체 등의 시스템 자원의 효율적 활용을 가능하게 하고 있다. 요컨대, 여러 가지 변화를 갖는 타이틀을, 각각의 타이틀 사이에서의 공통 데이터로서 이루어지는 기본 장면 구간과, 각각의 요구에 의거한 상이한 장면 군(群)으로서 이루어지는 다중장면 구간으로 구성되어 있다. 그리고 재생 시에, 사용자가 각각의 다중장면 구간에서의 특정한 장면을 자유롭게, 또한 수시로 선택할 수 있도록 되어 있다. 또한, 퍼렌틀 로크 재생 및 멀티앵글 재생을 포함하는 다중장면 제어에 관해서, 후에 도 9를 참조하여 설명한다.
<3.1> DVD 시스템의 데이터 구조
도 5에, 도 1에서 나타낸 비디오 타이틀 세트(VTS)의 내부 구조를 나타낸다. 비디오 타이틀 세트(VTS)는, 디스크 전체의 관리 정보를 나타내는 VTS 정보(VTSI)와, 멀티미디어 비트 스트림의 시스템 스트림인 VTS 타이틀용 VOBS(VTSTT_VOBS)로 대별된다. 우선, 이하에서, VTS 정보에 관해서 설명한 후에, VTS 타이틀용 VOBS에 관해서 설명한다.
VTS 정보는, 주로, VTSI 관리 테이블(VTSI_MAT) 및 VTSPGC 정보 테이블(VTS_PGCIT)을 포함한다.
VTSI 관리 테이블은, 비디오 타이틀 세트(VTS)의 내부 구성, 및 비디오 타이틀 세트(VTS) 중에 포함되는 선택 가능한 오디오 스트림의 수, 부영상의 수 및 비디오 타이틀 세트(VTS)의 저장 장소 등이 기술된다.
VTSPGC 정보 관리 테이블은, 재생 순서를 제어하는 프로그램 체인(PGC)을 나타내는 i개(i는 자연수)의 PGC 정보(VTS_PGCI#1 ~ VTS_PGCI#I)를 기록한 테이블이다. 각각의 엔트리의 PGC 정보(VTS_PGCI#I)는, 프로그램 체인을 나타내는 정보이고, j개(j는 자연수)의 셀(cell) 재생 정보(C_PBI#1 ~ C_PBI#j)로서 이루어진다. 각각의 셀 재생 정보(C_PBI#j)는 셀의 재생 순서나 재생에 관한 제어정보를 포함한다.
또한, 프로그램 체인(PGC)이라는 것은, 타이틀의 스토리를 기술하는 개념이고, 셀(후술)의 재생 순서를 기술하는 것으로서 타이틀을 형성한다. 상기 VTS 정보는, 예컨대, 메뉴에 관한 정보의 경우에는, 재생 개시 시에 재생 장치 내의 버퍼에 저장되어, 재생의 도중에서 원격제어기의「메뉴」키가 눌려진 시점에서 재생 장치에 의해 참조되며, 예컨대 #1의 톱(top) 메뉴가 표시된다. 계층 메뉴의 경우는, 예컨대, 프로그램 체인 정보 VTS_PGCI#1이「메뉴」키 누름에 의해 표시되는 메인 메뉴이고, #2로부터 #9가 원격제어기의「ten key」의 숫자에 대응하는 서브메뉴, #10 이후가 더욱 하위 층의 서브메뉴로 되도록 구성된다. 또한 예컨대, #1이「메뉴」키 누름에 의해 표시되는 톱 메뉴, #2 이후가「ten」키의 숫자에 대응하여 재생되는 음성 가이던스(guidance)라고 하는 것과 같이 구성되어 있다.
메뉴 자체는, 이 테이블에 지정되는 복수의 프로그램 체인으로 나타내기 때문에, 계층 메뉴이거나, 음성 가이던스를 포함하는 메뉴이거나, 임의의 형태의 메뉴를 구성할 수 있는 것을 가능하게 한다.
또한, 예컨대, 영화의 경우에는, 재생 개시 시에 재생 장치 내의 버퍼에 저장되고, PGC 내에 기술하고 있는 셀 재생 순서를 재생 장치가 참조하여, 시스템 스트림을 재생한다.
여기서 말하는 셀이라는 것은, 시스템 스트림의 전부 또는 일부이고, 재생 시의 액세스 포인트로서 사용된다. 예를 들면, 영화의 경우는, 타이틀을 도중에서 구분하고 있는 챕터(chapter)로서 사용할 수 있다.
한편, 입력된 PGC 정보(C_PBI#j)의 각각은, 셀 재생 처리 정보, 및 셀 정보 테이블을 포함한다. 재생 처리 정보는, 재생 시간, 반복하는 회수 등의 셀의 재생에 필요한 처리 정보로서 구성되어 있다. 블록 모드(CBM), 셀 블록 타입(CBT), 심리스 재생 플래그(SPF), 인터리브 블록 배치 플래그(IAF), STC 재설정 플래그(STCDF), 셀 재생 시간(C_PBTM), 심리스 앵글 절환 플래그(SACF), 셀 선두 VOBU 개시 어드레스(C_FVOBU_SA), 및 셀 종단 VOBU 개시 어드레스(C_LVOBU_SA)로서 이루어진다.
여기서 말하는, 심리스 재생이라는 것은, DVD 시스템에서 영상, 음성, 부영상 등의 멀티미디어 데이터를, 각각의 데이터 및 정보를 중단하지 않고 재생하는 것이며, 상세하게는, 도 10 및 도 11을 참조하여 후에 설명한다.
셀 블록 모드(cell block mode)(CBM)는 복수의 셀이 1개의 기능 블록을 구성하고 있는지의 여부를 나타내며, 기능 블록을 구성하는 각각의 셀의 셀 재생 정보는, 연속적으로 PGC 정보 내에 배치되어, 그 선두에 배치되는 셀 재생 정보의 CBM에는, “블록의 선두 셀”을 나타내는 값, 그 최후에 배치되는 셀 재생 정보의 CBM에는, “블록의 최후의 셀”을 나타내는 값, 그 사이에 배치되는 셀 재생 정보의 CBM에는, “블록 내의 셀”을 나타내는 값을 나타낸다.
셀 블록 타입(cell block type)(CBT)은, 셀 블록 모드(CBM)에서 나타낸 블록의 종류를 나타내는 것이다. 예컨대 멀티앵글 기능을 설정하는 경우에는, 각각의 앵글의 재생에 대응하는 셀 정보를, 전술한 바와 같은 기능 블록으로서 설정하고, 또한 그 블록의 종류로서, 각각의 셀의 셀 재생 정보의 CBT에 “앵글”을 나타내는 값을 설정한다.
심리스 재생 플래그(SPF)는, 해당 셀이 전에 재생되는 셀 또는 셀 블록과 심리스로 접속하여 재생하는지의 여부를 나타내는 플래그이고, 앞의 셀 또는 앞의 셀 블록과 심리스로 접속하여 재생하는 경우에는, 해당 셀의 셀 재생 정보의 SPF에는 플래그 값 1을 설정한다. 그렇지 않은 경우에는, 플래그 값 0을 설정한다.
인터리브 할당 플래그(IAF)는, 해당 셀이 인터리브 영역에 배치되어 있는지의 여부를 나타내는 플래그이며, 인터리브 영역에 배치되어 있는 경우에는, 해당 셀의 인터리브 할당 플래그(IAF)에는 플래그 값 1을 설정한다. 그렇지 않은 경우에는, 플래그 값 0을 설정한다.
STC 재설정 플래그(STCDF)는, 동기를 잡을 때에 사용하는 STC를 셀의 재생시에 재설정할 필요가 있는지 여부의 정보이고, 재설정이 필요한 경우에는 플래그 값 1을 설정한다. 그렇지 않은 경우에는, 플래그 값 0을 설정한다.
심리스 앵글 체인지 플래그(SACF)는, 해당 셀이 앵글 구간에 속하고, 또한, 심리스로 절환되는 경우, 해당 셀의 심리스 앵글 체인지 플래그(SACF)에는 플래그 값 1을 설정한다. 그렇지 않은 경우에는, 플래그 값 0을 설정한다.
셀 재생 시간(C_PBTM)은 셀의 재생 시간을 비디오의 프레임 수 정밀도로 나타내고 있다.
C_LVOBU_SA는, 셀 종단 VOBU 개시 어드레스를 나타내고, 그 값은 VTS 타이틀용 VOBS (VTSTT_VOBS)의 선두 셀의 논리 섹터로부터의 거리를 섹터 수로서 나타내고 있다. C_FVOBU_SA는 셀 선두 VOBU 개시 어드레스를 나타내고, VTS 타이틀용 VOBS(VTSTT_VOBS)의 선두 셀의 논리 섹터로부터 거리를 섹터 수로서 나타내고 있다.
이어서, VTS 타이틀용 VOBS, 요컨대, 1멀티미디어 시스템 스트림 데이터(VTSTT_VOBS)에 관하여 설명한다. 시스템 스트림 데이터(VTSTT_VOBS)는, 비디오 오브젝트(video object)(VOB)라고 불리는 i개(i는 자연수)의 시스템 스트림(SS)으로서 이루어진다. 각각의 비디오 오브젝트(VOB#1 ~ VOB#i)는, 적어도 1개의 비디오 데이터로서 구성되며, 경우에 따라서는 최대 8개의 오디오 데이터, 최대 32개의 부영상 데이터까지가 인터리브되어 구성된다.
각각의 비디오 오브젝트(VOB)는, q개(q는 자연수)의 셀(C#1 ~ C#q)로서 이루어진다. 각각의 셀(C)은 r개(r은 자연수)의 비디오 오브젝트 유닛(VOBU#1 ~ VOBU#r)으로서 형성된다.
각각의 VOBU는, 비디오 인코드의 재생 주기인 GOP의 여러 개와, 이에 상당하는 시간의 오디오 및 부영상으로서 이루어진다. 또한, 각각의 VOBU의 선두에는, 해당 VOBU의 관리 정보인 내비게이션 팩(NV)을 포함한다. 내비게이션 팩(NV)의 구성에 대해서는, 도 7을 참조해서 후술한다.
도 6에, 도 12를 참조하여 후술하는 인코더(EC)에 의해서 인코딩된 시스템 스트림(St35)(도 12), 요컨대 비디오 존(VZ)의 내부 구조를 나타낸다. 동 도면에서, 비디오 인코드 스트림(St15)은, 비디오 인코더(300)에 의해서 인코딩된, 압축된 1차원의 비디오 데이터 열(列)이다. 오디오 인코드 스트림(St19)도, 마찬가지로, 오디오 인코더(700)에 의해서 인코딩된, 스테레오의 좌우 각각의 데이터가 압축 및 통합된 1차원의 오디오 데이터 열이다. 또한, 오디오 데이터로서 서라운드 등의 다중 채널이라도 좋다. 단, 오디오 인코드 스트림(St19)은 1개가 아니고, St19A, St19B, 및 St19C로서 3열의 오디오 데이터 열이 소스로서 입력되어 있다. 이들, 합계 6열의 압축 데이터 열이, 1개의 시스템 스트림(St35)에 인터리브된다.
또한, 부영상 데이터 열인 부영상 인코드 스트림(St17)도, St17A 및 St17B로서 2열의 데이터가 소스로서 입력되어 있다. 이들, 합계 6열의 압축 데이터 열이 1개의 시스템 스트림(St35)에 인터리브된다.
시스템 스트림(St35)은, 2048바이트의 용량을 갖는 논리 섹터 LS#n에 상당하는 바이트 수를 갖는 팩이 1차원으로 배열된 구조를 갖고 있다. 시스템 스트림(St35)의 선두, 요컨대 VOBU의 선두에는, 내비게이션 팩(NV)이라고 하는, 시스템 스트림 내의 데이터 배열 등의 관리 정보를 기록한 스트림 관리 팩이 배치된다.
비디오 인코드 스트림(St15) 및 오디오 인코드 스트림(St19A, St19B 및 St19C)과 부영상 인코드 스트림(St17, St17A 및 St17B) 각각은 시스템 스트림의 팩에 대응하는 바이트 수마다 패킷(packet)화 된다. 이들 패킷은 도면 중에서, V1, V2, V3, V4, …, Aa1, Aa2, …, Ab1, Ab2, …, Ac1, Ac2, …, Spa1, Spa2, …, 및 Spb1, Spb2, …, 로 표현되어 있다. 이들 패킷은, 비디오, 오디오 각각의 데이터 신장용의 디코더의 처리 시간 및 디코더의 버퍼 크기를 고려하여 적절한 순서로 도면 중의 시스템 스트림(St35)으로서 인터리브되어, 패킷의 배열을 이룬다. 예컨대, 본 예에서는 V1, V2, Aa1, Ab1, Ac1, Spa1, Spb1의 순서로 배열되어 있다.
이와 같이, DVD 시스템에서는 기록 재생 용량이 대폭으로 확대되어, 고속의 기록 재생이 실현되며, 신호처리용 LSI의 성능 향상이 도모된 결과, 1개의 동화상 데이터에 복수의 오디오 데이터나 복수의 그래픽 데이터인 부영상 데이터가, 1개의 MPEG 시스템 스트림으로서 인터리브된 형태로 기록되어, 재생 시에 복수의 오디오 데이터나 복수의 부영상 데이터로부터 선택적인 재생을 실행하는 것이 가능하게 된다.
비디오 데이터는 MPEG 방식으로 부호화되어 있고, GOP라는 단위가 압축의 단위로 되어 있으며, GOP 단위는, 표준적으로는 NTSC의 경우, 15프레임으로서 1GOP를 구성하지만, 그 프레임 수는 가변으로 되어 있다. 인터리브된 데이터 상호의 관련 등의 정보를 갖는 관리용의 데이터를 나타내는 스트림 관리 팩도, 비디오 데이터를 기준으로 하는 GOP를 단위로 하는 간격으로, 인터리브되는 것으로 되고, GOP를 구성하는 프레임 수가 변하면, 그 간격도 변동하게 된다. DVD에서는, 그 간격을 재생 시간 길이로서, 0.4초로부터 1.0초의 범위 내로 하여, 그 경계는 GOP 단위로 하고 있다. 만일, 연속하는 복수의 GOP의 재생 시간이 1초 이하이면, 그 복수 GOP의 비디오 데이터에 대하여, 관리용의 데이터 팩이 1개의 스트림 중에 인터리브 되는 것으로 된다.
DVD에서는 이러한 관리용 데이터 팩을 내비게이션 팩(NV)이라고 하고, 이 내비게이션 팩(NV)에서 다음의 내비게이션 팩(NV) 직전의 팩까지를 비디오 오브젝트 유닛(이하 VOBU라고 부른다)이라고 하며, 일반적으로 1개의 장면으로 정의할 수 있는 1개의 연속된 재생 단위를 비디오 오브젝트라고 부르고(이하 VOB라고 부른다), 1개 이상의 VOBU로 구성되는 것으로 된다. 또한, VOB가 복수 개 모인 데이터의 집합을 VOB 세트(이하 VOBS라고 부른다)라고 한다. 이것들은 DVD에서 처음으로 채용된 데이터 형식이다.
이와 같이, 복수의 데이터 열이 인터리브되는 경우, 인터리브된 데이터 상호의 관련을 나타내는 관리용의 데이터를 표시하는 내비게이션 팩(NV)도, 소정의 팩수 단위로 불리는 단위로써 인터리브될 필요가 있다. GOP는 통상 12로부터 15프레임의 재생 시간에 상당하는 약 0.5초의 비디오 데이터를 정리한 단위이고, 이 시간의 재생에 요하는 데이터 패킷 수에 1개의 스트림 관리 패킷이 인터리브된다고 간주한다.
도 7은 시스템 스트림을 구성하는, 인터리브된 비디오 데이터, 오디오 데이터, 부영상 데이터의 팩에 포함되는 스트림 관리 정보를 나타내는 설명도이다. 동 도면에서와 같이, 시스템 스트림 중의 각각의 데이터는, MPEG2에 준거하는 패킷화 및 팩화 된 형식으로 기록된다. 비디오, 오디오 및 부영상 데이터의 패킷 구조는 기본적으로 모두 동일하다. DVD 시스템에서, 1팩은, 전술한 바와 같이, 2048바이트의 용량을 가지고, PES 패킷이라고 불리는 1패킷을 포함하며, 팩 헤더(PKH), 패킷 헤더(PTH) 및 데이터 영역으로서 이루어진다.
팩 헤더(PKH) 중에는, 그 팩이 도 3에서의 스트림 버퍼(2400)로부터 시스템 디코더(2500)에 전송되어야 할 시각, 요컨대 AV 동기 재생을 위한 기준 시각 정보를 나타내는 SCR(System Clock Reference)이 기록되어 있다. MPEG에서는, 이 SCR을 디코더 전체의 기준 클록으로 하는 것을 상정하고 있지만, DVD 등의 디스크 미디어의 경우에는, 개개의 플레이어에서 닫힌 시각 관리로서 좋기 때문에, 별도로 디코더 전체의 시각의 기준으로 되는 클록을 마련하고 있다. 또한, 패킷 헤더(PTH) 중에는, 그 패킷에 포함되는 비디오 데이터 혹은 오디오 데이터가 디코딩된 후에 재생 출력으로서 출력되어야 할 시각을 나타내는 PTS나, 비디오 스트림이 디코딩되어야 할 시각을 나타내는 DTS 등이 기록되어 있는 PTS 및 DTS가, 패킷 내에 디코드 단위인 액세스 유닛의 선두가 있는 경우에 배치되며, PTS는 액세스 유닛의 표시 개시 시각을 가리키고, DTS는 액세스 유닛의 디코드 개시 시각을 나타내고 있다. 또한, PTS와 DTS가 동일 시각의 경우, DTS는 생략된다.
또한, 패킷 헤더(PTH)에는, 비디오 데이터 열을 나타내는 비디오 패킷인지, 프라이빗 패킷(private packet)인지, MPEG 오디오 패킷인지를 나타내는 8비트 길이의 필드인 스트림 ID가 포함되어 있다.
여기서, 프라이빗 패킷이라는 것은 MPEG2의 규격상 그 내용을 자유롭게 정의하기에 좋은 데이터이고, 본 실시형태에서는, 프라이빗 패킷(1)을 사용하여 오디오 데이터(MPEG 오디오 이외) 및 부영상 데이터를 반송하고, 프라이빗 패킷(2)을 사용하여 PCI 패킷 및 DSI 패킷을 반송하고 있다.
프라이빗 패킷(1) 및 프라이빗 패킷(2)은 패킷 헤더, 프라이빗 데이터 영역 및 데이터 영역으로서 이루어진다. 프라이빗 데이터 영역에는, 기록되어 있는 데이터가 오디오 데이터인지 부영상 데이터인지를 나타내는, 8비트 길이의 필드를 갖는 서브스트림 ID가 포함된다. 프라이빗 패킷(2)으로 정의되는 오디오 데이터는, 리니어 PCM 방식, AC-3 방식 각각에 관하여 #0 ~ #7까지 최대 8종류가 설정 가능하다. 또한 부영상 데이터는, #0 ~ #31까지의 최대 32종류가 설정 가능하다.
데이터 영역은, 비디오 데이터의 경우는 MPEG2 형식의 압축 데이터, 오디오 데이터의 경우는 리니어 PCM 방식, AC-3 방식 또는 MPEG 방식의 데이터, 부영상 데이터의 경우는 런-렝스(run length) 부호화에 의해 압축된 그래픽 데이터 등이 기록되는 필드이다.
또한, MPEG2 비디오 데이터는, 그 압축 방법으로서, 고정 비트 전송속도(constant bit rate) 방식(이하「CBR」이라고 한다)과 가변 비트 전송속도(variable bit rate) 방식(이하「VBR」이라고 한다)이 존재한다. 고정 비트 전송속도 방식이라는 것은, 비디오 스트림이 일정 속도로 연속하여 비디오 버퍼에 입력되는 방식이다. 이것에 대하여, 가변 비트 전송속도 방식이라는 것은, 비디오 스트림이 간헐적으로(단속적으로) 비디오 버퍼로 입력되는 방식이고, 이에 따라 불필요한 부호량(量)의 발생을 억제하는 것이 가능하다. DVD에서는 고정 비트 전송속도 방식 및 가변 비트 전송속도 방식이 사용 가능하다. MPEG에서 동화상 데이터는, 가변 길이 부호화 방식으로 압축되기 때문에, GOP의 데이터량이 일정하지 않다. 더욱이, 동화상과 오디오의 디코딩 시간이 상이하고, 광디스크로부터 판독된 동화상 데이터와 오디오 데이터의 시간관계와 디코더로부터 출력되는 동화상 데이터와 오디오 데이터의 시간관계가 일치하지 않게 된다. 이것 때문에, 동화상과 오디오의 시간적인 동기를 잡는 방법을, 나중에 상세히 설명하지만, 우선, 간단히 하기 위해 고정 비트 전송속도 방식을 기초하여 설명을 한다.
도 8에 내비게이션 팩(NV)의 구조를 나타낸다. 내비게이션 팩(NV)은 PCI 패킷과 DSI 패킷으로서 이루어져 있으며, 선두에 팩 헤더(PKH)를 마련하고 있다. PKH에는, 전술한 대로, 그 팩이 도 3에서의 스트림 버퍼(2400)로부터 시스템 디코더(2500)에 전송되어야 할 시각(時刻), 요컨대 AV 동기 재생을 위한 기준시각 정보를 나타내는 SCR이 기록되어 있다.
PCI 패킷은 PCI 정보(PCI_GI)와 비(非) 심리스 멀티앵글 정보(NSML_AGLI)를 갖고 있다.
PCI 정보(PCI_GI)에는, 해당 VOBU에 포함되는 비디오 데이터의 선두 비디오 프레임 표시 시각(VOBU_S_PTM) 및 최종 비디오 프레임 표시 시각(VOBU_E_PTM)을 시스템 클록 정밀도(90KHz)로써 기술한다.
비(非) 심리스 멀티앵글 정보(NSML_AGLI)에는, 앵글을 절환하는 경우의 판독 개시 어드레스를 VOB 선두로부터의 섹터 수로서 기술한다. 이 경우, 앵글 수는 9 이하이기 때문에, 영역으로서 9앵글 분의 어드레스 기술영역(NSML_AGL_C1_DSTA ~ NSML_AGL_C9_DSTA)을 갖는다.
DSI 패킷에는 DSI 정보(DSI_GI), 심리스 재생 정보(SML_PBI) 및 심리스 멀티 앵글 재생 정보(SML_AGL1)를 갖고 있다.
DSI 정보(DSI_GI)로서 해당 VOBU 내의 최종 팩 어드레스(VOBU_EA)를 VOBU 선두로부터의 섹터 수로서 기술한다.
심리스 재생에 관해서는 후술하지만, 분기 혹은 결합하는 타이틀을 심리스로 재생하기 위해서, 연속 판독 단위를 ILVU(Interleaved Unit)로 하여, 시스템 스트림 레벨로써 인터리브(다중화)해야 할 필요가 있다. 복수의 시스템 스트림이 ILVU를 최소 단위로 하여 인터리브 처리되어 있는 구간을 인터리브 블록이라고 정의한다.
이와 같이, ILVU를 최소 단위로 하여 인터리브된 스트림을 심리스로 재생하기 위해서, 심리스 재생 정보(SML_PBI)를 기술한다. 심리스 재생 정보(SML_PBI)에는, 해당 VOBU가 인터리브 블록이 되었는지를 나타내는 인터리브 유닛 플래그(ILVU_flag)를 기술한다. 이 플래그는 인터리브 영역에(후술) 존재하는지를 나타내는 것이며, 인터리브 영역에 존재하는 경우 1을 설정한다. 그렇지 않은 경우에는, 플래그 값 0을 설정한다.
또한, 해당 VOBU가 인터리브 영역에 존재하는 경우, 해당 VOBU가 ILVU의 최종 VOBU인지를 나타내는 유닛 엔드 플래그(Unit End Flag)를 기술한다. ILVU는 연속 판독 단위이기 때문에, 현재 판독되고 있는 VOBU가 ILVU의 최후의 VOBU라면 “1”을 설정한다. 그렇지 않은 경우에는, 플래그 값 0을 설정한다.
해당 VOBU가 인터리브 영역에 존재하는 경우, 해당 VOBU가 속하는 ILVU의 최종 팩의 어드레스를 나타내는 ILVU 최종 팩 어드레스(ILVU_EA)를 기술한다. 여기서 어드레스로서, 해당 VOBU의 NV로부터의 섹터 수로써 기술한다. 또한, 해당 VOBU가 인터리브 영역에 존재하는 경우, 다음 ILVU의 개시 어드레스(NT_ILVU_SA)를 기술한다. 여기서 어드레스로서, 해당 VOBU의 NV로부터의 섹터 수로써 기술한다.
또한, 2개의 시스템 스트림을 심리스로 접속하는 경우에, 특히 접속 전과 접속 후의 오디오가 연속하지 않는 경우(상이한 오디오의 경우 등), 접속 후의 비디오와 오디오의 동기를 잡기 위해서 오디오를 일시 정지(pause)할 필요가 있다. 예컨대, NTSC의 경우, 비디오의 프레임 주기는 약 33.33msec이고, 오디오 AC3의 프레임 주기는 32msec이다.
이 때문에, 오디오를 정지하는 시간 및 기간 정보를 나타내는 오디오 재생 정지 시각 1(VOBU_A_STP_PTM1), 오디오 재생 정지 시각 2(VOBU_A_STP_PTM2), 오디오 재생 정지 기간 1(VOB_A_GAP_LEN1), 오디오 재생 정지 기간 2(VOB_A_GAP_LEN2)를 기술한다. 이 때, 시간 정보는 시스템 클록 정밀도(90KHz)로써 기술된다.
또한, 심리스 멀티앵글 재생 정보(SML_AGL1)로서, 앵글을 절환한 경우의 판독 개시 어드레스를 기술한다. 이 필드는 심리스 멀티앵글의 경우에 유효한 필드이다. 이 어드레스는 해당 VOBU의 NV로부터의 섹터 수로써 기술된다. 또한, 앵글 수는 9 이하이기 때문에, 영역으로서 9앵글 분의 어드레스 기술 영역: (SML_AGL_C1_DSTA ~ SML_AGL_C9_STA)을 갖는다.
<3.2> DVD 인코더
도 12에, 본 발명에 관한 멀티미디어 비트 스트림 오소링 시스템을 상술한 DVD 시스템에 적용한 경우의, 오소링 인코더(ECD)의 하나의 실시형태를 나타낸다. DVD 시스템에 적용한 오소링 인코더(ECD)(이후, DVD 인코더라고 한다)는, 도 2에 나타낸 오소링 인코더(EC)에, 대단히 유사한 구성으로 되어 있다.
DVD 오소링 인코더(ECD)는, 기본적으로는, 오소링 인코더(EC)의 비디오 존 포매터(1300)가, VOB 버퍼(1000)와 포매터(1100)로서 변경된 구조를 가지고 있다. 말할 필요도 없이, 본 발명의 인코더에 의해서 인코딩된 비트 스트림은, DVD 매체(M)에 기록된다. 이하에서, DVD 오소링 인코더(ECD)의 동작을 오소링 인코더(EC)와 비교하면서 설명한다. 한편, 도 12에 나타낸 오소링 인코더(ECD)에서는, 도 2에 나타낸 오소링 인코더(EC)와 상이하고, 인코드 시스템 제어부(200)로부터 편집 제어 지시 데이터(St7 ‘)가 편집 정보 작성부(100)에 피드백 되지 않지만, 본질적인 문제가 아니기 때문에 설명을 생략한다.
DVD 오소링 인코더(ECD)에서도, 오소링 인코더(EC)와 마찬가지로, 편집 정보 작성부(100)로부터 입력된 사용자의 편집지시 내용을 나타내는 시나리오 데이터(St7)에 따라서, 인코드 시스템 제어부(200)가, 각각의 제어 신호(St9, St11, St13, St21, St23, St25, St33 및 St39)를 생성하여, 비디오 인코더(300), 부영상 인코더(500), 및 오디오 인코더(700)를 제어한다. 한편, DVD 시스템에서의 편집지시 내용이라는 것은, 전술한 오소링 시스템에서의 편집지시 내용과 마찬가지로, 복수의 타이틀 내용을 포함하는 각각의 소스 데이터의 전부, 혹은 각각에 대하여, 소정 시간마다 각각의 소스 데이터의 내용을 하나 이상 선택하여, 그것들의 선택된 내용을 소정의 방법으로써 접속 재생하도록 한 정보를 포함하는 동시에, 또한, 이하의 정보를 포함한다. 요컨대, 멀티 타이틀 소스 스트림을, 소정 시간 단위마다 분할한 편집단위에 포함되는 스트림 수, 각각의 스트림 내의 오디오 수나 부영상 수 및 그 표시기간 등의 데이터, 퍼렌틀 혹은 멀티앵글 등 복수 스트림으로부터 선택할지의 여부가 설정된 멀티앵글 구간에서의 장면 사이의 절환 접속 방법 등의 정보를 포함한다.
또한, DVD 시스템에서, 시나리오 데이터(St7)에는 미디어 소스 스트림을 인코딩하기 위해서 필요한, VOB 단위에서의 제어 내용, 요컨대 멀티앵글인지, 퍼렌틀 제어를 가능하게 하는 멀티레이티드 타이틀의 생성인지, 후술하는 멀티앵글이나 퍼렌틀 제어의 경우의 인터리브와 디스크 용량을 고려한 각각의 스트림의 인코딩 시의 비트 전송속도, 각각의 제어의 개시시간과 종료시간, 전후의 스트림과 심리스 접속인지의 여부에 대한 내용이 포함된다. 인코드 시스템 제어부(200)는 시나리오 데이터(St7)로부터 정보를 추출하여, 인코드 제어에 필요한 인코드 정보 테이블 및 인코드 파라미터를 생성한다. 인코드 정보 테이블 및 인코드 파라미터에 대해서는 나중에 도 13, 도 14, 및 도 15를 참조하여 상술한다. 또한, 이들 인코드 정보 테이블 및 인코드 파라미터는, 오소링 인코드 파라미터를 DVD 심리스 오소링에서 생성한 경우의 예이다.
시스템 스트림 인코드 파라미터 데이터 및 시스템 인코드 개시 종료 타이밍의 신호(St33)에는 상술한 정보를 DVD 시스템에 적용하여 VOB 생성 정보를 포함한다. VOB 생성 정보로서, 전후의 접속 조건, 오디오 수, 오디오의 인코드 정보, 오디오 ID, 부영상 수, 부영상 ID, 비디오 표시를 개시하는 시각 정보(VPTS), 오디오 재생을 개시하는 시각 정보(APTS) 등이 있다. 또한, 멀티미디어 비트 스트림(MBS)의 포맷 파라미터 데이터 및 포맷 개시 종료 타이밍의 신호(St39)는, 재생 제어 정보 및 인터리브 정보를 포함한다.
비디오 인코더(300)는, 비디오 인코드를 위한 인코드 파라미터 신호 및 인코드 개시 종료 타이밍의 신호(St9)에 따라서, 비디오 스트림(St1)의 소정의 부분을 인코딩하여, ISO13818에 규정되는 MPEG2 비디오 규격에 준하는 기본 스트림을 생성한다. 그리고 이 기본 스트림을 비디오 인코드 스트림(St15)으로서 비디오 스트림 버퍼(400)에 출력한다.
여기서, 비디오 인코더(300)에서 ISO13818에 규정되는 MPEG2 비디오 규격에 준하는 기본 스트림을 생성하지만, 비디오 인코드 파라미터 데이터를 포함하는 신호(St9)를 기초로, 인코드 파라미터로서, 인코드 개시 종료 타이밍, 비트 전송속도, 인코드 개시 종료 시에 인코드 조건, 소재의 종류로서 NTSC 신호 또는 PAL 신호 혹은 텔레시니 소재인지 등의 파라미터 및 개방 GOP 혹은 폐쇄 GOP의 인코드 모드의 설정이 인코드 파라미터로서 각각 입력된다.
MPEG2의 부호화 방식은, 기본적으로 프레임간의 상관을 이용하는 부호화이다. 요컨대, 부호화 대상 프레임의 전후의 프레임을 참조하여 부호화를 실행한다. 그러나, 에러 전파 및 스트림 도중으로부터의 액세스성의 면에서, 다른 프레임을 참조하지 않은(인트라 프레임) 프레임을 삽입한다. 이 인트라 프레임을 적어도 1프레임 갖는 부호화 처리 단위를 GOP라고 부른다.
이 GOP에서, 완전히 해당 GOP 내에서 부호화가 닫히고 있는 GOP가 폐쇄 GOP이고, 전의 GOP 내의 프레임을 참조하는 프레임이 해당 GOP 내에 존재하는 경우 해당 GOP를 개방 GOP라고 부른다.
따라서, 폐쇄 GOP를 재생하는 경우는, 해당 GOP만으로 재생할 수 있지만, 개방 GOP를 재생하는 경우는, 일반적으로 1개 앞의 GOP가 필요하다.
또한, GOP의 단위는, 액세스 단위로서 사용하는 경우가 많다. 예를 들어, 타이틀의 도중으로부터 재생하는 경우의 재생 개시점, 영상의 절환점, 혹은 고속 감기 등의 특수 재생 시에는, GOP 내의 프레임내 부호화 프레임인 프레임만을 GOP 단위로 재생함으로써, 고속 재생을 실현한다.
부영상 인코더(500)는, 부영상 스트림 인코드 신호(St11)에 따라서, 부영상 스트림(St3)의 소정의 부분을 인코딩하여, 비트 맵(bit map) 데이터의 가변 길이 부호화 데이터를 생성한다. 그리고, 이 가변 길이 부호화 데이터를 부영상 인코드 스트림(St17)으로서, 부영상 스트림 버퍼(600)에 출력한다.
오디오 인코더(700)는, 오디오 인코드 신호(St13)에 따라서, 오디오 스트림(St5)의 소정의 부분을 인코딩하여, 오디오 인코드 데이터를 생성한다. 이 오디오 인코드 데이터로서는, ISO11172에 규정되는 MPEG1 오디오 규격 및 ISO13818에 규정되는 MPEG2 오디오 규격에 근거하는 데이터, 또한, AC-3 오디오 데이터 및 PCM(LPCM) 데이터 등이 있다. 이들 오디오 데이터를 인코딩하는 방법 및 장치는 공지되어 있다.
비디오 스트림 버퍼(400)는, 비디오 인코더(300)에 접속되어 있으며, 비디오 인코더(300)로부터 출력되는 비디오 인코드 스트림(St15)을 보존한다. 비디오 스트림 버퍼(400)는, 또한, 인코드 시스템 제어부(200)에 접속되어, 타이밍 신호(St21)의 입력에 따라서, 보존하고 있는 비디오 인코드 스트림(St15)을, 타이밍 비디오 인코드 스트림(St27)으로서 출력한다.
마찬가지로, 부영상 스트림 버퍼(600)는, 부영상 인코더(500)에 접속되어 있으며, 부영상 인코더(500)로부터 출력되는 부영상 인코드 스트림(St17)을 보존한다. 또한, 부영상 스트림 버퍼(600)는 인코드 시스템 제어부(200)에 접속되어, 타이밍 신호(St23)의 입력에 따라서, 보존하고 있는 부영상 인코드 스트림(St17)을, 타이밍 부영상 인코드 스트림(St29)으로서 출력한다.
또한, 오디오 스트림 버퍼(800)는 오디오 인코더(700)에 접속되어 있으며, 오디오 인코더(700)로부터 출력되는 오디오 인코드 스트림(St19)을 보존한다. 또한, 오디오 스트림 버퍼(800)는 인코드 시스템 제어부(200)에 접속되어, 타이밍 신호(St25)의 입력에 따라서, 보존하고 있는 오디오 인코드 스트림(St19)을 타이밍 오디오 인코드 스트림(St31)으로서 출력한다.
시스템 인코더(900)는 비디오 스트림 버퍼(400), 부영상 스트림 버퍼(600), 및 오디오 스트림 버퍼(800)에 접속되어 있으며, 타이밍 비디오 인코드 스트림(St27), 타이밍 부영상 인코드 스트림(St29) 및 타이밍 오디오 인코드 스트림(St31)이 입력된다. 또한, 시스템 인코더(900)는 인코드 시스템 제어부(200)에 접속되어 있으며, 시스템 인코드를 위한 인코드 파라미터 데이터를 포함하는 St33이 입력된다.
시스템 인코더(900)는 인코드 파라미터 데이터 및 인코드 개시 종료 타이밍 신호(St33)에 따라서, 각각의 타이밍 스트림(St27, St29, St31)에 다중화(멀티플렉스) 처리를 실시하여, 최소 타이틀 편집단위(VOBs)(St35)를 생성한다.
VOB 버퍼(1000)는 시스템 인코더(900)에서 생성된 VOB를 일시 저장하는 버퍼 영역이고, 포매터(1100)에서는 St39에 따라서 VOB 버퍼(1100)로부터 타이밍이 필요한 VOB를 판독하여 1비디오 존(VZ)을 생성한다. 또한, 동 포매터(1100)에서는 파일 시스템(VFS)을 부가하여 St43을 생성한다.
이 사용자의 요망 시나리오의 내용에 편집된 스트림(St43)은, 기록부(1200)에 전송된다. 기록부(1200)는 편집 멀티미디어 비트 스트림(MBS)을 기록 매체(M)에 상응한 형식의 데이터(St43)로 가공하여, 기록 매체(M)에 기록한다.
<3.3> DVD 디코더
<3.3.1> 다중장면
도 9를 이용하여, 본 발명에서의 다중장면 제어의 개념을 설명한다. 이미, 상술한 바와 같이, 각각의 타이틀간의 공통 데이터로서 이루어지는 기본 장면 구간과, 각각의 요구에 의거한 상이한 장면 군(群)으로서 이루어지는 다중장면 구간으로 구성된다. 동 도면에서, 장면1, 장면5, 및 장면8이 공통 장면이다. 공통 장면1과 장면5 사이의 앵글 장면 및 공통 장면5와 장면8 사이의 퍼렌틀 장면이 다중장면 구간이다. 멀티앵글 구간에서는, 상이한 앵글, 요컨대 앵글1, 앵글2, 및 앵글3으로부터 촬영된 장면 중 어느 것을, 재생 중에 동적으로 선택 재생할 수 있다. 퍼렌틀 구간에서는, 상이한 내용의 데이터에 대응하는 장면6 및 장면7 중 어느 것을 미리 정적으로 선택 재생할 수 있다.
이러한 다중장면 구간의 어느 장면을 선택하여 재생하는가의 시나리오 내용을, 사용자는 시나리오 선택부(2100)로써 입력하여 시나리오 선택 데이터(St51)로서 생성한다. 도면에서, 시나리오1에서는, 임의의 앵글 장면을 자유롭게 선택하고, 퍼렌틀 구간에서는 미리 선택한 장면6을 재생하는 것을 나타내고 있다. 마찬가지로, 시나리오2에서 앵글 구간에서는 자유롭게 장면을 선택할 수 있고, 퍼렌틀 구간에서는 장면7이 미리 선택되어 있는 것을 나타내고 있다.
이하에서, 도 9에서 나타낸 다중장면을 DVD의 데이터 구조를 이용한 경우의 PGC 정보(VTS_PGCI)에 관해서, 도 16 및 도 17을 참조하여 설명한다.
도 16에는, 도 9에 나타낸 사용자 지시의 시나리오를 도 5의 DVD 데이터 구조 내의 비디오 타이틀 세트의 내부 구조를 나타내는 VTSI 데이터 구조로서 기술한 경우에 관해서 나타낸다. 도면에서, 도 9의 시나리오1, 시나리오2는, 도 5의 VTSI 중의 프로그램 체인 정보(VTS_PGCIT) 내의 2개 프로그램 체인 VTS_PGCI#1과 VTS_PGCI#2로서 기술된다. 즉, 시나리오1을 기술하는 VTS_PGCI#1은, 장면1에 상당하는 셀 재생 정보 C_PBI#1, 멀티앵글 장면에 상당하는 멀티앵글 셀 블록 내의 셀 재생 정보 C_PBI#2, 셀 재생 정보 C_PBI#3, 셀 재생 정보 C_PBI#4, 장면5에 상당하는 셀 재생 정보 C_PBI#5, 장면6에 상당하는 셀 재생 정보 C_PBI#6, 장면8에 상당하는 C_PBI#7로서 이루어진다.
또한, 시나리오2를 기술하는 VTS_PGC#2는 장면1에 상당하는 셀 재생 정보 C_PBI#1, 멀티앵글 장면에 상당하는 멀티앵글 셀 블록 내의 셀 재생 정보 C_PBI#2, 셀 재생 정보 C_PBI#3, 셀 재생 정보 C_PBI#4, 장면5에 상당하는 셀 재생 정보 C_PBI#5, 장면7에 상당하는 셀 재생 정보 C_PBI#6, 장면8에 상당하는 C_PBI#7로서 이루어진다. DVD 데이터 구조에서는, 시나리오 1개의 재생 제어의 단위인 장면을 셀이라고 하는 DVD 데이터 구조상의 단위로 치환하여 기술하고, 사용자가 지시하는 시나리오를 DVD 상에서 실현하고 있다.
도 17에서는, 도 9에 나타낸 사용자 지시의 시나리오를 도 5의 DVD 데이터 구조 내의 비디오 타이틀 세트용의 멀티미디어 비트 스트림인 VOB 데이터 구조 VTSTT_VOBS로서 기술한 경우에 대하여 나타낸다.
도면에서, 도 9의 시나리오1과 시나리오2의 2개의 시나리오는, 1개의 타이틀용 VOB 데이터를 공통으로 사용하는 것으로 된다. 각각의 시나리오로서 공유하는 단독의 장면은 장면1에 상당하는 VOB#1, 장면5에 상당하는 VOB#5, 장면8에 상당하는 VOB#8은, 단독의 VOB로서, 인터리브 블록이 아닌 부분, 즉 연속 블록으로 배치된다.
시나리오1과 시나리오2에서 공유하는 멀티앵글 장면에서, 각각 앵글1은 VOB#2, 앵글2는 VOB#3, 앵글3은 VOB#4로 구성, 요컨대 1앵글을 1VOB로서 구성하고, 또한 각각의 앵글간의 절환과 각각의 앵글의 심리스 재생을 위해, 인터리브 블록으로 한다.
또한, 시나리오1과 시나리오2에서 고유한 장면인 장면6과 장면7은, 각각의 장면의 심리스 재생은 물론, 전후의 공통 장면과 심리스로 접속 재생하기 위해서, 인터리브 블록으로 한다.
이상과 같이, 도 9에서 나타난 사용자 지시의 시나리오는, DVD 데이터 구조에서, 도 16에 나타난 비디오 타이틀 세트의 재생 제어 정보와 도 17에 나타난 타이틀 재생용 VOB 데이터 구조로써 실현될 수 있다.
<3.3.2> 심리스
상술한 DVD 시스템의 데이터 구조에 관련하여 기술한 심리스 재생에 관해서 설명한다. 심리스 재생이라는 것은, 공통 장면 구간 끼리에서, 공통 장면 구간과 다중장면 구간으로서, 및 다중장면 구간 끼리로서, 영상, 음성, 부영상 등의 멀티미디어 데이터를 접속하여 재생할 때에, 각각의 데이터 및 정보를 중단하는 일없이 재생하는 것이다. 이 데이터 및 정보 재생의 중단 요인으로서는, 하드웨어에 관련된 것으로서, 디코더에서 소스 데이터 입력 속도와, 입력된 소스 데이터를 디코딩하는 속도의 밸런스가 깨지는, 소위 디코더의 언더플로우라고 불리는 것이 있다.
또한, 재생되는 데이터의 특질에 관한 것으로서, 재생 데이터가 음성과 같이, 그 내용 혹은 정보를 사용자가 이해하기 위해서는, 일정 시간 단위 이상의 연속 재생을 요구하는 데이터의 재생에 관해서, 그 요구되는 연속 재생 시간을 확보할 수 없는 경우에 정보의 연속성이 상실되는 것이 있다. 이러한 정보의 연속성을 확보하여 재생하는 것을 연속 정보 재생, 또한 심리스 정보 재생이라고 부른다. 또한, 정보의 연속성을 확보할 수 없는 재생을 비연속 정보 재생이라고 부르고, 또한 비(非) 심리스 정보 재생이라고 부른다. 또한, 말할 필요도 없이, 연속 정보 재생과 비연속 정보 재생은 각각 심리스 및 비 심리스 재생이다.
상술한 바와 같이, 심리스 재생에는, 버퍼의 언더플로우 등에 의해서 물리적으로 데이터 재생에 공백, 혹은 중단의 발생을 방지하는 심리스 데이터 재생과, 데이터 재생 자체에는 중단은 없지만, 사용자가 재생 데이터로부터 정보를 인식할 때에 정보의 중단을 느끼는 것을 방지하는 심리스 정보 재생으로 정의한다.
<3.3.3> 심리스의 상세
또한, 이와 같이 심리스 재생을 가능하게 하는 구체적인 방법에 대해서는, 도 10 및 도 11을 참조하여 후에 상세히 설명한다.
<3.4.1> 인터리브
상술한 DVD 데이터의 시스템 스트림을 오소링 인코더(EC)를 이용하여, DVD 매체 상의 영화와 같은 타이틀을 기록한다. 그러나, 동일한 영화를 복수의 상이한 문화권 혹은 나라에서도 이용할 수 있는 것과 같은 형태로서 제공하기 위해서는, 대사를 각 나라의 언어마다로 기록하는 것은 당연하고, 더욱이 각 문화권의 윤리적 요구에 응해서 내용을 편집하여 기록할 필요가 있다. 이러한 경우, 원래의 타이틀로부터 편집된 복수의 타이틀을 1장의 매체에 기록하기 위해서는, DVD라는 대용량 시스템에서도, 비트 전송속도를 감소시켜야 하므로, 고화질이라는 요구가 만족되지 않는다. 그래서, 공통 부분을 복수의 타이틀로서 공유하고, 상이한 부분만을 각각의 타이틀마다에 기록하는 방법을 취한다. 이에 따라, 비트 전송속도를 떨어뜨리지 않고, 1장의 광디스크에 국가별 혹은 문화권별의 복수의 타이틀을 기록할 수 있다.
1장의 광디스크에 기록되는 타이틀은, 도 9에 나타낸 바와 같이, 퍼렌틀 로크 제어나 멀티앵글 제어를 가능하게 하기 위해서, 공통 부분(장면)과 비(非) 공통 부분(장면)을 갖는 다중장면 구간을 갖는다.
퍼렌틀 로크 제어의 경우는, 1개의 타이틀 중에, 성적 장면, 폭력적 장면 등의 아이에게 해당하지 않는 소위 성인용 장면이 포함되어 있는 경우, 이 타이틀은 공통의 장면과, 성인용 장면과, 미성년용 장면으로서 구성된다. 이러한 타이틀 스트림은 성인용 장면과 비(非) 성인용 장면을 공통 장면 사이에 마련한 다중장면 구간으로서 배치하여 실현한다.
또한, 멀티앵글 제어를 통상의 단일 앵글 타이틀 내에 실현하는 경우에는, 각각 소정의 카메라 앵글로써 대상물을 촬영하여 얻어지는 복수의 멀티미디어 장면을 다중장면 구간으로, 공통 장면 사이에 배치함으로써 실현한다. 여기서, 각각의 장면은 상이한 앵글로써 촬영된 장면의 예를 설명한다. 동일한 앵글이지만, 상이한 시간에 촬영된 장면이더라도 좋고, 또한 컴퓨터 그래픽 등의 데이터라도 좋다.
복수의 타이틀로 데이터를 공유하면, 필연적으로 데이터의 공유부분으로부터 비 공유부분으로의 광빔(LS)을 이동시키기 위해서, 광학 픽업을 광디스크(RC1) 상의 상이한 위치로 이동시키게 된다. 이 이동에 필요한 시간이 원인으로 되어 소리나 영상을 도중에서 끊지 않고 재생하는 것, 즉 심리스 재생이 어렵다는 문제가 발생한다. 이러한 문제점을 해결하기 위해서는, 이론적으로는 최악의 액세스 시간에 상당하는 시간 분의 트랙 버퍼(스트림 버퍼(2400))를 구비하면 된다. 일반적으로, 광디스크에 기록되어 있는 데이터는 광 픽업에 의해 판독되어, 소정의 신호 처리가 실행된 후에, 데이터로서 트랙 버퍼에 일단 축적된다. 축적된 데이터는, 그 후 디코딩되어, 비디오 데이터 혹은 오디오 데이터로서 재생된다.
<3.4.2> 인터리브의 정의
상술한 바와 같은, 어떤 장면을 컷(cut)시키는 것이나, 복수의 장면에서 선택을 가능하게 하는 데에는, 기록 매체의 트랙 상에 각각의 장면에 속하는 데이터 단위로 서로 연속된 배치로서 기록되기 때문에, 공통 장면 데이터와 선택 장면 데이터의 사이에 비 선택 장면의 데이터가 끼어들어 기록되는 사태가 필연적으로 발생한다. 이러한 경우, 기록되어 있는 순서로 데이터를 판독하면, 선택한 장면의 데이터에 액세스하여 디코딩하기 전에, 비 선택 장면의 데이터에 액세스하지 않을 수 없기 때문에, 선택한 장면에의 심리스 접속이 곤란하다. 그렇지만, DVD 시스템에서는, 그 기록 매체에 대한 뛰어난 랜덤 액세스 성능을 살리고, 이러한 복수 장면 사이에서의 심리스 접속이 가능하다.
요컨대, 각각의 장면에 속하는 데이터를, 소정의 데이터량을 갖는 복수의 단위로 분할하고, 이것들의 상이한 장면이 속하는 복수의 분할 데이터 단위를, 서로 소정의 순서로 배치함으로써, 점프 성능 범위에 배치하는 것으로, 각각 선택된 장면이 속하는 데이터를 분할 단위마다에, 단속적으로 액세스하여 디코딩함으로써, 그 선택된 장면을 데이터가 도중에서 끊기는 것 없게 재생할 수 있다. 요컨대, 심리스 데이터 재생이 보증된다.
<3.4.3> 인터리브 블록, 유닛 구조
도 11 및 도 18을 참조하여, 심리스 데이터 재생을 가능하게 하는 인터리브 방식을 설명한다. 도 11에서는, 1개의 VOB(VOB-A)로부터 복수의 VOB(VOB-B, VOB-D, VOB-C)로 분기 재생하고, 그 후 1개의 VOB(VOB-E)에 결합하는 경우를 나타내고 있다. 도 18에서는, 이들의 데이터를 디스크 상의 트랙(TR)에 실제로 배치한 경우를 나타내고 있다.
도 18에서의, VOB-A와 VOB-E는 재생의 개시점과 종료점이 단독인 비디오 오브젝트이고, 원칙적으로는 연속 영역에 배치한다. 또한, 도 11에 나타낸 바와 같이, VOB-B, VOB-C, VOB-D에서는, 재생의 개시점, 종료점을 일치시켜서, 인터리브 처리를 한다. 그리고, 그 인터리브 처리된 영역을 디스크 상의 연속 영역에 인터리브 영역으로서 배치한다. 또한, 상기 연속 영역과 인터리브 영역을 재생의 순서로, 요컨대 트랙 패스(Dr)의 방향으로 배치하고 있다. 복수의 VOB, 즉 VOBS를 트랙(TR)상에 배치한 도면을 도 18에 나타낸다.
도 18에서는, 데이터가 연속적으로 배치된 데이터 영역을 블록으로 하고, 그 블록은 전술한 개시점과 종료점이 단독으로 완결하고 있는 VOB를 연속하여 배치하고 있는 연속 블록과, 개시점과 종료점을 일치시켜서 그 복수의 VOB를 인터리브한 인터리브 블록의 2종류이다. 그것들의 블록이 재생 순서로, 도 34에 나타낸 바와 같이, 블록1, 블록2, 블록3, …, 블록7로 배치되어 있는 구조를 갖는다.
도 34에서, VTSTT_VOBS는 블록1, 2, 3, 4, 5, 6 및 7로서 구성되어 있다. 블록1에는, VOB1이 단독으로 배치되어 있다. 마찬가지로, 블록2, 3, 5 및 7에는, 각각 VOB2, 3, 6 및 10이 단독으로 배치되어 있다. 요컨대, 이것들의 블록2, 3, 5 및 7은 연속 블록이다.
한편, 블록4에는, VOB4와 VOB5가 인터리브되어서 배치되어 있다. 마찬가지로, 블록6에는, VOB7, VOB8 및 VOB9의 3개의 VOB가 인터리브되어서 배치되어 있다. 요컨대, 이것들의 블록4 및 6은, 인터리브 블록이다.
도 35에 연속 블록 내의 데이터 구조를 나타낸다. 동 도면에서, VOBS에 VOB-i, VOB-j가 연속 블록으로서 배치되어 있다. 연속 블록 내의 VOB-i 및 VOB-j는, 도 5를 참조하여 설명한 바와 같이, 또한 논리적인 재생단위인 셀로 분할되어 있다. 도면에서는 VOB-i 및 VOB-j의 각각이, 3개의 셀 CELL#1, CELL#2, CELL#3으로서 구성되어 있는 것을 나타내고 있다. 셀은 1개 이상의 VOBU로서 구성되어 있으며, VOBU의 단위로서 그 경계가 정의되어 있다. 셀은 DVD의 재생 제어 정보인 프로그램 체인(이하 PGC라고 부른다)에는, 도 5에 나타낸 바와 같이, 그 위치정보가 기술된다. 요컨대, 셀 개시의 VOBU와 종료의 VOBU의 어드레스가 기술되어 있다. 도 35에 명시되어 있는 바와 같이, 연속 블록은 연속적으로 재생되도록 VOB도 그 속에서 정의되는 셀도 연속 영역에 기록된다. 그 때문에, 연속 블록의 재생은 문제가 없다.
이어서, 도 36에 인터리브 블록 내의 데이터 구조를 나타낸다. 인터리브 블록에서는, 각각의 VOB가 인터리브 유닛 ILVU 단위로 분할되고, 각각의 VOB에 속하는 인터리브 유닛이 교호로 배치된다. 그리고, 그 인터리브 유닛이라는 것은 독립하여 셀 경계가 정의된다. 동 도면에서, VOB-k는 4개의 인터리브 유닛(ILVUk1, ILVUk2, ILVUk3 및 ILVUk4)으로 분할되는 동시에, 2개의 셀(CELL#1k 및 CELL#2k)이 정의되어 있다. 마찬가지로, VOB-m은 ILVUm1, ILVUm2, ILVUm3 및 ILVUm4로 분할되는 동시에, 2개의 셀(CELL#1m, 및 CELL#2m)이 정의되어 있다. 요컨대, 인터리브 유닛(ILVU)에는 비디오 데이터와 오디오 데이터가 포함되어 있다.
도 36의 예에서는, 2개의 상이한 VOB-k와 VOB-m 각각의 인터리브 유닛 ILVUk1, ILVUk2, ILVUk3 및 ILVUk4과 ILVUm1, ILVUm2, ILVUm3 및 ILVUm4이 인터리브 블록 내에 교호로 배치되어 있다. 2개의 VOB의 각각의 인터리브 유닛(ILVU)을 이러한 배열로 인터리브함으로써, 단독의 장면으로부터 복수 장면의 1개로 분기에 더하여, 그것들의 복수 장면의 1개로부터 단독의 장면으로의 심리스 재생이 실현될 수 있다. 이와 같이 인터리브함으로써, 많은 경우의 분기 결합이 있는 장면에서의 심리스 재생 가능한 접속을 실행할 수 있다.
<3.5.1> 다중장면
여기서, 본 발명을 기초하여, 다중장면 제어의 개념을 설명하는 동시에 다중장면 구간에 관해서 설명한다.
상이한 앵글로 촬영된 장면으로서 구성되는 예를 설명한다. 그러나, 다중장면의 각각의 장면은, 동일한 앵글이지만, 상이한 시간에 촬영된 장면이더라도 좋고, 또한 컴퓨터 그래픽 등의 데이터이더라도 좋다. 환언하면, 멀티앵글 장면 구간은, 다중장면 구간이다.
<3.5.2> 퍼렌틀
도 4를 참조하여, 퍼렌틀 로크 및 디렉터스 컷(director's cut) 등의 복수 타이틀의 개념을 설명한다.
도 4에 퍼렌틀 로크에 근거하는 멀티 레이티드 타이틀 스트림의 일례를 나타낸다. 1개의 타이틀 중에, 성적 장면, 폭력적 장면 등의 아이에게 상응하지 않는 소위 성인용 장면이 포함되어 있는 경우, 이 타이틀은 공통의 시스템 스트림 SSa, SSb 및 SSe와, 성인용 장면을 포함하는 성인용 시스템 스트림 SSc와 미성년용 장면만을 포함하는 비 성인용 시스템 스트림 SSd로서 구성된다. 이러한 타이틀 스트림은, 성인용 시스템 스트림 SSc와 비 성인용 시스템 스트림 SSd를 공통 시스템 스트림 SSb와 SSe의 사이에 마련한 다중장면 구간에 다중장면 시스템 스트림으로서 배치한다.
상술한 바와 같이, 구성된 타이틀 스트림의 프로그램 체인(PGC)에 기술되는 시스템 스트림과 각각의 타이틀과의 관계를 설명한다. 성인용 타이틀의 프로그램 체인(PGC1)에는, 공통의 시스템 스트림(SSa, SSb), 성인용 시스템 스트림(SSc) 및 공통 시스템 스트림(SSe)이 순서대로 기술된다. 미성년용 타이틀의 프로그램 체인(PGC2)에는, 공통의 시스템 스트림(SSa, SSb), 미성년용 시스템 스트림(SSd) 및 공통 시스템 스트림(SSe)이 순서대로 기술된다.
이와 같이, 성인용 시스템 스트림(SSc)과 미성년용 시스템 스트림(SSd)을 다중장면으로 배열함으로써, 각각의 PGC의 기술에 근거하여, 상술한 디코딩 방법으로써 공통의 시스템 스트림(SSa 및 SSb)을 재생한 후, 다중장면 구간에서 성인용 SSc를 선택하여 재생하고, 또한, 공통의 시스템 스트림(SSe)을 재생함으로써 성인용 내용을 갖는 타이틀을 재생할 수 있다. 또한, 한편, 다중장면 구간에서 미성년용 시스템 스트림(SSd)을 선택하여 재생함으로써, 성인용 장면을 포함하지 않은 미성년용 타이틀을 재생할 수 있다. 이와 같이, 타이틀 스트림에, 복수의 대체 장면으로서 이루어지는 다중장면 구간을 준비하고, 사전에 해당 멀티구간의 장면 중에서 재생하는 장면을 선택하여 두고, 그 선택 내용에 따라서, 기본적으로 동일한 타이틀 장면으로부터 상이한 장면을 갖는 복수의 타이틀을 생성하는 방법을 퍼렌틀 로크(parental lock)라고 한다.
또한, 퍼렌틀 로크는 미성년자 보호라고 하는 관점으로부터의 요구에 따라서 퍼렌틀 로크라고 불리지만, 시스템 스트림 처리의 관점에서는, 상술한 바와 같이, 다중장면 구간에서의 특정한 장면을 사용자가 미리 선택함으로써 정적으로 상이한 타이틀 스트림을 생성하는 기술이다. 한편, 멀티앵글은, 타이틀 재생 중에, 사용자가 수시로 또한 자유롭게, 다중장면 구간의 장면을 선택함으로써, 동일한 타이틀의 내용을 동적으로 변화시키는 기술이다.
또한, 퍼렌틀 로크 기술을 이용하여, 소위 디렉터스 컷이라고 불리는 타이틀 스트림 편집도 가능하다. 디렉터스 컷이라는 것은, 영화 등에서 재생시간이 긴 타이틀을 비행기 내에 공급한 경우에는, 극장에서의 재생과 상이하고, 비행시간에 의해서는 타이틀을 최후까지 재생할 수 없다. 이러한 사태를 방지하고, 미리 타이틀 제작 책임자, 요컨대 감독자의 판단으로, 타이틀 재생 시간 단축을 위해, 컷시키더라도 좋은 장면을 정해 두고, 그와 같은 컷 장면을 포함하는 시스템 스트림과, 장면이 컷되어 있지 않은 시스템 스트림을 다중장면 구간에 배치해 둠으로써, 제작자의 의지에 따른 장면 컷 편집이 가능해진다. 이러한 퍼렌틀 제어에서는 시스템 스트림으로부터 시스템 스트림으로의 전이에서, 재생 화상을 매끄럽게 모순 없이 연결하는 것, 즉 비디오, 오디오 등 버퍼가 언더플로우하지 않는 심리스 데이터 재생과 재생 영상, 재생 오디오가 시청각 상으로 부자연스럽지 않고 또한 중단되는 일없이 재생되는 심리스 정보 재생이 필요하게 된다.
<3.5.3> 멀티앵글
도 19를 참조하여, 본 발명에서의 멀티앵글 제어의 개념을 설명한다. 통상적으로, 멀티미디어 타이틀은 대상물을 시간(T)의 경과와 동시에 녹음 및 촬영(이후, 간단히 촬영이라고 한다)하여 얻어진다. #SC1, #SM1, #SM2, #SM3 및 #SC3의 각각의 블록은 각각 소정의 카메라 앵글로서 대상물을 촬영하여 얻어지는 촬영 단위시간(T1, T2 및 T3)에서 얻어진 멀티미디어 장면을 대표하고 있다. #SM1, #SM2 및 #SM3은 촬영 단위시간 T2에서 각각 상이한 복수(제1, 제2 및 제3)의 카메라 앵글로 촬영된 장면이고, 이후, 제1, 제2, 및 제3 멀티앵글 장면이라고 한다.
여기서는, 다중장면이 상이한 앵글로 촬영된 장면으로 구성된 예를 들고 있다. 그러나, 다중장면의 각각의 장면은 동일한 앵글이지만, 다른 시간에 촬영된 장면이더라도 좋고, 또한 컴퓨터 그래픽 등의 데이터라도 좋다. 환언하면, 멀티앵글 장면 구간은 다중장면 구간이고, 그 구간의 데이터는 실제로 상이한 카메라 앵글로 얻어진 장면 데이터로 제한하지 않고, 그 표시 시간이 동일한 기간에 있는 복수의 장면을 선택적으로 재생할 수 있는 데이터로서 이루어지는 구간이다.
장면 #SC1과 #SC3은, 각각, 촬영 단위시간(T1, T3)에, 요컨대 멀티앵글 장면의 전후에, 동일한 기본 카메라 앵글로 촬영된 장면이고, 이후, 기본 앵글 장면이라고 한다. 통상적으로, 멀티앵글 내의 1개는 기본 카메라 앵글과 동일하다.
이들 앵글 장면의 관계를 알기 쉽게 하기 위해서, 야구의 중계방송을 예로 설명한다. 기본 앵글 장면 #SC1, 및 #SC3은 센터 측에서 본 투수, 포수, 타자를 중심으로 한 기본 카메라 앵글로써 촬영된 것이다. 제1멀티앵글 장면 #SM1은 백네트(back net) 측에서 본 투수, 포수, 타자를 중심으로 한 제1멀티 카메라 앵글로써 촬영된 것이다. 제2멀티앵글 장면 #SM2는 센터(center) 측에서 본 투수, 포수, 타자를 중심으로 한 제2멀티 카메라 앵글, 요컨대 기본 카메라 앵글로써 촬영된 것이다. 이 의미로서, 제2멀티앵글 장면 #SM2는 촬영 단위시간(T2)에서의 기본 앵글 장면 #SC2이다. 제3멀티앵글 장면 #SM3은, 백네트 측에서 본 내야를 중심으로 한 제3 멀티 카메라 앵글로써 촬영된 것이다.
멀티앵글 장면 #SM1, #SM2, 및 #SM3은, 촬영 단위시간(T2)에 관해서, 표시시간이 중복되어 있고, 이 기간을 멀티앵글 구간이라고 한다. 시청자는 멀티앵글 구간에서, 이 멀티앵글 장면 #SM1, #SM2, #SM3을 자유롭게 선택함으로써, 기본 앵글 장면에서, 기호의 앵글 장면 영상을 마치 카메라를 바꾸고 있는 것처럼 즐길 수 있다. 또한, 도면 중에서는, 기본 앵글 장면 #SC1, 및 #SC3과, 각각의 멀티앵글 장면 #SM1, #SM2, 및 #SM3 사이에 시간적 갭(gap)이 있는 것처럼 보이지만, 이것은 멀티앵글 장면의 어느 것을 선택하는가에 따라서, 재생되는 장면의 경로가 어떻게 되는가를 알기 쉽게 화살표를 이용하여 나타내기 위한 것으로, 실제로는 시간적 갭이 없다는 것은 말할 필요도 없다.
도 10에, 본 발명에 따른 시스템 스트림의 멀티앵글 제어를 데이터의 접속의 관점에서 설명한다. 기본 앵글 장면(#SC)에 대응하는 멀티미디어 데이터를 기본 앵글 데이터 BA로 하여, 촬영 단위시간(T1, T3)에서의 기본 앵글 데이터 BA를 각각 BA1 및 BA3으로 한다. 멀티앵글 장면 #SM1, #SM2 및 #SM3에 대응하는 멀티 앵글 데이터를, 각각, 제1, 제2 및 제3멀티앵글 데이터 MA1, MA2 및 MA3으로 나타낸다. 먼저, 도 19를 참조하여 설명한 바와 같이, 멀티앵글 장면 데이터 MA1, MA2, 및 MA3 중 어느 하나를 선택함으로써, 선호하는 앵글 장면 영상을 바꿔 즐길 수 있다. 또한, 마찬가지로, 기본 앵글 장면 데이터 BA1 및 BA3과, 각각의 멀티앵글 장면 데이터 MA1, MA2 및 MA3 사이에 시간적 갭은 없다.
그러나, MPEG 시스템 스트림의 경우, 각각의 멀티앵글 데이터 MA1, MA2 및 MA3 내의 임의의 데이터와, 선행 기본 앵글 데이터 BA1로부터의 접속과, 또는 후속 기본 앵글 데이터 BA3에 접속할 때는, 접속되는 앵글 데이터의 내용에 따라서는, 재생되는 데이터간에 재생 정보에 불연속이 생기고, 1개의 타이틀로서 자연스럽게 재생할 수 없는 경우가 있다. 결국, 이 경우, 심리스 데이터 재생이지만, 비 심리스 정보 재생이 된다.
이하에서, 도 10을 사용하여 DVD 시스템에서 다중장면 구간 내에서의 복수의 장면을 선택적으로 재생하여, 전후의 장면에 접속하는 심리스 정보 재생인 멀티앵글 절환에 관해서 설명한다.
앵글 장면 영상의 절환, 요컨대 멀티앵글 장면 데이터 MA1, MA2 및 MA3 내의 1개를 선택하는 것이, 선행하는 기본 앵글 데이터 BA1의 재생 종료 전까지 완료되지 않으면 안 된다. 예컨대, 앵글 장면 데이터 BA1의 재생 중에 별도의 멀티앵글 장면 데이터 MA2로 절환하는 것은 매우 곤란하다. 이것은 멀티미디어 데이터가 가변 길이 부호화 방식의 MPEG의 데이터 구조를 갖기 때문에, 절환 전의 데이터의 도중에서, 데이터의 절단점을 찾아내기가 어렵고, 또한, 부호화 처리로 프레임간 상관을 이용하고 있기 때문에 앵글의 절환 시에 영상이 흐트러질 가능성이 있다. MPEG에서는, 적어도 1프레임의 재생 프레임을 갖는 처리단위로서 GOP가 정의되어 있다. 이 GOP라는 처리단위에서는, 다른 GOP에 속하는 프레임을 참조하지 않는 폐쇄된 처리가 가능하다.
환언하면, 재생이 멀티앵글 구간에 도달하기 전에는, 느리더라도, 선행 기본앵글 데이터 BA1의 재생이 끝난 시점에서, 임의의 멀티앵글 데이터, 예컨대 MA3을 선택하면, 이 선택된 멀티앵글 데이터는 심리스로 재생할 수 있다. 그러나, 멀티앵글 데이터의 재생의 도중에, 다른 멀티앵글 장면 데이터를 심리스로 재생하는 것은 대단히 곤란하다. 이 때문에, 멀티앵글 기간 중에는 카메라를 바꾸는 것 같은 자유로운 시점(視點)을 얻는 것은 곤란하다.
<3.6.1> 흐름도 : 인코더
도 13을 참조하여 전술한, 시나리오 데이터(St7)에 따라서 인코드 시스템 제어부(200)가 생성하는 인코드 정보 테이블에 관해서 설명한다. 인코드 정보 테이블은 장면의 분기점·결합점을 단락으로 한 장면 구간에 대응하여, 복수의 VOB가 포함되는 VOB 세트 데이터 열(列)과 각각의 장면마다 대응하는 VOB 데이터 열로서 이루어진다. 도 13에 나타내고 있는 VOB 세트 데이터 열은 후에 상세히 설명한다.
도 20의 단계#100에서, 사용자가 지시하는 타이틀 내용에 근거하여, DVD의 멀티미디어 스트림 생성을 위해 인코드 시스템 제어부(200) 내에서 작성하는 인코드 정보 테이블이다. 사용자 지시의 시나리오에서는 공통인 장면으로부터 복수의 장면에의 분기점, 혹은 공통인 장면에의 결합점이 있다. 그 분기점·결합점을 단락으로 하는 장면 구간에 상당하는 VOB를 VOB 세트로 하고, VOB 세트를 인코딩하기 위해서 작성하는 데이터를 VOB 세트 데이터 열로 하고 있다. 또한, VOB 세트 데이터 열에서는, 다중장면 구간을 포함하는 경우, 표시되어 있는 타이틀 수를 VOB 세트 데이터 열의 타이틀 수(TITLE-NO)로 나타낸다.
도 13의 VOB 세트 데이터 구조는, VOB 세트 데이터 열의 1개의 VOB 세트를 인코딩하기 위한 데이터의 내용을 나타낸다. VOB 세트 데이터 구조는 VOB 세트 번호(VOBS_NO), VOB 세트 내의 VOB 번호(VOB_NO), 선행 VOB 심리스 접속 플래그(VOB_Fsb), 후속 VOB 심리스 접속 플래그(VOB_Fsf), 다중장면 플래그(VOB_Fp), 인터리브 플래그(VOB-Fi), 멀티앵글(VOB_Fm), 멀티앵글 심리스 절환 플래그(VOB_FsV), 인터리브 VOB의 최대 비트 전송속도(ILV_BR), 인터리브 VOB의 분할 수(ILV_DIV), 최소 인터리브 유닛 재생시간(ILV_MT)으로서 이루어진다.
VOB 세트 번호(VOBS_NO)는, 예컨대 타이틀 시나리오 재생 순서를 목표로 하는 VOB 세트를 식별하기 위한 번호이다.
VOB 세트 내의 VOB번호 VOB_NO는, 예컨대 타이틀 시나리오 재생 순서를 목표로 하는, 타이틀 시나리오 전체에 걸쳐서 VOB를 식별하기 위한 번호이다.
선행 VOB 심리스 접속 플래그 VOB_Fsb는 시나리오 재생으로 선행의 VOB와 심리스로 접속하는지의 여부를 나타내는 플래그이다.
후속 VOB 심리스 접속 플래그 VOB_Fsf는 시나리오 재생으로 후속의 VOB와 심리스로 접속하는지의 여부를 나타내는 플래그이다.
다중장면 플래그 VOB_Fp는 VOB 세트가 복수의 VOB로서 구성되고 있는지의 여부를 나타내는 플래그이다.
인터리브 플래그 VOB_Fi는 VOB 세트 내의 VOB가 인터리브 배치하는지의 여부를 나타내는 플래그이다.
멀티앵글 플래그 VOB_Fm는 VOB 세트가 멀티앵글인지의 여부를 나타내는 플래그이다.
멀티앵글 심리스 절환 플래그 VOB_FsV는 멀티앵글 내의 절환이 심리스인지의 여부를 나타내는 플래그이다.
인터리브 VOB 최대 비트 전송속도 ILV_BR는 인터리브하는 VOB의 최대 비트 전송속도의 값을 나타낸다.
인터리브 VOB 분할 수 ILV_DIV는 인터리브하는 VOB의 인터리브 유닛 수를 나타낸다.
최소 인터리브 유닛 재생시간 ILVU_MT는 인터리브 블록 재생 시에, 트랙 버퍼의 언더플로우하지 않은 최소의 인터리브 유닛에서, 그 VOB의 비트 전송속도가 ILV_BR 시에 재생할 수 있는 시간을 나타낸다.
도 14를 참조하여 전술한 시나리오 데이터(St7)에 따라서 인코드 시스템 제어부(200)가 생성하는 VOB마다 대응하는 인코드 정보 테이블에 관해서 설명한다. 이 인코드 정보 테이블을 기초로 비디오 인코더(300), 부영상 인코더(500), 오디오 인코더(700), 시스템 인코더(900)에, 후술하는 각각의 VOB에 대응하는 인코드 파라미터 데이터를 생성한다. 도 14에 나타나 있는 VOB 데이터 열은, 도 20의 단계#100에서, 사용자가 지시하는 타이틀 내용에 근거하여, DVD의 멀티미디어 스트림 생성을 위해, 인코드 시스템 제어 내에서 작성하는 VOB마다의 인코드 정보 테이블이다. 1개의 인코드 단위를 VOB로 하고, 그 VOB를 인코딩하기 위해 작성하는 데이터를 VOB 데이터 열로 하고 있다. 예컨대, 3개의 앵글 장면으로서 구성되는 VOB 세트는 3개의 VOB로 구성되는 것으로 된다. 도 14의 VOB 데이터 구조는 VOB 데이터 열의 1개의 VOB를 인코딩하기 위한 데이터의 내용을 나타낸다.
VOB 데이터 구조는 비디오 소재의 개시시각(VOB_VST), 비디오 소재의 종료시각(VOB_VEND), 비디오 소재의 종류(VOB_V_KIND), 비디오의 인코드 비트 전송속도(V_BR), 오디오 소재의 개시시각(VOB_AST), 오디오 소재의 종료시각(VOB_AEND), 오디오 인코드 방식(VOB_A_KIND), 오디오의 비트 전송속도(A_BR)로서 되어 있다.
비디오 소재의 개시시각 VOB_VST는 비디오 소재의 시각에 대응하는 비디오 인코드의 개시시각이다.
비디오 소재의 종료시각 VOB_VEND는 비디오 소재의 시각에 대응하는 비디오 인코드의 종료시각이다.
비디오 소재의 종류 VOB_V_KIND는 인코드 소재가 NTSC 형식인지 PAL 형식인지, 또는 비디오 소재가 텔레시니 변환 처리된 소재인지의 여부를 나타내는 것이다.
비디오의 비트 전송속도 V_BR은 비디오의 인코드 비트 전송속도이다.
오디오 소재의 개시시각 VOB_AST는 오디오 소재의 시각에 대응하는 오디오 인코드 개시시각이다.
오디오 소재의 종료시각 VOB_AEND는 오디오 소재의 시각에 대응하는 오디오 인코드 종료시각이다.
오디오 인코드 방식 VOB_A_KIND는 오디오의 인코드 방식을 나타내는 것이고, 인코드 방식에는 AC-3 방식, MPEG 방식, 리니어 PCM 방식 등이 있다.
오디오의 비트 전송속도 A_BR은 오디오의 인코드 비트 전송속도이다.
도 15에, VOB를 인코딩하기 위한 비디오, 오디오, 시스템의 각각의 인코더(300, 500, 900)의 인코드 파라미터를 나타낸다. 인코드 파라미터는 VOB 번호(VOB_NO), 비디오 인코드 개시시각(V_STTM), 비디오 인코드 종료시각(V_ENDTM), 인코드 모드(V_ENCMD), 비디오 인코드 비트 전송속도(V_RATE), 비디오 인코드 최대 비트 전송속도(V_MRATE), GOP 구조 고정 플래그(GOP_FXflag), 비디오 인코드 GOP구조(GOPST), 비디오 인코드 초기 데이터(V_INTST), 비디오 인코드 종료 데이터(V_ENDST), 오디오 인코드 개시시각(A_STTM), 오디오 인코드 종료시각(A_ENDTM), 오디오 인코드 비트 전송속도(A_RATE), 오디오 인코드 방식(A_ENCMD), 오디오 개시시 갭(A_STGAP), 오디오 종료 시 갭(A_ENDGAP), 선행 VOB 번호(B_VOB_NO), 후속 VOB 번호(F_VOB_NO)로서 되어 있다.
VOB 번호 VOB_NO는, 예컨대 타이틀 시나리오 재생 순서를 목표로 타이틀 시나리오 전체에 걸쳐서 번호를 부여하는, VOB를 식별하기 위한 번호이다.
비디오 인코드 개시시각 V_STTM은 비디오 소재상의 비디오 인코드 개시시각이다.
비디오 인코드 종료시각 V_ENDTM은 비디오 소재상의 비디오 인코드 종료시각이다.
인코드 모드 V_ENCMD는 비디오 소재가 텔레시니 변환된 소재의 경우에는, 효율이 좋은 인코딩을 할 수 있도록 비디오 인코딩 시에 역 텔레시니 변환처리를 실행하는지의 여부 등을 설정하기 위한 인코드 모드이다.
비디오 인코드 비트 전송속도 V_RATE는 비디오 인코딩 시의 평균 비트 전송속도이다.
비디오 인코드 최대 비트 전송속도 V_MRATE는 비디오 인코딩 시의 최대 비트 전송속도이다.
GOP 구조 고정 플래그 GOP_FXflag는 비디오 인코딩 시에 도중에서, GOP 구조를 바꾸는 일없이 인코딩을 하는지의 여부를 나타내는 것이다. 멀티앵글 장면 중에 심리스로 절환 가능한 경우에 유효한 파라미터이다. 비디오 인코드 GOP 구조 GOPST는 인코딩 시의 GOP 구조의 데이터이다.
비디오 인코드 초기 데이터 V_INST는 비디오 인코드 개시 시의 VBV 버퍼(복호 버퍼)의 초기 값 등을 설정하는, 선행의 비디오 인코드 스트림과 심리스 재생하는 경우에 유효한 파라미터이다.
비디오 인코드 종료 데이터 V_ENDST는 비디오 인코드 종료 시의 VBV 버퍼(복호 버퍼)의 종료값 등을 설정한다. 후속의 비디오 인코드 스트림과 심리스 재생하는 경우에 유효한 파라미터이다.
오디오 인코더 개시시각 A_STTM은 오디오 소재상의 오디오 인코드 개시시각이다.
오디오 인코더 종료시각 A_ENDTM은 오디오 소재상의 오디오 인코드 종료시각이다.
오디오 인코드 비트 전송속도 A_RATE는 오디오 인코드 시의 비트 전송속도이다.
오디오 인코드 방식 V_ENCMD는 오디오의 인코드 방식이고, AC-3 방식, MPEG 방식, 리니어 PCM 방식 등이 있다.
오디오 개시 시 갭 A_STGAP는 VOB 개시 시의 비디오와 오디오의 개시가 어긋나는 시간이다. 선행의 시스템 인코드 스트림과 심리스 재생하는 경우에 유효한 파라미터이다.
오디오 종료 시 갭 A_ENDGAP는 VOB 종료 시의 비디오와 비디오의 종료가 어긋나는 시간이다. 후속의 시스템 인코드 스트림과 심리스 재생하는 경우에 유효한 파라미터이다.
선행 VOB 번호 B_VOB_NO는 심리스 접속의 선행 VOB가 존재하는 경우에 그 VOB 번호를 나타내는 것이다.
후속 VOB 번호 F_VOB_NO는 심리스 접속의 후속 VOB가 존재하는 경우에 그 VOB 번호를 나타내는 것이다.
도 20 및 도 21에 나타내는 흐름도를 참조하여, 본 발명에 관한 DVD 인코더(EC)의 동작을 설명한다. 또한, 동 도면에서 2중선으로 둘러싸인 블록은 각각 서브루틴을 나타낸다. 본 실시형태는, DVD 시스템에 관해서 설명하지만, 말할 필요도 없이 오소링 인코더(EC)에 관해서도 마찬가지로 구성할 수 있다.
단계#100에서, 사용자는 편집 정보 작성부(100)에서 멀티미디어 소스 데이터(St1, St2, St3)의 내용을 확인하면서, 원하는 시나리오에 따른 내용의 편집지시를 입력한다.
단계#200에서, 편집 정보 작성부(100)는 사용자의 편집지시에 응해서, 상술한 편집지시 정보를 포함하는 시나리오 데이터(St7)를 생성한다.
단계#200에서, 시나리오 데이터(St7)의 생성 시에, 사용자의 편집지시 내용중, 인터리브하는 것을 상정하고 있는 멀티앵글, 퍼렌틀의 다중장면 구간에서의 인터리브 시의 편집지시는, 이하의 조건을 만족하도록 입력한다.
우선 화질(畵質)적으로 충분한 화질이 얻어지는 VOB의 최대 비트 전송속도를 결정하고, 또한 DVD 인코드 데이터의 재생장치로서 상정하는 DVD 디코더 DCD의 트랙 버퍼량 및 점프 성능, 점프 시간과 점프 거리의 값을 결정한다. 상기 값을 기초로, 식 3, 식 4에 의해, 최소 인터리브 유닛의 재생시간을 얻는다.
이어서, 다중장면 구간에 포함되는 각각의 장면의 재생시간을 기초로 식 5 및 식 6이 만족하는지의 여부를 검증한다. 만족하지 않으면, 후속 장면 일부를 다중장면 구간의 각각의 장면을 접속하는 등의 처리를 실행하여, 식 5 및 식 6을 만족하도록 사용자는 지시의 변경을 입력한다.
또한, 멀티앵글의 편집지시의 경우, 심리스 절환 시에는 식 7을 만족하는 동시에, 앵글의 각각의 장면의 재생시간, 오디오는 동일로 하는 편집지시를 입력한다. 또한 비 심리스 절환 시에는 식 8을 만족하도록 사용자는 편집지시를 입력한다.
단계#300에서, 인코드 시스템 제어부(200)는 시나리오 데이터(St7)에 따라서 우선 대상 장면을 선행 장면에 대하여, 심리스로 접속하는지의 여부를 판단한다. 심리스 접속이라는 것은 선행 장면 구간이 복수의 장면으로 이루어지는 다중장면 구간인 경우에, 그 선행 다중장면 구간에 포함되는 전체 장면 내의 임의의 1장면을 현시점의 접속 대상인 공통 장면과 심리스로 접속한다. 마찬가지로, 현시점의 접속 대상 장면이 다중장면 구간인 경우에는 다중장면 구간의 임의의 1장면을 접속할 수 있다고 하는 것을 의미한다. 단계#300에서, NO, 요컨대, 비 심리스 접속이라고 판단된 경우에는 단계#400으로 진행한다.
단계#400에서, 인코드 시스템 제어부(200)는 대상 장면이 선행 장면과 심리스 접속하는 것을 나타내는 선행 장면 심리스 접속 플래그 VOB_Fsb를 리셋(reset)하여, 단계#600으로 진행한다.
한편, 단계#300에서, YES, 요컨대 선행 장면과 심리스 접속된다고 판단될 때에는 단계#500으로 진행한다.
단계#500에서, 선행 장면 심리스 접속 플래그 VOB_Fsb를 세트하여, 단계#600으로 진행한다.
단계#600에서, 인코드 시스템 제어부(200)는 시나리오 데이터(St7)에 따라서, 대상 장면을 후속하는 장면과 심리스 접속하는지의 여부를 판단한다. 단계#600에서, NO, 요컨대 비 심리스 접속이라고 판단된 경우에는 단계#700으로 진행한다.
단계#700에서, 인코드 시스템 제어부(200)는 장면을 후속 장면과 심리스 접속하는 것을 나타내는 후속 장면 심리스 접속 플래그 VOB_Fsf를 리셋하여, 단계 #900으로 진행한다.
한편, 단계#600에서, YES, 요컨대 후속 장면과 심리스 접속한다고 판단될 때에는, 단계#800으로 진행한다.
단계#800에서, 인코드 시스템 제어부(200)는 후속 장면 심리스 접속 플래그 VOB_Fsf를 세트하여, 단계#900으로 진행한다.
단계#900에서, 인코드 시스템 제어부(200)는 시나리오 데이터(St7)에 따라서, 접속 대상의 장면이 하나 이상, 요컨대, 다중장면인지의 여부를 판단한다. 다중장면에는, 다중장면으로 구성할 수 있는 복수의 재생경로 중 1개의 재생경로만을 재생하는 퍼렌틀 제어와, 재생경로가 다중장면 구간의 사이에서 절환 가능한 멀티앵글 제어가 있다.
시나리오 단계#900에서, NO, 요컨대 비 다중장면 접속이라고 판단되는 경우에는, 단계#1000으로 진행한다.
단계#1000에서, 다중장면 접속인 것을 나타내는 다중장면 플래그 VOB_Fp를 리셋하여, 인코드 파라미터 생성 단계#1800으로 진행한다. 단계#1800의 동작에 대해서는 후술한다.
한편, 단계#900에서, YES, 요컨대 다중장면 접속이라고 판단될 때에는, 단계#1100으로 진행한다. 단계#1100에서, 다중장면 플래그 VOB_Fp를 세트하여, 멀티앵글 접속인지의 여부를 판단하는 단계#1200으로 진행한다.
단계#1200에서, 다중장면 구간 중의 복수 장면 사이에서의 절환의 여부, 즉 멀티앵글의 구간인지의 여부를 판단한다. 단계#1200에서, NO, 요컨대, 다중장면 구간의 도중에서 절환하지 않고, 1개의 재생경로만을 재생하는 퍼렌틀 제어라고 판단될 때에는, 단계#1300으로 진행한다.
단계#1300에서, 접속 대상 장면이 멀티앵글인 것을 나타내는 멀티앵글 플래그 VOB_Fm을 리셋하여 단계#1302로 진행한다.
단계#1302에서, 선행 장면 심리스 접속 플래그 VOB_Fsb 및 후속 장면 심리스 접속 플래그 VOB_Fsf가 어떻게 세트되었는지의 여부를 판단한다. 단계#1300에서, YES, 요컨대 접속 대상 장면은 선행 혹은 후속의 장면 중 어느 것인가 혹은, 양쪽과 심리스 접속한다고 판단될 때에는, 단계#1304로 진행한다.
단계#1304에서는, 대상 장면의 인코드 데이터인 VOB를 인터리브하는 것을 나타내는 인터리브 플래그 VOB_Fi를 세트하여, 단계#1800으로 진행한다.
한편, 단계#1302에서, NO, 요컨대, 대상 장면은 선행 장면 및 후속 장면 중 어느 것도 심리스 접속하지 않은 경우에는, 단계#1306으로 진행한다.
단계#1306에서, 인터리브 플래그 VOB_Fi를 리셋하여 단계#1800으로 진행한다.
한편, 단계#1200에서, YES, 요컨대 멀티앵글이라고 판단되는 경우에는, 단계#1400으로 진행한다.
단계#1400에서는, 멀티앵글 플래그 VOB_Fm 및 인터리브 플래그 VOB_Fi를 세트한 후에 단계#1500으로 진행한다.
단계#1500에서, 인코드 시스템 제어부(200)는, 시나리오 데이터(St7)에 따라서, 멀티앵글 장면 구간에서, 요컨대 VOB보다도 작은 재생 단위로써, 영상이나 오디오를 도중에 끊는 일 없이, 소위 심리스로 절환되었는지를 판단한다. 단계#1500에서, NO, 요컨대, 비 심리스 절환이라고 판단될 때에는, 단계#1600으로 진행한다.
단계#1600에서, 대상 장면이 심리스 절환인 것을 나타내는 심리스 절환 플래그 VOB_FsV를 리셋하여, 단계#1800으로 진행한다.
한편, 단계#1500, YES, 요컨대 심리스 절환이라고 판단될 때에는, 단계#1700으로 진행한다.
단계#1700에서, 심리스 절환 플래그 VOB_FsV를 세트하여 단계#1800으로 진행한다. 이와 같이, 본 발명에서는, 편집 의사를 반영한 시나리오 데이터(St7)로부터, 편집 정보가 상술한 각각의 플래그의 세트 상태로서 검출된 후에, 단계#1800으로 진행한다.
단계#1800에서, 상술한 바와 같이, 각각의 플래그의 세트 상태로서 검출된 사용자의 편집 의사에 따라서, 소스 스트림을 인코딩하기 위한, 각각 도 13 및 도 14에 나타내는 VOB 세트 단위 및 VOB 단위마다의 인코드 정보 테이블의 정보 부가와, 도 15에 나타내는 VOB 데이터 단위에서의 인코드 파라미터를 작성한다. 다음에, 단계#1900으로 진행한다. 이 인코드 파라미터 작성 단계의 상세한 설명은, 도 22, 도 23, 도 24, 및 도 25를 참조하여 후술한다.
단계#1900에서는, 단계#1800에서 작성한 인코드 파라미터에 따라서, 비디오 데이터 및 오디오 데이터의 인코딩을 한 뒤에 단계#2000으로 진행한다. 또한, 부영상 데이터는, 원래 필요에 따라서, 비디오 재생 중에 수시 삽입하여 이용하는 목적이기 때문에, 전후의 장면 등과의 연속성은 원래 불필요하다. 또한, 부영상은 일반적으로 1화면 분의 영상 정보이기 때문에, 시간 축 상에 연속 존재하는 비디오 데이터 및 오디오 데이터와 다르고, 표시는 정지의 경우가 많고, 항상 연속하여 재생되는 것이 아니다. 따라서, 심리스 및 비 심리스라고 하는 연속 재생에 관한 본 실시형태에서는, 간단히 하기 위해 부영상 데이터의 인코딩에 대해서는 설명을 생략한다.
단계#2000에서는, VOB 세트의 수만큼 단계#300으로부터 단계#1900까지의 각각의 단계로 구성된 루프를 돌려, 도 5의 타이틀의 각각의 VOB의 재생 순서 등의 재생정보를 자신의 데이터 구조로 갖고, 프로그램 체인(VTS_PGC#I) 정보를 포맷하여, 멀티장면 구간의 VOB를 인터리브 배치를 작성하고, 그리고 시스템 인코딩하기 위해서 필요한 VOB 세트 데이터 열 및 VOB 데이터 열을 완성시킨다. 다음에, 단계#2100으로 진행한다.
단계#2100에서, 단계#2000까지의 루프의 결과로 얻어지는 전체 VOB 세트 수 VOBS_NUM을 얻어, VOB 세트 데이터 열에 추가하고, 또한 시나리오 데이터(St7)에서, 시나리오 재생경로의 수를 타이틀 수로 한 경우의, 타이틀 수 TITLE_NO를 설정하여, 인코드 정보 테이블로서의 VOB 세트 데이터 열을 완성한 후, 단계#2200으로 진행한다.
단계#2200에서는, 단계#1900에서 인코딩한 비디오 인코드 스트림, 오디오 인코드 스트림, 도 15의 인코드 파라미터에 근거하여, 도 5의 VTSTT_VOBS 내의 VOB(VOB#i) 데이터를 작성하기 위한 시스템 인코딩을 실행한다. 이어서, 단계#2300으로 진행한다.
단계#2300에서, 도 5의 VTS 정보, VTSI에 포함되는 VTSI 관리 테이블(VTSI_MAT), VTSPGC 정보 테이블(VTSPGCIT) 및 VOB 데이터의 재생 순서를 제어하는 프로그램 체인 정보(VTS_PGCI#I)의 데이터 작성 및 다중장면 구간에 포함되는 VOB의 인터리브 배치 등의 처리를 포함하는 포맷을 실행한다.
이 포맷 단계의 상세 내용에 대하여는, 도 27, 도 28, 도 29, 도 30, 및 도 31을 참조하여 후에 설명한다.
도 22, 도 23, 및 도 24를 참조하여, 도 21에 나타낸 흐름도의 단계#1800의 인코드 파라미터 생성 서브루틴에서의, 멀티앵글 제어 시의 인코드 파라미터 생성의 동작을 설명한다.
우선, 도 22를 참조하여, 도 21의 단계#1500에서, NO라고 판단될 때에, 요컨대 각각의 플래그는 각각 VOB_Fsb=1 또는 VOB_Fsf=1, VOB_Fp=1, VOB_Fi=1, VOB_Fm=1, FsV=0인 경우, 즉 멀티앵글 제어 시의 비 심리스 절환 스트림의 인코드 파라미터 생성 동작을 설명한다. 이하의 동작에서, 도 13 및 도 14에 나타내는 인코드 정보 테이블, 도 15에 나타내는 인코드 파라미터를 작성한다.
단계#1812에서는, 시나리오 데이터(St7)에 포함되어 있는 시나리오 재생 순서를 추출하여, VOB 세트 번호 VOBS_NO를 설정하고, 또한 VOB 세트 내의 1개 이상의 VOB에 대하여, VOB 번호 VOB_NO를 설정한다.
단계#1814에서는, 시나리오 데이터(St7)에 의해, 인터리브 VOB의 최대 비트 전송속도 ILV_BR을 추출, 인터리브 플래그 VOB_Fi=1에 근거하여, 인코드 파라미터의 비디오 인코드 최대 비트 전송속도 V_MRATE로 설정한다.
단계#1816에서는, 시나리오 데이터(St7)에 의해, 최소 인터리브 유닛 재생시간 ILV_MT를 추출한다.
단계#1818에서는, 멀티앵글 플래그 VOB_FP=1에 근거하여, 비디오 인코드 GOP 구조 GOPST의 N=15, M=3의 값과 GOP 구조 고정 플래그 GOPFXflag=“1”로 설정한다.
단계#1820은, VOB 데이터 설정의 공통의 루틴이다.
도 23에, 단계#1820의 VOB 데이터 공통 설정 루틴을 나타낸다. 이하의 동작 흐름에서, 도 13 및 도 14에 나타내는 인코드 정보 테이블, 도 15에 나타내는 인코드 파라미터를 작성한다.
단계#1822에서는, 시나리오 데이터(St7)에 의해, 각각의 VOB의 비디오 소재의 개시시각 VOB_VST, 종료시각 VOB_VEND를 추출하고, 비디오 인코드 개시시각 V_STTM과 인코드 종료시각 V_ENDTM을 비디오 인코드의 파라미터로 한다.
단계#1824에서는, 시나리오 데이터(St7)에 의해, 각각의 VOB의 오디오 소재의 개시시각 VOB_AST를 추출하고, 오디오 인코드 개시시각 A_STTM을 오디오 인코드의 파라미터로 한다.
단계#1826에서는, 시나리오 데이터(St7)에 의해, 각각의 VOB의 오디오 소재의 종료시각 VOB_AEND를 추출하고, VOB_AEND를 넘지 않은 시각에서, 오디오 인코드 방식으로 정해지는 오디오 액세스 유닛(이하 AAU라고 기술한다) 단위의 시각을, 오디오 인코드의 파라미터인 인코드 종료시각 A_ENDTM으로 한다.
단계#1828은, 비디오 인코드 개시시각 V_STTM과 오디오 인코드 개시시각 A_STTM의 차(差)로부터, 오디오 개시 시 갭 A_STGAP를 시스템 인코드의 파라미터로 한다.
단계#1830에서는, 비디오 인코드 종료시각 V_ENDTM과 오디오 인코드 종료시각 A_ENDTM의 차(差)로부터, 오디오 종료 시 갭 A_ENDGAP를 시스템 인코드의 파라미터로 한다.
단계#1832에서는, 시나리오 데이터(St7)에 의해, 비디오의 비트 전송속도 V_BR을 추출하여, 비디오 인코드의 평균 비트 전송속도로서, 비디오 인코드 비트 전송속도 V_RATE를 비디오 인코드 파라미터로 한다.
단계#1834에서는, 시나리오 데이터(St7)에 의해, 오디오의 비트 전송속도 A_BR을 추출하여, 오디오 인코드 비트 전송속도 A_RATE를 오디오 인코드의 파라미터로 한다.
단계#1836에서는, 시나리오 데이터(St7)에 의해, 비디오 소재의 종류 VOB_V_KIND를 추출하고, 필름 소재, 즉 텔레시니 변환된 소재이면 비디오 인코드 모드 V_ENCMD로 역 텔레시니 변환을 설정하여, 비디오 인코드의 파라미터로 한다.
단계#1838에서는, 시나리오 데이터(St7)에 의해, 오디오의 인코드 방식(VOB_A_KIND를 추출하여, 오디오 인코드 모드 A_ENCMD에 인코드 방식을 설정하고, 오디오 인코드의 파라미터로 한다.
단계#1840에서는, 비디오 인코드 초기 데이터 V_INST의 VBV 버퍼 초기값이 비디오 인코드 종료 데이터 V_ENDST의 VBV 버퍼 종료값 이하의 값이 되도록 설정하고, 비디오 인코드의 파라미터로 한다.
단계#1842에서는, 선행 VOB 심리스 접속 플래그 VOB_Fsb=1에 근거하여, 선행 접속의 VOB 번호 VOB_NO를 선행 접속의 VOB 번호 B_VOB_NO로 설정하고, 시스템 인코드의 파라미터로 한다.
단계#1844에서는, 후속 VOB 심리스 접속 플래그 VOB_Fsf=1에 근거하여, 후속 접속의 VOB 번호 VOB_NO를 후속 접속의 VOB 번호 F_VOB_NO로 설정하고, 시스템 인코드의 파라미터로 한다.
이상과 같이, 멀티앵글의 VOB 세트이고, 비 심리스 멀티앵글 절환의 제어 경우의 인코드 정보 테이블 및 인코드 파라미터가 생성될 수 있다.
이어서, 도 24를 참조하여, 도 21에서, 단계#1500에서 Yes라고 판단되었을 때, 요컨대 각각의 플래그는 각각 VOB_Fsb=1 또는 VOB_Fsf=1, VOB_Fp=1, VOB_Fi=1, VOB_Fm=1, VOB_FsV=1인 경우의, 멀티앵글 제어 시의 심리스 절환 스트림의 인코드 파라미터 생성 동작을 설명한다.
이하의 동작에서, 도 13 및 도 14에 나타내는 인코드 정보 테이블, 및 도 15에 나타내는 인코드 파라미터를 작성한다.
단계#1850에서는, 시나리오 데이터(St7)에 포함되어 있는 시나리오 재생 순서를 추출하고, VOB 세트 번호 VBS_NO를 설정하고, 또한 VOB 세트 내의 1개 이상의 VOB에 대하여, VOB 번호 VOB_NO를 설정한다.
단계#1852에서는, 시나리오 데이터(St7)에 의해, 인터리브 VOB의 최대 비트 전송속도 ILV_BR을 추출, 인터리브 플래그 VOB_Fi=1에 근거하여, 비디오 인코드 최대 비트 전송속도 V_RATE로 설정한다.
단계#1854에서는, 시나리오 데이터(St7)에 의해, 최소 인터리브 유닛 재생시간 ILVU_MT를 추출한다.
단계#1856에서는, 멀티앵글 플래그 VOB_Fp=1에 근거하여, 비디오 인코드 GOP 구조 GOPST의 N=15, M=3의 값과 GOP 구조 고정 플래그 GOPFXflag="1"로 설정한다.
단계#1858에서는, 심리스 절환 플래그 VOB_FsV=1에 근거하여, 비디오 인코드 GOP 구조 GOPST에 폐쇄 GOP를 설정, 비디오 인코드의 파라미터로 한다.
단계#1860은, VOB 데이터 설정의 공통의 루틴이다. 이 공통의 루틴은 도 22에 도시되어 있는 루틴이며, 이미 설명하고 있는 것이기 때문에 생략한다.
이상과 같이 멀티앵글의 VOB 세트로써, 심리스 절환 제어의 경우의 인코드 파라미터를 생성할 수 있다.
이어서, 도 25를 참조하여, 도 20의 단계#1200에서, NO라고 판단되고, 단계#1304에서 YES라고 판단되었을 때, 요컨대 각각의 플래그는 각각 VOB_Fsb=1 또는 VOB_Fsf=1, VOB_Fp=1, VOB_Fi=1, VOB_Fm=0인 경우의, 퍼렌틀 제어 시의 인코드 파라미터 생성 동작을 설명한다. 이하의 동작에서, 도 13 및 도 14에 나타내는 인코드 정보 테이블, 및 도 15에 나타내는 인코드 파라미터를 작성한다.
단계#1870에서는, 시나리오 데이터(St7)에 포함되어 있는 시나리오 재생 순서를 추출하여 VOB 세트 번호 VOBS_NO를 설정하고, 또한 VOB 세트 내의 1개 이상의 VOB에 대하여, VOB 번호 VOB_NO를 설정한다.
단계#1872에서는, 시나리오 데이터(St7)에 의해, 인터리브 VOB의 최대 비트 전송속도 ILV_BR을 추출, 인터리브 플래그 VOB_Fi=1에 근거하여, 비디오 인코드 최대 비트 전송속도 V_RATE로 설정한다.
단계#1874에서는, 시나리오 데이터(St7)에 의해, VOB 인터리브 유닛 분할 수 ILV_DIV를 추출한다.
단계#1876은, VOB 데이터 설정의 공통의 루틴이다. 이 공통의 루틴은 도 22에 나타나 있는 루틴이며, 이미 설명하고 있기 때문에 생략한다.
이상과 같이 다중장면의 VOB 세트로써, 퍼렌틀 제어 경우의 인코드 파라미터를 생성할 수 있다.
이어서, 도 26을 참조하여, 도 20에서의 단계#900에서, NO라고 판단되었을 때, 요컨대 각각의 플래그는 각각 VOB_Fp=0인 경우의, 즉 단일 장면의 인코드 파라미터 생성 동작을 설명한다. 이하의 동작에서, 도 13 및 도 14에 나타내는 인코드 정보 테이블, 및 도 15에 나타내는 인코드 파라미터를 작성한다.
단계#1880에서는, 시나리오 데이터(St7)에 포함되어 있는 시나리오 재생 순서를 추출하여, VOB 세트 번호 VOBS_NO를 설정하고, 또한 VOB 세트 내의 1개 이상의 VOB에 대하여, VOB 번호 VOB_NO를 설정한다.
단계#1882에서는, 시나리오 데이터(St7)에 의해, 인터리브 VOB의 최대 비트 전송속도 ILV_BR을 추출하고, 인터리브 플래그 VOB_Fi=1에 근거하여, 비디오 인코드 최대 비트 전송속도 V_MRATE로 설정한다.
단계#1884는, VOB 데이터 설정의 공통의 루틴이다. 이 공통의 루틴은 도 22에 나타낸 루틴이며, 이미 설명하고 있기 때문에 생략한다.
상기와 같은 인코드 정보 테이블 작성, 인코드 파라미터 작성 흐름에 의해서, DVD의 비디오, 오디오 시스템 인코드, DVD의 포매터를 위한 인코드 파라미터를 생성할 수 있다.
<3.6.2> 포매터 흐름
도 27, 도 28, 도 29, 도 30 및 도 31에, 도 21에 나타낸 단계#2300의 DVD 멀티미디어 스트림 생성의 포매터 서브루틴에서의 동작에 관해서 설명한다.
도 27에 나타내는 흐름도를 참조하면서, 본 발명에 따른 DVD 인코더(ECD)의 포매터(1100)의 동작을 설명한다. 또한, 마찬가지로 2중선으로 둘러싸인 블록은 각각 서브루틴을 나타낸다.
단계#2310에서는, VOB 세트 데이터 열의 타이틀 수 TITLE_NUM에 근거하여, VTSI 내의 비디오 타이틀 세트 관리 테이블 VTSI_MAT에 TITLE_NUM 수만큼의 VTSI_PGCI의 수를 설정한다.
단계#2312에서는, VOB 세트 데이터 내의 다중장면 플래그 VOB_Fp에 근거하여, 다중장면인지의 여부를 판단한다. 단계#2312에서 NO, 요컨대, 다중장면이 아니라고 판단되는 경우, 단계#2314로 진행한다.
단계#2314에서는, 단일의 VOB의 도 12의 오리지널 인코더에서의 포매터(1100) 동작의 서브루틴을 나타낸다. 이 서브루틴에 대해서는 후술한다.
단계#2312에서, YES, 요컨대 다중장면이라고 판단되는 경우에는 단계#2316으로 진행한다.
단계#2316에서는, VOB 세트 데이터 내의 인터리브 플래그 VOB_Fi에 근거하여, 인터리브하는지의 여부를 판단한다. 단계#2316에서 NO, 요컨대 인터리브하지 않는 다고 판단하는 경우에는, 단계#2314로 진행한다.
단계#2318에서는, VOB 세트 데이터 내의 멀티앵글 플래그 VOB_Fm에 근거하여, 멀티앵글인지의 여부를 판단한다. 단계#2318에서 NO, 요컨대, 멀티앵글이 아니라고 판단되는 경우에는, 즉 퍼렌틀 제어의 서브루틴인 단계#2320으로 진행한다.
단계#2320에서는, 퍼렌틀 제어의 VOB 세트에서의 포매터 동작의 서브루틴을 나타낸다. 이 서브루틴은 도 30에 나타내고 있어 후에 상세히 설명한다.
단계#2320에서, YES, 요컨대 멀티앵글이라고 판단되는 경우에는 단계#2322로 진행한다.
단계#2322에서는, 멀티앵글 심리스 절환 플래그 VOB_FsV에 근거하여, 심리스 절환인지의 여부를 판단한다. 단계#2322에서, NO, 요컨대, 멀티앵글이 비 심리스 절환 제어라고 판단되는 경우에는, 단계#2326으로 진행한다.
단계#2326에서는, 비 심리스 절환 제어의 멀티앵글의 경우인 도 12의 오소링 인코드의 포매터(1100) 동작의 서브루틴을 나타낸다. 도 28을 이용하여, 후에 상세히 설명한다.
단계#2322에서, YES, 요컨대 심리스 절환 제어의 멀티앵글이라고 판단되는 경우에는, 단계#2324로 진행한다.
단계#2324에서는, 심리스 절환 제어의 멀티앵글의 포매터(1100) 동작의 서브루틴을 나타낸다. 도 29를 이용하여, 후에 상세히 설명한다.
단계#2328에서는, 전번의 흐름도에서 설정하고 있는 셀 재생 정보 CPBI를 VTSI의 CPBI 정보로서 기록한다.
단계#2330에서는, 포매터 흐름이 VOB 세트 데이터 열의 VOB 세트 수 VOB_NUM에서 나타낸 만큼의 VOB 세트 처리가 종료되었는지의 여부가 판단된다. 단계#2330에서, NO, 요컨대 모든 VOB 세트의 처리가 종료하지 않고 있으면, 단계#2312로 진행한다.
단계#2330에서, YES, 요컨대 모든 VOB 세트의 처리가 종료하고 있으면, 처리를 종료한다.
이어서 도 28을 이용하여, 도 27의 단계#2322에서, NO, 요컨대 멀티앵글이 비 심리스 절환 제어라고 판단되는 경우의 서브루틴 단계#2326의 서브루틴에 관해서 설명한다. 이하에 나타내는 동작흐름에 의해, 멀티미디어 스트림의 인터리브 배치와 도 5에 나타낸 셀 재생 정보(C_PBI#i)의 내용 및 도 8에 나타낸 내비게이션 팩(NV) 내의 정보를, 생성된 DVD의 멀티미디어 스트림에 기록한다.
단계#2340에서는, 다중장면 구간이 멀티앵글 제어를 하는 것을 나타내는 VOB_Fm=1의 정보에 근거하여, 각각의 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 셀 블록 모드(도 5 중의 CBM)에, 예컨대, 도 10에 나타낸 MA1의 셀의 CBM=“셀 블록 선두=01b”, MA2의 셀의 CBM=“셀 블록의 안=10b”, MA3의 셀의 CBM=“셀 블록의 최후=11b”를 기록한다.
단계#2342에서는, 다중장면 구간이 멀티앵글 제어를 하는 것을 나타내는 VOB_Fm=1의 정보에 근거하여, 각각의 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 셀 블록 타입(도 5 중의 CBT)에 “앵글”을 나타내는 값=” 01b"를 기록한다.
단계#2344에서는, 심리스 접속을 하는 것을 나타내는 VOB_Fsb=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 심리스 재생 플래그(도 5 중의 SPF)에 "1"을 기록한다.
단계#2346에서는, 심리스 접속을 하는 것을 나타내는 VOB_Fsb=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 STC 재설정 플래그(도 5 중의 STCDF)에 “1”을 기록한다.
단계#2348에서는, 인터리브가 필요한 것을 나타내는 VOB_FsV=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 CJBI#i)의 인터리브 블록 배치 플래그(도 5 중의 IAF)에 "1"을 기록한다.
단계#2350에서는, 도 12의 시스템 인코더(900)에 의해 얻어지는 타이틀 편집 단위(이하, VOB로 기술한다)에 의해, 내비게이션 팩(NV)의 위치정보(VOB의 선두로부터의 상대 섹터 수)를 검출하고, 도 22의 단계#1816에서 얻은 포매터의 파라미터인 최소 인터리브 유닛의 재생시간 ILVU_MT의 데이터에 근거하여, 내비게이션 팩(NV)을 검출하여, VOBU의 위치정보(VOB의 선두로부터의 섹터 수 등)를 얻어 VOBU 단위로 분할한다. 예컨대, 전술한 예에서는, 최소 인터리브 유닛 재생시간은 2초, VOBU 1개의 재생시간은 0.5초이기 때문에, 4개 VOBU 마다 인터리브 유닛으로서 분할된다. 이 분할 처리는 각각의 다중장면에 상당하는 VOB에 대하여 실행한다.
단계#2352에서는, 단계#2340에서 기록한 각각의 장면에 대응하는 VOB의 제어 정보로서 기술한 셀 블록 모드(도 5 중의 CBM) 기술 순서(“셀 블록 선두”, “셀 블록의 안”, “셀 블록의 최후”로 한 기술 순서)에 따라서, 예컨대, 도 10에 나타낸 MA1의 셀, MA2의 셀, MA3의 셀의 순서로, 단계#2350에서 얻어진 각각의 VOB의 인터리브 유닛을 배치하고, 도 18 또는 도 34에서 나타낸 바와 같은, 인터리브 블록을 형성하여, VTSTT_VOB 데이터에 추가한다.
단계#2354에서는, 단계#2350에서 얻어진 VOBU의 위치정보를 기초로, 각각의 VOBU의 내비게이션 팩(NV)의 VOBU 최종 팩 어드레스(도 8의 VOBU_EA)에 VOBU 선두로부터의 상대 섹터 수를 기록한다.
단계#2356에서는, 단계#2352에서 얻어지는 VTSTT_VOBS 데이터를 기초로, 각각의 셀 선두의 VOBU의 내비게이션 팩(NV) 어드레스, 최후의 VOBU의 내비게이션 팩(NV) 어드레스로서, VTSTT_VOBS의 선두로부터의 섹터 수를 셀 선두 VOBU 어드레스 C_FVOBU_SA와 셀 종단 VOBU 어드레스 C_LVOBU_SA를 기록한다.
단계#2358에서는, 각각의 VOBU의 내비게이션 팩(NV)의 비 심리스 앵글 정보(도 8의NSM_AGLI)에, 그 VOBU의 재생 개시시각에 가까운, 모든 앵글 장면의 VOBU에 포함되는 내비게이션 팩(NV)의 위치정보로서, 단계#2352에서 형성된 인터리브 블록의 데이터 내에서의 상대 섹터 수를, 앵글#iVOBU 개시 어드레스(도 8의 NSML_AGL_C1_DSTA ~ NSML_AGL_C9_DSTA)에 기록한다.
단계#2360에서는, 단계#2350에서 얻어진 VOBU에서, 다중장면 구간의 각각의 장면의 최후 VOBU이면, 그 VOBU의 내비게이션 팩(NV)의 비 심리스 앵글 정보(도 8의 NSML_AGLI)의 앵글#iVOBU 개시 어드레스(도 8의 NSML_AGL_C1_DSTA ~ NSML_AGL_C9_DSTA)에 "7FFFFFFFh"를 기록한다.
이상의 단계에 의해, 다중장면 구간의 비 심리스 절환 멀티앵글 제어에 상당하는 인터리브 블록과 그 다중장면에 상당하는 재생제어 정보인 셀 내의 제어정보가 포맷된다.
이어서 도 29를 이용하여, 도 27의 단계#2322에서, YES, 요컨대 멀티앵글이 심리스 절환 제어라고 판단되는 경우의 서브루틴 단계#2324에 관해서 설명한다. 이하에 나타내는 동작흐름에 의해, 멀티미디어 스트림의 인터리브 배치와 도 5에 나타낸 셀 재생정보(C_PBI#i)의 내용 및 도 8에 나타낸 내비게이션 팩(NV) 내의 정보를, 생성된 DVD의 멀티미디어 스트림에 기록한다.
단계#2370에서는, 다중장면 구간이 멀티앵글 제어를 하는 것을 나타내는 VOB_Fm=1의 정보에 근거하여, 각각의 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 셀 블록 모드(도 5 중의 CBM)에, 예컨대, 도 10에서 나타내는 MA1의 셀의 CBM=“셀 블록 선두=01b”, MA2의 셀의 CBM=“셀 블록의 안=10b”, MA3의 셀의 CBM=“셀 블록의 최후=11b”를 기록한다.
단계#2372에서는, 다중장면 구간이 멀티앵글 제어를 하는 것을 나타내는 VOB_Fm=1의 정보에 근거하여, 각각의 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 셀 블록 타입(도 5 중의 CBT)에 "앵글"을 나타내는 값=“01b”를 기록한다.
단계#2374에서는, 심리스 접속을 하는 것을 나타내는 VOB_Fsb=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 심리스 재생 플래그(도 5 중의 SPF)에 “1”을 기록한다.
단계#2376에서는, 심리스 접속을 하는 것을 나타내는 VOB_Fsb=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 STC 재설정 플래그(도 5 중의 STCDF)에 “1”을 기록한다.
단계#2378에서는, 인터리브가 필요한 것을 나타내는 VOB-Fsb=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 인터리브 블록 배치 플래그(도 5 중의 IAF)에 “1”을 기록한다.
단계#2380에서는, 도 12의 시스템 인코더(900)에 의해 얻어진 타이틀 편집단위(이하, VOB라고 기술한다)에 의해, 내비게이션 팩(NV)의 위치정보(VOB의 선두로부터의 상대 섹터 수)를 검출하고, 도 24의 단계#1854에서 얻은 포매터의 파라미터인 최소 인터리브 유닛의 재생시간 ILVU_MT의 데이터에 근거하여, 내비게이션 팩(NV)을 검출하여 VOBU의 위치정보(VOB의 선두로부터의 섹터 수 등)를 얻어 VOBU 단위로 분할한다. 예컨대, 전술한 예에서는, 최소 인터리브 유닛 재생시간은 2초, VOBU 1개의 재생시간은 0.5초이기 때문에, 4개 VOBU 단위마다 인터리브 유닛으로서 분할한다. 이 분할 처리는, 각각의 다중장면에 상당하는 VOB에 대하여 실행한다.
단계#2382에서는, 단계#2160에서 기록한 각각의 장면에 대응하는 VOB의 제어정보로서, 기술한 셀 블록 모드(도 5중의 CBM) 기술 순서(“셀 블록 선두”, “셀 블록의 안”, “셀 블록의 최후”로 한 기술 순서)에 따라서, 예컨대 도 10에서 나타내는 MA1의 셀, MA2의 셀, MA3의 셀의 순서로, 단계#1852에서 얻어진 각각의 VOB의 인터리브 유닛을 배치하고, 도 18 또는 도 34에 나타낸 바와 같은 인터리브 블록을 형성하여, VTSTT_VOBS 데이터에 추가한다.
단계#2384에서는, 단계#2360에서 얻어진 VOBU의 위치정보를 기초로, 각각의 VOBU의 내비게이션 팩(NV)의 VOBU 최종 팩 어드레스(도 8의 VOBU_EA)에 VOBU 선두로부터의 상대 섹터 수를 기록한다.
단계#2386에서는, 단계#2382에서 얻어지는 VTSTT_VOBS 데이터를 기초로, 각각의 셀의 선두 VOBU의 내비게이션 팩(NV)의 어드레스, 최후 VOBU의 내비게이션 팩(NV)의 어드레스로서, VTSTT_VOBS의 선두로부터의 섹터 수를 셀 선두 VOBU 어드레스 C_FVOBU_SA와 셀 종단 VOBU 어드레스 C_LVOBU_SA를 기록한다.
단계#2388에서는, 단계#2370에서 얻은 인터리브 유닛의 데이터에 근거하여, 그 인터리브 유닛을 구성하는 각각 VOBU의 내비게이션 팩(NV)의 인터리브 유닛 최종 팩 어드레스(1LVU 최종 팩 어드레스)(도 8의 ILVU_EA)에, 인터리브 유닛의 최후 팩까지의 상대 섹터 수를 기록한다.
단계#2390에서는, 각각의 VOBU의 내비게이션 팩(NV) 심리스 앵글 정보(도 8의 SML_AGLI)에, 그 VOBU의 재생 종료시각에 계속되는 개시시각을 갖는, 모든 앵글 장면의 VOBU에 포함되는 내비게이션 팩(NV)의 위치정보로서, 단계#2382에서 형성된 인터리브 블록의 데이터 내에서의 상대 섹터 수를, 앵글#iVOBU 개시 어드레스(도 8의 SML_AGL_C1_DSTA ~ SML_AGL_C9_DSTA)에 기록한다.
단계#2392에서는, 단계#2382에서 배치된 인터리브 유닛이 다중장면 구간의 각각의 장면의 최후의 인터리브 유닛이면, 그 인터리브 유닛에 포함되는 VOBU의 내비게이션 팩(NV)의 심리스 앵글 정보(도 8의 SML_AGLI)의 앵글#iVOBU 개시 어드레스(도 8의 SML_AGL_C1_DSTA ~ SML_AGL_C9_DSTA)에 “FFFFFFFFh”를 기록한다.
이상의 단계에 의해, 다중장면 구간의 심리스 절환 멀티앵글 제어에 상당하는 인터리브 블록과 그 다중장면에 상당하는 재생 제어정보인 셀 내의 제어정보가 포맷된 것으로 된다.
이어서 도 30을 이용하여, 도 27의 단계#2318에서, NO, 요컨대 멀티앵글이 아니고, 퍼렌틀 제어라고 판단되는 경우의 서브루틴 단계#2320에 관해서 설명한다.
이하에 나타내는 동작흐름에 의해, 멀티미디어 스트림의 인터리브 배치와 도 5에 나타낸 셀 재생정보(C_PBI#i)의 내용 및 도 8에 나타낸 내비게이션 팩(NV) 내의 정보를, 생성된 DVD의 멀티미디어 스트림에 기록한다.
단계#2402에서는, 다중장면 구간이 멀티앵글 제어를 하지 않은 것을 나타내는 VOB_Fm=0의 정보에 근거하여, 각각의 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 셀 블록 모드(도 5 중의 CBM)에 “00b”를 기록한다.
단계#2404에서는, 심리스 접속을 하는 것을 나타내는 VOB_Fsb=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 심리스 재생 플래그(도 5 중의 SPF)에 “1”을 기록한다.
단계#2406에서는, 심리스 접속을 하는 것을 나타내는 VOB_Fsb=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 STC 재설정 플래그(도 5 중의 STCDF)에 “1”을 기록한다.
단계#2408에서는, 인터리브가 필요한 것을 나타내는 VOB_FsV=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 인터리브 블록 배치 플래그(도 5 중의 IAF)에 “1”을 기록한다.
단계#2410에서는, 도 12의 시스템 인코더(900)에 의해 얻어지는 편집단위(이하, VOB로 기술한다)에 의해, 내비게이션 팩(NV)의 위치정보(VOB의 선두로부터의 상대 섹터 수)를 검출하고, 도 25의 단계#1874에서 얻은 포매터의 파라미터인 VOB 인터리브 분할 수 ILV_DIV의 데이터에 근거하여, 내비게이션 팩(NV)을 검출하여, VOBU의 위치정보(VOB의 선두로부터의 섹터 수 등)를 얻어, VOBU 단위로 VOB를 설정된 분할 수의 인터리브 유닛으로 분할한다.
단계#2412에서는, 단계#2410에서 얻어진 인터리브 유닛을 교호로 배치한다. 예컨대 VOB 번호의 올라가는 순서로 배치하고, 도 18 또는 도 34에서 나타내는 바와 같은 인터리브 블록을 형성하여, VTSTT_VOBS에 추가한다.
단계#2414에서는, 단계#2386에서 얻어진 VOBU의 위치정보를 기초로, 각각의 VOBU의 내비게이션 팩(NV)의 VOBU 최종 팩 어드레스(도 8의 VOBU_EA)에 VOBU 선두로부터의 상대 섹터 수를 기록한다.
단계#2416에서는, 단계#2412에서 얻어지는 VTSTT_VOBS 데이터를 기초로, 각각의 셀 선두의 VOBU의 내비게이션 팩(NV)의 어드레스, 최후의 VOBU의 내비게이션 팩(NV)의 어드레스로서, VTSTT_VOBS의 선두로부터의 섹터 수를 셀 선두 VOBU 어드레스 C_FVOBU _SA와 셀 종단 VOBU 어드레스 C_LVOBU_SA를 기록한다.
단계#2418에서는, 단계#2412에서 얻은 배치된 인터리브 유닛의 데이터에 근거하여, 그 인터리브 유닛을 구성하는 각각 VOBU의 내비게이션 팩(NV)의 인터리브 유닛 최종 팩 어드레스(ILVU 최종 팩 어드레스)(도 8의 ILVU_EA)에, 인터리브 유닛의 최후의 팩까지의 상대 섹터 수를 기록한다.
단계#2420에서는, 인터리브 유닛 ILVU에 포함되는 VOBU의 내비게이션 팩(NV)에, 다음의 ILVU의 위치정보로서, 단계#2412에서 형성된 인터리브 블록의 데이터 내에서의 상대 섹터 수, 다음 인터리브 유닛 선두 어드레스 NT_ILVU_SA를 기록한다.
단계#2422에서는, 인터리브 유닛 ILVU에 포함되는 VOBU의 내비게이션 팩(NV)에 ILVU 플래그 ILVUflag에 “1”을 기록한다.
단계#2424에서는, 인터리브 유닛 ILVU 내의 최후의 VOBU의 내비게이션 팩(NV)의 유닛 엔드 플래그 UnitENDflag에 “1”을 기록한다.
단계#2426에서는, 각각의 VOB의 최후의 인터리브 유닛 ILVU 내의 VOBU의 내비게이션 팩(NV)의 다음 인터리브 유닛 선두 어드레스 NT_ILVU_SA에 “FFFFFFFFh”를 기록한다.
이상의 단계에 의해, 다중장면 구간의 퍼렌틀 제어에 상당하는 인터리브 블록과 그 다중장면에 상당하는 셀 재생 제어정보인 셀 내의 제어정보가 포맷된다.
이어서 도 31을 이용하여, 도 27의 단계#2312 및 단계#2316에서, NO, 요컨대 다중장면이 아니고, 단일 장면이라고 판단된 경우의 서브루틴 단계#2314에 관해서 설명한다. 이하에 나타내는 동작흐름에 의해, 멀티미디어 스트림의 인터리브 배치와 도 5에서 나타내는 셀 재생정보(C_PBI#i)의 내용 및 도 8에 나타낸 내비게이션 팩(NV) 내의 정보를, 생성된 DVD의 멀티미디어 스트림에 기록한다.
단계#2430에서는, 다중장면 구간이 아니고, 단일 장면 구간인 것을 나타내는 VOB_Fp=0의 정보에 근거하여, 각각의 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 색 블록 모드(도 5 중의 CBM)에 비(非) 셀 블록인 것을 나타내는 “00b”를 기록한다.
단계#2432에서는, 인터리브가 불필요한 것을 나타내는 VOB_FsV=0의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 인터리브 블록 배치 플래그(도 5중의 IAF)에 “0”을 기록한다.
단계#2434에서는, 도 12의 시스템 인코더(900)에 의해 얻어지는 타이틀 편집 단위(이하, VOB로 기술한다)로부터, 내비게이션 팩(NV)의 위치정보(VOB의 선두로부터의 상대 섹터 수)를 검출하고, VOBU 단위로 배치하여, 멀티미디어 초기 스트림의 비디오 등의 스트림 데이터인 VTSTT_VOB에 추가한다.
단계#2436에서는, 단계#2434에서 얻어진 VOBU의 위치정보를 기초로, 각각의 VOBU의 내비게이션 팩(NV)의 VOBU 최종 팩 어드레스(도 8의 VOBU_EA)에 VOBU 선두로부터의 상대 섹터 수를 기록한다.
단계#2438에서는, 단계#2434에서 얻어지는 VTSTT_VOBS 데이터에 근거하여, 각각의 셀 선두의 VOBU의 내비게이션 팩(NV)의 어드레스, 및 최후 VOBU의 내비게이션 팩(NV)의 어드레스를 추출한다. 또한, VTSTT_VOBS의 선두로부터의 섹터 수를 셀 선두 VOBU 어드레스 C_FVOBU_SA로서, VTSTT_VOBS의 종단으로부터의 섹터 수를 셀 종단 VOBU 어드레스 C_LVOBU_SA로서 기록한다.
단계#2440에서는, 도 20의 단계#300 또는 단계#600에서 판단된 상태, 즉 전후의 장면과 심리스 접속을 나타내는 VOB_Fsb=1인지의 여부를 판단한다. 단계#2440에서 YES라고 판단된 경우, 단계#2442로 진행한다.
단계#2442에서는, 심리스 접속을 하는 것을 나타내는 VOB_Fsb=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 심리스 재생 플래그(도 5 중의 SPF)에 “1”을 기록한다.
단계#2444에서는, 심리스 접속을 하는 것을 나타내는 VOB_Fsb=1의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 STC 재설정 플래그(도 5 중의 STCDF)에 “1”을 기록한다.
단계#2440에서 NO라고 판단된 경우, 즉 전의 장면과 심리스 접속하지 않은 경우에는, 단계#2446으로 진행한다.
단계#2446에서는, 심리스 접속을 하는 것을 나타내는 VOB_Fsb=0의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 심리스 재생 플래그(도 5 중의 SPF)에 “0”을 기록한다.
단계#2448에서는, 심리스 접속을 하는 것을 나타내는 VOB_Fsb=0의 정보에 근거하여, 장면에 대응하는 VOB의 제어정보를 기술하는 셀(도 5의 C_PBI#i)의 STC 재설정 플래그(도 5 중의 STCDF)에 “0”을 기록한다.
이상에 나타낸 동작흐름에 의해, 단일 장면 구간에 상당하는 멀티미디어 스트림의 배치와 도 5에서 나타내는 셀 재생정보(C_PBI#i)의 내용 및 도 8에 나타내는 내비게이션 팩(NV) 내의 정보가, 생성된 DVD의 멀티미디어 스트림 상에 기록된다.
이하에, 본 발명에 따른 오소링 인코더(EC)를 상술한 퍼렌틀 로크 제어 및 멀티앵글 제어에서의 택일적 재생을 가능하게 하는 오소링 인코딩에 관하여 더욱 자세히 설명한다. 택일적 재생을 가능하게 하는 오소링 인코딩은 이하의 6개 공정으로 대별될 수 있다.
공정1 : 기본 인코드 파라미터(EEParam) 생성
· 각각의 소재(영상 정보, 음성 정보, 부영상 정보)의 파라미터를 입력한다.
· 앵글 구간을 구성하는 것으로 되는 소재는 이것을 지정한다.
· 퍼렌틀 구간을 구성하는 것으로 되는 소재는 이것을 지정한다.
공정2 : EEParam 체크 및 피드백
「앵글구간의 검증」
· 앵글 구간의 소재의 균질성을 체크
영상의 길이가 같은지 검증한다.
음성, 부영상의 채널수가 같은지 검증한다.
균질성이 보증될 수 없으면「에러」를 표시한다.
「퍼렌틀 구간의 검증」
· 상기 제1식 및 제4식을 만족하는 M 값이 있는지를 검증한다.
M 값이 없으면「에러」를 표시한다.
공정3 : 기본 인코드
· 각각의 소재를 EEParam에 근거하여 인코딩한다.
공정4: 시스템 인코드
공정5: 포매터
공정6: 디스크 생성
또한, 공정4, 5 및 6은, 도 20 및 도 21을 참조하여 서술한 단계#1800 ~ #2300과 기본적으로 동일하기 때문에 설명을 생략한다.
여기에서는, 우선 도 45를 참조하여, 편집 제어 지시 데이터(St7)를 생성하는 편집 정보 작성부(100R)에 관해서 설명한다. 본 예에서의 편집 정보 작성부(100R)는, 도 37 및 도 38에 나타내는 편집 정보 작성부(100)와 유사한 구조를 갖고 있으나, 컴퓨터 및 그 제어 소프트와, 비디오 테이프 드라이브 장치와, 테이프 구동장치로서 구성된다. 도 45에서, (102R)은 편집 정보 입력부, (104R)은 에러 정보 제시부, (108R)은 편집 정보 에러 검출부, (110R)은 기본 인코드용 파라미터 생성부, 및 (112R)은 기본 스트림 입력 버퍼이다.
편집 정보 입력부(102R)는, 바람직하게는 소프트웨어로서 구성되는 문안(文案) 편집기이고, 컴퓨터의 키보드 등의 입력 수단에 의해 사용자가 입력하는 정보를 수신하여, 컴퓨터 내 메모리(도면에 나타내지 않음) 내에 유지한다. 유지되는 데이터는 각각, 도 43에 나타내는 비디오 테이블 VTBL(VTBL: Video Table)과 도 44에 나타내는 오디오 테이블 ATBL(ATBL: Audio Table)이다.
편집 정보 에러 검출부(108R)는, 바람직하게는 소프트웨어로서 구성되어, 생성된 VTBL과 ATBL의 내용을 검증하고, 부적절한 설정이 있으면, 에러 값을 에러 정보 제시부(104R)에 출력하고, 부적절한 설정이 없으면 VTBL과 ATBL을 기본 인코딩용 파라미터 생성부(110R)로 출력한다. 또한, 편집 정보 작성부(100R)의 동작에 관하여서는, 도 46의 흐름도를 참조하여 후에 상세히 설명한다.
에러 정보 제시부(104R)는, 바람직하게는 소프트웨어로서 구성되어, 편집 정보 에러 검출부(108R)로부터 입력된 에러 값을 해석하고 사용자에게 시각적으로 피드백시킨다. 구체적으로는 에러 값에 포함되는 정보에 의해, VTBL 및 ATBL의 어느 쪽의 파라미터가 부적절한가를 판정하고, 해당 파라미터가 부적절한 취지의 경고 메시지를 컴퓨터의 디스플레이 장치에 표시한다.
기본 스트림 입력 버퍼(112R)는, 외부로부터의 영상 소재, 음성 소재를 수신한다. 전형적으로는 영상 소재를 수신하기 위한 비디오 테이프 구동 장치와, 음성 소재, 부영상 소재를 수신하기 위한 테이프 구동 장치이다.
기본 인코딩용 파라미터 생성부(110R)는, 바람직하게는 소프트웨어로서 구성되고, VTBL과 ATBL을 해석하여, 파라미터를 기본 스트림 입력 버퍼(112)와 외부의 비디오 인코더, 오디오 인코더에 출력한다.
예컨대, 도 43에 나타내는 VTBL이면, 타임코드(St6)는 기본 스트림 입력 버퍼(112R)에, 그 이외는 편집 제어 지시 데이터(St7R)로서 인코드 시스템 제어부(200)에 출력한다.
또한, 도 44에 나타내는 ATBL이면, 타임코드(St6)는 기본 스트림 입력 버퍼(112R)에, 그 이외는 편집 제어 지시 데이터(St7R)로서 인코드 시스템 제어부(200)에 출력한다.
이어서 각각의 공정에 관해서, 도 42, 도 43, 도 44, 도 45 및 도 46을 참조하여, 구체적인 예를 이용하여 설명한다.
도 42는, 제작하는 디스크의 비디오 데이터와 그 재생 순서를 나타내는 일례이다.
도 42에서, 구간 B는, 비디오 데이터 v02, v02cut로서 구성되는 퍼렌틀 구간이다. v02cut는 v02로부터, 시청 제한의 목적으로 일부의 영상이 컷(cut)된 비디오 데이터를 나타낸다. 구간 D는, 비디오 데이터 v04en, v04fr, v04es 및 v04pt로서 구성되는 앵글 구간이다. v04en, v04fr, v04es, 및 v04pt는 상이한 4개의 앵글로써 촬영된 비디오 데이터이다. 이하에, 각각의 공정마다 동작을 상세히 설명한다.
우선, 제1공정에서, 기본 인코딩용의 파라미터 EEParm 생성이 생성된다. 편집 정보 입력부(102R)는 사용자의 입력을 수신하여, 비디오 인코딩용의 파라미터인 비디오 테이블 VTBL과 오디오 인코딩용의 파라미터인 오디오 테이블 ATBL을 생성한다.
도 43에, 도 42에 나타내는 비디오 인코더용 입력 데이터의 비디오 테이블 VTBL의 일례를 나타낸다. 동 도면에 나타낸 바와 같이, 비디오 테이블 VTBL에는, 왼쪽으로부터 순서로, VOB, Audio, SP, ATTR, START_TC, END_TC, BR, 및 132의 8개 필드가 있으며, 각각의 의미는 다음과 같다.
· VOB : 인터리브 대상이 되는 MPEG 스트림 이름
· Audio : MPEG 스트림의 음성 스트림 수
· SP : MPEG 스트림의 부영상 스트림 수
· ATTR : 속성정보 : 앵글 구간은 “AG”, 퍼렌틀 구간은 “DC”, 통상 구간은 “SL”
· START_TC : 인코딩용 소재 테이프의 개시 코드
· END_TC : 인코딩용 소재 테이프의 종료 코드
· BR : 비트 전송속도
· I32 : 역 텔레시니의 지정 플래그
이다.
도 44에, 오디오 인코더용 입력 데이터의 오디오 테이블 ATBL을 나타낸다. 동 도면에서는, 오디오 테이블 ATBL도, 왼쪽으로부터 VOB, STR_NO MODE, START_TC, END_TC, ATTR, BR 및 FQ의 8개 필드가 있으며, 각각의 의미는 다음과 같다.
· VOB : 인터리브 대상이 되는 MPEG 스트림 이름
· STR_ NO : 스트림 번호
· MODE : 인코드 모드, AC3 또는 LPCM
· START_TC : 인코딩용 소재 테이프의 개시 코드
· END_TC : 인코딩용 소재 테이프의 종료 코드
· ATTR : 속성정보 : 앵글 구간은 “AG”, 퍼렌틀 구간은 “DC”, 통상 구간은 “SL”
· BR : 비트 전송속도
· FQ : 샘플링 주파수
이다.
또한, 각각의 필드 열거 순서가 재생의 순서와 일치한다. 또한, 앵글이나 퍼렌틀 구간은 연속적으로 열거하는 포맷으로 되어 있다. 앵글 구간의 열거 순서는 앵글 번호의 순서이기도 하다.
이어서, 제2공정에서 기본 파라미터 EEParam의 체크 및 피드백이 실행된다. 에러 정보 제시부(104R) 및 편집 정보 에러 검출부(108R)에 의해, 멀티앵글 구간과 퍼렌틀 로크 구간의 검증이 실행된다. 이하에 도 46에 나타내는 흐름도를 참조하여, 멀티앵글 구간과 퍼렌틀 로크 구간의 검증에 관해서 설명한다.
우선, 단계S1에서, 비트 전송속도 판정이 실행된다. 비트 전송속도 판정에서는, 최초로 각각의 VOB(MPEG 스트림)의 비트 전송속도가 소정의 값 이하인지의 여부를 판정한다.
즉,
· VOB의 영상 정보에 할당되는 비트 전송속도 : VTBL의 “BR”
· VOB의 음성 정보에 할당되는 비트 전송속도 : ATBL의 “BR”
· VOB의 부영상 정보에 할당되는 비트 전송속도 : 고정 값
· VOB의 음성 스트림 수 : VTBL의 “Audio”
· VOB의 부영상 스트림 수 : VTBL의 “SP”
로부터, VOB 전체의 비트 전송속도를 구하고, 이것이 비디오 버퍼의 전송속도 보다 하회(下回)하는 것을 확인한다. 비트 전송속도가 적정 값이 아니면, 단계 S9로 진입하고, 경고 메시지를 모니터 장치에 표시하는 등의 에러 처리를 한다.
단계S3에서, 구간이 판정된다. 우선, 비디오 테이블 VTBL의 각각의 엔트리를 순서로 검사하여, 앵글 구간이나 퍼렌틀 구간을 검출한다. 구체적으로는 속성 정보의 값이 “AR”인 엔트리는 앵글이라고 판단하고, 이후, 속성 정보가 “AG”로서 연속하는 엔트리의 집합이 앵글 구간을 형성하는 비디오 데이터의 엔트리로 판정한다. 퍼렌틀도 마찬가지로 그 퍼렌틀 구간을 판정한다. 퍼렌틀 구간의 경우에는, 단계S5로 진행하고, 멀티앵글 구간이면 단계S7로 진행한다.
단계S5에서, 퍼렌틀 구간이 검증된다. 퍼렌틀 구간으로서 유지된 각각의 VOB의 엔트리를 검증하고, 상술한 식 1, 식 4를 만족하는 M 값인지 여부를 판정한다. 적정값이 아니면 에러 처리를 한다. (경고 메시지를 모니터 장치에 표시한다.)
단계S7에서, 앵글 구간이 검증된다. 앵글 구간으로서 상술한 조건을 모두 만족하고, 앵글 구간에 속하는 각각의 VOB의 균질성이 보증될 수 있는지의 여부를 판정한다. 적정값이 아니면 에러 처리를 한다. (경고 메시지를 모니터 장치에 표시한다.)
단계S9에서, 편집 정보 작성부(100R)로부터 비디오 테이블 VTBL 및 오디오 테이블 ATBL이 기본 인코딩용 파라미터 생성부(110R)에 출력된 후, 다음의 공정3으로 진행한다.
제3공정에서는, 기본 인코딩이 실시된다. 기본 인코딩용 파라미터 생성부(110R), 기본 스트림 입력 버퍼(112R)와, 인코더 보드 등(도면에 도시 없음)에 의해, 각각의 소재를 기본 인코드 파라미터(EEParam)에 근거하여 인코딩한다. 기본 인코딩용 파라미터 생성부(110R)는, 비디오 테이블 VTBL 및 오디오 테이블 ATBL에 따라서, 기본 스트림 입력 버퍼(112R)(테이프 장치 등)를 제어하여, 소재가 되는 데이터를 외부의 인코더에 출력시키고, 동시에 외부의 인코더에 인코딩용의 파라미터를 출력한다. 또한, 기본 인코딩용 파라미터 생성부(110R) 대신에, 인코드 시스템 제어부(200)에 기본 스트림 입력 버퍼(112R)의 제어를 실행시키더라도 좋다.
또한, 공정4, 공정5, 및 공정6은, 전술한 바와 같이, 도 20 및 도 21을 참조하여 설명한 단계#1800 ~ #2300에서 기본적으로 동일하기 때문에 설명을 생략한다.
또한 제4공정, 제5공정 및 제6공정에 대해서는 설명을 생략한다.
<3.7> 디코더의 흐름도
<3.7.1> 디스크로부터 스트림 버퍼 전송 흐름
이하에, 도 32 및 도 33을 참조하여, 시나리오 선택 데이터(St51)에 따라서 디코드 시스템 제어부(2300)가 생성하는 디코드 정보 테이블에 관해서 설명한다. 디코드 정보 테이블은, 도 32에 나타내는 디코드 시스템 테이블과, 도 33에 나타내는 디코드 테이블로서 구성되어 있다.
도 32에 나타낸 바와 같이 디코드 시스템 테이블은, 시나리오 정보 레지스터부와 셀 정보 레지스터부로서 이루어진다. 시나리오 정보 레지스터부는, 시나리오 선택 데이터(St51)에 포함되는 사용자가 선택한 타이틀 번호 등의 재생 시나리오 정보를 추출하여 기록한다. 셀 정보 레지스터부는, 시나리오 정보 레지스터부에서 추출된 사용자의 선택 시나리오 정보에 근거하여, 프로그램 체인을 구성하는 각각의 셀 정보 재생에 필요한 정보를 추출하여 기록한다.
또한, 시나리오 정보 레지스터부는, 앵글 번호 레지스터 ANGLE_NO_reg, VTS 번호 레지스터 VTS_NO_reg, PGC 번호 레지스터 VTS_PGCI_NO_reg, 오디오 ID 레지스터 AUDIO_ID_reg, 부영상 ID 레지스터 SP_ID_reg 및 SCR용 버퍼 레지스터 SCR_buffer를 포함한다.
앵글 번호 레지스터 ANGLE_NO_reg는, 재생하는 PGC에 멀티앵글이 존재하는 경우, 어느 앵글을 재생할지의 정보를 기록한다. VTS 번호 레지스터 VTS_NO_reg는, 디스크 상에 존재하는 복수의 VTS 중, 다음에 재생하는 VTS의 번호를 기록한다. PGC 번호 레지스터 VTS_PGCI_NO_reg는 퍼렌틀 등의 용도로 VTS 중 존재하는 복수의 PGC 중, 어떤 PGC를 재생할 것인가를 지시하는 정보를 기록한다.
오디오 ID 레지스터 AUDIO_ID_reg는 VTS 중 존재하는 복수의 오디오 스트림 중, 어느 것을 재생할 것인가를 지시하는 정보를 기록한다. 부영상 ID 레지스 SP_ID_reg는 VTS 중에 복수의 부영상 스트림이 존재하는 경우는, 어떤 부영상 스트림을 재생할 것인가를 지시하는 정보를 기록한다. SCR용 버퍼 SCR_buffer는, 도 7에 나타낸 바와 같이, 팩 헤더에 기술되는 SCR을 일시 기억하는 버퍼이다. 이 일시 기억된 SCR은, 도 3을 참조하여 설명한 바와 같이, 스트림 재생 데이터(St63)로서 디코드 시스템 제어부(2300)에 출력된다.
셀 정보 레지스터부는, 셀 블록 모드 레지스터 CBM_reg, 셀 블록 타입 레지스터 CBT_reg, 심리스 재생 플래그 레지스터 SPF_reg, 인터리브 할당 플래그 레지스터 IAF_reg, STC 재설정 플래그 레지스터 STCDF_reg, 심리스 앵글 절환 플래그 레지스터 SACF_reg, 셀 최초의 VOBU 개시 어드레스 레지스터 C_ FVOBU_SA_reg, 셀 최후의 VOBU 개시 어드레스 레지스터 C_LVOBU_SA_reg를 포함한다.
셀 블록 모드 레지스터 CBM_reg는, 복수의 셀이 1개의 기능 블록을 구성하고 있는지의 여부를 나타내고, 구성하고 있지 않는 경우는 값으로서 “N_BLOCK”을 기록한다. 또한, 셀이 1개의 기능 블록을 구성하고 있는 경우에, 그 기능 블록의 선두 셀의 경우 “F_CELL”을, 최후 셀의 경우 “L_CELL”을, 그 사이의 셀의 경우 “BLOCK”를 값으로서 기록한다.
셀 블록 타입 레지스터 CBT_reg는, 셀 블록 모드 레지스터 CBM_reg로서 나타낸 블록의 종류를 기록하는 레지스터이며, 멀티앵글의 경우 “A_BLOCK”를, 멀티앵글이 아닌 경우 “N_BLOCK”를 기록한다.
심리스 재생 플래그 레지스터 SPF_reg는, 해당 셀이 이전에 재생된 셀 또는 셀 블록과 심리스로 접속하여 재생하는지를 나타내는 정보를 기록한다. 이전의 셀 또는 이전의 셀 블록과 심리스로 접속하여 재생하는 경우에는, 값으로서 “SML”을, 심리스 접속이 아닌 경우는 값으로서 “NSML”을 기록한다.
인터리브 할당 플래그 레지스터 IAF_reg는, 해당 셀이 인터리브 영역에 배치되어 있는지 여부의 정보를 기록한다. 인터리브 영역에 배치되어 있는 경우에는 값으로서 “ILVB”를, 인터리브 영역에 배치되어 있지 않은 경우는 “N_ILVB”를 기록한다.
STC 재설정 플래그 레지스터 STCDF_reg는, 동기를 취할 때에 사용하는 STC를 셀의 재생 시에 재설정할 필요가 있는지 여부의 정보를 기록한다. 재설정이 필요한 경우에는 값으로서 “STC_RESET”를, 재설정이 불필요한 경우에는 값으로서, “STC_NRESET”를 기록한다.
심리스 앵글 체인지 플래그 레지스터 SACF_reg는, 해당 셀이 앵글 구간에 속하고, 또한, 심리스로 절환하는지의 여부를 나타내는 정보를 기록한다. 앵글 구간에서, 또한 심리스로 절환하는 경우에는 값으로서 “SML”을, 그렇지 않은 경우는 “NSML”을 기록한다.
셀 최초의 VOBU 개시 어드레스 레지스터 C_FVOBU_SA_reg는, 셀 선두 VOBU 개시 어드레스를 기록한다. 그 값은 VTS 타이틀용 VOBS(VTSTT_VOBS)의 선두 셀의 논리 섹터로부터의 거리를 섹터 수로 나타내고, 해당 섹터 수를 기록한다. 셀 최후의 VOBU 개시 어드레스 레지스터 C_LVOBU_SA_reg는, 셀 최종 VOBU 개시 어드레스를 기록한다. 그 값은 VTS 타이틀용 VOBS(VTSTT_VOBS)의 선두 셀의 논리 섹터로부터의 거리를 섹터 수로 나타내고, 해당 섹터 수를 기록한다.
이어서, 도 33의 디코드 테이블에 관해서 설명한다. 동 도면에 나타낸 바와 같이, 디코드 테이블은 비 심리스 멀티앵글 정보 레지스터부, 심리스 멀티앵글 정보 레지스터부, VOBU 정보 레지스터부, 심리스 재생 레지스터부로서 이루어진다.
비 심리스 멀티앵글 정보 레지스터부는, NSML_AGL_C1_DSTA_reg ~ NSML_AGL_C9_DSTA_reg를 포함한다.
NSML_AGL_C1_DSTA_reg ~ NSML_AGL_C9_DSTA_reg에는, 도 8에 나타낸 PCI 패킷 중의 NSML_AGL_C1_DSTA ~ NSML_AGL_C9_DSTA를 기록한다.
심리스 멀티앵글 정보 레지스터부는 SML_AGL_C1_DSTA_reg ~ SML_AGL_C9_DSTA_reg를 포함한다.
SML_AGL_C1_DSTA_reg ~ SML_AGL_C9_DSTA_reg에는, 도 8에서 나타낸 DSI 패킷 중의 SML_AGL_C1_DSTA ~ SML_AGL_C9_DSTA를 기록한다.
VOBU 정보 레지스터부는 VOBU 최종 어드레스 레지스터 VOBU_EA_reg를 포함한다.
VOBU정보 레지스터 VOBU_EA_reg에는, 도 8에 나타낸 DSI 패킷 중의 VOBU_EA를 기록한다.
심리스 재생 레지스터부는 인터리브 유닛 플래그 레지스터 ILVU_flag_ reg, 유닛 엔드 플래그 레지스터 UNIT_END_flag_reg, ILVU 최종 팩 어드레스 레지스터 ILVU_EA_reg, 다음의 인터리브 유닛 개시 어드레스 NT_ILVU_SA_reg, VOB 내 선두 비디오 프레임 표시 개시시각 레지스터 VOB_V_SPTM_reg, VOB 내 최종 비디오 프레임 표시 종료시각 레지스터 VOB_EPTM_reg, 오디오 재생 정지시각1 레지스터 VOB_A_GAP_PTM1_reg, 오디오 재생 정지시각2 레지스터 VOB_ A_GAP_PTM2_reg, 오디오 재생 정지기간1 레지스터 VOB_A_GAP_LEN1_reg, 오디오 재생 정지기간2 레지스터 VOB_A_GAP_LEN2_reg를 포함한다.
인터리브 유닛 플래그 레지스터 ILVU_flag_reg는, VOBU가 인터리브 영역에 존재하는지를 나타내는 것이며, 인터리브 영역에 존재하는 경우 “ILVU”를, 인터리브 영역에 존재하지 않는 경우 “N_ILVU”를 기록한다. 유닛 엔드 플래그 레지스터 UNIT_END_flag_reg는, VOBU가 인터리브 영역에 존재하는 경우, 해당 VOBU가 ILVU의 최종 VOBU인지를 나타내는 정보를 기록한다. ILVU는, 연속 판독된 단위이기 때문에, 현재 판독되고 있는 VOBU가, ILVU의 최후의 VOBU이면 “END”를, 최후의 VOBU가 아니면 “N_END”를 기록한다.
ILVU 최종 팩 어드레스 레지스터 ILVU_EA_reg는, VOBU가 인터리브 영역에 존재하는 경우, 해당 VOBU가 속하는 ILVU의 최종 팩의 어드레스를 기록한다. 여기서 어드레스는 해당 VOBU의 NV로부터의 섹터 수이다.
다음의 ILVU 개시 어드레스 레지스터 NT_ILVU_SA_reg는, VOBU가 인터리브 영역에 존재하는 경우, 다음의 ILVU의 개시 어드레스를 기록한다. 여기서 어드레스는 해당 VOBU의 NV로부터의 섹터 수이다.
VOB 내 선두 비디오 프레임 표시 개시시각 레지스터 VOB_V_SPTM_reg는 VOB의 선두 비디오 프레임의 표시를 시작하는 시각을 기록한다.
VOB 내 최종 비디오 프레임 표시 종료시각 레지스터 VOB_V_EPTM_reg는 VOB의 최종 비디오 프레임의 표시가 종료하는 시각을 기록한다.
오디오 재생 정지시각1 레지스터 VOB_A_GAP_PTM1_reg는 오디오 재생을 정지시키는 시각을, 오디오 재생 정지기간1 레지스터 VOB_A_GAP_LEN1_reg는 오디오 재생을 정지시키는 기간을 기록한다.
오디오 재생 정지시각2 레지스터 VOB_A_GAP_PTM2_reg 및 오디오 재생 정지기간2 레지스터 VOB_A_GAP_LEN2_reg에 관해서도 마찬가지이다.
<3.8> DVD 플레이어
도 41에 본 발명에 따른 멀티미디어 광디스크 오소링 시스템에 의해서 생성된 멀티미디어 비트 스트림이 기록된 광디스크인 DVD를 재생장치의 일례로 나타낸다. DVD는 DVD 플레이어(1)의 트레이(tray) 내에 수용되어 이용된다. DVD 플레이어(1)는, DVD로부터 재생된 화상이나 음성을 표시 및 발성시키는 텔레비전 모니터(2)에 접속되어 있다. 또한, 사용자가 DVD 플레이어(1) 및 텔레비전 모니터(2)의 조작을 하기 위한 원격제어기(91)가 마련되어 있다.
DVD 플레이어(1)는 정면에 개구를 갖추고, 개구의 깊이 방향에는 광디스크를 장착하는 구동 기구가 설치되어 있다. DVD 플레이어(1)의 정면에는 원격제어기(91)가 발사하는 적외선 수광용 수광 소자를 갖춘 원격제어기 수신부(92)가 마련되어 있으며, 조작자가 파지한 원격제어기에 대한 조작이 있으면, 원격제어기 수신부(92)는 키 신호를 수신한 취지의 삽입 신호를 발생한다.
DVD 플레이어(1)의 배면에는, 비디오 출력 단자, 오디오 출력 단자가 구비되어 있으며, 여기에 AV 코드를 접속하는 것으로써 DVD에서 재생된 영상 신호를 가정용의 대형 텔레비전 모니터(2)에 출력할 수 있다. 이것에 의해서 조작자는, 33인치, 35인치 등 가정용의 대형 텔레비전에 의해서, DVD의 재생영상을 즐길 수 있다. 이상의 설명으로부터 알 수 있듯이, 본 실시예의 DVD 플레이어(1)는 퍼스널 컴퓨터 등과 접속하여 사용하는 것이 아니고, 가정용 전자화 기기로서, 텔레비전 모니터(2)와 함께 사용하는 것이다.
원격제어기(91)는 그 케이스 표면에 스프링으로 힘을 받는 키 패드가 설치되어 있으며, 눌려진 키에 대응하는 코드를 적외선으로 출력한다. 키 패드에는, 『POWER』키나,『재생』,『정지』,『포즈(pause)』,『고속』,『되감기』키에 추가해서, 앵글을 절환하기 위한『앵글』키나, 퍼렌틀 레벨을 설정하기 위해 설정 메뉴를 호출하기 위한『설정』키 등이 배치되어 있다.
이상과 같이, 본 발명에 따른 멀티미디어 스트림 생성 방법과 멀티미디어 광디스크 오소링 시스템은, 여러 가지 정보를 반송하는 비트 스트림으로서 구성되는 타이틀을 사용자의 요망에 응해서 편집하여 새로운 타이틀을 구성할 수 있는 오소링 시스템에 이용하는데 적합하며, 더 자세히 말하면, 최근 개발된 디지털 비디오 디스크 시스템, 소위 DVD 시스템에 적합하다.

Claims (20)

  1. 일련의 관련된 내용을 갖는 각각의 타이틀을 구성하는 동화상 데이터, 오디오 데이터 및 부영상 데이터 정보를 반송하는 소스 스트림을 소정 수로 분할함으로써, 택일적인 선택 구간으로 연속 배열된 편집단위를 갖는 비트 스트림을 생성하는 오소링 인코더(authoring encoder)에 있어서,
    소스 스트림의 내용을 편집단위로 제시하는 수단,
    제시된 편집단위에 대하여 편집지시 데이터를 생성하는 수단,
    편집지시 데이터를 검증하여, 편집지시 데이터가 적정한 경우에는 편집지시 데이터를 출력하고, 편집지시 데이터가 부적정한 경우에는 에러 신호를 생성하는 검증 수단, 및
    상기 검증 수단에 의해 출력된 편집지시 데이터에 근거하여 소스 스트림을 기본 인코딩하는 파라미터를 생성하는 수단을 포함하는 것을 특징으로 하는 오소링 인코더.
  2. 제1항에 있어서, 상기 편집지시 데이터는 영상관리 정보와 음성관리 정보를 포함하는 것을 특징으로 하는 오소링 인코더.
  3. 제2항에 있어서, 에러 신호에 근거하여 영상관리 정보나 또는 음성관리 정보 중 어느 하나가 부적정한지를 표시하는 에러 정보 표시 수단을 더 포함하는 것을 특징으로 하는 오소링 인코더.
  4. 제2항에 있어서, 상기 영상관리 정보에 근거하여, 택일적인 재생 구간이 퍼렌틀 로크(parental lock) 제어 구간인지 또는 멀티앵글(multi-angle) 제어 구간인지의 여부를 판단하는 구간 판정 수단을 더 포함하는 것을 특징으로 하는 오소링 인코더.
  5. 제4항에 있어서, 상기 택일적 재생 구간이 퍼렌틀 로크 제어 구간인 경우, 상기 검증 수단은, 소스 스트림의 소정의 수가 제1정수(定數)(Mmin)보다 크고 제2정수(Mmax)보다 작은 경우에는 택일적 재생 구간이 적정하다고 판단하고, 그렇지 않은 경우에는 택일적 재생 구간이 부적정하다고 판단하는 것을 특징으로 하는 오소링 인코더.
  6. 제5항에 있어서, 상기 제1정수(Mmin)는,
    Mmin≤VOBMaxTime/JMT
    로 규정되며, 여기서 VOBMaxTime는 상기 택일적 재생 구간에 관련된 동화상 데이터의 최장시간이고, JMT는 비트 스트림을 재생시키는 수단의 최대 점프시간이며,
    상기 제2정수(Mmax)는,
    Mmax≤VOBMinTime/(JT+(ILUM/BitRate))
    로 규정되며, 여기서 VOBMinTime는 상기 택일적 재생 구간에 관련된 동화상 데이터의 최단시간이고, JT는 재생 수단의 점프 소요시간이며, ILUM은 인터리브 유닛의 데이터 크기이고, BitRate는 재생 수단의 트랙 버퍼로의 전송속도인 것을 특징으로 하는 오소링 인코더.
  7. 제4항에 있어서, 상기 택일적 재생 구간이 멀티앵글 제어 구간인 경우, 상기 검증 수단은, 택일적 재생 구간에 관련된 동화상 데이터의 모든 GOP(group of picture) 구조가 동일한 경우에는 상기 택일적 구간이 적정하다고 판단하고, 그렇지 않은 경우에는 상기 택일적 재생 구간이 부적정하다고 판단하는 것을 특징으로 하는 오소링 인코더.
  8. 일련의 관련된 내용을 갖는 각각의 타이틀을 구성하는 동화상 데이터, 오디오 데이터 및 부영상 데이터 정보를 반송하는 소스 스트림을 소정 수로 분할함으로써, 택일적인 선택 구간으로 연속 배열된 편집단위를 갖는 비트 스트림을 생성하는 비트 스트림 생성 방법에 있어서,
    소스 스트림의 내용을 편집단위로 제시하는 단계,
    제시된 편집단위에 대하여 편집지시 데이터를 생성하는 단계,
    상기 편집지시 데이터를 검증하여, 편집지시 데이터가 적정한 경우에는 상기 편집지시 데이터를 출력하고, 상기 편집지시 데이터가 부적정한 경우에는 에러 신호를 생성하는 단계, 및
    출력된 편집지시 데이터에 근거하여 소스 스트림을 기본 인코딩하는 파라미터를 생성하는 단계를 포함하는 것을 특징으로 하는 비트 스트림 생성 방법.
  9. 제8항에 있어서, 상기 편집지시 데이터는 영상 정보와 음성 정보를 포함하는 것을 특징으로 하는 비트 스트림 생성 방법.
  10. 제9항에 있어서, 상기 에러 신호에 근거하여 상기 영상 정보 또는 음성 정보 중 어느 하나가 부적정한지를 표시하는 단계를 더 포함하는 것을 특징으로 하는 비트 스트림 생성 방법.
  11. 제9항에 있어서, 상기 영상 정보에 근거하여, 택일적 재생 구간이 퍼렌틀 로크 제어 구간인지 또는 멀티앵글 제어 구간인지의 여부를 판단하는 단계를 더 포함하는 것을 특징으로 하는 비트 스트림 생성 방법.
  12. 제11항에 있어서, 상기 택일적 재생 구간이 퍼렌틀 로크 제어 구간인 경우, 소스 스트림의 소정의 수가 제1정수(Mmin)보다 크고 제2정수(Mmax)보다 작은 경우에는 상기 택일적 재생 구간이 적정하다고 판단하고, 그렇지 않은 경우에는 상기 택일적 재생 구간이 부적정하다고 판단하는 단계를 더 포함하는 것을 특징으로 하는 비트 스트림 생성 방법.
  13. 제12항에 있어서, 상기 제1정수(Mmin)는,
    Mmin≥VOBMaxTime/JMT
    로 규정되며, 여기서 VOBMaxTime은 상기 택일적 재생 구간에 관련된 상기 동화상 데이터의 최장시간이고, JMT는 상기 비트 스트림을 재생하는 수단의 최대 점프시간이며,
    상기 제2정수(Mmax)는,
    Mmax≤VOBMinTime/(JT+(ILUM/BitRate))
    로 규정되며, 여기서 VOBMinTime는 상기 택일적 재생 구간에 관련된 상기 동화상 데이터의 최단시간이고, JT는 재생 수단의 점프 소요시간이며, ILUM은 인터리브 유닛의 데이터 크기이고, BitRate는 재생 수단의 트랙 버퍼로의 전송속도인 것을 특징으로 하는 비트 스트림 생성 방법.
  14. 제11항에 있어서, 상기 택일적 재생 구간이 멀티앵글 제어 구간의 경우, 택일적 재생 구간에 관련된 상기 동화상 데이터의 모든 GOP 구조가 동일한 경우에는 상기 멀티앵글 제어 구간이 적정하다고 판단하고, 그렇지 않은 경우에는 상기 택일적 재생 구간이 부적정하다고 판단하는 단계를 더 포함하는 것을 특징으로 하는 비트 스트림 생성 방법.
  15. 일련의 관련된 내용을 갖는 각각의 타이틀을 구성하는 동화상 데이터, 오디오 데이터 및 부영상 데이터 정보를 반송하는 소스 스트림을 소정 수로 분할함으로써, 택일적인 선택 구간으로 연속 배열된 편집단위를 갖는 비트 스트림이 기록된 광디스크 매체의 제조 방법에 있어서,
    소스 스트림의 내용을 편집단위로 제시하는 단계,
    제시된 편집단위에 대하여 편집지시 데이터를 생성하는 단계,
    편집지시 데이터를 검증하여, 상기 편집지시 데이터가 적정한 경우에는 상기 편집지시 데이터를 출력하고, 상기 편집지시 데이터가 부적정한 경우에는 에러 신호를 생성하는 단계,
    상기 편집지시 데이터에 근거하여 인코딩 파라미터를 생성하는 단계,
    생성된 인코딩 파라미터에 근거하여 소스 스트림을 인코딩하는 단계,
    생성된 인코딩 파라미터에 근거하여 인코딩된 소스 스트림을 인코딩하여 시스템 스트림을 생성하는 단계,
    광디스크 매체의 기록면을 따라 인코딩된 시스템 스트림을 포맷(format)시키는 단계, 및
    포맷되고 인코딩된 시스템 스트림을 상기 광디스크 매체의 기록면에 기록하는 단계를 포함하는 것을 특징으로 하는 광디스크 매체의 제조 방법.
  16. 제15항에 있어서, 상기 편집지시 데이터는 영상 정보를 포함하며,
    상기 제조 방법은 상기 영상 정보에 근거하여 택일적 재생 구간이 멀티앵글 제어 구간인지의 여부를 판단하는 단계를 더 포함하며, 상기 택일적 재생 구간이 멀티앵글 제어 구간인 경우, 상기 택일적 재생 구간에 관련된 동화상 데이터의 모든 GOP 구조가 동일한 경우에만, 상기 포맷되고 인코딩된 시스템 스트림을 기록하는 단계가 실행되는 것을 특징으로 하는 광디스크 매체의 제조 방법.
  17. 비트 스트림이 영상 정보와 음성 정보를 갖는 적어도 하나의 비디오 오브젝트(video object)를 가지며, 또한 적어도 하나의 비디오 오브젝트의 적어도 하나는 복수의 비디오 오브젝트로부터 택일적으로 재생되는 1개의 비디오 오브젝트로 되는, 디스크에 저장되는 비트 스트림을 생성하는 오소링 시스템에 있어서,
    상기 오소링 시스템은
    적어도 하나의 비디오 오브젝트에 대한 인코딩 조건 정보와, 적어도 하나의 택일적으로 재생되는 비디오 오브젝트에 대한 선택 정보를 수신하는 수신 수단,
    상기 인코딩 조건 정보와 상기 선택 정보를 저장하는 저장 수단,
    상기 인코딩 조건 정보와 상기 선택 정보를 참조하여, 적어도 하나의 택일적으로 재생되는 비디오 오브젝트의 인코딩 조건 정보가 적정한지의 여부를 검증하는 검증 수단, 및
    적어도 하나의 택일적으로 재생되는 비디오 오브젝트의 인코딩 조건 정보가 적정한 경우에만, 상기 인코딩 조건 정보에 따라서 적어도 하나의 비디오 오브젝트를 인코딩하는 인코딩 수단을 포함하는 것을 특징으로 하는 오소링 시스템.
  18. 제17항에 있어서, 적어도 하나의 택일적으로 재생되는 비디오 오브젝트의 인코딩 조건 정보가 적정하지 않은 경우에는, 이러한 부적정성의 외부 피드백 표시를 제공하는 피드백 수단을 더 포함하는 것을 특징으로 하는 오소링 시스템.
  19. 제17항에 있어서, 적어도 하나의 택일적으로 생성되는 비디오 오브젝트는 인터리브(interleave)된 배열로 디스크 상에 배치되고, 상기 오소링 시스템은 영상 표시용 디코더에 전송하기 전에 디스크로부터 판독된 데이터를 일시적으로 저장할 수 있는 트랙 버퍼를 가지는 디스크 재생 장치를 더 포함하고, 또한 상기 검증 수단은 상기 인코딩 조건 정보에 의해 형성되는 인터리브 구간이 재생 중에 상기 트랙 버퍼가 오버플로우(overflow) 또는 언더플로우(underflow) 하는 경우, 적정하지 않다고 검증하는 것을 특징으로 하는 오소링 시스템.
  20. 제19항에 있어서, 상기 검증 수단은, 적어도 하나의 택일적으로 재생되는 비디오 오브젝트의 인터리브 구간에의 분할 수가 제1정수보다도 크면, 상기 트랙 버퍼가 오버플로우할 것이라고 판단하고, 분할 수가 제2정수보다도 작으면, 상기 트랙버퍼 언더플로우가 발생한다고 판단하는 것을 특징으로 하는 오소링 시스템.
KR10-1998-0703811A 1996-09-27 1997-09-26 비디오데이터의택일적인재생이가능한멀티미디어스트림생성방법과멀티미디어광디스크오소링시스템 KR100496703B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP96-277014 1996-09-27
JP27701496 1996-09-27

Publications (2)

Publication Number Publication Date
KR19990071538A KR19990071538A (ko) 1999-09-27
KR100496703B1 true KR100496703B1 (ko) 2005-11-24

Family

ID=17577574

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1998-0703811A KR100496703B1 (ko) 1996-09-27 1997-09-26 비디오데이터의택일적인재생이가능한멀티미디어스트림생성방법과멀티미디어광디스크오소링시스템

Country Status (7)

Country Link
US (1) US6393196B1 (ko)
EP (1) EP0875856B1 (ko)
JP (1) JP3908280B2 (ko)
KR (1) KR100496703B1 (ko)
CN (1) CN1135481C (ko)
DE (1) DE69721483T2 (ko)
WO (1) WO1998013769A1 (ko)

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW361046B (en) * 1996-10-31 1999-06-11 Matsushita Electric Ind Co Ltd Dynamic picture image decoding apparatus and method of decoding dynamic picture image
JP3607486B2 (ja) * 1998-01-21 2005-01-05 株式会社東芝 情報記録再生装置
US7068918B1 (en) 1998-05-01 2006-06-27 Samsung Electronics Co., Ltd. Recording medium for storing real time recording/reproduction information, method and apparatus for recording and reproducing in real time, and file operating method using the same
JP3907839B2 (ja) * 1998-06-17 2007-04-18 松下電器産業株式会社 放送システム
JP3522537B2 (ja) * 1998-06-19 2004-04-26 洋太郎 村瀬 画像再生方法、画像再生装置及び画像通信システム
KR100301012B1 (ko) 1998-06-27 2001-10-27 윤종용 광 디스크 기록/재생 장치 및 그 방법 및 정보 구조
CZ2001721A3 (cs) * 1998-08-27 2002-05-15 International Business Machines Corporation Systém a způsob pro vkládání dodatečných informací do video dat
JP2000100073A (ja) * 1998-09-28 2000-04-07 Sony Corp 記録装置および方法、再生装置および方法、記録媒体、並びに提供媒体
JP3602728B2 (ja) * 1998-10-22 2004-12-15 株式会社東芝 ディジタルビデオディスクプレーヤ及び画像表示装置
US6748421B1 (en) * 1998-12-23 2004-06-08 Canon Kabushiki Kaisha Method and system for conveying video messages
US6785338B1 (en) * 1999-01-19 2004-08-31 Sarnoff Corporation Constraining video production based on compression-related information
WO2000055854A1 (fr) * 1999-03-17 2000-09-21 Kabushiki Kaisha Toshiba Procede d'enregistrement de donnees en fluxet de leur structure
KR100324746B1 (ko) * 1999-04-24 2002-02-20 구자홍 음성 청취가 가능한 디지탈 데이터 플레이어
AU6152300A (en) 1999-06-29 2001-01-31 Koninklijke Philips Electronics N.V. Data allocation in dvd recording
KR100320476B1 (ko) * 2000-01-12 2002-01-15 구자홍 비디오 디코더 및 디코딩 방법
WO2001056281A1 (fr) 2000-01-26 2001-08-02 Sony Corporation Procede et systeme informatique et support d'enregistrement de programmes
CN101867835B (zh) 2000-04-21 2013-09-11 索尼公司 编码设备和方法、以及记录方法
KR100448452B1 (ko) 2000-06-09 2004-09-13 엘지전자 주식회사 고밀도 광 기록매체의 메뉴 지원방법
EP1199893A1 (en) * 2000-10-20 2002-04-24 Robert Bosch Gmbh Method for structuring a bitstream for binary multimedia descriptions and method for parsing this bitstream
US7266767B2 (en) * 2000-11-27 2007-09-04 Parker Philip M Method and apparatus for automated authoring and marketing
PL374116A1 (en) * 2001-06-04 2005-10-03 Matsushita Electric Industrial Co, Ltd. Recording apparatus, recording medium, reproduction apparatus, program, and method
JP4409792B2 (ja) * 2001-06-22 2010-02-03 ソニー株式会社 データ伝送装置および方法、記録媒体並びにプログラム
JP4095271B2 (ja) * 2001-09-19 2008-06-04 アルパイン株式会社 ディスク再生装置
US6561820B2 (en) * 2001-09-27 2003-05-13 Intel Corporation Socket plane
US20030223736A1 (en) * 2002-05-29 2003-12-04 Rehan Muzaffer DVD player with enhanced connectivity
WO2003104942A2 (en) * 2002-06-07 2003-12-18 Yahoo. Inc. Method and system for controling and monitoring a web-cast
US7889968B2 (en) * 2002-06-24 2011-02-15 Lg Electronics Inc. Recording medium having data structure for managing reproduction of multiple reproduction path video data for at least a segment of a title recorded thereon and recording and reproducing methods and apparatuses
CA2459070C (en) * 2002-06-28 2013-10-22 Lg Electronics Inc. Recording medium having data structure for managing reproduction of multiple playback path video data recorded thereon and recording and reproducing methods and apparatuses
RU2334286C2 (ru) 2002-06-28 2008-09-20 Эл Джи Электроникс Инк. Носитель записи со структурой данных для управления записью и воспроизведением записанных на нем данных нескольких каналов и способы и устройства записи и воспроизведения
JP4343111B2 (ja) * 2002-10-02 2009-10-14 エルジー エレクトロニクス インコーポレーテッド グラフィックデータの再生を管理するためのデータ構造を有する記録媒体、該記録媒体による記録・再生方法、およびその装置
CN100487807C (zh) * 2002-10-04 2009-05-13 Lg电子有限公司 有管理图形数据再现的数据结构的录制介质及录制与再现方法和装置
DE10393469T5 (de) * 2002-10-10 2005-08-25 Matsushita Electric Industrial Co., Ltd., Kadoma Optische Platte, Wiedergabevorrichtung, Programm, Wiedergabeverfahren und Aufzeichnungsverfahren
WO2004042723A1 (en) * 2002-11-08 2004-05-21 Lg Electronics Inc. Method and apparatus for recording a multi-component stream and a high-density recording medium having a multi-component stream recorded theron and reproducing method and apparatus of said recording medium
US7720356B2 (en) * 2002-11-12 2010-05-18 Lg Electronics Inc Recording medium having data structure for managing reproduction of multiple reproduction path video data recorded thereon and recording and reproducing methods and apparatuses
US7783160B2 (en) * 2002-11-20 2010-08-24 Lg Electronics Inc. Recording medium having data structure for managing reproduction of interleaved multiple reproduction path video data recorded thereon and recording and reproducing methods and apparatuses
JP2004173069A (ja) * 2002-11-21 2004-06-17 Canon Inc 画像データ記録装置及び記録方法
JP4964414B2 (ja) * 2002-11-22 2012-06-27 エルジー エレクトロニクス インコーポレイティド 記録された多重再生経路ビデオデータの再生を管理するためのデータ構造を有する記録媒体とそれによる記録及び再生方法及び装置
KR100939711B1 (ko) * 2002-12-12 2010-02-01 엘지전자 주식회사 텍스트 기반의 서브타이틀 재생장치 및 방법
BRPI0405236B1 (pt) * 2003-04-24 2019-01-08 Sony Corp aparelho e método de processamento de informação, e, meio de armazenamento legível por computador
JP4228767B2 (ja) * 2003-04-25 2009-02-25 ソニー株式会社 再生装置、再生方法、再生プログラムおよび記録媒体
JP4611285B2 (ja) * 2003-04-29 2011-01-12 エルジー エレクトロニクス インコーポレイティド グラフィックデータ再生を管理するためのデータ構造を有する記録媒体、それによる記録及び再生方法及び装置
US7616865B2 (en) * 2003-04-30 2009-11-10 Lg Electronics Inc. Recording medium having a data structure for managing reproduction of subtitle data and methods and apparatuses of recording and reproducing
JP4332153B2 (ja) * 2003-06-18 2009-09-16 パナソニック株式会社 記録装置、再生装置、記録方法、再生方法
US20040268033A1 (en) * 2003-06-24 2004-12-30 Seagate Technology Llc Refreshing data in a data storage device
KR20050005074A (ko) * 2003-07-01 2005-01-13 엘지전자 주식회사 고밀도 광디스크의 그래픽 데이터 관리방법 및 그에 따른고밀도 광디스크
KR20050004339A (ko) * 2003-07-02 2005-01-12 엘지전자 주식회사 고밀도 광디스크의 그래픽 데이터 관리방법 및 그에 따른고밀도 광디스크
JP3807400B2 (ja) * 2003-10-30 2006-08-09 ソニー株式会社 記録制御装置および記録制御方法
JP4251968B2 (ja) * 2003-11-26 2009-04-08 シャープ株式会社 コンテンツ作成装置、コンテンツ作成プログラム、およびコンテンツ作成プログラムを記録した記録媒体
GB2409540A (en) 2003-12-23 2005-06-29 Ibm Searching multimedia tracks to generate a multimedia stream
KR20050064150A (ko) * 2003-12-23 2005-06-29 엘지전자 주식회사 고밀도 광디스크의 메뉴 구성방법 및 실행방법과기록재생장치
EP1721319A2 (en) * 2004-01-06 2006-11-15 LG Electronics Inc. Recording medium and method and apparatus for reproducing and recording text subtitle streams
KR20050072255A (ko) 2004-01-06 2005-07-11 엘지전자 주식회사 고밀도 광디스크의 서브타이틀 구성방법 및 재생방법과기록재생장치
RU2377669C2 (ru) * 2004-02-10 2009-12-27 ЭлДжи ЭЛЕКТРОНИКС ИНК. Носитель записи, имеющий структуру данных для управления различными данными, и способ и устройство записи и воспроизведения
JP2007522596A (ja) * 2004-02-10 2007-08-09 エルジー エレクトロニクス インコーポレーテッド 記録媒体及びテキスト・サブタイトル・ストリームのデコード方法と装置
KR20070028325A (ko) * 2004-02-10 2007-03-12 엘지전자 주식회사 텍스트 서브타이틀 디코더 및 텍스트 서브타이틀 스트림디코딩 방법
EP1733392A2 (en) * 2004-02-10 2006-12-20 LG Electronics, Inc. Recording medium having a data structure for managing various data and recording and reproducing methods and apparatuses
KR20070028323A (ko) * 2004-02-10 2007-03-12 엘지전자 주식회사 상이한 언어들과 연관된 데이터 스트림을 관리하기 위한데이터 구조를 가지는 기록매체 및 기록재생 방법 및 장치
US20050196146A1 (en) * 2004-02-10 2005-09-08 Yoo Jea Y. Method for reproducing text subtitle and text subtitle decoding system
US7587405B2 (en) * 2004-02-10 2009-09-08 Lg Electronics Inc. Recording medium and method and apparatus for decoding text subtitle streams
WO2005081643A2 (en) * 2004-02-26 2005-09-09 Lg Electronics Inc. Recording medium and method and apparatus for reproducing and recording text subtitle streams
EP1728251A1 (en) * 2004-03-17 2006-12-06 LG Electronics, Inc. Recording medium, method, and apparatus for reproducing text subtitle streams
EP1738582B1 (en) * 2004-04-22 2018-06-06 Technicolor, Inc. Context dependent multi-angle navigation technique for digital versatile discs
KR20060047266A (ko) * 2004-04-26 2006-05-18 엘지전자 주식회사 기록매체, 기록매체의 재생방법과 재생장치
JP4724710B2 (ja) * 2004-05-03 2011-07-13 エルジー エレクトロニクス インコーポレイティド テキストサブタイトルデータを再生管理するためのデータ構造を有する記録媒体及びこれと関連する方法及び装置
WO2006018993A1 (ja) * 2004-08-17 2006-02-23 Matsushita Electric Industrial Co., Ltd. オーサリング装置、オーサリング方法並びにオーサリングプログラム及びそのプログラムを記録した記録媒体
JP2008512919A (ja) * 2004-09-09 2008-04-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ コンテンツ関係メディアストリーム間の単純化された切り換え
KR100677566B1 (ko) * 2004-11-29 2007-02-02 삼성전자주식회사 멀티미디어 컨텐츠에 포함된 미디어 컨텐츠의 길이를 계산하는 방법 및 장치
US9167220B2 (en) * 2005-04-26 2015-10-20 Thomson Licensing Synchronized stream packing
JP2007251519A (ja) 2006-03-15 2007-09-27 Fujitsu Ltd ビデオデータ保管装置及びビデオデータ保管方法
AU2007235345A1 (en) * 2006-04-06 2007-10-18 Kenneth H. Ferguson Media content programming control method and apparatus
CN101681624A (zh) * 2007-05-21 2010-03-24 松下电器产业株式会社 声音编码以及再生装置
US8705946B2 (en) 2010-11-19 2014-04-22 Sony Corporation 3D authoring tool ensuring no buffer underrun upon jumps
ITRM20110469A1 (it) * 2011-09-08 2013-03-09 Hyper Tv S R L Sistema e metodo per la produzione da parte di un autore di contenuti multimediali complessi e per la fruizione di tali contenuti da parte di un utente
US8996543B2 (en) 2012-01-24 2015-03-31 Arrabon Management Services, LLC Method and system for identifying and accessing multimedia content
US8965908B1 (en) 2012-01-24 2015-02-24 Arrabon Management Services Llc Methods and systems for identifying and accessing multimedia content
US9098510B2 (en) 2012-01-24 2015-08-04 Arrabon Management Services, LLC Methods and systems for identifying and accessing multimedia content
US9026544B2 (en) 2012-01-24 2015-05-05 Arrabon Management Services, LLC Method and system for identifying and accessing multimedia content
US10432987B2 (en) 2017-09-15 2019-10-01 Cisco Technology, Inc. Virtualized and automated real time video production system
TWI675591B (zh) * 2017-12-07 2019-10-21 宏正自動科技股份有限公司 電視牆系統中的影像串流同步切換方法
KR102090070B1 (ko) * 2018-10-31 2020-03-17 카테노이드 주식회사 스트리밍 서버, 클라이언트 단말 및 이를 이용한 av 라이브 스트리밍 시스템
MX2021008348A (es) * 2019-01-09 2021-10-13 Huawei Tech Co Ltd Un codificador de video, un decodificador de video y metodos correspondientes.

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06268954A (ja) 1993-03-12 1994-09-22 Sony Corp デジタルビデオディスクおよび装置
CN1086498C (zh) 1995-02-22 2002-06-19 株式会社东芝 信息记录方法,信息重放方法以及信息重放装置
EP0987707B1 (en) * 1995-08-21 2002-11-06 Matsushita Electric Industrial Co., Ltd. Optical disc reproduction device and reproduction method which can achieve a dynamic switching of the reproduced content
JPH0963251A (ja) 1995-08-21 1997-03-07 Matsushita Electric Ind Co Ltd マルチメディア光ディスクおよび再生装置および記録方法
JPH0963252A (ja) 1995-08-21 1997-03-07 Matsushita Electric Ind Co Ltd マルチメディア光ディスク及び再生装置及び記録方法
MX9801212A (es) * 1995-09-29 1998-04-30 Matsushita Electric Ind Co Ltd Metodo y dispositivo para grabar y reproducir una corriente de bits intercalada sobre y desde un medio.
WO1997013362A1 (en) * 1995-09-29 1997-04-10 Matsushita Electric Industrial Co., Ltd. Method and device for encoding seamless-connection of telecine-converted video data
DE69621053T2 (de) * 1995-10-09 2002-10-31 Matsushita Electric Ind Co Ltd Optische Platte zur Anwendung in einem Verschlüssel- oder Programmlizenzsystem
JP3752298B2 (ja) * 1996-04-01 2006-03-08 オリンパス株式会社 画像編集装置
US6154600A (en) * 1996-08-06 2000-11-28 Applied Magic, Inc. Media editor for non-linear editing system

Also Published As

Publication number Publication date
KR19990071538A (ko) 1999-09-27
EP0875856A4 (en) 1999-10-20
DE69721483T2 (de) 2004-03-18
CN1205091A (zh) 1999-01-13
EP0875856A1 (en) 1998-11-04
DE69721483D1 (de) 2003-06-05
EP0875856B1 (en) 2003-05-02
WO1998013769A1 (fr) 1998-04-02
CN1135481C (zh) 2004-01-21
US6393196B1 (en) 2002-05-21
JP3908280B2 (ja) 2007-04-25

Similar Documents

Publication Publication Date Title
KR100496703B1 (ko) 비디오데이터의택일적인재생이가능한멀티미디어스트림생성방법과멀티미디어광디스크오소링시스템
KR100379786B1 (ko) 비연속시스템시간정보를가지는비트스트림의심리스재생방법및장치
KR100348847B1 (ko) 복수의서치재생경로정보를비트스트림에부여하는엔코드방법및그장치
JP3963478B2 (ja) ビットストリームのシームレス接続エンコード方法及びその装置
KR19990063900A (ko) 비트스트림을 인터리브하여 매체에 기록재생하는 방법 및 그 장치
KR19990063896A (ko) 비트 스트림의 심리스 접속 시스템 엔코드 방법 및 그 장치
JP3375622B1 (ja) ビットストリーム生成方法及び情報記録方法
JP3377788B1 (ja) 再生方法、再生装置、記録方法、記録装置、光ディスク
KR100386873B1 (ko) 텔레시네변환된비디오데이터의심리스접속엔코드방법및그장치
JP3377790B1 (ja) 再生方法、再生装置、記録方法、記録装置、光ディスク
JP3375619B1 (ja) ビットストリーム生成方法及び情報記録方法
JP3375621B1 (ja) ビットストリーム生成方法及び情報記録方法
JP3437565B2 (ja) 再生方法、再生装置
JP3375618B1 (ja) ビットストリーム生成方法及び情報記録方法
JP3375620B1 (ja) ビットストリーム生成方法及び情報記録方法
JP3338034B2 (ja) 再生方法、再生装置、記録方法、記録装置、光ディスク
JP3377789B1 (ja) 再生方法、再生装置、記録方法、記録装置、光ディスク
JP2003087741A (ja) 再生方法、再生装置、記録方法、記録装置、光ディスク
JP2003087740A (ja) 再生方法、再生装置、記録方法、記録装置、光ディスク
JP2003087739A (ja) 再生方法、再生装置、記録方法、記録装置、光ディスク

Legal Events

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

Payment date: 20090609

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee