JP5032510B2 - 再生装置、記録方法、プログラム - Google Patents

再生装置、記録方法、プログラム Download PDF

Info

Publication number
JP5032510B2
JP5032510B2 JP2008559005A JP2008559005A JP5032510B2 JP 5032510 B2 JP5032510 B2 JP 5032510B2 JP 2008559005 A JP2008559005 A JP 2008559005A JP 2008559005 A JP2008559005 A JP 2008559005A JP 5032510 B2 JP5032510 B2 JP 5032510B2
Authority
JP
Japan
Prior art keywords
additional content
file
stream
recording medium
written
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2008559005A
Other languages
English (en)
Other versions
JPWO2008149501A1 (ja
Inventor
敬一 田中
雅弘 大蘆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2008559005A priority Critical patent/JP5032510B2/ja
Publication of JPWO2008149501A1 publication Critical patent/JPWO2008149501A1/ja
Application granted granted Critical
Publication of JP5032510B2 publication Critical patent/JP5032510B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B20/1254Formatting, e.g. arrangement of data block or words on the record carriers on discs for mixed data, i.e. continuous and discontinuous data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00094Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers
    • G11B20/00115Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers wherein the record carrier stores a unique medium identifier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00166Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised contents recorded on or reproduced from a record carrier, e.g. music or software
    • G11B20/00173Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised contents recorded on or reproduced from a record carrier, e.g. music or software wherein the origin of the content is checked, e.g. determining whether the content has originally been retrieved from a legal disc copy or another trusted source
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • 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/11Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information not detectable on the record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • 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/91Television signal processing therefor
    • H04N5/93Regeneration of the television signal or of selected parts thereof
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/10537Audio or video recording
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B2020/1218Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc
    • G11B2020/1224Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc extent, i.e. a set of sectors which numbers form a continuous ascending sequence
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1291Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting serves a specific purpose
    • G11B2020/1292Enhancement of the total storage capacity
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/60Solid state media
    • G11B2220/61Solid state media wherein solid state memory is used for storing A/V content

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Description

【技術分野】
【0001】
本発明は、仮想パッケージの技術分野に属する発明である。
【背景技術】
【0002】
仮想パッケージとは、BD-ROM等のリードオンリー型の記録媒体に記録されているデータと、半導体メモリカード、ハードディスク等のリライタブル型の記録媒体に記録されているデータとを動的に組み合わせて、仮想的なパッケージを構築することにより、リードオンリー型記録媒体の内容拡張を図る技術である。このような技術では、書き換え可能なハードディスクに記録しているデータを更新することで、BD-ROMを頒布した後も、作品内容の変更の余地を残すことができる。例えば、映画作品のプロバイダは、作品本編を記録したBD-ROMを頒布した後も、公開前の他の作品の予告編デジタルストリームをネットワークを介して提供することで、BD-ROMの頒布時期にかかわらず、ユーザに対して常に最新の作品を宣伝することが出来る。
【0003】
仮想パッケージについての先行技術としては、以下の特許文献1、2、3に記載されているものがある。
【特許文献1】
特開2006-109494号公報
【特許文献2】
特開2007-20211号公報
【特許文献3】
特開2006-33067号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで、仮想パッケージ構築のための追加コンテンツの受け皿として、長きにわたりリライタブルな記録媒体を使用していると、リライタブルな記録媒体には多くの追加コンテンツが記録される。追加コンテンツは、その陳腐化に伴い、削除されるという運命を辿る。リライタブルな記録媒体の容量は、制限されていることが多く、新たな追加コンテンツの記録にあたっては、削除により得られた空き領域を記録先とするのが望ましい。このように、リライタブルな記録媒体への記録にあたっては、削除によって得られた空き領域を書込先に選ぶので、フラグメンテーションが発生する。ここで仮想パッケージ構築のための追加コンテンツには、サイズが大きいAVストリーム形式のものや、小サイズな非AVストリーム形式のものが混在している。これらのうち、AVストリーム形式の追加コンテンツが分割されて、個々の分割部分が、リライタブルな記録媒体上の複数の領域に、バラバラに配置された場合、AVストリームの読み出しには、バラバラに配置された分割部分を読み出して、元のAVストリームを復元にする必要がある。バラバラに配置された分割部分の読出しには、リライタブル型の記録媒体からデータを読み出すためのバースト的な転送を、複数回に分けて実行にする必要がある。一般的にバースト転送の実行には、読出先アドレスの設定や、コマンド発行等のオーバーヘッドが発生する。ここで、AVストリームがバラバラに記録されたため、AVストリームの読み出しのためのバースト転送を、複数回に分けて実行しようとすると、この読出先アドレスの設定回数が増えることになり、AVストリームの読み出しにあたってのオーバーヘッドが増大するため、オーバーヘッドの影響が無視できないものとなる。そうするとAVストリームの読み取り性能が低下し、再生映像がスムーズに流れない(映像がカクツク)などの支障が出てしまう。
【0005】
ここで、フラグメンテーション発生を防止するために追加コンテンツを書き込むにあたっては、4Mバイト等、ある大きさの容量をもった連続領域の確保を行い、確保された連続領域に追加コンテンツを書き込むことも考えられる。ところが、仮想パッケージ構築のため、必要となる追加コンテンツには、AVストリームのものよりも非AVストリームの追加コンテンツの方が圧倒的に数が多く、追加コンテンツ記録のために連続領域を割り当てても実際に使われる領域が一部だけとなり、利用されない未使用の領域が増え、ストレージの容量を有効活用できないという課題がある。
【0006】
本発明の目的は、仮想パッケージの構成要素に、AVストリーム形式の追加コンテンツ、非AVストリーム形式の追加コンテンツが混在している場合においても、AVストリーム形式の追加コンテンツの読み取り性能低下を防ぎつつ、ストレージ容量の有効利用を図ることができる再生装置を提供することである。
【課題を解決するための手段】
【0007】
【課題を解決するための手段】
上記課題を解決するため、再生装置は、仮想パッケージを再生する再生装置であって、第1記録媒体が装填された際、アプリケーションを起動する管理手段と、起動されたアプリケーションからの要求に従い、前記第1記録媒体に対応する追加コンテンツを装置外部から取得する取得手段と、起動されたアプリケーションからの要求に従い、第2記録媒体の記憶領域のうち追加コンテンツに付されたファイルパスにて指示されたものに、取得した追加コンテンツを書き込む制御手段と、第1記録媒体に記録されたコンテンツと、前記第2記録媒体に記録された追加コンテンツとを組み合わせることで、前記仮想パッケージを構築する構築手段とを備え、前記アプリケーションは、追加コンテンツに付されたファイルパスの形式が第2記録媒体のファイルシステム形式とは異なる場合、追加コンテンツに付されたファイルパスの形式を第2記録媒体のファイルシステム形式に変換し、前記制御手段は、形式変換後のファイルパスにおけるファイルの拡張子が、規定の文字列であるかどうかを判定することにより、前記書き込みが要求された追加コンテンツがAVストリームであるかどうかを判別し、書き込みを行うべき追加コンテンツがAVストリームであれば、前記第2記録媒体における連続した複数の空きブロックから構成される連続領域に、当該追加コンテンツを書き込み、
前記追加コンテンツがAVストリームでなければ、前記第2記録媒体における連続していない複数の空きブロックの何れかに、当該追加コンテンツを書き込むことを特徴とする。
【0008】
(1.課題解決手段による効果)
上記再生装置によると、追加コンテンツの書き込みがアプリケーションから要求された場合、書き込みを行うべき追加コンテンツがAVストリームであれば、第2記録媒体における連続した複数の空きブロックから構成される連続領域に、当該追加コンテンツを書き込むので、AVストリームは連続領域にひとまとまりになるように、書き込まれてゆき、非AVストリームの追加コンテンツは、空きのブロックの何処かに書き込まれることになる。
【0009】
AVストリームは、連続領域にひとまとまりになるように記録されるので、一回のバースト的な転送によって、AVストリームをリライタブル型の記録媒体からメモリに読み出すことができる。こうすることで、一回のバースト的な転送によってAVストリームを読み出すようにしたので、バースト転送に伴うオーバヘッドの影響を最も小さくすることができ、書込レートが遅い半導体メモリカードやその他、低速な磁気記録媒体が第2記録媒体として採用された場合であっても、採用された媒体の種別によって、AV再生の品位に差異が生じることはない。
【0010】
また非AVストリームの追加コンテンツは、記録済みファイルの削除によって生じた何処かの領域に、書き込んでゆけばよいので、非AVストリームの追加コンテンツについてはフラグメンテーションは発生が容認されることになる。こうすることで、第2記録媒体の容量効率を極端に低下させることはない。
仮想パッケージ再生にあたっての、AV再生の品位を維持することができるので、コンテンツオーサは、仮想パッケージで再生されるようなコンテンツを、積極的に配布することができる。
【0011】
(2.連続領域の特定)
更に、仮想パッケージ構築にあたって、第2記録媒体とペアとなる第1記録媒体毎に、連続領域は確保されることになる。連続領域は、ペアとなる第1記録媒体毎にまとめられるので、AVストリームの記録・削除が繰り返されることによるフラグメンテーションの発生を局所的にすることができる。AVストリームの記録に、連続領域を使用することによる記録効率の低下は、局所的なものとなるので、第2記録媒体全体としては、記録効率を一定の水準に維持することができる。
【0012】
また追加コンテンツ格納領域は、証明書の識別子、組織の識別子、媒体の識別子を用いたファイルパスにて特定されるので、AVストリームを供した組織や、AVストリームの認証に用いる証明書の違い毎に、連続領域を設けることができる。
第2記録媒体に記録されているファイルが、どの第1記録媒体に対応しているかは、第2記録媒体における連続領域に対するファイルパスを参照することで、判別することができる。従って、たとえ様々な第1記録媒体が再生装置に装填されたとしても、第2記録媒体におけるファイルパスに対応する第1記録媒体が、再生装置に装填されている場合のみ、ファイルパスを用いたファイルアクセスを実現するよう制限を課すことができる。
【0013】
(3.書き込むべき追加コンテンツの判別の仕方)
加えて、アプリケーションが、短縮したファイル名や拡張子を付与した上でファイルを第2記録媒体に記録しようとする場合でも、制御手段側では、その短縮されたファイル名や拡張子のうち拡張子のみが、規定の文字列かどうかを判定することで、連続領域に書き込むべきAVストリームかどうかを判別することができる。自由なファイル名や拡張子の付与をアプリケーションに認めつつも、AVストリームについては、“規定の文字列を拡張子として使用する”との約束事を守れば、正しく連続領域に書き込むことが可能になる。
【0014】
書き込みにあたっての拡張子の付与さえ正確であれば、AVストリームは連続領域に書き込まれることになり、第2記録媒体として採用される記録媒体が高速なハードディスクであっても、低速な半導体メモリカードであっても、アプリケーションは、第2記録媒体の種別に応じて引数を変化させる必要がないので、アプリケーションにおける処理手順の記載は、より単純なものとなり、アプリケーションの開発者に、余計な負担をかけさせることはない。
(4.連続領域の確保)
連続領域における利用に関しては、以下のようにするのが望ましい。つまり前記制御手段は、前記追加コンテンツを第2記録媒体に書き込むにあたって、前記8.3形式のファイルシステムにおける管理情報を参照することにより、前記連続領域を構成するに足る、連続した空きブロックが存在するか否かのチェックを行い、前記連続領域は、前記チェックにより存在することが明らかになった、連続する複数の空きブロックから構成されることが望ましい。かかる確保は、AVストリームの書き込みに先立ち、8.3形式におけるファイルシステムの管理情報を参照してなされるので、第2記録媒体が半導体メモリカードである場合、FAT(ファイルアロケーションシステム)を参照した半導体メモリカードに対するアクセス手順と同様の手順を踏まえることにより、AVストリーム書き込みのための連続領域を確保することができる。
(5.連続領域の利用)
連続領域における利用に関しては、以下のようにするのが望ましい。つまり、前記連続領域にAVストリームである追加コンテンツを記録した後、連続領域に余剰な未記録部分が存在したとしても、未記録部分には、データを記録しないことが望ましい。
【0015】
既にAVストリームが記録された領域については、他のデータが書き込まれることはないので、連続領域の利用は排他的なものとなる。こうすることで、連続領域に追加コンテンツを書き込む処理や空き領域に解放する処理は、連続領域毎になされることになり、「1つの連続領域に対しては1つのAVストリームのみ記録される」との原則を徹底することができるので、AVストリームを第2記録媒体に書き込むにあたってのフラグメンテーションの発生を避けることができる。
(6.書き込みレート)
ここで半導体メモリカードを第2記録媒体として採用した場合、半導体メモリカードでは、既にデータが書かれているブロックに対しては、一旦書込先に記録されているデータを消去して、白紙の状態に戻してからデータ書き込みを行わねばならない。多くの半導体メモリカードに内蔵されているNAND型と呼ばれるEEPROMにあっては、ブロックを白紙の状態に戻すという作業を複数のブロックに対して一括して行う必要があるので、そのような白紙の状態に戻すという作業が頻繁になると、AVストリームを書き込むための書込レートが著しく低下する。そこで、前記制御手段による追加コンテンツの書き込みには、追記と、上書きとがあり、前記制御手段は、前記追加コンテンツを第2記録媒体に書き込むにあたって、前記8.3形式のファイルシステムにおける管理情報を参照することにより、前記アプリケーションから要求された書き込みが追記であるか、上書きであるかの判定を行い、前記追記は、既に第2記録媒体に記録されている記録済みデータをメモリに読み出した上で、第2記録媒体から記録済みデータを消去する処理と、メモリに読み出された記録済みデータと、書き込むべき追加コンテンツとを一体にした上で、連続領域に書き込む処理とによってなされ、前記上書きは、第2記録媒体に既に記録されている記録済みデータを消去して、書き込むべき追加コンテンツを連続領域に書き込む処理によってなされることが望ましい。
【0016】
連続領域に対する上書きや追記にあたっては、連続する複数のブロック毎に記録済みデータの消去を行うので、NAND型と呼ばれるEEPROMにあっては、ブロックを白紙の状態に戻すという作業を複数のブロックに対して一括してなされることになる。こうすることで、AVストリーム書き込むための書込レートの低下を招くことはない。
(7.ファイルパスの形式)
アプリケーションが、追加コンテンツの書き込みにあたって用いるファイルパスは、以下のものが望ましい。つまり、前記第2記録媒体には、証明書識別子に対応するディレクトリ、組織識別子に対応するディレクトリ、媒体識別子に対応するディレクトリセットが存在し、前記組織識別子に対応するディレクトリは、証明書識別子に対応するディレクトリの下位に存在し、前記媒体識別子に対応するディレクトリセットは、組織識別子に対応するディレクトリの下位に存在し、前記媒体識別子に対応するディレクトリセットは、階層化された複数のサブディレクトリからなり、前記追加コンテンツ格納領域は、 階層化された複数のサブディレクトリのうち、最下層にあたるサブディレクトリに該当する、ことが望ましい。
【0017】
仮想パッケージの構築にあたって、第1記録媒体に付加された証明書の識別子、組織の識別子、媒体の識別子を用いた認証を実現する場合であっても、これらの識別子と、厳密に対応をとる形で、ファイルは第2記録媒体に記録されることになる。そのため、たとえユーザが多くの第1記録媒体を所持していて、それらの第1記録媒体が頻繁に差し替えられたとしても、正しい第1記録媒体が再生装置に装填されている場合のみ、第1記録媒体のファイルパスを用いたファイルアクセスが実現されて、仮想パッケージが構築されることになる。
(8.連続領域の所在)
連続領域の所在としては、以下に配置するのが望ましい。つまり、前記媒体識別子に対応するディレクトリセットは、4つのサブディレクトリに階層化されており、前記第1記録媒体に付加された媒体識別子は、最大32文字の文字列であり、前記媒体識別子に対応するディレクトリセットを構成するサブディレクトリのそれぞれには、媒体識別子を構成する最大32文字の文字列を分割することで得られた、8文字以下のディレクトリ名が付加されている、ことが望ましい。
【0018】
第1記録媒体固有の媒体識別子のビット長が、長いものであったとしても、かかる識別子を構成する文字のうち、意味のあるものを省略することなく、第1記録媒体固有の媒体識別子と、第2記録媒体上のディレクトリとの対応を図るので、第2記録媒体におけるディレクトリは、第1記録媒体固有の媒体識別子と厳密に対応がとれたものとなる。
【発明を実施するための最良の形態】
【0019】
(第1実施形態)
以下本発明の実施の形態について、図面を参照しながら説明する。
以降、再生装置の実施形態について説明する。先ず始めに、本発明に係る再生装置の実施行為のうち、使用行為についての形態を説明する。図1は、再生装置102の、使用行為についての形態を示す図である。本図に示すように、再生装置102は、第1記録媒体の一例であるBD-ROM100、WWWサーバ101、テレビ103、第2の記録媒体の一例であるリムーバブルメディア104と共にユーザによる使用に供される。
【0020】
BD-ROM100は、映画作品が記録された記録媒体である。
WWWサーバ101は、映画配給者の公式サイトを運営するサーバ装置であり、BD-ROM100に記録された映画作品の部分的な置き換えや追加を実現するコンテンツ(追加コンテンツ)を、インターネット等を介してユーザに供給する。
再生装置102は、テレビ103と共に、ホームシアターシステムを構築して、BD-ROM100を再生する。
【0021】
テレビ103は、映画作品の再生映像を表示したり、メニュー等を表示することで、対話的な操作環境をユーザに提供する。
リムーバブルメディア104は、再生装置に装填され、映画配給者のWWWサーバ101から配信されたコンテンツの受け皿として利用される。そのため、ネットを通じてダウンロードされ、リムーバブルメディア104に格納されたコンテンツと、BD-ROM100に記録されたコンテンツとを組み合わせて、BD-ROM100のコンテンツを拡張/更新をすることができる。かかるリムーバブルメディア104を装填するという目的のため、再生装置102には、SDメモリカード、メモリスティック、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード等のリムーバブルメディア104を挿入する挿入口を備える。
【0022】
以上が本発明に係る再生装置の使用形態についての説明である。続いて本発明に係る再生装置が再生の対象としている、記録媒体について説明する。本発明に係る再生装置により、再生されるのは、光記録媒体であるBD-ROM100である。
図2は、BD-ROM(以降、「BD」と称する場合もある)の構成を示した図である。本図の第1段目に、BD-ROM100を示し、第2段目は、BD-ROMの内周から外周に向けて螺旋状に形成された記録領域を、横方向に引き伸ばして直線状に描いている。この第2段目に示すように、記録領域は、内周の「リード・イン」と、外周の「リード・アウト」と、「論理アドレス空間」とを有している。また、リード・インの内側にはBCA(BurstCutting Area)と呼ばれるドライブでしか読み出せない特別な領域がある。この領域はアプリケーションから読み出せないため、例えば著作権保護技術などに利用されることがよくある。
【0023】
「論理アドレス空間」は、ファイルシステムのための領域管理情報を先頭にして、各種データが記録されている。“ファイルシステム”とは、UDFやISO9660などのことであり、本実施形態では、Extention2.3形式のファイルシステムを採用する。このファイルシステムを介すれば、論理アドレス空間に記録されているデータをディレクトリ、ファイル構造を使って読み出すことができる。このファイルシステムにおけるファイルの配置位置は、255文字以下のディレクトリ名と、255文字以下のファイル名とを組合せたファイルの経路情報(ファイルパスと呼ばれる)で特定される。
【0024】
本図の第3段目は、第2段目におけるファイルシステムを前提にして構築された、ディレクトリ構成・ファイル構成を示す。本図に示すように、BD-ROMのルートディレクトリ(ROOT)直下には、bd.certファイルと、BDMVディレクトリとが置かれている。
bd.cert(ファイル名固定)は仮想パッケージのために追加されたコンテンツをBD-ROM上のデータとマージする際に、署名検証に用いられる証明書(以下、マージ証明書)である。マージ証明書とは、BD-ROMにおけるマージ管理情報を格納したファイル(マージ管理情報ファイル)の認証に利用する証明書であり、プロバイダが公開する公開鍵を含む。マージ証明書のファイル形式は、例えば、X.509を利用することができる。X.509の詳細な仕様は、国際電信電話諮問委員会より発行されている、CCITTRecommendation X.509 (1988), “The Directory - Authentication Framework“に記載されている。本図における引き出し線f1は、bd.certファイルの用途を示している。この引き出し線に示すように、bd.certファイルは、証明書固有のID(CertIDと呼ばれる)を導きだすという用途に用いられる。
【0025】
BDMVディレクトリはBD-ROMで扱うAVコンテンツや管理情報などのデータが記録されているディレクトリである。BDMVディレクトリの配下には、「PLAYLISTディレクトリ」、「CLIPINFディレクトリ」、「STREAMディレクトリ」、「BDJOディレクトリ」、「JARディレクトリ」と呼ばれる5つのサブディレクトリが存在し、BDMVディレクトリには、index.bdmv,MovieObject.bdmvの2種類のファイルが配置されている。
【0026】
STREAMディレクトリは、いわばデジタルストリーム本体となるファイルを格納しているディレクトリであり、拡張子M2TSが付与されたファイル(xxxxx.m2ts[“xxxxx”は可変、拡張子”m2ts”は固定])が存在する。
PLAYLISTディレクトリには、拡張子mplsが付与されたファイル(xxxxx.mpls[“xxxxx”は可変、拡張子”mpls”は固定])が存在する。
【0027】
CLIPINFディレクトリには、拡張子clpiが付与されたファイル(xxxxx.clpi [“xxxxx”は可変、拡張子”clpi”は固定])が存在する。
JARディレクトリには、拡張子jarが付与されたファイル(xxxxx.jar[“xxxxx”は可変、拡張子”jar”は固定])が存在する。
BDJOディレクトリには、拡張子bdjoが付与されたファイル(xxxxx.bdjo[“xxxxx”は可変、拡張子”bdjo”は固定])が存在する。
【0028】
<拡張子”m2ts”が付与されたファイル>
拡張子”m2ts”が付与されたファイルは、M P E G - T S ( T r a n s p o r t S t r e a m )形式のデジタルAVストリームであり、ビデオストリーム、1つ以上のオーディオストリーム、1つ以上のグラフィクスストリームを多重化することで得られる。ビデオストリームは映画の動画部分を、オーディオストリームは映画の音声部分を、グラフィクスストリームは、映画の字幕をそれぞれ示している。
【0029】
拡張子”clpi”が付与されたファイルは、デジタルAVストリームのそれぞれに1対1に対応する管理情報である。管理情報故に、Clip情報は、デジタルAVストリームの符号化形式、フレームレート、ビットレート、解像度等の情報や、GOPの先頭位置を示すEP_mapをもっている。
<拡張子”mpls”が付与されたファイル>
拡張子”mpls”が付与されたファイルは、プレイリスト情報を格納したファイルである。プレイリスト情報は、MainPath情報、Subpath情報、PlayListMark情報を含む。
【0030】
1)MainPath情報は、AVストリームの再生時間軸のうち、In_Timeとなる時点と、Out_Timeとなる時点の組みを1つ以上定義することにより、論理的な再生区間を定義する情報であり、AVストリームに多重化されているエレメンタリストリームのうち、どれの再生を有効とするかを規定するストリーム番号テーブルを有しており、AVストリーム内のエレメンタリストリームのうち、どれの再生を許可し、どれの再生を許可しないかを規定するSTN_tableをもつ。
【0031】
2)PlayListMark情報は、In_Time情報及びOut_Time情報の組みにて指定されたAVストリームの一部分のうち、チャプターとなる時点の指定を含む。
3)Subpath情報は、前記AVストリームと同期して再生すべきエレメンタリストリームの指定と、そのエレメンタリストリームの再生時間軸におけるIn_Time情報及びOut_Time情報の組みとを含む。Java(登録商標)アプリケーションが、このプレイリスト情報を再生するJMFプレーヤインスタンスの生成をJava(登録商標)仮想マシンに命じることで、AV再生を開始させることができる。JMFプレーヤインスタンスとは、JMFプレーヤクラスを基にして仮想マシンのヒープメモリ上に生成される実際のデータのことである。
【0032】
AVストリームと、プレイリスト情報との組みは、“タイトル”という再生単位を構成する。BD-ROMにおけるAV再生は、このタイトルを一単位としてなされる。
<拡張子”jar”が付与されたファイル>
拡張子”jar”が付与されたファイルは、Java(登録商標)アーカイブファイルであり、Java(登録商標)仮想マシンを用いて動的なシナリオ制御を行うJava(登録商標)アプリケーションのクラスファイルが存在する。このクラスファイルにて定義されるJava(登録商標)アプリケーションは、Xletインターフェイスを通じて制御されるJava(登録商標)Xletである。Xletインターフェイスは、“loaded“,“paused“、“active“,“destroyed“といった4つの状態をもつ。本明細書でいうアプリケーションとは、こうしてBD-ROM等の記録媒体に記録されているクラスファイルについてのインスタンスのことをいう。
【0033】
<拡張子“bdjo”が付与されたファイル>
拡張子“bdjo”が付与されたファイルは、BD-Jオブジェクトを格納したファイルである。BD-Jオブジェクトは、PlayList情報により示されるAVストリームと、アプリケーションとの関連付けにより、タイトルを定義する情報である。BD-Jオブジェクトは、“アプリケーション管理テーブル”と、そのタイトルにおいて再生可能なPlayList一覧を示す。アプリケーション管理テーブル(AMT)とは、“アプリケーションシグナリング”を実現するテーブルである。“アプリケーションシグナリング”とは、BD-ROMにおける“タイトル”をアプリケーションの生存区間として管理し、アプリケーションの起動及び終了を司る制御をいう。ここで生存区間とは、BD-ROMに記録されたコンテンツ全体の時間軸において、仮想マシンのヒープメモリ上でアプリケーションが生存し得る区間を示す。“生存”とは、そのアプリケーションが、ヒープメモリに読み出され、仮想マシンによる実行が可能になっている状態をいう。アプリケーション管理テーブルは、アプリケーションの識別子(アプリケーションID)とそのアプリケーションに属するJava(登録商標)アーカイブファイルのIDを羅列することでこのタイトルを生存区間とするアプリケーションを示す。つまり、一つのアプリケーションは一つ以上の Java(登録商標) アーカイブファイルで構成される。
【0034】
このようにBD-Jオブジェクト内のアプリケーション管理テーブルによって、セクタが管理されるJava(登録商標)アプリケーションを、“BD-Jアプリケーション”と呼ぶ。
<index.bdmv(ファイル名固定)>
index.bdmv(ファイル名固定)は、BD-ROM全体に関する管理情報であり、再生装置へのディスク挿入後に、index.bdmvが最初に読み出されることで、再生装置においてディスクが一意に認識される。加えて、index.bdmvにはBD-ROMにおいて再生可能となる複数のタイトルと、個々のタイトルを規定するBD-Jオブジェクトとを対応付けて示すテーブルが含まれる。引き出し線f2は、index.bdmvの内部構成をクローズアップして示している。この引出線に示すように映画作品のプロバイダを特定する識別子であるorganizationID(32ビット)や、プロバイダが提供するBD-ROMのそれぞれに割り当てられた識別子であるdiscID(128ビット)等の情報を持つ。
【0035】
MovieObject.bdmv(ファイル名固定)は、HDMVモード(後述)での各タイトル再生で、再生進行を動的に変化させるためのシナリオが記述されたシナリオプログラムが含まれる。
(再生制御のレイヤ)
次に、BD-ROMが前提にしている再生制御のレイヤモデルについて説明する。
【0036】
図3は、再生制御のレイヤモデルを示した図である。図3の第1層は、物理層であり、処理対象たるストリーム本体の供給制御である。この第1層に示すように、処理対象たるストリームは、BD-ROMだけではなく、ビルドインメディアやリムーバブルメディア、ネットワークといったあらゆる記録媒体、通信媒体を供給源としている。ここでビルドインメディアとは、HDD(ハードディスクドライブ),EEPROM(不揮発メモリ)など、再生装置102に予め組み込まれた記録媒体である。一方、リムーバブルメディアは、SDメモリカード、メモリスティック、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード等、可搬性がある記録媒体である。これらビルドインメディア、リムーバブルメディアは何れも、再生装置102がローカルに利用する記録媒体であり、“ローカルストレージ”との総称で呼ばれる。これらローカルストレージ、ネットワークといった供給源に対する制御(ディスクアクセス、カードアクセス、ネットワーク通信)が第1層の制御である。ローカルストレージには、ビルドインメディア、リムーバブルメディアという2種類のものがあるが、以降の説明では、第1記録媒体がBD-ROMであり、第2記録媒体がリムーバブルメディアであるという前提で説明を進める。
【0037】
第2層は、AVストリームのレイアである。第1層で供給されたストリームを、どのような復号化方式を用いて復号するのかを規定しているのがこの第2層である。
第3層(BD管理データ)は、ストリームの静的なシナリオを規定するレイアである。静的なシナリオとは、コンテンツオーサによって予め規定されたPlaylist情報、Clip情報であり、これらに基づく再生制御を規定しているのがこの第3層である。
【0038】
第4層(BD再生プログラム)は、ストリームにおける動的なシナリオを実現するレイヤである。動的なシナリオは、AVストリームの再生手順、及び、その再生に関する制御手順のうち少なくとも一方を実行するプログラムである。動的なシナリオによる再生制御は、装置に対するユーザ操作に応じて変化するものであり、プログラム的な性質をもつ。ここでの動的な再生制御には、2つのモードがある。2つのモードのうち1つは、コマンドベースの動作環境で、BD-ROMに記録されたAVストリームを再生するモード(HDMVモード)であり、もう1つは、オブジェクト指向言語で記述されたプログラムベースの動作環境で、BD-ROMに記録されたAVストリームを再生するモード(BD-Jモード)である。図3において第4層には、HDMVモードとBD-Jモードの2つのモードが記述されている。HDMVモードは、DVDライクな再生環境で再生がなされる。もう一つのBD-Jモードでは、Java(登録商標)仮想マシンが主体となり、Java(登録商標)アプリケーションからの再生制御がなされる。
【0039】
図4は、2つのモードの動的な再生制御にて作成される映画作品を示す図である。図4(a)は、HDMVモードで動的な再生制御を定義することにより、作成される映画作品の一場面を示す図である。HDMVモードはDVD再生装置が解釈可能なコマンドと良く似たコマンドで再生制御を記述することができるので、DVDと同じような再生制御、つまり、メニューに対する選択により再生が進行するような再生制御を定義することができる。
【0040】
図4(b)は、BD-Jモードで動的な再生制御を定義することにより、作成される映画作品である。BD-JモードはJava(登録商標)仮想マシンが解釈可能なJava(登録商標)言語で制御手順を記述することができる。この再生制御がアドベンチャーゲームのGUIを構成するものであるなら、BD-Jモードにあっては、ゲームのスコア(図中のSCORE:10000)やインジゲータ(LIFE:3)、ボタン部材(質問する、退室する)と、動画とを組み合わせたような合成映像をユーザに提示することができる。
【0041】
以上が、BD-ROM100についての説明である。続いて、再生装置102の詳細について、説明する。
図5は、再生装置の大まかな機能構成を示すブロック図である。図5に示すように、再生装置102は、BDドライブ20、ネットワークインターフェース21、ローカルストレージ22、仮想ファイルシステム23、静的シナリオメモリ26、動的シナリオメモリ27、HDMVモジュール28、BD-Jモジュール29、UO探知モジュール30、モード管理モジュール31、ディスパッチャ32から構成される。本再生装置は、オペレーティングシステムシステムとしてLinuxを採用しており、本再生装置のハードウェア及びソフトウェアは、このLinuxを通じて制御される。
【0042】
(BDドライブ20)
BDドライブ20は、BD-ROMのローディング/イジェクトを行い、BD-ROMに対するアクセスを実行する。本BD-ROM再生装置は、オペレーションシステムとしてLinuxを採用しているので、“/mountpoint BD/BDAV”とのコマンドを発行することにより、BDドライブ20に、BDAVディレクトリを割り当てる。
【0043】
(ネットワークインターフェース21)
ネットワークインターフェース21は、ネットワーク接続のためのプロトコルスタックを実行するものであり、ネットワーク上のサーバコンピュータが具備しているドライブを、ネットワークドライブとして、再生装置に認識させる。そして、ネットワークドライブからデータをダウンロードしたり、データをアップロードすることができる。このネットワークインターフェイス21は、インターネット上に公開されたBD-ROM追加コンテンツのダウンロードに用いられる。BD-ROM追加コンテンツとは、オリジナルのBD-ROMにないコンテンツで、例えば追加の副音声、字幕、特典映像、アプリケーションなどである。BD-Jモジュール29は、ネットワークインターフェース21を制御することにより、インターネット上に公開された追加コンテンツをビルドインメディアドライブもしくはリムーバブルメディア104にダウンロードすることができる。
【0044】
(ローカルストレージ22)
ローカルストレージ22は、ビルドインメディアドライブ22aと、リムーバブルメディアドライブ22bとからなり、ダウンロードしてきた追加コンテンツやアプリケーションが使うデータなどの保存に用いられる。追加コンテンツの保存領域はBD-ROM毎に分かれており、またアプリケーションがデータの保持に使用できる領域はアプリケーション毎に分かれている。また、ダウンロードした追加コンテンツをどのようにBD-ROM上のデータとマージするかを示す規則、つまりマージ規則が記載されたマージ管理情報も、このローカルストレージ22に保存される。
【0045】
本実施形態では、追加コンテンツデータファイル格納のためのディレクトリであるBUDAディレクトリを、リムーバブルメディアドライブに装填されたリムーバブルメディア104に割り当てる。本BD-ROM再生装置は、オペレーションシステムとしてLinuxを採用しているので、リムーバブルメディアドライブ22bがSDメモリカードドライブであり、本ドライブに“SD”というドライブ名が割り当てられている場合、“/mountpoint SD/BUDA”とのコマンドを発行することにより、リムーバブルメディアに対応するSDドライブに、BUDAディレクトリを割り当てる。一方ビルドインメディアドライブ22aは、録画用の記録領域として使用するものとする。
【0046】
(仮想ファイルシステム23)
仮想ファイルシステム23は、追加コンテンツと共に、ローカルストレージ22にダウンロードされたマージ管理情報を元に、ビルドインメディア、もしくは、リムーバブルメディアに格納された追加コンテンツとBD-ROM上のコンテンツとをマージさせた、仮想的なBD-ROM(仮想パッケージ)を構築する。HDMVモジュール28やBD-Jモジュール29からは、仮想パッケージとオリジナルBD-ROMを区別なく参照することができる。仮想パッケージ再生中、再生装置はBD-ROM上のデータとビルドインメディアもしくはリムーバブルメディア上のデータの両方を用いて再生制御を行うことになる。以上が再生装置の構成要素である。
【0047】
(AV再生部24)
AV再生部24は、BD-ROM又はローカルストレージ22に記録されたAVストリームの再生を、プレイリスト情報、Clip情報に基づいて実行する。
(AV再生ライブラリ25)
AV再生ライブラリ25は、HDMVモジュール28、BD-Jモジュール29からの関数呼び出しに応じて、AV再生機能、プレイリストの再生機能を実行する。AV再生機能とは、DVDプレーヤ、CDプレーヤから踏襲した機能群であり、再生開始、再生停止、一時停止、一時停止の解除、静止画機能の解除、再生速度を即値で指定した早送り、再生速度を即値で指定した巻戻し、音声切り替え、字幕切り替え、アングル切り替えといった処理である。プレイリスト再生機能とは、このAV再生機能のうち、再生開始や再生停止をプレイリスト情報に従って行うことをいう。
【0048】
(静的シナリオメモリ26)
静的シナリオメモリ26は、カレントのPLやカレントのClip情報を格納しておくためのメモリである。カレントPLとは、BD-ROMまたは、ローカルストレージ22に記録されている複数プレイリスト情報のうち、現在処理対象になっているものをいう。カレントClip情報とは、BD-ROMまたは、ローカルストレージ22に記録されている複数のClip情報のうち、現在処理対象になっているものをいう。
【0049】
(動的シナリオメモリ27)
動的シナリオメモリ27は、カレント動的シナリオを格納しておき、HDMVモジュール28、BD-Jモジュール29による処理に供されるメモリである。カレント動的シナリオとは、BD-ROMまたは、ローカルストレージ22に記録されているMovieオブジェクト,BD-Jオブジェクトのうち、現在実行対象になっているものをいう。
【0050】
(HDMVモジュール28)
HDMVモジュール28は、HDMVモードの実行主体となるDVD仮想プレーヤであり、動的シナリオメモリ27に読み出されたカレントのシナリオプログラムを実行する。
(BD-Jモジュール29)
BD-Jモジュール29は、Java(登録商標)プラットフォームであり、Java(登録商標)仮想マシン、コンフィグレーション、プロファイルからなる。BD-Jモジュール29は、動的シナリオメモリ27に読み出されたJava(登録商標)クラスファイルからJava(登録商標)バイトコードを生成することによりカレントのJava(登録商標)オブジェクトを生成し、実行する。Java(登録商標)仮想マシンは、Java(登録商標)言語で記述されたJava(登録商標)オブジェクトを、再生装置におけるCPUのネィティブコードに変換して、CPUに実行させる。
【0051】
(UO探知モジュール30)
UO探知モジュール30は、リモコンや再生装置のフロントパネルといった入力機器に対してなされたユーザ操作を検知して、モード管理モジュール31に通知する。この通知は、これらの入力機器に対応するデバイスドライバ内の割込みハンドラが発生する割込みに従い、UO(User Operation)を生成して、モード管理モジュール31に出力することでなされる。UOとは、リモコンやフロントパネルに設けられたキーマトッリクスによるキー押下を検知した際、発生するイベント(UOイベント)であり、押下されたキーに対応したキーコードを含んでいる。具体的には、リモコンやフロントパネルに対応するデバイスドライバの割込みハンドルが、キーマトリックスに対するキーセンスでキー押下を検出した際、そのキー押下に基づき割込み信号を発生することで、UOイベントは、生成される。
【0052】
(モード管理モジュール31)
モード管理モジュール31は、BD-ROMまたは、ローカルストレージ22から読み出されたIndex.bdmvを保持して、モード管理及び分岐制御を行う。モード管理モジュール31によるモード管理とは、動的シナリオをどのHDMVモジュール28、BD-Jモジュール29に実行させるかという、モジュールの割り当てである。
【0053】
(ディスパッチャ32)
ディスパッチャ32は、UOから、現在の再生装置におけるモードに適切なUOのみを選んで、そのモードを実行するモジュールに受け渡す。例えばHDMVモードの実行中に、上下左右、アクティベートといったUOを受け付けた場合、HDMVモードのモジュールにこれらのUOを出力するというのがディスパッチャ32の処理である。
【0054】
(リムーバブルメディア)
以降、リムーバブルメディアについて説明する。
本実施形態では、追加コンテンツデータファイルの格納のためのリムーバブルメディアとしてSDメモリカードを採用する。
SDメモリカードは、長さ32.0 mm、幅24.0 mm、厚さ2.1 mmといった大きさ(切手サイズの大きさ)のカード型記録媒体である。ユーザはこのSDメモリカードを指先で把持することができる。SDメモリカードには、再生装置との接続のための9本のコネクタが設けられており、側面には、記憶内容の上書きを許可するか禁止するかを操作者が設定することができるプロテクトスイッチが設けられている。SDメモリカードは、NAND型EEPROMである「不揮発メモリ」、再生装置から発せられるコマンドに従って、不揮発メモリに対するデータ書き込み、不揮発メモリからのデータ読み出し、データ消去を行う「アクセス制御部」、不揮発メモリから読み出されたデータを書き換える際、データの一時格納に用いられる「ワークメモリ」を含む。
【0055】
SDメモリカードには、FAT16を採用したものと、FAT32を採用したものとがある。FAT16は、クラスタ1つ当たりに割り当てられるエントリー長が16ビットであり、2Gバイトの記録領域をアクセス対象にしている。FAT32は、クラスタ1つ当たりに割り当てられるエントリー長が32ビットであり、32Gバイトの記録領域をアクセス対象にしている。このFAT32を採用したSDメモリカードは、特に“SDHCメモリカード”と呼ばれる。
【0056】
以降、このリムーバブルメディアについて説明する。
図6は、半導体メモリの記録領域の物理的構成を示す図である。
本図の左側は、リムーバブルメディアのSDメモリカードの外観を示す。
本図の中段は、リムーバブルメディアであるSDメモリカードの物理的構成を示す図である。ローカルストレージは、ビルドインメディア、リムーバブルメディアの何れにおいても、複数個の論理ブロックで構成される。通常のファイルの書込みは、この論理ブロック単位で記録・削除が行われる。そのため、1つの論理ブロック内に複数のファイルデータを保存することはできない。すなわち、1つの論理ブロックサイズより小さなファイルを書込む場合にも、1つの論理ブロックが消費され、その論理ブロック内に他のファイルのデータを書込むことはできない。
【0057】
本図の右側は、SDメモリカードのファイルシステム領域の内部構成を示す。SDメモリカードにおけるファイルシステム領域は、一個の論理ブロックが一個のクラスタとして扱われ、このクラスタを最小単位として、ファイルの記録や削除がなされることになる。
本図の中段では、物理的に連続する1000個の論理ブロックが1つのアロケーションユニットとして確保されている。アロケーションユニットとは、SDメモリカードに対するデータ書き込みの速度保証を実現する単位であり、SDメモリカードでは一般に、4Mバイトの大きさと規定されている。
【0058】
(通常データ領域、連続データ領域)
前者の論理ブロックの書き込みを前提とした記録領域は、“通常データ領域”と呼ばれる。後者のアロケーションユニットを前提にした記録領域は、“連続データ領域”と呼ばれる。追加コンテンツ格納領域には、これら通常データ領域、連続データ領域の組みが確保されることになる。図7は、通常データ領域、連続データ領域の一例を示す図である。本図上段は、通常データ領域の内部構成を示し、本図下段は、連続データ領域の内部構成を示す。
【0059】
上段の通常データ領域における個々の四角形は、論理ブロックを模式的に表す。この四角形のうち、白抜きのものは空きの論理ブロックであり、黒で塗り潰されたものは、一部又は全部が記録済みになっている論理ブロックである。記録済み論理ブロックにおける記録内容には、「マージ管理情報ファイル」、「署名情報ファイル」、「プレイリスト情報ファイル」、「Clip情報ファイル」がある。記録・削除が細かい単位で行われるため、頻繁に記録・削除を繰り返していると、未使用の論理ブロックが飛び飛び状態になり、1つのファイルのデータが飛び飛びの論理ブロックに記録されるという問題が発生する。ファイルを構成するデータが飛び飛びに記録されることを“フラグメンテーション”と呼ぶ。飛び飛びに記録されたファイルのデータを読み込む場合、飛び先ブロックへのシークが発生し読み込み性能が劣化してしまう。特にリアルタイムの読み取り性能が求められるAVストリーム形式の追加コンテンツがこの状態になってしまうと、再生に必要なAVストリーム形式の追加コンテンツの読み取りが間に合わず、再生がカクツクなどの現象が出ることになる。AVストリーム形式の追加コンテンツをスムーズに読み出すには、AVストリーム形式の追加コンテンツを連続した論理ブロックに書き込むことが望ましいが、通常データ領域ではフラグメンテーションが広範囲に発生するので、AVストリーム形式の追加コンテンツの記録に適した、連続論理ブロックの確保が難しくなっている。
【0060】
小さなサイズのファイルが多い場合は、無駄な空き領域が多くなるが、通常1つの論理ブロックは一般的なファイルサイズよりも十分小さいため、通常データ領域への書込みに関しては効率良くストレージ容量を消費することができる。
下段の連続データ領域における四角形は、連続データ領域を構成するアロケーションユニットを模式的に示す。この四角形のうち、白抜きのものは空きのアロケーションユニットであり、一部が黒で塗り潰されたものは、記録済みになっているアロケーションユニットである。黒で塗り潰された部分が一部であるため、本来このアロケーションユニットには、未記録の部分が存在する。しかし、その一部に記録済みデータが存在する以上、他のデータを、その未記録部分に記録することはできない。つまり、一部の領域が既に記録されていれば、そのアロケーションユニットは記録済みとして扱われる。本図における3つのアロケーションユニットには、00001.mts,00002.mts,00003.mtsという3つのAVストリーム形式の追加コンテンツが記録されている。これら3つのアロケーションユニットは、3つのAVストリーム形式の追加コンテンツによって排他的に使用されているため、たとえ未記録部分があったとしても、ここに他のファイルを書き込むことはできない。書込先にアロケーションユニットを選んだ場合、連続する複数の論理ブロック単位で記録・削除がなされることになる。データ記録にアロケーションユニットを用いる場合、比較的大きなサイズで物理的に連続した領域を単位に記録・削除するため、フラグメンテーションが起こりにくいというメリットを持つ。
【0061】
連続データ領域では、アロケーションユニット単位でアクセスがなされ、記録・削除の単位が大きいため、サイズが小さいファイルを書込む場合、無駄に大きな領域を占有してしまい、ストレージ容量を効率良く利用できないというデメリットがある。ただし、AVストリーム形式の追加コンテンツが格納されたファイルのサイズは十分大きなサイズであり、かつAVストリーム形式の追加コンテンツの読み取りにはリアルタイム性が求められるため、連続データ領域に書込むことが望ましい。
【0062】
図7における追加コンテンツ配置の特徴について説明する。追加コンテンツ格納領域には、通常データ領域、連続データ領域が存在しており、この通常データ領域は、4Kバイトという論理ブロックの単位で、非AVストリーム形式の追加コンテンツの書き込みや削除がなされるので、記録領域の効率良い利用が図られていることがわかる。
一方連続データ領域は、4Mバイトというアロケーションユニットの単位で、AVストリーム形式の追加コンテンツの書き込みがなされており、かかるAVストリーム形式の追加コンテンツの書き込みによって、記録効率の低下が発生しているが、この低下の発生は、1つの追加コンテンツ格納領域内の局所的なものであり、リムーバブルメディアであるSDメモリカード全体の記録効率に与える影響は小さい。
【0063】
こうすることで、書き込みや消去といった更新頻度が高い非AVストリーム形式の追加コンテンツについては、記録効率の維持を優先しつつも、AVストリーム形式の追加コンテンツにおけるAV再生の安定性を保証することができる。
(ファイルシステム領域の内部構成)
図8は、リムーバブルメディアであるSDメモリカードのファイルシステム領域の内部構成を示す図である。本図の左側に、リムーバブルメディアであるSDメモリカードを示し、中側に、FAT型ファイルシステムに準じたファイルシステム領域の内部構成を示す。このFAT型ファイルシステムの記録領域は、「MasterBootRecord」,「PartitionTable」が記録され、これらの記録領域以降に「システム領域」及び「ユーザ領域」が存在する。
【0064】
「MasterBootRecor」は、自身に後続する領域が“物理的な一つの媒体(物理媒体)“であることを再生装置に認識させるための標識である。本図では、記録領域にマスタブートレコードが1つだけ存在するので、記録領域において1つの物理媒体が再生装置により認識され得るが、仮に記録領域にマスタブートレコードを2つ配せば、2つの物理媒体が再生装置により認識される。
【0065】
「パーティションテーブル」は、パーティションに関する情報が記述されたテーブルである。
「システム領域」は、「パーティションブートセクタ」、「二重化ファイルアロケーションテーブル(FAT)」、「Rootディレクトリエントリ」が記録されている。
「ユーザ領域」は、クラスタを最小単位にして、ファイルが格納される領域であり、「BUDAディレクトリエントリ」、「CertIDディレクトリエントリ」、「OrganizationIDディレクトリエントリ」、「DiscIDディレクトリエントリ」が記録され、これ以降に追加コンテンツ格納領域が存在する。追加コンテンツ格納領域には「マージ管理情報ファイル」、「署名情報ファイル」、「追加コンテンツデータファイル」が記録されている。
【0066】
以降、二重化FATについて説明する。
「二重化ファイルアロケーションテーブル(FAT)」は、ISO/IEC 9293に準拠した2つのFATからなる。図9(a)は、二重化FATの内部構成を示す図である。各FATは、各クラスタに対応づけられた複数のFATエントリーからなる。各FATエントリーは、対応するクラスタが使用中であるか、未使用であるかを示すものであり、対応するクラスタが未使用であれば、そのファイルエントリーには、“0“が設定され、対応するクラスタが使用中であれば、クラスタ番号が設定される。このクラスタ番号は、対応するクラスタが読み出された場合、次にどのクラスタを読み出せばよいかといったクラスタ間のリンク関係を示す。図9(a)の破線の引き出し線ff1は、FATに含まれる複数のFATエントリー002,003,004,005・・を示す。このFATエントリーに付与された数値「002,003,004,005・・」は、各FATエントリーがどのクラスタに対応づけられているか、つまり、各FATエントリーが対応づけられているクラスタのクラスタ番号を示す。
【0067】
続いて、ディレクトリエントリについて説明する。ディレクトリエントリには、システム領域に存在する「Rootディレクトリエントリ」、ユーザ領域に存在する「BUDAディレクトリエントリ」、「CertIDディレクトリエントリ」、「OrganizationIDディレクトリエントリ」、「DiscIDディレクトリエントリ」といったものがあるが、これらは何れも、図9(b)に示す共通のデータ構造を有する。図9(b)は、ディレクトリエントリの共通のデータ構造を示す図である。本図に示すように「ディレクトリエントリ」は、ASCII文字8文字以下に制限された「ディレクトリ名」と、「作成時刻」と、「作成日付」と、当該ディレクトリに存在するファイルについての「ファイルエントリー」とを含む。各ファイルエントリーは、ASCII文字8文字以下に制限された「ファイル名」と、ASCII文字3文字以下に制限された「ファイル拡張子」と、ファイルの先頭部が格納されている「ファイル最初のクラスタ番号」と、そのファイルについての「ファイル属性」と、ファイルが更新された「更新時刻」と、ファイルの「更新日付」と、ファイルのデータ長である「ファイル長」とを含む。
【0068】
SDメモリカードにおけるディレクトリ名及びファイル名は、こうしたディレクトリエントリに記述される。そしてこのディレクトリエントリのうち、Rootディレクトリエントリは、二重化FATと共に、原則として、1つのクラスタ内に配置して、まとめて管理せねばならないので、ディレクトリ名及びファイル名を長くするのは現実的ではない。具体的には、その文字数は、ASCII文字8文字以内、拡張子もASCII文字3文字以内に制限されている。このように、ディレクトリ名、ファイル名が制限されたファイルシステム形式を、“8.3形式”と呼んでいる。
【0069】
ここで、DiscIDディレクトリに、追加コンテンツを格納する場合、FAT及びディレクトリエントリがどのように設定されるかについて説明する。説明の題材に選ぶ追加コンテンツは、AVストリームを格納した“00001.mts”というファイルである。
図10は、00001.mtsをクラスタサイズに合わせて5つに分割し、各分割部分を、クラスタ504〜50Bに格納する状態を想定した図である。
【0070】
図10の第3段目から第8段目は、映像、音声を示すエレメンタリストリームが、AVストリームにおいてどのように多重化されているかを模式的に示す。AVストリームは、デジタル化された映像、デジタル化された音声を(第8段目)、PESパケットからなるエレメンタリストリームに変換し(第7段目)、更にTSパケットに変換して(第6段目)、これらのTSパケットを多重化する(第5段目)ことで構成される。
【0071】
ここで、ビデオストリームは、本図の第8段目に示すように複数のピクチャから構成されるが、これらピクチャと、Access Unitとの関係は、1AccessUnit = 1ピクチャである。オーディオストリームも、複数のオーディオフレームから構成されるが、これらオーディオフレームと、Access Unitとの関係も、1オーディオフレーム= 1Access Unitである。またBD-ROMでは、1PESパケット = 1フレームに制限されている。つまり、動画がフレーム構造であれば、1PESパケット= 1ピクチャであり、フィールド構造である場合、1PESパケット=2ピクチャとなる。これらのことから、本図の第8段目に示すPESパケットは、第8段目におけるピクチャやオーディオフレームを、1対1の比率で格納している。
【0072】
第5段目において、多重化されたTSパケット列は、“STC Sequence”を構成する。“STC Sequence”とは、デコード時刻、表示時刻を表すMPEG2-TSの時間軸であり、AVストリームのシステム基準時刻であるSTC(SystemTime Clock)の不連続点(system time-base discontinuity)が存在しない区間をいう。STCの不連続点はデコーダがSTCを得るために参照するPCR(ProgramClock Reference)を運ぶPCRパケットの不連続情報(discontinuity_indicator)がONである点である。
【0073】
第4段目から第1段目までは、リムーバブルメディアへのAVストリーム形式の追加コンテンツの記録がどのように行われるかを示す。
188バイトのTSパケットは、第4段目に示すように、4バイトのTS_extra_header(図中のハッチング部)が付されて、192バイト長のSourceパケットに変換される。このTS_extra_headerは、当該TSパケットのデコーダ入力時刻情報を示すArrival_Time_Stampを含む。
【0074】
Sourceパケットは、第4段目に示すような1つ以上の“ATC_Seuqence”を構成する。“ATC_Seuqence”とは、AVストリームに記されているATSの時間軸を構成するSourceパケットの配列であって、そのArrival_Time_Stampが参照しているArrival_Time_Clockに、不連続点(noarrival time-base discontinutiy)が存在しないものをいう。いいかえれば、そのArrival_Time_Stampが参照しているArrival_Time_Clockに、連続性が存在するSourceパケット列を“ATC_Seuqence”という。ATSは以下のようにTSパケットの先頭につけられ、デコーダへの転送時刻を示す。
【0075】
かかるATC_SeuqenceがAVストリームになり、第3段目に示すように00001.mtsというあデータファイルに格納される。こうして得られたAVストリーム形式の追加コンテンツは、第2段目に示すような、ファイルシステム領域を構成する連続クラスタ504,505,506・・・50Bに記録されることになる。この連続クラスタは、第1段目に示すように、アロケーションユニットを構成する複数の論理ブロック504,505,506・・・50Bに対応しているので、AVストリーム形式の追加コンテンツは、一個のアロケーションユニット内に、完結した形態で格納されることになる。
【0076】
00001.mtsがアロケーションユニットに記録されると、ディレクトリエントリ及びFATは、図11のように設定されねばならない。
図11は、00001.mtsが複数のクラスタに記録されている場合のディレクトリエントリ及びFATについての設定例を示す図である。本図において00001.mtsの先頭部分がクラスタ504に記録されている場合、DiscIDディレクトリディレクトリエントリにおける「ファイル最初のクラスタ番号」には、その先頭部分が格納されているクラスタについてのクラスタ番号504が記載される。以降、00001.mtsの後続する部分は、クラスタ505、クラスタ506に格納されていることがわかる。00001.mtsの先頭部分を格納しているクラスタ504には、FATエントリー504が対応しているが、このFATエントリー504は、00001.mtsファイルの後続する部分を格納しているクラスタ505を示すものである。またこれに後続している部分を格納しているクラスタ505,506には、FATエントリー505(506),FATエントリー506(507)が対応しているが、これのFATエントリーは、00001.mtsファイルの次の後続する部分を格納しているクラスタ506,507を示すものである。このように、DiscIDディレクトリディレクトリエントリにおける最初のクラスタ番号と、FATエントリーとを辿ってゆくことにより、リムーバブルメディア104に格納されたAVストリームは読み出され、再生に供されることになる。
【0077】
以上のようなファイルシステムを前提にして、構築されるディレクトリについて説明する。
図12は、リムーバブルメディア上のディレクトリ構成を示す図である。リムーバブルメディア上には、追加コンテンツ格納領域ルートディレクトリであるBUDAディレクトリ、CertIDディレクトリ、OrganizationIDディレクトリ、DiscIDディレクトリが存在する。このDiscIDディレクトリには、マージ管理情報ファイル「bumf.xml」、署名情報ファイル「bumf.sf」、追加コンテンツ「00001.mpl」「mo.bdm」「00001.mts」が存在する。
【0078】
追加コンテンツ格納領域ルートディレクトリ(BUDAディレクトリ)は、リムーバブルメディアのルートディレクトリの直下に存在し、追加コンテンツ格納領域のルートを示すディレクトリで、ディレクトリ名は、8文字以内の固定値(BD_BUDA)である。
「CertIDディレクトリ」はBD-ROM上のマージ証明書(bd.cert)から導き出されるIDを名前に持つディレクトリで、マージ証明書のSHA-1ダイジェスト値160ビットのうち、先頭32ビットを16進表記で表した8文字の名前のディレクトリである。
【0079】
「OrganizationIDディレクトリ」は、BD-ROM上のBD管理情報(index.bdmv)に記載されている、映画作品のプロバイダを特定する32ビットの識別子(OrganizationID)を16進表記で表した8文字の名前のディレクトリである。
「DiscIDディレクトリ」は、4階層のサブディレクトリからなる。これら4階層のサブディレクトリは、最大8文字のディレクトリ名が付与される。各サブディレクトリには、BD-ROMを特定する128ビットの識別子(DiscID)を先頭から32ビットずつ4分割し、それぞれを16進表記で表した8文字の名前が割り当てられている。このDiscIDは、BD-ROM上のBD管理情報(index.bdmv)に記載されているので、index.bdmvをオープンすることでDiscIDは、取得することができる。例えば、本図における、「12345678」「90abcdef」「12345678」「90abcdef」という4つのディレクトリ名は、「1234567890abcdef1234567890abcdef」という32文字(128ビット)のDiscIDを、下位の桁から8文字(32ビット)ずつ分割することで得られたものである。DiscIDを構成する文字のうち、意味のあるものを省略することなく、DiscIDと、8.3形式との対応を図るので、4階層のサブディレクトリは、DiscIDと厳密に対応がとれたものとなる。
【0080】
DiscIDディレクトリの配下には、仮想パッケージを構築するための追加コンテンツ格納領域が存在する。追加コンテンツ格納領域は、4つのDiscIDディレクトリエントリーのうち、最も下位のDiscIDディレクトリエントリー内に存在するファイルエントリーにて特定されねばならないので、最も下位のDiscIDディレクトリエントリーより後の論理ブロックに確保されることになる。追加コンテンツ格納領域は、通常データ領域、連続データ領域からなり、通常データ領域には、「マージ管理情報ファイル」、「署名情報ファイル」、非AVストリームの追加コンテンツである「追加コンテンツ」が記録される。これらのファイルは、仮想パッケージ生成の中核を担うものであり、以降、これらのファイルの内容を詳細に説明する。
【0081】
「マージ管理情報ファイル」は、リムーバブルメディア上の追加コンテンツのファイルパスと、仮想パッケージにおける別名アクセスのためのファイルパスとの対応付けを示す情報であり、bumf.xmlというファイル名でDiscIDディレクトリに保存される。このマージ管理情報ファイルが特徴的であるのは、リムーバブルメディアにおけるファイルパス、つまりFAT型ファイルシステムを前提にしているため、リムーバブルメディアにおけるディレクトリ名及びファイル名が8.3形式に準じている点である。このように、8.3形式に準じたファイルパスが、仮想パッケージにおけるLFNのファイルパスとが対応付けられている。この仮想パッケージのファイルパスは、BD-ROMのディレクトリ構造に準じている。何故なら仮想パッケージは、リムーバブルメディア上のファイルを、あたかもBD-ROMに格納されているものと同様に扱うものだからである。かかるBD-ROMのファイルシステム形式は、LFNに対応したものなので、このマージ管理情報ファイルを参照することにより、リムーバブルメディア上の追加コンテンツは、8.3形式でありながら、255文字以下のファイル名を用いて別名でアクセスされることになる。マージ管理情報ファイルは、8.3形式で記録されている各種ファイルに対して、255文字以下のファイル名による、“別名アクセス”を実現させるものである。
【0082】
図13(a)は、マージ管理情報の内部構成を示す図である。本図におけるマージ管理情報では、00001.mpl、mo.bdm、00001.mtsという3つの追加コンテンツについて、リムーバブルメディア上のファイルパスと、仮想パッケージ上のファイルパスとの対応付けがなされている。リムーバブルメディア上のファイルパスは、8.3形式に準じている。
本図におけるファイルパスの記述について具体的に説明する。リムーバブルメディアにおける“12345abc/12345678/90abcdef/12345678/90abcdef/00001.mpl”という8.3形式のファイルパスには、BDMV/PLAYLIST/00001.mplsという仮想パッケージ上のLFN形式のファイルパスが対応付けられている。この一例は、前図のものに準じており、CertIDディレクトリから追加コンテンツへのパスが明記されている。
【0083】
リムーバブルメディアにおける、“12345abc/12345678/90abcdef/12345678/90abcdef/mo.bdm”という8.3形式のファイルパスには、BDMV/MovieObject.bdmvという仮想パッケージ上のLFN形式のファイルパスが対応付けられている。
リムーバブルメディアにおける“12345abc/12345678/90abcdef/12345678/90abcdef/00001.mts”という8.3形式のファイルパスには、BDMV/STREAM/000001.m2tsという仮想パッケージ上のLFN形式のファイルパスが対応付けられている。
【0084】
図13(b)は、マージ管理情報の内容を元にして、BD-ROMコンテンツと、リムーバブルメディア上の追加コンテンツをマージする様子を示している。
左側は、BD-ROMの格納内容を示し、中側はリムーバブルメディアの格納内容を示す。右側は、仮想パッケージの格納内容を示す。マージ管理情報ファイルは、図13(a)のように設定されているので、リムーバブルメディアにおける格納内容のうち、BUDAディレクトリ配下の12345abc/12345678/90abcdef/12345678/90abcdefに存在する3つの追加コンテンツ、つまり、mo.bdm、00001.mpl、00001.mtsのそれぞれを、矢印g1,g2,g3に示すように、マージ管理情報ファイルに記述されている仮想パッケージのディレクトリ構成に組み合わせる。以上のような、リムーバブルメディアのファイルを、マージ管理情報ファイルに記述されているディレクトリ構成に組合せることを“マージ”という。
【0085】
こうしたマージによって、mo.bdmは、BDMVディレクトリに存在する“MovieObject.bdmv”という別名のファイル名でアクセスされることになる。
また00001.mplは、BDMVディレクトリ配下のPLAYLISTディレクトリに存在する“00001.mpls”という別名のファイル名でアクセスされることになる。
00001.mtsは、BDMVディレクトリ配下のSTREAMディレクトリに存在する“00001.m2ts”という別名のファイル名でアクセスされることになる。
【0086】
上述したような別名アクセスが可能になるので、mo.bdm、00001.mpl、00001.mtsのそれぞれは、BDMVにMovieObject.bdmv、BDMV/PLAYLIST/00001.mpls、BDMV/STREAM/00001.m2tsに存在するものとして扱うことができる。
「署名情報ファイル」は、マージ管理情報ファイルに対するプロバイダの電子的な署名を示すファイルであり、bumf.sfというファイル名でDiscIDディレクトリに保存される。電子的な署名は、一般的に改竄防止が必要な情報に対してハッシュ値を計算し、ハッシュ値をなんらかの秘密鍵を用いて暗号化したものを用いる。改竄防止が必要な情報としては、具体的には、追加コンテンツのファイル名や追加コンテンツをビルドインメディアに記録するにあたってのファイルパスが挙げられる。かかるファイルパスはLFN形式であり、マージ管理情報ファイルに記載されているので、マージ管理情報ファイルに記載されたファイルパスに対して、ハッシュ値は算出されることになる。また、本署名情報ファイルでは、BD-ROM上にあるマージ証明書中の公開鍵に対応する秘密鍵を利用して、マージ管理情報ファイルのハッシュ値が暗号化されている。
【0087】
「非AVストリームの追加コンテンツ」は、BD-ROMに記録されたオリジナルのコンテンツに対し、追加/更新を実現するファイル群であり、リムーバブルメディア上に8.3形式(ファイル名8文字以内、拡張子3文字以内)のファイル名で保存される。DiscIDディレクトリについては、文字を省略することなく、全ての文字がDiscIDディレクトリにおけるディレクトリ名に現れるように変換を行ったが、追加コンテンツについては、一部の文字をリムーバブルメディアにおけるファイル名に使用することで、ファイル名の短縮を図っている。これは、追加コンテンツにおけるファイル名は、本来、BD-ROM上のファイル名であり、“5桁の数値+数種類の拡張子”という何通りかのパターンのものに限られているので、ファイル名を構成する文字を一部省略したとしても、混同が生じる等の不都合が発生する可能性は極めて低いこと等の理由による。
【0088】
図12に示した2つの追加コンテンツのうち、「00001.mpl」はプレイリスト情報を格納したものであり、「mo.bdm」は、Movieオブジェクトを格納したものである。これら以外にも、BD-ROMにて記録され、ユーザに供給することができるファイルであるなら、BD-ROMに記録されるべき他のファイルを追加コンテンツの対象として選ぶことができる。index.bdmvやClip情報を格納したファイル(拡張子がclpiのファイル)、Java(登録商標)アーカイブファイル(拡張子がJarのファイル)、BD-Jオブジェクトを格納したファイル(拡張子がbdjoのファイル)を、追加コンテンツの対象として選ぶことができる。以上が通常データ領域についての説明である。
【0089】
続いて、連続データ領域の詳細について説明する。連続データ領域には、AVストリーム形式の追加コンテンツが記録される。AVストリーム形式の追加コンテンツには、「00001.mts」,「00001.mts」,「00001.mts」がある。これらは、AVストリームを格納した8.3形式のファイルである。
図14は、図5に示すBD-Jモジュール29のより具体的な構成を示すとともに、BD-Jモジュールによりネットワーク上から追加コンテンツをビルドインメディア上もしくはリムーバブルメディア上にダウンロードする様子を示す図である。BD-Jモジュール29はメディア再生モジュール32、ファイルI/Oモジュール34、ネットワークモジュール35、アプリケーションマネージャ36、仮想ファイルシステム管理モジュール39から構成される。尚、本図におけるAV再生ライブラリ25、ネットワークI/F21、ビルドインメディアドライブ22a、リムーバブルメディアドライブ22b、仮想ファイルシステム23は、図5に示したものと同一であり、メディア再生モジュール32〜仮想ファイルシステム管理モジュール39の説明のために便宜的に記載している。
【0090】
(メディア再生モジュール32)
メディア再生モジュール32はBD-Jアプリケーションに対し、メディア再生制御のためのAPIを提供している。BD-Jアプリケーションがメディア再生制御APIを呼び出すと、メディア再生モジュールは対応するAV再生ライブラリ25の関数を呼び出し、AV再生制御を行う。
【0091】
(ファイルI/Oモジュール34)
ファイルI/Oモジュール34は、BD-Jアプリケーションからのビルドインメディアもしくはリムーバブルメディアへのアクセス要求の処理を行う。
このアクセス要求が、追加コンテンツの書き込みである場合、BD-JアプリケーションはファイルI/Oモジュール34を用いて、追加コンテンツをビルドインメディア上もしくはリムーバブルメディア上の適切な位置に配置することが出来る。また、不要となった追加コンテンツを削除したり、追加コンテンツを直接編集することも可能である。仮想パッケージ上へのアクセスもこのファイルI/Oモジュール34を通して行う。ただし、仮想パッケージ上へのアクセスは読み取り専用となり、ファイルI/Oモジュール34からの書き込みはできない。
【0092】
そのアクセス要求が追加コンテンツの読み出しである場合、BD-Jアプリケーションからは、BD-ROMに対するLFN形式のファイルパスが引き渡されるので、リムーバブルメディアに記録されているファイルであって、LFNのファイルパスにてアクセスできるものがリムーバブルメディアに存在するかどうかのサーチを行う。
このサーチは、当該LFNのファイルパスが、マージ管理情報ファイルにおいて、“別名のファイルパス”として記述されているかどうかを判断することでなされる。
【0093】
そうしたサーチにより、そのLFNのファイルパスにて別名でアクセスできる追加コンテンツがリムーバブルメディアに存在することが明らかになった場合、マージ管理情報ファイルに記載された8.3形式のファイルパスに従い、その追加コンテンツをリムーバブルメディアから読み出す。
そのLFNのファイルパスにて別名アクセスできる追加コンテンツがリムーバブルメディアに存在しない場合、そのLFNのファイルパスにてアクセスすることができる追加コンテンツを、BD-ROMから読み出す。そのLFNのファイルパスにてアクセスすることができる追加コンテンツが、BD-ROMにも存在しないのなら、エラー処理を行う。
【0094】
(ネットワークモジュール35)
ネットワークモジュール35は、BD-Jアプリケーションに対し、ネットワーク制御のためのAPIを提供している。BD-Jアプリケーションからのネットワーク制御要求に従い、ネットワークインターフェース21を使って、ネットワーク接続を行う。BD-Jアプリケーションはネットワークモジュール35を用いて、公開されている追加コンテンツを検索、及びビルドインメディア/リムーバブルメディアにダウンロードすることが可能である。
【0095】
こうしたネットワークを通じた追加コンテンツ取得を実現するので、課題解決手段における取得手段は、このネットワークモジュール35に該当することになる。
(アプリケーションマネージャ36)
アプリケーションマネージャ36は、システムアプリケーションであり、アプリケーションシグナリングを実行する。“アプリケーションシグナリング“とは、GEM1.0.2が規定するMHP(MultimedeiHome Platform)において、“サービス“を生存区間としてアプリケーションの起動、実行を行う制御をいう。BD-ROM再生装置におけるアプリケーションマネージャは、この“サービス“の代わりに、BD-ROMにおける“タイトル“を生存区間にして、アプリケーションの起動、実行の制御を実現する。ここで、“タイトル“とは、BD-ROMに記録されている映像・音声データの再生単位であり、アプリケーション管理テーブル(AMT)が一意に割り当てられている。
【0096】
タイトルバウンダリのアプリケーションシグナリングは、index.bdmvファイルに基づくタイトルの選択が行われた際、前のタイトルに対応するアプリケーション管理テーブル(AMT)と、カレントタイトルに対応するアプリケーション管理テーブル(AMT)とを用いて実行されるシグナリングをいう。このシグナリングは、前のタイトルに対応するAMTには記載されているが、カレントタイトルに対応するAMTには記載されていないアプリケーションの動作を終了させ、前のタイトルに対応するAMTには記載されておらず、カレントタイトルに対応するAMTには記載されているアプリケーションの動作を開始させるという制御である。
【0097】
index.bdmvファイルとは、ディスク上のタイトル構成が記載されたファイルであり、ディスク上の各タイトルと、対応するアプリケーション(BD-JモードタイトルであればJava(登録商標)アプリケーション、HDMVモードタイトルであればシナリオプログラム)との参照関係を管理している。図15は、index.bdmvファイルとタイトルの関係を示す図である。タイトルとはアプリケーションとAVストリームを組にした再生単位であり、また特殊なタイトルとして「FirstPlay」と「TopMenu」が存在する。「First Play」はBD起動時に自動的に再生されるタイトルであり、主にBDの利用規約表示などに用いられる。「Top Menu」はリモコンのメニューキーを押したときやタイトル再生が終了したときに再生され、主にタイトルの選択や、字幕/音声の言語選択を行うことに用いられる。このindex.bdmvファイルが仮想パッケージ更新により内容が変化した場合、仮想パッケージ更新前と更新後で、タイトル構成が異なることになる。
【0098】
(DiscID確認モジュール37)
DiscID確認モジュール37は、挿入されたBD-ROMのDiscIDを確認する。DiscID確認モジュール37により取得されたDiscIDの値は仮想ファイルシステム23が仮想パッケージを構築する際に用いられる。
(リムーバブルメディア検知モジュール38)
リムーバブルメディア検知モジュール38は、リムーバブルメディアの挿入・取り出しのモニタリングを行う。リムーバブルメディアの挿入・取り出しが行われると、仮想ファイルシステム23に挿入・取り出し通知を行う。
【0099】
(仮想ファイルシステム管理モジュール39)
仮想ファイルシステム管理モジュール39は、BD-Jアプリケーションからの仮想パッケージ構築/更新要求を受け取り、その要求内容を仮想ファイルシステム23へ伝達する。Java(登録商標)アプリケーションは仮想パッケージを構築/更新する場合、新たなマージ管理情報ファイル及び署名情報ファイルを指定して構築/更新要求を発行する。仮想ファイルシステム23は仮想ファイルシステム管理モジュール39を通じて仮想パッケージ構築/更新要求を受け付けると、新たに指定された署名情報ファイルを用いて、新たなマージ管理情報ファイルの署名検証を行った後、古いマージ管理情報ファイル、署名情報ファイルを新しいマージ管理情報ファイル、署名情報ファイルに置き換えて、仮想パッケージを再構築する。マージ管理情報ファイル、署名情報ファイルの置き換えはタイトル切り替え時に行われる。次にタイトルについての説明を行う。
【0100】
(追加コンテンツを書き込むにあたっての注意事項)
以降、通常データ領域にAVストリーム形式の追加コンテンツを書き込むにあたっての注意事項について述べる。
コンテンツオーサは、再生装置に、ファイル種別がAVストリーム形式の追加コンテンツであることを認識させるため、AVストリーム形式の追加コンテンツには、“mts”との拡張子を付与すべきである。具体的には、AVストリーム形式の追加コンテンツは、BD-Jアプリケーションによってダウンロードされるので、BD-Jアプリケーションがダウンロードを行い、ローカルストレージにAVストリーム形式の追加コンテンツを書き込む際、AVストリーム形式の追加コンテンツには、“mts”との拡張子を付加せねばならない。そして、再生装置は、この拡張子が付加されたAVストリーム形式の追加コンテンツを、ローカルストレージにおける連続データ領域に書き込むべきである。アプリケーションからの要求に応じて、AVストリーム形式の追加コンテンツの書き込みを行うのは、ファイルI/Oモジュール34であるため、ファイルI/Oモジュール34は、連続データ領域、つまり、アロケーションユニットを確保して、AVストリーム形式の追加コンテンツに書き込む必要がある。
【0101】
(BD-Jアプリケーションにおけるダウンロード手順の記述)
BD-Jアプリケーションによりダウンロードを実現するには、所定のAPIを用いることにより、ネットワークモジュール35にURLコネクションを構築させ、ファイルI/Oモジュール34にリムーバブルメディアへの書き込みを行わせる必要がある。以下、ダウンロード手順の記述に用いられる、APIについて説明する。
・URLConnection(URL url)
引数で指定されたURLに対して、URLコネクションを確立する。
【0102】
・getInputStream()
このAPIをコールした際、URLコネクションからの入力を受ける入力ストリームが戻り値として、アプリケーションに返される。
また、getInputStream()のメソッドとしては、以下のものを使用する。
・read(byte[] b)
入力ストリームから引数で指定されたバイト数byte[]を読み込み、それをバイト配列に格納する。
【0103】
・FileOuputStream(String name)
引数となるString nameは、絶対ファイルパスを意味する。BD-JアプリケーションによってこのAPIがコールされた際、絶対ファイルパスで指定されたファイルオブジェクトに書き込むための出力ファイルストリームjを作成する。また、append引数を用いた場合、既存ファイルへの追記が可能となる。
【0104】
また、FileOuputStream()のメソッドとしては、以下のものを使用する。
・write(byte[] b)
指定されたバイト配列のb.lengthバイトを、出力ファイルストリームjに書き込む。
図16は、ファイルI/Oモジュール34を介した、通常データ領域又は連続データ領域に対するデータ書き込みを模式的に示す図である。下段は、リムーバブルメディアにおける通常データ領域及び連続データ領域の組みを示し、中段は、BD-モジュール14と、その内部のファイルI/Oモジュール34とを示す。上段は、BD-Jアプリケーションを示す。矢印yk1は、書き込み要求を示し、矢印yk2,yk3は、その要求に応じたAVストリーム形式の追加コンテンツの書き込み、非AVストリーム形式の追加コンテンツの書き込みという一連のデータの流れを模式的に示す。このデータの流れを追ってゆくと、追加コンテンツの書込要求がなされた場合、AVストリームかどうかの判別がストリーム/非ストリーム判別部1201によってなされ、結果がAVストリーム形式の追加コンテンツであれば、連続データ領域にAVストリーム形式の追加コンテンツが書き込まれることになる。結果が非AVストリームの追加コンテンツであれば、連続データ領域に非AVストリームの追加コンテンツが書き込まれることになる。
【0105】
図17は、リムーバブルメディアへのダウンロードの処理手順を示すフローチャートである。ビルドインメディアであるリムーバブルメディアのBUDAの配下に、160ビットのCertIDのうち、先頭32ビットをディレクトリ名としたCertIDディレクトリをクリエイトする(ステップS1)。そのCertIDディレクトリの配下に、今度はOrganizationIDをディレクトリ名にしたOrganizationIDディレクトリをクリエイトする(ステップS2)。その後、128ビットのDiscIDを32ビット毎に4つの文字列に分割して、4つの文字列をそれぞれディレクトリ名とした4階層のDiscIDディレクトリを、OrganizationIDディレクトリの配下にクリエイトする(ステップS3)。
【0106】
以上の処理で、リムーバブルメディアのためのディレクトリ構成を構築した後、マージ管理情報ファイル、署名情報ファイルをダウンロードして、DiscIDディレクトリのうち、最下層に格納する(ステップS4)。続いて、追加コンテンツのダウンロードを行う(ステップS5)。こうして追加コンテンツのダウンロードがなされれば、マージ管理情報ファイルにおけるファイル名、ディレクトリ名の変更に伴い、署名情報ファイルを変更する(ステップS6)。つまりプロバイダ側では、改竄防止のため、ファイルパスが変更される前の、ビルドインメディアにおけるLFN形式に対応したファイルパスに対してハッシュ値を算出しており、そうして算出したハッシュ値を署名情報ファイルに記述している。再生装置は、ハッシュ値の算出対象となったファイルパスを、LFNから8.3形式に変更しているので、この変更に伴い、署名情報ファイル内のハッシュ値を再計算にする必要がある。そのような、ファイルパス変更に追随して、ハッシュ値の再計算を行っているのが、このステップS6である。
【0107】
図18は、追加コンテンツのダウンロード処理の処理手順を示すフローチャートである。本フローチャートは、マージ管理情報に記載されているそれぞれの追加コンテンツについて、ステップS13〜ステップS19の処理を繰り返すというループ構造になっている(ステップS11、ステップS12)。ループにおいて、処理手順となる追加コンテンツを追加コンテンツiと呼ぶ。このステップS13〜ステップS19の処理手順は以下の通りである。先ず始めに、追加コンテンツをダウンロードするためのURLコネクションを構築して(ステップS13)、構築したURLコネクションで受け取る入力ストリームiを取得し(ステップS14)、入力ストリームiのファイル名を8.3形式に変換して、ファイル名B,拡張子Eを得る(ステップS15)。その後、BUDA/CertID/organizationID/DiscID/ファイル名B+拡張子Eという形式の絶対ファイルパスを生成して(ステップS16)、生成した絶対ファイルパスを用いたFileOutputStream(絶対ファイルパスFP)のコールにより、出力ファイルストリームjを作成し(ステップS17)、Read(byte[]b)のコールにて、入力ストリームiからbyte[]を読み込み、バッファ配列bに格納する(ステップS18)。最後に、write(byte[] b)のコールにて、バッファ配列bにおけるbyte[]を、出力ファイルストリームjに書き込む(ステップS19)。
【0108】
図19は、WriteAPIの処理手順を示すフローチャートである。本フローチャートは、絶対ファイルパスに対応するファイルエントリーがリムーバブルメディアに既に存在するかどうかを判定するステップ(ステップS21)、出力ファイルストリームjのファイル種別を判定するステップ(ステップS22)、1つ以上の空きのアロケーションユニットが存在するかどうかを判定するステップ(ステップS23)、出力ファイルストリームjのファイル種別を判定するステップ(ステップS27)、要求された書き込みは、追記又は上書きであるかを判定するステップ(ステップS28)を備え、これらの判定ステップの判定結果によって、処理を切り替える構造になっている。
【0109】
ステップS21における判定ステップは、出力ファイルストリームjが記録済みであるかどうかの判定であり、もし未記録であるなら、ステップS22〜ステップS26の処理に移行する。ステップS22は、出力ファイルストリームjのファイル種別が、AVストリーム形式の追加コンテンツであるか、非AVストリーム形式の追加コンテンツであるかの判定であり、もしAVストリーム形式の追加コンテンツであれば、1つ以上の空きのアロケーションユニットが存在するかどうかを判定する(ステップS23)。その結果、空きのアロケーションユニットが存在すれば、出力ファイルストリームjを空きのアロケーションユニットに書き込んで(ステップS24)、出力ファイルストリームjをCloseする(ステップS26)。
【0110】
ステップS23にあたっては、書き込もうとするAVストリーム形式の追加コンテンツが、アロケーションユニットサイズより小さいかどうか判定し、もし小さければ、1つのアロケーションユニットが存在するかどうかが判定されることになる。書き込もうとするAVストリーム形式の追加コンテンツが大きければ、そのAVストリーム形式の追加コンテンツを格納するに足りる2以上のアロケーションユニットが存在するかどうかを判定することになる。
【0111】
ステップS24における書き込みでは、書き込もうとするAVストリーム形式の追加コンテンツが、アロケーションユニットサイズより小さければ、1つのアロケーションユニットに当該AVストリームを書き込む。書き込もうとするAVストリーム形式の追加コンテンツがアロケーションユニットサイズより大きければ、AVストリーム形式の追加コンテンツをアロケーションユニットのサイズに分割して、確保された2以上のアロケーションユニットに、分割部分を書き込むことになる。こうした書き込みにおいて、書き込まれたAVストリーム形式の追加コンテンツ又はその分割部分が、アロケーションユニットのサイズに満たない場合、そのアロケーションユニットを構成する複数の論理ブロックは、一部が空き領域となる。
【0112】
空きのアロケーションユニットが無ければ、出力ファイルストリームjのうち、バッファ配列bで指定されている部分を、空き論理ブロックに書き込んでから、出力ファイルストリームjをCloseする(ステップS26)。
絶対ファイルパスに対応するファイルエントリーが存在していて、出力ファイルストリームjが記録済みである場合、ステップS21がYesになり、ステップS27に移行する。ステップS27は、出力ファイルストリームjのファイル種別を判定するステップであり、もし出力ファイルストリームjがAVストリーム形式の追加コンテンツであるなら、ステップS28において要求された書き込みは、追記又は上書きであるかを判定する。追記であれば、記録済みのAVストリーム形式の追加コンテンツを読み出して、出力ファイルストリームjとを一体にした上(ステップS29)、記録済みのAVストリーム形式の追加コンテンツを消去する(ステップS30)。その後、ステップS23に移行して、空きのアロケーションユニットをサーチした上、出力ファイルストリームjを空きのアロケーションユニットに書き込む(ステップS23、ステップS24)
図20は、アロケーションユニットに対する追記の処理過程を連続写真的な表記で描いた図であり、初期状態、中間状態、最終状態からなる。初期状態では、出力ファイルストリームjがメモリに存在していて、記録済みのアロケーションユニットには、00001.mtsが存在する状態を想定している。中間状態では、ステップS29の処理がなされている状態であり、矢印RD1に示すように、00001.mtsがメモリに読み出され、出力ファイルストリームjと一体化される。最終状態は、ステップS30、ステップS24の処理がなされている状態であり、00001.mtsと一体になった出力ファイルストリームjが矢印WR1に示すように空きのアロケーションユニットに書き込まれ、記録済みアロケーションユニットにおける00001.mtsが消去されている。
【0113】
図21は、アロケーションユニットに対する上書きの処理過程を連続写真的な表記で描いた図であり、初期状態、最終状態からなる。初期状態では、出力ファイルストリームjがメモリに存在していて、記録済みのアロケーションユニットには、00001.mtsが存在する状態を想定している。最終状態は、ステップS30、ステップS24の処理がなされている状態であり、矢印WR2に示すように、00001.mtsと一体になった出力ファイルストリームjが空きのアロケーションユニットに書き込まれ、記録済みアロケーションユニットにおける00001.mtsが消去されている。
【0114】
図22は、ファイル種別判別の処理手順を示すフローチャートである。ステップS31は、出力ファイルストリームjの拡張子Eが.mtsであるかどうかの判定であり、もしmtsであるなら、出力ファイルストリームjをAVストリーム形式の追加コンテンツであるとの判定結果を下す(ステップS33)。もしmtsでないなら、出力ファイルストリームjを非AVストリーム形式の追加コンテンツであると判定結果を下す(ステップS332)。
【0115】
図23は、追加コンテンツのファイル名を8.3形式に変換する処理の手順を示すフローチャートである。
ステップS43は、追加コンテンツiのファイル名におけるファイルボディiが、8文字以内であるかの判定である。ファイルボディが8文字以内ならステップS44において入力ストリームファイルiのファイルボディを、ファイルボディBとする。8文字以内でないなら、ステップS45を実行する。ステップS45は、追加コンテンツiのファイルボディが全て数字であるか/アルファベットを含むかについての判定である。
【0116】
もし、“全て数字”であるなら、ステップS46において追加コンテンツiのファイルボディの下8桁の数字をファイルボディBとする。追加コンテンツiのファイルボディが“全てアルファベット”であるなら、ステップS47においてアルファベットの大文字からイニシャル文字を生成して、そのイニシャル文字を、小文字にしたものをファイルボディBに採用する。
【0117】
ステップS48は、追加コンテンツiのファイル名における拡張子が“.m2ts”であるか否かの判定である。拡張子が“.m2ts”であるなら、“.mts”を追加コンテンツiの拡張子Eとする(ステップS49)。3文字以内でないなら、追加コンテンツiの拡張子の上から3桁の文字を拡張子Eとする(ステップS50)。以上の処理の後、ファイルボディBと、拡張子Eとの組合せ(フローチャートでは、“ファイル名B.E”と記載している)を用いて、追加コンテンツのリムーバブルメディアにおけるファイルパスを生成し(ステップS51)、マージ管理情報ファイルにおけるローカルストレージのファイルパスを、新たに生成した8.3形式のファイル名に置き換える(ステップS52)。
【0118】
図24はタイトル切り替え時に新旧マージ管理情報ファイルを置き換えて、仮想パッケージの再構築を行うための処理手順を示すフローチャートである。BD-Jモード用のタイトルが再生され(ステップS61)、タイトル再生中にJava(登録商標)アプリケーションは仮想パッケージ更新要求を行う(ステップS62)。
仮想パッケージ更新要求時に与える引数の値は、新マージ管理情報ファイルの位置を示すファイルパス、新マージ管理情報ファイルに対応する署名情報ファイルの位置を示すファイルパスである。
【0119】
仮想ファイルシステム23が仮想パッケージ更新要求を受けると、仮想ファイルシステム23の状態を「更新準備中」とし、指定された新マージ管理情報ファイルが、書き換えられないように、読み取り専用属性に変更する(ステップS63)。そして、仮想パッケージ更新要求時に指定された署名情報ファイルを用いて、新マージ管理情報ファイルの署名検証を行う(ステップS64)。
【0120】
ステップS64の署名検証に失敗した場合(ステップS65でNo)、仮想ファイルシステム23は仮想パッケージ更新要求を中断し、新マージ管理情報ファイルの属性を読み取り専用から仮想パッケージ更新要求前の元の属性に戻し、Java(登録商標)アプリケーションに対して、仮想パッケージ更新要求拒否通知イベントを投げる(ステップS69)。
ステップS64の署名検証に成功した場合(ステップS65でYes)、仮想ファイルシステム23は新マージ管理情報ファイルが参照しているビルドインメディア/リムーバブルメディア上のファイルの存在チェックを行い、それらのファイルをJava(登録商標)アプリケーションから読み取り専用となるように属性を変更する(ステップS66)。
【0121】
新マージ管理情報ファイルから参照されていて仮想パッケージ構築に必要なファイルがビルドインメディア/リムーバブルメディア上に存在しなかった場合(ステップS67でNo)、仮想ファイルシステム23は仮想パッケージ更新処理を中断し、ステップS63及びステップS66で属性を変更したファイルを仮想パッケージ更新要求前の元の属性に戻し、Java(登録商標)アプリケーションに対して、仮想パッケージ更新要求拒否通知イベントを投げる(ステップS69)。
【0122】
新マージ管理情報ファイルから参照されていて仮想パッケージ構築に必要なファイルがビルドインメディア/リムーバブルメディア上に全て存在していると確認でき、さらにそれらのファイルの属性をJava(登録商標)アプリケーションから読み取り専用に変更する処理が完了すると(ステップS67でYes)、仮想ファイルシステム23は仮想ファイルシステムの状態を「更新準備完了」とし、Java(登録商標)アプリケーションに対して、更新準備完了通知イベントを投げる。
【0123】
仮想ファイルシステム23の状態が「更新準備完了」となった後、タイトル切り替えが発生するのを待つ(ステップS68)。タイトル切り替えが発生すると、切り替え前のタイトルで起動していたJava(登録商標)アプリケーションは終了する(ステップS70)。その後、旧マージ管理情報ファイルが存在すれば、新マージ管理情報ファイルで上書きし、新旧マージ管理情報ファイルの置き換えを行う(ステップS71)。仮想パッケージ更新前がオリジナルのBD-ROMで再生されており、旧マージ管理情報ファイルがもともと存在しなかった場合は、旧マージ管理情報ファイルを上書きする代わりに、新マージ管理情報ファイルは、挿入されているBD-ROMのDiscIDに対応するDiscIDディレクトリの下に移動され、正規のマージ管理情報ファイル名にリネームされる。同様に、署名情報ファイルについても新旧ファイルの置き換え、移動を行う。
【0124】
新旧マージ管理情報ファイル、署名情報ファイルの置き換えもしくはファイルの移動を終えた後、新マージ管理情報ファイルを元に仮想パッケージを再構築する(ステップS72)。
仮想パッケージ再構築後、旧マージ管理情報ファイルから参照されていたが、新マージ管理情報ファイルからは参照されていないビルドインメディア/リムーバブルメディア上のファイルは読み取り専用属性が解除され、Java(登録商標)アプリケーションから読み書き可能になる。新マージ管理情報ファイル及び、新マージ管理情報ファイルが参照しているビルドインメディア/リムーバブルメディア上のファイルに関しては読み取り専用属性のままとなる。
【0125】
仮想パッケージの再構築を終えると、新たに構築した仮想パッケージを用いて、切り替え先のタイトル再生を開始する(ステップS61)。再生中の仮想パッケージに対応するマージ管理情報ファイル及び、そのマージ管理情報ファイルが参照しているビルドインメディア/リムーバブルメディア上のファイルは、仮想パッケージ再生中、常に読み取り専用属性となり、Java(登録商標)アプリケーションからは編集、削除することができない。
【0126】
図25は、Java(登録商標)アプリケーションが仮想パッケージ構築/更新要求を発行し、仮想パッケージが更新されるまでの、時間的な処理の流れを示す図である。
第1段目は、タイトルの再生時間軸であり、第2段目はアプリケーション#1の動作時間軸である。第3段目は、アプリケーション#2の動作時間軸であり、第4段目は、仮想ファイルシステムの状態遷移を示す時間軸である。
【0127】
本図の初期状態として想定するのは、新しいマージ管理情報ファイル、署名情報ファイルの格納が完了した状態である。つまり、追加コンテンツに加え、現在の仮想パッケージ構築に利用されているマージ管理情報ファイル、署名情報ファイルとは別に新たにマージ管理情報ファイル、署名情報ファイルをインターネット上のサーバからダウンロードして得て、ビルドインメディア上もしくはリムーバブルメディア上に格納した状態を初期状態として想定する。
【0128】
タイトル#1の再生中の時点t1において、BD-Jアプリケーションは、仮想ファイルシステム管理モジュール39が提供するAPIを通して仮想ファイルシステム23に仮想パッケージ構築/更新を要求したものとする。図中のrequestUpdating(“/org#1/disc#1/new.xml“,“/org#1/disc#1/new.sf“)は、この仮想パッケージ構築要求となるAPI呼出しである。この仮想パッケージ構築要求の引数“/org#1/disc#1/new.xml“,“/org#1/disc#1/new.sf“は、ビルドインメディア/リムーバブルメディア上に格納されている新マージ管理情報ファイル、署名情報ファイルの位置を指定したファイルパスである。時点t1は、この更新要求がなされた時点を示す。
【0129】
時点t1は、BD-Jアプリケーションからの仮想パッケージ構築/更新要求を受け取って、その状態を「更新準備中」に遷移する時点である。
ここで、「更新準備中」とは、指定された新マージ管理情報ファイル及び、新マージ管理情報ファイルが参照しているビルドインメディア/リムーバブルメディア上のファイルを読み取り専用に属性を変更する処理を含む。
【0130】
かかる処理の他、仮想パッケージ更新要求時にBD-Jアプリケーションから指定された署名情報ファイルを用いて、新マージ管理情報ファイルの署名検証を行い、さらに新マージ管理情報ファイルのファイル格納位置情報に記載されているファイルが全て指定の位置に存在するかのチェックを行う。
時点t2は、ファイル存在のチェックが終わった後、仮想ファイルシステムの状態を「更新準備完了」とする時点を示す。こうして状態を遷移させれば、Java(登録商標)アプリケーションに対して、更新準備完了通知イベントを投げる。新マージ管理情報ファイルの署名検証、もしくはファイル格納位置情報に記載されているファイルの存在チェックに失敗した場合、仮想ファイルシステム23は更新要求を拒否し、仮想ファイルシステム管理モジュール39を通じて更新要求拒否通知イベントをBD-Jアプリケーションに対して投げ、仮想ファイルシステム23の状態を「更新準備中」となる前の状態(「仮想パッケージ再生状態」もしくは「BD-ROM再生状態」)に戻す。「仮想パッケージ再生状態」とは、BD-ROMが再生装置にロードされ、仮想ファイルシステム23により仮想パッケージとして再生中であり、保留中の仮想パッケージ更新要求がない状態を指す。「BD-ROM再生状態」とは、BD-ROMが再生装置にロードされ、そのままオリジナルのBD-ROMとして再生中であり、同じく保留中の仮想パッケージ更新要求がない状態を指す。
【0131】
時点t3は、仮想ファイルシステム23の状態が「更新準備完了」となった後の時点を示す。タイトル切り替えが発生すると、仮想ファイルシステム23は仮想パッケージ更新要求時に指定された新マージ管理情報ファイルを用いて、旧マージ管理情報ファイル(現在の仮想パッケージ構築に利用されているマージ管理情報ファイル)を上書きすることにより、旧マージ管理情報ファイルを新マージ管理情報ファイルに置き換える。
【0132】
仮想パッケージ更新前がオリジナルのBD-ROMの再生中であり、旧マージ管理情報ファイルがもともと存在しなかった場合は、旧マージ管理情報ファイルを上書きする代わりに、新マージ管理情報ファイルを、挿入されているBD-ROMのDiscIDに対応するDiscIDディレクトリの下に移動する。こうすることで新マージ管理情報は、正規のマージ管理情報ファイル名(bumf.xml)にリネームされる。署名情報ファイルもマージ管理情報ファイル同様に新旧署名情報ファイルの置き換えを行う。新旧マージ管理情報ファイル、署名情報ファイルの置き換え、もしくは新マージ管理情報ファイル、署名情報ファイルの移動が終わった後、仮想ファイルシステム23は、挿入されているBD-ROMのDiscIDに対応するDiscIDディレクトリの下に格納されている新マージ管理情報を元に仮想パッケージを再構築し、仮想パッケージのファイル構成を更新する。
【0133】
時点t4は、かかる更新を終えた時点であり、ビルドインメディアドライブ・リムーバブルメディアドライブ22は、“仮想パッケージ再生状態”になる。仮想パッケージを更新した後も、仮想パッケージ再生状態である期間は、新マージ管理情報ファイル及び、新マージ管理情報ファイルのファイル格納位置情報が指し示すビルドインメディア/リムーバブルメディア上のファイルは読み取り専用に属性のままとなる。ただし、旧マージ管理情報ファイルから参照されていて、新マージ管理情報ファイルから参照されていないファイルは読み取り専用属性が解除され、Java(登録商標)アプリケーションから読み書き可能になる。
【0134】
(第2実施形態)
追加コンテンツを追加コンテンツ格納領域を書き込もうとする際、連続データ領域又は通常データ領域における空きの論理ブロックが不足することがある。本実施形態は、空きの論理ブロックが不足した際のエラーハンドリングを考慮した実施形態である。
図26は、連続データ領域の空き領域が不足していた場合のエラーハンドリングを考慮した、ローカルストレージの書込手順を示すフローチャートである。本図のフローチャートは、図19をベースとして作図されており、このベースとなるフローチャートにおいて、ステップS22(ステップS27)、ステップS23、ステップS24、ステップS25に改良を加える形で記載されている。
【0135】
ステップS22、ステップS27で対象ファイルがAVストリーム形式の追加コンテンツであると判断された場合、連続データ領域にAVストリームを書込むことが可能なアロケーションユニットがあるかどうかを判断する(ステップS23)。連続データ領域の空き容量が確認できた場合は、ステップS24において、連続データ領域における空きのアロケーションユニットにAVストリームを書き込む。
【0136】
連続データ領域の空き容量が不足しており、空きのアロケーションユニットが存在しない場合、フラグメンテーションによりリアルタイムの読み込み性能が保証できない可能性があるため、ユーザに対し、再生に支障が出る可能性があることを通知した上で(S81)、ステップS25に移行する。図27は、連続データ領域に書込みできなかった場合におけるユーザに対する通知の一例である。図27ではストレージの空き容量が十分存在しないこと、そのため正しく書き込みできなかったこと、再生に支障が出る可能性があることを画面に表示し、ユーザに通知している。
【0137】
図28は、AVストリームの書込みに失敗した場合のエラーハンドリングを考慮した、ローカルストレージの書込手順を示すフローチャートである。本図のフローチャートは、ステップS22(ステップS27)、ステップS23、ステップS24、ステップS25に改良を加える形で記載されている。
図26のフローチャートでは、連続データ領域に空きがなく、通常データ領域に空きがある場合は、AVストリームを通常データ領域に書込むこととしているが、この場合再生に支障が出る可能性がある。図28のフローチャートでは、再生品質を重視し、通常データ領域に空きがあっても、連続データ領域に空きがなければ(ステップS23で空き無し)、AVストリームの書込みに失敗したとして、その旨をユーザに通知している(ステップS83)
一方、通常データ領域に空き容量がなければ、書込み処理を行わず、ステップS83においてユーザに対し書込みに失敗したことを通知する。
【0138】
図29は、書込み処理に失敗したことをユーザに示す画面表示の一例である。ストレージに空き容量が十分存在しないこと、そのために書込みに失敗したことを通知すると共に不要データ消去を促すメッセージを出力している。
以上のように本実施例によれば、Java(登録商標)アプリケーションから様々な種類のファイルが含まれた仮想パッケージの追加コンテンツの書込み要求が発行された場合においても、追加されたストリームのリアルタイム再生を保証しつつストレージ容量の効率利用が可能となる。
【0139】
(第3実施形態)
本実施形態は、通常データ領域及び連続データ領域のどちらかに追加コンテンツを書き込んでおき、仮想パッケージの構築が要求された際、事後的に、追加コンテンツを移動するという手法で、通常データ領域及び連続データ領域における配置を完成させようという改良である。本実施形態における配置には、図30に示されるものと、図31に示されるもの、図32に示されるものとがある。
【0140】
図30(a)は、第3実施形態におけるローカルストレージの書込み処理のフローチャートである。本フローチャートでは、書込み前のファイル種類判別を行わず、全て通常データ領域へ書込む(S100)。
図30(b)は、第3実施形態におけるファイル種類判別のフローチャートである。ファイルの書込みは一旦全て通常データ領域へ書込んでおき、Java(登録商標)アプリケーションから仮想パッケージ更新要求があったタイミングで、Java(登録商標)アプリケーションから指定された新マージ管理情報ファイルを元にファイル種類判別を行う(S101)。ここでのファイル種別の判別は、新マージ管理情報から、仮想パッケージ上においてAVストリーム形式の追加コンテンツファイルとしてマッピングされているファイル、すなわち、仮想パッケージ上において“BDMV/STREAM/xxxxx.m2ts“というファイル名として扱われるファイルに関してはAVストリーム形式の追加コンテンツと判断するというものである。
【0141】
もし、AVストリーム形式の追加コンテンツが存在すれば(ステップS102)、空きアロケーションユニットが存在するかどうかを判定して(ステップS103)空きアロケーションユニットがあれば、AVストリーム形式の追加コンテンツファイルを、アロケーションユニットに移動する(ステップS104)。こうすることで、AVストリーム形式の追加コンテンツを連続データ領域に再配置する。
【0142】
図31(a)は、空きアロケーションユニットが存在するかどうかの判定を行い(ステップS110)、もし存在すれば、書込み要求された追加コンテンツを一旦全ての連続データ領域へ書き込む(S111)。
図31(b)は、Java(登録商標)アプリケーションからの仮想パッケージ更新要求時の処理手順を示すフローチャートである。ステップS121では、新マージ管理情報から、仮想パッケージ上において非ストリームファイルとなっているファイルを抽出することで、各追加コンテンツのファイル種別を判別する(ステップS121)。その後、非AVストリーム形式の追加コンテンツが存在するかどうかの判定を行い(ステップS122)、もし存在すれば、それらのファイルを通常データ領域へ移動して再配置する(S123)。
【0143】
図32は、書き込みが要求された追加コンテンツを一旦通常データ領域に書き込む処理手順を示すフローチャートである。書き込みが要求された追加コンテンツを一旦通常データ領域に書き込み(ステップS131)、その後、ステップS132、ステップS133の判定ステップを実行する。ステップS132は、書き込みがなされた追加コンテンツが一定サイズ以上であるか否かの判定であり、ステップS133は、空きのアロケーションユニットが存在するか否かの判定である。もしこれらのステップS1332ステップS133の双方がYesであるなら、ステップS134において一定サイズ以上の追加コンテンツをアロケーションユニットに移動する。ステップS132、ステップS133のどちらかがNoであれば、処理を終了する。
【0144】
以上のように本実施例によれば、データ書込み時に事前のファイル判別処理を行うことなく、必要に応じてストリーム/非ストリームファイルをそれぞれ連続データ領域、通常データ領域に再配置することが出来る。
(第4実施形態)
第1実施形態では、リムーバブルメディアへの書き込みの対象となる追加コンテンツがAVストリームであるか否かの判断対象に拡張子を採用したが、本実施形態は、Java(登録商標)アプリケーションから書込が要求されたAVストリームの最初のバイト列からAVストリームか否かを判断するものである。
【0145】
図33は、書込が要求されたAVストリームの最初のバイトを判定することで、AVストリームか否かの判定を行うフローチャートである。ステップS91は、出力ストリームファイルjのヘッダデータがAVストリームか否かを判定するステップであり、もし出力ストリームファイルjのヘッダデータがAVストリームであれば、ステップS92において、出力ストリームファイルjがAVストリームであるとの判定結果を下す。もし出力ストリームファイルjのヘッダデータがAVストリームでなければ、ステップS93において、出力ストリームファイルjがAVストリームでないとの判定結果を下す。
【0146】
以上のように本実施形態によれば、拡張子が偽装された場合やストリームの拡張子が不定の場合にも対応することができる。
(第5実施形態)
本実施形態は、再生装置102がネットワーク接続されておらず、スタンドアローンで使用されている場合に、ユーザが所持するパソコンを、記録装置として利用する実施形態である。かかる記録装置は、再生装置102に付属しているソフトウェアキットをパソコンにインストールすることで構成されるものである。
【0147】
このソフトウェアキットは、図17から図19のフローチャートに示される制御手順をMPUに実行させるものである。
これまでの実施形態で述べたように、リムーバブルメディアには、BUDAディレクトリエントリー、CertIDディレクトリエントリー、OrganizationIDディレクトリエントリー、DiscIDディレクトリエントリーが存在しており、リムーバブルメディアおける追加コンテンツ格納領域は、BUDAディレクトリ名、CertIDディレクトリ名、OrganizationIDディレクトリ名、DiscIDディレクトリ名を用いたファイルパスにて特定されるので、これらを参照すれば、たとえ自身にはBD-ROMを再生する能力が無くても、かかるリムーバブルメディアに、どのようなBD-ROMコンテンツの追加コンテンツを記録することができるかを認識することができる。
【0148】
そこで記録装置は、追加コンテンツ格納領域を特定するファイルパス、つまり、BUDAディレクトリ名、CertIDディレクトリ名、OrganizationIDディレクトリ名、DiscIDディレクトリ名を用いたファイルパスを参照することで、ダウンロード可能な追加コンテンツが存在するかどうかの監視を行う。かかる監視は、OrganizationIDディレクトリ名に示される組織名に基づきコンテンツのプロバイダが運営するWWWサーバのWWWサイト、つまりコンテンツプロバイダにおける公式のWWWサイトをアクセスして、リムーバブルメディアにおけるDiscIDディレクトリに対応するBD-ROMの記録内容について最新のアップデート状況を監視することでなされる。記録装置が、ネットワーク接続されている場合、こうしたアップデート状況を常時監視しており、もしBD-ROMコンテンに対する追加コンテンツの告知があれば、記録装置は、ネットワークを介して、新たな追加コンテンツをダウンロードしてリムーバブルメディアに書き込む。こうして追加コンテンツがリムーバブルメディアに書き込まれた後、かかる追加コンテンツが記録されたリムーバブルメディアが、再生装置102に装填された場合、再生装置102は、仮想パッケージの構築を行うことができる。
【0149】
かかる記録装置による追加コンテンツの書き込みも、図17〜図19のフローチャートに従ってなされるので、AVコンテンツは、追加コンテンツ格納領域に書き込まれることになる。
以上のように本実施形態によれば、BD-ROMの再生能力がない記録装置によって追加コンテンツ格納領域への追加コンテンツの書き込みがなされる場合でも、AVストリーム形式の追加コンテンツについては、連続データ領域に書き込まれるので、AVストリーム形式の追加コンテンツにおけるAV再生の安定性を維持することができる
(第6実施形態)
本実施形態は、連続データ領域に記録されるべきAVストリームが、どのようなものであるかを説明する。対比のため、BD-ROMに記録されるべきAVストリームについて説明する。
【0150】
図34は、BD-ROMにおけるAVストリームに多重化されるエレメンタリストリームを示す図である。BD-ROMにおけるAVストリームのSTC-Sequenceに多重化されるエレメンタリストリームは、0x1011のPIDをもつPrimaryビデオストリーム、0x1100から0x111FまでのPIDをもつプライマリオーディオストリーム、0x1200から0x121FまでのPIDをもつ32本のPGストリーム、0x1400から0x141FまでのPIDをもつ32本のIGストリーム、0x1B00から0x1B1FまでのPIDをもつ32本のSecondaryビデオストリームである。
【0151】
5は、BD-ROMに記録されているエレメンタリストリームにおけるPID割当マップを示す図である。PID割当マップの左欄は、PIDが取りうる値の複数のゾーンを示す。右欄は、各ゾーンに割り当てられるエレメンタリストリームを示す。この記述法に従って図を参照すると本図から、以下のことが導くことができる。つまりPIDが取りうる値のうち、0x0100のゾーンは、Program_mapに割り当てられ、0x1001のゾーンはPCRに、0x1011のゾーンはPrimaryビデオストリームに、0x1100から0x111Fまでのゾーンはプライマリオーディオストリームに、0x1200から0x121FまでのゾーンはPGストリームに、0x1400から0x141FまでのゾーンはIGストリームに、0x1B00から0x1B1FまでのゾーンはIN_MUX_Secondaryビデオストリームに割り当てられている。
【0152】
以上がBD-ROMに記録されるべきAVストリームについての説明である。続いて、追加コンテンツ格納領域に配されるべきAVストリームの詳細について説明する。
図36は、追加コンテンツ格納領域に配されるべきAVストリームに多重化されるエレメンタリストリームを示す図である。追加コンテンツ格納領域に配されるべきAVストリームに多重化されるエレメンタリストリームは、0x1800のPIDをもつtextSTストリーム、0x1A00から0x1A1FまでのPIDをもつプライマリオーディオストリーム、0x1B00から0x1B1FまでのPIDをもつ32本のOut_of_MUX_Secondaryビデオストリーム、0x1200から0x121FまでのPIDをもつ32本のPGストリーム、0x1400から0x141FまでのPIDをもつ32本のIGストリームである。この図14に示したセカンダリビデオストリームのように、プライマリビデオストリームと異なるAVストリームに多重化されるセカンダリビデオストリームを、“Out_of_MUX_セカンダリビデオストリーム”という。またセカンダリビデオストリームに限らず、プライマリビデオストリームと異なるAVストリームに多重化されるエレメンタリストリーム全般を、“Out_of_MUXストリーム”という。
【0153】
図37は、追加コンテンツ格納領域に配されるべきAVストリームに多重化されたエレメンタリストリームにおけるPID割当マップを示す図である。PID割当マップの左欄は、PIDが取りうる値の複数のゾーンを示す。右欄は、各ゾーンに割り当てられるエレメンタリストリームを示す。この記述法に従って図を参照すると本図から、以下のことが導くことができる。つまりPIDが取りうる値のうち、0x0100のゾーンは、Program_mapに割り当てられ、0x1001のゾーンはPCRに、0x1200から0x121FまでのゾーンはPGストリームに、0x1400から0x141FまでのゾーンはIGストリームに、0x1800のゾーンは、textSTストリームに、0x1A00から0x1A1Fまでのゾーンはセカンダリオーディオストリームに割り当てられている。0x1B00から0x1B1FまでのゾーンはSecondaryビデオストリームに割り当てられている。
<プライマリビデオストリーム>
プライマリビデオストリームは、映画作品の本編を構成するストリームであり、SD画像、HD画像であるピクチャデータから構成される。ビデオストリームには、VC-1のビデオストリーム、MPEG4-AVCのビデオストリーム、MPEG2-Videoのビデオストリームといった形式が存在する。MPEG4-AVCのビデオストリームでは、IDRピクチャ,Iピクチャ,Pピクチャ,Bピクチャに、PTS、DTSといったタイムスタンプが付され、このピクチャの単位で、再生制御がなされる。このように、PTS、DTSが付されて、再生制御の単位となる、ビデオストリームの一単位を“VideoPresentation Unit”という。
【0154】
<セカンダリビデオストリーム>
セカンダリビデオストリームは、映画作品のコメンタリィ等を構成するストリームであり、このセカンダリビデオストリームの再生映像を、プライマリビデオストリームの再生映像内に合成することで、ピクチャインピクチャが実行される。ビデオストリームには、VC-1のビデオストリーム、MPEG4-AVCのビデオストリーム、MPEG2-Videoのビデオストリームといった形式が存在し、“VideoPresentation Unit”をもつ。セカンダリビデオストリームのフォーマットには、525/60ビデオフォーマット、625/50ビデオフォーマット、1920×1080フォーマット、1280×720フォーマットがある。
【0155】
<プライマリオーディオストリーム>
プライマリオーディオストリームは、映画作品の主音声を表すストリームであり、LPCMオーディオストリーム、DTS-HDオーディオストリーム、DD/DD+オーディオストリームやDD/MLPオーディオストリームといった形式が存在する。オーディオストリームにおけるオーディオフレームに、タイムスタンプが付され、このオーディオフレームの単位で、再生制御がなされる。このように、タイムスタンプが付されて、再生制御の単位となる、オーディオストリームの一単位を“AudioPresentation Unit”という。
【0156】
<セカンダリオーディオストリーム>
BD-ROMには記録されていないが、映画作品の副音声を表すようなオーディオストリームである。
<PGストリーム>
PGストリームは、言語毎の字幕を構成するグラフィクスストリームであり、英語、日本語、フランス語というように複数言語についてのストリームが存在する。PGストリームは、PCS(PresentationControl Segment)、PDS(Pallet Define Segment)、WDS(Window Define Segment)、ODS(ObjectDefine Segment)という一連の機能セグメントからなる。ODS(Object Define Segment)は、字幕たるグラフィクスオブジェクトを定義する機能セグメントである。
【0157】
WDS(Window Define Segment)は、画面におけるグラフィクスオブジェクトのビット量を定義する機能セグメントであり、PDS(PalletDefine Segment)は、グラフィクスオブジェクトの描画にあたっての、発色を規定する機能セグメントである。PCS(PresentationControl Segment)は、字幕表示におけるページ制御を規定する機能セグメントである。かかるページ制御には、Cut-In/Out、Fade-In/Out、ColorChange、Scroll、Wipe-In/Outといったものがあり、PCSによるページ制御を伴うことにより、ある字幕を徐々に消去しつつ、次の字幕を表示させるという表示効果が実現可能になる。
【0158】
<テキスト字幕(textST)ストリーム>
textSTストリームは、字幕の内容をキャラクタコードで現したストリームである。textSTストリームは、プライマリビデオストリームと同じAVストリームに多重化されていないが、字幕を現すストリームである。このPresentationGraphicsストリームと、textSTストリームとの組みは、BD-ROM規格において、“PGTextSTストリーム”と呼ばれる。
【0159】
<IGストリーム>
IGストリームは、対話制御を実現するグラフィクスストリームである。IGストリームにて定義される対話制御は、DVD再生装置上の対話制御と互換性がある対話制御である。かかるIGストリームは、ICS(InteractiveComposition Segment)、PDS(Palette Difinition Segment)、ODS(Object DefinitionSegment)と呼ばれる機能セグメントからなる。ODS(Object Definition Segment)は、グラフィクスオブジェクトを定義する機能セグメントである。このグラフィクスオブジェクトが複数集まって、対話画面上のボタンが描画される。PDS(PaletteDifinition Segment)は、グラフィクスオブジェクトの描画にあたっての、発色を規定する機能セグメントである。ICS(InteractiveComposition Segment)は、ユーザ操作に応じてボタンの状態を変化させるという状態変化を実現する機能セグメントである。ICSは、ボタンに対して確定操作がなされた際、実行すべきボタンコマンドを含む。
【0160】
以上が追加コンテンツ格納領域に記録されるAVストリームの説明である。続いて、本実施形態にかかる再生制御エンジン24の詳細について説明する。
図38は、再生制御エンジン24の内部構成を示す図である。再生制御エンジン24は、本図に示すように、リードバッファ1a,b、ATCカウンタ2a,b,SourceDepacketizer2a,b、ATCカウンタ2a,b、STCカウンタ3a,b、PID Filter3a,b、Transport Buffer(TB)4a、ElementaryBuffer(EB)4c、ビデオデコーダ4d、Re-order Buffer4e、Decoded Picture Buffer4f、ビデオプレーン4g、TransportBuffer(TB)5a、Elementary Buffer(EB)5c、ビデオデコーダ5d、Re-order Buffer5e、DecodedPicture Buffer5f、ビデオプレーン5g、バッファ6a,b、バッファ7a,b、オーディオデコーダ8a,b、ミキサー9a、スイッチ10a,b,c,d,e、TransportBuffer(TB)11a、Interactive Graphicsデコーダ11b、Interactive Graphicsプレーン11c、TransportBuffer(TB)12a、バッファ12b、Text based subtitleデコーダ12c、Transport Buffer(TB)13a、PresentationGraphicsデコーダ13b、Presentation Graphicsプレーン 13cから構成される。尚本図では、再生装置の出力段については、示していない。出力段については、別図に内部構成を示して説明することにする。
【0161】
リードバッファ(RB)1aは、ローカルストレージ22から読み出されたSourceパケット列を蓄積する。
リードバッファ(RB)1bは、BD-ROMから読み出されたSourceパケット列を蓄積する。
ATC Counter2aは、ローカルストレージ22におけるAVストリームを構成するSourceパケットのうち、再生区間の最初に位置するもののATSを用いてリセットされ、以降ソースデパケッタイザ2aにATCを出力してゆく。
【0162】
ATC Counter2bは、BD-ROMにおけるAVストリームを構成するSourceパケットのうち、再生区間の最初に位置するもののATSを用いてリセットされ、以降ソースデパケッタイザ2bにATCを出力してゆく。
ソースデパケッタイザ(Source De-packetizer)2aは、ローカルストレージ22におけるAVストリームを構成するSourceパケットからTSパケットを取り出して、送出する。この送出にあたって、ATSに応じてデコーダへの入力時刻を調整する。具体的には、ATCCounter2aが生成するATCの値と、SourceパケットのATS値とが同一になった瞬間にTS_Recording_Rateで、そのTSパケットだけをPIDFilter3aに転送する。
【0163】
ソースデパケッタイザ(Source De-packetizer)2bは、BD-ROMにおけるAVストリームを構成するSourceパケットからTSパケットを取り出して、送出する。この送出にあたって、各TSパケットのATSに応じてデコーダへの入力時刻を調整する。具体的には、ATCCounter2bが生成するATCの値と、SourceパケットのATS値とが同一になった瞬間にTS_Recording_Rateで、そのTSパケットだけをPIDFilter3bに転送する。
【0164】
STC Counter3aは、ローカルストレージ22におけるAVストリームのPCRによってリセットされ、STCを出力する。PIDフィルタ3aは、このSTCを参照して、多重分離を行う。
STC Counter3bは、BD-ROMにおけるAVストリームのPCRによってリセットされ、STCを出力する。
PID Filter3aは、ローカルストレージ22におけるAVストリーム用の多重分離部であり、ソースデパケッタイザ2aから出力されたSourceパケットのうち、所望のPID参照値をもつものを、夫々オーディオデコーダ8b、InteractiveGraphicsデコーダ11b、Presentation Graphicsデコーダ13bに出力する。このようにPID Filter3aを通過して各デコーダに入力されるエレメンタリストリームは、ローカルストレージ22におけるAVストリームのPCRに従って、デコード及び再生に供されることになる。
【0165】
PID Filter3bは、BD-ROMにおけるAVストリーム用の多重分離部であり、ソースデパケッタイザ2bから出力されたSourceパケットのうち、所望のPID参照値をもつものを、夫々ビデオデコーダ4d、ビデオデコーダ5d、オーディオデコーダ8a、InteractiveGraphicsデコーダ11b、Presentation Graphicsデコーダ13bに出力する。各デコーダは、PID Filter3bを経由したエレメンタリストリームを受け取って、BD-ROMにおけるAVストリームのPCRに従いデコードから再生の処理を行う。このようにPIDFilter3bを通過して各デコーダに入力されるエレメンタリストリームは、BD-ROMにおけるAVストリームのPCRに従って、デコード及び再生に供されることになる。
【0166】
Transport Buffer(TB)4aは、プライマリビデオストリームに帰属するTSパケットがPID Filter3bから出力された際、一旦蓄積されるバッファである。
Elementary Buffer(EB)4cは、符号化状態にあるピクチャ(Iピクチャ、Bピクチャ、Pピクチャ)が格納されるバッファである。
デコーダ(DEC.)4dは、プライマリビデオを構成する個々のピクチャを所定の復号時刻(DTS)ごとにデコードすることにより複数フレーム画像を得て、ビデオプレーン4に書き込む。
【0167】
Ducoded Picture Buffer4eは、デコーダ4dのデコードにより得られた非圧縮のピクチャを格納しておくバッファである。
Re-order Buffer4fは、復号されたピクチャの順序を、符号化順序から表示順序に入れ替えるためのバッファである。
プライマリビデオプレーン4gは、プライマリビデオを構成する一ピクチャ分の画素データを格納しておくためのメモリ領域である。画素データは、16ビットのYUV値で表現され、ビデオプレーン4gは、1920×1080という解像度にあたる画素データを格納している。
【0168】
Transport Buffer(TB)5aは、セカンダリビデオストリームに帰属するTSパケットがPID Filter3bから出力された際、一旦蓄積されるバッファである。
Elementary Buffer(EB)5cは、符号化状態にあるピクチャ(Iピクチャ、Bピクチャ、Pピクチャ)が格納されるバッファである。
デコーダ(DEC.)5dは、セカンダリビデオを構成する個々のピクチャを所定の復号時刻(DTS)ごとにデコードすることにより複数フレーム画像を得て、ビデオプレーン5に書き込む。
【0169】
Ducoded Picture Buffer5eは、デコーダ5dのデコードにより得られた非圧縮のピクチャを格納しておくバッファである。
Re-order Buffer5fは、復号されたピクチャの順序を、符号化順序から表示順序に入れ替えるためのバッファである。
セカンダリビデオプレーン5gは、セカンダリビデオを構成する一ピクチャ分の画素データを格納しておくためのメモリ領域である。画素データは、16ビットのYUV値で表現され、セカンダリビデオは、1920×1080という解像度にあたる画素データを格納している。
【0170】
バッファ6aは、デマルチプレクサ3aから出力されたTSパケットのうち、プライマリオーディオストリームを構成するものを、先入れ先だし式に格納して、オーディオデコーダ7aに供する。
バッファ6bは、デマルチプレクサ3bから出力されたTSパケットのうち、セカンダリオーディオストリームを構成するものを、先入れ先だし式に格納して、オーディオデコーダ7bに供する。
【0171】
オーディオデコーダ7aは、バッファ6aに格納されたTSパケットをPESパケットに変換して、このPESパケットに対しデコード処理を行い、非圧縮状態のLPCM状態のオーディオデータを得て出力する。これによりプライマリオーディオストリームにおけるデジタル出力がなされる。
オーディオデコーダ7bは、バッファ6bに格納されたTSパケットをPESパケットに変換して、このPESパケットに対しデコード処理を行い、非圧縮状態のLPCM状態のオーディオデータを得て出力する。これによりセカンダリオーディオストリームにおけるデジタル出力がなされる。
【0172】
ミキサ9aは、オーディオデコーダ7aから出力されるLPCM状態のデジタルオーディオと、オーディオデコーダ7bから出力されるLPCM状態のデジタルオーディオとをミキシングする。
スイッチ10aは、BD-ROMから読み出されたTSパケット、ローカルストレージ200から読み出されたTSパケットのどちらかを、選択的にセカンダリビデオデコーダ5d側に供給する。
【0173】
スイッチ10bは、BD-ROMから読み出されたTSパケット、ローカルストレージ200から読み出されたTSパケットのどちらかを、選択的にPresentationGraphicsデコーダ13b側に供給する。
スイッチ10cは、BD-ROMから読み出されたTSパケット、ローカルストレージ200から読み出されたTSパケットのどちらかを、選択的にInteractiveGraphicsデコーダ11b側に供給する。
【0174】
スイッチ10dは、デマルチプレクサ3aにより多重分離がなされた、プライマリオーディオストリームを構成するTSパケット、デマルチプレクサ3bにより多重分離がなされたプライマリオーディオストリームを構成するTSパケットのうちどちらをオーディオデコーダ8aに供給するかを切り換えるスイッチである。
スイッチ10eは、デマルチプレクサ3aにより多重分離がなされた、セカンダリオーディオストリームを構成するTSパケット、デマルチプレクサ3bにより多重分離がなされたセカンダリオーディオストリームを構成するTSパケットのどちらを、オーディオデコーダ8bに供給するかを切り換えるスイッチである。
【0175】
Transport Buffer(TB)11aは、IGストリームに帰属するTSパケットが一旦蓄積されるバッファである。
Interactive Graphics(IG)デコーダ11bは、BD-ROM100又はローカルストレージ200から読み出されたIGストリームをデコードして、非圧縮グラフィクスをIGプレーン12に書き込む。
【0176】
Interactive Graphics(IG)プレーン11cは、IGデコーダ11bによるデコードで得られた非圧縮グラフィクスを構成する画素データが書き込まれる。
Transport Buffer(TB)12aは、textSTストリームに帰属するTSパケットが一旦蓄積されるバッファである。
Buffer(TB)12bは、textSTストリームを構成するPESパケットが一旦蓄積されるバッファである。
【0177】
Text Based Subtitleデコーダ12cは、BD-ROM100又はローカルストレージ22から読み出されたtextSTストリームにおいて、キャラクタコードを用いて、表現されている字幕をビットマップに展開して、PGプレーン13cに書き込む。この展開には、BD-ROM100又はローカルストレージ22に格納されているフォントデータが用いられるので、textSTストリームのデコードには、前もってかかるフォントデータを読み込んでおく必要がある。
【0178】
Transport Buffer(TB)13aは、PGストリームに帰属するTSパケットが一旦蓄積されるバッファである。
Presentation Graphics(PG)デコーダ13bは、BD-ROM又はローカルストレージ22から読み出されたPGストリームをデコードして、非圧縮グラフィクスをPresentationGraphicsプレーン14に書き込む。PGデコーダ13bによるデコードにより、字幕が画面上に現れることになる。
【0179】
Presentation Graphics(PG)プレーン13cは、一画面分の領域をもったメモリであり、一画面分の非圧縮グラフィクスを格納することができる。
PSRセット17は、再生装置に内蔵されるレジスタであり、64個のPlayer Setting/Status Register(PSR)と、4096個のGeneralPurpose Register(GPR)とからなる。Player Setting/Status Registerの設定値(PSR)のうち、PSR4〜PSR8は、現在の再生時点を表現するのに用いられる。
【0180】
以上が、AV再生部24の内部構成である。続いて、AV再生部24の出力段の内部構成について説明する。図39は、再生装置の出力段の構成を示す図である。本図に示すようにAV再生部24の出力段は、1−α3乗算部15a、Scalling・Positioning部15b、α3乗算部15c、加算部15d、1−α1乗算部15e、α1乗算部15f、加算部15g、1−α2乗算部15h、α2乗算部15i、加算部15j、HDMI送受信部16から構成される。
【0181】
1−α3乗算部15aは、ビデオデコーダ4gに格納されている非圧縮のデジタルピクチャを構成する画素の揮度に、透過率1-α3を乗じる。
Scalling・Positioning部15bは、ビデオプレーン5gに格納されている非圧縮のデジタルピクチャを拡大・縮小する処理(Scalling)を施し、また配置位置を変更する処理(Positioning)を行う。この拡大・縮小は、メタデータにおけるPiP_scaleに基づき、配置位置の変更は、メタデータにおけるPiP_horizontal_position、PiP_vertical_positionに基づく。
【0182】
α3乗算部15cは、Scalling・Positioning部15bにより、Scalling、Positioningが施された非圧縮のピクチャを構成する画素の揮度に対し、透過率α3を乗じる。
加算部15dは、α3乗算部15cにより画素毎に透過率α3が乗じられた非圧縮デジタルピクチャと、1−α3乗算部15aにより画素毎に透過率1-α3が乗じられた非圧縮デジタルピクチャとを合成して、合成ピクチャを得る。
【0183】
1−α1乗算部15eは、加算部15dにより合成がなされたデジタルピクチャを構成する画素の揮度に、透過率1-α1を乗じる。
α1乗算部15fは、Presentation Graphicsデコーダ13cに格納されている非圧縮グラフィクスを構成する画素の揮度に、透過率α1を乗じる。
加算部15gは、1−α1乗算部15eにより画素毎に透過率1-α1が乗じられた非圧縮デジタルピクチャと、α1乗算部15fにより画素毎に透過率α1が乗じられた非圧縮グラフィクスとを合成して、合成ピクチャを得る。
【0184】
1−α2乗算部15hは、加算部15gにより合成がなされたデジタルピクチャを構成する画素の揮度に、透過率1-α2を乗じる。
α2乗算部15iは、Interactive Graphicsデコーダ11cに格納されている非圧縮グラフィクスを構成する画素の揮度に、透過率α2を乗じる。
加算部15jは、1−α2乗算部15hにより画素毎に透過率1-α2が乗じられた非圧縮デジタルピクチャと、α2乗算部15iにより画素毎に透過率α2が乗じられた非圧縮グラフィクスとを合成して、合成ピクチャを得る。
【0185】
HDMI送受信部16は、HDMI(HDMI:High Definition Multimedia Interface)を介して接続された他の機器から、その機器に関する情報を受信とすると共に、加算部15jの合成により得られたデジタル非圧縮のビデオを、ミキサー9aにより合成がなされたオーディオデータと共に、HDMIを介して接続された他の機器に送信する。
以上に述べた、textSTストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、Out_of_MUX_Secondaryビデオストリーム、PGストリーム、IGストリームが、追加コンテンツ格納領域における連続データ領域に記録されるので、プライマリオーディオストリームと、セカンダリオーディオストリームとのミキシング出力や、ピクチャインピクチャ再生が、途切れることなく、スムーズに再生されることになる。
【0186】
(第7実施形態)
第1実施形態ではAVストリームを、アロケーションユニットに記録することにしたが、本実施形態では、AVストリームを複数のエクステントに分割して記録する改良である。この場合、エクステント一個当たりの最小データ長を検討せねばならない。この最小データ長を“Sa”とする。AVストリームは、本来BD-ROMに記録されて再生装置に供給されるものであるため、BD-ROMのような光ディスクからの再生時に、再生の途切れがないことが保証されるのであれば、リムーバブルメディアからの読み出し時においても、AV再生の途切れがないことが保証されると考えられる。
【0187】
リムーバブルメディアから読み出されたTSパケットは、リードバッファに格納された上、デコーダに出力されるが、リードバッファへの入力が、Rudというビットレートで行われ、ECCブロックにおける論理ブロック数をSeccとした場合、
Toverheadは、
Toverhead≦(2×Secc×8)/Rud=20m秒
という計算で与えられる。
【0188】
リムーバブルメディアから読み出されたTSパケットは、Sourceパケットの状態でリードバッファに格納された上、TS_Recording_rateという転送レートで、デコーダに供給される。
TS_Recording_rateという転送レートでの、デコーダへのTSパケット供給が跡絶えさせないためには、Tjumpの間、リードバッファからデコーダへのTSパケット出力が継続している必要がある。Tjumpとは、リムーバブルメディアからの読出先を連続データ領域から別の連続データ領域に切り替えるために必要となる時間である。
【0189】
リードバッファからの出力は、TSパケットではなく、Sourceパケットの状態でなされるので、TSパケットのSourceパケットとのサイズ比を192/188とした場合、Tjumpの間、(192/188×TS_Recording_rate)という転送レートにより、リードバッファからのSourceパケット出力が継続している必要がある。
従って、リードバッファが、アンダーフローしないためのバッファ蓄積量は、
Boccupied≧(Tjump/1000×8)×((192/188)×TS_Recording_rate)
となる。
【0190】
リードバッファへの入力レートはRud、リードバッファからの出力レートはTS_Recording_rate×(192/188)であるので、リードバッファへの蓄積レートは、入力レート−出力レートの計算で与えられ、(Rud−TS_Recording_rate×(192/188))になる。
このBoccupiedを、リードバッファに蓄積するのに要する時間Txは、
Tx=Boccupied/(Rud−TS_Recording_rate×(192/188))
になる。
【0191】
リムーバブルメディアからの読み出しには、この時間TxにおいてRudでのTSパケット入力を継続する必要があるので、AVストリームを複数のエクステントに分割して記録する場合の、エクステント一個当たりの最小データ長Saは、Sa=Rud×Tx=Rud×Boccupied/(Rud−TS_Recording_rate×(192/188))
≧Rud×(Tjump/1000×8)×((192/188)×TS_Recording_rate)
/(Rud−TS_Recording_rate×(192/188))
≧(Rud×Tjump/1000×8)×
×TS_Recording_rate×192/(Rud×188−TS_Recording_rate×192)
になる。よってSa≧
(Tjump×Rud/1000×8)×(TS_Recording_rate×192/(Rud×188−TS_Recording_rate×192))
になる。
【0192】
AVストリームを構成する各ファイルは、デコーダのアンダーフローをおこさないように算出されたSa以上のデータ長をもつことにより、AVストリームを構成する各ファイルのエクステントが、リムーバブルメディア上において離散的に位置されたとしても、再生時においてデコーダへのTSパケット供給が途絶えさせることなく、連続的に読み出されることになる。リムーバブルメディアにおいて、Saにあたる連続記録領域を確保することができれば、AV再生の途切れがないことは保証される。
【0193】
以上のように本実施形態によれば、AV再生の途切れがないことが保証された最小記録長に分割して、AVストリームを記録したとしても、リムーバブルメディアからのAVストリームの再生を途切れさせることはない。
(備考)
以上、本願の出願時点において、出願人が知り得る最良の実施形態について説明したが、以下に示す技術的トピックについては、更なる改良や変更実施を加えることができる。各実施形態に示した通り実施するか、これらの改良・変更を施すか否かは、何れも任意的であり、実施する者の主観によることは留意されたい。
【0194】
(DiscIDの上位に存在する“0”の桁の扱い)
MHP(Multimedia Home Platform)上で動作するアプリケーションは、MHP固有のIDを使用する際、上位桁の“0”を省略する。DiscIDでも、上位桁の“0”については、省略することが望ましいので、本実施形態におけるJava(登録商標)アプリケーションは、そのような、上位桁の“0”を省略したDiscIDを用いて、仮想パッケージの構築を命じてもよい。
【0195】
そのように、上位桁の0を省略する場合、リムーバブルメディアにおけるディレクトリ構成は、図40に示すものとなる。
図40は、上位桁の0を省略する場合のディレクトリ構成を示す図である。OrganizationIDディレクトリ, DiscIDディレクトリは、index.bdmvに示される32ビットのOrganizationID,128ビットのDiscIDを16進表記で表したディレクトリ名となる。
【0196】
これらのうちDiscIDは先頭の0を省略することにより、全体のパス長を短くしている。ただし、先頭の8文字が全て0になる場合、ディレクトリ名は“0”1文字となる。また、DiscIDディレクトリにおいて、先頭ではなく、途中に0が続く場合は、省略してはならない。すなわち、DiscID=00000000123456781234567812345678の場合、DiscIDのディレクトリ構成は0/12345678/12345678/12345678と先頭の0を省略可能であるが、DiscID=12345678000000001234567812345678の場合は、省略せずに12345678/00000000/12345678/12345678となる。省略の対象は、DiscIDに限らず、CertIDディレクトリも同様に先頭の0を省略してもよい。
【0197】
(連続データ領域のバリエーション)
連続データ領域を構成する記録単位の一例として、各実施形態では、SDメモリカードにおける4Mバイトのアロケーションユニットを題材に選んだが、AVストリーム形式の追加コンテンツの再生品位を保証する記録単位であれば、アロケーションユニット以外の記録単位であってもよい。例えば、DVD-RAM、BD-RE等のゾーンCLV上の光ディスクにおいて、各ゾーン領域内の連続した2Mバイトのセクタ群を、連続データ領域として採用してもよい。また、ECCブロックを構成するようなセクタ群を連続データ領域として採用してもよい。更に4Mバイトではなく、3Mバイト、2Mバイトの記録単位を、連続データ領域の記録単位として採用してもよい。
【0198】
更に連続データ領域は、BUDA ディレクトリにおける追加コンテンツ格納領域に存在するとしたが、絶対ファイルパスにて特定されるのならば、物理的に分散配置されても構わない。同様に通常データ領域も、BUDAディレクトリにおける追加コンテンツ格納領域に存在するとしたが、絶対ファイルパスにて特定されるのならば、物理的に分散配置されても構わない。
【0199】
(取得手段)
課題解決手段における取得手段は、ネットワークインターフェイス21に対応するものとして説明したが、ネットワークを介して追加コンテンツを取得するというのは必須ではなく、USBコネクタ、HDMIコネクタ接続を介して追加コンテンツを取得してもよいし、他の記録媒体からのコピー処理によって追加コンテンツを取得してもよい。
【0200】
(第2記録媒体の種類)
第2記録媒体としては、SDメモリカードを説明の題材に選んだが、HDD等、ロングファイル名をサポートするようなビルドインメディアに、8.3形式のファイルシステムを採用することで、ビルドインメディアを、第2記録媒体に用いてもよい。
この場合、BD-Jアプリケーションは、8文字以下のディレクトリ名、及び、ファイル名で、かつ拡張子名が3文字以下であるファイルパスを用いて第2記録媒体であるビルドインメディアをアクセスすることになる。
【0201】
(プログラミング言語の適用範囲)
上記実施形態では、仮想マシンのプログラミング言語としてJava(登録商標)を利用したが、Java(登録商標)ではなく、UNIX(登録商標) OSなどで使われているB-Shellや、PerlScript、ECMA Scriptなど他のプログラミング言語であっても良い。
(コンテンツの置き場所)
上述の実施の形態ではBD-ROMを再生する再生装置について説明をしたが、書き込み可能な光記録媒体に上述の実施の形態にて説明をしたBD-ROM上の必要なデータが記録されていた場合においても上述と同様の効果を奏することはもちろんのことである。
【0202】
(再生装置102の任意的な構成要素)
任意的要素として、再生装置102にレンダリングエンジンを設けてもよい。レンダリングエンジンは、Java(登録商標)2D,OPEN-GLといった基盤ソフトウェアを備え、BD-Jアプリケーションからの指示に従ってコンピュ-タ・グラフィックスの描画を行い、描画されたコンピュ-タ・グラフィックスをプレーンメモリに出力する。この描画を高速に行うには、任意的なハードウェア要素として、再生装置102に、グラフィクスアクセレータを追加するのが望ましい。他にも、浮動小数点演算を行うコプロセッサ(FloatingPointed Coprocessor)が実装されていてもよい。
【0203】
(BD-Jアプリケーション供給の仕方)
上述したような追加コンテンツの書き込みは、映像再生と、BD-Jアプリケーションの実行を関連付けさせて視聴を行なわせる機器であれば、一般のどのような機器に対しても適用可能である。例えば、BD-Jアプリケーションが、放送波やネットワークストリームに組み込まれて、供給されるような再生装置102においても、適用が可能となる。
【0204】
(プログラム記述言語の適用範囲)
上記実施形態では、オブジェクト指向プログラミング言語としてJava(登録商標)言語を利用したが、Java(登録商標)ではなく、UNIX(登録商標) OSなどで使われているB-Shellや、PerlScript、ECMA Scriptなど他のプログラミング言語であっても良い。
(BD-ROMコンテンツ)
BD-ROMに記録されるBD-Jアプリケーションは、映画作品を構成するものであるとしたが、ローカルストレージにインストールして利用されるアプリケーションではなく、BD-ROMに記録された状態で利用されるアプリケーションであるなら、これ以外のものを構成するものであってもよい。例えば、ゲームソフトを構成するアプリケーションであってもよい。また、本実施形態ではディスク媒体として、BD-ROMを題材に選んだが、可搬体であり、著作権保護がなされた記録媒体であるなら、他の記録媒体を採用してもよい。
【0205】
またAVストリーム、プレイリスト情報は、プリレコーディング技術にて、BD-ROMに記録され、ユーザに供給されることを前提としたが、リアルタイムレコーディング技術にてBD-REに記録され、ユーザに供給されるものであってもよい。
この場合AVストリームは、アナログ入力信号を記録装置がリアルタイムエンコードすることにより得られたトランスポートストリームであってもよいし、記録装置がデジタル入力したトランスポートストリームをパーシャル化することで得られるトランスポートストリームであってもよい。
【0206】
リアルタイムレコーディングにあたって記録装置は、AVストリームの記録と共に、メモリ上でClip情報やプレイリスト情報を生成する処理を行うが、この際、上述した各実施形態に記載したClip情報、プレイリスト情報をメモリ上で生成する。そしてAVストリームの記録を終えた後、生成されたClip情報、プレイリスト情報を記録媒体に書き込む。こうすることで、オーサリングシステムを用いずとも、家庭用の記録装置や、記録装置としての機能を具備したパーソナルコンピュータにて、各実施形態に示したClip情報、プレイリスト情報を作成することができる。そうして作成されたAVストリーム、Clip情報、プレイリスト情報を、ライトワンス型の記録媒体に書き込んでもよい。
【0207】
(システムLSI化)
再生装置102を構成するハードウェアのうち、機構的な構成要素(BDドライブ20、ローカルストレージ22)、大容量のメモリによって実装される構成要素(ビデオプレーン、グラフィクスプレーン)を除いた、論理素子を主要部とする部分を、1つのシステムLSIとして構成することが望ましい。何故なら、論理素子を主要部とする部分は、高密度に集積化することができるからである。
システムLSIとは、高密度基板上にベアチップを実装し、パッケージングしたものをいう。複数個のベアチップを高密度基板上に実装し、パッケージングすることにより、あたかも1つのLSIのような外形構造を複数個のベアチップに持たせたものも、システムLSIに含まれる(このようなシステムLSIは、マルチチップモジュールと呼ばれる。)。
【0208】
ここでパッケージの種別に着目するとシステムLSIには、QFP(クッド フラッド アレイ)、PGA(ピン グリッド アレイ)という種別がある。QFPは、パッケージの四側面にピンが取り付けられたシステムLSIである。PGAは、底面全体に、多くのピンが取り付けられたシステムLSIである。
これらのピンは、他の回路とのインターフェイスとしての役割を担っている。システムLSIにおけるピンには、こうしたインターフェイスの役割が存在するので、システムLSIにおけるこれらのピンに、他の回路を接続することにより、システムLSIは、再生装置102の中核としての役割を果たす。
【0209】
かかるシステムLSIは、再生装置102は勿論のこと、TVやゲーム、パソコン、ワンセグ携帯等、映像再生を扱う様々な機器に組込みが可能であり、本発明の用途を多いに広げることができる。
エレメンタバッファ7やビデオデコーダ、オーディオデコーダ、グラフィクスデコーダをも、一体のシステムLSIにする場合、システムLSIのアーキテクチャは、Uniphierアーキテクチャに準拠させるのが望ましい。
【0210】
Uniphierアーキテクチャに準拠したシステムLSIは、以下の回路ブロックから構成される。
・データ並列プロセッサDPP
これは、複数の要素プロセッサが同一動作するSIMD型プロセッサであり、各要素プロセッサに内蔵されている演算器を、1つの命令で同時動作させることで、ピクチャを構成する複数画素に対するデコード処理の並列化を図る。
【0211】
・命令並列プロセッサIPP
これは、命令RAM、命令キャッシュ、データRAM、データキャッシュからなる「Local Memory Controller」、命令フェッチ部、デコーダ、実行ユニット、レジスタファイルからなる「ProcessingUnit部」、複数アプリケーションの並列実行をProcessing Unit部に行わせる「Virtual Multi Processor Unit部」で構成される。
【0212】
・MPUブロック
これは、ARMコア、外部バスインターフェイス(Bus Control Unit:BCU)、DMAコントローラ、タイマー、ベクタ割込コントローラといった周辺回路、UART、GPIO(GeneralPurpose Input Output)、同期シリアルインターフェイスなどの周辺インターフェイスで構成される。
【0213】
・ストリームI/Oブロック
これは、USBインターフェイスやATA Packetインターフェイスを介して、外部バス上に接続されたドライブ装置、ハードディスクドライブ装置、SDメモリカードドライブ装置とのデータ入出力を行う。
・AVI/Oブロック
これは、オーディオ入出力、ビデオ入出力、OSDコントローラで構成され、テレビ、AVアンプとのデータ入出力を行う。
【0214】
・メモリ制御ブロック
これは、外部バスを介して接続されたSD-RAMの読み書きを実現するブロックであり、各ブロック間の内部接続を制御する内部バス接続部、システムLSI外部に接続されたSD-RAMとのデータ転送を行うアクセス制御部、各ブロックからのSD-RAMのアクセス要求を調整するアクセススケジュール部からなる。
【0215】
具体的な生産手順の詳細は以下のものになる。まず各実施形態に示した構成図を基に、システムLSIとすべき部分の回路図を作成し、回路素子やIC,LSIを用いて、構成図における構成要素を具現化する。
そうして、各構成要素を具現化してゆけば、回路素子やIC,LSI間を接続するバスやその周辺回路、外部とのインターフェイス等を規定する。更には、接続線、電源ライン、グランドライン、クロック信号線等も規定してゆく。この規定にあたって、LSIのスペックを考慮して各構成要素の動作タイミングを調整したり、各構成要素に必要なバンド幅を保証する等の調整を加えながら、回路図を完成させてゆく。
【0216】
回路図が完成すれば、実装設計を行う。実装設計とは、回路設計によって作成された回路図上の部品(回路素子やIC,LSI)を基板上のどこへ配置するか、あるいは、回路図上の接続線を、基板上にどのように配線するかを決定する基板レイアウトの作成作業である。
こうして実装設計が行われ、基板上のレイアウトが確定すれば、実装設計結果をCAMデータに変換して、NC工作機械等の設備に出力する。NC工作機械は、このCAMデータを基に、SoC実装やSiP実装を行う。SoC(Systemon chip)実装とは、1チップ上に複数の回路を焼き付ける技術である。SiP(System in Package)実装とは、複数チップを樹脂等で1パッケージにする技術である。以上の過程を経て、本発明に係るシステムLSIは、各実施形態に示した再生装置102の内部構成図を基に作ることができる。
【0217】
尚、上述のようにして生成される集積回路は、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。
FPGAを用いてシステムLSIを実現した場合は、多数のロジックエレメントが格子状に配置されており、LUT(Look Up Table)に記載されている入出力の組合せに基づき、縦・横の配線をつなぐことにより、各実施形態に示したハードウェア構成を実現することができる。LUTは、SRAMに記憶されており、かかるSRAMの内容は、電源断により消滅するので、かかるFPGAの利用時には、コンフィグ情報の定義により、各実施形態に示したハードウェア構成を実現するLUTを、SRAMに書き込ませる必要がある。
【0218】
(AV再生の対象)
AV再生の対象は、デジタルストリーム、マップ情報、プレイリスト情報から構成されるコンテンツであるなら、BD-ROMに規定されたものに限らない。デジタルストリームは、MPEG2,MPEG4-AVC等の符号化方式で符号化されたビデオストリーム、オーディオストリームを多重化することで、得られた多重化ストリームであり、DVDVideo-Recording規格ではVOBと呼ばれる。
【0219】
マップ情報は、上述したビデオストリームにおけるアクセスユニット(独立復号可能な再生単位をいう)のアドレス情報と、ビデオストリームの再生時間軸における再生時刻との対応を示す情報であり、DVDVideo-Recording規格ではTime Mapと呼ばれる。
プレイリスト情報は、開始点たる時刻情報と、終了点たる時刻情報との組みにより、1つ以上の再生区間を定義する情報である。
【産業上の利用可能性】
【0220】
本発明を構成する再生装置は、製造産業において経営的に、また継続的及び反復的に製造し、販売することができる。特に、映像コンテンツの制作に携わる映画産業・民生機器産業において利用できる。
【図面の簡単な説明】
【0221】
【図1】第1実施形態におけるシステム図
【図2】第1実施形態におけるBD-ROMの内部構成を示す図
【図3】第1実施形態におけるBD-ROMが対象としているソフトウェアのレイヤモデルを示す図
【図4】第1実施形態における2つのモードの動的な再生制御にて作成される映画作品を示す図
【図5】第1実施形態における再生装置の内部構成を示す図
【図6】リムーバブルメディアであるSDメモリカードの内部構成を示す図
【図7】通常データ領域、連続データ領域の一例を示す図
【図8】リムーバブルメディアであるSDメモリカードのファイルシステム領域の内部構成を示す図
【図9】(a)二重化FATの内部構成を示す図 (b)ディレクトリエントリの共通のデータ構造を示す図
【図10】00001.mtsをクラスタサイズに合わせて5つに分割し、各分割部分を、クラスタ504〜50Bに格納する状態を想定した図に示している。
【図11】00001.mtsが複数のクラスタに記録されている場合のディレクトリエントリ及びFATについての設定例を示す図に示している。
【図12】第1実施形態におけるリムーバブルメディアのディレクトリ構成を示す図
【図13】第1実施形態における仮想パッケージを示す図
【図14】第1実施形態におけるBD-Jモジュールの具体的な構成を示す図
【図15】第1実施形態におけるindex.bdmvファイルとタイトルの関係を示す図
【図16】ファイルI/Oモジュール34を介した、通常データ領域又は連続データ領域に対するデータ書き込みを模式的に示す図である。
【図17】リムーバブルメディアへのダウンロードの処理手順を示すフローチャート
【図18】追加コンテンツのダウンロード処理の処理手順を示すフローチャート
【図19】WriteAPIの処理手順を示すフローチャート
【図20】アロケーションユニットに対する追記の処理過程を連続写真的な表記で描いた図
【図21】アロケーションユニットに対する上書きの処理過程を連続写真的な表記で描いた図
【図22】ファイル種別判別の処理手順を示すフローチャート
【図23】追加コンテンツのファイル名を8.3形式に変換する処理の手順を示すフローチャート
【図24】第1実施形態における仮想パッケージ構築の処理手順を示すフローチャート
【図25】Java(登録商標)アプリケーションが仮想パッケージ構築/更新要求を発行し、仮想パッケージが更新されるまでの、時間的な処理の流れを示す図
【図26】連続データ領域の空き領域が不足していた場合の処理を示すフローチャート
【図27】連続データ領域に書込みできなかった場合におけるユーザに対する通知の一例
【図28】AVストリームの書込みに失敗した場合を考慮したフローチャート
【図29】書込み処理に失敗したことをユーザに示す画面表示の一例
【図30】(a)(b)通常データ領域への一括書込を実現する場合の処理手順を示すフローチャート
【図31】(a)(b)連続データ領域への一括書込を実現する場合の処理手順を示すフローチャート
【図32】通常データ領域への一括書込を実現する場合の処理手順を示すフローチャート
【図33】ヘッダデータからストリーム/非ストリームの判断を行う処理手順を示すフローチャート
【図34】BD-ROMにおけるAVストリームに多重化されるエレメンタリストリームを示す図
【図35】BD-ROMに記録されているエレメンタリストリームにおけるPID割当マップを示す図
【図36】追加コンテンツ格納領域に配されるべきAVストリームに多重化されるエレメンタリストリームを示す図
【図37】追加コンテンツ格納領域に配されるべきAVストリームに多重化されたエレメンタリストリームにおけるPID割当マップの一例
【図38】AV再生部24の内部構成を示す図
【図39】再生装置の出力段の構成を示す図
【図40】上位桁の0を省略する場合のディレクトリ構成を示す図
【符号の説明】
【0222】
100 BD-ROM
101 WWWサーバ
102 再生装置
103 テレビ
104 リムーバブルメディア
21 ネットワークインターフェース
22 ビルドインメディア
23 仮想ファイルシステム
25 AV再生ライブラリ
26 静的シナリオメモリ
27 動的シナリオメモリ
28 HDMVモジュール
29 BD-Jモジュール
30 UO検知モジュール
31 モード管理モジュール
32 メディア再生モジュール
34 ファイルI/Oモジュール
35 ネットワークモジュール
36 アプリケーションマネージャ
37 DiscID確認モジュール
38 リムーバブルメディア検知モジュール
39 仮想ファイルシステム管理モジュール

