KR101231302B1 - 기록 장치, 기록 방법 및 저장 매체 - Google Patents

기록 장치, 기록 방법 및 저장 매체 Download PDF

Info

Publication number
KR101231302B1
KR101231302B1 KR1020077028423A KR20077028423A KR101231302B1 KR 101231302 B1 KR101231302 B1 KR 101231302B1 KR 1020077028423 A KR1020077028423 A KR 1020077028423A KR 20077028423 A KR20077028423 A KR 20077028423A KR 101231302 B1 KR101231302 B1 KR 101231302B1
Authority
KR
South Korea
Prior art keywords
title
file
data
playlist
recording
Prior art date
Application number
KR1020077028423A
Other languages
English (en)
Other versions
KR20080111377A (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 KR20080111377A publication Critical patent/KR20080111377A/ko
Application granted granted Critical
Publication of KR101231302B1 publication Critical patent/KR101231302B1/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
    • 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/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/93Regeneration of the television signal or of selected parts thereof
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/213Read-only discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2541Blu-ray discs; Blue laser DVR discs
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Television Signal Processing For Recording (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

BD-ROM 규격을 기록 가능한 기록 매체에 대하여 확장한 경우에, 타이틀의 삭제 시에 타이틀 번호를 유지하는 시스템과, 타이틀의 삭제 시에 타이틀의 기록순을 유지하고 타이틀 번호를 변경하는 시스템의 양립을 가능하게 한다. 플레이 리스트에 대하여, 그 플레이 리스트의 생성 시에 속한 타이틀을 나타내는 정보 title_id_ref를 부가한다. 타이틀의 기록순을 유지하고 번호를 유지하지 않는 기록기 A에서 타이틀이 삭제된 디스크를, 타이틀 번호를 유지하는 기록기 B에 장전하였을 때, 기록기 B는, 정보 title_id_ref에 기초하여 인덱스의 타이틀 번호를 재기입한다. 삭제되어 결번으로 된 타이틀에 대응하는 플레이 리스트 및 그 플레이 리스트를 참조하는 오브젝트를 생성하고, 그 오브젝트를 호출하는 타이틀을 인덱스에 등록한다. 기록기 A와 기록기 B 사이에서, 타이틀 편집에 관하여 호환성을 유지할 수 있다.
Figure R1020077028423
메뉴 화면, 인덱스 테이블, 플레이백, 무비 오브젝트, 플레이 리스트

Description

기록 장치, 기록 방법 및 저장 매체{RECORDING DEVICE, RECORDING METHOD, AND RECORDING MEDIUM}
본 발명은, AV(Audio/Video) 스트림과, 그 재생 구간이나 재생 순서를 나타내는 재생 제어 정보와, 그 재생 제어 정보를 지정하는 오브젝트와, 그 오브젝트를 호출하는 타이틀이 기술되는 테이블을 갖는 포맷을 이용하여 기록되는 기록 매체와 호환성을 갖게 하여, 메뉴 화면을 용이하게 작성할 수 있도록 한 기록 장치, 기록 방법 및 기록 프로그램에 관한 것이다.
예를 들면 블루레이 디스크(Blu-ray Disc: 등록 상표)의 재생 전용 포맷인 「Blu-ray Disc Read-Only Format」와 호환성을 갖게 한 메뉴 화면을 용이하게 작성할 수 있도록 한 기록 장치, 기록 방법 및 기록 프로그램에 적용할 수 있다.
근년, 기록 가능하고 기록 재생 장치로부터 제거 가능한 디스크형 기록 매체의 규격으로서, Blu-ray Disc 규격이 제안되어 있다. Blu-ray Disc 규격에서는, 기록 매체로서 직경 12cm, 커버층 0.1mm의 디스크를 이용하고, 광학계로서 파장 405nm의 청자색 레이저, 개구수 0.85의 대물 렌즈를 이용하여, 최대 27GB(기가바이트)의 기록 용량을 실현하고 있다. 이에 의해, 일본의 BS 디지털 하이비전 방송을, 화질을 열화시키지 않고 2시간 이상 기록하는 것이 가능하다.
이 기록 가능 광 디스크에 기록하는 AV(Audio/Video) 신호의 소스(공급원)로서는, 종래부터의, 예를 들면 아날로그 텔레비전 방송에 의한 아날로그 신호에 의한 것과, 예를 들면 BS 디지털 방송을 비롯한 디지털 텔레비전 방송에 의한 디지털 신호에 의한 것이 상정되어 있다. Blu-ray Disc 규격에서는, 이들 방송에 의한 AV신호를 기록하는 방법을 정한 규격은, 이미 만들어져 있다.
한편, 현상의 Blu-ray Disc의 파생 규격으로서, 영화나 음악 등이 미리 기록된, 재생 전용의 기록 매체를 개발하는 움직임이 진행되고 있다. 영화나 음악을 기록하기 위한 디스크 형상 기록 매체로서는, 이미 DVD(Digital Versatile Disc)가 널리 보급되어 있지만, 이 Blu-ray Disc의 규격에 기초한 재생 전용 광 디스크는, Blu-ray Disc의 대용량 및 고속의 전송 속도 등을 살려, 하이비전 영상을 고화질 상태 그대로 2시간 이상 수록할 수 있는 점이, 기존의 DVD와는 크게 상이하고, 우위이다.
이 Blu-ray Disc에서의 재생 전용의 기록 매체의 규격을, 이하에서는, BD-ROM(Blu-ray Disc-Read Only Memory) 규격이라고 부른다. 또한, Blu-ray Disc에서의 기록 가능한 기록 매체의 규격을, BD-RE 규격이라고 부른다. 특허 문헌 「일본 특개 2004-21886호」에는, 재생 전용 타입의 Blu-ray Disc인 BD-ROM의 규격에 관하여 기재되어 있다.
BD-ROM 규격에서는, 비디오 데이터는 클립(Clip)을 단위로 하여 기록하고, 클립에 대하여 무비 플레이 리스트(MoviePlayList)를 이용하여 재생 구간을 지정할 수 있다. 여기서, 연속 동기 재생, 즉 실시간 재생이 보장된 재생이 필요한 단위 로 되는 데이터의 통합을, 클립이라고 부른다. 예를 들면, 기록 매체 상에 1개의 파일로서 존재하는 비디오 데이터가 클립으로 된다. 무비 플레이 리스트는, 복수의 클립에 대하여 각각 재생 개시점(IN점) 및 재생 종료점(OUT점)을 지정하고, 그 복수의 클립 각각의 재생 구간 및 재생 순서를 지정할 수 있다.
무비 플레이 리스트(이하, 플레이 리스트라고 약칭함)는, 무비 오브젝트(MovieObject) 내의 네비게이션 커맨드에 의해 지정되며, 재생이 행해진다. 무비 오브젝트는, 타이틀의 입구로서 인덱스 테이블에 열거된다. 인덱스 테이블은, 디스크를 플레이어에 장전했을 때에 최초로 읽어 들여지는 데이터로서, 유저는, 디스크 장전 시에는, 인덱스 테이블에 기술된 타이틀이 보이게 된다.
또한, BD-ROM 규격에서는, 클립 및 플레이 리스트 간에서의 참조 관계를 자유롭게 설정할 수 있도록 되어 있다. 예를 들면, 임의의 클립으로 하는 참조를, 각각 IN점 및 OUT점이 상이한 2개의 플레이 리스트로부터 행할 수 있다. 또한, 타이틀 및 무비 오브젝트 간에서의 참조 관계도, 자유롭게 설정할 수 있다.
도 1은, BD-ROM 규격에 의한 타이틀, 무비 오브젝트 및 플레이 리스트의 일례의 관계를 개략적으로 도시한다. 디스크가 플레이어에 장전되면, 최초로 인덱스 테이블 상의 퍼스트 플레이백(FirstPlayBack) 및 톱 메뉴(TopMenu)가 읽어 들여지고, 이들에 기술되는 무비 오브젝트에 기초하여 트레일러나 톱 메뉴가 재생되게 된다. 유저는, 톱 메뉴로부터, 디스크에 기록되어 있는 각 타이틀의 재생을 지시할 수 있다.
이 도 1의 예에서는, 퍼스트 플레이백 및 톱 메뉴에 의해 무비 오브젝트 #4 가 지정되고, 무비 오브젝트 #4로부터 플레이 리스트 #100 및 플레이 리스트 #101이 참조되어, 퍼스트 플레이백 및 톱 메뉴의 메뉴 화면이 표시된다.
즉, 이 도 1의 예는, 최초로 무비 오브젝트 #4에 의한 메뉴 화면이 표시되고, 메뉴 화면의 표시가 종료되면, 무비 오브젝트 #0의 재생이 개시되고, 메뉴 화면의 표시 중에 예를 들면 타이틀 점프를 선택하면, 타이틀 #1로 점프해서 거기서부터 무비 오브젝트 #0의 재생이 개시되도록 하는 시나리오 구성으로 되어 있다.
톱 메뉴는, 6개의 타이틀 #1∼타이틀 #6의 재생을 네비게이션한다. 타이틀 #1 및 타이틀 #3은, 각각 무비 오브젝트 #0의 재생을 지시하고, 타이틀 #4 및 타이틀 #6은, 각각 무비 오브젝트 #2의 재생을 지시한다. 또한, 톱 메뉴를 재생하기 위한 무비 오브젝트 #4는, 타이틀 #1로 점프함과 함께, 타이틀 #1에 참조되는 무비 오브젝트 #0으로 점프된다. 또한, 무비 오브젝트 #0은, 플레이 리스트 #100 및 플레이 리스트 #101의 2개의 플레이 리스트를 재생하는 커맨드가 기술되고, 무비 오브젝트 #3은, 플레이 리스트 #4, 플레이 리스트 #5 및 플레이 리스트 #6의 3개의 플레이 리스트를 재생하는 커맨드가 기술된다.
전술한 바와 같이, BD-ROM 규격에서는, 1개의 무비 오브젝트에 대한 복수의 타이틀로부터의 재생 지시나, 1개의 무비 오브젝트로부터의 타이틀 및 무비 오브젝트에 대한 점프, 1개의 무비 오브젝트로부터 복수의 플레이 리스트에 대한 재생 지시 등을 행하게 할 수 있다. 이와 같이, 타이틀이나 무비 오브젝트, 플레이 리스트 등의 사이에서의 자유로운 참조 관계를 가능하게 함으로써, 콘텐츠 제작자의 의도의 실현이 용이하게 되는 이점이 있다.
그런데, 종래부터 존재하는, 재생 전용의 기록 매체에 대하여 규정된 DVD-Video(Digital Versatile Disc-Video) 규격을 이용하여, 기록 가능한 DVD에 대하여 AV(Audio/Video) 데이터를 기록하도록 한 DVD 레코더가 보급되어 가고 있다. 이 때문에, 현상에서는 재생 전용의 기록 매체에 대한 규격으로서 개발되고 있는 BD-ROM 규격도, 장래적으로는, 민생용 레코더의 기록 방식의 하나로서 이용되는 것이 상정된다. 이 때문에, BD-ROM 규격을 기록 가능한 기록 매체로 확장하도록 하는 규격의 개발이 진행되고 있다.
BD-ROM 규격을 기록 가능한 기록 매체에 대하여 확장하는 경우라도, 디스크에 기록되는 타이틀은, 인덱스 테이블의 기술에 따라서 재생되는 톱 메뉴로부터 지정되어 재생이 개시되도록 되어 있을 필요가 있다. 또한, 기록 가능한 기록 매체에서는, 타이틀의 삭제나 추가라고 하는, 타이틀의 편집이 가능하게 되어 있는 것이 요구된다.
예를 들면, 그 기록 매체를 비디오 카메라에 이용한 경우, 촬영 버튼 등이 눌러져 촬영이 개시되면 새로운 클립의 기록이 개시되고, 촬영 버튼의 해제 조작 등에 의해 촬영이 종료되어 클립의 기록이 종료되면, 그 클립에 대응하는 타이틀이 추가되게 된다. 마찬가지로, 기록된 클립을 삭제하면, 대응하는 타이틀도 삭제된다.
여기서, 타이틀의 관리를, 예를 들면 클립의 기록순으로 타이틀 번호를 붙여서 행하는 경우에 대해서 생각한다. 이 경우, 타이틀의 관리 방법으로서는, 타이틀의 편집에 상관없이 타이틀 번호를 유지하는 제1 관리 방법과, 타이틀의 편집시 에 타이틀의 기록순은 유지하고, 편집에 따라서 타이틀 번호를 변경하는 제2 관리 방법의 2가지가 생각된다.
예를 들면 도 2A에 일례가 도시되는 바와 같이, 타이틀 #1, 타이틀 #2, 타이틀 #3 및 타이틀 #4가 있는 경우를 생각한다. 이들 중 편집에 의해 타이틀 #2를 삭제한 경우, 제1 관리 방법에서는, 도 2B에 일례가 도시되는 바와 같이, 각각의 타이틀 번호가 유지되고, 삭제된 타이틀 #2가 결번으로 된다. 한편, 제2 관리 방법에서는, 도 2C에 일례가 도시되는 바와 같이, 삭제된 타이틀 #2보다 뒤의 타이틀의 번호가, 타이틀 #2에 대하여 순서대로 채워진다. 도 2C의 예에서는, 편집 전의 타이틀 #3 및 타이틀 #4가, 편집 후에 각각 새로운 타이틀 #2 및 타이틀 #3으로 된다.
레코더에 대하여 이들 제1 관리 방법 및 제2 관리 방법 중 어느 것이 실장될지는, 예를 들면, 레코더의 설계 사상 등에 따라서 결정된다.
그러나, 이 경우, 제1 관리 방법이 실장된 레코더와, 제2 관리 방법이 실장된 레코더 사이에서, 메뉴 화면 등에서의 호환성을 유지할 수 없게 된다고 하는 문제점이 있었다.
예를 들면, 전술한 도 2A, 도 2B 및 도 2C를 참조하여, 제1 관리 방법에 기초하여 작성된 메뉴 화면을, 제2 관리 방법이 실장된 장치에서 재생하면, 도 2B의 타이틀 #4에 대응하는 메뉴가 표시되지 않는 등의 모순이 발생할 가능성이 있다. 마찬가지로, 제2 관리 방법에 기초하여 작성된 메뉴 화면을, 제1 관리 방법이 실장된 장치에서 재생하면, 도 2C의 타이틀 #2가 메뉴에 표시되어 있음에도 불구하고 재생할 수 없는 등의 모순이 발생할 가능성이 있다.
<발명의 개시>
따라서, 본 발명의 목적은, BD-ROM 규격을 기록 가능한 기록 매체에 대하여 확장한 경우에, 타이틀의 편집에 상관없이 타이틀 번호를 유지하는 시스템과, 타이틀의 편집 시에, 타이틀의 기록순은 유지하고, 타이틀 번호를 편집에 따라서 변경하는 시스템이 양립 가능한 기록 장치, 기록 방법 및 기록 프로그램을 제공하는 것에 있다.
본 발명은, 적어도 콘텐츠 데이터와, 콘텐츠 데이터의 재생을 제어하기 위한 재생 제어 정보를 기록 매체에 기록하는 기록 장치로서, 콘텐츠 데이터를 기록 매체에 기록하는 기록부와, 기록 매체에 기록되는 콘텐츠 데이터에 대하여, 콘텐츠 데이터의 속성 정보를 나타내는 클립 정보를 포함하는 클립 정보 파일과, 클립 정보를 호출하는 플레이 리스트를 포함하는 플레이 리스트 파일과, 플레이 리스트를 호출하는 콘텐츠 데이터의 재생 방법을 나타내는 오브젝트를 포함하는 오브젝트 파일과, 오브젝트를 호출하는 타이틀이 기술되는 인덱스 테이블을 포함하는 인덱스 파일을 생성하도록 제어하는 제어부를 가지며, 제어부는, 플레이 리스트 파일의 생성 시에 플레이 리스트 파일이 속하는 타이틀을 나타내는 정보를 인덱스 파일에 대하여 부가하도록 제어하는 것을 특징으로 하는 기록 장치이다.
또한, 본 발명은, 적어도 콘텐츠 데이터와, 콘텐츠 데이터의 재생을 제어하기 위한 재생 제어 정보를 기록 매체에 기록하는 기록 방법으로서, 기록 매체에 기록되는 콘텐츠 데이터에 대하여, 콘텐츠 데이터의 속성 정보를 나타내는 클립 정보 를 포함하는 클립 정보 파일과, 클립 정보를 호출하는 플레이 리스트를 포함하는 플레이 리스트 파일과, 플레이 리스트를 호출하는 콘텐츠 데이터의 재생 방법을 나타내는 오브젝트를 포함하는 오브젝트 파일과, 오브젝트를 호출하는 타이틀이 기술되는 인덱스 테이블을 포함하는 인덱스 파일을 생성하도록 제어되고, 플레이 리스트 파일의 생성 시에 플레이 리스트 파일이 속하는 타이틀을 나타내는 정보를 인덱스 파일에 대하여 부가하도록 제어하는 것을 특징으로 하는 기록 방법이다.
또한, 본 발명은, 적어도 콘텐츠 데이터와, 콘텐츠 데이터의 재생을 제어하기 위한 재생 제어 정보를 기록 매체에 기록하는 기록 방법을 컴퓨터 장치에 실행시키는 기록 프로그램으로서, 기록 방법은, 기록 매체에 기록되는 콘텐츠 데이터에 대하여, 콘텐츠 데이터의 속성 정보를 나타내는 클립 정보를 포함하는 클립 정보 파일과, 클립 정보를 호출하는 플레이 리스트를 포함하는 플레이 리스트 파일과, 플레이 리스트를 호출하는 콘텐츠 데이터의 재생 방법을 나타내는 오브젝트를 포함하는 오브젝트 파일과, 오브젝트를 호출하는 타이틀이 기술되는 인덱스 테이블을 포함하는 인덱스 파일을 생성하도록 제어되고, 플레이 리스트 파일의 생성 시에 플레이 리스트 파일이 속하는 타이틀을 나타내는 정보를 인덱스 파일에 대하여 부가하도록 제어하는 것을 특징으로 하는 기록 프로그램이다.
전술한 바와 같이, 본 발명은, 기록 매체에 기록되는 콘텐츠 데이터에 대하여, 콘텐츠 데이터의 속성 정보를 나타내는 클립 정보를 포함하는 클립 정보 파일과, 클립 정보를 호출하는 플레이 리스트를 포함하는 플레이 리스트 파일과, 플레이 리스트를 호출하는 콘텐츠 데이터의 재생 방법을 나타내는 오브젝트를 포함하는 오브젝트 파일과, 오브젝트를 호출하는 타이틀이 기술되는 인덱스 테이블을 포함하는 인덱스 파일을 생성하도록 제어되고, 플레이 리스트 파일의 생성 시에 플레이 리스트 파일이 속하는 타이틀을 나타내는 정보를 인덱스 파일에 대하여 부가하도록 제어하고 있기 때문에, 다른 기기에서 번호를 유지하지 않는 타이틀 삭제가 이루졌는지의 여부를 용이하게 알 수 있다.
본 발명은, 전술한 바와 같이, 기록 매체에 기록되는 콘텐츠 데이터에 대하여, 콘텐츠 데이터의 속성 정보를 나타내는 클립 정보를 포함하는 클립 정보 파일과, 클립 정보를 호출하는 플레이 리스트를 포함하는 플레이 리스트 파일과, 플레이 리스트를 호출하는 콘텐츠 데이터의 재생 방법을 나타내는 오브젝트를 포함하는 오브젝트 파일과, 오브젝트를 호출하는 타이틀이 기술되는 인덱스 테이블을 포함하는 인덱스 파일을 생성하도록 제어되고, 플레이 리스트 파일의 생성 시에 플레이 리스트 파일이 속하는 타이틀을 나타내는 정보를 인덱스 파일에 대하여 부가하도록 제어하고 있기 때문에, 다른 기기에서 타이틀 번호를 유지하지 않는 타이틀 삭제가 이루어진 경우라도, 플레이 리스트의 생성 시에 플레이 리스트가 속하는 타이틀을 나타내는 정보에 기초하여, 삭제된 타이틀 번호를 복원할 수 있는 효과가 있다.
도 1은, BD-ROM 규격에 의한 타이틀, 무비 오브젝트 및 플레이 리스트의 일례의 관계를 개략적으로 도시하는 개략선도.
도 2A, 도 2B 및 도 2C는, 타이틀의 편집에 관련되는 타이틀의 관리 방법을 설명하기 위한 개략선도.
도 3은, BD-ROM의 데이터 모델을 개략적으로 도시하는 개략선도.
도 4는, 인덱스 테이블을 설명하기 위한 개략선도.
도 5는, 클립 AV 스트림, 클립 정보, 클립, 플레이 아이템 및 플레이 리스트의 관계를 도시하는 UML도.
도 6은, 복수의 플레이 리스트로부터 동일한 클립을 참조하는 방법을 설명하기 위한 개략선도.
도 7은, 서브 패스에 대해서 설명하기 위한 개략선도.
도 8은, 기록 매체에 기록되는 파일의 관리 구조를 설명하기 위한 개략선도.
도 9는, 파일 "index.bdmv"의 일례의 구조를 나타내는 신택스를 도시하는 개략선도.
도 10은, 블록 Indexes()의 일례의 구조를 나타내는 신택스를 도시하는 개략선도.
도 11은, 파일 "MovieObject.bdmv"의 일례의 구조를 나타내는 신택스를 도시하는 개략선도.
도 12는, 블록 MovieObjects()의 일례의 구조를 나타내는 신택스를 도시하는 개략선도.
도 13은, 블록 ExtensionData()의 일례의 구조를 나타내는 신택스를 도시하는 개략선도.
도 14는, 블록 ExtensionData()에서의 각 데이터의 참조 관계를 모식적으로 도시하는 개략선도.
도 15는, 블록 ExtensionData()에 데이터를 기입할 때의 일례의 처리를 설명하는 플로우차트.
도 16은, 블록 ExtensionData()로부터 확장 데이터를 읽어낼 때의 일례의 처리를 설명하는 플로우차트.
도 17은, 파일 "index.bdmv" 내의 필드 ExtensionData()에서의 블록 data_block()의 일례의 구조를 나타내는 신택스를 도시하는 개략선도.
도 18은, 블록 TableOfPlayLists()의 일례의 구조를 나타내는 신택스를 도시하는 개략선도.
도 19는, 편집 전의 메뉴 화면과, 그 메뉴 화면에 관련되는 타이틀, 무비 오브젝트 및 플레이 리스트의 구성예를 도시하는 개략선도.
도 20은, 타이틀 #3을 삭제한 경우의 메뉴 화면과, 그 메뉴 화면에 관련되는 타이틀, 무비 오브젝트 및 플레이 리스트의 구성예를 도시하는 개략선도.
도 21은, 타이틀 번호가 복원된 상태의 메뉴 화면과, 그 메뉴 화면에 관련되는 타이틀, 무비 오브젝트 및 플레이 리스트의 구성예를 도시하는 개략선도.
도 22는, 값 title_id_ref에 기초하여 타이틀 번호를 복원하는 일례의 처리를 설명하는 플로우차트.
도 23A 및 도 23B는, BD 가상 플레이어의 동작을 개략적으로 설명하는 플로우차트.
도 24는, BD 가상 플레이어의 동작을 개략적으로 도시하는 개략선도.
도 25는, 본 발명의 실시의 일 형태에 적용 가능한 기록 재생 장치의 일례의 구성을 도시하는 블록도.
<부호의 설명>
10 : 기록 매체
11 : 읽어내기부
17 : 제어부
18 : 기입부
28 : 데이터 입출력 단자
100, 101 : 메뉴 화면
S10 기입하고자 하는 확장 데이터의 데이터 길이를 얻어, ext_data_length(n+1)의 값으로 세트한다.
S11 현재의 ExtensionData()의 열거되어 있는 ext_data_entry()로부터 ext_data_length와 ext_data_start_address의 값을 조사하여, 블록 data_block() 내의 사용 상황을 안다
S12 data_block() 내에 ext_data_length(n+1) 이상의 연속된 빈 영역이 있는가?
S13 ExtensionData()의 length의 값을 크게 하고, 필드 ext_data_length(n+1) 이상의 연속된 빈 영역을 만든다
S14 데이터를 저장하는 영역의 선두 어드레스를 결정하고, ext_data_start_address(n+1)로 한다
S15 ext_data_start_address(n+1)로 나타내어지는 어드레스로부터, ext_data_length(n+1)의 길이의 데이터를 기입한다
S16 ext_data_entry()에 ext_data_length(n+1)과 ext_data_start_address(n+1)을 추가한다
S20 읽어들이고자 하는 데이터가 준거하는 규격으로부터, ID1을 안다
S21 ID1에 기초하여, 읽어들이고자 하는 데이터의 종별로부터 ID2를 안다
S22 ExtensionData()에 열거되어 있는 ext_data_entry()를 순서대로 1개 읽어들인다
S23 ID1, ID2가 일치했는가?
S24 ext_data_length(i)와 ext_data_start_address(i)를 읽는다
S25 ext_data_start_address(i)로 나타내어지는 어드레스로부터, ext_data_length(i)의 길이의 데이터를 읽어들인다
S26 ext_data_entry()를 다 읽었는가?
S27 읽어들이고자 한 데이터는 존재하지 않는다
S50 Indexes()를 참조하여, 타이틀을 구성하는 무비 오브젝트 이외의 무비 오브젝트를 삭제
S51 PlayList_attribute를 참조하여, 타이틀을 구성하는 플레이 리스트 이외의 플레이 리스트를 삭제
S52 타이틀을 구성하는 플레이 리스트의 title_id_ref를 참조하여, 각 플레이 리스트를 재생하는 타이틀의 번호가 title_id_ref에 일치하도록, Indexes()의 재기입. 결번의 타이틀에 대한 플레이 리스트, 무비 오브젝트의 재생
S53 TableOfPlayLists()를 갱신
S54 톱 메뉴를 표시하기 위한 클립, 플레이 리스트, 무비 오브젝트를 생성
S55 톱 메뉴용의 무비 오브젝트의 번호를 Indexes()의 TopMenu()의 TopMenu_mobj_id_ref에 설정
S56 Indexes()의 FirstPlayback()을 갱신
S57 TableOfPlayLists()를 갱신
이하, 본 발명의 실시의 일 형태를, 도면을 참조하면서 설명한다. 우선, 이해를 용이하게 하기 위해서, Blu-ray Disc에 관하여, "Blu-ray Disc Read Only Format Ver1.0 part3 Audio Visual Specifications"에서 규정되어 있는, 읽어내기 전용 타입의 Blu-ray Disc인 BD-ROM에 기록된 콘텐츠 즉 AV(Audio/Video) 데이터의 관리 구조에 대해서, BD-ROM 규격을 기록 가능한 기록 매체로 확장했을 때에 적용 가능한 부분을 개략적으로 설명한다. 이하에서는, 이 BD-ROM에서의 관리 구조를 BDMV 포맷이라고 칭한다. 또한, BDMV 포맷을 기록 가능한 기록 매체에 대하여 확장한 포맷을, 편의상, 확장 BDMV 포맷이라고 부른다.
예를 들면 MPEG(Moving Pictures Experts Group) 비디오나 MPEG 오디오 등의 부호화 방식으로 부호화되고, MPEG2 시스템에 따라서 다중화된 비트스트림은, 클립 AV 스트림(또는 AV 스트림)이라고 칭해진다. 클립 AV 스트림은, Blu-ray Disc에 관한 규격의 하나인 "Blu-ray Disc Read Only Format part2"에서 정의된 파일 시스템에 의해, 파일로서 디스크에 기록된다. 이 파일을, 클립 AV 스트림 파일(또는 AV 스트림 파일)이라고 칭한다.
클립 AV 스트림 파일은, 파일 시스템 상에서의 관리 단위이며, 유저에게 있어서 반드시 알기 쉬운 관리 단위라고는 할 수 없다. 유저의 편리성을 생각한 경우, 복수의 클립 AV 스트림 파일로 분할된 영상 콘텐츠를 1개로 통합하여 재생하는 구조나, 클립 AV 스트림 파일의 일부만을 재생하는 구조, 또한, 특수 재생이나 첫머리 탐색 재생을 원활하게 행하기 위한 정보 등을 데이터베이스로서 디스크에 기록해 둘 필요가 있다. Blu-ray Disc에 관한 규격의 하나인 "Blu-ray Disc Read Only Format part3"에서, 이 데이터베이스가 규정된다.
도 3은, BD-ROM의 데이터 모델을 개략적으로 도시한다. BD-ROM의 데이터 구조는, 도 3에 도시되는 바와 같이 4층의 레이어로 이루어진다. 가장 최하층의 레이어는, 클립 AV 스트림이 배치되는 레이어이다(편의상, 클립 레이어라고 부름). 그 위의 레이어는, 클립 AV 스트림에 대한 재생 개소를 지정하기 위한, 무비 플레이 리스트(Movie PlayList)와, 플레이 아이템(PlayItem)이 배치되는 레이어이다(편의상, 플레이 리스트 레이어라고 부름). 또한 그 위의 레이어는, 무비 플레이 리스트에 대하여 재생순 등을 지정하는 커맨드로 이루어지는 무비 오브젝트(Movie Object) 등이 배치되는 레이어이다(편의상, 오브젝트 레이어라고 부름). 최상층의 레이어는, 이 BD-ROM에 저장되는 타이틀 등을 관리하는 인덱스 테이블이 배치된다( 편의상, 인덱스 레이어라고 부름).
클립 레이어에 대해서 설명한다. 클립 AV 스트림은, 비디오 데이터나 오디오 데이터가 MPEG2 TS(트랜스포트 스트림)의 형식 등으로 다중화된 비트스트림이 다. 이 클립 AV 스트림에 관한 정보가 클립 정보(Clip Information)로서 파일에 기록된다.
또한, 클립 AV 스트림에는, 자막을 표시하는 그래픽스 스트림인 프레젠테이션 그래픽스(PG) 스트림이나, 메뉴 표시 등에 이용되는 데이터(버튼 화상 데이터 등)를 스트림으로 한 인터랙티브 그래픽스(IG) 스트림도 다중화된다.
클립 AV 스트림 파일과, 대응하는 클립 정보가 기록된 클립 정보 파일을 한묶음의 오브젝트로 간주하고, 클립(Clip)이라고 칭한다. 즉, 클립은, 클립 AV 스트림과 클립 정보로 구성되는, 1개의 오브젝트이다.
파일은, 일반적으로, 바이트 열로서 취급된다. 클립 AV 스트림 파일의 콘텐츠는, 시간축 상에 전개되고, 클립 내의 엔트리 포인트는, 주로 시간 베이스로 지정된다. 소정의 클립에의 액세스 포인트의 타임 스탬프가 주어진 경우, 클립 AV 스트림 파일 내에서 데이터의 읽어내기를 개시할 어드레스 정보를 찾아내기 위해서, 클립 정보 파일을 이용할 수 있다.
플레이 리스트 레이어에 대해서 설명한다. 무비 플레이 리스트는, 재생하는 AV 스트림 파일의 지정과, 지정된 AV 스트림 파일의 재생 개소를 지정하는 재생 개시점(IN점)과 재생 종료점(OUT점)의 모임으로 구성된다. 이 재생 개시점과 재생 종료점의 정보를 1조로 한 것은, 플레이 아이템(PlayItem)이라고 칭해진다. 무비 플레이 리스트는, 플레이 아이템의 집합으로 구성된다. 플레이 아이템을 재생한다고 하는 것은, 그 플레이 아이템에 참조되는 AV 스트림 파일의 일부분을 재생한다고 하는 것으로 된다. 즉, 플레이 아이템 내의 IN점 및 OUT점 정보에 기초하여, 클립 내의 대응하는 구간이 재생된다.
오브젝트 레이어에 대해서 설명한다. 무비 오브젝트는, HDMV 네비게이션 커맨드 프로그램과, 무비 오브젝트를 제휴하는 터미널 인포메이션을 포함한다. HDMV 네비게이션 프로그램은, 플레이 리스트의 재생을 제어하기 위한 커맨드이다. 이하, HDMV 네비게이션 커맨드를, 적절하게, 네비게이션 커맨드(navigation command)라고 약칭한다. 터미널 인포메이션은, 유저의 BD-ROM 플레이어에 대한 인터랙티브한 조작을 허가하기 위한 정보를 포함하고 있다. 이 터미널 인포메이션에 기초하여, 메뉴 화면의 호출이나, 타이틀 서치 등의 유저 오퍼레이션이 제어된다.
BD-J 오브젝트는, Java 프로그램(Java는 등록 상표)에 의한 오브젝트로 이루어진다. BD-J 오브젝트는, 본 발명과 관계가 약하기 때문에, 상세한 설명을 생략한다.
인덱스 레이어에 대해서 설명한다. 인덱스 레이어는, 인덱스 테이블로 이루어진다. 인덱스 테이블은, BD-ROM 디스크의 타이틀을 정의하는, 톱 레벨의 테이블이다. 인덱스 테이블에 저장되어 있는 타이틀 정보에 기초하여, BD-ROM 상주 시스템 소프트웨어 내의 모듈 매니저에 의해 BD-ROM 디스크의 재생이 제어된다.
즉, 도 4에 개략적으로 도시되는 바와 같이, 인덱스 테이블 내의 임의의 엔트리는, 타이틀이라고 칭해지고, 인덱스 테이블에 엔트리되는 퍼스트 플레이백(First Playback), 톱 메뉴(Top Menu) 및 타이틀(Title) #1, #2, …는, 모두 타이틀이다. 각 타이틀은, 무비 오브젝트 혹은 BD-J 오브젝트에 대한 링크를 나타내고, 각 타이틀은, HDMV 타이틀 혹은 BD-J 타이틀 중 어느 1개를 나타낸다.
예를 들면, 퍼스트 플레이백은, 그 BD-ROM에 저장되는 콘텐츠가 영화이면, 영화 본편에 앞서서 영출되는 영화 회사의 선전용 영상(트레일러)이다. 톱 메뉴는, 예를 들면 콘텐츠가 영화인 경우, 본편 재생, 챕터 서치, 자막이나 언어 설정, 특전 영상 재생 등을 선택하기 위한 메뉴 화면이다. 또한, 타이틀은, 톱 메뉴로부터 선택되는 각 영상이다. 타이틀이 또한 메뉴 화면인 구성도 가능하다.
도 5는, 전술한 바와 같은 클립 AV 스트림, 클립 정보(Stream Attributes), 클립, 플레이 아이템 및 플레이 리스트의 관계를 나타내는 UML(Unified Modeling Language)도이다. 플레이 리스트는, 1개 또는 복수의 플레이 아이템에 대응지어지고, 플레이 아이템은, 1개의 클립에 대응지어진다. 1개의 클립에 대하여, 각각 개시점 및/또는 종료점이 서로 다른 복수의 플레이 아이템을 대응지을 수 있다. 1개의 클립으로부터 1개의 클립 AV 스트림 파일이 참조된다. 마찬가지로, 1개의 클립으로부터 1개의 클립 정보 파일이 참조된다. 또한, 클립 AV 스트림 파일과 클립 정보 파일은, 일대일의 대응 관계를 갖는다. 이와 같은 구조를 정의함으로써, 클립 AV 스트림 파일을 변경하지 않고, 임의의 부분만을 재생하는, 비파괴의 재생 순서 지정을 행하는 것이 가능하게 된다.
또한, 도 6과 같이, 복수의 플레이 리스트로부터 동일한 클립을 참조할 수도 있다. 또한, 1개의 플레이 리스트로부터 복수의 클립을 지정할 수도 있다. 클립은, 플레이 리스트 내의 플레이 아이템에 나타내어지는 IN점 및 OUT점에 의해, 참조된다. 도 6의 예에서는, 클립(300)은, 플레이 리스트(310)의 플레이 아이템(320)으로부터 참조됨과 함께, 플레이 리스트(311)를 구성하는 플레이 아이 템(321 및 322) 중 플레이 아이템(321)으로부터, IN점 및 OUT점으로 나타내어지는 구간이 참조된다. 또한, 클립(301)은, 플레이 리스트(311)의 플레이 아이템(322)으로부터 IN점 및 OUT점으로 나타내어지는 구간이 참조됨과 함께, 플레이 리스트(312)의 플레이 아이템(323 및 324) 중, 플레이 아이템(323)의 IN점 및 OUT점으로 나타내어지는 구간이 참조된다.
또한, 플레이 리스트는, 도 7에 일례가 도시되는 바와 같이, 주로 재생되는 플레이 아이템에 대응하는 메인 패스에 대하여, 서브 플레이 아이템에 대응하는 서브 패스를 가질 수 있다. 예를 들면, 이 플레이 리스트에 부가되어 있는 애프터 레코딩 오디오용의 플레이 아이템을 서브 플레이 아이템으로서, 플레이 리스트에 갖게 할 수 있다. 상세한 것은 생략하지만, 플레이 리스트는, 소정의 조건을 충족시키는 경우에만, 서브 플레이 아이템을 가질 수 있다.
다음으로, "Blu-ray Disc Read Only Format part3"에서 규정된, BD-ROM에 기록되는 파일의 관리 구조에 대해서, 도 8을 이용하여 설명한다. 파일은, 디렉토리 구조에 의해 계층적으로 관리된다. 기록 매체 상에는, 우선, 1개의 디렉토리(도 8의 예에서는 루트(root) 디렉토리)가 작성된다. 이 디렉토리 아래가, 1개의 기록 재생 시스템에서 관리되는 범위로 한다.
루트 디렉토리 아래에, 디렉토리 "BDMV", 디렉토리 "CERTIFICATE" 및 디렉토리 "HDAVCTN"이 놓인다. 디렉토리 "CERTIFICATE"는, 저작권에 관한 정보가 저장된다. 디렉토리 "HDAVCTN"에는, 예를 들면 클립의 대표 화상을 소정 사이즈로 축소한 썸네일 파일이 놓여진다. 디렉토리 "BDMV"에, 도 3을 이용하여 설명한 데이터 구조가 저장된다.
디렉토리 "BDMV" 바로 아래에는, 파일은, 파일 "index.bdmv" 및 파일 "MovieObject.bdmv"의 2개만을 놓을 수 있다. 또한, 디렉토리 "BDMV" 아래에, 디렉토리 "PLAYLIST", 디렉토리 "CLIPINF", 디렉토리 "STREAM", 디렉토리 "AUXDATA", 디렉토리 "META", 디렉토리 "BDJO", 디렉토리 "JAR", 및 디렉토리 "BACKUP"이 놓인다.
파일 "index.bdmv"는, 디렉토리 BDMV의 내용에 대해서 기술된다. 즉, 이 파일 "index.bdmv"가 전술한 최상층의 레이어인 인덱스 레이어에서의 인덱스 테이블에 대응한다. 또한, 파일 MovieObject.bdmv는, 1개 이상의 무비 오브젝트의 정보가 저장된다. 즉, 이 파일 "MovieObject.bdmv"가 전술한 오브젝트 레이어에 대응한다.
디렉토리 "PLAYLIST"는, 플레이 리스트의 데이터베이스가 놓여지는 디렉토리이다. 즉, 디렉토리 "PLAYLIST"는, 무비 플레이 리스트에 관한 파일인 파일 "xxxxx.mpls"을 포함한다. 파일 "xxxxx.mpls"는, 무비 플레이 리스트의 각각에 대하여 작성되는 파일이다. 파일명에서, ". "(피리어드) 앞의 "xxxxx"는, 5자리의 숫자로 되고, 피리어드 뒤의 "mpls"는, 이 타입의 파일에 고정적으로 된 확장자이다.
디렉토리 "CLIPINF"는, 클립의 데이터베이스가 놓여지는 디렉토리이다. 즉, 디렉토리 "CLIPINF"는, 클립 AV 스트림 파일의 각각에 대한 클립 인포메이션 파일인 파일 "zzzzz.clpi"를 포함한다. 파일명에서, ". "(피리어드) 앞의 "zzzzz"는, 5자리의 숫자로 되고, 피리어드 뒤의 "clpi"는, 이 타입의 파일에 고정적으로 된 확장자이다.
디렉토리 "STREAM"은, 실체로서의 AV 스트림 파일이 놓여지는 디렉토리이다. 즉, 디렉토리 "STREAM"은, 클립 인포메이션 파일의 각각에 대응하는 클립 AV 스트림 파일을 포함한다. 클립 AV 스트림 파일은, MPEG2(Moving Pictures Experts Group 2)의 트랜스포트 스트림(이하, MPEG2 TS라고 약칭함)으로 이루어지고, 파일명이 "zzzzz. m2ts"로 된다. 파일명에서, 피리어드 앞의 "zzzzz"는, 대응하는 클립 인포메이션 파일과 동일함으로써, 클립 인포메이션 파일과 이 클립 AV 스트림 파일의 대응 관계를 용이하게 파악할 수 있다.
디렉토리 "AUXDATA"는, 메뉴 표시 등에 이용되는, 사운드 파일, 폰트 파일, 폰트 인덱스 파일 및 비트맵 파일 등이 놓인다. 파일 "sound.bdmv"는, HDMV의 인터랙티브한 그래픽스 스트림의 어플리케이션에 관련된 사운드 데이터가 저장된다. 파일명은, "sound.bdmv"로 고정적으로 된다. 파일 "aaaaa. otf"는, 자막 표시나 전술한 BD-J 어플리케이션 등에서 이용되는 폰트 데이터가 저장된다. 파일명에서, 피리어드 앞의 "aaaaa"는, 5자리의 숫자로 되고, 피리어드 뒤의 "otf"는, 이 타입의 파일에 고정적으로 된 확장자이다. 파일 "bdmv. fontindex"는, 폰트의 인덱스 파일이다.
디렉토리 "META"는, 메타데이터 파일이 저장된다. 디렉토리 "BDJO" 및 디렉토리 "JAR"은, 전술한 BD-J 오브젝트에 관련되는 파일이 저장된다. 또한, 디렉토리 "BACKUP"은, 전술까지의 각 디렉토리 및 파일의 백업이 저장된다. 이들 디렉토 리 "META", 디렉토리 "BDJO", 디렉토리 "JAR" 및 디렉토리 "BACKUP"은, 본 발명의 주지와 직접적인 관계가 없기 때문에, 상세한 설명을 생략한다.
또한, 디렉토리 "HDAVCTN"은, 2종류의 썸네일 파일 thumbnail. tidx 및 thumbnail. tdt2를 놓을 수 있다. 썸네일 파일 thumbnail. tidx는, 썸네일 파일 thumbnail. tdt2에 저장되는 썸네일 화상을 관리하는 정보가 저장된다.
도 8에서 나타낸 각 파일 중, 본 발명에 관계가 깊은 것에 대해서, 보다 상세히 설명한다. 우선, 디렉토리 "BDMV"의 바로 아래에 놓이는 파일 "index.bdmv"에 대해서 설명한다. 도 9는, 이 파일 "index.bdmv"의 일례의 구조를 나타내는 신택스를 도시한다. 여기서는, 신택스를 컴퓨터 장치 등의 프로그램의 기술 언어로서 이용되는 C언어의 기술법에 기초하여 나타낸다. 이것은, 다른 신택스를 나타내는 도면에서, 마찬가지이다.
도 9에서, 필드 type_indicator는, 32비트의 데이터 길이를 가지며, 이 파일이 인덱스 테이블인 것을 나타낸다. 필드 version_number는, 32비트의 데이터 길이를 가지며, 이 파일 "index.bdmv"의 버전을 나타낸다. 필드indexes_start_address는, 32비트의 데이터 길이를 가지며, 이 신택스 내에 있는 블록 Indexes()의 개시 어드레스를 나타낸다.
필드 ExtensionData_start_address는, 32비트의 데이터 길이를 가지며, 이 신택스 내에 있는 블록 ExtensionData()의 개시 어드레스를 나타낸다. 필드 ExtensionData_start_address는, 이 파일 "index.bdmv"의 최초의 바이트로부터의 상대 바이트 수로, 블록 ExtensionData()의 개시 어드레스를 나타낸다. 상대 바이 트 수는, "0"부터 개시된다. 만약, 이 필드 ExtensionData_start_address의 값이 "0"이면, 이 파일 "index.bdmv" 내에, 블록 ExtensionData()가 존재하지 않는 것을 나타낸다.
필드 ExtensionData_start_address에 계속되는 데이터 길이가 192바이트인 영역은, 장래의 사용을 위해서 예약되어 있는 영역이다. 블록 AppInfoBDMV()는, 콘텐츠 제작자가 임의의 정보를 기술할 수 있는 블록으로서, 플레이어의 동작 등에는 영향을 주지 않는다.
블록 Indexes()는, 이 파일 "index.bdmv"의 실질적인 내용으로서, 이 파일 "index.bdmv"에 기술된 내용에 의해, 디스크를 플레이어에 장전했을 때에 재생되는 퍼스트 플레이백이나, 톱 메뉴로부터 호출되는 타이틀(무비 오브젝트나 BD-J 오브젝트)이 지정된다. 또한, 이하에서는, 무비 오브젝트 및 BD-J 오브젝트를 모아, 무비 오브젝트 등으로 기술한다. 인덱스 테이블에 의해 호출된 무비 오브젝트 등에 기술된 커맨드에 기초하여, 후술하는 무비 플레이 리스트 파일이 읽어들여진다.
도 10은, 블록 Indexes()의 일례의 구조를 나타내는 신택스를 도시한다. 또한, 도 10에서, 본 발명과 직접적으로 관계가 없는 부분은, 영역 Reserved로서 기재되어 있다. 즉, 도 10의 표기는, 기록 가능한 기록 매체를 위한 확장 BDMV 포맷에 적용되는 기술에 한정적으로 되어 있다. 필드 length는, 32비트의 데이터 길이를 가지며, 이 필드 length 직후부터 이 블록 Indexes()의 끝까지의 데이터 길이를 나타낸다. 계속하여, 블록 FirstPlayback() 및 블록 TopMenu()가 배치된다.
블록 FirstPlayback()은, 퍼스트 플레이백에서 이용되는 오브젝트에 관한 정 보가 기술된다. 블록 FirstPlayback()의 최초의 필드에는, 고정 값 "01"이 기술되고, 퍼스트 플레이백에서 이용되는 오브젝트가 무비 오브젝트인 것이 나타내어진다. 그리고, 2비트의 데이터 길이를 갖는 필드 HDAVC_Title_playback_type에 의해 HDAVC 타이틀의 재생 타입이 나타내어지고, 16비트의 데이터 길이를 갖는 필드 FirstPlayback_mobj_id_ref에 의해, 퍼스트 플레이백에서 이용되는 무비 오브젝트의 ID를 나타낸다.
무비 오브젝트의 ID는, 예를 들면, 도 11 및 도 12를 이용하여 후술하는 무비 오브젝트의 신택스에 기초하여, 무비 오브젝트의 for 루프문에서 루프 변수로서 이용되는 값 mobj_id로 나타내어진다. 이 예에서는, 필드 FirstPlayback_mobj_id_ref는, 참조하는 무비 오브젝트에 대응하는 값 mobj_id가 저장된다.
또한, 블록 Indexes()에서의 블록 FirstPlayback() 내의 필드 FirstPlayback_mobj_id_ref는, 톱 메뉴의 무비 오브젝트를 가리키고 있어도 되고, 타이틀을 가리키고 있어도 된다.
블록 TopMenu()는, 톱 메뉴에서 이용되는 오브젝트에 관한 정보가 기술된다. 블록 TopMenu()의 최초의 필드에는, 고정 값 "01"이 기술되고, 30비트의 데이터 길이를 갖는 영역 Reserved를 통해서 또한 고정 값 "01"이 기술된다. 필드 TopMenu_mobj_id_ref는, 16비트의 데이터 길이를 가지며, 톱 메뉴에서 이용되는 무비 오브젝트의 ID를 나타낸다.
블록 TopMenu()의 다음 필드 number_of_Titles는, 16비트의 데이터 길이를 가지며, 유저가 선택, 재생 가능한 타이틀의 수를 나타낸다. 다음 for 루프문에 따라서, 이 필드 number_of_Titles에 나타내어지는 횟수만큼, 값 title_id를 인수로 하여, 블록 Title[title_id]()가 기술된다. 블록 Title[title_id]()는, 타이틀마다 정보가 기술된다. 값 title_id는, "0"부터 필드 number_of_Titles로 나타내어지는 값까지의 수치이며, 타이틀을 식별한다.
블록 Title[title_id]()에서, 최초의 필드에는 고정 값 "01"이 기술되고, 46비트의 데이터 길이를 갖는 영역 Reserved를 통해서 필드 Title_mobj_id_ref가 기술된다. 필드 Title_mobj_id_ref는, 16비트의 데이터 길이를 가지며, 이 타이틀에서 이용되는 무비 오브젝트의 ID를 나타낸다.
도 11은, 디렉토리 "BDMV"의 바로 아래에 놓여지는 파일 "MovieObject.bdmv"의 일례의 구조를 나타내는 신택스를 도시한다. 필드 type_indicator는, 32비트 (4바이트)의 데이터 길이를 가지며, 이 파일이 파일 "MovieObject.bdmv"인 것을 나타낸다. 필드 type_indicator는, ISO(International Organization for Standarization)646에 규정된 부호화 방식으로 부호화한 4문자로 이루어지는 문자열이 기술된다. 이 도 11의 예에서는, 필드 type_indicator에 ISO646에 기정의 방식으로 부호화된 4문자의 문자열 "MOBJ"가 기술되고, 이 파일이 파일 "MovieObject.bdmv"인 것이 나타내어진다.
필드 version_number는, 32비트(4바이트)의 데이터 길이를 가지며, 이 파일 "MovieObject.bdmv"의 버전 번호를 나타낸다. 이 파일 "MovieObject.bdmv"에서는, 필드 version_number는, ISO646에 규정된 부호화 방식으로 부호화한 4문자의 문자 열 "0100"이어야만 한다.
필드 ExtensionData_start_address는, 32비트의 데이터 길이를 가지며, 이 신택스 내에 있는 블록 ExtensionData()의 개시 어드레스를 나타낸다. 필드 ExtensionData_start_address는, 이 파일 "MovieObject.bdmv"의 최초의 바이트로부터의 상대 바이트 수로, 블록 ExtensionData()의 개시 어드레스를 나타낸다. 상대 바이트 수는, "0"부터 개시된다. 만약, 이 필드 ExtensionData_start_address의 값이 "0"이면, 이 파일 "MovieObject.bdmv" 내에, 블록 ExtensionData()가 존재하지 않는 것을 나타낸다.
또한, 이 도 11에 나타내는 신택스 내의 필드 padding_word는, 16비트의 데이터 길이를 가지며, 이 파일 "MovieObject.bdmv"의 신택스에 따라서 for 루프문에 값 N1 또는 값 N2로 나타내어지는 횟수만큼 삽입된다. 값 N1 또는 값 N2는, 0 또는 임의의 플러스의 정수이다. 또한, 필드 padding_word는, 임의의 값을 이용할 수 있다.
필드 ExtensionData_start_address에 계속되는 데이터 길이가 224비트인 영역은, 장래의 사용을 위해서 예약되어 있는 영역이다. 이 영역의 다음에, 이 파일 "MovieObject.bdmv"의 본체인 블록 MovieObjects()가 저장된다.
도 12는, 블록 MovieObjects()의 일례의 구조를 나타내는 신택스를 도시한다. 필드 length는, 32비트의 데이터 길이를 가지며, 이 필드 length의 직후부터 이 블록 MovieObjects()의 끝까지의 데이터 길이를 나타낸다. 32비트의 데이터 길이를 갖는 예약 영역을 통해서 필드 number_of_mobjs가 배치된다. 필드 number_of_mobjs는, 직후의 for 루프문에 따라서 저장되는 무비 오브젝트의 수를 나타낸다. for 루프문의 루프 변수로서 이용되는 값 mobj_id에 의해, 무비 오브젝트가 일의적으로 특정된다. 값 mobj_id는, 0부터 시작되는 값이며, 무비 오브젝트는, for 루프문 내에 기술되는 순서에 의해 정의된다.
for 루프문 내의 블록 TerminalInfo()는, 각각 1비트의 데이터 길이를 갖는 필드에 의해, 고정 값 "1", 고정 값 "0" 및 고정 값 "0"이 저장되고, 데이터 길이가 13비트인 예약 영역을 통해서 필드 number_of_navigation_commands[mobj_id]가 배치된다. 이 필드 number_of_navigation_commands[mobj_id]는, 값 mobj_id에 의해 지시되는 무비 오브젝트 MovieObject[mobj_id]()에 포함되는 네비게이션 커맨드(navigation_command)의 수를 나타낸다.
다음의, 값 command_id를 루프 변수로 하는 for 루프문에 의해, 필드 number_of_navigation_commands[mobj_id]에 나타내어지는 수만큼, 네비게이션 커맨드가 기술된다. 즉, 이 for 루프문 내에 배치되는 필드 navigation_command[mobj_id][command_id]는, 값 mobj_id에 의해 지시되는 블록 MovieObject[mobj_id]()에 포함되는, 값 command_id로 나타내어지는 순번의 네비게이션 커맨드 navigation_command를 저장한다. 값 command_id는, 0부터 시작되는 값이며, 네비게이션 커맨드 navigation_command는, 이 for 루프문 내에 기술되는 순서로 정의된다.
다음으로, BD-ROM 규격을 기록 가능한 기록 매체에 적용할 수 있도록 확장했을 때에 정의되는, 블록 ExtensionData()에 대해서 설명한다. 이 블록 ExtensionData()는, 인덱스 테이블이 저장되는 파일 "index.bdmv", 플레이 리스트가 저장되는 파일 "xxxxx.mpls" 및 클립 인포메이션 파일 "zzzzz.clpi"의 각 파일에 기술할 수 있다. 본 발명의 실시의 일 형태에서는, 파일 "index.bdmv"의 블록 ExtensionData()가 이용된다.
도 13은, 블록 ExtensionData()의 일례의 구조를 나타내는 신택스를 도시한다. 필드 length는, 32비트의 데이터 길이를 가지며, 이 필드 length의 직후부터 블록 ExtensionData()의 끝까지의 데이터 길이를 바이트 수로 나타낸다. 이 필드 length가 나타내는 데이터 길이가 "0"이 아니면, if문 이하의 기술이 이루어진다.
필드 data_block_start_address는, 32비트의 데이터 길이를 가지며, 이 신택스 내의, 확장 데이터 ext_data의 본체가 저장되는 블록 data_block()의 개시 어드레스를, 이 블록 ExtensionData()의 선두 바이트로부터의 상대 바이트 수로 나타낸다. 즉, 상대 바이트 수는, "0"부터 개시된다. 또한, 필드 data_block_start_address는, 다음에 나타내는 32비트 얼라인먼트의 조건을 충족시켜야만 한다.
data_block_start_address%4=0
필드 number_of_ext_data_entries는, 8비트의 데이터 길이를 가지며, 이 블록 ExtensionData()의 블록 data_block()에 저장되는 확장 데이터의 엔트리 수를 나타낸다. 확장 데이터의 엔트리는, 확장 데이터의 본체를 취득하기 위한 정보가 저장된다. 보다 구체적으로는, 확장 데이터의 엔트리는, 예를 들면 필드 ID1, 필드 ID2, 필드 ext_data_start_address 및 필드 ext_data_length로 이루어지는 블록 ext_data_entry()로서, 블록 ExtensionData()에서, 이 필드 number_of_ext_data_entries에 나타내어지는 개수만큼, 이 블록 ext_data_entry()가 존재한다.
필드 ID1은, 16비트의 데이터 길이를 가지며, 이 블록 ExtensionData()에 기술되는 확장 데이터가 기록 장치용의 확장 데이터인 것을 나타낸다. 이 필드 ID1의 값은, 확장 데이터를 식별하는 제1 값이며, 이 블록 ExtensionData()를 포함하는 규격서의 라이센서(사용 인가자)가 할당된다고 정의할 수 있다. 필드 ID2는, 확장 데이터를 식별하는 제2 값이며, 이 확장 데이터의 버전 번호를 나타내는 것으로 정의할 수 있다. 또한, 이 블록 ExtensionData()에서, 필드 ID1 및 필드 ID2의 값이 동일한 블록 ext_data_entry()가 2 이상, 존재해서는 안된다.
필드 ext_data_start_address는, 32비트의 데이터 길이를 가지며, 이 필드 ext_data_start_address가 포함되는 확장 데이터의 엔트리(블록 ext_data_entry())에 대응하는 확장 데이터 ext_data의 개시 어드레스를 나타낸다. 필드 ext_data_start_address는, 블록 ExtensionData()의 선두 바이트로부터의 상대 바이트 수로, 확장 데이터 ext_data의 개시 어드레스를 나타낸다. 또한, 필드 ext_data_start_address는, 다음에 나타내는 32비트 얼라인먼트의 조건을 충족시켜야만 한다.
ext_data_start_address%4=0
필드 ext_data_length는, 32비트의 데이터 길이를 가지며, 이 필드 ext_data_start_address가 포함되는 확장 데이터의 엔트리(블록 ext_data_entries())에 대응하는 확장 데이터 ext_data의 데이터 길이를 나타낸다. 데이터 길이는, 바이트 수로 나타내어진다.
필드 number_of_ext_data_entries로 나타내진 개수만큼, 확장 데이터의 엔트리(블록 ext_data_entry())가 기술되면, 각각 16비트의 데이터 길이를 가지고 임의의 데이터 열로 이루어지는 필드 padding_word가, 2필드를 조로 하여 임의의 횟수 L1만큼 반복된다. 그 후, 확장 데이터의 본체가 저장되는 블록 data_block()이 기술된다. 블록 data_block()은, 1 이상의 확장 데이터 ext_data가 저장된다. 각각의 확장 데이터 ext_data는, 전술한 필드 ext_data_start_address 필드 ext_data_length에 기초하여, 블록 data_block()으로부터 취출된다.
도 14는, 블록 ExtensionData()에서의 각 데이터의 참조 관계를 모식적으로 도시한다. 필드 length에 의해, 필드 length 직후의 위치로부터 블록 ExtensionData()의 최후까지의 데이터 길이가 나타내어진다. 필드 data_block_start_address에 의해, 블록 data_block()의 개시 위치가 나타내어진다. 필드 number_of_ext_data_entries로 나타내어지는 개수만큼, 블록 ext_data_entry가 기술된다. 최후의 블록 ext_data_entry부터 블록 data_block() 사이에는, 임의의 길이로 필드 padding_word가 놓여진다.
블록 data_block() 내에는, 블록 ext_data_entry()로 나타내어지는 확장 데이터 ext_data가 놓인다. 각각의 확장 데이터 ext_data의 위치 및 데이터 길이는, 대응하는 블록 ext_data_entry() 내의 필드 ext_data_start_address 및 필드 ext_data_length에 의해 나타내어진다. 따라서, 블록 data_block() 내에서의 확장 데이터 ext_data의 배열순은, 대응하는 블록 ext_data_entry()의 배열순과 일치하고 있지 않아도 된다.
이와 같이, 확장 데이터를, 확장 데이터의 본체가 저장되는 블록 data_block()과, 블록 data_block() 내의 확장 데이터에 대한 액세스 정보 등이 저장되는 블록 ext_data_entry()에 의한 2층 구조로 함으로써, 복수의 확장 데이터를 저장하는 것이 가능하게 된다.
다음으로, 전술한 확장 데이터의 일례의 작성 방법 및 읽어내기 방법에 대해서 설명한다. 도 15는, 블록 ExtensionData()에 데이터를 기입할 때의 일례의 처리를 설명하는 플로우차트이다. 이 도 15는, 블록 ExtensionData() 내의 (n+1)번째의 엔트리로서, 확장 데이터를 추가하고, 블록 ExtensionData()를 재기입하는 경우의 예이다.
우선, 스텝 S10에서, 기입하고자 하는 확장 데이터의 데이터 길이를 취득하고, 필드 ext_data_length[n+1]의 값으로 세트한다. 또한, 「[n+1]」의 기술은, (n+1)번째의 엔트리의 번호에 대응한다. 다음으로, 스텝 S11에서, 현재의 블록 ExtensionData()에 열거되어 있는 블록 ext_data_entry()의 필드 ext_data_length 및 필드 ext_data_start_address의 값을 조사하여, 블록 data_block()의 사용 상황을 취득한다.
그리고, 다음 스텝 S12에서, 블록 data_block() 내에, 기입하고자 하는 확장 데이터의 데이터 길이인 필드 ext_data_length[n+1]에 나타내어지는 데이터 길이 이상의, 연속된 빈 영역이 있는지의 여부가 판단된다. 만약, 있다고 판단되면, 처 리는 스텝 S14로 이행된다.
한편, 필드 ext_data_length[n+1]에 나타내어지는 데이터 길이 이상의 연속된 빈 영역이 없다고 판단되면, 처리는 스텝 S13으로 이행되어, 블록 ExtensionData()에서의 필드 length의 값을 크게 하고, 필드 ext_data_length[n+1]에 나타내어지는 데이터 길이 이상의 연속된 빈 영역을 블록 data_block() 내에 만든다. 빈 영역이 생기면, 처리가 스텝 S14로 이행된다.
스텝 S14에서는, 확장 데이터를 기입하는 영역의 선두 어드레스를 결정하고, 그 선두 어드레스의 값을 필드 ext_data_start_address[n+1]로 한다. 다음 스텝 S15에서, 필드 ext_data_start_address[n+1]로부터, 전술한 스텝 S10에서 세트된 필드 ext_data_length[n+1]의 길이의 확장 데이터 ext_data[n+1]을 기입한다.
데이터의 기입이 종료되었다면, 스텝 S16에서, 블록 ext_data_entry()에 대하여, 필드 ext_data_length[n+1]과, 필드 ext_data_start_address[n+1]을 추가한다.
또한, 전술에서, 재기입을 행하는 블록 ExtensionData()는, 이미 디스크 등의 기록 매체로부터 읽어내어져 기록 장치의 메모리에 기억되어 있는 것으로 한다. 그 때문에, 스텝 S13에서의, 필드 length의 값의 변경에 의한 블록 ExtensionData()의 확대는, 시스템에 맡겨지며, 시스템이 메모리 얼로케이션을 적절하게 행함으로써 이루어진다.
도 16은, 블록 ExtensionData()로부터 확장 데이터를 읽어낼 때의 일례의 처리를 설명하는 플로우차트이다. 또한, 이 도 16의 플로우차트에 의한 처리는, 재 생 전용의 기록 매체(예를 들면 BD-ROM)와, 기록 가능한 기록 매체(예를 들면 BD-RE)의 양방에 적용 가능한 것이다.
우선, 최초의 스텝 S20에서, 읽어들이고자 하는 확장 데이터가 준거하는 규격으로부터, 필드 ID1의 값을 취득하고, 스텝 S21에서, 읽어들이고자 하는 확장 데이터의 종별로부터, 필드 ID2의 값을 취득한다.
다음 스텝 S22에서, 블록 ExtensionData()에 열거되어 있는 블록 ext_data_entry()를 1개씩 순차적으로, 읽어들인다. 그리고, 스텝 S23에서, 읽어들인 블록 ext_data_entry()에 포함되는 필드 ID1 및 필드 ID2의 값이, 전술한 스텝 S20 및 스텝 S21에서 취득한 필드 ID1 및 필드 ID2의 값과 일치하는지의 여부가 판단된다.
일치하고 있지 않다고 판단되면, 처리는 스텝 S26으로 이행되어, 블록 ExtensionData() 내에 열거되는 블록 ext_data_entry()를 모두 다 읽었는지의 여부가 판단된다. 모두 다 읽었다고 판단되면, 처리는 스텝 S27로 이행되어, 이 블록 ExtensionData()에는, 읽어들이고자 한 확장 데이터가 존재하지 않는 것으로 하여, 일련의 처리가 종료된다. 모두 다 읽지 않았다고 판단되면, 처리는 스텝 S22로 되돌려져, 다음 블록 ext_data_entry()가 읽어 들여진다.
전술한 스텝 S23에서, 블록 ext_data_entry()에 포함되는 필드 ID1 및 필드 ID2의 값이, 취득한 필드 ID1 및 필드 ID2의 값과 일치하고 있다고 판단되면, 처리는 스텝 S24로 이행된다. 여기서는, 블록 ExtensionData() 내의 [i]번째의 엔트리에서 일치한 것으로 한다.
스텝 S24에서는, [i]번째의 엔트리의 블록 ext_data_entry()로부터 필드 ext_data_length[i]의 값과, 필드 ext_data_start_address[i]의 값을 읽어들인다. 그리고, 스텝 S25에서, 스텝 S24에서 읽어들인 필드 ext_data_start_address[i]로 나타내어지는 어드레스로부터, 필드 ext_data_length[i]로 나타내어지는 데이터 길이만큼, 데이터를 읽어낸다.
다음으로, 본 발명의 실시의 일 형태에 대해서 설명한다. 본 발명에서는, 플레이 리스트에 대하여, 그 플레이 리스트가 최초로 속한 타이틀을 나타내는 정보를 부가하고, 이 정보는, 타이틀의 편집 등에 상관없이 불변으로 한다. 이와 같은 정보를 정의함으로써, 타이틀의 편집에 상관없이 타이틀 번호를 유지하는 시스템과, 타이틀의 편집 시에 타이틀의 기록순을 유지하고 타이틀 번호를 편집에 따라서 변경하는 시스템 사이에서, 메뉴 구성의 호환성을 유지할 수 있다.
이 플레이 리스트가 최초로 속한 타이틀을 나타내는 정보는, 파일 "index.bdmv"에 매립되는 확장 데이터에서, 플레이 리스트의 속성 정보로서 정의되고, 파일 "index.bdmv"의 필드 ExtensionData() 내의 블록 TableOfPlayLists()에 기술된다. 도 17은, 이 플레이 리스트 속성을 기술하기 위한, 파일 "index.bdmv" 내의 필드 ExtensionData()에서의 블록 data_block()(도 13 참조)의 일례의 구조를 나타내는 신택스를 도시한다. 이 도 17의 예에서는, 블록 data_block()이 블록 IndexExtensionData()로서 기술되어 있다.
우선, 전술한 도 13을 참조하여, 블록 ExtensionData()에서 필드 ID1을 값 "0x1000", 필드 ID2를 값 "0x0100"으로 한다. 이들 필드 ID1 및 필드 ID2에 기술 된 값은, 예를 들면 재생 장치 측에서, 미리 ROM(Read Only Memory) 등에 기억된 테이블이 참조되어 식별된다. 블록 data_block() 내의 필드 ext_data_start_address 및 필드 ext_data_length로 나타내어지는 영역에, 블록 IndexExtensionData()가 저장된다. 또한, 수치의 기술에서 "0x"는, 그 수치가 16진 표기되어 있는 것을 나타낸다.
블록 IndexExtensionData()에서, 필드 type_indicator는, 다음에 계속되는 데이터의 종류를 나타내는, ISO646에 규정된 부호화 방식으로 부호화한 4문자로 이루어지는 문자열이 기술된다. 이 도 17의 예에서는, 필드 type_indicator에 ISO646에 기정의 방식으로 부호화된 4문자의 문자열 "IDEX"가 기술되고, 다음에 계속되는 데이터 종류가 「IndexExtensionData」인 것이 나타내어진다.
필드 type_indicator에 계속해서 32비트의 데이터 길이를 갖는 예약 영역이 배치되고, 그 다음에, 32비트의 데이터 길이를 갖는 필드 TableOfPlayLists_start_address가 배치된다. 필드 TableOfPlayLists_start_address에는, 블록 TableOfPlayLists()의, 이 블록 IndexExtensionData() 선두를 기준으로 한 개시 어드레스가 나타내어진다.
필드 TableOfPlayLists_start_address의 다음에, 32비트의 데이터 길이를 갖는 필드 MakersPrivateData_start_address가 배치되고 블록 MakersPrivateData()의 이 블록 IndexExtensionData() 선두를 기준으로 한 개시 어드레스가 나타내어지고, 192비트의 데이터 길이를 갖는 예약 영역을 통해서 블록 UIAppInfoHDAVC()가 배치된다. 16비트의 데이터 길이를 갖는 패딩 워드 padding_word를 통해서, 다음으로, 전술한 블록 TableOfPlayLists()가 배치된다. 또한 계속해서, 16비트의 데이터 길이를 갖는 패딩 워드 padding_word를 통해서 블록 MakersPrivateData()가 배치된다.
또한, 블록 UIAppInfoHDAVC() 및 블록 MakersPrivateData()는, 본 발명과 관계가 약하기 때문에, 설명을 생략한다.
도 18은, 전술한 블록 TableOfPlayLists()의 일례의 구조를 나타내는 신택스를 도시한다. 필드 length는, 32비트의 데이터 길이를 가지며, 이 필드 length의 직후부터 블록 TableOfPlayLists()의 최후의 바이트까지의 데이터 길이를 바이트 수로 나타낸다. 필드 number_of_PlayLists는, 16비트의 데이터 길이를 가지며, 플레이 리스트의 수를 나타낸다. 즉, 필드 number_of_PlayLists에 의해, 디스크 상에 존재하는 플레이 리스트의 총수가 나타내어진다.
다음의 for 루프문에 따라서, 필드 number_of_PlayLists로 나타내어지는 수만큼, 필드 PlayList_file_name, 필드 PlayList_attribute 및 필드 title_id_ref가 각각 기술된다. 즉, 이 for 루프문으로 나타내어지는 1회분의 루프가 1개의 플레이 리스트에 대응하고, 그 플레이 리스트의 파일명, 그 플레이 리스트에 부여된 속성, 및, 그 플레이 리스트의 참조 타이틀 ID로 이루어지는 플레이 리스트의 정보가 기술된다.
이 for 루프문에 의한 배열순은, 기록순으로 된다. 즉, 1개의 플레이 리스트가 추가되면, 필드 number_of_PlayLists의 값이 1만큼 인크리먼트되고, 기존의 플레이 리스트의 정보 뒤에, 추가된 플레이 리스트의 정보가 추기된다.
또한, 이 for 루프문으로 정의되는 루프 내의 각각 6비트, 16비트의 데이터 길이를 갖는 필드 reserved_for_future_use는, 장래의 사용을 위해서 예약되어 있는 영역이다.
필드 PlayList_file_name은, 플레이 리스트의 파일명이 ISO646에 규정된 부호화 방식으로 부호화되어 기술된다. 필드 PlayList_attribute는, 그 플레이 리스트에 부여된 속성을 나타낸다. 플레이 리스트는, 그 생성하는 목적에 기초하여, 클립의 생성과 함께 생성되는 플레이 리스트에 대응하는 제1 종류와, 기존의 타이틀 혹은 플레이 리스트의 일부 또는 전부를 이용하여 작성되는 플레이 리스트에 대응하는 제2 종류와, 메뉴를 재생하기 위해서 이용하는 제3 종류의 3종류로 나누어지고, 각 플레이 리스트에는, 플레이 리스트의 종류에 따라서, 각각 대응하는 속성 「Real」(제1 종류), 속성 「Virtual」(제2 종류) 및 속성 「Menu」(제3 종류)가 부여된다.
또한, 플레이 리스트의 종류는, 다른 관점에서 보면, 플레이 리스트가 생성된 원인 혹은 플레이 리스트의 성인에 기초하여, 플레이 리스트의 종류를 분류했다고도 생각할 수 있다.
이하에서는 적절하게, 속성 「Real」이 부여된 플레이 리스트를 리얼 플레이 리스트, 속성 「Virtual」이 부여된 플레이 리스트를 버츄얼 플레이 리스트, 속성 「Menu」가 부여된 플레이 리스트를 메뉴 플레이 리스트라고 부른다.
필드 title_id_ref는, 동일 루프 내의 필드 PlayList_file_name에 나타내어지는 플레이 리스트가 속하는 타이틀의 ID(번호)가 기술된다. 보다 구체적인 예로 서는, 인덱스 파일 "index.bdmv" 내의 블록 Indexes()에서의, 대응하는 값 title_id가 기술된다. 또한, 그 플레이 리스트가 타이틀로서 재생되지 않고, 퍼스트 플레이백만으로부터 재생되는 경우, 필드 title_id_ref의 값은, 제1 고정 값, 예를 들면 "0xFFFF"로 한다. 또한, 그 플레이 리스트가 타이틀로서 재생되지 않고, 톱 메뉴로부터 재생되는 경우에는, 필드 title_id_ref의 값은, 제2 고정 값, 예를 들면 "0xFFFE"로 한다.
다음으로, 본 발명의 실시의 일 형태에 의한 메뉴의 일례의 편집 처리에 대해서 설명한다. 본 발명의 실시의 일 형태에서는, BD-ROM 규격에 대하여 다음과 같은 제약을 설정함으로써, BD-ROM 규격을 기록 가능한 기록 매체로 확장한 경우의 메뉴 편집을 실현한다.
타이틀, 무비 오브젝트 및 플레이 리스트의 관계에 관해서, 이하와 같이 제약을 설정한다. 또한, 여기서 말하는 「타이틀」은, 톱 메뉴에서 선택되어 재생되는 타이틀인 것으로 한다.
(A) 톱 메뉴용의 플레이 리스트와, 통상의 타이틀을 재생하기 위한 플레이 리스트는, 서로 독립으로 한다.
(B) 각 타이틀은, 무비 타이틀일 것. 즉, 각 타이틀은, 인터랙티브 타이틀이어서는 안된다.
(C) 각 타이틀은, 1개의 무비 오브젝트를 통해서 1개의 플레이 리스트로 구성한다.
또한, 타이틀 및 플레이 리스트의 배열순에 관해서, 하기와 같이 제약을 설 정한다.
(D) 블록 TableOfPlayLists()에서의 플레이 리스트의 배열순은, 기록순으로 한다.
(E) 각 타이틀로부터 재생되는 플레이 리스트는, 파일 "index.bdmv" 내의 블록 Indexes()에서의 타이틀의 배열과, 퍼스트 플레이백 및 톱 메뉴를 구성하는 플레이 리스트를 제외한 나머지의 플레이 리스트의, 블록 TableOfPlayLists()에서의 배열을 대응시켜서 결정한다.
전술한 제약 (A)「톱 메뉴용의 플레이 리스트와, 통상의 타이틀을 재생하기 위한 플레이 리스트는, 서로 독립으로 한다」, 제약 (B)「각 타이틀은, 무비 타이틀일 것. 즉, 각 타이틀은, 인터랙티브 타이틀이어서는 안된다」, 및, 제약 (C) 「각 타이틀은, 1개의 무비 오브젝트를 통해서 1개의 플레이 리스트로 구성한다」는, 메뉴 편집 처리를 용이하게 하기 위한 제약이다.
즉, 이들 제약 (A), (B) 및 (C)에 따르면, 메뉴를 재생하기 위한 플레이 리스트와, 메뉴로부터 호출되는 타이틀을 구성하는 플레이 리스트가 명확하게 분리됨과 함께, 플레이 리스트, 무비 오브젝트 및 타이틀의 참조 관계가 서로 일대일의 관계로 된다. 예를 들면, 각 타이틀은, 각각 1개의 무비 오브젝트를 참조하고, 각무비 오브젝트는, 각각 1개의 플레이 리스트를 호출한다. 일례로서, 무비 오브젝트에 기술되는 네비게이션 커맨드는, 1개의 플레이 리스트 파일을 지정하고, 재생하도록 하는 커맨드로 된다.
이들 제약 (A), (B) 및 (C)에 기초하는 메뉴의 편집 방법은, 예를 들면 이하 와 같이 된다. 일례로서, 이미 복수의 타이틀이 기록된 디스크에 클립을 추가하여 기록하고, 기록된 클립을 재생하기 위한 타이틀을 메뉴에 추가하는 경우에 대해서 생각한다. 우선, 새롭게 기록된 클립에 대응하는 플레이 리스트가 생성된다. 생성된 플레이 리스트에 대하여 속성 「Real」이 부가되고, 그 플레이 리스트가 리얼 플레이 리스트로 된다. 그리고, 이 리얼 플레이 리스트를 호출하는 무비 오브젝트가 생성된다. 이 무비 오브젝트에 대한 링크가 인덱스 테이블에 기술되어, 타이틀이 형성된다.
다음으로, 기존의 메뉴의 삭제가 행해진다. 즉, 메뉴를 재생하기 위한 플레이 리스트(메뉴 플레이 리스트) 및 무비 오브젝트가 삭제되고, 인덱스 테이블로부터 톱 메뉴 및 퍼스트 플레이백이 삭제된다. 메뉴를 재생하기 위한 플레이 리스트형의 플레이 리스트와 명확하게 분리되어 있기 때문에, 메뉴를 재생하기 위한 무비 오브젝트 및 플레이 리스트를 용이하게 삭제할 수 있다.
또한, 기존의 타이틀 및 추가된 타이틀에 기초하여, 메뉴를 재생하기 위한 플레이 리스트 및 무비 오브젝트가 신규로 작성됨과 함께, 톱 메뉴 및 퍼스트 플레이백이 인덱스 테이블에 기술된다. 플레이 리스트, 무비 오브젝트 및 타이틀의 참조 관계가 서로 일대일의 관계로 되어 있기 때문에, 기존의 타이틀과 추가된 타이틀에 기초하여, 이들 메뉴를 재생하기 위한 무비 오브젝트 및 플레이 리스트를 신규로 작성하는 것이 용이하다.
이와 같이, 제약 (A), (B) 및 (C)에 기초하여, 타이틀의 추가에 수반되는 메뉴의 갱신을 매우 용이하게 행할 수 있다.
전술한 제약 (D)「블록 TableOfPlayLists()에서의 플레이 리스트의 배열순은, 기록순으로 한다」와, 제약 (E)「각 타이틀로부터 재생되는 플레이 리스트는, 파일 "index.bdmv" 내의 블록 Indexes()에서의 타이틀의 배열과, 퍼스트 플레이백 및 톱 메뉴를 구성하는 플레이 리스트를 제외한 나머지의 플레이 리스트의, 블록 TableOfPlayLists()에서의 배열을 대응시켜서 결정한다」는, 타이틀의 편집에 상관없이 타이틀 번호를 유지하는 시스템과, 타이틀의 편집 시에 타이틀의 기록순을 유지하고 타이틀 번호를 편집에 따라서 변경하는 시스템의 호환성을 유지하기 위한 제약이다.
일반적으로, 기록 가능한 기록 매체에 타이틀을 기록하는 경우, 타이틀 번호는, 기록순으로 부여된다고 생각된다. 그 때문에, 전술한 제약 (D)에 의해, 블록 TableOfPlayLists()에서, 무비 오브젝트로부터 참조되는 모든 플레이 리스트를 기록순으로 배열하는 제약을 설정한다. 이에 의해, 블록 TableOfPlayLists()에 기술되는 플레이 리스트의 배열순을 조사함으로써, 타이틀의 기록순을 복원할 수 있다.
일례로서, 기록기의 사양에 따라서는, 타이틀의 편집 등에 수반하여 톱 메뉴나 인덱스 테이블 내의 블록 Indexes()를 삭제하는 경우가 생각된다. 이 제약 (D)에 따르면, 이와 같은 경우라도, 블록 TableOfPlayLists()를 참조함으로써, 타이틀의 기록순을 복원할 수 있다.
그러나, 이 제약 (D)만으로는, 타이틀의 기록순은 유지되지만, 타이틀 번호가 유지되지 않게 된다. 기록기의 사양에 따라서는, 타이틀의 편집을 행하여도, 타이틀의 기록 시에 할당된 타이틀 번호를 유지하고, 편집에 의해 불변의 번호를 유저에게 제공하고자 하는 경우도 있다. 전술한 제약 (E)는, 이 기록기간에서의 타이틀 관리의 호환성의 문제를 해결하는 것이다. 제약 (E)는, 타이틀측이 아니라, 플레이 리스트측에 타이틀 번호의 정보를 갖게 함으로써, 예를 들면 인덱스 테이블에서 블록 Indexes()가 삭제되어도, 타이틀의 기록 시의 타이틀 번호의 정보가 소실되는 경우가 없다.
즉, 블록 Indexes()에서의 필드 title_id의 값과, 블록 TableOfPlayLists()에서의 필드 title_id_ref의 값을 대응시켜 재생하는 플레이 리스트를 결정한다. 예를 들면 메뉴 화면의 구성이나 플레이 리스트의 재생을, 기록 시의 타이틀 번호를 이용하는 기록기의 경우에는, 필드 title_id_ref에 기초하여 행하고, 타이틀의 기록순을 유지하는 기록기의 경우에는, 필드 title_id에 기초하여 행한다.
도 19∼도 21을 이용하여, 본 발명의 실시의 일 형태에 따른 메뉴의 편집 처리에 대해서, 보다 구체적으로 설명한다. 도 19는, 편집 전의 메뉴 화면(100)과, 그 메뉴 화면(100)에 관려되는 타이틀, 무비 오브젝트 및 플레이 리스트의 구성예를 도시한다. 이 도 19의 예에서는, 디스크 상에는 이미 6개의 타이틀 #1∼#6이 기록되어 있는 것으로 한다. 각 타이틀은, 도 10을 이용하여 이미 설명한 바와 같이, 파일 "index.bdmv" 내의 블록 Indexes()에서, 루프 변수로서 이용되는 값 title_id로 식별되는 필드 Title[title_id]로서 등록되고, 필드 Title_mobj_id_ref[title_id]에 의해 무비 오브젝트를 참조한다. 또한, 타이틀 번호는, 값 title_id에 1을 더한 값으로서 정의되는 것으로 한다. 무비 오브젝트는, 파일 "MovieObject.bdmv" 내에 값 title_id의 순으로 저장되고, 재생하는 플레이 리스트의 정보가 기술된다.
플레이 리스트는, 예를 들면 플레이 리스트가 생성된 순으로 일련 번호로 파일명이 "00001.mpls", "00002.mpls", "00003.mpls", "00004.mpls", "00005.mpls" 및 "00006.mpls"과 같이 붙여지고, 디렉토리 "PLAYLIST"의 아래에 저장된다.
전술한 항목 (B)의, 「각 타이틀은 무비 타이틀일 것」의 제약에 따라서, 각 타이틀은, 각각 1개의 무비 오브젝트를 호출한다. 또한, 전술한 항목 (C)의 「각 타이틀은, 1개의 무비 오브젝트를 통해서 1개의 플레이 리스트로 구성한다」의 제약에 따라서, 각 무비 오브젝트는, 각각 1개의 플레이 리스트를 참조한다. 즉, 타이틀, 무비 오브젝트 및 플레이 리스트는, 서로 일대일의 관계로 된다.
도 19의 예에서는, 값 title_id가 1이고, 타이틀 번호 #2의 타이틀은, 값 title_id가 대응하는 무비 오브젝트 #1만을 참조하고, 무비 오브젝트 #1은, 파일명 "00002.mpls"의 플레이 리스트만을 참조한다. 이 예에서는, 파일명 "00002.mpls"의 플레이 리스트는, 속성 「Virtual」이 부여된 버츄얼 플레이 리스트이다. 또한, 타이틀 번호 #3의 타이틀은, 값 title_id가 대응하는 무비 오브젝트 #2만을 참조하고, 이 예에서는, 무비 오브젝트 #2는, 파일명 "00003.mpls"의 플레이 리스트만을 참조한다. 이 파일명 "00003.mpls"의 플레이 리스트는, 속성 「Real」이 부여된 리얼 플레이 리스트이며, 클립에 대하여 일대일의 대응 관계가 있다.
디스크 상에 기록되어 있는 타이틀의 재생을 지시하기 위한 메뉴 화면은, 인덱스 테이블 내의 퍼스트 플레이백 및 톱 메뉴에 기초하여 재생된다. 파일 "index.bdmv" 내의 블록 Indexes()에서의 블록 FirstPlayback()의 필드 FirstPlayback_mobj_id_ref와, 블록 TopMenu()의 필드 TopMenu_mobj_id_ref에, 메뉴 화면을 재생하기 위해서 참조하는 무비 오브젝트가 기술된다. 이 도 19의 예에서는, 이들 필드 FirstPlayback_mobj_id_ref 및 필드 TopMenu_mobj_id_ref는, 모두 동일한 무비 오브젝트 #6을 참조하도록 되어 있다.
무비 오브젝트 #6은, 메뉴 화면을 실제로 재생하기 위한 메뉴 플레이 리스트를 참조한다. 이 도 19의 예에서는, 무비 오브젝트 #6은, 속성 「Menu」가 부여된, 파일명 "01001.mpls"의 플레이 리스트를 참조하고 있다.
메뉴 화면을 재생하기 위한 플레이 리스트에 속성 「Menu」를 부여하고, 퍼스트 플레이백 및 톱 메뉴로부터 참조되는 무비 오브젝트는, 속성 「Menu」가 부여된 메뉴 플레이 리스트만을 참조하도록 하고, 또한, 퍼스트 플레이백 및 톱 메뉴로부터 참조되는 무비 오브젝트는, 톱 메뉴로부터 호출되는 각 타이틀의 참조 및 그 각 타이틀로부터 참조되는 무비 오브젝트의 참조도 행하지 않도록 한다. 이와 같이 규정함으로써, 전술한 항목 (A)의, 「톱 메뉴용의 플레이 리스트와, 통상의 타이틀을 재생하기 위한 플레이 리스트는, 서로 독립으로 한다」는 취지의 제약을 실현할 수 있다.
또한, 메뉴 플레이 리스트로부터 참조되는 클립과, 톱 메뉴로부터 호출되는 각 타이틀에 대응하는 플레이 리스트로부터 참조되는 클립은, 서로 독립으로 한다.
이 편집 전의 상태에서, 파일명 "00001.mpls", "00002.mpls", "00003.mpls", "00004.mpls", "00005.mpls" 및 "00006.mpls"의 플레이 리스트에 대하여, 블록 TableOfPlayLists() 내의 필드 title_id_ref의 값이 각각 0, 1, 2, 3, 4 및 5로 된 다. 또한, 퍼스트 플레이백 및 톱 메뉴로부터 무비 오브젝트 #6을 통해서 참조되는 파일명 "01001.mpls"의 플레이 리스트는, 필드 title_id_ref의 값이 "0xFFFE"로 되고, 이 플레이 리스트가 톱 메뉴로부터 재생되는 것임이 나타내어진다.
또한, 이하에서는, 번잡함을 피하기 위해서, 「블록 TableOfPlayLists() 내의 필드 title_id_ref의 값」을 적절하게, 「값 title_id_ref」라고 약칭한다.
또한, 도 19에서, 퍼스트 플레이백 및 톱 메뉴로부터 무비 오브젝트 #6을 통해서 참조되는 플레이 리스트에 의해, 메뉴 화면(100)이 표시된다. 이 도 19의 예에서는, 메뉴 화면(100)에 대하여, 6개의 타이틀 각각의 재생을 지시하기 위한 버튼(101A∼101F)이 소정의 버튼 화상 데이터를 이용하여 표시됨과 함께, 이 메뉴 화면(100)의 제명(102)이 표시된다.
예를 들면, 버튼(101A)을 소정의 방법으로 지시함으로써, 값 title_id가 0, 타이틀 번호 #1의 타이틀이 지정되고, 무비 오브젝트 #0이 참조되며, 이 무비 오브젝트 #0에 기술되는 네비게이션 커맨드에 의해, 파일명 "00001.mpls"의 플레이 리스트가 참조됨과 함께 그 플레이 리스트의 재생이 명령되어, 그 플레이 리스트에 대응하는 클립이 재생된다.
이 도 19에 도시되는 상태로부터 타이틀을 삭제하는 경우에 대해서 생각한다. 또한, 기록기의 시스템은, 타이틀의 편집 시에, 타이틀의 기록순을 유지하고 타이틀 번호를 편집에 따라서 변경하는 시스템인 것으로 한다.
도 20은, 전술한 도 19의 상태로부터, 값 title_id가 2이고 타이틀 번호가 3인 타이틀 #3을 삭제한 경우의 메뉴 화면(100')과, 그 메뉴 화면(100')에 관련되는 타이틀, 무비 오브젝트 및 플레이 리스트의 구성예를 도시한다. 도 19의 상태로부터 타이틀 번호 #3의 타이틀이 삭제된 것에 수반하여, 편집 전의 타이틀 번호 #3 이후의 타이틀 번호가 1씩 앞으로 채워진다. 그와 함께, 편집 전의 타이틀 번호 #3의 타이틀로부터 호출되는 무비 오브젝트 #3이 삭제되고, 무비 오브젝트의 번호가 편집 전의 타이틀 번호 #3으로부터 호출되는 무비 오브젝트 #3 이후의 번호가 1씩 앞으로 채워진다. 이때, 번호가 변경된 무비 오브젝트의 내용은 변화되지 않기 때문에, 각 무비 오브젝트로부터 참조되는 플레이 리스트는, 편집의 전후에서 변화되지 않는다. 삭제된 무비 오브젝트로부터 참조되었던 플레이 리스트(파일명 "00003.mpls")는, 삭제된다.
구체적인 처리의 예에 대해서 설명한다. 도 9 및 도 10을 참조하여, 타이틀 번호 #3의 타이틀이 삭제되는 것은, 즉, 인덱스 파일 "index.bdmv" 내의 블록 Indexes()에서, 값 title_id를 루프 변수로 하는 for 루프문에서 값 title_id가 2인 블록 Title[title_id=2]()가 삭제되는 것이다. 블록 Title[title_id]()의 수가 1 줄었기 때문에, 필드 number_of_Titles의 값이 대응하여 1만큼 줄어들게 된다. 이에 의해, 삭제된 타이틀 이후의 타이틀의 타이틀 번호가 1씩 채워지게 된다.
또한, 블록 Indexes() 내의 블록 Title[title_id=2]()가 삭제됨으로써, 그 블록 Title[title_id=2]()로부터 필드 Title_mobj_id_ref[title_id=2]의 값에 기초하여 참조되었던 무비 오브젝트도 삭제된다. 도 11 및 도 12를 참조하여, 파일 "MovieObject.bdmv"에서도, 블록 MovieObjects()에서, 값 mobj_id를 루프 변수로 하는 for 루프문에서, 값 mobj_id가 필드 Title_mobj_id_ref[title_id=2]의 값에 대응하는 블록 MovieObject[mobj_id]()가 삭제된다. 여기서는, 타이틀과 무비 오브젝트와의 참조 관계가 일대일로 되어 있기 때문에, 값 mobj_id가 2인 블록 MovieObject[mobj_id=2]()가 삭제된다. 블록 MovieObject[mobj_id]()의 수가 1 줄었기 때문에, 필드 number_of_mobjs의 값이 대응해서 1만큼 줄어들게 된다. 이에 의해, 삭제된 타이틀 번호 #3의 타이틀로부터 호출되는 무비 오브젝트가 삭제되고, 삭제된 무비 오브젝트 이후의 무비 오브젝트가 내용의 변화없이 1씩 앞으로 채워진다. 무비 오브젝트의 내용이 변화되어 있지 않기 때문에, 그 무비 오브젝트와 플레이 리스트 사이의 참조 관계는, 변화되지 않는다.
또한, 삭제된 무비 오브젝트에 참조되었던 플레이 리스트가 삭제된다. 이때, 삭제되는 플레이 리스트의 속성이 「Real」이면, 대응하는 클립도 삭제된다. 플레이 리스트의 삭제에 수반하여, 인덱스 파일 "index.bdmv" 내의 확장 데이터 블록 ExtensionData()에서의 블록 TableOfPlayLists()에서, for 루프문 내의 삭제되는 플레이 리스트의 파일명에 대응하는 항목이 삭제되고, 필드 number_of_PlayLists의 값이 1만큼 줄어들게 된다.
타이틀의 삭제에 수반하여, 메뉴가 갱신된다. 메뉴의 갱신은, 전술한 바와 같이, 편집 전의 메뉴를 삭제하고, 타이틀의 정보에 기초하여 신규로 메뉴를 작성함으로써 행해진다. 보다 구체적으로는, 블록 TableOfPlayLists()에서 필드 PlayList_attribute로부터 속성이 「Menu」로 된 플레이 리스트의 정보를 검색하고, 검색된 플레이 리스트를 삭제한다. 전술한 도 19의 예에서는, 파일명 "01001.mpls"의 플레이 리스트가 삭제된다. 또한, 인덱스 파일 "index.bdmv"의 블 록 Indexes()에 기초하여, 톱 메뉴 및 퍼스트 플레이백으로부터 호출되는 무비 오브젝트(도 19의 예에서는 무비 오브젝트 #6)가 삭제된다. 그리고, 인덱스 테이블에서, 톱 메뉴 및 퍼스트 플레이백이 삭제된다.
편집 전의 메뉴가 삭제되면, 편집을 반영한 메뉴가 작성된다. 예를 들면, 편집 후의 톱 메뉴에 의한 메뉴 화면(100')을 재생하기 위한 클립, 무비 오브젝트 및 플레이 리스트가 생성된다. 이 처리는, 예를 들면 다음과 같이 하여 이루어진다.
우선, 메뉴 화면(100')을 표시하기 위한 클립이 생성된다. 이 도 20의 예에서는, 도 19에 도시되는, 편집 전의 메뉴 화면(100)의 버튼 화상 등을 그대로 이용하여, 신규의 메뉴 화면(100')을 구성하고 있다. 메뉴 화면(100')에서는, 각각 타이틀 번호 #1, #2, #3, #4 및 #5에 대응하는 5개의 버튼(101A, 101B, 101C', 101D' 및 101E')이 표시된다. 생성된 데이터는, 예를 들면 소정으로 다중화되어, 클립 AV 스트림 파일로서 디스크 상에 기록된다.
다음으로, 이 클립 AV 스트림 파일에 대응하는 클립 인포메이션 파일이 생성되고, 또한, 그 클립 인포메이션 파일을 참조하는 플레이 리스트가 생성된다. 플레이 리스트의 파일명은, 예를 들면 기존의 플레이 리스트의 파일명 및 지금까지 존재하고 있던 플레이 리스트의 파일명과 중복되지 않도록 정해진다. 이 예에서는, 그 플레이 리스트의 파일명을, "01002.mpls"로 한다.
플레이 리스트가 생성되면, 그 플레이 리스트를 참조하기 위한 무비 오브젝트가 생성된다. 이 무비 오브젝트는, 전술한 바와 같이, 파일 "MovieObject.bdmv" 내의 블록 MovieObjects()에서, for 루프문에 추기된다. 따라서, 이 무비 오브젝트는, 가장 큰 타이틀 번호의 타이틀로부터 참조되는 무비 오브젝트 #4의 다음의 무비 오브젝트 #5로 된다.
이 톱 메뉴를 재생하기 위한 무비 오브젝트 #5가 인덱스 파일 "index.bdmv" 내의 블록 Indexes()에서의 블록 TopMenu()에 등록된다. 즉, 도 10을 참조하여, 그 무비 오브젝트 #5를 나타내는 데이터가 블록 TopMenu() 내의 필드 TopMenu_mobj_id_ref로서 기술된다. 또한, 인덱스 파일 "index.bdmv" 내의 블록 Indexes()에서의 블록 FirstPlayback()이 갱신된다. 즉, 블록 FirstPlayback()에서, 필드 HDAVC_Title_playback_type의 값이 소정의 값으로 되고, 톱 메뉴를 재생하기 위한 무비 오브젝트 #5를 나타내는 데이터가 필드 FirstPlayback_mobj_id_ref로서 기술된다.
그리고, 인덱스 파일 "index.bdmv"에서의 확장 데이터 블록 ExtensionData() 내의 블록 TableOfPlayLists()를 갱신한다. 이 예에서는, 블록 TableOfPlayLists()에서, 필드 number_of_PlayLists의 값이 1만큼 줄어들게 되고, 톱 메뉴를 구성하는 신규로 생성된 플레이 리스트에 대해서, 파일명이 필드 PlayList_file_name으로서 기술됨과 함께, 그 플레이 리스트의 속성이 「Menu」로 되며, 속성 「Menu」를 나타내는 값이 필드 PlayList_attribute로서 기술된다. 필드 title_id_ref는, 플레이 리스트의 속성이 「Menu」로서, 톱 메뉴로부터 참조되는 경우에는, 값이 예를 들면 "0xFFFE"로 고정적으로 된다. 그리고, 필드 length의 값이 추가된 내용에 기초하여 갱신된다.
또한, 전술한, 타이틀 편집에 수반하는 파일 "index.bdmv", 파일 "MovieObject.bdmv" 등에 대한 갱신 처리는, 실제로는, CPU(Central Processing Unit)의 워크 메모리 상에서의 처리로 된다. 예를 들면, 기록기는, 디스크가 장전되면, 우선, 디스크로부터 인덱스 파일 "index.bdmv"나 무비 오브젝트 파일 "MovieObject.bdmv"를 읽어내어, CPU의 워크 메모리에 기억한다. CPU는, 메뉴의 편집 명령을 받으면, 이 워크 메모리 상에 기억된 이들 파일에 대하여 전술한 바와 같이 하여 처리를 행한다. 갱신된 이들 파일은, 예를 들면 디스크의 배출시나, 기록기의 전원 OFF시 등 소정의 타이밍에서, 디스크에 다시 쓰여진다.
다음으로, 전술한 바와 같이 하여, 도 20의 구성으로써 기록된 디스크를, 타이틀을 최초로 기록했을 때에 부여된 타이틀 번호를 유지하도록 된 기록기에 장전한 경우에 대해서 생각한다. 이 경우, 기록기측에서는, 전술한 처리에 의해 삭제된 타이틀의 타이틀 번호를 복원할 필요가 있다. 이 타이틀 번호의 복원은, 본 발명의 실시의 일 형태에서 정의된, 블록 TableOfPlayLists() 내의 필드 title_id_ref의 정보를 이용함으로써 가능하다.
도 21은, 타이틀 번호가 복원된 상태의 메뉴 화면(110)과, 그 메뉴 화면(110)에 관련되는 타이틀, 무비 오브젝트 및 플레이 리스트의 구성예를 도시한다. 도 21의 예에서는, 메뉴 화면(110)에 대하여, 디스크에 현재 기록되어 있는 타이틀에 대응하는 버튼(111A, 111B, 111D, 111E 및 111F)과, 그 디스크에 과거에 기록되어 현재에는 삭제되어 있는 타이틀에 대응하는 버튼(111C)이 함께 표시되어 있다. 이 중, 버튼(111C)을 선택한 경우에는, 대응하는 타이틀 번호의 타이틀이 이미 삭제되어 디스크 상에 존재하지 않는 것을 통지하면, 바람직하다.
이 도 21에 예시되는 구성은, 개략적으로는 다음과 같이 하여 작성된다. 예를 들면, 블록 TableOfPlayLists() 내의 필드 title_id_ref를 참조하여, 값 title_id_ref에 기초하여 삭제된 타이틀 번호를 복원하고, 인덱스 테이블에 복원된 타이틀 번호를 삽입한다. 또한, 복원된 타이틀 번호에 대응하는 무비 오브젝트와 플레이 리스트를 생성한다. 플레이 리스트는, 예를 들면, 그 타이틀 번호의 타이틀이 삭제된 취지를 표시하도록 된, 더미의 플레이 리스트를 이용할 수 있다. 또한, 이 플레이 리스트로부터 참조되는 클립은, 그때마다 소정으로 작성하여도 되고, 미리 시스템 측에서 준비하고 있어도 된다.
또한, 타이틀 번호의 복원 전의 메뉴가 삭제되고, 이들 복원된 타이틀 번호의 타이틀이 반영된 메뉴 화면(110)이 신규로 작성된다. 즉, 타이틀 번호의 복원 전의 메뉴를 재생하기 위한 플레이 리스트 및 무비 오브젝트와, 인덱스 테이블의 퍼스트 플레이백 및 톱 메뉴가 삭제되고, 메뉴 화면(110)을 재생하기 위한 플레이 리스트 및 무비 오브젝트가 신규로 작성됨과 함께, 작성된 무비 오브젝트가 톱 메뉴 및 퍼스트 플레이백에 등록된다.
도 22는, 값 title_id_ref에 기초하여 타이틀 번호 즉 값 title_id를 복원하는 일례의 처리를 설명하는 플로우차트이다. 플로우차트의 처리에 앞서서, 타이틀의 기록순이 유지되고 타이틀 번호가 유지되지 않는 기록기(기록기 A라고 함)에서, 장전된 디스크에 이미 기록된 타이틀이, 편집에 의해 삭제된다. 이때, 디스크 상에는, 도 20에 예시한 바와 같은, 삭제된 타이틀 번호에 대하여 그 이후의 타이틀 번호가 앞채움으로 됨과 함께, 삭제된 타이틀로부터 호출되는 무비 오브젝트 및 플레이 리스트가 삭제된 구성이 기록되어 있는 것으로 한다. 이 디스크가, 타이틀 번호를 유지하도록 한 기록기(기록기 B라고 함)에 장전된다.
기록기 B는, 디스크가 장전되면, 우선 인덱스 파일 "index.bdmv" 및 무비 오브젝트 파일 "MovieObject.bdmv"를 읽어들인다. 이때, 기록기 B는, 일례로서 다음과 같은 동작을 행한다. 기록기 B는, 예를 들면, 인덱스 파일 "index.bdmv"의 확장 데이터 블록 ExtensionData()에서, 블록 TableOfPlayLists()를 참조하여, 플레이 리스트마다 값 title_id_ref를 취득한다. 그리고, 취득한 값 title_id_ref가 연속적인 값으로 되어 있는지의 여부를 조사한다. 만약, 값 title_id_ref가 불연속이면, 기록기 A에서 타이틀이 삭제되었다고 판단할 수 있다. 타이틀이 삭제되었다고 판단된 경우, 이하에 설명하는 스텝 S50∼스텝 S57의 처리를 행하여, 기록기 B의 실장과의 호환성을 취한다.
이하의 스텝 S50∼스텝 S57의 처리는, 예를 들면 기록기 B를 제어하는 CPU(Central Processing Unit)가 메모리에 읽어 들여진 이들 파일 "index.bdmv" 및 파일 "MovieObject.bdmv"에 대하여 행해진다. 처리가 완료된 후의 메모리 상의 데이터는, 예를 들면 디스크의 배출 시나 기록기 B의 전원 OFF시 등 소정의 타이밍에서 디스크에 기록된다.
메뉴의 작성이 개시되면, 스텝 S50에서, 인덱스 파일 "index.bdmv" 내의 블록 Indexes()를 참조하여, 타이틀을 구성하는 무비 오브젝트 이외의 무비 오브젝트를 삭제한다. 예를 들면, 블록 Indexes()에서, 블록 FirstPlayback() 내의 필드 FirstPlayback_mobj_id_ref와, 블록 TopMenu() 내의 필드 TopMenu_mobj_id_ref에 나타내어지는 무비 오브젝트가 삭제된다.
스텝 S51에서는, 인덱스 파일 "index.bdmv" 내의 확장 데이터 블록 ExtensionData()에서의 블록 TableOfPlayLists()의, 필드 PlayList_attribute가 참조되어, 타이틀을 구성하는 플레이 리스트 이외의 플레이 리스트를 삭제한다. 예를 들면, 필드 PlayList_attribute가 속성 「Menu」를 나타내고 있는 플레이 리스트를 삭제한다.
다음 스텝 S52에서, 타이틀을 구성하는 플레이 리스트의 값 title_id_ref를 참조하여, 각 플레이 리스트를 재생하는 타이틀의 번호 즉 값 title_id가, 대응하는 플레이 리스트의 값 title_id_ref와 일치하도록, 블록 Indexes()의 내용을 재기입한다. 즉, 인덱스 파일 "index.bdmv"의 블록 Indexes() 내의, 루프 변수title_id의 for 루프문에서, 값 title_id마다, 참조하는 무비 오브젝트로부터 호출되는 플레이 리스트를 취득한다. 취득된 플레이 리스트 정보에 기초하여, 인덱스 파일의 확장 데이터로부터 블록 TableOfPlayLists()를 참조하여, 대응하는 값 title_id_ref를 구한다. 이 값 title_id_ref를 참조원의 값 title_id로 하도록, 블록 Indexes()의 대응 개소를 재기입한다.
또한, 이 스텝 S52에서는, 기록기 A에서 삭제되어 결번으로 되어 있는 타이틀에 대한 처리가 이루어진다. 값 title_id_ref는, 기록 시에 속해 있던 타이틀의 타이틀 번호 즉 값 title_id가 유지되어 있기 때문에, 기록기 A에서 삭제된 타이틀에 대응하는 값 title_id_ref가 결번으로 된다. 이 결번의 값 title_id_ref에 대 응하는 값 title_id에 대응하는 플레이 리스트가 생성된다. 이 플레이 리스트는, 예를 들면 더미의 플레이 리스트를 이용할 수 있다. 일례로서, 이 플레이 리스트를, 그 값 title_id에 기초하는 타이틀 번호의 타이틀이 디스크 상에 존재하지 않는 취지를 표시하기 위한 플레이 리스트로 할 수 있다. 이 플레이 리스트는, 디스크 상에 이미 존재하는 플레이 리스트와 중복되지 않는 파일명(도 21의 예에서는 파일명 "00007.mpls")이 붙여져서 디스크 상에 기록된다.
또한, 생성된 플레이 리스트를 재생하기 위한 무비 오브젝트가 생성된다. 생성된 무비 오브젝트는, 무비 오브젝트 파일 "MovieObject.bdmv"에서, 이미 존재하는 무비 오브젝트의 다음에 추가하여 생성된다(도 21의 예에서는, 무비 오브젝트 #5). 그리고, 추가된 무비 오브젝트의 번호(예를 들면 무비 오브젝트 파일 "MovieObject.bdmv" 내의 블록 MovieObjects()에서의 값 mobj_id)를, 인덱스 파일 "index.bdmv"의 블록 Indexes()에서, 값 title_id가 대응하는 필드 Title_mobj_id_ref에 설정한다.
다음 스텝 S53에서, 인덱스 파일 "index.bdmv"에서의 확장 데이터 블록 ExtensionData() 내의 블록 TableOfPlayLists()를 갱신한다. 즉, 이 스텝 S53에서는, 전술한 스텝 S52에서 생성된 더미의 플레이 리스트의 정보를, 블록 TableOfPlayLists()에 대하여 기술한다.
보다 구체적으로는, 블록 TableOfPlayLists()에서, 필드 number_of_PlayLists의 값이 1만큼 증가되고, 스텝 S52에서 생성된 더미의 플레이 리스트에 대해서, 파일명이 필드 PlayList_file_name으로서 기술됨과 함께, 그 플 레이 리스트의 속성이 예를 들면 「Real」로 되고, 그 취지를 나타내는 값이 필드 PlayList_attribute로서 기술된다. 필드 title_id_ref는, 기존의 값 title_id_ref의 다음의 값으로 된다. 도 21의 예에서는, 기존의 값 title_id_ref의 최대값이 5이기 때문에, 이 더미의 플레이 리스트에 대응하는 값 title_id_ref는, 6으로 되어 있다. 그리고, 필드 length의 값이 추가된 내용에 기초하여 갱신된다.
다음 스텝 S54에서, 톱 메뉴를 표시하기 위한 클립, 무비 오브젝트 및 플레이 리스트가 생성된다. 이 처리는, 예를 들면 다음과 같이 하여 이루어진다. 우선, 메뉴 화면을 표시하기 위한 클립이 생성된다. 이 클립은, 예를 들면 소정의 프로그램에 따라서 자동적으로 생성된 화상 데이터를 이용할 수 있다. 이에 한하지 않고, 디스크 상이나 기록기에서 메뉴 화면용의 화상 데이터를 미리 준비해 두고, 이를 이용하도록 하여도 된다. 또한, 메뉴 화면에 이용하는 화상 데이터는, 동화상 데이터이어도, 정지 화상 데이터이어도 된다. 또한, 타이틀의 재생을 지시하기 위해서 이용하는 버튼 화상 데이터를, 마찬가지로 하여 생성할 수 있다. 타이틀에 사용되는 클립에 대응하는 썸네일 화상을 또한 이용할 수도 있다. 이와 같이 하여 생성된 데이터는, 예를 들면 소정으로 다중화되어, 클립 AV 스트림 파일로서 디스크 상에 기록된다.
다음으로, 이 클립 AV 스트림 파일에 대응하는 클립 인포메이션 파일이 생성되고, 또한, 그 클립 인포메이션 파일을 참조하는 플레이 리스트가 생성된다. 플레이 리스트의 파일명은, 예를 들면 기존의 플레이 리스트의 파일명 및 지금까지 존재하고 있던 플레이 리스트의 파일명과 중복되지 않도록 정해진다. 도 21의 예 에서는, 그 플레이 리스트의 파일명을, "01003.mpls"로 하고 있다.
플레이 리스트가 생성되면, 그 플레이 리스트를 참조하기 위한 무비 오브젝트가 생성된다. 이 무비 오브젝트는, 전술한 스텝 S52에서 추가된, 더미의 플레이 리스트를 참조하는 무비 오브젝트의 다음의 무비 오브젝트로 된다(도 21의 예에서는, 무비 오브젝트 #6).
다음 스텝 S55에서, 전술한 스텝 S54에서 작성된, 톱 메뉴를 재생하기 위한 무비 오브젝트가 인덱스 파일 "index.bdmv" 내의 블록 Indexes()에서의 블록 TopMenu()에 등록된다. 즉, 도 10을 참조하여, 그 무비 오브젝트를 나타내는 데이터가 블록 TopMenu() 내의 필드 TopMenu_mobj_id_ref로서 기술된다.
다음 스텝 S56에서는, 인덱스 파일 "index.bdmv" 내의 블록 Indexes()에서의 블록 FirstPlayback()이 갱신된다. 즉, 블록 FirstPlayback()에서, 필드 HDAVC_Title_playback_type의 값이 소정의 값으로 되고, 전술한 스텝 S54에서 작성된, 톱 메뉴를 재생하기 위한 무비 오브젝트를 나타내는 값 mobj_id가 필드 FirstPlayback_mobj_id_ref로서 기술된다.
그리고, 다음 스텝 S57에서, 스텝 S54에 의한 톱 메뉴를 재생하는 플레이 리스트의 추가에 수반하여, 인덱스 파일 "index.bdmv"에서의 확장 데이터 블록 ExtensionData() 내의 블록 TableOfPlayLists()를 갱신한다. 즉, 이 스텝 S57에서는, 전술한 스텝 S54에서 생성된 톱 메뉴를 재생하기 위한 플레이 리스트의 정보를, 블록 TableOfPlayLists()에 대하여 기술한다.
보다 구체적으로는, 블록 TableOfPlayLists()에서, 필드 number_of_PlayLists의 값이 1만큼 증가되고, 톱 메뉴를 구성하는 신규로 생성된 플레이 리스트에 대해서, 파일명이 필드 PlayList_file_name으로서 기술됨과 함께, 그 플레이 리스트의 속성이 「Menu」로 되고, 속성 「Menu」를 나타내는 값이 필드 PlayList_attribute로서 기술된다. 필드 title_id_ref는, 플레이 리스트의 속성이 「Menu」로서, 톱 메뉴로부터 참조되는 경우에는, 값이 "0xFFFE"로 고정적으로 된다. 그리고, 필드 length의 값이 추가된 내용에 기초하여 갱신된다.
전술에서는, 타이틀의 기록순이 유지되고 타이틀 번호가 유지되지 않는 기록기 A에서 타이틀이 편집된 디스크를, 타이틀 번호를 유지하도록 한 기록기 B에 장전한 경우의 처리에 대해서 설명했지만, 이 반대의 상황도 당연히 생각된다. 즉, 타이틀 번호를 유지하는 기록기 B에서 타이틀이 편집된 디스크를, 타이틀 번호가 유지되지 않는 기록기 A에 장전한 경우이다.
일례로서, 기록기 B에서, 원래 타이틀 #1∼#6의 6개의 타이틀이 디스크에 기록되어 있던 상태로부터, 타이틀 #3을 삭제한 경우에 대해서 생각한다. 기록기 B에서는, 타이틀 번호가 유지되기 때문에, 타이틀 #3의 삭제에 수반하여, 타이틀 #3이 삭제된 것을 나타내는 더미의 플레이 리스트가 작성되는 것이 생각된다. 더미의 플레이 리스트 및 더미의 플레이 리스트를 재생하는 무비 오브젝트는, 도 21을 이용하여 설명한 바와 같이, 타이틀 #3의 삭제에 수반하여, 타이틀 #3으로부터 참조되는 무비 오브젝트 및 플레이 리스트를 삭제하고, 남은 무비 오브젝트 및 플레이 리스트에 대하여 추가하여 작성할 수 있다.
이 도 21의 구성에 따르면, 타이틀로부터 1개의 무비 오브젝트가 호출되고, 그 무비 오브젝트로부터 1개의 플레이 리스트가 참조된다. 그 때문에, 이 디스크는, 기록기 A에서, 타이틀, 무비 오브젝트 및 플레이 리스트에 대하여 어떠한 변경도 가하지 않고, 재생할 수 있다.
또한, 전술에서는, 디스크에 기록된 복수의 타이틀로부터 1개의 타이틀을 삭제한 경우의 처리에 대해서 설명했지만, 이것은 이 예에 한하지 않고, 2 이상의 타이틀을 삭제한 경우에도, 본 발명의 실시의 일 형태를 적용할 수 있다. 즉, 2 이상의 타이틀이 삭제된 경우라도, 값 title_id_ref에 기초하여, 복수의 삭제된 타이틀 번호를 각각 구할 수 있고, 삭제된 타이틀 번호의 타이틀을 각각 복원함과 함께, 삭제된 타이틀수분의 무비 오브젝트 및 플레이 리스트를 생성하고, 복원된 타이틀의 각각에 대하여, 생성된 무비 오브젝트 및 플레이 리스트를 각각 대응짓는다.
또한, 예를 들면 기록기 A에서, 디스크에 기록된 복수의 타이틀 중 마지막으로 기록된 타이틀이 삭제되는 경우도 있을 수 있다. 이 경우에는, 값 title_id_ref는 연속적인 값으로 되고, 타이틀 번호도, 결번이 생기지 않는다. 그 때문에, 그 디스크를 기록기 B에 장전하여도, 메뉴 표시나 새로운 타이틀의 추가 등으로 특별히 문제는 생기지 않는다고 생각된다.
다음으로, 본 발명의 실시의 일 형태를 적용 가능한 기록 재생 장치에 대해서 설명한다. 우선, 가상 플레이어에 대해서, 개략적으로 설명한다. 전술한 바와 같은 데이터 구조를 갖는 디스크가 플레이어에 장전되면, 플레이어는, 디스크로부터 읽어내어진 무비 오브젝트 등에 기술된 커맨드를, 플레이어 내부의 하드웨어를 제어하기 위한 고유의 커맨드로 변환할 필요가 있다. 플레이어는, 이와 같은 변환을 행하기 위한 소프트웨어를, 플레이어에 내장되는 ROM(Read Only Memory)에 미리 기억하고 있다. 이 소프트웨어는, 디스크와 플레이어를 중개하여 플레이어에 BD-ROM의 규격에 따른 동작을 행하게 하기 때문에, BD 가상 플레이어라고 칭해진다.
도 23A 및 도 23B는, 이 BD 가상 플레이어의 동작을 개략적으로 도시한다. 도 23A는, 디스크의 로딩 시의 동작의 예를 도시한다. 디스크가 플레이어에 장전되어 디스크에 대한 이니셜 액세스가 이루어지면(스텝 S30), 1개의 디스크에서 공유적으로 이용되는 공유 파라미터가 기억되는 레지스터가 초기화된다(스텝 S31). 그리고, 다음 스텝 S32에서, 무비 오브젝트 등에 기술된 프로그램이 디스크로부터 읽어들여져 실행된다. 또한, 이니셜 액세스는, 디스크 장전 시와 같이, 디스크의 재생이 처음으로 행해지는 것을 말한다.
도 23B는, 플레이어가 정지 상태로부터 유저에 의해 예를 들면 플레이 키가 눌러져 재생이 지시된 경우의 동작의 예를 도시한다. 최초의 정지 상태(스텝 S40)에 대하여, 유저에 의해, 예를 들면 리모트 컨트롤 커맨더 등을 이용하여 재생이 지시된다(UO: User Operation). 재생이 지시되면, 우선, 레지스터 즉 공통 파라미터가 초기화되고(스텝 S41), 다음 스텝 S42에서, 무비 오브젝트 실행 페이즈로 이행한다.
무비 오브젝트의 실행 페이즈에서의 플레이 리스트의 재생에 대해서, 도 24를 이용하여 설명한다. UO 등에 의해, 타이틀 번호 #1의 콘텐츠를 재생 개시하는 지시가 있었던 경우에 대해서 생각한다. 플레이어는, 콘텐츠의 재생 개시 지시에 따라서, 전술한 도 4에 도시되는 인덱스 테이블(Index Table)을 참조하여, 타이틀 #1의 콘텐츠 재생에 대응하는 오브젝트의 번호를 취득한다. 예를 들면 타이틀 #1의 콘텐츠 재생을 실현하는 오브젝트의 번호가 #1이었던 것으로 하면, 플레이어는, 무비 오브젝트 #1의 실행을 개시한다.
이 도 24의 예에서는, 무비 오브젝트 #1에 기술된 프로그램은 2행으로 이루어지고, 1행째의 커맨드가 "Play PlayList(1)"인 것으로 하면, 플레이어는, 플레이 리스트 #1의 재생을 개시한다. 플레이 리스트 #1은, 1 이상의 플레이 아이템으로 구성되고, 플레이 아이템이 순차적으로 재생된다. 플레이 리스트 #1 내의 플레이 아이템의 재생이 종료되면, 무비 오브젝트 #1의 실행으로 되돌아가서, 2행째의 커맨드가 실행된다. 도 24의 예에서는, 2행째의 커맨드가 "jump TopMenu"로서, 이 커맨드가 실행되어 인덱스 테이블에 기술된 톱 메뉴(Top Menu)를 실현하는 무비 오브젝트의 실행이 개시된다.
도 25는, 본 발명의 실시의 일 형태에 적용 가능한 기록 재생 장치의 일례의 구성을 도시한다. 이 기록 재생 장치는, 예를 들면 비디오 카메라 장치의 기록 재생부로서 이용할 수 있다. 이에 한하지 않고, 이 기록 재생 장치는, 단체로 사용하는 구성으로 할 수도 있다. 여기서는, 이 기록 재생 장치가 비디오 카메라 장치의 기록 재생부로서 이용되는 것으로서 설명한다. 또한, 이 도 25에 예시되는 기록 재생 장치의 구성은, 전술한, 기록순을 유지하고 타이틀 번호를 유지하지 않는 기록기 A와, 타이틀 번호를 유지하는 기록기 B의 어느 쪽에도 적용 가능한 것이다.
제어부(17)는, 예를 들면 CPU, ROM(Read Only Memory) 및 RAM(Random Access Memory) 등으로 이루어진다. ROM은, CPU 상에서 동작되는 프로그램이나 동작을 위해서 필요한 데이터가 미리 기억된다. RAM은, CPU의 워크 메모리로서 이용된다. CPU는, ROM에 기억된 프로그램이나 데이터를 필요에 따라서 읽어내고, RAM을 워크 메모리에 이용하면서, 이 기록 재생 장치의 전체를 제어한다. 전술한 BD 가상 플레이어는, 예를 들면 미리 ROM에 기억된 프로그램에 의해, 제어부(17)에 의해 실현된다.
이 기록 재생 장치에 대하여, 도시되지 않은 비디오 카메라부로부터 출력되는, 기기 특유의 정보나 기록에 관한 데이터 등이 입력 출력 단자(28)로부터 입력된다. 입출력 단자(28)에 입력된 이들 데이터는, 제어부(17)에 공급된다.
각종 스위치 등의 조작자나, 간이하게 표시를 행하는 표시 소자를 갖는 도시되지 않은 유저 인터페이스로부터 출력된 데이터가 데이터 입출력 단자(28)로부터 입력된다. 또한, 제어부(17)에서 생성된 표시 제어 신호가 데이터 입력 출력 단자(28)를 통해서 유저 인터페이스에 공급된다. 유저 인터페이스는, 이 표시 제어 신호를 텔레비전 수상기 등의 모니터 장치에 공급하여, 표시시킬 수도 있다.
우선, 기록 시의 동작에 대해서 설명한다. 도시되지 않은 비디오 카메라부에서, 촬상에 의해 얻어진 비디오 신호가 입력단(30)에 입력되고, 이 비디오 신호에 수반되어 출력된 오디오 신호가 입력단(31)에 입력된다. 입력된 비디오 신호 및 오디오 신호는, AV 인코더(23)에 공급된다. 비디오 신호는, 비디오 해석부(24)에도 공급된다. AV 인코더(23)는, 입력된 비디오 신호 및 오디오 데이터를, 예를 들면 MPEG2 방식으로 부호화하고, 부호화 비디오 스트림 V, 부호화 오디오 스트림 A 및 시스템 정보 S를 각각 출력한다.
AV 인코더(23)는, 오디오 신호를, 예를 들면 MPEG1 오디오 스트림이나 돌비 AC3 오디오 스트림 등의 형식으로 부호화한다. 시스템 정보 S는, 부호화 픽쳐나 오디오 프레임의 바이트 사이즈, 픽쳐의 부호화 타입 등의, 비디오 신호나 오디오 신호의 부호화 정보나, 비디오 및 오디오의 동기 등에 관한 시간 정보로 이루어진다.
AV 인코더(23)의 이들 부호화 출력은, 멀티플렉서(22)에 공급된다. 멀티플렉서(22)는, 공급된 부호화 비디오 스트림 V, 부호화 오디오 스트림 A를, 시스템 정보 S에 기초하여 다중화하고, MPEG2 트랜스포트 스트림에 의한 다중화 스트림을 출력한다. 즉, 부호화 비디오 스트림 V, 부호화 오디오 스트림 A 및 시스템 정보 S는, 각각 트랜스포트 패킷의 페이로드의 사이즈로 분할되고, 소정의 헤더가 부가되어, 트랜스포트 패킷화된다. 헤더에는, 각각의 데이터 종류 등을 식별 가능하도록, PID가 소정으로 저장된다.
멀티플렉서(22)로부터 출력된 다중화 스트림은, 단자(50A)가 선택된 스위치(50)를 통해서 소스 패킷타이저(21) 및 다중화 스트림 해석부(25)에 공급된다. 소스 패킷타이저(21)는, 공급된 다중화 스트림을, 기록 매체의 어플리케이션 포맷에 따라서 부호화한다.
소스 패킷타이저(21)에서 부호화된 클립 AV 스트림은, ECC(Error Correction Coding) 부호화부(20)에서 에러 정정 부호화되고, 변조부(19)에서 기록 부호로 변조되어, 기입부(18)에 공급된다. 기입부(18)는, 제어부(17)로부터 공급되는 제어 신호의 지시에 기초하여, 변조부(19)에서 기록 부호로 변조된 클립 AV 스트림을, 기록 가능한 기록 매체(10)에 대하여 기록한다.
이 기록 재생 장치는, 클립 AV 스트림이 다중화된 트랜스포트 스트림을 직접적으로 입력받아, 기록 매체에 기록할 수 있도록 되어 있다. 예를 들면, 디지털 인터페이스 또는 디지털 텔레비전 튜너로부터 출력되는, 디지털 텔레비전 방송 등에 의한 트랜스포트 스트림이 입력 단자(32)에 대하여 입력된다.
입력된 트랜스포트 스트림의 기록 방법으로서는, 트랜스페어런트하게 기록하는 방법과, 기록 비트 레이트를 낮추는 등의 목적을 위해서 재인코드하여 기록하는 방법이 생각된다. 이 2가지의 기록 방법 중 어느 쪽을 이용하여 기록을 행할지의 지시는, 예를 들면 유저의 유저 인터페이스에 대한 조작에 의해 이루어지고, 이 조작에 따른 제어 신호가 데이터 입력 출력 단자(28)를 통해서 제어부(17)에 공급된다. 제어부(17)는, 이 제어 신호에 기초하여 이 기록 재생 장치의 각 부를 제어하고, 기록 방법의 제어를 행한다.
입력 트랜스포트 스트림을 트랜스페어런트하게 기록하는 경우, 스위치(50)에서 단자(50B)가 선택됨과 함께, 스위치(51)에서 단자(51A)가 선택되고, 입력단(32)으로부터 입력된 트랜스포트 스트림은, 스위치(51 및 50)를 통해서 소스 패킷타이저(21) 및 다중화 스트림 해석부(25)에 각각 공급된다. 이 이후의 처리는, 전술한, 입력단(30 및 31)에 입력된 비디오 신호 및 오디오 신호를 부호화하여 기록하는 경우와 동일하다.
한편, 입력 트랜스포트 스트림을 재인코드하여 기록하는 경우, 스위치(51)에 서 단자(51B)가 선택되고, 입력단(32)으로부터 입력된 트랜스포트 스트림은, 디멀티플렉서(15)에 공급된다. 디멀티플렉서(15)는, 공급된 트랜스포트 스트림에 다중화되어 있는 부호화 비디오 스트림 V, 부호화 오디오 스트림 A 및 시스템 정보 S를 분리하고, 부호화 비디오 스트림 V를 AV 디코더(16)에 공급함과 함께, 부호화 오디오 스트림 A 및 시스템 정보 S를 멀티플렉서(22)에 공급한다.
AV 디코더(16)는, 디멀티플렉서(15)로부터 공급된 부호화 비디오 스트림 V를 복호하고, 복호된 비디오 신호를 AV 인코더(23)에 공급한다. AV 인코더(23)는, 공급된 이 비디오 신호를 부호화하여 부호화 비디오 스트림 V로 한다. 이 부호화 비디오 스트림 V는, 멀티플렉서(22)에 공급된다.
멀티플렉서(22)는, AV 인코더(23)에서 부호화되어 공급된 부호화 비디오 스트림 V와, 디멀티플렉서(15)에서 분리된 부호화 오디오 스트림 A를, 동일하게 디멀티플렉서(15)에서 분리된 시스템 정보 S에 기초하여 다중화하여 다중화 스트림을 출력한다. 이 이후의 처리는, 전술한, 입력단(30 및 31)에 입력된 비디오 신호 및 오디오 신호를 부호화하여 기록하는 경우와 동일하다.
이 기록 재생 장치는, 예를 들면 BD-RE 규격에 준한 기록 매체(10)에 대하여 전술한 바와 같이 하여 클립 AV 스트림 파일을 기록함과 함께, 기록하는 클립 AV 스트림 파일에 관련되는 어플리케이션 데이터베이스 정보를 더 기록한다. 어플리케이션 데이터베이스 정보는, 비디오 해석부(24)로부터의 동화상의 특징 정보와, 다중화 스트림 해석부(25)로부터의 클립 AV 스트림의 특징 정보와, 단자(28)로부터 입력되는 유저의 지시 정보에 기초하여, 제어부(17)에 의해 작성된다.
비디오 해석부(24)로부터 얻어지는, 동화상의 특징 정보는, AV 인코더(23)에 의해 비디오 신호를 부호화하여 기록하는 경우에, 이 기록 재생 장치 내에서 생성되는 정보이다. 비디오 해석부(24)에는, 입력단(30)으로부터 입력된 비디오 신호 또는 입력단(32)으로부터 입력된 트랜스포트 스트림으로부터 디멀티플렉서(15)에서 분리되어 AV 디코더(16)에서 복호된 비디오 신호가 공급된다. 비디오 해석부(24)는, 공급된 비디오 신호의 내용을 해석하고, 입력된 비디오 신호 내의 특징적인 마크점의 화상에 관한 정보를 생성한다. 예를 들면, 비디오 해석부(24)는, 입력 비디오 신호 내의 프로그램의 개시점, 씬 체인지점이나, CM(커머셜) 방영의 개시, 종료점 등의 특징적인 마크점을 검출하고, 검출된 마크점의 화상의 지시 정보를 얻는다. 또한, 마크점의 화상의 썸네일 화상을 생성하도록 하여도 된다. 썸네일 화상은, 실제의 화상 데이터를 씨닝 처리 등에 의해 축소한 화상이다. 또한, 썸네일 화상의 클립 AV 스트림 상의 위치는, PTS로 나타낼 수 있다.
이들 화상의 지시 정보, 썸네일 화상 및 썸네일 화상의 위치 정보(예를 들면 PTS)는, 제어부(17)를 통해서 멀티플렉서(22)에 공급된다. 멀티플렉서(22)는, 제어부(17)로부터 지시되는 마크점의 화상을 부호화한 부호화 픽쳐를 다중화할 때에, 그 부호화 픽쳐의 클립 AV 스트림 상에서의 어드레스 정보를 제어부(17)에 돌려준다. 제어부(17)는, 특징적인 화상의 종류와, 대응하는 부호화 픽쳐의 클립 AV 스트림 상에서의 어드레스 정보를 관련지어, 예를 들면 RAM에 기억한다.
다중화 스트림 해석부(25)로부터 얻어지는, 클립 AV 스트림의 특징 정보는, 기록되는 클립 AV 스트림의 부호화 정보에 관련되는 정보이며, 이 동화상 기록 재 생 장치 내에서 생성된다. 예를 들면, 클립 AV 스트림에 대해서, 엔트리 포인트의 타임 스탬프와 대응하는 어드레스 정보를 클립 AV 스트림의 특징 정보로서 포함한다. 이 밖에도, 클립 AV 스트림에 대해서, STC(System Time Clock)의 불연속 정보, 프로그램 내용의 변화 정보, 어라이벌 타임과 대응하는 어드레스 정보 등이, 클립 AV 스트림의 특징 정보로서 포함된다.
또한, 다중화 스트림 해석부(25)는, 입력단(32)으로부터 입력되는 트랜스포트 스트림을 트랜스페어런트하게 기록하는 경우, 클립 AV 스트림 내의 특징적인 마크점 화상을 검출하고, 검출된 화상의 종류와 어드레스 정보를 생성한다. 이 정보는, 클립 인포메이션 파일 내의 블록 ClipMark에 저장되는 데이터로 된다. 이와 같이, 다중화 스트림 해석부(25)에 의해 얻어진 클립 AV 스트림의 특징 정보는, 클립 AV 스트림의 데이터베이스인 클립 인포메이션 파일에 저장되게 된다. 다중화 스트림 해석부(25)에서 얻어진 이들 정보는, 예를 들면, 제어부(17)의 RAM에 일단 기억된다.
도시되지 않은 유저 인터페이스에 대하여 이루어진 유저의 지시 정보는, 데이터 입력 출력 단자(28)로부터 제어부(17)에 공급된다. 이 지시 정보는, 예를 들면, 클립 AV 스트림 내에서 유저가 마음에 든 재생 구간의 지정 정보, 그 재생 구간의 내용을 설명하기 위한 캐릭터 문자, 유저가 마음에 든 씬으로 세트하는 북 마크점이나 리쥼점의 클립 AV 스트림 내의 타임 스탬프 등이 포함된다. 이들 유저의 지시 정보는, 일단, 제어부(17)의 RAM에 기억된다. 이들 지시 정보는, 기록 매체(10) 상에서는, 플레이 리스트가 갖는 데이터베이스에 저장된다.
제어부(17)는, RAM 상에 기억된 전술한 입력 정보, 즉, 비디오 해석부(24)로부터 얻어지는 동화상의 특징 정보, 다중화 스트림 해석부(25)로부터 얻어지는 클립 AV 스트림의 특징 정보, 및, 데이터 입력 출력 단자(28)로부터 입력된 유저 지시 정보에 기초하여, 클립 AV 스트림의 데이터베이스(클립 인포메이션), 플레이 리스트의 데이터베이스(플레이 리스트 파일), 기록 매체의 기록 내용에 대한 관리 정보(인덱스 파일) 및 썸네일 정보를 작성한다.
여기서, 제어부(17)는, 인덱스 파일을 작성할 때에, 전술한, 데이터 입출력 단자(28)로부터 입력된, 기기 특유의 데이터나 기록에 관한 정보에 기초하여, 인덱스 파일, 플레이 리스트 파일 및/또는 클립 인포메이션 파일을 확장하기 위한 확장 데이터를 작성할 수 있다. 즉, 제어부(17)는, 데이터 입출력 단자(28)로부터 입력된 데이터에 기초하여, 확장 데이터를, 도 15의 플로우차트를 이용하여 설명한 바와 같은 처리에 의해 파일에 매립한다.
이들 데이터베이스 정보는, 제어부(17)의 RAM으로부터 읽어내어져, 클립 AV 스트림과 마찬가지로 하여, 제어부(17)로부터 ECC 부호화부(20)에 공급되어 에러 정정 부호화되고, 변조부(19)에서 기록 부호로 변조되어, 기입부(18)에 공급된다. 기입부(18)는, 제어부(17)로부터 공급되는 제어 신호에 기초하여, 기록 부호화된 데이터베이스 정보를 기록 매체(10)에 기록한다.
다음으로, 재생 시의 동작에 대해서 설명한다. 기록 매체(10)는, 기록 시의 동작에서 설명한 바와 같이 하여 작성된, 클립 AV 스트림 파일과, 플레이 리스트 파일 및 인덱스 파일로 이루어지는 어플리케이션 데이터베이스 정보와, 무비 오브 젝트 파일이 기록되어 있다. 기록 매체(10)가 도시되지 않은 드라이브 장치에 장전되면, 우선, 제어부(17)는, 읽어내기부(11)에 대하여, 기록 매체(10) 상에 기록된 어플리케이션 데이터베이스 정보와 무비 오브젝트 파일을 읽어내도록 지시한다. 읽어내기부(11)는, 이 지시를 받아, 기록 매체(10)로부터 어플리케이션 데이터베이스 정보와 무비 오브젝트 파일을 읽어낸다. 읽어내기부(11)의 출력은, 복조부(12)에 공급한다.
복조부(12)는, 읽어내기부(11)의 출력을 복조하고, 기록 부호를 복호하여 디지털 데이터로 한다. 복조부(12)의 출력은, ECC 복호부(13)에 공급되고, 에러 정정 부호가 복호되어 에러 정정 처리가 행해진다. 에러 정정 처리된 어플리케이션 데이터베이스 정보는, 제어부(17)에 공급된다.
제어부(17)는, 어플리케이션 데이터베이스 정보와 무비 오브젝트 파일에 기초하여, 기록 매체(10)에 기록되어 있는 타이틀의 일람을 표시하기 위한 메뉴 화면을, 유저 인터페이스 입력 출력 단자(28)를 통해서 유저 인터페이스에 출력한다. 이 메뉴 화면은, 예를 들면 유저 인터페이스에 설치된 표시부에 소정으로 표시된다. 유저에 의해, 이 메뉴 화면에 기초하여 재생하고자 하는 타이틀이 선택되고, 선택된 타이틀을 재생하도록 하는 조작이 유저 인터페이스에 대하여 이루어진다. 이 조작에 따른 제어 신호가 유저 인터페이스로부터 출력되고, 단자(28)를 통해서 제어부(17)에 공급된다.
제어부(17)는, 이 제어 신호에 따라서, 인덱스 파일이나 무비 오브젝트 파일의 내용에 기초하여, 선택된 타이틀의 재생에 필요한 클립 AV 스트림 파일의 읽어 내기를 읽어내기부(11)에 지시한다. 읽어내기부(11)는, 이 지시에 따라서, 기록 매체(10)로부터 클립 AV 스트림 파일을 읽어낸다. 읽어내기부(11)의 출력은, 복조부(12)에 공급된다. 복조부(12)는, 공급된 신호를 복조하고, 기록 부호를 복호하여 디지털 데이터로서 출력하여, ECC 복호부(13)에 공급한다. ECC 복호부(13)는, 공급된 디지털 데이터의 에러 정정 부호를 복호하고, 에러 정정을 행한다. 에러 정정된 클립 AV 스트림 파일은, 제어부(17)에 의해 제공되는 도시되지 않은 파일 시스템부의 처리를 받아, 소스 디패킷타이저(14)에 공급된다.
소스 디패킷타이저(14)는, 제어부(17)의 제어에 기초하여, 기록 매체(10)에서의 어플리케이션 포맷으로 기록되어 있던 클립 AV 스트림 파일을, 디멀티플렉서(15)에 입력할 수 있는 형식의 스트림으로 변환한다. 예를 들면, 소스 디패킷타이저(14)는, 기록 매체(10)로부터 재생된 MPEG2 트랜스포트 스트림을 소스 패킷 단위로 분해하고, 소스 패킷으로부터 헤더를 제거하여 트랜스포트 패킷화한다. 이 트랜스포트 패킷화된 클립 AV 스트림을, 디멀티플렉서(15)에 공급한다.
디멀티플렉서(15)는, 제어부(17)의 제어에 기초하여, 소스 디패킷타이저(14)로부터 공급된 클립 AV 스트림의, 제어부(17)에 의해 지정된 재생 구간(PlayItem)을 구성하는 비디오 스트림 V, 오디오 스트림 A 및 시스템 정보 S를 출력하여, AV 디코더(16)에 공급한다. 예를 들면, 디멀티플렉서(15)는, 공급된 트랜스포트 패킷을 PID에 기초하여 선별하고, 선별된 각각에 대해서, 트랜스포트 패킷 헤더를 제거하여 출력한다. AV 디코더(16)는, 공급된 비디오 스트림 V 및 오디오 스트림 A를 복호하고, 복호된 재생 비디오 신호 및 재생 오디오 신호를 비디오 출력단(26) 및 오디오 출력단(27)에 각각 도출한다.
이 기록 재생 장치에서, 다른 기록 재생 장치에서 기록 등이 이루어진 디스크를 장전한 경우의 처리에 대해서, 개략적으로 설명한다. 이 기록 재생 장치가 전술한 기록기 B의 타입의, 타이틀 등의 편집 시에 타이틀 번호를 유지하도록 한 장치인 경우에 대해 설명한다. 기록기 B의 타입의 기록 재생 장치는, 장전된 디스크에 대하여 타이틀 번호를 유지하지 않는 편집이 행하여졌는지의 여부를 알 필요가 있다.
일례로서, 기록 재생 장치는, 디스크가 장전되면 우선, 예를 들면 인덱스 파일 "index.bdmv" 및 무비 오브젝트 파일 "MovieObject.bdmv"를 읽어들이고, 블록 Indexes()를 참조하여, 각 타이틀이 호출하는 무비 오브젝트의 정보를 취득하고, 취득된 정보에 기초하여 무비 오브젝트 파일 "MovieObject.bdmv"를 참조하여, 각무비 오브젝트가 참조하는 플레이 리스트의 정보를 취득한다.
일례로서 전술한 도 21과 같은 상태를 생각하면, 각 타이틀의 타이틀 번호에 대응하는 값 title_id와, 각 타이틀로부터 호출되는 무비 오브젝트의 순번(무비 오브젝트 파일 "MovieObject.bdmv" 내의 블록 MovieObjects()에서의 루프 변수mobj_id의 for 루프문의 값 mobj_id)이 상이한 경우에, 기록기 A의 타입의 기록 재생 장치에서 타이틀의 삭제 등의 편집이 행해졌다고 판단할 수 있다.
이에 한하지 않고, 소정의 장소, 예를 들면 인덱스 파일 "index.bdmv"의 확장 데이터 블록 ExtensionData()에, 최신으로 기록이 행해진 기록기의 정보나 편집 내용에 관한 정보를 기술하는 것도 생각된다. 이 경우에는, 최신으로 기록이 행해 진 기록기가 기록기 A의 타입인지의 여부가 판단되고, 기록기 A의 타입이라고 판단되면, 전술도 한 바와 같이, 값 title_id_ref가 연속적인 값으로 되어 있는지의 여부의 판단에 기초하여, 타이틀 번호를 유지하지 않고 타이틀을 삭제하는 편집이 행하여졌는지의 여부를 판단할 수 있다.
만약, 장전한 디스크가 기록기 A의 타입의 기록 재생 장치에서 타이틀 삭제 등의 편집이 행해졌다고 판단되면, 도 21 및 도 22를 이용하여 설명한 바와 같은 처리에 의해, 값 title_id_ref에 기초하는 타이틀의 복원 및 메뉴의 갱신의 처리가 행해진다.
전술에서는, 도 25에 도시하는 기록 재생 장치가 비디오 카메라 등으로부터 출력된 비디오 데이터 및 오디오 데이터를 기록 매체(10)에 기록하도록 한 장치인 것처럼 설명했지만, 이는 이 예에 한하지 않는다. 예를 들면, 입력된 비디오 데이터에 대하여 편집 처리를 행하고, 편집된 비디오 데이터를 출력하도록 한 편집 장치에 본 발명의 실시의 일 형태를 적용할 수도 있다. 또한, 전술한 도 25의 구성을, 재생부측의 구성을 생략한 기록 장치로 할 수도 있다. 또한, 기록 매체(10)는, BD-RE 규격에 준한 디스크형 기록 매체인 것처럼 설명했지만, 이는 이 예에 한정되지 않고, 본 발명의 실시의 일 형태는, 반도체 메모리, 하드디스크 등의 다른 기록 매체에도 적용 가능하다.
또한, 전술에서는, 도 25에 도시하는 기록 재생 장치가 하드웨어적으로 구성 되도록 설명했지만, 이는 이 예에 한정되지 않는다. 즉, 기록 재생 장치는, 실제로 기록 매체(10)가 장전되는 드라이브부 등의 기구 부분 이외의 부분을, 소프트웨 어로서 구성하는 것도 가능하다. 이 경우, 소프트웨어는, 예를 들면 제어부(17)가 갖는 ROM에 미리 기억된다. 이에 한하지 않고, 동화상 기록 재생 장치를, 퍼스널 컴퓨터 등의 컴퓨터 장치 상에 구성하는 것도 가능하다. 이 경우에는, 동화상 기록 재생 장치를 컴퓨터 장치에 실행시키는 소프트웨어는, CD-ROM이나 DVD-ROM 등의 기록 매체에 기록되어 제공된다. 컴퓨터 장치가 네트워크 접속 가능한 경우, 인터넷 등의 네트워크를 통해서 그 소프트웨어를 제공하는 것도 가능하다.

Claims (6)

  1. 적어도 콘텐츠 데이터와, 상기 콘텐츠 데이터의 재생을 제어하기 위한 재생 제어 정보를 기록 매체에 기록하는 기록 장치에 있어서,
    콘텐츠 데이터를 기록 매체에 기록하는 기록부와,
    상기 기록 매체에 기록되는 상기 콘텐츠 데이터에 대하여, 상기 콘텐츠 데이터의 속성 정보를 나타내는 클립 정보를 포함하는 클립 정보 파일과, 상기 클립 정보를 호출하는 플레이 리스트를 포함하는 플레이 리스트 파일과, 상기 플레이 리스트를 호출하는 상기 콘텐츠 데이터의 재생 방법을 나타내는 오브젝트를 포함하는 오브젝트 파일과, 상기 오브젝트를 호출하는 타이틀이 기술되는 인덱스 테이블을 포함하는 인덱스 파일을 생성하도록 제어하는 제어부
    를 가지며,
    상기 제어부는,
    상기 플레이 리스트 파일의 생성 시에 상기 플레이 리스트 파일이 속하는 상기 타이틀을 나타내는 정보를 상기 인덱스 파일에 대하여 부가하도록 제어하는 것을 특징으로 하는 기록 장치.
  2. 제1항에 있어서,
    상기 제어부는,
    상기 플레이 리스트 파일의 속성을 나타내는 정보를, 상기 플레이 리스트 파 일의 기록순으로 저장하는 테이블을 생성하도록 제어하고,
    상기 테이블에는, 상기 플레이 리스트 파일의 각각에 대해서, 상기 플레이 리스트 파일의 생성 시에 상기 플레이 리스트 파일이 속하는 타이틀을 나타내는 정보가 적어도 저장되도록 제어하는 것을 특징으로 하는 기록 장치.
  3. 제2항에 있어서,
    상기 제어부는,
    상기 테이블에, 상기 플레이 리스트 파일을 식별하는 정보와, 상기 플레이 리스트 파일을 생성하는 목적에 기초하는 종류를 나타내는 정보를 더 저장하도록 제어하는 것을 특징으로 하는 기록 장치.
  4. 제2항에 있어서,
    상기 제어부는,
    상기 타이틀로부터 재생되는 상기 플레이 리스트가 포함되는 상기 플레이 리스트 파일을, 상기 인덱스 테이블 상의 상기 타이틀의 배열과, 상기 테이블 상의, 메뉴를 재생하기 위한 상기 플레이 리스트 파일 이외의 상기 플레이 리스트 파일의 배열을 대응시켜서 결정하도록 제어하는 것을 특징으로 하는 기록 장치.
  5. 적어도 콘텐츠 데이터와, 상기 콘텐츠 데이터의 재생을 제어하기 위한 재생 제어 정보를 기록 매체에 기록하는 기록 방법에 있어서,
    기록 매체에 기록되는 콘텐츠 데이터에 대하여, 상기 콘텐츠 데이터의 속성 정보를 나타내는 클립 정보를 포함하는 클립 정보 파일과, 상기 클립 정보를 호출하는 플레이 리스트를 포함하는 플레이 리스트 파일과, 상기 플레이 리스트를 호출하는 상기 콘텐츠 데이터의 재생 방법을 나타내는 오브젝트를 포함하는 오브젝트 파일과, 상기 오브젝트를 호출하는 타이틀이 기술되는 인덱스 테이블을 포함하는 인덱스 파일을 생성하도록 제어되고, 상기 플레이 리스트 파일의 생성 시에 그 플레이 리스트 파일이 속하는 상기 타이틀을 나타내는 정보를 상기 인덱스 파일에 대하여 부가하도록 제어하는 것을 특징으로 하는 기록 방법.
  6. 적어도 콘텐츠 데이터와, 상기 콘텐츠 데이터의 재생을 제어하기 위한 재생 제어 정보를 기록 매체에 기록하는 기록 방법을 컴퓨터 장치에 실행시키는 기록 프로그램을 기록한 컴퓨터 판독 가능한 저장 매체로서,
    상기 기록 방법은,
    기록 매체에 기록되는 콘텐츠 데이터에 대하여, 상기 콘텐츠 데이터의 속성 정보를 나타내는 클립 정보를 포함하는 클립 정보 파일과, 상기 클립 정보를 호출하는 플레이 리스트를 포함하는 플레이 리스트 파일과, 상기 플레이 리스트를 호출하는 상기 콘텐츠 데이터의 재생 방법을 나타내는 오브젝트를 포함하는 오브젝트 파일과, 상기 오브젝트를 호출하는 타이틀이 기술되는 인덱스 테이블을 포함하는 인덱스 파일을 생성하도록 제어되고, 상기 플레이 리스트 파일의 생성 시에 그 플레이 리스트 파일이 속하는 상기 타이틀을 나타내는 정보를 상기 인덱스 파일에 대하여 부가하도록 제어하는 것을 특징으로 하는, 컴퓨터 판독 가능한 저장 매체.
KR1020077028423A 2006-04-06 2007-04-04 기록 장치, 기록 방법 및 저장 매체 KR101231302B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2006-00105535 2006-04-06
JP2006105535A JP4784371B2 (ja) 2006-04-06 2006-04-06 記録装置、記録方法および記録プログラム
PCT/JP2007/057931 WO2007117016A1 (ja) 2006-04-06 2007-04-04 記録装置、記録方法および記録プログラム

Publications (2)

Publication Number Publication Date
KR20080111377A KR20080111377A (ko) 2008-12-23
KR101231302B1 true KR101231302B1 (ko) 2013-02-07

Family

ID=38581287

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077028423A KR101231302B1 (ko) 2006-04-06 2007-04-04 기록 장치, 기록 방법 및 저장 매체

Country Status (7)

Country Link
US (1) US8208782B2 (ko)
EP (1) EP2003891A4 (ko)
JP (1) JP4784371B2 (ko)
KR (1) KR101231302B1 (ko)
CN (1) CN101331762B (ko)
TW (1) TW200816811A (ko)
WO (1) WO2007117016A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4894718B2 (ja) 2007-10-25 2012-03-14 ソニー株式会社 データ変換方法、およびデータ変換装置、データ記録装置、データ再生装置、並びにコンピュータ・プログラム
US8223151B2 (en) * 2008-01-25 2012-07-17 Tektronix, Inc. Mark extension for analysis of long record length data
JP4720873B2 (ja) * 2008-08-11 2011-07-13 ソニー株式会社 情報記録装置、撮像装置、情報記録方法およびプログラム
JP4577438B2 (ja) * 2008-10-21 2010-11-10 ソニー株式会社 プレイリスト検索装置、プレイリスト検索方法、およびプログラム
TWI447718B (zh) * 2012-09-03 2014-08-01 Mstar Semiconductor Inc 產生略縮圖之方法與裝置
JP6217462B2 (ja) * 2014-03-05 2017-10-25 ソニー株式会社 画像処理装置及び画像処理方法、並びに画像処理システム
US11714928B2 (en) * 2020-02-27 2023-08-01 Maxon Computer Gmbh Systems and methods for a self-adjusting node workspace
US11373369B2 (en) 2020-09-02 2022-06-28 Maxon Computer Gmbh Systems and methods for extraction of mesh geometry from straight skeleton for beveled shapes

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR940018833A (ko) * 1993-01-21 1994-08-19 모리시다 요오이찌 기록재생장치

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001082611A1 (fr) * 2000-04-21 2001-11-01 Sony Corporation Procede et appareil de traitement d'informations, support enregistre, et programme
CN101867835B (zh) * 2000-04-21 2013-09-11 索尼公司 编码设备和方法、以及记录方法
EP1280348A4 (en) * 2000-04-21 2004-10-06 Sony Corp INFORMATION PROCESSING DEVICE AND PROCEDURE, PROGRAM AND RECORDING MEDIUM
JP3656248B2 (ja) * 2001-10-09 2005-06-08 ソニー株式会社 ビデオ信号記録装置および方法、ビデオ信号再生装置および方法、記録媒体、プログラム、並びにデータ構造
DE602004013430T2 (de) * 2003-02-19 2009-06-04 Panasonic Corp., Kadoma Aufzeichnungsmedium, wiedergabevorrichtung, aufzeichnungsverfahren, programm und wiedergabeverfahren
KR20040083632A (ko) * 2003-03-24 2004-10-06 엘지전자 주식회사 고밀도 광디스크의 멀티 타이틀 관리 및 재생방법
JP4228767B2 (ja) 2003-04-25 2009-02-25 ソニー株式会社 再生装置、再生方法、再生プログラムおよび記録媒体
CN100401391C (zh) * 2003-05-06 2008-07-09 Lg电子株式会社 具有用于管理视频数据及其附加内容数据的数据结构的记录介质以及记录和再现方法和装置
KR101036475B1 (ko) * 2003-05-27 2011-05-24 엘지전자 주식회사 메인 데이터 및 이의 부가 컨텐츠 데이터를 관리하기 위한데이터 구조를 갖는 기록 매체와 그에 따른 기록 및 재생방법 및 장치
JP4264949B2 (ja) * 2003-06-09 2009-05-20 ソニー株式会社 データ転送システム、データ転送方法およびデータ転送プログラム
JP4651277B2 (ja) * 2003-11-13 2011-03-16 ソニー株式会社 情報記録再生装置および方法、プログラム格納媒体、並びにプログラム
BRPI0407057A (pt) * 2003-11-28 2006-01-17 Sony Corp Aparelho de reprodução, método de reprodução, programa de reprodução, e, meio de gravação
US7483618B1 (en) * 2003-12-04 2009-01-27 Yesvideo, Inc. Automatic editing of a visual recording to eliminate content of unacceptably low quality and/or very little or no interest
US7551843B2 (en) * 2004-03-10 2009-06-23 Panasonic Corporation Authoring system, program, and authoring method
US7512322B2 (en) * 2004-03-17 2009-03-31 Lg Electronics, Inc. Recording medium, method, and apparatus for reproducing text subtitle streams
JP2006031744A (ja) * 2004-07-12 2006-02-02 Matsushita Electric Ind Co Ltd Avデータ記録装置および再生装置
KR100677132B1 (ko) * 2004-09-09 2007-02-02 삼성전자주식회사 동영상 재생 및 프로그래밍 기능을 위한 멀티미디어데이터를 기록한 저장 매체, 그 재생 장치 및 재생 방법
JP4734906B2 (ja) * 2004-12-07 2011-07-27 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4696734B2 (ja) * 2005-07-06 2011-06-08 ソニー株式会社 コンテンツデータ再生装置及びコンテンツデータ再生方法
US7636509B2 (en) * 2005-08-04 2009-12-22 Microsoft Corporation Media data representation and management
JP2007207328A (ja) * 2006-01-31 2007-08-16 Toshiba Corp 情報記憶媒体、プログラム、情報再生方法、情報再生装置、データ転送方法、及びデータ処理方法
JP4765733B2 (ja) * 2006-04-06 2011-09-07 ソニー株式会社 記録装置、記録方法および記録プログラム
JP4765734B2 (ja) * 2006-04-06 2011-09-07 ソニー株式会社 情報処理装置、情報処理方法および情報処理プログラム、ならびに、表示制御装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR940018833A (ko) * 1993-01-21 1994-08-19 모리시다 요오이찌 기록재생장치

Also Published As

Publication number Publication date
JP2007281889A (ja) 2007-10-25
JP4784371B2 (ja) 2011-10-05
EP2003891A1 (en) 2008-12-17
US20090034940A1 (en) 2009-02-05
TWI333378B (ko) 2010-11-11
WO2007117016A1 (ja) 2007-10-18
CN101331762B (zh) 2010-09-29
EP2003891A4 (en) 2012-01-25
TW200816811A (en) 2008-04-01
CN101331762A (zh) 2008-12-24
KR20080111377A (ko) 2008-12-23
US8208782B2 (en) 2012-06-26

Similar Documents

Publication Publication Date Title
KR101333985B1 (ko) 기록 장치, 기록 방법, 기록 재생 장치, 기록 재생 방법, 편집 장치, 편집 방법, 표시 제어 장치, 표시 제어 방법 및 기록 매체
JP4765733B2 (ja) 記録装置、記録方法および記録プログラム
JP4972933B2 (ja) データ構造、記録装置、記録方法、記録プログラム、再生装置、再生方法および再生プログラム
KR100780153B1 (ko) 기록 장치 및 방법, 재생 장치 및 방법, 및 기록 매체
KR101231302B1 (ko) 기록 장치, 기록 방법 및 저장 매체
US7616862B2 (en) Recording medium having data structure for managing video data and additional content data thereof and recording and reproducing methods and apparatuses
JP2007228181A (ja) 再生装置、再生方法および再生プログラム
US20040170388A1 (en) Recording medium having data structure for managing random/shuffle reproduction of video data recorded thereon and recording and reproducing methods and apparatuses
US7606463B2 (en) Recording medium having data structure for managing playback control and recording and reproducing methods and apparatuses
US7706669B2 (en) Recording medium having data structure for managing video data and additional content data thereof and recording and reproducing methods and apparatuses
US7801412B2 (en) Recording medium having data structure for managing reproduction of multiple reproduction path video data recorded thereon and recording and reproducing methods and apparatuses
CA2469178C (en) Recording medium having data structure for managing reproduction of multiple graphics streams recorded thereon and recording and reproducing methods and apparatuses
US7809775B2 (en) Recording medium having data structure for managing playback control recorded thereon and recording and reproducing methods and apparatuses
JP5158225B2 (ja) 再生装置、再生方法および再生プログラム
AU2004214200B2 (en) Recording medium having data structure for managing playback control and recording and reproducing methods and apparatuses

Legal Events

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