JP2006244654A - ディスクプレーヤからの印刷方法 - Google Patents
ディスクプレーヤからの印刷方法 Download PDFInfo
- Publication number
- JP2006244654A JP2006244654A JP2005061573A JP2005061573A JP2006244654A JP 2006244654 A JP2006244654 A JP 2006244654A JP 2005061573 A JP2005061573 A JP 2005061573A JP 2005061573 A JP2005061573 A JP 2005061573A JP 2006244654 A JP2006244654 A JP 2006244654A
- Authority
- JP
- Japan
- Prior art keywords
- printing
- print data
- title
- playback
- 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.)
- Pending
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
Abstract
【課題】 映像データ用BD−ROMで映像データに影響することなく、映像データに連動した印刷サービスを実現するためには、ディスクアクセスをしないでも印刷できるような仕組みが必要になる。また、印刷サービスは、簡単なものから、より凝ったものまで幅広い対応が要求される。
【解決手段】 デジタルストリームに映像コンテンツと連動した印刷データを埋め込んで定期的に印刷データを更新することで、数多くの映像連動印刷コンテンツが実現できる。より凝った印刷データは専用のアプリケーションで対応し、映像コンテンツに簡単に復帰できるようにする。
【選択図】 図31
【解決手段】 デジタルストリームに映像コンテンツと連動した印刷データを埋め込んで定期的に印刷データを更新することで、数多くの映像連動印刷コンテンツが実現できる。より凝った印刷データは専用のアプリケーションで対応し、映像コンテンツに簡単に復帰できるようにする。
【選択図】 図31
Description
本発明は、BD−ROM等、映像データを記録した情報記録媒体、その再生装置及び再生方法に関し、特に、映像データと印刷などのインタラクティブなアプリケーション環境を導入する場合の改良に関する。
映像データを記録した情報記録媒体の代表格は、DVD(以下、SD−DVDまたは単にDVDと称する)である。以降、従来のDVDについて説明する。
図1は、SD−DVDの構造を示した図である。図1の下段に示すように、DVDディスク上にはリードインからリードアウトまでの間に論理アドレス空間が設けられ、論理アドレス空間の先頭からファイルシステムのボリューム情報が記録され、続いて映像音声などのアプリケーションデータが記録されている。
ファイルシステムとは、ISO9660やUDF(Universal Disc Format)のことであり、ディスク上のデータをディレクトリまたはファイルと呼ばれる単位で表現する仕組みである。日常使っているPC(パーソナルコンピュータ)の場合でも、FATまたはNTFSと呼ばれるファイルシステムを通すことにより、ディレクトリやファイルという構造でハードディスクに記録されたデータがコンピュータ上で表現され、ユーザビリティを高めている。 SD−DVDの場合、UDF及びISO9660両方を使用しており(両方を合わせて「UDFブリッジ」と呼ぶ事がある)、UDFまたはISO9660どちらのファイルシステムドライバによってもデータの読み出し(ここで取り扱うDVDはパッケージメディア用のROMディスクであり、物理的に書き込みが不可能である)ができるようになっている。
DVD上に記録されたデータは、UDFブリッジを通して、図1左上に示すようなディレクトリまたはファイルとして見ることができる。ルートディレクトリ(図中「ROOT」)の直下に「VIDEO_TS」と呼ばれるディレクトリが置かれ、ここにDVDのアプリケーションデータが記録されている。アプリケーションデータは、複数のファイルとして記録され、主なファイルとして以下のものがある。
VIDEO_TS.IFO ディスク再生制御情報ファイル
VTS_01_0.IFO ビデオタイトルセット#1再生制御情報ファイル
VTS_01_0.VOB ビデオタイトルセット#1ストリームファイル
.....
拡張子として2つの種類が存在する。「IFO」は再生制御情報が記録されたファイルであって、「VOB」はAVデータであるMPEGストリームが記録されたファイルである。再生制御情報とは、DVDで採用されたインタラクティビティ(ユーザの操作に応じて再生を動的に変化させる技術)を実現するための情報や、メタデータのようなタイトルやAVストリームに付属する情報などのことである。また、DVDでは一般的に再生制御情報のことをナビゲーション情報と呼ぶことがある。
VTS_01_0.IFO ビデオタイトルセット#1再生制御情報ファイル
VTS_01_0.VOB ビデオタイトルセット#1ストリームファイル
.....
拡張子として2つの種類が存在する。「IFO」は再生制御情報が記録されたファイルであって、「VOB」はAVデータであるMPEGストリームが記録されたファイルである。再生制御情報とは、DVDで採用されたインタラクティビティ(ユーザの操作に応じて再生を動的に変化させる技術)を実現するための情報や、メタデータのようなタイトルやAVストリームに付属する情報などのことである。また、DVDでは一般的に再生制御情報のことをナビゲーション情報と呼ぶことがある。
再生制御情報ファイルは、ディスク全体を管理する「VIDEO_TS.IFO」と、個々のビデオタイトルセット(DVDでは複数のタイトル、言い換えれば異なる映画や異なるバージョンの映画を1枚のディスクに記録することが可能である。)毎の再生制御情報である「VTS_01_0.IFO」がある。ここで、ファイル名ボディにある「01」はビデオタイトルセットの番号を示しており、例えば、ビデオタイトルセット#2の場合は、「VTS_02_0.IFO」となる。
図1の右上部は、DVDのアプリケーション層でのDVDナビゲーション空間であり、前述した再生制御情報が展開された論理構造空間である。「VIDEO_TS.IFO」内の情報は、VMGI(VIDEO Manager Information)として、「VTS_01_0.IFO」または、他のビデオタイトルセット毎に存在する再生制御情報はVTSI(Video Title Set Information)としてDVDナビゲーション空間に展開される。
VTSIの中にはPGC(Program Chain)と呼ばれる再生シーケンスの情報であるPGCI(Program Chain Information)が記述されている。PGCIは、Cellの集合とコマンドと呼ばれる一種のプログラミング情報によって構成されている。Cell自身はVOB(Video Objectの略であり、MPEGストリームを指す)の一部区間または全部区間の集合であり、Cellの再生は、当該VOBのCellによって指定された区間を再生することを意味している。
コマンドは、DVDの仮想マシンによって処理されるものであり、ブラウザ上で実行されるJava(登録商標)スクリプトなどに近いものである。しかしながらJava(登録商標)スクリプトが論理演算の他にウィンドウやブラウザの制御(例えば、新しいブラウザのウィンドを開くなど)を行うのに対して、DVDのコマンドは、論理演算の他にAVタイトルの再生制御、例えば、再生するチャプタの指定などを実行するだけのものである点で異なっている。
Cellはディスク上に記録されているVOBの開始及び終了アドレス(論理アドレス)をその内部情報として有しており、プレーヤは、Cellに記述されたVOBの開始及び終了アドレス情報を使ってデータの読み出し、再生を実行する。
図1はAVストリーム中に埋め込まれているナビゲーション情報を説明する概略図である。SD−DVDの特長であるインタラクティビティは前述した「VIDEO_TS.IFO」や「VTS_01_0.IFO」などに記録されているナビゲーション情報だけによって実現されているのではなく、幾つかの重要な情報はナビゲーション・パック(ナビパックまたは、NV_PCKと称する)と呼ばれる専用キャリアを使いVOB内に映像、音声データと一緒に多重化されている。
ここでは簡単なインタラクティビティの例としてメニューを説明する。メニュー画面上には、幾つかのボタンが現れ、夫々のボタンには当該ボタンが選択実行された時の処理が定義されている。また、メニュー上では一つのボタンが選択されており(ハイライトによって選択ボタン上に半透明色がオーバーレイされている)、ユーザは、リモコンの上下左右キーを使って、選択状態のボタンを上下左右の何れかのボタンに移動させることが出来る。リモコンの上下左右キーを使って、選択実行したいボタンまでハイライトを移動させ、決定する(決定キーを押す)ことによって対応するコマンドのプログラムが実行される。一般的には対応するタイトルやチャプタの再生がコマンドによって実行されている。
図2の左上部はNV_PCK内の概要を示している。
NV_PCK内には、ハイライトカラー情報と個々のボタン情報などが含まれている。ハイライトカラー情報には、カラーパレット情報が記述され、オーバーレイ表示されるハイライトの半透明色が指定される。ボタン情報には、個々のボタンの位置情報である矩形領域情報と、当該ボタンから他のボタンへの移動情報(ユーザの上下左右キー操作夫々に対応する移動先ボタンの指定)と、ボタンコマンド情報(当該ボタンが決定された時に実行されるコマンド)が記述されている。
NV_PCK内には、ハイライトカラー情報と個々のボタン情報などが含まれている。ハイライトカラー情報には、カラーパレット情報が記述され、オーバーレイ表示されるハイライトの半透明色が指定される。ボタン情報には、個々のボタンの位置情報である矩形領域情報と、当該ボタンから他のボタンへの移動情報(ユーザの上下左右キー操作夫々に対応する移動先ボタンの指定)と、ボタンコマンド情報(当該ボタンが決定された時に実行されるコマンド)が記述されている。
メニュー上のハイライトは、図2の中央右上部に示すように、オーバーレイ画像として作られる。オーバーレイ画像は、ボタン情報の矩形領域情報にカラーパレット情報の色をつけた物である。このオーバーレイ画像は右部に示す背景画像と合成されて画面上に表示される。
上述のようにして、DVDではメニューを実現している。また、何故、ナビゲーションデータの一部をNV_PCKを使ってストリーム中に埋め込んでいるのは、ストリームと同期して動的にメニュー情報を更新、例えば、映画再生中の途中5分〜10分の間にだけメニューが表示されるなど、同期タイミングが問題となりやすいアプリケーションの場合でも、問題なく実現できるようにしたためである。
図3は、DVDのVOBのイメージである。図に示すように、映像、音声、字幕などのデータ(A段)は、MPEGシステム(ISO/IEC13818−1)規格に基づいて、パケット及びパック化し(B段)、夫々を多重化して1本のMPEGプログラムストリームにしている(C段)。また、前述した通りインタラクティブを実現するためのボタンコマンドを含んだNV_PCKも一緒に多重化をされている。
MPEGシステムの多重化の特徴は、多重化する個々のデータは、そのデコード順に基づくビット列になっているが、多重化されるデータ間、即ち、映像、音声、字幕の間は必ずしも再生順、言い換えればデコード順に基づいてビット列が形成されているわけではない。これはMPEGシステムストリームのデコーダモデル(一般にSystem Target Decoder、またはSTDと呼ばれる(図3のD段))が多重化を解いた後に個々のエレメンタリーストリームに対応するデコーダバッファを持ち、デコードタイミングまでに一時的にデータを蓄積している事に由来している。このデコーダバッファは、個々のエレメンタリーストリーム毎にサイズが異なり、映像に対しては、232kB、音声に対しては4kB、字幕に対しては52kBを夫々有している。このため、各デコーダバッファへのデータ入力タイミングは個々のエレメンタリストリームで異なるため、MPEGシステムストリームとしてビット列を形成する順番と表示(デコード)されるタイミングにずれが生じている。
即ち、映像データと並んで多重化されている字幕データが必ずしも同一タイミングでデコードされているわけでは無い。
かかるDVDの構成は、以下の特許文献1に記載されている。
特許第2813245号
ところで、コンテンツホルダーはDVDなどのディスクタイトルの魅力を高めるために、様々な特典映像などの付加的コンテンツを充実させている。映像コンテンツや静止画、オーディオといったコンテンツだけではなく、新作の割引クーポン、シール、特典ブロマイドといった、印刷可能なコンテンツサービスも提案されている。しかしながら、ディスク媒体とはいえ映像のような連続したデータを扱う媒体にとって、大容量のランダムアクセスは、映像データが乱れてしまう原因にもなりかねない。一方で、単純なコンテンツだけではなく、いろいろな印刷コンテンツを提供できる仕組みも求められている。
本発明の目的は、プレーヤの動作保障を実現しつつも、様々な印刷コンテンツサービスを実現できる情報記録媒体及び印刷方法を提供することである。
上記課題を解決するため本発明にかかる情報記録媒体は、映像データと印刷データを連動して記録、管理する。また、より複雑なコンテンツサービスを実現したい場合には、映像データをとめて印刷を実行し、簡単にもとの映像データに途中からでも復帰できるような構成をとる。
このような構成では、AVコンテンツと連携した印刷コンテンツを提供することができる。印刷に際しては、AVコンテンツの再生を途切れることなく、印刷を実現することができる。また、より複雑な印刷コンテンツを提供したい場合には、一時的にAV再生を停止して印刷を実行しつつも、簡単にもとの場所からAVコンテンツの再生を再開できる印刷サービスが提供できる。
本発明は、デジタルストリームの再生手順と、印刷データを印刷する印刷手順を含むアプリケーションとが同一のタイトルに記録されていることを特徴とする情報記録媒体を提供する。
本発明の一実施態様において、上述の情報記録媒体はさらに、前記タイトルには前記印刷データの管理情報を含む。
本発明の一実施態様において、上述の情報記録媒体はさらに、前記印刷データはデジタルストリームに埋め込まれている。
本発明の一実施態様において、前記アプリケーションは、ユーザから印刷要求があった場合に前記印刷データを印刷する指示を行うことが記述されている。
本発明はまた、デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行う再生方法であって、使用する印刷データをあらかじめプリロードバッファにロードし、ユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、前記プリロードバッファから前記印刷データを読み込み、前記特定した印刷装置に対して印刷実行要求と前記印刷データを出力することを特徴とする、情報記録媒体再生方法を提供する。
本発明の一実施態様において、前記印刷データは、タイトル選択時にプリロードバッファにロードする。
本発明の一実施態様において、前記印刷データは、デジタルストリーム中で印刷データが検出された場合にプリロードバッファにロードする。
本発明はまた、デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行う再生装置であって、タイトル選択時に使用する印刷データを特定しあらかじめプリロードバッファにロードするプリロード手段と、ユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、特定した印刷装置に対して印刷実行要求と前記プリロードバッファから前記印刷データを出力する印刷制御手段を備えたことを特徴とする、情報記録媒体再生装置を提供する。
本発明はまた、デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行う再生装置であって、デジタルストリームから印刷データを検出する印刷データ検出手段と、前記印刷データを検出した時点で前記印刷データをプリロードバッファにロードするプリロード手段と、ユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、特定した印刷装置に対して印刷実行要求と前記プリロードバッファから前記印刷データを出力する印刷制御手段を備えたことを特徴とする、情報記録媒体再生装置を提供する。
本発明はまた、デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行うプログラムであって、タイトル選択時に使用する印刷データを特定しあらかじめプリロードバッファにロードするプリロードし、ユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、特定した印刷装置に対して印刷実行要求と前記プリロードバッファから印刷データを出力するように指示するプログラムを提供する。
本発明はまた、デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行うプログラムであって、デジタルストリームから印刷データを検出し、検出した前記印刷データをプリロードバッファにロードし、ユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、特定した印刷装置に対して印刷実行要求と前記プリロードバッファから前記印刷データを出力するように指示するプログラムを提供する。
本発明は、デジタルストリームの再生手順と、印刷データを印刷する印刷手順を含むアプリケーションとが同一のタイトルに記録され、印刷データは独立したファイルとして記録されていることを特徴とする情報記録媒体を提供する。本発明の一実施態様において、前記アプリケーションは、ユーザから印刷要求があった場合にデジタルストリームの再生を一時停止し、前記印刷データを印刷する指示を行うことが記述されている。
本発明は、デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行う再生方法であって、ユーザから印刷要求があった場合に、デジタルストリーム再生を一時停止し、印刷対象となる印刷装置を特定し、印刷要求のあった印刷データを情報記録媒体から読み込み、前記特定した印刷装置に対して印刷実行要求と前記印刷データを出力することを特徴とする、情報記録媒体再生方法を提供する。
本発明の一実施態様において、さらに印刷が終了すると一時停止した時点から自動的にデジタルストリームの再生を再開する。
本発明はまた、デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行う再生装置であって、ユーザから印刷要求があった場合に、デジタルストリーム再生を一時停止するストリーム一時停止手段と、ユーザから印刷要求があった場合に印刷対象となる特定する印刷装置特定手段と、印刷要求のあった印刷データを情報記録媒体から読み込む印刷データ取得手段と、前記特定した印刷装置に対して印刷実行要求と前記印刷データを出力する印刷制御手段を備えたことを特徴とする、情報記録媒体再生装置を提供する。
本発明の一実施態様において、上述の情報記録媒体再生装置はさらに、印刷が終了すると一時停止した時点から自動的にデジタルストリームの再生を再開する手段を備える。
本発明はまた、デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行うプログラムであって、ユーザから印刷要求があった場合に、デジタルストリーム再生を一時停止するストリーム一時停止指示と、ユーザから印刷要求があった場合に印刷対象となる印刷装置を特定する指示と、印刷要求のあった印刷データを情報記録媒体から読み込む印刷データ取得指示と、特定した印刷装置に対して印刷実行要求と前記印刷データを出力する印刷指示を行うことを特徴とする、プログラムを提供する。
本発明の一実施態様において、上述のプログラムは、さらに、印刷が終了すると一時停止した時点から自動的にデジタルストリームの再開を指示する。
本発明は、デジタルストリームの再生手順と、印刷データを印刷する印刷手順を含むアプリケーションとが独立したタイトルに記録され、印刷データは独立したファイルとして記録されていることを特徴とする情報記録媒体を提供する。本発明の一実施態様において、印刷データを印刷する印刷手順を含むアプリケーションにアクセスするタイトルが選択された場合には、デジタルストリームの再生を一時停止し、前記アプリケーションを実行し、前記印刷データを印刷する指示が記述されている。
本発明は、デジタルストリームを含むタイトルを再生し、印刷を行うアプリケーションを起動する際には前記デジタルストリームを含むタイトルを一時停止し、前記アプリケーションにおいてユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、印刷要求のあった印刷データを情報記録媒体から読み込み、特定した印刷装置に対して印刷実行要求と前記印刷データを出力することを特徴とする、情報記録媒体再生方法を提供する。本発明の一実施態様において、さらに印刷を行うアプリケーションを終了すると、一時停止したデジタルストリームを含むタイトルに戻り、一時停止した時点から自動的にデジタルストリームの再生を再開する。
本発明は、デジタルストリームを含むタイトルの再生手段と、印刷を行うアプリケーションを起動する際には前記デジタルストリームを含むタイトルを一時停止するストリーム一時停止手段と、前記アプリケーションにおいてユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定する印刷装置特定手段と、印刷要求のあった印刷データを情報記録媒体から読み込む印刷データ取得手段と、前記特定した印刷装置に対して印刷実行要求と前記印刷データを出力する印刷制御手段を備えたことを特徴とする、情報記録媒体再生装置を提供する。本発明の一実施態様において、さらに印刷を行うアプリケーションを終了すると、一時停止したタイトルに戻り一時停止した時点から自動的にデジタルストリームの再生を再開する手段を備える。
本発明は、デジタルストリームを含むタイトルの再生指示と、印刷を行うアプリケーションを起動する際には前記デジタルストリームを含むタイトルを一時停止するストリーム一時停止指示と、前記アプリケーションにおいてユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定する印刷装置特定指示と、印刷要求のあった印刷データを情報記録媒体から読み込む印刷データ取得指示と、前記特定した印刷装置に対して印刷実行要求と前記印刷データを出力する印刷指示を行うことを特徴とする、プログラムを提供する。本発明の一実施態様において、さらに印刷を行うアプリケーションを終了すると、一時停止したタイトルに戻り一時停止した時点から自動的にデジタルストリームの再生を再開する指示を行う。
上述した構成では、AVコンテンツと連携した印刷コンテンツを提供することができる。印刷に際しては、AVコンテンツの再生を途切れることなく、印刷を実現することができる。また、より複雑な印刷コンテンツを提供したい場合には、一時的にAV再生を停止して印刷を実行しつつも、簡単にもとの場所からAVコンテンツの再生を再開できる印刷サービスが提供できる。
以下本発明の実施の形態について、図面を参照しながら説明する。
(実施の形態1)
まず本発明の第1の実施の形態について説明する。
(実施の形態1)
まず本発明の第1の実施の形態について説明する。
(ディスク上の論理データ構造)
図4は、BD−ROM(以降、「BD」と称する場合もある)の構成、特にディスク媒体であるBDディスク(104)と、ディスクに記録されているデータ(101、102、103)の構成を示す図である。BDディスク(104)に記録されるデータは、AVデータ(103)と、AVデータに関する管理情報及びAV再生シーケンスなどのBD管理情報(102)と、インタラクティブを実現するBD再生プログラム(101)である。本実施の形態では、映画などのAVコンテンツを再生するためのAVアプリケーションを主眼においてのBDディスクの説明を行うが、BDディスクをCD−ROMやDVD−ROMの様にコンピュータ用途の記録媒体としてしようすることも当然のことながら可能である。
図4は、BD−ROM(以降、「BD」と称する場合もある)の構成、特にディスク媒体であるBDディスク(104)と、ディスクに記録されているデータ(101、102、103)の構成を示す図である。BDディスク(104)に記録されるデータは、AVデータ(103)と、AVデータに関する管理情報及びAV再生シーケンスなどのBD管理情報(102)と、インタラクティブを実現するBD再生プログラム(101)である。本実施の形態では、映画などのAVコンテンツを再生するためのAVアプリケーションを主眼においてのBDディスクの説明を行うが、BDディスクをCD−ROMやDVD−ROMの様にコンピュータ用途の記録媒体としてしようすることも当然のことながら可能である。
図5は、上述したBDディスクに記録されている論理データを示した図である。BDディスクは、他の光ディスク、例えばDVDやCDなどと同様にその内周から外周に向けてらせん状に記録領域を持ち、内周のリード・インと外周のリード・アウトの間に論理データを記録できる論理アドレス空間を有している。また、リード・インの内側にはBCA(Burst Cutting Area)と呼ばれるドライブでしか読み出せない特別な領域がある。この領域はアプリケーションから読み出せないため、例えば著作権保護技術などに利用されることがよくある。
論理アドレス空間には、ファイルシステム情報(ボリューム)を先頭に映像データなどのアプリケーションデータが記録されている。ファイルシステムとは従来技術で説明した通り、UDFやISO9660などのことであり、通常のPCと同じように記録されている論理データをディレクトリ、ファイル構造を使って読み出しする事が可能になっている。
本実施例の場合、BDディスク上のディレクトリ、ファイル構造は、ルートディレクトリ(ROOT)直下にBDVIDEOディレクトリが置かれている。このディレクトリはBD−ROMで扱うAVコンテンツや管理情報などのデータ(図4で説明した101、102、103)が記録されているディレクトリである。
BDVIDEOディレクトリの下には、次の7種類のファイルが記録されている。
BD.INFO(ファイル名固定)
「BD管理情報」の一つであり、BDディスク全体に関する情報を記録したファイルである。BDプレーヤは最初にこのファイルを読み出す。
BD.INFO(ファイル名固定)
「BD管理情報」の一つであり、BDディスク全体に関する情報を記録したファイルである。BDプレーヤは最初にこのファイルを読み出す。
BD.PROG(ファイル名固定)
「BD再生プログラム」の一つであり、BDディスク全体に関わるプログラムを記録したファイルである。
「BD再生プログラム」の一つであり、BDディスク全体に関わるプログラムを記録したファイルである。
XXX.PL(「XXX」は可変、拡張子「PL」は固定)
「BD管理情報」の一つであり、シナリオを記録するプレイリスト(Play List)情報を記録したファイルである。プレイリスト毎に1つのファイルを持っている。
「BD管理情報」の一つであり、シナリオを記録するプレイリスト(Play List)情報を記録したファイルである。プレイリスト毎に1つのファイルを持っている。
XXX.PROG(「XXX」は可変、拡張子「PL」は固定)
「BD再生プログラム」の一つであり、前述したプレイリスト毎のプログラムを記録したファイルである。プレイリストとの対応はファイルボディ名(「XXX」が一致する)によって識別される。
「BD再生プログラム」の一つであり、前述したプレイリスト毎のプログラムを記録したファイルである。プレイリストとの対応はファイルボディ名(「XXX」が一致する)によって識別される。
YYY.VOB(「YYY」は可変、拡張子「VOB」は固定)
「AVデータ」の一つであり、VOB(従来例で説明したVOBと同じ)を記録したファイルである。VOB毎に1つのファイルを持っている。
「AVデータ」の一つであり、VOB(従来例で説明したVOBと同じ)を記録したファイルである。VOB毎に1つのファイルを持っている。
YYY.VOBI(「YYY」は可変、拡張子「VOBI」は固定)
「BD管理情報」の一つであり、AVデータであるVOBに関わる管理情報を記録したファイルである。VOBとの対応はファイルボディ名(「YYY」が一致する)によって識別される。
「BD管理情報」の一つであり、AVデータであるVOBに関わる管理情報を記録したファイルである。VOBとの対応はファイルボディ名(「YYY」が一致する)によって識別される。
ZZZ.PNG(「ZZZ」は可変、拡張子「PNG」は固定)
「AVデータ」の一つであり、字幕及びメニューを構成するためのイメージデータPNG(W3Cによって標準化された画像フォーマットであり「ピング」と読む)を記録したファイルである。1つのPNGイメージ毎に1つのファイルを持つ。
「AVデータ」の一つであり、字幕及びメニューを構成するためのイメージデータPNG(W3Cによって標準化された画像フォーマットであり「ピング」と読む)を記録したファイルである。1つのPNGイメージ毎に1つのファイルを持つ。
(プレーヤの構成)
次に、前述したBDディスクを再生するプレーヤの構成について図6及び図7を用いて説明する。
次に、前述したBDディスクを再生するプレーヤの構成について図6及び図7を用いて説明する。
図6は、プレーヤの大まかな機能構成を示すブロック図である。
BDディスク(201)上のデータは、光ピックアップ(202)を通して読み出される。読み出されたデータは夫々のデータの種類に応じて専用のメモリに記録される。BD再生プログラム(「BD.PROG」または「XXX.PROG」ファイルの中身)はプログラム記録メモリ(203)に、BD管理情報(「BD.INFO」、「XXX.PL」または「YYY.VOBI」)は管理情報記録メモリ(204)に、AVデータ(「YYY.VOB」または「ZZZ.PNG」)はAV記録メモリ(205)に夫々記録される。
BDディスク(201)上のデータは、光ピックアップ(202)を通して読み出される。読み出されたデータは夫々のデータの種類に応じて専用のメモリに記録される。BD再生プログラム(「BD.PROG」または「XXX.PROG」ファイルの中身)はプログラム記録メモリ(203)に、BD管理情報(「BD.INFO」、「XXX.PL」または「YYY.VOBI」)は管理情報記録メモリ(204)に、AVデータ(「YYY.VOB」または「ZZZ.PNG」)はAV記録メモリ(205)に夫々記録される。
プログラム記録メモリ(203)に記録されたBD再生プログラムはプログラム処理部(206)によって、管理情報記録メモリ(204)に記録されたBD管理情報は管理情報処理部(207)によって、また、AV記録メモリ(205)に記録されたAVデータはプレゼンテーション処理部(208)によって夫々処理される。
プログラム処理部(206)は、管理情報処理部(207)より再生するプレイリストの情報やプログラムの実行タイミングなどのイベント情報を受け取りプログラムの処理を行う。また、プログラムでは再生するプレイリストを動的に変える事が可能であり、この場合は管理情報処理部(207)に対してプレイリストの再生命令を送ることで実現する。プログラム処理部(206)は、ユーザからのイベント、即ちリモコンキーからのリクエストを受け、ユーザイベントに対応するプログラムがある場合は、実行処理する。
管理情報処理部(207)は、プログラム処理部(206)の指示を受け、対応するプレイリスト及びプレイリストに対応したVOBの管理情報を解析し、プレゼンテーション処理部(208)に対象となるAVデータの再生を指示する。また、管理情報処理部(207)は、プレゼンテーション処理部(208)より基準時刻情報を受け取り、時刻情報に基づいてプレゼンテーション処理部(208)にAVデータ再生の停止指示を行い、また、プログラム処理部(206)に対してプログラム実行タイミングを示すイベントを生成する。
プレゼンテーション処理部(208)は、映像、音声、字幕/イメージ夫々に対応するデコーダを持ち、管理情報処理部(207)からの指示に従い、AVデータのデコード及び出力を行う。映像データ及び字幕/イメージの場合は、デコード後に夫々の専用プレーン、ビデオプレーン(210)及びイメージプレーン(209)に描画され、合成処理部(211)によって映像の合成処理が行われTVなどの表示デバイスへ出力される。
図6で示すように、BDプレーヤは図4で示したBDディスクに記録されているデータ構成に基づいた構成をとっている。
図7は前述したプレーヤ構成を詳細化したブロック図である。図7では、AV記録メモリ(205)はイメージメモリ(308)とトラックバッファ(309)に、プログラム処理部(206)はプログラムプロセッサ(302)とUOPマネージャ(303)に、管理情報処理部(207)はシナリオプロセッサ(305)とプレゼンテーションコントローラ(306)に、プレゼンテーション処理部(208)はクロック(307)、デマルチプレクサ(310)、イメージプロセッサ(311)、ビデオプロセッサ(312)とサウンドプロセッサ(313)に夫々対応/展開している。
BDディスク(201)から読み出されたVOBデータ(MPEGストリーム)はトラックバッファ(309)に、イメージデータ(PNG)はイメージメモリ(308)に夫々記録される。デマルチプレクサ(310)がクロック(307)の時刻に基づき、トラックバッファ(309)に記録されたVOBデータを抜き出し、映像データをビデオプロセッサ(312)に音声データをサウンドプロセッサ(313)に夫々送り込む。ビデオプロセッサ(312)及びサウンドプロセッサ(313)は夫々MPEGシステム規格で定める通りに、デコーダバッファとデコーダから夫々構成されている。即ち、デマルチプレクサ(310)から送りこまれる映像、音声夫々のデータは、夫々のデコーダバッファに一時的に記録され、クロック(307)に従い個々のデコーダでデコード処理される。
イメージメモリ(308)に記録されたPNGは、次の2つの処理方法がある。イメージデータが字幕用の場合は、プレゼンテーションコントローラ(306)によってデコードタイミングが指示される。クロック(307)からの時刻情報をシナリオプロセッサ(305)が一旦受け、適切な字幕表示が行えるように、字幕表示時刻(開始及び終了)になればプレゼンテーションコントローラ(306)に対して字幕の表示、非表示の指示を出す。プレゼンテーションコントローラ(306)からデコード/表示の指示を受けたイメージプロセッサ(311)は対応するPNGデータをイメージメモリ(308)から抜き出し、デコードし、イメージプレーン(314)に描画する。
次に、イメージデータがメニュー用の場合は、プログラムプロセッサ(302)によってデコードタイミングが指示される。プログラムプロセッサ(302)が何時イメージのデコードを指示するかは、プログラムプロセッサ(302)が処理しているBDプログラムに因るものであって一概には決まらない。
イメージデータ及び映像データは、図6で説明したように夫々デコード後にイメージプレーン(314)、ビデオプレーン(315)に記録され、合成処理部(316)によって合成出力される。
BDディスク(201)から読み出された管理情報(シナリオ、AV管理情報)は、管理情報記録メモリ(304)に記録されるが、シナリオ情報(「BD.INFO」及び「XXX.PL」)はシナリオプロセッサ(305)によって読み出され処理される。また、AV管理情報(「YYY.VOBI」)はプレゼンテーションコントローラ(306)によって読み出され処理される。
シナリオプロセッサ(305)は、プレイリストの情報を解析し、プレイリストによって参照されているVOBとその再生位置をプレゼンテーションコントローラ(306)に指示し、プレゼンテーションコントローラ(306)は対象となるVOBの管理情報(「YYY.VOBI」)を解析して、対象となるVOBを読み出すようにドライブコントローラ(317)に指示を出す。
ドライブコントローラ(317)はプレゼンテーションコントローラ(306)の指示に従い、光ピックアップを移動させ、対象となるAVデータの読み出しを行う。読み出されたAVデータは、前述したようにイメージメモリ(308)またはトラックバッファ(309)に記録される。
また、シナリオプロセッサ(305)は、クロック(307)の時刻を監視し、管理情報で設定されているタイミングでイベントをプログラムプロセッサ(302)に投げる。
プログラム記録メモリ(301)に記録されたBDプログラム(「BD.PROG」または「XXX.PROG」)は、プログラムプロセッサ302によって実行処理される。プログラムプロセッサ(302)がBDプログラムを処理するのは、シナリオプロセッサ(305)からイベントが送られてきた場合か、UOPマネージャ(303)からイベントが送られてきた場合である。UOPマネージャ(303)は、ユーザからリモコンキーによってリクエストが送られてきた場合に、プログラムプロセッサ(302)にイベントを生成する。
(アプリケーション空間)
図8は、BD−ROMのアプリケーション空間を示す図である。
図8は、BD−ROMのアプリケーション空間を示す図である。
BD−ROMのアプリケーション空間では、プレイリスト(PlayList)が一つの再生単位になっている。プレイリストはセル(Cell)の再生シーケンスから構成される静的なシナリオと、プログラムによって記述される動的なシナリオを有している。プログラムによる動的なシナリオが無い限り、プレイリストは個々のセルを順に再生するだけであり、また、全てのセルの再生を終了した時点でプレイリストの再生は終了する。一方で、プログラムは、プレイリストを超えての再生記述や、ユーザ選択またはプレーヤの状態によって再生する対象を動的に変えることが可能である。典型的な例としてはメニューがあげられる。BD−ROMの場合、メニューとはユーザの選択によって再生するシナリオ、即ちプレイリストを動的に選択することである。
ここで言うプログラムは、時間イベントまたはユーザイベントによって実行されるイベントハンドラの事である。
時間イベントは、プレイリスト中に埋め込まれた時刻情報に基づいて生成されるイベントである。図7で説明したシナリオプロセッサ(305)からプログラムプロセッサ(302)に送られるイベントがこれに相当する。時間イベントが発行されると、プログラムプロセッサ(302)はIDによって対応付けられるイベントハンドラを実行処理する。前述した通り、実行されるプログラムが他のプレイリストの再生を指示することが可能であり、この場合には、現在再生されているプレイリストの再生は中止され、指定されたプレイリストの再生へと遷移する。
ユーザイベントは、ユーザのリモコンキー操作によって生成されるイベントである。ユーザイベントは大きく2つのタイプに分けられる。一つ目は、カーソルキー(「上」「下」「左」「右」キー)または「決定」キーの操作によって生成されるメニュー選択のイベントである。メニュー選択のイベントに対応するイベントハンドラはプレイリスト内の限られた期間でのみ有効であり(プレイリストの情報として、個々のイベントハンドラの有効期間が設定されている)、リモコンの「上」「下」「左」「右」キーまたは「決定」キーが押された時に有効なイベントハンドラを検索して、有効なイベントハンドラがある場合は当該イベントハンドラが実行処理される。他の場合は、メニュー選択のイベントは無視されることになる。
二つ目のユーザイベントは、「メニュー」キーの操作によって生成されるメニュー呼び出しのイベントである。メニュー呼び出しのイベントが生成されると、グローバルイベントハンドラが呼ばれる。グローバルイベントハンドラはプレイリストに依存せず、常に有効なイベントハンドラである。この機能を使うことにより、DVDのメニューコール(タイトル再生中に音声、字幕メニューなどを呼び出し、音声または字幕を変更後に中断した地点からのタイトル再生を実行する)を実装することができる。
プレイリストで静的シナリオを構成する単位であるセル(Cell)はVOB(MPEGストリーム)の全部または一部の再生区間を参照したものである。セルはVOB内の再生区間を開始、終了時刻の情報として持っている。個々のVOBと一対になっているVOB管理情報(VOBI)は、その内部にタイムマップ(Time MapまたはTM)を有しており、このタイムマップによって前述したVOBの再生、終了時刻をVOB内(即ち対象となるファイル「YYY.VOB」内)での読み出し開始アドレス及び終了アドレスを導き出すことが可能である。なおタイムマップの詳細は後述する。
(VOBの詳細)
図9は、本実施例で使用するMPEGストリーム(VOB)の構成図である。図9に示すように、VOBは複数のVOBU(Video Object Unit)によって構成されている。VOBUは、MPEGビデオストリームで言うGOP(Group Of Pictures)を基準として、音声データも含んだ多重化ストリームとしての一再生単位である。VOBUは0.4秒から1.0秒の時間を持ち、通常は0.5秒の再生時間を持っている。これはMPEGのGOPの構造が通常は15フレーム/秒(NTSCの場合)によって導かれるものである。
図9は、本実施例で使用するMPEGストリーム(VOB)の構成図である。図9に示すように、VOBは複数のVOBU(Video Object Unit)によって構成されている。VOBUは、MPEGビデオストリームで言うGOP(Group Of Pictures)を基準として、音声データも含んだ多重化ストリームとしての一再生単位である。VOBUは0.4秒から1.0秒の時間を持ち、通常は0.5秒の再生時間を持っている。これはMPEGのGOPの構造が通常は15フレーム/秒(NTSCの場合)によって導かれるものである。
VOBUは、その内部にビデオパック(V_PCK)とオーディオパック(A_PCK)を有している。各パックは1セクタ、本実施例の場合は2kB単位で構成されている。
図10は、パックの構成を示した図である。
図10に示すように、ビデオデータ及びオーディオデータといったエレメンタリデータは、ペイロードと呼ばれるパケットのデータ格納領域に先頭から順次入れられていく。ペイロードにはパケットヘッダが付けられ1つのパケットを構成する。パケットヘッダには、ペイロードに格納してあるデータがどのストリームなのか、ビデオなのかオーディオなのか、また、ビデオまたはオーディオが夫々複数ストリームある場合は、どのストリームのデータなのかを識別するためのID(stream_id)と、当該ペイロードのデコード及び表示時刻情報であるタイムスタンプDTS及びPTSが夫々記録されている。PTS/DTSは必ずしも全てのパケットヘッダに記録されている訳ではなく、MPEGによって記録するルールが規定されている。ルールの詳細についてはMPEGシステム(ISO/IEC13818−1)規格書に記述されているので省略する。
図10に示すように、ビデオデータ及びオーディオデータといったエレメンタリデータは、ペイロードと呼ばれるパケットのデータ格納領域に先頭から順次入れられていく。ペイロードにはパケットヘッダが付けられ1つのパケットを構成する。パケットヘッダには、ペイロードに格納してあるデータがどのストリームなのか、ビデオなのかオーディオなのか、また、ビデオまたはオーディオが夫々複数ストリームある場合は、どのストリームのデータなのかを識別するためのID(stream_id)と、当該ペイロードのデコード及び表示時刻情報であるタイムスタンプDTS及びPTSが夫々記録されている。PTS/DTSは必ずしも全てのパケットヘッダに記録されている訳ではなく、MPEGによって記録するルールが規定されている。ルールの詳細についてはMPEGシステム(ISO/IEC13818−1)規格書に記述されているので省略する。
パケットには更にヘッダ(パックヘッダ)が付けられ、パックを構成する。パックヘッダには、当該パックがいつデマルチプレクサを通過し、個々のエレメンタリストリームのデコーダバッファに入力されるかを示すタイムスタンプSCR(System Clock Reference)が記録されている。
(VOBのインターリーブ記録)
次に図11及び図12を用いてVOBファイルのインターリーブ記録について説明する。
次に図11及び図12を用いてVOBファイルのインターリーブ記録について説明する。
図11上段は、前述したプレーヤ構成図の一部である。図の通り、BDディスク上のデータは、光ピックアップを通してVOB即ちMPEGストリームであればトラックバッファへ入力され、PNG即ちイメージデータであればイメージメモリへと入力される。
トラックバッファはFIFOであり、入力されたVOBのデータは入力された順にデマルチプレクサへと送られる。この時、前述したSCRに従って個々のパックはトラックバッファから引き抜かれデマルチプレクサを介してビデオプロセッサまたはサウンドプロセッサへとデータが送り届けられる。一方で、イメージデータの場合は、どのイメージを描画するかはプレゼンテーションコントローラによって指示される。また、描画に使ったイメージデータは、字幕用イメージデータの場合は同時にイメージメモリから削除されるが、メニュー用のイメージデータの場合は、イメージメモリ内にそのまま残される。これはメニューの描画はユーザ操作に依存するところがあるため、同一イメージを複数回描画する可能性があるためである。
図11下段は、BDディスク上でのVOBファイル及びPNGファイルのインターリーブ記録を示す図である。一般的にROM、例えばCD−ROMやDVD−ROMの場合、一連の連続再生単位となるAVデータは連続記録されている。これは、連続記録されている限り、ドライブは順次データを読み出しプレーヤ側に送り届けるだけで良いが、連続データが分断されてディスク上に離散配置されている場合は、個々の連続区間の間でシーク操作が入ることになり、この間データの読み出しが止まることになり、データの供給が止まる可能性があるからである。BD−ROMの場合も同様に、VOBファイルは連続領域に記録することができる方が望ましいが、例えば字幕データのようにVOBに記録されている映像データと同期して再生されるデータがあり、VOBファイルと同様に字幕データも何らかの方法によってBDディスクから読み出す事が必要になる。
字幕データの読み出し方法の一手段として、VOBの再生開始前に一まとめで字幕用のイメージデータ(PNGファイル)を読み出してしまう方法がある。しかしながら、この場合には一時記録に使用する大量のメモリが必要となり、非現実的である。
そこで、本実施の形態では、VOBファイルを幾つかのブロックに分けて、イメージデータとインターリーブ記録する方式を使用している。図11下段はそのインターリーブ記録を説明した図である。VOBファイルとイメージデータを適切にインターリーブ配置することで、前述したような大量の一時記録メモリ無しに、必要なタイミングでイメージデータをイメージメモリに格納することが可能になる。しかしながらイメージデータを読み出している際には、VOBデータの読み込みは当然のことながら停止することになる。
図12は、この問題を解決するトラックバッファを使ったVOBデータ連続供給モデルを説明する図である。
既に説明したように、VOBのデータは、一旦トラックバッファに蓄積される。トラックバッファへのデータ入力レートとトラックバッファからのデータ出力レートの間に差を設けると、BDディスクからデータを読み出し続けている限り、トラックバッファのデータ蓄積量は増加をしていくことになる。ここでトラックバッファへの入力レートをVa、トラックバッファからの出力レートをVbとする。図12の上段に記すようにVOBの一連続記録領域が論理アドレスの”a1”から”a2”まで続くとする。”a2”から”a3”の間は、イメージデータが記録されていて、VOBデータの読み出しが行えない区間であるとする。
図12の下段は、トラックバッファの内部を示す図である。横軸が時間、縦軸がトラックバッファ内部に蓄積されているデータ量を示している。時刻”t1”がVOBの一連続記録領域の開始点である”a1”の読み出しを開始した時刻を示している。この時刻以降、トラックバッファにはレートVa−Vbでデータが蓄積されていくことになる。このレートは言うまでもなくトラックバッファの入出力レートの差である。時刻”t2”は一連続記録領域の終了点である”a2”のデータを読み込む時刻である。即ち時刻”t1”から”t2”の間レートVa−Vbでトラックバッファ内はデータ量が増加していき、時刻”t2”でのデータ蓄積量はB(t2)は下式によって求めることができる。
B(t2) = (Va−Vb)×(t2−t1) (式1)
この後、BDディスク上のアドレス”a3”まではイメージデータが続くため、トラックバッファへの入力は0となり、出力レートである”−Vb”でトラックバッファ内のデータ量は減少していくことになる。これは読み出し位置”a3”まで、時刻でいう”t3”までになる。
B(t2) = (Va−Vb)×(t2−t1) (式1)
この後、BDディスク上のアドレス”a3”まではイメージデータが続くため、トラックバッファへの入力は0となり、出力レートである”−Vb”でトラックバッファ内のデータ量は減少していくことになる。これは読み出し位置”a3”まで、時刻でいう”t3”までになる。
ここで大事なことは、時刻”t3”より前にトラックバッファに蓄積されているデータ量が0になると、デコーダへ供給するVOBのデータが無くなってしまい、VOBの再生がストップしてしまう可能性がある。しかしながら、時刻”t3”でトラックバッファにデータが残っている場合には、VOBの再生がストップすることなく連続できることを意味している。
この条件は下式によって示すことができる。
B(t2) ≧ −Vb×(t3−t2) (式2)
即ち、式2を満たすようにイメージデータの配置を決めればよい事になる。
B(t2) ≧ −Vb×(t3−t2) (式2)
即ち、式2を満たすようにイメージデータの配置を決めればよい事になる。
(ナビゲーションデータ構造)
図13から図19を用いて、BD−ROMのナビゲーションデータ(BD管理情報)構造について説明をする。図13は、VOB管理情報ファイル(”YYY.VOBI”)の内部構造を示した図である。
図13から図19を用いて、BD−ROMのナビゲーションデータ(BD管理情報)構造について説明をする。図13は、VOB管理情報ファイル(”YYY.VOBI”)の内部構造を示した図である。
VOB管理情報は、当該VOBのストリーム属性情報(Attribute)とタイムマップ(TMAP)を有している。ストリーム属性は、ビデオ属性(Video)、オーディオ属性(Audio#0〜Audio#m)個々に持つ構成となっている。特にオーディオストリームの場合は、VOBが複数本のオーディオストリームを同時に持つことができることから、オーディオストリーム数(Number)によって、データフィールドの有無を示している。
下記はビデオ属性(Video)の持つフィールドと夫々が持ち得る値である。
圧縮方式(Coding):
MPEG1
MPEG2
MPEG4
解像度(Resolution):
1920x1080
1280x720
720x480
720x565
アスペクト比(Aspect)
4:3
16:9
フレームレート(Framerate)
60
59.94
50
30
29.97
25
24 。
圧縮方式(Coding):
MPEG1
MPEG2
MPEG4
解像度(Resolution):
1920x1080
1280x720
720x480
720x565
アスペクト比(Aspect)
4:3
16:9
フレームレート(Framerate)
60
59.94
50
30
29.97
25
24 。
下記はオーディオ属性(Audio)の持つフィールドと夫々が持ち得る値である。
圧縮方式(Coding):
AC3
MPEG1
MPEG2
LPCM
チャンネル数(Ch):
1〜8
言語属性(Language):
タイムマップ(TMAP)はVOBU毎の情報を持つテーブルであって、当該VOBが有するVOBU数(Number)と各VOBU情報(VOBU#1〜VOBU#n)を持つ。個々のVOBU情報は、VOBUの再生時間長(Duration)とVOBUのデータサイズ(Size)を夫々有している。
圧縮方式(Coding):
AC3
MPEG1
MPEG2
LPCM
チャンネル数(Ch):
1〜8
言語属性(Language):
タイムマップ(TMAP)はVOBU毎の情報を持つテーブルであって、当該VOBが有するVOBU数(Number)と各VOBU情報(VOBU#1〜VOBU#n)を持つ。個々のVOBU情報は、VOBUの再生時間長(Duration)とVOBUのデータサイズ(Size)を夫々有している。
図14はVOBU情報の詳細を説明する図である。
広く知られているように、MPEGストリームは時間的側面とデータサイズとしての側面との2つを有している。例えば、音声の圧縮規格であるAC3は固定ビットレートでの圧縮を行っているため、時間とアドレスとの関係は1次式によって求めることができる。しかしながらMPEGビデオデータの場合は、個々のフレームは固定の表示時間、例えばNTSCの場合は1フレームは1/29.97秒の表示時間を持つが、個々のフレームの圧縮後のデータサイズは絵の特性や圧縮に使ったピクチャタイプ、いわゆるI/P/Bピクチャによってデータサイズは大きく変わってくる。従って、MPEGビデオの場合は、時間とアドレスの関係は一般式の形で表現することは不可能である。
広く知られているように、MPEGストリームは時間的側面とデータサイズとしての側面との2つを有している。例えば、音声の圧縮規格であるAC3は固定ビットレートでの圧縮を行っているため、時間とアドレスとの関係は1次式によって求めることができる。しかしながらMPEGビデオデータの場合は、個々のフレームは固定の表示時間、例えばNTSCの場合は1フレームは1/29.97秒の表示時間を持つが、個々のフレームの圧縮後のデータサイズは絵の特性や圧縮に使ったピクチャタイプ、いわゆるI/P/Bピクチャによってデータサイズは大きく変わってくる。従って、MPEGビデオの場合は、時間とアドレスの関係は一般式の形で表現することは不可能である。
当然の事として、MPEGビデオデータを多重化しているMPEGシステムストリーム、即ちVOBも時間とデータとを一般式の形で表現することは不可能である。これに代わって、VOB内での時間とアドレスとの関係を結びつけるのがタイムマップ(TMAP)である。図14に示すように、各VOBU毎にVOBU内のフレーム数と、VOBU内のパック数を夫々エントリーとして持つテーブルがタイムマップ(TMAP)である。
図15を使って、タイムマップ(TMAP)の使い方を説明する。
図15に示すように時刻情報が与えられた場合、先ずは当該時刻がどのVOBUに属するのかを検索する。これは、タイム亜マップのVOBU毎のフレーム数を加算して行き、フレーム数の和が当該時刻を(フレーム数に換算して)超えるまたは一致するVOBUが当該VOBUになる。次にタイムマップのVOBU毎のサイズを当該VOBUの直前のVOBUまで加算して行き、その値が与えられた時刻を含むフレームを再生するために読み出すべきパックの先頭アドレスになっている。
図15に示すように時刻情報が与えられた場合、先ずは当該時刻がどのVOBUに属するのかを検索する。これは、タイム亜マップのVOBU毎のフレーム数を加算して行き、フレーム数の和が当該時刻を(フレーム数に換算して)超えるまたは一致するVOBUが当該VOBUになる。次にタイムマップのVOBU毎のサイズを当該VOBUの直前のVOBUまで加算して行き、その値が与えられた時刻を含むフレームを再生するために読み出すべきパックの先頭アドレスになっている。
次に図16を使って、プレイリスト情報(”XXX.PL”)の内部構造を説明する。
プレイリスト情報は、セルリスト(CellList)とイベントリスト(EventList)から構成されている。
プレイリスト情報は、セルリスト(CellList)とイベントリスト(EventList)から構成されている。
セルリスト(CellList)は、プレイリスト内の再生セルシーケンスであり、本リストの記述順でセルが再生される事になる。セルリスト(CellList)の中身は、セルの数(Number)と各セル情報(Cell#1〜Cell#n)である。
セル情報(Cell#)は、VOBファイル名(VOBName)、当該VOB内での有効区間開始時刻(In)及び有効区間終了時刻(Out)と、字幕テーブル(SubtitleTable)を持っている。有効区間開始時刻(In)及び有効区間終了時刻(Out)は、夫々当該VOB内でのフレーム番号で表現され、前述したタイムマップ(TMAP)を使うことによって再生に必要なVOBデータのアドレスを得る事ができる。
字幕テーブル(SubtitleTable)は、当該VOBと同期再生される字幕情報を持つテーブルである。字幕は音声同様に複数の言語を持つことができ、字幕テーブル(SubtitleTable)最初の情報も言語数(Number)とそれに続く個々の言語ごとのテーブル(Language#1〜Language#k)から構成されている。
各言語のテーブル(Language#)は、言語情報(Language)と、個々に表示される字幕の字幕情報数(Number)と、個々に表示される字幕の字幕情報(Speech#1〜Speech#j)から構成され、字幕情報(Speech#)は対応するイメージデータファイル名(Name)、字幕表示開始時刻(In)及び字幕表示終了時刻(Out)と、字幕の表示位置(Position)から構成されている。
イベントリスト(EventList)は、当該プレイリスト内であげられるイベントを定義したテーブルである。イベントリストは、イベント数(Number)に続いて個々のイベント(Event#1〜Event#m)から構成され、個々のイベント(Event#)は、イベントの種類(Type)、イベントのID(ID)、イベント生成時刻(Time)と有効期間(Duration)から構成されている。
図17は、個々のプレイリスト毎のイベントハンドラ(時間イベントと、メニュー選択用のユーザイベント)を持つイベントハンドラテーブル(”XXX.PROG”)である。
イベントハンドラテーブルは、定義されているイベントハンドラ/プログラム数(Number)と個々のイベントハンドラ/プログラム(Program#1〜Program#n)を有している。各イベントハンドラ/プログラム(Program#)内の記述は、イベントハンドラ開始の定義(<event_handler>タグ)と前述したイベントのIDと対になるイベントハンドラのID(ID)を持ち、その後に当該プログラムもFunctionに続く括弧”{”と”}”の間に記述する。
次に図18を用いてBDディスク全体に関する情報(”BD.INFO”)の内部構造について説明をする。
BDディスク全体情報は、タイトルリスト(TitleList)とグローバルイベント用のイベントテーブル(EventTable)から構成されている。
タイトルリスト(TitleList)は、ディスク内のタイトル数(Number)と、これに続く各タイトル情報(Title#1〜Title#n)から構成されている。個々のタイトル情報(Title)は、タイトルに含まれるプレイリストのテーブル(PLTalble)とタイトル内のチャプタリスト(ChapterList)を含んでいる。プレイリストのテーブル(PLTable)はタイトル内のプレイリストの数(Number)と、プレイリスト名(Name)即ちプレイリストのファイル名を有している。
チャプタリスト(ChapterList)は、当該タイトルに含まれるチャプタ数(Number)と個々のチャプタ情報(Chapter#1〜Chapter#n)から構成され、チャプタ情報(Chapter#)は当該チャプタが含むセルのテーブル(CellTable)を持ち、セルのテーブル(CellTable)はセル数(Number)と個々のセルのエントリ情報(CellEntry#1〜CellEntry#k)から構成されている。セルのエントリ情報(CellEntry#)は当該セルを含むプレイリスト名と、プレイリスト内でのセル番号によって記述されている。
イベントリスト(EventList)は、グローバルイベントの数(Number)と個々のグローバルイベントの情報を持っている。ここで注意すべきは、最初に定義されるグローバルイベントは、ファーストイベント(FirstEvent)と呼ばれ、BDディスクがプレーヤに挿入された時、最初に呼ばれるイベントである。グローバルイベント用イベント情報はイベントタイプ(Type)とイベントのID(ID)だけを持っている。
図19は、グローバルイベントハンドラのプログラムのテーブル(”BD.PROG”)である。本テーブルは、図17で説明したイベントハンドラテーブルと同一内容である。
(イベント発生のメカニズム)
図20から図22を使ってイベント発生のメカニズムについて説明する。
図20から図22を使ってイベント発生のメカニズムについて説明する。
図20はタイムイベントの例である。
前述したとおり、タイムイベントはプレイリスト情報(”XXX.PL”)のイベントリスト(EventList)で定義される。タイムイベントとして定義されているイベント、即ちイベントタイプ(Type)が”TimeEvent”の場合、イベント生成時刻(”t1”)になった時点で、ID”Ex1”を持つタイムイベントがシナリオプロセッサからプログラムプロセッサに対してあげられる。プログラムプロセッサは、イベントID”Ex1”を持つイベントハンドラを探し、対象のイベントハンドラを実行処理する。例えば、本実施例の場合では、2つのボタンイメージの描画を行うなどを行うことができる。
前述したとおり、タイムイベントはプレイリスト情報(”XXX.PL”)のイベントリスト(EventList)で定義される。タイムイベントとして定義されているイベント、即ちイベントタイプ(Type)が”TimeEvent”の場合、イベント生成時刻(”t1”)になった時点で、ID”Ex1”を持つタイムイベントがシナリオプロセッサからプログラムプロセッサに対してあげられる。プログラムプロセッサは、イベントID”Ex1”を持つイベントハンドラを探し、対象のイベントハンドラを実行処理する。例えば、本実施例の場合では、2つのボタンイメージの描画を行うなどを行うことができる。
図21はメニュー操作を行うユーザーイベントの例である。
前述したとおり、メニュー操作を行うユーザイベントもプレイリスト情報(”XXX.PL”)のイベントリスト(EventList)で定義される。ユーザイベントとして定義されるイベント、即ちイベントタイプ(Type)が”UserEvent”の場合、イベント生成時刻(”t1”)になった時点で、当該ユーザイベントがレディとなる。この時、イベント自身は未だ生成されてはいない。当該イベントは、有効規格情報(Duration)で記される期間レディ状態にある。
前述したとおり、メニュー操作を行うユーザイベントもプレイリスト情報(”XXX.PL”)のイベントリスト(EventList)で定義される。ユーザイベントとして定義されるイベント、即ちイベントタイプ(Type)が”UserEvent”の場合、イベント生成時刻(”t1”)になった時点で、当該ユーザイベントがレディとなる。この時、イベント自身は未だ生成されてはいない。当該イベントは、有効規格情報(Duration)で記される期間レディ状態にある。
図21に描くように、ユーザがリモコンキーの「上」「下」「左」「右」キーまたは「決定」キーを押した場合、先ずUOPイベントがUOPマネージャによって生成されプログラムプロセッサに上げられる。プログラムプロセッサは、シナリオプロセッサに対してUOPイベントを流し、シナリオプロセッサはUOPイベントを受け取った時刻に有効なユーザイベントが存在するかを検索し、対象となるユーザイベントがあった場合は、ユーザイベントを生成し、プログラムプロセッサに持ち上げる。プログラムプロセッサでは、イベントID”Ev1”を持つイベントハンドラを探し、対象のイベントハンドラを実行処理する。例えば、本実施例の場合では、プレイリスト#2の再生を開始する。
生成されるユーザイベントには、どのリモコンキーがユーザによって押されたかの情報は含まれていない。選択されたリモコンキーの情報は、UOPイベントによってプログラムプロセッサに伝えられ、仮想プレーヤが持つレジスタSPRM(8)に記録保持される。イベントハンドラのプログラムは、このレジスタの値を調べ分岐処理を実行することが可能である。
図22はグローバルイベントの例である。
前述したとおり、グローバルイベントはBDディスク全体に関する情報(”BD.INFO”)のイベントリスト(EventList)で定義される。グローバルイベントとして定義されるイベント、即ちイベントタイプ(Type)が”GlobalEvent”の場合、ユーザのリモコンキー操作があった場合にのみイベントが生成される。
前述したとおり、グローバルイベントはBDディスク全体に関する情報(”BD.INFO”)のイベントリスト(EventList)で定義される。グローバルイベントとして定義されるイベント、即ちイベントタイプ(Type)が”GlobalEvent”の場合、ユーザのリモコンキー操作があった場合にのみイベントが生成される。
ユーザが”メニュー”を押した場合、先ずUOPイベントがUOPマネージャによって生成されプログラムプロセッサに上げられる。プログラムプロセッサは、シナリオプロセッサに対してUOPイベントを流し、シナリオプロセッサは、該当するグローバルイベントを生成し、プログラムプロセッサに送る。プログラムプロセッサでは、イベントID”menu”を持つイベントハンドラを探し、対象のイベントハンドラを実行処理する。例えば、本実施例の場合ではプレイリスト#3の再生を開始している。
本実施例では、単に”メニュー”キーと呼んでいるが、DVDのように複数のメニューキーがあってもよい。各メニューキーに対応するIDを夫々定義することで対応することが可能である。
(仮想プレーヤマシン)
図23を用いてプログラムプロセッサの機能構成を説明する。
図23を用いてプログラムプロセッサの機能構成を説明する。
プログラムプロセッサは、内部に仮想プレーヤマシンを持つ処理モジュールである。仮想プレーヤマシンはBD−ROMとして定義された機能モデルであって、各BD−ROMプレーヤの実装には依存しないものである。即ち、どのBD−ROMプレーヤにおいても同様の機能を実行するできることを保証している。
仮想プレーヤマシンは大きく2つの機能を持っている。プログラミング関数とプレーヤ変数(レジスタ)である。プログラミング関数は、Java(登録商標) Scriptをベースとして、以下に記す2つの機能をBD−ROM固有関数として定義している。
リンク関数:現在の再生を停止し、指定するプレイリスト、セル、時刻からの再生を開始する
Link(PL#,Cell#,time)
PL# : プレイリスト名
Cell# : セル番号
time : セル内での再生開始時刻
PNG描画関数:指定PNGデータをイメージプレーンに描画する
Draw(File,X,Y)
File : PNGファイル名
X : X座標位置
Y : Y座標位置
イメージプレーンクリア関数:イメージプレーンの指定領域をクリアする
Clear(X,Y,W,H)
X : X座標位置
Y : Y座標位置
W : X方向幅
H : Y方向幅
プレーヤ変数は、プレーヤの状態を示すシステムパラメータ(SPRM)と一般用途として使用可能なゼネラルパラメータ(GPRM)とがある。
Link(PL#,Cell#,time)
PL# : プレイリスト名
Cell# : セル番号
time : セル内での再生開始時刻
PNG描画関数:指定PNGデータをイメージプレーンに描画する
Draw(File,X,Y)
File : PNGファイル名
X : X座標位置
Y : Y座標位置
イメージプレーンクリア関数:イメージプレーンの指定領域をクリアする
Clear(X,Y,W,H)
X : X座標位置
Y : Y座標位置
W : X方向幅
H : Y方向幅
プレーヤ変数は、プレーヤの状態を示すシステムパラメータ(SPRM)と一般用途として使用可能なゼネラルパラメータ(GPRM)とがある。
図24はシステムパラメータ(SPRM)の一覧である。
SPRM(0) : 言語コード
SPRM(1) : 音声ストリーム番号
SPRM(2) : 字幕ストリーム番号
SPRM(3) : アングル番号
SPRM(4) : タイトル番号
SPRM(5) : チャプタ番号
SPRM(6) : プログラム番号
SPRM(7) : セル番号
SPRM(8) : 選択キー情報
SPRM(9) : ナビゲーションタイマー
SPRM(10) : 再生時刻情報
SPRM(11) : カラオケ用ミキシングモード
SPRM(12) : パレンタル用国情報
SPRM(13) : パレンタルレベル
SPRM(14) : プレーヤ設定値(ビデオ)
SPRM(15) : プレーヤ設定値(オーディオ)
SPRM(16) : 音声ストリーム用言語コード
SPRM(17) : 音声ストリーム用言語コード(拡張)
SPRM(18) : 字幕ストリーム用言語コード
SPRM(19) : 字幕ストリーム用言語コード(拡張)
SPRM(20) : プレーヤリージョンコード
SPRM(21) : 予備
SPRM(22) : 予備
SPRM(23) : 再生状態
SPRM(24) : 予備
SPRM(25) : 予備
SPRM(26) : 予備
SPRM(27) : 予備
SPRM(28) : 予備
SPRM(29) : 予備
SPRM(30) : 予備
SPRM(31) : 予備
なお、本実施例では、仮想プレーヤのプログラミング関数をJava(登録商標) Scriptベースとしたが、Java(登録商標) Scriptではなく、UNIX(登録商標) OSなどで使われているB−Shellや、Perl Scriptなど他のプログラミング関数であっても構わなく、言い換えれば、本発明はJava(登録商標) Scriptに限定されるものでは無い。
SPRM(0) : 言語コード
SPRM(1) : 音声ストリーム番号
SPRM(2) : 字幕ストリーム番号
SPRM(3) : アングル番号
SPRM(4) : タイトル番号
SPRM(5) : チャプタ番号
SPRM(6) : プログラム番号
SPRM(7) : セル番号
SPRM(8) : 選択キー情報
SPRM(9) : ナビゲーションタイマー
SPRM(10) : 再生時刻情報
SPRM(11) : カラオケ用ミキシングモード
SPRM(12) : パレンタル用国情報
SPRM(13) : パレンタルレベル
SPRM(14) : プレーヤ設定値(ビデオ)
SPRM(15) : プレーヤ設定値(オーディオ)
SPRM(16) : 音声ストリーム用言語コード
SPRM(17) : 音声ストリーム用言語コード(拡張)
SPRM(18) : 字幕ストリーム用言語コード
SPRM(19) : 字幕ストリーム用言語コード(拡張)
SPRM(20) : プレーヤリージョンコード
SPRM(21) : 予備
SPRM(22) : 予備
SPRM(23) : 再生状態
SPRM(24) : 予備
SPRM(25) : 予備
SPRM(26) : 予備
SPRM(27) : 予備
SPRM(28) : 予備
SPRM(29) : 予備
SPRM(30) : 予備
SPRM(31) : 予備
なお、本実施例では、仮想プレーヤのプログラミング関数をJava(登録商標) Scriptベースとしたが、Java(登録商標) Scriptではなく、UNIX(登録商標) OSなどで使われているB−Shellや、Perl Scriptなど他のプログラミング関数であっても構わなく、言い換えれば、本発明はJava(登録商標) Scriptに限定されるものでは無い。
(プログラムの例)
図25及び図26は、イベントハンドラでのプログラムの例である。
図25及び図26は、イベントハンドラでのプログラムの例である。
図25は、2つの選択ボタンを持ったメニューの例である。
セル(PlayList#1.Cell#1)先頭でタイムイベントを使って図25左側のプログラムが実行される。ここでは、最初にゼネラルパラメータの一つGPRM(0)に”1”がセットされている。GPRM(0)は、当該プログラムの中で、選択されているボタンを識別するのに使っている。最初の状態では、左側に配置するボタン1が選択されている事を初期値として持たされている。
セル(PlayList#1.Cell#1)先頭でタイムイベントを使って図25左側のプログラムが実行される。ここでは、最初にゼネラルパラメータの一つGPRM(0)に”1”がセットされている。GPRM(0)は、当該プログラムの中で、選択されているボタンを識別するのに使っている。最初の状態では、左側に配置するボタン1が選択されている事を初期値として持たされている。
次に、PNGの描画を描画関数であるDrawを使ってボタン1、ボタン2夫々について行っている。ボタン1は、座標(10、200)を起点(左端)としてPNGイメージ”1black.png”を描画している。ボタン2は、座標(330,200)を起点(左端)としてPNGイメージ”2white.png”を描画している。
また、本セル最後ではタイムイベントを使って図25右側のプログラムが実行される。ここでは、Link関数を使って当該セルの先頭から再度再生するように指定している。
図26は、メニュー選択のユーザイベントのイベントハンドラの例である。
「左」キー、「右」キー、「決定」キー何れかのリモコンキーが押された場合夫々に対応するプログラムがイベントハンドラに書かれている。ユーザがリモコンキーを押した場合、図21で説明したとおり、ユーザイベントが生成され、図26のイベントハンドラが起動されることになる。本イベントハンドラでは、選択ボタンを識別しているGPRM(0)の値と、選択されたリモコンキーを識別するSPRM(8)を使って分岐処理を行っている。
「左」キー、「右」キー、「決定」キー何れかのリモコンキーが押された場合夫々に対応するプログラムがイベントハンドラに書かれている。ユーザがリモコンキーを押した場合、図21で説明したとおり、ユーザイベントが生成され、図26のイベントハンドラが起動されることになる。本イベントハンドラでは、選択ボタンを識別しているGPRM(0)の値と、選択されたリモコンキーを識別するSPRM(8)を使って分岐処理を行っている。
条件1)ボタン1が選択されている、かつ、選択キーが「右」キーの場合
GPRM(0)を2に再設定して、選択状態にあるボタンを右ボタン2に変更する。
ボタン1、ボタン2のイメージを夫々書き換える。
GPRM(0)を2に再設定して、選択状態にあるボタンを右ボタン2に変更する。
ボタン1、ボタン2のイメージを夫々書き換える。
条件2)選択キーが「決定(OK)」の場合で、ボタン1が選択されている場合、プレイリスト#2の再生を開始する
条件3)選択キーが「決定(OK)」の場合で、ボタン2が選択されている場合、プレイリスト#3の再生を開始する。
条件3)選択キーが「決定(OK)」の場合で、ボタン2が選択されている場合、プレイリスト#3の再生を開始する。
上記のようにして実行処理が行われる。
(プレーヤ処理フロー)
次に図27から図30を用いてプレーヤでの処理フローを説明する。
(プレーヤ処理フロー)
次に図27から図30を用いてプレーヤでの処理フローを説明する。
図27は、AV再生までの基本処理フローである。
BDディスクを挿入すると(S101)、BD−ROMプレーヤはBD.INFOファイルの読み込みと解析(S102)、BD.PROGの読み込み(S103)を実行する。BD.INFO及びBD.PROGは共に管理情報記録メモリに一旦格納され、シナリオプロセッサによって解析される。
BDディスクを挿入すると(S101)、BD−ROMプレーヤはBD.INFOファイルの読み込みと解析(S102)、BD.PROGの読み込み(S103)を実行する。BD.INFO及びBD.PROGは共に管理情報記録メモリに一旦格納され、シナリオプロセッサによって解析される。
続いて、シナリオプロセッサは、BD.INFOファイル内のファーストイベント(FirstEvent)情報に従い、最初のイベントを生成する(S104)。生成されたファーストイベントは、プログラムプロセッサで受け取られ、当該イベントに対応するイベントハンドラを実行処理する(S105)。
ファーストイベントに対応するイベントハンドラには、最初に再生するべきプレイリスト情報が記録されていることが期待される。仮に、プレイリスト再生が指示されていない場合には、プレーヤは何も再生することなく、ユーザイベントを受け付けるのを待ち続けるだけになる。この場合、ユーザイベントを受け付けるのを待ち続けることになる(S201)。BD−ROMプレーヤはがユーザからのリモコン操作を受け付けると、UOPマネージャはプログラムマネージャに対してUOPイベントを立ち上げる(S202)。
プログラムマネージャは、UOPイベントがメニューキーによるものであるかを判別し(S203)、メニューキーの場合は、シナリオプロセッサにUOPイベントを流し、シナリオプロセッサがユーザイベントを生成する(S204)。プログラムプロセッサは生成されたユーザイベントに対応するイベントハンドラを実行処理する(S205)。
図28は、PL再生開始からVOB再生開始までの処理フローである。
前述したように、ファーストイベントハンドラまたはグローバルイベントハンドラによってプレイリスト再生が開始される(S301)。シナリオプロセッサは、再生対象のプレイリスト再生に必要な情報として、プレイリスト情報”XXX.PL”の読み込みと解析(S302)、プレイリストに対応するプログラム情報”XXX.PROG”の読み込みを行う(S303)。続いてシナリオプロセッサは、プレイリストに登録されているセル情報に基づいてセルの再生を開始する(S304)。セル再生は、シナリオプロセッサからプレゼンテーションコントローラに対して要求が出さる事を意味し、プレゼンテーションコントローラはAV再生を開始する(S305)。
前述したように、ファーストイベントハンドラまたはグローバルイベントハンドラによってプレイリスト再生が開始される(S301)。シナリオプロセッサは、再生対象のプレイリスト再生に必要な情報として、プレイリスト情報”XXX.PL”の読み込みと解析(S302)、プレイリストに対応するプログラム情報”XXX.PROG”の読み込みを行う(S303)。続いてシナリオプロセッサは、プレイリストに登録されているセル情報に基づいてセルの再生を開始する(S304)。セル再生は、シナリオプロセッサからプレゼンテーションコントローラに対して要求が出さる事を意味し、プレゼンテーションコントローラはAV再生を開始する(S305)。
AV再生の開始(S401)を開始すると、プレゼンテーションコントローラは再生するセルに対応するVOBの情報ファイル(XXX.VOBI)を読み込み及び解析をする(S402)。プレゼンテーションコントローラは、タイムマップを使って再生開始するVOBUとそのアドレスを特定し、ドライブコントローラに読み出しアドレスを指示し、ドライブコントローラは対象となるVOBデータを読み出し(S403)、VOBデータがデコーダに送られ再生が開始される(S404)。VOB再生は、当該VOBの再生区間が終了するまで続けられ(S405)、終了すると次のセル再生S304へ移行する。次にセルが無い場合は、再生が停止する(S406)。
図29は、AV再生開始後からのイベント処理フローである。
BD−ROMプレーヤはイベントドリブン型のプレーヤモデルである。プレイリストの再生を開始すると、タイムイベント系、ユーザイベント系、字幕表示系のイベント処理プロセスが夫々起動され、平行してイベント処理を実行するようになる。
BD−ROMプレーヤはイベントドリブン型のプレーヤモデルである。プレイリストの再生を開始すると、タイムイベント系、ユーザイベント系、字幕表示系のイベント処理プロセスが夫々起動され、平行してイベント処理を実行するようになる。
S500系の処理は、タイムイベント系の処理フローである。
プレイリスト再生開始後(S501)、プレイリスト再生が終了しているかを確認するステップ(S502)を経て、シナリオプロセッサは、タイムイベント発生時刻になったかを確認する(S503)。タイムイベント発生時刻になっている場合には、シナリオプロセッサはタイムイベントを生成し(S504)、プログラムプロセッサがタイムイベントを受け取りイベントハンドラを実行処理する(S505)。
プレイリスト再生開始後(S501)、プレイリスト再生が終了しているかを確認するステップ(S502)を経て、シナリオプロセッサは、タイムイベント発生時刻になったかを確認する(S503)。タイムイベント発生時刻になっている場合には、シナリオプロセッサはタイムイベントを生成し(S504)、プログラムプロセッサがタイムイベントを受け取りイベントハンドラを実行処理する(S505)。
ステップS503でタイムイベント発生時刻になっていない場合、または、ステップS504でイベントハンドラ実行処理後は再度ステップS502へ戻り、上述した処理を繰り返す。また、ステップS502でプレイリスト再生が終了したことが確認されると、タイムイベント系の処理は強制的に終了する。
S600系の処理は、ユーザイベント系の処理フローである。
プレイリスト再生開始後(S601)、プレイリスト再生終了確認ステップ(S602)を経て、UOP受付確認ステップの処理に移る(S603)。UOPの受付があった場合、UOPマネージャはUOPイベントを生成し(S604)、UOPイベントを受け取ったプログラムプロセッサはUOPイベントがメニューコールであるかを確認し(S605)、メニューコールであった場合は、プログラムプロセッサはシナリオプロセッサにイベントを生成させ(S607)、プログラムプロセッサはイベントハンドラを実行処理する(S608)。
プレイリスト再生開始後(S601)、プレイリスト再生終了確認ステップ(S602)を経て、UOP受付確認ステップの処理に移る(S603)。UOPの受付があった場合、UOPマネージャはUOPイベントを生成し(S604)、UOPイベントを受け取ったプログラムプロセッサはUOPイベントがメニューコールであるかを確認し(S605)、メニューコールであった場合は、プログラムプロセッサはシナリオプロセッサにイベントを生成させ(S607)、プログラムプロセッサはイベントハンドラを実行処理する(S608)。
ステップS605でUOPイベントがメニューコールで無いと判断された場合、UOPイベントはカーソルキーまたは「決定」キーによるイベントである事を示している。この場合、現在時刻がユーザイベント有効期間内であるかをシナリオプロセッサが判断し(S606)、有効期間内である場合には、シナリオプロセッサがユーザイベントを生成し(S607)、プログラムプロセッサが対象のイベントハンドラを実行処理する(S608)。
ステップS603でUOP受付が無い場合、ステップS606で現在時刻がユーザイベント有効期間に無い場合、または、ステップS608でイベントハンドラ実行処理後は再度ステップS602へ戻り、上述した処理を繰り返す。また、ステップS602でプレイリスト再生が終了したことが確認されると、ユーザイベント系の処理は強制的に終了する。
図30は字幕処理のフローである。
プレイリスト再生開始後(S701)、プレイリスト再生終了確認ステップ(S702)を経て、字幕描画開始時刻確認ステップに移る(S703)。字幕描画開始時刻の場合、シナリオプロセッサはプレゼンテーションコントローラに字幕描画を指示し、プレゼンテーションコントローラはイメージプロセッサに字幕描画を指示する(S704)。ステップS703で字幕描画開始時刻で無いと判断された場合、字幕表示終了時刻であるかを確認する(S705)。字幕表示終了時刻であると判断された場合は、プレゼンテーションコントローラがイメージプロセッサに字幕消去指示を行い、描画されている字幕をイメージプレーンから消去する(S706)。
プレイリスト再生開始後(S701)、プレイリスト再生終了確認ステップ(S702)を経て、字幕描画開始時刻確認ステップに移る(S703)。字幕描画開始時刻の場合、シナリオプロセッサはプレゼンテーションコントローラに字幕描画を指示し、プレゼンテーションコントローラはイメージプロセッサに字幕描画を指示する(S704)。ステップS703で字幕描画開始時刻で無いと判断された場合、字幕表示終了時刻であるかを確認する(S705)。字幕表示終了時刻であると判断された場合は、プレゼンテーションコントローラがイメージプロセッサに字幕消去指示を行い、描画されている字幕をイメージプレーンから消去する(S706)。
字幕描画ステップS704終了後、字幕消去ステップS706終了後、または、字幕表示終了時刻確認ステップS705で当該時刻でないことが判断された場合、ステップS702に戻り、上述した処理を繰り返す。また、ステップS702でプレイリスト再生が終了したことが確認されると、字幕表示系の処理は強制的に終了する。
(印刷処理フロー)
次に、図31から図36を用いて印刷の処理フローについて説明する。
次に、図31から図36を用いて印刷の処理フローについて説明する。
図31は、プレーヤから印刷する場合の概略のシステム構成を、図32は概略のタイミングチャートを表している。ディスク挿入直後の自動起動やユーザのタイトル選択により、所望のタイトルが選択されると、タイトル制御部810ではアプリケーション処理部811に選択されたタイトルを通知する。アプリケーション処理部811では、指定されたタイトルの内容を解析して、デジタルストリームに埋め込まれたAVコンテンツを再生したり、インタラクティブなアプリケーションを実行したりする。アプリケーション処理部811はデジタルストリームのAVコンテンツを再生するために、AV再生制御部812に再生要求を出す。インタラクティブなアプリケーションは、アプリケーション処理部811で処理する。
図32において、タイトル制御部810でタイトル1が選択されると、アプリケーション処理部812はディスクからタイトル1に該当するファイルを読み込む。必要なデータを解析すると、印刷データ00002.prnが含まれていることがわかる。そこで、00002.prnをあらかじめ読み込んで、プリロードバッファ813に記憶しおく。そして、アプリケーションの本体を実行する。なお、この例ではタイトルの内容を解析して、印刷データが使われているか否かを判定しているが、アプリケーションデータがどのように構成などが俯瞰できるファイルを別途用意し、そのファイルを用いてプリロードが必要かどうかを判断することでも同様の効果を得られる。
図33は、実行されるタイトルの一例を表している。この例では、タイトルの内容がXHTMLで記述されている例を示している。この例によると、タイトルが実行されると、アプリケーション処理部811はまずスクリプト”playA()”を実行し(S801)、AVコンテンツ”00001.mpls”の再生をAV制御部812に要求する(S803)。AV制御部812は、AVコンテンツを再生すべくディスクからデジタルストリームデータを読み込んで、再生を行う。本実施の形態では、図33の表示画面にあるように、画面上に印刷ボタン809が表示される。ユーザがこのボタンをGUI(Graphical User Interface)の動作で選択すると、アプリケーション処理部812に印刷要求イベントが通知され、アプリケーション処理部では、プリロードバッファ813から印刷データを読み込んで、プレーヤの外部インターフェースやネットワーク上に接続されているプリンタに印刷要求を出す。なお、実際にはプリンタを検出する手順など実際に印刷するためには、さまざまな手順が必要になるが、ここでは省略する。また、本実施の形態では常時印刷ボタンを表示している例を示しているが、実際には定常状態では印刷ボタンは見えないようして、例えばリモコンのメニューキー押下などの特定のアクションにより印刷ボタンが表示されるようにすることもできる。
図34は、プリンタとプレーヤの間の信号のやりとりを簡単に模式化したものである。まず、プレーヤからプリンタに印刷要求が発行され(S821)、プリンタはそれに対して印刷データ要求を出す(S822。プレーヤは印刷要求を受けるとデータを送信する(S823)。すべての印刷データを受信し、印刷が完了するとプリンタは、プレーヤに対して印刷終了を通知する(S824)。印刷データとしては、プリンタ独自のフォーマットもあるが、より一般的には機種による違いが発生しないような言語、例えばXHTML−Printなどの使用が推奨される。また、XHTML−Printを用いて印刷データを構成する場合、そこで参照されるイメージデータファイルは別に定義されることがある。したがって、図35に示すように印刷要素を構成するすべてのファイルを一つにまとめて印刷データとして送信することも考えられる。
なお、ここではプレーヤからデータを送るPUSH型について説明しているが、プリンタから必要なデータを取りにくるPULL型であっても同様の効果が得られる。
なお、印刷フォーマットはXHTML−Printに限定されるものではない。
また、印刷アプリケーションもXHTMLで記述した例を用いて説明しているが、XHTMLに限らず同様の記述言語や、Javaなどのプログラミング言語を用いても同様の機能を実現することができる。
また、印刷アプリケーションもXHTMLで記述した例を用いて説明しているが、XHTMLに限らず同様の記述言語や、Javaなどのプログラミング言語を用いても同様の機能を実現することができる。
以上のような方法により、印刷中でもディスクアクセスが発生しないため、本編映像を再生中に印刷を実行しても映像が途切れたり、乱れたりすることのない印刷サービスを実現することができる。
(実施の形態2)
上記実施の形態では、タイトルが選択されたときに印刷データをあらかじめロードする例を挙げて説明した。この例によると、タイトル選択時にバッファに格納できるデータ以外は印刷できない。例えば、本編映像に関連した印刷コンテンツを用意して、シーンごとに印刷データが変わるようなアプリケーションを提供したくても、バッファの大きさに限界があって実現できない。このような課題に鑑み、第2の実施の形態では、定期的に印刷データを更新できるようにしたものである。
上記実施の形態では、タイトルが選択されたときに印刷データをあらかじめロードする例を挙げて説明した。この例によると、タイトル選択時にバッファに格納できるデータ以外は印刷できない。例えば、本編映像に関連した印刷コンテンツを用意して、シーンごとに印刷データが変わるようなアプリケーションを提供したくても、バッファの大きさに限界があって実現できない。このような課題に鑑み、第2の実施の形態では、定期的に印刷データを更新できるようにしたものである。
図36〜40を用いて、実施の形態2における印刷処理フローについて説明する。図36は、本実施の形態における処理の概略タイムチャートである。システム構成については、実施の形態1と同様なのでここでは省略する。
図36において、タイトルが選択されるとタイトル制御部810はアプリケーション処理部811に選択されたタイトルを通知する。アプリケーション処理部811では、指定されたタイトルの内容を解析して、デジタルストリームに埋め込まれたAVコンテンツを再生したり、インタラクティブなアプリケーションを実行したりする。デジタルストリームのAVコンテンツの再生には、AV再生制御部812に再生要求を出す。インタラクティブなアプリケーションは、アプリケーション処理部811で処理する。AV再生制御部812では、ディスクからデジタルストリームを読み込んで再生を開始する。
図37は、読み込まれるデジタルストリームのパケット列を模式化した図である。デジタルストリームは、画像データ841、音声データ842、字幕データ843などが重畳されている。AV再生制御部812ではデジタルストリームを、個別のデータに分割して、それぞれの信号を並列に処理して出力する。本実施の形態においては、デジタルストリーム中の任意の地点にインタラクティブなコンテンツとして、印刷データが含まれている例を示している。AV再生制御部812はこのデータも抽出する。AV再生制御部812はデジタルストリームから印刷データAが読み込まれた場合に、バッファに印刷データAを蓄積するとともに、アプリケーション処理部811に印刷データAが検出されたことを通知する(S846)。その後、AV再生制御部812は新たに印刷データBが読み込まれた場合には、バッファに印刷データBを蓄積する。このとき、バッファに余裕があれば印刷データBを印刷データAとは別の領域に記憶し、バッファに余裕がなければ印刷データBを印刷データAに上書きする(S847)。
なお、AV再生制御部812で印刷データをバッファに記録するように説明しているが、AV再生制御部812は、インタラクティブデータパケット844を検出したことだけをアプリケーション処理部811に通知し、その後の処理はアプリケーション処理部811が担当するようにしても同様の効果が得られる。
また、ここでは説明の都合上アプリケーションデータはアプリケーション処理部811が直接ディスクから読み込むような記述をしているが、AV再生制御部812でパケットの内容を判断し、アプリケーション処理部811に処理を任せることにより同様の効果が得られる。
なお、タイミングによってどんなデータが印刷されるかユーザにはわからないので、印刷アプリケーションは印刷データ検出イベントに対応して印刷対象画像を表示するようにすることで、ユーザに印刷対象データが更新されたことを通知することができる。
また、印刷データの中にサムネール画像も合わせて記録して、サムネール画像でユーザに印刷対象データを知らしめることもできる。
また、アプリケーション処理部811で扱うメニュー画面そのものを、印刷データと同期して更新することも可能である。図39は、メニュー画面を印刷データと連動して更新する場合の動作シーケンスを表している。メニューボタンを押下されると、アプリケーション処理部811はバッファ813からメニューデータを読み込んで、メニュー画面を表示する。メニュー画面から印刷実行が選択されると、アプリケーション処理部811はバッファ813から印刷データを読み込んで印刷を実行する。
なお、本実施の形態では印刷中に次の印刷データが検出して途中でデータが上書きされてしまう懸念があるが、印刷データの有効期間を設定することにより、次のデータにより上書きされる前に印刷禁止状態にすることも可能である。図40は、印刷データ有効期間を設定した例である。図示の時点でメニューボタンを押下した場合、印刷データBと印刷データCの切り替わり区間であるので、印刷結果が保障できない可能性がある。この場合には、メニュー表示から印刷実行ボタンを削除したものを表示することで、印刷実行を禁止することができる。それ以外にも印刷ボタンは表示するが、印刷実行すると、エラーを表示するといった方法でも同様の効果が得られる。
さらに、早送りや巻き戻しなどの特殊再生が行われた場合にも印刷禁止にすることで、印刷メニューと印刷データの関係が崩れたり、印刷データが破壊されたりしてしまうことを防ぐことができる。
このような構成をとることにより、AVコンテンツの再生を途切れることなく、AVコンテンツに連動した数多くの印刷コンテンツを提供するサービスが実現できる。
(実施の形態3)
上記実施の形態では、タイトルが選択されたときもしくは所定のタイミングで印刷データをプリロードバッファ813にロードする例を挙げて説明した。この実施の形態では、印刷実行中にはディスクアクセスが発生しないので、本編映像を途切れることなく再生し続けることができる。しかし、大容量のシリコンメモリやハードディスクを持たない安価なプレーヤの場合には、大きなバッファを期待できない。つまり、ロードできるメモリの大きさも限られてしまう。さらに、印刷要求がなくても印刷データをバッファに用意しておくので、メモリの効率利用という点でも課題がある。
上記実施の形態では、タイトルが選択されたときもしくは所定のタイミングで印刷データをプリロードバッファ813にロードする例を挙げて説明した。この実施の形態では、印刷実行中にはディスクアクセスが発生しないので、本編映像を途切れることなく再生し続けることができる。しかし、大容量のシリコンメモリやハードディスクを持たない安価なプレーヤの場合には、大きなバッファを期待できない。つまり、ロードできるメモリの大きさも限られてしまう。さらに、印刷要求がなくても印刷データをバッファに用意しておくので、メモリの効率利用という点でも課題がある。
そこで、第3の実施の形態では、印刷実行時に本編映像を一時停止して、印刷完了後に続きを再生する例を説明する。
図41は本実施の形態における、概略システム構成図である。バッファを除いて実施の形態1で説明したシステム構成と同等なので説明は省略する。
図42は、本実施の形態における印刷動作を表すタイムチャートである。図42において、タイトルが選択されるとタイトル制御部810はアプリケーション処理部811に選択されたタイトルを通知する。アプリケーション処理部811では、指定されたタイトルの内容を解析して、デジタルストリームに埋め込まれたAVコンテンツを再生したり、インタラクティブなアプリケーションを実行したりする。デジタルストリームのAVコンテンツの再生には、AV再生制御部812に再生要求を出す。インタラクティブなアプリケーションは、アプリケーション処理部811で処理する。AV再生制御部812では、ディスクからデジタルストリームを読み込んで再生を開始する。
ここで、ユーザからの印刷要求が発生すると、アプリケーション処理部811はAV再生制御部812に対して、”suspend”コマンドを発行しAV再生を一時停止する。このとき、AV再生に使用したレジスタの情報などは、バックアップ領域に保持される。その後、アプリケーション処理部811はディスクから印刷データを読み込み、印刷を実行する。なお、印刷実行に関しては上記の実施の形態と同様なので説明は省略する。
プリンタから印刷終了通知を受け取ると、アプリケーション処理部811は、AV再生制御部812に”resume”コマンドを発行して、AV再生を再開する。AV再生制御部812では、バックアップ領域から必要なデータをロードして、コンテンツの続きを再生する。
このような構成をとることにより、大きなバッファを期待できない安価なプレーヤであっても、いろいろな印刷コンテンツに対応することが可能になる。
(実施の形態4)
上記の実施の形態では、本編コンテンツと同一のタイトルに含まれる印刷コンテンツを印刷する場合の動作について説明した。この場合、本編コンテンツを十分に尊重する必要がある。それに対して、特典映像のような付加的なコンテンツの場合、より自由度の高いアプリケーションが提供されることが多い。そのために、ディスク上では本編映像とは異なるタイトルとして管理することが一般的である。印刷コンテンツも同様に、本編映像とはことなる形で提供することにより、凝ったプリントサービスも実現できる。本実施の形態では、本編映像から別の印刷タイトルを実行する場合の動作について説明する。本実施の形態におけるシステム構成は、実施の形態3におけるシステム構成図41と同様なので説明は省略する。
上記の実施の形態では、本編コンテンツと同一のタイトルに含まれる印刷コンテンツを印刷する場合の動作について説明した。この場合、本編コンテンツを十分に尊重する必要がある。それに対して、特典映像のような付加的なコンテンツの場合、より自由度の高いアプリケーションが提供されることが多い。そのために、ディスク上では本編映像とは異なるタイトルとして管理することが一般的である。印刷コンテンツも同様に、本編映像とはことなる形で提供することにより、凝ったプリントサービスも実現できる。本実施の形態では、本編映像から別の印刷タイトルを実行する場合の動作について説明する。本実施の形態におけるシステム構成は、実施の形態3におけるシステム構成図41と同様なので説明は省略する。
図43は、本実施の形態における印刷動作を表すタイミング図である。図43において、ユーザの選択や自動起動によりタイトルが選択されるとタイトル制御部810はアプリケーション処理部811に選択されたタイトルを通知する。アプリケーション処理部811では、アプリケーションデータをディスクから読み込んで内容を解析する。その後、アプリケーション処理部811はその内容に応じて、デジタルストリームに埋め込まれたAVコンテンツを再生したり、インタラクティブなアプリケーションを実行したりする。本実施の形態では、まずAVコンテンツを再生するアプリケーションを示している。アプリケーション制御部811はAV再生制御部812に再生要求を出す。AV再生制御部812では、ディスクからデジタルストリームを読み込んで、その中のコンテンツを再生する。
ここで、ユーザのアクションにより印刷アプリケーションを起動させた場合を想定する。BDでは、本編映像を鑑賞中に画面上に不要なメニュー画面は描画されないが、ユーザがメニューボタン等で特別な操作を行うと、ポップアップメニューを表示するようにできる。本実施の形態では、ポップアップメニューから選択することにより、本編映像に関連したカレンダーやシールなどの特典画像の印刷ができるアプリケーションが起動する場合を考える。印刷アプリケーション起動イベントが発生すると、アプリケーション処理部811は、タイトル制御部810に対して印刷アプリケーション呼び出し要求を発行する。タイトル制御部810は、この要求を受けると、AV再生制御部812に再生中のコンテンツを一時停止させ、アプリケーション処理部811にタイトル2開始要求を発行する。AV再生制御部812では、タイトル変更に伴う一時停止要求を受けると、ディスクからのデジタルストリームの読込を中断し、必要な情報をバックアップ領域に退避する。アプリケーション処理部811はタイトル2開始要求を受けると印刷アプリケーションをディスクから読み込んで実行する。本実施の形態では、タイトル2で実行されるアプリケーションは、AVデータを含まないインタラクティブなアプリケーションであるものとする。アプリケーション処理部811は、読み込んだ印刷アプリケーションを実行する。ユーザがこの印刷アプリケーションから印刷実行要求を行うと、アプリケーション処理部は、プリンタに印刷コマンドを送り、ディスクから印刷データを読み込んでプリンタに送信する。ここで、印刷データの読込と印刷コマンドを発行するタイミングは、印刷形態によって異なる。例えば、コマンドとデータを一体でプリンタに送信する場合は、データを読みつつコマンドを発行するという流れになる。コマンドだけ送って、プリンタの要求に合わせてデータを送信する場合には、プリンタからのデータ要求を受けて印刷データを読み込むことになる。
印刷が完了すると、アプリケーション処理部811は印刷アプリケーションの印刷要求待ち状態にもどる(図示せず)。ここで、“戻る”キーなどで、印刷アプリケーションを終了すると、アプリケーション処理部811はタイトル制御部810に“復帰”要求を送る。タイトル制御部810は“復帰”要求を受けて、アプリケーション処理部811にタイトル“再開”要求を発行し、AV再生制御部812は一時停止していた時点から引き続き再生を開始する。
なお、復帰する際にどのタイトルに戻るのかわからなくなるので、タイトル制御部はプレーヤの所定のレジスタや、特定のメモリなどを用いて、一時停止してバックアップデータを保持しているタイトル番号を記憶しておくとよい。
図44はタイトル制御部810が参照するIndex Tableを中心にアプリケーションの遷移を現した状態遷移図である。
このように本編映像と分けて印刷アプリケーションを用意することにより、より凝ったアプリケーションを提供できるとともに、本編映像の途中でアプリケーションを実行しても簡単に続きを楽しむことが可能になる。
本発明を利用することにより、映像と関連した様々な印刷サービスを実現することができる。これらのサービスは、ディスクの特典コンテンツとして、映像コンテンツの制作に携わる映画産業・民生機器産業において利用される可能性をもつ。
201 BDディスク
202 光ピックアップ
203 プログラム記録メモリ
204 管理情報記録メモリ
205 AV記録メモリ
206 プログラム処理部
207 管理情報処理部
208 プレゼンテーション処理部
209 イメージプレーン
210 ビデオプレーン
211 合成処理部
301 プログラム記録メモリ
302 プログラムプロセッサ
303 UOPマネージャ
304 管理情報記録メモリ
305 シナリオプロセッサ
306 プレゼンテーションコントローラ
307 クロック
308 イメージメモリ
309 トラックバッファ
310 デマルチプレクサ
311 イメージプロセッサ
312 ビデオプロセッサ
313 サウンドプロセッサ
314 イメージプレーン
315 ビデオプレーン
316 合成処理部
317 ドライブコントローラ
S101 ディスク挿入ステップ
S102 BD.INFO読み込みステップ
S103 BD.PROG読み込みステップ
S104 ファーストイベント生成ステップ
S105 イベントハンドラ実行ステップ
S201 UOP受付ステップ
S202 UOPイベント生成ステップ
S203 メニューコール判定ステップ
S204 イベント生成ステップ
S205 イベントハンドラ実行ステップ
S301 プレイリスト再生開始ステップ
S302 プレイリスト情報(XXX.PL)読み込みステップ
S303 プレイリストプログラム(XXX.PROG)読み込みステップ
S304 セル再生開始ステップ
S305 AV再生開始ステップ
S401 AV再生開始ステップ
S402 VOB情報(YYY.VOBI)読み込みステップ
S403 VOB(YYY.VOB)読み込みステップ
S404 VOB再生開始ステップ
S405 VOB再生終了ステップ
S406 次セル存在判定ステップ
S501 プレイリスト再生開始ステップ
S502 プレイリスト再生終了判定ステップ
S503 タイムイベント時刻判定ステップ
S504 イベント生成ステップ
S505 イベントハンドラ実行ステップ
S601 プレイリスト再生開始ステップ
S602 プレイリスト再生終了判定ステップ
S603 UOP受付判定ステップ
S604 UOPイベント生成ステップ
S605 メニューコール判定ステップ
S606 ユーザイベント有効期間判定ステップ
S607 イベント生成ステップ
S608 イベントハンドラ実行ステップ
S701 プレイリスト再生開始ステップ
S702 プレイリスト再生終了判定ステップ
S703 字幕描画開始判定ステップ
S704 字幕描画ステップ
S705 字幕表示終了判定ステップ
S706 字幕消去ステップ
S801 再生スクリプト呼び出しステップ
S802 印刷スクリプト呼び出しステップ
S803 再生スクリプト実行ステップ
S804 印刷スクリプト実行ステップ
809 印刷ボタン
810 タイトル制御部
811 アプリケーション処理部
812 AV再生制御部
813 プリロードバッファ
S821 印刷実行要求ステップ
S822 印刷データ要求ステップ
S823 印刷データ送信ステップ
S824 印刷終了通知ステップ
841 ビデオパケット
842 オーディオパケット
843 字幕パケット
844 インタラクティブデータパケット
S846 印刷データA検出ステップ
S847 印刷データB検出ステップ
S848 印刷実行ステップ
202 光ピックアップ
203 プログラム記録メモリ
204 管理情報記録メモリ
205 AV記録メモリ
206 プログラム処理部
207 管理情報処理部
208 プレゼンテーション処理部
209 イメージプレーン
210 ビデオプレーン
211 合成処理部
301 プログラム記録メモリ
302 プログラムプロセッサ
303 UOPマネージャ
304 管理情報記録メモリ
305 シナリオプロセッサ
306 プレゼンテーションコントローラ
307 クロック
308 イメージメモリ
309 トラックバッファ
310 デマルチプレクサ
311 イメージプロセッサ
312 ビデオプロセッサ
313 サウンドプロセッサ
314 イメージプレーン
315 ビデオプレーン
316 合成処理部
317 ドライブコントローラ
S101 ディスク挿入ステップ
S102 BD.INFO読み込みステップ
S103 BD.PROG読み込みステップ
S104 ファーストイベント生成ステップ
S105 イベントハンドラ実行ステップ
S201 UOP受付ステップ
S202 UOPイベント生成ステップ
S203 メニューコール判定ステップ
S204 イベント生成ステップ
S205 イベントハンドラ実行ステップ
S301 プレイリスト再生開始ステップ
S302 プレイリスト情報(XXX.PL)読み込みステップ
S303 プレイリストプログラム(XXX.PROG)読み込みステップ
S304 セル再生開始ステップ
S305 AV再生開始ステップ
S401 AV再生開始ステップ
S402 VOB情報(YYY.VOBI)読み込みステップ
S403 VOB(YYY.VOB)読み込みステップ
S404 VOB再生開始ステップ
S405 VOB再生終了ステップ
S406 次セル存在判定ステップ
S501 プレイリスト再生開始ステップ
S502 プレイリスト再生終了判定ステップ
S503 タイムイベント時刻判定ステップ
S504 イベント生成ステップ
S505 イベントハンドラ実行ステップ
S601 プレイリスト再生開始ステップ
S602 プレイリスト再生終了判定ステップ
S603 UOP受付判定ステップ
S604 UOPイベント生成ステップ
S605 メニューコール判定ステップ
S606 ユーザイベント有効期間判定ステップ
S607 イベント生成ステップ
S608 イベントハンドラ実行ステップ
S701 プレイリスト再生開始ステップ
S702 プレイリスト再生終了判定ステップ
S703 字幕描画開始判定ステップ
S704 字幕描画ステップ
S705 字幕表示終了判定ステップ
S706 字幕消去ステップ
S801 再生スクリプト呼び出しステップ
S802 印刷スクリプト呼び出しステップ
S803 再生スクリプト実行ステップ
S804 印刷スクリプト実行ステップ
809 印刷ボタン
810 タイトル制御部
811 アプリケーション処理部
812 AV再生制御部
813 プリロードバッファ
S821 印刷実行要求ステップ
S822 印刷データ要求ステップ
S823 印刷データ送信ステップ
S824 印刷終了通知ステップ
841 ビデオパケット
842 オーディオパケット
843 字幕パケット
844 インタラクティブデータパケット
S846 印刷データA検出ステップ
S847 印刷データB検出ステップ
S848 印刷実行ステップ
Claims (27)
- デジタルストリームの再生手順と、印刷データを印刷する印刷手順を含むアプリケーションとが同一のタイトルに記録されていることを特徴とする情報記録媒体。
- さらに、前記タイトルには前記印刷データの管理情報を含むことを特徴とする請求項1記載の情報記録媒体
- さらに、前記印刷データはデジタルストリームに埋め込まれていることを特徴とする請求項1記載の情報記録媒体
- 前記アプリケーションは、ユーザから印刷要求があった場合に前記印刷データを印刷する指示を行うことが記述されている請求項2ないし請求項3記載の情報記録媒体。
- デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行う再生方法であって、使用する印刷データをあらかじめプリロードバッファにロードし、ユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、前記プリロードバッファから前記印刷データを読み込み、前記特定した印刷装置に対して印刷実行要求と前記印刷データを出力することを特徴とする、情報記録媒体再生方法。
- 前記印刷データは、タイトル選択時にプリロードバッファにロードすることを特徴とする請求項5記載の情報記録媒体再生方法。
- 前記印刷データは、デジタルストリーム中で印刷データが検出された場合にプリロードバッファにロードすることを特徴とする請求項5記載の情報記録媒体再生方法。
- デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行う再生装置であって、タイトル選択時に使用する印刷データを特定しあらかじめプリロードバッファにロードするプリロード手段と、ユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、特定した印刷装置に対して印刷実行要求と前記プリロードバッファから前記印刷データを出力する印刷制御手段を備えたことを特徴とする、情報記録媒体再生装置。
- デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行う再生装置であって、デジタルストリームから印刷データを検出する印刷データ検出手段と、前記印刷データを検出した時点で前記印刷データをプリロードバッファにロードするプリロード手段と、ユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、特定した印刷装置に対して印刷実行要求と前記プリロードバッファから前記印刷データを出力する印刷制御手段を備えたことを特徴とする、情報記録媒体再生装置。
- デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行うプログラムであって、タイトル選択時に使用する印刷データを特定しあらかじめプリロードバッファにロードするプリロードし、ユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、特定した印刷装置に対して印刷実行要求と前記プリロードバッファから印刷データを出力するように指示するプログラム。
- デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行うプログラムであって、デジタルストリームから印刷データを検出し、検出した前記印刷データをプリロードバッファにロードし、ユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、特定した印刷装置に対して印刷実行要求と前記プリロードバッファから前記印刷データを出力するように指示するプログラム。
- デジタルストリームの再生手順と、印刷データを印刷する印刷手順を含むアプリケーションとが同一のタイトルに記録され、印刷データは独立したファイルとして記録されていることを特徴とする情報記録媒体。
- 前記アプリケーションは、ユーザから印刷要求があった場合にデジタルストリームの再生を一時停止し、前記印刷データを印刷する指示を行うことが記述されている請求項12記載の情報記録媒体。
- デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行う再生方法であって、ユーザから印刷要求があった場合に、デジタルストリーム再生を一時停止し、印刷対象となる印刷装置を特定し、印刷要求のあった印刷データを情報記録媒体から読み込み、前記特定した印刷装置に対して印刷実行要求と前記印刷データを出力することを特徴とする、情報記録媒体再生方法。
- さらに印刷が終了すると一時停止した時点から自動的にデジタルストリームの再生を再開する請求項14記載の情報記録媒体再生方法。
- デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行う再生装置であって、ユーザから印刷要求があった場合に、デジタルストリーム再生を一時停止するストリーム一時停止手段と、
ユーザから印刷要求があった場合に印刷対象となる特定する印刷装置特定手段と、
印刷要求のあった印刷データを情報記録媒体から読み込む印刷データ取得手段と、
前記特定した印刷装置に対して印刷実行要求と前記印刷データを出力する印刷制御手段を備えたことを特徴とする、情報記録媒体再生装置。 - さらに、印刷が終了すると一時停止した時点から自動的にデジタルストリームの再生を再開する手段を備えた請求項16記載の情報記録媒体再生装置。
- デジタルストリームを含むタイトルの再生と、前記タイトルに含まれるアプリケーションの実行とを同時に行うプログラムであって、ユーザから印刷要求があった場合に、デジタルストリーム再生を一時停止するストリーム一時停止指示と、
ユーザから印刷要求があった場合に印刷対象となる印刷装置を特定する指示と、
印刷要求のあった印刷データを情報記録媒体から読み込む印刷データ取得指示と、
特定した印刷装置に対して印刷実行要求と前記印刷データを出力する印刷指示を行うことを特徴とする、プログラム。 - さらに、印刷が終了すると一時停止した時点から自動的にデジタルストリームの再開を指示する請求項18記載のプログラム。
- デジタルストリームの再生手順と、印刷データを印刷する印刷手順を含むアプリケーションとが独立したタイトルに記録され、印刷データは独立したファイルとして記録されていることを特徴とする情報記録媒体。
- 印刷データを印刷する印刷手順を含むアプリケーションにアクセスするタイトルが選択された場合には、デジタルストリームの再生を一時停止し、前記アプリケーションを実行し、前記印刷データを印刷する指示が記述されている請求項20記載の情報記録媒体。
- デジタルストリームを含むタイトルを再生し、印刷を行うアプリケーションを起動する際には前記デジタルストリームを含むタイトルを一時停止し、前記アプリケーションにおいてユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定し、印刷要求のあった印刷データを情報記録媒体から読み込み、特定した印刷装置に対して印刷実行要求と前記印刷データを出力することを特徴とする、情報記録媒体再生方法。
- さらに印刷を行うアプリケーションを終了すると、一時停止したデジタルストリームを含むタイトルに戻り、一時停止した時点から自動的にデジタルストリームの再生を再開する請求項22記載の情報記録媒体再生方法。
- デジタルストリームを含むタイトルの再生手段と、印刷を行うアプリケーションを起動する際には前記デジタルストリームを含むタイトルを一時停止するストリーム一時停止手段と、前記アプリケーションにおいてユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定する印刷装置特定手段と、印刷要求のあった印刷データを情報記録媒体から読み込む印刷データ取得手段と、前記特定した印刷装置に対して印刷実行要求と前記印刷データを出力する印刷制御手段を備えたことを特徴とする、情報記録媒体再生装置。
- さらに印刷を行うアプリケーションを終了すると、一時停止したタイトルに戻り一時停止した時点から自動的にデジタルストリームの再生を再開する手段を備えた請求項24記載の情報記録媒体再生装置。
- デジタルストリームを含むタイトルの再生指示と、印刷を行うアプリケーションを起動する際には前記デジタルストリームを含むタイトルを一時停止するストリーム一時停止指示と、前記アプリケーションにおいてユーザから印刷要求があった場合に、印刷対象となる印刷装置を特定する印刷装置特定指示と、印刷要求のあった印刷データを情報記録媒体から読み込む印刷データ取得指示と、前記特定した印刷装置に対して印刷実行要求と前記印刷データを出力する印刷指示を行うことを特徴とする、プログラム。
- さらに印刷を行うアプリケーションを終了すると、一時停止したタイトルに戻り一時停止した時点から自動的にデジタルストリームの再生を再開する指示を行う請求項26記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005061573A JP2006244654A (ja) | 2005-03-04 | 2005-03-04 | ディスクプレーヤからの印刷方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005061573A JP2006244654A (ja) | 2005-03-04 | 2005-03-04 | ディスクプレーヤからの印刷方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006244654A true JP2006244654A (ja) | 2006-09-14 |
Family
ID=37050900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005061573A Pending JP2006244654A (ja) | 2005-03-04 | 2005-03-04 | ディスクプレーヤからの印刷方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006244654A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009157159A1 (ja) * | 2008-06-24 | 2009-12-30 | パナソニック株式会社 | 記録媒体、再生装置、集積回路、再生方法、プログラム |
WO2010095403A1 (ja) * | 2009-02-17 | 2010-08-26 | パナソニック株式会社 | 再生装置、再生方法、プログラム |
-
2005
- 2005-03-04 JP JP2005061573A patent/JP2006244654A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009157159A1 (ja) * | 2008-06-24 | 2009-12-30 | パナソニック株式会社 | 記録媒体、再生装置、集積回路、再生方法、プログラム |
WO2010095403A1 (ja) * | 2009-02-17 | 2010-08-26 | パナソニック株式会社 | 再生装置、再生方法、プログラム |
US8351758B2 (en) | 2009-02-17 | 2013-01-08 | Panasonic Corporation | Playback device, playback method and program |
JP5155441B2 (ja) * | 2009-02-17 | 2013-03-06 | パナソニック株式会社 | 再生方法、再生装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6484368B2 (ja) | 再生装置 | |
JP2016100039A (ja) | 記録媒体、再生方法、および再生装置 | |
JP6466258B2 (ja) | 再生装置、再生方法および記録媒体 | |
JP6272534B2 (ja) | 再生方法、および再生装置 | |
JP2007036663A (ja) | 互換性を考慮した情報記録媒体およびその記録装置、記録方法、記録プログラム | |
JP5295572B2 (ja) | 情報記録媒体および情報記録媒体再生システム | |
JP2006244654A (ja) | ディスクプレーヤからの印刷方法 | |
JP2007133938A (ja) | オーディオミキシング出力の可否を示すフラグを持った情報記録媒体、および、その再生装置、再生方法 | |
JP6445933B2 (ja) | 記録媒体、再生装置およびその方法 | |
JP2007048383A (ja) | 情報記録媒体およびその記録装置、記録方法、記録プログラム | |
JP2007018623A (ja) | 情報記録媒体、およびその再生装置、再生方法。 | |
JP2007011899A (ja) | 宣言型言語で記述された再生制御環境の起動条件を考慮した情報記録媒体およびその再生装置、再生方法。 | |
WO2016021120A1 (ja) | 再生装置、再生方法および記録媒体 | |
WO2006090664A1 (ja) | 情報記録媒体、再生装置および再生方法 | |
JP6591202B2 (ja) | 記録媒体、再生装置およびその方法 | |
JP2006244655A (ja) | 再生装置および再生方法 | |
JP2007235185A (ja) | ランダムアクセスに適した情報記録媒体、およびその記録/再生装置、記録/再生方法 | |
WO2006092996A1 (ja) | 記録媒体、再生装置および再生方法 | |
WO2016009606A1 (ja) | 記録媒体、再生装置およびその方法 | |
JP2019067481A (ja) | 記録媒体 | |
WO2016021118A1 (ja) | 記録媒体、再生装置および再生方法 | |
JP2006236453A (ja) | 情報記録媒体およびその再生装置、再生方法。 | |
JP2006228339A (ja) | 宣言型言語で記述された再生制御環境のリソース管理を考慮した情報記録媒体およびその再生装置、再生方法 | |
JP2006013726A (ja) | 情報記録媒体、およびその記録/再生装置、記録/再生方法 | |
JP2007012217A (ja) | 情報記録媒体およびその再生装置、再生方法 |