Claims (12)

  1. 仮想パッケージを再生する再生装置であって、
    第1記録媒体が装填された際、アプリケーションを起動する管理手段と、
    起動されたアプリケーションからの要求に従い、前記第1記録媒体に対応する追加コンテンツを装置外部から取得する取得手段と、
    起動されたアプリケーションからの要求に従い、第2記録媒体の記憶領域のうち追加コンテンツに付されたファイルパスにて指示されたものに、取得した追加コンテンツを書き込む制御手段と、
    第1記録媒体に記録されたコンテンツと、前記第2記録媒体に記録された追加コンテンツとを組み合わせることで、前記仮想パッケージを構築する構築手段とを備え、
    前記アプリケーションは、追加コンテンツに付されたファイルパスの形式が第2記録媒体のファイルシステム形式とは異なる場合、追加コンテンツに付されたファイルパスの形式を第2記録媒体のファイルシステム形式に変換し、
    前記制御手段は、
    形式変換後のファイルパスにおけるファイルの拡張子が、規定の文字列であるかどうかを判定することにより、前記書き込みが要求された追加コンテンツがAVストリームであるかどうかを判別し、書き込みを行うべき追加コンテンツがAVストリームであれば、前記第2記録媒体における連続した複数の空きブロックから構成される連続領域に、当該追加コンテンツを書き込み、
    前記追加コンテンツがAVストリームでなければ、前記第2記録媒体における連続していない複数の空きブロックの何れかに、当該追加コンテンツを書き込む
    ことを特徴とする再生装置。
  2. 前記第1記録媒体には、証明書の識別子、組織の識別子、媒体の識別子が付加されており、
    前記連続領域は、第2記録媒体における追加コンテンツ格納領域に配置され、追加コンテンツ格納領域は、第1記録媒体の証明書識別子と、組織識別子と、媒体識別子とを含むファイルパスによって特定される領域であることを特徴とする請求項1記載の再生装置。
  3. 前記第1の記録媒体は、ディレクトリ名、及び、ファイル名が255文字以下に制限されたファイルシステムを有し、
    前記第2記録媒体への書き込みに用いられるファイルパスは、8文字以下のディレクトリ名、及び、ファイル名で、かつ拡張子名が3文字以下である8.3形式のファイルシステムにおけるファイル名と、拡張子との指定を含み、
    前記制御手段は、
    前記追加コンテンツが格納されるべきファイルの拡張子が、3文字以下に制限された規定の文字列であるかどうかを判定することにより、前記書き込みが要求された追加コンテンツがAVストリームであるかどうかを判別する
    ことを特徴とする請求項2記載の再生装置。
  4. 前記制御手段は、前記追加コンテンツを第2記録媒体に書き込むにあたって、前記8.3形式のファイルシステムにおける管理情報を参照することにより、前記連続領域を構成するに足る、連続した空きブロックが存在するか否かのチェックを行い、
    前記連続領域は、前記チェックにより存在することが明らかになった、連続する複数の空きブロックから構成される、請求項3記載の再生装置。
  5. 前記連続領域にAVストリームである追加コンテンツを記録した後、連続領域に余剰な未記録部分が存在したとしても、未記録部分には、データを記録しない
    ことを特徴とする請求項4記載の再生装置。
  6. 前記制御手段による追加コンテンツの書き込みには、追記と、上書きとがあり、
    前記制御手段は、前記追加コンテンツを第2記録媒体に書き込むにあたって、前記8.3形式のファイルシステムにおける管理情報を参照することにより、前記アプリケーションから要求された書き込みが追記であるか、上書きであるかの判定を行い、
    前記追記は、
    既に第2記録媒体に記録されている記録済みデータをメモリに読み出した上で、第2記録媒体から記録済みデータを消去する処理と、メモリに読み出された記録済みデータと、書き込むべき追加コンテンツとを一体にした上で、連続領域に書き込む処理とによってなされ、
    前記上書きは、
    第2記録媒体に既に記録されている記録済みデータを消去して、書き込むべき追加コンテンツを連続領域に書き込む処理によってなされる請求項3記載の再生装置。
  7. 前記第2記録媒体には、
    証明書識別子に対応するディレクトリ、組織識別子に対応するディレクトリ、媒体識別子に対応するディレクトリセットが存在し、
    前記組織識別子に対応するディレクトリは、証明書識別子に対応するディレクトリの下位に存在し、
    前記媒体識別子に対応するディレクトリセットは、組織識別子に対応するディレクトリの下位に存在し、
    前記媒体識別子に対応するディレクトリセットは、階層化された複数のサブディレクトリからなり、
    前記追加コンテンツ格納領域は、
    階層化された複数のサブディレクトリのうち、最下層にあたるサブディレクトリに該当する、請求項3記載の再生装置。
  8. 前記媒体識別子に対応するディレクトリセットは、4つのサブディレクトリに階層化されており、
    前記第1記録媒体に付加された媒体識別子は、最大32文字の文字列であり、
    前記媒体識別子に対応するディレクトリセットを構成するサブディレクトリのそれぞれには、媒体識別子を構成する最大32文字の文字列を分割することで得られた、8文字以下のディレクトリ名が付加されている、請求項3記載の再生装置。
  9. 前記第2記録媒体へと書き込むべき追加コンテンツがAVストリームであり、前記第2記録媒体の連続領域における空き容量が不足している場合、
    前記第2記録媒体の連続していない空きのブロックに、前記AVストリームを書込み、前記AVストリームの記録が正しく成功しなかったことをユーザに報知する、ことを特徴とする請求項1記載の再生装置。
  10. 前記第2記録媒体へと書き込むべき追加コンテンツがAVストリームであり、前記第2記録媒体の連続領域における空き容量が不足している場合、
    前記書込みに失敗したことを前記アプリケーションに通知し、デジタルストリームの記録に失敗したことをユーザに報知する
    ことを特徴とする請求項1記載の再生装置。
  11. 仮想パッケージを構築するための追加コンテンツを記録媒体に記録する記録方法であって、
    1記録媒体が装填された際、アプリケーションを起動する管理ステップと、
    起動されたアプリケーションからの要求に従い、前記第1記録媒体に対応する追加コンテンツを装置外部から取得する取得ステップと、
    起動されたアプリケーションからの要求に従い、第2記録媒体の記憶領域のうち追加コンテンツに付されたファイルパスにて指示されたものに、取得した追加コンテンツを書き込む制御ステップと、
    第1記録媒体に記録されたコンテンツと、前記第2記録媒体に記録された追加コンテンツとを組み合わせることで、前記仮想パッケージを構築する構築ステップとを有し、
    前記アプリケーションは、追加コンテンツに付されたファイルパスの形式が第2記録媒体のファイルシステム形式とは異なる場合、追加コンテンツに付されたファイルパスの形式を第2記録媒体のファイルシステム形式に変換し、
    前記制御ステップは、
    形式変換後のファイルパスにおけるファイルの拡張子が、規定の文字列であるかどうかを判定することにより、前記書き込みが要求された追加コンテンツがAVストリームであるかどうかを判別して、書き込みを行うべき追加コンテンツがAVストリームであれば、前記第2記録媒体における連続した複数の空きブロックから構成される連続領域に、当該追加コンテンツを書き込み、
    前記追加コンテンツがAVストリームでなければ、前記第2記録媒体における連続していない複数の空きブロックの何れかに、当該追加コンテンツを書き込む
    ことを特徴とする記録方法。
  12. 仮想パッケージを構築するための追加コンテンツを記録媒体に記録する処理をコンピュータに実行させるプログラムであって、
    第1記録媒体が装填された際、アプリケーションを起動する管理ステップと、
    起動されたアプリケーションからの要求に従い、前記第1記録媒体に対応する追加コンテンツを装置外部から取得する取得ステップと、
    起動されたアプリケーションからの要求に従い、第2記録媒体の記憶領域のうち追加コンテンツに付されたファイルパスにて指示されたものに、取得した追加コンテンツを書き込む制御ステップと、
    第1記録媒体に記録されたコンテンツと、前記第2記録媒体に記録された追加コンテンツとを組み合わせることで、前記仮想パッケージを構築する構築ステップとをコンピュータに実行させ、
    前記アプリケーションは、追加コンテンツに付されたファイルパスの形式が第2記録媒体のファイルシステム形式とは異なる場合、追加コンテンツに付されたファイルパスの形式を第2記録媒体のファイルシステム形式に変換し、
    前記制御ステップは、
    形式変換後のファイルパスにおけるファイルの拡張子が、規定の文字列であるかどうかを判定することにより、前記書き込みが要求された追加コンテンツがAVストリームであるかどうかを判別して、書き込みを行うべき追加コンテンツがAVストリームであれば、前記第2記録媒体における連続した複数の空きブロックから構成される連続領域に、当該追加コンテンツを書き込み、
    書き込みを行うべき追加コンテンツがAVストリームであれば、前記第2記録媒体における連続した複数の空きブロックから構成される連続領域に、当該追加コンテンツを書き込み、
    前記追加コンテンツがAVストリームでなければ、前記第2記録媒体における連続していない複数の空きブロックの何れかに、当該追加コンテンツを書き込む
    ことを特徴とするプログラム。
