KR101265555B1 - 재생 장치 및 재생 방법, 프로그램, 기록 매체, 데이터구조, 및 기록 매체의 제조 방법 - Google Patents

재생 장치 및 재생 방법, 프로그램, 기록 매체, 데이터구조, 및 기록 매체의 제조 방법 Download PDF

Info

Publication number
KR101265555B1
KR101265555B1 KR1020067023025A KR20067023025A KR101265555B1 KR 101265555 B1 KR101265555 B1 KR 101265555B1 KR 1020067023025 A KR1020067023025 A KR 1020067023025A KR 20067023025 A KR20067023025 A KR 20067023025A KR 101265555 B1 KR101265555 B1 KR 101265555B1
Authority
KR
South Korea
Prior art keywords
stream
audio
path
sub
referred
Prior art date
Application number
KR1020067023025A
Other languages
English (en)
Other versions
KR20070117438A (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 KR20070117438A publication Critical patent/KR20070117438A/ko
Application granted granted Critical
Publication of KR101265555B1 publication Critical patent/KR101265555B1/ko

Links

Images

Classifications

    • 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
    • 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
    • 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
    • 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
    • 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/11Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information not detectable on the record carrier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4143Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a Personal Computer [PC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42646Internal components of the client ; Characteristics thereof for reading from or writing on a non-volatile solid state storage medium, e.g. DVD, CD-ROM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • H04N21/4325Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • 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/47End-user applications
    • H04N21/485End-user interface for client configuration
    • H04N21/4856End-user interface for client configuration for language selection, e.g. for the menu or subtitles
    • 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/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8106Monomedia components thereof involving special audio data, e.g. different tracks for different languages
    • 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
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2541Blu-ray discs; Blue laser DVR discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4341Demultiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • H04N5/45Picture in picture, e.g. displaying simultaneously another television channel in a region of the screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/775Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/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
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/84Television signal recording using optical recording
    • H04N5/85Television signal recording using optical recording on discs or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/907Television signal recording using static stores, e.g. storage tubes or semiconductor memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/806Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components with processing of the sound signal
    • H04N9/8063Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components with processing of the sound signal using time division multiplex of the PCM audio and PCM video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • H04N9/8211Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal the additional signal being a sound signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • H04N9/8227Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal the additional signal being at least another television signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • H04N9/8233Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal the additional signal being a character code signal
    • 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/87Regeneration of colour television signals
    • H04N9/8715Regeneration of colour television signals involving the mixing of the reproduced video signal with a non-recorded signal, e.g. a text signal

Abstract

본 발명은 메인 스트림과는 상이한 스트림의 재생을 전환할 수 있는 재생 장치 및 재생 방법, 프로그램, 기록 매체, 데이터 구조, 및 기록 매체의 제조 방법에 관한 것이다. PlayList에는, MainTS 내의 Video나 Audio를 참조하기 위한 Main path, MainTS 내의 2ndVideo나 2ndAudio를 참조하기 위한 Sub Path-A, SubTS 내의 Audio 등을 참조하기 위한 Sub Path-B가 포함되고, PlayItem-1로서 Clip AV 스트림 파일-0 내의 Video나 Audio를 선택하여, 모두 재생하는 SubPlayItem(SPI)으로서 Clip AV 스트림 파일-1 내의 2ndVideo와 2ndAudio, Clip AV 스트림 파일-2 내의 Audio 등을 선택하기 위한 정보인 STN_table()이 사용된다. 본 발명은 재생 장치에 적용할 수 있다.
스트림, 재생, 전환, 기록 매체, 프로그램.

Description

재생 장치 및 재생 방법, 프로그램, 기록 매체, 데이터 구조, 및 기록 매체의 제조 방법 {REPRODUCING DEVICE AND METHOD, PROGRAM, RECORDING MEDIUM, DATA STRUCTURE, AND RECORDING MEDIUM MANUFACTURING METHOD}
본 발명은 재생 장치 및 재생 방법, 프로그램, 기록 매체, 데이터 구조, 및 기록 매체의 제조 방법에 관한 것이며, 특히, 메인 AV 스트림과는 상이한 다른 스트림이나 데이터 파일로 음성이나 영상 등 각 종류의 컨텐츠를 준비하여 재생 가능하도록 한 경우에 사용하기에 바람직한, 재생 장치 및 재생 방법, 프로그램, 기록 매체, 데이터 구조, 및 기록 매체의 제조 방법에 관한 것이다.
DVD(Digital Versatile Disc) 비디오의 규격에서는, 기록 매체에 기록되어 있는 영화 등의 AV(Audio Visual) 컨텐츠를 재생하는 경우, 사용자에게, 음성 전환이나 자막 전환이라고 하는 인터랙티브 조작을 제공하고 있다(예를 들면, DVD Specifications for Read-Only Disc Part 3;Version 1.1 참조). 구체적으로는, 도 1의 표시 장치(1)에 표시되어 있는 AV 컨텐츠에 대하여, 사용자는 리모트 컨트롤러(2)의 음성 전환 버튼(11)이나 자막 전환 버튼(12)를 조작함으로써, 음성의 전환이나 자막을 전환한다. 예를 들면, 음성(1)이 초기 상태로서 설정되어 있고, 사용자에 의해 리모트 컨트롤러(2)의 음성 전환 버튼(11)이 조작된 경우, 도 2에 나타 낸 바와 같이, 음성(1)이 음성(2)로 전환된다.
DVD 비디오 상의 AV 컨텐츠는 MPEG(Moving Picture Experts Group)2 프로그램 스트림의 형식으로 기록되어 있다. 이 MPEG2 프로그램 스트림에는, 도 3에 나타낸 바와 같이, 비디오 스트림(도 3의 비디오), 복수개의 오디오 스트림(도 3의 오디오 1, 2, 3), 및 복수개의 서브픽처 스트림(도 3의 서브픽처 1, 2, 3)이, 비디오 스트림에 AV 동기하여 재생되도록 다중화되어 있다. 서브픽처 스트림(서브픽처 1, 2, 3)은 비트맵 화상이 실행 길이 부호화된 스트림이며, 주로 자막 용도에 사용된다.
일반적으로, 복수개의 오디오 스트림은 상이한 언어의 음성을 기록하기 위해 사용되고, 복수개의 서브픽처 스트림은 상이한 언어의 자막을 기록하기 위해 사용된다. 사용자는 비디오가 재생되고 있는 경우, 인터랙티브에 원하는 언어의 음성이나 자막을, 리모트 컨트롤러(2)를 사용하여 선택할 수 있다.
또, DVD 비디오는 프로그램 스트림 중의 복수개의 오디오 스트림(오디오 1, 2, 3)과 복수개의 서브픽처 스트림(서브픽처 1, 2, 3)에 대하여, 사용자에게 제공하는 음성 번호와 자막 번호의 관계를 나타내는 테이블 구조를 정의하고 있다.
도 4는 사용자에게 제공하는 음성 신호와 자막 신호의 관계를 나타내는 스트림 넘버 테이블을 설명하는 도면이다. 여기에서는, 음성 번호를 A_SN(Audio Stream Number)이라고 하고, 자막 번호를 S_SN(SubPicture Stream Number)이라고 한다. 도 4에서는, MPEG2 프로그램 스트림의 복수개의 오디오 스트림의 각각에 A_SN이 부여되어 있는 동시에, MPEG2 프로그램 스트림의 복수개의 서브픽처 스트림 의 각각에, S_SN이 부여되어 있다. A_SN=1: 오디오 2이며, A_SN=2: 오디오 1이며, A_SN=3: 오디오 3이다. 또, S_SN=1: 서브픽처 3이며, S_SN=2: 서브픽처 1이며, S_SN=3: 서브픽처 2이다. 여기에서는, A_SN이나 S_SN의 번호가 작을수록, 사용자에게 제공되는 음성 신호로서 우선도가 높다. 즉, A_SN=1은 디폴트로 재생되는 오디오 스트림이며, S_SN=1은 디폴트로 재생되는 서브픽처 스트림이다.
구체적으로는, 도 1의 초기 상태에서 재생되는 음성(1)은 A_SN=1인 오디오 2(도 4)에 대응하고 있으며, 음성이 전환된 후, 도 2에서 재생되는 음성(2)은 A_SN=2인 오디오 1(도 4)에 대응하고 있다.
또, 추가하여 기록된 음성(예를 들면, 이른바 애프터 레코딩이라고 하는 음성)을 재생하기 위해, Sub path가 이용되고 있는 기술이 있다(예를 들면, 일본국 특개 2002-158972호 공보).
그러나, DVD 비디오에서는, 프로그램 스트림의 비디오를 재생하고 있는 경우에, 사용자에 의한 음성 전환이나 자막 전환이라고 하는 조작은, 재생하고 있는 프로그램 스트림에 다중화되어 있는 오디오 스트림과, 서브픽처 스트림 중에서만, 선택할 수 있었다. 즉, 도 3에 나타낸 바와 같은 MPEG2 프로그램 스트림을 재생하고 있는 경우에, 음성의 전환을 행하는 경우, 선택 사항은 오디오 1 내지 3 중 어느 하나로 된다.
그러므로, 재생하고 있는 프로그램 스트림과는 별도의 다른 스트림으로 오디오 스트림과 자막을 준비한 경우, 사용자는 음성의 전환 조작을 다른 스트림으로부터 선택할 수 없기 때문에, 확장성이 없다고 하는 문제가 있었다.
또한, 장래적으로는, 전환 대상의 컨텐츠로서, 음성뿐만 아니라 영상 등, 다양한 종류의 컨텐츠가 대상이 되는 것이 상정되어 있다. 따라서, 장래적으로는, 이들 다양한 종류의 컨텐츠의 전환 조작을 다른 스트림으로부터 선택할 수 없기 때문에, 확장성이 없다고 하는 문제로까지 발전하여 버리게 된다.
또, 일본국 특개 2002-158972호 공보에 기재된 기술에서는, 확실하게, 추가하여 기록된 음성(예를 들면, 이른바 애프터 레코딩이라고 하는 음성)을 재생하기 위해, Sub path가 사용되고 있지만, 2개의 동일한 종류의 스트림, 즉, 2개의 오디오 스트림이나 2개의 비디오 스트림을 합성하여 재생하기 위한 구성에 대해서는 조금도 개시되어 있지 않다.
본 발명은 이와 같은 상황을 감안하여 이루어진 것이며, 메인 AV 스트림과 함께 재생하기 위해, 메인 AV 스트림과는 상이한 다른 스트림이나 데이터 파일로 음성이나 영상 등 각 종류의 컨텐츠를 선택할 수 있도록 하는 것이다
본 발명의 일 측면의 재생 장치는 스트림을 재생하는 재생 장치로서, 적어도 1개의 스트림의 시간축 상의 위치를 나타내는 주(主) 재생 패스, 적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부(副) 재생 패스, 및 재생하는 스트림을 선택하기 위한 선택 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림을 선택하고, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 선택하기 위한 상기 선택 정보를 포함하는 재생 관리 정보를 취득하는 취득 수단과, 상기 취득 수단에 의해 취득된 상기 재생 관리 정보에 포함되는 상기 선택 정보에 따라, 재생하는 스트림의 선택을 접수하는 접수 수단과, 상기 접수 수단에 의해, 상기 재생하는 스트림의 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림을, 상기 주 재생 패스를 참조하여 판독하는 동시에, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림을, 대응하는 상기 부 재생 패스를 참조하여 판독하는 판독 수단과, 상기 판독 수단에 의해 판독된 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림과 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림 중에, 소정의 종류의 스트림이 2 이상 포함되어 있는 경우, 상기 소정의 종류의 2 이상의 스트림을 합성하는 합성 수단을 구비하고, 상기 선택 정보에는, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보가 추가로 포함되고, 상기 접수 수단은 상기 선택 정보에 따라, 재생하는 스트림의 선택을 접수하고, 상기 판독 수단은 상기 접수 수단에 의해, 상기 제1 스트림과 상기 제2 스트림과의 재생 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되는 상기 소정의 종류의 상기 제1 스트림과 함께, 1 이상의 상기 부 재생 패스 중 소정의 것에 의해 참조되는 상기 소정의 종류의 상기 제2 스트림을 판독하고, 상기 합성 수단은 상기 판독 수단에 의해 판독된 상기 소정의 종류의 상기 제1 스트림과 상기 제2 스트림을 합성한다.
상기 판독 수단에 의해 판독된 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림과 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림과의 각각을 복호하는 복호 수단을 추가로 구비하게 할 수 있다.
상기 합성 수단에 의해 합성되는 대상의 상기 소정의 종류의 스트림은 오디오 스트림, 또는 비디오 스트림인 것으로 할 수 있다.
상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 스트림은 제1 비디오 스트림인 것으로 할 수 있고, 상기 선택 정보에는, 상기 제1 비디오 스트림에 대응하는 제1 오디오 스트림과는 독립된 제2 오디오 스트림과, 상기 제1 오디오 스트림과의 조합을 정의하는 정보가 추가로 포함되어 있는 것으로 할 수 있다.
상기 접수 수단에는, 상기 주 재생 패스에 의해 참조되는 상기 제1 스트림의 재생과, 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림의 재생과, 상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과는 상이한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생과, 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림끼리를 조합한 재생과, 상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과 동일한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생 중 어느 하나에서 재생되는 스트림의 선택을 접수하도록 하게 할 수 있다.
상기 취득 수단에 의해 취득되는 상기 재생 관리 정보는 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 소정의 종류의 2개의 스트림의 조합을 나타내는 정보를 추가로 포함하는 것으로 할 수 있고, 상기 판독 수단에는, 상기 접수 수단에 의해, 상기 소정의 종류의 2개의 스트림의 조합의 재생 선택이 접수된 경우, 상기 부 재생 패스에 의해 참조되는, 대응하는 상기 소정의 종류의 2개의 스트림을 판독하게 할 수 있고, 상기 합성 수단에는, 상기 판독 수단에 의해 판독된 상기 소정의 종류의 2개의 스트림을 합성시킬 수 있다.
상기 선택 정보는 합성해야 할 스트림이 엔트리되어 있는지 여부를 나타내는 정보를 추가로 포함하는 것으로 할 수 있고, 상기 접수 수단에는, 합성해야 할 스트림이 엔트리되어 있는지 여부를 나타내는 정보에 따라, 상기 주 재생 패스 및 상기 부 재생 패스 중 적어도 어느 한쪽의 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 스트림으로부터, 동종 스트림의 조합의 선택을 접수하거나, 또는 동종 스트림의 단독의 선택을 접수하게 할 수 있고, 상기 판독 수단에는, 상기 선택 정보에 따라, 상기 접수 수단에 의해 접수된 엔트리되어 있는 스트림을 판독하게 할 수 있다.
상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 스트림은 제1 비디오 스트림인 것으로 할 수 있고, 상기 선택 정보에는, 상기 제1 비디오 스트림과는 독립된 제2 비디오 스트림과, 상기 제2 비디오 스트림에 대응하는 제2 오디오 스트림과의 조합을 정의하는 정보가 추가로 포함되어 있는 것으로 할 수 있다.
상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 스트림은 제1 비디오 스트림인 것으로 할 수 있고, 상기 선택 정보에는, 상기 제1 비디오 스트림과는 독립된 제2 비디오 스트림과, 상기 제2 비디오 스트림에 대응하는 제1 화상 정보가 추가로 포함되어 있는 것으로 할 수 있다.
상기 제1 비디오 스트림에 대응하는 제2 화상 정보 및 상기 제2 비디오 스트림에 대응하는 상기 제1 화상 정보를 재생 표시하는지 여부를 나타내는 정보를 유지하는 제1 유지 수단과, 상기 제2 화상 정보가 표시되는 경우에, 상기 선택 정보에 의해 선택 가능하도록 설정되어 있는 상기 제2 화상 정보의 스트림 중, 어느 스트림이 재생되는지를 나타내는 정보를 유지하는 제2 유지 수단과, 상기 제1 화상 정보가 표시되는 경우에, 상기 선택 정보에 의해 선택 가능하도록 설정되어 있는 상기 제1 화상 정보의 스트림 중, 어느 스트림이 재생되는지를 나타내는 정보를 유지하는 제3 유지 수단과, 상기 제1 화상 정보 또는 상기 제2 화상 정보 중 어느 화상 정보를 재생 표시하는지를 나타내는 정보를 유지하는 제4 유지 수단을 추가로 구비하도록 할 수 있고, 상기 판독 수단에는, 상기 제1 유지 수단, 상기 제2 유지 수단, 상기 제3 유지 수단, 및 상기 제4 유지 수단에 각각 유지되어 있는 정보를 또한 참조하여, 재생되는 제1 화상 정보 또는 상기 제2 화상 정보에 대응하는 스트림을 판독하도록 할 수 있다.
상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 스트림은 제1 비디오 스트림인 것으로 할 수 있고, 상기 선택 정보에는, 상기 제1 비디오 스트림과는 독립된 제2 비디오 스트림과, 상기 제2 비디오 스트림에 대응하는 텍스트 정보가 추가로 포함되어 있는 것으로 할 수 있다.
상기 부 재생 패스의 타입이, 그 부 재생 패스에 의해 참조되는 스트림의 종류에 따라, 1 이상 정의되어 있는 것으로 할 수 있고, 상기 재생 관리 정보에 포함되는 1 이상의 상기 부 재생 패스는 정의된 1 이상의 상기 타입 중 소정의 1개로 분류되어 있고, 그 분류의 결과가 추가로 상기 재생 관리 정보에 포함되어 있는 것으로 할 수 있다.
정의된 1 이상의 상기 타입에는, 대상의 부 재생 패스에 의해 참조되는 스트림의 종류가 1 종류 이상이라고 하는 타입을 포함시키도록 할 수 있다.
정의된 1 이상의 상기 타입에는, 대상의 부 재생 패스에 의해 참조되는 스트림의 종류가 1 종류 이상으로서, 1 종류 이상의 상기 스트림은 상기 주 재생 패스에 의해 참조되는 스트림이 포함되어 있는 파일과는 상이한 파일에 포함되어 있다고 하는 타입을 포함시키도록 할 수 있다.
정의된 1 이상의 상기 타입에는, 대상의 부 재생 패스에 의해 참조되는 스트림의 종류가 1 종류 이상으로서, 1 종류 이상의 상기 스트림은 상기 주 재생 패스에 의해 참조되는 스트림이 포함되어 있는 파일과 동일 파일에 포함되어 있다고 하는 타입을 포함시키도록 할 수 있다.
사용자에 의한 조작 입력의 보조가 되는 정보를 표시하는 표시 화면의 표시를 제어하는 표시 제어 수단을 추가로 구비하도록 할 수 있고, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 스트림은 제1 비디오 스트림인 것으로 할 수 있고, 상기 접수 수단에 의해, 상기 제1 비디오 스트림과 동기하여 재생시키는 상기 제1 비디오 스트림과는 독립된 제2 비디오 스트림의 선택이 접수된 경우, 상기 표시 제어 수단에는, 상기 제2 비디오 스트림에 대응하여 재생 가능한 스트림의 일람의 상기 표시 화면으로의 표시를 제어시키도록 할 수 있고, 상기 접수 수단에는, 상기 표시 제어 수단에 의해 표시가 제어된 상기 표시 화면을 참조한 상기 사용자로부터의, 상기 제2 비디오 스트림에 대응하여 재생 가능한 스트림의 선택을 접수하도록 하게 할 수 있다.
본 발명의 일 측면의 재생 방법/프로그램은 적어도 1개의 스트림의 시간축 상의 위치를 나타내는 주 재생 패스, 적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스, 및 재생하는 스트림을 선택하기 위한 선택 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림을 선택하고, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 선택하기 위한 상기 선택 정보를 포함하는 재생 관리 정보를 취득하는 취득 스텝과, 상기 취득 스텝의 처리에 의해 취득된 상기 재생 관리 정보에 포함되는 상기 선택 정보에 따라, 재생하는 스트림의 선택을 접수하는 접수 스텝과, 상기 접수 스텝의 처리에 의해, 상기 재생하는 스트림의 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림을, 상기 주 재생 패스를 참조하여 판독하는 동시에, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림을, 대응하는 상기 부 재생 패스를 참조하여 판독하는 판독 스텝과, 상기 판독 스텝의 처리에 의해 판독된 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림과 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림 중에, 소정의 종류의 스트림이 2 이상 포함되어 있는 경우, 상기 소정의 종류의 2 이상의 스트림을 합성하는 합성 스텝을 포함하고, 상기 선택 정보에는, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보가 추가로 포함되고, 상기 접수 스텝의 처리에서는, 상기 선택 정보에 따라, 재생하는 스트림의 선택을 접수하고, 상기 판독 스텝의 처리에서는, 상기 접수 스텝의 처리에 의해, 상기 제1 스트림과 상기 제2 스트림과의 재생 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되는 상기 소정의 종류의 상기 제1 스트림과 함께, 1 이상의 상기 부 재생 패스 중 소정의 것에 의해 참조되는 상기 소정의 종류의 상기 제2 스트림을 판독하고, 상기 합성 스텝의 처리에서는, 상기 판독 스텝의 처리에 의해 판독된 상기 소정의 종류의 상기 제1 스트림과 상기 제2 스트림이 합성된다.
본 발명의 일 측면의 재생 장치 및 재생 방법 및 프로그램에서는, 적어도 1개의 스트림의 시간축 상의 위치를 나타내는 주 재생 패스, 적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스, 및 재생하는 스트림을 선택하기 위한 선택 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림을 선택하고, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 선택하기 위한 상기 선택 정보를 포함하는 재생 관리 정보가 취득되고, 취득된 상기 재생 관리 정보에 포함되는 상기 선택 정보에 따라, 재생하는 스트림의 선택이 접수되고, 상기 재생하는 스트림의 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림이, 상기 주 재생 패스가 참조되어 판독되는 동시에, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림이, 대응하는 상기 부 재생 패스가 참조되어 판독되고, 판독된 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림과 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림 중에, 소정의 종류의 스트림이 2 이상 포함되어 있는 경우, 상기 소정의 종류의 2 이상의 스트림이 합성되고, 상기 선택 정보에는, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보가 추가로 포함되고, 상기 선택 정보에 따라, 재생하는 스트림의 선택이 접수되고, 상기 제1 스트림과 상기 제2 스트림과의 재생 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되는 상기 소정의 종류의 상기 제1 스트림과 함께, 1 이상의 상기 부 재생 패스 중 소정의 것에 의해 참조되는 상기 소정의 종류의 상기 제2 스트림이 판독되고, 판독된 상기 소정의 종류의 상기 제1 스트림과 상기 제2 스트림이 합성된다.
본 발명의 일 측면의 기록 매체는 적어도 1개의 스트림의 재생을 관리하는 정보인 재생 관리 정보를 포함하는 데이터를 기록하는 기록 매체로서, 상기 재생 관리 정보는 적어도 1개의 상기 스트림의 시간축 상의 위치를 나타내는 주 재생 패스와, 적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스와, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림과, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 재생하는 상기 스트림으로서 선택하기 위한 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보를 포함하는 선택 정보를 포함한다.
본 발명의 일 측면의 데이터 구조는, 적어도 1개의 스트림의 재생을 관리하는 정보인 재생 관리 정보를 포함하는 데이터 구조로서, 상기 재생 관리 정보는 적어도 1개의 상기 스트림의 시간축 상의 위치를 나타내는 주 재생 패스와, 적어도 1개의 다른 스트림의 각각의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스와, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림과, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 재생하는 상기 스트림으로서 선택하기 위한 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보를 포함하는 선택 정보를 포함한다.
본 발명의 일 측면의 기록 매체/데이터 구조에서는, 적어도 1개의 스트림을 포함하는 제1 파일의 재생을 관리하는 정보인 재생 관리 정보가 포함되어 있다. 상세하게는, 상기 재생 관리 정보에는, 적어도 1개의 상기 스트림의 시간축 상의 위치를 나타내는 주 재생 패스와, 적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스와, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림과, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 재생하는 상기 스트림으로서 선택하기 위한 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보를 포함하는 선택 정보가 포함되어 있다.
본 발명의 일 측면의 기록 매체의 제조 방법은, 재생 장치에서 재생 가능한 데이터가 기록되는 기록 매체의 제조 방법으로서, 적어도 1개의 스트림의 재생을 관리하는 정보인 재생 관리 정보를 포함하고, 상기 재생 관리 정보에, 적어도 1개의 상기 스트림의 시간축 상의 위치를 나타내는 주 재생 패스와, 적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스와, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림과, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 재생하는 상기 스트림으로서 선택하기 위한 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보를 포함하는 선택 정보를 포함하는 데이터 구조를 가지는 데이터를 생성하고, 생성된 상기 데이터를 상기 기록 매체에 기록하는 스텝을 포함한다.
본 발명의 일 측면의 기록 매체의 제조 방법에서는, 재생 장치에서 재생 가능한 데이터가 기록되는 기록 매체의 제조 방법으로서, 적어도 1개의 스트림의 재생을 관리하는 정보인 재생 관리 정보를 포함하고, 상기 재생 관리 정보에, 적어도 1개의 상기 스트림의 시간축 상의 위치를 나타내는 주 재생 패스와, 적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스와, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림과, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 재생하는 상기 스트림으로서 선택하기 위한 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보를 포함하는 선택 정보가 포함되어 있는 데이터 구조를 가지는 데이터가 생성되고, 생성된 상기 데이터가 기록된다.
본 발명에 의하면, AV 스트림을 재생할 수 있고, 특히, 메인 AV 스트림과는 상이한 다른 스트림이나 데이터 파일로 음성이나 영상 등 각 종류의 컨텐츠를 선택하여 재생할 수 있다.
도 1은 종래의 음성 전환을 설명하는 도면이다.
도 2는 종래의 음성 전환을 설명하는 도면이다.
도 3은 MPEG2 프로그램 스트림의 구성을 설명하는 도면이다.
도 4는 사용자에게 제공하는 음성 신호와 자막 신호의 관계를 나타내는 스트림 넘버 테이블을 설명하는 도면이다.
도 5는 본 발명을 적용한 재생 장치에 장착되는 기록 매체 상의 애플리케이션 포맷의 예를 나타낸 도면이다.
도 6은 메인 패스와, 서브 패스의 구조를 설명하는 도면이다.
도 7은 메인 패스와, 서브 패스의 예를 설명하는 도면이다.
도 8은 메인 패스와, 서브 패스의 다른 예를 설명하는 도면이다.
도 9는 PlayList()의 신택스를 나타낸 도면이다.
도 10은 SubPath()의 신택스를 나타낸 도면이다.
도 11은 SubPath_type을 설명하는 도면이다.
도 12는 SubPlayItem(i)의 신택스를 나타낸 도면이다.
도 13은 PlayItem()의 신택스를 나타낸 도면이다.
도 14는 제1 STN_table()의 신택스를 나타낸 도면이다.
도 15는 stream_entry()의 신택스의 제1 예를 나타낸 도면이다.
도 16은 제2 STN_table()의 신택스의 예를 나타낸 도면이다.
도 17은 stream_entry()의 신택스의 제2 예를 나타낸 도면이다.
도 18은 stream_attribute()의 신택스를 나타낸 도면이다.
도 19는 stream_cording_type을 설명하는 도면이다.
도 20은 video_format을 설명하는 도면이다.
도 21은 frame_rate를 설명하는 도면이다.
도 22는 aspect_ratio를 설명하는 도면이다.
도 23은 audio_presentation_type을 설명하는 도면이다.
도 24는 sampling_frequency를 설명하는 도면이다.
도 25는 Character code를 설명하는 도면이다.
도 26은 사용자에게 제공하는 음성 신호와 자막 신호의 관계를 나타내는 스트림 넘버 테이블의 예를 설명하는 도면이다.
도 27은 본 발명을 적용한 재생 장치의 구성예를 나타낸 블록도이다.
도 28은 본 발명을 적용한 재생 장치의 구성예를 나타낸 블록도이다.
도 29은 도 28의 재생 장치에서의 재생 처리를 설명하는 플로차트이다.
도 30은 도 28의 재생 장치에서의 재생 처리를 설명하는 플로차트이다.
도 31은 도 28의 재생 장치에서의 재생 처리를 설명하는 플로차트이다.
도 32는 사용자에 의해 음성의 전환이 지시되는 경우의 처리를 설명하는 플 로차트이다.
도 33은 도 32의 스텝 S59의 상세한 처리의 예를 설명하는 플로차트이다.
도 34는 2개의 오디오를 믹싱 재생하는 경우의 예를 설명하는 도면이다.
도 35는 제3 STN_table()의 신택스를 나타낸 도면이다.
도 36은 본 발명을 적용한 재생 장치의 구성예를 나타낸 블록도이다.
도 37은 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하는 제4 STN_table()의 신택스의 예를 나타낸 도면이다.
도 38은 Combination_of_Primary_and_Secondary의 비트맵 신택스의 예를 나타낸 도면이다.
도 39은 사용자에게 제공하는 음성 신호와 자막 신호의 관계를 나타내는 스트림 넘버 테이블의 다른 예를 설명하는 도면이다.
도 40은 2개의 오디오를 믹싱 재생하는 다른 예를 설명하는 도면이다.
도 41은 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하는 제5 STN_table()의 신택스의 예를 나타낸 도면이다.
도 42는 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하는 제6 STN_table()의 신택스의 예를 나타낸 도면이다.
도 43은 픽처인픽처(picture-in-picture) 방법을 설명하는 도면이다.
도 44는 프라이머리 비디오 스트림과 조합하여 동시 재생되는, 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합을 정의하는 경우의 제6 STN_table()의 신택스의 예를 나타낸 도면이 다.
도 45는 프라이머리 비디오 스트림과 조합하여 동시 재생되는, 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합을 정의하는 경우의 제7 STN_table()의 신택스의 예를 나타낸 도면이다.
도 46은 사용자에게 제공하는 음성 신호, 세컨더리 비디오 스트림으로서의 영상 신호, 및 자막 신호의 조합 가능한 관계를 나타내는 스트림 넘버 테이블의 예를 나타낸 도면이다.
도 47은 프라이머리 비디오 스트림과 조합하여 동시 재생되는, 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합을 선택하기 위한 사용자의 선택 조작을 설명하는 도면이다.
도 48은 픽처인픽처 방법을 실현시키는 경우에, 도 11의 예의 SubPath_type을 이용하여 생성된 PlayList의 예를 나타내고 있는 도면이다.
도 49은 SubPath_type의 도 11과는 상이한 예를 설명하는 도면이다.
도 50은 stream_entry()의 신택스의 제3 예를 나타낸 도면이다.
도 51은 픽처인픽처 방법을 실현시키는 경우에, 도 49의 예의 SubPath_type을 이용하여 생성된 PlayList의 예를 나타내고 있는 도면이다.
도 52는 픽처인픽처 방법을 실현시키는 경우에, 도 49의 예의 SubPath_type을 이용하여 생성된 PlayList의 다른 예를 나타내고 있는 도면이다.
도 53은 본 발명을 적용한 재생 장치의 구성예로서, 도 36과는 상이한 예를 나타낸 블록도이다.
도 54는 도 53의 재생 장치에서의 세컨더리 비디오 전환 처리를 설명하는 플로차트이다.
도 55는 도 53의 재생 장치에서의 세컨더리 비디오 전환 처리를 설명하는 플로차트이다.
도 56은 application_type의 종류의 예를 설명하는 도면이다.
도 57은 서브 패스 제한 방법을 설명하기 위한 도면으로서, PlayList의 종류에 대한, 그 PlayList가 가질 수 있는 SubPath의 조합의 관계를 나타낸 도면이다.
도 58은 서브 패스 제한 방법을 설명하기 위한 도면으로서, PlayList 내에 있는 PlayItem과 SubPath의 수의 조합 관계를 나타낸 도면이다.
도 59는 도 57 내지 도 59에 의해 설명되는 서브 패스 제한 방법에 따라, 작성된 PlayList의 구체예를 나타낸 도면이다.
도 60은 도 57 내지 도 59에 의해 설명되는 서브 패스 제한 방법에 따라, 작성된 PlayList의 구체예를 나타낸 도면이다.
도 61은 도 57 내지 도 59에 의해 설명되는 서브 패스 제한 방법에 따라, 작성된 PlayList의 구체예를 나타낸 도면이다.
도 62는 도 57 내지 도 59에 의해 설명되는 서브 패스 제한 방법에 따라, 작성된 PlayList의 구체예를 나타낸 도면이다.
도 63은 도 53의 재생 장치에서의 application_type=3의 PlayList 재생 처리를 설명하는 플로차트이다.
도 64는 도 53의 재생 장치에서의 application_type=3의 PlayList 재생 처리를 설명하는 플로차트이다.
도 65는 도 53의 재생 장치에서의 application_type=1 or 2의 PlayList 재생 처리를 설명하는 플로차트이다.
도 66은 도 53의 재생 장치에서의 application_type=1 or 2의 PlayList 재생 처리를 설명하는 플로차트이다.
도 67은 도 53의 재생 장치에서의 application_type=1 or 2의 PlayList 재생 처리를 설명하는 플로차트이다.
도 68은 도 53의 재생 장치에서의 application_type=1 or 2의 PlayList 재생 처리를 설명하는 플로차트이다.
도 69는 오디오 스트림 #1과 오디오 스트림 #2의 조합, 비디오 스트림 #2와 오디오 스트림 #1의 조합, 및 비디오 스트림 #2와 비디오 스트림 #2용의 텍스트 자막 스트림과의 조합을 정의하는 제8 STN_table()의 신택스의 예를 나타낸 도면이다.
도 70은 오디오 스트림 #1과 오디오 스트림 #2의 조합, 비디오 스트림 #2와 오디오 스트림 #1의 조합, 및 비디오 스트림 #2와 비디오 스트림 #2용의 텍스트 자막 스트림과의 조합을 정의하는 제8 STN_table()의 신택스의 예를 나타낸 도면이다.
도 71은 레지스터에 대하여 설명하기 위한 도면이다.
도 72는 픽처인픽처 표시의 실행 시에, 프라이머리 PG TextST 스트림이 재생 되는 경우의 예에 대하여 설명하기 위한 도면이다.
도 73은 픽처인픽처 표시의 실행 시에, 픽처인픽처 애플리케이션용 PG TextST 스트림이 재생되는 경우의 예에 대하여 설명하기 위한 도면이다.
도 74는 PiP(픽처인픽처)를 포함한 애플리케이션의 PG TextST 재생 처리에 대하여 설명하기 위한 플로차트이다.
도 75는 PiP PG TextST 표시 처리에 대하여 설명하기 위한 플로차트이다.
도 76은 더욱 많은 스트림의 조합을 정의하는 제9 STN_table()의 신택스의 예를 나타낸 도면이다.
도 77은 더욱 많은 스트림의 조합을 정의하는 제9 STN_table()의 신택스의 예를 나타낸 도면이다.
도 78은 더욱 많은 스트림의 조합을 정의하는 제9 STN_table()의 신택스의 예를 나타낸 도면이다.
도 79는 레지스터에 대하여 설명하기 위한 도면이다.
도 80은 픽처인픽처 표시의 실행 시에, 프라이머리 오디오와 세컨더리 오디오가 믹싱되어 재생되는 경우의 예에 대하여 설명하기 위한 도면이다.
도 81은 픽처인픽처 표시의 실행 시에, 픽처인픽처 애플리케이션용 프라이머리 오디오가 재생되는 경우의 예에 대하여 설명하기 위한 도면이다.
도 82는 PiP를 포함한 애플리케이션의 오디오 스트림의 재생 처리 1에 대하여 설명하기 위한 플로차트이다.
도 83은 더욱 많은 스트림의 조합을 정의하는 제10 STN_table()의 신택스의 예를 나타낸 도면이다.
도 84는 더욱 많은 스트림의 조합을 정의하는 제10 STN_table()의 신택스의 예를 나타낸 도면이다.
도 85는 더욱 많은 스트림의 조합을 정의하는 제10 STN_table()의 신택스의 예를 나타낸 도면이다.
도 86은 픽처인픽처 표시의 실행 시에, 픽처인픽처 애플리케이션용 프라이머리 오디오와 세컨더리 오디오가 믹싱되어 재생되는 경우의 예에 대하여 설명하기 위한 도면이다.
도 87은 PiP를 포함한 애플리케이션의 오디오 스트림의 재생 처리 2에 대하여 설명하기 위한 플로차트이다.
도 88은 재생 장치에서 재생 가능한 데이터를 기록한 기록 매체의 제조에 대하여 설명하기 위한 도면이다.
도 89는 재생 장치에서 재생 가능한 데이터를 기록한 기록 매체의 제조에 대하여 설명하기 위한 도면이다.
도 90은 퍼스널 컴퓨터의 구성을 나타낸 도면이다
[도면의 주요부분에 대한 부호의 설명]
1: 재생 장치 11:기록 매체
21: 컨트롤러 22: 광 디스크 드라이브
23: 메모리 24:로컬 스토리지
26: AV 디코더부 32: 스위치
51 내지 54: 버퍼 55, 56: PID 필터
57 내지 59: 스위치 71: 백그라운드 디코더
72: 비디오 디코더/1st 비디오 디코더 73: 프리젠테이션 그래픽스 디코더
74: 인터랙티브 그래픽스 디코더 75: 오디오 디코더
76: Text-ST 콤퍼지션 77: 스위치
91: 백그라운드 플레인 생성부 92 비디오 플레인 생성부/1st 비디오 플레인 생성부
93: 프리젠테이션 그래픽스 플레인 생성부 94: 인터랙티브 그래픽스 플레인 생성부
95: 버퍼 96: 비디오 데이터 처리부
97: 믹싱 처리부 101: 믹싱 처리부
141재생 장치 151AV 디코더부 161: PID 필터
162: 스위치 401: 재생 장치
403: AV 디코더부 411: PID 필터
412: 2nd 비디오 디코더 413: 2nd 비디오 플레인 생성부
414: 프리로드용 버퍼
이하, 도면을 참조하여, 본 발명의 실시예에 대하여 설명한다.
도 5는 본 발명을 적용한 재생 장치(1)(도 27 및 도 28을 참조하여 후술함)의 로컬 스토리지(예를 들면, 하드 디스크나 메모리 등) 상의, 또는 장착되는 기록 매체 상의 애플리케이션 포맷의 예를 나타낸 도면이다. 기록 매체는 후술하는 광 디스크 외에, 자기 디스크나 반도체 메모리라도 된다.
애플리케이션 포맷은 AV(Audio Visual) 스트림의 관리를 위해, PlayList와 Clip의 2개의 레이어를 가지고 있다. 여기에서는, 1개의 AV 스트림과 그것에 부수되는 정보인 Clip 인포메이션의 페어를 1개의 오브젝트라고 생각하고, 그들을 통합하여 Clip이라고 한다. 이하, AV 스트림을 AV 스트림 파일이라고도 한다. 그리고, AV 스트림 파일에는, 음성 데이터나 영상 데이터 이외에도, 이들 데이터와 함께 재생되는 각종의 스트림 파일이 포함되어 있어도 된다. 또, Clip 인포메이션을 Clip 인포메이션 파일이라고도 한다.
일반적으로, 컴퓨터 등에서 사용되는 파일은 바이트 열(列)로서 취급되지만, AV 스트림 파일의 컨텐츠는 시간축 상에 전개되며, Clip의 액세스 포인트는, 주로, 타임 스탬프로 PlayList에 의해 지정된다. 즉, PlayList와 Clip은 AV 스트림의 관리를 위한 레이어이다.
Clip 중의 액세스 포인트가 타임 스탬프로 PlayList에 의해 나타나고 있는 경우, Clip Information 파일은 타임 스탬프로부터, AV 스트림 파일 중의 디코드를 개시해야 할 어드레스 정보를 찾아내기 위해 사용된다.
PlayList는 AV 스트림의 재생 구간의 모임이다. 어느 AV 스트림 중의 1개의 재생 구간은 PlayItem이라고 불려지며, 그것은 시간축 상의 재생 구간의 IN점(재생 개시점)과 OUT점(재생 종료점)의 페어에 의해 나타난다. 따라서, PlayList는 도 5에 나타낸 바와 같이 1개, 또는 복수개의 PlayItem에 의해 구성된다.
도 5에서, 좌측으로부터 1번째의 PlayList는 2개의 PlayItem으로 구성되며, 그 2개의 PlayItem에 의해, 좌측의 Clip에 포함되는 AV 스트림의 전반 부분과 후반 부분이 각각 참조되고 있다. 또, 좌측으로부터 2번째의 PlayList는 1개의 PlayItem으로 구성되며, 이로써, 우측의 Clip에 포함되는 AV 스트림 전체가 참조되고 있다. 또한, 좌측으로부터 3번째의 PlayList는 2개의 PlayItem으로 구성되며, 그 2개의 PlayItem에 의해, 좌측의 Clip에 포함되는 AV 스트림의 어느 부분과, 우측의 Clip에 포함되는 AV 스트림의 어느 부분이 각각 참조되고 있다.
예를 들면, 도 5의 디스크 내비게이션 프로그램에 의해, 그 때의 재생 위치를 나타내는 정보로서, 좌측으로부터 1번째의 PlayList에 포함되는 좌측의 PlayItem이 지정된 경우, 그 PlayItem이 참조하는, 좌측의 Clip에 포함되는 AV 스트림의 전반 부분의 재생이 행해진다. 이와 같이, PlayList는 AV 스트림 파일의 재생을 관리하기 위한 재생 관리 정보로서 사용된다.
디스크 내비게이션 프로그램은 PlayList의 재생 순서나, PlayList의 인터랙티브 재생을 컨트롤하는 기능을 가진다. 또, 디스크 내비게이션 프로그램은 각종 재생의 실행을 사용자가 지시하기 위한 메뉴 화면을 표시하는 기능 등도 가진다. 이 디스크 내비게이션 프로그램은, 예를 들면, Java(등록상표) 등의 프로그래밍 언어로 기술되어, 기록 매체 상에 준비된다.
본 실시예에서는, PlayList 중에서, 1개 이상의 PlayItem의 열에 의해(연속하는 PlayItem에 의해) 만들어지는 재생 패스를 메인 패스(Main Path)라고 하고, PlayList 중에서, Main Path에 병행(병렬)하여, 1개 이상의 Sub Path의 열에 의해 (비연속이라도 되고, 연속해도 되는 SubPlayItem에 의해) 만들어지는 재생 패스를 서브 패스(Sub Path)라고 한다. 즉, 재생 장치(1)(도 27 및 도 28을 참조하여 후술함) 내부의 로컬 스토리지 상의, 또는 장착되는 기록 매체 상의 애플리케이션 포맷은 메인 패스에 관련지어져(맞추어) 재생되는 서브 패스(Sub Path)를 PlayList 중에 가진다.
도 6은 메인 패스와, 서브 패스의 구조를 설명하는 도면이다. PlayList는 1개의 메인 패스와, 1개 이상의 서브 패스를 가질 수 있다. 1개의 메인 패스는 1개 이상의 PlayItem의 열에 의해 만들어지며, 1개의 서브 패스는 1개 이상의 SubPlayItem의 열에 의해 만들어진다.
도 6의 예의 경우, PlayList는 3개의 PlayItem의 열에 의해 만들어지는 1개의 메인 패스와, 3개의 서브 패스를 가지고 있다. 메인 패스를 구성하는 PlayItem에는, 선두로부터 순번으로 각각 ID(Identification)가 부여되어 있다. 구체적으로는, 메인 패스는 PlayItem_id=0, PlayItem_id=1, 및 PlayItem_id=2의 PlayItem으로 이루어진다. 또, 서브 패스에도 선두로부터 순번으로 Subpath_id=0, Subpath_id=1, 및 Subpath_id=2로 각각 ID가 부여되어 있다. Subpath_id=0의 서브 패스에는, 1개의 SubPlayItem이 포함되고, Subpath_id=1의 서브 패스에는, 2개의 SubPlayItem이 포함되고, Subpath_id=2의 서브 패스에는, 1개의 SubPlayItem이 포함된다.
Subpath_id=0의 서브 패스에 포함되는 SubPlayItem이 참조하는 스트림은, 예를 들면, 영화의 일본어 더빙 음성으로 상정되어, Mainpath에 의해 참조되는 AV 스 트림 파일의 오디오 스트림으로 바꾸어 재생되는 경우가 고려된다. 또, Subpath_id=1의 서브 패스에 포함되는 SubPlayItem이 참조하는 스트림은, 예를 들면, 영화의 디렉터스 컷(Director's Cut)으로 상정되어, Main Path에 의해 참조되는 AV 스트림 파일의 소정의 부분에만, 영화 감독 등의 코멘트가 들어가 있는 경우가 고려된다.
1개의 PlayItem이 참조하는 Clip AV 스트림 파일에는, 적어도 비디오 스트림 데이터(메인 화상 데이터)가 포함된다. 또, Clip AV 스트림 파일에는, Clip AV 스트림 파일에 포함되는 비디오 스트림(메인 화상 데이터)과 동일 타이밍에서(동기하여) 재생되는 오디오 스트림이 1개 이상 포함되어도 되고, 포함되지 않아도 된다. 또한, Clip AV 스트림 파일에는, Clip AV 스트림 파일에 포함되는 비디오 스트림과 동일 타이밍에서 재생되는 비트맵 자막 스트림(Presentation Graphic stream)이 1개 이상 포함되어도 되고, 포함되지 않아도 된다. 또, Clip AV 스트림 파일에는, Clip AV 스트림 파일에 포함되는 비디오 스트림과 동일 타이밍에서 재생되는 인터랙티브 그래픽스 스트림이 1개 이상 포함되어도 되고, 포함되지 않아도 된다. 그리고, Clip AV 스트림 파일에 포함되는 비디오 스트림과, 비디오 스트림과 동일 타이밍에서 재생되는 오디오 스트림, 비트맵 자막 스트림 파일, 또는 인터랙티브 그래픽스 스트림과는 다중화되어 있다. 즉, 1개의 PlayItem이 참조하는 Clip AV 스트림 파일에는, 비디오 스트림 데이터와, 그 비디오 스트림에 맞추어 재생되는 0개 이상의 오디오 스트림, 0개 이상의 비트맵 자막 스트림 데이터, 및 0개 이상의 인터랙티브 그래픽스 스트림 데이터가 다중화되어 있다.
즉, 1개의 PlayItem이 참조하는 Clip AV 스트림 파일에는, 비디오 스트림, 오디오 스트림, 비트맵 자막 스트림 파일, 또는 인터랙티브 그래픽스 스트림 등 복수개 종류의 스트림이 포함되어 있다.
또, 1개의 SubPlayItem은 PlayItem이 참조하는 Clip AV 스트림 파일과는 상이한 스트림(별도 스트림)의 오디오 스트림 데이터나 자막 데이터를 참조한다.
메인 패스만을 가지는 PlayList를 재생하는 경우, 사용자에 의한 음성 전환이나 자막 전환이라고 하는 조작은 그 메인 패스가 참조하는 Clip으로 다중화되어 있는 오디오 스트림과, 서브픽처 스트림 중에서만 음성이나 자막을 선택할 수 있다. 이에 대하여, 메인 패스와, 서브 패스를 가지는 PlayList를 재생하는 경우, 그 메인 패스가 참조하는 Clip AV 스트림 파일로 다중화되어 있는 오디오 스트림과, 서브픽처 스트림에 더하여, SubPlayItem이 참조하는 Clip의 오디오 스트림이나 서브픽처 스트림을 참조할 수도 있다.
이와 같이, 1개의 PlayList 중에 SubPath를 복수개 포함시키고, 각각의 SubPath가 각각 SubPlayItem을 참조하는 구성으로 했으므로, 확장성이 높은 또, 자유도가 높은 AV 스트림을 실현할 수 있다. 즉, MainPath로 참조되는 Clip AV 스트림에 더하여, 나중에, SubPlayItem을 추가할 수 있는 구성으로 할 수 있다.
도 7은 메인 패스와, 서브 패스의 예를 설명하는 도면이다. 도 7에서는, 메인 패스와 동일 타이밍에서 (AV 동기하여) 재생되는 오디오의 재생 패스를, 서브 패스를 사용하여 나타내고 있다.
도 7의 PlayList에는, 메인 패스로서 PlayItem_id=0인 1개의 PlayItem과, 서 브 패스로서 1개의 SubPlayItem이 포함되어 있다. 메인 패스의 PlayItem_id=0인 1개의 PlayItem()은 메인 Clip AV 스트림을 참조하고 있다. SubPlayItem()에는, 이하에 나타내는 데이터가 포함된다. 먼저, SubPlayItem()에는, PlayList 중의 Sub Path(서브 패스)가 참조하는 Clip을 지정하기 위한 Clip_Information_file_name이 포함된다. 도 7의 예의 경우, SubPlayItem에 의해, SubClip_entry_id=0의 Auxiliary audio stream(오디오 스트림)이 참조되고 있다. 또, SubPlayItem()에는, Clip(여기에서는, Auxiliary audio stream) 중의 Sub Path의 재생 구간을 지정하기 위한 SubPlayItem_IN_time과 SubPlayItem_OUT_time이 포함된다. 또한, SubPlayItem()에는, Main path의 시간축 상에서 Sub Path가 재생 개시하는 시각을 지정하기 위한 sync_PlayItem_id와 sync_start_PTS_of_PlayItem이 포함된다. 도 7의 예의 경우, sync_PlayItem_id=0으로 되고, sync_start_PTS_of_PlayItem=t1로 되어 있다. 이로써, 메인 패스의 PlayItem_id=0의 시간축 상에서 Sub Path가 재생을 개시하는 시각 t1을 지정할 수 있다. 즉, 도 7의 예의 경우에는, 메인 패스의 재생 개시 시각 t1과 서브 패스의 개시 시각 t1이 동일 시각인 것을 나타내고 있다.
여기에서, Sub Path에 참조되는 오디오의 Clip AV 스트림은 STC 불연속점(시스템 타임 베이스의 불연속점)을 포함해서는 안된다. 서브 패스에 사용되는 Clip의 오디오 샘플의 클록은 메인 패스의 오디오 샘플의 클록에 록되어 있다.
환언하면, SubPlayItem()에는, Sub Path가 참조하는 Clip을 지정하는 정보, Sub Path의 재생 구간을 지정하는 정보, 및 Main path의 시간축 상에서 Sub Path가 재생을 개시하는 시각을 지정하는 정보가 포함되어 있다. Sub Path에 사용되는 Clip AV 스트림이 STC를 포함하지 않기 때문에, SubPlayItem()에 포함되는 정보(Sub Path가 참조하는 Clip을 지정하는 정보, Sub Path의 재생 구간을 지정하는 정보, 및 Main path의 시간축 상에서 Sub Path가 재생을 개시하는 시각을 지정하는 정보)에 따라, 메인 패스가 참조하는 Clip AV 스트림(주로 재생되는 메인 AV 스트림)과는 상이한 Clip AV 스트림의 오디오 스트림을 참조하여, 재생할 수 있다.
이와 같이, PlayItem과 SubPlayItem은 Clip AV 스트림 파일을 각각 관리하는 것이며, 여기에서는, PlayItem이 관리하는 Clip AV 스트림 파일(메인 AV 스트림)과 SubPlayItem이 관리하는 Clip AV 스트림 파일은 상이한 파일로 될 수 있다.
그리고, 도 7의 예와 동일하게 하여, 메인 패스와 동일 타이밍에서 재생되는 자막 스트림 재생 패스를, 서브 패스를 사용하여 나타낼 수도 있다.
도 8은 메인 패스와, 서브 패스의 다른 예를 설명하는 도면이다. 도 8에서는, 메인 패스와 동일 타이밍에서(AV 동기하여) 재생되는 오디오의 재생 패스를, 서브 패스를 사용하여 나타내고 있다. 여기에서, 메인 패스의 PlayItem이 참조하는 메인 Clip AV 스트림 파일은 도 7과 동일하므로 생략하고 있다.
예를 들면, 메인 패스에 의해 참조되는 Clip AV 스트림을 1개의 영화의 컨텐츠(AV 컨텐츠)로 하고, 서브 패스의 오디오 패스에 의해 참조되는 Auxiliary audio stream(Clip)을 그 영화에 대한 감독의 코멘트으로 하고, 메인 패스로 참조되는 Clip AV 스트림의 오디오 스트림에 서브 패스의 오디오 패스로 참조되는 Auxiliary audio stream을 믹싱(중첩)하여 재생하는 경우에, 이와 같은 구성이 이용된다. 즉, 사용자가 영화를 보면서, 그 영화에 대한 감독의 코멘트를 아울러 듣는 지령을 재생 장치(플레이어)에 입력한 경우, 환언하면, 메인 패스로 참조되는 Clip AV 스트림의 음성과, 서브 패스의 오디오 패스로 참조되는 Auxiliary audio stream을, 믹싱하여 재생시키는 경우에 이용된다.
도 8에서는, 메인 패스에 3개의 PlayItem이 PlayItem_id=0, 1, 2로 배치되고, 서브 패스(Subpath_id=0)에 2개의 SubPlayItem이 배치되어 있다. 그리고, Subpath_id=0의 SubPath(도 10에서 후술함)로 호출하는 SubPlayItem(도 12에서 후술함)은, Auxiliary audio stream(SubClip_entry_id=0의 영어의 Auxiliary audio stream의 클립 및 SubClip_entry_id=1의 일본어의 Auxiliary audio stream의 클립)의 Subpath의 재생 구간을 지정하기 위한, SubPlayItem_IN_time과, SubPlayItem_out_time을 포함한다.
도 8과 도 7을 비교하면, 도 8에서는, SubPlayItem에 의해, SubClip_entry_id=0, 1의 Auxiliary audio stream(영어 또는 일본어의 오디오 스트림)을 참조할 수 있다. 즉, SubPlayItem을 사용하여, 복수개의 오디오 스트림 파일을 참조하는 구조를 가지고, 이 SubPlayItem을 재생하는 경우에는, 복수개의 오디오 스트림 파일로부터 오디오 스트림 파일이 선택되어 재생된다. 도 8의 예의 경우, 영어의 오디오 스트림 파일과 일본어의 오디오 스트림 파일 중, 1개의 오디오 스트림 파일이 선택되어 재생된다. 구체적으로는, subClip_entry_id=0, 1 중에서(예를 들면, 사용자의 지령에 따라,) 1개가 선택되고, 그 ID가 참조하는 Auxiliary audio stream이 재생된다. 또, 이에 더하여, 다시 메인 패스에 의해 참조되는 오디오 스트림과의 조합에 의한 재생이 선택된 경우, 메인 패스로 참조되는 1st 오디오 스트림과, 서브 패스의 오디오 패스로 참조되는 2nd 오디오 스트림 파일이 믹싱되어 재생된다. 그리고, 2개의 서브 패스로 참조되는 2개의 오디오 스트림이 믹싱되어 재생되도록 하는 것도 가능하지만, 이에 대해서는 후술한다.
다음에, 도 6 내지 도 8을 사용하여 설명한 메인 패스와, 서브 패스의 구조를 구체적으로 실현하기 위한 데이터 구조(신택스)를 설명한다.
도 9는 PlayList()의 신택스를 나타낸 도면이다.
length는 이 length 필드의 직후부터 PlayList()의 최후까지의 바이트 수를 나타내는 32비트의 부호 없음 정수(整數)이다. 즉, reserved_for_future_use로부터 PlayList의 최후까지의 바이트 수를 나타내는 필드이다. 이 length의 후에는, 16비트의 reserved_for_future_use가 준비된다. number_of_PlayItems는 PlayList 중에 있는 PlayItem의 수를 나타내는 16비트의 필드이다. 예를 들면, 도 6의 예의 경우 PlayItem의 수는 3개이다. PlayItem_id의 값은 PlayList 중에서 PlayItem()이 나타나는 순번으로 0부터 할당된다. 예를 들면, 도 6 및 도 8에 나타낸 바와 같이, PlayItem_id=0, 1, 2가 할당된다.
number_of_SubPaths는, PlayList 중에 있는 SubPath의 수(엔트리 수)를 나타내는 16비트의 필드이다. 예를 들면, 도 6의 예의 경우, Sub Path의 수는 3개이다. SubPath_id의 값은 PlayList 중 SubPath()가 나타나는 순번으로 0부터 할당된다. 예를 들면, 도 6에 나타낸 바와 같이, Subpath_id=0, 1, 2가 할당된다. 그 후의 for 문(文)에서는, PlayItem의 수만큼 PlayItem이 참조되고, Sub Path의 수만큼 Sub Path가 참조된다.
도 10은 SubPath()의 신택스를 나타낸 도면이다.
length는 이 length 필드의 직후부터 Sub Path()의 최후까지의 바이트 수를 나타내는 32비트의 부호 없음 정수이다. 즉, reserved_for_future_use로부터 PlayList의 최후까지의 바이트 수를 나타내는 필드이다. 이 length의 후에는, 16비트의 reserved_for_future_use가 준비된다. SubPath_type은 SubPath의 애플리케이션 종류를 나타내는 8비트의 필드이다. SubPath_type은, 예를 들면, Sub Path가 오디오인가, 비트맵 자막인가, 텍스트 자막인가 등의 종류를 나타내는 경우에 이용된다. 이 SubPath_type의 제1 예에 대해서는, 도 11을 참조하여 후술한다. SubPath_type의 후에는, 15비트의 reserved_for_future_use가 준비된다. is_repeat_SubPath는 SubPath의 재생 방법을 지정하는 1비트의 필드이며, 메인 패스의 재생 사이에 SubPath의 재생을 반복하여 행하는가, 또는 SubPath의 재생을 1회만 행하는가를 나타내는 것이다. 예를 들면, 메인 AV 스트림과, 서브 패스가 지정하는 Clip에 포함되는 스트림과의 재생 타이밍이 상이한 경우(메인 패스를 정지 화상의 슬라이드 쇼로 하고, 서브 패스의 오디오 패스를 메인 패스의 BGM(백그라운드 뮤직)로서 사용하는 경우 등)에 이용된다. Is_repeat_SubPath의 후에는, 8비트의 reserved_for_future_use가 준비된다. number_of_SubPlayItems는 1개의 SubPath 중에 있는 SubPlayItem의 수(엔트리 수)를 나타내는 8비트의 필드이다. 예를 들면, number_of_SubPlayItems는 도 6의 SubPath_id=0의 SubPlayItem은 1개이며, SubPath_id=1의 SubPlayItem은 2개이다. 그 후의 for 문에서는, SubPlayItem의 수만큼, SubPlayItem이 참조된다.
도 11은 SubPath_type(서브 패스의 타입)의 제1 예를 설명하는 도면이다. 즉, SubPath의 종류는, 예를 들면, 도 11에 나타낸 바와 같이 정의할 수 있다.
도 11에서, SubPath_type=0, 1은 reserved로 되어 있다. SubPath_type=2는 Audio presentation path of the Browsable slideshow(브라우저블 슬라이드쇼의 오디오 프리젠테이션 패스)로 되어 있다. 예를 들면, SubPath_type=2는 플레이 리스트 중에서, 서브 패스로 참조되는 오디오 프리젠테이션 패스와, 플레이 아이템으로 참조되는 메인 패스가 비동기인 것을 나타내고 있다.
SubPath_type=3은 Interactive graphics presentation menu(인터랙티브 그래픽스의 프리젠테이션 메뉴)로 되어 있다. 예를 들면, SubPath_type=3은 플레이 리스트 중에서, 서브 패스로 참조되는 인터랙티브 그래픽스의 메뉴와, 플레이 아이템으로 참조되는 메인 패스가 비동기인 것을 나타내고 있다.
SubPath_type=4는 Text subtitle presentation path(텍스트 자막의 프리젠테이션 패스)로 되어 있다. 예를 들면, SubPath_type=4는 플레이 리스트 중에서, 서브 패스로 참조되는 텍스트 자막의 프리젠테이션 패스와, 플레이 아이템으로 참조되는 메인 패스가 동기하고 있는 것을 나타내고 있다.
SubPath_type=5는 2nd Audio Presentation path(2번째의 오디오 프리젠테이션 패스) (2nd 오디오 스트림을 참조하기 위한 패스)로 되어 있다. 구체적으로는, SubPath_type=5는 플레이 리스트 중에서, 서브 패스로 참조되는 2번째의 오디오 프리젠테이션 패스와, 플레이 아이템으로 참조되는 메인 패스가 동기하고 있는 것을 나타내고 있다. 예를 들면, 이 서브 패스로 참조되는 (2번째의) 오디오 스트림은 영화에 대한 감독의 코멘트(음성)이다. 도 8에서 Subpath_id=0으로 나타나는 Subpath의 경우, 도 10의 SubPath_type은 이 SubPath_type=5로 된다.
SubPath_type=6은 2nd Video Presentation path(2번째의 비디오 프리젠테이션 패스) (2nd 비디오 스트림을 참조하기 위한 패스)로 되어 있다. 구체적으로는, SubPath_type=6은 플레이 리스트 중에서, 서브 패스로 참조되는 2번째의 비디오 프리젠테이션 패스와, 플레이 아이템으로 참조되는 메인 패스가 동기하고 있는 것을 나타내고 있다. 예를 들면, 이 서브 패스로 참조되는 (2번째의) 비디오 스트림은 영화에 대한 감독의 코멘트(동화상)이다. 그리고, 도 27 및 도 28을 사용하여 설명하는 재생 장치(1)의 처리의 설명에서는 오디오의 합성만을 상세하게 설명하지만, 동화상의 합성도 동일한 구성으로 실현을할 수 있고, 그 상세한 것에 대해서는 후술한다.
SubPath_type=7 내지 255는 reserved로 되어 있다.
도 12는 SubPlayItem(i)의 신택스를 나타낸 도면이다.
length는 이 length 필드의 직후부터 Sub playItem()의 최후까지의 바이트 수를 나타내는 16비트의 부호 없음 정수이다.
도 12에서는, SubPlayItem이 1개의 Clip을 참조하는 경우와, 복수개의 Clip을 참조하는 경우로 나누어져 있다.
최초에, SubPlayItem이 1개의 Clip을 참조하는 경우에 대하여 설명한다.
SubPlayItem에는, Clip을 지정하기 위한 Clip_Information_file_ name[0]이 포함된다. 또, Clip의 코덱 방식을 지정하는 Clip_codec_identifier[0], reserved_for_future_use, 멀티클립의 등록 유무를 나타내는 플래그인 is_multi_Clip_entries, STC 불연속점(시스템 타임 베이스의 불연속점)에 관한 정보인 ref_to_STC_id[0]을 포함한다. is_multi_Clip_entries의 플래그가 서 있는 경우, SubPlayItem이 복수개의 Clip을 참조하는 경우의 신택스가 참조된다. 또, Clip 중에 있는 Sub Path의 재생 구간을 지정하기 위한 SubPlayItem_IN_time과 SubPlayItem_OUT_time을 포함한다. 또한, main path의 시간축 상에서 Sub Path가 재생 개시하는 시각을 지정하기 위해 sync_PlayItem_id와 sync_start_PTS_of_PlayItem을 포함한다. 이 sync_PlayItem_id와 sync_start_PTS_of_PlayItem은, 전술한 바와 같이, 도 7과 도 8의 경우(메인 AV 스트림과, 서브 패스에 의해 나타나는 파일에 포함되는 스트림의 재생 타이밍이 동일한 경우)에 사용되고, 메인 AV 스트림과, 서브 패스에 의해 나타나는 파일에 포함되는 스트림의 재생 타이밍이 상이한 경우(예를 들면, 정지 화상에 의해 구성되는 슬라이드 쇼의 BGM과 같이, 메인 패스에 의해 참조되는 정지 화상과 서브 패스에 의해 참조되는 오디오가 동기 하지 않는 경우)에는 사용되지 않는다. 또, SubPlayItem_IN_time, SubPlayItem_OUT_time, sync_PlayItem_id, sync_start_PTS_of_PlayItem은, SubPlayItem이 참조하는 Clip에서 공통으로 사용된다.
다음에, SubPlayItem이 복수개의 Clip을 참조하는 경우(if(is_multi_Clip_entries==1b인 경우, 즉, 멀티클립의 등록이 행해지고 있는 경우)에 대하여 설명한다. 구체적으로는, 도 8에 나타낸 바와 같이, SubPlayItem 이 복수개의 Clip을 참조하는 경우를 나타낸다.
num_of_Clip_entries는 Clip의 수를 나타내고 있으며, Clip_Information_file_name[SubClip_entry_id]의 수가 Clip_Information_file_ name[0]을 제외한 Clips를 지정한다. 즉, Clip_Information_file_ name[0]을 제외한 Clip_Information_file_ name[1], Clip_Information_file_ name[2] 등의 Clip을 지정한다. 또, SubPlayItem은 Clip의 코덱 방식을 지정하는 Clip_codec_identifier[SubClip_entry_id], STC 불연속점(시스템 타임 베이스의 불연속점)에 관한 정보인 ref_to_STC_id[SubClip_entry_id], 및 reserved_for_future_use를 포함한다.
그리고, 복수개의 Clip 사이에서, SubPlayItem_IN_time, SubPlayItem_OUT_time, sync_PlayItem_id, 및 sync_start_PTS_of_PlayItem은 공통적으로 사용된다. 도 8의 예의 경우, SubPlayItem_IN_time, SubPlayItem_OUT_time, sync_PlayItem_id, 및 sync_start_PTS_of_PlayItem은, SubClip_entry_id=0과 SubClip_entry_id=1 사이에서 공통적으로 사용되는 것이며, 선택된 SubClip_entry_id에 대한 Text based subtitle이 이 SubPlayItem_IN_time, SubPlayItem_OUT_time, sync_PlayItem_id, 및 sync_start_PTS_of_PlayItem에 따라, 재생된다.
여기에서, SubClip_entry_id의 값은 SubPlayItem 중에 있는 Clip_Information_file_name[SubClip_entry_id]가 나타나는 순번으로 1부터 할당된다. 또, Clip_Information_file_ name[0]의 SubClip_entry_id는 0이다.
도 13은 PlayItem()의 신택스를 나타낸 도면이다.
length는 이 length 필드의 직후부터 PlayItem()의 최후까지의 바이트 수를 나타내는 16비트의 부호 없음 정수이다. Clip_Information_file_ name[0]은 PlayItem이 참조하는 Clip을 지정하기 위한 필드이다. 도 7의 예의 경우, Clip_Information_file_ name[0]에 의해, 메인 Clip AV 스트림 파일이 참조된다. 또, PlayItem()에는, Clip의 코덱 방식을 지정하는 Clip_codec_identifier[0], reserved_for_future_use, is_multi_angle, connection_condition, STC 불연속점(시스템 타임 베이스의 불연속점)에 관한 정보인 ref_to_STC_id[0]이 포함된다. 또한, PlayItem()에는, Clip 중의 PlayItem의 재생 구간을 지정하기 위한 IN_time과 OUT_time이 포함된다. 도 7의 예의 경우, IN_time과 OUT_time에 의해, 메인 Clip AV 스트림 파일의 재생 범위가 나타난다. 또, PlayItem()에는, UO_mask_table(), PlayItem_random_access_mode, still_mode가 포함된다. 그리고, is_multi_angle이 복수개 있는 경우에 대해서는, 본 발명과 직접적으로는 관계가 없으므로 그 설명을 생략한다.
PlayItem() 중의 STN_table()은 대상의 PlayItem과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있는 경우에, 사용자에 의한 음성 전환이나 자막 전환이라고 하는 조작이, 그 PlayItem이 참조하는 Clip과 이들 1개 이상의 SubPath가 참조하는 Clips 중에서 선택할 수 있는 구조를 제공하는 것이다.
도 14는 STN_table()의 신택스의 제1 예(제1 STN_table())를 나타낸 도면이다. 제1 STN_table()은 PlayItem의 속성으로서 설정되어 있다. 또, 도 14의 제1 STN_table()은 PlayItem이 참조하는 Clip과 SubPath가 참조하는 Clip을 조합한 것의 재생을 선택할 수 있는 구조를 제공하는 것이다.
length는 이 length 필드의 직후부터 STN_table()의 최후까지의 바이트 수를 나타내는 16비트의 부호 없음 정수이다. length의 후에는, 16비트의 reserved_for_future_use가 준비된다. number_of_video_stream_entries는 STN_table() 중에서 엔트리되는(등록되는) video_stream_id가 부여되는 스트림 수를 나타낸다. video_stream_id는 비디오 스트림을 식별하기 위한 정보이며, video_stream_number는 비디오 전환에 사용되는, 사용자로부터 보이는 비디오 스트림 번호이다. number_of_audio_stream_entries는 STN_table() 중에서 엔트리되는 audio_stream_id가 부여되는 스트림 수를 나타낸다. audio_stream_id는 오디오 스트림을 식별하기 위한 정보이며, audio_stream_number는 음성 전환에 사용되는 사용자로부터 보이는 오디오 스트림 번호이다.
number_of_PG_txtST_stream_entries는 STN_table() 중에서 엔트리되는 PG_txtST_stream_id가 부여되는 스트림 수를 나타낸다. 이 중에서는, DVD의 서브픽처와 같은 비트맵 자막을 실행 길이 부호화한 스트림(PG, Presentation Graphics stream)과 텍스트 자막 파일(txtST)이 엔트리된다. PG_txtST_stream_id는 자막 스트림을 식별하기 위한 정보이며, PG_txtST_stream_number는 자막 전환에 사용되는 사용자로부터 보이는 자막 스트림 번호(텍스트 서브타이틀 스트림의 번호)이다.
number_of_IG_stream_entries는 STN_table() 중에서 엔트리되는 IG_stream_id가 부여되는 스트림 수를 나타낸다. 이 중에서는, 인터랙티브 그래픽 스 스트림이 엔트리된다. IG_stream_id는 인터랙티브 그래픽스 스트림을 식별하기 위한 정보이며, IG_stream_number는 그래픽스 전환에 사용되는 사용자로부터 보이는 그래픽스 스트림 번호이다.
여기에서, stream_entry()의 신택스에 대하여 도 15를 참조하여 설명한다.
length는 이 length 필드의 직후부터 stream_entry()의 최후까지의 바이트 수를 나타내는 8비트의 부호 없음 정수이다. type은 전술한 스트림 번호가 부여되는 스트림을 일의적(一意的)으로 특정하기 위해 필요한 정보의 종류를 나타내는 8비트의 필드이다.
type=1 또는 type=3에서는, PlayItem에 의해 참조되는 Clip(Main Clip) 중에 다중화되어 있는 복수개의 엘리멘터리 스트림 중에서 1개의 엘리멘터리 스트림을 특정하기 위해, 16비트의 패킷 ID(PID)가 지정된다. ref_to_stream_PID_of_mainClip이 이 PID를 나타내고 있다. 즉, type=1과 type=3에서는, 메인 Clip AV 스트림 파일 중의 PID를 지정하는 것만으로 스트림이 결정된다.
type=2 또는 type=3에서는, SubPath가 한번에 복수개의 Clips를 참조하고, 각각의 Clip이 복수개의 엘리멘터리 스트림을 다중화하는 경우에, SubPath에 의해 참조되는 1개의 Clip(SubClip)의 복수개의 엘리멘터리 스트림 중에서 1개의 엘리멘터리 스트림을 특정하기 위해, 그 SubPath의 SubPath_id, Clip id, 및 패킷 ID(PID)가 지정된다. ref_to_SubPath_id가 이 SubPath_id를 나타내고, ref_to_SubClip_entry_id가 이 Clip id를 나타내고, ref_to_stream_PID_of_SubClip 이 이 PID를 나타내고 있다. SubPlayItem 중에서 복수개의 Clip이 참조되고, 또한 이 Clip에 복수개의 엘리멘터리 스트림이 참조되어 있는 경우에 사용된다.
즉, type=3의 경우, PlayItem에 의해 참조되는 Clip(Main Clip) 중에 다중화되어 있는 복수개의 엘리멘터리 스트림 중에서 1개의 엘리멘터리 스트림을 특정하기 위한 패킷 ID(PID)와, SubPath가 한번에 복수개의 Clips를 참조하고, 각각의 Clip이 복수개의 엘리멘터리 스트림을 다중화하는 경우에, SubPath에 의해 참조되는 1개의 Clip(SubClip)의 복수개의 엘리멘터리 스트림 중에서 1개의 엘리멘터리 스트림을 특정하기 위한, SubPath의 SubPath_id, Clip id, 및 패킷 ID(PID)에 의해, 2개의 스트림을 엔트리할 수 있다. 예를 들면, 메인 패스가 참조하는 오디오 스트림과, 서브 패스가 참조하는 오디오 스트림의 2개의 오디오 스트림을 엔트리할 수 있다. 그리고, 이하에서는, 메인 패스가 참조하는 오디오 스트림을 1st 오디오 스트림이라고도 하고, 서브 패스가 참조하는 오디오 스트림을 2nd 오디오 스트림이라고도 한다.
이와 같이, type(1 내지 3의 3개의 type)을 사용함으로써, PlayItem과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있는 경우에, 이 PlayItem이 참조하는 Clip과 1개 이상의 SubPath가 참조하는 Clip 중에서 1개의 엘리멘터리 스트림을 특정할 수 있다. 그리고, type=1은 Main Path가 참조하는 Clip(메인 Clip)을 나타내고, type=2 및 3은 Sub Path가 참조하는 Clip(서브 Clip)을 나타내고 있다.
또, type=3의 경우, 메인 패스로 참조되는 메인 Clip AV 스트림 파일의 오디 오 스트림(1st 오디오 스트림)과, 서브 패스로 참조되는 오디오 스트림(2nd 오디오 스트림)을 특정하여, 엔트리할 수 있다. 예를 들면, 1st 오디오 스트림과, 2nd 오디오 스트림을 맞추어(믹싱하여) 재생할 수 있다.
도 14의 제1 STN_table()의 설명으로 되돌아가, 비디오 스트림 ID(video_stream_id)의 for 루프 중에서, 순번으로 stream_entry()마다 특정되는 1개의 비디오 엘리멘터리 스트림에, 0부터 video_stream_id가 부여된다. 그리고, 비디오 스트림 ID(video_stream_id) 대신에, 비디오 스트림 번호(video_stream_number)를 사용하도록 해도 된다. 이 경우, video_stream_number는 0이 아니라 1부터 부여된다. 즉, video_stream_id의 값에 1을 가산한 것이 video_stream_number이다. 비디오 스트림 번호는 비디오 전환에 사용되는, 사용자로부터 보이는 비디오 스트림 번호이므로, 1부터 정의된다.
동일하게, 오디오 스트림 ID(audio_stream_id)의 for 루프 중에서, 순번으로 stream_entry()마다 특정되는 1개의 오디오 엘리멘터리 스트림에, 0부터 audio_stream_id가 부여된다. 그리고, 비디오 스트림의 경우와 동일하게, 오디오 스트림 ID(audio_stream_id) 대신에, 오디오 스트림 번호(audio_stream_number)를 사용하도록 해도 된다. 이 경우, audio_stream_number는 0이 아니라 1부터 부여된다. 즉, audio_stream_id의 값에 1을 가산한 것이 audio_stream_number이다. 오디오 스트림 번호는 음성 전환에 사용되는, 사용자로부터 보이는 오디오 스트림 번호이므로, 1부터 정의된다.
동일하게, 자막 스트림 ID(PG_txtST_stream_id)의 for 루프 중에서, 순번으 로 stream_entry()마다 특정되는 1개의 비트맵 자막 엘리멘터리 스트림 또는 텍스트 자막에, 0부터 PG_txtST_stream_id가 부여된다. 그리고, 비디오 스트림의 경우와 동일하게, 자막 스트림 ID(PG_txtST_stream_id) 대신에, 자막 스트림 번호(PG_txtST_stream_number)를 사용하도록 해도 된다. 이 경우, PG_txtST_stream_number는 0이 아니라 1부터 부여된다. 즉, PG_txtST_stream_id의 값에 1을 가산한 것이 PG_txtST_stream_number이다. 자막 스트림 번호는 자막 전환에 사용되는 사용자로부터 보이는 자막 스트림 번호(텍스트 서브타이틀 스트림의 번호)이므로, 1부터 정의된다.
동일하게, 그래픽스 스트림 ID(IG_stream_id)의 for 루프 중에서, 순번으로 stream_entry()마다 특정되는 1개의 인터랙티브 그래픽스 엘리멘터리 스트림에, 0부터 IG_stream_id가 부여된다. 그리고, 비디오 스트림의 경우와 동일하게, 그래픽스 스트림 ID(IG_stream_id) 대신에, 그래픽스 스트림 번호(IG_stream_number)를 사용하도록 해도 된다. 이 경우, IG_stream_number는 0이 아니라 1부터 부여된다. 즉, IG_stream_id의 값에 1을 가산한 것이 IG_stream_number이다. 그래픽스 스트림 번호는 그래픽스 전환에 사용되는 사용자로부터 보이는 그래픽스 스트림 번호이므로, 1부터 정의된다.
다음에, 도 14의 제1 STN_table()의 stream_attribute()에 대하여 설명한다. 이 stream_attribute에서는, stream_entry()로 특정되는 스트림의 속성 정보가 기록된다.
비디오 스트림 ID(video_stream_id)의 for 루프 중의 stream_attribute()은, stream_entry()마다 특정되는 1개의 비디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 이 stream_attribute()에는, stream_entry()마다 특정되는 1개의 비디오 엘리멘터리 스트림의 스트림 속성 정보가 기술되어 있다.
오디오 스트림 ID(audio_stream_id)의 for 루프 중의 stream_attribute()은, stream_entry()마다 특정되는 적어도 1개 이상의 오디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 이 stream_attribute()에는, stream_entry()마다 특정되는 적어도 1개 이상의 오디오 엘리멘터리 스트림의 스트림 속성 정보가 기술되어 있다. 구체적으로는, 도 15의 stream_entry()에서 type=1 또는 type=2인 경우, 이 stream_entry()로 특정되는 오디오 엘리멘터리 스트림은 1개이므로, stream_attribute()은, 그 1개의 오디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 여기에서, 도 15의 stream_entry()에서 type=3인 경우, 이 stream_entry()로 특정되는 오디오 엘리멘터리 스트림은 2개(메인 패스로 참조되는 1st 오디오 스트림과, 서브 패스로 참조되는 2nd 오디오 스트림의 2개)이므로, stream_attribute()은, 2개의 오디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다.
이와 같이, type=3인 경우, 즉, 메인 패스와 서브 패스의 양쪽에서, audio stream을 참조하는 경우, stream_attributes도 2개분 삽입할 수 있는 것으로 되어 있다. 즉, for 문의 audio stream에서, stream_entry()에서 type=3인 경우, 그 후의 stream_attributes()에서는, stream_attributes()이 2개 엔트리된다.
즉, 도 14의 제1 STN_table()에서는, 오디오 스트림 ID(audio_stream_id)의 stream_entry()마다, stream_attributes()이 정의되는 것이지만, type=3의 경우, stream_entry()에 대하여, 2개의 stream_attributes()이 부여된다. 이로써, audio_stream_id 하나에 대하여, 메인 패스와 서브 패스에 의해 참조되는 2개의 stream_attributes()이 엔트리되게 되므로, 동시에 재생하는 오디오 스트림을 2개 엔트리하는 것이 가능하게 된다.
자막 스트림 ID(PG_txtST_stream_id)의 for 루프 중의 stream_attribute()은, stream_entry()마다 특정되는 1개의 비트맵 자막 엘리멘터리 스트림 또는 텍스트 자막 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 이 stream_attribute()에는, stream_entry()마다 특정되는 1개의 비트맵 자막 엘리멘터리 스트림의 스트림 속성 정보가 기술되어 있다.
동일하게, 그래픽스 스트림 ID(IG_stream_id)의 for 루프 중의 stream_attribute()은, stream_entry()마다 특정되는 1개의 인터랙티브 그래픽스 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 이 stream_attribute()에는, stream_entry()마다 특정되는 1개의 인터랙티브 그래픽스 엘리멘터리 스트림의 스트림 속성 정보가 기술되어 있다.
그리고, 도 14와 도 15의 예에서는, 메인 패스로 참조되는 오디오 스트림과, 서브 패스로 참조되는 오디오 스트림의 2개의 오디오 스트림을 엔트리하는 경우에 대하여 설명했지만, 2개의 서브 패스로 참조되는 2개의 오디오 스트림을 엔트리할 수 있도록 한 제2 STN_table()의 신택스와, 제2 Stream_entry()의 신택스의 예를, 도 16과 도 17에 나타낸다. 그리고, 도면 중, 도 14 및 도 15와 대응하는 부분에 대해서는, 반복이 되므로 그 설명은 생략한다.
도 16은 제2 STN_table()의 신택스를 나타낸 도면이다. 제2 STN_table()은 PlayItem의 속성으로서 설정되어 있다. 도 17은 제2 Stream_entry()의 신택스를 나타낸 도면이다.
도 17의 type=1에서는, PlayItem에 의해 참조되는 Clip(Main Clip) 중에 다중화되어 있는 복수개의 엘리멘터리 스트림 중에서 1개의 엘리멘터리 스트림을 특정하기 위해, 16비트의 패킷 ID(PID)가 지정된다. ref_to_stream_PID_of_mainClip이 이 PID를 나타내고 있다. 즉, type=1에서는, 메인 Clip AV 스트림 파일 중의 PID를 지정하는 것만으로 스트림이 결정된다.
type=2에서는, SubPath가 한번에 복수개의 Clips를 참조하고, 각각의 Clip이 복수개의 엘리멘터리 스트림을 다중화하는 경우에, SubPath에 의해 참조되는 1개의 Clip(SubClip)의 복수개의 엘리멘터리 스트림 중에서 1개의 엘리멘터리 스트림을 특정하기 위해, 그 SubPath의 SubPath_id, Clip id, 및 패킷 ID(PID)가 지정된다. ref_to_SubPath_id가 이 SubPath_id를 나타내고, ref_to_SubClip_entry_id가 이 Clip id를 나타내고, ref_to_stream_PID_of_SubClip이 이 PID를 나타내고 있다. SubPlayItem 중에서 복수개의 Clip이 참조되고, 또한 이 Clip에 복수개의 엘리멘터리 스트림이 참조되어 있는 경우에 사용된다.
이와 같이, type(type1과 type2의 2개의 type)를 사용함으로써, PlayItem과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있는 경우에, 이 PlayItem이 참조하는 Clip과 1개 이상의 SubPath가 참조하는 Clip 중에서 1개의 엘 리멘터리 스트림을 특정할 수 있다. 그리고, type=1은 Main Path가 참조하는 Clip(메인 Clip)을 나타내고 있으며, type=2는 Sub Path가 참조하는 Clip(서브 Clip)을 나타내고 있다.
도 16의 제2 STN_table()의 설명으로 되돌아가, 오디오 스트림 ID(audio_stream_id)의 for 루프 중에서, 순번으로 stream_entry()마다 특정되는 오디오 엘리멘터리 스트림에, 0부터 audio_stream_id가 부여된다. 여기에서는, 도 14와는 달리, 1번째의 오디오 스트림을 위한(후술하는 도 28의 재생 장치의 1st 오디오 디코더(75-1)가 디코드하는) Stream_entry()와 Stream_attributes()의 후에, 2번째의 오디오 스트림을 정의하는지 여부를 나타내는 secondary_audio_present_flag가 설치되어 있다. 2번째의 오디오 스트림(Secondary Audio Stream)을 정의한 경우, 이 secondary_audio_present_flag의 값이 1에 세트되고, 그 후에 기술되어 있는 if 문 중의 Stream_entry(), Stream_attributes()에서, 2번째의 오디오 스트림이 정의된다. Secondary_audio_present_flag가 1인 경우, 오디오 스트림 ID(audio_stream_id)의 for 루프 중에, 2개의 stream_entry()가 정의되어 있으므로, 2개의 stream_entry()의 각각에 의해 특정되는 2개의 오디오 엘리멘터리 스트림에, 0부터 audio_stream_id가 부여된다. 그리고, 비디오 스트림의 경우와 동일하게, 오디오 스트림 ID(audio_stream_id) 대신에, 오디오 스트림 번호(audio_stream_number)를 사용하도록 해도 된다. 이 경우, audio_stream_number는 0이 아니라 1부터 부여된다. 즉, audio_stream_id의 값에 1을 가산한 것이 audio_stream_number이다. 오디오 스트림 번호는 음성 전환에 사 용되는, 사용자로부터 보이는 오디오 스트림 번호이므로, 1부터 정의된다.
또, Secondary Audio stream이 엔트리 되지 않은 경우(즉, 2개째의 stream_entry()가 엔트리 되지 않은 경우)도 있으며, 그 경우에는, secondary_audio_present_flag가 0으로 되고, 1번째의 오디오 스트림(Main Audio Stream)만이 엔트리된다. 즉, 2개째의 오디오 스트림이 없는 경우에는, 2개째의 Stream_entry()가 엔트리 되지 않게 된다. 이 경우, 2개의 오디오의 믹싱 재생은 행해지지 않는다.
오디오 스트림 ID(audio_stream_id)의 for 루프에는, stream_entry()와 stream_attribute()과의 조합이 2개 기술되어 있다. 최초의 stream_entry()와 stream_attribute()과의 조합은 후술하는 도 28의 재생 장치(1)의 1st 오디오 디코더(75-1)로 디코드되는 오디오 스트림을 위한 정의이며, secondary_audio_present_flag가 1인 경우에 엔트리되는 2번째의 stream_entry()와 stream_attribute()과의 조합은 후술하는 도 28의 재생 장치(1)의 2nd 오디오 디코더(75-2)로 디코드되는 오디오 스트림을 위한 정의이다. 즉, 2개의 오디오 스트림을 정의할 수 있다.
오디오 스트림 ID(audio_stream_id)의 for 루프 중의 stream_attribute()은, stream_entry()마다 특정되는 적어도 1개 이상의 오디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 이 stream_attribute()에는, stream_entry()마다 특정되는 적어도 1개 이상의 오디오 엘리멘터리 스트림의 스트림 속성 정보가 기술되어 있다. 구체적으로는, 도 16의 secondary_audio_present_flag가 1인 경우, 2 개의 stream_entry()로 특정되는 오디오 엘리멘터리 스트림은 2개이므로, stream_attribute()은 각각 대응하는 오디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 오디오 스트림 ID(audio_stream_id)의 for 루프 중 최초의 stream_entry()에 의해, 후술하는 도 28의 재생 장치(1)의 1st 오디오 디코더(75-1)로 디코드되는 오디오 스트림(Main Audio Stream)이 정의되고, 이로써, 특정되는 오디오 엘리멘터리 스트림의 스트림 속성 정보가 오디오 스트림 ID(audio_stream_id)의 for 루프 중 최초의 stream_attribute()에 의해 부여된다. 동일하게 하여, secondary_audio_present_flag가 1인 경우, 오디오 스트림 ID(audio_stream_id)의 for 루프 중의 다음의(2번째)의 stream_entry()에 의해, 후술하는 도 28의 재생 장치(1)의 2nd 오디오 디코더(75-2)로 디코드되는 오디오 스트림(Secondary Audio Stream)이 정의되고, 이로써, 특정되는 오디오 엘리멘터리 스트림의 스트림 속성 정보가 오디오 스트림 ID(audio_stream_id)의 for 루프 중 2번째의 stream_attribute()에 의해 부여된다.
예를 들면, 오디오 스트림 ID(audio_stream_id)의 for 루프 중 최초의 stream_entry()에 의해 정의되는 오디오 스트림은, 예를 들면, 영화의 일본어 더빙 음성이나, 영어의 음성으로 되고, 오디오 스트림 ID(audio_stream_id)의 for 루프 중의 secondary_audio_present_flag가 1인 경우, 2번째의 stream_entry()에 의해 정의되는 오디오 스트림은, 예를 들면, 영화의 디렉터스 컷용 음성으로 상정되어, Main Path에 의해 참조되는 AV 스트림 파일의 소정의 부분에만, 영화 감독 등의 코멘트가 들어가 있는 경우 등에 사용되는 것이 고려된다.
즉, 2개의 오디오 스트림을 합성하는 경우에는, Primary(1st)의 오디오 스트림에 합성해야 할 오디오 스트림이 존재하는 것을 나타내는 플래그인, 도 16의 secondary_audio_present_flag에 1이 세트되고, 합성해야 할 오디오 스트림의 stream_entry(), stream_attribute()이 참조되어, 오디오 스트림의 합성이 행해진다.
상세하게는, 합성하는 한쪽의 오디오 스트림을, 메인 패스로 참조되는 오디오 스트림(후술하는 도 28의 재생 장치(1)의 1st 오디오 디코더(75-1)로 디코드되는 Main Audio Stream)으로 하고, 다른 쪽을 서브 패스로 참조되는 오디오 스트림(후술하는 도 28의 재생 장치(1)의 2nd 오디오 디코더(75-2)로 디코드되는 Secondary Audio Stream)으로 한 경우, 도 16의 최초의 stream_entry()의 type의 값이 type=1로 되고, 이로써, 특정되는 오디오 엘리멘터리 스트림의 스트림 속성 정보가 stream_attribute()에 의해 부여되고, 도 16의 secondary_audio_present_flag가 1로 되고, 2번째의 stream_entry()의 type의 값이 type=2로 되고, 이로써, 특정되는 오디오 엘리멘터리 스트림의 스트림 속성 정보가 stream_attribute()에 의해 부여된다.
또, 합성하는 오디오 스트림을, 2개 모두 서브 패스로 참조되는 오디오 스트림으로 한 경우, 도 16의 오디오 스트림 ID(audio_stream_id)의 for 루프 중 최초의 stream_entry()의 type의 값이 type=2로 되고, 이로써, 특정되는 오디오 엘리멘터리 스트림의 스트림 속성 정보가 stream_attribute()에 의해 부여되고, 도 16의 오디오 스트림 ID(audio_stream_id)의 for 루프 중의 secondary_audio_present_flag가 1로 되고, 2번째의 stream_entry()의 type의 값이 type=2로 되고, 이로써, 특정되는 오디오 엘리멘터리 스트림의 스트림 속성 정보가 stream_attribute()에 의해 부여된다. 즉, 합성하는 오디오 스트림을, 2개 모두 서브 패스로 참조되는 오디오 스트림으로 하는 경우, 도 17의 stream_entry()의 type은 모두 2로 된다.
이와 같이, 오디오 스트림(또는 비디오 스트림)을 각각 서브 패스로 지정하는 형태로 추가하는 것으로 했기 때문에, 디스크 상에 있는 오디오 스트림(또는 비디오 스트림)과, 다운로드 등에 의해 취득한 또는 로컬 스토리지 상에 있는 오디오 스트림(또는 비디오 스트림)을 동기하여 재생할 수 있는 동시에, 함께 다운로드 등에 의해 취득한 오디오 스트림끼리(또는 비디오 스트림끼리)를, 디스크 상의 또는 취득한 비디오 스트림(또는 오디오 스트림)과 동기하여 재생할 수 있다.
그리고, PlayList도 취득하도록 하면, 메인 패스에 의해 지정되는 취득한 비디오 스트림(또는 오디오 스트림)과, 서브 패스에 의해 지정되는 취득한 2개의 오디오 스트림(또는 비디오 스트림)을 동기하여 재생할 수도 있다.
그리고, 메인 패스로 참조되는 오디오만을 재생, 또는 1개의 서브 패스로 지정되는 오디오만을 재생하는 경우에는, 도 16의 secondary_audio_present_flag에 0이 세트되고, 최초의 stream_entry()에서 메인 패스로 참조되는 경우에는 type=1로 하고, 서브 패스로 지정되는 오디오만을 재생하는 경우에는 type=2로 하고, 이로써, 특정되는 오디오 엘리멘터리 스트림의 스트림 속성 정보가 stream_attribute()에 의해 부여된다. 즉, 믹싱하지 않고 1개의 오디오 스트림만을 재생할 수도 있 다.
이와 같이, 도 16에서는, stream_entry()와 stream_attributes를, 2개의 오디오 엘리멘터리 스트림분만큼 삽입할 수 있는 것으로 되어 있다. 즉, for 문의 audio stream에서, 2개의 stream_entry()를 사용하여, 각각 대응하는 stream_attributes()을 엔트리할 수 있다.
즉, 도 16의 제2 STN_table()에서는, 오디오 스트림 ID(audio_stream_id)의 2개의 stream_entry()에 의해, 각각 대응하는 stream_attributes()이 정의된다. 이로써, audio_stream_id 하나에 대하여, 메인 패스와 서브 패스에 의해 참조되는, 또는, 2개의 서브 패스에 의해 참조되는 2개의 stream_entry()와 stream_attributes()의 조합이 엔트리되게 되므로, 동시에 재생하는 오디오 스트림을 2개 엔트리하는 것이 가능하게 된다.
그리고, 도 16의 비디오 스트림 ID(video_stream_id), 자막 스트림 ID(PG_txtST_stream_id), 그래픽스 스트림 ID(IG_stream_id)에 대해서는, 도 14와 동일하다.
다음에, stream_attribute()의 신택스에 대하여 도 18을 참조하여 설명한다.
length는 이 length 필드의 직후부터 stream_attribute()의 최후까지의 바이트 수를 나타내는 16비트의 부호 없음 정수이다.
stream_coding_type은 도 19에 나타낸 바와 같이 엘리멘터리 스트림의 부호화 타입을 나타낸다. 엘리멘터리 스트림의 부호화 타입으로서는, MPEG-2 video stream, HDMV LPCM audio, Dolby AC-3 audio, dts audio, Presentation graphics stream, Interactive graphics stream, 및 Text subtitle stream이 기술된다. 그리고, 이 stream_coding_type을 확장하고, MPEG-4 AVC, VC-1 등의 다른 코덱에 의해 압축된 비디오 스트림을 취급할 수 있도록 해도 된다.
video_format은 도 20에 나타낸 바와 같이 비디오 엘리멘터리 스트림의 비디오 포맷을 나타낸다. 비디오 엘리멘터리 스트림의 비디오 포맷으로서는, 480i, 576i, 480p, 1080i, 720p, 및 1080p가 기술된다.
frame_rate는 도 21에 나타낸 바와 같이 비디오 엘리멘터리 스트림의 프레임 레이트를 나타낸다. 비디오 엘리멘터리 스트림의 프레임 레이트로서는, 24000/1001, 24, 25, 30000/1001, 50, 및 60000/1001이 기술된다.
aspect_ratio는 도 22에 나타낸 바와 같이 비디오 엘리멘터리 스트림의 아스펙트비 정보를 나타낸다. 비디오 엘리멘터리 스트림의 아스펙트비 정보로서는, 4 : 3 display aspect ratio, 및 16 : 9 display aspect ratio가 기술된다.
audio_presentation_type은 도 23에 나타낸 바와 같이 오디오 엘리멘터리 스트림의 프리젠테이션 타입 정보를 나타낸다. 오디오 엘리멘터리 스트림의 프리젠테이션 타입 정보로서는, single mono channel, dual mono channel, stereo(2-channel), 및 multi-channel가 기술된다.
sampling_frequency는 도 24에 나타낸 바와 같이 오디오 엘리멘터리 스트림의 샘플링 주파수를 나타낸다. 오디오 엘리멘터리 스트림의 샘플링 주파수로서는, 48kHz, 및 96kHz가 기술된다.
audio_language_code는 오디오 엘리멘터리 스트림의 언어 코드(일본어, 한국 어, 중국어 등)를 나타낸다.
PG_language_code는 비트맵 자막 엘리멘터리 스트림의 언어 코드(일본어, 한국어, 중국어 등)를 나타낸다.
IG_language_code는 인터랙티브 그래픽스 엘리멘터리 스트림의 언어 코드(일본어, 한국어, 중국어 등)를 나타낸다.
textST_language_code는 텍스트 자막 엘리멘터리 스트림의 언어 코드(일본어, 한국어, 중국어 등)를 나타낸다.
character_code는 도 25에 나타낸 바와 같이 텍스트 자막 엘리멘터리 스트림의 캐릭터 코드를 나타낸다. 텍스트 자막 엘리멘터리 스트림의 캐릭터 코드로서는, Unicode V1.1(ISO 10646-1), Shift JIS(Japanese), KSC 5601-1987 including KSC 5653 for Roman character(Korean), GB 18030-2000(Chinese), GB2312(Chinese), 및 BIG5(Chinese)가 기술된다.
이하에, 도 18의 stream_attribute()의 신택스에 대하여, 도 18과, 도 19 내지 도 25를 사용하여 구체적인 예를 설명한다.
엘리멘터리 스트림의 부호화 타입(도 18의 stream_coding_type)이 MPEG-2 video stream(도 19)인 경우, stream_attribute()에는, 그 엘리멘터리 스트림의 비디오 포맷(도 20), 프레임 레이트(도 21), 및 아스펙트비 정보(도 22)가 포함된다.
엘리멘터리 스트림의 부호화 타입(도 18의 stream_coding_type)이 HDMV LPCM audio, Dolby AC-3 audio, 또는 dts audio(도 19)인 경우, stream_attribute()에는, 그 오디오 엘리멘터리 스트림의 프리젠테이션 타입 정보(도 23), 샘플링 주파 수(도 24), 및 언어 코드가 포함된다.
엘리멘터리 스트림의 부호화 타입(도 18의 stream_coding_type)이 Presentation graphics stream(도 19)인 경우, stream_attribute()에는, 그 비트맵 자막 엘리멘터리 스트림의 언어 코드가 포함된다.
엘리멘터리 스트림의 부호화 타입(도 18의 stream_coding_type)이 Interactive graphics stream(도 19)인 경우, stream_attribute()에는, 그 인터랙티브 그래픽스 엘리멘터리 스트림의 언어 코드가 포함된다.
엘리멘터리 스트림의 부호화 타입(도 18의 stream_coding_type)이 Text subtitle stream(도 19)인 경우, stream_attribute()에는, 그 텍스트 자막 엘리멘터리 스트림의 캐릭터 코드(도 25), 언어 코드가 포함된다.
그리고, 이들 속성 정보는 이것에 한정되지 않는다.
이와 같이, PlayItem과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있는 경우에, 이 PlayItem이 참조하는 Clip과 1개 이상의 SubPath가 참조하는 Clip 중에서, stream_entry()에 의해 특정된 엘리멘터리 스트림(type=1)과 type=2의 경우에는 1개, type=3의 경우에는 2개)의 속성 정보를 stream_attribute()에 의해 알 수 있다.
재생 장치는 이 속성 정보(stream_attribute()을 조사함으로써, 그 엘리멘터리 스트림을 자기 자신이 재생하는 기능을 가지고 있는지 여부를 조사할 수 있다. 또, 재생 장치는 이 속성 정보를 조사함으로써, 재생 장치의 언어 설정 초기 정보에 대응한 엘리멘터리 스트림을 선택할 수 있다.
예를 들면, 재생 장치가 비트맵 자막 엘리멘터리 스트림의 재생 기능만을 가지고, 텍스트 자막 엘리멘터리 스트림의 재생 기능을 갖지 않은 경우를 상정한다. 이 재생 장치에 대하여, 사용자가 언어 전환을 지시한 경우, 재생 장치는 자막 스트림 ID(PG_txtST_stream_id)의 for 루프 중에서, 비트맵 자막 엘리멘터리 스트림만을 차례로 선택하여, 재생한다.
또, 예를 들면, 재생 장치의 언어 설정 초기 정보가 일본어인 경우를 상정한다. 이 재생 장치에 대하여, 사용자가 부 음성(즉, Secondary audio)으로의 전환 또는, 주 음성과 부 음성과의 믹싱 재생을 지시한 경우, 재생 장치는 부 음성으로서 준비되어 있는 오디오 스트림 ID(Audio stream id)의 for 루프 중에서, 언어 코드가 일본어인 오디오 엘리멘터리 스트림만을 차례로 선택하여, 재생한다.
또한, 예를 들면, 메인 패스에 의해 참조되는, 비디오 스트림과 오디오 스트림으로 이루어지는 AV 스트림(영화)을 재생하는 경우, 재생 장치에 대하여, 사용자가 음성의 전환을 지령하고, 서브 패스에 의해 참조되는 오디오 스트림(감독이나 출연자에 의한 코멘트)과의 믹싱 재생이 지령된 경우, 재생 장치는 메인 패스에 의해 참조되는 1st 오디오 스트림에, 또한 서브 패스에 의해 참조되는 2nd 오디오 스트림을 믹싱(중첩)하여, 비디오 스트림과 함께 재생한다.
또, 예를 들면, 사용자가 음성의 전환을 지령하고, 2개의 서브 패스에 의해 참조되는 2개의 오디오 스트림의 믹싱 재생이 재생 장치에 대하여 지령된 경우(도 16과 도 17의 신택스가 사용되고, 도 16의 secondary_audio_present_flag가 1로 되고, 도 17의 type이 모두 2로 되어 있는 오디오 스트림 ID에 대응하는 오디오 스트 림의 재생이 지령된 경우), 재생 장치는 2개의 서브 패스에 의해 각각 참조되는 2개의 오디오 스트림을 믹싱(중첩)하여, 비디오 스트림과 함께 재생한다.
이와 같이 하여, PlayItem() 중에 STN_table()을 형성함으로써, PlayItem과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있는 경우에, 사용자에 의한 음성 전환이나 자막 전환이라고 하는 조작에 의해, 이 PlayItem이 참조하는 Clip과 1개 이상의 SubPath가 참조하는 Clip 중에서 재생되는 스트림을 선택할 수 있는 구조가 제공되므로, 재생하는 AV 스트림과는 상이한 스트림이나 데이터 파일에 대해서도, 인터랙티브 조작을 행할 수 있다.
또, 1개의 PlayList 중에 SubPath를 복수개 사용하고, 각각의 SubPath가 각각 SubPlayItem을 참조하는 구성으로 했으므로, 확장성이 높은 또, 자유도가 높은 AV 스트림을 실현할 수 있다. 즉, 이 PlayList에 의해 재생되는 컨텐츠에 있어서, 나중에, SubPlayItem을 추가할 수 있는 구성으로 할 수 있다. 예를 들면, Main Path가 참조하는 Clip AV 스트림 파일과, 이것에 대응되는 PlayList가 있으며, 이 PlayList가 새로운 Sub Path를 추가한 PlayList에 재기록된 경우, 새로운 PlayList에 따라, Main Path가 참조하는 Clip AV 스트림 파일과 함께, Main Path가 참조하는 Clip AV 스트림 파일과는 상이한 Clip AV 스트림 파일을 참조하여, 재생을 행할 수 있다. 이와 같이, 확장성을 가지는 구성으로 할 수 있다.
또한, PlayItem() 중의 STN_table()은 이 PlayItem과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있는 경우에, 2개의 SubPath가 참조하는 Clip의 오디오 스트림을 믹싱하여 재생할 수 있는 구조를 제공하도록 했으므로(도 16과 도 17), 1st 오디오 디코더(75-1)로 디코드되는 오디오 스트림(예를 들면, 영화의 일본어 더빙 음성)과, 2nd 오디오 디코더(75-2)로 디코드되는 오디오 스트림(예를 들면, 감독의 디렉터스 컷)과의 중첩 재생에 대해서도, 인터랙티브 조작을 행할 수 있다.
또, PlayItem() 중에 STN_table()이 형성됨으로써, PlayItem과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있는 경우에, 이 PlayItem이 참조하는 Clip의 1st 오디오 스트림과, SubPath가 참조하는 Clip의 2nd 오디오 스트림을 믹싱하여 재생할 수 있는 구조가 제공되므로, 사용자는 메인 Clip AV 스트림과는 상이한 오디오 스트림(2nd 오디오 스트림, 예를 들면, 감독의 코멘트의 스트림)의 중첩 재생에 대해서도, 인터랙티브 조작을 행할 수 있다.
구체적인 예를, 도 26을 참조하여 설명한다. 도 26은 사용자에게 제공하는 음성 신호와 자막 신호의 관계를 나타내는 스트림 넘버 테이블의 예를 나타낸 도면이다. 도 26은 도 16과 도 17의 제2 STN_table과 제2 Stream_entry()에 대응하는 경우의 예이다.
도 26에서는, 음성 번호를 A_SN(Audio Stream Number)이라고 하고, 자막 번호를 S_SN(SubPicture Stream Number)이라고 한다. 도 26에서는, PlayList의 Main Path로 참조되는 메인 Clip AV 스트림의 복수개의 오디오 스트림과, Sub Path로 참조되는 서브 Clip AV 스트림의 오디오 스트림의 각각에 A_SN이 부여되어 있다. 즉, A_SN=1에 Main Path로 참조되는 오디오 스트림인 오디오 2가 부여되고, A_SN=2에 Sub Path로 참조되는 오디오 스트림인 오디오 1이 부여되고, A_SN=3에 Main Path로 참조되는 오디오 스트림인 오디오 3이 부여되어 있다.
또, PlayList의 SubPath로 참조되는 오디오 스트림이, A_SN=1 내지 3으로 부여되는 오디오 스트림 오디오 스트림의 각각과 믹싱 재생 가능하도록, A_SN이 부여되어 있다. 즉, A_SN=4에 오디오 2+Sub Path로 참조되는 오디오 스트림인 오디오 4가 부여되고, A_SN=5에 Sub Path로 참조되는 오디오 스트림인 오디오 1+Sub Path로 참조되는 오디오 스트림인 오디오 4가 부여되어 있다. 즉, A_SN=4에서는, 메인 패스에 의해 참조되는 오디오 스트림과, 서브 패스에 의해 참조되는 오디오 스트림의 믹싱 재생을 위한 A_SN이 부여되고, A_SN=5에서는, 2개의 서브 패스에 의해 참조되는 2개의 오디오 스트림의 믹싱 재생을 위한 A_SN이 부여되어 있다.
또, PlayList의 Main Path로 참조되는 메인 Clip AV 스트림의 복수개의 서브픽처 스트림의 각각에, S_SN이 부여되어 있다. 즉, S_SN=1에 서브픽처 3가 부여되고, S_SN=2에 서브픽처 1이 부여되고, S_SN=3에 서브픽처 2가 부여된다. 여기에서는, A_SN이나 S_SN의 번호가 작을수록, 사용자에게 제공되는 음성 신호나 서브픽처의 우선도가 높다. 즉, A_SN=1은 디폴트로 재생되는 오디오 스트림이며, S_SN=1은 디폴트로 재생되는 서브픽처 스트림이다.
구체적으로는, 재생 장치의 언어 설정 초기 정보에 따라, 재생되는 음성은, A_SN=1인 오디오 2(도 26)에 대응하고 있고, 음성이 전환된 후, 재생되는 음성은 A_SN=2인 오디오 1(도 26)에 대응하고 있다.
이와 같은 스트림 넘버 테이블을 제공하기 위해, 먼저, PlayList()로 참조되는 PlayItem() 중의 STN table()에서, PlayItem의 메인 패스로 「오디오 1, 또는 오디오 3」와, 「서브픽처 1, 서브픽처 2, 또는 서브픽처 3」을 참조할 수 있는 구성으로 하고, 또한 PlayItem에 관련되어 재생되는 서브 패스(PlayList로 참조되는 SubPath())로 「오디오 2, 또는 오디오 4」를 참조할 수 있는 구성으로 한다. 그리고, STN table()(도 16)의 audio_stream_id=0(A_SN=1)로 오디오 2(type=1)를 부여하고, audio_stream_id=1(A_SN=2)로 오디오 1(type=2)을 부여하고, audio_stream_id=2(A_SN=3)로 오디오 3(type=1)을 부여하고, audio_stream_id=3(A_SN=4)으로 오디오 2와 오디오 4(type=1과 type=2)를 부여하고, audio_stream_id=4(A_SN=5)로 오디오 1과 오디오 4(type=2와 type=2)를 부여한다.
즉, audio_stream_id=3(A_SN=4)의 경우, 도 16의 오디오 스트림 ID에 대응하는 최초의 stream_entry()와 stream_attributes()에 의해, 메인 패스가 참조하는 오디오 스트림(type=1)이 등록되고, 그 후의 secondary_audio_present_flag가 1로 되고, 2번째의 stream_entry()와 stream_attributes()에 의해, 서브 패스가 참조하는 오디오 스트림(type=2)이 등록된다. 이 때, audio_stream_id를 사용하여, 메인 패스가 참조하는 오디오 스트림과, 서브 패스가 참조하는 오디오 스트림과의 조합을 정의할 수 있다. 즉, 모순되는 바와 같은 조합을 정의하지 않고 끝나므로, 사용자는 항상 재생 가능한 오디오 스트림의 조합을 선택할 수 있다. 즉, 도 26의 예에서는, 모순되는 오디오 스트림의 조합인 오디오 2+오디오 3을 정의하지 않도록 함으로써, 사용자에게, 선택 가능한 것만을 제공할 수 있다.
이와 같이, PlayItem() 중의 STN table()(도 16)의 stream_entry()(도 17)에서, 메인 패스로 참조되는 1st 오디오 스트림과, 서브 패스로 참조되는 2nd 오디오 스트림을 엔트리(등록)하는 것이 가능한 구성으로 하고(secondary_audio_present_flag를 설치하고), 또한 audio_stream_id를 사용하여, 1st 오디오 스트림과 2nd 오디오 스트림을 조합하여 제공하는 구성으로 했으므로, 2개의 오디오 스트림을 믹싱하여 재생할 수 있다. 즉, 복수개의 종류로 이루어지는 스트림으로부터, 동일 종류(이 예의 경우, 오디오 스트림)의 스트림을 믹싱(중첩, 또는 합성)하여, 동시에 재생할 수 있다.
또, audio_stream_id=4(A_SN=5)의 경우, 도 16의 오디오 스트림 ID에 대응하는 최초의 stream_entry() 및 stream_attributes(), secondary_audio_present_flag, 및 2번째의 stream_entry() 및 stream_attributes()에 의해, 2개의 서브 패스가 참조하는 2개의 오디오 스트림(모두 type=2)이 등록된다. 이 때, audio_stream_id를 사용하여, 2개의 서브 패스가 참조하는 2개의 오디오 스트림의 조합을 정의할 수 있다. 즉, 모순되는 바와 같은 조합을 정의하지 않고 끝나므로, 사용자는 항상 재생 가능한 오디오 스트림의 조합을 선택할 수 있다.
이와 같이, PlayItem() 중의 STN table()(도 16)의 stream_entry()(도 17)에서, 2개의 서브 패스로 참조되는 2개의 오디오 스트림을 엔트리(등록)하는 것이 가능한 구성으로 하고, 또한 audio_stream_id를 사용하여, 2개의 오디오 스트림의 조합을 제공하는 구성으로 했으므로, 2개의 오디오 스트림을 믹싱하여 재생할 수 있다. 즉, 복수개의 종류로 이루어지는 스트림으로부터, 동일 종류(이 예의 경우, 오디오 스트림)의 스트림을 믹싱(중첩, 또는 합성)하여, 동시에 재생할 수 있다.
또, 믹싱하는 2개의 오디오 스트림을 별개로 선택할 필요가 없고, 2개의 오디오 스트림이 조합된 것 중에서, 재생하는 오디오 스트림을 선택할 수 있다.
그리고, 도 14와 도 15의 신택스에서도, 도 26의 메인 패스로 참조되는 1st 오디오 스트림과, 서브 패스로 참조되는 2nd 오디오 스트림과의 조합(audio_stream_id=3(A_SN=4))은 정의 가능하다. 이 경우, 도 14의 stream_entry()에 type=3으로 메인 패스가 참조하는 오디오 스트림과, 서브 패스가 참조하는 오디오 스트림을 등록하고, 이에 따라, stream_attributes()도 2개 삽입한다. 이와 같이, PlayItem() 중의 STN table()(도 14)의 stream_entry()(도 15)에서, 메인 패스로 참조되는 1st 오디오 스트림과, 서브 패스로 참조되는 2nd 오디오 스트림을 엔트리(등록)하는 것이 가능한 구성으로 하고(type=3을 설치한), 또한 audio_stream_id를 사용하여, 1st 오디오 스트림과 2nd 오디오 스트림을 조합하여 제공하는 구성으로 했으므로, 2개의 오디오 스트림을 믹싱하여 재생할 수 있다. 즉, 복수개의 종류로 이루어지는 스트림으로부터, 동일 종류(이 예의 경우, 오디오 스트림)의 스트림을 믹싱(중첩, 또는 합성)하여, 동시에 재생할 수 있다.
다음에, 본 발명을 적용한 재생 장치의 제1 구성예에 대하여 설명한다. 도 27은 본 발명을 적용한 재생 장치(1)의 구성예를 나타낸 블록도이다. 이 재생 장치(1)는 전술한 메인 패스와, 서브 패스를 가지는 PlayList를 재생하는 재생 장치(1)이다.
컨트롤러(21)는 미리 준비되어 있는 제어 프로그램을 실행하거나, 또는 스토리지 드라이브(22)를 제어하여, 예를 들면, 광 디스크 등의 기록 매체(11)에 기록 되어 있거나 또는, 로컬 스토리지(24)에 기록되어 있는 내비게이션 프로그램을 판독하고, 메모리(23)에 전개하여 실행함으로써, 재생 장치(1) 전체의 동작을 제어한다. 예를 들면, 컨트롤러(21)는 기록 매체(11)이 장착되었을 때, 소정의 메뉴 화면을 외부의 표시 장치에 표시하게 할 수 있다.
스토리지 드라이브(22)는 컨트롤러(21)에 의한 제어에 따라, 기록 매체(11)로부터 데이터를 판독하고, 판독한 데이터를 컨트롤러(21), 메모리(23), 또는 AV 디코더부(26)에 출력한다. 기록 매체(11)로부터 판독된 정보가 내비게이션 프로그램이나 PlayList 등인 경우, 스토리지 드라이브(22)에 의해 판독된 정보는 컨트롤러(21), 또는 메모리(23)에 출력된다. 기록 매체(11)로부터 판독된 정보가 AV 스트림이나 텍스트 데이터인 경우, 스토리지 드라이브(22)에 의해 판독된 정보는 AV 디코더부(26)에 출력된다.
메모리(23)는 컨트롤러(21)가 각종의 처리를 실행하는 데 있어서 필요한 데이터 등을 적당히 기억한다. 또한, 메모리(23)의 기억 영역의 일부에는, 재생 장치(1)의 재생 처리에서 필요한 정보가 설정되는 각종의 레지스터가 설치되어 있다. 로컬 스토리지(24)는, 예를 들면, HDD(Hard Disk Drive) 등으로 구성된다.
인터넷 인터페이스(25)는 유선 또는 무선에 의해 네트워크(2)에 접속되어 있고, 컨트롤러(21)로부터의 제어에 따라, 네트워크(2)를 통해 서버(3) 사이에서 통신을 행하고, 서버(3)로부터 다운로드된 데이터를 로컬 스토리지(24)에 공급한다. 서버(3)로부터는, 예를 들면, 그 때 재생 장치(1)에 장착되어 있는 기록 매체(11)에 기록되어 있는, 도 5를 사용하여 설명한 데이터를 업데이트시키는 데이터가 컨 텐츠로서 다운로드된다. 로컬 스토리지(24)는 서버(3)로부터 네트워크(2) 경유로 다운로드한 컨텐츠를 기록할 수 있다.
AV 디코더부(26)는 스토리지 드라이브(22), 또는 로컬 스토리지(24)로부터 공급되는 AV 스트림, 또는 텍스트 데이터를 디코드하여, 얻어진 비디오 신호와 오디오 신호를 외부의 표시 장치에 출력한다. 표시 장치에서는, AV 디코더부(26)에 의해 디코드된 신호에 따라, 예를 들면, 기록 매체(11)에 기록되어 있는 컨텐츠의 출력(영상의 표시, 음성의 출력)이 행해진다.
조작 입력부(29)는, 예를 들면, 버튼, 키, 터치 패널, 조그 다이얼, 마우스 등의 입력 디바이스나, 소정의 리모트 커맨더로부터 송신되는 적외선 등의 신호를 수신하는 수신부에 의해 구성되며, 사용자의 조작 입력을 취득하여, 컨트롤러(21)에 공급한다.
또, 컨트롤러(21)에는, 필요에 따라, 드라이브(27)도 접속되어 있고, 드라이브(27)에는, 예를 들면, 자기 디스크(플렉시블 디스크를 포함함), 광 디스크(CD-ROM(Compact Disk-Read Only Memory), DVD를 포함함), 광자기 디스크(MD(등록상표)(Mini-Disk)를 포함함), 또는 반도체 메모리 등으로 이루어지는 착탈 가능 미디어(28)가 장착된다.
도 28은 도 27의 재생 장치(1)의 AV 디코더부(26)의 구성예를 나타낸 블록도이다.
도 28의 예의 경우, 최초에, 컨트롤러(21)가 스토리지 드라이브(22), 또는 로컬 스토리지(24)로부터 PlayList 파일을 판독하고, PlayList 파일의 정보에 따 라, 스토리지 드라이브(22)를 통해 HDD, Blu-ray Disc(상표), 또는 DVD 등의 기록 매체(11)로부터, 또는 로컬 스토리지(24)로부터, AV 스트림이나 AV 데이터를 판독한다. 사용자는 조작 입력부(29)를 사용하여, 컨트롤러(21)에 대하여, 음성이나 자막 등의 전환 지령을 행할 수 있다. 또, 컨트롤러(21)는 메모리(23)의 레지스터에 등록되어 있는 재생 장치(1)의 언어 설정 초기 정보를 포함하는 각종 설정 정보를 읽어 들인다.
PlayList 파일에는, Main Path, Sub Path의 정보 외에, STN_table()이 포함되어 있다. 컨트롤러(21)는 PlayList 파일에 포함되는 PlayItem이 참조하는 메인 Clip AV 스트림 파일, SubPlayItem이 참조하는 서브 Clip AV 스트림 파일, 및 SubPlayItem이 참조하는 텍스트 서브타이틀 데이터를, 스토리지 드라이브(22)를 통해 기록 매체(11) 또는 로컬 스토리지(24)로부터 판독한다. 여기에서, PlayItem이 참조하는 메인 Clip AV 스트림 파일과 SubPlayItem이 참조하는 서브 Clip AV 스트림 파일이, 상이한 기록 매체에 기록되어 있어도 된다. 예를 들면, 메인 Clip AV 스트림 파일이 기록 매체(11)에 기록되어 있고, 대응하는 서브 Clip AV 스트림 파일은 도시하지 않은 네트워크(2)를 통해 공급되어, HDD 등의 로컬 스토리지(24)에 기억된 것이라도 된다. 또, 컨트롤러(21)는 메모리(23)의 레지스터에 등록되어 있는 각종 설정 정보를 참조하여, 자기 자신(재생 장치(1))의 재생 기능에 대응하는 엘리멘터리 스트림을 선택하 여, 재생하도록 제어하거나, 재생 장치(1)의 언어 설정 초기 정보에 대응하는 엘리멘터리 스트림을 선택하여, 재생하도록 제어한다.
AV 디코더부(26)에는, 버퍼(51 내지 54), PID 필터(55), PID 필터(56), 스위 치(57 내지 59), 백그라운드 디코더(71), MPEG(Moving Picture Experts Group)2 비디오 디코더(72), 프리젠테이션 그래픽스 디코더(73), 인터랙티브 그래픽스 디코더(74), 1st 오디오 디코더(75-1), 2nd 오디오 디코더(75-2), Text-ST 콤퍼지션(76), 스위치(77), 백그라운드 플레인 생성부(91), 비디오 플레인 생성부(92), 프리젠테이션 그래픽스 플레인 생성부(93), 인터랙티브 그래픽스 플레인 생성부(94), 버퍼(95), 비디오 데이터 처리부(96), 믹싱 처리부(97), 및 믹싱 처리부(98)가 형성되어 있다. 1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2)는 함께 오디오 스트림을 디코드한다. 1st 오디오 디코더(75-1)는 2nd 오디오 디코더(75-2)보다 우선적으로 사용되는 오디오 디코더이다. 즉, 디코드하는 오디오 스트림이 1개밖에 없는 경우, 그 오디오 스트림이 메인 Clip AV 스트림 파일에 포함되는 오디오 스트림이라도, 서브 Clip AV 스트림 파일에 포함되는 오디오 스트림이라도, 1st 오디오 디코더(75-1)로 디코드된다. 즉, 재생 장치(1)는 2개의 오디오 스트림을 디코드하기 위해, 2개의 오디오 디코더(1st 오디오 디코더(75-1), 2nd 오디오 디코더(75-2))를 가지고 있다. 그리고, 이하에서, 1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2)를 별개로 구별하지 않는 경우, 오디오 디코더(75)라고 한다.
컨트롤러(21)에 의해 판독된 파일 데이터는, 도시하지 않은 복조, ECC 복호부에 의해, 복조되어 복조된 다중화 스트림에 에러 정정이 행해진다. 스위치(32)는 복조되어 에러 정정이 행해진 데이터를 컨트롤러(21)로부터의 제어에 따라, 스트림의 종류마다 선택하여, 대응하는 버퍼(51 내지 54)에 공급한다. 구체적으로 는, 스위치(32)는 컨트롤러(21)로부터의 제어에 따라, 백그라운드 이미지 데이터를 버퍼(51)에 공급하고, 메인 Clip AV 스트림 파일의 데이터를 버퍼(52)에 공급하고, 서브 Clip의 데이터를 버퍼(53)에 공급하고, Text-ST의 데이터를 버퍼(54)에 공급하도록 스위치(32)를 전환한다. 버퍼(51)는 백그라운드 이미지 데이터를 버퍼링하고, 버퍼(52)는 메인 Clip AV 스트림 파일의 데이터를 버퍼링하고, 버퍼(53)는 서브 Clip AV 스트림 파일의 데이터를 버퍼링하고, 버퍼(54)는 Text-ST 데이터를 버퍼링한다.
메인 Clip AV 스트림 파일은 비디오와 오디오와 비트맵 자막(Presentation Graphics stream))과 인터랙티브 그래픽스 중, 비디오에 더하여 1개 이상의 스트림을 다중화한 스트림(예를 들면, 트랜스포트 스트림)이다. 서브 Clip AV 스트림 파일은 오디오와 비트맵 자막(Presentation Graphics stream)과 인터랙티브 그래픽스와 오디오 중, 1개 이상의 스트림을 다중화한 스트림이다. 그리고, 텍스트 서브타이틀 데이터 파일(Text-ST)의 데이터는, 트랜스포트 스트림과 같은 다중화 스트림의 형식이라도, 그렇지 않아도 된다.
또, 메인 Clip AV 스트림 파일과 서브 Clip AV 스트림 파일 및 텍스트 서브타이틀 데이터를 스토리지 드라이브(22)(기록 매체(11))로부터 판독할 때, 각각의 파일을 시분할로 교대로 판독해도 되고, 또는 서브 Clip AV 스트림 파일이나 텍스트 서브타이틀 데이터를 메인 Clip으로부터 판독하기 전에, 모두 버퍼(버퍼(53) 또는 버퍼(54))에 프리로드해도 된다.
재생 장치(1)는 이들의 파일 데이터를 스토리지 드라이브(22)를 통해 기록 매체(11)로부터 판독하여, 비디오, 비트맵 자막, 인터랙티브 그래픽스, 및 오디오를 재생한다.
구체적으로는, 메인 Clip AV 스트림 파일용 리드 버퍼인 버퍼(52)로부터 판독된 스트림 데이터는, 소정의 타이밍에서, 후단의 PID(패킷 ID) 필터(55)에 출력된다. 이 PID 필터(55)는 입력된 메인 Clip AV 스트림 파일을 PID(패킷 ID)에 따라, 후단의 각 엘리멘터리 스트림의 디코더에 분배하여 출력한다. 즉, PID 필터(55)는 비디오 스트림을 비디오 디코더(72)에 공급하고, 프리젠테이션 그래픽스 스트림을 프리젠테이션 그래픽스 디코더(73)로의 공급원이 되는 스위치(57)에 공급하고, 인터랙티브 그래픽스 스트림을 인터랙티브 그래픽스 디코더(74)로의 공급원이 되는 스위치(58)에 공급하고, 오디오 스트림을 1st 오디오 디코더(75-1)로의 공급원이 되는 스위치(59)에 공급한다.
프리젠테이션 그래픽스 스트림은, 예를 들면, 비트맵의 자막 데이터이며, 텍스트 서브타이틀 데이터는, 예를 들면, 텍스트 자막 데이터이다.
서브 Clip AV 스트림 파일용 리드 버퍼인 버퍼(53)로부터 판독된 스트림 데이터는, 소정의 타이밍에서, 후단의 PID(패킷 ID) 필터(56)에 출력된다. 이 PID 필터(56)는 입력된 서브 Clip AV 스트림 파일을 PID(패킷 ID)에 따라, 후단의 각 엘리멘터리 스트림의 디코더에 분배하여 출력한다. 즉, PID 필터(56)는 프리젠테이션 그래픽스 스트림을 프리젠테이션 그래픽스 디코더(73)로의 공급원이 되는 스위치(57)에 공급하고, 인터랙티브 그래픽스 스트림을 인터랙티브 그래픽스 디코더(74)로의 공급원이 되는 스위치(58)에 공급하고, 메인 Clip의 오디오 스트림과, 서브 Clip AV 스트림 파일의 오디오 스트림을 1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2)로의 공급원이 되는 스위치(59)에 공급한다.
백그라운드 이미지 데이터를 버퍼링하는 버퍼(51)로부터 판독된 데이터는, 소정의 타이밍에서 백그라운드 디코더(71)에 공급된다. 백그라운드 디코더(71)는 백그라운드 이미지 데이터를 디코드하고, 디코드한 백그라운드 이미지 데이터를 백그라운드 플레인 생성부(91)에 공급한다.
PID 필터(55)에 의해 분배된 비디오 스트림은 후단의 비디오 디코더(72)에 공급된다. 비디오 디코더(72)는 비디오 스트림을 디코드하고, 디코드한 비디오 데이터를 비디오 플레인 생성부(92)에 출력한다.
스위치(57)는 PID 필터(55)로부터 공급된 메인 Clip AV 스트림 파일에 포함되는 프리젠테이션 그래픽스 스트림과, 서브 Clip AV 스트림 파일에 포함되는 프리젠테이션 그래픽스 스트림 중 어느 하나를 선택하고, 선택한 프리젠테이션 그래픽스 스트림을 후단의 프리젠테이션 그래픽스 디코더(73)에 공급한다. 프리젠테이션 그래픽스 디코더(73)는 프리젠테이션 그래픽스 스트림을 디코드하고, 디코드한 프리젠테이션 그래픽스 스트림의 데이터를 프리젠테이션 그래픽스 플레인 생성부(93)로의 공급원이 되는 스위치(77)에 공급한다.
또, 스위치(58)는 PID 필터(55)로부터 공급된 메인 Clip AV 스트림 파일에 포함되는 인터랙티브 그래픽스 스트림과, 서브 Clip AV 스트림 파일에 포함되는 인터랙티브 그래픽스 스트림 중 어느 하나를 선택하고, 선택한 인터랙티브 그래픽스 스트림을 후단의 인터랙티브 그래픽스 스트림 디코더(74)에 공급한다. 즉, 인터랙 티브 그래픽스 디코더(74)에 동시에 입력되는 인터랙티브 그래픽스 스트림은, 메인 Clip AV 스트림 파일 또는 서브 Clip AV 스트림 파일의 어느 쪽인가로부터 분리된 스트림이다. 인터랙티브 그래픽스 디코더(74)는 인터랙티브 그래픽스 스트림을 디코드하고, 디코드한 인터랙티브 그래픽스 스트림의 데이터를 인터랙티브 그래픽스 플레인 생성부(94)에 공급한다.
또한, 스위치(59)는 PID 필터(55)로부터 공급된 메인 Clip AV 스트림 파일에 포함되는 오디오 스트림과, 서브 Clip AV 스트림 파일에 포함되는 오디오 스트림 중 어느 하나를 선택하고, 선택한 오디오 스트림을, 후단의 1st 오디오 디코더(75-1) 또는, 2nd 오디오 디코더(75-2)에 공급한다. 여기에서, 1st 오디오 디코더(75-1)에 동시에 입력되는 오디오 스트림은 메인 Clip AV 스트림 파일 또는 서브 Clip AV 스트림 파일의로부터 분리된 스트림이다. 또, 2nd 오디오 디코더(75-2)에 동시에 입력되는 오디오 스트림은 서브 Clip으로부터 분리된 스트림이다.
구체적으로는, 스위치(59)는 도 15 또는 도 17의 stream_entry()의 type의 값에 의해, 그 선택을 전환한다. 예를 들면, type=1인 경우, 스위치(59)는 PID 필터(55)를 통해 공급되는 메인 Clip AV 스트림 파일의 오디오 스트림을, 1st 오디오 디코더(75-1)에 공급하도록 선택을 전환한다. 또, 예를 들면, type=2인 경우, 스위치(59)는 PID 필터(56)를 통해 공급되는 서브 Clip AV 스트림 파일의 오디오 스트림을, 1st 오디오 디코더(75-1) 또는 2nd 오디오 디코더(75-2)에 공급하도록 선택을 전환한다.
예를 들면, 메인 Clip AV 스트림 파일의 오디오 스트림과, 서브 Clip AV 스 트림 파일의 오디오 스트림과의 믹싱 재생이 지령된 경우(즉, 도 14를 사용하여 설명한 제1 STN_table의 Stream_entry()에서는, type=3, 도 16을 사용하여 설명한 제2 STN_table의 Stream_entry()에서는, secondary_audio_present_flag가 1로 되고, 1번째의 Stream_entry()에서 type=1, 2번째의 Stream_entry()에서 type=2로 되는 오디오의 재생이 지령된 경우), 스위치(59)는 PID 필터(55)를 통해 공급되는 메인 Clip AV 스트림 파일의 오디오 스트림을 1st 오디오 디코더(75-1)에 공급하도록 선택을 전환하는 동시에, PID 필터(56)를 통해 공급되는 서브 Clip AV 스트림 파일의 오디오 스트림을 2nd 오디오 디코더(75-2)에 공급하도록 선택을 전환한다.
또, 예를 들면, 2개의 서브 Clip AV 스트림 파일의 오디오 스트림의 믹싱 재생이 지령된 경우(도 16의 secondary_audio_present_flag가 1, 1번째의 Stream_entry()에서 type=2, 2번째의 Stream_entry()에서 type=2인 오디오 스트림의 재생이 지령된 경우), 스위치(59)는 PID 필터(56)를 통해 공급되는 서브 Clip AV 스트림 파일의 오디오 스트림이, 도 16의 stream_entry()의 오디오 스트림 ID(audio_stream_id)의 for 루프 중 최초의 stream_entry()에 의해 정의되는 오디오 스트림에 대응하는 경우, 1st 오디오 디코더(75-1)에 공급하도록 선택을 전환하고, PID 필터(56)를 통해 공급되는 서브 Clip AV 스트림 파일의 오디오 스트림이, 도 16의 stream_entry()의 오디오 스트림 ID(audio_stream_id)의 for 루프 중 2번째의 stream_entry()에 의해 정의되는 오디오 스트림에 대응하는 경우, 2nd 오디오 디코더(75-2)에 공급하도록 선택을 전환한다.
즉, 1st 오디오 디코더(75-1)에는, 메인 Clip AV 스트림 파일용 리드 버퍼인 버퍼(52)로부터 판독된 오디오 스트림(도 15의 예에서 type=1 또는 type=3, 또는 도 17의 예에서 type=1인 경우), 또는 서브 Clip AV 스트림 파일용 리드 버퍼인 버퍼(53)로부터 판독된 오디오 스트림(도 15의 예에서 type=2 또는 type=3, 또는 도 17의 예에서 type=2인 경우)이 공급되고, 2nd 오디오 디코더(75-2)에는, 서브 Clip AV 스트림 파일용 리드 버퍼인 버퍼(53)로부터 판독된 오디오 스트림뿐이 공급된다.
1st 오디오 디코더(75-1)는 오디오 스트림을 디코드하고, 디코드한 오디오 스트림의 데이터를 믹싱 처리부(101)에 공급한다. 또, 2nd 오디오 디코더(75-2)는 오디오 스트림을 디코드하고, 디코드한 오디오 스트림의 데이터를 믹싱 처리부(101)에 공급한다.
여기에서, 2개의 오디오 스트림을 중첩하여 재생하는 바와 같은 경우, 1st 오디오 디코더(75-1)에 의해 디코드된 오디오 스트림과, 2nd 오디오 디코더(75-2)에 의해 디코드된 오디오 스트림이 믹싱 처리부(101)에 공급된다.
예를 들면, 메인 패스로 참조되는 1st 오디오 스트림과, 서브 패스로 참조되는 2nd 오디오 스트림을 중첩하여 재생하는 바와 같은 경우(도 15의 예에서는 type=3이며, 도 16에서는 secondary_audio_present_flag가 1, 1번째의 Stream_entry()의 type=1, 2번째의 Stream_entry()의 type=2인 경우, 1st 오디오 디코더(75-1)에 의해 디코드된 메인 Clip AV 스트림 파일의 오디오 스트림과, 2nd 오디오 디코더(75-2)에 의해 디코드된 서브 Clip AV 스트림 파일의 오디오 스트림이 믹싱 처리부(101)에 공급된다.
또, 예를 들면, 서브 패스로 참조되는 2개의 오디오 스트림을 중첩하여 재생하는 바와 같은 경우(도 16의 secondary_audio_present_flag가 1이며, 1번째 및 2번째의 Stream_entry()의 어느 것에서도 type이 2인 경우, 1st 오디오 디코더(75-1)에 의해 디코드된 서브 Clip AV 스트림 파일의 오디오 스트림(type=2, 도 16의 최초의 stream entry()에서 정의되는 오디오 스트림)과, 2nd 오디오 디코더(75-2)에 의해 디코드된 서브 Clip AV 스트림 파일의 오디오 스트림(type=2, 도 16의 secondary_audio_present_flag가 1인 경우에, 2번째의 stream entry()에서 정의되는 오디오 스트림)이 믹싱 처리부(101)에 공급된다.
믹싱 처리부(101)는 1st 오디오 디코더(75-1)로부터의 오디오 데이터와, 2nd 오디오 디코더(75-2)로부터의 오디오 데이터를 믹싱(중첩)하여, 후단의 믹싱 처리부(97)에 출력한다. 그리고, 본 실시예에서는, 1st 오디오 디코더(75-1)로부터 출력되는 오디오 데이터와 2nd 오디오 디코더(75-2)로부터 출력되는 오디오 데이터를 믹싱(중첩)하는 것을, 합성한다고도 칭한다. 즉, 합성이란, 2개의 오디오 데이터를 믹싱하는 것도 나타내는 것으로 한다.
또, 스위치(32)에 의해 선택된 사운드 데이터는, 버퍼(95)에 공급되어, 버퍼링된다. 버퍼(95)는 소정의 타이밍에서 사운드 데이터를 믹싱 처리부(97)에 공급한다. 사운드 데이터는, 예를 들면, 메뉴 선택 등에 의한 효과음의 데이터 등이다. 믹싱 처리부(97)는 믹싱 처리부(101)에 의해 믹싱된 오디오 데이터(1st 오디오 디코더(75-1)로부터 출력된 오디오 데이터와 2nd 오디오 디코더(75-2)로부터 출력된 오디오 데이터가 믹싱된 오디오 데이터)와, 버퍼(95)로부터 공급되어 온 사운 드 데이터를 믹싱(중첩, 또는 합성)하여, 음성 신호로서 출력한다.
텍스트 서브타이틀용 리드 버퍼인 버퍼(54)로부터 판독된 데이터는, 소정의 타이밍에서, 후단의 텍스트 서브타이틀 콤퍼지션(디코더)(76)에 출력된다. 텍스트 서브타이틀 콤퍼지션(76)은 Text-ST 데이터를 디코드하여, 스위치(77)에 공급한다.
스위치(77)는 프리젠테이션 그래픽스 디코더(73)에 의해 디코드된 프리젠테이션 그래픽스 스트림과, Text-ST(텍스트 서브타이틀 데이터) 중, 어느 하나를 선택하고, 선택한 데이터를 프리젠테이션 그래픽스 플레인 생성부(93)에 공급한다. 즉, 프리젠테이션 그래픽스 플레인(93)에 동시에 공급되는 자막 화상은, 프리젠테이션 그래픽스 디코더(73) 또는 텍스트 서브타이틀(Text-ST) 콤퍼지션(76) 중 어느 하나의 출력이다. 또, 프리젠테이션 그래픽스 디코더(73)에 동시에 입력되는 프리젠테이션 그래픽스 스트림은 메인 Clip AV 스트림 파일 또는 서브 Clip AV 스트림 파일 중 어느 하나로부터 분리된 스트림이다(스위치(57)에 의해 선택됨). 따라서, 프리젠테이션 그래픽스 플레인(93)에 동시에 출력되는 자막 화상은 메인 Clip AV 스트림 파일로부터의 프리젠테이션 그래픽스 스트림, 또는 서브 Clip AV 스트림 파일로부터의 프리젠테이션 그래픽스 스트림, 또는 텍스트 서브타이틀 데이터의 디코드 출력이다.
백그라운드 플레인 생성부(91)는 백그라운드 디코더(71)로부터 공급된 백그라운드 이미지 데이터에 따라, 예를 들면, 비디오 화상을 축소 표시한 경우에 벽지 화상이 되는 백그라운드 플레인을 생성하고, 이것을, 비디오 데이터 처리부(96)에 공급한다. 비디오 플레인 생성부(92)는 비디오 디코더(72)로부터 공급된 비디오 데이터에 따라, 비디오 플레인을 생성하고, 이것을 비디오 데이터 처리부(96)에 공급한다. 프리젠테이션 그래픽스 플레인 생성부(93)는 스위치(77)에 의해 선택되어, 공급된 데이터(프리젠테이션 그래픽스 스트림 또는 텍스트 서브타이틀 데이터)에 따라, 예를 들면, 렌더링 화상인 프리젠테이션 그래픽스 플레인을 생성하고, 이것을 비디오 데이터 처리부(96)에 공급한다. 인터랙티브 그래픽스 플레인 생성부(94)는, 인터랙티브 그래픽스 디코더(74)로부터 공급된 인터랙티브 그래픽스 스트림의 데이터에 따라, 인터랙티브 그래픽스 플레인을 생성하고, 이것을 비디오 데이터 처리부(96)에 공급한다.
비디오 데이터 처리부(96)는 백그라운드 플레인 생성부(91)로부터의 백그라운드 플레인, 비디오 플레인 생성부(92)로부터의 비디오 플레인, 프리젠테이션 그래픽스 플레인 생성부(93)로부터의 프리젠테이션 그래픽스 플레인, 및 인터랙티브 그래픽스 플레인 생성부(94)로부터의 인터랙티브 그래픽스 플레인을 합성하여, 비디오 신호로서 출력한다.
이들 스위치(57 내지 59), 및 스위치(77)는 조작 입력부(29)를 개입시키는 사용자로부터의 선택에 따라, 또는, 대상이 되는 데이터가 포함되는 파일이 공급되는 측으로, 스위치를 전환한다. 예를 들면, 서브 Clip AV 스트림 파일에만, 오디오 스트림이 포함되어 있는 경우, 스위치(59)는 서브 Clip AV 스트림 파일을 공급하는 측(PID 필터(56)의 출력)으로 스위치를 전환한다.
다음에, 도 28의 재생 장치(1)에 있어서의 재생 처리를, 도 29 내지 도 31의 플로차트를 참조하여 설명한다. 그리고, 이 처리는 사용자에 의해 조작 입력 부(29)를 통해 소정의 AV 스트림의 재생이 지령되었을 때 개시된다.
스텝 S11에서, 컨트롤러(21)는 스토리지 드라이브(22)를 통해 기록 매체(11)나 HDD(Hard Disk Drive) 등의 로컬 스토리지(24)에 기록되어 있는 PlayList 파일을 판독한다. 예를 들면, 도 9를 사용하여 설명한 PlayList의 파일이 판독된다.
스텝 S12에서, 컨트롤러(21)는 메인 Clip AV 스트림 파일, 서브 Clip AV 스트림 파일, 및 텍스트 서브타이틀 데이터(Text-ST 데이터)를 판독한다. 구체적으로는, 컨트롤러(21)는 도 9를 사용하여 설명한 PlayList에 포함되는 PlayItem에 따라, 메인 Clip으로부터 대응하는 메인 Clip AV 스트림 파일을 판독한다. 또, 컨트롤러(21)는 PlayList에 포함되는 SubPath로 참조되는, 도 10 내지 도 12를 사용하여 설명한 SubPlayItem에 따라, 서브 Clip AV 스트림 파일과 텍스트 서브타이틀 데이터를 판독한다.
스텝 S13에서, 컨트롤러(21)는 판독한 데이터(메인 Clip AV 스트림 파일, 서브 Clip AV 스트림 파일, 및 텍스트 서브타이틀 데이터)를 대응하는 버퍼(51 내지 54)에 공급하도록 스위치(32)를 제어한다. 구체적으로는, 컨트롤러(21)는 백그라운드 이미지 데이터를 버퍼(51)에 공급하고, 메인 Clip AV 스트림 파일의 데이터를 버퍼(52)에 공급하고, 서브 Clip AV 스트림 파일의 데이터를 버퍼(53)에 공급하고, Text-ST의 데이터를 버퍼(54)에 공급하도록 스위치(32)를 전환한다.
스텝 S14에서, 스위치(32)는 컨트롤러(21)로부터의 제어에 따라, 스위치(32)를 전환한다. 이로써, 백그라운드 이미지 데이터는 버퍼(51)에 공급되고, 메인 Clip AV 스트림 파일의 데이터는 버퍼(52)에 공급되고, 서브 Clip AV 스트림 파일 의 데이터는 버퍼(53)에 공급되고, 텍스트 서브타이틀 데이터는 버퍼(54)에 공급된다.
스텝 S15에서, 각 버퍼(51 내지 54)는 공급된 데이터를 각각 버퍼링한다. 구체적으로는, 버퍼(51)는 백그라운드 이미지 데이터를 버퍼링하고, 버퍼(52)는 메인 Clip AV 스트림 파일의 데이터를 버퍼링하고, 버퍼(53)는 서브 Clip AV 스트림 파일의 데이터를 버퍼링하고, 버퍼(54)는 Text-ST 데이터를 버퍼링한다.
스텝 S16에서, 버퍼(51)는 백그라운드 이미지 데이터를 백그라운드 디코더(71)에 출력한다.
스텝 S17에서, 버퍼(52)는 메인 Clip AV 스트림 파일의 스트림 데이터를 PID 필터(55)에 출력한다.
스텝 S18에서, PID 필터(55)는 메인 Clip AV 스트림 파일을 구성하는 TS(transport stream) 패킷에 부여되어 있는 PID에 따라, 각 엘리멘터리 스트림의 디코더에 분배하고. 구체적으로는, PID 필터(55)는 비디오 스트림을 비디오 디코더(72)에 공급하고, 프리젠테이션 그래픽스 스트림을 프리젠테이션 그래픽스 디코더(73)로의 공급원이 되는 스위치(57)에 공급하고, 인터랙티브 그래픽스 스트림을 인터랙티브 그래픽스 디코더(74)로의 공급원이 되는 스위치(58)에 공급하고, 오디오 스트림을 1st 오디오 디코더(75-1)로의 공급원이 되는 스위치(59)에 공급한다. 즉, 비디오 스트림, 프리젠테이션 그래픽스 스트림, 인터랙티브 그래픽스 스트림, 및 오디오 스트림에는, 각각 상이한 PID가 부여되어 있다.
스텝 S19에서, 버퍼(53)는 서브 Clip AV 스트림 파일의 스트림 데이터를 PID 필터(56)에 출력한다.
스텝 S20에서, PID 필터(56)는 PID에 따라, 각 엘리멘터리 스트림을 각각의 엘리멘터리 스트림에 대응하는 디코더에 분배하고. 구체적으로는, PID 필터(56)는 프리젠테이션 그래픽스 스트림을 프리젠테이션 그래픽스 디코더(73)로의 공급원이 되는 스위치(57)에 공급하고, 인터랙티브 그래픽스 스트림을 인터랙티브 그래픽스 디코더(74)로의 공급원이 되는 스위치(58)에 공급하고, 오디오 스트림을 1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2)로의 공급원이 되는 스위치(59)에 공급한다.
스텝 S21에서, PID 필터(55) 및 PID 필터(56)의 후단의 스위치(57 내지 59)는, 컨트롤러(21)로부터의 제어에 따라, 메인 Clip AV 스트림 파일과 서브 Clip AV 스트림 파일 중 어느 하나를 선택한다. 구체적으로는, 스위치(57)는 PID 필터(55)로부터 공급된 메인 Clip AV 스트림 파일 또는 서브 Clip AV 스트림 파일의 프리젠테이션 그래픽스 스트림을 선택하여, 후단의 프리젠테이션 그래픽스 디코더(73)에 공급한다. 또, 스위치(58)는 PID 필터(55)로부터 공급된 메인 Clip AV 스트림 파일 또는 서브 Clip AV 스트림 파일의 인터랙티브 그래픽스 스트림을 선택하여, 후단의 인터랙티브 그래픽스 스트림 디코더(74)에 공급한다. 또한, 스위치(59)는 PID 필터(55)로부터 공급된 메인 Clip AV 스트림 파일 또는 PID 필터(56)로부터 공급된 서브 Cli AV 스트림 파일의 오디오 스트림을 선택하여, 후단의 1st 오디오 디코더(75-1)에 공급한다. 그리고, 음성을 전환하는 바와 같은 지령이 사용자에 의해 행해진 경우에는, 스위치(59)는 서브 Clip AV 스트림 파일의 오디오 스트림을 2nd 오디오 디코더(75-2)에 공급하거나 하기도 하지만, 여기에서는, 음성이 전환되기 전의 처리에 대하여 설명하고 있으므로, 그 설명은 생략하고 있다.
스텝 S22에서, 버퍼(54)는 텍스트 서브타이틀 데이터를 텍스트 서브타이틀 콤퍼지션(76)에 출력한다.
스텝 S23에서, 백그라운드 디코더(71)는 백그라운드 이미지 데이터를 디코드하여, 이것을 백그라운드 플레인 생성부(91)에 출력한다.
스텝 S24에서, 비디오 디코더(72)는 비디오 스트림을 디코드하여, 이것을 비디오 플레인 생성부(92)에 출력한다.
스텝 S25에서, 프리젠테이션 그래픽스 디코더(73)는 스위치(57)에 의해 선택되어, 공급된 프리젠테이션 그래픽스 스트림을 디코드하여, 이것을 후단의 스위치(77)에 출력한다.
스텝 S26에서, 인터랙티브 그래픽스 디코더(74)는 스위치(58)에 의해 선택되어, 공급된 인터랙티브 그래픽스 스트림을 디코드하여, 이것을 후단의 인터랙티브 그래픽스 플레인 생성부(94)에 출력한다.
스텝 S27에서, 1st 오디오 디코더(75-1)는 스위치(59)에 의해 선택되어, 공급된 오디오 데이터를 디코드하여, 이것을 후단의 믹싱 처리부(101)에 출력한다. 음성의 전환이 사용자에 의해 지시되어 있지 않은 상태에서의 재생 처리(도 29 내지 도 32의 재생 처리)에서는, 2nd 오디오 디코더(75-2)로부터 오디오 데이터가 출력되는 일은 없으므로, 믹싱 처리부(101)는 1st 오디오 디코더(75-1)로부터 출력된 오디오 데이터를 그대로 후단의 믹싱 처리부(97)에 공급한다.
스텝 S28에서, Text-ST 콤퍼지션(76)은 텍스트 서브타이틀 데이터를 디코드하여, 이것을 후단의 스위치(77)에 출력한다.
스텝 S29에서, 스위치(77)는 프리젠테이션 그래픽스 디코더(73) 또는 Text-ST 콤퍼지션(76)으로부터의 데이터 중 어느 하나를 선택한다. 구체적으로는, 스위치(77)는 프리젠테이션 그래픽스 디코더(73)에 의해 디코드된 프리젠테이션 그래픽스 스트림과, Text-ST(텍스트 서브타이틀 데이터) 중, 어느 하나를 선택하고, 선택한 데이터를 프리젠테이션 그래픽스 플레인 생성부(93)에 공급한다.
스텝 S30에서, 백그라운드 플레인 생성부(91)는 백그라운드 디코더(71)로부터 공급된 백그라운드 이미지 데이터에 따라, 백그라운드 플레인을 생성한다.
스텝 S31에서, 비디오 플레인 생성부(92)는 비디오 디코더(72)로부터 공급된 비디오 데이터에 따라, 비디오 플레인을 생성한다.
스텝 S32에서, 프리젠테이션 그래픽스 플레인 생성부(93)는 스텝 S29의 처리에서 스위치(77)에 의해 선택되어, 공급된 프리젠테이션 그래픽스 디코더(73)로부터의 데이터 또는 Text-ST 콤퍼지션(76)으로부터의 데이터에 따라, 프리젠테이션 그래픽스 플레인을 생성한다.
스텝 S33에서, 인터랙티브 그래픽스 플레인 생성부(94)는, 인터랙티브 그래픽스 디코더(74)로부터 공급된 인터랙티브 그래픽스 스트림의 데이터에 따라, 인터랙티브 그래픽스 플레인을 생성한다.
스텝 S34에서, 버퍼(95)는 스텝 S14의 처리에서 선택되어, 공급된 사운드 데이터를 버퍼링하여, 소정의 타이밍에서 믹싱 처리부(97)에 공급한다.
스텝 S35에서, 비디오 데이터 처리부(96)는 각 플레인의 데이터를 합성하여, 출력한다. 구체적으로는, 백그라운드 플레인 생성부(91), 비디오 플레인 생성부(92), 프리젠테이션 그래픽스 플레인 생성부(93), 및 인터랙티브 그래픽스 플레인 생성부(94)로부터의 데이터를 합성하여, 비디오 데이터로서 출력한다.
스텝 S36에서, 믹싱 처리부(97)는 오디오 데이터(믹싱 처리부(101)로부터 출력된 오디오 데이터)와 사운드 데이터를 믹싱(합성)하여, 출력하고, 처리가 종료된다.
도 29 내지 도 31을 사용하여 설명한 처리에 의해, PlayList에 포함되는 메인 패스와 서브 패스에 관련된 메인 Clip AV 스트림 파일, 서브 Clip AV 스트림 파일, 및 텍스트 서브타이틀 데이터가 참조되어 재생된다. PlayList에 메인 패스와 서브 패스를 설치하도록 하고, 서브 패스로, 메인 패스로 지정하는 Clip AV 스트림 파일과는 상이한 Clip AV 스트림 파일을 지정 가능한 구성으로 했으므로, 메인 패스의 PlayItem이 가리키는 메인 Clip과는 상이한 Clip인 서브 Clip에 포함되는 서브 Clip AV 스트림 파일의 데이터와 메인 Clip에 포함되는 메인 Clip AV 스트림 파일의 데이터를 함께(동일 타이밍에서) 재생할 수 있다.
그리고, 도 29 내지 도 31에서, 스텝 S16, 스텝 S17의 처리는 그 순번이 역이라도 되고, 병행하여 실행되어도 된다. 또, 스텝 S18, 스텝 S20의 처리도 그 순번이 역이라도 되고, 병행하여 실행되어도 된다. 또한, 스텝 S23 내지 스텝 S28의 처리도 그 순번이 역이라도 되고, 병행하여 실행되어도 된다. 또, 스텝 S30 내지 스텝 S33의 처리도 그 순번이 역이라도 되고, 병행하여 실행되어도 된다. 또한, 스텝 S35, 스텝 S36의 처리도 그 순번이 역이라도 되고, 병행하여 실행되어도 된다. 즉, 도 28에서, 세로로 동일 계층의 버퍼(51 내지 54)의 처리, 스위치(57 내지 59)의 처리, 디코더(71 내지 76)의 처리, 플레인 생성부(91 내지 94)의 처리, 비디오 데이터 처리부(96) 및 믹싱 처리부(97)의 처리는, 각각, 병행하여 실행되어도 되고, 그 순번은 묻지 않는다.
다음에, 음성의 전환이 지시된 경우의 재생 장치(1)에 있어서의 처리를, 도 32의 플로차트를 참조하여 설명한다. 그리고, 이 처리는, 예를 들면, 도 29 내지 도 31의 재생 처리의 실행 중에 실행되는 처리이다.
스텝 S51에서, 컨트롤러(21)는 오디오 스트림 번호(ID라도 됨)의 순번 리스트를 취득한다. 구체적으로는, 컨트롤러(21)는 도 13을 사용하여 설명한 PlayItem의 STN_table()을 참조하고, 또한 도 14 또는 도 16을 사용하여 설명한 STN_table()에 엔트리되어 있는 오디오 스트림 번호(ID)의 순번 리스트를 취득한다. 이 처리는 도 29 내지 도 31의 재생 처리가 개시되었을 때 실행되는 처리이다.
사용자에 의해 조작 입력부(29)를 통해 음성 전환의 지령이 행해진 경우, 스텝 S52에서, 컨트롤러(21)는 사용자로부터의 음성 전환의 지령을 접수한다. 이 때, 컨트롤러(21)는 도시하지 않은 외부의 표시 장치를 제어하여, 도 26에 나타낸 바와 같은 스트림 넘버 테이블을 외부의 표시 장치에 표시하도록 제어해도 된다. 이와 같이, 컨트롤러(21)는 사용자에게 제공하는 음성 신호와 자막 신호의 선택 사항을 표시하게 하여, 사용자로부터의 음성 전환(음성 선택)의 지령을 접수한다. 도 32에서, 스텝 S51의 처리는 미리 실행되어 있는 처리이며, 사용자에 의해 음성 전환의 지령이 행해진 경우에, 스텝 S52 이후의 처리가 행해진다.
스텝 S53에서, 컨트롤러(21)는 재생하고 있는 오디오 스트림 번호의 다음의 오디오 스트림 번호를 취득한다. 예를 들면, 도 8의 SubClip_entry_id=0의 오디오 스트림(Auxiliary audio stream)이 재생되어 있는 경우, 다음의 SubClip_entry_id=1에 대응하는 오디오 스트림 파일의 번호가 취득된다. 예를 들면, 도 26의 A_SN=3의 오디오 3에 대응하는 오디오 스트림 파일이 재생되어 있는 경우, 다음은, A_SN=4의 오디오 2+오디오 4이므로, 컨트롤러(21)는 메인 패스로 참조되는, 오디오 2에 대응하는 오디오 스트림의 번호와, 서브 패스로 참조되는, 오디오 4에 대응하는 오디오 스트림의 번호를 취득한다.
스텝 S54에서, 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림을 재생하는 기능을 가지는지 여부를 판정한다. 구체적으로는, 컨트롤러(21)는 stream_attribute()(도 18)에 기술되어 있는 내용에 따라, 예를 들면, 필요에 따라, 메모리(23)에 등록되어 있는 각종 설정을 참조하는 것 등에 의해, 취득한 번호에 대응하는 오디오 스트림을 자기 자신(재생 장치(1))이 재생하는 기능을 가지는지 여부를 판정한다. 예를 들면, 도 15 또는 도 17의 stream_entry()에서, type=1인 경우, 컨트롤러(21)는 취득한 번호에 대응하는 메인 Clip AV 스트림 파일의 오디오 스트림을 재생하는 기능을 가지는지 여부를 판정한다. 또, 예를 들면, 도 15 또는 도 17의 stream_entry()에서, type=2인 경우, 컨트롤러(21)는 취득한 번호에 대응하는 서브 Clip의 오디오 스트림을 재생하는 기능을 가지는지 여부를 판정한 다.
또한, 예를 들면, 메인 Clip AV 스트림 파일의 오디오 스트림과, 서브 Clip AV 스트림 파일의 오디오 스트림을 믹싱하여 재생하는 경우(도 14의 제1 STN_table에서, 도 15의 stream_entry()에서 type=3인 경우, 또는 도 16의 제2 STN_table에서, secondary_audio_present_flag가 1이며, 1번째의 Stream_entry()에서 type=1이며, 2번째의 Stream_entry()에서 type=2인 경우), 컨트롤러(21)는 메인 Clip AV 스트림 파일의 오디오 스트림만에 대하여, 취득한 번호에 대응하는 오디오 스트림을 재생하는 기능을 가지는지 여부를 판정한다. 여기에서, 메인 Clip AV 스트림 파일의 오디오 스트림과, 서브 Clip의 오디오 스트림의 믹싱 재생을 하는 경우, 서브 Clip AV 스트림 파일의 오디오 스트림을 재생하는 기능을 가지는지 여부의 판정은 생략해도 된다. 이것은 메인 Clip AV 스트림 파일에는, 확장된 스트림이나 멀티채널의 스트림이 포함될 가능성이 있지만, 서브 Clip AV 스트림 파일이라고, 어느 정도의 제약이 형성되어 있을 가능성이 높고, 특히 서브 Clip AV 스트림 파일에 포함되는 스트림을 재생할 수 있는지 여부를 판정할 필요가 없기 때문이다. 물론, 컨트롤러(21)는 서브 Clip AV 스트림 파일에 포함되는 스트림을 재생할 수 있는지 여부도 판정하도록 해도 된다.
또, 예를 들면, 2개의 서브 Clip AV 스트림 파일의 오디오 스트림을 믹싱하여 재생하는 경우(도 16의 제2 STN_table에서, secondary_audio_present_flag가 1이며, 1번째의 Stream_entry()의 type=2이며, 2번째의 Stream_entry()의 type=2인 경우), 컨트롤러(21)는 1st 오디오 디코더(75-1)로 디코드되는(도 16의 오디오 스 트림 ID(audio_stream_id)의 for 루프 중 최초의) 오디오 스트림에 대하여, 취득한 번호에 대응하는 오디오 스트림을 재생하는 기능을 가지는지 여부를 판정한다. 여기에서, 도 16의 stream entry()에서 secondary_audio_present_flag가 1로 된 후의 2번째에 엔트리되어 있는 서브 Clip AV 스트림 파일의 오디오 스트림을 재생하는 기능을 가지는지 여부의 판정은 생략해도 된다. 이것은 도 16의 오디오 스트림 ID(audio_stream_id)의 for 루프 중 최초의 오디오 스트림은 영화의 일본어 더빙 등의 음성으로 상정되어, 도 16의 stream entry()에서 2번째에 엔트리되어 있는 서브 Clip AV 스트림 파일의 오디오 스트림으로서 상정되는 영화의 디렉터스 컷보다 고품질의 음성일 가능성이 높기 때문에, 특히, 품질이 낮은 쪽인 도 16의 stream entry()에서 2번째에 엔트리되어 있는 서브 Clip AV 스트림 파일의 오디오 스트림을 재생하는 기능을 가지는가의 판정이 필요없기 때문이다. 물론, 컨트롤러(21)는 2개의 서브 패스로 참조되는 2개의 서브 Clip AV 스트림 파일의 오디오 스트림에 대하여, 재생할 수 있는지 여부를 판정하도록 해도 된다.
스텝 S54에서, 취득한 번호에 대응하는 오디오 스트림을 재생하는 기능을 가지고 있지 않다고 판정된 경우, 스텝 S55에서, 컨트롤러(21)는 현재의 스트림 번호의 다음의 스트림 번호를 취득한다. 즉, 현재의 스트림 번호의 오디오 스트림을 재생하는 기능을 갖지 않은 경우에는, 그 스트림 번호는 날아가고(재생 대상이 되지 않고), 다음의 스트림 번호가 취득된다. 그리고, 스텝 S55의 처리 후, 처리는 스텝 S54로 복귀하여, 그 이후의 처리가 반복된다. 즉, 컨트롤러(21)에 의해 자기 자신이 재생하는 기능을 가지는 오디오 스트림의 번호가 취득될 때까지, 처리가 반 복된다.
스텝 S54에서, 취득한 번호에 대응하는 오디오 스트림을 재생하는 기능을 가진다고 판정된 경우, 스텝 S56에서, 컨트롤러(21)는 취득한 번호에 대응하는 메인 Clip에 포함되는 Clip AV 스트림 파일의 오디오 스트림과, 서브 Clip에 포함되는 Clip AV 스트림 파일의 오디오 스트림을 조사한다. 예를 들면, 도 8의 예의 경우, 취득된 SubClip_entry_id=1은 Sub Path에 의해 참조되므로, 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림이, 서브 Clip AV 스트림 파일에 있는 것을 확인할 수 있다. 또, 예를 들면, 도 15 또는 도 17의 stream_entry()에서, type=1인 경우, 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림이, 메인 Clip AV 스트림 파일에 있는 것을 확인한다. 또한, 예를 들면, 도 15 또는 도 17의 stream_entry()에서, type=2인 경우, 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림이 서브 Clip AV 스트림 파일에 있는 것을 확인한다. 또, 예를 들면, 메인 Clip AV 스트림 파일과 서브 Clip AV 스트림 파일의 오디오 스트림을 믹싱 재생하는 경우(도 14의 제1 STN_table에서, 도 15의 stream_entry()에서 type=3인 경우, 또는 도 16의 제2 STN_table에서, secondary_audio_present_flag가 1이며, 1번째의 Stream_entry()에서 type=1이며, 2번째의 Stream_entry()에서 type=2인 경우), 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림이, 메인 Clip AV 스트림 파일과 서브 Clip AV 스트림 파일의 양쪽에 있는 것을 확인한다. 또한, 예를 들면, 2개의 서브 Clip AV 스트림 파일의 오디오 스트림을 믹싱 재생하는 경우(도 16의 secondary_audio_present_flag가 1이며, 1번째의 Stream_entry()에서 type=2이 며, 2번째의 Stream_entry()에서 type=2인 경우), 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림이, 서브 Clip AV 스트림 파일에만 있는 것을 확인한다.
스텝 S57에서, 컨트롤러(21)는 원하는 오디오 스트림을 특정한다. 구체적으로는, 취득한 번호에 대응하는 스트림이 속하는 메인 Clip AV 스트림 파일 또는 서브 Clip AV 스트림 파일 중의 원하는 오디오 스트림을 특정한다. 예를 들면, 컨트롤러(21)는 도 15 또는 도 17에서, type=1인 경우, 메인 Clip AV 스트림 파일 중의 소정의 오디오 스트림을 특정하고, type=2인 경우, 서브 Clip AV 스트림 파일 중의 소정의 오디오 스트림을 특정하고, 도 15에서 type=3이거나, 도 17에서, secondary_audio_present_flag가 1, 1번째의 Stream_entry()가 type=1, 2번째의 Stream_entry()가 type=2인 경우, 메인 Clip AV 스트림 파일 중의 소정의 오디오 스트림과, 서브 Clip 중 소정의 오디오 스트림을 특정한다. 또, 도 17에서 secondary_audio_present_flag가 1, 1번째의 Stream_entry()가 type=2, 2번째의 Stream_entry()가 type=2인 경우, 컨트롤러(21)는 2개의 서브 Clip AV 스트림 파일 중 2개의 소정의 오디오 스트림을 특정한다.
스텝 S58에서, 컨트롤러(21)는 원하는 오디오 스트림이 다중화되어 있는 Clip(메인 Clip AV 스트림 파일만, 서브 Clip AV 스트림 파일만, 메인 Clip AV 스트림 파일과 서브 Clip AV 스트림 파일, 또는 2개의 서브 Clip AV 스트림 파일 중 어느 하나를 포함하는 Clip)으로부터, 특정된 오디오 스트림을 판독하도록 스토리지 드라이브(22)에 지시하거나, 또는 로컬 스토리지(24)에 기록되어 있는 원하는 오디오 스트림이 다중화되어 있는 Clip으로부터, 특정된 오디오 스트림을 판독한 다. 스토리지 드라이브(22)는 컨트롤러(21)로부터 지시를 받은 경우, 이 지시에 따라, 대상이 되는 오디오 스트림을 판독한다. 그리고, 컨트롤러(21)는 판독된 오디오 스트림을 AV 디코더부(26)에 공급하여, 재생하도록 AV 디코더부(26)에 지시한다. 컨트롤러(21)는, 예를 들면, 도 14의 제1 STN_table에서, 도 15의 stream_entry()에서 type=3인 경우, 또는 도 16의 제2 STN_table에서, secondary_audio_present_flag가 1이며, 1번째의 Stream_entry()가 type=1이며, 2번째의 Stream_entry()가 type=2인 경우, 메인 Clip의 오디오 스트림과, 서브 Clip AV 스트림 파일의 오디오 스트림의 양쪽을 재생하도록, AV 디코더부(26)에 지시한다.
스텝 S59에서, AV 디코더부(26)는 오디오 스트림을 디코드하여, 오디오 출력한다. 즉, 오디오 디코더(75)에 의해 디코드된 오디오 데이터와, 버퍼(95)로부터 출력되는 사운드 데이터가 믹싱 처리부(97)에 의해 믹싱 처리되어, 오디오 신호로서 출력된다. 구체적으로는, 도 15 또는 도 17에서 type=1인 경우, 1st 오디오 디코더(75-1)는 메인 Clip AV 스트림 파일 중의 소정의 오디오 스트림을 디코드하여, 이것을, 믹싱 처리부(101)를 통해 믹싱 처리부(97)에 공급한다. 또, 도 15 또는 도 17에서 type=2인 경우, 1st 오디오 디코더(75-1) 또는 2nd 오디오 디코더(75-2) 중 어느 하나(STN_table의 기재에 의해 정해짐)는, 서브 Clip AV 스트림 파일 중의 소정의 오디오 스트림을 디코드하여, 이것을, 믹싱 처리부(101)를 통해 믹싱 처리부(97)에 공급한다.
이 때, 메인 Clip AV 스트림 파일과 서브 Clip AV 스트림 파일의 오디오 스 트림을 믹싱 재생하는 경우(도 15의 type=3인 경우, 또는 도 16의 secondary_audio_present_flag가 1, 1번째의 Stream_entry()의 type=1, 2번째의 Stream_entry()의 type=2인 경우), 1st 오디오 디코더(75-1)는 메인 Clip AV 스트림 파일 중의 소정의 오디오 스트림을 디코드하여, 이것을 믹싱 처리부(101)에 공급하고, 2nd 오디오 디코더(75-2)는 서브 Clip AV 스트림 파일 중의 소정의 오디오 스트림을 디코드하여, 이것을 믹싱 처리부(101)에 공급한다. 또, 2개의 서브 Clip AV 스트림 파일의 오디오 스트림을 믹싱 재생하는 경우(도 16의 secondary_audio_present_flag가 1, 1번째의 Stream_entry()의 type=2, 2번째의 Stream_entry()의 type=2인 경우), 1st 오디오 디코더(75-1)는 서브 Clip AV 스트림 파일 중의 소정의 오디오 스트림을 디코드하여, 이것을 믹싱 처리부(101)에 공급하고, 2nd 오디오 디코더(75-2)는 서브 Clip AV 스트림 파일 중의 소정의 오디오 스트림을 디코드하여, 이것을 믹싱 처리부(101)에 공급한다. 믹싱 처리부(101)는 1st 오디오 디코더(75-1)로부터 공급된 오디오 데이터와, 2nd 오디오 디코더(75-2)로부터 공급된 오디오 데이터를 믹싱(중첩, 합성)하여, 이것을 믹싱 처리부(97)에 공급한다. 믹싱 처리부(97)는 믹싱 처리부(101)로부터 공급되어 온 오디오 데이터와, 버퍼(95)로부터 공급되어 온 사운드 데이터를 믹싱(중첩, 합성)하고, 이것을 오디오 신호로서 출력한다.
이 도 32의 스텝 S59의 처리의 상세한 예를, 도 33의 플로차트를 참조하여 설명한다. 도 33은 AV 디코더부(26)에 있어서의 오디오 스트림을 출력하는 처리의 예를 설명하는 플로차트이다.
스텝 S81에서, AV 디코더부(26)는 컨트롤러(21)로부터의 제어에 따라, 재생하는 오디오 스트림이 메인 Clip AV 스트림 파일의 오디오 스트림뿐인지 여부를 판정한다. 예를 들면, AV 디코더부(26)는 도 14 또는 도 16에서 엔트리되어 있는 오디오 스트림이, 도 15 또는 도 17에서 type=1뿐인지 여부를 판정한다.
스텝 S81에서, 재생하는 오디오 스트림이 메인 Clip AV 스트림 파일의 오디오 스트림뿐이라고 판정된 경우, PID 필터(55)에 의해 선택되어 공급되어 온 메인 Clip AV 스트림 파일의 오디오 스트림이, 스위치(59)에 의해 선택되어, 1st 오디오 디코더(75-1)에 공급되므로, 스텝 S82에서, 1st 오디오 디코더(75-1)는 메인 Clip AV 스트림 파일의 오디오 스트림을 디코드한다. 1st 오디오 디코더(75-1)는 디코드한 메인 Clip AV 스트림 파일의 오디오 스트림을, 후단의 믹싱 처리부(101)에 공급한다. 믹싱 처리부(101)는 공급되어 온 오디오 데이터를 그대로 후단의 믹싱 처리부(97)에 출력한다.
스텝 S81에서, 재생하는 오디오 스트림이 메인 Clip AV 스트림 파일의 오디오 스트림뿐이 아니라고 판정된 경우, (즉, 재생하는 오디오 스트림이 도 15에서 type=2 또는 type=3인 경우, 또는 도 17에서, type=2를 적어도 포함하는 경우), 스텝 S83에서, AV 디코더부(26)는 컨트롤러(21)로부터의 제어에 따라, 재생하는 오디오 스트림이 서브 Clip AV 스트림 파일의 오디오 스트림뿐인지 여부를 판정한다. 즉, AV 디코더부(26)는 도 14 또는 도 16에서 엔트리되어 있는 오디오 스트림이 도 15 또는 도 17에서 type=2뿐인지 여부를 판정한다.
스텝 S83에서, 재생하는 오디오 스트림이 서브 Clip AV 스트림 파일의 오디 오 스트림뿐이 아니라고 판정된 경우, 재생하는 오디오 스트림이 메인 Clip AV 스트림 파일의 오디오 스트림과, 서브 Clip AV 스트림 파일의 오디오 스트림과의 조합인 것을 나타내는, 즉, 재생하는 오디오 스트림이 도 15에서 type=3인, 또는 도 16에서, secondary_audio_present_flag가 1로 되고, 또한 1번째의 Stream_entry()가 type=1과2번째의 Stream_entry()가 type=2로 되는 조합이므로, PID 필터(55)에 의해 선택되어 공급되어 온 메인 Clip AV 스트림 파일의 오디오 스트림이 스위치(59)에 의해 선택되어, 1st 오디오 디코더(75-1)에 공급되는 동시에, PID 필터(56)에 의해 선택되어 공급되어 온 서브 Clip AV 스트림 파일의 오디오 스트림이, 스위치(59)에 의해 선택되어, 2nd 오디오 디코더(75-2)에 공급된다.
그래서, 스텝 S84에서, 1st 오디오 디코더(75-1)는 메인 Clip AV 스트림 파일의 오디오 스트림을 디코드한다. 1st 오디오 디코더(75-1)는 디코드한 메인 Clip AV 스트림 파일의 오디오 스트림을, 후단의 믹싱 처리부(101)에 공급한다.
또, 스텝 S85에서, 2nd 오디오 디코더(75-2)는 서브 Clip AV 스트림 파일의 오디오 스트림을 디코드한다. 2nd 오디오 디코더(75-2)는 디코드한 서브 Clip AV 스트림 파일의 오디오 스트림을, 후단의 믹싱 처리부(101)에 공급한다. 그리고, 스텝 S84와 스텝 S85의 처리는 병행하여 실행되어도 되고, 순번을 역으로 하여 실행되어도 된다.
스텝 S86에서, 믹싱 처리부(101)는 1st 오디오 디코더(75-1)에 의해 디코드된 메인 Clip AV 스트림 파일의 오디오 스트림과, 2nd 오디오 디코더(75-2)에 의해 디코드된 서브 Clip AV 스트림 파일의 오디오 스트림을 믹싱한다. 즉, 믹싱 처리 부(101)는 1st 오디오 디코더(75-1)로부터 공급되어 온 오디오 데이터와 2nd 오디오 디코더(75-2)로부터 공급되어 온 오디오 데이터를 믹싱(합성, 중첩)한다. 믹싱 처리부(101)는 믹싱한 결과 얻어진 오디오 데이터를 후단의 믹싱 처리부(97)에 공급한다.
한편, 스텝 S83에서, 재생하는 오디오 스트림이 서브 Clip AV 스트림 파일의 오디오 스트림뿐이라고 판정된 경우(도 15 또는 도 17에서 type=2뿐인 경우), 처리는 스텝 S87로 진행하여, AV 디코더부(26)는 컨트롤러(21)로부터의 제어에 따라, 재생하는 오디오 스트림은 서브 Clip AV 스트림 파일의 2개의 오디오 스트림의 조합인지 여부를 판정한다. 즉, 도 16의 stream entry()에서, secondary_audio_present_flag가 1로 되어 2개의 오디오 스트림이 엔트리되고, 또한 도 17에서, 함께 type=2로 되어 있는지 여부가 판정된다. 그리고, 도 14와 도 15의 신택스의 경우, 서브 Clip AV 스트림 파일의 2개의 오디오 스트림의 조합은 정의되지 않으므로, 스텝 S87에서는, 재생하는 오디오 스트림은 서브 Clip AV 스트림 파일의 2개의 오디오 스트림의 조합이 아니라고 판정된다.
스텝 S87에서, 재생하는 오디오 스트림은 서브 Clip AV 스트림 파일의 2개의 오디오 스트림의 조합이 아니라고 판정된 경우(도 14와 도 15에서, type=2로 되는 경우, 또는 도 16과 도 17에서, secondary_audio_present_flag가 0으로 되고, 1번째의 Stream_entry()에서 type=2로 되는 경우), 즉, 오디오 스트림이 1개밖에 엔트리되어 있지 않은 경우, 이 오디오 스트림은 물론 서브 Clip AV 스트림 파일의 오디오 스트림이므로, PID 필터(56)에 의해 선택되어 공급되어 온 서브 Clip AV 스트 림 파일의 오디오 스트림이, 스위치(59)에 의해 선택되어, 1st 오디오 디코더(75-1)에 공급된다. 그래서, 스텝 S88에서, 1st 오디오 디코더(75-1)는 서브 Clip AV 스트림 파일의 오디오 스트림을 디코드한다. 1st 오디오 디코더(75-1)는 디코드한 서브 Clip AV 스트림 파일 p의 오디오 스트림을, 후단의 믹싱 처리부(101)에 공급한다. 믹싱 처리부(101)는 공급되어 온 오디오 데이터를 그대로 후단의 믹싱 처리부(97)에 출력한다.
한편, 스텝 S87에서, 재생하는 오디오 스트림은 서브 Clip AV 스트림 파일의 2개의 오디오 스트림의 조합이라고 판정된 경우(도 16와 도 17에서, secondary_audio_present_flag가 1로 되고, 1번째의 Stream_entry()와 2번째의 Stream_entry()가 모두 type=2로 되는 경우), PID 필터(56)에 의해 선택되어 공급되어 온 서브 Clip AV 스트림 파일의 오디오 스트림은 2개가 되므로, 스위치(59)는 1st 오디오 디코더(75-1)로 디코드되는 오디오 스트림, 즉, 도 16에서, 오디오 스트림 ID(audio_stream_id)의 for 루프 중의 최초에 엔트리된 오디오 스트림을, 1st 오디오 디코더(75-1)에 공급하도록 스위치를 선택하고, 2nd 오디오 디코더(75-2)로 디코드되는 오디오 스트림, 즉, 도 16에서, 오디오 스트림 ID(audio_stream_id)의 for 루프 중의 secondary_audio_present_flag가 1로 된 후에, 2번째에 엔트리된 오디오 스트림을, 2nd 오디오 디코더(75-2)에 공급하도록 스위치를 선택한다.
그래서, 스텝 S89에서, 1st 오디오 디코더(75-1)는 공급되어 온 서브 Clip AV 스트림 파일의 오디오 스트림을 디코드한다. 1st 오디오 디코더(75-1)는 디코드한 서브 Clip AV 스트림 파일의 오디오 스트림을, 후단의 믹싱 처리부(101)에 공 급한다.
또, 스텝 S90에서, 2nd 오디오 디코더(75-2)는 공급되어 온 서브 Clip AV 스트림 파일의 오디오 스트림을 디코드한다. 2nd 오디오 디코더(75-2)는 디코드한 서브 Clip AV 스트림 파일의 오디오 스트림을, 후단의 믹싱 처리부(101)에 공급한다. 그리고, 스텝 S89와 스텝 S90의 처리는 병행하여 실행되어도 되고, 순번을 역으로 하여 실행되어도 된다.
스텝 S91에서, 믹싱 처리부(101)는 1st 오디오 디코더(75-1)에 의해 디코드된 서브 Clip AV 스트림 파일의 오디오 스트림과, 2nd 오디오 디코더(75-2)에 의해 디코드된 서브 Clip AV 스트림 파일의 오디오 스트림(즉, 2개의 서브 Clip AV 스트림 파일의 오디오 스트림)을 믹싱한다. 환언하면, 믹싱 처리부(101)는 1st 오디오 디코더(75-1)로부터 공급되어 온 오디오 데이터와 2nd 오디오 디코더(75-2)로부터 공급되어 온 오디오 데이터를 믹싱(합성, 중첩)한다. 믹싱 처리부(101)는 믹싱한 결과 얻어진 오디오 데이터를 후단의 믹싱 처리부(97)에 공급한다.
스텝 S82의 처리 후, 스텝 S86의 처리 후, 스텝 S88의 처리 후, 또는 스텝 S91의 처리 후, 처리는 스텝 S92로 진행하여, 믹싱 처리부(97)는 공급되어 온 오디오 데이터와, 버퍼(95)로부터 공급되어 온 사운드 데이터를 믹싱하여, 출력한다. 예를 들면, 이 스텝 S92의 처리가, 스텝 S82의 처리 후인 경우, 믹싱 처리부(97)는 메인 Clip AV 스트림 파일의 오디오 스트림이 디코드된 오디오 데이터와, 사운드 데이터를 믹싱한다. 또, 예를 들면, 이 스텝 S92의 처리가, 스텝 S88의 처리 후인 경우, 믹싱 처리부(97)는 서브 Clip AV 스트림 파일의 오디오 스트림이 디코드된 오디오 데이터와 사운드 데이터를 믹싱한다. 또한, 예를 들면, 이 스텝 S92의 처리가, 스텝 S86의 처리 후인 경우, 믹싱 처리부(97)는 메인 Clip AV 스트림 파일의 오디오 스트림이 디코드된 오디오 데이터와 서브 Clip AV 스트림 파일의 오디오 스트림이 디코드된 오디오 데이터가 믹싱된 오디오 데이터에, 사운드 데이터를 믹싱한다. 또, 예를 들면, 이 스텝 S92의 처리가, 스텝 S91의 처리 후인 경우, 믹싱 처리부(97)는 2개의 서브 Clip AV 스트림 파일의 오디오 스트림이 각각 디코드된 오디오 데이터가 믹싱된 오디오 데이터에, 사운드 데이터를 믹싱한다.
도 33의 처리에 의하면, 메인 패스로 참조되는 오디오 스트림과, 서브 패스로 참조되는 오디오 스트림과의 믹싱 재생을 행할 수 있다. 또, 2개의 서브 패스로 참조되는 2개의 오디오 스트림의 믹싱 재생을 행할 수 있다.
도 33을 사용하여 설명한 처리와 같이 하여, 도 30의 스텝 S21에서의 도 28의 스위치(59) 선택이 결정된다. 즉, 도 33을 사용하여 설명한 처리에서 재생되는 오디오 스트림이 메인 Clip AV 스트림 파일뿐인 경우, 스위치(59)는 메인측, 즉, PID 필터(55)로부터 공급된 오디오 스트림을 1st 오디오 디코더(75-1)에 공급하도록 선택하고(도 33의 스텝 S81에서 YES), 대상이 되는 Clip이 1개의 서브 Clip AV 스트림 파일뿐인 경우, 스위치(59)는 서브 측, 즉, PID 필터(56)로부터 공급된 오디오 스트림을 1st 오디오 디코더(75-1)에 공급하도록 선택하고(도 33의 스텝 S87에서 NO), 대상이 되는 Clip AV 스트림 파일이 메인 Clip AV 스트림 파일과 서브 Clip AV 스트림 파일의 양쪽인 경우, 스위치(59)는 PID 필터(55)로부터 공급된 오디오 스트림을 1st 오디오 디코더(75-1)에 공급하는 동시에, PID 필터(56)로부터 공급된 오디오 스트림을, 2nd 오디오 디코더(75-2)에 공급하도록 선택하고(도 33의 스텝 S83에서 NO), 대상이 되는 Clip이 2개의 서브 Clip AV 스트림 파일인 경우, 스위치(59)는 서브 측, 즉, PID 필터(56)로부터 공급된 오디오 스트림을, 1st 오디오 디코더(75-1) 또는 2nd 오디오 디코더(75-2)에 공급하도록 선택(도 33의 스텝 S87에서 YES)한다.
이와 같이, 컨트롤러(21)는 PlayItem의 STN_table()에 따라, 음성(오디오)의 전환을 제어할 수 있다. 또, 컨트롤러(21)는 STN_table()의 stream_attribute을 참조함으로써, 자기 자신이 재생 기능을 가지는 스트림만을 선택하여, 재생 전환의 제어를 할 수 있다. 또한, 컨트롤러(21)는 STN_table()에 따라, 메인 Clip AV 스트림 파일에 포함되는 오디오 스트림과, 서브 Clip AV 스트림 파일에 포함되는 오디오 스트림을 중첩하여 재생하고, 2개의 서브 Clip AV 스트림 파일에 포함되는 오디오 스트림을 중첩하여 재생하도록 제어할 수 있다.
그리고, 도 14와 도 15의 신택스(제1 STN_table())를 사용하는 경우, 서브 Clip AV 스트림 파일의 2개의 오디오 스트림의 조합은 정의되지 않으므로, 도 33의 스텝 S87에서는 반드시 NO로 판정되고, 스텝 S88 이후의 처리가 실행된다. 즉, 도 14와 도 15의 신택스에 대응하는 경우, 도 33의 스텝 S89, 스텝 S90, 및 스텝 S91의 처리는 실행되지 않는다.
그리고, 도 32의 처리에서는, 오디오 스트림 번호에 따라, 오디오를 전환하도록 했지만, 오디오 스트림 ID(audio_stream_id)에 따라, 오디오를 전환하도록 해도 된다. 이 경우, 오디오 스트림 번호로부터 1을 감산한 것이, 오디오 스트림 ID 로 된다.
또, 이상의 예에서는, 메인 패스에 의해 참조되는 오디오 스트림과, 서브 패스에 의해 참조되는 오디오 스트림을 믹싱(합성)하여 재생하는 경우의 예(도 14와 도 15, 또는 도 16과 도 17)나, 2개의 서브 패스에 의해 참조되는 오디오 스트림을 믹싱(합성)하여 재생하는 경우의 예(도 16과 도 17)를 설명했지만, 오디오 스트림에 한정되지 않고, 스트림의 종류가 동일하면, 각종의 스트림 파일에 대하여 동일하게 적용할 수 있다. 예를 들면, 비디오 스트림(스트림의 종류가 비디오 스트림)을 2개 합성하여 재생하는 픽처인픽처(picture-in-picture) 표시를 하는 경우에도, 이 구성은 적용할 수 있다. 이와 같이, 본 발명에 의하면, 메인 Clip에 포함되는 소정의 종류의 스트림 파일과, 동일 종류의 서브 Clip에 포함되는 스트림 파일과의 조합을 정의하거나, 서브 Clip에 포함되는 동일 종류의 스트림 파일의 조합을 정의함으로써, 메인 패스로 참조되는 스트림과, 서브 패스로 참조되는 스트림(동일 종류의 2개의 스트림)이나, 2개의 서브 패스로 참조되는 스트림(동일 종류의 2개의 스트림)을 합성하여 재생할 수 있다.
즉, 전술한 바와 같은 구성은, 예를 들면, 도 43을 사용하여 후술하는 바와 같이, 메인 패스로 참조되는 AV 스트림의 비디오 스트림을 주(主) 화면으로서 표시하게 하고, 주 화면 중에, 서브 패스의 비디오 패스로 참조되는 비디오 스트림을 자(子) 화면으로서 합성하여 표시하게 하는, 이른바 PinP(픽처인픽처) 표시 등에 대해서도 이용할 수 있다. 전술한 구성을 응용함으로써, PinP(픽처인픽처) 표시를 실행하는 경우의 상세한 것에 대해서는, 후술한다.
이상에 의해, 메인 AV 스트림과는 다른 스트림이나 데이터 파일로 오디오나 자막 등을 준비하는 경우, PlayList 중에 메인 패스와, 서브 패스를 가지는 구성으로 했으므로, 사용자에 의해 음성 전환이나 자막 전환이라고 하는 조작이 행해지는 경우, 메인 Clip AV 스트림과는 상이한 별도 스트림이나 별도 데이터 파일 중에서 재생되는 스트림을 선택할 수 있다.
또, 제1 및 제2 STN_table()에서, 메인 Clip에 포함되는 오디오 스트림과, 서브 Clip에 포함되는 오디오 스트림과의 2개의 오디오 스트림의 조합을 선택할 수 있는 구성으로 했으므로, 사용자는 2개의 오디오 스트림의 중첩 재생을 선택할 수 있다. 구체적으로는, STN_table()에서, 오디오 스트림으로서 2개의 stream_attributes()을 엔트리 가능한 구성으로 하고, stream_entry()를, 메인 Clip과 서브 Clip 양쪽의 조합으로 오디오 스트림을 엔트리하는 것이 가능한 구성으로 했으므로, 오디오 스트림을 2개 중첩하여 재생하도록 지령할 수 있다.
또, 도 16과 도 17에 나타낸 바와 같이, 제2 STN_table()에서, 2개의 서브 Clip에 포함되는 2개의 오디오 스트림의 조합을 선택할 수 있는 구성으로 했으므로(secondary_audio_present_flag를 설치했으므로), 사용자는 2개의 오디오 스트림의 중첩 재생을 선택할 수 있다. 구체적으로는, 제2 STN_table()에서, 오디오 스트림으로서 1개의 오디오 스트림 ID로, 2개의 stream_entry()와 stream_attributes()과의 조합을 엔트리 가능한 구성으로 했으므로, 오디오 스트림을 2개 중첩하여 재생하도록 지령할 수 있다.
또, 메인 패스의 PlayItem 중에, AV 스트림 파일로 다중화되어 있는 데이터 와, Sub Path에 의해 참조되는 데이터의 type을 정의한 STN_Table을 형성하도록 했으므로, 보다 확장성이 높은 스트림을 실현할 수 있다.
또한, 재생 장치(1)는 STN_table()의 stream_attribute을 참조함으로써, 자기 자신이 가지는 기능에 대응하는 스트림만을 차례로 선택하여 재생할 수 있다.
이상 설명한 재생 장치(1)의 처리를 정리하면, 다음과 같이 된다.
재생 장치(1)는 기록 매체에 기록되어 있는, 적어도 1개의 스트림을 포함하는 메인 Clip AV 스트림 파일(복수개의 종류의 스트림으로 이루어지는 메인 Clip AV 스트림 파일)의 위치를 나타내는 주 재생 패스인 Main Path와, 메인 Clip AV 스트림 파일에 포함되는 메인 스트림 파일의 재생 타이밍에 맞추어 재생되는 서브 Clip AV 스트림 파일의 각각의 위치를 나타내는 복수개의 서브 패스에 의해 구성되는 재생 관리 정보로서의 PlayList를 취득하고, PlayList 중의 메인 패스에 포함되는, 메인 Clip AV 스트림 파일의 소정의 종류의 메인 스트림 파일(예를 들면, 1st 오디오 스트림)의 재생 타이밍에 맞추어 재생되는, 동일 종류의 서브 Clip AV 스트림 파일(예를 들면, 2nd 오디오 스트림)의 조합을 나타내는 정보인 STN_table()(PlayItem으로 나타나는 STN_table())에 따라, 재생하는 스트림의 선택을 접수한다.
여기에서, 메인 Clip AV 스트림 파일에 포함되는 소정의 종류의 메인 스트림 파일(예를 들면, 1st 오디오 스트림)과, 그 메인 스트림 파일의 재생 타이밍에 맞추어 재생되는, 동일 종류의 서브 Clip AV 스트림(2nd 오디오 스트림)과의 조합의 선택이 접수된 경우, 재생 장치(1)는 선택된 메인 Clip AV 스트림 파일과 함께, 서 브 패스에 의해 참조되는, 대응하는 서브 Clip AV 스트림 파일을 판독한다. 그리고, 재생 장치(1)의 믹싱 처리부(101)는 이 2개의 오디오 스트림(디코드된 오디오 스트림)을 합성하고, 믹싱 처리부(97)(AV 디코더부(26))는 합성된 스트림을 재생(출력)한다.
이로써, 도 34에 나타낸 바와 같이, 메인 Clip AV 스트림 파일인 본편(本編)의 Movie(영화)에 비디오 데이터(Video)와 오디오 데이터(Audio)가 포함되어 있고, 감독의 논평(Commentary)으로서 영어의 논평과, 일본어의 논평이 서브 Clip AV 스트림 파일로 부여되어 있는 경우에, 사용자는 audio_stream_number=1의 본편의 audio와, audio_stream_number=2의 본편의 audio+영어의 논평과, audio_stream_number=3의 본편의 audio+일본어의 논평 중에서, 재생하는 오디오 스트림을 선택할 수 있다. 그리고, 메인 Clip AV 스트림 파일과 서브 Clip AV 스트림 파일의 조합(audio_stream_number=1과 2)이 선택된 경우에는, 그들을 합성하여 재생할 수 있다.
이와 같이, PlayList에 Main Path와 Sub Path를 포함하고, Main Path와 Sub Path가 상이한 Clip AV 스트림 파일을 참조하는 구성으로 했으므로, 스트림에 확장성을 갖게 할 수 있다. 또, 1개의 Sub Path로 복수개의 파일을 참조 가능한 구성으로 했으므로(예를 들면, 도 8), 복수개의 상이한 스트림 중에서 사용자가 선택할 수 있다.
또한, Main Path의 PlayItem 중에, Main Path에 의해 참조되는 AV 스트림 파일로 다중화되어 있는(포함되는) 부속 데이터(예를 들면, 오디오 스트림)와, Sub Path에 의해 참조되는 부속 데이터를 정의한 테이블로서, 도 14를 사용하여 설명한 제1 STN_table() 또는 도 16을 사용하여 설명한 제2 STN_table()을 형성하도록 했으므로, 보다 확장성이 높은 스트림을 실현할 수 있다. 또, STN_table()에 엔트리함으로써, Sub Path를 용이하게 확장할 수 있다.
또, STN_table()에 스트림의 속성 정보인 도 18의 stream_attribute()을 형성하도록 했으므로, 재생 장치(1) 측에서, 선택된 스트림을 재생 가능한지 여부를 판정할 수 있다. 또한, stream_attribute()을 참조함으로써, 재생 기능을 가지는 스트림만을 선택하여 재생할 수 있다.
또한, 제1 또는 제2 STN_table()(도 14 또는 도 16)에서, stream_entry()(도 15 또는 도 17)에서 메인 패스에 의해 참조되는 스트림 파일과, 서브 패스에 의해 참조되는, 동일 종류의 스트림 파일(여기에서는, 오디오 스트림 파일)과의 조합을 정의하는 동시에, 도 16과 도 17에서 서브 패스에 의해 참조되는 2개의 오디오 스트림 파일의 조합을 정의하도록 하고, 또한 도 28을 사용하여 설명한 바와 같이, 재생 장치(1)에 2개의 오디오 디코더(1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2))를 설치하는 동시에, 2개의 오디오 디코더에 의해 디코드된 오디오 데이터를 합성(믹싱)하는 믹싱 처리부(101)를 형성하도록 했으므로, 2개의 동일 종류의 스트림을 조합하여 동시에 재생할 수 있다.
예를 들면, 서브 Clip AV 스트림 파일에 포함되는 소정의 종류의 2개의 서브 Clip AV 스트림 파일의 조합 선택이 접수된 경우(즉, 제2 STN_table()이 참조되어, secondary_audio_present_flag가 1로 되고, 1번째의 Stream_entry()와 2번째의 Stream_entry()가 모두 type=2로 되는 경우), 재생 장치(1)는 선택된 2개의 서브 Clip AV 스트림 파일을 판독한다. 그리고, 재생 장치(1)의 믹싱 처리부(101)는 이 2개의 오디오 스트림(디코드된 오디오 스트림)을 합성하고, 믹싱 처리부(97)(AV 디코더부(26))는 합성된 스트림을 재생(출력)한다.
또, Sub Path에는, 도 11에 나타낸 바와 같이, Sub Path의 타입(오디오나 텍스트 자막이라고 하는 타입)을 나타내는 SubPath_type, Sub Path가 참조하는 서브 Clip의 이름을 나타낸 도 12의 Clip_Information_file_name, 및 Sub Path가 참조하는 Clip의 인점(IN point)을 나타낸 도 12의 SubPlayItem_IN_time과 아웃점(OUT point)을 나타낸 도 12의 SubPlayItem_OUT_time을 포함하도록 했으므로, Sub Path가 참조하는 데이터를 정확하게 특정할 수 있다.
또한, Sub Path에는, Sub Path가 Main Path를 동일 타이밍에서 재생하기 위한 Main Path 상의 AV 스트림 파일을 지정하는 지정 정보인 도 12의 sync_PlayItem_id(예를 들면, 도 7과 도 8의 sync_PlayItem_id)와, Sub Path가 참조하는 데이터의 인점이 Main Path의 시간축 상에서 동기하여 스타트하는 Main Path 상의 시각인 sync_start_PTS_of_PlayItem(예를 들면, 도 7과 도 8의 sync_start_PTS_of_PlayItem)을 추가로 포함하기 때문에, 도 7이나 도 8에 나타낸 바와 같이, Main Path가 참조하는 메인 Clip AV 스트림 파일에 동기하여 Sub Path가 참조하는 데이터(파일)를 재생할 수 있다.
그리고, 도 28의 스토리지 드라이브(22)가 판독하여 AV 디코더부(26)에 공급하는 데이터는, 예를 들면, DVD(Digital Versatile Disc) 등의 기록 매체(11)에 기 록되어 있는 데이터이다. 그리고, 하드 디스크 등으로 구성되어 있는 로컬 스토리지(24)에 기록되어 있는 데이터도, 스토리지 드라이브(22)가 판독한 데이터와 함께, AV 디코더부(26)에 공급된다. 그리고, 로컬 스토리지(24)에 기록되어 있는 데이터는, 네트워크(2)를 통해 다운로드한 데이터라도 된다. 환언하면, AV 디코더부(26)에 공급되는 데이터는, 착탈 가능한 기록 매체(11)에 기록되어 있는 데이터라도, 미리 재생 장치(1)에 기억되어 있는 데이터라도, 다른 장치로부터 네트워크를 통해 공급된 데이터라도, 이들이 조합된 데이터라도 된다. 예를 들면, 다운로드되어, 하드 디스크 등으로 구성되어 있는 로컬 스토리지(24)에 기록된 PlayList 및 서브 Clip과, DVD 등의 기록 매체(11)에 기록된 메인 Clip AV 스트림 파일에 따라, AV 스트림의 재생 처리가 실행되어도 된다. 또, 예를 들면, DVD 등의 기록 매체(11)에 기록된 Clip AV 스트림 파일을 서브 Clip으로 하는 바와 같은 PlayList와 메인 Clip이 하드 디스크 등으로 구성되어 있는 로컬 스토리지(24)에 기록되어 있는 경우에, 로컬 스토리지(24)에 기록되어 있는 PlayList에 따라, 메인 Clip AV 스트림 파일과 서브 Clip AV 스트림 파일이 각각 로컬 스토리지(24)와 기록 매체(11)로부터 판독되어 재생되어도 된다.
또, 예를 들면, 1개의 메인 패스와 1개의 서브 패스로 나타나는 스트림 데이터가 재생되는 경우, 또는 2개의 서브 패스로 나타나는 스트림 데이터가 재생되는 경우, 메인 패스와 서브 패스, 또는 2개의 서브 패스로 나타나는 스트림 데이터가 각각 다른 트랜스포트 스트림(TS)으로서 다운로드 등에 의해 취득되었을 때는, 취득된 2개의 상이한 TS에 각각 포함되는 오디오 스트림이 합성되게 된다. 한편, 2 개의 서브 패스로 나타나는 스트림 데이터가 재생되는 경우라도, 그 2개의 서브 패스로 나타나는 적어도 2개의 스트림이 포함되는 1개의 TS가 취득된 경우에는, 1개의 TS에 포함되는 2개의 오디오 스트림이 합성되게 된다.
또, 도 14를 사용하여 설명한 제1 STN_Table을 사용하여, 도 15의 stream_attribute()에서 type=3으로 함으로써 메인 패스와 서브 패스로, 2개의 오디오 스트림을 정의한 경우나, 도 16을 사용하여 설명한 제2 STN_Table을 사용하고, secondary_audio_present_flag를 사용하여, 도 17의 stream_attribute()에서 메인 패스와 서브 패스, 또는 서브 패스만으로 2개의 오디오 스트림을 정의한 경우, 재생 장치(1)의 1st 오디오 디코더(75-1)는 메인 Clip AV 스트림 파일 또는 서브 Clip AV 스트림 파일의 오디오 스트림을 디코드하고, 2nd 오디오 디코더(75-2)는 서브 Clip AV 스트림 파일의 오디오 스트림을 디코드하는 것이지만, 코덱(인코드)방식이 동일(예를 들면, 도 19의 Dolby AC-3 audio)한 2개의 Clip의 오디오 스트림의 조합을, STN_table()에서 정의하도록 제약을 설정해도 된다. 환언하면, STN_table()에서 정의되는 조합에서 동시에 디코드되는 것을, 동일한 코덱 방식이 되도록, 제한을 설정하도록 해도 된다. 이 경우, 1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2)가 오디오 스트림을 디코드하고 있는 도중(예를 들면, MPEG에서는, 역양자화되었지만, IDCT되어 있지 않은 상태)이라도, 코덱 방식이 동일하면, 디코드 도중의 데이터 방식도 동일하므로, 믹싱 처리부(101)에 의해 믹싱 가능해지기 때문이다.
이상 설명한 재생 장치(1)에서는, 전술한 도 14의 제1 STN_table() 또는 도 16의 제2 STN_table()을 참조함으로써, PlayItem이 참조하는 Clip과 SubPath가 참조하는 Clip을 조합한 것의 재생을 선택하는 것이 가능하도록 되어 있었다. 다음에, 2개의 오디오 스트림의 믹싱 재생을 선택할 수 있는 구조를 제공하기 위한 상이한 예에 대하여 설명한다.
도 35는 2개의 오디오 스트림의 믹싱 재생을 행하는 경우에 있어서의, STN_table()의 신택스의 제3 예(제3 STN_table())를 나타낸 도면이다. 제3 STN_table()도 PlayItem의 속성으로서 설정되어 있는 것은 물론이다. 도 35의 제3 STN_table()은 PlayItem이 참조하는 Clip과 SubPath가 참조하는 Clip을 조합한 것의 재생을 선택하는 것이 아니라, 재생되는 Clip을 자유롭게 선택할 수 있도록 되어 있다. 그리고, 도 14를 사용하여 설명한 경우와 동일한 부분에 대해서는, 그 설명을 적당히 생략한다.
도 35의 제3 STN_table()은 2개의 오디오 스트림이 정의되어 있는 점에서, 도 14를 사용하여 설명한 경우와 상이하다. Length, number_of_video_stream_entries, video_stream_id, video_stream_number에 대해서는, 도 14를 사용하여 설명한 경우와 동일하다.
number_of_audio_stream_entries는 제3 STN_table() 중에서 엔트리되는 audio_stream_id가 부여되는 1번째의 오디오 스트림의 스트림 수를 나타낸다. audio_stream_id는 오디오 스트림을 식별하기 위한 정보이며, audio_stream_number는 음성 전환에 사용되는 사용자로부터 보이는 오디오 스트림 번호이다. number_of_audio_stream2_entries는 제3 STN_table() 중에서 엔트리되는 audio_stream_id2가 부여되는 2번째의 오디오 스트림의 스트림 수를 나타낸다. audio_stream_id2는 오디오 스트림을 식별하기 위한 정보이며, audio_stream_number는 음성 전환에 사용되는 사용자로부터 보이는 오디오 스트림 번호이다.
구체적으로는, 제3 STN_table()에서 엔트리되는 number_of_audio_stream_entries의 오디오 스트림은 후술하는 도 36의 재생 장치(141) 또는 도 53의 재생 장치(401)의 1st 오디오 디코더(75-1)로 디코드되는 오디오 스트림이며, 제3 STN_table()에서 엔트리되는 number_of_audio_stream2_entries의 오디오 스트림은 후술하는 도 36의 재생 장치(141) 또는 도 53의 재생 장치(401)의 2nd 오디오 디코더(75-2)로 디코드되는 오디오 스트림이다. 이와 같이, 도 35의 제3 STN_table()에서는, 2개의 오디오 디코더의 각각에 디코드시키는 오디오 스트림을 엔트리할 수 있다.
그리고, 이하에서, 도 36의 재생 장치(141) 또는 도 53의 재생 장치(401)의 1st 오디오 디코더(75-1)로 디코드되는 number_of_audio_stream_entries의 오디오 스트림을 오디오 스트림 #1이라고 하고(또한, 오디오 스트림 #1은 후술하는 바와 같이, 프라이머리(Primary) 오디오 스트림이라고 하는 경우도 있다), 도 36의 재생 장치(141) 또는 도 53의 재생 장치(401)의 2nd 오디오 디코더(75-2)로 디코드되는 number_of_audio_stream2_entries의 오디오 스트림을 오디오 스트림 #2 라고 한다(또한, 오디오 스트림 #2는, 후술하는 바와 같이, 세컨더리(Secondary) 오디오 스트림이라고 하는 경우도 있다). 또, 오디오 스트림 #1은 오디오 스트림 #2보다 우 선되는 오디오 스트림인 것으로 한다.
number_of_PG_txtST_stream_entries, PG_txtST_stream_id, 및 PG_txtST_stream_number에 대해서는, 도 14를 사용하여 설명한 경우와 동일하다.
또, number_of_IG_stream_entries, IG_stream_id, IG_stream_number에 대해서는, 도 14를 사용하여 설명한 경우와 동일하다.
그리고, stream_entry()의 신택스에 대해서는, 도 17을 사용하여 설명한 경우와 동일하다.
그리고, 도 14, 도 16을 사용하여 설명한 비디오 스트림 ID(video_stream_id)의 for 루프, 및 오디오 스트림 ID(audio_stream_id)의 for 루프에 있어서의 경우와 동일하게, 오디오 스트림 ID2(audio_stream_id2)의 for 루프 중에서, 순번으로 stream_entry()마다 특정되는 1개의 오디오 엘리멘터리 스트림에, 0부터 audio_stream_id2가 부여된다. 그리고, 비디오 스트림의 경우와 동일하게, 오디오 스트림 ID2(audio_stream_id2) 대신에, 오디오 스트림 번호 2(audio_stream_number2)를 사용하도록 해도 된다. 이 경우, audio_stream_number2는 0이 아니라 1부터 부여된다. 즉, audio_stream_id2의 값에 1을 가산한 것이 audio_stream_number2이다. 오디오 스트림 번호 2는, 음성 전환에 사용되는, 사용자로부터 보이는 오디오 스트림 번호 2이므로, 1부터 정의된다.
즉, 도 35의 제3 STN_table()에서는, number_of_audio_stream_entries(오디오 스트림 #1의 오디오 스트림과, number_of_audio_stream2_entries(오디오 스트림 #2)의 오디오 스트림이 정의된다. 환언하면, 제3 STN_table()을 사용하여, 오디오 스트림 #1과 오디오 스트림 #2를 엔트리할 수 있으므로, 사용자는 동기하여 재생하는 오디오 스트림을 2개 선택할 수 있다.
그리고, 자막 스트림 ID(PG_txtST_stream_id)의 for 루프, 및 그래픽스 스트림 ID(IG_stream_id)의 for 루프 중 id에 대해서도, 도 14, 또는 도 16에서의 경우와 동일하다.
다음에, 도 35의 제3 STN_table()의 stream_attribute()에 대하여 설명한다. 그리고, stream_attribute()의 신택스에 대해서는, 도 18 내지 도 25를 사용하여 설명한 경우와 동일하다.
reserved_for_future_use 후의 for 문에서는, video stream의 분만큼 video stream이 참조되고, 디스크 제조자가, 오디오 스트림에 대하여 Main Path 및 Sub Path를 설정한 분만큼 audio stream이 참조되고, PG textST stream의 분만큼 PG textST stream이 참조되고, IG stream의 분만큼 IG stream이 참조된다.
비디오 스트림 ID(video_stream_id)의 for 루프 중의 stream_attribute()은, stream_entry()마다 특정되는 1개의 비디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 이 stream_attribute()에는, stream_entry()마다 특정되는 1개의 비디오 엘리멘터리 스트림의 스트림 속성 정보가 기술되어 있다.
동일하게, 오디오 스트림 ID(audio_stream_id)의 for 루프 중의 stream_attribute()은, stream_entry()마다 특정되는 1개의 오디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 이 stream_attribute()에는, stream_entry()마다 특정되는 1개의 오디오 엘리멘터리 스트림의 스트림 속성 정보가 기술되어 있다. 예를 들면, 도 15의 stream_entry()의 type=1 또는 type=2로 특정되는 오디오 엘리멘터리 스트림은 1개이므로, stream_attribute()은 그 1개의 오디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다.
동일하게, 오디오 스트림 ID2(audio_stream_id2)의 for 루프 중의 stream_attribute()은, stream_entry()마다 특정되는 1개의 오디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 이 stream_attribute()에는, stream_entry()마다 특정되는 1개의 오디오 엘리멘터리 스트림의 스트림 속성 정보가 기술되어 있다. 예를 들면, 도 15의 stream_entry()의 type=1 또는 type=2로 특정되는 오디오 엘리멘터리 스트림은 1개이므로, stream_attribute()은 그 1개의 오디오 엘리멘터리 스트림의 스트림 속성 정보를 부여한다.
동일하게, 자막 스트림 ID(PG_txtST_stream_id)의 for 루프 중의 stream_attribute()은, stream_entry()마다 특정되는 1개의 비트맵 자막 엘리멘터리 스트림 또는 텍스트 자막 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 이 stream_attribute()에는, stream_entry()마다 특정되는 1개의 비트맵 자막 엘리멘터리 스트림의 스트림 속성 정보가 기술되어 있다.
동일하게, 그래픽스 스트림 ID(IG_stream_id)의 for 루프 중의 stream_attribute()은, stream_entry()마다 특정되는 1개의 인터랙티브 그래픽스 엘리멘터리 스트림의 스트림 속성 정보를 부여한다. 즉, 이 stream_attribute()에는, stream_entry()마다 특정되는 1개의 인터랙티브 그래픽스 엘리멘터리 스트림의 스트림 속성 정보가 기술되어 있다.
이와 같이, 제3 STN_table이 사용되는 경우에도, PlayItem과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있을 때, 이 PlayItem이 참조하는 Clip과 1개 이상의 SubPath가 참조하는 Clip 중에서, stream_entry()에 의해 특정된 1개의 엘리멘터리 스트림의 속성 정보를 stream_attribute()에 의해 알 수 있다.
재생 장치는 제1 또는 제2 STN_table이 사용되는 경우와 동일하게 하여, 이 속성 정보(stream_attribute())를 조사함으로써, 그 엘리멘터리 스트림을 자기 자신이 재생하는 기능을 가지고 있는지 여부를 조사할 수 있다. 또, 재생 장치는 이 속성 정보를 조사함으로써, 재생 장치의 언어 설정 초기 정보에 대응한 엘리멘터리 스트림을 선택할 수 있다.
그리고, 도 35의 제3 STN_table()이 적용되는 경우, 오디오 스트림 #1과 오디오 스트림 #2는 양쪽 모두 메인 패스에 의해 참조되는 Clip에 포함되는 오디오 스트림으로 해도 된다. 또, 오디오 스트림 #1과 오디오 스트림 #2 중, 한쪽을 메인 패스에 의해 참조되는 Clip에 포함되는 오디오 스트림으로 하고, 다른 쪽을 서브 패스에 의해 참조되는 Clip에 포함되는 오디오 스트림으로 해도 된다. 이와 같이, 도 35의 제3 STN_table()이 적용되는 경우, 메인 패스에 의해 참조되는 메인 Clip AV 스트림에 중첩된 복수개의 오디오 스트림을 2개 선택하고, 믹싱하여 재생하는 것도 가능하다.
이와 같이 하여, PlayItem() 중에 제3 STN_table()을 형성하도록 함으로써, PlayItem과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있는 경우에, 사용자에 의한 음성 전환이나 자막 전환이라고 하는 조작에 의해, 이 PlayItem이 참조하는 Clip과 1개 이상의 SubPath가 참조하는 Clip 중에서 재생되는 스트림을 자유롭게 조합하여 선택할 수 있는 구조가 제공되므로, 사용자는 재생하는 AV 스트림과는 상이한 스트림이나 데이터 파일에 대해서도, 인터랙티브 조작을 행할 수 있다.
또, 제1 및 제2 STN_table에서의 경우와 동일하게, 제3 STN_table이 적용되는 경우에도, 1개의 PlayList 중에 SubPath를 복수개 사용하고, 각각의 SubPath가 각각 SubPlayItem을 참조하는 구성으로 했으므로, 확장성이 높은, 또, 자유도가 높은 AV 스트림을 실현할 수 있다. 즉, 이 PlayList에 의해 재생되는 컨텐츠에서, 나중에, SubPlayItem을 추가할 수 있는 구성으로 할 수 있다.
또한, 도 35를 사용하여 설명한 제3 STN_table()은 후술하는 도 36의 재생 장치(141) 또는 도 53의 재생 장치(401)의 1st 오디오 디코더(75-1)로 디코드되는 오디오 스트림 #1과, 2nd 오디오 디코더(75-2)로 디코드되는 오디오 스트림 #2를 믹싱하여 재생할 수 있는 구조를 제공하도록 했다. 예를 들면, PlayItem()과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있는 경우에, PlayItem이 참조하는 Clip에 포함되는 오디오 스트림을 오디오 스트림 #1로 하고, SubPath가 참조하는 Clip에 포함되는 오디오 스트림을 오디오 스트림 #2로 하고, 이들을 믹싱하여 재생할 수 있는 구조를 제공하도록 했다. 또, 예를 들면, PlayItem이 참조하는 Clip(메인 Clip)에 포함되는 2개의 오디오 스트림을, 각각 오디오 스트림 #1과 오 디오 스트림 #2로 하고, 이들을 믹싱하여 재생할 수 있는 구조를 제공하도록 했다. 이로써, 메인 오디오 스트림과 메인 오디오 스트림과는 상이한 오디오 스트림(예를 들면, 감독의 코멘트의 스트림)의 중첩 재생을 행할 수 있다. 또, 메인 Clip AV 스트림에 중첩되어 있는 2개의 오디오 스트림 #1과 오디오 스트림 #2를 중첩(믹싱)하여 재생할 수 있다.
구체적으로는, 예를 들면, 도 26을 참조하여 설명한 경우와 동일하게 하여, 사용자에게 제공하는 음성 신호와 자막 신호의 관계를 나타내는 스트림 넘버 테이블에서, 음성 번호를 A_SN(Audio Stream Number), A_SN2라고 하고, 자막 번호를 S_SN(SubPicture Stream Number)이라고 한 경우, PlayList의 Main Path를 구성하는 PlayItem의 제3 STN_table()에서 엔트리되는 오디오 스트림 #1(audio_stream_id로 엔트리되는 오디오 스트림)의 각각에 A_SN이 부여되고, 사용자는 A_SN이 부여되어 있는 오디오 스트림 중에서, 재생하는 오디오 스트림 #1을 선택할 수 있도록 행해진다. 동일하게, 제3 STN_table()에서 엔트리되는 오디오 스트림 #2(audio_stream_id2로 엔트리되는 오디오 스트림)의 각각에 A_SN2를 부여함으로써, 사용자에게, 선택한 오디오 스트림 #1과 믹싱되는 오디오 스트림 #2를, A_SN2가 부여되어 있는 오디오 스트림 중에서 선택하게 하도록 할 수 있다.
여기에서, 오디오 스트림 #1을 선택하기 위한 A_SN과, 오디오 스트림 #2를 선택하기 위한 A_SN2는, 사용자에 의해 독립적으로 선택 가능하도록 되어 있기 때문에, 2개의 음성 전환은 독립되어 있다.
즉, 재생하는 2개의 오디오 스트림(오디오 스트림 #1과 오디오 스트림 #2)을 별개로 정의함으로써, 사용자는 재생하는 2개의 오디오 스트림을, 정의된 것 중에서 임의로 선택할 수 있다. 환언하면, 사용자는 재생하는 2개의 오디오 스트림의 선택을 자유롭게(오디오 스트림 #1과 오디오 스트림 #2로 정의되어 있는 것 중에서 자유롭게) 행할 수 있으므로, 조합의 자유도가 높은 선택을 행할 수 있다. 예를 들면, 사용자는 오디오 2+오디오 4의 조합(A_SN=1과 A_SN2=1의 조합)이나, 오디오 2+오디오 5의 조합(A_SN=1과 A_SN2=2의 조합)을 선택할 수 있다.
이와 같이, PlayItem() 중의 제3 STN table()(도 35)의 stream_entry()에서, 2개의 오디오 스트림을 엔트리하는 것이 가능한 구성으로 했으므로, 2개의 오디오 스트림을 믹싱하여 재생할 수 있다. 즉, 복수개의 종류로 이루어지는 스트림으로부터, 동일 종류(이 예의 경우, 오디오 스트림)의 2개의 스트림을 믹싱(중첩, 또는 합성)하여, 동시에 재생할 수 있다. 또, 사용자는 원하는 2개의 동일 종류의 스트림의 믹싱 재생을 지령할 수 있다.
다음에, 본 발명을 적용한 재생 장치의 상이한 예로서, 제3 STN table()(도 35) 등, 2개의 오디오 스트림을 개별적으로 엔트리하는 것이 가능한 구성을 사용하여, 2개의 오디오 스트림을 믹싱하여 재생할 수 있는 재생 장치(141)에 대하여 설명한다.
재생 장치(141)는 재생 장치(1)의 AV 디코더부(26)에 대신하여, AV 디코더부(151)가 설치되어 있는 이외는, 기본적으로, 도 27을 사용하여 설명한 재생 장치(1)와 동일한 구성을 가지는 것이다. 도 36은 AV 디코더부(151)의 구성예를 나타낸 블록도이다. 이 AV 디코더부(151)를 구비한 재생 장치(141)는 전술한 메인 패스와 서브 패스를 가지는, 도 35를 사용하여 설명한 제3 STN_table이 기재된 PlayList에 따라, AV 스트림을 재생할 수 있다.
그리고, 재생 장치(141)의 AV 디코더부(151)는 PID 필터(55)에 대신하여 PID 필터(161)가 설치되고, 스위치(59)에 대신하여 스위치(162)가 설치되어 있는 이외는, 기본적으로, 재생 장치(1)의 AV 디코더부(26)와 동일한 구성을 가지는 것이다. 또, 도 35의 제3 STN_table()에서, audio_stream_id로 부여되는 오디오 스트림을 디코드하기 위한 것이 1st 오디오 디코더(75-1)이며, audio_stream_id2로 부여되는 오디오 스트림을 디코드하기 위한 것이 2nd 오디오 디코더(75-2)이다.
컨트롤러(21)에 의해 판독된 파일 데이터는, 도시하지 않은 복조, ECC 복호부에 의해 복조되고, 복조된 다중화 스트림에 에러 정정이 행해진다. 스위치(32)는 복조되어 에러 정정이 행해진 데이터를 컨트롤러(21)로부터의 제어에 따라, 스트림의 종류마다 선택하여, 대응하는 버퍼(51 내지 54)에 공급한다. 구체적으로는, 스위치(32)는 컨트롤러(21)로부터의 제어에 따라, 백그라운드 이미지 데이터를 버퍼(51)에 공급하고, 메인 Clip으로부터 판독된 데이터(즉, 메인 Clip AV 스트림)을 버퍼(52)에 공급하고, 서브 Clip으로부터 판독된 데이터(즉, 서브 Clip AV 스트림)을 버퍼(53)에 공급하고, Text-ST의 데이터를 버퍼(54)에 공급하도록 스위치(32)를 전환한다. 버퍼(51)는 백그라운드 이미지 데이터를 버퍼링하고, 버퍼(52)는 메인 Clip으로부터 판독된 데이터를 버퍼링하고, 버퍼(53)는 서브 Clip으로부터 판독된 데이터를 버퍼링하고, 버퍼(54)는 Text-ST 데이터를 버퍼링한다.
메인 Clip AV 스트림용 리드 버퍼인 버퍼(52)로부터 판독된 스트림 데이터 는, 소정의 타이밍에서, 후단의 PID(패킷 ID) 필터(161)에 출력된다. 이 PID 필터(161)는 입력된 메인 Clip AV 스트림을 PID(패킷 ID)에 따라, 후단의 각 엘리멘터리 스트림의 디코더에 분배하여 출력한다. 즉, PID 필터(161)는 비디오 스트림을 비디오 디코더(72)에 공급하고, 프리젠테이션 그래픽스 스트림을 프리젠테이션 그래픽스 디코더(73)로의 공급원이 되는 스위치(57)에 공급하고, 인터랙티브 그래픽스 스트림을 인터랙티브 그래픽스 디코더(74)로의 공급원이 되는 스위치(58)에 공급하고, 오디오 스트림을 1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2)로의 공급원이 되는 스위치(162)에 공급한다.
서브 Clip AV 스트림용 리드 버퍼인 버퍼(53)로부터 판독된 스트림 데이터는, 소정의 타이밍에서, 후단의 PID(패킷 ID) 필터(56)에 출력된다. 이 PID 필터(56)는 입력된 서브 Clip AV 스트림을 PID(패킷 ID)에 따라, 후단의 각 엘리멘터리 스트림의 디코더에 분배하여 출력한다. 즉, PID 필터(56)는 프리젠테이션 그래픽스 스트림을 프리젠테이션 그래픽스 디코더(73)로의 공급원이 되는 스위치(57)에 공급하고, 인터랙티브 그래픽스 스트림을 인터랙티브 그래픽스 디코더(74)로의 공급원이 되는 스위치(58)에 공급하고, 오디오 스트림을 1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2)로의 공급원이 되는 스위치(162)에 공급한다.
PID 필터(161)에 의해 분배된 비디오 스트림은 후단의 비디오 디코더(72)에 공급된다. 비디오 디코더(72)는 비디오 스트림을 디코드하고, 디코드한 비디오 데이터를 비디오 플레인 생성부(92)에 출력한다.
스위치(57)는 PID 필터(161)로부터 공급된 메인 Clip AV 스트림에 포함되는 프리젠테이션 그래픽스 스트림과, 서브 Clip AV 스트림에 포함되는 프리젠테이션 그래픽스 스트림 중 어느 하나를 선택하고, 선택한 프리젠테이션 그래픽스 스트림을 후단의 프리젠테이션 그래픽스 디코더(73)에 공급한다. 프리젠테이션 그래픽스 디코더(73)는 프리젠테이션 그래픽스 스트림을 디코드하고, 디코드한 프리젠테이션 그래픽스 스트림의 데이터를 프리젠테이션 그래픽스 플레인 생성부(93)로의 공급원이 되는 스위치(77)에 공급한다.
또, 스위치(58)는 PID 필터(161)로부터 공급된 메인 Clip AV 스트림에 포함되는 인터랙티브 그래픽스 스트림과, 서브 Clip AV 스트림에 포함되는 인터랙티브 그래픽스 스트림 중 어느 하나를 선택하고, 선택한 인터랙티브 그래픽스 스트림을 후단의 인터랙티브 그래픽스 스트림 디코더(74)에 공급한다. 즉, 인터랙티브 그래픽스 디코더(74)에 동시에 입력되는 인터랙티브 그래픽스 스트림은 메인 Clip AV 스트림 또는 서브 Clip AV 스트림의 어느 쪽인가로부터 분리된 스트림이다. 인터랙티브 그래픽스 디코더(74)는 인터랙티브 그래픽스 스트림을 디코드하고, 디코드한 인터랙티브 그래픽스 스트림의 데이터를 인터랙티브 그래픽스 플레인 생성부(94)에 공급한다.
또한, 스위치(162)는 PID 필터(161)로부터 공급된 메인 Clip AV 스트림에 포함되는 오디오 스트림과, 서브 Clip AV 스트림에 포함되는 오디오 스트림 중 어느 하나를 선택하고, 선택한 오디오 스트림을 후단의 1st 오디오 디코더(75-1) 또는, 2nd 오디오 디코더(75-2)에 공급한다. 여기에서, 1st 오디오 디코더(75-1)에 동시에 입력되는 오디오 스트림은 메인 Clip AV 스트림 또는 서브 Clip AV 스트림의 어 느 쪽인가로부터 분리된 스트림이다. 또, 동일하게, 2nd 오디오 디코더(75-2)에 동시에 입력되는 오디오 스트림도, 메인 Clip AV 스트림 또는 서브 Clip AV 스트림의 어느 쪽인가로부터 분리된 스트림이다. 예를 들면, 메인 Clip AV 스트림에 오디오 스트림 #1과 오디오 스트림 #2가 포함되어 있는 경우, PID 필터(161)는 오디오 스트림의 PID에 따라, 오디오 스트림 #1과 오디오 스트림 #2를 필터링하여, 스위치(162)에 공급한다.
스위치(162)는, 예를 들면, PID 필터(161)로부터 공급된 오디오 스트림 #1을, 1st 오디오 디코더(75-1)에 공급하도록 스위치를 선택하고, PID 필터(161)로부터 공급된 오디오 스트림 #2를, 2nd 오디오 디코더(75-2)에 공급하도록 스위치를 선택한다.
1st 오디오 디코더(75-1)는 오디오 스트림을 디코드하고, 디코드한 오디오 스트림의 데이터를 믹싱 처리부(101)에 공급한다. 또, 2nd 오디오 디코더(75-2)는 오디오 스트림을 디코드하고, 디코드한 오디오 스트림의 데이터를 믹싱 처리부(101)에 공급한다.
여기에서, 오디오 스트림 #1과 오디오 스트림 #2를 중첩하여 재생하는 바와 같은 경우(사용자에 의해 재생하는 오디오 스트림으로서, 2개의 오디오 스트림이 선택된 경우), 1st 오디오 디코더(75-1)에 의해 디코드된 오디오 스트림 #1과 2nd 오디오 디코더(75-2)에 의해 디코드된 오디오 스트림 #2가 믹싱 처리부(101)에 공급된다.
믹싱 처리부(101)는 1st 오디오 디코더(75-1)로부터의 오디오 데이터와, 2nd 오디오 디코더(75-2)로부터의 오디오 데이터를 믹싱(중첩)하여, 후단의 믹싱 처리부(97)에 출력한다. 그리고, 본 실시예에서는, 1st 오디오 디코더(75-1)로부터 출력되는 오디오 데이터와 2nd 오디오 디코더(75-2)로부터 출력되는 오디오 데이터를 믹싱(중첩)하는 것을, 합성한다고도 칭한다. 즉, 합성이란, 2개의 오디오 데이터를 믹싱하는 경우도 나타내는 것으로 한다.
또, 스위치(32)에 의해 선택된 사운드 데이터는, 버퍼(95)에 공급되어, 버퍼링된다. 버퍼(95)는 소정의 타이밍에서 사운드 데이터를 믹싱 처리부(97)에 공급한다. 사운드 데이터는, 이 경우, 메뉴 선택 등에 의한 효과음의 데이터이다. 믹싱 처리부(97)는 믹싱 처리부(101)에 의해 믹싱된 오디오 데이터(1st 오디오 디코더(75-1)로부터 출력된 오디오 데이터와 2nd 오디오 디코더(75-2)로부터 출력된 오디오 데이터가 믹싱된 오디오 데이터)와, 버퍼(95)로부터 공급되어 온 사운드 데이터를 믹싱(중첩, 또는 합성)하여, 음성 신호로서 출력한다.
그리고, 텍스트 서브타이틀(Text-ST) 데이터, 프리젠테이션 그래픽스 스트림, 백그라운드 이미지 데이터, 및 비디오 데이터의 처리에 대해서는, 기본적으로, 재생 장치(1)의 AV 디코더부(26)를 사용하여 설명한 경우와 동일하다.
또, 스위치(57 내지 58), 및 스위치(162), 및 스위치(77)는 조작 입력부(29)를 사용하여 지령되는 사용자로부터의 선택에 따라, 또는, 대상이 되는 데이터가 포함되는 파일이 공급되는 측으로 스위치를 전환한다. 예를 들면, 서브 Clip AV 스트림 파일에만 오디오 스트림이 포함되어 있는 경우, 스위치(162)는 서브 Clip AV 스트림 파일을 공급하는 측(PID 필터(56)의 출력)으로 스위치를 전환한다.
다음에, 도 36의 재생 장치(141)에서의 재생 처리에 대하여 설명한다. 조작 입력부(29)를 사용하여 사용자에 의해 소정의 AV 스트림의 재생이 지령되었을 때, 컨트롤러(21)는 스토리지 드라이브(22)를 통해 기록 매체(11)로부터, 또는 HDD(Hard Disk Drive) 등으로 구성되는 로컬 스토리지(24)로부터, 예를 들면, 도 9를 사용하여 설명한 PlayList의 파일과, PlayList에 포함되는 PlayItem 및 SubPlayItem에 따라, 메인 Clip AV 스트림, 서브 Clip AV 스트림, 및 텍스트 서브타이틀 데이터(Text-ST 데이터)를 판독한다.
컨트롤러(21)는 백그라운드 이미지 데이터를 버퍼(51)에 공급하고, 메인 Clip AV 스트림의 데이터를 버퍼(52)에 공급하고, 서브 Clip AV 스트림의 데이터를 버퍼(53)에 공급하고, Text-ST의 데이터를 버퍼(54)에 공급하도록 스위치(32)를 전환한다.
그리고, 스위치(32)가 전환되어, 백그라운드 이미지 데이터는 버퍼(51)에 공급되고, 메인 Clip AV 스트림의 데이터는 버퍼(52)에 공급되고, 서브 Clip AV 스트림의 데이터는 버퍼(53)에 공급되고, 텍스트 서브타이틀 데이터는 버퍼(54)에 공급되고, 각 버퍼(51 내지 54)는 공급된 데이터를 각각 버퍼링한다.
그리고, 버퍼(51)는 백그라운드 이미지 데이터를 백그라운드 디코더(71)에 출력하고, 버퍼(52)는 메인 Clip AV 스트림의 스트림 데이터를 PID 필터(161)에 출력하고, 버퍼(54)는 텍스트 서브타이틀 데이터를 텍스트 서브타이틀 콤퍼지션(76)에 출력하고, 버퍼(53)는 서브 Clip AV 스트림의 스트림 데이터를 PID 필터(56)에 출력한다.
PID 필터(161)는 비디오 스트림을 비디오 디코더(72)에 공급하고, 프리젠테이션 그래픽스 스트림을 프리젠테이션 그래픽스 디코더(73)로의 공급원이 되는 스위치(57)에 공급하고, 인터랙티브 그래픽스 스트림을 인터랙티브 그래픽스 디코더(74)로의 공급원이 되는 스위치(58)에 공급하고, 오디오 스트림을 1st 오디오 디코더(75-1) 또는 2nd 오디오 디코더(75-2)로의 공급원이 되는 스위치(162)에 공급한다. 즉, 비디오 스트림, 프리젠테이션 그래픽스 스트림, 인터랙티브 그래픽스 스트림, 및 오디오 스트림에는, 각각 상이한 PID가 부여되어 있다.
그리고, PID 필터(56)는 프리젠테이션 그래픽스 스트림을 프리젠테이션 그래픽스 디코더(73)로의 공급원이 되는 스위치(57)에 공급하고, 인터랙티브 그래픽스 스트림을 인터랙티브 그래픽스 디코더(74)로의 공급원이 되는 스위치(58)에 공급하고, 오디오 스트림을 1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2)로의 공급원이 되는 스위치(162)에 공급한다.
그리고, PID 필터(161) 및 PID 필터(56)의 후단의 스위치(57), 스위치(58), 및 스위치(162)는 컨트롤러(21)로부터의 제어에 따라, 메인 Clip과 서브 Clip 중 어느 하나를 선택한다. 즉, 스위치(57)는 PID 필터(161)로부터 공급된 메인 Clip AV 스트림 또는 서브 Clip AV 스트림의 프리젠테이션 그래픽스 스트림을 선택하여, 후단의 프리젠테이션 그래픽스 디코더(73)에 공급한다. 또, 스위치(58)는 PID 필터(161)로부터 공급된 메인 Clip AV 스트림 또는 서브 Clip AV 스트림의 인터랙티브 그래픽스 스트림을 선택하여, 후단의 인터랙티브 그래픽스 스트림 디코더(74)에 공급한다. 또한, 스위치(162)는 PID 필터(161)로부터 공급된 메인 Clip AV 스트 림, 또는 PID 필터(56)로부터 공급된 서브 Clip AV 스트림의 오디오 스트림(여기에서는, 음성이 전환되기 전이므로, 오디오 스트림 #1)을 선택하여, 후단의 1st 오디오 디코더(75-1)에 공급한다. 그리고, 음성을 전환하는 바와 같은 지령이 사용자에 의해 행해진 경우에는, 스위치(162)는 메인 Clip AV 스트림의 오디오 스트림을 2nd 오디오 디코더(75-2)에 공급하거나, 서브 Clip AV 스트림의 오디오 스트림을 1st 오디오 디코더(75-1)나 2nd 오디오 디코더(75-2)에 공급하거나 하기도 하지만, 여기에서는, 음성이 전환되기 전의 재생 처리에 대하여 설명하고 있으므로, 그 설명은 생략하고 있다.
그리고, 백그라운드 디코더(71)는 백그라운드 이미지 데이터를 디코드하여, 이것을 백그라운드 플레인 생성부(91)에 출력하고, 비디오 디코더(72)는 비디오 스트림을 디코드하여, 이것을 비디오 플레인 생성부(92)에 출력하고, 프리젠테이션 그래픽스 디코더(73)는 스위치(57)에 의해 선택되어, 공급된 프리젠테이션 그래픽스 스트림을 디코드하여, 이것을 후단의 스위치(77)에 출력하고, 인터랙티브 그래픽스 디코더(74)는 스위치(58)에 의해 선택되어, 공급된 인터랙티브 그래픽스 스트림을 디코드하여, 이것을 후단의 인터랙티브 그래픽스 플레인 생성부(94)에 출력하고, Text-ST 콤퍼지션(76)은 텍스트 서브타이틀 데이터를 디코드하여, 이것을 후단의 스위치(77)에 출력한다.
그리고, 1st 오디오 디코더(75-1)는 스위치(162)에 의해 선택되어, 공급된 오디오 스트림(오디오 스트림 #1)을 디코드하여, 이것을 후단의 믹싱 처리부(101)에 출력한다. 음성의 전환이 사용자에 의해 지시되어 있지 않은 상태에서의 재생 처리에서는, 2nd 오디오 디코더(75-2)로부터 오디오 데이터가 출력되는 일은 없으므로, 믹싱 처리부(101)는 1st 오디오 디코더(75-1)로부터 출력된 오디오 데이터를 그대로 후단의 믹싱 처리부(97)에 공급한다.
스위치(77)는 프리젠테이션 그래픽스 디코더(73) 또는 Text-ST 콤퍼지션(76)으로부터의 데이터 중 어느 하나를 선택하고, 선택한 데이터를 프리젠테이션 그래픽스 플레인 생성부(93)에 공급한다. 백그라운드 플레인 생성부(91)는 백그라운드 디코더(71)로부터 공급된 백그라운드 이미지 데이터에 따라, 백그라운드 플레인을 생성하고, 비디오 플레인 생성부(92)는 비디오 디코더(72)로부터 공급된 비디오 데이터에 따라, 비디오 플레인을 생성하고, 프리젠테이션 그래픽스 플레인 생성부(93)는 스위치(77)에 의해 선택되어, 공급된 프리젠테이션 그래픽스 디코더(73)로부터의 데이터 또는 Text-ST 콤퍼지션(76)으로부터의 데이터에 따라, 프리젠테이션 그래픽스 플레인을 생성하고, 인터랙티브 그래픽스 플레인 생성부(94)는 인터랙티브 그래픽스 디코더(74)로부터 공급된 인터랙티브 그래픽스 스트림의 데이터에 따라, 인터랙티브 그래픽스 플레인을 생성한다. 또, 버퍼(95)는 공급된 사운드 데이터를 버퍼링하여, 소정의 타이밍에서 믹싱 처리부(97)에 공급한다.
그리고, 비디오 데이터 처리부(96)는 각 플레인의 데이터를 합성하여, 비디오 데이터로서 출력한다. 믹싱 처리부(97)는 오디오 데이터(믹싱 처리부(101)로부터 출력된 오디오 데이터)와 사운드 데이터를 믹싱(합성)하여, 출력한다.
이와 같은 처리에 의해, PlayList에 포함되는 메인 패스와 서브 패스에 의해 메인 Clip AV 스트림, 서브 Clip AV 스트림, 및 텍스트 서브타이틀 데이터가 참조 되어 재생된다. PlayList에 메인 패스와 서브 패스를 설치하도록 하고, 서브 패스로, 메인 패스로 지정하는 Clip AV 스트림 파일과는 상이한 Clip AV 스트림인, 서브 Clip AV 스트림을 지정 가능한 구성으로 했으므로, 메인 패스의 PlayItem이 가리키는 메인 Clip과는 상이한 Clip인 서브 Clip에 포함되는 데이터와 메인 Clip에 포함되는 데이터를 함께(동일 타이밍에서) 재생할 수 있다.
다음에, 음성의 전환이 지시된 경우의 재생 장치(141)에서의 처리에 대하여 설명한다. 최초에, 사용자에 의해 오디오 스트림 #1에 대한 음성의 전환이 지시되는 경우의 처리를 설명한다. 오디오 스트림 #2에 대한 음성의 전환의 처리에 대해서는, 후술한다. 그리고, 이들 처리는, 예를 들면, 재생 장치(141)의 재생 처리의 실행 중에 실행되는 처리이다.
먼저, 컨트롤러(21)는 오디오 스트림 번호(ID라도 됨)의 순번 리스트를 취득한다. 구체적으로는, 컨트롤러(21)는 PlayItem의 STN_table()을 참조하고, 또한 도 35를 사용하여 설명한 제3 STN_table()에 엔트리되어 있는 오디오 스트림 번호(ID)의 순번 리스트를 취득한다. 이 처리는 재생 처리가 개시되었을 때 실행되는 처리이다.
사용자에 의해, 조작 입력부(29)를 사용하여, 음성 전환의 지령을 한 경우, 컨트롤러(21)는 사용자로부터의 오디오 스트림 #1에 대한 음성 전환의 지령을 접수한다. 이 때, 컨트롤러(21)는 도시하지 않은 외부의 표시 장치를 제어하여, 스트림 넘버 테이블을 외부의 표시 장치에 표시하도록 제어하도록 해도 된다. 이 처리는 오디오 스트림 #1에 대한 음성의 전환이 지령되는 경우의 처리이므로, 사용자 는, 예를 들면, 스트림 넘버 테이블에 있어서의, A_SN=1, A_SN=2, A_SN=3의 오디오의 전환을 지령한다. 구체적으로는, 사용자는 A_SN=1의 오디오 2로부터 A_SN=2의 오디오 1로의 오디오의 전환을 지령한다. 컨트롤러(21)는 이 사용자로부터의 오디오 스트림 #1에 대한 음성의 전환을 접수한다.
컨트롤러(21)는 재생하고 있는 오디오 스트림 번호의 다음의 오디오 스트림 번호를 취득한다. 예를 들면, A_SN=1에 대응하는 오디오 스트림 파일이 재생되어 있는 경우, A_SN=2에 대응하는 오디오 스트림의 번호가 취득된다.
컨트롤러(21)는 stream_attribute()(도 18)에 기술되어 있는 내용에 따라, 자기 자신(재생 장치(141))이, 취득한 번호에 대응하는 오디오 스트림(오디오 스트림 #1)을 재생하는 기능을 가지는지 여부를 판정한다. 예를 들면, stream_entry()에서, type=1인 경우, 컨트롤러(21)는 재생 장치(141)가 취득한 번호에 대응하는 메인 Clip에 포함되는 오디오 스트림을 재생하는 기능을 가지는지 여부를 판정한다. 취득한 번호에 대응하는 오디오 스트림은 오디오 디코더(75-1)로 디코드되는 오디오 스트림 #1이므로, 이 처리는 이 오디오 스트림 #1을, 오디오 디코더(75-1)가 디코드할 수 있는지 여부를 판정하고 있다고도 환언할 수 있다.
취득한 번호에 대응하는 오디오 스트림을 재생하는 기능을 갖지 않은 경우, 컨트롤러(21)는 현재의 스트림 번호의 다음의 스트림 번호를 취득한다. 즉, 현재의 스트림 번호의 오디오 스트림을 재생하는 기능을 갖지 않은 경우에는, 그 스트림 번호는 날아가고(재생 대상이 되지 않고), 자기 자신이 재생하는 기능을 가지는 오디오 스트림(오디오 스트림 #1)의 번호가 취득될 때까지, 다음의 스트림 번호를 취득하는 처리가 반복된다.
한편, 취득한 번호에 대응하는 오디오 스트림을 재생하는 기능을 가지는 경우, 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림을 포함하는 Clip을 조사한다. 예를 들면, 컨트롤러(21)는 Stream_entry()의 type에 따라, 취득한 번호에 대응하는 오디오 스트림이 메인 Clip에 있는지(type=1), 서브 Clip에 있는지(type=2)를 조사한다. 또, 예를 들면, stream_entry()에서, type=1인 경우, 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림이 메인 Clip에 있는 것을 확인한다. 또한, 예를 들면, type=2인 경우, 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림이 서브 Clip에 있는 것을 확인한다.
그리고, 컨트롤러(21)는 원하는 오디오 스트림, 구체적으로는, 취득한 번호에 대응하는 스트림이 속하는 메인 Clip 또는 서브 Clip 중 원하는 오디오 스트림을 특정한다. 예를 들면, 취득한 번호에 대응하는 오디오 스트림이 메인 Clip에 포함되는 것이 확인된 경우, 컨트롤러(21)는 Stream_entry()의 type=1로 엔트리되어 있는 정보(ref_to_stream_PID_of_mainClip)에 따라, 메인 Clip의 중 소정의 오디오 스트림을 특정한다. 또, 예를 들면, 취득한 번호에 대응하는 오디오 스트림이 서브 Clip에 포함되는 것이 확인된 경우, 컨트롤러(21)는 Stream_entry()의 type=2로 엔트리되어 있는 정보(ref_to_SubPath_id, ref_to_SubClip_entry_id, ref_to_stream_PID_of_SubClip)에 따라, 서브 Clip 중 소정의 오디오 스트림을 특정한다. 이 특정된 오디오 스트림이 오디오 디코더(75-1)로 디코드되는 오디오 스트림 #1로 된다.
그리고, 컨트롤러(21)는 원하는 오디오 스트림이 다중화되어 있는 Clip에 포함되는 Clip AV 스트림(메인 Clip AV 스트림 또는 서브 Clip AV 스트림)으로부터 특정된 오디오 스트림을 판독하도록 스토리지 드라이브(22)에 지시하고, 스토리지 드라이브(22)는 이 지시에 따라, 대상이 되는 Clip으로부터 원하는 오디오 스트림을 판독하여, AV 디코더부(151)에 공급한다. 또는, 컨트롤러(21)는 로컬 스토리지(24)에 기록되어 있는, 원하는 오디오 스트림이 다중화되어 있는 Clip AV 스트림(메인 Clip AV 스트림 또는 서브 Clip AV 스트림)으로부터 원하는 오디오 스트림을 판독하여, AV 디코더부(151)에 공급한다. 그리고, 컨트롤러(21)는 판독된 원하는 오디오 스트림(즉, 오디오 스트림 #1)을 AV 디코더부(151)의 오디오 디코더(75-1)에 공급하고, 그 오디오 스트림을 디코드시키도록 오디오 디코더(75-1)에 지시한다.
AV 디코더부(151)의 오디오 디코더(75-1)는 오디오 스트림 #1(스텝 S58의 처리에서 판독이 지령된 오디오 스트림)을 디코드하여, 믹싱 처리부(101)에 출력한다. 여기에서, 오디오 스트림 #2가 오디오 디코더(75-2)에 의해 디코드되어 있는 경우에는, 믹싱 처리부(101)는 디코드된 오디오 스트림 #1과 오디오 스트림 #2를 믹싱하여, 후단의 믹싱 처리부(97)에 공급한다. 한편, 오디오 스트림 #2가 오디오 디코더(75-2)에 의해 디코드되어 있지 않은 경우에는, 믹싱 처리부(101)는 디코드된 오디오 스트림 #1을 그대로, 후단의 믹싱 처리부(97)에 공급한다. 믹싱 처리부(97)는 믹싱 처리부(101)로부터 공급된 오디오 데이터(오디오 스트림 #1만이 디코드된 오디오 데이터, 또는 오디오 스트림 #1과 오디오 스트림 #2가 각각 디코드 되어, 믹싱된 오디오 데이터)와, 버퍼(95)로부터 출력되는 사운드 데이터를 믹싱 처리하여, 오디오 신호로서 출력한다.
다음에, 사용자에 의해 오디오 스트림 #2에 대한 음성 전환이 지시되는 경우의 처리를 설명한다. 그리고, 이 처리도 재생 처리의 실행 중에 실행되는 처리이다. 또, 일반적으로는, 오디오 스트림 #2를 재생하는 경우, 오디오 스트림 #1 도 또 재생되어 있으므로, 이 처리는, 예를 들면, 오디오 스트림 #1의 재생 처리와 병행하여 실행되고, 오디오 스트림 #2가 사용자에 의해 선택되지 않은 경우에는, 오디오 스트림 #1의 재생 처리만 실행된다.
먼저, 컨트롤러(21)는 PlayItem의 STN_table()을 참조하고, 또한 도 35를 사용하여 설명한 제3 STN_table()에 엔트리되어 있는 오디오 스트림 번호(ID)의 순번 리스트를 취득한다. 이 처리는 재생 처리가 개시되었을 때 실행되는 처리이다.
사용자에 의해, 조작 입력부(29)를 사용하여, 음성 전환의 지령이 행해진 경우, 컨트롤러(21)는 사용자로부터의 오디오 스트림 #2에 대한 음성 전환의 지령을 접수한다. 이 때, 컨트롤러(21)는 도시하지 않은 외부의 표시 장치를 제어하여, 도 26스트림 넘버 테이블을 외부의 표시 장치에 표시하도록 제어하도록 해도 된다. 이 처리는 오디오 스트림 #2에 대한 음성의 전환이 지령되는 경우의 처리이므로, 사용자는, 예를 들면, 스트림 넘버 테이블에 있어서의, A_SN2=1와 A_SN2=2에 대응하는 오디오의 전환을 지령한다. 컨트롤러(21)는 이, 사용자로부터의 오디오 스트림 #2에 대한 음성의 전환을 접수한다. 컨트롤러(21)는 재생하고 있는 오디오 스트림 번호의 다음의 오디오 스트림 번호를 취득한다.
그리고, 컨트롤러(21)는 stream_attribute()(도 18)에 기술되어 있는 내용에 따라, 취득한 번호에 대응하는 오디오 스트림(오디오 스트림 #2)을 자기 자신(재생 장치(141))이 재생하는 기능을 가지는지 여부를 판정한다. 취득한 번호에 대응하는 오디오 스트림은 오디오 디코더(75-2)로 디코드되는 오디오 스트림 #2이므로, 이 처리는 이 오디오 스트림 #2를, 오디오 디코더(75-2)가 디코드할 수 있는지 여부를 판정하고 있다고도 환언할 수 있다.
그리고, 1st 오디오 디코더(75-1)로 디코드되는 오디오 스트림 #1 쪽이, 2nd 오디오 디코더(75-2)로 디코드되는 오디오 스트림 #2보다 확장성이 높고 멀티스트림인 경우를 가정하는 바와 같은 경우, 예를 들면, 1st 오디오 디코더(75-1) 쪽이 2nd 오디오 디코더(75-2)보다 높은 성능을 가지는 경우(오디오 스트림 #1이 통상의 영화의 음성이며, 오디오 스트림 #2가 영화에 대한 감독의 코멘트 등인 경우), 2nd 오디오 디코더(75-2)로 디코드되는 오디오 스트림 #2는 어느 정도의 제약이 설정되어 있을 가능성이 높고, 오디오 디코더(75-2)가 디코드할 수 없는 스트림은 오디오 스트림 #2로서 설정되지 않을 가능성이 높다고 가정할 수 있으므로, 이 처리를 생략하도록 해도 된다.
취득한 번호에 대응하는 오디오 스트림을 재생하는 기능을 갖지 않은 경우, 컨트롤러(21)는 현재의 스트림 번호의 다음의 스트림 번호를 취득한다. 즉, 현재의 스트림 번호의 오디오 스트림을 재생하는 기능을 갖지 않은 경우에는, 그 스트림 번호는 날아가고(재생 대상이 되지 않고), 자기 자신이 재생하는 기능을 가지는 오디오 스트림(오디오 스트림 #2)의 번호가 취득될 때까지, 다음의 스트림 번호를 취득하는 처리가 반복된다.
한편, 취득한 번호에 대응하는 오디오 스트림을 재생하는 기능을 가지는 경우, 컨트롤러(21)는 Stream_entry()의 type에 따라, 취득한 번호에 대응하는 오디오 스트림이 메인 Clip에 있는지(type=1), 서브 Clip에 있는지(type=2)를 조사한다. stream_entry()에서, type=1인 경우, 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림이 메인 Clip에 있는 것을 확인한다. 또, stream_entry()에서, type=2인 경우, 컨트롤러(21)는 취득한 번호에 대응하는 오디오 스트림이 서브 Clip에 있는 것을 확인한다.
그리고, 컨트롤러(21)는 취득한 번호에 대응하는 스트림이 속하는 메인 Clip 또는 서브 Clip 중 원하는 오디오 스트림을 특정한다. 예를 들면, 취득한 번호에 대응하는 오디오 스트림이, 메인 Clip에 포함되는 것이 확인된 경우, 컨트롤러(21)는 Stream_entry()의 type=1로 엔트리되어 있는 정보(ref_to_stream_PID_of_mainClip)에 따라, 메인 Clip 중 소정의 오디오 스트림을 특정한다. 또, 예를 들면, 취득한 번호에 대응하는 오디오 스트림이 서브 Clip에 포함되는 것이 확인된 경우, 컨트롤러(21)는 Stream_entry()의 type=2로 엔트리되어 있는 정보(ref_to_SubPath_id, ref_to_SubClip_entry_id, ref_to_stream_PID_of_SubClip)에 따라, 서브 Clip 중 소정의 오디오 스트림을 특정한다. 이 특정된 오디오 스트림이 오디오 디코더(75-1)로 디코드되는 오디오 스트림 #2로 된다.
그리고, 컨트롤러(21)는 원하는 오디오 스트림이 다중화되어 있는 Clip AV 스트림(메인 Clip AV 스트림 또는 서브 Clip AV 스트림)을 판독하도록 스토리지 드라이브(22)에 지시하고, 스토리지 드라이브(22)는 이 지시에 따라, 대상이 되는 Clip AV 스트림을 판독하여, AV디코더(151)에 공급한다. 또는, 컨트롤러(21)는 로컬 스토리지(24)로부터는, 원하는 오디오 스트림이 다중화되어 있는 Clip AV 스트림(메인 Clip AV 스트림 또는 서브 Clip AV 스트림)을 판독하여, AV 디코더(151)에 공급시킨다. 그리고, 컨트롤러(21)는 판독된 Clip에 포함되는 원하는 오디오 스트림(즉, 오디오 스트림 #2)을 AV 디코더부(151)의 오디오 디코더(75-2)에 디코드시키도록 지시한다.
AV 디코더부(151)는 오디오 스트림(오디오 스트림 #2)을 디코드하여, 오디오 출력한다. 구체적으로는, AV 디코더부(151)의 오디오 디코더(75-2)는 오디오 스트림 #2(스텝 S78의 처리에서 판독이 지령된 오디오 스트림)을 디코드하여, 믹싱 처리부(101)에 출력한다. 이 처리에서, 오디오 스트림 #2가 오디오 디코더(75-2)에 의해 디코드되어 있다고 하는 것은, 이 처리에서 오디오 스트림 #1이 오디오 디코더(75-1)에 의해서도 디코드되고, 디코드된 오디오 스트림 #1이 믹싱 처리부(101)에 출력되어 있으므로, 믹싱 처리부(101)는 디코드된 오디오 스트림 #1과 오디오 스트림 #2를 믹싱하고, 후단의 믹싱 처리부(97)에 공급한다. 믹싱 처리부(97)는 믹싱 처리부(101)로부터 공급된 오디오 데이터(오디오 스트림 #1과 오디오 스트림 #2가 각각 디코드되어 믹싱된 오디오 데이터)와, 버퍼(95)로부터 출력되는 사운드 데이터를 믹싱 처리하여 오디오 신호로서 출력한다.
이와 같이 하여, 2개의 오디오 스트림을 선택하고, 믹싱하여 재생할 수 있 다. 즉, 재생하는 오디오 스트림이 1개인 경우, 스위치(59)는 PID 필터(55) 또는 PID 필터(56)로부터 공급된 오디오 스트림을 1st 오디오 디코더(75-1)에 공급하도록 선택하고, 재생하는 오디오 스트림이 2개인 경우, 스위치(59)는 PID 필터(55) 또는 PID 필터(56)로부터 공급된 오디오 스트림을 2nd 오디오 디코더(75-2)에 공급하도록 선택한다.
즉, 컨트롤러(21)는 PlayItem의 STN_table()에 따라, 음성(오디오)의 전환을 제어할 수 있고, STN_table()의 stream_attribute을 참조함으로써, 자기 자신이 재생 기능을 가지는 스트림만을 선택하여, 재생 전환의 제어를 할 수 있다. 또한, 컨트롤러(21)는 STN_table()에 따라, 2개의 오디오 스트림을 중첩하여 재생하도록 제어할 수 있다. 또, 컨트롤러(21)는 1개의 메인으로 되는 오디오 스트림 #1과, 오디오 스트림 #1로 동기하여 재생되는 동일 종류의 스트림(오디오 스트림)인 오디오 스트림 #2를, 믹싱하여 재생하도록 제어할 수 있다.
그리고, 이 처리에서도, 오디오 스트림 번호에 따라, 오디오를 전환하는 것으로서 설명했지만, 오디오 스트림 ID(audio_stream_id)에 따라, 오디오를 전환하도록 해도 된다. 이 경우, 오디오 스트림 번호로부터 1을 감산한 것이, 오디오 스트림 ID로 된다.
또, 제3 STN_Table을 사용하는 경우의 처리도 오디오 스트림에 한정되지 않고, 스트림의 종류가 동일하면, 각종의 스트림 파일에 대하여 동일하게 적용할 수 있다. 예를 들면, 비디오 스트림(스트림의 종류가 비디오 스트림인 스트림)을 2개 합성하여 재생하는 픽처인픽처 표시를 하는 경우에도, 이 구성은 적용할 수 있다. 이와 같이, 본 발명에 의하면, 2개의 동일 종류의 스트림 파일을 합성하여 재생할 수 있다.
즉, 이 구성도, 예를 들면, 도 43을 사용하여 후술하는 바와 같이, 메인 패스로 참조되는 AV 스트림의 비디오 스트림(비디오 스트림 #1)을 주 화면으로서 표시하게 하고, 주 화면 중에, 서브 패스(나 메인 패스)의 비디오 패스로 참조되는 비디오 스트림(비디오 스트림 #2)을 자 화면으로서 합성하여 표시하게 하는, 이른바 PinP(픽처인픽처) 표시 등에 대해서도 이용할 수 있다.
이상에 의해, 재생 장치(141)도 재생 장치(1)에서의 경우와 동일하게, 메인 AV 스트림과는 다른 스트림이나 데이터 파일로 오디오나 자막 등을 준비하는 경우에, PlayList 중에 메인 패스와 서브 패스를 가지는 구성으로 했으므로, 사용자에 의한 음성 전환이나 자막 전환이라고 하는 조작이, 메인 Clip AV 스트림과는 상이한 별도 스트림이나 별도 데이터 파일 중에서 선택할 수 있다.
또, 메인 패스의 PlayItem 중에, AV 스트림 파일로 다중화되어 있는 데이터와, Sub Path에 의해 참조되는 데이터의 type을 정의한 STN_Table을 형성하도록 했으므로, 보다 확장성이 높은 스트림을 실현할 수 있다.
또한, 재생 장치(141)도 재생 장치(1)에서의 경우와 동일하게, STN_table()의 stream_attribute을 참조함으로써, 자기 자신이 가지는 기능에 대응하는 스트림만을 차례로 선택하여 재생할 수 있다.
이상 설명한 재생 장치(141)가, 도 35의 제3 STN_Table을 참조하여 재생 처리를 행한 경우에 대하여 정리하면, 다음과 같이 된다.
재생 장치(141)는 적어도 1개의 스트림을 포함하는 메인 Clip AV 스트림 파일의 위치를 나타내는 주 재생 패스인 메인 패스와, 메인 Clip AV 스트림 파일의 타이밍에 맞추어 재생되는 서브 Clip AV 스트림 파일의 각각의 위치를 나타내는 복수개의 서브 패스에 의해 구성되는 재생 관리 정보로서의 PlayList를 취득한다. 그리고, 재생 장치(141)는 PlayList에 포함되는 재생하는 스트림을 선택하기 위한 STN_table()에 따라, 재생하는 스트림의 선택을 접수한다. STN_table()은 메인 Clip AV 스트림 파일의 소정의 종류의 스트림(예를 들면, 오디오 스트림 #1)과, 그 스트림의 재생 타이밍에 맞추어 재생되는, 동일 종류의 스트림 파일(예를 들면, 오디오 스트림 #2)을 선택하기 위한 정보이므로, 이 STN_table()(PlayItem으로 나타내는 STN_table())에 따라, 재생하는 스트림의 선택을 접수한다.
여기에서, 2개의 동일 종류의 스트림(오디오 스트림)이 재생하는 스트림으로서 선택된 경우, 재생 장치(141)는 선택된 2개의 스트림 파일을 판독하고, 재생 장치(141)의 믹싱 처리부(101)는 이 2개의 오디오 스트림(디코드된 오디오 스트림)을 합성하고, 믹싱 처리부(97)(AV 디코더부(151))는 합성된 스트림을 재생(출력)한다.
이로써, 사용자에게 선택된(전환되어 선택된) 2개의 오디오가 믹싱(합성)되어 재생된다.
또, 전술한 재생 장치(1)에서의 경우와 동일하게, PlayList에 Main Path와 Sub Path를 포함하고, Main Path와 Sub Path가 상이한 Clip을 참조하는 구성으로 했으므로, 스트림에 확장성을 갖게 할 수 있어, 예를 들면, 도 8을 사용하여 설명한 바와 같이, 1개의 Sub Path로 복수개의 파일을 참조 가능한 구성으로 했으므로, 복수개의 상이한 스트림 중에서 사용자가 선택할 수 있다.
또한, Main Path의 PlayItem 중에, Main Path에 의해 참조되는 AV 스트림 파일로 다중화되어 있는(포함되는) 부속 데이터(예를 들면, 오디오 스트림)와, Sub Path에 의해 참조되는 부속 데이터를 정의한 테이블로서, 도 35의 STN_table()을 형성하도록 했으므로, 보다 확장성이 높은 스트림을 실현할 수 있다. 또, STN_table()에 엔트리 하면, Sub Path를 용이하게 확장할 수 있다.
또, STN_table()에 스트림의 속성 정보인 도 18의 stream_attribute()을 형성하도록 했으므로, 재생 장치(141)는 선택된 스트림을 재생 가능한지 여부를 판정할 수 있어, 재생 기능을 가지는 스트림만을 선택하여 재생할 수 있다.
또한, STN_table()(도 35)에서, 2개의 동일 종류의 스트림 파일(여기에서는, 오디오 스트림 파일)을 정의하도록 하고, 또한 도 36의 재생 장치(141)에 2개의 오디오 디코더(1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2))를 설치하는 동시에, 2개의 오디오 디코더에 의해 디코드된 오디오 데이터를 합성(믹싱)하는 믹싱 처리부(101)를 형성하도록 했으므로, 2개의 동일 종류의 스트림을 조합하여 동시에 재생할 수 있다.
또, 전술한 재생 장치(1)에서의 경우와 동일하게, Sub Path에는, 도 11을 사용하여 설명한, Sub Path의 타입(오디오나 텍스트 자막이라고 하는 타입)을 나타내는 SubPath_type, Sub Path가 참조하는 서브 Clip의 이름을 나타낸 도 12의 Clip_Information_file_name, 및 Sub Path가 참조하는 Clip AV 스트림의 인점을 나타낸 도 12의 SubPlayItem_IN_time과 아웃점을 나타낸 도 12의 SubPlayItem_OUT_time을 포함하도록 했으므로, Sub Path가 참조하는 데이터를 정확하게 특정할 수 있다.
또한, 전술한 재생 장치(1)에서의 경우와 동일하게, Sub Path에는, Sub Path가 Main Path를 동일 타이밍에서 재생하기 위한 Main Path 상의 AV 스트림 파일을 지정하는 지정 정보인 도 12의 sync_PlayItem_id(예를 들면, 도 7과 도 8의 sync_PlayItem_id)와, Sub Path가 참조하는 데이터의 인점이 Main Path의 시간축 상에서 동기하여 스타트하는 Main Path 상의 시각인 sync_start_PTS_of_PlayItem(예를 들면, 도 7과 도 8의 sync_start_PTS_of_PlayItem)을 추가로 포함하기 때문에, 도 7이나 도 8에 나타낸 바와 같이, Main Path가 참조하는 메인 Clip AV 스트림 파일에 동기하여 Sub Path가 참조하는 데이터(파일)를 재생할 수 있다.
또, 2개의 오디오 스트림을 믹싱하여 재생하는 경우, 재생 장치(141)의 1st 오디오 디코더(75-1)는 오디오 스트림 #1을 디코드하고, 2nd 오디오 디코더(75-2)는 오디오 스트림 #2를 디코드하는 것이지만, 코덱(인코드)방식이 동일(예를 들면, 도 19의 Dolby AC-3 audio)한지 여부를, 또한 판정하도록 해도 된다. 이것은 1st 오디오 디코더(75-1)와 2nd 오디오 디코더(75-2)가 오디오 스트림을 디코드하고 있는 도중이라도, 코덱 방식이 동일하면, 디코드 도중의 데이터 방식도 동일하므로, 도중의 동일한 단계까지 디코드된 2개의 스트림을, 믹싱 처리부(101)에 의해 믹싱하는 것이 가능해지기 때문이다.
그리고, 도 36을 사용하여 설명한 재생 장치(141)의 AV 디코더부(151)에 공 급되는 데이터는, 전술한 재생 장치(1)에서의 경우와 동일하게, DVD(Digital Versatile Disc) 등의 기록 매체(11)에 기록되어 있는 데이터라도 되고, 하드 디스크 등으로 구성되는 로컬 스토리지(24)에 기록되어 있는 데이터라도 되고, 네트워크(2)를 통해 다운로드된 데이터라도 되고, 이들이 조합된 데이터라도 된다.
또, 도 35를 사용하여 설명한 제3 STN_Table을 참조하여 재생 처리가 행해지는 경우에서는, 도 36의 재생 장치(141)의 1st 오디오 디코더(75-1)로 디코드되는 오디오 스트림 #1과 2nd 오디오 디코더(75-2)로 디코드되는 오디오 스트림 #2를, 사용자가 별개로 선택 가능한 구성으로 했지만, 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하여, 믹싱 재생하는 경우에는, 이 조합 중에서 사용자가 선택하게 하는 구성으로 해도 된다. 즉, 오디오 스트림 #1과 믹싱 재생 가능한 오디오 스트림 #2의 조합을 정의하여 두도록 해도 된다.
이하, 재생되는 스트림의 조합이 정의되어 있는 경우에 대하여 설명한다.
도 37은 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하는 경우의 STN_table()의 신택스의 제4 예(제4 STN_table())의 예를 나타낸 도면이다. 제4 STN_table()을 참조하여 실행되는 재생 처리는 도 36을 사용하여 설명한 재생 장치(141)에서 실행 가능하다. 그리고, 도면 중, 도 35와 동일한 부분에 대해서는, 반복이 되므로 그 설명은 생략한다.
도 37에서, 오디오 스트림 ID2(audio_stream_id2)의 for 루프 중에서, 순번으로 stream_entry()마다 특정되는 1개의 오디오 엘리멘터리 스트림에, 0부터 audio_stream_id2가 부여된다. 이 때, audio_stream_id2에 대하여, stream_entry()와 stream_attribute() 외에, 새로 Combination_of_Primary_and_Secondary가 정의된다. Combination_of_Primary_and_Secondary는 오디오 스트림 #1(Primary)과 오디오 스트림 #2(Secondary)의 조합을 정의하는 정보이다. 즉, 오디오 스트림 ID2(audio_stream_id2)로 특정되는 오디오 스트림 #2에 대하여, 어느 오디오 스트림 #1이 조합 가능한지를 나타내는 정보가 오디오 스트림 ID2의 for 루프 중에서 정의된다. 환언하면, Combination_of_Primary_and_Secondary에 의해, 오디오 스트림 #1에 대하여 조합 가능한 오디오 스트림 #2가 정의된다. 이와 같이, 오디오 스트림 ID1의 for 루프 내에서 조합하는 오디오 스트림 ID2를 정의한 것이 아니라, 오디오 스트림 ID1과 오디오 스트림 ID2를 개별적으로 정의하고, 오디오 스트림 ID2의 for 루프 중에서 조합을 정의함으로써, 오디오 스트림 ID1의 등록 가능 수가 정해져 있는 경우라도, 조합의 등록을 1개로 카운트시키지 않음으로써, 그 등록 가능 수를 유효하게 사용할 수 있다.
그리고, 도 35를 참조하여 설명한 바와 같이, 오디오 스트림 ID2(audio_stream_id2) 대신에, 오디오 스트림 번호 2(audio_stream_number2)를 사용하도록 해도 된다. 이 경우, audio_stream_number2는 0이 아니라 1부터 부여된다. 즉, audio_stream_id2의 값에 1을 가산한 것이 audio_stream_number2이다. 오디오 스트림 번호 2는, 음성 전환에 사용되는, 사용자로부터 보이는 오디오 스트림 번호 2이므로, 1부터 정의된다.
여기에서, 도 37의 Combination_of_Primary_and_Secondary의 비트맵 신택스 의 예를, 도 38을 참조하여 설명한다.
Combination_of_Primary_and_Secondary의 비트맵 신택스는 도 38의 예의 경우, 32bit로 된다. 도 38에서, audio_stream_id는 도 37의 제3 STN_table()에서 정의되는 audio_stream_id(오디오 스트림 ID)를 나타내고, indicator의 값은 대응하는 audio_stream_id2(오디오 스트림 ID2)에 의해 특정되는 오디오 스트림 #2와 조합 가능한 오디오 스트림 #1을 특정하는 audio_stream_id를 나타내는 플래그이다. 즉, audio_stream_id와 indicator에 의해, audio_stream_id2로 부여되는 오디오 스트림 #2와 조합 가능한 오디오 스트림 #1의 audio_stream_id를 특정할 수 있다.
즉, 도 37의 audio_stream_id2의 for 루프 중에 Combination_of_Primary_and_Secondary가 규정되도록, 각각의 audio_stream_id2에 대하여, Combination_of_Primary_and_Secondary가 존재하고, 어느 특정의 audio_stream_id2에 의해 특정되는 오디오 스트림 #2에 대하여 조합이 가능한 오디오 스트림 #1이, indicator에 의해 나타나는 audio_stream_id에 의해 특정된다.
구체적으로는, Indicator의 값이 0인 경우, 그 audio_stream_id2는 audio_stream_id로 특정되는 오디오 스트림 #1에 대응하고 있지 않는 것을 나타내고, indicator의 값이 1인 경우, 그 audio_stream_id2는 audio_stream_id로 특정되는 오디오 스트림 #1에 대응하고 있는 것을 나타낸다.
즉, 도 38의 예의 경우, audio_stream_id2(오디오 스트림 ID2)로 특정되는 오디오 스트림 #2에는, audio_stream_id=0과 audio_stream_id=1로 특정되는 2개의 오디오 스트림(오디오 스트림 #1)이 조합 가능한 것이 나타나 있다.
그리고, 도 38에서는, 조합 가능한 오디오 스트림 #1을, audio_stream_id로 특정하도록 했지만, audio_stream_id 대신에, 오디오 스트림 번호를 사용하도록 해도 된다. 이 경우, audio_stream_id는 0이 아니라 1부터 부여된다.
도 38과 같이, Combination_of_Primary_and_Secondary를 32bit의 비트맵 신택스로 정의하도록 했으므로, 32개의 오디오 스트림 #1에 대하여, 조합 가능한 오디오 스트림 #2를 각각 정의할 수 있다.
도 37과 도 38에 의하면, audio_stream_id 및 audio_stream_id2, 및 Combination_of_Primary_and_Secondary를 사용하여, 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의할 수 있다. 즉, 모순되는 바와 같은 오디오 스트림의 조합을 정의하지 않고 끝나므로, 사용자는 항상 재생 가능한 오디오 스트림의 조합의 재생을 선택할 수 있다.
구체적인 예를, 도 39를 참조하여 설명한다. 도 39는 사용자에게 제공하는 음성 신호와 자막 신호의 관계를 나타내는 스트림 넘버 테이블의 예를 나타낸 도면이다. 그리고, 도면 중, 자막 신호(서브픽처)의 기재에 대해서는, 도 26과 동일하므로, 그 설명은 생략한다.
도 39에서는, PlayList의 Main Path를 구성하는 PlayItem의 제4 STN_table()에서 엔트리되는 오디오 스트림 #1(audio_stream_id로 엔트리되는 오디오 스트림)의 각각에 A_SN이 부여된다.
구체적으로는, A_SN=1에 오디오 2가 부여되고, A_SN=2에 오디오 1이 부여 되고, A_SN=3에 오디오 3이 부여되어 있다.
이 때, A_SN=1의 오디오 2에 대해서는, 오디오 4(audio_stream_id2=0, 즉, 오디오 스트림 번호 2가 1인 오디오 4)가 조합 가능하게 되어 있다. 또, A_SN=2의 오디오 1에 대해서는, 오디오 4(audio_stream_id2=0, 즉, 오디오 스트림 번호 2가 1인 오디오 4)와 오디오 5(audio_stream_id2=1, 즉, 오디오 스트림 번호 2가 2인 오디오 5)가 조합 가능하게 되어 있다.
구체적으로는, 오디오 4(audio_stream_id2=0의 오디오 4)의 경우, 도 38의 Combination_of_Primary_and_Secondary의 비트맵 신택스는 audio_stream_id=0과 audio_stream_id=1에 대한 indicator의 값이 모두 1로 되고, audio_stream_id=2로부터 audio_stream_id=31까지의 indicator의 값은 모두 0으로 된다. 또, 오디오 5(audio_stream_id2=1의 오디오 5)의 경우, 도 38의 Combination_of_Primary_and_Secondary의 비트맵 신택스는 audio_stream_id=1에 대한 indicator의 값만 1로 되고, audio_stream_id=0과, audio_stream_id=2부터 audio_stream_id=31까지의 indicator의 값은 모두 0으로 된다.
사용자는 A_SN이 부여되어 있는 오디오 스트림 중에서, 재생하는 오디오 스트림 #1을 선택하고, 선택한 오디오 스트림 #1과 믹싱하는 오디오 스트림 #2를, A_SN이 부여되어 있는 오디오 스트림의 도면 중 우측에 표시되어 있는 것 중에서 선택한다. 도 39의 예의 경우, 오디오 스트림 #1로서 오디오 2(A_SN=1)를 선택하는 경우, 믹싱 가능한 오디오 스트림 #2는 오디오 2의 도면 중 우측에 표시되어 있는 오디오 4뿐이므로, 이것을, 믹싱 재생하는지 여부를 선택한다. 도 39에서는, A _SN=1의 오디오 2에 대응하는 오디오 4는, 「×」, 즉, 믹싱 재생을 선택하지 않는 상태로 되어 있다. 사용자는 이 「×」을 전환하여 「o」으로 함으로써, 오디오 2와 오디오 4의 믹싱 재생이 선택된 상태로 할 수 있다.
또, 예를 들면, 도 39의 예의 경우, 오디오 스트림 #1로서 오디오 1(A_SN=2)을 선택하는 경우, 믹싱 가능한 오디오 스트림 #2는 오디오 2의 도면 중 우측에 표시되어 있는 오디오 4와 오디오 5 중에서 선택할 수 있다. 그러므로, 사용자는 오디오 스트림 #1을 어느 오디오 스트림 #2로 재생하는지 여부를 선택한다. 도 39에서는, A_SN=2의 오디오 1에 대응하는 오디오 4와 오디오 5는, 「×」, 즉, 믹싱 재생을 선택하지 않는 상태로 되어 있다. 사용자는 이 「×」을 전환하여 「o」으로 함으로써, 오디오 2와 오디오 4, 또는 오디오 2와 오디오 5의 믹싱 재생이 선택된 상태로 할 수 있다.
이 재생의 선택의 구체적인 예로서는, A_SN=1의 오디오 2가 선택되어 있는 경우에, 사용자가 오디오의 전환을 지령한 경우, A_SN=1의 오디오 2와 오디오 4의 조합의 재생(도 39의 오디오 2에 대응하는 오디오 4가 「o」이 됨)으로 전환되고, 사용자가 또한 오디오의 전환을 지령한 경우, 오디오는 A_SN=2의 오디오 1의 재생(도 39의 오디오 2에 대응하는 오디오 4가 「×」로 됨)으로 전환되고, 사용자가 또한 오디오의 전환을 지령한 경우, 오디오는 A_SN=2의 오디오 1과 오디오 4의 조합의 재생(도 39의 오디오 1에 대응하는 오디오 4가 「o」이 됨)으로 전환할 수 있다. 또, 사용자가, 또한 오디오의 전환을 지령한 경우, 오디오는 A_SN=2의 오디오 1과 오디오 5의 조합의 재생(도 39의 오디오 1에 대응하는 오디오 4가 「×」로 되고, 오디오 5가 「o」이 됨)으로 전환할 수 있다.
사용자는 이와 같이 하여 재생되는 오디오 스트림의 선택을 전환하여, 예를 들면, 도 40에 나타낸 바와 같이, A_SN2의 오디오 1과 오디오 5의 조합의 재생을 선택할 수 있다. 이로써, 오디오 1(오디오 스트림 #1)과 오디오 5(오디오 스트림 #2)를 믹싱 재생할 수 있다.
이와 같이, audio_stream_id 및 audio_stream_id2, 및 Combination_of_Primary_and_Secondary를 사용하여, 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하도록 함으로써, 모순되는 바와 같은 조합을 정의하지 않고 끝나, 사용자는 항상 재생 가능한 오디오 스트림의 조합을 선택할 수 있다. 즉, 도 39의 예에서는, 모순되는 오디오 스트림의 조합인 오디오 2+오디오 5를 정의하지 않도록 함으로써, 사용자에게 선택 가능한 것만 제공할 수 있다.
환언하면, PlayItem() 중의 제4 STN table()(도 37)에서, 도 36의 1st 오디오 디코더(75-1)로 디코드하는 오디오 스트림 #1과, 2nd 오디오 디코더(75-2)로 디코드하는 오디오 스트림 #2의 조합을, Combination_of_Primary_and_Secondary를 사용하여 정의하도록 했으므로, 2개의 오디오 스트림을 믹싱하여 재생할 수 있다. 즉, 복수개의 종류로 이루어지는 스트림으로부터, 동일 종류(이 예의 경우, 오디오 스트림)의 스트림을 믹싱(중첩, 또는 합성)하여, 동시에 재생할 수 있다.
또, 이와 같은 구성으로 함으로써, 사용자는 믹싱하는 2개의 오디오 스트림을 별개로 선택할 필요가 없고, 2개의 오디오 스트림이 조합된 것 중에서, 재생하는 오디오 스트림을 선택할 수 있다.
다음에, 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하여, 믹싱 재생하는 경우, 즉, 오디오 스트림 #1과 오디오 스트림 #2의 조합 중에서 사용자에게 재생의 선택을 시키는 구성으로 하는 경우의 2번째 예를, 도 41을 참조하여 설명한다. 환언하면, 도 41은 오디오 스트림 #1과 믹싱 재생 가능한 오디오 스트림을, 오디오 스트림 #2로서 정의한 경우의 2번째 예이다.
도 41은 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하는 경우의 STN_table()의 신택스의 제5 예(제5 STN_table())의 다른 예를 나타낸 도면이다. 제5 STN_table()을 참조하여 실행되는 재생 처리도 도 36을 사용하여 설명한 재생 장치(141)에서 실행 가능하다. 그리고, 도면 중, 도 35와 동일한 부분에 대해서는, 반복이 되므로 그 설명은 생략한다.
도 41에서, 오디오 스트림 ID2(audio_stream_id2)의 for 루프 중에서, 순번으로 stream_entry()마다 기록 위치가 특정되는 1개의 오디오 엘리멘터리 스트림에, 0부터 audio_stream_id2가 부여된다. 이 때, audio_stream_id2에 대하여, number_of_combinations가 부여되고, number_of_combinations 후의 for 문에서는, number_of_combinations의 수만큼, audio_stream_id가 부여된다. number_of_combinations와 number_of_combinations 후의 for 문은 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하는 정보이며, audio_stream_id2로 특정되는 오디오 스트림 #2와 조합 가능한 오디오 스트림 #1의 수가, number_of_combinations로 된다. 그리고, audio_stream_id2로 특정되는 오디오 스트림 #2와 조합 가능한 오디오 스트림 #1을 특정하는 audio_stream_id가, number_of_combinations 후의 for 문에서 정의된다.
즉, 도 37과는 달리, 도 41의 제5 STN_table()의 오디오 스트림 ID2(audio_stream_id2)의 for 문 중에서는, 그 오디오 스트림 ID2로 특정되는 오디오 스트림 #2에 대하여, 오디오 스트림 #1과의 조합 가능한 수가 number_of_combinations로 정의되고, number_of_combinations 후의 for 문에서, 대상이 되는 오디오 스트림 #1을 특정하는 audio_stream_id를 직접 정의하고 있다.
이와 같이, 제5 STN_table()에서는, 오디오 스트림 ID2(audio_stream_id2)로 특정되는 오디오 스트림 #2에 대하여, 어느 오디오 스트림 #1이 조합 가능한지를 나타내는 정보가 오디오 스트림 ID2의 number_of_combinations 후의 for 문에서 정의된다. 즉, 오디오 스트림 ID2의 number_of_combinations 후의 for 문에 의해, 오디오 스트림 #1에 대하여 조합 가능한 오디오 스트림 #2가 정의된다.
그리고, 도 35를 참조하여 설명한 경우와 동일하게, 오디오 스트림 ID2(audio_stream_id2) 대신에, 오디오 스트림 번호 2(audio_stream_number2)를 사용하도록 해도 된다. 또, 오디오 스트림 ID(audio_stream_id) 대신에, 오디오 스트림 번호(audio_stream_number)를 사용하도록 해도 된다. 즉, number_of_combinations 후의 for 문에서 정의되는 audio_stream_id도, 오디오 스트림 번호로 해도 된다.
도 41에 의하면, number_of_combinations와 그 후의 for 문을 사용하여, 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의할 수 있다. 즉, 모순되는 바와 같은 오디오 스트림의 조합을 정의하지 않고 끝나므로, 사용자는 항상 재생 가능한 오디오 스트림 조합의 재생을 선택할 수 있다.
이 경우의 스트림 넘버 테이블의 구체적인 예는, 도 39 및 도 40을 사용하여 설명한 경우와 동일하다.
즉, 도 39가 도 41의 제5 STN_table()에 대응하는 경우, 오디오 4(audio_stream_id2=0, 즉, 오디오 스트림 번호 2가 1인 오디오 4)에 대하여, 조합 가능한 오디오 스트림 #1로서, A_SN=1의 오디오 2(audio_stream_id=0)와, A_SN=2의 오디오 1(audio_stream_id=1)이 정의되어 있는 것으로 된다. 이 경우, 도 41의 audio_stream_id2=0에 대응하는 number_of_combinations의 수는 2개이며, 정의되는 audio_stream_id는 audio_stream_id=0과 audio_stream_id=1이다. 또, 오디오 5(audio_stream_id2=1, 즉, 오디오 스트림 번호 2가 2인 오디오 5)에 대하여, 조합 가능한 오디오 스트림 #1로서, A_SN=2의 오디오 1(audio_stream_id=1)이 정의되어 있는 것으로 된다. 이 경우, 도 41의 audio_stream_id2=1에 대응하는 number_of_combinations의 수는 1개이며, 정의되는 audio_stream_id는 audio_stream_id=1이다.
사용자는 도 39에 나타낸 오디오의 재생 선택을 전환하여, 예를 들면, 도 40에 나타낸 바와 같이, A_SN=2의 오디오 1과 오디오 5의 조합의 재생을 선택한다. 이로써, 오디오 1(오디오 스트림 #1)과 오디오 5(오디오 스트림 #2)를 믹싱 재생할 수 있다.
이와 같이, 도 41의 number_of_combinations와, 그 후의 for 문을 사용하여, 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하도록 함으로써, 모순되는 바 와 같은 조합을 정의하지 않고 끝나, 사용자는 항상 재생 가능한 오디오 스트림의 조합을 선택할 수 있다. 즉, 도 39의 예에서는, 모순되는 오디오 스트림의 조합인 오디오 2+오디오 5를 정의하지 않도록 함으로써, 사용자에게, 선택 가능한 것만 제공할 수 있다.
환언하면, PlayItem() 중의 제5 STN table()(도 41)에서, 도 36의 1st 오디오 디코더(75-1)로 디코드하는 오디오 스트림 #1과, 2nd 오디오 디코더(75-2)로 디코드하는 오디오 스트림 #2의 조합을, number_of_combinations와 그 후의 for 문을 사용하여 정의하도록 했으므로, 2개의 조합 가능한 오디오 스트림을 믹싱하여 재생할 수 있다. 즉, 복수개의 종류로 이루어지는 스트림으로부터, 동일 종류(이 예의 경우, 오디오 스트림)의 스트림을 믹싱(중첩, 또는 합성)하여, 동시에 재생할 수 있다.
또, 제5 STN table()을 사용함으로써, 사용자는 믹싱하는 2개의 오디오 스트림을 별개로 선택할 필요가 없고, 2개의 오디오 스트림이 조합된 것 중에서, 재생하는 오디오 스트림을 선택할 수 있다.
다음에, 도 42는 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하는 경우의 STN_table()의 신택스의 제6 예(제6 STN_table())의 또다른 예를 나타낸 도면이다. 제6 STN_table()을 참조하여 실행되는 재생 처리도 도 36을 사용하여 설명한 재생 장치(141)에서 실행 가능하다. 그리고, 도면 중, 도 35나 도 41과 동일한 부분에 대해서는, 반복이 되므로 그 설명은 생략한다.
도 42의 예의 오디오 스트림 ID(audio_stream_id)의 for 루프 중에서, 순번 으로 stream_entry()마다 특정되는 1개의 오디오 스트림 #1에, 0부터 audio_stream_id가 부여되는 것과 그 후에 배치되는 stream_attribute()에 대해서는, 도 35의 예와 동일하게 되어 있다.
단, 도 42의 예의 오디오 스트림 ID(audio_stream_id)의 for 루프 중에는, 또한 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의하는 다음과 같은 정보가 포함된다. 즉, number_of_audio_stream2_entries가 0이 아닌 경우(if(number_of_audio_stream2_entries!=0)), number_of_audio_stream2_ref_entries가 부여된다. number_of_audio_stream2_ref_entries는 audio_stream_id로 특정되는 오디오 스트림 #1과 조합 가능한 오디오 스트림 #2의 수를 나타낸다. 그리고, audio_stream_id로 특정되는 오디오 스트림 #1과 조합 가능한 오디오 스트림 #2를 특정하는 audio_stream2_id_ref가, number_of_audio_stream2_ref_entries 후의 for 문에서 정의된다.
그리고, 다른 예와 동일하게, 오디오 스트림 ID2ref(audio_stream_id2_ref) 대신에, 오디오 스트림 번호 2ref(audio_stream_number2_ref)를 사용하도록 해도 된다. 또, 오디오 스트림 ID(audio_stream_id) 대신에, 오디오 스트림 번호(audio_stream_number)를 사용하도록 해도 된다.
이와 같이, 도 42의 예의 제6 STN_table()을 이용해도, 오디오 스트림 #1과 오디오 스트림 #2의 조합을 정의할 수 있다. 즉, 모순되는 바와 같은 오디오 스트림의 조합을 정의하지 않고 끝나므로, 사용자는 항상 재생 가능한 오디오 스트림의 조합의 재생을 선택할 수 있다.
그런데, 전술한 바와 같이, 본 발명의 재생 장치에 장착되는 기록 매체 상, 또는 재생 장치의 로컬 스토리지에 기록되는 데이터의 애플리케이션 포맷은 PlayList와 Clip의 2개의 레이어를 가지고 있다. 그리고, PlayList는 1개 이상의 PlayItem의 열에 의해(연속하는 PlayItem에 의해) 만들어지는 메인 패스(Main Path)와, 그 Main Path에 병행(병렬)하여, 1개 이상의 SubPlayItem의 열에 의해(비연속이라도 되고, 연속해도 되는 SubPlayItem에 의해) 만들어지는 서브 패스(Sub Path)를 1 이상 포함할 수 있다.
따라서, 예를 들면, 도 43에 나타낸 바와 같이, 1 화면 중, 전체 화면(301)에, 메인 패스로 참조되는 AV 스트림(도 43 중, Primary Video라고 기술되어 있는 비디오 스트림(311), 및 Primary Audio라고 기술되어 있는 오디오 스트림(312))에 대응하는 영화 본편 등의 컨텐츠를 재생시키는 동시에, 전체 화면(301)에 배치되는 자 화면(302)에, 서브 패스로 참조되는 AV 스트림(도 43 중, Secondary Video라고 기술되어 있는 비디오 스트림(313), 및 Secondary Audio라고 기술되어 있는 오디오 스트림(314))에 대응하는 영화 감독의 해설 등, 메인 패스로 참조되는 AV 스트림과는 다른 컨텐츠를 재생시킨다고 하는 방법을 적용하는 것이 가능하게 된다.
즉, 전체 화면(부모 화면)(301)과 자 화면(302)의 각각에 별개의 컨텐츠를 동시 재생시킨다고 하는 방법을 적용하는 것이 가능하게 된다.
이와 같은 방법은 픽처인픽처(Picture in Picture) 방법이라고 한다.
그리고, Primary Audio라고 기술되어 있는 오디오 스트림(312)에 대응하는 음성과, Secondary Audio라고 기술되어 있는 오디오 스트림(314)에 대응하는 음성과의 재생이란, 전술한 바와 같이, 그들 2개의 오디오 스트림에 대하여 믹싱 처리가 행해진 결과 얻어지는 음성의 출력을 말한다.
또, 실제의 재생 대상은, 전술한 바와 같이, 각 스트림에 대응하는 음성이나 화상이지만, 이하의 설명에서는, 설명의 간략상, 각 스트림으로 하는 경우도 있다. 즉, 소정의 스트림을 재생한다고 하는 표현을 사용하는 경우도 있다.
픽처인픽처 방법을 적용하는 애플리케이션을 실현하기 위해서는, 예를 들면, 다음과 같은 신택스(Syntax)가 필요하게 된다. 즉, 예를 들면, 본 실시예에서는, STN_table에서 video_stream_id로 정의된 비디오 스트림(이하, 프라이머리 비디오 스트림이라고 한다. 예를 들면, 도 43의 예에서는, Primary Video라고 기술되어 있는 비디오 스트림(311)을, 프라이머리 비디오 스트림(311)이라고 한다)의 수는, 1개로 되어 있다. 그래서, 이것을 고려하여, 프라이머리 비디오 스트림과 동시에 재생될 수 있는 스트림의 조합을 정의하는 신택스가 있으면, 픽처인픽처 방법의 실현, 즉, 픽처인픽처를 적용하는 애플리케이션의 실현이 가능하게 된다.
여기에서, 픽처인픽처 방법에 의해, 프라이머리 비디오 스트림과 동시에 재생될 수 있는 스트림으로서, 예를 들면, 본 실시예에서는, 다음의 제1 내지 제4 종류의 스트림이 준비되어 있다.
제1 종류의 스트림과는 STN_table에서 audio_stream_id로 정의된 오디오 스트림, 즉, 전술한 오디오 스트림 #1(이하, 프라이머리 오디오 스트림이라고 한다. 예를 들면, 도 43의 예에서는, Primary Audio라고 기술되어 있는 오디오 스트 림(312)을, 프라이머리 오디오 스트림(312)이라고 한다)을 말한다.
제2 종류의 스트림이란, STN_table에서 video_stream_id2로 정의된 비디오 스트림(이하, 세컨더리 비디오 스트림이라고 한다. 예를 들면, 도 43의 예에서는, Secondary Video라고 기술되어 있는 비디오 스트림(313)을, 세컨더리 비디오 스트림(313)이라고 한다)을 말한다.
제3 종류의 스트림이란, STN_table에서 audio_stream_id2로 정의된 오디오 스트림, 즉, 전술한 오디오 스트림 #2(이하, 세컨더리 오디오 스트림이라고 한다. 예를 들면, 도 43의 예에서는, Secondary Audio라고 기술되어 있는 오디오 스트림(314)을, 세컨더리 오디오 스트림(314)이라고 한다)의 것을 말한다.
제4 종류의 스트림이란, 서브 패스로 참조되는 텍스트 자막 스트림(txtST)이나, DVD의 서브픽처와 같은 비트맵 자막을 실행 길이 부호화한 스트림(PG, Presentation Graphics stream) 등의 것을 말한다. 예를 들면, 도 43의 예에서는, Subtitle이라고 기술되어 있는 스트림(315)이, 제4 종류의 스트림의 일례이다. 그리고, 이하, 제4 종류의 스트림을, 즉, txtST나 PG 등을 통합하여, 서브타이틀 스트림이라고 한다. 그리고, 서브타이틀 스트림의 재생 위치(자막 등의 표시 위치)는, 특히 자 화면 내일 필요는 없고, 전체 화면 중의 어느 위치라도 된다. 그러므로, 도 43의 예에서는, 서브타이틀 스트림(315)은 자 화면(302)으로부터 벗어나도록 묘화되어 있다.
이상 설명한 바와 같이, 픽처인픽처 방법을 적용하는 애플리케이션을 실현하기 위해서는, 예를 들면, 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있 는 스트림의 조합의 정의, 즉, 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합의 정의가 필요하다.
또한, 복수개의 조합을 정의함으로써, 전체 화면(301)에 재생되는 프라이머리 비디오 스트림이나 프라이머리 오디오 스트림의 전환뿐만 아니라, 자 화면(302)에 재생되는 세컨더리 비디오 스트림의 전환이나, 서브타이틀 스트림의 전환도 용이하게 행할 수 있게 된다. 단, 그 전환 조작의 예에 대해서는, 도 46과 도 47을 참조하여 후술한다.
이와 같은 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 스트림의 조합의 정의는, 예를 들면, 도 44와 도 45에 나타낸 바와 같은 제7 STN_table에 의해 행할 수 있다. 즉, 도 44와 도 45는 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 기록 위치(stream_entry), 속성(stream_attribute), 및 조합을 정의하는 경우의 STN_table() 신택스의 제7 예(제7 STN_table())의 예를 나타낸 도면이다. 그리고, 도면 중, 전술한 도 41과 동일한 부분에 대해서는, 반복이 되므로 그 설명은 생략한다.
도 44와 도 45의 예에서는, 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합은 다음과 같이 정의된다. 즉, 최초에, 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 세컨더리 비디오 스트림이 1 이상 정의된다. 그리고, 1 이상의 세컨더리 비디오 스트림의 각각에 대하여, 동 시에 재생될 수 있는 오디오 스트림(프라이머리 오디오 스트림과 세컨더리 오디오 스트림)과 서브타이틀 스트림이 정의된다.
구체적으로는, 도 44에서, number_of_video_stream2_entries는 제7 STN_table() 중에서 엔트리되는(등록되는) video_stream_id2가 부여되는 스트림 수를 나타낸다. video_stream_id2는 세컨더리 비디오 스트림을 식별하기 위한 정보이며, video_stream_number2는 비디오 전환에 사용되는, 사용자로부터 보이는 세컨더리 비디오 스트림 번호이다.
도 45에서, 비디오 스트림 ID2(video_stream_id2)의 for 루프 중에서, 순번으로 stream_entry()마다 특정되는 1개의 비디오 엘리멘터리 스트림(세컨더리 비디오 스트림이 되는 비디오 엘리멘터리 스트림)에, 0부터 video_stream_id2가 부여된다.
이 때, video_stream_id2에 대하여, number_of_Audio_combinations_for_video2가 부여되고, 그 후의 for 문에서는, number_of_Audio_combinations_for_video2의 수만큼, audio_stream_id와 audio_stream_id2가 부여된다. number_of_Audio_combinations_for_video(2)와 그 후의 for 문은, 세컨더리 비디오 스트림과 동시 재생되는 오디오 스트림의 조합, 즉, audio_stream_id로 특정되는 프라이머리 오디오 스트림과, audio_stream_id2로 특정되는 세컨더리 오디오 스트림과의 조합을 정의하는 정보이다. video_stream_id2로 특정되는 세컨더리 비디오 스트림과 조합 가능한 오디오 스트림의 세트(프라이머리 오디오 스트림과 세컨더리 오디오 스트림과의 세트)의 수가, number_of_Audio_combinations_for_video2로 된다. 그리고, video_stream_id2로 특정되는 세컨더리 비디오 스트림과 조합 가능한 오디오 스트림의 세트로서, 프라이머리 오디오 스트림을 특정하는 audio_stream_id와 세컨더리 오디오 스트림을 특정하는 audio_stream_id2가, number_of_Audio_combinations_for_video2 후의 for 문으로 각각 정의된다.
또, 동일 video_stream_id2에 대하여, number_of_Subtitle_combinations_for_video2가 부여되고, 그 후의 for 문에서는, number_of_Subtitle_combinations_for_video2의 수만큼, PG_textST_stream_id가 부여된다. number_of_Subtitle_combinations_for_video2와 그 후의 for 문은, 세컨더리 비디오 스트림과 동시 재생되는 서브타이틀 스트림의 조합, 즉, PG_textST_stream_id로 특정되는 서브타이틀 스트림의 조합을 정의하는 정보이다. video_stream_id2로 특정되는 세컨더리 비디오 스트림과 조합 가능한 서브타이틀 스트림의 수가, number_of_Subtitle_combinations_for_video2로 된다. 그리고, video_stream_id2로 특정되는 세컨더리 비디오 스트림과 조합 가능한 서브타이틀 스트림을 특정하는 PG_textST_stream_id가, number_of_Subtitle_combinations_for_video2 후의 for 문으로 정의된다.
그리고, 도 35나 도 41을 참조하여 설명한 바와 같이, 각 ID 대신에 각 번호, 예를 들면, audio_stream_id 대신에, 오디오 스트림 번호(audio_stream_number)를 사용하거나, audio_stream_id2 대신에, 오디오 스트림 번호 2(audio_stream_number2)를 사용하도록 해도 된다. 비디오 스트림이나 서브 타이틀 스트림에 대해서도 동일하다.
도 44와 도 45에 나타낸 제7 STN_tabke에 의하면, video_stream_id2를 사용하여, 프라이머리 비디오 스트림과 동시 재생되는 세컨더리 비디오 스트림을 정의할 수 있고, 또한 그 video_stream_id2, 및 audio_stream_id, audio_stream_id2, 및 PG_textST_stream_id를 사용하여, 그 세컨더리 비디오 스트림과 동시 재생될 수 있는 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합을 정의할 수 있다. 즉, 프라이머리 비디오 스트림과 동시 재생될 수 있는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합을 정의할 수 있다.
따라서, 프라이머리 비디오 스트림과 동시 재생될 수 있는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합으로서, 모순되는 바와 같은 조합을 정의하지 않고 끝나므로, 사용자는 프라이머리 비디오 스트림과 동시 재생 가능한 스트림의 조합의 재생을 용이하게 선택할 수 있다.
구체적인 예를, 도 46과 도 47을 참조하여 설명한다. 도 46은 제7 STN_table이 이용된 경우의, 사용자에게 제공하는 프라이머리 오디오 스트림 또는 세컨더리 오디오 스트림에 대응하는 음성 신호, 세컨더리 비디오 스트림에 대응하는 영상 신호, 및 서브타이틀 스트림에 대응하는 자막 신호의 조합의 관계를 나타내는 스트림 넘버 테이블의 예를 나타낸 도면이다. 그리고, 도면 중, 음성 신호(오디오)와 자막 신호(서브픽처)라고 하는 기재에 대해서는, 도 26 또는 도 39과 동일하므로, 그 설명은 생략한다.
도 46에서는, PlayList의 Main Path를 구성하는 PlayItem의 제7 STN_table()에서 엔트리되는 세컨더리 비디오 스트림(video_stream_id2로 엔트리되는 세컨더리 비디오 스트림)의 각각에 V2_SN(Video2Stream Number: 세컨더리 비디오 스트림 번호라고도 함)이 부여된다.
구체적으로는, V2_SN=1에 비디오 2가 부여되고, V2_SN=2에 비디오 1이 부여되어 있다.
이 때, V2_SN=1의 비디오 2에 대해서는, 프라이머리 오디오 스트림으로서 오디오 2(도 45의 video_stream_id2가 비디오 2를 특정하는 ID인 경우의 for 문 중에서, audio_stream_id로 엔트리되는 프라이머리 오디오 스트림)가, 세컨더리 오디오 스트림으로서 오디오 4(도 45의 video_stream_id2가 비디오 2를 특정하는 ID인 경우의 for 문 중에서, audio_stream_id2로 엔트리되는 세컨더리 오디오 스트림)가, 서브타이틀 스트림으로서 서브픽처 3(도 45의 video_stream_id2가 비디오 2를 특정하는 ID인 경우의 for 문 중에서, PG_textST_stream_id로 엔트리되는 서브타이틀 스트림)이, 각각 조합 가능하게 되어 있다.
또, V2_SN=2의 비디오 1에 대해서는, 프라이머리 오디오 스트림으로서 오디오 1(도 45의 video_stream_id2가 비디오 1을 특정하는 ID인 경우의 for 문 중에서, audio_stream_id로 엔트리되는 프라이머리 오디오 스트림)이, 세컨더리 오디오 스트림으로서 오디오 4 또는 오디오 5(도 45의 video_stream_id2가 비디오 1을 특정하는 ID인 경우의 for 문 중에서, 2개의 audio_stream_id2의 각각으로 엔트리되 는 2개의 세컨더리 오디오 스트림의 각각)가, 서브타이틀 스트림으로서 서브픽처 1(도 45의 video_stream_id2가 비디오 1을 특정하는 ID인 경우의 for 문 중에서, PG_textST_stream_id로 엔트리되는 서브타이틀 스트림)이, 각각 조합 가능하게 되어 있다.
즉, 도 45의 video_stream_id2가 비디오 1을 특정하는 ID인 경우의 for 문 중에서, V2_SN=2의 비디오 1과 동시 재생 가능한 오디오 스트림의 세트로서, 다음의 제1 세트와 제2 세트가 각각 정의되어 있다. 제1 세트란, 프라이머리 오디오 스트림이 오디오 1이며, 세컨더리 오디오 스트림이 오디오 4인 세트를 말한다. 제2 세트란, 프라이머리 오디오 스트림이 오디오 1이며, 세컨더리 오디오 스트림이 오디오 5인 제2 세트를 말한다.
이러한 도 46의 스트림 넘버 테이블이 사용자에게 제시된 경우(여기에서는, 제시 형태는 특히 묻지 않는다), 사용자는 처음에 영화 본편 등과 동시 재생시키는 감독의 해설 등의 영상에 대응하는 세컨더리 비디오 스트림으로서 즉, 자 화면(도 43의 예에서는 자 화면(302))에 표시하게 하는 영상에 대응하는 세컨더리 비디오 스트림으로서, 비디오 2(VS_SN=1)와 비디오 1(VS_SN2) 중 어느 한쪽을 선택할 수 있다(그와 같은 선택 조작을 할 수 있다).
예를 들면, 세컨더리 비디오 스트림으로서 비디오 2(VS_SN=1)가 선택된 경우에는, 도 46에 나타낸 바와 같이, 그 비디오 2(VS_SN=1)와 동시 재생 가능한 조합은 오디오 2, 오디오 4, 및 서브픽처 3의 조합뿐이다. 따라서, 세컨더리 비디오 스트림으로서 비디오 2(VS_SN=1)가 선택된 시점에서, 사용자의 선택 조작은 종료 된다.
한편, 도 47에 나타낸 바와 같이, 세컨더리 비디오 스트림으로서 비디오 1(VS_SN=2)가 선택된 경우에는, 그 비디오 1(VS_SN=2)와 동시 재생 가능한 조합으로서는, 오디오 1, 오디오 4, 및 서브픽처 1의 제1 조합과, 오디오 1, 오디오 5, 및 서브픽처 1의 제2 조합이라고 하는 2 종류의 조합이 존재한다. 따라서, 세컨더리 비디오 스트림으로서 비디오 1(VS_SN=2)을 선택한 경우, 사용자는 또한 이러한 제1 조합과 제2 조합 중 어느 한쪽을 선택할 수 있다(그와 같은 선택 조작을 할 수 있다).
구체적으로는, 예를 들면, 여기에서는, 도 39에서 설명한 선택 조작과 동일하게, 사용자는 비디오 1(VS_SN=2)와 동시 재생시키는 스트림에 대하여(스트림 넘버 테이블 상의 대응하는 표시의 우측에 대하여), 재생을 선택할 때는, 「×」로부터 「o」으로 전환하는 한편, 재생을 선택하지 않을 때는, 「×」인 채 유지한다고 하는 선택 조작을 실행할 수 있다. 그리고, 도 39를 사용하여 설명한 경우와 동일하게, 「o」은 재생을 선택하는 상태를 나타내는 심볼로 되어 있는 한편, 「×」는 재생을 선택하고 있지 않은 상태를 나타내는 심볼로 되어 있다.
도 47의 예에서는, 이러한 선택 조작에 의해, 오디오 1, 오디오 4, 및 서브픽처 1의 제1 조합이 선택된 결과가 나타나 있다. 즉, 도 47에 나타낸 바와 같이, V2_SN=2의 비디오 1과 동시 재생되는 프라이머리 오디오 스트림으로서 오디오 1이 선택되므로, 그 선택 상태는, 「×」로부터 「o」으로 전환된다. 또, V2_SN=2의 비디오 1과 동시 재생되는 세컨더리 오디오 스트림으로서 오디오 4가 선택되므로 (오디오 5가 선택되지 않으므로), 오디오 4의 선택 상태는, 「×」로부터 「o」으로 전환되는 한편, 오디오 5의 선택 상태는 「×」인 채 유지된다. 또, V2_SN=2의 비디오 1과 동시 재생되는 서브타이틀 스트림으로서 서브픽처 1이 선택되므로, 그 선택 상태는 「×」로부터 「o」으로 전환된다.
즉, 이상의 일련의 선택 조작에 의해, 비디오 1, 오디오 1, 오디오 4, 및 서브픽처 1을 선택하고, 메인 비디오(프라이머리 비디오 스트림임)와 함께 재생 가능한 상태(그와 같은 재생을 선택하는 상태)로 할 수 있다.
그리고, 전술한 예에서는, 프라이머리 비디오 스트림과 동시 재생시키는 스트림의 선택 조작으로서, 세컨더리 비디오 스트림을 축으로 하는 조작, 즉, 먼저 세컨더리 비디오 스트림을 선택한 후, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림을 선택하는 조작에 대하여 설명하였다.
그러나, 이러한 선택 조작으로서, 전술한 예뿐만 아니라, 예를 들면, 도 39 등을 사용하여 전술한 조작과 동일하게 하여, 먼저 프라이머리 오디오 스트림을 선택한 후, 세컨더리 비디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림을 선택하는 조작을 채용해도 된다. 즉, 도 47의 스트림 넘버 테이블 중, A_SN=1인 오디오 2, A_SN=2인 오디오 1, 및 A_SN=3인 오디오 3 중 어느 것인가 1개를, 프라이머리 오디오 스트림으로서 먼저 선택한 후, 도 39 등을 사용하여 전술한 조작과 동일한 조작에 의해, 세컨더리 비디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림을 선택한다고 하는 선택 조작을 채용할 수도 있다.
또, 예를 들면, 먼저 서브타이틀 스트림을 선택한 후, 프라이머리 오디오 스 트림, 세컨더리 비디오 스트림, 및 세컨더리 오디오 스트림을 선택하는 조작을 채용할 수도 있다. 즉, 도 47의 스트림 넘버 테이블 중, S_SN=1인 서브픽처 3, S_SN=2인 서브픽처 1, 및 S_SN=3인 서브픽처 2 중 어느 것인가 1개를, 서브타이틀 스트림으로서 먼저 선택한 후, 도 47 중 도시는 되어 있지 않지만, 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림을 선택한다고 하는 선택 조작을 채용할 수도 있다.
그리고, 본 실시예에서는, 세컨더리 오디오 스트림 사용자의 전환 조작은 금지되어 있다. 그러므로, 도 47의 예에서는, 세컨더리 오디오 스트림에 대한 A_SN은 부여되어 있지 않다. 즉, 도 47의 예에서는, 오디오 1 내지 3이 프라이머리 오디오 스트림으로서 이용되고, 오디오 4, 5가 세컨더리 오디오 스트림으로서 이용되고 있다.
그런데, 이상 설명한 도 44와 도 45의 제7 STN_table()을 이용하는 신택스에 의해, 픽처인픽처 방법(도 43 참조)을 실현시키는 경우, Subpath_type의 종류로서, 전술한 도 11의 제1 예의 종류를 이용하면 예를 들면, 도 48에 나타낸 PlayList가 생성된다.
도 48의 예에서는, 메인 패스(Main path)를 구성하는 플레이 아이템(1)(PlayItem1)에 의해 참조되는 Clip AV 스트림 파일-0(메인 Clip AV 스트림 파일)에 포함되는 Video(비디오 스트림)와 Audio(오디오 스트림)의 각각이, 프라이머리 비디오 스트림과 프라이머리 오디오 스트림의 각각으로 하고 있다. 즉, STN_table에서, video_stream_id, audio_stream_id에 대응하는 stream_entry에서, type=1을 설정한 경우이다. 즉, 도 43의 예에 대응시키면, Clip AV 스트림 파일-0에 포함되는 Video와 Audio의 각각이, 프라이머리 비디오 스트림(311)과 프라이머리 오디오 스트림(312)의 각각에 대응한 Clip AV 스트림 파일-0에 포함되는 Video가 전체 화면(301)에 재생되는 동시에, Clip AV 스트림 파일-0에 포함되는 Audio가 재생 출력된다.
한편, 서브 패스(1)(Sub path-1)에 포함되는 서브 플레이 아이템(SubPlayItem: SPI)에 의해 참조되는 Clip AV 스트림 파일-1(서브 Clip AV 스트림 파일)에 포함되는 2ndVideo(비디오 스트림)가, 세컨더리 비디오 스트림이 되고, 또, 서브 패스(2)(Sub path-2)에 포함되는 서브 플레이 아이템(SPI)에 의해 참조되는 Clip AV 스트림 파일-1에 포함되는 2ndAudio(오디오 스트림)가, 세컨더리 오디오 스트림으로 하고 있다. 즉, STN_table에서, video_stream_id2, audio_stream_id2의 stream_entry에서, type=2를 설정한 경우이다. 즉, 도 43의 예에 대응시키면, Clip AV 스트림 파일-1에 포함되는 2ndVideo와 2ndAudio의 각각이, 세컨더리 비디오 스트림(313)과 세컨더리 오디오 스트림(314)의 각각에 대응하고, Clip AV 스트림 파일-1에 포함되는 2ndVideo가 자 화면(302)에 재생되는 동시에, Clip AV 스트림 파일-1에 포함되는 2nd Audio가 재생 출력된다.
단, Clip AV 스트림 파일-0에 포함되는 Audio를 프라이머리 오디오 스트림으로서 전체 화면(301)과 대응시켜 재생시키고, 또한 Clip AV 스트림 파일-1에 포함되는 2ndAudio를 세컨더리 오디오 스트림으로서 자 화면(302)과 대응시켜 재생시킨다고 하는 것은, 전술한 바와 같이, 그들 2개의 오디오 스트림에 대하여 믹싱 처리 가 행해진 결과 얻어지는 음성이 출력되는 것을 가리킨다.
이와 같이, 도 48의 예에서는, SubPath_type의 종류로서 도 11의 제1 예의 종류가 이용되며, 그 결과, 메인 패스, 서브 패스(1), 및 서브 패스(2)에 의해, 픽처인픽처 방법이 실현되고 있다.
그러나, 도 48의 예에서는, 프라이머리 비디오 스트림인 Clip AV 스트림 파일-0의 Video와 동시에 재생되는 세컨더리 비디오 스트림과 세컨더리 오디오 스트림의 각각은 동일한 Clip AV 스트림 파일-1내에 포함되는 2ndVideo와 2ndAudio의 각각임에도 불구하고, 별개의 서브 패스(1)와 서브 패스(2)의 각각으로 정의되어 있다. 왜냐하면, 도 11의 예에서는, 참조되는 ES(엘리멘터리 스트림)의 개수는 1개뿐이라고 하는 SubPath_type의 종류만 준비되어 있기 때문이다. 즉, 도 11의 예에서는, Audio, IG, Text, Video라고 하는 각 종류의 ES가, 동일한 Clip에 포함되는 Clip AV 스트림 파일에 포함되어 있는지 여부에 의하지 않고, ES 1개씩에 대하여, SubPath_type이 1개씩 항상 할당된다고 하는 SubPath_type의 종류만 준비되어 있기 때문이다.
즉, 도 48의 예에 따르지 않고, 도 11의 예의 SubPath_type의 종류가 이용되는 경우, 메인 패스로 참조되는 ES와 별도로, 재생 대상인 ES가 2개 이상 존재할 때는, 그들 2개 이상의 ES는 별개의 서브 패스로 각각 나어져, 즉, 2개의 다른 SPI의 각각으로서 정의되게 된다.
이 경우, 그들 2개 이상의 ES가 동일한 Clip에 포함되는 Clip AV 스트림 파일에 포함되어 있으면, 전술한 SubPlayItem_IN_time, SubPlayItem_OUT_time 등은 동일하게 됨에도 불구하고, 각각 개별적으로 가질(그 결과 몇 겹이나 가질) 필요가 생겨버려, SubPlayItem_IN_time, 및 SubPlayItem_OUT_time의 정보가 용장(冗長)으로 된다고 하는 제1 문제점이 발생한다.
또, 이 경우, 재생 대상인 ES마다 서브 패스를 정의하지 않으면 안되므로, PlayList의 구조가 필요 이상으로 복잡하게 된다고 하는 제2 문제점도 발생한다.
또한, 이러한 제2 문제점으로부터, 다음과 같은 제3 문제점도 발생한다.
즉, 예를 들면, 본 실시예에서는, 재생 장치(예를 들면, 전술한 도 36의 재생 장치(141)나 후술하는 도 53의 재생 장치(401))에는, 동시에 2개의 TS(즉, 2개의 Clip에 포함되는 각각의 TS)까지 밖에 읽을 수 없다고 하는 제한(묶음새)이 부과되어 있다. 이러한 제한이 부과된 재생 장치에서는, 이와 같은 복잡한 구조의 PlayList를 재생하려고 하면, 그 PlayList 내에 정의되어 있는 메인 패스와, 어느 쪽의 서브 패스를 조합하여 재생하면 되는 것인지를 즉시 결정할 수 없는, 즉, 그와 같은 조합을 결정하기 위해 복잡한 처리의 실행이 필요하게 된다고 하는 제3 문제점이 발생한다.
그래서, 본 발명인은 이러한 제1 내지 제3 문제점을 해결하기 위해, SubPath_type의 종류로서, 복수개의 ES를 취급할 수 있는 종류, 즉, 복수개의 ES를 동시에 참조 가능하게 하는 종류를 추가한다고 하는 방법을 또한 발명했다. 이러한 방법이 적용된 SubPath_type의 종류의 제2 예가 도 49에 나타나 있다.
즉, 도 49는 SubPath_type(서브 패스의 타입)의 종류의 제2 예로서, 도 11과는 상이한 예, 즉, 도 11의 예에도 존재하는 종류에 대하여, 이러한 제1 내지 제3 문제점을 해결 가능한 종류를 추가한 예를 설명하는 도면이다. 즉, 이러한 제1 내지 제3 문제점을 해결하기 위해서는, 예를 들면, 도 49에 나타낸 제2 SubPath_type을 채용하면 된다.
도 49에서, SubPath_type=0 내지 4는, 도 11의 대응하는 타입과 동일하게 되어 있으므로, 여기에서는 그 설명에 대해서는 생략한다.
단, SubPath_type=0 내지 4의 「Meaning」에 있어서, 도 49의 예에서는 「Out-of-mux」라고 하는 기술이 되어 있지만, 도 11의 예에서는 그 기술은 생략되어 있다. 그래서, 그 기술에 대하여 설명한다. 즉, 이 「Out-of-mux」라고 하는 기술은 서브 패스로 참조되는 ES가 포함되는 TS와, 메인 패스로 참조되는 ES가 포함되는 TS가 상이한 경우의 서브 패스의 타입(종류), 즉, 서브 패스로 참조되는 ES가, 메인 패스로 참조되는 플레이 아이템이 포함되는 TS로 다중화되어 있지 않은 서브 패스의 타입(종류)인 것을 나타내고 있다. 이하, 이러한 종류를, 메인 패스 TS 비다중형의 패스라고 한다.
또, SubPath_type=2, 3과 같이, 메인 패스로 참조되는 ES와 서브 패스로 참조되는 ES가 비동기인 경우, 그 서브 패스의 타입(종류)을, 이하, 비동기형 패스라고 한다. 한편, SubPath_type=4, 5와 같이, 메인 패스로 참조되는 ES와 서브 패스로 참조되는 ES가 동기하는 경우, 그 서브 패스의 타입(종류)을, 이하, 동기형 패스라고 한다.
SubPath_type=5는 Out-of-mux and AV Synchronized type of one or more elementary streams path(Primary audio/PG/IG/Secondary audio path). Out of mux and AV synchronized type of Picture-in-Picture presentation path which contains one or more elementary streams paths로 되어 있다. 즉, SubPath_type=5는 메인 패스 TS 비다중형, 또한 동기형 패스로서, 1개 이상의 ES(Primary audio/PG/IG/Secondary audio)의 패스나, 픽처인픽처 프리젠테이션 패스로 되어 있다.
즉, SubPath_type=5는 도 11을 사용하여 설명한 예에서의 SubPath_type=5, 6의 각각에서 나타나는 종류도 포함되고, 2nd Audio Presentation path(2번째의 오디오 프리젠테이션 패스) (2nd 오디오 스트림을 참조하기 위한 패스)나, 2nd Video Presentation path(2번째의 비디오 프리젠테이션 패스) (2nd 비디오 스트림을 참조하기 위한 패스)를 포함하는 것이다.
여기에서, 픽처인픽처 프리젠테이션 패스란, 전술한 픽처인픽처 방법(도 43 참조)에 있어서, 소정의 프라이머리 비디오 스트림(메인 패스로 참조되는 비디오 스트림)에 대한, 프라이머리 오디오 스트림 스트림, 세컨더리 비디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림 중 1 이상의 패스(그와 같은 서브 패스의 타입)인 것을 말한다.
SubPath_type=6은 Out-of-mux and AV non-Synchronized type of Picture-in-Picture presentation path which contains one or more elementary streams paths로 되어 있다. 즉, SubPath_type=6은 메인 패스 TS 비다중형, 또한 비동기형 패스로서, 픽처인픽처 프리젠테이션 패스(1 이상의 ES 패스)로 되어 있다.
SubPath_type=7은 In-mux type and AV Synchronized type of Picture-in- Picture presentation path which contains one or more elementary streams paths로 되어 있다.
여기에서, 「In-mux」라고 하는 기술은 서브 패스로 참조되는 ES가 포함되는 TS와, 메인 패스로 참조되는 1 이상의 ES가 포함되는 TS가 동일한 경우의 서브 패스의 타입(종류), 즉, 서브 패스로 참조되는 ES가, 메인 패스로 참조되는 ES를 포함하는 TS로 다중화되어 있는 서브 패스의 타입(종류)인 것을 나타내고 있다. 환언하면, 메인 클립에 포함되는 메인 TS에, 메인의 Clip AV 스트림과, 서브의 Clip AV 스트림이 포함되어 있는 상태이다. 이하, 이러한 종류를, 메인 패스 TS 다중형 패스라고 한다.
즉, SubPath_type=7은 메인 패스 TS 다중형, 또한 동기형 패스로서, 픽처인픽처 프리젠테이션 패스(1 이상의 ES 패스)로 되어 있다.
그리고, SubPath_type= 8-255는 예비(reserved)로 되어 있다.
도 49의 예의 Subpath_type의 종류를 이용함으로써, 새로 추가된 SubPath_type=5, 6, 7을 이용하는 것이 가능하게 된다. 여기에서, SubPath_type=7에서는, PlayItem에 의해 참조되는 MainTS, 즉, 메인 Clip AV 스트림에는, SubPath에 의해 참조되는 SubST도 포함된다. 그러므로, 도 17을 사용하여 설명한 Stream_entry()에 대신하여, type=3(그리고, 도 50에서의 type=3은 도 15를 사용하여 설명한 경우의 type=3과는 상이함)이 정의된, 도 50에 나타낸 제3 Stream_entry()가 사용된다.
즉, 제3 stream_entry()에서 정의되어 있는 type=3은 대응하는 PlayItem에서 SubPath_type=7의 경우에, MainClip에 포함되고, SubPath에 의해 참조되는 엘리멘터리 스트림을 식별하기 위한 것이다.
그리고, 도 50에서, 도 17과 동일한 부분에 대해서는, 그 설명을 적당히 생략한다.
즉, type=3에서는, SubPath가 MainPath와 동일 Clip을 참조하고, 환언하면, MainClip에 복수개의 엘리멘터리 스트림이 다중화되고, MainPath와 SubPath 모두 MainClip으로 다중화되어 있는 엘리멘터리 스트림 중 어느 하나를 참조하고 있는 경우에, SubPath_type=7에서, MainClip의 복수개의 엘리멘터리 스트림 중에서, SubPath에 의해 참조되는 1개의 엘리멘터리 스트림을 재생 시에 특정하기 위해, ref_to_stream_PID_of_MainClip에 의해, MainClip의 패킷 ID(PID)가 지정된다. 또, ref_to_SubPath_id에 의해 SubPath_id가 표시되고, 이 SubPath_id에 의해 도 9의 PlayList()로 정의된 SubPath가 특정되고, 이 Subpath로부터 대응하는 SubPlayItem이 호출됨으로써(도 10), 엘리멘터리 스트림의 재생 시간(In_time, Out_time) 등을 파악할 수(도 12) 있도록 되어 있다.
이와 같이, type(type1 내지 type3의 3개의 type)을 사용함으로써, PlayItem과 그것에 관련되어 재생되는 1개 이상의 SubPath가 준비되어 있는 경우에, 이 PlayItem이 참조하는 Clip이 또한 SubPath로부터 참조되고 있는 경우라도, Clip 중에서 1개의 엘리멘터리 스트림을 특정할 수 있다.
또, 이상 설명한 바와 같은 도 49의 예의 Subpath_type의 종류를 이용함으로써, 즉, 도 11의 예에도 존재한 SubPath_type=1 내지 4와 함께, 새로 추가된 복수 개(1 이상)의 엘리멘터리 스트림을 취급할 수 있는 SubPath_type=5, 6, 7을 이용함으로써, 픽처인픽처 방법(도 43 참조)을 실현시키는 경우의 PlayList로서, 도 48의 예의 같은 복잡한 구조의 PlayList 대신에, 예를 들면, 도 51에 나타낸 바와 같은 간단한 구조의 PlayList의 작성/이용이 가능하게 된다.
즉, 도 51의 예에서는, 메인 패스(Main path)에 포함되는 플레이 아이템(1)(PlayItem1)이 참조하는 Clip AV 스트림 파일-0에 포함되는 Video(비디오 스트림)와 Audio(오디오 스트림)의 각각이, 프라이머리 비디오 스트림과 프라이머리 오디오 스트림의 각각으로 하고 있다. 즉, 도 43의 예에 대응시키면, clip AV 스트림 파일-0에 포함되는 Video와 Audio의 각각이, 프라이머리 비디오 스트림(311)과 프라이머리 오디오 스트림(312)의 각각에 대응하고, clip AV 스트림 파일-0에 포함되는 Video가 전체 화면(301)에 재생되는 동시에, clip AV 스트림 파일-0에 포함되는 Audio가 재생 출력된다.
그리고, STN_table에서, video_stream_id, audio_stream_id, video_stream_id2, audio_stream_id2의 각각으로 stream_entry를 정의하고, 또한 도 50의 stream_entry에서, MainPath로 지정되고 MainClip에 존재하는 경우(type=1), SubPath로 지정하고, SubClip에 존재하는 경우, (type=2), MainClip에 존재하지만 SubPath로 지정하는 경우(type=3, 도 50)의 각각을 정의하고 있기 때문에, 프라이머리 오디오 스트림(audio_stream_id로 나타내는 오디오 스트림)이라도, SubPath로 지정되는 경우도 있을 수 있다. 또, 동일하게 하여, 본 구성에서는, 프라이머리 비디오 스트림(video_stream_id로 나타내는 비디오 스트림)도 SubPath로 지정되는 것도 가능하지만, 프라이머리 비디오 스트림이 전제(前提)한 AV 데이터라고 생각하고 있기 때문에, 프라이머리 비디오 스트림은 MainPath에 의해 지정되는 것으로 한다. 그리고, SubPath에 의해 프라이머리 비디오를 지정하는 경우에는, SubPath_type의 정의의 변경, 추가를 행하는 것만으로 된다.
또, 도 51의 예에서도, 프라이머리 비디오 스트림인 Clip AV 스트림 파일-0의 Video와 동시에 재생되는 세컨더리 비디오 스트림과 세컨더리 오디오 스트림의 각각은 동일한 Clip AV 스트림 파일-1 내에 포함되는 2ndVideo와 2ndAudio의 각각으로 되어 있다.
그래서, 도 51의 예에서는, 서브 패스 A(Sub path-A)의 타입으로서 전술한 SubPath_type=5, 즉, 메인 패스 TS 비다중형, 또한 동기형 패스로서, 픽처인픽처 프리젠테이션 패스가 채용되고 있다. 이로써, 서브 패스 A(Sub path-A)가 참조하는 서브 플레이 아이템(SPI)으로서, Clip AV 스트림 파일-1에 포함되는 2ndVideo와 2ndAudio의 2개의 ES를 동시에 참조 가능하게 된다. 그 결과, 도 43의 예에 대응시키면, 1개의 서브 패스 A(Sub path-A)만으로 참조되는 Clip AV 스트림 파일-1에 포함되는 2ndVideo와 2ndAudio의 각각이, 세컨더리 비디오 스트림(313)과 세컨더리 오디오 스트림(314)의 각각에 대응하여, Clip AV 스트림 파일-1에 포함되는 2ndVideo가 자 화면(302)에 재생되는 동시에, Clip AV 스트림 파일-1에 포함되는 2ndAudio가 재생 출력된다.
그 때, 서브 패스 A(Sub path-A)의 타입으로서, 전술한 SubPath_type=5가 채용되고 있는 경우, 세컨더리 비디오 스트림(313)과 세컨더리 오디오 스트림(314)은 프라이머리 비디오 스트림(311)과 동기하여 재생되게 된다.
환언하면, 세컨더리 비디오 스트림(313)과 세컨더리 오디오 스트림(314)을, 프라이머리 비디오 스트림(311)과 비동기로 재생하고 싶은 경우에는(또는 비동기로 재생할 필요가 있는 경우에는), 서브 패스 A(Sub path-A)의 타입으로서, 전술한 SubPath_type=6, 즉, 메인 패스 TS 비다중형, 또한 비동기형 패스로서, 픽처인픽처 프리젠테이션 패스(1 이상의 ES 패스)를 채용하면 된다.
이와 같이, 도 51의 예에서는, 도 49의 예의 Subpath_type의 종류가 채용된 결과, 메인 패스 외에 1개의 서브 패스(예를 들면, 도 50의 서브 패스 A)만으로, 픽처인픽처 방법이 실현되고 있다.
즉, 동일한 Clip AV 스트림 파일-1에 포함되는 2ndVideo와 2ndAudio의 각각을 세컨더리 비디오 스트림(313)과 세컨더리 오디오 스트림(314)으로서 이용한다고 하는 픽처인픽처 방법을 실현하는 경우, 도 11의 예의 Subpath_type의 종류를 이용하여 생성된 도 48의 예의 PlayList에서는, 동일한 Clip AV 스트림 파일-1에 포함되는 2ndVideo와 2ndAudio의 각각은 2개의 별개의 서브 패스로 참조되어 있었다. 이에 대하여, 도 49의 예의 Subpath_type을 이용하여 생성된 도 51의 예의 PlayList에서는, 동일한 Clip AV 스트림 파일-1에 포함되는 2ndVideo와 2ndAudio의 각각은 1개의 서브 패스만으로 참조 가능하도록 되어 있다.
그 결과, 2ndVideo와 2ndAudio의 각각에 대한, SubPlayItem_IN_time, SubPlayItem_OUT_time 등은 1개 가지면 되기 때문에, 전술한 제1 문제점을 해결하는 것이 가능하게 된다.
또, 도 48의 예와 도 51의 예의 PlayList를 비교하면 명백한 바와 같이, 그 구조를 간소화할 수 있으므로, 제2 문제점과 제3 문제점을 해결하는 것이 가능하게 된다.
또한, 도 49의 예의 Subpath_type의 종류 중 SubPath_type=7, 즉, 메인 패스 TS 다중형, 또한 동기형 패스로서, 픽처인픽처 프리젠테이션 패스(1 이상의 ES 패스)를 이용함으로써, 예를 들면, 도 52에 나타낸 바와 같은 PlayList를 작성하는 것이 가능하게 된다. 그 결과, 도 52의 예의 PlayList를 이용한 픽처인픽처 방법의 실현도 용이하게 가능하게 된다.
도 52의 예에서는, 메인 패스(Main path)에 포함되는 플레이 아이템(1)(PlayItem1)에 의해 참조되는 Main TS에는, Clip AV 스트림 파일-0(단, 도 51의 Clip AV 스트림 파일-0과는 상이한 Clip AV 스트림 파일)이 포함되어 있고, Clip AV 스트림 파일-0에는, PlayItem-1에 의해 참조되는 MainST와, SubPlayItem에 의해 참조되는 SubST가 포함되어 있다. 그리고, MainST에 포함되는 Video(비디오 스트림)와 Audio(오디오 스트림)의 각각이, 프라이머리 비디오 스트림과 프라이머리 오디오 스트림의 각각으로 된다. 즉, 도 43의 예에 대응시키면, Clip AV 스트림 파일-0에 포함되는 MainST의 Video와 Audio의 각각이, 프라이머리 비디오 스트림(311)과 프라이머리 오디오 스트림(312)의 각각에 대응하고, Clip AV 스트림 파일-0에 포함되는 Video가 전체 화면(301)에 재생되는 동시에, Clip AV 스트림 파일-0에 포함되는 Audio가 재생 출력된다.
또, 도 52의 예에서는, 프라이머리 비디오 스트림인 MainST의 Video와 동시 에 재생되는 세컨더리 비디오 스트림과 세컨더리 오디오 스트림의 각각은 동일 Main TS에 포함되는, Clip AV 스트림 파일-1에 포함되는 2ndVideo와 2ndAudio의 각각으로 된다.
이 경우, 도 52의 예의 PlayList를 작성하기 위해서는, 서브 패스 A(Sub path-A)의 타입으로서, SubPath_type=7을 채용하면 된다. 이로써, 서브 패스 A(Sub path-A)에 포함되는 서브 플레이 아이템(SPI)이 참조하는 ES로서, 메인 패스에서도 참조하고 있는 Main TS의 Clip AV 스트림 파일-0에 포함되는 SubST의 2ndVideo와 2ndAudio의 2개의 ES를 참조 가능하게 된다. 그 결과, 도 43의 예에 대응시키면, 서브 패스 A(Sub path-A)로 참조되는 Clip AV 스트림 파일-0에 포함되는 2ndVideo와 2ndAudio의 각각을, 세컨더리 비디오 스트림(313)과 세컨더리 오디오 스트림(314)의 각각에 대응하고, Clip AV 스트림 파일-0에 포함되는 2ndVideo를 자 화면(302)에 재생할 수 있는 동시에, Clip AV 스트림 파일-0에 포함되는 2nd Audio가 재생 출력되게 된다. 즉, 도 52에서의 경우에는, 메인 클립에 포함되는 메인 TS에, 메인 스트림인 MainST와 서브의 스트림인 SubST가 포함되어 있다.
그 밖에, 도 52에 나타낸 바와 같이, PlayItem-1에 대한 서브 패스로서, 서브 패스 A에 더하여, Clip AV 스트림 파일-1이 포함되어 있는 Main TS와는 상이한 TS(Sub TS)에 포함되어 있는 Clip AV 스트림 파일-1을 참조하는 서브 패스 B(Subpath-B)가 정의되어 있는 경우에는, 전술한 바와 같이, 본 실시예의 재생 장치는 2개의 TS를 동시에 판독하는 것이 가능하므로, 메인 TS에 포함되는 Video, Audio, 2ndVideo, 2ndAudio와 함께, 서브 TS에 포함되는 PG 등도 판독하는 것이 가 능하게 된다.
이상, 픽처인픽처 방법(도 43 참조)을 적용하기 위해 필요한 신택스의 예, 즉, 도 44와 도 45의 제7 STN_table()이나, 도 49의 예의 SubPath_type의 종류에 대하여 설명하였다.
이러한 픽처인픽처 방법을 실현하기 위해서는, 프라이머리 비디오 스트림과 세컨더리 비디오 스트림을 동시 재생할 수 있는 기능을 가지는 재생 장치, 예를 들면, 도 53에 나타낸 바와 같은 재생 장치의 적용이 필요하다.
다음에, 본 발명을 적용한 재생 장치의 상이한 예에 대하여 설명한다. 재생 장치(401)는 도 36을 사용하여 설명한 재생 장치(141)의 AV 디코더부(151)에 대신하여, AV 디코더부(403)가 형성되어 있는 이외는, 기본적으로, 도 36을 사용하여 설명한 재생 장치(141)와 동일한 구성을 가지는 것이다. 도 53은 AV 디코더부(403)의 구성예를 나타낸 블록도이다. 이 AV 디코더부(403)를 구비한 재생 장치(401)는 픽처인픽처 방법을 적용하여, 도 47을 사용하여 설명한 바와 같이, 1 화면 중, 전체 화면(301)에, 메인 패스로 참조되는 AV 스트림에 대응하는 영화 본편 등의 컨텐츠를 재생시키는 동시에, 전체 화면(301)에 배치되는 자 화면(302)에, 서브 패스로 참조되는 AV 스트림에 대응하는 영화 감독의 해설 등 다른 컨텐츠를 재생시키는 것이 가능하다.
도 53의 재생 장치(401)는 전술한 메인 패스와 서브 패스를 가지는 PlayList로서, 픽처인픽처 방법을 실현하기 위한 PlayList(예를 들면, 도 51이나 도 52의 예의 PlayList)에 따른 재생을 행할 수 있다.
그리고, 도 53에서, 도 36과 대응하는 부분(블록)에는 대응하는 부호가 부여되어 있어, 이들의 설명에 대해서는 적당히 생략한다.
도 53의 예의 재생 장치(401)에는, 도 36의 예의 재생 장치(141)와 동일한 기능과 구성을 가지는 스토리지 드라이브(22), 스위치(32), 및 컨트롤러(21)가 설치되어 있다. 단, 컨트롤러(21)의 기능은 추가 되어 있다. 추가된 기능의 상세한 것에 대해서는 후술한다. 또한, 도 53의 예의 재생 장치(401)에는, 도 36의 예의 재생 장치(141)의 AV 디코더부(151)와는 기능과 구성이 약간 상이한 AV 디코더부(403)가 형성되어 있다.
즉, 도 53의 예의 AV 디코더부(403)에는, 도 36의 예의 AV 디코더부(151)와 대략 동일한 기능과 구성을 가지는 버퍼(51) 내지 믹싱 처리부(101)가 형성되어 있는 외에, 또한 도 36의 예의 AV 디코더부(151)에는 설치되어 있지 않은 PID 필터(411) 내지 프리로드용 버퍼(414)가 설치되어 있다.
그리고, 「도 36의 예의 AV 디코더부(151)와 대략 동일한 기능과 구성을 가진다」고 한 바와 같이 「대략」이라고 기술한 것은 비디오 디코더(72)나 비디오 플레인 생성부(92)의 호칭이, 1st 비디오 디코더(72)나 1st 비디오 플레인 생성부(92)로 변경되어 있거나, PID 필터(56)의 출력이 1개 증가해 있거나 등 약간 상이한 바가 있기 때문이다.
이하, 도 53의 예의 AV 디코더부(403) 중, 도 36의 예의 AV 디코더부(151)와는 상이한 개소에 대하여 설명한다.
AV 디코더부(403)는 픽처인픽처 방법을 실현하기 위해, 프라이머리 비디오 스트림과 세컨더리 비디오 스트림을 디코드할 필요가 있다. 그러므로, 도 36의 예의 AV 디코더부(151)에 설치되어 있던 비디오 디코더(72)와 비디오 플레인 생성부(92)의 각각은 도 53의 예의 AV 디코더부(403)에서는, 프라이머리 비디오 스트림용의 1st 비디오 디코더(72)와 1st 비디오 플레인 생성부(92)의 각각으로서 설치되어 있다. 또한, 도 53의 예의 AV 디코더부(403)에는, 1st 비디오 디코더(72)와 1st 비디오 플레인 생성부(92)의 각각과 동일한 기능과 구성을 가지는, 세컨더리 비디오 스트림용의 2nd 비디오 디코더(412)와 2nd 비디오 플레인 생성부(413)의 각각이 설치되어 있다.
또, PID 필터(411)에는, 메인 Clip AV Stream의 비디오 스트림, 또는 서브 Clip AV Stream의 비디오 스트림이, PID 필터(161) 또는 PID 필터(56)를 통해 입력되어 온다. 그래서, PID 필터(411)는 입력된 비디오 스트림을, 그 PID(패킷 ID)에 따라, 후단의 1st 비디오 디코더(72) 또는 2nd 비디오 디코더(412)에 분배하여 출력한다. 즉, PID 필터(411)는 프라이머리 비디오 스트림이 입력된 경우에는, 그 프라이머리 비디오 스트림을 1st 비디오 디코더(72)에 공급한다. 이에 대하여, PID 필터(411)는 세컨더리 비디오 스트림이 입력된 경우에는, 그 세컨더리 비디오 스트림을 2nd 비디오 디코더(412)에 공급한다.
그리고, 본 실시예에서는, 프라이머리 비디오 스트림으로서 메인 Clip AV Stream의 비디오 스트림만이 이용되고 서브 Clip AV Stream의 비디오 스트림은 이용되지 않는 것으로 되어 있다. 단, 장래, 서브 Clip AV Stream의 비디오 스트림도 프라이머리 비디오 스트림으로서 이용될 수 있는 경우도 고려하여, PID 필 터(56)로부터 공급된 서브 Clip AV Stream의 비디오 스트림도 1st 비디오 디코더(72)에 공급될 수 있도록, PID 필터(411)가 구성되어 있다. 즉, Subpath에 의해 지정된 서브 Clip에 포함되는 비디오 스트림만을 재생하고, 비디오 스트림의 재생에 메인 Clip을 사용하지 않고, 오디오 스트림의 재생은 서브 Clip, 또는 메인 Clip을 사용하는 경우이다. 따라서, 비디오 스트림, 오디오 스트림의 재생에, 메인 클립을 사용하지 않고(MainPath를 사용하지 않고), SubClip만을 사용한(SubPath만을 사용한) 재생으로 하는 구성도 가능하다.
프리로드용 버퍼(414)는 인터랙티브 그래픽스 디코더(74)로부터 공급된 인터랙티브 그래픽스 스트림을 일시 기억한다. 즉, 전술한 바와 같이, 본 실시예에서는, 재생 장치(401)에는, 한번에 2개의 TS밖에 읽어낼 수 없다고 하는 제한이 부과되어 있다. 그래서, 재생 장치(401)는 인터랙티브 그래픽스 스트림을 미리 취득하여 둠으로써(프리로드하여 둠으로써), 비디오 스트림이나 오디오 스트림을 재생할 때, 프리로드해 둔 인터랙티브 그래픽스 스트림도 동시 재생할 수 있다고 하는 기능을 가지고 있다. 이러한 기능을 실현하기 위해, 즉, 프리로드된 인터랙티브 그래픽스 스트림을, 비디오 스트림이나 오디오 스트림이 재생되는 타이밍까지 보존해 두기 위해, 프리로드용 버퍼(414)가 도 53의 예의 AV 디코드부(403)에 형성되어 있는 것이다.
다음에, 이러한 도 53의 예의 재생 장치(401)가 실행하는 픽처인픽처 방법에 의한 처리의 일례로서, 프라이머리 비디오 스트림 등의 재생 중 등에, 재생 대상인 세컨더리 비디오 스트림 등을 전환하기 위해 필요한 일련의 처리(이하, 세컨더리 비디오 전환 처리라고 함)의 일례에 대하여, 도 54와 도 55의 플로차트를 참조하여 설명한다.
도 54의 스텝 S101에서, 컨트롤러(21)는 세컨더리 비디오 스트림 번호(ID라도 됨)의 순번 리스트와, 세컨더리 비디오 스트림에 조합되어 있는 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 리스트를, 도 44와 도 45를 사용하여 설명한 제7 STN_table()로부터 취득한다.
여기에서는, 이 스텝 S101의 처리 후, 취득된 리스트에 따라, 예를 들면, 전술한 도 46과 같은 스트림 넘버 테이블이 생성되고, 그 스트림 넘버 테이블 자체 또는 그것에 따라 생성된 소정의 GUI(Graphical User Interface) 화상이, 컨트롤러(21)에 의해 생성되고, 표시 장치로의 표시가 제어되어, 사용자에게 제시되는 것으로 한다. 그리고, 이로써, 처리는 스텝 S102로 진행하는 것으로 한다.
스텝 S102에서, 컨트롤러(21)는 사용자로부터의 세컨더리 비디오 스트림에 대한 전환의 지령을 접수한다.
즉, 전술한 도 46과 도 47을 사용하여 설명한 사용자의 전환 조작의 내용이, 스텝 S102에서, 사용자로부터의 세컨더리 비디오 스트림에 대한 전환의 지령으로서 컨트롤러(21)에 접수되게 된다.
스텝 S103에서, 컨트롤러(21)는 재생하고 있는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀의 조합 다음의 조합의 번호를 취득한다.
구체적으로는, 예를 들면, 도 46의 예의 스트림 넘버 테이블이 사용자에게 제시되었다고 하면, 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀의 조합으로서, 다음의 제1 조합 내지 제3 조합이 존재하게 된다. 즉, 제1 조합이란, 비디오 2, 오디오 2, 오디오 4, 서브픽처 3의 조합을 말한다. 제2 조합이란, 비디오 1, 오디오 1, 오디오 4, 서브픽처 1의 조합을 말한다. 제3 조합이란, 비디오 1, 오디오 1, 오디오 5, 서브픽처 1의 조합을 말한다. 그래서, 예를 들면, 여기에서는, 제1 조합, 제2 조합, 및 제3 조합 각각의 조합의 번호로서, 1, 2-1, 2-2의 각각이 부여되어 있는 것으로 한다. 그리고, 예를 들면, 여기에서는, 스텝 S102의 처리에서, 도 47의 예의 선택 조작 결과, 즉, 제2 조합의 선택 지령이 컨트롤러(21)에 접수된 것으로 한다. 이 경우, 스텝 S103의 처리에서는, 다음의 조합의 번호로서 2-1이 취득된다.
스텝 S104에서, 컨트롤러(21)는 stream_attribute()(도 18)에 기술되어 있는 내용에 따라, 취득한 번호(첫 회의 스텝 S104의 처리에서는, 직전의 스텝 S103의 처리에서 취득한 번호)에 대응하는 복수개의 스트림을 재생하는 기능을 가지는지 여부를 판정한다.
구체적으로는, 예를 들면, 오디오 스트림의 재생 기능에 주목하면, 도 47의 예의 선택 조작 결과, 즉, 제2 조합의 선택 지령이 컨트롤러(21)에 접수된 경우에는, 오디오 1과 오디오 4의 각각의 재생 기능을 가지는지 여부의 판정이 스텝 S104의 처리로서 실행된다.
또, 그 밖에, 비디오 스트림 등 다른 스트림의 재생 기능의 유무 판정도 스텝 S104의 처리로서 아울러 실행하는 것도 가능하다.
스텝 S104에서, 취득한 번호에 대응하는 복수개의 스트림이 재생하는 기능을 가지고 있지 않다고 판정한 경우, 컨트롤러(21)는 스텝 S105에서, 현재 조합의 번호의 다음 조합의 번호를 취득한다. 즉, 현재의 조합 번호로 특정되는 오디오 스트림 등을 재생하는 기능을 갖지 않은 경우에는, 그 조합 번호는 날아가고(재생 대상이 되지 않고), 다음의 조합 번호가 취득된다. 그 후, 처리는 스텝 S104로 복귀되어, 그 이후의 처리가 반복된다. 즉, 재생 장치(401) 자신이 재생하는 기능을 가지는 오디오 스트림 등을 특정하는 조합 번호가 취득될 때까지, 스텝 S104와 S105의 루프 처리가 반복된다.
스텝 S104에서, 취득한 번호(1회째의 처리의 경우에는 전술한 바와 같이 직전의 스텝 S103의 처리에서 취득된 번호이며, 2회째 이후의 처리의 경우에는 직전의 스텝 S105의 처리에서 취득된 번호임)에 대응하는 복수개의 스트림이 재생하는 기능을 가진다고 판정된 경우, 처리는 도 55의 스텝 S106으로 진행한다.
스텝 S106에서, 컨트롤러(21)는 Stream_entry()의 type에 따라, 취득한 번호에 대응하는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림 각각을 포함하는 Clip을 조사한다. 즉, 취득한 번호에 대응하는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림은 각각 메인 Clip에 있는지, 그렇지 않으면, 서브 Clip에 있는지가 확인된다.
스텝 S107에서, 컨트롤러(21)는 원하는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림 각각을 특정한다. 즉, 스텝 S107의 처리에서, 메인 Clip 또는 서브 Clip 중에서, 취득한 번호에 대응하는 원하는 각 스트림이 특정된다.
스텝 S108에서, 컨트롤러(21)는 스토리지 드라이브(22)에, 원하는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림 각각이 다중화되어 있는 Clip(메인 Clip 또는 서브 Clip)으로부터, 특정된 각각의 스트림을 판독하도록 지시하거나, 또는 로컬 스토리지(24)에 기록되어 있는 Clip으로부터, 특정된 각각의 스트림을 판독하여, AV 디코더부(403)에 공급시킨다. 대상이 되는 Clip이 기록 매체(11)에 기록되어 있는 경우, 스토리지 드라이브(22)는 이 지시에 따라, 기록 매체(11)에 기록되어 있는 대상이 되는 Clip으로부터, 특정된 스트림을 판독한다. 구체적으로는, 컨트롤러(21)는 스텝 S107의 처리에서 특정한 각각의 스트림을, 기록 매체(11)에 기록되어 있는 Clip으로부터 판독하도록 스토리지 드라이브(22)에 지시한다.
그리고, 컨트롤러(21)는 판독된 각각의 스트림을 AV 디코더부(403)에 공급하는 동시에, 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림을 재생하도록 AV 디코더부(403)에 지시한다. 구체적으로는, 컨트롤러(21)는 판독된 원하는 세컨더리 비디오 스트림을 2nd 비디오 디코더(412)에 디코드시키도록, 판독된 원하는 프라이머리 오디오 스트림을 1st 오디오 디코더(75-1)에 디코드시키도록, 판독된 원하는 세컨더리 오디오 스트림을 2nd 오디오 디코더(75-2)에 디코드시키도록, 판독된 원하는 서브타이틀 스트림을 프리젠테이션 그래픽스 디코더(73) 등에 디코드시키도록, 각각 지시한다.
스텝 S109에서, AV 디코더부(403)는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림을 디코드하여 출력하여고, 처리가 종료된다.
그 때, 프라이머리 오디오 스트림과 세컨더리 오디오 스트림에 대해서는, 전술한 바와 같이, 프라이머리 오디오 스트림과 세컨더리 오디오 스트림이 믹싱된 결과 얻어지는 오디오 신호가 출력되게 된다.
이와 같은 세컨더리 비디오 전환 처리의 결과, 도 43을 사용하여 설명한 픽처인픽처 방법이 실현된다. 즉, 도 43의 예에서는, 프라이머리 비디오 스트림(311)에 대응하는 영상이 전체 화면(311)에 표시(재생)되고 있는 한중간에, 스텝 S109의 처리에서 출력된 세컨더리 비디오 스트림(313)에 대응하는 영상이 자 화면(302)에 표시(재생)되고, 스텝 S109의 처리에서 출력된 서브타이틀 스트림(315)에 대응하는 자막 등이 전체 화면(311)의 소정의 위치에 표시(재생)되고, 스텝 S109의 처리에서 출력된 프라이머리 오디오 스트림(311)과 세컨더리 오디오 스트림(402)이 믹싱된 결과 얻어지는 음성이, 도 43에는 도시하지 않은 스피커로부터 출력(재생)된다.
이상 설명한 바와 같이, 도 44와 도 45의 예의 제7 STN_Table을 채용함으로써, 픽처인픽처 방법을 실현하는 것이 가능하게 된다.
이와 같은 픽처인픽처 방법을 실현하는 경우, 도 11의 예의 SubPath_type의 종류를 이용하여 생성되는 Playlist(예를 들면, 도 48 참조)를 이용하는 것도 가능하지만, 전술한 바와 같이, 동일한 Clip AV Stream에 포함되어 있는 세컨더리 비디 오 스트림이나 세컨더리 오디오 스트림 등은 각각 별개의 서브 패스로 나누어지는 것, 즉, 2개의 다른 SPI로서 정의되게 되어 버린다. 그 결과, 전술한 각종 문제점, 예를 들면, PlayList의 구조가 필요 이상으로 복잡하게 된다고 하는 문제점이 발생한다.
그래서, 이들 각종 문제점을 해결하는 경우에는, 동일 Clip AV Stream 내의 2 이상의 ES(세컨더리 비디오 스트림이나 세컨더리 오디오 스트림 등)를 1개의 서브 패스로 참조 가능하도록, 즉, 동일 Clip AV Stream 내의 2 이상의 ES를 1개의 SPI로서 정의할 수 있도록 한 SubPath_type의 종류, 즉, 예를 들면, 도 49를 사용하여 설명한 SubPath_type의 종류를 채용하면 된다.
단, PlayList의 작성자 측의 관점에 서면, 도 45의 예의 SubPath_type의 종류를 채용함으로써 간단한 구조의 PlayList를 작성할 수 있게 되었다고는 할 수 있고, 즉, 작성된 결과의 PlayList 구조가 간단하게 되었다고는 할 수 있고, 그와 같은 간단한 구조의 PlayList를 작성할 때까지는, 다음과 같은 곤란한 작업이 필요하게 된다. 즉, PlayList의 작성자는 픽처인픽처 방법을 실현하기 위해, 어떠한 종류의 스트림의 조합이 가능하며, 어떠한 종류의 스트림의 조합이 불가능한 것인가를 자기 자신이 판단한 후, 즉, 어떠한 종류의 서브 패스를 포함시키는가를 자기 자신이 판단한 후, PlayList를 작성하지 않으면 안된다고 하는 곤란한 작업이 필요하였다. 따라서, PlayList의 작성자 측으로부터, PlayList를 간단하게 작성하고 싶다고 하는 요망을 들 수 있게 되는 것은 상상하기 어렵지 않다.
따라서, 이러한 요망에 미리 따르기 위해, 본 발명인은 PlayList의 종류에 따라, 작성 가능(그 PlayList에 포함시키는 것이 가능한 서브 패스)을, 도 49를 사용하여 설명한 SubPath_type에 의해 제한한다고 하는 방법을 발명했다. 그리고, 이하, 이러한 방법을 서브 패스 제한 방법이라고 한다.
서브 패스 제한 방법을 적용함으로써, 1개의 PlayList에 포함시킬 수 있는 서브 패스가 한정되기 때문에, 작성자에게 있어서는, PlayList에 어떠한 서브 패스를 포함시키는가를 판단한 후 서브 패스를 작성하는 것이 용이하게 되고, 나아가서는, PlayList의 작성 자체도 용이하게 된다고 하는 효과를 얻는 것이 가능하게 된다.
이하, 서브 패스 제한 방법에 대하여, 상세하게 설명해 간다.
단, 서브 패스 제한 방법에서는, 재생 장치가 한번에 판독하는 것이 가능한 TS의 수에 의해, 그 제한 내용이 변화된다. 본 실시예에서는, 전술한 바와 같이, 재생 장치가 한번에 판독하는 것이 가능한 TS는 2개로 되어 있다. 그래서, 이하, 재생 장치가 한번에 판독하는 것이 가능한 TS는 2개인 경우의 서브 패스 제한 방법에 대하여 설명해 간다.
본 실시예에서는, PlayList는 Browsable Slideshow(비동기형)와, Movie Type/Time-based Slideshow(동기형)이라고 하는 2 종류로 대별된다. PlayList의 종류가 비동기형인가 또는 동기형인가 하는 구별은 그 PlayList에 의해 참조되는 Clip의 clip_Information_file에 포함되는 application_type(애플리케이션 타입)에 따라, 행하는 것이 가능하다.
application_type은 어느 Clip에 대한 Clip Information 파일 중의 ClipInfo()에 기술되어 있다. 단, 여기에서는, 설명의 간략상, ClipInfo()의 신택스의 설명에 대해서는 생략하고, 이하, 그 Clipinfo()에 기술될 수 있는 application_type의 종류에 대해서만, 도 56을 참조하여 설명한다.
즉, 도 56은 application_type의 종류의 예를 설명하는 도면이다.
도 56에 나타낸 바와 같이, application_type=0은 예비(reserved)로 되어 있다. application_type=1은 영화의 애플리케이션용 Main TS로 되어 있다. 여기에서 「Main TS」란, Playlist에 있어서 메인 패스에 의해 참조되는 PlayItem으로서의 Transport stream, 즉, Main TS를 가리키고 있다. application_type=2는 Time-based Slideshow용의 Main TS, 즉, 화상의 슬라이드 쇼용의 Main TS로 되어 있다. application_type=3은 Browsable Slideshow용의 TS, 즉, 비디오의 슬라이드 쇼용의 Main TS로 되어 있다.
application_type=4는 SubPath용의 Browsable Slideshow의 TS로 되어 있다. 이것은, 예를 들면, 전술한 application_type=3과 비동기로 재생되는 BGM(사운드) 데이터를 유지하는 Clip AV 스트림에 대한 Clip Info()에 부여된다. application_type=5는 SubPath의 인터랙티브 그래픽스용의 TS로 되어 있다. application_type=6은 SubPath의 텍스트 서브타이틀(텍스트 자막 데이터)용의 TS로 되어 있다. application_type=7은 1개 이상의 ES(엘리멘터리 스트림)를 포함하는 SubPath용의 TS로 되어 있다. application_type=8 내지 255는, 예비(reserved)로 되어 있다.
그리고, application_type=1 내지 application_type=6으로 나타나는 Clip AV Stream File은, 스토리지 드라이브(22)를 통해 기록 매체(11)로부터 취득되거나, 또는 로컬 스토리지(24)로부터 취득된다. 이에 대하여, application_type=7로 나타나는 Clip AV Stream File은, 로컬 스토리지(24)로부터 취득되고, 스토리지 드라이브(22)를 통해 기록 매체(11)로부터 취득되지 않는다.
그래서, 본 실시예에서는, PlayList에 의해 참조되는 Main TS에 대한 ClipInfo()에 기술되어 있는 application_type이, application_type=3인 경우, 그 PlayList는 Browsable Slideshow(비동기형)로 분류되고, application_type=1 or 2인 경우, 그 PlayList는 Movie Type/Time-based Slideshow(동기형)로 분류되는 것으로 한다.
이 경우, PlayList의 종류(비동기형 또는 동기형)에 대한, 그 PlayList가 가질 수 있는 SubPath(서브 패스)의 조합은 도 57에 나타낸 조합만 허가한다고 하는 제한이 서브 패스 제한 방법에 의해 부과되게 된다.
도 57에서, 「number of SubPaths」의 항목에는, PlayList에 의해 나타나는 Main TS가 가질 수 있는, 좌측의 「SubPath_type」의 항목에 나타나는 종류의 SubPath의 개수가 기술되어 있다.
또, 도 57에서의 「SubPath_type」의 항목의 각 기술치(記述値)(SubPath_type의 종류)는, 전술한 도 11의 예의 종류가 아니고, 도 49의 예의 종류에 대응하고 있다.
도 57에 나타낸 바와 같이, PlayList의 종류가 비동기형인 경우, 즉, application_type(of Main TS)=3인 Browsable slideshow의 경우, (1) 0개 이상의 SubPath_type=2의 SubPath, (2) 0개 이상의 SubPath_type=3의 SubPath만이 허가된다. 환언하면, (1)과 (2) 이외의 SubPath의 조합은 금지된다.
또, (2)의 조합이라도, application_type=3의 Main TS에 IG가 포함되는 경우에는, SubPath_type=3의 SubPath는 금지된다(도 57 중 *2 참조). 이것은 다음의 제약에 의한 것이다.
즉, IG의 관점에 서면, IG를 포함하는 PlayList는 다음의 제1 종류와 제2 종류로 대별된다. 제1 종류란, 참조되는 Main TS에 IG가 다중화되어 있어, 그 Main TS의 Audio/Video와 IG가 동기 재생된다고 하는 종류를 말한다. 제2 종류란, SubPath_type=3의 SubPath를 포함하고, IG는 프리로드된다(이 IG는 팝업 메뉴에 사용된다)고 하는 종류를 말한다. 그리고, 이 제2 종류의 PlayList를 재생 가능하게 하기 위해, 전술한 바와 같이, 도 53의 재생 장치(401)에는 프리로드용 버퍼(414)가 형성되어 있는 것이다.
또, 본 실시예의 재생 장치는 IG 디코더를 1개밖에 갖지 않기 때문에 구체적으로는, 예를 들면, 도 53의 재생 장치(401)는 인터랙티브 그래픽스 디코더(74)를 1개밖에 갖지 않기 때문에 다음의 제한이 부과되어 있다. 즉, 전술한 제1 종류의 PlayList에서는, IG 디코더가 Main TS의 IG를 디코드 중에, 다른 IG를 프리로드할 수 없다고 하는 제한이 부과되어 있다. 한편, 전술한 제2 PlayList에서는, IG 디코더 중에 프리로드된 제1 IG가 입력되어 있는 상태일 때, 다른 Main TS로부터의 제2 IG를 IG 디코더에 입력할 수 없다고 하는 제한이 부과되어 있다.
이상 때문에, Main TS로 다중화되어 있는 IG를 참조하는 STN_table()을 포함 하는 PlayList는 SubPath_type=3의 SubPath를 가질 수 없다고 하는 제약이 부과되게 된다. 이러한 제약 때문에, application_type=3의 MainTS에 IG가 포함되는 경우에는, SubPath_type=3의 SubPath는 금지된다고 한 것이다(도 57 중*2 참조).
한편, PlayList의 종류가 동기형인 경우, 즉, application_type(of Main TS)=1 or 2인 Movie Type/Time-based Slideshow의 경우, (3) 0개 이상의 SubPath_type=3의 SubPath, (4) 0개 이상의 SubPath_type=4의 SubPath, (5) 0개 이상의 SubPath_type=5의 SubPath, (6) 0개 이상의 SubPath_type=6의 SubPath, (7) 0개 또는 1개의 SubPath_type=7의 SubPath만이 허가된다. 환언하면, SubPath_type=2의 SubPath의 조합은 금지된다.
또, (3)의 조합이라도, application_type=3의 MainTS에 IG가 포함되는 경우, 또는 SubPath_type=5의 SubPath가 참조하는 TS에 IG가 포함되는 경우에는, SubPath_type=3의 SubPath는 금지된다(도 57 중 *1 참조). 이것도, 전술한 제약에 의한 것이다.
또한, 본 실시예에서는, 전술한 바와 같이, PlayList가 한번에 참조할 수 있는 Clip의 수, 즉, 재생 장치가 한번에 판독하는 것이 가능한 TS는, 많아도 2개로 되어 있다. 그래서, 동일한 PlayList에 의해 참조되는 ES가 많아도 2개의 Clip에 포함되어 있는 것, 즉, 동시에 재생되는 ES는, 많아도 2개의 Clip AV 스트림 파일로부터 동시에 참조되는 것을 보증하기 위해, 다음에, 나타나는 조건을 만족시킨다고 하는 제한이, 서브 패스 제한 방법에 의해 부과되어 있다.
즉, 서브 패스 제한 방법에 의해 부과되어 있는, STN_table()에 의해 참조되 는, primary_video_stream, primary_audio_stream, Text subtitle stream 이외의 PG_textST_stream, IG for Pop-up menu 이외의 IG_stream, secondary_video_stream, 및 secondary_audio_stream의 각각을 조합할 때의 조건이란, 다음과 같다.
어느 값의 primary_video_stream_number로 특정되는 ES, 어느 값의 primary_audio_stream_number로 특정되는 ES, 어느 값의 PG_textST_stream_number로 특정되는 ES, 어느 값의 IG_stream_number value로 특정되는 ES, 어느 값의 secondary_video_stream_number로 특정되는 ES, 어느 값의 secondary_audio_stream_number로 특정되는 ES에 있어서, 동시에 재생 가능한 조합은 많아도 2개의 PlayList에 의해 동시에 참조되는 Clip AV 스트림 파일에 저장되어 있을 필요가 있다.
그리고, STN_table()에 의해 참조되는 ES는, 3개 이상의 Clip AV 스트림 파일에 저장되어 있어도 되지만, 동시에 재생 가능한 ES는, 그 중 많아도 2개의 Clip AV 스트림 파일에 저장되도록 되어 있다.
또, PlayList 내에 있는 PlayItem(MainPath)과 SubPath의 수의 조합은 도 58에 나타낸 바와 같이, 다음의 (a) 내지 (c) 중 어느 하나의 조합일 필요가 있다고 하는 제한도 서브 패스 제한 방법에 의해 부과되어 있다. 즉, (a)의 조합이란, 1개의 PlayItem만의 조합(도 58중, 가장 위의 행의 조합)을 말한다. (b)의 조합이란, 1개의 PlayItem과 1개의 SubPath의 조합(도 58 중, 중앙의 행의 조합)을 말한다. (c)의 조합이란, 1개의 PlayItem과 1개 SubPath와 1개의 SubPath_type=7의 SubPath의 조합, 즉, 1개의 PlayItem과 2개 SubPath(단, 그 중 1개의 SubPath_type=7인 것)의 조합(도 58 중, 가장 아래의 행의 조합)을 말한다.
이상 설명한 각종 제한에 의한 결과로서, 소정의 종류의 PlayList에 대하여 작성 가능한 SubPath_type을 제한한다고 하는 방법이, 서브 패스 제한 방법의 일례이다.
환언하면, 서브 패스 제한 방법이란, PlayList의 종류(전술한 예에서는, Main TS의 application_type으로 구별되는 종류), 재생 장치가 한번에 판독하는 것이 가능한 TS의 수(전술한 예에서는 2개), 및 PlayList의 서브 패스(SubPath)로 참조되는 ES에 프리로드되는 IG가 포함되어 있는지 여부(전술한 예에서는 SubPath_type=3 등의 SubPath인지 여부)라고 하는 조건(제한)이 존재하고, 이들 조건을 만족시키도록, 그 PlayList에 포함시키는 SubPath를 결정하는, 나아가서는, 그와 같이 하여 결정한 SubPath를 포함하는 PlayList를 작성한다고 하는 방법이라고도 할 수 있다.
이하, 도 59 내지 도 62를 참조하여, 이러한 서브 패스 제한 방법에 의해 작성된 PlayList의 구체예에 대하여 설명한다.
도 59는 Browsable Slideshow(비동기형)의 PlayList로서, SubPath_type=3의 SubPath가 존재하지 않는 경우의 PlayList, 즉, SubPath_type=2의 Sub_Path-1 내지 Sub_Path-3만이 존재하는 경우의 PlayList의 일례를 나타내고 있다. 그리고, SubPath_type=3의 SubPath가 존재하지 않는 이유는, PlayList의 PlayItem-1/PlayItem-2가 참조하고 있는 Clip AV 스트림 파일-0(즉, Main TS)에 IG가 포함되 어 있기 때문이다. 그리고, 이 예는, 복수개의 정지 화상을 사용자 조작에 의해 연속하여 표시해 가는 Browsable Slideshow를 나타내고 있기 때문에, Clip AV 스트림 파일-0에 포함되는 「video」의 스트림은 정지 화상 데이터를 유지하고 있다.
도 59의 예의 PlayList를 작성하기 위해 이용된 제한(조건)의 내용은 다음과 같다. 즉, 도 57을 사용하여 전술한, 「(1) 0개 이상의 SubPath_type=2의 SubPath, (2) 0개 이상의 SubPath_type=3의 SubPath만을 허가한다」고 하는 제한과, 「(1)과 (2) 이외의 SubPath의 조합은 금지한다」고 하는 제한과, 「(2)의 조합이라도, application_type=3의 MainTS에 IG가 포함되는 경우에는, SubPath_type=3의 SubPath는 금지된다(도 57 중 *2 참조)」고 하는 제한이 이용되어, 도 59의 예의 PlayList가 작성되어 있다.
이와 같은 도 59의 예에 대하여, 도 60은 Browsable Slideshow(비동기형)의 PlayList로서, SubPath_type=3의 SubPath가 존재하는 경우의 PlayList, 즉, SubPath_type=2의 Sub_Path-1, 2에 더하여 또한, SubPath_type=3의 Sub_Path-3이 존재하는 경우의 PlayList의 일례를 나타내고 있다. 그리고, SubPath_type=3의 SubPath가 존재하는 이유는, PlayList의 PlayItem-1/PlayItem-2가 참조하고 있는 Main-ST의 Clip AV 스트림 파일-0에 IG가 포함되어 있지 않은 즉, SubPath_type=3의 SubPath에 의해, Clip AV 스트림 파일-0과는 상이한 Clip AV 스트림 파일-3의 IG를 참조하기 위해서이다.
도 60의 예의 PlayList를 작성하기 위해 이용된 제한(조건)의 내용은 도 59의 예의 전술한 제한 내용과 동일하다.
환언하면, 도 57 중 *2로 나타나는 제한, 즉, 「(2)의 조합이라도, application_type=3의 MainTS에 IG가 포함되는 경우에는, SubPath_type=3의 SubPath는 금지된다」고 하는 제한을 부과할 필요가 있는 경우의 PlayList의 예가, 도 59의 예이며, 그와 같은 제한을 부과할 필요가 없는 경우의 PlayList의 예가, 도 60의 예이다.
이와 같이, 도 59와 도 60은 Browsable Slideshow(비동기형)의 PlayList의 예를 나타내고 있다. 이에 대하여, 도 61로 도 62는 Movie Type / Time-based Slideshow(동기형)의 PlayList의 예를 나타내고 있다.
즉, 도 61은 동기형 PlayList 중, 세컨더리 비디오 스트림(2ndVideo)과 세컨더리 오디오 스트림(2ndAudio)이 Main TS(즉, Clip AV 스트림 파일-0)에 다중화되어 있지 않은 경우의 PlayList로서, SubPath_type=6의 Sub_Path-1, 2가 존재하는 경우의 PlayList의 일례를 나타내고 있다.
도 61의 예의 PlayList를 작성하기 위해 이용된 제한(조건)의 내용은 다음과 같다. 즉, 도 57을 사용하여 전술한, 「(6) 0개 이상의 SubPath_type=6의 SubPath를 허가한다」고 하는 제한이 이용되어, 도 61의 예의 PlayList가 작성되어 있다.
이와 같은 도 61의 예에 대하여, 도 62는 동기형 PlayList에 의해 참조되는 MainTS 즉, Clip AV 스트림 파일-0이, MainST와 SubST를 포함하고, 세컨더리 비디오 스트림(2ndVideo)과 세컨더리 오디오 스트림(2ndAudio)이 Main TS를 구성하는 Clip AV 스트림 파일-0에 SubST로서 다중화되어 있는 경우의 PlayList이며, 그러므로, SubPath_type=7의 Sub_Path-1이 존재하고, 또한 SubPath_type=5의 Sub_Path-2, 3이 존재하는 경우의 PlayList의 일례를 나타내고 있다.
도 62의 예의 PlayList를 작성하기 위해 이용된 제한(조건)의 내용은 다음과 같다. 즉, 도 57을 사용하여 전술한, 「(5) 0개 이상의 SubPath_type=5의 SubPath를 허가한다」고 하는 제한과 「(7) 0개의 SubPath와 SubPath_type=7의 SubPath를 허가한다」고 하는 제한이 이용되어, 도 62의 예의 PlayList가 작성되어 있다.
또, 이상 설명한 바와 같은 서브 패스 제한 방법에 의해 작성된 PlayList도, 예를 들면, 도 53의 재생 장치(401)에 의해 재생 가능하게 되어 있다.
예를 들면, 비동기형 PlayList의 경우, 즉, application_type=3인 Browsable slideshow의 PlayList인 경우, 재생 장치(401)는 그 PlayList를 다음과 같이 하여 재생할 수 있다. 즉, 재생 장치(401)는 PlayList가 1개 이상의 SubPath_type=3(Interactive graphics presentation menu)의 SubPaths를 참조하고 있는 경우, SubPath_type=3용의 Clip AV 스트림, 즉, 인터랙티브 그래픽스 스트림을 PlayList의 재생 전에 프리로드하여, 프리로드용 버퍼(414)에 축적시킨다. 또, 재생 장치(401)는 PlayList가 1개 이상의 SubPath_type=2의 SubPath를 참조하고 있는 경우, 1개씩 밖에 SubPath를 참조할 수 없으므로(한번에 판독하는 것이 가능한 TS는 2개이며, 그 중 1개는 MainPath에 의해 참조되는 MainTS이므로), SubPath_type=2의 1 이상의 SubPath 중 소정의 1개를 참조하여 재생한다.
그리고, Interactive graphics presentation menu에는, 사용자에 의한 ON/OFF의 조작 입력을 기초로, 표시하게하거나, 표시를 취소하거나 하는 것이 가능한 "Pop-up menu"와, 항상 표시되는 "Always-on"인 2 종류의 표시 방법이 준비되어 있고, application_type=3의 PlayList 재생 처리의 상세 예에 대해서는, 도 63, 도 64를 참조하여 후술한다.
또, 예를 들면, 동기형 PlayList의 경우, 즉, application_type=1 or 2인 Movie Type/Time-based Slideshow의 Clip을 포함하는 PlayList의 경우, 재생 장치(401)는 그 PlayList를 다음과 같이 하여 재생할 수 있다. 즉, 재생 장치(401)는 PlayList가 1개 이상의 SubPath_type=3 또는 SubPath_type=4의 SubPath를 참조하고 있는 경우, SubPath_type=3 또는 SubPath_type=4용의 Clip AV 스트림, 즉, 인터랙티브 그래픽스 스트림 또는 텍스트 서브타이틀 스트림을 PlayList의 재생 전에 프리로드하여, 프리로드용 버퍼(414) 또는 버퍼(54)에 축적시킨다. 또, 재생 장치(401)는 PlayList가 1개 이상의 SubPath_type=5 or 6의 SubPath를 참조하고 있는 경우, Player는 1개씩 밖에 SubPath를 참조할 수 없으므로(한번에 판독하는 것이 가능한 TS는 2개이며, 그 중 1개는 MainPath에 의해 참조되는 MainTS이므로), SubPath_type=5 or 6의 1 이상의 SubPath 중 소정의 1개를 참조하여 재생한다. 단, SubPath_type=7의 SubPath가 1 이상 포함되어 있는 경우에는, 그 SubPath는 Main TS에 포함되는 ES를 참조하고 있으므로, 재생 장치(401)는 SubPath_type=5 or 6의 1 이상의 SubPath 중 소정의 1개를 참조하여 재생하고 있는 한중간에, 또한 SubPath_type=7의 하나의 SubPath를 참조하여 재생할 수 있다.
그리고, application_type=1 or 2의 PlayList 재생 처리의 상세 예에 대해서는, 도 65 내지 도 68을 참조하여 후술한다.
다음에, 도 63 및 도 64의 플로차트를 참조하여, application_type=3의 Clip 을 포함하는 PlayList 재생 처리의 일례에 대하여 설명한다.
예를 들면, 도 53의 컨트롤러(21)는 재생 대상인 PlayList의 MainPath로 참조되는 Clip_information 파일 중의 clipinfo()에 포함되는 application_type을 조사하고, 그 조사에 의해 application_type=3인 것을 인식한 경우, application_type=3의 PlayList 재생 처리를 개시시킨다.
도 63의 스텝 S121에서, 컨트롤러(21)는 Main TS가 IG(인터랙티브 그래픽스 스트림)를 포함하는지 여부를 판정한다.
스텝 S121에서, Main TS가 IG를 포함하지 않는다고 판정된 경우, 처리는 도 64의 스텝 S126으로 진행한다. 단, 스텝 S126 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S121에서, Main TS가 IG를 포함한다고 판정된 경우, 처리는 스텝 S122로 진행한다.
스텝 S122에서, 컨트롤러(21)는 SubPath_type=3의 Sub Path가 존재하는지 여부를 판정한다.
스텝 S122에서, SubPath_type=3의 Sub Path가 존재하지 않는다고 판정된 경우, 처리는 도 64의 스텝 S126으로 진행한다. 단, 스텝 S126 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S122에서, SubPath_type=3의 Sub Path가 존재한다고 판정된 경우, 처리는 스텝 S123으로 진행한다. 스텝 S123에서, 컨트롤러(21)는 선택된 Sub Path(SubPath_type=3의 Sub Path)가 참조하는 Clip을 조사한다.
그리고, 컨트롤러(21)는 그 Clip으로부터, Sub Path에 의해 특정되는 스트 림, 즉, IG를 판독하도록 스토리지 드라이브(22)에 지시한다. 스토리지 드라이브(22)는 이 지시에 따라, 대상이 되는 IG를 판독한다. 또는, 컨트롤러(21)는 로컬 스토리지(24)로부터 대상이 되는 IG를 판독한다. 그리고, 컨트롤러(21)는 판독된 IG를 인터랙티브 그래픽스 디코더(74)에 디코드시키도록 지시한다. 이로써, 처리는 스텝 S124로 진행한다.
스텝 S124에서, 인터랙티브 그래픽스 디코더(74)는 판독된 IG를 디코드한다. 그리고, 스텝 S125에서, 인터랙티브 그래픽스 디코더(74)는 디코드된 IG를 프리로드용 버퍼(414)에 저장한다.
이와 같이 하여 스텝 S125의 처리가 종료되었을 때, 또는 전술한 바와 같이 스텝 S121 또는 S122의 처리에서 NO라고 판정되었을 때, 처리는 도 64의 스텝 S126으로 진행한다.
스텝 S126에서, 컨트롤러(21)는 SubPath_type=2의 Sub Path가 존재하는지 여부를 판정한다.
스텝 S126에서, SubPath_type=2의 Sub Path가 존재하지 않는다고 판정된 경우, 처리는 스텝 S129로 진행한다. 단, 스텝 S129 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S126에서, SubPath_type=2의 Sub Path가 존재한다고 판정된 경우, 처리는 스텝 S127로 진행한다. 스텝 S127에서, 컨트롤러(21)는 선택된 SubPath(SubPath_type=2의 Sub Path)가 참조하는 Clip을 조사한다.
그리고, 컨트롤러(21)는 그 Clip으로부터 SubPath에 의해 특정되는 스트림, 즉, 오디오 스트림을 판독하도록 스토리지 드라이브(22)에 지시한다. 스토리지 드라이브(22)는 이 지시에 따라, 대상이 되는 오디오 스트림을 판독한다. 또는, 컨트롤러(21)는 로컬 스토리지(24)로부터 대상이 되는 오디오 스트림을 판독한다. 그리고, 컨트롤러(21)는 판독된 오디오 스트림을, 예를 들면 2nd 오디오 디코더(75-2)에 디코드시키도록 지시한다. 이로써, 처리는 스텝 S128로 진행한다.
스텝 S128에서, 2nd 오디오 디코더(75-2)는 판독된 오디오 스트림을 디코드한다.
이와 같이 하여, 스텝 S128의 처리가 종료되었을 때, 또는 스텝 S126의 처리에서 NO라고 판정되었을 때, 처리는 스텝 S129로 진행한다.
스텝 S129에서, AV 디코더부(403)는 메인 Clip AV Stream을 디코드한다. 여기에서, 메인 Clip AV Stream이란, 재생 대상인 Playlist의 MainPath에 의해 참조되는 비디오 스트림이나 오디오 스트림 등의 것이며, Main TS에 포함되어 있다. 즉, AV 디코더부(403) 중, 1st 비디오 디코더(72)나 1st 오디오 디코더(75-1) 등이, 이 스텝 S129의 처리를 실행한다.
스텝 S130에서, AV 디코더부(403)는 디코드된 메인 Clip AV Stream과 디코드된 SubPath 스트림을 합성하여, 출력한다. 여기에서, 디코드된 SubPath 스트림이란, 도 63의 스텝 S124의 처리에서 디코드되고 스텝 S125의 처리에서 프리로드용 버퍼(414)에 저장된 IG나, 도 64의 스텝 S128의 처리에서 디코드된 오디오 스트림을 말한다.
스텝 S131에서, 컨트롤러(21)는 스텝 S130의 처리에서 합성된 스트림을 출력 중에, SubPath_type=2의 SubPath 전환 지시(사용자의 전환 조작)가 있었는지 여부를 판정한다.
스텝 S131에서, 합성된 스트림을 출력 중에, SubPath_type=2의 SubPath 전환 지시가 있었다고 판정된 경우, 처리는 스텝 S127로 복귀되어, 그 이후의 처리가 반복된다. 즉, 메인 Clip AV Stream과 합성되는 오디오 스트림이 전환된다.
이에 대하여, 스텝 S131에서, 합성된 스트림을 출력 중에, SubPath_type=2의 SubPath 전환 지시가 없었다고 판정된 경우, application_type=3의 PlayList 재생 처리가 종료된다.
다음에, 도 65 내지 도 68의 플로차트를 참조하여, application_type=1 or 2의 Clip을 포함하는 PlayList 재생 처리의 일례에 대하여 설명한다.
예를 들면, 도 53의 컨트롤러(21)는 재생 대상인 Playlist의 MainPath로 참조되는 Clip의 application_type을 조사하고, 그 조사 결과, application_type=1 or 2인 것을 인식한 경우, application_type=1 or 2의 PlayList 재생 처리를 개시시킨다.
도 65의 스텝 S141에서, 컨트롤러(21)는 Main TS가 IG(인터랙티브 그래픽스 스트림)를 포함하는지 여부를 판정한다.
스텝 S141에서, Main TS가 IG를 포함하지 않는다고 판정된 경우, 처리는 스텝 S146으로 진행한다. 단, 스텝 S146 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S141에서, Main TS가 IG를 포함한다고 판정된 경우, 처리는 스텝 S142로 진행한다.
스텝 S142에서, 컨트롤러(21)는 SubPath_type=3의 Sub Path가 존재하는지 여부를 판정한다.
스텝 S142에서, SubPath_type=3의 Sub Path가 존재하지 않는다고 판정된 경우, 처리는 스텝 S146으로 진행한다. 단, 스텝 S146 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S142에서, SubPath_type=3의 Sub Path가 존재한다고 판정된 경우, 처리는 스텝 S143으로 진행한다. 스텝 S143에서, 컨트롤러(21)는 선택된 SubPath(SubPath_type=3의 Sub Path)가 참조하는 Clip을 조사한다.
그리고, 컨트롤러(21)는 그 Clip으로부터, SubPath에 의해 특정되는 스트림, 즉, IG를 판독하도록 스토리지 드라이브(22)에 지시한다. 스토리지 드라이브(22)는 이 지시에 따라, 대상이 되는 IG를 판독한다. 또는, 컨트롤러(21)는 로컬 스토리지(24)로부터 대상이 되는 IG를 판독한다. 그리고, 컨트롤러(21)는 판독된 IG를, 인터랙티브 그래픽스 디코더(74)에 디코드시키도록 지시한다. 이로써, 처리는 스텝 S144로 진행한다.
스텝 S144에서, 인터랙티브 그래픽스 디코더(74)는 판독된 IG를 디코드한다. 그리고, 스텝 S145에서, 인터랙티브 그래픽스 디코더(74)는 디코드된 IG를 프리로드용 버퍼(414)에 저장한다.
이와 같이 하여 스텝 S145의 처리가 종료되었을 때, 또는 전술한 바와 같이 스텝 S141 또는 S142의 처리에서 NO라고 판정되었을 때, 처리는 스텝 S146으로 진행한다.
스텝 S146에서, 컨트롤러(21)는 SubPath_type=4의 Sub Path가 존재하는지 여부를 판정한다.
스텝 S146에서, SubPath_type=4의 Sub Path가 존재하지 않는다고 판정된 경우, 처리는 도 66의 스텝 S149로 진행한다. 단, 스텝 S149 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S146에서, SubPath_type=4의 Sub Path가 존재한다고 판정된 경우, 처리는 스텝 S147로 진행한다. 스텝 S147에서, 컨트롤러(21)는 선택된 SubPath(SubPath_type=4의 Sub Path)가 참조하는 Clip을 조사한다.
그리고, 컨트롤러(21)는 그 Clip으로부터, SubPath에 의해 특정되는 스트림, 즉, 텍스트 서브타이틀 스트림을 판독하도록 스토리지 드라이브(22)에 지시한다. 스토리지 드라이브(22)는 이 지시에 따라, 대상이 되는 텍스트 서브타이틀 스트림을 판독한다. 또는, 컨트롤러(21)는 로컬 스토리지(24)로부터 대상이 되는 텍스트 서브타이틀 스트림을 판독한다. 그리고, 컨트롤러(21)는 판독된 텍스트 서브타이틀 스트림을, Text-ST 콤퍼지션(76)에 디코드시키도록 지시한다. 이로써, 처리는 스텝 S148로 진행한다.
스텝 S148에서, Text-ST 콤퍼지션(76)은 판독된 텍스트 서브타이틀을 디코드한다.
이와 같이 하여 스텝 S148의 처리가 종료되었을 때, 또는 전술한 스텝 S146의 처리에서 NO라고 판정되었을 때, 처리는 도 66의 스텝 S149로 진행한다.
스텝 S149에서, 컨트롤러(21)는 SubPath_type=7의 Sub Path가 존재하는지 여 부를 판정한다.
스텝 S149에서, SubPath_type=7의 Sub Path가 존재하지 않는다고 판정된 경우, 처리는 도 67의 스텝 S152로 진행한다. 단, 스텝 S152 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S149에서, SubPath_type=7의 Sub Path가 존재한다고 판정된 경우, 처리는 스텝 S150으로 진행한다. 스텝 S150에서, 컨트롤러(21)는 선택된 SubPath(SubPath_type=7)의 Sub Path가 참조하는 Clip을 조사한다.
그리고, 컨트롤러(21)는 그 Clip으로부터, SubPath에 의해 특정되는 스트림, 즉, 비디오/오디오 스트림을 판독하도록 스토리지 드라이브(22)에 지시한다. 스토리지 드라이브(22)는 이 지시에 따라, 대상이 되는 비디오/오디오 스트림을 판독한다. 또는, 컨트롤러(21)는 로컬 스토리지(24)로부터 대상이 되는 비디오/오디오 스트림을 판독한다. 그리고, 컨트롤러(21)는 판독된 비디오/오디오 스트림을, 예를 들면 2nd 비디오 디코더(412)/ 2nd 오디오 디코더(75-2)에 디코드시키도록 지시한다. 이로써, 처리는 스텝 S151로 진행한다.
스텝 S151에서, 2nd 비디오 디코더(412)/ 2nd 오디오 디코더(75-2)는 판독된 비디오/오디오 스트림을 디코드한다.
이와 같이 하여 스텝 S151의 처리가 종료되었을 때, 또는 전술한 스텝 S149의 처리에서 NO라고 판정되었을 때, 처리는 도 67의 스텝 S152로 진행한다.
스텝 S152에서, 컨트롤러(21)는 SubPath_type=5의 Sub Path가 존재하는지 여부를 판정한다.
스텝 S152에서, SubPath_type=5의 Sub Path가 존재하지 않는다고 판정된 경우, 처리는 스텝 S156으로 진행한다. 단, 스텝 S156 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S152에서, SubPath_type=5의 Sub Path가 존재한다고 판정된 경우, 처리는 스텝 S153으로 진행한다. 스텝 S153에서, 컨트롤러(21)는 선택된 SubPath(SubPath_type=5의 Sub Path)가 참조하는 Clip을 조사한다.
스텝 S154에서, 컨트롤러(21)는 stream_attribute()(도 18)에 기술되어 있는 내용에 따라, 그 Clip 내에 있는 오디오 스트림을 재생하는 기능이 있는지 여부를 판정한다.
스텝 S154에서, Clip 내에 있는 오디오 스트림을 재생하는 기능이 없다고 판정된 경우, 처리는 스텝 S156으로 진행한다. 단, 스텝 S156 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S154에서, Clip 내에 있는 오디오 스트림을 재생하는 기능이 있다고 판정한 경우, 컨트롤러(21)는 그 Clip으로부터, SubPath에 의해 특정되는 스트림, 즉, 오디오 스트림을 판독하도록 스토리지 드라이브(22)에 지시한다. 스토리지 드라이브(22)는 이 지시에 따라, 대상이 되는 오디오 스트림을 판독한다. 또는, 컨트롤러(21)는 로컬 스토리지(24)로부터 대상이 되는 오디오 스트림을 판독한다. 그리고, 컨트롤러(21)는 판독된 오디오 스트림을, 예를 들면 2nd 오디오 디코더(75-2)에 디코드시키도록 지시한다. 이로써, 처리는 스텝 S155로 진행한다.
스텝 S155에서, 2nd 오디오 디코더(75-2)는 판독된 오디오 스트림을 디코드 한다.
이와 같이 하여 스텝 S155의 처리가 종료되었을 때, 또는 전술한 스텝 S152 또는 S154의 처리에서 NO라고 판정되었을 때, 처리는 스텝 S156으로 진행한다.
스텝 S156에서, 컨트롤러(21)는 SubPath_type=6의 Sub Path가 존재하는지 여부를 판정한다.
스텝 S156에서, SubPath_type=6의 Sub Path가 존재하지 않는다고 판정된 경우, 처리는 도 68의 스텝 S161로 진행한다. 단, 스텝 S161 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S156에서, SubPath_type=6의 Sub Path가 존재한다고 판정된 경우, 처리는 스텝 S157로 진행한다. 스텝 S157에서, 컨트롤러(21)는 선택된 SubPath(SubPath_type=6의 Sub Path)가 참조하는 Clip을 조사한다.
스텝 S158에서, 컨트롤러(21)는 stream_attribute()(도 18)에 기술되어 있는 내용에 따라, 그 Clip 내에 있는 오디오 스트림을 재생하는 기능이 있는지 여부를 판정한다.
스텝 S158에서, Clip 내에 있는 오디오 스트림을 재생하는 기능이 없다고 판정된 경우, 컨트롤러(21)는 그 Clip으로부터, SubPath에 의해 특정되는 스트림 중, 비디오 스트림을 판독하도록 스토리지 드라이브(22)에 지시한다. 스토리지 드라이브(22)는 이 지시에 따라, 대상이 되는 비디오 스트림을 판독한다. 또는, 컨트롤러(21)는 로컬 스토리지(24)로부터 대상이 되는 비디오 스트림을 판독한다. 단, 이 경우, 컨트롤러(21)는 오디오 스트림의 디코드 금지를 지시하고, 또한 판독된 비디오 스트림을, 예를 들면 2nd 비디오 디코더(412)에 디코드시키도록 지시한다. 이로써, 처리는 스텝 S160으로 진행한다. 단, 스텝 S160 이후의 처리에 대해서는 후술한다.
이에 대하여, 스텝 S158에서, Clip 내에 있는 오디오 스트림을 재생하는 기능이 있다고 판정한 경우, 컨트롤러(21)는 그 Clip으로부터, SubPath에 의해 특정되는 스트림, 즉, 비디오 스트림 및 오디오 스트림을 판독하도록 스토리지 드라이브(22)에 지시한다. 스토리지 드라이브(22)는 이 지시에 따라, 대상이 되는 비디오 스트림 및 오디오 스트림을 판독한다. 그리고, 컨트롤러(21)는 판독된 오디오 스트림을, 예를 들면 2nd 오디오 디코더(75-2)에 디코드시키도록 지시하고, 또한 판독된 비디오 스트림을, 예를 들면 2nd 비디오 디코더(412)에 디코드시키도록 지시한다. 이로써, 처리는 스텝 S159로 진행한다.
스텝 S159에서, 2nd 오디오 디코더(75-2)는 판독된 오디오 스트림을 디코드한다.
이와 같이 하여 스텝 S159의 처리가 종료되었을 때, 또는 전술한 스텝 S158의 처리에서 NO라고 판정되었을 때, 처리는 스텝 S160으로 진행한다.
스텝 S160에서, 2nd 비디오 디코더(412)는 판독된 비디오 스트림을 디코드한다.
이와 같이 하여 스텝 S160의 처리가 종료되었을 때, 또는 전술한 스텝 S156의 처리에서 NO라고 판정되었을 때, 처리는 도 68의 스텝 S161로 진행한다.
스텝 S161에서, AV 디코더부(403)는 메인 Clip AV Stream을 디코드한다. 여 기에서, 메인 Clip AV Stream이란, 재생 대상인 Playlist의 MainPath에 의해 참조되는 비디오 스트림이나 오디오 스트림 등의 것이며, Main TS에 포함되어 있다. 메인 Clip AV Stream이란, 예를 들면, 픽처인픽처 방법에서는, 프라이머리 비디오 스트림이나 프라이머리 오디오 스트림 등의 것을 말한다. 즉, AV 디코더부(403) 중, 1st 비디오 디코더(72)나 1st 오디오 디코더(75-1) 등이, 이 스텝 S161의 처리를 실행한다.
스텝 S162에서, AV 디코더부(403)는 디코드된 메인 Clip AV Stream과 디코드된 SubPath 스트림을 합성하여, 출력한다. 여기에서, 디코드된 SubPath 스트림이란, 도 65의 스텝 S144의 처리에서 디코드되고 스텝 S145의 처리에서 프리로드용 버퍼(414)에 저장된 IG, 도 65의 스텝 S148의 처리에서 디코드된 텍스트 서브타이틀, 도 66의 스텝 S151의 처리에서 디코드된 오디오 스트림, 도 67의 스텝 S155의 처리에서 디코드된 오디오 스트림, 도 66의 스텝 S159의 처리에서 디코드된 오디오 스트림, 및 도 66의 스텝 S160의 처리에서 디코드된 비디오 스트림 중 0 이상의 SubPath 스트림을 말한다.
스텝 S163에서, 컨트롤러(21)는 스텝 S162의 처리에서 합성된 스트림을 출력 중에 SubPath의 전환 지시(사용자의 전환 조작)가 있었는지 여부를 판정한다.
스텝 S163에서, 합성된 스트림을 출력 중에 SubPath의 전환 지시가 없었다고 판정된 경우, application_type=1 or 2의 PlayList 재생 처리가 종료된다.
이에 대하여, 스텝 S163에서, 합성된 스트림을 출력 중에 SubPath의 전환 지시가 있었다고 판정된 경우, 처리는 스텝 S164로 진행한다.
스텝 S164에서, 컨트롤러(21)는 그 전환 지시에 따라, 선택된 SubPath의 SubPath_type을 조사한다. 구체적으로는, STN_table에 정의되어 있는 1 이상의 secondary_audio_stream(audio_stream_id2) 또는 secondary_video_stream(video_stream_id2)으로부터, 특정한 secondary audio _stream 또는 secondary video _stream이 선택된 경우, STN_table을 기초로 그 특정한 secondary audio _stream 또는 secondary video _stream에 대응하는 stream entry가 조사되어, 이 stream entry에 기록되어 있는 ref_to_SubPath_id로부터 subpath_id가 취득되고, 이 subpath_id에 의해 도 9의 PlayList()의 Subpath가 특정되어, 도 10의 SubPath()에 의해, Subpath_type이 취득된다.
스텝 S165에서, 컨트롤러(21)는 스텝 S164의 조사 결과가 SubPath_type=3인지 여부를 판정한다.
스텝 S165에서, SubPath_type=3이라고 판정된 경우, 처리는 도 65의 스텝 S143으로 복귀되어, 처리가 반복된다. 즉, 메인 Clip AV Stream과 합성되는 IG가 전환된다.
이에 대하여, 스텝 S165에서, SubPath_type=3이 아니라고 판정된 경우, 처리는 스텝 S166으로 진행한다.
스텝 S166에서, 컨트롤러(21)는 스텝 S164의 조사 결과가 SubPath_type=4인지 여부를 판정한다.
스텝 S166에서, SubPath_type=4라고 판정된 경우, 처리는 도 65의 스텝 S147로 복귀되어, 처리가 반복된다. 즉, 메인 Clip AV Stream과 합성되는 텍스트 서브 타이틀이 전환된다.
이에 대하여, 스텝 S166에서, SubPath_type=4가 아니라고 판정된 경우, 처리는 스텝 S167로 진행한다.
스텝 S167에서, 컨트롤러(21)는 스텝 S164의 조사 결과가 SubPath_type=7인지 여부를 판정한다.
스텝 S167에서, SubPath_type=7이라고 판정된 경우, 처리는 도 66의 스텝 S150으로 복귀되어, 처리가 반복된다. 즉, 메인 Clip AV Stream과 합성되는 비디오/오디오 스트림이 전환된다.
이에 대하여, 스텝 S167에서, SubPath_type=7이 아니라고 판정된 경우, 처리는 스텝 S168로 진행한다.
스텝 S168에서, 컨트롤러(21)는 스텝 S164의 조사 결과가 SubPath_type=5인지 여부를 판정한다.
스텝 S168에서, SubPath_type=5라고 판정된 경우, 처리는 도 67의 스텝 S153으로 복귀되어, 처리가 반복된다. 즉, 메인 Clip AV Stream과 합성되는 오디오 스트림이 전환된다.
이에 대하여, 스텝 S168에서, SubPath_type=5가 아니라고 판정된 경우, 처리는 스텝 S169로 진행한다.
스텝 S169에서, 컨트롤러(21)는 스텝 S164의 조사 결과가 SubPath_type=6인지 여부를 판정한다.
스텝 S169에서, SubPath_type=6이라고 판정된 경우, 처리는 도 67의 스텝 S157로 복귀되어, 처리가 반복된다. 즉, 메인 Clip AV Stream과 합성되는 오디오 스트림이나 비디오 스트림이 전환된다.
이에 대하여, 스텝 S169에서, SubPath_type=6이 아니라고 판정된 경우, application_type=1 or 2의 PlayList 재생 처리가 종료된다.
이상 설명한 바와 같이, 픽처인픽처 방법을 적용하는 애플리케이션을 실현하기 위해서는, 예를 들면, 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 스트림의 조합의 정의, 즉, 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합의 정의가 필요하게 된다.
또한, 복수개의 조합을 정의함으로써, 전체 화면(301)에 재생되는 프라이머리 비디오 스트림이나 프라이머리 오디오 스트림의 전환뿐만 아니라, 자 화면(302)에 재생되는 세컨더리 비디오 스트림의 전환이나, 서브타이틀 스트림의 전환도 용이하게 행할 수 있게 된다.
도 44와 도 45를 사용하여 설명한 바와 같은 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 스트림의 조합을 정의하는 STN_table의 상이한 예, 즉, 제8 STN_table의 예를, 도 69 및 도 70을 사용하여 설명한다.
즉, 도 69와 도 70이란, 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합을 정의하는 데 있어서, 특히, 세컨더리 오디오 스트림과 프라이머리 오디오 스트림과의 조합, 세컨더리 비디오 스트림과 세컨더리 오디오 스트림과의 조합, 세컨더리 비디오 스트림과 픽처인픽처 애플리케이션용 프리젠테이션 그래픽스(PG) 또는 텍스트 자막의 조합을 정의하는 경우의 STN_table()의 신택스의 제8 예(제8 STN_table())의 예를 나타낸 도면이다. 제8 STN_table()을 참조하여 실행되는 재생 처리도 도 52를 사용하여 설명한 재생 장치(401)에서 실행 가능하다. 그리고, 도면 중, 전술한 도 44 및 도 45와 동일한 부분에 대해서는, 반복이 되므로 그 설명은 생략한다.
number_of_audio_stream2_entries의 8비트 필드는, STN_table에 등록되는 세컨더리 오디오의 수를 나타낸다.
세컨더리 비디오 스트림의 수는, audio_stream2_number=audio_stream2_id+1에 의해 구해진다.
number_of_video_stream2_entries의 8비트 필드는, STN_table에 등록되는 세컨더리 비디오의 수를 나타낸다.
세컨더리 비디오 스트림의 수는, video_stream2_number=video_stream2_id+1에 의해 구해진다.
또, 각 video_stream2_id의 stream_entry() 블록은 type 필드가 2에 설정되어 있지 않으면 안된다.
그리고, number_of_PiP_PG_textST_stream_entries의 8비트 필드는, STN_table에 등록되는 PiP 애플리케이션용 PG·텍스트 자막의 스트림 수를 나타낸다.
PIP 애플리케이션용 PG(프리젠테이션 그래픽스) 또는, 텍스트 자막의 스트림 수는, PiP_PG_textST_stream_number=PiP_PG_textST_stream_id+1에 의해 구해진다.
그리고, comb_info_Secondary_audio_Primary_audio()의 블록은 세컨더리 오디오와 프라이머리 오디오의 조합을 나타낸다.
comb_info_Secondary_audio_Primary_audio()의 블록 내에서, number_of_audio_stream_ref_entries의 8비트 필드는, 세컨더리 오디오 스트림과 조합할 수 있는 프라이머리 오디오 스트림의 수를 나타낸다. 그리고, audio_stream_id_ref의 8비트 필드는, 세컨더리 오디오 스트림과 조합할 수 있는 프라이머리 오디오 스트림의 ID를 나타낸다.
나중에, comb_info_Secondary_video_Secondary_audio()의 블록은 세컨더리 비디오 스트림과 세컨더리 오디오 스트림의 조합을 나타낸다.
comb_info_Secondary_video_Secondary_audio()의 블록 내에서, number_of_audio_stream2_ref_entries의 8비트 필드는, 세컨더리 비디오 스트림과 조합할 수 있는 세컨더리 오디오 스트림의 수를 나타낸다. 그리고, audio_stream_id2_ref의 8비트 필드는, 세컨더리 비디오 스트림과 조합할 수 있는 세컨더리 오디오 스트림의 ID를 나타낸다.
그리고, comb_info_Secondary_video_PiP_PG_textST()의 블록은 세컨더리 비디오 스트림과 픽처인픽처 애플리케이션용 PG·텍스트 자막의 스트림의 조합을 나타낸다.
comb_info_Secondary_video_PiP_PG_textST()의 블록 내에서, number_of_PiP_PG_textST_ref_entries의 8비트 필드는, 세컨더리 비디오 스트림과 조합할 수 있는 PIP 애플리케이션용 PG·텍스트 자막의 스트림 수를 나타낸다. 또, PiP_PG_textST_stream_id_ref의 8비트 필드는, 세컨더리 비디오 스트림과 조합할 수 있는 픽처인픽처 애플리케이션용 PG·텍스트 자막의 스트림 ID를 나타낸다.
그리고, 도 35, 도 41, 도 42, 또는 도 44 및 도 45를 참조하여 설명한 경우와 동일하게, 각 ID 대신에 각 번호, 예를 들면, audio_stream_id 대신에, 오디오 스트림 번호(audio_stream_number)를 사용하거나, audio_stream_id2 대신에, 오디오 스트림 번호 2(audio_stream_number2)를 사용하도록 해도 된다. 비디오 스트림이나 서브타이틀 스트림에 대해서도 동일하다.
도 69와 도 70에 의하면, 세컨더리 오디오와 프라이머리 오디오의 조합, 세컨더리 비디오와 세컨더리 오디오의 조합, 및 세컨더리 비디오와 픽처인픽처 애플리케이션용 PG·텍스트 자막의 조합을 정의할 수 있다.
따라서, 프라이머리 비디오 스트림(#1 비디오 스트림)과 동시 재생될 수 있는 세컨더리 비디오 스트림(#2 비디오 스트림), 프라이머리 오디오 스트림(#1 오디오 스트림), 세컨더리 오디오 스트림(#2 오디오 스트림), 및 서브타이틀 스트림(PG TextST 스트림)의 조합에 더하여, 픽처인픽처 애플리케이션용 PG·텍스트 자막 스트림(PiP PG TextST 스트림)의 조합으로서 모순되는 바와 같은 조합을 선택하는 것을 방지하도록 할 수 있다.
또, 재생 장치(401)에서는, 재생 장치(401)의 메모리(23)의 재기록 가능한 메모리 영역 중 일부에, 복수개의 레지스터가 설치되고, 이 레지스터에 설정되는 값을 기초로, 재생 처리가 실행된다.
레지스터 중, 예를 들면, 재생 장치(401)가 #2 오디오 스트림을 재생하는 것이 가능한지 여부가 설정되어 있는 레지스터의 값 등, 재생 장치(401) 고유의 기능에 대하여 설정되어 있는 것은 그 값이 변경되는 일은 없다. 이에 대하여, 레지스터 중 소정의 것의 설정은, 예를 들면, 사용자로부터 소정의 조작 입력을 받은 경우, 또는 내비게이션 프로그램에 의해 발생되는 내비게이션 커맨드에 의해 변경된다.
그리고, 내비게이션 커맨드는 스트림 데이터와는 개별적으로 기록 매체나 내부의 하드 디스크 등에 기록되고, 재생 장치(401)에 의해 프리로드되어 컨트롤러(21)에 공급되도록 이루어져 있어도 되고, 스트림 데이터에 매립되어 기록 매체나 내부의 하드 디스크 등에 기록되고, 재생 장치(401)에 의해 스트림 데이터가 재생되는 데 따라 로드되어, 컨트롤러(21)에 공급되도록 이루어져 있어도 된다.
레지스터에는, 재생 장치(401)에의 재생 처리에 필요한 각종 설정을 나타내는 값이 유지되어 있다. 레지스터에는, 예를 들면, 재생 장치(401)가 재생하는 서브타이틀 스트림(PG TextST 스트림)을 정의하는 레지스터, 재생 장치(401)가 재생하는 픽처인픽처 애플리케이션용 PG·텍스트 자막 스트림(PiP PG TextST 스트림)을 정의하는 레지스터, 재생 장치(401)가 재생 가능한 서브타이틀 스트림(PG TextST 스트림)의 스트림 ID를 나타내는 레지스터, 재생 장치(401)가 재생 가능한 서브타이틀 스트림(PG TextST 스트림)의 언어 코드 번호(또는 ID)를 나타내는 레지스터, 초기 설정되어 있는 언어의 ID를 나타내는 레지스터, 재생 장치(401)가 재생 가능한 서브타이틀 스트림(PG TextST 스트림)에 대응하는 나라의 코드 번호(또는 ID)를 나타내는 레지스터 등이 포함되는 것으로 하면 매우 적합하다.
픽처인픽처 애플리케이션이 기동되었을 때, 재생 장치(401)는 표시의 보기 쉬움을 고려하여, 서브타이틀 스트림(PG TextST 스트림)인가, 픽처인픽처 애플리케이션용 PG·텍스트 자막 스트림(PiP PG TextST 스트림)인가 중 어느 한쪽만 표시하게 해도 되고, 서브타이틀 스트림(PG TextST 스트림)과 픽처인픽처 애플리케이션용 PG·텍스트 자막 스트림(PiP PG TextST 스트림)의 양쪽을 표시할 수 있는 것으로 해도 된다.
도 71을 사용하여, 픽처인픽처 애플리케이션이 기동되었을 때, 재생 장치(401)가 프라이머리(즉, 픽처인픽처 애플리케이션용은 아님)의 서브타이틀 스트림(PG TextST 스트림)을 재생 표시하는지 여부, 및 재생 표시하는 경우에는 어느 스트림을 재생하는가를 결정하기 위해 참조하는 레지스터, 및 픽처인픽처 애플리케이션용 PG·텍스트 자막 스트림(PiP PG TextST 스트림)을 재생 표시하는지 여부, 및 재생 표시하는 경우에는 어느 스트림을 재생하는가를 결정하기 위해 참조되는 레지스터에 대하여 설명한다.
#1 레지스터는 프라이머리 PG TextST 스트림의 ID 번호를 나타내는 레지스터이다. 즉, #1 레지스터는 현재의 PlayItem의 STN_table에 등록되어 있는 프라이머리 PG TextST 중에서, 재생되는 PG TextST 스트림을 나타내는 것이다.
#1 레지스터에서, disp_flag(display_flag의 값이 0일 때, 프라이머리 PG TextST 스트림은 표시되지 않고, disp_flag의 값이 1일 때, 프라이머리 PG TextST 스트림은 표시된다. 또, #1 레지스터에서, PG TextST stream number는 현재의 PlayItem()의 STN_table()에 등록되어 있는 프라이머리 PG Text ST의 ID 번호이다.
그리고, #2 레지스터는 픽처인픽처 애플리케이션용 PG TextST 스트림의 ID 번호를 나타내는 레지스터이다.
#2 레지스터에서, disp_flag의 값이 0인 경우, 픽처인픽처 애플리케이션용 PG TextST 스트림은 표시되지 않고, disp_flag의 값이 1인 경우, 픽처인픽처 애플리케이션용 PG TextST 스트림은 표시된다. 또, PiP PG TextST stream number는 현재의 PlayItem()의 STN_table()에 등록되어 있는 픽처인픽처 애플리케이션용 PG TextST 스트림의 ID 번호를 나타낸다. 그리고, invalid_flag의 값이 0인 경우, 픽처인픽처 애플리케이션용 PG TextST 스트림의 ID 번호는 유효이며, 1의 경우에는, 무효이다.
그리고, PG TextST stream number에 0xFF가 등록되어 있는 경우, PG TextST 스트림이 선택되어 있지 않거나, 또는 존재하지 않는다. 그리고, PiP PG TextST stream number에 0xFF가 등록되어 있는 경우, 픽처인픽처용 TextST 스트림이 선택되어 있지 않거나, 또는 존재하지 않는다.
또, PG TextST stream number 또는 PiP PG TextST stream number에 0xFF 이외가 등록되어 있는 경우라도 invalid_flag나 disp_flag의 조합에 의해, 표시의 유효 또는 무효가 결정된다. 즉, #1 레지스터 및 #2 레지스터의 disp_flag=0으로 표시 무효 상태일 때는, 반드시, PG TextST stream number 또는 PiP PG TextST stream number가 0xFF에 설정되도록 되어 있는 것은 아니다. 예를 들면, #1 레지스터 또는 #2 레지스터의 disp_flag=0으로 표시 무효 상태일 때는, PG TextST stream number 또는 PiP PG TextST stream number에 0xFF 이외가 등록되어 있어도, PG TextST stream number 또는 PiP PG TextST stream number에 등록되어 있는 값은 무시되어, 표시되지 않도록 되어 있다.
이들 레지스터에 설정되어 있는 값을 참조함으로써, 재생 장치(401)에서 각각의 스트림의 재생 처리가 실행된다.
예를 들면, 재생 장치(401)가 픽처인픽처 애플리케이션이 기동되었을 때, 서브타이틀 스트림(PG TextST 스트림)인가, 픽처인픽처 애플리케이션용 PG·텍스트 자막 스트림(PiP PG TextST 스트림)인가 중 어느 한쪽만 표시하게 하는 것으로 하고 있는 경우, #1 레지스터의 PG TextST stream number에 설정되어 있는 값에 대응하는 프라이머리 PG TextST 스트림이 재생되므로, disp_flag의 값이 1이며, #2 레지스터의 invalid_flag가 1에 설정되어 있을 때, 또는 Secondary Video의 표시가 무효로 되어 있는, 즉, 픽처인픽처 표시가 실행되어 있지 않은 경우이다. #1 레지스터의 값이 변경된 경우, 프라이머리 PG TextST 스트림의 재생도 즉시 변경된다.
또, #1 레지스터의 PG TextST stream number에 나타난 값이 PlayItem의 STN_table에 등록되어 있는 PG TextST 스트림의 번호와 일치하지 않은 경우, 재생되는 프라이머리 PG TextST 스트림은 PG TextST 스트림 자동 선택 루틴에 의해 선택된다.
자동 선택 루틴에서는, 먼저, 재생 장치(401)에서 표시할 수 있는 언어, 또는 표시할 수 없는 언어를 나타내는 값이 설정되어 있는 레지스터가 참조되어, 재생 장치(401)가 표시 능력을 가지는 언어가 우선하여 선택되고, 다음에, 재생 장 치(401)에 설정되어 있는 언어 코드와 동등한 것이 우선되고, 그리고, 다음에, STN_table()에 등록되어 있는 순번으로 번호가 이른 것으로부터 순번으로 우선하여 선택된다.
그리고, #2 레지스터의 PiP PG TextST stream number에 설정되어 있는 값에 대응하는 픽처인픽처 애플리케이션용 PG TextST 스트림이 재생되는 것은, 세컨더리 비디오의 표시가 유효하게 되어 있고, 또한 #2 레지스터의 disp_flag의 값이 1, invalid_flag가 0에 설정되고, #2 레지스터에 등록되어 있는 픽처인픽처 애플리케이션용 PiP PG TextST의 ID 번호가, 현재의 PlayItem의 STN_table에 등록되어 있는 픽처인픽처 애플리케이션용 PiP PG TextST 스트림에 포함되어 있을 때이다.
그리고, 세컨더리 비디오의 표시가 유효하게 되어 있고, 또한 #2 레지스터의 disp_flag 값이 1, invalid_flag가 0에 설정되어 있는 데도, #2 레지스터에 나타난 값이 PlayItem의 STN_table에 등록되어 있는 PiP PG TextST 스트림의 번호와 일치하지 않는 경우, 재생되는 픽처인픽처 애플리케이션용 PG TextST 스트림은 PiP PG TextST 스트림 자동 선택 루틴에 의해 선택된다.
자동 선택 루틴에서는, 먼저, 재생 장치(401)에서 표시할 수 있는 언어, 또는 표시할 수 없는 언어를 나타내는 값이 등록된 레지스터가 참조되어, 재생 장치(401)가 표시 능력을 가지는 언어가 우선하여 선택되고, 다음에, 재생 장치(401)에 설정되어 있는 언어 코드와 동등한 것이 우선되고, 그리고, 다음에, STN_table()에 등록되어 있는 순번으로 번호가 이른 것으로부터 순번으로 우선하여 선택된다.
다음에, 도 72를 참조하여, 픽처인픽처 표시의 실행 시에, 프라이머리 PG TextST 스트림이 재생되는 경우의 예에 대하여 설명한다.
예를 들면, 픽처인픽처 표시가 실행되어 있지 않은 상태(도면 중, 「No PiP」라고 나타나 있는 상태)에서, #1 레지스터의 disp_flag가 1일 때, #2 레지스터의 설정에 관계없이, #1 레지스터의 PG TextST stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 PG TextST number=0x05의 PG TextST가 재생 표시된다.
그리고, 내비게이션 프로그램에 의해 커맨드가 발생되거나, 또는 사용자에 의해 소정의 조작 입력이 행해짐으로써, 픽처인픽처 표시의 실행이 개시(도면 중, PiP on)된다. 픽처인픽처 표시의 실행이 개시되어도, #2 레지스터의 invalid_flag가 1에 설정(예를 들면, 내비게이션 프로그램에 의해 발생되는 내비게이션 커맨드에 의해 invalid_flag가 1에 설정)되어 있으면, 사용자가 픽처인픽처 애플리케이션용 PiP PG TextST 스트림의 표시를 선택했다고 해도(disp_flag=1이었다고 해도), 픽처인픽처 애플리케이션용 PiP PG TextST 스트림은 표시되지 않는다. 즉, 픽처인픽처 표시가 실행되어 있는 상태(도면 중, 「PiP enabled」라고 나타나 있는 상태)에서도, #1 레지스터의 PG TextST stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 PG TextST number=0x05의 PG TextST가 재생 표시된다.
그리고, 내비게이션 커맨드는 스트림 데이터와는 개별적으로 기록 매체 등에 기록되고, 재생 장치(401)에 의해 프리로드되어 컨트롤러(21)에 공급되도록 이루어 져 있어도 되지만, 스트림 데이터에 매립되어 기록 매체 등에 기록되고, 재생 장치(401)에 의해 스트림 데이터가 재생되는 데 따라 로드되어 컨트롤러(21)에 공급되도록 이루어져 있으면, 커맨드의 실행 타이밍의 제어가 용이하여, 매우 적합하다.
또, invalid_flag를 설정할 수 있는 내비게이션 커맨드가 발생되는 경우의 예로서, 예를 들면, 컨텐츠 제작자가, 자동으로 invalid_flag가 변경되도록, 스트림 중(예를 들면, 인랙티브 그래픽 스트림(IG 스트림) 중)에 내비게이션 커맨드를 매립하도록 해도 되고, 예를 들면, IG 스트림에 버튼 정보 및 invalid_flag를 변경하는 제어 정보를 포함시켜 기록하고, 사용자에 의해 선택 조작 가능한 버튼을 스트림 재생 중에 표시 가능하도록 함으로써, 대응하는 버튼이 사용자에 의해 눌러지는(선택되는) 조작 입력에 따라, invalid_flag를 변경할 수 있는 바와 같은 구성이라도 된다.
그리고, 픽처인픽처 표시의 실행이 종료(도면 중, PiP off)되고, 다시, 픽처인픽처 표시가 실행되어 있지 않은 상태(도면 중, 「No PiP」라고 나타나 있는 상태)로 된 경우, #1 레지스터의 disp_flag가 1이면, #2 레지스터의 설정에 관계없이, #1 레지스터의 PG TextST stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 PG TextST number=0x05의 PG TextST가 재생 표시된다.
다음에, 도 73을 참조하여, 픽처인픽처 표시의 실행 시에, 픽처인픽처 애플리케이션용 PG TextST 스트림이 재생되는 경우의 예에 대하여 설명한다.
예를 들면, 픽처인픽처 표시가 실행되어 있지 않은 상태(도면 중, 「No PiP」라고 나타나 있는 상태)에서, #1 레지스터의 disp_flag가 1일 때, #2 레지스터의 설정에 관계없이, #1 레지스터의 PG TextST stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 PG TextST number=0x05의 PG TextST가 재생 표시된다.
그리고, 내비게이션 프로그램에 의해 커맨드(예를 들면, 스트림에 매립되어 있는 내비게이션 커맨드)가 발생되거나, 또는 사용자에 의해 소정의 조작 입력이 행해짐으로써, 픽처인픽처 표시의 실행이 개시(도면 중, PiP on)되어 #2 레지스터의 invalid_flag가 0에 설정되고, disp_flag가 1에 설정되어 있는 경우, #2 레지스터의 PiP PG TextST stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 PiP PG TextST number=0x02의 픽처인픽처 애플리케이션용 PiP PG TextST 스트림이 표시된다. 그리고, 사용자가 픽처인픽처 애플리케이션용 PiP PG TextST 스트림의 표시를 선택하지 않는 경우(disp_flag=0의 경우), 픽처인픽처 애플리케이션용 PiP PG TextST 스트림은 표시되지 않는다.
그리고, 픽처인픽처 표시의 실행이 종료(도면 중, PiP off)되고, 다시, 픽처인픽처 표시가 실행되어 있지 않은 상태(도면 중, 「No PiP」라고 나타나 있는 상태)로 된 경우, #1 레지스터의 disp_flag가 1이면, #2 레지스터의 설정에 관계없이, #1 레지스터의 PG TextST stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 PG TextST number=0x05의 PG TextST가 재생 표시된다.
그리고, 도 72 및 도 73에서, PiP PG TextST stream number에 0xFF가 등록되어 있는 경우, TextST 스트림이 선택되어 있지 않거나, 또는 존재하지 않는다. 예를 들면, PiP PG TextST stream number에 0xFF 이외가 등록되어 있는 경우라도 invalid_flag나 disp_flag의 조합에 의해, 표시의 유효 또는 무효가 결정된다. 즉, invalid_flag=1이고 표시 무효 상태일 때는, PiP PG TextST stream number에 0xFF 이외가 등록되어 있어도, PG TextST stream number 또는 PiP PG TextST stream number에 등록되어 있는 값은 무시되어, 표시되지 않도록 되어 있다.
또, 도 72, 도 73의 예에서는, 프라이머리 비디오의 화상(자막) 정보에 대한 #1의 레지스터와, 세컨더리 비디오(PiP)의 화상(자막) 정보에 대한 #2의 레지스터를 나누어 설정하고 있지만, 레지스터를 1개로 해도 된다.
또한, 이 예에서의 2개의 disp_flag를 1개로 하여, 프라이머리 비디오의 화상(자막) 스트림인 PG TextST stream, 또는 세컨더리 비디오(PiP)의 화상(자막) 스트림인 PiP PG_TextST_stream의 표시를 하는지 여부의 flag, 즉, 「화상 정보를 나타내는지 여부를 나타내는 flag」로 해도 된다. 이 경우, invalid_flag를 프라이머리 비디오 화상 정보 또는 PiP 화상 정보의 어느 화상의 표시를 행할 것인지를 결정하는 flag로 하는 구성으로 한다.
다음에, 도 74의 플로차트를 참조하여, PiP(픽처인픽처)를 포함한 애플리케이션의 PG TextST 재생 처리에 대하여 설명한다.
스텝 S301에서, 컨트롤러(21)는 #1 레지스터에 설정되어 있는 PG TextST 번호(PG TextST stream number)로부터, 대응하는 PG TextST를 현재의 PlayItem의 STN_table()로부터 조사한다.
스텝 S302에서, 컨트롤러(21)는 원하는 PG TextST를 특정하여, 기록 매체(11), 또는 로컬 스토리지(24)에 기록되어 있는 Clip으로부터, 특정된 스트림을 판독하고, disp_flag 등에 따라 재생한다.
예를 들면, 컨트롤러(21)는 #1 레지스터의 disp_flag가 1일 때, #1 레지스터의 PG TextST stream number에 설정되어 있는 값을 참조하여, STN_table()에 등록되어 있는 PG TextST number의 PG TextST를 판독하고, AV 디코더부(403)에 공급한다. 판독된 PG TextST는 각 버퍼, PID 필터, 스위치 등의 처리에 의해, 프리젠테이션 그래픽스 플레인 생성부(93)에 공급되어, 렌더링 화상인 프리젠테이션 그래픽스 플레인이 생성되고, 비디오 데이터 처리부(96)에 공급되어, 프라이머리 비디오 스트림 등과 합성되고, 대응하는 음성 데이터와 함께 재생 출력된다.
스텝 S303에서, 컨트롤러(21)는 픽처인픽처 표시를 개시(PiP를 ON으로)한다.
여기에서, 픽처인픽처 표시가 메인 패스에 동기하여 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 그 픽처인픽처에 의해 재생되는 비디오 스트림을 나타낸 도 12 SubPlayItem의 IN_time, Out_time으로 나타나는, 소정의 타이밍에서 실행된다. 이에 대하여, 픽처인픽처 표시가 메인 패스와, 비동기로 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력, 또는 내비게이션 커맨드에 의해 설정된다.
스텝 S304에서, 컨트롤러(21)는 스트림에 매립되어 있거나 또는, 스트림과는 상이한 위치에 기억되어 프리로드되어 있는 Navigation Command(내비게이션 커맨드) 등에 의해, 필요에 따라, #2 레지스터의 invalid_flag의 설정값을 변경한다.
스텝 S305에서, 컨트롤러(21)는 #2 레지스터에서, invalid_flag=0(PiP PG TextST 유효)인지 여부를 판단한다.
스텝 S305에서, invalid_flag=0이라고 판단된 경우, 스텝 S306에서, 컨트롤러(21)는 #2 레지스터에서 disp_flag=1(PiP PGTextST 표시)인지 여부를 판단한다. 즉, 컨트롤러(21)는 픽처인픽처 표시가 메인 패스와 비동기로 설정되어 있는 경우, 픽처인픽처 표시가 사용자의 조작 입력에 의해 지령되어, #2 레지스터의 disp_flag의 값이 1에 설정되어 있는지 여부를 판단한다.
그리고, 스텝 S305의 처리와, 스텝 S306의 처리에서는, 어느 판단이 먼저 행해지도록 해도 된다.
스텝 S306에서, #2 레지스터의 disp_flag=1이라고 판단된 경우, 스텝 S307에서, 도 75의 플로차트를 사용하여 후술하는 PiP PG TextST 표시 처리가 실행되고, 처리는 후술하는 스텝 S311로 진행한다.
그리고, 이 때, #1 레지스터에서, disp_flag=1에 설정되어 있는 경우, 픽처인픽처 애플리케이션용 PiP PG TextST 스트림과 함께, 프라이머리 PG TextST 스트림을 표시하도록 해도 상관없다.
스텝 S305에서, invalid_flag=0이 아니라(즉, invalid_flag=1이라)고 판단된 경우, 또는 스텝 S306에서, disp_flag=1이 아니라(즉, disp_flag=0이라)고 판단된 경우, 스텝 S308에서, 컨트롤러(21)는 #1 레지스터에서, disp_flag=1(PGTextST 표 시)인지 여부를 판단한다.
스텝 S308에서, #1 레지스터의 disp_flag=1이라고 판단된 경우, 스텝 S309에서, 컨트롤러(21)는 #1 레지스터에 설정되어 있는 PG TextST 번호(PG TextST stream number)로부터 대응하는 PG TextST를 현재의 PlayItem의 STN_table()로부터 조사하고, 재생해야 할 PG TextST를 특정하여, 표시하게 하고, 처리는 후술하는 스텝 S311로 진행한다. 그리고, disp_flag를 1개로 하여, 프라이머리 비디오의 화상(자막) 스트림인 PG TextST stream, 또는 PiP의 화상(자막) 스트림인 PiP PG_TextST_stream의 표시를 하는지 여부를 나타내는 flag, 즉, 「화상 정보를 나타내는지 여부를 나타내는 flag」로 한 경우, 스텝 S306 및 스텝 S308의 처리에서는, 동일 disp_flag가 참조된다.
예를 들면, 컨트롤러(21)는 #1 레지스터의 disp_flag가 1일 때, #1 레지스터의 PG TextST stream number에 설정되어 있는 값을 참조하여, STN_table()에 등록되어 있는 PG TextST number의 PG TextST를 판독하고, AV 디코더부(403)에 공급한다. 판독된 PG TextST는 각 버퍼, PID 필터, 스위치 등의 처리에 의해, 프리젠테이션 그래픽스 플레인 생성부(93)에 공급되어, 렌더링 화상인 프리젠테이션 그래픽스 플레인이 생성되고, 비디오 데이터 처리부(96)에 공급되어, 프라이머리 비디오 스트림 등과 합성되고, 대응하는 음성 데이터와 함께 재생 출력된다.
스텝 S308에서, disp_flag=1이 아니라(즉, disp_flag=0이라)고 판단된 경우, 스텝 S310에서, 컨트롤러(21)는 PG, TextST의 표시 없음(예를 들면, 전체 화면(301) 및 자 화면(302)의 어느 쪽에 대응하는 자막도 표시되지 않는 상태)으로 하고, 처리는 후술하는 스텝 S311로 진행한다.
스텝 S307, 스텝 S309, 또는 스텝 S310의 처리 종료 후, 스텝 S311에서, 컨트롤러(21)는 픽처인픽처(PiP) 표시가 종료되는지 여부를 판단한다.
전술한 바와 같이, 픽처인픽처 표시가 메인 패스에 동기하여 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력에 관계없이, 소정의 타이밍에서 실행된다. 이에 대하여, 픽처인픽처 표시가 메인 패스와, 비동기로 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력에 의해 설정된다.
스텝 S311에서, 픽처인픽처(PiP) 표시가 종료되지 않았다고 판단된 경우, 처리는 스텝 S304로 복귀하여, 그 이후의 처리가 반복된다. 스텝 S311에서, 픽처인픽처(PiP) 표시가 종료되었다고 판단된 경우, 처리는 종료된다.
이와 같은 처리에 의해, 픽처인픽처 표시가 실행되는 경우, #1 레지스터 및 #2 레지스터에 설정되어 있는 값을 기초로, 프라이머리(즉, 픽처인픽처 애플리케이션용이 아닌) 서브타이틀 스트림(PG TextST 스트림)을 재생 표시하는지 여부, 및 픽처인픽처 애플리케이션용 PG·텍스트 자막 스트림(PiP PG TextST 스트림)을 재생 표시하는지 여부가 결정된다. 또, 재생 표시되는 스트림은 어느 스트림인가도, 기본적으로는, #1 레지스터 또는 #2 레지스터의 설정에 의해 결정되지만, #1 레지스터 또는 #2 레지스터의 설정이 STN_table()의 등록 내용과 일치하지 않는 경우에는, 전술한 자동 선택 루틴에 의해, 재생 표시되는 스트림이 결정된다.
다음에, 도 75의 플로차트를 참조하여, 도 74의 스텝 S307에서 실행되는, PiP PG TextST 표시 처리에 대하여 설명한다.
스텝 S351에서, 컨트롤러(21)는 #2 레지스터에 설정되어 있는 PiP PG TextST 번호(PiP PG TextST stream number)를 취득한다. #2 레지스터에 설정되어 있는 PiP PG TextST 번호(PiP PG TextST stream number)는, 예를 들면, 스트림 넘버 테이블을 참조하여 선택되어 설정되거나, 전회 픽처인픽처 표시를 한 경우의 설정값이 유지되어 있이거나던, 사용자의 조작 입력을 기초로 설정되거나, 또는 전술한 내비게이션 커맨드에 의해 설정된 값이다.
스텝 S352에서, 컨트롤러(21)는 도 69 및 도 70을 사용하여 설명한 제8 STN_table의 PiP_PG_textST_stream_id_ref의 값에 1을 가한 값이, #2 레지스터에 보존되어 있는지 여부를 판단한다.
스텝 S352에서, 제8 STN_table의 PiP_PG_textST_stream_id_ref의 값에 1을 가한 값(PiP_PG_textST_id_ref+1)이, #2 레지스터에 보존되어 있다고 판단된 경우, 스텝 S353에서, 컨트롤러(21)는 #2 레지스터에 설정(환언하면, 보존)되어 있는 PiP PG TextST stream number에 대응하는 PiP PG TextST를 표시하게 하고, 처리는 도 74의 스텝 S307로 복귀하여, 스텝 S311로 진행한다.
즉, 컨트롤러(21)는 #2 레지스터의 PiP PG TextST stream number에 설정되어 있는 값에 대응하는 PG TextST를, 스토리지 드라이브(22)를 통해 기록 매체(11)로부터, 또는 로컬 스토리지(24)로부터 판독한다. 판독된 PG TextST는 각 버퍼, PID 필터, 스위치 등의 처리에 의해, 프리젠테이션 그래픽스 플레인 생성부(93)에 공급 되어, 렌더링 화상인 프리젠테이션 그래픽스 플레인이 생성되고, 비디오 데이터 처리부(96)에 공급되어, 프라이머리 비디오 스트림이나 세컨더리 비디오 스트림 등과 합성되고, 대응하는 음성 데이터와 함께 재생 출력된다.
스텝 S352에서, 제8 STN_table의 PiP_PG_textST_stream_id_ref의 값에 1을 가한 값이 #2 레지스터에 보존되어 있지 않다고 판단된 경우, 스텝 S354에서, 컨트롤러(21)는 STN_table의 stream_attribute()(도 18)의 PG_language_code 및 textST_language_code를 참조하고, #1 레지스터 또는 #2 레지스터와는 상이한 다른 레지스터, 즉, 언어의 초기 설정이 등록되는 레지스터를 참조하여, 설정되어 있는 언어의 초기 설정이, 자기 자신(재생 장치(401))의 재생 가능 언어이며, 또한 STN_table의 PiP_PG_textST_id_ref의 값에 1을 가한 값(PiP_PG_textST_id_ref+1)으로 규정되어 있는지 여부를 판단한다.
스텝 S354에서, 다른 레지스터에 설정되어 있는 초기 설정이, 재생 가능 언어이며, 또한 STN_table의 PiP_PG_textST_id_ref의 값에 1을 가한 값으로 규정되어 있다고 판단된 경우, 스텝 S355에서, 컨트롤러(21)는 초기 설정되어 있는 언어에 대응하는 PiP PG TextST를 표시하게 하고, 처리는 도 74의 스텝 S307로 복귀하여, 스텝 S311로 진행한다.
즉, 컨트롤러(21)는 언어의 초기 설정이 등록되는 레지스터에 설정되어 있는 값에 대응하는 PG TextST를, 스토리지 드라이브(22)를 통해 기록 매체(11)로부터, 또는 로컬 스토리지(24)로부터 판독한다. 판독된 PG TextST는 각 버퍼, PID 필터, 스위치 등의 처리에 의해, 프리젠테이션 그래픽스 플레인 생성부(93)에 공급되어, 렌더링 화상인 프리젠테이션 그래픽스 플레인이 생성되고, 비디오 데이터 처리부(96)에 공급되어, 프라이머리 비디오 스트림 등과 합성되고, 대응하는 음성 데이터와 함께 재생 출력된다.
스텝 S354에서, 다른 레지스터에 설정되어 있는 초기 설정이 재생 가능 언어가 아닌, 또는 제8 STN_table의 PiP_PG_textST_id_ref+1로 규정되어 있지 않다고 판단된 경우, 스텝 S356에서, 컨트롤러(21)는 i의 설정값을 i=0으로 한다. 여기에서, 값 i는 후술하는 스텝 S357에서, 재생할 수 있는지 여부를 확인하는 것은 STN_table에 정의되어 있는 PiP_PG_textST_id_ref 중 몇번째에 대하여인가를 나타내는 값이다.
스텝 S357에서, 컨트롤러(21)는 소정의 레지스터, 즉, 재생 장치(141)가 복호 가능한 언어를 나타내는 정보가 등록되어 있는 레지스터를 참조함으로써, 재생 장치(141)가 복호 가능한 언어를 확인하여, i 번째의 PiP_PG_textST_id_ref에 1을 가한 값에 대응하는 PiP PG textST를 재생할 수 있는지 여부를 판단한다.
스텝 S357에서, 재생할 수 없다고 판단된 경우, 스텝 S358에서, 컨트롤러(21)는 값 i를 i=i+1로 하고, 처리는 스텝 S357로 복귀하여, 그 이후의 처리가 반복된다. 즉, STN_table()에 등록되어 있는 순번으로 번호가 이른 것으로부터 순번으로, PiP PG textST가 재생될 수 있는지 여부가 판단된다.
스텝 S357에서, 재생할 수 있다고 판단된 경우, 스텝 S359에서, 컨트롤러(21)는 i 번째의 PiP_PG_textST_id_ref에 1을 가한 값으로 규정되어 있는 PG textST를 표시하게 하고, 처리는 도 74의 스텝 S307로 복귀하여, 스텝 S311로 진행 한다.
즉, 컨트롤러(21)는 스텝 S357에서 재생할 수 있다고 판단된, i 번째의 PiP_PG_textST_id_ref에 1을 가한 값으로 규정되어 있는 PG TextST를, 스토리지 드라이브(22)를 통해 기록 매체(11)로부터, 또는 로컬 스토리지(24)로부터 판독한다. 판독된 PG TextST는 각 버퍼, PID 필터, 스위치 등의 처리에 의해, 프리젠테이션 그래픽스 플레인 생성부(93)에 공급되어, 렌더링 화상인 프리젠테이션 그래픽스 플레인이 생성되고, 비디오 데이터 처리부(96)에 공급되어, 프라이머리 비디오 스트림 등과 합성되고, 대응하는 음성 데이터와 함께 재생 출력된다.
이와 같은 처리에 의해, #2 레지스터의 PiP PG TextST stream number에 나타난 값이 PlayItem의 STN_table에 등록되어 있는 PiP PG TextST 스트림의 번호와 일치한 경우, PiP PG TextST stream number에 나타난 값에 대응하는 PiP PG textST가 재생된다. 그리고, #2 레지스터의 PiP PG TextST stream number에 나타난 값이 PlayItem의 STN_table에 등록되어 있는 PiP PG TextST 스트림의 번호와 일치하지 않은 경우, 재생되는 픽처인픽처 애플리케이션용 PG TextST 스트림은 PiP PG TextST 스트림 자동 선택 루틴에 의해 선택된다.
나중에, 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 스트림의 조합을 정의하는 STN_table의 상이한 예, 즉, STN_table의 제9 예를 도 76 내지 도 78을 사용하여 설명한다.
즉, 도 76 내지 도 78은 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스 트림, 및 서브타이틀 스트림의 조합을 정의하는 데 있어서, 특히, 픽처인픽처 애플리케이션용 프라이머리 오디오를 또한 정의하는 동시에, 세컨더리 오디오 스트림과 프라이머리 오디오 스트림과의 조합, 세컨더리 비디오 스트림과 세컨더리 오디오 스트림과의 조합, 세컨더리 비디오 스트림과 픽처인픽처 애플리케이션용 프리젠테이션 그래픽스(PG) 또는 텍스트 자막의 조합에 더하여, 세컨더리 비디오와 픽처인픽처 애플리케이션용 프라이머리 오디오의 조합을 또한 정의하는 경우의 STN_table()의 신택스의 제9 예(제9 STN_table())의 예를 나타낸 도면이다.
제9 STN_table()을 참조하여 실행되는 재생 처리도 도 52를 사용하여 설명한 재생 장치(401)에서 실행 가능하다. 그리고, 도면 중, 전술한 도 69 및 도 70과 동일한 부분에 대해서는, 반복이 되므로 그 설명은 생략한다.
새로 가해진 number_of_PiP_primary_audio_stream_entries의 8비트 필드는, STN_table에 등록되는 픽처인픽처 표시용 프라이머리 오디오 스트림의 수를 나타낸다. 픽처인픽처 표시용 프라이머리 오디오 스트림의 수는, PiP_primary_audio_stream_number=PiP_primary_audio_stream_id+1에 의해 구해진다.
그리고, comb_info_Secondary_video_PiP_primary_audio()의 블록은 세컨더리 비디오 스트림과 픽처인픽처 표시용 프라이머리 오디오 스트림의 조합을 나타낸다.
comb_info_Secondary_video_PiP_primary_audio()의 블록 내에서, number_of_PiP_primary_audio_ref_entries_SV의 8비트 필드는, 세컨더리 비디오 스트림과 조합할 수 있는 픽처인픽처 표시용 프라이머리 오디오 스트림의 수를 나타 낸다. 그리고, PiP_primary_audio_id_ref_SV의 8비트 필드는, 세컨더리 비디오 스트림과 조합할 수 있는 픽처인픽처 표시용 프라이머리 오디오 스트림의 ID를 나타낸다.
그리고, 전술한 각각의 STN_table에서의 경우와 동일하게, 각 ID 대신에 각 번호, 예를 들면, audio_stream_id 대신에, 오디오 스트림 번호(audio_stream_number)를 사용하거나, audio_stream_id2 대신에, 오디오 스트림 번호 2(audio_stream_number2)를 사용하도록 해도 된다. 비디오 스트림이나 서브타이틀 스트림에 대해서도 동일하다.
도 76 내지 도 78의 제9 STN_table()에 의하면, 세컨더리 오디오와 프라이머리 오디오의 조합, 세컨더리 비디오와 세컨더리 오디오의 조합, 및 세컨더리 비디오와 픽처인픽처 애플리케이션용 PG·텍스트 자막의 조합에 더하여, 세컨더리 비디오와 픽처인픽처 표시용 프라이머리 오디오의 조합을 정의할 수 있다.
따라서, 프라이머리 비디오 스트림(#1 비디오 스트림)과 동시 재생될 수 있는 세컨더리 비디오 스트림(#2 비디오 스트림), 프라이머리 오디오 스트림(#1 오디오 스트림), 세컨더리 오디오 스트림(#2 오디오 스트림), 서브타이틀 스트림(PG TextST 스트림), 및 픽처인픽처 애플리케이션용 PG·텍스트 자막 스트림(PiP PG TextST 스트림)의 조합에 더하여, 세컨더리 비디오와 픽처인픽처 표시용 프라이머리 오디오의 조합으로서 모순되는 바와 같은 조합을 선택하는 것을 방지하도록 할 수 있다.
또, 재생 장치(141)에서는, 전술한 바와 같이, 재생 장치(141)의 메모리(23) 의 재기록 가능한 메모리 영역 중 일부에, 복수개의 레지스터가 설치되고, 이 레지스터에 설정되는 값을 기초로, 재생 처리가 실행된다. 재생 장치(141)의 메모리(23)의 재기록 가능한 메모리 영역 중 일부에는, 도 70을 사용하여 설명한 레지스터에 더하여, 또한 픽처인픽처 애플리케이션이 기동되었을 때 재생되는 오디오에 대한 설정을 행하기 위한 레지스터가 설치되어 있고, 도 76 내지 도 78의 제9 STN_table()이 사용되는 경우, 그들 레지스터가 참조된다.
도 79를 사용하여, 도 76 내지 도 78의 제9 STN_table()이 적용되고 있은 경우에 있어서, 픽처인픽처 애플리케이션이 기동되었을 때, 재생 장치(141)가 어느 오디오 스트림을 재생하는가를 결정하기 위해 참조되는 레지스터에 대하여 설명한다.
#3 레지스터는 프라이머리 오디오 스트림의 ID 번호를 나타내는 레지스터이다. 즉, #3 레지스터는 현재의 PlayItem의 STN_table에 등록되어 있는 프라이머리 오디오 스트림 중에서, 재생되는 프라이머리 오디오 스트림이 설정되어 있는 레지스터이다.
픽처인픽처 표시가 되어 있지 않을 때, #3 레지스터에 설정되어 있는 ID 번호의 오디오 스트림은 재생되게 되어 있다. 단, #3 레지스터에 설정되어 있는 ID 번호의 오디오 스트림이 현재의 PlayItem()의 STN_table()에 등록되어 있지 않은 경우, 프라이머리 오디오 스트림의 자동 선택 루틴에 의해 재생되는 오디오 스트림이 선택된다.
한편, 픽처인픽처 표시 시에, #3 레지스터에 설정되어 있는 ID 번호의 오디 오 스트림이 재생되는지 여부는, 후술하는, #5 레지스터의 설정에 의해 정해진다. 픽처인픽처 표시 시의 오디오 재생의 구체적인 예에 대해서는 후술한다.
그리고, #5 레지스터는 세컨더리 오디오 스트림의 ID 번호를 나타내는 레지스터이다. 즉, #5 레지스터는 현재의 PlayItem의 STN_table에 등록되어 있는 세컨더리 오디오 스트림 중, 재생되는 세컨더리 오디오 스트림이 설정되어 있는 레지스터이다.
픽처인픽처 표시가 되어 있지 않을 때, #5 레지스터에 설정되어 있는 ID 번호의 오디오 스트림은 사용자의 조작 입력에 따라, 또는, 각종 설정에 따라 재생되게 되어 있다. 단, #5 레지스터에 설정되어 있는 ID 번호의 오디오 스트림이 현재의 PlayItem()의 STN_table()에 등록되어 있지 않은 경우, 세컨더리 오디오 스트림의 자동 선택 루틴에 의해 재생되는 오디오 스트림이 선택된다. 한편, #5 레지스터에 설정되어 있는 ID 번호의 오디오 스트림이 픽처인픽처 표시 시에 재생되는 경우도 있다. 픽처인픽처 표시 시의 오디오 재생의 구체적인 예에 대해서는 후술한다.
그리고, #5 레지스터는 픽처인픽처 표시용 프라이머리 오디오 스트림의 ID 번호를 나타내는 레지스터이다. 즉, #5 레지스터는 현재의 PlayItem의 STN_table에 등록되어 있는 픽처인픽처 표시용 프라이머리 오디오 스트림 중에서, 재생되는 픽처인픽처 표시용 프라이머리 오디오 스트림이 설정되어 있는 레지스터이다. 그리고, #5 레지스터에서, invalid_flag의 값이 0인 경우, 픽처인픽처 애플리케이션용 프라이머리 오디오 스트림의 ID 번호는 유효하고, 1인 경우에는, 무효이다.
#5 레지스터에 설정되어 있는 ID 번호의 오디오 스트림이 PlayItem()의 STN_table()에서 세컨더리 비디오 스트림과의 조합이 허가 되어 있는 픽처인픽처 표시용 프라이머리 오디오 스트림이 아닌 경우, 재생되는 오디오 스트림은 픽처인픽처 표시용 프라이머리 오디오 스트림의 자동 선택 루틴에 의해 선택된다.
그리고, 각각의 오디오 스트림의 자동 선택 루틴에서는, 먼저, 재생 장치(141)에서 재생할 수 있는 오디오인가, 재생할 수 없는 오디오인지를 나타내는 레지스터가 참조되어, 재생 장치(141)가 재생 능력을 가지는 오디오가 우선되어 선택되고, 다음에, 재생 장치(141)에 설정되어 있는 언어 코드와 동등한 언어의 오디오 데이터가 우선되어 선택되고, 그리고, 다음에, STN_table()에 등록되어 있는 순번으로 번호가 이른 것으로부터 순번으로 우선되어 선택되게 되어 있다.
그리고, Secondary audio stream number에 0xFF가 등록되어 있는 경우, 세컨더리 오디오 스트림이 선택되어 있지 않거나, 또는 존재하지 않는다. 그리고, PiP primary audio stream number에 0xFF가 등록되어 있는 경우, 픽처인픽처 표시용 프라이머리 오디오 스트림이 선택되어 있지 않거나, 또는 존재하지 않는다.
또, PiP primary audio stream number에 0xFF 이외가 등록되어 있는 경우라도 invalid_flag에 의해, 재생의 유효 또는 무효가 결정된다. 즉, invalid_flag=1이며 재생 무효 상태일 때는, 반드시, PiP primary audio stream number가 0xFF에 설정되게 되어 있는 것은 아니다. 예를 들면, invalid_flag=1이며 재생 무효 상태일 때는, PiP primary audio stream number에 0xFF 이외가 등록되어 있어도, PiP primary audio stream number에 등록되어 있는 값은 무시되어, 재생되지 않게 되어 있다.
이들 레지스터에 설정되어 있는 값을 참조함으로써, 재생 장치(141)에서 각각의 스트림의 재생 처리가 실행된다.
다음에, 도 80을 참조하여, 픽처인픽처 표시의 실행 시에, 프라이머리 오디오와 세컨더리 오디오가 재생(세컨더리 오디오는 사용자의 조작 입력에 따라, 또는, 각종 설정에 따라 재생)되는 경우의 예에 대하여 설명한다.
예를 들면, 픽처인픽처 표시가 실행되어 있지 않은 상태(도면 중, 「No PiP」라고 나타나 있는 상태)에서, #3 레지스터의 primary audio stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 audio stream number=0x05의 프라이머리 오디오 스트림이 재생된다.
이 때, #5 레지스터의 Secondary audio stream number에 0xFF 이외가 등록되어 있으면, 설정되어 있는 ID 번호의 오디오 스트림은 사용자의 조작 입력에 따라, 또는, 각종 설정에 따라, 재생된다.
그리고, 내비게이션 프로그램에 의해 커맨드가 발생되거나, 또는 사용자에 의해 소정의 조작 입력이 행해짐으로써, 픽처인픽처 표시의 실행이 개시(도면 중, PiP on)된다. 픽처인픽처 표시의 실행이 개시되어도, #5 레지스터의 invalid_flag가 1로 설정(예를 들면, 내비게이션 프로그램에 의해 발생되는 내비게이션 커맨드에 의해 invalid_flag가 1로 설정)되어 있으면, 픽처인픽처 애플리케이션용 프라이머리 오디오 스트림은 재생되지 않는다. 즉, 픽처인픽처 표시가 실행되어 있는 상태(도면 중, 「PiP enabled」라고 나타나 있는 상태)에서도, #3 레지 스터의 Primary stream number에 설정되어 있는 값, 및 #4 레지스터의 Secondary stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 audio stream number=0x07이 재생되는 동시에, 사용자의 조작 입력에 따라, 또는, 각종 설정에 따라, audio stream2number=0x01의 오디오 스트림이 믹싱되어 재생된다.
그리고, 픽처인픽처 표시의 실행이 종료(도면 중, PiP off)되고, 다시, 픽처인픽처 표시가 실행되어 있지 않은 상태(도면 중, 「No PiP」라고 나타나 있는 상태)로 된 경우, #3 레지스터의 Primary stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 audio stream number=0x05의 오디오 스트림이 재생된다.
이 때도, #5 레지스터의 Secondary audio stream number에 0xFF 이외가 등록되어 있으면, 설정되어 있는 ID 번호의 오디오 스트림은 사용자의 조작 입력에 따라, 또는, 각종 설정에 따라, 재생된다.
다음에, 도 81을 참조하여, 픽처인픽처 표시의 실행 시에, 픽처인픽처 애플리케이션용 프라이머리 오디오 스트림이 재생되는 경우의 예에 대하여 설명한다.
예를 들면, 픽처인픽처 표시가 실행되어 있지 않은 상태(도면 중, 「No PiP」라고 나타나 있는 상태)에서, #3 레지스터의 Primary stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 audio stream number=0x05의 오디오 스트림이 재생된다.
이 때, #5 레지스터의 Secondary audio stream number에 0xFF 이외가 등록되 어 있으면, 설정되어 있는 ID 번호의 오디오 스트림은 사용자의 조작 입력에 따라, 또는, 각종 설정에 따라, 재생된다.
그리고, 내비게이션 프로그램에 의해 커맨드(예를 들면, 스트림에 매립되어 있는 내비게이션 커맨드)가 발생되거나, 또는 사용자에 의해 소정의 조작 입력이 행해짐으로써, 픽처인픽처 표시의 실행이 개시(도면 중, PiP on)되고, #5 레지스터의 invalid_flag가 0에 설정되어 있는 경우, #5 레지스터의 PiP primary audio stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 PiP primary audio stream number=0x07의 픽처인픽처 애플리케이션용 프라이머리 오디오 스트림이 재생된다.
그리고, 픽처인픽처 표시의 실행이 종료(도면 중, PiP off)되고, 다시, 픽처인픽처 표시가 실행되어 있지 않은 상태(도면 중, 「No PiP」라고 나타나 있는 상태)로 된 경우, #3 레지스터의 Primary stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 audio stream number=0x05의 오디오 스트림이 재생된다.
이 때도, #5 레지스터의 Secondary audio stream number에 0xFF 이외가 등록되어 있으면, 설정되어 있는 ID 번호의 오디오 스트림은 사용자의 조작 입력에 따라, 또는, 각종 설정에 따라, 재생된다.
그리고, 도 80 및 도 81에서, PiP primary audio stream number에 0xFF가 등록되어 있는 경우, 픽처인픽처 표시용 프라이머리 오디오 스트림이 선택되어 있지 않거나, 또는 존재하지 않는다. 예를 들면, PiP primary audio stream number에 0xFF 이외가 등록되어 있는 경우라도 invalid_flag의 설정에 의해, 재생의 유효 또는 무효가 결정된다. 즉, invalid_flag=1이며 재생 무효 상태일 때는, PiP primary audio stream number에 0xFF 이외가 등록되어 있어도, PiP primary audio stream number에 등록되어 있는 값은 무시되어, 재생되지 않게 되어 있다.
다음에, 도 82의 플로차트를 참조하여, PiP(픽처인픽처)를 포함한 애플리케이션의 오디오 스트림 재생 처리 1에 대하여 설명한다.
스텝 S401에서, 컨트롤러(21)는 #3 레지스터에 설정되어 있는 primary audio stream 번호(primary audio stream number)로부터, 대응하는 프라이머리 오디오를 현재의 PlayItem의 STN_table()로부터 조사한다.
스텝 S402에서, 컨트롤러(21)는 원하는 프라이머리 오디오 스트림을 특정하고, 기록 매체(11), 또는 로컬 스토리지(24)에 기록되어 있는 Clip으로부터, 특정된 스트림을 판독하여, 재생한다.
예를 들면, 컨트롤러(21)는 #3 레지스터의 primary audio stream number에 설정되어 있는 값을 참조하여, STN_table()에 등록되어 있는 primary audio stream number의 프라이머리 오디오 스트림을 판독하고, AV 디코더부(403)에 공급한다. 판독된 프라이머리 오디오 스트림은 각 버퍼, PID 필터, 스위치 등의 처리에 의해, 1st 오디오 디코더(75-1)에 공급되어 디코드되고, 대응하는 비디오 데이터와 함께 재생 출력된다.
스텝 S403에서, 컨트롤러(21)는 픽처인픽처 표시를 개시(PiP를 ON으로)한다.
여기에서, 픽처인픽처 표시가 메인 패스에 동기하여 설정되어 있는 경우, 픽 처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력에 관계없이, 소정의 타이밍에서 실행된다. 이에 대하여, 픽처인픽처 표시가 메인 패스와 비동기로 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력에 의해 설정된다.
스텝 S404에서, 컨트롤러(21)는 스트림에 매립되어 있거나 또는, 스트림과는 상이한 위치에 기억되어 프리로드되어 있는 Navigation Command(내비게이션 커맨드) 등에 의해, 필요에 따라, #5 레지스터의 invalid_flag의 설정값을 변경한다.
스텝 S405에서, 컨트롤러(21)는 #5 레지스터에서, invalid_flag=0(PiP 프라이머리 오디오 스트림 유효)인지 여부를 판단한다.
스텝 S405에서, invalid_flag=0이라고 판단된 경우, 스텝 S406에서, 컨트롤러(21)는 도 80을 사용하여 설명한 바와 같이 하여, #5 레지스터에 설정되어 있는 PiP primary audio stream 번호로부터, 대응하는 픽처인픽처 표시용 프라이머리 오디오를, 현재의 PlayItem의 STN_table()로부터 조사한다.
스텝 S407에서, 컨트롤러(21)는 재생해야 할 픽처인픽처 표시용 프라이머리 오디오를 특정하여, 전술한 경우와 동일하게 하여 Clip으로부터 판독하고, AV 디코더부(403)에 공급하여 재생시키고, 처리는 후술하는 스텝 S409로 진행한다.
예를 들면, 컨트롤러(21)는 #5 레지스터의 Pip primary audio stream number에 설정되어 있는 값을 참조하여, STN_table()에 등록되어 있는 Pip primary audio stream number의 픽처인픽처 표시용 프라이머리 오디오 스트림을 판독하고, AV 디코더부(403)에 공급한다. 판독된 픽처인픽처 표시용 프라이머리 오디오 스트림은 각 버퍼, PID 필터, 스위치 등의 처리에 의해, 1st 오디오 디코더(75-1)에 공급되어 디코드되고, 대응하는 비디오 데이터와 함께 재생 출력된다. 그리고, 컨트롤러(21)는 #5 레지스터에 설정되어 있는 ID 번호의 오디오 스트림이 현재의 PlayItem()의 STN_table()에 등록되어 있지 않은 경우, 픽처인픽처 표시용 프라이머리 오디오 스트림의 자동 선택 루틴에 의해, 재생되는 오디오 스트림을 선택한다.
스텝 S405에서, invalid_flag=0이 아니라(즉, invalid_flag=1이라)고 판단된 경우, 스텝 S408에서, 컨트롤러(21)는 도 80을 사용하여 설명한 바와 같이 하여, #3 레지스터에 설정되어 있는 primary audio stream 번호(primary audio stream number), 및 #4 레지스터에 설정되어 있는 secondary audio stream 번호(secondary audio stream number)로부터 대응하는 프라이머리와 세컨더리의 오디오 스트림을 현재의 PlayItem의 STN_table()로부터 조사하여, 재생해야 할 프라이머리와 세컨더리의 오디오 스트림을 특정하고, 전술한 경우와 동일하게 하여 Clip으로부터 판독하여 AV 디코더부(403)에 공급하고, 합성하여 재생시킨다.
예를 들면, 컨트롤러(21)는 #3 레지스터의 primary audio stream number, 및 #4 레지스터의 secondary audio stream number에 설정되어 있는 값을 참조하고, STN_table()에 등록되어 있는 프라이머리와 세컨더리의 오디오 스트림을 판독하여, AV 디코더부(403)에 공급한다. 판독된 프라이머리와 세컨더리의 오디오 스트림은 각 버퍼, PID 필터, 스위치 등의 처리에 의해, 프라이머리 오디오 스트림은 1st 오 디오 디코더(75-1)에, 세컨더리 오디오 스트림은 2nd 오디오 디코더(75-2)에 각각 공급되어 디코드되고, 대응하는 비디오 데이터와 함께 재생 출력된다. 그리고, 컨트롤러(21)는 #3 레지스터 또는 #5에 설정되어 있는 ID 번호의 오디오 스트림이 현재의 PlayItem()의 STN_table()에 등록되어 있지 않은 경우, 각각의 오디오 스트림의 자동 선택 루틴에 의해, 재생되는 오디오 스트림을 선택한다.
스텝 S407, 또는 스텝 S408의 처리의 종료 후, 스텝 S409에서, 컨트롤러(21)는 픽처인픽처(PiP) 표시가 종료되는지 여부를 판단한다.
전술한 바와 같이, 픽처인픽처 표시가 메인 패스에 동기하여 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력에 관계없이, 소정의 타이밍에서 실행된다. 이에 대하여, 픽처인픽처 표시가 메인 패스와 비동기로 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력에 의해 설정된다.
스텝 S409에서, 픽처인픽처(PiP) 표시가 종료되지 않았다고 판단된 경우, 처리는 스텝 S404로 복귀하여, 그 이후의 처리가 반복된다. 스텝 S409에서, 픽처인픽처(PiP) 표시가 종료된다고 판단된 경우, 처리는 종료된다.
이와 같은 처리에 의해, 픽처인픽처 표시가 실행되는 경우, #3 레지스터 내지#5 레지스터에 설정되어 있는 값을 기초로, 어느 오디오 스트림이 재생되는가가 결정된다. 그리고, 이들 레지스터의 설정이 STN_table()의 등록 내용과 일치하지 않는 경우에는, 전술한 자동 선택 루틴에 의해, 재생되는 스트림이 결정된다.
다음에, 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 스트림의 조합을 정의하는 STN_table의 또한 상이한 예, 즉, STN_table의 제10 예를, 도 83 내지 도 85를 사용하여 설명한다.
즉, 도 83 내지 도 85는 프라이머리 비디오 스트림과 조합하여 동시 재생될 수 있는 세컨더리 비디오 스트림, 프라이머리 오디오 스트림, 세컨더리 오디오 스트림, 및 서브타이틀 스트림의 조합을 정의하는 데 있어서, 제9 예에서의 경우와 동일하게, 픽처인픽처 애플리케이션용 프라이머리 오디오를 정의하는 동시에, 세컨더리 오디오 스트림과 프라이머리 오디오 스트림과의 조합, 세컨더리 비디오 스트림과 세컨더리 오디오 스트림과의 조합, 세컨더리 비디오 스트림과 픽처인픽처 애플리케이션용 프리젠테이션 그래픽스(PG) 또는 텍스트 자막의 조합, 세컨더리 비디오와 픽처인픽처 애플리케이션용 프라이머리 오디오의 조합에 더하여, 세컨더리 오디오와 픽처인픽처 애플리케이션용 프라이머리 오디오의 조합을 또한 정의한 경우의 STN_table()의 신택스의 제10 예(제10 STN_table())의 예를 나타낸 도면이다.
제10 STN_table()을 참조하여 실행되는 재생 처리도 도 52를 사용하여 설명한 재생 장치(401)에서 실행 가능하다. 그리고, 도면 중, 전술한 도 76 내지 도 79와 동일한 부분에 대해서는, 반복이 되므로 그 설명은 생략한다.
새로 가해진 comb_info_Secondary_audio_PiP_primary_audio()의 블록은 세컨더리 오디오 스트림과 픽처인픽처 표시용 프라이머리 오디오 스트림의 조합을 나타낸다.
comb_info_Secondary_audio_PiP_primary_audio()의 블록 내에서, number_of_PiP_primary_audio_ref_entries_SA의 8비트 필드는, 세컨더리 오디오 스트림과 조합할 수 있는 픽처인픽처 표시용 프라이머리 오디오 스트림의 수를 나타낸다. 그리고, PiP_primary_audio_id2_ref_SA의 8비트 필드는, 세컨더리 오디오 스트림과 조합할 수 있는 픽처인픽처 표시용 프라이머리 오디오 스트림의 ID를 나타낸다.
그리고, 전술한 각각의 STN_table에서의 경우와 동일하게, 각 ID 대신에 각 번호, 예를 들면, audio_stream_id 대신에, 오디오 스트림 번호(audio_stream_number)를 사용하거나, audio_stream_id2 대신에, 오디오 스트림 번호 2(audio_stream_number2)를 사용하도록 해도 된다. 비디오 스트림이나 서브타이틀 스트림에 대해서도 동일하다.
도 83 내지 도 85의 제10 STN_table()에 의하면, 세컨더리 오디오와 프라이머리 오디오의 조합, 세컨더리 비디오와 세컨더리 오디오의 조합, 세컨더리 비디오와 픽처인픽처 애플리케이션용 PG·텍스트 자막의 조합, 및 세컨더리 비디오와 픽처인픽처 표시용 프라이머리 오디오의 조합에 더하여, 세컨더리 오디오와 픽처인픽처 표시용 프라이머리 오디오의 조합을 정의할 수 있다.
따라서, 프라이머리 비디오 스트림(#1 비디오 스트림)과 동시 재생될 수 있는 세컨더리 비디오 스트림(#2 비디오 스트림), 프라이머리 오디오 스트림(#1 오디오 스트림), 세컨더리 오디오 스트림(#2 오디오 스트림), 서브타이틀 스트림(PG TextST 스트림), 픽처인픽처 애플리케이션용 PG·텍스트 자막 스트림(PiP PG TextST 스트림)의 조합, 및 세컨더리 비디오와 픽처인픽처 표시용 프라이머리 오디 오의 조합에 더하여, 세컨더리 오디오와 픽처인픽처 표시용 프라이머리 오디오의 조합으로서 모순되는 바와 같은 조합을 선택하는 것을 방지하도록 할 수 있다.
또, 재생 장치(141)에서는, 전술한 바와 같이, 재생 장치(141)의 메모리(23)의 재기록 가능한 메모리 영역 중 일부에, 복수개의 레지스터가 설치되고, 이 레지스터에 설정되는 값을 기초로, 재생 처리가 실행된다. 도 83 내지 도 85의 제10 STN_table()이 사용되는 경우, 재생 장치(141)의 메모리(23)의 재기록 가능한 메모리 영역 중 일부에는, 도 71을 사용하여 설명한 레지스터에 더하여, 도 79를 사용하여 설명한, 픽처인픽처 애플리케이션이 기동되었을 때 재생되는 오디오에 대한 설정을 행하기 위한 레지스터가 설치된다.
이들 레지스터에 설정되어 있는 값을 참조함으로써, 재생 장치(141)에서 각각의 스트림의 재생 처리가 실행된다.
또, 픽처인픽처 표시의 실행 시에, 프라이머리 오디오와 세컨더리 오디오가 재생되는 경우에 대해서는, 도 79를 참조하여 설명한 것과 동일한 처리가 실행된다.
다음에, 도 86을 참조하여, 픽처인픽처 표시의 실행 시에, 세컨더리 오디오 스트림과 픽처인픽처 애플리케이션용 프라이머리 오디오 스트림이 재생되는 경우의 예에 대하여 설명한다.
예를 들면, 픽처인픽처 표시가 실행되어 있지 않은 상태(도면 중, 「No PiP」라고 나타나 있는 상태)에서, #3 레지스터의 Primary stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 audio stream number=0x05의 오 디오 스트림이 재생된다.
그리고, 내비게이션 프로그램에 의해 커맨드(예를 들면, 스트림에 매립되어 있는 내비게이션 커맨드)가 발생되거나, 또는 사용자에 의해 소정의 조작 입력이 행해짐으로써, 픽처인픽처 표시의 실행이 개시(도면 중, PiP on)되어, #5 레지스터의 invalid_flag가 0에 설정되어 있는 경우, #4 레지스터의 Secondary stream number에 설정되어 있는 값, 및 #5 레지스터의 PiP primary audio stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 audio stream2number=0x01의 오디오 스트림과 PiP primary audio stream number=0x07의 픽처인픽처 애플리케이션용 프라이머리 오디오 스트림이 믹싱되어 재생된다.
그리고, 픽처인픽처 표시의 실행이 종료(도면 중, PiP off)되고, 다시, 픽처인픽처 표시가 실행되어 있지 않은 상태(도면 중, 「No PiP」라고 나타나 있는 상태)로 된 경우, #3 레지스터의 Primary stream number에 설정되어 있는 값이 참조되어, STN_table()에 등록되어 있는 audio stream number=0x05의 오디오 스트림이 재생된다.
그리고, 도 86에서도, PiP primary audio stream number에 0xFF가 등록되어 있는 경우, 픽처인픽처 표시용 프라이머리 오디오 스트림이 선택되어 있지 않거나, 또는 존재하지 않는다. 예를 들면, PiP primary audio stream number에 0xFF 이외가 등록되어 있는 경우라도 invalid_flag의 설정에 의해, 재생의 유효 또는 무효가 결정된다. 즉, invalid_flag=1이며 재생 무효 상태일 때는, PiP primary audio stream number에 0xFF 이외가 등록되어 있어도, PiP primary audio stream number 에 등록되어 있는 값은 무시되어, 재생되지 않게 되어 있다.
다음에, 도 87의 플로차트를 참조하여, PiP(픽처인픽처)를 포함한 애플리케이션의 오디오 스트림 재생 처리 2에 대하여 설명한다.
스텝 S451 내지 스텝 S455에서, 도 82를 사용하여 설명한 스텝 S401 내지 스텝 S405와 기본적으로 동일한 처리가 실행된다.
즉, 컨트롤러(21)는 #3 레지스터에 설정되어 있는 primary audio stream 번호로부터, 대응하는 프라이머리 오디오를 현재의 PlayItem의 STN_table()로부터 조사하여, 원하는 프라이머리 오디오 스트림을 특정하고, Clip으로부터 판독하여, 재생을 행하고, 소정의 타이밍에서, 픽처인픽처 표시를 개시한다. 픽처인픽처 표시가 메인 패스에 동기하여 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력에 관계없이, 소정의 타이밍에서 실행된다. 이에 대하여, 픽처인픽처 표시가 메인 패스와 비동기로 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력에 의해 설정된다.
컨트롤러(21)는 스트림에 매립되어 있거나, 또는, 스트림과는 상이한 위치에 기억되어 프리로드되어 있는 Navigation Command(내비게이션 커맨드) 등에 의해, 필요에 따라, #5 레지스터의 invalid_flag의 설정값을 변경한다. 그리고, 컨트롤러(21)는 #5 레지스터에서, invalid_flag=0(PiP 프라이머리 오디오 스트림 유효)인지 여부를 판단한다.
스텝 S455에서, invalid_flag=0이라고 판단된 경우, 스텝 S456에서, 컨트롤 러(21)는 #5 레지스터에 설정되어 있는 PiP primary audio stream 번호로부터, 대응하는 픽처인픽처 표시용 프라이머리 오디오를, 현재의 PlayItem의 STN_table()로부터 조사한다.
스텝 S457에서, 컨트롤러(21)는 #5 레지스터에 설정되어 있는 secondary audio stream 번호로부터, 대응하는 세컨더리 오디오를, 현재의 PlayItem의 STN_table()로부터 조사한다.
스텝 S458에서, 컨트롤러(21)는 재생해야 할 픽처인픽처 표시용 프라이머리 오디오 및 세컨더리 오디오를 특정하고, 전술한 경우와 동일하게 하여 Clip으로부터 판독하여 AV 디코더부(403)에 공급하고, 합성(믹싱)하여 재생시키고, 처리는 후술하는 스텝 S460으로 진행한다.
예를 들면, 컨트롤러(21)는 #5 레지스터의 Pip primary audio stream number, 및 #5 레지스터의 secondary audio stream number에 설정되어 있는 값을 참조하여, STN_table()에 등록되어 있는 Pip primary audio stream number의 픽처인픽처 표시용 프라이머리 오디오 스트림과 세컨더리 오디오 스트림을 판독하고, AV 디코더부(403)에 공급한다. 판독된 픽처인픽처 표시용 프라이머리 오디오 스트림과 세컨더리 오디오 스트림은 각 버퍼, PID 필터, 스위치 등의 처리에 의해, 픽처인픽처 표시용 프라이머리 오디오 스트림은 1st 오디오 디코더(75-1)에 공급되어 디코드되고, 세컨더리 오디오 스트림은 2nd 오디오 디코더(75-2)에 각각 공급되어 디코드되고, 대응하는 비디오 데이터와 함께 재생 출력된다. 그리고, 컨트롤러(21)는 #5 레지스터 또는 #4 레지스터에 설정되어 있는 ID 번호의 오디오 스트 림이 현재의 PlayItem()의 STN_table()에 등록되어 있지 않은 경우, 각각의 오디오 스트림의 자동 선택 루틴에 의해, 재생되는 오디오 스트림을 선택한다.
스텝 S455에서, invalid_flag=0이 아니라(즉, invalid_flag=1이라)고 판단된 경우, 스텝 S459에서, 컨트롤러(21)는 도 80을 사용하여 설명한 바와 같이 하여, #3 레지스터에 설정되어 있는 primary audio stream 번호(primary audio stream number), 및 #4 레지스터에 설정되어 있는 secondary audio stream 번호(secondary audio stream number)로부터 대응하는 프라이머리와 세컨더리의 오디오 스트림을 현재의 PlayItem의 STN_table()로부터 조사하여, 재생해야 할 프라이머리와 세컨더리의 오디오 스트림을 특정하고, 전술한 경우와 동일하게 하여 Clip으로부터 판독하여 AV 디코더부(403)에 공급하고, 합성하여 재생시킨다.
예를 들면, 컨트롤러(21)는 #3 레지스터의 primary audio stream number, 및 #4 레지스터의 secondary audio stream number에 설정되어 있는 값을 참조하고, STN_table()에 등록되어 있는 프라이머리와 세컨더리의 오디오 스트림을 판독하여, AV 디코더부(403)에 공급한다. 판독된 프라이머리와 세컨더리의 오디오 스트림은 각 버퍼, PID 필터, 스위치 등의 처리에 의해, 프라이머리 오디오 스트림은 1st 오디오 디코더(75-1)에, 세컨더리 오디오 스트림은 2nd 오디오 디코더(75-2)에 각각 공급되어 디코드되고, 대응하는 비디오 데이터와 함께 재생 출력된다. 그리고, 컨트롤러(21)는 #3 레지스터 또는 #4에 설정되어 있는 ID 번호의 오디오 스트림이 현재의 PlayItem()의 STN_table()에 등록되어 있지 않은 경우, 각각의 오디오 스트림의 자동 선택 루틴에 의해, 재생되는 오디오 스트림을 선택한다.
스텝 S457, 또는 스텝 S459의 처리 종료 후, 스텝 S460에서, 컨트롤러(21)는 픽처인픽처(PiP) 표시가 종료되는지 여부를 판단한다.
전술한 바와 같이, 픽처인픽처 표시가 메인 패스에 동기하여 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력에 관계없이, 소정의 타이밍에서 실행된다. 이에 대하여, 픽처인픽처 표시가 메인 패스와 비동기로 설정되어 있는 경우, 픽처인픽처 표시의 개시(PiP의 ON) 및 픽처인픽처 표시의 종료(PiP의 OFF)는, 사용자의 조작 입력에 의해 설정된다.
스텝 S460에서, 픽처인픽처(PiP) 표시가 종료되지 않았다고 판단된 경우, 처리는 스텝 S454로 복귀하여, 그 이후의 처리가 반복된다. 스텝 S460에서, 픽처인픽처(PiP) 표시가 종료되었다고 판단된 경우, 처리는 종료된다.
이와 같은 처리에 의해, 픽처인픽처 표시가 실행되는 경우, #3 레지스터 내지#5 레지스터에 설정되어 있는 값을 기초로, 어느 오디오 스트림이 재생되는가가 결정된다. 그리고, 이들 레지스터의 설정이 STN_table()의 등록 내용과 일치하지 않는 경우에는, 전술한 자동 선택 루틴에 의해, 재생되는 스트림이 결정된다.
다음에, 도 88 및 도 89를 참조하여, 재생 장치(1), 재생 장치(141), 또는 재생 장치(401)에서 재생 가능한 데이터가 기록된 기록 매체(11)의 제조 방법에 대하여, 기록 매체(11)가 디스크형 기록 매체인 경우를 예로 하여 설명한다.
즉, 도 88에 나타낸 바와 같이, 예를 들면, 유리 등으로 이루어지는 원반이 준비되고, 그 위에, 예를 들면, 포토레지스트 등으로 이루어지는 기록 재료가 도포 된다. 이로써, 기록용 원반이 제작된다.
그리고, 도 89에 나타낸 바와 같이, 소프트 제작 처리부에서, 부호화 장치(비디오 인코더)에서 부호화된 재생 장치(1), 재생 장치(141), 또는 재생 장치(401)에서 재생 가능한 형식의 비디오 데이터가 일시 버퍼에 기억되고, 오디오 인코더로 부호화된 오디오 데이터가 일시 버퍼에 기억되는 동시에, 또한 데이터 인코더로 부호화된, 스트림 이외의 데이터(예를 들면, Indexes, Playlist, PlayItem 등)가 일시 버퍼에 기억된다. 각각의 버퍼에 기억된 비디오 데이터, 오디오 데이터, 및 스트림 이외의 데이터는, 다중화기(MPX)로 동기 신호와 함께 다중화되어, 에러 정정 부호 회로(ECC)에서 에러 정정용 코드가 부가된다. 그리고, 변조 회로(MOD)에서 소정의 변조가 걸리고, 소정의 포맷에 따라, 예를 들면, 자기 테이프 등에 일단 기록되고, 재생 장치(1), 재생 장치(141), 또는 재생 장치(401)에서 재생 가능한 기록 매체(11)에 기록되는 소프트웨어가 제작된다.
이 소프트웨어를 필요에 따라, 편집(프리마스터링)하여, 광 디스크에 기록해야 할 포맷의 신호가 생성된다. 그리고, 이 기록 신호에 대응하여, 레이저빔이 변조되고, 이 레이저빔이 원반 상의 포토레지스트 상에 조사된다. 이로써, 원반 상의 포토레지스트가 기록 신호에 대응하여 노광된다.
그 후, 이 원반을 현상하여, 원반 상에 피트를 출현시킨다. 이와 같이 하여 준비된 원반에, 예를 들면, 전기 주조 등의 처리를 실시하여, 유리 원반 상의 피트를 전사한 금속 원반을 제작한다. 이 금속 원반으로부터, 또한 금속 스탬퍼를 제작하고, 이것을 성형용 금형으로 한다.
이 성형용 금형에, 예를 들면, 인젝션 등에 의해 PMMA(아크릴) 또는 PC(폴리카보네이트) 등의 재료를 주입하여, 고정화시킨다. 또는, 금속 스탬퍼 상에 2P(자외선 경화 수지) 등을 도포한 후, 자외선을 조사하여 경화시킨다. 이로써, 금속 스탬퍼 상의 피트를 수지로 이루어지는 레플리카 상에 전사할 수 있다.
이와 같이 하여 생성된 레플리카 상에, 반사막이 증착 또는 스퍼터링 등에 의해 형성된다. 또한, 생성된 레플리카 상에, 반사막이 스핀코트에 의해 형성된다.
그 후, 이 디스크에 대하여 내외 직경의 가공이 실시되어, 2매의 디스크를 접착하는 등 필요한 처치가 행해진다. 또한, 레이블을 접착하거나, 허브가 장착되어, 카트리지에 삽입된다. 이와 같이 하여 재생 장치(1), 재생 장치(141), 또는 재생 장치(401)에 의해 재생 가능한 데이터가 기록된 기록 매체(11)가 완성된다.
전술한 일련의 처리는 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 이 경우, 전술한 처리는 도 90에 나타난 바와 같은 퍼스널 컴퓨터(500)에 의해 실행된다.
도 90에서, CPU(Central Processing Unit)(501)는 ROM(Read Only Memory)(502)에 기억되어 있는 프로그램, 또는 기억부(508)로부터 RAM(Random Access Memory)(503)에 로드된 프로그램에 따라, 각종의 처리를 실행한다. RAM(503)에는 또 CPU(501)가 각종의 처리를 실행하는 데 있어서 필요한 데이터 등이 적당히 기억된다.
CPU(501), ROM(502), 및 RAM(503)은 내부 버스(504)를 통해 서로 접속되어 있다. 이 내부 버스(504)에는 또 입출력 인터페이스(505)도 접속되어 있다.
입출력 인터페이스(505)에는, 키보드, 마우스 등으로 이루어지는 입력부(506), CRT, LCD 등으로 이루어지는 디스플레이, 스피커 등으로 이루어지는 출력부(507), 하드 디스크 등으로 구성되는 기억부(508), 및 모뎀, 터미널 어댑터 등으로 구성되는 통신부(509)가 접속되어 있다. 통신부(509)는 전화 회선이나 CATV를 포함하는 각종의 네트워크를 통한 통신 처리를 행한다.
입출력 인터페이스(505)에는, 또 필요에 따라, 드라이브(510)가 접속되고, 자기 디스크, 광 디스크, 광자기 디스크, 또는 반도체 메모리 등에 의해 이루어지는 착탈 가능 미디어(521)가 적당히 장착되고, 그것으로부터 판독된 컴퓨터 프로그램이, 필요에 따라, 기억부(508)에 인스톨된다.
일련의 처리를 소프트웨어에 의해 실행시키는 경우에는, 그 소프트웨어를 구성하는 프로그램이 네트워크나 기록 매체로부터 인스톨된다.
이 기록 매체는 도 90에 나타낸 바와 같이, 컴퓨터와는 별도로, 사용자에게 프로그램을 제공하기 위해 배포되는, 프로그램이 기록되어 있는 착탈 가능 미디어(521)로 이루어지는 패키지 미디어에 의해 구성될 뿐만 아니라, 장치 본체에 미리 내장된 상태에서 사용자에게 제공되는, 프로그램이 기록되어 있는 ROM(502)이나 기억부(508)가 포함되는 하드 디스크 등으로 구성된다.
그리고, 본 명세서에서, 컴퓨터 프로그램을 기술하는 스텝은 기재된 순서에 따라, 시계열적으로 행해지는 처리는 물론, 반드시 시계열적으로 처리되지 않아도, 병렬적 또는 개별적으로 실행되는 처리도 포함하는 것이다.
그리고, 본 발명의 실시예는, 전술한 실시예에 한정되지 않고, 본 발명의 요지를 벗어나지 않는 범위에서 여러 가지의 변경이 가능하다.

Claims (21)

  1. 스트림을 재생하는 재생 장치에 있어서,
    적어도 1개의 스트림의 시간축 상의 위치를 나타내는 주(主) 재생 패스, 적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부(副) 재생 패스, 및 재생하는 스트림을 선택하기 위한 선택 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림을 선택하고, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 선택하기 위한 상기 선택 정보를 포함하는 재생 관리 정보를 취득하는 취득 수단과,
    상기 취득 수단에 의해 취득된 상기 재생 관리 정보에 포함되는 상기 선택 정보에 따라, 재생하는 스트림의 선택을 접수하는 접수 수단과,
    상기 접수 수단에 의해, 상기 재생하는 스트림의 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림을, 상기 주 재생 패스를 참조하여 판독하는 동시에, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림을, 대응하는 상기 부 재생 패스를 참조하여 판독하는 판독 수단과,
    상기 판독 수단에 의해 판독된 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림과 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림 중에, 소정의 종류의 스트림이 2 이상 포함되어 있는 경우, 상기 소정의 종류의 2 이상의 스트림을 합성하는 합성 수단
    을 구비하고,
    상기 선택 정보에는, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보가 추가로 포함되고,
    상기 접수 수단은, 상기 선택 정보에 따라,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림의 재생과,
    상기 부 재생 패스에 의해 참조되는 상기 제2 스트림의 재생과,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과는 상이한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생과,
    상기 부 재생 패스에 의해 참조되는 상기 제2 스트림끼리를 조합한 재생과,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과 동일한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생 중 어느 하나에서 재생되는 스트림의 선택을 접수하고,
    상기 판독 수단은 상기 접수 수단에 의해, 상기 제1 스트림과 상기 제2 스트림과의 재생 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되는 상기 소정의 종류의 상기 제1 스트림과 함께, 1 이상의 상기 부 재생 패스 중 소정의 것에 의해 참조되는 상기 소정의 종류의 상기 제2 스트림을 판독하고,
    상기 합성 수단은 상기 판독 수단에 의해 판독된 상기 소정의 종류의 상기 제1 스트림과 상기 제2 스트림을 합성하는 것을 특징으로 하는, 재생 장치.
  2. 제1항에 있어서,
    상기 판독 수단에 의해 판독된 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림과 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림과의 각각을 복호하는 복호 수단을 추가로 구비하는 것을 특징으로 하는 재생 장치.
  3. 제1항에 있어서,
    상기 합성 수단에 의해 합성되는 대상의 상기 소정의 종류의 스트림은 오디오 스트림, 또는 비디오 스트림인 것을 특징으로 하는 재생 장치.
  4. 제1항에 있어서,
    상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 스트림은 제1 비디오 스트림이며,
    상기 선택 정보에는, 상기 제1 비디오 스트림에 대응하는 제1 오디오 스트림과는 독립된 제2 오디오 스트림과, 상기 제1 오디오 스트림과의 조합을 정의(定義)하는 정보가 추가로 포함되어 있는 것을 특징으로 하는 재생 장치.
  5. 제1항에 있어서,
    상기 취득 수단에 의해 취득되는 상기 재생 관리 정보는 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 소정의 종류의 2개의 스트림의 조합을 나타내는 정보를 추가로 포함하고,
    상기 판독 수단은 상기 접수 수단에 의해, 상기 소정의 종류의 2개의 스트림의 조합의 재생 선택이 접수된 경우, 상기 부 재생 패스에 의해 참조되는, 대응하는 상기 소정의 종류의 2개의 스트림을 판독하고,
    상기 합성 수단은 상기 판독 수단에 의해 판독된 상기 소정의 종류의 2개의 스트림을 합성하는 것을 특징으로 하는 재생 장치.
  6. 제1항에 있어서,
    상기 선택 정보는 합성해야 할 스트림이 엔트리되어 있는지 여부를 나타내는 정보를 추가로 포함하고,
    상기 접수 수단은 합성해야 할 스트림이 엔트리되어 있는지 여부를 나타내는 정보에 따라, 상기 주 재생 패스 및 상기 부 재생 패스 중 적어도 어느 한쪽의 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 스트림으로부터, 동종 스트림의 조합의 선택을 접수하거나, 또는 동종 스트림의 단독의 선택을 접수하고,
    상기 판독 수단은 상기 선택 정보에 따라, 상기 접수 수단에 의해 접수된 엔트리되어 있는 스트림을 판독하는 것을 특징으로 하는 재생 장치.
  7. 제1항에 있어서,
    상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 스트림은 제1 비디오 스트림이며,
    상기 선택 정보에는, 상기 제1 비디오 스트림과는 독립된 제2 비디오 스트림과, 상기 제2 비디오 스트림에 대응하는 제2 오디오 스트림과의 조합을 정의하는 정보가 추가로 포함되어 있는 것을 특징으로 하는 재생 장치.
  8. 제1항에 있어서,
    상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 스트림은 제1 비디오 스트림이며,
    상기 선택 정보에는, 상기 제1 비디오 스트림과는 독립된 제2 비디오 스트림과, 상기 제2 비디오 스트림에 대응하는 제1 화상 정보의 조합을 정의하는 정보가 추가로 포함되어 있는 것을 특징으로 하는 재생 장치.
  9. 제8항에 있어서,
    상기 제1 비디오 스트림에 대응하는 제2 화상 정보 및 상기 제2 비디오 스트림에 대응하는 상기 제1 화상 정보를 재생 표시하는지 여부를 나타내는 정보를 유지하는 제1 유지 수단과,
    상기 제2 화상 정보가 표시되는 경우에, 상기 선택 정보에 의해 선택 가능하도록 설정되어 있는 상기 제2 화상 정보의 스트림 중, 어느 스트림이 재생되는지를 나타내는 정보를 유지하는 제2 유지 수단과,
    상기 제1 화상 정보가 표시되는 경우에, 상기 선택 정보에 의해 선택 가능하도록 설정되어 있는 상기 제1 화상 정보의 스트림 중, 어느 스트림이 재생되는지를 나타내는 정보를 유지하는 제3 유지 수단과,
    상기 제1 화상 정보 또는 상기 제2 화상 정보 중 어느 화상 정보를 재생 표시하는지를 나타내는 정보를 유지하는 제4 유지 수단
    을 추가로 구비하고,
    상기 판독 수단은 상기 제1 유지 수단, 상기 제2 유지 수단, 상기 제3 유지 수단, 및 상기 제4 유지 수단에 각각 유지되어 있는 정보를 또한 참조하여, 재생되는 제1 화상 정보 또는 상기 제2 화상 정보에 대응하는 스트림을 판독하는 것을 특징으로 하는 재생 장치.
  10. 제1항에 있어서,
    상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 스트림은 제1 비디오 스트림이며,
    상기 선택 정보에는, 상기 제1 비디오 스트림과는 독립된 제2 비디오 스트림과, 상기 제2 비디오 스트림에 대응하는 텍스트 정보가 추가로 포함되어 있는 것을 특징으로 하는 재생 장치.
  11. 제1항에 있어서,
    상기 부 재생 패스의 타입이, 그 부 재생 패스에 의해 참조되는 스트림의 종류에 따라, 1 이상 정의되어 있고,
    상기 재생 관리 정보에 포함되는 1 이상의 상기 부 재생 패스는 정의된 1 이상의 상기 타입 중 소정의 1개로 분류되어 있고, 그 분류의 결과가 추가로 상기 재생 관리 정보에 포함되어 있는 것을 특징으로 하는 재생 장치.
  12. 제11항에 있어서,
    정의된 1 이상의 상기 타입에는, 대상의 부 재생 패스에 의해 참조되는 스트림의 종류가 1 종류 이상이라고 하는 타입을 포함하는 것을 특징으로 하는 재생 장치.
  13. 제12항에 있어서,
    정의된 1 이상의 상기 타입에는, 대상의 부 재생 패스에 의해 참조되는 스트림의 종류가 1 종류 이상으로서, 1 종류 이상의 상기 스트림은 상기 주 재생 패스에 의해 참조되는 스트림이 포함되어 있는 파일과는 상이한 파일에 포함되어 있다고 하는 타입을 포함하는 것을 특징으로 하는 재생 장치.
  14. 제12항에 있어서,
    정의된 1 이상의 상기 타입에는, 대상의 부 재생 패스에 의해 참조되는 스트림의 종류가 1 종류 이상으로서, 1 종류 이상의 상기 스트림은 상기 주 재생 패스에 의해 참조되는 스트림이 포함되어 있는 파일과 동일 파일에 포함되어 있다고 하는 타입을 포함하는 것을 특징으로 하는 재생 장치.
  15. 제1항에 있어서,
    사용자에 의한 조작 입력의 보조가 되는 정보를 표시하는 표시 화면의 표시를 제어하는 표시 제어 수단을 추가로 포함하고,
    상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 스트림은 제1 비디오 스트림이며,
    상기 접수 수단에 의해, 상기 제1 비디오 스트림과 동기하여 재생시키는 상기 제1 비디오 스트림과는 독립된 제2 비디오 스트림의 선택이 접수된 경우, 상기 표시 제어 수단은 상기 제2 비디오 스트림에 대응하여 재생 가능한 스트림의 일람(一覽)의 상기 표시 화면으로의 표시를 제어하고,
    상기 접수 수단은 상기 표시 제어 수단에 의해 표시가 제어된 상기 표시 화면을 참조한 상기 사용자로부터의, 상기 제2 비디오 스트림에 대응하여 재생 가능한 스트림의 선택을 접수하는 것을 특징으로 하는 재생 장치.
  16. 스트림을 재생하는 재생 장치의 재생 방법에 있어서,
    적어도 1개의 스트림의 시간축 상의 위치를 나타내는 주 재생 패스, 적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스, 및 재생하는 스트림을 선택하기 위한 선택 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림을 선택하고, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 선택하기 위한 상기 선택 정보를 포함하는 재생 관리 정보를 취득하는 취득 스텝과,
    상기 취득 스텝의 처리에 의해 취득된 상기 재생 관리 정보에 포함되는 상기 선택 정보에 따라, 재생하는 스트림의 선택을 접수하는 접수 스텝과,
    상기 접수 스텝의 처리에 의해, 상기 재생하는 스트림의 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림을, 상기 주 재생 패스를 참조하여 판독하는 동시에, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림을, 대응하는 상기 부 재생 패스를 참조하여 판독하는 판독 스텝과,
    상기 판독 스텝의 처리에 의해 판독된 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림과 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림 중에, 소정의 종류의 스트림이 2 이상 포함되어 있는 경우, 상기 소정의 종류의 2 이상의 스트림을 합성하는 합성 스텝
    을 포함하고,
    상기 선택 정보에는, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보가 추가로 포함되고,
    상기 접수 스텝의 처리에서는, 상기 선택 정보에 따라,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림의 재생과,
    상기 부 재생 패스에 의해 참조되는 상기 제2 스트림의 재생과,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과는 상이한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생과,
    상기 부 재생 패스에 의해 참조되는 상기 제2 스트림끼리를 조합한 재생과,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과 동일한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생 중 어느 하나에서 재생되는 스트림의 선택을 접수하고,
    상기 판독 스텝의 처리에서는, 상기 접수 스텝의 처리에 의해, 상기 제1 스트림과 상기 제2 스트림과의 재생 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되는 상기 소정의 종류의 상기 제1 스트림과 함께, 1 이상의 상기 부 재생 패스 중 소정의 것에 의해 참조되는 상기 소정의 종류의 상기 제2 스트림을 판독하고,
    상기 합성 스텝의 처리에서는, 상기 판독 스텝의 처리에 의해 판독된 상기 소정의 종류의 상기 제1 스트림과 상기 제2 스트림이 합성되는 것을 특징으로 하는, 재생 방법.
  17. 스트림을 재생하기 위한 처리를 컴퓨터로 하여금 실행하게 하기 위한 프로그램이 기록된, 컴퓨터로 판독 가능한 기록 매체로서,
    적어도 1개의 스트림의 시간축 상의 위치를 나타내는 주 재생 패스, 적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스, 및 재생하는 스트림을 선택하기 위한 선택 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 스트림을 선택하고, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 스트림을 선택하기 위한 상기 선택 정보를 포함하는 재생 관리 정보를 취득하는 취득 스텝과,
    상기 취득 스텝의 처리에 의해 취득된 상기 재생 관리 정보에 포함되는 상기 선택 정보에 따라, 재생하는 스트림의 선택을 접수하는 접수 스텝과,
    상기 접수 스텝의 처리에 의해, 상기 재생하는 스트림의 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림을, 상기 주 재생 패스를 참조하여 판독하는 동시에, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중에서 선택이 접수된 스트림을, 대응하는 상기 부 재생 패스를 참조하여 판독하는 판독 스텝과,
    상기 판독 스텝의 처리에 의해 판독된 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림과 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 스트림 중에, 소정의 종류의 스트림이 2 이상 포함되어 있는 경우, 상기 소정의 종류의 2 이상의 스트림을 합성하는 합성 스텝
    을 포함하고,
    상기 선택 정보에는, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제1 스트림과, 상기 부 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 소정의 종류의 제2 스트림과의 조합을 나타내는 정보가 추가로 포함되고,
    상기 접수 스텝의 처리에서는, 상기 선택 정보에 따라,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림의 재생과,
    상기 부 재생 패스에 의해 참조되는 상기 제2 스트림의 재생과,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과는 상이한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생과,
    상기 부 재생 패스에 의해 참조되는 상기 제2 스트림끼리를 조합한 재생과,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과 동일한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생 중 어느 하나에서 재생되는 스트림의 선택을 접수하고,
    상기 판독 스텝의 처리에서는, 상기 접수 스텝의 처리에 의해, 상기 제1 스트림과 상기 제2 스트림과의 재생 선택이 접수된 경우, 상기 주 재생 패스에 의해 참조되는 상기 소정의 종류의 상기 제1 스트림과 함께, 1 이상의 상기 부 재생 패스 중 소정의 것에 의해 참조되는 상기 소정의 종류의 상기 제2 스트림을 판독하고,
    상기 합성 스텝의 처리에서는, 상기 판독 스텝의 처리에 의해 판독된 상기 소정의 종류의 상기 제1 스트림과 상기 제2 스트림이 합성되는 처리를 컴퓨터로 하여금 실행하게 하는 프로그램이 기록된, 컴퓨터로 판독 가능한 기록 매체.
  18. 적어도 1개의 스트림의 재생을 관리하는 정보인 재생 관리 정보를 포함하는 데이터를 기록하는 기록 매체로서,
    상기 재생 관리 정보는,
    적어도 1개의 상기 스트림의 시간축 상의 위치를 나타내는 주 재생 패스와,
    적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스와,
    상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 제1 스트림과, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 제2 스트림을 재생하는 상기 스트림으로서 선택하기 위한 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 1 이상의 종류의 제1 스트림과, 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 상기 1 이상의 종류의 제2 스트림과의 조합을 나타내는 정보를 포함하는 선택 정보; 및
    상기 선택 정보에 따라,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림의 재생과,
    상기 부 재생 패스에 의해 참조되는 상기 제2 스트림의 재생과,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과는 상이한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생과,
    상기 부 재생 패스에 의해 참조되는 상기 제2 스트림끼리를 조합한 재생과,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과 동일한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생 중 어느 하나에서 재생되는 스트림의 선택을 접수하기 위한 정보
    를 포함하는 기록 매체.
  19. 재생 장치에서 재생 가능한 데이터가 기록되는 기록 매체의 제조 방법으로서,
    적어도 1개의 스트림의 재생을 관리하는 정보인 재생 관리 정보를 포함하고,
    상기 재생 관리 정보에,
    적어도 1개의 상기 스트림의 시간축 상의 위치를 나타내는 주 재생 패스와,
    적어도 1개의 다른 스트림의 시간축 상의 위치를 나타내는 1 이상의 부 재생 패스와,
    상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 상기 스트림 중 1 이상의 종류의 제1 스트림과, 1 이상의 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 1 이상의 종류의 제2 스트림을 재생하는 상기 스트림으로서 선택하기 위한 정보로서, 상기 주 재생 패스에 의해 참조되어 시간축 상의 위치가 나타난 상기 1 이상의 종류의 제1 스트림과, 상기 부 재생 패스 중 어느 하나에 의해 참조되어 시간축 상의 위치가 나타난 상기 1 이상의 종류의 제2 스트림과의 조합을 나타내는 정보를 포함하는 선택 정보; 및
    상기 선택 정보에 따라,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림의 재생과,
    상기 부 재생 패스에 의해 참조되는 상기 제2 스트림의 재생과,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과는 상이한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생과,
    상기 부 재생 패스에 의해 참조되는 상기 제2 스트림끼리를 조합한 재생과,
    상기 주 재생 패스에 의해 참조되는 상기 제1 스트림과, 상기 제1 스트림과 동일한 파일에 포함되어 있는 상기 부 재생 패스에 의해 참조되는 상기 제2 스트림을 조합한 재생중 어느 하나에서 재생되는 스트림의 선택을 접수하기 위한 정보
    를 포함하는 데이터 구조를 가지는 데이터를 생성하고,
    생성된 상기 데이터를 상기 기록 매체에 기록하는
    스텝을 포함하는 기록 매체의 제조 방법.
  20. 삭제
  21. 삭제
KR1020067023025A 2005-03-04 2006-11-02 재생 장치 및 재생 방법, 프로그램, 기록 매체, 데이터구조, 및 기록 매체의 제조 방법 KR101265555B1 (ko)

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
JP2005060810 2005-03-04
JPJP-P-2005-00060811 2005-03-04
JPJP-P-2005-00060810 2005-03-04
JP2005060811 2005-03-04
JP2005121046 2005-04-19
JPJP-P-2005-00121046 2005-04-19
JPJP-P-2005-00148044 2005-05-20
JP2005148044 2005-05-20
JP2005250162 2005-08-30
JPJP-P-2005-00250162 2005-08-30
JPJP-P-2005-00274488 2005-09-21
JP2005274488 2005-09-21
JPJP-P-2006-00024073 2006-02-01
JP2006024073A JP4968506B2 (ja) 2005-03-04 2006-02-01 再生装置、再生方法、およびプログラム
PCT/JP2006/303962 WO2006093218A1 (ja) 2005-03-04 2006-03-02 再生装置および再生方法、プログラム、記録媒体、データ構造、並びに、記録媒体の製造方法

Publications (2)

Publication Number Publication Date
KR20070117438A KR20070117438A (ko) 2007-12-12
KR101265555B1 true KR101265555B1 (ko) 2013-05-20

Family

ID=36941247

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067023025A KR101265555B1 (ko) 2005-03-04 2006-11-02 재생 장치 및 재생 방법, 프로그램, 기록 매체, 데이터구조, 및 기록 매체의 제조 방법

Country Status (7)

Country Link
US (2) US8351767B2 (ko)
EP (1) EP1855287A4 (ko)
JP (1) JP4968506B2 (ko)
KR (1) KR101265555B1 (ko)
MY (1) MY151966A (ko)
TW (1) TW200644636A (ko)
WO (1) WO2006093218A1 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2001267581A1 (en) * 2000-07-15 2002-01-30 Filippo Costanzo Audio-video data switching and viewing system
EP2562758B1 (en) 2004-02-16 2018-05-30 Sony Corporation Reproduction device, reproduction method, and program
JP4968506B2 (ja) * 2005-03-04 2012-07-04 ソニー株式会社 再生装置、再生方法、およびプログラム
JP4870493B2 (ja) * 2005-08-09 2012-02-08 パナソニック株式会社 再生装置、記録方法、再生方法、システムlsi、プログラム
KR101375067B1 (ko) 2005-08-09 2014-03-17 파나소닉 주식회사 기록매체, 재생장치, 재생방법, 프로그램
JP4625781B2 (ja) * 2006-03-22 2011-02-02 株式会社東芝 再生装置
JP5063254B2 (ja) * 2006-10-17 2012-10-31 キヤノン株式会社 動画再生装置及び動画再生方法
KR101058042B1 (ko) * 2007-09-06 2011-08-19 삼성전자주식회사 멀티스트림 재생장치 및 재생방법
US8782700B2 (en) * 2010-04-26 2014-07-15 International Business Machines Corporation Controlling one or more attributes of a secondary video stream for display in combination with a primary video stream
JP5652642B2 (ja) * 2010-08-02 2015-01-14 ソニー株式会社 データ生成装置およびデータ生成方法、データ処理装置およびデータ処理方法
GB201017174D0 (en) * 2010-10-12 2010-11-24 Muvemedia Ltd System and method for delivering multilingual video or film sound tracks or multilingual spoken or sung dialog for synchronization and playback
US9398322B2 (en) * 2011-04-27 2016-07-19 Time Warner Cable Enterprises Llc Multi-lingual audio streaming
US20150296247A1 (en) * 2012-02-29 2015-10-15 ExXothermic, Inc. Interaction of user devices and video devices
KR101919787B1 (ko) * 2012-05-09 2018-11-19 엘지전자 주식회사 이동 단말기 및 그 제어방법
US9883136B2 (en) 2013-04-30 2018-01-30 Dolby Laboratories Licensing Corporation System and method of outputting multi-lingual audio and associated audio from a single container
KR20160041398A (ko) * 2014-10-07 2016-04-18 삼성전자주식회사 컨텐츠 처리 장치 및 그의 컨텐츠 처리 방법
CA2953311A1 (en) 2016-12-29 2018-06-29 Dressbot Inc. System and method for multi-user digital interactive experience
US10841660B2 (en) * 2016-12-29 2020-11-17 Dressbot Inc. System and method for multi-user digital interactive experience
JP6953771B2 (ja) * 2017-04-11 2021-10-27 船井電機株式会社 再生装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100206786B1 (ko) * 1996-06-22 1999-07-01 구자홍 디브이디 재생기의 복수 오디오 처리 장치
JP2004127396A (ja) * 2002-10-01 2004-04-22 Pioneer Electronic Corp 情報記録媒体、情報記録装置及び方法、情報再生装置及び方法、情報記録再生装置及び方法、記録又は再生制御用のコンピュータプログラム、並びに制御信号を含むデータ構造

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3784853B2 (ja) * 1995-04-14 2006-06-14 株式会社東芝 再生装置と再生方法と記録方法
JPH11298845A (ja) 1998-04-08 1999-10-29 Matsushita Electric Ind Co Ltd 光ディスク、光ディスクレコーダおよび光ディスクプレーヤ
JP4599740B2 (ja) 2000-04-21 2010-12-15 ソニー株式会社 情報処理装置および方法、記録媒体、プログラム、並びに記録媒体
TW522379B (en) * 2000-05-26 2003-03-01 Cyberlink Corp DVD playback system for displaying two types of captions and the playback method
KR100399999B1 (ko) * 2001-02-05 2003-09-29 삼성전자주식회사 멀티스트림이 기록된 기록매체, 그 기록장치, 그기록방법, 그 재생장치, 및 그 재생방법
JP4409150B2 (ja) * 2001-06-11 2010-02-03 三星電子株式会社 多国語マークアップ文書支援情報が記録された情報貯蔵媒体、その再生装置及び再生方法
JP2003101957A (ja) 2001-09-19 2003-04-04 Matsushita Electric Ind Co Ltd マルチアングル再生装置
JP3921593B2 (ja) * 2001-11-30 2007-05-30 ソニー株式会社 情報処理装置および方法、プログラム格納媒体、プログラム、並びに情報記録媒体
JP3954406B2 (ja) * 2002-02-18 2007-08-08 パイオニア株式会社 情報記録媒体、情報記録装置及び方法、情報再生装置及び方法、情報記録再生装置及び方法、記録又は再生制御用のコンピュータプログラム、並びに制御信号を含むデータ構造
JP2003249057A (ja) * 2002-02-26 2003-09-05 Toshiba Corp デジタル情報媒体を用いるエンハンスド・ナビゲーション・システム
US7676142B1 (en) * 2002-06-07 2010-03-09 Corel Inc. Systems and methods for multimedia time stretching
CA2500034C (en) * 2002-09-26 2012-01-10 Koninklijke Philips Electronics N.V. Apparatus for receiving a digital information signal
EP1408505A1 (en) * 2002-10-11 2004-04-14 Deutsche Thomson-Brandt Gmbh Method and apparatus for synchronizing data streams containing audio, video and/or other data
JP4715094B2 (ja) * 2003-01-30 2011-07-06 ソニー株式会社 再生装置、再生方法、再生プログラムおよび記録媒体
EP1603335B1 (en) 2003-02-19 2008-04-30 Matsushita Electric Industrial Co., Ltd. Recording medium, reproduction device, recording method, program, and reproduction method
KR101027200B1 (ko) * 2003-02-21 2011-04-06 파나소닉 주식회사 기록매체, 재생장치, 기록방법 및 재생방법
US7693394B2 (en) * 2003-02-26 2010-04-06 Lg Electronics Inc. Recording medium having data structure for managing reproduction of data streams recorded thereon and recording and reproducing methods and apparatuses
JP4228767B2 (ja) * 2003-04-25 2009-02-25 ソニー株式会社 再生装置、再生方法、再生プログラムおよび記録媒体
WO2005011273A1 (ja) 2003-06-18 2005-02-03 Matsushita Electric Industrial Co., Ltd. 再生装置、記録媒体、プログラム、再生方法
EP2562758B1 (en) 2004-02-16 2018-05-30 Sony Corporation Reproduction device, reproduction method, and program
WO2005088634A1 (en) 2004-03-17 2005-09-22 Lg Electronics Inc. Recording medium, method, and apparatus for reproducing text subtitle streams
JP2005332521A (ja) * 2004-05-21 2005-12-02 Toshiba Corp 情報記録媒体及び情報再生装置
US7725010B2 (en) 2004-08-17 2010-05-25 Lg Electronics, Inc. Method and apparatus of reproducing data recorded on recording medium and local storage
US7609947B2 (en) * 2004-09-10 2009-10-27 Panasonic Corporation Method and apparatus for coordinating playback from multiple video sources
KR20060047549A (ko) * 2004-10-12 2006-05-18 엘지전자 주식회사 로컬 스토리지를 이용한 기록매체 재생방법 및 재생장치
CN101833966B (zh) * 2004-12-01 2013-05-08 松下电器产业株式会社 再现装置和再现方法
EP1843351B1 (en) * 2005-01-28 2012-08-22 Panasonic Corporation Recording medium, program, and reproduction method
JP4968506B2 (ja) * 2005-03-04 2012-07-04 ソニー株式会社 再生装置、再生方法、およびプログラム
JP4870493B2 (ja) * 2005-08-09 2012-02-08 パナソニック株式会社 再生装置、記録方法、再生方法、システムlsi、プログラム
KR101375067B1 (ko) * 2005-08-09 2014-03-17 파나소닉 주식회사 기록매체, 재생장치, 재생방법, 프로그램
BRPI0615070A2 (pt) * 2005-08-22 2016-09-13 Lg Electronics Inc método e aparelho para gerenciar reprodução de áudio para pelo menos um caminho de apresentação picture-in-picture, meio de gravação, método e aparelho para gravar estrutura de dados

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100206786B1 (ko) * 1996-06-22 1999-07-01 구자홍 디브이디 재생기의 복수 오디오 처리 장치
JP2004127396A (ja) * 2002-10-01 2004-04-22 Pioneer Electronic Corp 情報記録媒体、情報記録装置及び方法、情報再生装置及び方法、情報記録再生装置及び方法、記録又は再生制御用のコンピュータプログラム、並びに制御信号を含むデータ構造

Also Published As

Publication number Publication date
TW200644636A (en) 2006-12-16
US8351767B2 (en) 2013-01-08
JP4968506B2 (ja) 2012-07-04
MY151966A (en) 2014-07-31
US20080285948A1 (en) 2008-11-20
JP2007116649A (ja) 2007-05-10
EP1855287A4 (en) 2010-11-10
KR20070117438A (ko) 2007-12-12
US20130004140A1 (en) 2013-01-03
WO2006093218A1 (ja) 2006-09-08
TWI316817B (ko) 2009-11-01
EP1855287A1 (en) 2007-11-14

Similar Documents

Publication Publication Date Title
KR101265555B1 (ko) 재생 장치 및 재생 방법, 프로그램, 기록 매체, 데이터구조, 및 기록 매체의 제조 방법
JP4923751B2 (ja) 再生装置、並びに記録媒体及びその製造方法
KR101244148B1 (ko) 데이터 생성 방법, 기록 장치, 기록 방법, 저장 매체, 재생 장치 및 재생 방법
KR101365723B1 (ko) 재생장치 및 재생방법, 프로그램, 프로그램 저장매체,데이터구조, 기록매체, 기록장치 및 기록매체의 제조방법
JP4822081B2 (ja) 再生装置、再生方法、および記録媒体
JP5382478B2 (ja) 再生装置、および再生方法
JP4720676B2 (ja) 情報処理装置および情報処理方法、データ構造、記録媒体の製造方法、プログラム、並びに、プログラム格納媒体
JP2008193604A (ja) 再生装置および方法、並びにプログラム
JP5234144B2 (ja) 再生装置、並びに記録媒体及びその製造方法
JP4821456B2 (ja) 情報処理装置および情報処理方法、プログラム、データ構造、並びに記録媒体
JP2008052836A (ja) 情報処理装置および情報処理方法、プログラム、並びに、プログラム格納媒体

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee