KR101030176B1 - 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법 - Google Patents

정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법 Download PDF

Info

Publication number
KR101030176B1
KR101030176B1 KR1020057019211A KR20057019211A KR101030176B1 KR 101030176 B1 KR101030176 B1 KR 101030176B1 KR 1020057019211 A KR1020057019211 A KR 1020057019211A KR 20057019211 A KR20057019211 A KR 20057019211A KR 101030176 B1 KR101030176 B1 KR 101030176B1
Authority
KR
South Korea
Prior art keywords
information
data
packet
format
stream
Prior art date
Application number
KR1020057019211A
Other languages
English (en)
Other versions
KR20050121257A (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 KR20050121257A publication Critical patent/KR20050121257A/ko
Application granted granted Critical
Publication of KR101030176B1 publication Critical patent/KR101030176B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • 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/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10675Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
    • G11B2020/10722Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control wherein the size of the buffer is variable, e.g. by adding additional memory cells for coping with input streams that have high bit rates
    • 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
    • G11B2020/10916Seeking data on the record carrier for preparing an access to a specific address
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/215Recordable discs
    • G11B2220/216Rewritable discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs
    • 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
    • G11B2220/2575DVD-RAMs
    • 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/2583Optical discs wherein two standards are used on a single disc, e.g. one DVD section and one CD section
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/781Television signal recording using magnetic recording on disks 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

Abstract

외부로부터 입력된 신호를 MPEG-TS로부터 DVD 규격에 따른 MPEG-PS로의 고속 변환을 실현하는 정보기록매체를 제공한다. 또한, 그 정보기록매체에 정보를 기록하는 장치 및 방법을 제공한다. 제1스트림(예로서, MPEG 트랜스포트 스트림)으로부터 제2스트림(예로서, MPEG 프로그램 스트림)으로의 변환을 가능하게 하는 제한 포맷이 제공된다. 상기 제한 포맷은, 연속하는 완전한 데이터 블록을 포함하는 비디오 정보의 표시 순서가 톱 필드(pf)에서 시작하고 보텀 필드(pl)에서 종료되도록 정의한다. 연속하는 완전한 데이터 블록은 비디오 정보와 오디오 정보의 연속하는 기준 표시 기준 시간(STC)에 포함되고, 기준 시간은 적어도 하나의 데이터 블록을 포함한다.

Description

정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법{INFORMATION RECORDING MEDIUM, DEVICE AND METHOD FOR RECORDING INFORMATION IN INFORMATION RECORDING MEDIUM}
본 발명은, 일반적으로 판독 가능하고, 기록 가능한 정보기록매체에 관한 것이고, 더욱 상세하게는, 동화상(비디오) 데이터, 정지화상 데이터, 오디오 데이터, 및 데이터 방송 등 여러가지 포맷의 기타 방식의 멀티미디어 데이터를 기록하는 정보기록매체에 관한 것이다. 또한, 본 발명은 이러한 정보기록매체에 정보를 기록하는 장치 및 방법에 관한 것이다.
재기록 가능 광 디스크의 최대 기억 용량이 대략 650MB이었지만, 이 한계는 상변화형(相變化型) 기록매체인, DVD-RAM 디스크의 출현으로 인하여 수 GB로 증대되었다. 디지털 AV 데이터의 인코딩 규격인, MPEG(특히, MPEG-2)의 실용화에 따라서, DVD-RAM은, 컴퓨터 용도 뿐만 아니라 오디오ㆍ비디오(AV) 및 홈 엔터테인먼트 분야에 있어서의 기록ㆍ재생 매체로서 널리 사용될 것으로 기대되고 있다.
현재, 일본에서는 디지털 방송이 개시되어서, 복수 프로그램의 비디오, 음성, 데이터를 MPEG 트랜스포트 스트림(이하 "MPEG_TS")으로 다중화하여 동시에 전송할 수 있게 되었다. 또한, 하드디스크나 DVD 매체를 이용한 디지털 방송 기록장 치가 보급되고 있다.
이러한 차세대형 디지털 방송 기록장치는, 통상적으로 디지털 방송을, 방송의 MPEG_TS를 변환하지 않고 원래의 방송 포맷으로 기록하고, 또한 외부 입력으로부터의 AV 데이터를, 기록장치가 MPEG 프로그램 스트림(이하 "MPEG_PS")과 MPEG_TS 모두를 내부적으로 취급할 필요가 없도록, MPEG_TS를 이용하여 기록할 것으로 예상된다.
그러나, 현재의 DVD 논리 규격(DVD Video 규격, DVD-Audio 규격, DVD Video Recording 규격, 및 DVD 스트림 기록 규격을 포함하는)은, AV 스트림의 기록에 MPEG_PS를 사용하므로, 상기의 디지털 방송 기록장치와 같이, MPEG_TS 포맷으로 기록된 콘텐츠를, 예로서 DVD Video 포맷으로 변환하기 위해서는, MPEG_TS로부터 MPEG_PS로의 변환(TS2PS 변환)을 필요로 한다(예로서, JP2002-344888A 참조).
그러나, MPEG_TS로 다중화된 스트림을 MPEG_PS로 변환하기 위해서는, 디코더의 버퍼 관리(buffer management)를 위한 복잡한 재연산이 필요하고, TS2PS 변환에 시간이 걸리고, 또한 때때로 기본 스트림(elementary stream)의 재인코딩을 필요로 하여, 화질 및 음질이 열화된다.
본 발명은, 이러한 과제를 해결하기 위한 것으로서, 본 발명의 목적은, MPEG_TS 포맷으로 기록한 콘텐츠를, MPEG_PS 포맷으로 변환하는 경우, 신속하고 간단한 변환을 가능하게 하는 MPEG_TS 스트림을 기록하는 정보기록매체를 제공하는 것이다. 또 다른 목적은, 본 발명의 정보기록매체를 이용하여 데이터의 기록을 실행하는 장치 및 방법을 제공하는 것이다.
본 발명의 제1특징에 의하면, 비디오 정보를 인코딩함으로써 생성된 비디오 기본 스트림과 오디오 정보를 인코딩함으로써 생성된 오디오 기본 스트림을 다중화하여 포함하고 있는 시스템 스트림을 저장하는 기록매체가 제공된다. 상기 기록매체에 있어서, 시스템 스트림은 제1포맷(TS)과 제2포맷(PS)을 갖도록 허용될 수 있다. 제1포맷은 시스템 스트림을 제1포맷(TS)으로부터 제2포맷(PS)으로 변환하는 데에 이용되는 제한 포맷을 갖도록 허용될 수 있다. 제한 포맷에 따라서, 연속하는 완전한 데이터 블록을 포함하는 비디오 정보의 표시 순서는 톱 필드(top field)에서 시작하고 보텀 필드(bottom field)에서 종료되며, 여기서, 연속하는 완전한 데이터 블록은 비디오 정보와 오디오 정보의 연속하는 기준 표시 시간에 포함되고, 연속하는 기준 표시 시간은 적어도 하나의 데이터 블록을 포함한다.
기본 스트림은 제1포맷 및 제2포맷 모두에 대하여 허용되는 인코딩 방법으로 인코딩할 수도 있다.
비디오 기본 스트림과 오디오 기본 스트림은, 제한 포맷에 따라서 변환된 제2포맷(PS)에서의 표시 순서와 동일한 순서로 시스템 스트림으로 다중화될 수도 있다.
제1포맷(TS)은 데이터를 패킷(packet)으로 분할하여 저장하는 구조를 가질 수도 있고, 각각의 패킷에는 상대적인 전송 타이밍을 나타내는 시각 표시(time stamp) 정보가 부가될 수도 있다. 제2포맷(PS)은 데이터를 팩(pack)으로 분할하여 저장하는 구조를 가질 수도 있고, 각각의 팩에는 전송 타이밍을 나타내는 시각 표시 정보가 부가될 수도 있다. 팩은 패킷보다 크기가 크다. 이 경우에, 소정의 개수의 패킷을 그룹화하여 하나의 다중화 단위로서 관리하고, 다중화 단위로서 관리되는 패킷의 데이터 크기의 합계는 팩의 데이터 크기보다 크지 않다.
시스템 스트림은, 연속하는 완전한 데이터 블록을 포함하는 비디오 정보가 톱 필드에서 시작하고 보텀 필드에서 종료되는가 아닌가를 나타내는 인코딩 정보를 포함할 수도 있다. 또한, 상기 인코딩 정보는 기록매체에 저장된 데이터를 관리하는 관리 정보에 포함될 수도 있다.
본 발명의 제2특징에 의하면, 비디오 정보 및 오디오 정보를 시스템 스트림으로 인코딩하여 기록매체에 기록하는 정보기록장치가 제공된다. 상기 시스템 스트림은 제1포맷(TS)과 제2포맷(PS)을 갖도록 허용될 수 있다. 상기 정보기록장치는, 비디오 정보 및 오디오 정보를 제1포맷(TS)에 따라서 소정의 인코딩 방법으로 인코딩하여 비디오 기본 스트림 및 오디오 기본 스트림을 생성할 수 있는 제1인코딩부와, 상기 비디오 기본 스트림 및 오디오 기본 스트림을 제1포맷(TS)에 따라서 다중화하여 시스템 스트림을 생성하는 시스템 인코딩을 실행할 수 있는 제2인코딩부와, 제1인코딩부 및 제2인코딩부를 제어할 수 있는 제어부를 포함한다.
제1포맷(TS)은 시스템 스트림을 제1포맷(TS)으로부터 제2포맷(PS)으로 변환하기 위해 이용되는 제한 포맷을 가질 수 있다. 제어부는, 각각의 인코딩이 제한 포맷에 따라서 실행되도록 제1 및 제2인코딩부를 제어한다. 제한 포맷에 따라서, 연속하는 완전한 데이터 블록을 포함하는 비디오 정보의 표시 순서는 톱 필드에서 시작하고 보텀 필드에서 종료되며, 연속하는 완전한 데이터 블록은 비디오 정보와 오디오 정보의 연속하는 기준 표시 시간에 포함되고, 또한 연속하는 기준 표시 시간은 적어도 하나의 데이터 블록을 포함한다.
본 발명의 제3특징에 의하면, 비디오 정보 및 오디오 정보를 시스템 스트림으로 인코딩하여 기록매체에 기록하는 정보기록방법이 제공된다.
상기 시스템 스트림은 제1포맷(TS)과 제2포맷(PS)을 갖도록 허용될 수 있다. 제1포맷(TS)은 시스템 스트림을 제1포맷(TS)으로부터 제2포맷(PS)으로 변환하기 위해 이용되는 제한 포맷을 가질 수 있다.
상기 정보기록방법은, 비디오 정보 및 오디오 정보를 제1포맷(TS)에 따라서 소정의 인코딩 방법으로 인코딩하여 비디오 기본 스트림 및 오디오 기본 스트림을 생성하고, 상기 비디오 기본 스트림 및 오디오 기본 스트림을 제1포맷(TS)에 따라서 다중화하여 시스템 스트림을 생성하는 시스템 인코딩을 실행한다. 제한 포맷에 따라서, 연속하는 완전한 데이터 블록을 포함하는 비디오 정보의 표시 순서는 톱 필드에서 시작하고 보텀 필드에서 종료되며, 연속하는 완전한 데이터 블록은 비디오 정보와 오디오 정보의 연속하는 기준 표시 시간에 포함되고, 또한 연속하는 기준 표시 시간은 적어도 하나의 데이터 블록을 포함한다.
본 발명에 의하면, 제한 포맷에 따라서, 연속하는 완전한 데이터 블록을 포함하는 비디오 정보가 톱 필드에서 시작하고 보텀 필드에서 종료되며, 연속하는 완전한 데이터 블록은 비디오 정보와 오디오 정보의 연속하는 기준 표시 시간에 포함되고, 또한 연속하는 기준 표시 시간은 적어도 하나의 데이터 블록을 포함하도록, 비디오 정보가 기록된다.
도 1은 DVD 기록장치(recorder), 및 이 DVD 기록장치와 기타 관련 기기와의 인터페이스의 일례를 나타내는 개략도.
도 2는 DVD 기록장치의 구동장치의 블록도.
도 3A는 디스크상의 연속 영역을 나타내고, 도 3B는 트랙 버퍼내의 데이터 축적을 나타내는 도면.
도 4는 반도체 메모리 카드와 하드 디스크 구동장치를 구비한 DVD 기록장치의 블록도.
도 5A 및 5B는 각각 디스크의 데이터 영역과, 디스크의 데이터 구조를 나타내는 도면.
도 6A 및 6B는 디스크의 논리적인 데이터 공간을 나타내는 도면.
도 7은 디스크의 디렉토리와 파일 구조를 나타내는 도면.
도 8은 비디오 오브젝트의 구조를 나타내는 도면.
도 9는 MPEG 시스템 스트림을 나타내는 도면.
도 10A∼10C는 MPEG 트랜스포트 스트림(MPEG_TS)을 나타내는 도면.
도 11A∼11C는 MPEG 프로그램 스트림(MPEG_PS)을 나타내는 도면.
도 12A∼12D는 TS 패킷을 나타내는 도면.
도 13A∼13C2는 PAT 테이블을 나타내는 도면.
도 14A∼14C는 비디오 오브젝트의 디스크상에의 배치를 나타내는 도면.
도 15A 및 15B는 비디오 관리 정보의 데이터 구조를 나타내는 도면.
도 16A 및 16B는 비디오 관리 정보의 데이터 구조를 나타내는 도면.
도 17은 비디오 관리 정보의, 오브젝트와 오브젝트 정보와 PGC 정보와의 관계를 나타내는 도면.
도 18은 재생장치의 기능적인 구성을 나타내는 블록도.
도 19는 기록장치의 기능적인 구성을 나타내는 블록도.
도 20은 본 발명에 의한 정보기록 및 재생장치의 구성을 나타내는 블록도.
도 21은 자체 인코딩(self-encoded) 스트림의 구조를 나타내는 도면.
도 22A 및 22B는 패킷 전송 시간 간격을 설명하는 도면.
도 23은 사용자 전용 패킷(User Private Packet)의 저장 방법을 설명하는 도면.
도 24는 사용자 전용 패킷의 저장 방법을 설명하는 도면.
도 25는 사용자 전용 패킷의 저장 방법을 설명하는 도면.
도 26은 사용자 전용 패킷의 저장 방법을 설명하는 도면.
도 27A∼27H는 MPEG_TS로부터 MPEG_PS로의 변환을 설명하는 도면.
도 28A∼28G는 MPEG_PS로의 변환을 용이하게 하는, MPEG_TS의 인코딩 방법을 나타내는 도면.
도 29는 DVD Video 포맷으로의 변환을 나타내는 도면(NTSC).
도 30은 DVD Video 포맷으로의 변환을 나타내는 도면(PAL).
도 31은 사용자 전용 패킷의 내부 데이터 구조를 나타내는 도면.
도 32는 MPEG_PS로의 변환이 용이하게 인코딩된 MPEG_TS와, 변환후의 MPEG_PS와의 상관 관계를 나타내는 도면.
도 33은 본 발명에 의한 정보기록장치의 인코더의 블록도.
도 34는 시스템 인코딩 방법의 차이에 의한, 자체 인코딩된 MPEG_TS로부터 DVD 포맷으로의 변환을 위한 처리의 차이를 나타내는 도면.
도 35는 Tip 패킷의 데이터 구조를 나타내는 도면.
도 36은 적응 필드(adaptation_field)의 데이터 구조를 나타내는 도면.
도 37은 Data_ID의 데이터 구조를 나타내는 도면.
도 38은 display_and_copy_info의 데이터 구조를 나타내는 도면.
도 39는 encode_info의 데이터 구조를 나타내는 도면.
도 40은 PES_info의 구조를 나타내는 도면.
도 41은 MakersPrivateData의 데이터 구조를 나타내는 도면.
도 42A는 Tip 패킷의 PID를 나타내는 도면.
도 42B는 Tip 패킷의 stream_type을 나타내는 도면.
도 43은 Constrained(제한) SESF 스트림내의 PES 패킷 헤더의 필드 값을 나타내는 도면.
도 44는 Constrained SESF 스트림내의 PES_extension_flag와 PES_header_data_length를 나타내는 도면.
도 45는 T_STD 모델을 만족시키지 않도록 자체 인코딩된 MPEG_TS의 예를 나타내는 도면.
도 46A 및 46B는 MPEG_TS로부터 변환된 MPEG_PS가 P_STD 모델을 만족시키지 않는 MPEG_PS의 예를 나타내는 도면.
도 47은 SCR의 연산을 나타내는 도면.
도 48은 encode_condition=11b인 경우의 Constrained SESF의 기본 스트림 속성을 나타내는 도면.
도 49는 encode_condition=01b인 경우의 Constrained SESF의 기본 스트림 속성을 나타내는 도면.
도 50은 DVD Video 규격에 일치하는 포맷의 스트림 구조를 나타내는 도면.
도 51은 NV_PCK의 PCI 데이터의 구조를 나타내는 도면.
도 52는 NV_PCK의 PCI_GI 데이터의 구조를 나타내는 도면.
도 53은 NV_PCK의 DSI 데이터의 구조를 나타내는 도면.
도 54는 NV_PCK의 DSI_GI 데이터의 구조를 나타내는 도면.
도 55는 NV_PCK의 SML_PBI 데이터의 구조를 나타내는 도면.
도 56은 NV_PCK의 SYNCI 데이터의 구조를 나타내는 도면.
도 57은 DVD Video Recording 규격에 일치하는 포맷의 스트림 구조를 나타내는 도면.
도 58은 TS 패킷(RD_PCK)의 변환 처리의 플로차트.
도 59는 TS 패킷(V_PCK, A_PCK)의 변환 처리의 플로차트.
도 60은 MPEG-2 프로그램 스트림 팩의 팩 헤더의 데이터 구조의 일부를 나타내는 도면.
도 61은 DVD 포맷의 시스템 헤더를 나타내는 도면.
도 62A는 RDI_PCK에 저장된 패킷 헤더의 구조를 나타내는 도면.
도 62B는 RDI_PCK에 저장된 전용 헤더(private header)의 구조를 나타내는 도면.
도 63은 MPEG-2 프로그램 스트림 패킷의 패킷 헤더의 데이터 구조의 일부를 나타내는 도면.
도 64는 DVD 포맷의 AC-3 규격의 전용 헤더의 구조를 나타내는 도면.
도 65A 및 65B는 비디오 팩에 대하여 Constrained SESF로부터 MPEG_PS로의 변환을 나타내는 도면.
도 66A 및 66B는 오디오 팩에 대하여 Constrained SESF로부터 MPEG_PS로의 변환을 나타내는 도면.
도 67은 Constrained SESF에 의해서 허용되는 오디오 비트 전송 속도와, 대응하는 비트 전송 속도에서 AC-3 및 MPEG-1 오디오가 하나의 오디오 PES 패킷에 저장되는 최대 페이로드 길이의 테이블.
도 68은 TS2PS 변환 처리 전체의 플로차트.
도 69는 TS2PS 변환 처리의 초기화 처리의 플로차트.
도 70은 TS2PS 변환 처리의 캡슐 단위 처리의 플로차트.
도 71은 팩 단위 처리의 플로차트.
도 72는 SCR 연산 처리의 플로차트.
도 73은 팩 헤더 처리의 플로차트.
도 74는 패킷 헤더 처리의 플로차트.
도 75는 스트림 ID 처리의 플로차트.
도 76A는 비디오 PES 패킷 선두 처리의 플로차트.
도 76B는 비디오 PES 패킷 비선두 처리의 플로차트.
도 77A는 오디오 PES 패킷 선두 처리의 플로차트.
도 77B는 오디오 PES 패킷 비선두 처리의 플로차트.
도 78은 페이로드 처리의 플로차트.
도 79는 패딩 패킷 처리의 플로차트.
도 80은 Constrained SESF의 스트림 포맷을 나타내는 도면.
도 81은 MPEG 규격에 의한 PES 패킷의 데이터 구조를 나타내는 도면.
도 82는 NV_PCK 데이터의 생성방법을 나타내는 도면.
도 83A는 오디오 프레임이 배열된 다중화 단위를 이용한 효율적인 다중화 방법을 나타내는 도면.
도 83B는 선두에 I-화상이 배열된 다중화 단위를 이용한 효율적인 다중화 방법을 나타내는 도면.
도 84A는 Constrained SESF에서의 비디오 표시 필드의 순서에 관한 인코딩 조건을 나타내는 도면(DVD-Video 표준을 만족시키는 경우).
도 84B는 Constrained SESF에서의 비디오 표시 필드의 순서에 관한 인코딩 조건을 나타내는 도면(DVD-Video 표준을 만족시키지 않는 경우).
도 85는 톱 필드 및 보텀 필드에 대하여 제한 조건이 부여된 Constrained SESF에 따른 기록 처리의 플로차트.
도 86은 기록 처리의 종료를 나타내는 플로차트.
본 발명에 의한 정보기록매체, 기록장치 및 재생장치의 바람직한 실시형태로서 DVD 디스크, DVD 기록장치 및 DVD 플레이어에 대하여 첨부 도면을 참조하여 이하의 순서로 설명한다.
특히, 이하의 "8. 발명의 개요" 및 "9. 발명의 상세한 실시형태"에서 본 발명의 주요 포인트를 설명한다. 또한, 본 발명에 대한 연관성은 상이하지만, 이하의 모든 것은 본 발명의 여러가지 특징을 설명한 것이다.
1. DVD 기록장치(recorder)의 시스템 개요
2. DVD 기록장치의 기능 개요
3. DVD 디스크의 개요
4. 재생되는 AV 데이터의 개요
5. AV 데이터의 관리 정보와 재생 제어
6. 재생 기능의 기본 동작
7. 기록 기능의 기본 동작
8. 발명의 개요
9. 발명의 상세한 실시형태
또한, 이하에서는 하기의 용어를 사용한다.
"TS2PS 변환"은 MPEG 트랜스포트 스트림(MPEG_TS)으로부터 MPEG 프로그램 스트림(MPEG_PS)으로의 변환을 의미한다.
"DVD 포맷"은, 각각 MPEG_PS 포맷인, DVD Video 규격 포맷 및 DVD Video Recording 규격 포맷 모두를 의미한다.
1. DVD 기록장치의 시스템 개요
도 1은, 통상적인 DVD 기록장치, 및 이 DVD 기록장치와 함께 사용하는 기타 관련 시스템 및 기기를 나타낸다.
도 1에 나타내는 바와 같이, DVD 기록장치에는 광 디스크의 일종인 DVD가 장착되어서, 디스크에 비디오 데이터를 기록하고 디스크로부터 비디오 데이터를 재생한다. DVD 기록장치를 동작시키기 위해서는 일반적으로 원격 제어장치(리모콘)를 사용한다.
DVD 기록장치에 입력되는 비디오 데이터는, 아날로그 신호 또는 디지털 신호일 수도 있고, 아날로그 신호의 일례로서 아날로그 방송이 있으며, 디지털 신호의 일례로서 디지털 방송이 있다. 일반적으로, 아날로그 방송은, 텔레비전에 내장된 수신기에 의해서 수신, 복조되어서, NTSC 또는 기타 아날로그 비디오 신호로서 DVD 기록장치에 입력되어, 기록된다. 디지털 방송은, 디지털 방송 수신기(세트탑 박스(STB))에 의해서 디지털 신호로 복조되어서, DVD 기록장치에 입력되어 기록된다.
한편, DVD에 기록된 비디오 데이터는 DVD 기록장치에 의해서 재생되어 외부에 출력된다. 비디오 입력과 마찬가지로, 비디오 출력은 아날로그 신호일 수도 있 고, 디지털 신호일 수도 있다. 아날로그 신호는 텔레비전에 직접 입력된다. 디지털 신호는 STB를 통과하여, 아날로그 신호로 변환된 후에 텔레비전에 입력되어서 비디오로 표시된다.
또한, 비디오 데이터는 DVD 캠코더 또는 퍼스널 컴퓨터 등, DVD 기록장치 이외의 장치에 의해서 DVD에 기록되고 또한 DVD로부터 재생될 수도 있다. DVD 기록장치 이외의 장치에 의해서 비디오 데이터가 기록된 DVD 디스크도, DVD 기록장치에 장착되면, DVD 기록장치에 의해서 재생된다.
아날로그 방송 또는 디지털 방송의 비디오 데이터에는 통상, 오디오 데이터가 부가되어 있고, 이 오디오 데이터는 마찬가지로 DVD 기록장치에 의해서 기록되고 재생된다.
또한, 비디오 데이터는 일반적으로 동화상 데이터이지만, DVD 캠코더의 스냅 사진 기능을 이용하여 정지화상(사진)을 포착하는 경우 정지화상도 포함할 수 있다.
또한, STB와 DVD 기록장치와의 사이의 디지털 인터페이스로서 IEEE 1394, ATAPI, SCSI, 또는 기타 규격을 이용할 수 있다.
또한, DVD 기록장치와 텔레비전과의 사이의 복합 비디오 신호로서 상기에서 NTSC 신호를 언급했지만, 휘도 신호와 색차 신호를 개별로 전송하는 컴포넌트 신호를 이용할 수도 있다. 또한, AV 기기와 텔레비전과의 사이의 비디오 전송 인터페이스를 아날로그 인터페이스로부터, DVI 등 디지털 인터페이스로 변경하는 연구 개발이 현재 진행되고 있어서, DVD 기록장치와 텔레비전을 접속하는 데에 디지털 인터 페이스를 사용할 수 있을 것으로 예상된다.
2. DVD 기록장치의 기능 개요
도 2는 DVD 기록장치의 기능 블록도이다. 구동장치는, DVD-RAM 디스크(100)로부터 데이터를 판독하는 광 픽업(101), ECC(Error Correcting Code; 오류 정정 부호) 처리부(102), 트랙 버퍼(103), 트랙 버퍼(103)의 입력과 출력을 절환하는 스위치(104), 인코더(105) 및 디코더(106)를 구비하고 있다.
도면에 나타내는 바와 같이, DVD-RAM 디스크(100)에는 1 섹터(=2 KB)를 최소 기록 단위로 하여 데이터가 기록된다. 또한, 16 섹터가 1 ECC 블록이고, ECC 처리부(102)는 ECC 블록 단위로서 오류 정정 처리를 실시한다.
또한, DVD 기록장치는 정보기록매체로서, DVD 디스크 이외에, 반도체 메모리 카드 또는 하드 디스크 구동장치를 사용할 수도 있다. 도 4는 반도체 메모리 카드와 하드 디스크 구동장치를 구비한 DVD 기록장치의 블록도이다.
1 섹터는 512 B, 8 KB, 또는 기타 크기로 될 수도 있는 것을 또한 유념해야 한다. 또한, ECC 블록도 1 섹터, 16 섹터, 32 섹터, 또는 기타의 구성을 포함할 수도 있다. 기록할 수 있는 데이터의 용량이 증가함에 따라서, 섹터 크기 및 각각의 ECC 블록내의 섹터의 수도 또한 증가할 것으로 예상된다.
트랙 버퍼(103)는, DVD-RAM 디스크(100)에 AV 데이터를 더욱 효율적으로 기록하기 위하여, AV 데이터를 가변 비트 전송 속도(VBR; variable bit rate)로서 기록하는 버퍼이다. DVD-RAM 디스크(100)에의 기록 속도(Va)는 고정 속도이지만, AV 데이터의 비트 전송 속도(Vb)는 AV 콘텐츠(비디오 콘텐츠의 경우 화상)의 복잡성에 따라서 변화한다. 이 비트 전송 속도의 차를 흡수하기 위하여 트랙 버퍼(103)를 사용한다.
이 트랙 버퍼(103)를 더욱 효과적으로 이용하기 위하여, 디스크(100)에 AV 데이터를 분산해서 기록할 수 있다. 이것을 도 3A 및 도 3B를 참조하여 추가로 설명한다.
도 3A는 디스크상의 어드레스 공간을 나타낸다. 도 3A에 나타내는 바와 같이, AV 데이터가 별개의 연속 영역 [a1, a2] 및 [a3, a4]에 기록되어 있는 경우, a2로부터 a3까지 탐색하는 동안, 트랙 버퍼에 축적되어 있는 데이터를 디코더(106)에 공급함으로써 AV 데이터의 연속 재생이 가능하게 된다. 이 때 트랙 버퍼에 저장된 데이터 양의 변화가 도 3B에 도시되어 있다.
어드레스 a1에서 판독이 개시되면, AV 데이터는, 시각 t1로부터 트랙 버퍼(103)에 입력되고, 트랙 버퍼(103)로부터 데이터의 출력이 또한 개시된다. 이어서, 속도(Va-Vb), 즉, 트랙 버퍼(103)에의 입력 속도(Va)와 트랙 버퍼로부터의 출력 속도(Vb)의 차이 만큼 트랙 버퍼에 데이터가 축적된다. 이 상태는 탐색 영역이 a2에 도달할 때까지, 즉, 시각 t2까지 계속된다. 이 시간 동안 트랙 버퍼(103)에 축적된 데이터 양을 B(t2)라고 하면, 시각 t2로부터, 영역 a3으로부터의 판독을 개시하는 시각 t3까지, 트랙 버퍼(103)에 축적된 데이터 B(t2)를 점차적으로 소비함으로써 디코더(106)에 데이터를 공급할 수 있다.
환언하면, 탐색 동작이 개시되기 전에 적어도 소정량의 데이터([a1, a2])가 판독된 경우, 탐색 동작 동안 AV 데이터의 연속적인 공급이 유지될 수 있다.
AV 데이터의 연속하는 출력을 가능하게 하는 데에 필요한 연속 영역의 크기는, ECC 블록 수(N_ecc)로 환산하면 이하의 식으로 표시된다.
N_ecc=Vb*Tj/((N_sec*8*S_size)*(1-Vb/Va))
여기서, N_sec는 ECC 블록의 섹터 수이고, S_size는 섹터 크기, Tj는 탐색 성능(최대 탐색 시간)이다.
또한, 연속 영역에는 결함 섹터가 생길 수도 있다. 이 경우에 연속 영역의 필요로 하는 크기는 다음 식으로 표시된다.
N_ecc=dN_ecc+Vb*Tj/((N_sec*8*S_size)*(1-Vb/Va))
여기서, dN_ecc는 허용되는 결함 섹터의 크기이고, Ts는 연속 영역내에서 결함 섹터를 스킵하는 데에 필요로 하는 시간이다. 이 식은 또한 연속 영역의 크기를 ECC 블록 수로 나타낸다.
상기 예는, DVD-RAM 디스크로부터의 데이터의 판독, 즉, 데이터 재생을 예로서 설명했지만, DVD-RAM 디스크에의 데이터의 기록, 즉, 녹화의 경우도 마찬가지로 생각할 수 있다.
따라서, DVD-RAM 디스크에서는 데이터가 소정 크기 이상의 블록에 기록되어 있는 한, 디스크상의 별개 기록 영역에 AV 데이터가 기록되어 있는 경우에도 연속하는 데이터 재생 및 기록이 가능하다. 이러한 연속 영역을 DVD 용어에서는 연속 데이터 영역(CDA; continuous data area)이라고 한다.
3. DVD 디스크의 개요
도 5A 및 도 5B는 DVD-RAM 디스크, 즉, 기록 가능한 광 디스크의 물리적인 구조 및 평면도를 나타낸다. DVD-RAM 디스크는 통상적으로 카트리지내에 수용하여 DVD 기록장치에 장착한다. 카트리지의 목적은 디스크를 보호하는 것이다. 그러나, 기록면을 어떤 다른 방법으로 보호할 수 있는 경우에는, DVD-RAM 디스크를 카트리지에 수용하지 않고, DVD 기록장치에 직접 장착할 수 있다.
DVD-RAM 디스크는 상변화 기록 방식을 이용하여 기록된다. 디스크상의 데이터는 섹터 단위로 관리되고, 데이터에의 액세스를 위한 어드레스가 부가된다. 16 섹터의 그룹이 오류 정정의 단위로서 이용되고, 오류 정정 부호가 부여되어, ECC 블록이라고 부른다.
도 5A는 DVD-RAM 디스크, 즉, 기록 가능한 광 디스크의 기록 영역을 나타낸다. 이 도면에 나타내는 바와 같이, DVD-RAM 디스크는, 내주측에 리드 인 영역, 외주측에 리드 아웃 영역, 리드 인 영역과 리드 아웃 영역 사이에 데이터 영역을 구비하고 있다.
리드 인 영역에는 광 픽업으로써 디스크에 액세스할 때 서보를 안정시키기 위한 기준 신호, 및 DVD-RAM 디스크를 기타 방식의 매체와 구분하는 ID 신호가 기록된다.
동일한 기준 신호가 리드 아웃 영역에도 기록된다.
데이터 영역은, 최소 액세스 단위인 섹터(각각 2048 바이트)로 분할되어 있다. 데이터 영역은, 또한 기록 및 재생시에 Z-CLV(Zone Constant Linear Velocity)로 알려진 회전 제어를 실현하기 위해서, 복수의 존(zone)으로 분할되어 있다.
도 5A는 DVD-RAM 디스크에 동심원상(同心圓狀)으로 형성된 복수의 존을 나타 낸다. 이 예에서, DVD-RAM 디스크는 존 0∼존 23으로 표시된 24개의 존으로 분할되어 있다. DVD-RAM의 회전 각속도(角速度)는, 내주측 근처에서 증가하도록 각각의 존에서 상이하게 설정되어 있고, 광 픽업이 동일한 존내에서 액세스하는 동안은 일정하게 유지된다. 이에 따라서, DVD-RAM의 기록 밀도가 증가하고, 기록 및 재생시에 회전 제어를 용이하게 할 수 있다.
도 5B는, 도 5A에서 동심원상으로 배열된 리드 인 영역, 리드 아웃 영역, 및 존 0∼23을 디스크 반경을 통과하는 라인에서 본 도면이다.
리드 인 영역과 리드 아웃 영역은, 각각 결함 관리 영역(DMA; Defect Management Area)을 포함하고 있다. 결함 관리 영역은, 결함이 있는 섹터의 위치를 나타내는 위치 정보와, 그 결함 섹터를 대체하는 섹터가 어느 대체 영역에 위치하는가를 나타내는 대체 섹터 위치 정보를 기록하기 위한 것이다.
각각의 존은, 대체 영역과 비사용 영역의 사이에 사용자 영역을 구비하고 있다. 사용자 영역은, 파일 시스템이 기록 영역으로서 이용할 수 있는 영역이다. 대체 영역은, 결함 섹터가 존재하는 경우에 대체 사용되는 영역이다. 비사용 영역은, 데이터 기록에 사용되지 않는 영역이고, 폭이 대략 2 트랙 정도이다. 섹터 어드레스(sector address)는 각각의 존내의 인접하는 트랙의 동일한 위치에 기록되지만, Z-CLV에서는 섹터 어드레스가 존 경계에 인접하는 트랙의 상이한 위치에 기록된다. 따라서, 이러한 비사용 영역을 형성하는 것은 존 경계에 인접하는 트랙에서의 섹터 어드레스 검출 오류를 방지하기 위한 것이다.
그러므로, 존 경계에는 데이터 기록에 사용되지 않는 섹터가 존재한다. 따라 서, 데이터 기록에 사용되는 섹터 만을 연속적으로 나타내도록, DVD-RAM 디스크의 사용자 영역의 각각의 물리적 섹터에, 내주로부터 순서대로 논리 섹터 번호(LSN; Logical Sector Number)가 할당되어 있다.
도 6은, 논리 섹터를 포함하는 DVD-RAM 디스크의 논리적인 데이터 공간을 나타낸다. 논리적인 데이터 공간은 "볼륨 공간(volume space)"이라고 부르며, 사용자 데이터를 기록하는 데에 사용된다.
볼륨 공간에 기록된 데이터를 파일 시스템으로써 관리한다. 더욱 상세하게는, 데이터를 저장하는 1군의 섹터가 "파일"이고, 1군의 파일을 "디렉토리"로서 관리하는 볼륨 구조 정보가 볼륨 영역의 선두와 종단에 기록된다. 본 실시형태에서는 ISO 13346 규격에 따른 UDF 파일 시스템을 사용하고 있다.
상기 1군의 섹터는 볼륨 공간내에서 반드시 연속적일 필요는 없고, 별개의 부분으로 분할될 수도 있다. 따라서, 파일 시스템은, 각각의 파일을 구성하는 섹터 중에서, 볼륨 공간내의 각각의 연속하는 1군의 섹터를 익스텐트(extent)로서 관리하고, 각각의 파일을 관련 익스텐트의 집합으로서 관리한다.
도 7은, DVD-RAM에 기록된 디렉토리와 파일의 구조를 나타낸다. 루트(root) 아래에, VIDEO_RT 디렉토리가 있고, VIDEO_RT 디렉토리 아래에는, 재생 데이터를 포함하는 각종 오브젝트 파일과, 재생 순서 및 각종 속성 등 관리 정보를 포함하는 VIDEO 매니저 파일이 있다.
오브젝트는 MPEG 규격에 따른 데이터 구조를 가지고 있으며, PS_VOB, TS1_VOB, TS2_VOB, AOB, POB, 및 MNF(Manufacturer's Private Data)를 포함하고 있 다.
PS_VOB, AOB, 및 POB는 MPEG 프로그램 스트림(PS)이고, TS1_VOB 및 TS2_VOB는 트랜스포트 스트림(TS)이다. 프로그램 스트림은, 패키지 매체에 AV 데이터를 저장하도록 고안된 데이터 구조를 가지고 있다. 트랜스포트 스트림은 통신 매체를 고려한 데이터 구조를 가지고 있다.
PS_VOB, TS1_VOB, TS2_VOB는, 주로 비디오 데이터이지만 비디오 데이터와 오디오 데이터를 모두 포함하는 오브젝트이다. 원칙적으로, TS1_VOB 오브젝트는 DVD 기록장치에 의해서 인코딩되고, 내부 화상 구조가 명시적으로 관리된다. TS2_VOB 오브젝트는 DVD 기록장치의 외부에서 인코딩되고, 내부 화상 구조 및 데이터 구조를 알 수 없다.
통상적으로, TS1_VOB 오브젝트는 외부에서 입력되는 아날로그 비디오 신호로서, DVD 기록장치에 의해서 트랜스포트 스트림으로 인코딩되고, TS2_VOB 오브젝트는 외부에서 입력되는 디지털 비디오 신호 오브젝트로서, DVD 기록장치에서 추가로 인코딩하지 않고 직접 디스크에 기록된다. 즉, DVD 기록장치가 디지털 방송을 기록하는 경우, 일반적으로 TS2_VOB를 이용한다.
AOB 및 POB는 MPEG 프로그램 스트림이다. AOB 오브젝트는 주로 오디오 데이터를 포함하고, POB 오브젝트는 주로 정지화상을 포함한다.
MNF(Manufacturer's Private Data)는 특정 제작자 고유의 정보를 저장하는 데에 사용된다.
상기의 "주로 비디오 데이터" 및 "주로 오디오 데이터"는, 높은 비트 전송 속도가 할당되는 것을 의미한다. VOB는 비디오 및 유사 애플리케이션에 이용되고, AOB는 음악 애플리케이션에 이용된다.
4. 재생되는 AV 데이터의 개요
도 8은, DVD 디스크에 AV 오브젝트로서 기록되는 MPEG 데이터의 구조를 나타낸다.
도 8에 나타내는 바와 같이, 비디오 스트림 및 오디오 스트림은, 분할되어서 다중화된다. MPEG 규격에 있어서는, 다중화된 스트림을 시스템 스트림이라고 부른다. DVD의 경우, DVD 고유의 정보가 설정된 시스템 스트림을 VOB(Video Object)라고 한다. 분할 단위는 팩 및 패킷이라고 하고, 크기가 대략 2 KB이다.
비디오 스트림은 MPEG 규격에 따라서 인코딩되어서, 움직임이 많은 화상 등 복잡한 화상에서 비트 전송 속도가 증가되는 가변 비트 전송 속도로 압축된다. MPEG 스트림에서의 화상은, I-화상, P-화상, 또는 B-화상으로서 인코딩된다. I-화상은 공간적으로 압축되어서 각각의 프레임내에서 완결된다. P-화상 및 B-화상은 프레임간 상관 관계를 이용하여 시간적으로 압축된다. MPEG에서는 적어도 하나의 I-화상을 포함하는 일련의 화상을 GOP(Group of Picture)라고 한다. GOP는 고속 재생 및 기타 특수 재생 모드를 위한 액세스 포인트이고, 이것은 적어도 하나의 프레임내 압축 I-화상이 존재하므로 가능하게 되었다.
MPEG 오디오를 이용하는 것 이외에, DVD의 오디오 스트림을, AC-3, LPCM, 또는 기타 인코딩 방법을 이용하여 인코딩할 수 있다.
도 8에 또한 나타내는 바와 같이, 비디오 오브젝트 유닛(VOBU; Video Object Unit)은 GOP의 비디오 데이터와 관련 오디오 데이터를 다중화하는 데이터 단위이다. VOBU에는 비디오 관리 데이터를 헤더 정보로서 포함시킬 수 있다.
도 8을 참조로 하여 설명한 시스템 스트림에는, 프로그램 스트림(PS)과 트랜스포트 스트림(TS)이 포함된다. 상기한 바와 같이, 프로그램 스트림은 패키지 매체를 고려한 데이터 구조를 가지고 있고, 트랜스포트 스트림 데이터 구조는 통신 매체를 고려한 것이다.
도 9는 프로그램 스트림과 트랜스포트 스트림의 데이터 구조의 개념을 나타낸다.
프로그램 스트림은, 데이터 전송 및 다중화의 최소 단위인 고정 길이의 팩으로 구성되어 있다. 각각의 팩은 1개 이상의 패킷을 포함한다. 팩과 패킷 모두는 헤더부와 데이터부를 가지고 있다. MPEG에서는 데이터부를 페이로드라고 한다. 섹터 크기에 대한 정합성을 위하여, DVD에서의 팩의 고정 길이는 2 KB이다. 하나의 팩은 복수의 패킷을 포함할 수 있지만, DVD 비디오 및 오디오를 저장하는 팩은 하나의 패킷만을 포함하므로, 특별한 경우를 제외하고는 1 팩=1 패킷이 된다.
트랜스포트 스트림의 데이터 전송 및 다중화의 단위는 고정 길이의 TS 패킷으로 구성되어 있다. TS 패킷의 크기는 188 B이고, 통신 규격인 ATM 전송과의 정합성이 이루어져 있다. 하나 이상의 TS 패킷이 PES 패킷을 구성한다.
PES 패킷은 프로그램 스트림과 트랜스포트 스트림 모두에 대하여 공통되는 개념이고, 데이터 구조는 동일하다. 프로그램 스트림의 팩에 저장되는 패킷은 직접 PES 패킷을 구성하고, 트랜스포트 스트림의 하나 이상의 TS 패킷의 그룹이 PES 패 킷을 구성한다.
PES 패킷은 최소 인코딩 단위이고, 인코딩이 공통되는 비디오 데이터 및 오디오 데이터를 저장한다. 더욱 상세하게는, 상이한 인코딩 방식으로써 인코딩된 비디오 데이터와 오디오 데이터는 동일한 PES 패킷내에 존재하지 않는다. 그러나, 인코딩 방식이 동일하면 화상 경계 및 오디오 프레임의 경계를 확실하게 할 필요는 없다. 도 9에 나타내는 바와 같이, 하나의 프레임이 복수의 PES 패킷에 저장되고, 또한 복수의 프레임이 하나의 PES 패킷에 저장될 수도 있다.
도 10A∼10C 및 도 11A∼11C는, 트랜스포트 스트림과 프로그램 스트림의 데이터 구조를 나타낸다.
도 10A∼10C 및 도 12A∼12D에 나타내는 바와 같이, 각각의 TS 패킷은, TS 패킷 헤더와, 적응 필드(adaptation field)와, 페이로드로 구성되어 있다. TS 패킷 헤더에는 패킷 식별자(PID; Packet Identifier)가 저장되고, 이것에 의해서, TS 패킷이 속하는 비디오 스트림, 오디오 스트림, 또는 기타 스트림이 식별된다.
적응 필드에는 프로그램 클록 기준(PCR; Program Clock Reference)이 저장된다. PCR은 스트림을 디코딩하는 기기의 시스템 타임 클록(STC; System Time Clock)의 기준치이다. 기기는 통상적으로는 PCR 타이밍에 따라서 시스템 스트림을 디멀티플렉싱한 후, 비디오 스트림과 기타 스트림을 재구성한다.
PES 헤더에는, 디코딩 시각 표시(DTS; Decoding Time Stamp)와 재생 시각 표시(PTS;Presentation Time stamp)가 저장된다. DTS는 PES 패킷에 저장되는 화상 또는 오디오 프레임의 디코딩 타이밍을 나타내고, PTS는 비디오 또는 오디오 출력의 프레젠테이션 타이밍을 나타낸다.
모든 PES 패킷 헤더에 PTS 및 DTS를 기록할 필요는 없는 것을 염두에 두어야 한다. I-화상의 선두 데이터가 저장되는 PES 패킷의 헤더에 PTS와 DTS가 기록되어 있는 한, 디코딩 및 출력이 가능하다.
도 12A∼도 12D에 TS 패킷의 구조가 상세하게 도시되어 있다.
도 12A∼도 12D에 나타내는 바와 같이, 적응 필드에는 PCR 및 랜덤 액세스 표시 플래그(flag)가 저장된다. 이 플래그는, 비디오 또는 오디오 프레임 선두에 있고 액세스 포인트로서 사용될 수 있는 데이터가, 대응하는 페이로드에 저장되어 있는가를 나타낸다. 또한, TS 패킷의 헤더에는 상기의 PID에 추가하여, PES 패킷의 개시를 나타내는 유닛 개시 표시 플래그, 및 적응 필드가 후속하는가를 나타내는 적응 필드 제어 데이터가 저장된다.
도 11A∼도 11C는 프로그램 스트림의 팩의 구조를 나타낸다. 팩은, 팩 헤더내에 SCR을 포함하고, 또한 팩에 저장된 패킷의 패킷 헤더내에 stream-id를 포함하고 있다.
SCR은 트랜스포트 스트림의 PCR과, Stream-id는 PID와 실질적으로 동일하다. 또한, PES 패킷의 데이터 구조는 트랜스포트 스트림에서의 데이터 구조와 동일하고, PES 헤더에 PTS와 DTS가 저장된다.
프로그램 스트림과 트랜스포트 스트림의 큰 차이의 하나는, 트랜스포트 스트림에서는 복수의 프로그램이 허용되는 것이다. 즉, 프로그램 단위의 점에서, 프로그램 스트림은 하나의 프로그램만을 전송할 수 있지만, 트랜스포트 스트림은 복수 의 프로그램을 동시에 전송할 수 있다. 이것은, 트랜스포트 스트림에서는, 재생장치가 전송된 각각의 프로그램을 구성하는 비디오 스트림과 오디오 스트림을 식별할 수 있어야 하는 것을 의미한다.
도 13A∼13C2는, 각각의 프로그램의 오디오 스트림과 비디오 스트림의 구조 정보를 전송하는 데에 이용되는 PAT 테이블과 PMAP 테이블을 나타낸다. 도 13C1 및 도 13C2에 나타내는 바와 같이, PMAP 테이블에는 각각의 프로그램에 사용되는 비디오 스트림과 오디오 스트림의 조합에 관한 정보를 저장하고, PAT 테이블에는 프로그램과 PMAP 테이블을 서로 관련시키는 정보를 저장한다. 따라서, 재생장치는 PAT 테이블과 PMAP 테이블을 참조하여 출력해야 하는 프로그램의 비디오 스트림과 오디오 스트림을 검출할 수 있다.
이어서, 도 14A∼14C를 참조하여 상기의 프로그램 스트림 팩과, 트랜스포트 스트림의 TS 패킷의 디스크상의 배치에 대하여 설명한다.
도 14A에 나타내는 바와 같이, 1개의 ECC 블록내에는 32개의 섹터가 있다.
도 14B에 나타내는 바와 같이, 프로그램 스트림 타입의 비디오 오브젝트 (PS_VOB)를 구성하는 팩(PS Pack)은 섹터 경계내에 배치된다. 이것은 팩 크기와 섹터 크기가 모두 2 KB이기 때문이다.
그러나, 트랜스포트 스트림 타입의 비디오 오브젝트(TS1_VOB, TS2_VOB)는 8 KB 단위이므로 ECC 블록내에 배치된다. 각각의 8 KB 단위는 18 B의 헤더 영역, 및 데이터 영역에 도착 시각 표시(ATS; Arrival Time Stamp) 정보가 부가된 43개의 TS 패킷을 포함한다. ATS 정보는 DVD 기록장치에 의해서 생성되어서 부가되는 데이터 로서, DVD 기록장치가 외부로부터 패킷을 수신한 타이밍을 나타낸다.
또한, 도 14C에 나타내는 바와 같이, 고정 바이트 길이의 ATS와, MPEG_TS 패킷과의 조합을 연속적으로 기록하는 MPEG_TS 저장 포맷도 있을 수 있는 것을 염두에 두어야 한다.
5. AV 데이터의 관리 정보와 재생 제어
도 15A, 도 15B, 도 16A, 도 16B는 도 7에 나타낸 비디오 관리 정보(Video Manager) 파일의 데이터 구조를 나타낸다.
비디오 관리 정보는, 오브젝트의 디스크상의 기록 위치 등의 관리 정보를 나타내는 오브젝트 정보와, 오브젝트의 재생 순서를 나타내는 재생 제어 정보를 포함하고 있다.
도 15A는 디스크에 기록된 오브젝트가 PS_VOB#1∼PS_VOB#n, TS1_VOB#1∼TS1_VOB#n, 및 TS2_VOB#1∼TS2_VOB#n을 포함하는 예를 나타낸다.
도 15A에 나타내는 바와 같이, PS_VOB 정보 테이블과, TS1_VOB 정보 테이블과, TS2_VOB 정보 테이블이 오브젝트 종류에 따라서, 별개로 기록된다. 이러한 테이블의 각각에는 각각의 오브젝트에 대한 VOB 정보를 저장한다.
VOB 정보는 대응하는 오브젝트에 관한 일반 정보와, 오브젝트의 속성(屬性) 정보와, 오브젝트의 재생 시각을 디스크상의 어드레스 값으로 변환하기 위한 액세스 맵(map)과, 이 액세스 맵에 대한 관리 정보를 포함한다. 일반 정보는, 대응하는 오브젝트의 식별 정보와, 오브젝트의 기록 시각을 포함한다. 속성 정보는 비디오 스트림의 인코딩 모드 등 비디오 스트림 속성(V-ATR)과, 오디오 스트림의 개수(AST_Ns)와, 오디오 스트림의 인코딩 모드 등 오디오 스트림 속성(A_ATR)을 포함한다.
액세스 맵을 필요로 하는 두 가지 이유가 있다. 첫째는, 재생 경로 정보가, 예로서, 섹터 어드레스 값에 따라서 오브젝트 기록 위치를 직접적으로 참조하는 것을 피하고, 대신에 오브젝트의 재생 시각에 따라서 오브젝트 위치를 간접적으로 참조할 수 있도록 하기 위한 것이다. RAM 매체의 경우, 오브젝트의 기록 위치는, 예로서, 오브젝트의 편집 결과로서 변경될 수 있다. 이로 인하여, 재생 경로 정보가 섹터 어드레스에 따라서 오브젝트 기록 위치를 직접적으로 참조하는 경우, 갱신해야 하는 재생 경로 정보의 양이 증가한다. 그러나, 오브젝트를 재생 시각에 따라서 간접적으로 참조하는 경우는 재생 경로 정보의 갱신은 필요하지 않고, 액세스 맵만의 갱신이 필요하다.
둘째 이유는, AV 스트림이 일반적으로 시간축과 데이터(비트 스트림)축의 두개의 기준을 가지고 있지만, 그 사이의 상관 관계는 완전하지 않기 때문이다.
예로서, 비디오 스트림 인코딩의 국제 표준 규격인 MPEG-2 비디오의 경우, 가변 비트 전송 속도(화상의 복잡성에 따라서 비트 전송 속도를 변경하는 방식)를 이용하는 것이 표준으로 되고 있다. 이 경우, 스트림 선두로부터의 데이터 양과 재생 시간과의 사이에 아무런 비례 관계가 없으므로, 시간축을 기준으로 한 랜덤 액세스가 가능하지 않다. 시간축과 데이터(비트 스트림)축과의 사이의 변환을 실행함으로써 이 문제를 해결하는 데에, 액세스 맵이 사용된다.
도 15A에 나타내는 바와 같이, 재생 제어 정보는, 사용자 정의 재생 경로 정 보 테이블, 원시 재생 경로 정보 테이블, 및 타이틀 탐색 포인터를 포함한다.
도 16A에 나타내는 바와 같이, 재생 경로 데이터에는, 오브젝트 기록시에 기록된 모든 오브젝트를 나타내도록 DVD 기록장치가 자동적으로 생성하는 원시 정의 재생 경로 정보와, 사용자가 특정 재생 순서를 자유롭게 정의할 수 있게 하는 사용자 정의 재생 경로 정보의 2종류가 있다. 재생 경로 정보를 DVD에서는 통일적으로 PGC 정보(Program Chain Information)라고 부르고, 또한, 사용자 정의 재생 경로 정보를 U-PGC 정보, 원시 재생 경로 정보를 O-PGC 정보라고 부른다. U-PGC 정보와 O-PGC 정보는, 오브젝트의 재생 구간의 셀을 나타내는 셀 정보를 열거하는 테이블이다. O-PGC 정보에 의해서 표시된 오브젝트 재생 구간을 원시 셀(O-CELL)이라고 하고, U-PGC 정보에 의해서 표시된 오브젝트 재생 구간을 사용자 셀(U-CELL)이라고 한다.
셀은, 오브젝트의 재생 개시 시각과 재생 종료 시각으로써 오브젝트의 재생 구간을 나타내고, 재생 개시 시각과 재생 종료 시각은 상기한 액세스 맵에 의해서, 오브젝트가 디스크상에 기록되는 실제 위치로 변환된다.
도 16B에 나타내는 바와 같이, PGC 정보에 의해서 표시되는 셀 군(群)은, 테이블에서의 엔트리 순서에 따라서 순차적으로 재생되는 연속하는 재생 순서를 정의한다.
도 17은, 오브젝트, 셀, PGC, 및 액세스 맵 간의 상세한 관계를 나타낸다.
도 17에 나타내는 바와 같이, 원시 PGC 정보(50)는 적어도 하나의 셀 정보(60, 61, 62, 63)를 포함한다.
각각의 셀 정보는 재생하는 오브젝트, 및 오브젝트 종류와 오브젝트 재생 구간을 지정한다. PGC 정보(50)에 있어서의 셀 정보의 엔트리 순서는, 각각의 셀이 지정하는 오브젝트가 재생될 때의 오브젝트의 재생 순서를 나타낸다.
각각의 셀 정보(예로서, 셀 정보(60))는 그것이 지정하는 오브젝트의 종류를 나타내는 타입(Type)(60a)과, 특정 오브젝트를 식별하는 오브젝트 ID(60b)와, 시간축상에서의 오브젝트의 재생 개시 시각(Start_PTM)(60c)과, 재생 종료 시각(End_PTM)(60d)을 포함한다.
데이터 재생시, PGC 정보(50)로부터 셀 정보(60)가 순차적으로 판독되고, 각각의 셀에 의해서 지정된 오브젝트가, 각각의 셀에 의해서 지정된 재생 구간 동안 재생된다.
액세스 맵(80c)은, 셀 정보에 포함된 개시 시각 정보와 종료 시각 정보를 오브젝트의 디스크상에서의 어드레스로 변환한다.
이 액세스 맵은 상기에서 설명한 맵 정보이고, 오브젝트의 기록시에 생성되어 기록된다. 맵을 생성하기 위해서는 오브젝트의 데이터의 화상 구조를 분석해야 한다. 더욱 상세하게는, 도 9에 나타낸 I-화상의 위치의 검출과, 도 10A∼10C, 도 11A∼11C에 나타낸 I-화상의 재생 시각인, PTS 및 기타 시각 표시 정보의 검출이 필요하다.
이어서, PS_VOB, TS1_VOB, 및 TS2_VOB의 맵 정보를 생성할 때에 발생하는 문제에 대하여 설명한다.
도 1을 참조로 하여 설명한 바와 같이, PS_VOB와 TS1_VOB는 주로, 수신된 아 날로그 방송을 DVD 기록장치가 MPEG 스트림으로 인코딩함으로써 생성된다. 따라서, I-화상과 시각 표시 정보는 DVD 기록장치에 의해서 자체 생성되고, DVD 기록장치가 스트림의 내부 데이터 구조를 인식하고 있으므로, 맵 정보가 아무런 문제없이 생성될 수 있다.
또한, 도 1을 참조로 하여 설명한 바와 같이, TS2_VOB는, 수신된 디지털 방송을 DVD 기록장치가 아무런 중간 인코딩을 하지 않고 디스크에 직접 기록한 디지털 방송이다. 따라서, 기록장치가, PS_VOB를 기록하는 경우와 같이, 시각 표시 정보를 생성하지 않고 또한 I-화상의 위치를 결정하지 않으므로, DVD 기록장치는 스트림 내부의 데이터 구조를 인식하지 못하고, 따라서, 기록되는 디지털 스트림으로부터 이 정보를 검출해야 한다.
이렇게 하기 위하여, DVD 기록장치는, 기록장치 외부에서 인코딩된 스트림을 기록하고 있는 TS2_VOB의 맵 정보에 대하여 이하와 같이 I-화상과 시각 표시 정보를 검출한다.
우선, I-화상은, 도 12A∼12D에 나타내는 TS 패킷의 적응 필드의 랜덤 액세스 표시 정보를 검출함으로써, 검출된다. 시각 표시 정보는, PES 헤더의 PTS를 검출함으로써, 검출된다. 시각 표시로서는, PTS 대신에, 적응 필드로부터의 PCR, 또는 DVD 기록장치에의 TS 패킷의 도착 시각을 나타내는 ATS를 사용할 수도 있다. 어느 경우든지, DVD 기록장치는 상위 시스템 계층의 정보에 따라서 I-화상의 위치를 검출하고, MPEG 스트림의 비디오층의 데이터 구조를 해석할 필요가 없다. 이것은 맵 정보를 생성하기 위하여 비디오층을 해석하는 데에 필요로 하는 시스템 비용이 크기 때문이다.
또한, 시스템 계층의 검출이 불가능한 경우도 있다. 이러한 경우에는 맵 정보가 생성될 수 없으므로, 유효한 맵 정보가 없는 것을 나타낼 필요가 있다. DVD 기록장치는 도 15B에 나타내는 맵 관리 정보로써 이러한 내용을 표시한다.
도 15B에 나타낸 맵 관리 정보는, 맵 유효성 정보와 자체 인코딩(self-encoding) 플래그를 포함하고 있다. 자체 인코딩 플래그는, 오브젝트가 DVD 기록장치에 의해서 인코딩된 것을 나타내고, 따라서 내부 화상 구조가 알려져 있고 또한 맵 정보의 시각 표시 정보와 I-화상의 위치 정보가 정확한 것을 나타낸다. 맵 유효성 정보는 유효한 액세스 맵이 있는가 없는가를 나타낸다.
시스템 계층이 검출될 수 없는 경우의 예로서는, 적응 필드가 설정되어 있지 않은 경우와, 디지털 스트림이 MPEG 트랜스포트 스트림이 아닌 경우가 있다. 전 세계에 걸쳐서 각종 디지털 방송 규격 및 포맷이 사용되고 있으므로, DVD 기록장치가, 맵을 생성할 수 없는 오브젝트를 기록하는 경우도 당연히 있을 수 있다. 예로서, 일본 시장용으로서 일본의 디지털 방송을 기록하도록 설계된 DVD 기록장치를, 미국에서 사용하여 미국의 디지털 방송을 기록하는 경우, DVD 기록장치가, 기록된 오브젝트에 대한 맵을 생성할 수 없는 경우가 있을 수 있다.
그러나, DVD 기록장치는 맵 정보가 생성되지 않은 오브젝트를, 선두로부터 순차적으로 재생할 수 있다. 이 경우에, 기록된 디지털 스트림을 디지털 인터페이스를 통하여, 그 스트림에 적절한 STB에 출력함으로써, 기록된 디지털 스트림으로부터의 비디오를 재생할 수 있다.
6. 재생 기능의 기본 동작
이어서, 도 18을 참조하여 상기 광 디스크에 기록된 콘텐츠를 재생하는 DVD 기록장치/플레이어의 재생 동작에 대하여 이하에 설명한다.
도 18에 나타내는 바와 같이, DVD 플레이어는, 광 디스크(100)로부터 데이터를 판독하는 광 픽업(201)과, 판독한 데이터의 오류 정정 처리를 실행하는 ECC 처리부(202)와, 오류 정정후의 판독 데이터를 일시적으로 저장하는 트랙 버퍼(203)와, 동화상 오브젝트(PS_VOB) 및 기타 프로그램 스트림을 재생하는 PS 디코더(205)와, 디지털 방송 오브젝트(TS2_VOB) 및 기타 트랜스포트 스트림을 재생하는 TS 디코더(206)와, 오디오 오브젝트(AOB)를 재생하는 오디오 디코더(207)와, 정지화상 오브젝트(POB)를 디코딩하는 정지화상 디코더(208)와, 디코더(205∼208)에의 데이터 입력을 절환하는 절환 수단(210)과, 플레이어의 각 부분을 제어하는 제어부(211)를 구비하고 있다.
광 디스크(100)에 기록된 데이터는, 광 픽업(201)에 의해서 판독되어서, ECC 처리부(202)를 통과하여 트랙 버퍼(203)에 저장된다. 이어서, 트랙 버퍼(203)에 저장된 데이터는, PS 디코더(205), TS 디코더(206), 오디오 디코더(207), 또는 정지화상 디코더(208)에 입력되어서, 디코딩되어 출력된다.
제어부(211)는, 도 16A 및 16B에 나타낸 재생 경로 정보(PGC)에 의해서 지정된 재생 순서에 따라서, 판독해야 하는 데이터를 결정한다. 도 16A 및 16B에 나타낸 예를 보면, 제어부(211)는, 우선 VOB#1 부분(CELL#1), 이어서 VOB#3 부분(CELL#2), 최후에 VOB#2(CELL#3)를 재생한다.
또한, 제어부(211)는, 도 17에 나타낸 재생 경로 정보(PGC)의 셀 정보로부터, 재생하는 셀의 타입, 대응하는 오브젝트, 및 오브젝트의 재생 개시 시각과 재생 종료 시각을 획득할 수 있다. 제어부(211)는 셀 정보에 의해서 지정된 오브젝트 구간의 데이터를 적절한 디코더에 입력한다.
또한, 제어부(211)는, 셀 정보의 오브젝트 ID에 따라서 재생 대상의 오브젝트를 식별한다. 또한, 제어부(211)는, 식별된 오브젝트의 재생 구간인 셀을, 대응하는 VOB 정보의 액세스 맵을 참조하여 셀 정보의 Start_PTM과 End_PTM을 디스크 어드레스 값으로 변환함으로써 식별한다.
본 발명의 실시형태에 의한 플레이어는, 또한, AV 스트림을 외부 기기에 공급하기 위한 디지털 인터페이스(204)를 구비하고 있다. 따라서, AV 스트림을 IEEE 1394, IEC 958, 또는 기타 통신 수단을 통하여 외부 기기에 공급할 수 있다.
이것은, 예로서, 플레이어가 기록장치/플레이어에 의해서 인코딩되지 않은 TS2_VOB를 디코딩하는 내부 디코더를 구비하고 있지 않은 경우, TS2_VOB를 디코딩하지 않고, 디지털 인터페이스(204)를 통하여 외부의 STB에 직접 출력하여, 그 STB에서 디코딩하여 재생시킬 수 있기 때문이다.
디지털 데이터가 외부 기기에 직접 출력되면, 제어부(211)는 도 15B에 나타낸 맵 정보에 따라서, 랜덤 액세스 재생이 가능한가를 판단한다. 액세스 포인트 정보 플래그(랜덤 액세스 표시 플래그)가 유효하면, 액세스 맵은 I-화상의 위치 정보를 구비하고 있다. 이 경우에, 제어부(211)는 외부 기기로부터의 고속 재생 또는 기타 요구에 따라서, I-화상을 포함하는 디지털 데이터에 액세스하여 디지털 데이 터를 디지털 인터페이스를 통하여 외부 기기에 출력할 수 있다. 또한, 타임 액세스 정보 플래그가 유효하면, 타임 액세스가 가능하다. 이 경우에, 제어부(211)는, 외부 기기로부터의 타임 액세스 요구에 따라서, 지정된 재생 시간에 상당하는 화상 데이터를 포함하는 디지털 데이터에 액세스하여 디지털 데이터를 디지털 인터페이스를 통하여 외부 기기에 출력할 수 있다.
7. 기록 기능의 기본 동작
이어서, 도 19를 참조하여 상기 광 디스크에 대하여 기록 및 재생을 실행하는 본 발명에 의한 DVD 기록장치의 구성 및 동작에 대하여 이하에서 설명한다.
도 19에 나타내는 바와 같이, DVD 기록장치는, 사용자 요구를 수신하고 사용자에게 정보를 신속하게 표시하는 사용자 인터페이스(222), DVD 기록장치 전체의 관리 및 제어를 담당하는 시스템 제어부(212), VHF 및 UHF 방송을 수신하는 아날로그 방송 튜너(213), 아날로그 신호를 디지털 신호로 변환하고 디지털 신호를 MPEG 프로그램 스트림으로 인코딩하는 인코더(214), 디지털 위성 방송을 수신하는 디지털 방송 튜너(215), 디지털 위성으로부터 전송되는 MPEG 트랜스포트 스트림을 해석하는 해석부(216), 텔레비전 및 스피커 등의 표시부(217), 및 AV 스트림을 디코딩하는 디코더(218)를 구비하고 있다. 디코더(218)에는, 예로서, 도 18에 나타내는 바와 같은, 제1 및 제2디코더 등이 있다. 또한, DVD 기록장치는, 디지털 인터페이스(219)와, 기록 데이터를 일시적으로 저장하는 트랙 버퍼(220)와, 디스크에 데이터를 기록하는 구동장치(221)를 구비하고 있다. 디지털 인터페이스(219)는 외부 기기에 데이터를 출력하는 IEEE 1394 또는 기타의 통신 인터페이스이다.
이와 같이 구성된 DVD 기록장치에 있어서, 사용자 인터페이스(222)가 최초로 사용자로부터의 요구를 수신한다. 이어서, 사용자 인터페이스(222)는 상기 요구를 시스템 제어부(212)에 인도하고, 시스템 제어부(212)는 사용자 요구를 해석하여 각 모듈에 적절한 처리를 실행하도록 명령한다.
기록에는, DVD 기록장치가 입력 디지털 데이터를 인코딩하는 자체 인코딩과, 이미 인코딩된 디지털 데이터를 추가로 인코딩하지 않고 디스크에 기록하는 외부 인코딩이 있다.
7.1 자체 인코딩에 의한 기록 동작
우선, 아날로그 방송을 PS_VOB 스트림으로 인코딩하여 기록하는 동작을 예로 하여, 자체 인코딩의 기록에 대하여, 이하에 상세하게 설명한다.
시스템 제어부(212)는 아날로그 방송 튜너(213)에 수신 명령을 보내고, 또한 인코더(214)에 인코딩 명령을 보낸다.
이어서, 인코더(214)는 아날로그 방송 튜너(213)로부터의 AV 데이터를 비디오 인코딩, 오디오 인코딩 및 시스템 인코딩하여, 인코딩된 데이터를 트랙 버퍼(220)에 인도한다.
인코딩 개시 직후에, 인코더(214)는, 인코딩되고 있는 MPEG 프로그램 스트림의 선두에 있는 시각 표시 정보를 재생 개시 시각(PS_VOB_V_S_PTM)으로서 시스템 제어부(212)에 보내고, 또한 인코딩 처리와 병행하여 액세스 맵을 작성하는 데에 필요한 정보를 시스템 제어부(212)에 보낸다. 이 값은, 이후에 생성되는 도 17에 나타내는 셀 정보의 Start_PTM으로서 설정된다. 시각 표시 정보는 일반적으로 PTS 이지만, SCR을 대신 사용할 수 있다.
이어서, 시스템 제어부(212)는 구동장치(221)에 기록 명령을 보내고, 구동장치(221)는 이에 따라서 트랙 버퍼(220)에 축적되어 있는 데이터를 추출하여 DVD-RAM 디스크(100)에 기록한다. 이 때, 상기한 연속 데이터 영역(CDA; contiguous data area)을 디스크의 기록 가능 영역에서 검색하여, 상기 연속 데이터 영역에 데이터를 기록한다.
기록은 통상적으로 사용자가 기록 정지 명령을 입력하면 종료된다. 사용자로부터의 기록 정지 명령은 사용자 인터페이스(222)를 통하여 시스템 제어부(212)에 입력되고, 이어서 시스템 제어부(212)는 아날로그 방송 튜너(213)와 인코더(214)에 정지 명령을 보낸다.
인코더(214)는, 시스템 제어부(212)로부터의 인코딩 정지 명령을 받으면 인코딩을 정지하고, 최종 인코딩된 MPEG 프로그램 스트림의 최종 데이터의 시각 표시 정보를 재생 종료 시각(PS_VOB_V_E_PTM)으로서, 시스템 제어부(212)에 보낸다. 이 값은, 도 17에 나타내는 셀 정보의 End_PTM으로서 설정된다. PTS가 통상적으로 시각 표시 정보로서 사용되지만, SCR을 대신 사용할 수 있다.
인코딩 처리 종료후, 시스템 제어부(212)는 도 15A 및 15B에 나타낸 PS_VOB에 대한 재생 제어 정보와 VOB 정보(PS_VOBI)를 생성한다.
여기서 생성되는 VOB 정보는 오브젝트 종류에 적절한 액세스 맵과 맵 관리 정보를 포함한다. 시스템 제어부(212)는, 맵 관리 정보의 맵 유효성 정보를 "유효"에 설정하고, 자체 인코딩 플래그를 ON으로 설정한다.
기록된 오브젝트를 재생 오브젝트의 하나로 하는 도 16A에 나타내는 원시 재생 정보(O_PGC 정보)가 재생 제어 정보로서 생성된다. 이 O_PGC 정보는 원시 재생 경로 테이블에 부가된다. 원시 재생 경로(O_PGC 정보)는 셀 정보를 포함한다. 셀 정보의 타입(Type)에는 PS_VOB가 설정된다.
이어서, 시스템 제어부(212)는, 트랙 버퍼(220)에 축적되어 있는 데이터의 기록을 정지하고 또한 PS_VOB의 VOB 정보(PS_VOBI) 및 재생 제어 정보를 기록할 것을 구동장치(221)에 대하여 명령한다. 따라서, 구동장치(221)는 트랙 버퍼(220)의 나머지 데이터와, 이러한 정보를 광 디스크(100)에 기록하고, 기록 처리를 종료한다.
아날로그 방송이 TS1_VOB로 인코딩될 수 있는 것은 명백하다. 이 경우, 인코더(214)는 아날로그 신호를 디지털 신호로 변환하고 디지털 신호를 MPEG 트랜스포트 스트림으로 인코딩하는 인코더이어야 하고, 셀 정보의 타입 정보는 TS1_VOB에 설정된다. PTS 또는 PCR은 Start_PTM 및 End_PTM에 이용할 수 있다.
7.2 외부 인코딩에 의한 기록 동작
이어서, 외부 인코딩에 의한 기록에 대하여, 디지털 방송의 기록을 참조로 하여 이하에 상세하게 설명한다. 이 경우, 기록되는 오브젝트의 종류는 TS2_VOB이다.
사용자로부터의 디지털 방송 기록 요구는, 사용자 인터페이스(222)를 통해서 시스템 제어부(212)에 전달된다. 이어서, 시스템 제어부(212)는 디지털 방송 튜너(215)에 대하여 수신할 것을 명령하고 해석부(216)에 대하여 수신한 데이터를 해석 할 것을 명령한다.
디지털 방송 튜너(215)로부터 전송된 MPEG 트랜스포트 스트림은 해석부(216)를 통하여 트랙 버퍼(220)에 전송된다.
디지털 방송으로서 수신된, 인코딩된 MPEG 트랜스포트 스트림(TS2_VOB)의 VOB 정보(TS2_VOBI)를 생성하기 위하여, 해석부(216)는, 우선 트랜스포트 스트림의 선두에 있는 시각 표시 정보를 개시 시각 정보(TS2_VOB_V_S_PTM)로서 추출하여, 그것을 시스템 제어부(212)에 보낸다. 이 개시 시각 정보는, 이후에 생성되는 도 17에 나타내는 셀 정보의 Start_PTM으로서 설정된다. 이 시각 표시 정보는, PCR 또는 PTS이다. 또한, 오브젝트가 DVD 기록장치에 전송되는 타이밍을 나타내는 ATS를 대신 사용할 수도 있다.
이어서, 해석부(216)는 MPEG 트랜스포트 스트림의 시스템 계층을 해석하여, 액세스 맵 작성에 필요한 정보를 검출한다. 오브젝트내에서의 I-화상의 위치를 상기한 바와 같이 TS 패킷 헤더의 적응 필드내의 랜덤 액세스 인디케이터 (random_access_indicator)에 따라서 검출한다.
이어서, 시스템 제어부(212)는, 구동장치(221)에 대하여 기록 명령을 출력하고, 이에 따라서 구동장치(221)는 트랙 버퍼(220)에 축적되어 있는 데이터를 추출하여 DVD-RAM 디스크(100)에 기록한다. 또한, 시스템 제어부(212)는 파일 시스템의 할당(allocation) 정보에 따라서 디스크상의 기록 위치를 구동장치(221)에 지시한다. 이 때, 상기한 연속 데이터 영역(CDA)을 디스크의 기록 가능 영역에서 검색하여, 상기 연속 데이터 영역에 데이터를 기록한다.
기록은 통상적으로 사용자가 기록 정지 명령을 입력하면 종료된다. 사용자로부터의 기록 정지 명령은 사용자 인터페이스(222)를 통하여 시스템 제어부(212)에 입력되고, 이어서 시스템 제어부(212)는 디지털 방송 튜너(215)와 해석부(216)에 정지 명령을 보낸다.
시스템 제어부(212)로부터 수신한 정지 명령에 따라서, 해석부(216)는, 수신한 데이터의 해석을 정지하고, 최종 해석된 MPEG 트랜스포트 스트림의 최종 데이터의 시각 표시 정보를 재생 종료 시각(TS2_VOB_V_E_PTM)으로서, 시스템 제어부(212)에 보낸다. 이 값은, 도 17에 나타내는 셀 정보의 End_PTM으로서 설정된다. PCR 또는 PTS가 시각 표시 정보로서 사용되지만, 오브젝트가 DVD 기록장치에 전송된 시각을 나타내는 ATS를 대신 사용할 수 있다.
디지털 방송의 수신 처리 종료후, 시스템 제어부(212)는 해석부(216)로부터 수신한 정보에 따라서, 도 15A 및 15B에 나타낸 TS2_VOB에 대한 재생 제어 정보와 VOB 정보(TS2_VOBI)를 생성한다.
여기서 생성되는 VOB 정보는 오브젝트 종류에 적절한 액세스 맵과 맵 관리 정보를 포함한다. 시스템 제어부(212)는, I-화상의 오브젝트내에서의 위치가 검출되고 유효한 액세스 맵이 생성된 경우에는, 맵 관리 정보의 맵 유효성 정보를 "유효"에 설정하고, 자체 인코딩 플래그를 OFF로 설정한다. 유효한 액세스 맵이 생성될 수 없었던 경우에는 맵 유효성 정보를 "무효"에 설정한다. 유효한 액세스 맵이 생성될 수 없는 경우의 예로서는, 대응하는 디지털 방송이 수신되지 않는 경우와, 적응 필드에 아무런 랜덤 액세스 정보도 없는 경우가 있다. 신호가 디지털 인터페 이스를 통하여 직접 입력되는 경우, 신호는 또한 MPEG 트랜스포트 스트림이 아닐 수도 있고, 이 경우에도, 맵 유효성 플래그는 "무효"에 설정된다.
기록된 오브젝트를 재생 오브젝트의 하나로 하는 도 16A 및 16B에 나타내는 원시 재생 정보(O_PGC 정보)가 재생 제어 정보로서 생성된다. 이 O_PGC 정보는 원시 재생 경로 테이블에 부가된다. 원시 재생 경로(O_PGC 정보)는 셀 정보를 포함한다. 셀 정보의 타입(Type)에는 TS2_VOB가 설정된다.
이어서, 시스템 제어부(212)는, 트랙 버퍼(220)에 축적되어 있는 데이터의 기록을 정지하고 또한 TS2_VOB의 VOB 정보(TS2_VOBI) 및 재생 제어 정보를 기록할 것을 구동장치(221)에 대하여 명령한다. 따라서, 구동장치(221)는 트랙 버퍼(220)의 나머지 데이터와, 이러한 정보를 광 디스크(100)에 기록하고, 기록 처리를 종료한다.
상기의 기록 동작은, 사용자로부터의 기록 개시 및 종료 명령을 참조로 하여 설명했지만, 실질적으로 동일한 동작이, 예로서, VCR에 의해서 제어되는 타이머 기록에 적용되는 것은 명백하다. 이 경우에는, 시스템 제어부가 사용자 대신에 기록 개시 및 종료 명령을 자동적으로 발행하는 것이며, DVD 기록장치의 동작에 아무런 본질적인 변화는 없다.
8. 발명의 개요
본 발명에 의한 정보기록매체는, 아날로그 방송 또는 디지털 방송 콘텐츠, 및 아날로그/디지털 인터페이스를 통하여 입력되는 여러 종류의 데이터를 포함하는, 여러가지 상이한 포맷의 데이터를 기록하는 매체이다. 또한, 본 발명에 의한 정보기록장치는 이 정보기록매체에 대하여 AV 데이터를 기록, 재생하는 장치이다.
더욱 상세하게는, 본 발명의 정보기록매체에는, 외부 입력된 AV 데이터가 MPEG_TS 형식으로 기록되고, 또한 각각의 MPEG_TS 패킷의 디코더 입력 시각 정보를, 각각의 MPEG_TS 패킷에 부가한 스트림이 기록된다.
또한, MPEG_TS 제어 정보를 포함하는 프로그램 고유 정보(PSI; Program Specific Information) 패킷의 위치와, 기록장치 고유의 또는 콘텐츠 고유의 정보를 사용자 전용 스트림(UP 패킷)으로서 매입(埋入)하고, 각각의 패킷의 디코더 입력 시각 정보를 축적에 적합한 형식으로 부가한다.
또한, MPEG_TS의 다중화시에, MPEG_PS로의 변환을 간단하게 하기 위하여, 1 팩(2048 바이트) 이하의 데이터를 연속 다중화 단위로서 시스템 인코딩하고, 각각의 연속 다중화 단위를 하나 또는 복수의 MPEG_TS 패킷에 할당하면서, MPEG_TS를 기록한다.
9. 발명의 상세한 실시형태
제1실시예
본 발명에 의한 정보기록 및 재생장치의 기본적인 기록 및 재생 동작은, 대체로 상기한 바와 같으므로, 아날로그 외부 입력을 기록하는 경우의 기본 동작에 대해서만 이하에 도 20을 참조하여 상세하게 설명한다. 이 경우, 기록되는 오브젝트의 종류는 TS1_VOB이다.
사용자로부터의 아날로그 외부 입력 기록 요구는 사용자 인터페이스(222)를 통하여 시스템 제어부(212)에 전달된다. 이어서, 시스템 제어부(212)는 외부 입력 부(223)에 수신 명령을 보내고 인코더(214)에 데이터 인코딩 명령을 보낸다.
인코더(214)로부터의 MPEG 트랜스포트 스트림은 트랙 버퍼(220)에 전송된다.
인코딩된 MPEG 트랜스포트 스트림(TS1_VOB)의 VOB 정보(TS1_VOBI)를 생성하기 위하여, 인코더(214)는 우선, 시각 표시 정보를 재생 개시 시각(TS1_VOB-V_S_PTM)으로서 설정하고, 이것을 시스템 제어부(212)에 보낸다. 이 개시 시각 정보는, 이후에 생성되는 도 17에 나타내는 셀 정보의 Start_PTM으로서 설정된다. 이 시각 표시 정보는, PCR 또는 PTS이다.
인코더(214)는, 또한, MPEG 트랜스포트 스트림을 생성하면서, 액세스 맵 작성에 필요한 데이터를 생성한다. 이것은, 예로서, I-화상의 선두 MPEG 트랜스포트 패킷에는 적응 필드를 저장하고, random_access_indicator의 비트를 설정하고, 또한 VOBU의 개시인 것을 시스템 제어부(212)에 통보함으로써 실행된다.
이어서, 시스템 제어부(212)는, 구동장치(221)에 기록 명령을 전송하고, 구동장치(221)는 트랙 버퍼(220)로부터 데이터를 추출하여 DVD-RAM 디스크(100)에 기록한다. 또한, 시스템 제어부(212)는 파일 시스템의 할당 정보에 따라서 디스크상의 기록 위치를 구동장치(221)에 지시한다. 또한, 상기한 연속 데이터 영역(CDA)을 디스크의 기록 가능 영역에서 검색하여, 상기 연속 데이터 영역에 데이터를 기록한다.
기록은 통상적으로 사용자가 기록 정지 명령을 입력하면 종료된다. 사용자로부터의 기록 정지 명령은 사용자 인터페이스(222)를 통하여 시스템 제어부(212)에 입력되고, 이어서 시스템 제어부(212)는 인코더(214)에 정지 명령을 보낸다.
시스템 제어부(212)로부터 수신한 정지 명령에 따라서, 인코더(214)는, 인코딩 처리를 정지하고, 최종 인코딩된 MPEG 트랜스포트 스트림의 최종 데이터에 포함된 시각 표시 정보를 재생 종료 시각(TS1_VOB_V_E_PTM)으로서, 시스템 제어부(212)에 보낸다. 이 값은, 도 17에 나타내는 셀 정보의 End_PTM으로서 설정된다. 시각 표시 정보는 PCR 또는 PTS가 된다.
기록 처리 종료후, 시스템 제어부(212)는 인코더(214)로부터 수신한 정보에 따라서, 도 15A 및 15B에 나타낸 TS1_VOB에 대한 VOB 정보(TS1_VOBI)와 재생 제어 정보를 생성한다.
여기서 생성되는 VOB 정보는 오브젝트 종류에 적절한 액세스 맵과 맵 관리 정보를 포함한다. 시스템 제어부(212)는, 맵 관리 정보의 맵 유효성 정보를 "유효"에 설정하고, 또한 자체 인코딩 플래그를 ON으로 설정한다.
기록된 오브젝트를 재생 오브젝트의 하나로 하는 도 16A 및 16B에 나타내는 원시 재생 경로 정보(O_PGC 정보)가 재생 제어 정보로서 생성된다. 이 O_PGC 정보는 원시 재생 경로 테이블에 부가된다. 원시 재생 경로 정보(O_PGC 정보)는 셀 정보를 포함한다. 셀 정보의 타입(Type) 정보에는 "TS1_VOB"가 설정된다.
이어서, 시스템 제어부(212)는, 트랙 버퍼(220)에 축적되어 있는 데이터의 기록을 정지하고 또한 TS1_VOB의 VOB 정보(TS1_VOBI) 및 재생 제어 정보를 기록할 것을 구동장치(221)에 대하여 명령한다. 따라서, 구동장치(221)는 트랙 버퍼(220)의 나머지 데이터와, 이러한 정보를 광 디스크(100)에 기록하고, 기록 처리를 종료한다.
이하에, 인코더(214)에 의해서 생성되는 자체 인코딩 MPEG 트랜스포트 스트림을 더욱 상세하게 설명한다.
도 21A 및 21B에 자체 인코딩 MPEG 트랜스포트 스트림의 구조를 나타낸다. 이 도면에 나타내는 바와 같이, 자체 인코딩 MPEG 트랜스포트 스트림은 VOBU 단위로 분할되어 있다. 각 VOBU의 선두에는 PAT 패킷, PMT 패킷, 및 스트림 고유 정보가 매입된 사용자 전용 패킷(UP 패킷)이 연속되어 있다. 또한, VOB의 선두에는 적어도 PAT 패킷과 PMT 패킷이 배치된다.
도 21B에 나타내는 바와 같이, 각각의 패킷에는 디코더 입력 시각을 나타내는 ATS가 또한 부가되어 있고, 각각의 패킷은 ATS에 의해서 지정된 시각에 디코더에 입력된다.
선두 패킷의 PAT 패킷에는, 자체 인코딩 프로그램 정보(PMT 패킷 PID 등)가 저장되고, ATS1에 의해서 표시된 시각에 디코더에 입력된다.
제2패킷의 PMT 패킷에는, 프로그램을 구성하는 각각의 기본 스트림의 PID가 저장된다. 본 예에서는 비디오, 오디오, 데이터 방송(도면에서 "Data"), 및 사용자 전용(도면에서 "private") 패킷의 PID가 저장되어 있다.
제3패킷의 사용자 전용 패킷에는, 스트림에의 부가 정보가 저장된다. 이러한 부가 정보는, 예로서, 스트림의 타이틀 정보와, 기록 일시 정보와, 비트 전송 속도, 비디오 해상도, 프레임 속도, 종횡비(aspect ratio), 또는 인코딩 방식 등 스트림의 인코딩 정보인 스트림 속성과, 외부 입력이 아날로그인가 디지털인가를 식별하는 입력 소스 식별 정보와, 데이터가 디지털인 경우 AV 데이터의 인코딩 방식을 나타내는 정보와, 복사 허용/금지를 나타내는 저작권 보호 정보와, 클로즈드 캡션(CC; Closed Caption) 데이터, 텔레텍스트 데이터, 또는 표시 제어에 사용하는 WSS(Wide-Screen Signaling) 데이터 등, 수직 귀선 소거 기간(VBI; vertical blanking interval) 신호와, 시스템 인코딩 조건을 나타내는 정보와, 각종 DVD 규격과의 호환성을 나타내는 정보와, 해당 스트림을 기록한 제조업자가 제공하는 고유 데이터를 이용하여 사용자 편리성을 위하여 구성한 메뉴 정보와, 각종 DVD 규격의 MPEG 프로그램 스트림(MPEG_PS)으로의 변환에 유용한 데이터를 포함할 수 있다.
이어서, 상기와 같이 MPEG 트랜스포트 스트림내에 배치되어서 이러한 부가 정보에 저장된 패킷의 디코더 입력 시각에 대하여 도 22A 및 22B를 참조하여 설명한다.
도 22A는 트랜스포트 스트림 시스템 타겟 디코더(T_STD)라고 하는 디코더의 기본적인 구성을 나타내는 블록도이다. 이 도면은, 또한 PSI 패킷을 해석하고, 디코더의 제어를 실행하는(상기에서는 설명하지 않았음) 시스템 디코더(235)를 나타내고 있다.
PAT(PSI 패킷) 또는 PMT 패킷이, PSI 패킷으로서, T_STD에 입력되면, 패킷은 디멀티플렉서(232)에 의해서 패킷 종류에 따라서 판단되어서, 시스템 제어에 사용되는 PSI 패킷이 트랜스포트 버퍼(233)에 즉시 전송된다.
이어서, 트랜스포트 버퍼(233)에 축적된 데이터는 1,000,000 비트/초(=Rsys)의 속도로 시스템 버퍼(234)에 전송된다.
PSI 데이터는, 시스템 버퍼(234)에 필요한 PSI 데이터가 축적되는 순간에 유 효하게 된다.
이와 같이, 이러한 MPEG의 T_STD 모델에서는, 디코더의 동작 모델을 규정하고, 예로서, MPEG 트랜스포트 스트림의 전송 속도에 대한 표준을 규정하고 있다.
정보기록장치는, T_STD가 트랜스포트 스트림을 올바로 디코딩할 수 있게 보장하는 MPEG 트랜스포트 스트림의 포맷에 따라서 트랜스포트 스트림을 자체 인코딩해야 하므로, PSI 패킷의 전송에는 몇 가지 제한이 있다. 이어서, 패킷 전송 속도를 결정하는 ATS의 결정 방법에 대하여 도 22B를 참조하여 설명한다.
자체 인코딩 스트림의 재생시에는, 선두의 PAT, PMT, 및 UP 패킷이 각각 ATS1, ATS2, ATS3이 나타내는 시각에 T_STD에 입력된다.
PMT 패킷과 UP 패킷에 주목하면, PMT 패킷에 의해서 지정된 UP 패킷의 PID를 T_STD가 해석하고, 그것을 유효하게 하기 위해서는, TS_program_map_section(m 바이트)의 최종 바이트가 시스템 버퍼(234)에 저장되어야 한다.
즉, PMT가 유효하게 되기 위해서는, PMT 패킷 입력 시각인 ATS2로부터, (m+n+5)×8/Rsys 초가 경과되어야 한다. 여기서, n은 PMT 패킷의 adaptation_field의 바이트 길이이다.
T_STD의 기준 클록인 시스템 클록 주파수(SCF; System Clock Frequency)가 27,000,000 Hz(오차 허용 범위가 ±810 Hz로 규정되어 있다)이므로, ATS가 시스템 클록 주파수의 정밀도로 나타낸 시각이라고 하면, ATS3과 ATS2의 사이에는 이하의 관계가 확실하게 성립한다.
ATS3≥ATS2+((m+n+5)*8/Rsys)*SCF
PMT 패킷내에 adaptation_field가 없고(n=0), 또한 PMT 패킷에는 최소의 TS_program_map_section(21 바이트)이 저장되어 있는 경우에만 ATS2와 ATS3과의 사이의 간격이 최소이므로, 208/Rsys×SCF의 시간 간격이 최소가 된다.
마찬가지로, PAT 패킷의 입력 시각 ATS1과 PMT 패킷의 입력 시각 ATS2에 대하여 이하의 관계가 성립하는 것이 필요하다.
ATS2≥ATS1+((m0+n0+5)*8/Rsys)*SCF
여기서, m0은 PAT 패킷내의 Program association section의 바이트 길이이고, n0은 PAT 패킷내의 adaptation_field의 바이트 길이이다.
또한, PAT 패킷내에 adaptation_field가 없고(n=0), 또한 PAT 패킷에는 최소의 Program association section(16 바이트)이 저장되어 있는 경우에만 ATS1과 ATS2와의 사이의 간격이 최소이므로, 168/Rsys×SCF의 시간 간격이 최소가 된다.
27 MHz의 시스템 클록 주파수(SCF)를 이용하여 시간을 27 MHz의 정밀도로써 표시하면, ATS1과 ATS2와의 사이의 시간 간격 및 ATS2와 ATS3과의 사이의 최소 시간 간격은, 각각 4536과 5616이 된다.
이어서, 사용자 전용 패킷의 자체 인코딩 트랜스포트 스트림에의 저장 방법에 대하여 도 23∼26을 참조하여 설명한다.
도 23은, UP 패킷을 사용자 전용 스트림으로서 정의한 경우의 UP 패킷의 저장 방법을 나타낸다. 이 경우, UP 패킷에 대응하는 PMT의 stream_type에 "0x80" 이상이면서, "0xFF" 이하인 식별 번호가 할당된다. UP 패킷에는 고유한 PID가 할당된다. UP 패킷의 내부 데이터 구조는 MPEG 규격에 일치하지 않는다. 이 예에서는 UP 패킷은 DVD_attribute_section()이라고 하는 섹션 구조를 포함하는 것을 유념해야 한다.
또한, 도 24는, UP 패킷에 private_section 구조를 포함시키고, 고유한 PID를 부여하는 추가적인 저장 방법을 나타내고 있다. private_section의 데이터 구조는 private_section내의 section_syntax_indicator의 값에 따라서 약간 변화하지만, UP 패킷의 고유 데이터는 private_section의 private_data-byte에 저장된다. 이 경우, stream_type에는, 0x00의 식별 번호가 할당된다.
도 25는, UP 패킷을 PMT 패킷과 동일한 PID를 갖는 패킷으로서 저장하는 방법을 나타내고 있다. 이 경우, UP 패킷의 데이터 구조는 private_section 구조에 따른다. stream_type은 정의되어 있지 않고, UP 패킷에는 PMT 패킷의 PID가 부여되어 있다.
도 26은, UP 패킷을 별도로 저장하지 않고, PMT 패킷에 포함시키는 방법을 나타내고 있다. 이 경우에, UP 패킷에 해당하는 고유 데이터는 private_section 구조가 되고, TS_program_map_section 이후에 private_section이 기록된다. 즉, PMT 패킷은, TS_program_map_section과 private_section 모두를 포함하고 있다.
이어서, 상기 방법에 의해서 MPEG_TS에 저장되는 고유 데이터에 대하여 설명한다.
도 23∼도 26에 나타내는 바와 같이, 이러한 고유 데이터는, DVD Video Recording 규격의 RDI Unit의 실시간 데이터 정보 일반 정보(RDI_GI; Real-time Data Information General Information)와, 디스플레이 제어 정보 및 복사 제어 정 보(DCI_CCI; Display Control Information and copy Control Information)를 포함하고 있다.
RDI_GI에는, VOBU의 선두 재생 개시 시각(VOBU_S_PMT)과, 기록 일시 정보를 저장한다. DCI_CCI에는, 예로서, VOBU의 종횡비 정보, 서브타이틀 모드 정보, 필름 또는 카메라 모드 정보와 표시 제어에 관한 기타 정보, 복사 세대 관리 정보, APS 정보, 및 입력 소스 정보가 저장된다(RDI_GI와 DCI_CCI의 추가적인 정보에 대해서는 DVD Video Recording 규격을 참조할 것.).
V-ATR 필드에는, 비디오의 비트 전송 속도, 해상도, 프레임 속도(또는 NTSC/PAL등 video_format), 종횡비, 및 인코딩 방식(MPEG2_Video 또는 MPEG1_Video 식별자)이 저장된다.
마찬가지로, A_ATR 필드에는, 오디오 스트림의 개수에 따라서, 오디오의 전부 또는 일부에 대한 비트 전송 속도, 인코딩 방식, 채널 수, 양자화 비트수, 다이내믹 레인지 제어 정보가 저장된다.
CC 필드에는, VOBU에 대한 클로즈드 캡션 데이터가 저장된다.
PS 변환의 이식성(移植性; transferability)을 향상시키기 위해서, 클로즈드 캡션 데이터를 extension_and_user_data(1) 포맷(GOP층에 사용자 데이터를 저장하는 방법)으로 기록하거나, 또는 클로즈드 캡션 데이터를 별개로 기록할 수도 있다.
GOP층의 사용자 데이터에 클로즈드 캡션 데이터를 저장하는 것이 MPEG_PS 변환 효율을 높이는 것은 DVD Video 규격 및 DVD Video Recording 규격이 이러한 목적을 위해서 정의되어 있기 때문이다.
C_SE 필드에는 VOBU 또는 VOB의 TS2PS 변환에 관련되는 몇개의 문제점에 대한 정보가 저장되어 있다.
예로서, CC, WSS, 또는 텔레텍스트 데이터 저장 위치 정보는, 클로즈드 캡션 데이터가 UP 패킷에 포함되어 있는가, 클로즈드 캡션 데이터가 각각의 화상 헤더에 대한 사용자 데이터로서 기록되어 있는 것인가, 또는 특정 VOBU(또는 VOB)에 클로즈드 캡션 데이터가 없는가를 나타내는 정보이다.
WSS 저장 위치 정보는, 고유 데이터로서 UP 패킷에 저장되어 있는가, 각각의 화상 헤더의 사용자 데이터에 기록되어 있는가를 추가로 나타내는 정보이다.
텔레텍스트 저장 위치 정보는, 텔레텍스트 데이터를 저장하기 위한 TS 패킷이 구성되어 있는가, 또는 텔레텍스트 데이터가 각각의 화상 헤더의 사용자 데이터에 기록되어 있는가를 나타낸다.
다중화 블록 구조 및 전송 정보는, 도 27A∼27H에 나타내는 다중화 블록(하나의 기본 스트림만이, 다른 기본 스트림과 혼재되지 않고 저장되어 있는 데이터 블록)내의 TS 패킷의 개수가 고정수인가 가변수인가, 또한, 고정수이면 그 패킷의 개수를 나타내는 정보, PTS/DTS가 다중화 블록의 선두 TS 패킷에 부가되어 있는가를 나타내는 정보, 또는 동일 다중화 블록내에서의 전송 속도에 관한 정보를 포함하고 있다. 종래의 다중화에 아무런 조건을 부과하지 않는 MPEG_TS 인코딩시에는, 다중화 블록을 하나의 TS 패킷만을 포함하는 고정 길이로서 기록할 수도 있다.
디코더 버퍼 제어 정보는, 비디오 검증(verifying) 버퍼의 파라미터인 vbv_delay, 비디오 버퍼의 여유량을 나타내는 vbv_buffer_size 등의 정보(이 정보를 이용해서 비디오 데이터를 ATS의 입력 시각으로부터 어느 만큼 판독할 수 있는가를 판단할 수 있다), 및 이 VOBU의 프레임에서, 버퍼 입력 시각이 프레임의 디코딩 시각에 가장 가까운, VOBU 프레임의 디코딩 시각과 입력 완료 시각과의 시각 차(이 정보를 이용하여 비디오 또는 오디오 데이터를 ATS의 입력 시각으로부터 어느 만큼 후에 판독할 수 있는가를 판단할 수 있다)를 포함하고 있다.
DVD_Compatibility 정보는, MPEG_TS를 DVD 규격에 따른 MPEG_PS로의 시스템 트랜스코딩(transcoding)에 관련되는 오버헤드를 나타낸다.
즉, DVD_Compatibility 정보는, MPEG_TS를 기타의 DVD 포맷으로 변환하는 데에 얼마나 용이한가를 나타낸다. 예로서, 다중화 블록이 2 KB 이하인 경우 레벨 1의 인디케이터가 설정되고, 클로즈드 캡션, WSS 또는 텔레텍스트 데이터가 존재하는 경우에, 클로즈드 캡션 또는 WSS 데이터가 UP 패킷에 저장되고, 텔레텍스트 데이터가 비디오 데이터를 저장하는 다중화 블록내에 텔레텍스트 패킷으로서 저장되어 있으면 레벨 2의 인디케이터가 설정되고, 클로즈드 캡션, WSS, 또는 텔레텍스트 데이터가 DVD 규격에 의해서 지정된 영역에 저장되어 있을 때 버퍼 관리를 고려할 필요가 없는 경우 레벨 3의 인디케이터가 설정되고, 다중화 블록의 선두 TS 패킷의 ATS가 SCR로 대체되어 있을 때에, 버퍼 관리를 고려할 필요가 없는 경우 레벨 4의 인디케이터가 설정된다.
따라서, 이 DVD_Compatibility 정보는, DVD Video, DVD-Audio, DVD Video Recording, 및 DVD Stream 기록을 포함하는, 각종 DVD 포맷으로의 변환 용이성을 나타내는 정보의 집합이다.
도 27A∼27H는 다중화 블록을 이용한 MPEG_TS의 구조와, 이 MPEG_TS를 DVD Video 포맷, 및 DVD Video Recording 포맷으로 변환했을 경우의 데이터 구조를 나타낸다.
도 27A에 나타내는 자체 인코딩 TS 스트림은 도 27B에 나타내는 자체 인코딩 TS 스트림의 VOBU(재생 및 디코딩 단위)로 구성되어 있다. 도 27C에 나타내는 바와 같이, 하나의 VOBU는 복수의 다중화 블록(MPEG_PS 팩에 해당하는)을 포함한다. 각각의 다중화 블록은 도 27D에 나타내는 바와 같이, 고정 길이의 데이터 단위로 분할되거나(이것에 의해 기기에의 실장을 용이하게 할 수 있다), 또는, 도 27E에 나타내는 바와 같이, 가변 길이의 데이터 단위로 분할될 수 있다(이에 따라서, 디스크의 공간을 적게 소비한다). 도 27D 및 27E의 경우, 다중화 블록은 PSI/SI 패킷 또는 UP 패킷 등의 비기본 스트림과, 기본 스트림을 분리하여 각각 구성되어 있지만, 도 27F에 나타내는 바와 같이, 다중화 블록에는, 기본 스트림과 함께, PSI/SI 패킷 또는 UP 패킷 등의 비기본 스트림을 모두 저장할 수도 있다. 도 27F에서, 다중화 블록 #1과 다중화 블록 #2는 하나의 다중화 블록인 것을 유념해야 한다.
상기 스트림은, 도 27G에 나타내는 DVD Video 포맷, 또는 도 27H에 나타내는 DVD Video Recording 포맷으로 용이하게 변환될 수 있다.
이 경우, TS2PS 변환을 간단하게 하기 위해서는 다중화 블록의 순서대로 MPEG_PS 팩이 형성되고, 하나의 다중화 블록은 1 팩의 데이터를 저장하는 단위인 것이 중요하다.
도 27A∼27H에 있어서, 캡슐 헤더 및 ATS는 본 발명과의 관련성이 낮으므로, 생략되어 있는 것을 염두에 두어야 한다. 또한, 도 27G 및 27H에 나타낸 변환후의 MPEG_PS의 팩은 저장된 기본 스트림의 바이트 길이 및 VOBU 배열에 따라서 적절하게 스터핑(stuffing)되거나 패딩(padding)된다.
도 28A∼28G는, 도 8에 나타낸 종래의 스트림 다중화 방법과 비교하여, 본 발명의 다중화를 설명하는 도면이다. 이 도면에 나타내는 바와 같이, 최종적인 포맷은 도 28G에 나타낸 MPEG_TS 포맷과 동일하다. 비디오 스트림(도 28A)은 복수의 GOP로 구성되어 있다(도 28A). 각각의 GOP는 소정의 화상 데이터를 포함하고, MPEG_PS로 변환했을 때의 1 팩의 데이터 크기에 상당하는 데이터 크기의 TS 패킷 군이 하나의 다중화 블록이다(도 28C 참조). 즉, 하나의 다중화 블록은 도 28D에 나타내는 바와 같이 1 팩의 데이터 크기에 상당하는 복수의 TS 패킷으로 분할된다. 마찬가지로, 오디오 스트림도 복수의 TS 패킷을 포함하는 하나의 다중화 블록이 된다. 그리고 도 28E에 나타내는 바와 같이, VOBU는 다중화 블록 단위로 다중화함으로써 구성된다. 본 발명과, 도 8에 나타낸 종래예의 사이의 큰 차이점은, 하나의 MPEG_PS 팩의 데이터 크기에 상당하는 크기를 갖는 데이터 단위를 그룹화하여 다중화 블록을 구성하는 것이다(도 28E 참조).
또한, 각각의 MPEG_TS 패킷에 ATS를 부가함에 있어서, 도 29에 나타내는 바와 같이, 동일한 다중화 블록내에 있어서는, 각각의 패킷에 소정량(△ATS) 만큼 증가시키면서 ATS를 부가할 수도 있다. 이것은, TS2PS 변환시에 복잡한 버퍼 관리를 실행하지 않고, 단순한 오프셋 또는 오프셋 처리 없이 ATS로부터 SCR로 대체하는 데에 효과적이다. 이 경우, ATSi(i=0, 1, 2 ‥)는 이하의 식을 만족시킨다.
ATSi+(다중화 블록내의 패킷 수)×△ATS≤ATSi+1
다중화 블록이 고정 길이인 경우, 하나의 다중화 블록에 포함되는 TS 패킷의 수는 일정하므로, 다중화 블록의 경계를 용이하게 알 수 있다. 그러나, 다중화 블록이 가변 길이인 경우, 하나의 다중화 블록에 포함되는 TS 패킷의 수도 가변적이므로, 다중화 블록의 경계를 용이하게 알 수 없다. 따라서, 다중화 블록의 경계에 있어서의 ATS의 증가분(△ATS)을, 다중화 블록내에서의 (일정한) 증가분과는 상이한 소정의 값에 설정한다. 즉, 선행하는 다중화 블록내의 최종 패킷의 ATS와, 그 직후의 다중화 블록의 최초의 패킷의 ATS와의 차분(△ATS)을, 일정치가 아닌 소정의 값에 설정한다. 이로 인하여, △ATS를 감시함으로써, 다중화 블록의 경계를 알 수 있다. 따라서, MPEG_PS로 변환할 때의 팩과 TS 패킷과의 1:1 상관 관계를 보장할 수 있다. 이 때, ATSi는 이하의 식의 관계를 만족시킨다.
ATSi+(다중화 블록내의 패킷 수)×△ATS<ATSi+1
또한, MPEG_TS 다중화 블록의 선두 패킷에 부가된 ATSi는, 변환후의 MPEG_PS의 각각의 팩에 부가된 SCRi에 대응한다.
또한, 도 29에 나타내는 바와 같이, UP 패킷내에 클로즈드 캡션, DSI, 또는 기타 텍스트 정보를 저장할 수도 있다. UP 패킷내의 DSI는 변환후의 NV_PCK 데이터의 생성에 사용되고, 클로즈드 캡션 데이터는 비디오 팩에 저장된다. 유럽에서 사용되는 PAL 규격과의 호환성을 가능하게 하기 위하여, 도 30에 나타내는 바와 같이 다중화 블록내에 텔레텍스트 데이터를 저장하는 패킷을, 비디오 데이터 패킷 사이에 삽입할 수도 있다. 이 경우, 텔레텍스트 데이터 패킷은, 동일한 PTS를 갖는, 동시에 표시되는 화상의 직전에 배치된다. 변환후에, 텔레텍스트 데이터는 비디오 팩에 저장된다.
도 31은 상기한 바와 같이 DSI를 저장하는 UP 패킷의 데이터 구조를 나타낸다.
또한, 효율적인 특수 재생 모드를 가능하게 하기 위하여, UP 패킷의 부가 정보에, VOBU 선두의 I-화상의 최종 바이트를 저장한 TS 패킷을 식별하는 정보(VOBU 선두로부터의 상대적인 번호 등)를 기술할 수도 있다. 또한, VOBU내의 몇 개의 I-화상 또는 P-화상과, 또는 모든 화상의 화상 인코딩 타입 정보와, 각각의 화상의 데이터 크기(최종 바이트를 포함하는 TS 패킷을 식별하는 정보 등)와, 각각의 화상의 DTS/PTS를 나타내는 정보를 또한 기술함으로써, 특수 재생 모드를 지원할 수 있다.
본 실시예에 있어서, PTS/DTS를 포함하는 TS 패킷이 다중화 블록의 선두에 위치되도록 인코딩하면, TS2PS 변환후의 팩의 선두에 액세스 유닛의 선두가 배치되어서, DVD 고유의 헤더 처리의 간단화를 예상할 수 있는 것을 염두에 두어야 한다.
한편, MPEG_PS 팩에 저장되는 데이터의 오버플로(overflow)를 방지하고 또한, MPEG_PS로의 변환을 용이하게 하기 위하여, 다중화 블록의 TS 패킷에는 적절하게 스터핑하거나 또는, 다중화 블록의 최종 TS 패킷 다음에 필요한 개수의 스터핑 바이트를 삽입할 수도 있다.
본 실시예에서는 주로 DVD에 기록하는 것에 대하여 설명했지만, 본 발명은 명백하게 이것에 한정되는 것은 아니다. 더욱 상세하게는, 자체 인코딩 트랜스포트 스트림을 하드디스크, 반도체 메모리, 또는 기타 정보기록매체에 기록한 후, 동일한 매체 또는 상이한 매체에 MPEG 프로그램 스트림으로 변환된 스트림을 기록할 수도 있다.
또한, 본 실시예에서는 PAT, PMT, 및 UP 패킷을 각각의 VOBU의 선두에 기록하는 것으로 설명했지만, 적어도 VOB의 선두, 또는 재생 관리 단위인 셀의 선두에 기록할 수도 있다.
또한, 본 실시예에서는 PAT, PMT, 및 UP 패킷을 기록하는 것으로 했지만, UP 패킷을 생략할 수도 있다.
또한, 본 실시예에서는, PAT, PMT, 및 UP 패킷을 선두에 고정 배치하는 것으로 설명했지만, 본 발명은 이것에 한정되는 것이 아니고, 널(Null) 패킷을 저장한 패킷을 그 사이에 삽입하여 기록할 수도 있다.
또한, 본 실시예에서는, 자체 인코딩된 스트림은 PAT 패킷으로부터 개시되는 것으로 설명했지만, 본 발명은 이것에 한정되는 것이 아니고, 스트림이 널 패킷으로부터 개시될 수도 있다.
또한, 널 패킷을 자체 인코딩된 스트림에 적절하게 삽입함으로써, 시스템 전송 속도를 고정 속도로 설정할 수도 있다.
또한, 도 7에 나타내는 바와 같이, 제조업자 고유의 정보를 저장하는 데이터 영역을 형성하고, 이 데이터 영역에 MPEG_TS 시스템 인코딩 조건을 기록할 수도 있는 것을 염두에 두어야 한다.
또한, 상기 실시예에서 UP 패킷에 기록한 정보의 전부 또는 일부를, 도 15에 나타낸 TS1_VOB 정보에 기록할 수도 있는 것을 염두에 두어야 한다.
또한, DVD Video 포맷에는 듀얼 모노(dual mono) 오디오가 허용되지 않는 것을 유념해야 한다. 그러나, 듀얼 모노 오디오 채널을 좌우의 모노럴(monaural) 오디오 채널로서 기록되는 2개의 별개 오디오 스트림으로 분리함으로써, 듀얼 모노 오디오 채널로 기록된 자체 인코딩 트랜스포트 스트림을 DVD Video 포맷으로 변환할 수 있다.
또한, 상기 실시예에서 UP 패킷에 기록된 파라미터의 일부 또는 전부를 관리 정보내에 기록할 수도 있다. 이와 같이, 자체 인코딩 트랜스포트 스트림내에서 변화되지 않는 파라미터를 여러 번 기록하는 것을 회피함으로써, 기록 영역이 낭비되지 않고, 디코더는 UP 패킷을 검출할 때마다 파라미터의 변화 여부를 판단하는 처리 시간을 낭비할 필요가 없다.
제2실시예
(인코더의 구성)
이어서, 본 발명의 또 다른 실시예에 대하여 설명한다. 우선, 본 발명에 의한 정보기록장치의 인코더에 대하여, AV 입력을 수신하여 MPEG 트랜스포트 스트림으로 자체 인코딩하는 인코딩 처리에 초점을 맞추어 설명한다.
도 33은, 본 발명에 의한 정보기록장치의 인코더의 구성을 나타낸다. 이 도면에 나타내는 바와 같이 인코더(214)는, 기본 스트림 인코더(230a, 230b 및 230c)와, 시스템 인코더(232)를 포함한다. 인코더(214)는 시스템 제어부(212)로부터 제어 신호를 수신하여, 기본 스트림 인코더(230a, 230b 및 230c) 또는 시스템 인코더(232)로써, 기본 인코딩과 시스템 인코딩을 절환하면서 인코딩 처리를 실행한다. 각각의 기본 스트림 인코더(230a, 230b 및 230c)는 비디오, 오디오, 및 VBI(Vertical Blanking Interval) 신호를 수신하여 인코딩을 실행한다.
비디오 인코더(230a)는, 시스템 제어부(212)로부터 제어 신호를 수신하여, 이에 따라서, 비디오 스트림의 비트 전송 속도, 해상도, 종횡비 및 기타 속성을 소정의 범위내에서 인코딩한다. 더욱 상세하게는, 비디오 인코더(230a)는 시스템 제어부(212)로부터, "DVD Video 호환 모드", "DVD Video Recording 호환 모드" 또는 "통상 모드"로서 동작 모드를 지정하는 제어 신호를 수신한다. 제어 신호에 의해서 지정된 모드가 DVD Video 호환 모드이면, 비디오 인코더(230a)는 DVD Video 규격의 비디오 속성에 따른 비디오 스트림을 생성하고, DVD Video Recording 호환 모드이면, DVD Video Recording(이하 "DVD VR"이라고 한다) 규격의 비디오 속성에 따른 비디오 스트림을 생성하고, 통상 모드이면, 특정의 속성 범위에 따른 비디오 스트림을 생성한다.
오디오 인코더(230b)도 마찬가지로, 시스템 제어부(212)로부터 제어 신호를 수신하여, 이에 따라서, 오디오 스트림의 비트 전송 속도, 양자화 속도, 채널 수, 및 기타 속성을 소정의 범위내에서 인코딩한다. 상세하게는, 비디오 인코더(230a)와 마찬가지로, 오디오 인코더(230b)는 시스템 제어부(212)로부터 동작 모드를 지정하는 제어 신호를 수신한다. 제어 신호에 의해서 지정된 모드가 DVD Video 호환 모드이면, 오디오 인코더(230b)는 DVD Video 규격의 오디오 속성에 따른 오디오 스트림을 생성하고, DVD VR 호환 모드이면, DVD Video Recording(이하, "DVD VR") 규격의 오디오 속성에 따른 오디오 스트림을 생성하고, 통상 모드이면, 특정의 속성 범위에 따른 오디오 스트림을 생성한다.
VBI 데이터 인코더(230c)도 마찬가지로, 시스템 제어부(212)로부터 동작 모드를 지정하는 제어 신호를 수신하여, 이것에 따라서, VBI 데이터를 인코딩한다. 상세하게는, 시스템 제어부(212)로부터 VBI 데이터 인코더(230c)에 입력되는 기본 스트림 인코딩 제어 신호가, DVD Video 호환 모드 또는 DVD VR 호환 모드를 나타내면, VBI 데이터 인코더(230c)는, 각각의 규격에 의해서 규정된 VBI 데이터의 저장 방법에 따라서 VBI 데이터를 추가로 인코딩한다. VBI 데이터 저장 방법은 원래의 통상 모드에서도 별도로 결정되어 있는 경우가 있고, 이 경우에, "추가로 인코딩한다는 것"은 VBI 데이터가 기본 스트림에 중복해서 저장되는 것을 의미한다.
이어서, 인코딩된 기본 스트림은 시스템 인코더(232)에 의해서 MPEG_TS 시스템 스트림으로 다중화된다.
기본 스트림 인코더(230a, 230b 및 230c)와 마찬가지로, 시스템 인코더(232)도 시스템 제어부(212)로부터 인코딩 제어 신호를 수신하여, 이 수신 신호에 따라서 인코딩을 실행한다.
시스템 제어부(212)로부터 시스템 인코더(232)에의 제어 신호는, 통상의 MPEG_TS를 인코딩하기 위한 시스템 인코딩 제어 신호, 또는 통상의 MPEG_TS에 제한 조건을 부여하여 MPEG_PS(특히 고유의 DVD 포맷)로의 변환을 용이하게 하는 시스템 인코딩 제어 신호(DVD-Video 모드 또는 DVD-Video Recording 모드) 중 어느 하나이다.
제어 신호가 통상의 MPEG_TS 인코딩 제어 신호인 경우, 시스템 인코더(232)는, 기본 스트림 인코더(230a, 230b 및 230c)로부터 입력된 기본 스트림을, MPEG_TS 시스템 스트림의 기준이 되는 디코더 모델(T_STD)에 의해서 변조(變造)되지 않도록 버퍼를 관리하면서, 시스템 인코딩을 실행한다.
시스템 제어부(212)로부터의 제어 신호가, MPEG_PS로의 변환을 용이하게 하는 MPEG_TS에의 시스템 인코딩을 지정하는 제어 신호인 경우에는, 추가적인 특수한 시스템 인코딩 규칙에 따라서 인코딩을 실행한다.
이어서, 인코더(214)는 이와 같이 생성된 자체 인코딩 MPEG_TS 시스템 스트림을 출력한다.
따라서, 본 발명에 의한 정보기록장치는, 기본 스트림 및 시스템 스트림의 인코딩 레벨에서 인코딩 모드를 절환하는 것을 특징으로 한다. 인코딩 모드가 상기와 같이 절환될 때, 각각의 인코딩 모드에 대하여 특정 DVD 포맷으로 변환하는 데에 사용되는 처리를 도 34의 테이블에 나타낸다.
이와 같이, 기본 스트림 인코더(230a, 230b 및 230c) 및 시스템 인코더(232)에 MPEG_PS로의 변환을 전제로 하여 각각의 스트림의 인코딩을 실행하게 함으로써, MPEG_PS로의 변환을 용이하게 할 수 있는 MPEG_TS가 생성된다.
(자체 인코딩된 MPEG_TS)
이어서, 본 발명에 의한 정보기록장치에 의해서 자체 인코딩된 MPEG_TS의 포맷의 상세한 실시예를 이하에 설명한다. 또한, 통상의 MPEG_TS(이하 "SESF"라고 한다)와, MPEG_PS로의 변환을 용이하게 할 수 있는 MPEG_TS(이하 "Constrained(제한 된) SESF"라고 한다)와의 사이의 차이점을 설명한다.
이하의 예에서는, MPEG_TS 스트림 단위로 속성 정보 등을 저장하는 VOBI에, 스트림의 인코딩 조건을 나타내는 정보를 저장한다. 이와 같이 스트림이 아닌, 관리 정보에 인코딩 조건에 관한 정보를 저장함으로써, 스트림을 해석하지 않고 그 스트림이 DVD Video 또는 DVD VR 포맷으로 용이하게 변환될 수 있는가를 신속하게 판단할 수 있다. 스트림의 인코딩 조건을 나타내는 이 정보는 이하에 추가로 설명하는 Tip 패킷에 저장될 수도 있는 것을 염두에 두어야 한다.
스트림의 인코딩 조건을 나타내는 정보를 2 비트의 "encode_condition" 플래그로써 나타낸다. 이 플래그의 값을 이하에 설명한다.
00b: 통상의 MPEG_TS (SESF)
01b: DVD VR 스트림 포맷으로 용이하게 변환할 수 있는 MPEG_TS(Constrained SESF)
10b: 예비
11b: DVD Video 스트림 포맷으로 용이하게 변환할 수 있는 MPEG_TS (Constrained SESF)
스트림 관리 정보내에, encode_condition 플래그가 00b에 설정되어 있으면, 스트림이 원래 MPEG_PS로의 고속 변환을 고려하지 않고 인코딩되어 있는 경우와, 일련의 MPEG 프로그램 스트림이 사용자의 편집에 의해서, 각각의 MPEG 프로그램 스트림으로의 변환이 용이하도록 연결되어 있는 경우의 두 가지 경우가 있을 수 있다.
encode_condition 플래그가 스트림내에도 또한 설정되어 있는 경우, 통상의 MPEG_TS를 나타내는 encode_condition=00b를 스트림내에 설정하는 것은 의미가 없다. 따라서, 스트림내에서는(이후에 설명하는 Tip 패킷내에서는), 사용되지 않도록 encode_condition=00b를 예비로 하여 설정함으로써, encode_condition 플래그를 스트림의 내부 및 외부에서 상이하게 사용할 수도 있다.
이와 같이 플래그를 설정함으로써, VOBI의 encode_condition 필드의 값으로부터, 그 스트림이 DVD Video 또는 DVD VR 포맷으로 용이하게 변환될 수 있는가를 판단할 수 있다. 여기서 사용하는 "용이하게 변환된다는 것"은 이하에 추가로 설명하는 변환 방법으로써 변환 가능한 것을 의미한다.
(Constrained SESF의 스트림 구조)
도 80은 Constrained SESF의 전체적인 스트림 구조를 나타낸다. Constrained SESF는 복수의 SESF 캡슐로 구성되어 있다. SESF 캡슐은 소정의 다중화 단위를 포함하고, 또한 선두에 Tip 패킷(상세한 것은 이하에 설명)을 구비하고 있다. 각각의 SESF 캡슐의 재생 시각 표시(PTS)와, Tip 패킷의 어드레스는 액세스 맵(80c)에서 상호 연관되어 있다. 이하에서 설명하는 바와 같이, TS2PS 변환의 경우, 변환 처리는 SESF 캡슐 단위로 실행된다.
도 32는 하나의 SESF 캡슐내의 패킷과 MPEG_PS의 팩과의 상관 관계를 나타낸다. 도 32에 나타내는 바와 같이, Constrained SESF에 스트림의 고유 정보를 저장하는 TS 패킷(이하, Tip 패킷)이 삽입되어 있다. 이하에, Constrained SESF내에 매입된 Tip 패킷을 도 35 내지 도 41을 참조하여 설명한다.
〈Tip 패킷〉
도 35는 Tip 패킷의 전체 구조를 나타낸다. 도 35에 나타내는 바와 같이, Tip 패킷에는, 그 패킷이 Tip 패킷인 것을 식별하는 Data_ID와, DVD VR의 DCI_CCI 필드에 대응하고, 표시 제어 및 복사 제어 정보를 포함하는 display_and_copy_info와, 스트림의 인코딩 정보를 저장하는 encode_info와, 제조자 고유의 부가 정보를 저장하는 MakersPrivateData를 저장한다.
도 35 및 36에 나타내는 바와 같이, Tip 패킷의 적응 필드에는 이하에 설명하는 SCR 연산에 필요한 PCR 값이 기록되어 있다. 이 적응 필드의 길이는 고정 바이트 길이이고, 이에 따라서 고정 어드레스를 이용하여 Tip 패킷내의 정보에의 액세스가 가능하다.
도 37에 Data_ID의 구조가 나와 있다. Data_ID는, 그 패킷이 Tip 패킷인 것을 식별하는 Data_Identifier를 구비하고 있다. Data_Identifier는, 아스키(ASCII; American Standard Code for Information Interchange) 코드에서 "TIP”을 나타내는 "0x544950"의 값을 갖는 3 바이트의 필드이다. 재생장치의 디코더는 이 필드의 값을 판독하여, Tip 패킷인 것을 식별한다.
도 38에 display_and_copy_info의 구조가 나와 있다. display_and_copy_info에, DVD VR 규격의 RDI Unit의 DCI_CCI 필드와 동일한 구조 및 정보를 구비함으로써, Constrained SESF를 DVD VR 포맷으로 변환할 때 RDI 팩의 생성이 간단하게 된다(DVD VR 규격의 DCI_CCI 필드는, "DVD Specifications for Rewritable/Re-recordable Disc, Part 3, VIDEO RECORDING" 및 일본국 특허 제3162044호에 상세하 게 설명되어 있다. 이들 문헌에서는, 일부 필드 명칭이 상이하지만, 필드의 정의는 동일하므로 DVD VR 포맷으로의 변환시에 직접적인 복사가 가능하다.).
도 39에 encode_info 필드의 구조가 도시되어 있다. Video_resolution 필드에는 Tip 패킷에 후속하는 비디오 스트림의 해상도 정보가 기록된다. encode_info의 값을 이하에 나타낸다.
0000b: 720×480(NTSC), 720×576(PAL)
0001b: 704×480(NTSC), 704×576(PAL)
0010b: 352×480(NTSC), 352×576(PAL)
0011b: 352×240(NTSC), 352×288(PAL)
0100b: 544×480(NTSC), 544×576(PAL)
0101b: 480×480(NTSC), 480×576(PAL)
Others: 예비
DVD VR 포맷에서는 단일 연속 기록중에 해상도가 변화할 수도 있다. 그러나, 해상도가 상이한 스트림은 별개의 VOB로서 관리되고, 이로 인하여 특정 기록장치에 의한 재생시에 심리스(seamless; 연속하는) 연결이 보증된다. 따라서, Constrained SESF의 기록중에 해상도가 변화하는 경우, DVD VR 포맷으로의 변환시에, 어느 위치에서 VOB를 분할할 필요가 있는가를 판단하는 데에, 이 필드가 사용된다.
DVD Video 포맷으로의 변환을 고려하여 기록된 Constrained SESF(encode_condition=11b)에 있어서, 단일 스트림내에서는 해상도가 변화하지 않는다.
encode_condition 필드는, (00b인 경우를 제외하고) VOBI에 저장된 값과 동일하다. encode_condition 필드를 스트림 관리 정보뿐만 아니라, 스트림내에도 매입하여 저장하는 이유는, 예로서, IEEE 1394 등 디지털 인터페이스를 통해서 스트림을 복사할 때, 기록장치가 Tip 패킷내의 encode_condition 필드를 참조함으로써, DVD 포맷으로 변환할 수 있는가를 용이하게 판단할 수 있게 하기 위한 것이다.
FVFPST 필드에는, DVD VR 규격의 VOBU_S_PTM이 기록되어 있다. 이것은, Constrained SESF를 DVD Video 또는 DVD VR 포맷으로 변환할 때, Tip 패킷에 이어서 인코딩되어 있는 비디오 스트림을 해석하는 처리와, 최초로 출현하는 비디오 필드의 재생 시각을 산출하는 처리를 배제하기 위한 것이다.
FVFPST 필드는, 비디오 필드의 재생 시각을 90 KHz 정밀도로 나타낸 32 비트의 필드와, 27 MHz 정밀도로 나타낸 16 비트의 필드를 포함한다.
도 40에, PES_info의 구조를 나타낸다. PES_info는 기본 스트림을 해석하지 않고, Constrained SESF를 DVD Video 포맷으로 변환하는 데에 필요하다. 이 정보는, DVD Video 스트림에 삽입되어서, NV_PCK라고 하는 팩에 저장되는 정보를 생성하는 데에 필요하고, 상기 NV_PCK는 특수 재생 모드를 지원하는 팩이다.
PES_info에는 비디오 데이터 또는 오디오 데이터를 각각 저장하는 136개의 PES 패킷의 정보를 저장할 수 있다. 각각의 PES 패킷에 대하여, 4 비트가 할당되어서, PES 패킷의 내용을 해석하지 않고 NV_PCK 정보를 생성할 수 있다. 비디오 또는 오디오 데이터가 저장되지 않은 PES 패킷은 무시된다.
하나의 Tip 패킷으로부터, 다음 Tip 패킷의 바로 전의 패킷까지의 데이터 단 위인 SESF 캡슐에 있어서, PES_existence_flag는 j번째의 PES 패킷이 그 SESF 캡슐내에 존재하는가를 나타낸다. PES_existence_flag의 값은 이하와 같이 설정된다.
0b: j번째의 PES 패킷이 해당 SESF 캡슐내에 존재하지 않는다.
1b: j번째의 PES 패킷이 해당 SESF 캡슐내에 존재한다.
PES_existence_flag=0b인 경우(PES 패킷이 존재하지 않는 경우), 그 PES 패킷의 모든 나머지 필드는 0b에 설정된다.
PES_payload_identifier는, 그 PES 패킷에 저장된 데이터가 비디오 데이터인가 또는 오디오 데이터인가를 식별하는 정보이다. PES_payload_identifier의 값은 이하와 같이 설정된다.
0b: 비디오 스트림
1b: 오디오 스트림
PES_existence_flag와 PES_payload_identifier 필드는 모든 관계되는 PES 패킷에 대하여 설정된다.
PES_payload_identifier로부터 비디오 데이터가 저장되어 있는가 또는 오디오 데이터가 저장되어 있는가 판명되었을 때, PES 패킷에 저장된 스트림의 종류에 따라서, 나머지 필드의 정의가 상이하게 된다.
PES 패킷에 비디오 스트림이 저장된 경우에(PES_payload_identifier=0b), PES_payload_identifier 필드에 이어서, 그 PES 패킷에 저장된 화상의 타입을 나타내는 picture_coding_type이 정의된다.
picture_coding_type 필드의 값은 이하와 같이 설정된다.
00b: 01b 또는 10b 이외의 인코딩 방식으로 인코딩된 화상
01b: 프레임 인코딩된 I-화상, 또는 필드 인코딩된 I-화상의 쌍, 또는 필드 인코딩된 I-화상과 필드 인코딩된 P-화상의 쌍
10b: 프레임 인코딩된 P-화상의 쌍 또는 필드 인코딩된 P-화상의 쌍
11b: 예비
환언하면, 01b 또는 10b의 화상은 DVD Video 규격에 의해서 정의되는 참조 화상으로서 이용되는 화상이다. 상기의 설명은 비디오를 저장하는 PES 패킷에 부가되는 정보에 관한 것이다.
PES 패킷에 오디오 스트림이 저장된 경우에(PES_payload_identifier=1b), PES_payload_identifier에 이어서, stream_identifier와 sync_presentation_flag가 후속한다. stream_identifier는 그 PES 패킷내의 오디오 스트림이 제1오디오 스트림인가 또는 제2오디오 스트림인가를 식별한다. sync_presentation_flag는 각각의 Tip 패킷에 기록된 FVFPST(가장 최초에 표시되는 비디오 필드의 재생 개시 시각) 필드와 동시에 또는 그 직후에 재생이 개시되는 오디오 프레임이 존재하는가를 식별하는 플래그이다.
stream_identifier의 값은 이하와 같이 설정된다.
0b: 제1오디오 스트림
1b: 제2오디오 스트림
제1오디오 스트림 및 제2오디오 스트림은 PID 설정 규칙, 및 PMT에서의 기본 스트림 선언의 순서로써 판단할 수 있다.
sync_presentation_flag의 값은, 이하와 같이 설정된다.
0b: FVFPST와 동시에 또는 그 직후에 재생이 개시되는 오디오 프레임이 그 오디오 PES 패킷내에 저장되어 있지 않다.
1b: FVFPST와 동시에 또는 그 직후에 재생이 개시되는 오디오 프레임이 그 오디오 PES 패킷내에 저장되어 있다.
이상과 같이, 오디오를 저장한 PES 패킷에 대한 부가 정보를 설명하였다.
PES_info 필드에는, 이와 같이 Tip 패킷에 후속하는 각각의 PES 패킷에 대한 정보를 추출하여 저장한다.
도 41은 MakersPrivateData를 나타낸다. 도면에 나타내는 바와 같이, MakersPrivateData는 Constrained SESF의 제작자를 식별하는 maker_ID 필드와, 그 제작자가 기술한 고유의 부가 정보를 포함하는 maker_private_data 필드를 구비하고 있다.
도 42A∼42B는 Tip 패킷의 PID 값과, 스트림의 종류를 나타내는 stream_type 값의 예를 나타낸다. 기타의 PID 및 Stream_type 값은 MPEG 규격 및 기타 규격에 의해서 예약되어 있고, 이 예약된 값과 간섭을 일으키지 않고 MPEG 규격 범위외의 전용 데이터를 표시하도록 상기 값들을 선택하였다.
이와 같이, Constrained SESF에 저장되는 Tip 패킷에는, 각종 스트림의 속성 정보가 추출되어 저장된다. 이상 설명한 필드가, 상이한 DVD 포맷으로 변환시에 어떻게 사용되는가를 이하에서 더욱 상세하게 설명한다.
(시스템 인코딩 조건)
이어서, Constrained SESF의 시스템 인코딩 조건에 대하여 이하에 상세하게 설명한다. 이하의 시스템 인코딩 조건은 통상의 SESF에는 적용되지 않는 것을 유념해야 한다.
〈다중화 단위(Multiplexing Unit)〉
Constrained SESF내의 기본 스트림을 저장하는 TS 패킷은, DVD 포맷에 의한 2 KB의 팩에 저장되는 데이터 단위인 다중화 단위로 구성되어 있다. 이 다중화 단위는 제1실시예의 다중화 블록에 대응하는 것을 염두에 두어야 한다.
각각의 다중화 단위에는, 1 종류의 기본 스트림을 저장하는 TS 패킷만이 저장되고, 이러한 TS 패킷은 다른 종류의 기본 스트림을 저장하는 TS 패킷과 혼재(混在)되어 있지 않다. TS 패킷과 널 패킷과의 혼재는, 하나의 다중화 단위를 생성하는 데에 하나 이상의 널 패킷을 포함할 필요가 있을 수 있으므로(예로서, 스트림의 최종 부분을 저장하는 다중화 단위 등), 금지되어 있지 않다. 이것은 다중화 단위와 팩과의 관계를 명확히 하는 데에 필요하다.
하나의 다중화 단위는 11개의 연속하는 TS 패킷을 포함하고, 각각의 다중화 단위내의 기본 스트림(페이로드 데이터)은 하나의 대응하는 팩에 완전히 저장된다. 이것도 마찬가지로 팩과의 관련성을 제한하고 있다.
비디오 스트림을 저장하는 PES 패킷이 복수의 다중화 단위로 분할 배치되는 경우, PES 패킷의 최종 바이트를 포함하는 다중화 단위 이외의 모든 다중화 단위에는 184×11=2024 B의 TS 패킷 페이로드 데이터를 저장한다. 이로 인하여, 스트림 전송이 가장 효율적으로 완료되고, TS2PS 변환시에 TS 패킷 단위의 순차적인 처리가 용이하게 실행된다. 만일 최종 다중화 단위 이외의 다중화 단위의 데이터 크기가 2024 B 이하이면, TS2PS 변환시에 다중화 단위의 선두 TS 패킷을 변환할 때에 MPEG_PS의 각각의 팩의 패킷 헤더에 저장된 PES_packet_length 필드의 값을 용이하게 결정할 수 없게 된다.
다중화 단위 내의 최초의 완전한 오디오 프레임 데이터는 PES 패킷의 페이로드의 선두에 배치된 오디오 프레임이 되어야 한다.
이것은, 오디오 스트림을 저장하는 PES 패킷을 복수의 다중화 단위에 저장하는 것을 생각하면 이해하기 쉽다. 만일 하나의 오디오 PES 패킷이 복수의 다중화 단위로 분할 배치되면, 두 번째 및 그 이후의 다중화 단위를 MPEG_PS 팩으로 변환할 때에, 패킷 헤더를 생성하기 위하여, PTS를 식별하고, 또한 하나의 팩에 저장된 오디오 프레임의 개수를 판단할 필요가 있다. 그러므로, 오디오 스트림의 내부 구조를 해석할 필요가 있어서 변환 처리가 복잡하게 되는 것을 피하게 된다.
이상과 같이 다중화 단위가 정의되었다. Constrained SESF를 생성하기 위한 인코딩은 상기 다중화 단위의 제한내에서의 시스템 인코딩을 필요로 한다.
(Constrained SESF내의 PES 패킷 헤더의 제한)
이어서, Constrained SESF내의 PES 패킷 헤더의 필드 값에 대한, 몇개의 제한 조건을 설명한다.
도 43에 나타내는 바와 같이, 어떠한 PES 패킷 헤더 필드는 고정치만을 갖는다. 이것은 상이한 DVD 포맷으로 변환할 때에 불필요한 처리의 실행을 방지하기 위한 것이다. "불필요한 처리"라는 것은, DVD 포맷에서 정의된 값과 상이한 값에 의 해서 부가적으로 생성되거나 제거되는 필드의 처리를 의미한다. 환언하면, 이러한 PES 패킷 헤더의 제한의 목적은, TS2PS 변환시에 헤더에 추가되는 필드 또는 헤더로부터 제거되는 필드를 최소화하는 것이다.
비디오 스트림이 MPEG_TS에 저장되어 있는 경우, PES_packet_legnth 필드에 대하여 0의 값이 허용된다.
PTS_DTS_flags 필드는, PTS가 포함되어 있는가, 또는 DTS가 포함되어 있는가를 나타낸다.
PES 패킷에 오디오 스트림이 저장된 경우, 적어도 하나 이상의 오디오 프레임이 PES 패킷내에서 개시되고, PTS_DTS_flags는 10b(DTS가 기록되어 있는 경우에는 11b)에 설정된다.
PES_extension_flag와 PES_header_data_length에는, TS2PS 변환시에 TS 패킷 단위의 순차적인 처리를 실행하기 위한 제한이 부여된다. 이것을 도 44에 나타내었다.
도 44에 나타내는 바와 같이, 기본 스트림의 종류, PES 패킷의 위치, 및 encode_condition의 값에 따라서, 소정의 값이 정의된다.
도 44에서의 VPD는 PES 패킷의 PTS 필드와 DTS 필드를 더한 바이트 길이인 것을 염두에 두어야 한다. 즉,
PTS_DTS_flags=00b이면, VPD=0,
PTS_DTS_flags=10b이면, VPD=5,
PTS_DTS_flags=11b이면, VPD=10이다.
상기한 바와 같이, 이러한 제한은, DVD Video 또는 DVD VR 포맷으로 변환할 때, 1 팩의 페이로드 길이를 결정한 후에 팩을 형성하지 않고, TS 패킷 단위마다 순차적인 처리를 간단하게 하기 위해서 필요하다.
이상과 같이, PES 패킷 헤더를 정의하였다. Constrained SESF를 생성하는 인코더는, 상기 제한내에서 시스템 스트림을 인코딩한다.
(Tip 패킷의 삽입 간격에 대한 제한)
이어서, Constrained SESF에 삽입되는 Tip 패킷의 삽입 간격에 관한 제한을 설명한다.
Tip 패킷의 ATS(ATS1)가 나타내는 디코더 입력 시각과, Tip 패킷에 이어서 최초로 디코더에 입력되는 비디오 또는 오디오 스트림을 저장하는 TS 패킷의 ATS(ATS2)가 나타내는 디코더 입력 시각에 대하여, 이하의 관계가 성립되어야 한다.
ATS1+T≤ATS2
T=(PS_pack_size*8*system_clock_frequency)/PSrate
여기서, T는 PS 팩의 최단 전송 기간이다. 이 최단 전송 기간은, 시스템 디코더에 입력되는 PS 팩의 개시로부터 완료까지의 최단 기간이다. 즉, 상기 식은, 각각의 TS 패킷의 ATS 간격이, 적어도 변환후의 PS 팩이 시스템 디코더에 입력될 수 있는 간격보다도 커야 하는 것을 나타낸다.
T의 값은 이하와 같이 결정된다.
PS_pack_size는 TS2PS 변환에 의해서 생성되는 MPEG_PS에서의 1 팩의 바이트 길이이고, system_clock_frequency는 MPEG_PS 디코더의 기준 클록의 주파수이며, PSrate는 TS2PS 변환에 의해서 생성되는 MPEG_PS 스트림의 다중화 속도이다.
DVD 포맷에 의하면, 이들 값은 이하와 같이 정의되므로, ATS1과 ATS2의 관계는 이하와 같다.
PS_pack_size=2048 바이트
system_clock_frequency=27,000,000 Hz
PSrate=10,080,000 비트/초
ATS1+43885.714...≤ATS2
따라서, ATS1+43886=ATS2가 ATS2의 최소치가 된다.
이하에 설명하는 TS2PS 변환에서는 통상적으로, Tip 패킷을 2 KB의 NV_PCK(DVD Video 변환시) 또는 RDI_PCK(DVD VR 변환시) 팩으로 변환한다. 그러나, 상기 식이 만족되지 않는 경우, 후속되는 기본 스트림이 더 일찍 전송되고, DVD 시스템 전송 속도(10.08 Mbps)의 상한을 초과할 수도 있다.
하나의 SESF 캡슐에는 정수개(整數個)의 GOP가 배치된다. 이것은, DVD 포맷의 VOBU 개념이 Constrained SESF에서도 실현되도록, SESF 캡슐을, DVD 포맷의 VOBU에 상관시키기 위한 것이다. 더욱 상세하게는, DVD 포맷(DVD VR)에 의하면 VOBU는 정수개의 GOP를 포함해야 한다.
하나의 SESF 캡슐내에 저장되는 비디오 데이터는 재생 시간축상에서 폭이, 적어도 0.4초 이상 1.0초 이하이어야 한다. 또한, 최종 SESF 캡슐에 저장되는 비디오 데이터의 재생 시간축상에서의 시간 폭은, encode_condition=11b(DVD Video 모드)인 경우 0.4초 이상 1.2초 이하이고, encode_condition=01b(DVD VR 모드)인 경우에는 1.0초 이하이어야 한다. 이것은, SESF 캡슐이 VOBU가 되고, 소정의 DVD 포맷에 따라야 하기 때문이다.
각각의 Tip 패킷은, 통상적으로, 시간-어드레스 변환에 사용되는 액세스 맵에 대하여 1 대 1 상관 관계를 갖는 것이 바람직하다. 이것은, TS2PS 변환시에 DVD 포맷에 의해서 정의된 VOBU 단위로 변환을 즉시 시작할 수 있도록 하고, 또한 DVD Video 포맷으로의 변환시에, Tip 패킷을 NV_PCK 팩으로 변환하는 경우에, (NV_PCK에 저장된 인접 VOBU에 대한 어드레스 정보를 제공하는) DSI(Data Search Information; 데이터 탐색 정보)를 액세스 맵으로부터 생성할 수 있도록 하는 데에 필요하다. 액세스 맵에, 각각의 Tip 패킷에 대한 재생 시간(FVFPST에 의한 Tip 패킷 직후의 AV 재생 시간 정보의 일부 또는 전부)과, 각각의 Tip 패킷의 기록 어드레스가 저장되고, 또한 2개의 연속하는 Tip 패킷 사이에 저장된 다중화 단위의 개수가 알려져 있는 한, DSI를 연산할 수 있다. 이것은 이하의 제한을 부여함으로써 실현된다.
모든 Tip 패킷이 액세스 맵으로부터 지적될 필요는 없는 것을 염두에 두어야 한다. 예로서, Constrained SESF내의 최종 Tip 패킷에 후속하는 AV 데이터는, 재생 시간 길이 정보를 포함하지 않거나 또는 후속하는 Tip 패킷을 구비하고 있지 않으므로, 기타의 Tip 패킷과 상이하고, 따라서 상이하게 취급된다. 이러한 경우, 최종 Tip 패킷이 액세스 맵에 등록되어 있지 않아도 재생 및 변환에 아무런 악영향이 없으므로, 기기의 구성을 고려하여, 예외 처리로 취급할 수도 있다.
2개의 연속하는 Tip 패킷의 사이에는, 다중화 단위에 관련되지 않는 총 32개 의 패킷이 삽입된다. 이것은, TS2PS 변환시에 액세스 맵을 이용하여 DVD 포맷으로 변환한 경우, VOBU내의 팩이 몇 개가 될 것인가를 판단하는 데에 필요하기 때문이다(패킷 수는 32개로 한정할 필요는 없지만, 어떤 소정의 개수이어야 한다. 액세스 맵의 Tip 패킷의 어드레스 정보로부터, Tip 패킷에 후속하는 TS 패킷의 개수를 판단할 수 있으므로, 다중화 단위가 아닌 패킷의 개수를 알면, DVD 포맷으로 변환했을 때에, VOBU에 포함되는 팩의 개수를 판단할 수 있다. 이것은 중요하다. 이 정보는 각각의 Tip 패킷내의 MNF 또는 MakersPrivateData에 기재될 수도 있다.).
또한, 패킷의 수를 32개로 하는 이유는 이하와 같다. MPEG_TS의 프로그램 구성 정보를 나타내는 PAT, PMT 패킷이 100 msec마다 적어도 한 번 매입(埋入)되어야 하고, 각각의 프로그램에 대한 고유 정보를 저장하는 SIT 패킷이 1초마다 적어도 한 번 매입되어야 하고, 디코더 기준 시각을 설정하는 PCR(Program Clock Reference; 프로그램 클록 기준)을 저장하는 PCR 패킷이 100 msec마다 적어도 한 번 매입되어야 하고, 어떠한 다중화 단위에도 속하지 않는 널(Null) 패킷이 자유롭게 부가될 수 있고, 또한 Tip 패킷의 삽입 간격이 AV 데이터 재생 시간축상에서 1.0초 이하이므로, 2개의 연속하는 Tip 패킷 사이에, 적어도 31개의 PAT, PMT, PCR, SIT 패킷이 있으면 충분하다. 따라서, 연속하는 2개의 Tip 패킷 사이에, 이러한 정의된 시간에 따라서 PAT, PMT, PCR, 및 SIT 패킷을 삽입하고, 또한 32개의 패킷이 될 때까지 널 패킷을 부가함으로써, VOBU 팩의 수를 액세스 맵으로부터 결정할 수 있다.
예로서, 0.5초 간격으로 Tip 패킷이 삽입되어서, 액세스 맵으로부터 식별할 수 있는 Tip 패킷에 후속하는 TS 패킷의 개수가 1209개인 경우에 변환후의 팩의 수를 고려해 본다. 이 경우에, PAT, PMT, 및 PCR 패킷을 합하여 15(5+5+5) 패킷, 이 Tip 패킷 이후에 삽입된 1개의 SIT 패킷, 및 16개의 널 패킷을 삽입하여, 총 32개의 패킷이 된다. 이어서, 이것을 DVD 포맷으로 변환하는 경우에는, Tip 패킷이 하나의 팩으로서 NV_PCK(DVD Video로 변환시) 또는 RDI_PCK(DVD VR로 변환시)로 변환되고, 하나의 다중화 단위(11 TS 패킷)는 각각 하나의 팩으로 변환된다. 따라서, VOBU 팩의 수를,
1+(다중화 단위의 개수)로 표시할 수 있다.
다중화 단위의 개수는,
(그 Tip 패킷에 후속하는 TS 패킷의 개수-33)/11이다.
그러므로, 본 예에서는,
1+((1210-33)/11)=1+107=108이 된다.
따라서, 이 VOBU는, 총 108개의 팩을 갖는 것을 판단할 수 있다. 각각의 VOBU의 팩의 수와 재생 개시 시각 정보를 알면, DVD Video로의 변환에 필요한 NV_PCK의 DSI 패킷을 매우 신속하게 생성할 수 있다.
이상과 같이, Tip 패킷 삽입 간격에 대한 제한을 설명하였다. Constrained SESF를 생성하는 인코더는 상기 제한내에서 시스템 스트림을 인코딩한다.
(디코더 제어에 대한 제한)
이어서, Constrained SESF의 디코더 제어(버퍼 관리)에 대한 제한을 설명한다.
Constrained SESF는 MPEG_TS의 기준 디코더 모델인 T_STD 규격을 만족하도록 생성되어야 한다. 이것은, 스트림의 종류가 부합하면, 예로서, T_STD에 의한 디코더를 구비한 세트탑 박스에 의해서 Constrained SESF가 디코딩될 수 있는 것을 의미한다.
MPEG_TS의 표준 디코더 모델인 T_STD와, MPEG_PS의 표준 디코더 모델인 P_STD는 동작 및 처리 능력에 있어서 대체로 동일하지만, 디코더에의 오디오 스트림의 입력 속도가 상이하다. 더욱 상세하게는, 트랜스포트 버퍼로부터 오디오 디코더 이전의 오디오 버퍼에의 T_STD의 전송 속도가 2Mbps이다(AAC를 제외하고)(도 18 참조). 그러나, P_STD는, 시스템 속도, 즉, DVD의 경우 10.08 Mbps의 속도로, 각각의 스트림을 디코더에 입력한다.
이것은, Constrained SESF와 DVD 포맷의 버퍼 관리가 동일하게 될 수 없는 것을 의미한다.
따라서, MPEG_TS와 MPEG_PS에 대하여 버퍼 관리가 동일하게 될 수 없다. 그러나, Constrained SESF를 DVD 포맷으로 변환시에, 버퍼 관리를 다시 고려하면서 시스템 인코딩을 하지 않고, 각각의 TS 패킷에 부가된 ATS를 이용하여, 변환후의 팩의 디코더 입력 시각을 나타내는 SCR(System Clock Reference)을 연산할 수 있으면, 매우 신속하고 용이하게 변환을 실행할 수 있다. ATS를 이용한 SCR의 연산 방법은 이후에 상세하게 설명한다.
또한, 본 발명의 Constrained SESF는, T_STD에 따르고 또한 이후에 설명하는 변환 방법에 의해서 생성된 MPEG_PS가 P_STD에 따르는 것을 보증하도록, 인코딩되 어야 한다.
더욱 상세하게는, Constrained SESF는, MPEG_PS로 변환한 후에도 P_STD에 따르도록, MPEG_TS로 인코딩된 스트림이다.
이러한 것들이, Constrained SESF의 버퍼 관리에 대한 제한이다. 통상의 SESF는 이러한 제한을 고려하지 않고, T_STD에 따르도록 단순히 인코딩되는 것을 염두에 두어야 한다.
표준 T_STD와 P_STD 모델에 따르지 않는 MPEG_TS와 MPEG_PS의 예를 이하에 설명한다.
우선, 도 45에, MPEG_PS로 변환될 수 있지만, T_STD 모델에 따르지 않는 자체 인코딩된 MPEG_TS의 예를 나타낸다. 스트림 TS1은, T_STD 모델에 따르도록 시스템 인코딩된 MPEG 트랜스포트 스트림이다. 스트림 TS2는, T_STD 모델에 따르지 않는 MPEG 트랜스포트 스트림이다. 더욱 상세하게는, 스트림 TS2에서는, ATS [47]로부터 ATS [57]의 값이, MPEG_TS 오디오 데이터에 대하여 허용되는 전송 속도 이상으로 설정되어 있다. 따라서, 오디오 트랜스포트 버퍼(도 18 참조)가 오버플로되어서 스트림이 T_STD 모델에 따르지 않는다. 그러나, 스트림 TS1에서는, ATS [47]로부터 ATS [57]의 값이 MPEG_TS 오디오 데이터에 대하여 허용되는 전송 속도내에 설정되어 있다. 따라서, 이 스트림은, 이후에 설명하는 SCR 변환식을 이용하여 P_STD에 따르는 MPEG 프로그램 스트림 PS1로 정확하게 변환될 수 있다. 또한, 스트림 TS2는 T_STD 규격을 만족시키지 않지만, 이하의 SCR 변환식을 이용하여 변환하면, PS1이 생성될 수 있다. 스트림 TS2를 T_STD에 따르는 MPEG_TS로 변환하기 위해서 는, ATS [47]로부터 ATS [57]에 의해서 지정된 오디오 패킷의 전송 시간 간격을 증대하여, 트랜스포트 버퍼의 오버플로가 발생하지 않도록 해야 한다.
도 46A 및 46B는, T_STD 모델을 만족시키지만 MPEG_TS로부터 변환된 MPEG_PS가 P_STD 모델을 만족시키지 않는 경우의 예를 나타낸다. 스트림 TS3은 MPEG 트랜스포트 스트림이고, 스트림 PS3은 MPEG 트랜스포트 스트림 TS3으로부터 변환된 MPEG 프로그램 스트림이다. 도 46B는, 디코딩시 각각의 스트림의 비디오 데이터에 대한 버퍼의 상태 변화를 나타낸다. PES #1 화상은 시각 SCR [2]에 디코딩되고, PES #2 화상은 SCR [4]와 SCR [5]의 사이에 디코딩된다. 도 46B에 나타내는 바와 같이, 트랜스포트 스트림 TS3에 있어서는, PES #1 및 PES #2에 포함되는 화상 데이터가 디코딩될 때까지 TS 패킷 데이터의 전송이 완료된다. 그러나, 프로그램 스트림 PS3의 경우, PES #1에 대하여는 V_PCK #1 데이터의 전송이 알맞은 시간에 이루어지고 있지만, PES #2에 대하여는 V_PCK #4 데이터의 전송이 디코딩 시각에 대하여 늦고, 또한 데이터 전송이 진행되는 동안 디코딩이 개시되므로 버퍼 언더플로(underflow)가 발생한다. 따라서, P_STD 모델의 요건을 만족시키지 않는다. 이것은, MPEG_TS의 PES #2 화상 데이터의 전송이 더 일찍 완료되도록, V_PCK #2∼V_PCK #4로 변환되는 각각의 TS 패킷의 ATS 필드(ATS [14], ATS [25], ATS [36])의 값을 시간적으로 더 이르게 되도록 이동시킴으로써 회피할 수 있다.
〈ATS-SCR 변환〉
이어서, Constrained SESF 스트림을 프로그램 스트림으로 변환할 때의 PS 패킷의 SCR의 연산 방법에 대하여 설명한다. SCR은 새로운 팩을 생성하기 위하여 연 산되어야 하므로, Tip 패킷과, 다중화 단위의 선두의 TS 패킷을 변환할 때에만 필요하다.
Constrained SESF 스트림의 구조는, 도 14C에 도시되어 있는 바와 같다. TS 패킷에는, 기준 시각 정보(PCR; program clock reference)를 저장하는 PCR 패킷이 적절하게 삽입되어 있고, 이것을 이용하여 디코더 기준 시각인 STC(System Time Clock)를 적절한 시간 간격으로 재설정할 수 있다. 또한, 각각의 TS 패킷은, 각각의 TS 패킷 사이의 상대적인 전송 시각 정보를 저장하는 ATS를 포함하고 있다. 따라서, PCR을 저장하는 TS 패킷 이후에 출력되는 TS 패킷은, PCR과, TS 패킷들 사이의 상대적인 전송 시각을 나타내는 ATS로부터 결정되는 타이밍에 디코더에 입력된다. 환언하면, PCR을 저장하는 TS 패킷 이후의 TS 패킷에 대하여는, 각각의 TS 패킷의 디코더 입력 시각(이하 "calculated_PCR")을 생성할 수 있다. 어떠한 TS 패킷에도 PCR이 저장되어 있지 않은 경우, PCR에 상당하는 정보를 관리 정보에 추출해 둘 수도 있다.
도 47은, Constrained SESF를 MPEG_PS로 변환했을 때 calculated_PCR과 SCR의 관계, 즉, 도 80에 나타내는 SESF 캡슐의 선두부를 나타낸다. 스트림 선두로부터 오름차순으로 각각의 TS 패킷에 할당된 ATS가 ATS [k]로 표시되어 있다. 다중화 단위의 선두 TS 패킷에 대하여, 출현 순서로 연산된 PCR이 calculated_PCR [i](i=0, 1, 2, ...)로 표시되어 있다. 마찬가지로, 변환후의 팩의 SCR도 SCR [i]로 표시되어 있다.
상기한 바와 같이, 비디오 스트림의 전송은, 최대 전송 속도 15 Mbps(MP@ML 의 경우, 멀티플렉서 버퍼로부터 비디오 버퍼로의 전송 속도는 15 Mbps를 초과하지 않는다)로 제한되어 있고, 오디오 스트림의 입력 속도는, 비디오 전송 속도보다 낮다(AAC를 제외하고는, 트랜스포트 버퍼로부터 오디오 버퍼로의 전송 속도는 2 Mbps를 초과하지 않는다.). 따라서, 오디오 데이터를 저장한 다중화 단위는 비디오 데이터를 저장한 다중화 단위와 상이하고, 더 낮은 속도로 전송된다. 그러므로, 비디오 데이터 전송 속도가 DVD 포맷의 최대 속도인 9.8 Mbps 부근까지 증가되려면, 속도가 더 낮고 따라서 시간이 더 걸리는 오디오 데이터 전송에 대한 충분한 시간을 확보하기 위하여, 비디오 데이터의 TS 패킷은 DVD의 전송 속도(10.08 Mbps)보다 높은 속도로 전송되어야 한다.
도 47로부터 Constrained SESF와 DVD 포맷의 전송 시간이 상이한 것을 알 수 있다.
Tip 패킷 또는 다중화 단위의 선두 TS 패킷의 디코더 도착 시각(calculated_PCR)과, 그 패킷이 변환된 후의 팩의 SCR에 대하여, 이하의 관계가 성립되어야 한다.
SCR[0]=calculated_PCR[0]
SCR[i]=max(SCR[i-1]+T, calculated_PCR[i]) (i=1, 2, 3 ...)
calculated_PCR[i]=PCR_tip+(ATS[i]-ATS_tip+WA*BS)
T=PS_pack_size*8*system_clock_frequency/PSrate
여기서, PCR_tip과 ATS_tip은, 변환된 다중화 단위의 바로 직전의 Tip 패킷의 PCR 값과 ATS이다. WA는, i번째의 다중화 단위의 선두 TS 패킷에 할당된 ATS(ATS [i])와 ATS_tip과의 사이의 범위에서, 오버플로가 몇 번 발생했는가를 나타낸다. BS는, ATS의 1회의 오버플로의 양을 나타낸다. max(a, b)는 a 또는 b 중에서 더 큰 것을 선택하는 함수이다.
SCR [i] (i=0, 1, 2, 3, ...)에 관한 관계식에서는, 상기한 바와 같이, PS_pack_size는 TS2PS 변환에 의해서 생성되는 MPEG_PS에서의 하나의 팩의 바이트 길이이고, system_clock_frequency는 MPEG_PS 디코더의 기준 클록의 주파수이며, PSrate는 TS2PS 변환에 의해서 생성되는 MPEG_PS의 다중화 속도이다. 즉,
PS_pack_size=2048 바이트
system_clock_frequency=27,000,000 Hz
PSrate=10,080,000 비트/초
따라서, 선두의 팩 이후의 팩의 전송에 대하여, 하나의 선행하는 팩의 전송 시각으로부터 전송 속도에 의해서 결정되는 최소 전송 시간이 경과한 후에 팩을 전송하거나, 또는 그 팩의 최초의 TS 패킷의 디코더 입력 시각에 팩을 전송하는, 두 가지의 패턴이 있다. 비디오 데이터가 DVD 포맷으로 변환된 시각 이전에 팩을 전송하는 경우에는, 팩은 상기의 최소 전송 시간 간격으로 전송된다. 예로서, 비디오 데이터의 DVD 포맷으로의 변환 이전의 시간대에 팩을 전송하는 경우는, 선행하는 팩이 전송된 시각으로부터, 전송 속도에 의해서 결정되는 최소 전송 시간을 대기한 후에 팩을 전송한다.
Constrained SESF는 편집이 가능하므로, encode_condition=11b에서 기록된 경우에도, 예로서, 스트림의 선두가 편집에 의해서 삭제된 경우에, calculated_PCR [0]=0이 되지 않을 수도 있는 것을 유념해야 한다.
그러나, encode_condition=11b이면서, calculated_PCR [0]이 0이 아닌 경우에는, encode_condition=11b인 때에만, 이하의 변환식을 적용함으로써, 이러한 문제를 해결할 수 있다.
SCR[0]=0
SCR[i]=max(SCR[i-1]+T, calculated_PCR[i])-calculated_PCR[0] (i=1, 2, 3, ...)
calculated_PCR[i]=PCR_tip+(ATS[n]-ATS_tip+WA*BS)
T=PS_pack_size*8*system_clock_frequency/PSrate
PTS(DVD-Video)=PTS(Constrained SESF)-calculated_PCR[0]
DTS(DVD-Video)=DTS(Constrained SESF)-calculated_PCR[0]
상기한 바와 같이, ATS[n] 및 WA는 각각 i 번째의 다중화 단위에서의 선두 TS 패킷의 ATS 값 및 ATS tip에 따른 오버플로의 개수이다.
환언하면, DVD Video 포맷에 따르기 위하여, SCR[0]을 0에 설정하고, 이후의 SCR의 값은, 시간, calculated_PCR [0]만큼 오프셋(offset)된 상기 변환식의 결과를 이용하여 오프셋(offset)된 값이며, 또한 DVD Video 스트림의 모든 PTS와 DTS도 일정 시간인 calculated_PCR [0] 만큼 오프셋되어 있다.
이와 같이, 스트림의 시각 정보를 일정하게 오프셋함으로써, Constrained SESF(encode_condition=11b)의 선두가 삭제된 경우에도, encode_condition=11b를 유지하면서 DVD Video 포맷으로의 변환이 가능하다.
PTS 및 DTS 값은 DVD Video 포맷으로의 변환시에 변환될 수도 있지만, 이것은 TS 패킷 단위를 순차적으로 처리함으로써 용이하게 실현될 수 있다.
SCR은 TS2PS 변환시에 상기 식에 따라서 ATS로부터 연산된다. TS2PS 변환에 의해서 출력되는 프로그램 스트림은 상기한 바와 같이 P_STD 모델에 따라야 하고, 이것은 SCR 값이 소정의 범위에 제한되는 것을 의미한다. 따라서, Constrained SESF의 각각의 패킷에 할당되는 ATS 값은 상기의 ATS-SCR 관계식에 따라서 설정되어야 한다.
(기본 스트림에 대한 제한)
이어서, Constrained SESF의 기본 스트림에 대한 제한을 설명한다.
기본 스트림의 재인코딩은 인코더에 대한 부하가 매우 크므로, 비디오 데이터로서 MPEG-2 비디오만이 허용되고, 오디오 데이터로서 AC-3, MPEG-1 오디오, 및 LPCM이 허용된다.
그러나, 여기서 설명하는 Constrained SESF에는 LPCM이 제외되어 있다. 이것은 LPCM의 양자화(quantization) 속도가 20 비트 이상인 경우에 기본 스트림의 재인코딩을 필요로 하는 위험을 피하기 위해서, 또한 전송 속도가 증가될 수 없는 오디오 데이터의 양을 감소시킴으로써 버퍼 관리를 단순화하기 위한 것이다. 그러나, 16 비트의 LPCM이면, 특별히 LPCM 오디오를 제외할 필요는 없다.
여기서 설명하는 Constrained SESF에 대하여 허용된 스트림은, 비디오로서 MPEG-2 비디오, 오디오로서 AC-3 및 MPEG-1 오디오의 2 종류의 오디오 데이터이다.
Constrained SESF가 아닌 통상의 SESF에서는, 오디오 데이터의 인코딩은 상 기에 한정되지 않는다. BS 디지털 방송에서 사용되는 AAC(Advanced Audio Coding) 등의 인코딩 방식을 사용할 수도 있다.
도 48에 encode_condition=11b인 경우의 기본 스트림의 속성을 나타낸다.
이 도면에 나타낸 속성은 기본 스트림 레벨에서의 DVD Video 및 DVD VR 포맷 사이의 호환성을 확보하도록 설정되어 있으므로, 이 속성을 따른 Constrained SESF(encode_condition=11b)는 DVD Video 또는 DVD VR 포맷으로 변환할 때에, 기본 스트림의 재인코딩을 필요로 하지 않으므로, 고속 변환이 가능하다.
도 49에 encode_condition=01b인 경우의 기본 스트림의 속성을 나타낸다.
이 도면에 나타낸 속성은 기본 스트림 레벨에서의 DVD VR과의 호환성을 확보하도록 설정되어 있으므로, 이 속성을 따른 Constrained SESF(encode_condition=01b)는 DVD VR 포맷으로 변환할 때에, 기본 스트림의 재인코딩을 필요로 하지 않으므로, 고속 변환이 가능하다.
이하에, 도 48과 도 49에 기재한 주(註) 1∼4에 대하여 설명한다.
주 1: 이 속성은 동일한 VOB내에서 변화될 수 없다.
주 2: 이 속성은 Tip 패킷에 후속하는 최초의 기본 스트림을 저장한 TS 패킷내에서 변화될 수 있다. 환언하면, SESF 캡슐의 선두의 비디오 또는 오디오 TS 패킷에서만 변화될 수 있다.
주 3: 동일한 horizontal_size, Vertical_size 및 aspect_ratio_information을 구비한 sequence_header 사이에는 sequence_end_code를 삽입할 수 없다.
주 4: 이 속성은 모노럴, 스테레오, 및 듀얼 모노럴의 동일한 VOB내에서 변 화될 수 있다.
이상, Constrained SESF의 기본 스트림에 관한 제한을 설명하였다.
상기의 인코딩 조건을 부가함으로써 DVD 포맷으로 용이하고 또한 신속하게 변환할 수 있는 Constrained SESF를 생성할 수 있게 된다.
(변환후의 DVD Video 및 DVD VR 포맷)
이어서, Constrained SESF가 변환되어야 하는 DVD Video 및 DVD VR 포맷의 필드 설정에 대하여 설명한다.
〈DVD Video 포맷〉
이하에서는, 우선 DVD Video 규격에 따른 스트림에 대하여 간단히 설명한다. DVD Video 스트림 포맷에 대해서는, "DVD Specifications for Read-Only Disc, Part 3, VIDEO SPECIFICATIONS"에 상세하게 기재되어 있다.
도 50에 DVD Video 포맷의 스트림 구조를 나타낸다. 이 도면에 나타내는 바와 같이, 각각의 스트림은 복수의 VOB를 포함하고, 또한 각각의 VOB는 정수개(整數個)의 VOBU를 포함한다. VOBU는, NV_PCK를 선두로 하여 비디오 팩(V_PCK) 및 오디오 팩(A_PCK)이 후속하는, 정수개의 팩으로 구성되어 있다. NV_PCK는, 통상의 DVD 팩과는 상이하게, 2개의 패킷을 포함하고 있다. 이 패킷들을 각각 PCI(Presentation Control Information; 재생 제어 정보) 패킷 및 DSI(Data Search Information; 데이터 탐색 정보) 패킷이라고 부른다. PCI 패킷에는, 대응하는 VOBU에 대한 재생 제어 정보가 저장된다. DSI 패킷에는, 이 VOBU와 인접하는 VOBU와의 상대적인 위치 등, 특수 재생 모드에 유용한 정보가 저장된다. 이어서, 이러한 필 드 및 필드 값의 결정 방법을 이하에 설명한다.
도 51은 NV_PCK의 PCI 데이터의 구조를 나타낸다. PCI 데이터는, PCI의 일반적인 정보를 저장하는 PCI_GI(PCI General Information; PCI 일반 정보)와, 심리스가 아닌(non-seamless; 연속적이 아닌) 재생을 위한 앵글(angle) 정보인 NSML_AGLI와, 메뉴 및 버튼에 하이라이트를 주기 위한 정보인 HLI와, ISRC(International Standard Recording Code)를 저장하는 RECI를 포함한다.
Constrained SESF로부터 변환된 경우, NSML_AGLI와 HLI에는 무효를 나타내는 값이 저장된다.
ISRC 필드에는, 무효를 나타내는 값, 또는 ISRC 코드를 그대로 저장할 수도 있지만, 이 필드는 Constrained SESF로부터의 변환과 관계가 없으므로, 추가의 설명은 생략한다. 따라서, Constrained SESF로부터 PCI 데이터를 작성할 때에 문제가 되는 유일한 필드는, PCI_GI 필드이다.
도 52는 NV_PCK의 PCI_GI 필드의 구조를 나타낸다. 이하에서는, Constrained SESF로부터 변환시에 연산해야 하는 필드에 대해서만 그 연산 방법을 설명한다.
NV_PCK_LBN(VOBS 파일내에서의 NV_PCK의 상대 어드레스)은, 정보기록장치가, 변환시에 각각의 팩의 수를 카운트함으로써, 연산할 수 있다.
VOBU_CAT(아날로그 copy protection 상태의 정보)는, NV_PCK에 대응하는 Tip 패킷의 display_and_copy_info로부터 취득할 수 있다.
VOBU_S_PTM(VOBU내에서 최초에 표시되는 비디오 필드의 재생 시각 정보)은, NV_PCK에 대응하는 Tip 패킷의 FVFPST로부터 연산할 수 있다.
VOBU_E_PTM(VOBU내의 비디오 데이터의 재생이 종료되는 시각 정보)은, 액세스 맵의 다음 엔트리에 기록된 재생 시각 정보로부터 취득할 수 있거나, 또는 VOBU의 비디오 스트림을 해석하여, 비디오 재생이 종료되는 시각을 연산함으로써 생성할 수 있다.
최종 VOBU 이전의 모든 VOBU에는, VOBU_SE_E_PTM(VOBU내의 비디오 데이터의 재생이 sequence_end_code에 의해서 종료되는 시각 정보)에 "0x00000000"이 채워져 있고, 이것은, sequence_end_code가 최종 VOBU에서만 허용되므로 중간의 VOBU는 sequence_end_code를 포함하지 않기 때문이다. VOBU_SE_E_PTM은 최종 VOBU에 sequence_end_code를 포함하는 최종 NV_PCK에서만, VOBU_E_PTM과 동일한 값에 설정된다.
C_ELTM은, NV_PCK를 저장하는 CELL에 표시된 최초 비디오 프레임의 재생 시각과 그 VOBU내에서 최초로 표시된 비디오 프레임과의 사이의 시간차이고, 프레임 정밀도로 표시되어야 한다. C_ELTM은, 정보기록장치가 변환 처리시에, 해당하는 Tip 패킷의 FVFPST와 CELL의 최초에 표시되는 비디오 프레임의 재생 시각 정보를 이용하여, 필요한 대로 연산될 수 있다.
따라서, 상기와 같이, 변환시에 NV_PCK의 PCI 데이터를 VOBU 단위로 필요한 대로 생성할 수 있다.
도 53은 NV_PCK의 DSI의 구조를 나타낸다. 도 53에 나타내는 바와 같이, DSI 데이터 필드는, 일반 DSI 정보를 저장하는 DSI_GI(Data Search Information General Information)와, VOB 사이의 심리스 재생에 필요한 기록 어드레스와 재생 정보를 저장하는 SML_PBI(Seamless Playback Information)와, 상이한 앵글 사이의 심리스 재생에 필요한 위치 정보 등을 저장하는 SML-AGLI(Angle Information for seamless)와, 특정 VOBU에 인접한 VOBU의 기록 어드레스를 저장하는 VOBU_SRI(VOB Unit Search Information)와, 비디오와 오디오/서브화상의 동기 재생을 가능하게 하는 SYNCI(Synchronous Information)를 포함한다.
Constrained SESF로부터 변환된 경우, SML-AGLI에는 무효를 나타내는 정보가 기록된다.
도 54는 NV_PCK의 DSI_GI의 구조를 나타낸다. Constrained SESF로부터 변환시에 연산되어야 하는 필드에 대해서만, 이하에 그 연산 방법을 설명한다.
NV_PCK_SCR(NV_PCK의 SCR)은, 이후에 설명하는 방법으로써 Constrained SESF의 ATS로부터 SCR을 연산하고, 그 SCR로부터 연산한다.
NV_PCK_LBN(VOBS 파일내에서의 NV_PCK의 상대 어드레스)은 PCI 데이터와 동일한 방법으로 취득한다.
VOBU_EA(VOBU내의 NV_PCK로부터 최종 팩까지의 상대 어드레스)는 액세스 맵으로부터 연산할 수 있다. 상기한 바와 같이, 2개의 연속하는 Tip 패킷 사이의 다중화 단위에 속하지 않는 패킷의 개수는 알려져 있다(정해져 있다). 따라서, 액세스 맵으로부터, 다음의 엔트리(다음의 Tip 패킷)까지의 TS 패킷의 수를 연산할 수 있다. 이어서, 그 TS 패킷들 중에서, 다중화 단위에 속하지 않는 TS 패킷의 개수를 감산한 후, 그 차이를 11로 나누어서 NV_PCK 이후에 형성되는 팩의 수를 연산한다. 변환후에 생성된 팩의 수를 카운트하여, 최종 Tip 패킷으로부터 파생되는 NV_PCK, 또는 모든 NV_PCK에 기록할 수도 있다.
VOBU_1STREF_EA(VOBU내에서의, NV_PCK로부터, 첫 번째의 참조 화상의 최종 팩까지의 상대 어드레스)와, VOBU_2NDREF_EA(VOBU내에서의, NV_PCK로부터, 두 번째의 참조 화상의 최종 팩까지의 상대 어드레스)와, VOBU_3RDREF_EA(VOBU내에서의, NV_PCK로부터, 세 번째의 참조 화상의 최종 팩까지의 상대 어드레스)는, TS2PS 변환시 Tip 패킷의 PES_info 필드를 참조하는 경우, 비디오 스트림층까지 해석하지 않고 연산될 수 있다.
PES_info에는, 각각의 비디오 PES 패킷에 저장된 화상에 적용되는 인코딩 방식을 나타내는 picture_coding_type이 저장된다. picture_coding_type이 01b 또는 10b인 PES 패킷에는, DVD Video 규격에서 정의된 참조 화상이 저장된다.
따라서, TS2PS 변환시 PES_info 필드를 참조하여, 변환되는 PES 패킷에 참조 화상이 저장되어 있는가, 또한 상기 변환된 PES 패킷이 종료되는 팩이 참조 화상의 최종 팩이 되는가를 판단할 수 있다.
참조 화상의 최종 팩을 변환시에 식별할 수 있으므로, VOBU를 생성하면서, 첫째, 둘째 및 셋째의 참조 화상이 어느 팩에서 종료되는가를 판단하여, VOBU의 선두 NV_PCK의 VOBU_1STREF_EA와, VOBU_2NDREF_EA와, VOBU_3RDREF_EA 필드에 각각의 상기 화상의 종단까지의 상대 어드레스를 기록할 수 있다.
또 다른 방법으로는, SESF 캡슐의 변환시에, 비디오 데이터를 저장하는 PTS_DTS_flags를 참조하여, 참조 화상의 저장을 순차적으로 판단하여 이 값들을 연산할 수도 있다. 예로서, PTS_DTS_flags가 11b이면 참조 화상이 저장된 것으로 판 단하고, PTS_DTS_flags가 10b이면 비참조 화상이 저장된 것으로 판단한다.
VOBU_VOB_IDN(VOBU가 속하는 VOB의 ID 번호)은, 변환시에 정보기록장치에 의해서 취득 가능할 것이다. 하나의 Constrained SESF를 변환하는 경우, Constrained SESF의 encode_condition을 11b에 설정함으로써, 속성 변화 등, 스트림 조건에 의한 VOB의 분할이 방지되고, 동일한 ID 번호가 할당될 수 있다.
VOBU_VOB_IDN과 마찬가지로, VOBU_C_IDN(VOBU가 속하는 셀의 ID 번호)도 변환시에 정보기록장치에 의해서 설정되고, 스트림과는 관련이 없다. Constrained SESF의 PGC 정보 또는 기타 관리 정보에 따라서 셀을 고의적으로 분할하는 경우에는, 단순히 분할에 의해서 결정된 번호가 부여된다.
C_ELTM은 NV_PCK를 저장하는 셀에 표시된 최초 비디오 프레임의 재생 시각과 VOBU내에 최초로 표시된 비디오 프레임의 재생 시각과의 시간차이고, 프레임 정밀도로 표시되어야 한다. C_ELTM은 PCI 데이터에 기록된 C_ELTM과 동일하다.
따라서, 상기한 바와 같이, 변환시에 NV_PCK의 DSI_GI 필드의 각각의 필드를 VOBU 단위로 연속적으로 생성할 수 있다.
도 55는 NV_PCK의 SML_PBI 필드의 구조를 나타낸다. 이하에서, Constrained SESF로부터의 변환시에 연산해야 하는 필드에 대해서만 그 연산 방법을 설명한다.
VOB_V_S_PTM(NV_PCK가 속하는 VOB에 표시된 최초 비디오 프레임의 재생 시각)은, 최초의 Tip 패킷의 FVFPST로부터 연산할 수 있다.
VOB_V_E_PTM(NV_PCK가 속하는 VOB의 비디오 재생 종료 시각)은, 실제적인 TS2PS 변환전에, 변환하도록 선택된 Constrained SESF 부분의 최종 Tip 패킷 이후 의 스트림을 해석하여 비디오 데이터의 표시 종료 시각을 취득함으로써 언제든지 설정할 수 있다.
따라서, 변환전에 NV_PCK의 SML-PBI의 필드를 연산할 수 있다. 변환시에 이 값을 이용하면 충분하다.
VOBU_SRI는, 상기한 바와 같이, 액세스 맵을 이용하여 연산할 수 있으므로, 여기에서의 추가 설명은 생략한다.
또한, VOBU_SRI는 각각의 셀내에 완전히 기록되므로, 셀이 정의되지 않으면, 연산할 수 없다. 따라서, 실시간(實時間)에 DVD Video 포맷으로 기록하는 기록장치는, 필요로 하는 구간에서 셀을 생성할 수 없으므로, 편집 및 재생 성능이 결여된다. 그러나, Constrained SESF로부터 변환하는 때에는, 상기 방법을 이용하여, 셀을 사용자가 지정한 구간으로서 정의하여 변환할 수 있고, 챕터(chapter)를 사용자가 의도한 대로 작성할 수 있고, 또한 사용자가 지정한 위치로부터 재생을 개시하는 재생 목록을 DVD Video 포맷에 따라서 작성할 수 있다.
도 56은 NV_PCK의 SYNCI 필드의 구조를 나타낸다. 이하에서는, Constrained SESF로부터 변환하는 경우에 연산해야 하는 필드에 대해서만 그 연산 방법을 설명한다.
A_SYNCA0은, 1차(primary) 오디오 팩이 저장되고, 또한 VOBU_S_PTM과 동시에 또는 직후에 재생되는 오디오 프레임이 저장된 팩의 상대 어드레스이다. 이것은, TS2PS 변환시에 스트림을 해석하지 않고, Tip 패킷내의 PES_info를 이용하여, 연산할 수 있다.
PES_info의 stream_identifier를 판독함으로써, PES 패킷에 1차 오디오가 저장되어 있는가를 판단할 수 있고, 다음의 sync_presentation_flag에서, PES 패킷에 포함된 오디오 프레임내에, VOBU_S_PTM과 동시에 또는 그 직후에 재생되는 오디오 프레임이 있는가를 판단할 수 있다. 따라서, TS2PS 변환시에, PES 패킷이 1차 오디오를 포함하고, 또한, sync_presentation_flag=1b인 경우에, NV_PCK로부터, PES 패킷이 저장된 팩까지의 어드레스를 기록할 수 있다.
VOBU의 하나의 오디오 팩내에 sync_presentation_flag=1b가 설정될 아무런 보장도 없는 것을 염두에 두어야 한다. 인코더가 오디오를 우선 다중화하는 경우, VOBU의 VOBU_S_PTM과 동시에 또는 직후에 재생되는 오디오 팩이, 선행하는 VOBU 또는 후속하는 VOBU에 저장될 수도 있다.
따라서, A_SYNCA0 필드에 설정되는 값은, 변환시에, 1차 오디오의 PES 패킷(그 sync_presentation_flag=1b)과, 이후에 생성되는 NV_PCK와의 순서 관계를 정확하게 이해하여, 설정해야 한다.
이러한 처리를 배제하기 위해서는, SESF 캡슐의 선두 Tip 패킷에 기록된 FVFPST와 동시에 또는 직후에 재생되는 오디오 데이터를 또한 동일한 SESF 캡슐내에 저장하도록, Constrained SESF를 시스템 인코딩할 수도 있다.
이와 같이 정의함으로써, 그 VOBU(SESF 캡슐)를 벗어난 VOBU_S_PTM(FVFPST)에 동기된 오디오 데이터를 검출하는 처리를 배제할 수 있다.
A_SYNCA1은, 2차(secondary) 오디오 팩이 저장되고, 또한 VOBU_S_PTM과 동시에 또는 직후에 재생되는 오디오 프레임이 저장된 팩의 상대 어드레스이고, A_SYNCA0과 동일한 방법을 이용하여, 연산할 수 있다.
따라서, A_SYNCA를 제외하고, 변환시에 NV_PCK의 DSI 데이터를 VOBU 단위로 순차적으로 생성할 수 있다.
NV_PCK의 생성 방법의 예는 도 82에 도시되어 있는 바와 같다.
〈DVD Video Recording 포맷〉
이어서, DVD Video Recording(VR) 스트림 포맷으로의 변환시의 필드 설정에 대하여 설명한다.
이하에, DVD VR 스트림을 간단하게 설명한다. DVD VR 스트림 포맷에 대해서는, "DVD Specifications for Rewritable/Re-recordable Discs, Part 3, VIDEO RECORDING"에 상세하게 기재되어 있다.
도 57에 DVD VR 포맷의 스트림 구조를 나타낸다. 이 도면에 나타내는 바와 같이, 각각의 스트림은 복수의 VOB를 포함하고, 또한 각각의 VOB는 정수개(整數個)의 VOBU를 포함한다. VOBU는, RDI_PCK를 선두로 하여 비디오 팩(V_PCK) 및 오디오 팩(A_PCK)이 후속하는, 정수개의 팩으로 구성되어 있다. 통상의 팩과 상이하게, RDI_PCK는, 재생 및 복사 제어 정보와, 제작자 고유 정보를 포함하고 있다. 이하에, RDI_PCK에 포함되는 필드와, 그 필드 값의 연산 방법을 설명한다.
도면에 나타내는 바와 같이, RDI_PCK의 페이로드 데이터(RDI Unit)는, RDI의 일반 정보를 저장하는 RDI_GI(Real-time Data Information General Information; 실시간 데이터 정보 일반 정보)와, 표시 및 복사 제어에 사용되는 정보를 저장하는 DCI_CCI(Display Control Information and Copy Control Information; 디스플레이 제어 정보 및 복사 제어 정보)와, 제작자 고유 정보를 저장하는 MNFI(Manufacturer's Information)를 포함하고 있다.
RDI_GI 필드는 VOBU_S_PTM 필드를 포함한다. 이 필드만이 가변이고, 기타 필드 값은 고정적이다.
VOBU_S_PTM은, 변환전의 트랜스포트 스트림내의 대응하는 Tip 패킷에 기록된 FVFPST와 동일한 포맷이므로, FVFPST의 값이 VOBU_S_PTM 필드에 간단하게 복사될 수 있다.
DCI_CCI는, Tip 패킷의 display_and_copy_info 필드와 동일한 포맷을 구비하고 있으므로, display_and_copy_info의 값이 DCI_CCI 필드에 간단하게 복사될 수 있다.
고유의 제작자 ID는, Tip 패킷에 기록된 maker_ID가 정보기록장치의 제작자 ID와 동일한 경우에만, 할당되고, 제작자 고유 정보가 MNFI 필드에 복사된다. 그러나, Tip 패킷의 maker_ID가 상이한 제작자의 ID인 경우, 또는 maker_ID가 무효인 경우, 무효 데이터를 MNFI 필드에 기록함으로써 RDI 팩을 생성할 수 있다.
Tip 패킷내에 기록된 데이터의 일부가 무효인 경우가 있을 수 있다. 이 경우, Tip 패킷내에 무효 데이터가 존재하는 것을 나타내는 플래그(무효화 플래그)가 설정되어야 한다. 이 무효화 플래그가 ON에 설정되어 있는 경우에는, Tip 패킷의 무효 데이터를 가장 최신의 데이터로 갱신한 후에, 플래그를 갱신해야 한다.
이러한 예로서, 각각의 TS 패킷의 ATS(4 B)에 가장 최신의 CCI 데이터와 TS 패킷의 CCI 데이터 무효화 플래그가 존재하는 경우를 고려할 수 있다.
이 경우, TS2PS 변환시에, 무효화 플래그가 설정되어 있는가를 판단할 필요가 있다. 설정되어 있는 경우, display_and_copy_info 필드의 CCI 데이터를, ATS의 CCI 플래그로써 갱신한 데이터를 이용하여 RDI_PCK로 변환할 필요가 있다.
따라서, 대응하는 Tip 패킷(및 그 ATS)만을 이용하여, RDI_PCK를 순차적으로 생성할 수 있다.
도 58은 상기의 RDI_PCK의 생성 방법의 플로차트이다.
RDI_PCK(또는 NV_PCK)에 있어서, 시스템 헤더는 고정치의 필드를 포함하고 있다. 시스템 헤더의 상세는 도 61에 나와 있다. RDI_PCK에 저장된 패킷 헤더와 전용 헤더(private header)는 각각 도 62A와 62B에 나와 있다. 이들 도면에 나타내는 바와 같이, 이들 헤더는 고정치의 필드를 포함하므로, 용이하게 생성될 수 있다.
도 59는 AV 데이터를 저장한 TS 패킷(Multiplexing Unit)으로부터 PS 팩을 생성하는 방법의 플로차트이다.
도면에 나타내는 바와 같이, AV 데이터를 저장하는 Constrained SESF의 TS 패킷은, 하나의 다중화 단위를 처리 단위로 하여, AV 데이터를 저장하는 MPEG_PS의 2 KB 팩으로 변환된다.
이하에, 이 방법의 단계에 따라서 추가로 설명한다.
(단계 S4200): Constrained SESF의 스트림의 변환 개시점으로부터 하나의 TS 패킷을 판독한다.
(단계 S4201): 판독한 TS 패킷이, AV 데이터를 저장하고, 또한 다중화 단위의 선두의 TS 패킷인가를 판단한다.
AV 데이터가 저장되어 있는가는, PMT에서 AV 데이터를 저장하고 있는 것으로 선언된 TS 패킷의 PID 값을 판독함으로써 판단한다. 다중화 단위의 선두인가의 판단에 대해서는, 선행하는 TS 패킷이, Tip 패킷, PSI/SI 패킷, 또는 PCR 패킷이고, 그 직후에 후속하는 TS 패킷에 AV 데이터가 저장된 경우, 그 TS 패킷이 다중화 단위의 선두인 것으로 판단한다. Tip 패킷이 변환 개시점인 것으로 예상되므로, 다중화 단위의 선두인가는 TS 패킷을 순차적으로 판독함으로써 판단할 수 있다(즉, Tip 패킷 직후의 AV 데이터를 저장한 선두 TS 패킷이 항상 다중화 단위의 선두이다.). TS 패킷이 다중화 단위의 선두가 아닌 것으로 판정된 경우, 또는 변환이 Tip 패킷으로부터 개시되지 않고, 판정을 할 수 없는 경우, 처리는 후속하는 TS 패킷을 판독하기 위하여, 단계 S4200에 복귀된다. 다중화 단위의 선두인 것이 확인된 후에, 처리는 다음 단계로 진행한다.
(단계 S4202): 다중화 단위의 선두 TS 패킷에 할당된 ATS를 이용하여, 그 TS 패킷이 변환되는 MPEG_PS 팩이 디코더에 입력되는 시각(calculated_PCR)을 연산한다. PCR은 상기한 바와 같이 연산된다. PCR이 연산되면, SCR을 상기 방법으로써 연산할 수 있고, 도 60에 나타낸 팩 헤더가 완성된다. 이것은, 팩 헤더에는, SCR을 제외하고 고정치만이 허용되기 때문이다.
(단계 S4203): 패킷 헤더와 전용 헤더를 작성한다.
패킷 헤더는, Constrained SESF의 PES 패킷 헤더에 따라서 작성된다. 패킷 헤더의 형식은 도 63에 나타낸 필드 값을 만족시켜야 한다. 이것은, 헤더 길이를 변경하는 필드 값이 설정되어 있지 않으면 Constrained SESF로부터의 변환이 일정 하게 실행되지 않고, 버퍼 관리가 영향을 받을 수도 있기 때문이다. 여기에 나타내지 않은 필드는 고정치이므로 열거하지 않았다.
Constrained SESF에 대하여 PES 패킷 헤더의 각각의 필드 값을 상세하게 결정하는 것은, PES 패킷 헤더(MPEG_TS)로부터 패킷 헤더(MPEG_PS)로의 변환에 필요한 처리를 최소화하기 위한 것이다.
PES 패킷이 하나의 팩의 크기에 비하여 상대적으로 큰 경우에는, 하나의 PES 패킷이 복수의 팩으로 변환된다. 이 경우, 제2팩 및 이후의 팩의 패킷 헤더에 대한 수정은, PES 패킷으로부터 생성된 최초의 패킷 헤더의 PTS_DTS_flags를 00b에 설정하고 PES_extension_flag를 0b에 설정하는 것, stuffing_byte 길이를 조정하는 것, 및 PES_header_data_length를 보정하는 것이다.
전용 헤더는, MPEG가 아닌 스트림을 저장하는 경우에 필요하므로, NV_PCK, RDI_PCK, AC-3, 또는 LPCM을 저장한 팩에 필요하다.
도 64는 AC-3의 전용 헤더를 나타낸다. 도면에 나타낸 필드 중에서, number_of_frame_headers 필드만이 Constrained SESF의 다중화 단위의 정의에 따라서, TS2PS 변환시에 연산을 필요로 한다. 이 필드는 그 팩에 저장되는 AC-3 오디오 프레임의 개수를 지정하므로, 이 필드의 값은, 예로서, 고정 속도의 AC-3의 경우에 하나의 오디오 프레임의 바이트 길이를 그 비트 전송 속도로부터 연산할 수 있고 또한 그 값이 고정 길이이므로, PES_packet_length로부터 용이하게 연산할 수 있다.
Constrained SESF의 PES 패킷 헤더의 PES_header_data_length에는, AC-3의 전용 헤더(4 바이트)에 의해서, 여분의 4 바이트가 스터핑되어 있는 것을 염두에 두어야 한다(도 44 참조). 이와 같이, 변환후의 헤더 길이를 변환전에 추정하여 페이로드 위치를 이동시킴으로써, TS 패킷 단위의 순차적인 처리를 용이하게 할 수 있다.
상기한 바와 같이, 최초의 패킷 헤더는 그 PES 패킷 헤더의 일부를 보정함으로써 생성되고, 제2 및 그 이후의 패킷 헤더는, 최초의 패킷 헤더의 일부를 보정함으로써 생성되고, 또한 전용 헤더는 MPEG 규격에 따르지 않는 스트림의 경우에만 삽입된다. 이와 같이, 패킷 헤더 및 전용 헤더가 생성될 수 있다.
(단계 S4204): 전용 헤더가 생성되면, TS 패킷의 페이로드로부터 데이터를 단순히 복사함으로써, PS 팩의 페이로드가 그 선두로부터 채워진다.
(단계 S4205∼S4207): 이 단계들을 다중화 단위(11개의 TS 패킷)가 완성될 때까지 단순히 반복한다. 그러나, 널 패킷이 삽입되어 있을 가능성이 있으므로, 널 패킷의 PID(0x1FFF)가 검출되는 동안에는, TS 패킷의 페이로드 데이터를 복사한다.
PES 패킷의 최종 데이터를 저장하는 TS 패킷만이 적응 필드를 구비하는 것으로 정의하는 것이 바람직하다. 이로 인하여, Constrained SESF에서의 PES 패킷의 최종 데이터를 저장하는 TS 패킷 이외의 TS 패킷에는 항상 184 바이트의 페이로드 데이터가 저장되므로, 페이로드 데이터의 판독이 용이하게 된다.
(단계 S4208): 모든 다중화 단위의 페이로드 데이터가 복사되었을 때, 생성된 팩의 바이트 길이를 연산하여, 바이트 길이가 2048 바이트인가를 확인한다. 2048 바이트이면, 팩의 생성은 종료된다. 팩이 2048 바이트 이하를 포함하면, 단계 S4209로 진행된다.
(단계 S4209): 팩이 2048 바이트로 되어 있지 않은 경우, 총 2048 바이트가 되도록 페이로드의 최후에 패딩(padding) 패킷을 추가한다.
이상과 같이, 변환 처리는 AV 데이터를 저장한 다중화 단위로부터 진행된다. 상기의 처리를, 다중화 단위가 검출되는 경우에만, 변환하도록 선택된 Constrained SESF 부분의 처리가 종료될 때까지 반복한다.
이어서, 상이한 타입의 팩에 대한 상기 변환 처리 결과를 이하에 설명한다.
〈비디오 팩(V_PCK)으로의 변환〉
도 65A 및 65B는 Constained SESF로부터 MPEG_PS로의 변환을 나타낸다. 도 65A에 나타내는 바와 같이, 하나의 비디오 PES 패킷은 통상적으로 2 KB보다도 크므로, 복수의 다중화 단위로 분할되어서, Constrained SESF로 다중화된다.
Constrained SESF의 정의에 따라서, 비디오 PES 패킷내의 최종 다중화 단위 이외의 각각의 다중화 단위에는 비디오 PES 패킷 데이터가 최대한으로 채워진다. 따라서, 최종 다중화 단위 이외의 모든 다중화 단위에는, 2024 바이트(=184×11 바이트)의 데이터가 저장된다.
이와 같이 정의함으로써, TS2PS 변환시에 각각의 팩의 PES_packet_length 및 stuffing_byte 등의 필드를 미리 결정할 수 있다.
하나의 비디오 PES 패킷의 데이터를 저장하는 최종 다중화 단위에는, 나머지 데이터 용량을 적응 필드와 널 패킷을 채워넣어서, 하나의 완전한 다중화 단위를 형성하거나, 또는 (변환된 MPEG-PS 팩에 저장된 데이터의 증가량에 대한) 효율적인 데이터 전송을 위하여 다음의 PES 패킷의 데이터를 저장할 수도 있다.
그러나, DVD에의 변환의 용이성을 고려하여, SESF 캡슐의 I-화상만을, SESF 캡슐의 선두 비디오 데이터를 저장하는 다중화 단위의 선두 TS 패킷으로부터 배치한다. P-화상과 B-화상은 상기와 같이 다중화 단위의 선두로부터 배치하지 않을 수도 있다.
도 65A 및 65B에 나타낸 바와 같이, 하나의 비디오 PES 패킷을 형성하는 데에는 이하의 3 종류의 다중화 단위, 즉, PES 패킷의 선두 데이터를 저장하는 최초의 다중화 단위(도면에서 MU #1)와, PES 패킷의 중간 부분의 데이터를 저장하는 다중화 단위(MU #n, 여기서, n=2, 3, ... N-1)와, PES 패킷의 최종 데이터를 저장하는 다중화 단위(MU #N)를 이용한다.
TS2PS 변환에 의해서 생성된 MPEG_PS 스트림에서의 이러한 다중화 단위의 종류에 대응하는 팩의 구조를, 도 65B에 나타낸다.
MU #1로부터 변환된 팩은, 팩 생성시에 적어도 10 바이트의 공백 스페이스를 항상 포함하므로, 패딩 패킷이 최후에 삽입된다.
이것은, DVD 포맷에서는, 팩에 7 바이트 이하의 공백 스페이스가 있을 때에는 2048 바이트가 될 때까지 스터핑 바이트(패킷 헤더의 최종 필드)를 추가하고, 공백 스페이스가 8 바이트 이상이면, 패딩 패킷을 추가하도록 규정하고 있기 때문이다.
MU #n으로부터 변환된 팩에는 하나의 스터핑 바이트를 추가하여 팩을 완성한다.
MU #N으로부터 변환된 팩은, 통상, 8 바이트 이상의 공백 스페이스를 가지고 있으므로, 패딩 패킷이 삽입된다.
〈오디오 팩(A_PCK)으로의 변환〉
도 66A 및 66B는 Constained SESF로부터 MPEG_PS로의 변환을 나타낸다. 도 66A에 나타내는 바와 같이, (하나 이상의 오디오 프레임을 저장하는) 하나의 오디오 PES 패킷은 하나의 다중화 단위보다도 작다.
하나의 오디오 PES 패킷이 하나의 다중화 단위 내에 들어가므로, 비디오 PES 패킷의 경우와 같이 복잡한 변환은 필요없다. 더욱 상세하게는, 도 66B에 나타내는 바와 같이, 패딩 패킷이 부가되는 팩이 항상 생성된다.
또한, PES_packet_length가 TS2PS 변환에 따라서 변화하지 않으므로, 변환하는 데에 간단한 연산만이 필요하다. 이러한 연산은 MPEG-1 오디오를 변환할 때에 stream_id를 적절하게 설정하는 것과, AC-3 전용 헤더를 생성하는 것이다.
또한, 도면에 나타내는 바와 같이, Constrained SESF의 시스템 인코딩을 복잡하게 하는 큰 요소인, 오디오 데이터의 전송 시간을 최소화함으로써, 버퍼 관리를 간단하게 할 수 있다.
오디오 다중화 단위가 전송되는 동안에는 비디오 데이터 및 기타 PSI/SI 패킷이 전송될 수 없으므로, 전체의 전송 속도가 떨어지고(즉, 화상 품질 저하), 전송 시간이 길어짐에 따라서, 트랜스포트 스트림에서는 그 만큼 더 일찍 비디오 데이터를 전송해야 한다(따라서 시스템 인코딩이 복잡하게 된다). 따라서, 오디오 다중화 단위의 전송 시간을 가능한 한 짧게 하는 것이 바람직하다.
환언하면, 오디오 다중화 단위를 짧은 시간에 전송하는 것은, 오디오 전송 속도를 증가시키는 것을 의미한다. 이것은, T_STD와 P_STD의 큰 차이인, 오디오의 허용 입력 속도의 차이를 감소시키는 것에 연결된다. 이것의 큰 이점은, 또한 두 디코더 모델에 합치되어야 하는 Constrained SESF의 생성을 간단하게 하는 것이다.
도 67은, Constrained SESF에서 허용되는 오디오 비트 전송 속도와, AC-3과 MPEG-1 오디오를 각각의 비트 전송 속도로 저장하는 경우에, 하나의 오디오 PES 패킷에 저장되는 최대 페이로드 길이를 나타낸다. 여기에 나타내는 바이트 길이보다 큰 데이터는 하나의 오디오 PES 패킷에 들어가지 않으므로, 패딩 패킷이 삽입된다.
(PES 패킷의 제한)
변환된 MPEG-PS 팩에 저장할 수 있는 데이터의 양을 증가시키도록, 정수개의 오디오 프레임을 포함하는 정수개의 PES 팩이 정수개의 다중화 단위에 저장될 수도 있어서, 효율적인 다중화를 실현할 수 있다. 이 경우, 변환시의 PTS 연산에 있어서 문제가 발생할 수도 있다.
DVD 규격은, 오디오 PES 패킷에 있어서 시작하는 최초의 오디오 프레임의 PTS가, 오디오 PES 패킷의 패킷 헤더 내에 PTS로서 기술되어야 하는 것으로 규정하고 있다.
TS2PS 변환에 있어서, MPEG-PS(DVD)로의 변환후의 PES 패킷의 선두의 오디오 프레임이, 변환전의 Constrained SESF와 다중화된 PES 패킷의 선두의 오디오 프레임과 일치하지 않는 경우가 있을 수도 있다. 따라서, 본 발명에서는, 변환후의 MPEG-PS 팩의 PES 패킷의 최초의 오디오 프레임이 항상 PTS를 포함하도록, Constrained SESF에 따라서 다중화 처리를 실행한다. 따라서, TS2PS 변환에 있어서 PTS를 새로이 연산하여 취득할 필요가 없다.
그러므로, 다중화 단위 내의 최초의 완전한 오디오 프레임의이, 다중화 단위 내의 PES 패킷의 페이로드의 최초의 오디오 프레임(즉, PTS가 불가피하게 기록된 오디오 프레임)이 되도록 배치하는 것이 효과적이다. 따라서, 본 발명에 의한 Constrained SESF는, 다중화 단위 내의 최초의 완전한 오디오 프레임이, 다중화 단위 내의 PES 패킷의 페이로드의 최초의 오디오 프레임이 되도록 정의하고 있다. 또한, 이러한 정의는, 다중화 단위 내에서 선두 바이트가 처음 시작되는 오디오 프레임이, 다중화 단위 내의 PES 패킷의 페이로드의 최초의 오디오 프레임이 되도록 정의될 수도 있다. 이러한 정의에 의한 제한은 Constrained SESF의 제한 중 하나이므로, 인코딩 조건 플래그를 참조함으로써 상기 정의를 만족시키는가를 판단할 수 있다.
도 83A는 상기 정의를 만족시키는 Constrained SESF로 포맷팅된 MPEG-TS 및 이것으로부터 변환된 MPEG-PS를 나타내는 도면이다.
PES 패킷(411, 412 또는 413)의 PES 패킷 헤더는 각각의 PES 패킷(411, 412 또는 413)에 포함된 오디오 프레임의 최초의 오디오 프레임(AF#1, AF#5 또는 AF#8)의 PTS 값(PTS#1, PTS#5 또는 PTS#8)을 포함한다.
첫 번째 다중화 단위(401)는 PES 패킷(411)의 모든 데이터, 및 PES 패킷(412)의 데이터의 일부를 포함한다.
첫 번째 다중화 단위(401)에 있어서의 최초의 완전한 오디오 프레임은 PES 패킷(411)의 페이로드 내의 최초의 오디오 프레임인 오디오 프레임 #1이므로, 상기 조건을 만족시킨다. 두 번째 다중화 단위(402)에 관해서는, 두 번째 다중화 단위(402)에 있어서의 최초의 완전한 오디오 프레임은 PES 패킷(413)의 페이로드 내의 최초의 오디오 프레임인 오디오 프레임 #8이므로, 상기 조건을 만족시킨다. 두 번째 다중화 단위(402)는 PES 패킷 헤더 직후에 오디오 프레임 #7의 후반부를 포함하고, 오디오 프레임 #7의 후반부는 오디오 프레임의 일부이고 완전한 오디오 프레임이 아닌 것을 유념해야 한다. 따라서, 이것은 상기 정의를 고려하여 이용된 조건이 아니다.
첫 번째 다중화 단위(401)에 포함된 PES 패킷(411)의 PES 패킷 헤더는, PES 패킷 헤더에 후속하는 오디오 프레임(AF)의 최초의 오디오 프레임 #1의 PTS 값(PTS#1)을 포함한다. 두 번째 다중화 단위(402)는, 두 번째 다중화 단위에 후속하는 오디오 프레임(AF)의 최초의 완전한 오디오 프레임 #8의 PTS 값(PTS#8)을 포함한다.
두 번째 다중화 단위(402)를 MPEG-PS로 변환하는 경우에, 다중화 단위(402)에 포함된 PES 패킷 헤더에 저장된 PTS 값인, 다중화 단위(402)에 포함된 PES 패킷 헤더에 저장된 PTS 값(PTS#8)의 값이, 수신처의 MPEG-PS의 PES 패킷 헤더에 그대로 복사된다. 따라서, PS2TS 변환시에 PTS 값을 복사하면 충분하므로, 처리가 간단하게 된다.
이어서, PES 패킷이 비디오 데이터를 포함하는 경우에 대하여 설명한다. 비디오 데이터를 포함하는 PES 패킷에 관한 Constrained SESF의 제한의 하나로서, I- 화상을 포함하는 PES 패킷이 다중화 단위의 선두로부터 시작하는 것을 정의할 수 있다.
도 83B는 상기 정의를 만족시키는 일례를 나타낸다. 도 83B에서, PES 패킷(416)은 I-화상을 포함하고, PES 패킷의 PES 패킷 헤더에는 I-화상의 PTS 값(PTS#2)이 저장된다. PES 패킷(416)은 다중화 단위(404)의 선두에 배치되어 있다.
변환된 MPEG-PS 팩에 있어서, PES 패킷 헤더(421)에 저장된 PTS 값(PTS#2)은 PES 패킷 헤더(421)의 직후의 I-화상을 가리킨다. 다중화 단위(403)에는 PES 패킷(415)의 페이로드에 포함된 P-화상이 저장된다. 다중화 단위의 나머지 부분에는 널(NULL) 패킷을 채워 넣고, 다음의 다중화 단위(404)에 I-화상을 배치한다.
다중화 단위(404)를 MPEG-PS로 변환하는 경우, 다중화 단위(404)의 PES 패킷 헤더의 값(PTS#2)을 MPEG-PS 팩의 PES 패킷 헤더(421)에 복사한다. 따라서, PTS를 복사하는 것만으로 충분하고 PTS를 연산할 필요가 없으므로, 처리가 간단하게 된다.
〈TS2PS 변환 처리〉
이어서, 도 68 내지 도 79의 플로차트를 참조하여 TS2PS 변환 처리를 이하에 상세하게 설명한다.
도 68은 TS2PS 변환의 주요 처리의 플로차트이다. 이 처리는 사용자가 TS2PS 변환 요구를 입력할 때 개시된다. 이어서, 정보기록장치는 변환이 개시되는 SESF 캡슐을 탐색하여(S11), 처리해야 하는 SESF 캡슐이 있는가를 판단한다(S12). 없으면 처리를 종료한다. SESF 캡슐이 있으면, 초기화 처리(S13) 및 캡슐 단위 처리 (S14)를 실행한다.
도 69의 플로차트를 참조하여 초기화 처리(S13)에 대해서 설명한다. 이 처리에서는, 이하의 처리에 사용되는 변수 및 기타 파라미터를 설정하고, 초기화한다.
우선, Tip 패킷이 판독되었는가를 판단한다(S21). Tip 패킷이 아직 판독되지 않은 경우, Tip 패킷을 판독한다(S22). 이어서, 변수 ATSTip에 판독된 Tip 패킷의 ATS 값을 설정하고(S23), 변수 PCRTip에 Tip 패킷의 PCR 값을 설정한다(S24). 처리중인 다중화 단위의 번호를 지정하는 변수 MU_num을 0에 설정하고(S25), ATS 오버플로의 회수를 나타내는 변수 WA를 0에 설정한다(S26).
도 70의 플로차트를 참조하여 캡슐 단위 처리(S14)에 대하여 설명한다. 이 처리는 TS 패킷을 판독하고(S31), 이어서 판독된 TS 패킷이 Tip 패킷인가를 판단함으로써(S32) 개시된다. Tip 패킷이면 처리를 종료한다. Tip 패킷이 아니면, 판독된 TS 패킷이 오디오 패킷 또는 비디오 패킷을 포함하는가를 판단한다(S33). 판독된 TS 패킷이 오디오 패킷 또는 비디오 패킷을 포함하지 않는 경우, 단계 S31로 복귀하고, 판독된 TS 패킷이 오디오 패킷 또는 비디오 패킷이 될 때까지 TS 패킷을 순차적으로 판독한다(S31∼S33을 반복).
판독된 TS 패킷이 오디오 패킷 또는 비디오 패킷이면, 후속하는 10개의 TS 패킷을 또한 판독한다(S34). 이어서, MU_num을 증가시킨다(S35). 다중화 단위의 선두 TS 패킷의 ATS 값을, 변수 ATS[MU_num]에 저장한다(S36). 다중화 단위에 저장된 PES 패킷의 페이로드 데이터의 바이트 길이를 payload_len에 설정한다(S37). 이어서 팩 단위 처리를 실행한다(S38).
팩 단위 처리는, 도 71의 플로차트에 나타내는 바와 같이, SCR 연산 처리(S41), 팩 헤더 처리(S42), 패킷 헤더 처리(S43), 페이로드 처리(S44) 및 패딩 패킷 처리(S45)를 포함한다. 이하에 이러한 처리에 대하여 설명한다.
도 72의 플로차트를 참조하여 SCR 연산 처리를 설명한다.
이 처리에서는, 팩의 SCR 값을 연산한다. 첫째 단계는, 변수 MU_num의 값을 참조하여, 다중화 단위가 SESF 캡슐의 최초 다중화 단위인가를 판단하는 것이다(S51). 최초 다중화 단위이면, 변수 ATS[0]에 ATSTip의 값을 설정하고, 변수 SCR[0]에 변수 PCRTip의 값을 설정한다(S52∼S53).
이어서, ATS[MU_num]과, ATS[MU_num-1]을 비교한다(S54). ATS[i]에는, 다중화 단위의 선두 패킷의 ATS 값이 저장되고, 이 ATS 값은, 특정 패킷을 기준으로 하는 상대적인 전송 타이밍을 나타낸다. 따라서, 각각의 이후의 패킷의 ATS 값은 통상적으로 이전의 패킷의 ATS 값보다도 더 크다. 그러나, ATS 값은 일반적으로 30 비트로써 표시되는 한정된 값이므로, ATS 오버플로가 발생할 수도 있다. 이 경우에는, 특정 패킷의 ATS 값이 선행하는 패킷의 ATS 값보다 더 작을 수도 있다. 단계 S54에서는, 이러한 ATS 값의 역전(逆轉)을 감시하여, ATS 오버플로가 발생했는가를 판단한다. ATS[MU_num]이 ATS[MU_num-1]보다 크지 않으면, 즉, ATS 오버플로가 발생한 경우, 변수 WA를 증가시킨다(S55).
이어서, SCR[MU_num-1]+T와, (PCRTip+ATS[MU_num]-ATSTip+WA×BS) 중 더 큰 것을 SCR[MU_num]에 설정한다(S56).
도 73의 플로차트를 참조하여 팩 헤더 처리를 설명한다.
이 처리에서는, 도 60에 나타내는 데이터 구조의 팩 헤더 데이터를 편집한다. SCR을 300으로 나누었을 때의 나머지 값을 SCR_extension에 대입하고(S61), 그 몫을 SCR_base에 설정한다(S62). program_mux_rate를 "0x6270"에 설정하고(S63), pack_stuffing_length를 "000b"에 설정한다(S64). 기타 필드를 적절하게 편집하여, 팩 헤더 데이터를 완성한다(S65).
도 74의 플로차트를 참조하여 패킷 헤더 처리를 설명한다.
이 처리는, 스트림 ID를 설정하는 스트림 ID 처리를 실행함으로써(S71) 개시된다. 이어서, 다중화 단위가 비디오 데이터를 포함하는가를 판단한다(S72). 다중화 단위가 비디오 데이터를 포함하면, 다중화 단위의 선두 TS 패킷이 PES 패킷 헤더를 포함하는가를 판단한다(S73). 다중화 단위의 선두 TS 패킷이 PES 패킷 헤더를 포함하면, 비디오 PES 패킷 선두 처리를 실행하고(S74), 그렇지 않은 경우, PES 패킷 비선두 처리를 실행한다(S75). 다중화 단위의 선두 TS 패킷이 PES 패킷 헤더를 포함하는가는, TS 패킷 헤더의 payload_unit_start_indicator 필드를 판독하거나, 또는 PES 패킷 헤더의 개시 코드가 저장되어 있는가를 직접 검출함으로써 판단할 수 있다.
반대로, 다중화 단위가 비디오 데이터를 포함하지 않는 경우, 다중화 단위가 PES 패킷 헤더를 포함하는가를 판단한다(S76). 다중화 단위가 PES 패킷 헤더를 포함하는 경우, 오디오 PES 패킷 선두 처리를 실행하고(S77), 그렇지 않은 경우, 오디오 PES 패킷 비선두 처리를 실행한다(S78).
도 75의 플로차트를 참조하여 스트림 ID 처리를 설명한다.
이 처리에서는, Stream-id 필드의 값을 설정한다. 처리중인 스트림의 종류가 "MPEG-2 비디오"이면, stream_id를 "0xE0"에 설정한다(S81, S82). 스트림의 종류가 "AC-3 오디오"이면, stream_id를 "0xBD"에 설정한다(S83, S84). 스트림의 종류가 "MPEG-1 오디오"이면서 "1차 오디오"인 경우에는, stream_id를 "0xC0"에 설정한다 (S85, S86, S87). 스트림의 종류가 "MPEG-1 오디오"이면서 "2차 오디오"인 경우는, stream_id를 "0xC1"에 설정한다(S85, S88, S89).
도 76A의 플로차트를 참조하여 PES 패킷 선두 처리를 설명한다.
도 81에는 MPEG 규격에 의한 PES 패킷의 구조가 상세하게 도시되어 있다. 이 처리에서는 도 81에 나타낸 구조에 따라서 PES 패킷 필드를 편집한다.
우선, 다중화 단위의 선두의 TS 패킷에 저장된 첫 번째의 PES 패킷 헤더와 동일한 PES 패킷 헤더를, 변환된 MPEG-PS의 PES 패킷 헤더로서 생성한다(S91). 이어서, PES_packet_length를 이하의 식에서 연산한 값에 설정한다(S92).
PES_packet_length=(3+PES_header_data_length)+payload_len
이어서, PES_extension_flag가 1인가를 판단한다(S93). PES_extension_flag가 "1"인 경우에는, PES_private_data_flag로부터 P_STD_buffer_size까지의 3 바이트를, 소정의 값(0x1E60E8)으로 고쳐쓴다(S94).
도 76B의 플로차트를 참조하여 비디오 PES 패킷 비선두 처리를 설명한다.
PES 패킷 헤더를 잠정적인 값(0x000001E007EC800001FF)에 설정한다(S111). (2025-payload_len)의 값이 1과 8 사이에 있는가를 판단한다(S112).
(2025-payload_len)의 값이 8 이상이면, 제어는 단계 S116으로 진행한다.
(2025-payload_len)의 값이 1과 8의 사이인 경우, PES_header_data_length를 (2025-payload_len)에 설정하고(S113), PES_packet_length를 이하의 식에 의해서 결정된 값에 설정한다(S114).
PES_packet_length=(3+PES_header_data_length)+payload_len
이어서, (2024-payload_len) 바이트의 길이의 스터핑(stuffing) 바이트로써 스터핑하고, 제어는 단계 S116으로 진행한다.
단계 S116에서, (2025-payload_len)의 값이 8 이상인 것을 판단한다. 이 값이 8 이상이면, PES_header_data_length를 0에 설정하고(S117), PES_packet_length를 이하의 식으로써 연산한 값에 설정한다(S118).
PES_packet_length=3+payload_len
이어서, 1 바이트의 스터핑 바이트를 스터핑 바이트로부터 제거한다(S119).
도 77A를 참조하여 오디오 PES 패킷 선두 처리를 설명한다.
우선, 다중화 단위에서 첫 번째로 출현하는 PES 패킷 헤더와 동일한 PES 패킷 헤더를, 변환된 MPEG-PS의 PES 패킷 헤더로서 생성한다(S181). 이어서, PES_packet_length를 이하의 식에서 연산한 값에 설정한다(S182).
PES_packet_length=(3+PES_header_data_length)+payload_len
이어서, PES_extension_flag가 1인가를 판단한다(S183). PES_extension_flag가 "1"인 경우에는, P_STD_buffer_flag를 1에 설정한다(S184). 이어서, 오디오 데이터가 AC-3 오디오인가를 판단한다(S185). 오디오 데이터가 AC-3 오디오인 경우, PES_extention_flag_2에 후속하는 2 바이트를 소정의 값(0x603A)에 설정한다 (S186). 오디오 데이터가 AC-3 오디오가 아닌 경우, PES_extention_flag_2에 후속하는 2 바이트를 소정의 값(0x4020)에 설정한다(S187).
도 77B를 참조하여 오디오 PES 패킷 비선두 처리를 설명한다.
stream_id가 "0xBD"인가, 즉, 오디오 데이터가 AC-3 오디오인가를 판단한다(S191). stream_id가 "0xBD"인 경우, PES 패킷 헤더를 잠정적인 값(0x000001BD0000800004FFFFFFFF)에 설정한다(S192). 이어서, PES_packet_length를 이하의 식에 의해서 결정된 값에 설정한다(S193).
PES_packet_length=7+payload_len
stream_id가 "0xBD"가 아닌 경우, stream_id가 "0xC0"인가, 즉, 오디오 데이터가 MPEG-1 기본 오디오인가를 판단한다(S194). 오디오 데이터가 MPEG-1 기본 오디오인 경우, PES 패킷 헤더를 잠정적인 값(0x000001C00C00800000)에 설정한다(S195). MPEG-1 기본 오디오가 아닌 경우, PES 패킷 헤더를 잠정적인 값(0x000001C10000800000)에 설정한다(S196). 이어서, PES_packet_length를 이하의 식에 의해서 결정된 값에 설정한다(S197).
PES_packet_length=3+payload_len
도 78의 플로차트를 참조하여 페이로드 처리를 설명한다.
변수 i에 1을 설정하고(S121), i 번째의 TS 패킷에 저장된 PES 패킷의 페이로드 데이터를 판독한다(S122). 이어서, i 번째의 TS 패킷에 저장된 PES 패킷의 페이로드 데이터를 팩의 페이로드에 추가하고(S123), 변수 i를 증가시킨다(S124). 이들 단계를 변수 i가 12를 초과하지 않을 때까지 반복한다(S125). 즉, 하나의 다중화 단위에 포함되는 모든 TS 패킷이 처리될 때까지 이 처리를 반복한다(S122∼S125).
이어서, 도 79의 플로차트를 참조하여 패딩 패킷 처리를 설명한다.
PES_packet_length가 2028에 설정되어 있는가를 판단한다(S131). PES_packet_length가 2028이 아니면, 패딩 패킷의 PES_packet_length를 {(2028-PES_packet_length)-6}에 설정하고(S132), 페이로드 이후에 패딩 패킷을 추가한다(S133).
상기에서 설명한 방법으로 변환된 MPEG-2의 PES 패킷에 기술된 PTS는, 다중화 단위에서 첫 번째로 나타나는 PES 패킷 헤더를 참조하여 설정될 수 있다(도 83A 및 83B 참조).
또한, 비디오 PES 패킷의 길이를 나타내는 PES_packet_length가 상기에서 0에 설정되어 있으므로, 팩으로의 변환후의 패킷 헤더의 PES_packet_length를, 팩에의 데이터 기록이 완료될 때까지 확정할 수 없는 문제가 있다. SESF 캡슐내의 각각의 비디오 PES 패킷의 PES_packet_length를 Tip 패킷에 기록할 수도 있다. 따라서, PES_packet_length를 TS 패킷 단위의 순차적인 처리로써 결정할 수 있고, 변환을 더욱 더 신속하게 진행할 수 있다.
또한, 팩 헤더(SCR)를 TS2PS 변환시에 연산하는 것으로 상기에서 설명했지만, MPEG_TS에 저장되는 PES 패킷 헤더에 팩 헤더를 미리 저장할 수 있다. 예로서, PES 패킷 헤더의 pack_header_field_flag를 1b에 설정하여, PES 패킷 헤더에 TS2PS 변환후의 팩 헤더를 저장할 수도 있다. 그 팩 헤더를 저장하는 팩에 저장된 데이터는, 그 TS 패킷으로부터 소정의 규칙(예로서, TS 패킷에 대한 소정의 개수)에 의해 서 결정되는 TS 패킷까지의 TS 패킷에 저장된 데이터를 포함한다.
(연속하는 STC 구간에서의 비디오 화상의 제한)
도 84A에 나타내는 바와 같이, 연속하는 STC(system tatget decoder reference time clock) 구간에서는, 첫 번째의 완전한 SESF 캡슐에서 첫 번째로 표시되는 비디오 화상(pf)이 톱 필드이고, 최종의 완전한 SESF 캡슐에서 마지막으로 표시되는 비디오 화상(pl)이 보텀 필드일 수도 있다. 도 84B는 이러한 규칙을 만족시키지 않는 경우를 나타내고, 이 경우에 첫 번째의 완전한 SESF 캡슐에서 첫 번째로 표시되는 비디오 화상(pf)이 보텀 필드이고, 최종의 완전한 SESF 캡슐에서 마지막으로 표시되는 비디오 화상(pl)이 톱 필드이다. 완전한 SESF 캡슐의 연속하는 STC 구간에서 비디오 화상의 표시 방법을 상기와 같이 제한하는 이유는, DVD-Video의 VOB로의 변환시에(기록된 스트림의 편집을 실행하지 않는 경우) 비디오 스트림의 재인코딩을 방지할 수 있기 때문이다. 이것은, DVD 규격이, 하나의 VOB의 비디오 데이터를 톱 필드에서 시작하여 보텀 필드에서 종료하도록 재생할 것을 요구하기 때문이다.
상기 제한은 Constrained SESF의 제한 중 하나이므로, 인코딩 조건 플래그를 참조함으로써 상기 제한을 만족시키는가를 판단할 수 있다. 즉, 이 플래그를 참조하여, 연속하는 STC 구간에서, 첫 번째의 완전한 SESF 캡슐에서 첫 번째로 표시되는 비디오 화상이 톱 필드이고, 최종의 완전한 SESF 캡슐에서 마지막으로 표시되는 비디오 화상이 보텀 필드인 것을 판단할 수 있다.
도 85는 상기 제한이 부여된 Constrained SESF에 따른 기록 처리의 플로차트 이다.
우선, 연속하는 STC의 생성을 개시한다(S201). 이어서, 미리 설정된 인코딩 조건을 취득한다(S202). 사용자 및 기록장치 등의 초기 설정에 인코딩 조건의 값이 미리 설정되어 있다. 인코딩 조건이 "11b"인가를 판단한다(S203). 인코딩 조건이 "11b"(DVD-Video 모드로 기록되어 있음)인 경우, 첫 번째의 완전한 SESF 캡슐을 인코딩중인가를 판단한다(S208). 첫 번째의 완전한 SESF 캡슐을 인코딩중인 경우, 첫 번째의 완전한 SESF 캡슐에서 첫 번째로 표시되는 화상이 톱 필드가 되도록 인코딩 처리를 실행한다(S209). 이어서, "11b"인 인코딩 조건의 요구를 만족시키는 Constrained SESF로서 데이터를 인코딩한다(S210).
인코딩 조건이 "01b"(DVD-Video Recording 모드로 기록되어 있음)인 경우, "01b"인 인코딩 조건의 요구를 만족시키는 Constrained SESF로서 데이터를 인코딩한다(S204).
이어서, SESF 캡슐이 완성될 때마다 시간 맵(time map) 정보를 갱신한다(S205). 기록이 종료되었는가를 판단한다(S206). 기록이 종료된 경우, 기록 종료 처리를 실행한다(S207). 기록이 종료될 때까지 상기 단계 S203∼S205를 반복한다.
기록 종료 처리를 도 86을 참조하여 설명한다.
인코딩 조건이 "11b"인가를 판단한다(S211). 인코딩 조건이 "11b"인 경우, 최종의 완전한 SESF 캡슐에서 최종으로 표시되는 화상이 보텀(bottom) 화상인가를 판단한다(S212). 상기 화상이 보텀 화상이 아닌 경우, 새로운 SESF를 생성하거나 또는 인코딩중인 SESF를 완성하고 마지막으로 표시되는 화상이 보텀 화상이 되도 록, 종료 처리를 실행한다(S213).
인코딩 조건이 "11b"가 아닌 경우, "01b"인 인코딩 조건의 요구를 만족시키는 최종 SESF 캡슐을 생성한다(인코딩이 종료됨)(S214).
이어서, 시간 맵(time map) 정보를 완성하여 기록매체에 기록한다(S215).
상기 설명에서는, MPEG-PS로부터 MPEG-TS로의 역변환을 설명하지 않았지만, 마찬가지로 TS2PS 변환의 역(逆)으로서 생각할 수 있다.
예로서, 하나의 PS 팩을 복수의 연속하는 TS 패킷으로 변환하고, 복수의 연속하는 TS 패킷간의 ATS의 증분(增分)이 고정치이고, 또한 이러한 정보를 디스크 또는 스트림에 저장하는 것을 고려할 수 있다.
MPEG-PS의 클립(clip)의 타이틀(콘텐츠를 나타내는 프로그램 정보 등)이 SIT 패킷에 저장되어서 MPEG-TS로 변환되어 있는 경우, STB 등 디코더로써 원래의 프로그램 타이틀을 표시할 수 있게 된다.
상기한 본 발명의 정보기록장치 및 방법에 의하면, 외부 입력된 AV 데이터를 MPEG 트랜스포트 스트림 포맷으로 자체 인코딩할 때에, 디코더 호환성을 유지하면서 스트림을 효율적으로 인코딩하고 디코딩할 수 있다.
또한, 정보기록매체에 기록되는 스트림에 사용자 전용 정보를 저장할 수 있으므로, MPEG 트랜스포트 스트림 포맷의 기록 콘텐츠의 부가 가치를 높일 수 있다.
또한, 정보기록매체에 기록되는 MPEG_TS를, 효율적으로 또한 용이하게 MPEG_PS로 변환할 수 있도록, 스트림이 2 KB 이하의 블록 단위로 다중화되므로, 버퍼 관리를 고려하지 않고 MPEG_TS를 MPEG_PS로 매우 용이하게 변환할 수 있다.
상기한 본 발명에 의한 데이터 처리를 컴퓨터로 실행하는 소정의 프로그램으로써 실현할 수 있는 것을 이해하여야 한다. 상기 프로그램을 플로피 디스크, 하드 디스크, CD-ROM 등, 컴퓨터로써 판독 가능한 정보기록매체에 저장할 수 있다.
본 발명을, 첨부 도면을 참조로 하여 바람직한 실시형태에 대해서 설명하였지만, 당업자에게는 다양한 변경 및 변형이 명백히 있을 수 있는 것을 염두에 두어야 한다. 이러한 변경 및 변형은 첨부한 청구범위에 의해서 정의된 본 발명의 범위로부터 벗어나지 않는 한 본 발명의 범위내에 포함되는 것으로 이해하여야 한다. 본 발명의 개시는 2003년 4월 10일에 출원되고, 여기에 참조로서 전체적으로 특별히 포함되는 일본국 특허 출원 제2003-106399호에 포함된 주제에 관한 것이다.

Claims (18)

  1. 비디오 정보를 인코딩함으로써 생성된 비디오 기본 스트림과 오디오 정보를 인코딩함으로써 생성된 오디오 기본 스트림을 다중화하여 포함하고 있는 시스템 스트림을 저장하는 기록매체에 있어서,
    상기 시스템 스트림은 제1포맷(TS)을 갖도록 허용되고, 상기 제1포맷(TS)은 데이터를 패킷(packets)으로 분할하여 저장하는 구조를 갖고, 상기 제1포맷은 제1포맷(TS)으로부터 제2포맷(PS)으로 상기 시스템 스트림을 변환하기 위해 이용되는 제한 포맷(constrained format)을 갖도록 허용되며, 상기 제2포맷(PS)은 데이터를 팩(packs)으로 분할하여 저장하는 구조를 가지며, 상기 팩은 상기 패킷보다 크기가 크고,
    상기 제한 포맷에 따라서,
    모든 패킷 중에서 비디오 정보 또는 오디오 정보를 저장하는 소정의 개수의 패킷이 다중화 단위(multiplexing unit)로서 시스템 스트림으로 다중화되고, 상기 다중화 단위는 그 크기가 팩에 저장될 데이터보다 크지 않은 오디오 정보 또는 비디오 정보의 데이터를 포함하고,
    상기 다중화 단위는 제1포맷(TS)으로부터 제2포맷(PS)으로 시스템 스트림을 변환하는 처리에서의 단위이고,
    완전한 데이터 블록은 데이터가 전부 채워져 있는 데이터 블록으로 정의되고,
    비디오 정보를 포함하고 있는 최초의 완전한 데이터 블록의 비디오 정보의 표시는, 연속하는 기준 표시 시간(STC)을 갖는 한 시퀀스(sequence)의 패킷에 의해 정해지는 섹션에서, 톱 필드(top field)에서 시작하는 것을 특징으로 하는 기록매체.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 비디오 정보 및 오디오 정보를 시스템 스트림으로 인코딩하여 기록매체에 기록하는 정보기록장치에 있어서,
    상기 시스템 스트림은 제1포맷(TS)을 갖도록 허용되고,
    상기 제1포맷(TS)은 데이터를 패킷으로 분할하여 저장하는 구조를 갖고,
    상기 정보기록장치는,
    상기 제1포맷(TS)에 따라서, 비디오 정보 및 오디오 정보를 인코딩하여, 비디오 기본 스트림 및 오디오 기본 스트림을 생성할 수 있는 제1인코딩부와,
    상기 제1포맷(TS)에 따라서, 상기 비디오 기본 스트림과 오디오 기본 스트림을 다중화하여 시스템 스트림을 생성하는 시스템 인코딩을 실행할 수 있는 제2인코딩부와,
    상기 제1인코딩부 및 제2인코딩부를 제어할 수 있는 제어부를 포함하고,
    상기 제1포맷(TS)은 제1포맷(TS)으로부터 제2포맷(PS)으로 시스템 스트림을 변환하기 위해 이용되는 제한 포맷을 갖도록 허용되고, 상기 제2포맷(PS)은 데이터를 팩으로 분할하여 저장하는 구조를 가지며, 상기 팩은 상기 패킷보다 크기가 크고,
    상기 제어부는, 상기 제1 및 제2인코딩부 각각에 대해, 상기 제한 포맷에 따라 인코딩되도록 제어하고,
    상기 제한 포맷에 따라서,
    모든 패킷 중에서 비디오 정보 또는 오디오 정보를 저장하는 소정의 개수의 패킷이 다중화 단위로서 시스템 스트림으로 다중화되고, 상기 다중화 단위는 그 크기가 팩에 저장될 데이터보다 크지 않은 오디오 정보 또는 비디오 정보의 데이터를 포함하고,
    상기 다중화 단위는 제1포맷(TS)으로부터 제2포맷(PS)으로 시스템 스트림을 변환하는 처리에서의 단위이고,
    완전한 데이터 블록은 데이터가 전부 채워져 있는 데이터 블록으로 정의되고,
    비디오 정보를 포함하고 있는 최초의 완전한 데이터 블록의 비디오 정보의 표시는, 연속하는 기준 표시 시간(STC)을 갖는 한 시퀀스의 패킷에 의해 정해지는 섹션에서, 톱 필드에서 시작하는 것을 특징으로 하는 정보기록장치.
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 비디오 정보 및 오디오 정보를 시스템 스트림으로 인코딩하여 기록매체에 기록하는 정보기록방법에 있어서,
    상기 시스템 스트림은 제1포맷(TS)을 갖도록 허용되고,
    상기 제1포맷(TS)은 데이터를 패킷으로 분할하여 저장하는 구조를 갖고,
    상기 제1포맷(TS)은 제1포맷(TS)으로부터 제2포맷(PS)으로 시스템 스트림을 변환하기 위해 이용되는 제한 포맷을 갖도록 허용되고, 상기 제2포맷(PS)은 데이터를 팩으로 분할하여 저장하는 구조를 가지며, 상기 팩은 상기 패킷보다 크기가 크고,
    상기 정보기록방법은,
    상기 제1포맷(TS)에 따라, 비디오 정보 및 오디오 정보를 인코딩하여, 비디오 기본 스트림 및 오디오 기본 스트림을 생성하고,
    상기 제1포맷(TS)에 따라, 상기 비디오 기본 스트림 및 오디오 기본 스트림을 다중화하여, 상기 시스템 스트림을 생성하는 시스템 인코딩을 실행하고,
    상기 제한 포맷에 따라서,
    모든 패킷 중에서 비디오 정보 또는 오디오 정보를 저장하는 소정의 개수의 패킷이 다중화 단위로서 시스템 스트림으로 다중화되고, 상기 다중화 단위는 그 크기가 팩에 저장될 데이터보다 크지 않은 오디오 정보 또는 비디오 정보의 데이터를 포함하고,
    상기 다중화 단위는 제1포맷(TS)으로부터 제2포맷(PS)으로 시스템 스트림을 변환하는 처리에서의 단위이고,
    완전한 데이터 블록은 데이터가 전부 채워져 있는 데이터 블록으로 정의되고,
    비디오 정보를 포함하고 있는 최초의 완전한 데이터 블록의 비디오 정보의 표시는, 연속하는 기준 표시 시간(STC)을 갖는 한 시퀀스의 패킷에 의해 정해지는 섹션에서, 톱 필드에서 시작하는 것을 특징으로 하는 정보기록방법.
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
KR1020057019211A 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법 KR101030176B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2003-00106399 2003-04-10
JP2003106399 2003-04-10

Related Child Applications (2)

Application Number Title Priority Date Filing Date
KR1020097007092A Division KR100985281B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법
KR1020097007091A Division KR100985243B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20050121257A KR20050121257A (ko) 2005-12-26
KR101030176B1 true KR101030176B1 (ko) 2011-04-18

Family

ID=33156913

Family Applications (6)

Application Number Title Priority Date Filing Date
KR1020097007090A KR100970288B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법
KR1020057019209A KR101030155B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및방법
KR1020097007092A KR100985281B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법
KR1020057019211A KR101030176B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법
KR1020097007091A KR100985243B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법
KR1020097007089A KR100985235B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법

Family Applications Before (3)

Application Number Title Priority Date Filing Date
KR1020097007090A KR100970288B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법
KR1020057019209A KR101030155B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및방법
KR1020097007092A KR100985281B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020097007091A KR100985243B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법
KR1020097007089A KR100985235B1 (ko) 2003-04-10 2004-04-07 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법

Country Status (9)

Country Link
US (7) US7274861B2 (ko)
EP (5) EP1617662B1 (ko)
JP (2) JP3779985B2 (ko)
KR (6) KR100970288B1 (ko)
CN (5) CN101540924B (ko)
CA (1) CA2522022C (ko)
DE (4) DE602004027677D1 (ko)
ES (3) ES2347788T3 (ko)
WO (2) WO2004091209A1 (ko)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101540924B (zh) * 2003-04-10 2011-02-16 松下电器产业株式会社 将信息记录到信息记录介质的装置及方法
KR20050036228A (ko) * 2003-10-15 2005-04-20 삼성전자주식회사 멀티미디어 재생을 관리하는 장치 및 방법
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
KR20050062197A (ko) * 2003-12-20 2005-06-23 엘지전자 주식회사 캡션 데이터의 표시방법
JP4210939B2 (ja) * 2004-12-10 2009-01-21 ソニー株式会社 画像記録装置および方法、並びにプログラム
US20060215694A1 (en) * 2005-03-22 2006-09-28 Mediatek Incorporation Contention-free burst method for media access control over networks
JP4270161B2 (ja) * 2005-04-15 2009-05-27 ソニー株式会社 情報記録再生システム、情報記録再生装置及び情報記録再生方法
JP2007081813A (ja) * 2005-09-14 2007-03-29 Canon Inc 記録装置
WO2007106844A2 (en) 2006-03-14 2007-09-20 Divx, Inc. Federated digital rights management scheme including trusted systems
US20080037956A1 (en) * 2006-06-30 2008-02-14 Scientific-Atlanta, Inc. Systems and Methods of Generating Encapsulated MPEG Program Streams
JP2008109313A (ja) * 2006-10-24 2008-05-08 Funai Electric Co Ltd 映像音声記録再生装置
EP2051421A4 (en) * 2006-10-31 2011-10-26 Panasonic Corp MULTIPLEXING DEVICE, INTEGRATED CIRCUIT, MULTIPLEXING METHOD, MULTIPLEXING PROGRAM, COMPUTER READABLE RECORDING MEDIUM WITH A MULTIPLEXING PROGRAM RECORDED THEREIN AND COMPUTER READABLE RECORDING MEDIUM WITH MULTIPLEXING CURRENTLY RECORDED THEREOF
JP4755257B2 (ja) * 2006-11-16 2011-08-24 富士通セミコンダクター株式会社 Gop間管理装置
EP2122482B1 (en) 2007-01-05 2018-11-14 Sonic IP, Inc. Video distribution system including progressive playback
JP2009081591A (ja) * 2007-09-26 2009-04-16 Hitachi Ltd 映像機器の内部情報の記録方法および記録装置
JP2009111882A (ja) * 2007-10-31 2009-05-21 Toshiba Corp 動画像およびオーディオ再生装置およびオーディオ再生方法
WO2009065137A1 (en) 2007-11-16 2009-05-22 Divx, Inc. Hierarchical and reduced index structures for multimedia files
JP4296221B1 (ja) * 2008-04-30 2009-07-15 株式会社東芝 映像処理装置及び映像処理方法
KR101349487B1 (ko) 2009-06-24 2014-01-08 한국전자통신연구원 패킷의 길이가 가변적인 mpeg-2 트랜스포트 패킷 생성 장치 및 방법
US20110129199A1 (en) * 2009-11-23 2011-06-02 General Instrument Corporation Facilitating playback of recorded content containing a service transition
EP2507995A4 (en) 2009-12-04 2014-07-09 Sonic Ip Inc SYSTEMS AND METHODS FOR TRANSPORTING ELEMENTARY BIT TRAIN CRYPTOGRAPHIC MATERIAL
KR101977689B1 (ko) * 2010-08-19 2019-05-14 삼성전자주식회사 다계층 영상 부호화 및 복호화 방법 및 장치
US8914534B2 (en) 2011-01-05 2014-12-16 Sonic Ip, Inc. Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol
CN103688550B (zh) * 2011-02-11 2019-01-22 英特尔公司 用于通过穿过机制的媒体流的方法、设备和装置
KR101240510B1 (ko) * 2011-02-17 2013-03-11 건국대학교 산학협력단 감귤 과피에서 추출한 식이섬유를 첨가한 계육 유화형 소시지의 제조방법
US8812662B2 (en) 2011-06-29 2014-08-19 Sonic Ip, Inc. Systems and methods for estimating available bandwidth and performing initial stream selection when streaming content
KR102163151B1 (ko) 2011-08-30 2020-10-08 디빅스, 엘엘씨 복수의 최대 비트레이트 레벨들을 사용하여 인코딩된 비디오를 인코딩하고 스트리밍하기 위한 시스템들 및 방법들
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
US8799647B2 (en) 2011-08-31 2014-08-05 Sonic Ip, Inc. Systems and methods for application identification
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US8964977B2 (en) 2011-09-01 2015-02-24 Sonic Ip, Inc. Systems and methods for saving encoded media streamed using adaptive bitrate streaming
US8918908B2 (en) 2012-01-06 2014-12-23 Sonic Ip, Inc. Systems and methods for accessing digital content using electronic tickets and ticket tokens
US9936267B2 (en) 2012-08-31 2018-04-03 Divx Cf Holdings Llc System and method for decreasing an initial buffering period of an adaptive streaming system
US9313510B2 (en) 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US9906785B2 (en) 2013-03-15 2018-02-27 Sonic Ip, Inc. Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata
US10397292B2 (en) 2013-03-15 2019-08-27 Divx, Llc Systems, methods, and media for delivery of content
US9094737B2 (en) 2013-05-30 2015-07-28 Sonic Ip, Inc. Network video streaming with trick play based on separate trick play files
US9100687B2 (en) 2013-05-31 2015-08-04 Sonic Ip, Inc. Playback synchronization across playback devices
US9380099B2 (en) 2013-05-31 2016-06-28 Sonic Ip, Inc. Synchronizing multiple over the top streaming clients
US9386067B2 (en) 2013-12-30 2016-07-05 Sonic Ip, Inc. Systems and methods for playing adaptive bitrate streaming content by multicast
US9866878B2 (en) 2014-04-05 2018-01-09 Sonic Ip, Inc. Systems and methods for encoding and playing back video at different frame rates using enhancement layers
CA2952847A1 (en) 2014-08-07 2016-02-11 Sonic Ip, Inc. Systems and methods for protecting elementary bitstreams incorporating independently encoded tiles
KR102012682B1 (ko) 2015-01-06 2019-08-22 디브이엑스, 엘엘씨 디바이스들간에 콘텐트를 인코딩 및 공유하기 위한 시스템들 및 방법들
KR101897959B1 (ko) 2015-02-27 2018-09-12 쏘닉 아이피, 아이엔씨. 라이브 비디오 인코딩 및 스트리밍에서의 프레임 복제 및 프레임 확장을 위한 시스템 및 방법
US10075292B2 (en) 2016-03-30 2018-09-11 Divx, Llc Systems and methods for quick start-up of playback
US10231001B2 (en) 2016-05-24 2019-03-12 Divx, Llc Systems and methods for providing audio content during trick-play playback
US10129574B2 (en) 2016-05-24 2018-11-13 Divx, Llc Systems and methods for providing variable speeds in a trick-play mode
US10148989B2 (en) 2016-06-15 2018-12-04 Divx, Llc Systems and methods for encoding video content
TWI617187B (zh) * 2016-08-15 2018-03-01 晨星半導體股份有限公司 多媒體處理系統與其控制方法
US10498795B2 (en) 2017-02-17 2019-12-03 Divx, Llc Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming
WO2020191406A1 (en) 2019-03-21 2020-09-24 Divx, Llc Systems and methods for multimedia swarms

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000324070A (ja) 1999-05-14 2000-11-24 Sony Corp データ変換方法とデータ変換装置およびデータ送出システム
JP2002344888A (ja) 2001-05-17 2002-11-29 Matsushita Electric Ind Co Ltd 情報記録媒体
JP2003009086A (ja) 2001-06-22 2003-01-10 Matsushita Electric Ind Co Ltd 映像記録装置及び記録方法

Family Cites Families (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US535857A (en) * 1895-03-19 Fireproof partition or wall
US614490A (en) * 1898-11-22 Patrick mcenany
US731422A (en) * 1903-03-23 1903-06-23 Vincent G Apple Zinc cup for primary batteries.
US805465A (en) * 1904-09-30 1905-11-28 Jesse A Hulwick Burial apparatus.
US1032203A (en) * 1911-07-20 1912-07-09 Harold Duncan Grinnell Electric gas-lighter.
US1083632A (en) * 1912-02-08 1914-01-06 Paul Richter Tire.
US1085465A (en) * 1912-03-23 1914-01-27 L G Wade Automobile power plant.
KR930000096Y1 (ko) * 1989-12-18 1993-01-09 삼성전관 주식회사 수평발진 주파수 변화에 따른 고압 안정화 회로
US5392344A (en) 1991-10-03 1995-02-21 At&T Corp. Communications network class-of-service routing
JP3105070B2 (ja) 1992-04-27 2000-10-30 パイオニアビデオ株式会社 ディスク状記録媒体
JPH08123953A (ja) 1994-10-21 1996-05-17 Mitsubishi Electric Corp 画像処理装置
US5619337A (en) * 1995-01-27 1997-04-08 Matsushita Electric Corporation Of America MPEG transport encoding/decoding system for recording transport streams
JP3089974B2 (ja) 1995-02-13 2000-09-18 日本ビクター株式会社 信号記録方法及び映像信号処理装置
JP3732867B2 (ja) 1995-03-09 2006-01-11 株式会社ルネサステクノロジ 画像伸張装置
JP3269768B2 (ja) 1996-01-16 2002-04-02 株式会社東芝 ディジタル信号受信装置
JPH09247119A (ja) * 1996-03-11 1997-09-19 Oki Electric Ind Co Ltd 多重化装置
DE69732874T2 (de) 1996-05-02 2006-04-20 Sony Corp. Kodierung, Speicherung und Übertragung von digitalen Signalen
JP3867342B2 (ja) 1996-05-02 2007-01-10 ソニー株式会社 符号化装置および方法、伝送方法、並びに信号記録媒体
JP3589372B2 (ja) * 1996-06-07 2004-11-17 ソニー株式会社 データ多重化方法
JPH10154373A (ja) * 1996-09-27 1998-06-09 Sony Corp データデコードシステムおよびデータデコード方法、伝送装置および方法、並びに、受信装置および方法
JPH10145753A (ja) 1996-11-15 1998-05-29 Sony Corp 受信装置および方法
JPH10210504A (ja) 1997-01-17 1998-08-07 Toshiba Corp 副映像カラーパレット設定システム
JPH10269706A (ja) 1997-03-27 1998-10-09 Sony Corp 情報再生装置及び情報再生方法
US6618396B1 (en) 1997-07-29 2003-09-09 Matsushita Electric Ind Co Ltd Data transmitting device, data receiving device, and data recording device
JP4150083B2 (ja) * 1997-09-25 2008-09-17 ソニー株式会社 符号化ストリーム生成装置及び方法、ならびに編集システム及び方法
JPH11127438A (ja) 1997-10-21 1999-05-11 Toshiba Corp 動画復号化装置用メモリ管理方法及びその装置
KR100526218B1 (ko) * 1997-12-15 2005-11-04 마츠시타 덴끼 산교 가부시키가이샤 광디스크, 기록장치, 기록 프로그램을 저장하는 컴퓨터 판독가능 저장매체 및 기록방법
TW439054B (en) 1998-04-08 2001-06-07 Matsushita Electric Ind Co Ltd Optical disc, optical disc recording method and apparatus, and optical disc reproducing method and apparatus
JP3844877B2 (ja) * 1998-04-08 2006-11-15 パイオニア株式会社 ストリーム変換装置
JP3262338B2 (ja) * 1998-05-07 2002-03-04 株式会社東芝 記録内容表示装置及び記録内容表示方法
JP3356991B2 (ja) 1998-06-17 2002-12-16 株式会社日立製作所 光ディスク、記録方法、記録装置、再生方法及び再生装置
KR100304644B1 (ko) * 1998-06-19 2001-11-02 윤종용 네트워크를통한정보전송장치및방법
US7336712B1 (en) 1998-09-02 2008-02-26 Koninklijke Philips Electronics N.V. Video signal transmission
US6973258B1 (en) * 1998-10-02 2005-12-06 Lg Electronics Inc. Method and apparatus for recording digital data streams
JP3152651B2 (ja) 1998-10-12 2001-04-03 松下電器産業株式会社 情報記録媒体、情報記録媒体に情報を記録、再生する装置および方法
CN100498967C (zh) 1998-10-12 2009-06-10 松下电器产业株式会社 信息记录介质及用于记录或再现数据的装置和方法
JP3602728B2 (ja) * 1998-10-22 2004-12-15 株式会社東芝 ディジタルビデオディスクプレーヤ及び画像表示装置
KR100345235B1 (ko) 1998-11-08 2005-07-29 엘지전자 주식회사 디지털데이터스트림기록방법및그장치
WO2000030357A1 (en) 1998-11-13 2000-05-25 Thomson Licensing S.A. Apparatus for digital television signal on a digital storage medium
CA2289958C (en) * 1998-11-19 2003-01-21 Tomoyuki Okada Information recording medium, apparatus and method for recording or reproducing data thereof
EP1021048A3 (en) 1999-01-14 2002-10-02 Kabushiki Kaisha Toshiba Digital video recording system and its recording medium
BR0004370A (pt) * 1999-02-05 2000-12-19 Sony Corp Aparelhos e processos de codificação e de decodificação e sistema e método de codificação
WO2000049617A1 (en) * 1999-02-17 2000-08-24 Matsushita Electric Industrial Co., Ltd. Information recording medium, apparatus and method for performing after-recording on the recording medium
JP2000312341A (ja) 1999-02-26 2000-11-07 Sony Corp データ伝送装置および方法、記録装置、ならびに、記録再生装置
EP1032203A3 (en) 1999-02-26 2002-11-06 Sony Corporation Data transmitting apparatus and method thereof, recording apparatus, and recording and reproducing apparatus
KR100540645B1 (ko) * 1999-03-03 2006-01-10 삼성전자주식회사 Dvd 정보 전송 장치 및 그 방법
WO2000068946A1 (fr) * 1999-05-07 2000-11-16 Kabushiki Kaisha Toshiba Structure de donnees pour donnees en continu, et procede d'enregistrement et de reproduction de donnees en continu
EP1126454A4 (en) * 1999-07-07 2004-11-24 Matsushita Electric Ind Co Ltd AUDIOVISUAL PRINT RECORDING DEVICE AND METHOD, DISK RECORDED BY THIS DEVICE AND METHOD, AUDIOVISUAL DATA REPRODUCTION DEVICE AND METHOD THEREFOR
JP3162044B2 (ja) 1999-07-09 2001-04-25 松下電器産業株式会社 光ディスク、その記録装置、再生装置、記録方法および再生方法
EP1085767B1 (en) * 1999-09-20 2011-08-10 Panasonic Corporation An encoding/recording device that suspends encoding for video data and sampling for an audio signal in response to a recording pause instruction so as to allow data recorded before and after recording pause to be continuously reproduced
GB9930787D0 (en) * 1999-12-30 2000-02-16 Koninkl Philips Electronics Nv Method and apparatus for convrerting data streams
GB9930788D0 (en) * 1999-12-30 2000-02-16 Koninkl Philips Electronics Nv Method and apparatus for converting data streams
JP3435398B2 (ja) 2000-11-24 2003-08-11 株式会社東芝 コンテンツ配信方法及びコンテンツデータ記録再生方法及び装置
JP2002290894A (ja) 2001-03-26 2002-10-04 Mitsubishi Electric Corp ディジタルビデオデータ記録/再生装置
JP4458714B2 (ja) * 2001-06-20 2010-04-28 富士通マイクロエレクトロニクス株式会社 画像復号装置、画像復号方法、および、プログラム
GB0116119D0 (en) * 2001-06-30 2001-08-22 Koninkl Philips Electronics Nv Transcoding of video data streams
US7945143B2 (en) * 2001-07-23 2011-05-17 Panasonic Corporation Information recording medium, and apparatus and method for recording information on information recording medium
JP2003106399A (ja) 2001-09-28 2003-04-09 Jatco Ltd トルクコンバータ
US6868125B2 (en) * 2001-11-29 2005-03-15 Thomson Licensing S.A. Transport stream to program stream conversion
US7373079B2 (en) 2001-11-30 2008-05-13 Matsushita Electric Industrial Co., Ltd. Method and an apparatus for stream conversion, a method and an apparatus for data recording, and data recording medium
CA2439048C (en) 2001-11-30 2011-10-04 Matsushita Electric Industrial Co., Ltd. A method and an apparatus for stream conversion, a method and an apparatus for data recording, and data recording medium
US20030128970A1 (en) * 2002-01-10 2003-07-10 Koninklijke Philips Electronics N.V. System and method for providing high definition material on a standard definition compatible medium
JP3350537B2 (ja) 2002-02-21 2002-11-25 株式会社東芝 オーディオ情報を保持する媒体、その情報を記録する方法、およびその情報を再生する装置
JP3382245B1 (ja) 2002-10-11 2003-03-04 株式会社東芝 情報記録媒体とその再生方法及び記録方法及び再生装置
CN101540924B (zh) * 2003-04-10 2011-02-16 松下电器产业株式会社 将信息记录到信息记录介质的装置及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000324070A (ja) 1999-05-14 2000-11-24 Sony Corp データ変換方法とデータ変換装置およびデータ送出システム
JP2002344888A (ja) 2001-05-17 2002-11-29 Matsushita Electric Ind Co Ltd 情報記録媒体
JP2003009086A (ja) 2001-06-22 2003-01-10 Matsushita Electric Ind Co Ltd 映像記録装置及び記録方法

Also Published As

Publication number Publication date
ES2347788T3 (es) 2010-11-04
KR20050121257A (ko) 2005-12-26
KR100985281B1 (ko) 2010-10-04
EP1619892B1 (en) 2010-06-23
ES2344234T3 (es) 2010-08-20
US7526179B2 (en) 2009-04-28
JP3817257B2 (ja) 2006-09-06
KR100985243B1 (ko) 2010-10-04
CN101540925A (zh) 2009-09-23
EP2192770A2 (en) 2010-06-02
KR100985235B1 (ko) 2010-10-04
EP1890490A2 (en) 2008-02-20
DE602004027799D1 (de) 2010-08-05
DE602004027174D1 (de) 2010-06-24
WO2004091209A1 (ja) 2004-10-21
KR100970288B1 (ko) 2010-07-15
US20060127056A1 (en) 2006-06-15
EP1619892A1 (en) 2006-01-25
EP1890489A3 (en) 2008-03-19
EP1890490B1 (en) 2010-06-09
US8103152B2 (en) 2012-01-24
US20070071415A1 (en) 2007-03-29
DE602004027677D1 (de) 2010-07-22
CN101540924B (zh) 2011-02-16
EP1890490A3 (en) 2008-03-12
CA2522022A1 (en) 2004-10-21
US8094994B2 (en) 2012-01-10
EP1617662B1 (en) 2010-08-04
US8160432B2 (en) 2012-04-17
CN101425314B (zh) 2011-04-06
CN1771728A (zh) 2006-05-10
CN101425314A (zh) 2009-05-06
KR20090051123A (ko) 2009-05-20
US8224162B2 (en) 2012-07-17
JPWO2004091209A1 (ja) 2006-07-06
CN101540925B (zh) 2011-04-13
EP1617662A4 (en) 2006-07-12
DE602004028460D1 (de) 2010-09-16
KR20090038042A (ko) 2009-04-17
US20070053663A1 (en) 2007-03-08
US20070263987A1 (en) 2007-11-15
CN100456825C (zh) 2009-01-28
KR20050121256A (ko) 2005-12-26
US7274861B2 (en) 2007-09-25
JPWO2004091208A1 (ja) 2006-07-06
WO2004091208A1 (ja) 2004-10-21
KR20090051124A (ko) 2009-05-20
KR101030155B1 (ko) 2011-04-18
KR20090040397A (ko) 2009-04-23
US20070053666A1 (en) 2007-03-08
CN101540924A (zh) 2009-09-23
EP2192770A3 (en) 2011-04-27
EP1890489B1 (en) 2010-05-12
EP1890489A2 (en) 2008-02-20
US8290347B2 (en) 2012-10-16
ES2345515T3 (es) 2010-09-24
EP1617662A1 (en) 2006-01-18
CN1774921A (zh) 2006-05-17
JP3779985B2 (ja) 2006-05-31
CA2522022C (en) 2012-06-12
US20070071410A1 (en) 2007-03-29
CN100499783C (zh) 2009-06-10
EP1619892A4 (en) 2006-11-15
US20060233532A1 (en) 2006-10-19

Similar Documents

Publication Publication Date Title
KR101030176B1 (ko) 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및 방법
KR100895559B1 (ko) 정보기록매체, 정보기록매체에 정보를 기록하는 장치 및방법
KR101153003B1 (ko) 정보기록장치 및 정보변환방법
KR101097686B1 (ko) 고속 변환 가능한 스트림을 기록한 정보기록매체, 및 그기록장치 및 기록방법
KR101097604B1 (ko) 고속 변환 가능한 스트림을 기록한 정보기록매체, 및 그기록장치 및 기록방법
KR101097661B1 (ko) 고속 변환 가능한 스트림을 기록한 정보기록매체, 및 그기록장치 및 기록방법
KR101097542B1 (ko) 고속 변환 가능한 스트림을 기록한 정보기록매체, 및 그기록장치 및 기록방법

Legal Events

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

Payment date: 20140320

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160318

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170302

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180316

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190319

Year of fee payment: 9