JP2008559005A 2007-06-06 2008-05-23 再生装置、記録方法、プログラム Expired - Fee Related JP5032510B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008559005A JP5032510B2 (ja) 2007-06-06 2008-05-23 再生装置、記録方法、プログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2007150592 2007-06-06
JP2007150592 2007-06-06
JP2008559005A JP5032510B2 (ja) 2007-06-06 2008-05-23 再生装置、記録方法、プログラム
PCT/JP2008/001297 WO2008149501A1 (ja) 2007-06-06 2008-05-23 再生装置、再生方法、プログラム

Publications (2)

Publication Number Publication Date
JPWO2008149501A1 JPWO2008149501A1 (ja) 2010-08-19
JP5032510B2 true JP5032510B2 (ja) 2012-09-26

Family

ID=40093335

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008559005A Expired - Fee Related JP5032510B2 (ja) 2007-06-06 2008-05-23 再生装置、記録方法、プログラム

Country Status (6)

Country Link
US (1) US8559789B2 (ja)
EP (1) EP2051254A4 (ja)
JP (1) JP5032510B2 (ja)
KR (1) KR101470961B1 (ja)
CN (1) CN101542623B (ja)
WO (1) WO2008149501A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9661259B2 (en) 2013-03-28 2017-05-23 Mitsubishi Electric Corporation Playback device, control method, and program

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010106795A1 (ja) * 2009-03-16 2010-09-23 パナソニック株式会社 再生装置、集積回路、再生方法、アプリケーションプログラム、記録媒体、記録装置、及び記録方法
JP5381266B2 (ja) * 2009-04-14 2014-01-08 ソニー株式会社 情報記録装置、情報配信サーバ、情報記録システム、及び、情報記録方法
JP5491072B2 (ja) * 2009-05-20 2014-05-14 東芝アルパイン・オートモティブテクノロジー株式会社 光ディスク再生装置および光ディスク再生方法
JP2010272058A (ja) * 2009-05-25 2010-12-02 Funai Electric Co Ltd 情報再生装置
JP5526621B2 (ja) * 2009-06-26 2014-06-18 パナソニック株式会社 光ディスク再生装置
CN101719071B (zh) * 2009-11-27 2013-02-13 美的集团股份有限公司 一种用于存储少量可更改信息的rom模拟改写方法
US20110255384A1 (en) * 2010-04-15 2011-10-20 Kaleidescape, Inc. Bookmarking digital content on blu-ray discs
TW201233169A (en) * 2011-01-25 2012-08-01 Hon Hai Prec Ind Co Ltd Apparatus and method for searching subtitle of television program
CN103092876A (zh) * 2011-11-01 2013-05-08 镇江华扬信息科技有限公司 基于cf卡的嵌入式文件系统
KR102028696B1 (ko) 2012-10-04 2019-10-07 삼성전자주식회사 고 해상도 컨텐츠를 처리하는 컨텐츠 처리 장치 및 그 방법
JP5976024B2 (ja) * 2014-01-23 2016-08-23 三菱電機株式会社 再生装置、制御方法、及び制御プログラム
TWI614755B (zh) * 2017-02-07 2018-02-11 群聯電子股份有限公司 解碼方法、記憶體儲存裝置及記憶體控制電路單元
JP6855348B2 (ja) 2017-07-31 2021-04-07 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置およびダウンロード処理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998014938A1 (fr) * 1996-09-30 1998-04-09 Matsushita Electric Industrial Co., Ltd. Procede d'enregistrement et de lecture servant a enregistrer des donnees audiovisuelles sur des disques et a lire ces donnees a partir de disques, enregistreur et lecteur de realisation de ce procede, disque d'enregistrement d'informations et systeme processeur d'informations
JP2000013728A (ja) * 1997-09-17 2000-01-14 Matsushita Electric Ind Co Ltd 光ディスク記録装置、ファイル管理プログラムを記録したコンピュータ読み取り可能な記憶媒体および光ディスク
JP2000268505A (ja) * 1999-03-17 2000-09-29 Matsushita Electric Ind Co Ltd 情報記録媒体と情報記録再生方法及び情報記録再生システム装置
WO2004030356A1 (ja) * 2002-09-25 2004-04-08 Matsushita Electric Industrial Co., Ltd. 再生装置、光ディスク、記録媒体、プログラム、再生方法
JP2004178712A (ja) * 2002-11-27 2004-06-24 Sanyo Electric Co Ltd レコーダ
JP2007128584A (ja) * 2005-11-02 2007-05-24 Sony Corp 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5307494A (en) * 1987-08-05 1994-04-26 Fuji Xerox Co., Ltd. File name length augmentation method
JP2606222B2 (ja) 1987-08-06 1997-04-30 富士ゼロックス株式会社 ファイル名の長さ制限拡張方式
JPH09147486A (ja) * 1995-11-28 1997-06-06 Hitachi Ltd 情報格納制御方法
US5850266A (en) * 1995-12-22 1998-12-15 Cirrus Logic, Inc. Video port interface supporting multiple data formats
US6370325B2 (en) * 1997-09-17 2002-04-09 Matsushita Electric Industrial Co., Ltd. Optical disc recording apparatus, computer-readable recording medium recording a file management program, and optical disc
US6118924A (en) * 1997-09-17 2000-09-12 Matsushita Electric Industrial Co., Ltd. Optical disc recording apparatus computer-readable recording medium recording a file management program, and optical disc
US6345028B1 (en) * 1997-11-03 2002-02-05 Intertactile Technologies Corporation Method for direct recording and playback of multiple data tracks and signals
EP2280398A3 (en) * 1998-02-23 2011-03-09 Kabushiki Kaisha Toshiba Information storage medium, information playback method and apparatus and information recording method
JP4066447B2 (ja) * 1999-05-27 2008-03-26 ソニー株式会社 情報処理装置及びデータの処理方法
US6636879B1 (en) * 2000-08-18 2003-10-21 Network Appliance, Inc. Space allocation in a write anywhere file system
US20020194618A1 (en) * 2001-04-02 2002-12-19 Matsushita Electric Industrial Co., Ltd. Video reproduction apparatus, video reproduction method, video reproduction program, and package media for digital video content
JP2003030964A (ja) * 2001-07-11 2003-01-31 Sony Corp 再生装置および編集装置
US7149156B2 (en) * 2001-07-11 2006-12-12 Sony Corporation Editing apparatus for optical reproducing device
JP3833653B2 (ja) * 2003-06-13 2006-10-18 シャープ株式会社 情報再生装置、情報再生装置の制御方法、コンテンツ記録媒体、制御プログラム、制御プログラムを記録したコンピュータ読み取り可能な記録媒体
ATE389935T1 (de) * 2003-11-10 2008-04-15 Matsushita Electric Ind Co Ltd Aufzeichnungsmedium, wiedergabeeinrichtung, programm, wiedergabeverfahren und systemintegrierte schaltung
JP4048223B2 (ja) * 2004-05-11 2008-02-20 松下電器産業株式会社 再生装置
CN101714383B (zh) * 2004-05-11 2012-09-26 松下电器产业株式会社 再现装置、程序、再现方法
EP2413323A1 (en) * 2004-06-03 2012-02-01 Panasonic Corporation Reproduction device and method
JP4586429B2 (ja) * 2004-06-11 2010-11-24 ソニー株式会社 データ処理装置およびデータ処理方法、並びに、プログラムおよびプログラム記録媒体
WO2006005027A2 (en) * 2004-06-30 2006-01-12 Cordis Corporation Intraluminal medical device having asymetrical members
JP4626799B2 (ja) 2004-07-12 2011-02-09 ソニー株式会社 再生装置および方法、情報提供装置および方法、データ、記録媒体、並びにプログラム
MXPA06014210A (es) * 2004-07-22 2007-02-14 Matsushita Electric Ind Co Ltd Aparato de reproduccion para realizar reproduccion sincronizada con aplicaciones.
CN101002262B (zh) * 2004-07-22 2011-03-23 松下电器产业株式会社 再现装置及再现方法
CN101833969A (zh) * 2004-07-22 2010-09-15 松下电器产业株式会社 重放装置和重放方法
KR20070047825A (ko) * 2004-09-08 2007-05-07 마츠시타 덴끼 산교 가부시키가이샤 영상데이터와 애플리케이션을 연동시켜서 재생하는재생장치, 재생방법 및 프로그램
MXPA06013139A (es) * 2004-12-01 2007-02-28 Matsushita Electric Ind Co Ltd Medio de grabacion, dispositivo de reproduccion, programa, metodo de reproduccion y circuito integrado.
JP2007041709A (ja) * 2005-08-01 2007-02-15 Canon Inc 文書処理システム、文書処理システムの制御方法、文書処理装置、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP2009505327A (ja) * 2005-08-22 2009-02-05 エルジー エレクトロニクス インコーポレーテッド 記録媒体、データ再生方法及び再生装置並びにデータ記録方法及び記録装置
JP2009505325A (ja) * 2005-08-22 2009-02-05 エルジー エレクトロニクス インコーポレーテッド データ再生方法及び再生装置、記録媒体並びにデータ記録方法及び記録装置
JP2009505324A (ja) * 2005-08-22 2009-02-05 エルジー エレクトロニクス インコーポレーテッド データを再生するための装置及びその方法、データを記録するための装置及びその方法並びに記録媒体
RU2008110923A (ru) * 2005-08-22 2009-09-27 Эл Джи Электроникс Инк. (Kr) Устройство и способ для воспроизведения данных, устройство и способ для записи данных и носитель записи
WO2007058025A1 (ja) * 2005-11-15 2007-05-24 Matsushita Electric Industrial Co., Ltd. 再生装置及びプログラム
JP4687424B2 (ja) * 2005-11-25 2011-05-25 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP2007200518A (ja) * 2005-12-27 2007-08-09 Sony Corp 情報処理システム、コンテンツ出力装置、コンテンツ出力装置による情報処理装置制御方法及び情報処理装置制御プログラム
JP4575324B2 (ja) * 2006-03-29 2010-11-04 株式会社東芝 Av装置及びその制御方法
US7660837B2 (en) * 2006-06-30 2010-02-09 Broadcom Corporation Method for automatically managing disk fragmentation
JP4482828B2 (ja) 2006-09-06 2010-06-16 ソニー株式会社 再生装置および方法、情報処理装置および方法、情報提供システム、並びにデータ

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998014938A1 (fr) * 1996-09-30 1998-04-09 Matsushita Electric Industrial Co., Ltd. Procede d'enregistrement et de lecture servant a enregistrer des donnees audiovisuelles sur des disques et a lire ces donnees a partir de disques, enregistreur et lecteur de realisation de ce procede, disque d'enregistrement d'informations et systeme processeur d'informations
JP2000013728A (ja) * 1997-09-17 2000-01-14 Matsushita Electric Ind Co Ltd 光ディスク記録装置、ファイル管理プログラムを記録したコンピュータ読み取り可能な記憶媒体および光ディスク
JP2000268505A (ja) * 1999-03-17 2000-09-29 Matsushita Electric Ind Co Ltd 情報記録媒体と情報記録再生方法及び情報記録再生システム装置
WO2004030356A1 (ja) * 2002-09-25 2004-04-08 Matsushita Electric Industrial Co., Ltd. 再生装置、光ディスク、記録媒体、プログラム、再生方法
JP2004178712A (ja) * 2002-11-27 2004-06-24 Sanyo Electric Co Ltd レコーダ
JP2007128584A (ja) * 2005-11-02 2007-05-24 Sony Corp 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9661259B2 (en) 2013-03-28 2017-05-23 Mitsubishi Electric Corporation Playback device, control method, and program

Also Published As

Publication number Publication date
EP2051254A1 (en) 2009-04-22
US8559789B2 (en) 2013-10-15
JPWO2008149501A1 (ja) 2010-08-19
US20100034516A1 (en) 2010-02-11
EP2051254A4 (en) 2012-10-03
CN101542623B (zh) 2013-03-20
KR20100017084A (ko) 2010-02-16
KR101470961B1 (ko) 2014-12-10
WO2008149501A1 (ja) 2008-12-11
CN101542623A (zh) 2009-09-23

Similar Documents

Publication Publication Date Title
JP5032510B2 (ja) 再生装置、記録方法、プログラム
JP5406044B2 (ja) 個別販売に用いられる記録媒体、記録装置、再生装置、それらの方法
JP4898890B2 (ja) 再生装置、記録方法
JP5069253B2 (ja) 再生装置、システムlsi及び再生方法
JP4560112B2 (ja) 再生装置、プログラム、再生方法、記録方法。
JP4676493B2 (ja) 記録媒体、再生装置、記録方法
RU2516463C2 (ru) Устройство воспроизведения, записывающее устройство, способ воспроизведения и способ записи
KR20110126514A (ko) 기록매체, 재생장치, 집적회로
JP5451745B2 (ja) 再生装置、集積回路、再生方法、アプリケーションプログラム、記録媒体、記録装置、及び記録方法
JP4870493B2 (ja) 再生装置、記録方法、再生方法、システムlsi、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120321

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120418

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120518

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120605

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120628

R150 Certificate of patent or registration of utility model

Ref document number: 5032510

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150706

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees