明 細 書
ストリーム再生装置、ストリーム供給装置
技術分野
[0001] 本発明は、オーディオストリーム再生技術に関する。
背景技術
[0002] AV機器では、映像の高画質化と共に、音声についても高品質ィ匕が求められ、多様 な音声符号ィ匕方式が採用されている。例えば BD (Blu-ray Disc)では、符号化方式や 言語の異なる複数 (最大 32本)のオーディオストリームを記録媒体に記録して、再生 装置の性能や使用言語に応じて適した音声の再生を実現している。
オーディオストリームの選択に際しては、従来の視聴環境では、デコーダを備えた プレーヤが記録媒体力 ストリームを読み出し、自装置のデコーダに適したオーディ ォストリームを選択して 、るものが多 、。
特許文献 1:特開平 9 - 282848号公報
発明の開示
発明が解決しょうとする課題
[0003] ところで、音声符号ィ匕方式は高度化が進み、ロッシ一な圧縮から高音質なロスレス 圧縮の利用が本格ィ匕して 、る。
ロスレス符号化方式のなかには DTS-HD方式のように、音質が劣る下位のロッシ一 な符号ィ匕方式に対応したデコーダとの互換性を保ちつつ、最新のデコーダではより ロスレスな再生を可能とする符号化方式もある。そのため、 DTS-HD方式のような符 号ィ匕方式を用いる際には、単にデコーダが符号化されたオーディオストリームを再生 できる力否かを認識するのみでは、実際にどのような品質で音声再生されるか事前 に把握できな 、と 、う問題がある。
[0004] 特に、テレビやオーディオアンプがそれぞれデコーダを備え、記録媒体からストリー ムを読み出す供給装置が、記録媒体力 読み出したデジタルストリームをデコードす ることなぐテレビやオーディオアンプ等の再生装置へ映像や音声のストリームを振り 分けて出力するホームシアターシステムのような視聴環境では、ユーザは主に供給
装置に対して機器操作を行うため、機器操作に応じて出力されるオーディオストリー ムの符号ィ匕方式を根拠にユーザが期待して 、た品質で音声が再生されず、ユーザ に混乱を招くおそれがある。
[0005] 本発明は力かる問題に鑑み、供給装置力 再生装置へデジタルストリームをパスス ルー出力するような視聴環境において、再生装置で再生される音声の品質が適切に 判断できる再生装置、供給装置を提供することを目的とする。
課題を解決するための手段
[0006] 上記課題を解決するため、本発明に係るストリーム再生装置は、基本データと拡張 データとカゝら構成されるオーディオフレームを含むオーディオストリームを再生するス トリーム再生装置であって、デコーダと、ストリーム供給装置力 オーディオストリーム の供給を受けるインターフェース手段とを備え、前記デコーダにおけるオーディオスト リームのデコードに、基本データのみを用いることができる力、拡張データを用いるこ とができるかを前記インターフェース手段を介して前記ストリーム供給装置へ通知す る機能を有することを特徴とする。
[0007] また、上記課題を解決するため、本発明に係るストリーム供給装置は、複数のォー ディォストリームカゝら何れかのオーディオストリームを選択して再生装置へ供給するス トリーム供給装置であって、再生装置が有するデコーダにおいて、オーディオフレー ムが基本データと拡張データとから構成されるオーディオストリームをデコードする際 に、前記デコーダにおけるオーディオストリームのデコードに、基本データのみを用 いることができる力 拡張データを用いることができるかを示す情報を、再生装置から 取得する取得手段と、前記取得した情報に基づいて、オーディオストリームを選択す る条件を変更する変更手段を備えることことを特徴とする。
発明の効果
[0008] 音声符号化方式が DTS— HD方式のように、音質が劣る下位の符号化方式に対 応したデコーダとの互換性を保ちつつ、最新のデコーダではより高品質な再生を可 能とする符号ィ匕方式を用いる場合にも、ストリーム供給装置力 ストリーム再生装置へ オーディオストリームをパススルー出力するような視聴環境において、ストリーム再生 装置におけるオーディオデコードに拡張データを用いることができるか否かがストリー
ム供給装置へ通知されるので、実際にどのような品質で音声再生されるかを、ストリー ム供給装置側で事前に把握することができる。
図面の簡単な説明
[0009] [図 1]本発明に係る記録媒体の、使用行為についての形態を示す図である。
[図 2]BD- ROMの内部構成を示す図である。
[図 3]拡張子. m2tsが付与されたファイルがどのように構成されているかを模式的に示 す図である。
[図 4]AVClipを構成する TSパケットがどのような過程を経て BD-ROMに書き込まれる かを示す。
[図 5]BD- ROMの物理単位と、 1つのファイルエクステントを構成する Sourceパケットと の対応関係を示す図である。
[図 6]AVClipにどのようなエレメンタリストリームが多重化されているかを示す図である
[図 7]Clip情報の内部構成を示す図である。
[図 8]PlayList情報のデータ構造を示す図である。
[図 9]AVClipと、 PlayList情報との関係を示す図である。
[図 10]ファイル sound.bdmvの構成を示す図である。
[図 11]ローカルストレージ 200の内部構成を示す図である。
[図 12]SubClipに多重化されるエレメンタリストリームを示す図である。
[図 13]BD- ROM規格における PID割当マップを示す図である。
[図 14] (a) Secondaryオーディオストリームの内部構成を示す図である。
[0010] (b)オーディオフレームの一例を示す図である。
(c)メタデータの内部構成を示す図である。
(d)ゲイン制御情報の一例を模式的に示す図である。
[図 15]Secondaryオーディオストリーム内のメタデータにより、 Primaryオーディオストリ ームの音量がどのように制御されるかを示す図である。
[図 16]PlayList情報のデータ構造を示す図である。
[図 17]Subpath情報の内部構成をクローズアップして示す図である。
[図 18]ローカルストレージ 200上の SubClipと、ローカルストレージ 200上の PlayList情 報と、 BD- ROM上の MainClipとの対応を示す図である。
[図 19]MainClipに対して設定された EPjnap及び Playltem時間軸と、 Primaryオーディ ォストリーム、 Secondaryオーディオストリームとなる SubClipに対して設定された EP_ma p及び SubPlayltem時間軸とを集約して示す図である。
[図 20]STN_tableの内部構成を示す図である。
[図 21] (a)ビデオストリームに対応した Stream_attributeを示す図である。
[0011] (b) Primaryオーディオストリーム、 Secondaryオーディオストリームに対応した Stream— attributeを示す図である。
(c)ビデオストリームにおける Stream_entryを示す図である。
(d) Secondaryオーディオストリームにおける Stream_entryを示す図である。
(e) Secondaryオーディオストリームにおける Stream_entryと、 Stream_attributeとの糸且 みに対 J心付けられて 、る、 Comb_info_Secondary_audio_Primary_audioの内咅 |5構成を示 す図である。
[図 22]DTS-HD形式の Primaryオーディオストリームのオーディオフレームにおいて、 S tream— attributeの「format— depending— coding— type」におけ o Base, Level 1 ,Level2, Level 3がそれぞれ、どのようなデータ構造に割り当てられるかを示す図である。
[図 23] C omb— info— Secondary— audio— Primary— audio【こよる Primaryォ ~~ァィォストリ ~~ムの 指定を示す図である。
[図 24]ストリーム供給装置 300により生成されるバーチャルファイルシステムを示す図 である。
[図 25]本発明に係るオーディオアンプ 400の内部構成を示す図である。
[図 26] (a) DIBにおいて、音声再生性能に関する部分のデータ構造を模式的に示し た図である。
[0012] (b) DIBの各フィールドに設定しうる値を示す図である。
[図 27]コントローラ 34の処理手順を示す図である。
[図 28]本発明に係るストリーム供給装置 300の内部構成を示す図である。
[図 29]Audio InfoFrameのデータ構造を模式的に示した図である。
[図 30]コントローラ 22を機能的に表現した図である。
[図 31] (a) PSR1のビットアサインを示す図である。
[0013] (b) PSR14のビットアサインを示す図である。
(c) PSR31のビットアサインを示す図である。
[図 32]PSR15のビットアサインを示す図である。
[図 33]機器起動時のストリーム供給装置 300、オーディオアンプ 400間の通信シーケ ンスを示す。
[図 34]起動処理部 40の処理手順を示すフローチャートである。
[図 35]起動処理部 40の処理手順を示すフローチャートである。
[図 36]CODING TYPEが DTS- HDである際に、 DIBに応じて PSR15における Player cap ability for Audioを追加設定する処理手順を示すフローチャートである。
[図 37]プレイリスト処理部によるプレイリスト再生手順を示すフローチャートである。
[図 38] (a) PSR1の設定値が取り得る状態遷移を示す図である。
[0014] (b) PSR1の Procedure when playback condition is changedの処理手順を示す図で ある。
[図 39]実際に再生される音声の品質を示すメニューの一例を示す図である。
[図 40]ステップ S5の詳細な処理手順に示したフローチャートである。
[図 41]ストリーム変化時における PSR1の設定手順を示すフローチャートである。
[図 42] (a) PSR14の設定値が取り得る状態遷移を示す図である。
[0015] (b) PSR14の Procedure when playback condition is changedの処理手順を示す図で ある。
[図 43]ステップ S35の詳細な処理手順に示したフローチャートである。
[図 44]ストリーム変化時における PSR14の設定手順を示すフローチャートである。
[図 45]変形例に係る DIBのデータ構造を示す図である。
符号の説明
[0016] 100 BD-ROM
200 ローカルストレージ
300 ストリーム供給装置
400 オーディオアンプ
500 スピーカ
600 テレビ
la BD- ROMドライブ
lb バス
2a,b リードバッファ
3a b デマルチプレクサ
4 ビデオデコーダ
5 ビデオプレーン
oa,b ッファ
7a,b オーディオデコーダ
8 DownMix/DownSample
9a ミキサー
9b ミキサー
10a スィッチ
10b エンコーダ
1 Interactive Graphicsテコ1 ~~タ 12 Interactive Graphicsフレーン 3 Presentation (graphicsアコ ~タ 4 Presentation waphicsプレーン
15 JPEGデコーダ
16 Stillプレーン
17 合成部
18a,b STC生成部
9a,b ATC生成部
1 メモリ
2 コントローラ
3 PSRセッ卜
24 PID変換部
25 通信部
26 操作受付部
27 HDMI送受信部
31 ノ ッファ
32 オーディオデコーダ
33 コントローラ
34 HDMI送受信部
35 EEPROM
40 起動処理部
41 プレイリスト処理部
42 Procedure夹ィ丁咅 |5
43 Procedure夹ィ丁咅 |5
44 ミキシング制御部
発明を実施するための最良の形態
[0017] 以降、本発明に係る再生装置の実施形態について説明する。先ず始めに、本発明 に係る再生装置の実施行為のうち、使用行為についての形態を説明する。図 1は、 本発明に係るストリーム再生装置の、使用行為についての形態を示す図である。図 1 において、本発明に係るストリーム再生装置は、オーディオアンプ 400である。このォ 一ディォアンプ 400は、ストリーム供給装置 300、スピーカ 500、及びテレビ 600と共 にホームシアターシステムを形成し、ストリーム供給装置力も供給されるオーディオス トリームを再生するという用途で使用される。
[0018] 以降、 BD- ROM100、ストリーム供給装置 300、オーディオアンプ 400について説 明を行う。
BD-ROM100は、映画作品が記録された記録媒体である。
ストリーム供給装置 300は、ネット対応型のデジタル家電機器であり、リモコンを用 V、たユーザの操作に応じて BD-ROM 100に記録された映画作品を読み出し、映像 データをテレビ 600へ、音声データをオーディオアンプ 400へ出力する機能をもつ。
本実施形態では、ストリーム供給装置 300とオーディオアンプ 400とは HDMI (HDMI : High Definition Multimedia Interface)により規定されている iZF規格に準拠して接 続されており、ストリーム供給装置 300は、 BD- ROM 100から読み出したオーディオス トリームをデコードすることなくオーディオアンプ 400へ出力する。以下、オーディオス トリームを構成する TSパケットをデコードせずそのエレメンタリーストリームを他の機器 に出力することを"パススルー出力"という。
[0019] また、ストリーム供給装置 300内部には、映画配給者のサーバから配信されたコン テンッの受け皿として利用されるハードディスクであるローカルストレージ 200が組み 込まれており、映画配給者のサーバから、ネットを通じてダウンロードしたコンテンツを 、 BD-ROM100に記録されたコンテンツと組み合わせて、 BD- ROM100のコンテンツ を拡張/更新をすることができる。 BD- ROM100の記録内容に、ローカルストレージ 2 00の記録内容を組み合わせて、 BD- ROM100に記録されていないデータを、恰も、 記録されて!、るように扱う技術を"バーチャルパッケージ"と 、う。
[0020] オーディオアンプ 400は、オーディオデコーダを内部に備え、ストリーム供給装置 3 00から供給されるオーディオストリームをデコードし、デコードにより得られる LPCM状 態のオーディオデータをスピーカ 500へ出力する。
以上が本発明に係る再生装置の使用形態についての説明である。
続、て本発明に係る記録媒体の詳細につ 、て説明する。
[0021] く BD- ROMの概要 >
図 2は、 BD- ROMの内部構成を示す図である。本図の第 4段目に BD- ROMを示し、 第 3段目に BD- ROM上のトラックを示す。本図のトラックは、 BD- ROMの内周から外周 にかけて螺旋状に形成されているトラックを、横方向に引き伸ばして描画している。こ のトラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。本図の ボリューム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもつ。 ディレクトリ構造を用いて BD- ROMの応用層フォーマット (アプリケーションフォーマット )を表現すると、図中の第 1段目のようになる。この第 1段目において BD- ROMには、 R ootディレクトリの下に、 BDMVディレクトリがある。
[0022] BDMVディレクトリには、拡張子 bdmvが付与されたファイル (index.bdmv,MovieObjec
t.bdmv)がある。そしてこの BDMVディレクトリの配下には、更に PLAYLISTディレクトリ 、 CLIPINFディレクトリ、 STREAMディレクトリ、 BDBJディレクトリ、 BDJAディレクトリ、 AU XDATAディレクトリと呼ばれる 6つのサブディレクトリが存在する。
PLAYLISTディレクトリには、拡張子 mplsが付与されたファイル (OOOOl.mpls)がある。
[0023] CLIPINFディレクトリには、拡張子 clpiが付与されたファイル (OOOOl.clpi)がある。
STREAMディレクトリには、拡張子 m2tsが付与されたファイル (00001.m2ts)がある。 BDBJディレクトリには、拡張子 bobjが付与されたファイル (00001. bob j)が存在する。 BDJAディレクトリには、拡張子 jarが付与されたファイル (00001. jar)がある。 AUXDATAディレクトリには、ファイル sound.bdmvが格納される。
[0024] 以上のディレクトリ構造により、互いに異なる種別の複数ファイル力 BD-ROM上に 配置されて ヽることがゎカゝる。
< BD- ROMの構成その 1.AVClip >
先ず初めに、拡張子. m2tsが付与されたファイルについて説明する。図 3は、拡張子 .m2tsが付与されたファイルがどのように構成されているかを模式的に示す図である。 拡張子. m2tsが付与されたファイル (00001.m2ts)は、 AVClipを格納している。 AVClip は MPEG2- Transport Stream形式のデジタルストリームである。このデジタルストリーム は、デジタルィ匕された映像、デジタル化された音声を (上 1段目)、 PESパケットからなる エレメンタリストリームに変換し (上 2段目)、更に TSパケットに変換して (上 3段目)、同じ く字幕系のプレゼンテーショングラフィクスストリーム (Presentation Graphics (PG)ストリ ーム)及び対話系のインタラクティブグラフィクスストリーム (Interactive Graphics(IG)スト リーム)を (下 1段目、下 2段目)、更に TSパケットに変換して (下 3段目)、これらを多重化 することで構成される。
[0025] PGストリームは、言語毎の字幕を構成するグラフィクスストリームであり、英語、 日本 語、フランス語というように複数言語についてのストリームが存在する。 PGストリームは 、 PCS(Presentation control Segment) ^ PDS(Pallet Define Segment) ^ WDS(Window D efine Segment) ^ ODS(〇Dject Define Segment) ^ END (END of Display Set Segment)と いう一連の機能セグメントからなる。 ODS(Object Define Segment)は、字幕たるグラフ イクスオブジェクトを定義する機能セグメントである。
[0026] WDS(Window Define Segment)は、画面におけるグラフィクスオブジェクトの描画領 域を定義する機能セグメントであり、 PDS(Pallet Define Segment)は、グラフィクスォブ ジェタトの描画にあたっての、発色を規定する機能セグメントである。 PCS(Presentatio n Control Segment)は、字幕表示におけるページ制御を規定する機能セグメントであ る。かかるページ制御には、 Cut-In/Out, Fade-In/Out, Color Change, Scroll, Wipe -In/Outといったものがあり、 PCSによるページ制御を伴うことにより、ある字幕を徐々 に消去しつつ、次の字幕を表示させると!、う表示効果が実現可能になる。
[0027] IGストリームは、対話制御を実現するグラフィクスストリームである。 IGストリームにて 定義される対話制御は、 DVD再生装置上の対話制御と互換性がある対話制御であ る。力力る I ストリ ~~ム【ま、 ICSQnteractive Composition segment) PDS(Palette Difinit ion segment) ^ ODS(Object Dennition Segment) ^ END(END of Display Set Segment) と呼ばれる機能セグメントからなる。 ODS(Object Definition Segment)は、グラフィクス オブジェクトを定義する機能セグメントである。このグラフィクスオブジェクトが複数集ま つて、対話画面上のボタンが描画される。 PDS(Palette Difinition Segment)は、グラフ イクスオブジェクトの描画にあたっての、発色を規定する機能セグメントである。 ICS(In teractive Composition Segment)は、ユーザ操作に応じてボタンの状態を変化させる という状態変化を実現する機能セグメントである。 ICSは、ボタンに対して確定操作が なされた際、実行すべきボタンコマンドを含む。
[0028] ここで AVClipは、 1つ以上の" STC_Seuence"から構成される。 "STC_Seuence"とは、 AVストリームのシステム基準時刻である STC(System Time Clock)の不連続点 (system time-base discontinuity)が存在しない区間を!、う。 STCの不連続点はデコーダ力 Τ Cを得るために参照する PCR(Program Clock Reference)を運ぶ PCRパケットの不連続 情報 (discontinuityjndicator)が ONである点である。
[0029]
続いて、以上のように構成された AVClip力 BD- ROMにどのように書き込まれる力 を説明する。図 4は、 AVClipを構成する TSパケットがどのような過程を経て BD-ROM に書き込まれるかを示す。本図の第 1段目に AVClipを構成する TSパケットを示す。
AVClipを構成する 188バイトの TSパケットは、第 2段目に示すように 4バイトの TS_extr
ajieader (図中のハッチング部)、が付されて、 192バイト長の Sourceパケットになる。こ の TS_extra_headerは、当該 TSパケットのデコーダ入力時刻情報を示す Arrival_Time_ Stampを含む。
[0030] AVClipを構成する Sourceパケットは、第 3段目における AVClipにおいて、 1つ以上 の" ATC_Seuence"を構成する。 "ATC_Seuence"とは、 Sourceパケットの配列であって 、その Arrival— l ime— Stamp力 21 照して ヽる Arrival— Time— Clockに、 ド連続 Ληο arrival time-base discontinutiy)が存在しないものをいう。いいかえれば、その Arrival_Time_St ampが参照している Arrival_Time_Clockに、連続性が存在する Sourceパケット列を" AT し— ¾euence と ヽつ。
[0031] かかる ATC_Seuenceが AVClipになり、 xxxxx.m2tsというファイル名で BD- ROMに記 録される。
かかる AVClipは、通常のコンピュータファイル同様、 1つ以上のファイルエクステント に分割され、 BD-ROM上の領域に記録される。第 4段目は AVClipがどのように BD-R OMに記録されるかを模式的に示す。この第 4段目においてファイルを構成する各フ アイルエクステントは、予め定められた Sexetent以上のデータ長を有する。
[0032] AVClipを複数のエクステントに分割して記録する場合の、エクステント一個当たりの 最小データ長 Sexetentを検討する。
ここで BD- ROMにおいて光ピックアップのジャンプに要する時間は、
Ί jump =Ί access+Toverheaa
で与えられる。
[0033]
Taccessは、ジャンプ距離(ジャンプする物理アドレスの距離)に応じて与えられる時 間である。
BD- ROM力も読み出された TSパケットは、リードバッファと呼ばれるバッファに格納 された上、デコーダに出力される力 リードバッファへの入力力 Rudというビットレート で行われ、 ECCブロックにおけるセクタ数を Seccとした場合、
丄、 overneadi 、
Toverhead≤ (2 X Secc X 8)/Rud = 20m秒
という計算で与えられる。
[0034]
BD- ROM力も読み出された TSパケットは、 Sourceパケットの状態でリードバッファに 格納された上、 TS_Recording_rateという転送レートで、デコーダに供給される。
TS_Recording_rateと!、う転送レートでの、デコーダへの TSパケット供給が跡絶えさ せないなめには、 Tjumpの間、リードバッファからデコーダへの TSパケット出力が継続 している必要がある。ここでリードバッファからの出力は、 TSパケットではなぐ Source パケットの状態でなされるので、 TSパケットの Sourceパケットとのサイズ比を 192/188と した場合、 Tjumpの間、(192/188 X TS_Recording_rate)という転送レートにより、リード バッファからの Sourceパケット出力が継続している必要がある。
[0035]
従って、リードバッファ力 アンダーフローしないためのバッファ蓄積量は、
Boccupied≥ (Tjump/ 1000 X 8) X ((192/188) X TS— Recording— rate)
となる。 リードバッファへの入力レートは Rud、リードバッファからの出力レートは TS_Recordin g_rate X (192/ 188)であるので、リードバッファへの蓄積レートは、入力レート一出カレ ートの計算で与えられ、 (Rud - TS_Recording_rate X (192/188》になる。
この Boccupiedを、リードバッファに蓄積するのに要する時間 Txは、
Tx = Boccupied/(Rud— TS— Recording— rate X (192/188))
になる。
BD-ROMからの読み出しには、この時間 Txにおいて Rudでの TSパケット入力を継続 する必要があるので、 AVClipを複数のエクステントに分割して記録する場合の、エタ ステント一個当たりの最小データ長 Sexetentは、
Sexetent = Rud X Tx
= Rud X Boccupied/(Rud— TS— Recording— rate X (192/188))
≥ Rud X (Tjump/1000 X 8) X ((192/188) X TS— Recording— rate)
/(Rud—TS— Recording— rate X (192/188))
≥ (Rud X Tjump/1000 X 8) X
X TS— Recording— rate X 192/(Rud X 188— TS— Recording— rate X 192)
になる。
よって
Sexetent≥
(Tjump X Rud/ 1000 X 8) X
(TS— Recording— rate X 192/(Rud X 188— TS— Recording— rate X 192》 になる。
[0037]
AVClipを構成する各ファイルエクステントは、デコーダのアンダーフローをおこさな いように算出された Sextent以上のデータ長をもつことにより、 AVClipを構成する各フ アイルエクステントが、 BD-ROM上において離散的に位置されたとしても、再生時に おいてデコーダへの TSパケット供給が途絶えさせることなぐ連続的に読み出される ことになる。
[0038] 図 5は、 BD- ROMの物理単位と、 1つのファイルエクステントを構成する Sourceバケツ トとの対応関係を示す図である。第 2段目に示すように、 BD-ROM上には複数セクタ が形成されている。ファイルエクステントを構成する Sourceパケットは、第 1段目に示す ように、 32個毎にグループ化されて、連続する 3つのセクタに書き込まれる。 32個の So urceパケットからなるグループは、 6144バイト (=32 X 192)であり、これは 3個のセクタサ ィズ 6144バイト (=2048 X 3)と一致する。 3個のセクタに収められた 32個の Sourceバケツ トを" Aligned Unit"といい、 BD-ROMへの書き込みは、 Aligned Unit単位でなされる。
[0039] 第 3段目にお 、てセクタは、 32個単位で誤り訂正符号が付され、 ECCブロックを構 成する。ストリーム供給装置 300は Aligned Unitの単位で BD- ROMをアクセスする限り
、 32個の完結した Sourceパケットを得ることができる。以上が BD- ROMに対する AVCli
Pの書き込みのプロセスである。
くエレメンタリストリームの種類〉
図 6は、 AVClipにどのようなエレメンタリストリームが多重化されているかを示す図で ある。
[0040] 本図に示すように、 AVClipには、 0x1011の PIDをもつ高画質ビデオストリーム、 0x11 00から 0x111Fまでの PIDをもつ Primaryオーディオストリーム、 0x1200から 0xl21Fまで の PIDをもつ PGストリーム、 0x1400から 0xl41Fまでの PIDをもつ IGストリームが多重ィ匕 されている。これらのエレメンタリストリームを構成するパケットは、それに対応する PID が付与されており、この PIDを手掛力りにして多重分離されることになる。このように、 高画質なビデオストリームが多重化されている AVClipを、以下" MainClip"と呼ぶ。こ れに対し、 MainClipと同時に再生される AVClipを、 "SubClip"とよぶ。
[0041]
< BD- ROMの構成その 2.Clip情報 >
続 、て拡張子 .clpiが付与されたファイルにつ 、て説明する。拡張子 .clpiが付与され たファイル (OOOOl.clpi)は、 Clip情報を格納している。 Clip情報は、個々の AVClipにつ いての管理情報である。図 7は、 Clip情報の内部構成を示す図である。本図の左側 に示すように Clip情報は、
OAVClipについての情報を格納した『ClipInfo0』、
ii) ATC Sequence'STC Sequenceに関する情報を格納した『Sequence Info0』 iii) Program Sequenceに関する情報を格納した『Program Info0』
iv)『Characteristic Point Info(CPl0)』からなる。
[0042] Cliplnfoには、この Clip情報が参照する AVClipのアプリケーションタイプ(application _type)がある。アプリケーションタイプによって MainClipか SubClipかや、動画を含んで V、るのか静止画 (スライドショー)を含んで!/、るのかなどが識別できる。 TS_recording_rat
eは該当 AVClipのシステムビットレート情報である。
Sequence Infoは、 AVClipに含まれる、 1つ以上の STC— Sequence、 ATC— Sequenceに ついての情報である。これらの情報を設けておくことの意義は、 STC、 ATCの不連続 点を、予めストリーム供給装置 300に通知するためである。つまりかかる不連続点が 存在すると、 AVClip内において同じ値の PTSが出現する可能性があり、 PTS指定での 飛び込み再生時に不都合が生じる。 STC,ATCが連続しているのは、トランスポートス トリームのうち、どこからどこまでであるかを示すため、 Sequence Infoは設けられている
[0043] Program Infoとは、 Program内容が一定である区間 (Program Sequence)を示す情報 である。 Programとは、同期再生のための時間軸を共有し合うエレメンタリーストリーム 同士の集まりである。 Program Sequence情報を設けておくことの意義は、 Program内 容の変化点を、予めストリーム供給装置 300に通知するためである。ここでの Program 内容の変化点とは、ビデオストリームの PIDが変化したり、ビデオストリームの種類が S DTVから HDTVに変化して!/、る点等を!、う。
[0044]
続いて Characteristic Point Infoについて説明する。図中の引き出し線 cu2は、 CPI の構成をクローズアップしている。引き出し線 cu2に示すように、 CPIは、 Ne個の EP_ma p— for— one— stream— PID(EP— map— for— one— stream— PID[0]〜EP— map— for— one— stream— PID[N e-1])からなる。これら EP_map_for_one_stream_PIDは、 AVClipに属する個々のエレメン タリストリームについての EP_mapである。 EP_mapは、 1つのエレメンタリストリーム上に おいて、 Access Unitが存在するエントリー位置のパケット番号 (SPN_EP_start)を、ェン トリー時刻 (PTS_EP_start)と対応づけて示す情報である。図中の引き出し線 cu3は、 EP _map_for_one_stream_PIDの内部構成をクローズアップして 、る。
[0045] これによると、 EP_map_for_one_stream_PIDは、 Nc個の EP_High(EP_High(0)〜EP_High (Nc-1))と、 Nf個の EP丄 ow(EP丄 ow(0)〜EP丄 ow(Nf-l》とからなることがわかる。ここで E P— Highは、 Access Unit(Non- IDR Iピクチャ、 IDRピクチャ)の SPN— EP— start及び PTS— EP —startの上位ビットを表す役割をもち、 EP丄 owは、 Access Unit(Non- IDR Iピクチャ、 ID Rピクチャ)の SPN_EP_start及び PTS_EP_startの下位ビットを示す役割をもつ。
[0046] 図中の引き出し線 cu4は、 EP_Highの内部構成をクローズアップしている。この引き 出し線に示すように、 EP_High(i)は、 EP丄 owに対する参照値である『ref_to_EP丄 ow_id[i ]』と、 Access Unit(Non-IDR Iピクチャ、 IDRピクチャ)の PTSの上位ビットを示す『PTS_E P_High[i]』と、 Access Unit(Non- IDR Iピクチャ、 IDRピクチャ)の SPNの上位ビットを示 す『SPN_EP_High[i]』と力もなる。ここで iとは、任意の EP_Highを識別するための識別子 である。
[0047] 図中の引き出し線 cu5は、 EP丄 owの構成をクローズアップしている。引き出し線 cu5 に示すように、 EP丄 owは、対応する Access Unitが IDRピクチャか否かを示す『is_angle — change_point(EP丄 ow_id)』と、対応する Access Unitのサイズを示す『し end_position_off set(EP丄 ow_id)』と、対応する Access Unit(Non- IDR Iピクチャ、 IDRピクチャ)の PTSの 下位ビットを示す『PTS_EP丄 ow(EP丄 owjd)』と、対応する Access Unit(Non- IDR Iピク チヤ、 IDRピクチャ)の SPNの下位ビットを示す『SPN_EP丄 ow(EP丄 ow_id)』とからなる。こ こで EP丄 owjdとは、任意の EP丄 owを識別するための識別子である。
[0048] < PlayList情報 >
続いて、 PlayList情報について説明する。拡張子" mpls"が付与されたファイル (0000 1.mpls)は、 PlayList(PL)情報を格納したファイルである。
図 8は、 PlayList情報のデータ構造を示す図であり、本図において、引き出し線 mpl に示すように PlayList情報は、 MainPathを定義する MainPath情報 (MainPathO)と、チヤ プターを定義する PlayListMark情報 (PlayListMarkO)を含む。
[0049] < PlayList情報の説明その 1.MainPath情報 >
先ず MainPathについて説明する。 MainPathは、主映像たるビデオストリームゃォー ディォストリームに対して定義される再生経路である。
MainPathは、矢印 mplで示すように複数の Playltem情報 #1 · · · '#mから定義される。 Playltem情報は、 MainPathを構成する 1つの論理的な再生区間を定義する。 Playltem 情報の構成は、引き出し線 hslによりクローズアップされている。この引き出し線に示 すように Playltem情報は、再生区間の IN点及び Out点が属する AVClipの再生区間情 報のファイル名を示す『ClipJnformation_file_name』と、 AVClipの符号化方式を示す『 Clip_codec_identifier』と、 Playltemがマルチアングルを構成するか否かを示す『is_mult
i_angle』と、この Playltemと、その 1つ前の Playltemとの接続を、シームレスに行うか否 かを示す『connection_condition』と、この Playltemが対象としている STC_Sequenceを一 意に示す『ref_to_STC_id[0]』と、再生区間の始点を示す時間情報『In_time』と、再生区 間の終点を示す時間情報『Out_time』と、この Playltemにお!/、てマスクすべきユーザ オペレーションがどれであるかを示す『UO_mask_table』と、この Playltemの途中へのラ ンダムアクセスを許可するか否かを示す『PlayItem_random_access_flag』と、この Playlte mの再生終了後、最後のピクチャの静止表示を継続する力否かを示す『Still_mode』と 、『STN_table』とから構成される。このうち、再生経路を構成するのは、再生区間の始 点を示す時間情報『In_time』、再生区間の終点を示す時間情報『Out_time』の組みで あり、再生経路情報とは、この『In_time』及び『Out_time』の組み力も構成される。
[0050] 図 9は、 AVClipと、 PlayList情報との関係を示す図である。第 1段目は、 PlayList情報 力 Sもつ時間軸を示す。第 2段目から第 5段目は、 EPjnapにて参照されているビデオス トリームを示す。
PlayList情報は、 Playltem情報 #1, #2と!、う 2つの Playltem情報を含んでおり、これら P layltem情報 #1,#2の In_time,Out_timeにより、 2つの再生区間が定義されることになる。 これらの再生区間を配列させると、 AVClip時間軸とは異なる時間軸が定義されること になる。これが第 1段目に示す PlayList時間軸である。このように、 Playltem情報の定 義により、 AVClipとは異なる再生経路の定義が可能になる。
[0051] 以上の Clip情報及びプレイリスト情報は、 "静的シナリオ"に分類される。何故なら、 以上の Clip情報及びプレイリスト情報により、静的な再生単位であるプレイリストが定 義されるからである。以上で静的シナリオについての説明を終わる。
続いて"動的なシナリオ"について説明する。動的シナリオとは、 AVClipの再生制御 を動的に規定するシナリオデータである。 "動的に"というのは、ホームシアターシステ ムを構成する機器における状態変化やユーザからのキーイベントにより再生制御の 中身がかわることをいう。 BD-ROMでは、この再生制御の動作環境として 2つのモード を想定している。 1つ目は、 DVD再生装置の動作環境と良く似た動作環境であり、コ マンドベースの実行環境である。 2つ目は、 Java (登録商標)仮想マシンの動作環境 である。これら 2つの動作環境のうち 1つ目は、 HDMVモードと呼ばれる。 2つ目は、 BD
-Jモードと呼ばれる。これら 2つの動作環境があるため、動的シナリオはこのどちらか の動作環境を想定して記述される。 HDMVモードを想定した動的シナリオは Movie 0 bjectと呼ばれる。一方 BD-Jモードを想定した動的シナリオは BD-J Objectと呼ばれる
[0052] 先ず初めに Movie Objectについて説明する。
< Movie Object >
Movie Objectは、図 2に示した MovieObject.bdmvというファイルに格納され、ナビゲ ーシヨンコマンド列を含む。
ナビゲーシヨンコマンド列は、条件分岐、ストリーム供給装置 300における状態レジ スタの設定、状態レジスタの設定値取得等を実現するコマンド列力 なる。 Movie Obj ectにおいて記述可能なコマンドを以下に示す。
[0053]
PlayPLコマンド
書式: PlayPL (第 1引数,第 2引数)
第 1引数は、プレイリストの番号で、再生すべきプレイリストを指定することができる。 第 2引数は、そのプレイリストに含まれる Playltemや、そのプレイリストにおける任意の 時刻、 Chapter, Markを用いて再生開始位置を指定することができる。
[0054] Playltemにより PL時間軸上の再生開始位置を指定した PlayPL関数を PlayPLatPlayl temO、
Chapterにより PL時間軸上の再生開始位置を指定した PlayPL関数を PlayPLatChapt er()、
時刻情報により PL時間軸上の再生開始位置を指定した PlayPL関数を PlayPLatSpe cified TimeOと ヽつ。
[0055]
Movie Objectにおけるナビゲーシヨンコマンドの記述は、 DVDにおけるナビゲーショ ンコマンドの記述方式と良く似ているので、 DVD上のディスクコンテンツを、 BD-ROM に移植するという作業を効率的に行うことができる。 Movie Objectについては、以下 の国際公開公報に記載された先行技術が存在する。詳細については、本国際公開
公報を参照されたい。
[0056]
国際公開公報 W0 2004/074976 以上で Movie Objectについての説明を終える。続いて BD- J Objectについて説明 する。
< BD-J Object >
BD-J Objectは、 Javaプログラミング環境で記述された、 BD-Jモードの動的シナリオ であり、 00001. bobjというファイルに格納される。 Movie Objectとの違いは、 BD-J Obje ctにコマンドが直接記述されていない点である。つまり Movie Objectにおいて制御手 順は、ナビゲーシヨンコマンドにより直接記述されていた。これに対し BD-J Objectで は、 Javaアプリケーションに対する指定をアプリケーション管理テーブルに記載するこ とにより、間接的に制御手順を規定している。このような間接的な規定により、複数動 的シナリオにお 、て制御手順を共通化すると 、う、制御手順の共通化を効率的に行 うことができる。
[0057] また MovieObjectにおけるプレイリスト再生は、プレイリスト再生を命じるナビゲーショ ンコマンド (Playpiコマンド)の記述によりなされるが、 BD- J Objectにおけるプレイリスト 再生は、プレイリスト再生手順を示すプレイリスト管理テーブルを BD-J Objectに組み 込むことで記述が可能になる。
この BD-Jモードにおける Javaアプリケーションにつ!/、て説明する。ここで BD-Jモード が想定している Javaプラットフォームは、 Java2Micro_Edition(J2ME) Personal Basis Pr ofile(PBP 1.0)と、 Globally Executable MHP specification(GEM 1.0.2)for package medi a targetsとをフル実装したものである。
[0058] この BD-Jモードにおける Javaアプリケーションは、 xletインターフェイスを通じて、 Ap plication Managerにより、制御される。 xletインターフェイスは、 "loaded", "paused", "a ctive" , "destoryed"と 、つた 4つの状態をもつ。
上述した Javaプラットフォームは、 JFIF0PEG)や PNG,その他のイメージデータを表
示するためのスタンダード Javaライブラリを含む。このため、 Javaアプリケーションは、 H
DMVモードにおいて IGストリームにより実現される GUIとは異なる GUIフレームワーク を実現することができる。 Javaアプリケーションにおける GUIフレームワークは、 GEM1.
0.2にて規定された HAViフレームワークを含み、 GEM1.0.2におけるリモートコントロー ルナピゲーシヨン機構を含む。
[0059] これにより、 Javaアプリケーションは、 HAViフレームワークに基づくボタン表示、テキ スト表示、オンライン表示 (BBSの内容)といった表示を、動画像の表示と組み合わせ た画面表示を実現することができ、リモートコントロールを用いて、この画面表示に対 する操作を行うことができる。
この Javaアプリケーションの実体にあたるのが、図 2における BDMVディレクトリ配下 の BDJAディレクトリに格納された Javaアーカイブファイル (00001. jar)である。
[0060] BD-J Objectについては、以下の国際公開公報に記載された先行技術が存在する
。詳細については、本国際公開公報を参照されたい。 国際公開公報 W0 2004/045840 A1
W0 2005/036555 A1
W0 2005/036546 A1 以上で BD-J Objectについての説明を終える。
[0061]
sound.bdmv
続いて sound.bdmvについて説明する。 sound.bdmvは、 IGストリームにて描画されたメ ニューや Javaアプリケーションの GUIフレームワークに対して操作がなされた場合、ク リック音として出力すべきオーディオデータ (かかるオーディオデータを、サウンドデー タと 、う)が格納されるファイルである。
[0062] 図 10は、ファイル sound.bdmvの構成を示す図である。ファイル sound.bdmvは、 Soun d DataOと、 Sound IndexOとからなる。 Sound DataOは、複数のサウンドデータ (sound_d ata(0),sound_data(l》からなる。これらのサウンドデータのうち、 sound_data(0)は、メニュ
一に対する操作時に、第 1のクリック音として出力される音源である。 soui Ldatad)は 、メニューに対する操作時に、第 2のクリック音として出力される音源である。これらの サウンドデータは、 soundJDと呼ばれる識別子にて指示される。
[0063] Sound IndexOは、サウンド数 (number_of_sound_entries)、 sound_data(0)に対するイン デッタス、 sound_data(l)に対するインデックス等からなる。
インデックスは、モノラル/ステレオの別などの各サウンドの属性 (sound_attributes)、 対応するサウンドデータのアドレス (sound_data_start_address)、対応するサウンドデー タの連続長 (sound_data_length)からなる。
[0064] 図 2〜図 6に示したように、映画の劇中に使用される音声の音源は、 Primaryオーデ ィォストリームとして、 AVClip内に多重化される。これは、映画劇中の音声を表す Prim aryオーディオストリームを、ビデオストリームの読み出しと同時に供給するためである 。これに対し、ファイル sound.bdmvは、 AVClipとは別個のファイルとして BD- ROMに記 録され、ユーザーのメニュー操作に対するクリック音を格納する。ファイル sound.bdmv は、 AVClipとは別個のファイルとして記録されるので、 AVClipの読み出し中に、サゥ ンドデータを出力させようとすると、ファイル sound.bdmvを読み出すための光ピックァ ップのジャンプが生じ、 AVClipの読み出しが中断せざるを得なくなる。かかる中断が 生じれば、 AVClip再生に途切れが出る。
[0065] 力かる AVClipの再生途切れを避けるには、 AVClipの再生がなされて!/、な!/、時点に おいて、ファイル sound.bdmvを予めバッファにプリロードしておく必要がある。つまり A VClipの再生に先立ち、ファイル sound.bdmv内のサウンドデータを、プリロードしてお く必要がある。以上がファイル sound.bdmvについての説明である。
< Inaex.bdmv>
Index.bdmvは、タイトルを構成する、 Movie Object又は BD- J Objectを示すテープ ルである。
[0066] Titleにおいて、ある Titleの構成要素となる MovieObjectはどれである力、又は、ある Titleの構成要素となる BD-J Objectはどれであるのかを定義する。
Index.bdmvについては、以下の国際公開公報に詳細が記載されている。詳細につ
いては、本公報を参照されたい。 国際公開公報 WO 2004/025651 A1公報 以上が、 BD-ROM100についての説明である。
[0067] くローカルストレージ 200 >
続いて、ローカルストレージ 200について説明する。図 11は、ローカルストレージ 2 00の内部構成を示す図である。本図に示すように、本発明に係る記録媒体は、応用 層に対する改良により、生産することができる。
本図の第 4段目にローカルストレージ 200を示し、第 3段目にローカルストレージ 20 0上のトラックを示す。本図のトラックは、ローカルストレージ 200の内周から外周にか けて螺旋状に形成されているトラックを、横方向に引き伸ばして描画している。このト ラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。本図のボリ ユーム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもつ。ディレ クトリ構造を用いてローカルストレージ 200の応用層フォーマット (アプリケーションフォ 一マット)を表現すると、図中の第 1段目のようになる。
[0068] 本図のディレクトリ構造において ROOTディレクトリの配下には、「organization#l」と いうサブディレクトリがあり、その配下に、「disc#l」というサブディレクトリがある。ディレ クトリ「organization#l」とは、映画作品の特定のプロバイダに割り当てられたディレクト リである。「disc#l」は、そのプロバイダが提供した BD-ROMのそれぞれに割り当てら れたディレクトリである。
[0069] 特定のプロノイダに対応するディレクトリに、各 BD-ROMに対応するディレクトリを設 けることにより、各 BD- ROMについてのダウンロードデータが個別に格納される。この サブディレクトリの配下に、 BD- ROMに格納されていたのと同様、 PlayList情報 (00002 •mpls)、 Clip情報 (00002. clpi)、 AVClip(00002.m2ts),BD-J Object(00002.bobj),Javaァ 一力イブファイル (00002.jar),クリック音データ (sound.bdmv),Movie Object.bdmvが格 納されている。
[0070] 続、て、ローカルストレージ 200の構成要素となる、 PlayList情報、 Clip情報、 AVCli
pについての説明する。
<ローカルストレージ 200の構成その 1. AVClip >
ローカルストレージ 200上の AVClip(00002.m2ts)は、 SubClipを構成する。 SubClipと は、 MainClipと同時にデコードされ再生されるエレメンタリストリームを含む AVClipで ある。かかる SubClipには、『Primaryオーディオストリーム』、『Secondaryオーディオスト リ ~~ム』、『Presentation tjrapmcs(PG)ストリ ~~ム』、『Interactive wapmcsQtjノストリ ム 』といった種別がある。(以後、 SubClipのことを Out- of- MUXストリームと呼ぶことがある o )
本実施形態では、図 11に示した 00002.m2tsは、 Secondaryオーディオストリーム、 P Gストリーム、 IGストリームが 1つの SubClipに多重化されているものとする。以降 Second aryオーディオストリームの詳細を説明する。
[0071]
く Out- of- MUXストリームの説明その l.Secondaryストリーム >
『Primaryオーディオストリーム』が、いわゆる主音声となるオーディオストリームである のに対し、『Secondaryオーディオストリーム』とは、いわゆる副音声となるオーディオス トリームである。 SubClip再生時において、 Secondaryオーディオストリームの音声再生 は、 Primaryオーディオストリームの再生音声にミキシングされた上で出力に供される 。 Secondaryオーディオストリームとして扱われる音声には、例えば"コメンタリ音声"が ある。 Primaryオーディオストリームとなる主音声力 映画作品本編の音声であり、 Sec ondaryオーディオストリームとなる副音声力 映画監督のコメンタリ音声である場合、 力かる映画作品本編の音声は、コメンタリ音声がミキシングされた上で出力されること になる。
[0072] Secondaryオーディオストリームは、ローカルストレージ 200にのみ記録され再生に 供される力 BD- ROMには記録されない。 Primaryオーディオストリームは、 BD- ROM に置かれていても、ローカルストレージ 200に置かれていてもよい。また Primaryォー ディォストリームの符号化コーディックは、 Secondaryオーディオストリームの符号化コ 一ディックと異なって 、てもよ 、。
[0073] 図 12は、 SubClipに多重化されるエレメンタリストリームを示す図である。 SubClipに
は、 0x1200から 0xl21Fまでの PIDをもつ PGストリーム、 0x1400から 0xl41Fまでの PIDを もつ IGストリームのほかに、 OxlAOOから OxlAlFまでの PIDをもつ Secondaryオーディオ ストリームが多重化される。ここで SubClipにおける PGストリーム、 IGストリームの PIDは 、 MainClipにおける PGストリーム、 IGストリームの PIDと同じになっているものの、 Secon daryオーディオストリームの PIDは、上位バイトが異なるため、 32本の Secondaryォー ディォストリームの PIDは、 32本の Primaryオーディオストリームの PIDと、一切重複して いない。
[0074] 図 13は、 BD- ROM規格における PID割当マップを示す図である。本図によれば、 Ox 0100は、 Program_mapに割り当てられ、 0x1001は PCRに、 0x1011はビデオストリームに 、 0x1100から 0x111Fまでのゾーンは Primaryオーディオストリームに、 0x1200から 0x12 1Fまでのゾーンは PGストリームに、 0x1400から 0xl41Fまでのゾーンは IGストリームに、 OxlAOOから OxlAlFまでのゾーンは Secondaryオーディオストリームに割り当てられて いる。この PID割当マップからもわかるように、 Primaryオーディオストリームに割り当て られて 、るゾーンと、 Secondaryオーディオストリームに割り当てられて!/、るゾーンとが 異なっていることがわかる。
[0075] 図 14 (a)は、 Secondaryオーディオストリームの内部構成を示す図である。
本図に示すように、 Secondaryオーディオストリームは、複数のオーディオフレームか らなる。図 14 (b)は、オーディオフレームの一例を示す図である。 Secondaryオーディ ォストリームのオーディオフレームは、メタデータを含む。
図 14 (c)は、メタデータの内部構成を示す図である。メタデータは、本図に示すよう に、 "ダウンミキシング情報"と、 "ゲイン制御情報"とからなる。
[0076] "ダウンミキシング情報,,は、ダウンミキシングのための情報である。ダウンミキシング とは、音声の再生チャネル数を符号ィ匕チャンネル数よりも少なくする変換であり、ダウ ンミキシング情報は、ダウンミキシングのための変換係数行列を規定することにより、 このダウンミキシングをストリーム供給装置 300やオーディオアンプ 400等のオーディ ォ再生を担当する機器に行わせる。 5.1chの音声ストリームを 2chで再生することなど がダウンミキシングの一例である。
[0077] "ゲイン制御情報"とは、 Primaryオーディオストリーム側の音声出力時のゲインを上
げ下げする情報であるが、ここでは下げるだけでよい。図 14 (d)は、ゲイン制御情報 の一例を模式的に示す。このように Secondaryオーディオストリームのメタデータは、 同時に再生される Primaryオーディオストリームの出力をリアルタイムに下げることがで きる。 Primaryオーディオと Secondaryオーディオを重畳する場合には、あらかじめミキ シングされる Primaryオーディオと Secondaryオーディオの対が分かって 、るため、 2本 のオーディオのゲインをリアルタイムに制御する必要は無ぐ Primaryオーディオのゲ インだけを下げて Secondaryオーディオのゲインはそのままにミキシング (重畳)するこ とで十分である。
[0078] 尚、ゲイン制御情報は、 PlayListMarkの mark_time_stampに指定される時刻より、 dur ationの時間だけ、有効なゲイン制御情報を格納するようにしても良 、。
図 15は、 Secondaryオーディオストリーム内のメタデータにより、 Primaryオーディオ ストリームの音量がどのように制御されるかを示す図である。本図における第 1段目は 、時間軸を示し、第 2段目は、ミキシング可能な Primaryオーディオストリームの再生出 力を示す。第 3段目は、 Secondaryオーディオストリームの再生出力を示し、第 4段目 は、 Secondaryオーディオストリームに多重化されたメタデータを示す。
[0079] 再生時刻 tlにあたるオーディオフレームに配置されたメタデータは、 Primaryオーデ ィォストリームの再生出力の音量を全体的に抑えるものであり、再生時刻 t2にあたる オーディオフレームに配置されたメタデータは、 Primaryオーディオストリームの再生 出力の音声を元に戻すものである。再生時刻 tl,t2に、力かるメタデータを配置するこ とで、 Primaryオーディオストリームとの再生出力の音量と、 Secondaryオーディオストリ ームの再生出力の音量とが合わさり、スピーカを破損させてしまうという事態を避ける ことができる。
Secondaryオーディオの"ゲイン制御情報"を使ってリアルタイムにミキシングのゲイン 調整を行なう場合には、 tlから t2までの Secondaryオーディオの各オーディオフレーム に格納された"ゲイン制御情報"が Primaryオーディオのゲインを所定の量だけ下げる ことを指定していれば良い。特殊再生などで tlから t2の間に飛び込んでミキシング再 生を行なうことを想定すれば、常に適切なゲイン制御が可能なこちらの方法の方が都 合が良い。
[0080] <ローカルストレージ 200の構成その 2.PlayList情報 >
続いて、ローカルストレージ 200上の PlayList情報について説明する。拡張子" mpls "が付与されたファイル (00002.mpls)は、 MainPath, Subpathと呼ばれる 2種類の再生 経路を束ねたものを Playlist(PL)として定義する情報である。図 16は、 PlayList情報の データ構造を示す図であり、本図に示すように PlayList情報は、 MainPathを定義する MainPath情報 (MainPathO)と、チャプターを定義する PlayListMark情報 (PlayListMark( ;))と、 Subpathを定義する Subpath情報 (SubpathO)とからなる。力かる PlayList情報の内 部構成、及び、 Playltem情報の内部構成は、 BD-ROMのものと同じであり、説明を省 略する。
[0081]
< PlayList情報の説明その 1.Subpath情報 >
MainPathが、主映像たる MainClipに定義される再生経路であるのに対し、 Subpath は、 MainPathと同期すべき SubClipに対して定義される再生経路である。
図 17は、 Subpath情報の内部構成をクローズアップして示す図である。本図におけ る矢印 hcOに示すように各 Subpathは、 SubClipの類型を示す SubPath_typeと、 1つ以上 の SubPlayltem情報 · · SubPlayltemO · · とを含む。
[0082] 図中の引き出し線 hclは、 SubPlayltem情報の構成をクローズアップしている。 SubPl ayltem情報は、図中の矢印 hclに示すように『Clip jnformation_file_name』、『Clip_code c— identifier^『ref— to— STCjd[0]』、『SubPlayItem— In— time』、『SubPlayItem— Out— time』、『 sync_PlayItem_id』、『sync_start_PTS_of_PlayItem』からなる。
『Clip_information_file_name』は、 Clip情報のファイル名を記述することにより、 SubPla yltemに対応する SubClipを一意に指定する情報である。
[0083] 『Clip_codec_identifier』は、 AVClipの符号化方式を示す。
『reむ o_STC_id[0]』は、この Playltemが対象として!/、る STC_Sequenceを一意に示す。
『SubPlayItem_In_time』は、 SubClipの再生時間軸上における、 SubPlayltemの始点を 示す情報である。
『SubPlayItem_Out_time』は、 SubClipの再生時間軸上における、 SubPlayltemの終点 を示す情報である。
[0084] 『sync_PlayItem_id』は、 MainPathを構成する Playltemのうち、本 SubPlayltemが同期 すべきものを一意に指定する情報である。 SubPlayltem— In— timeは、この sync— Playltem— idで指定された Play Itemの再生時間軸上に存在する。
『sync_start_PTS_of_PlayItem』は、 sync_PlayItem_idで指定された Play Itemの再生時 間軸上にぉ 、て、 SubPlayItem_In_timeで指定された SubPlayltemの始点力 どこに存 在するかを示す。
[0085] < Subpath情報の詳細その 1.SubPath_type >
以上が SubPath情報につ!、ての説明である。続 、て SubPath_typeにつ!/、て説明する 。 SubPath_typeは、 0から 255までの値に設定されることにより、 SubPath情報により定義 される SubPathがどのような再生経路であるのかを示す。
SubPath_typeが 5に設定されて!、る場合、この SubPath情報により定義される SubPath は、 Primaryオーディオ再生パスであることを示す。この Primaryオーディオ再生パスは 、 MainPath(Playltem)にて参照される Primaryオーディオに置き換えて再生されるべき オーディオストリームが SubPath(SubPlayltem)内に格納されているときに使われる。
[0086] SubPath_typeが 6に設定された場合、本 SubPath情報は、追加 ·置換のための Presen tation Graphics再生パスを定義していることを示す。何に対する追カロ'置換であるかと いうと、 Playltem情報にて再生され得る PGストリームに対して、追加'置換され得る PG ストリームである。
SubPath_typeが 7に設定された場合、本 SubPath情報は、追カロ'置換のための Intara ctive Graphics再生パスを定義していることを示す。何に対する追カロ'置換であるかと いうと、 Playltem情報にて再生され得る IGストリームに対して、追加'置換され得る IGス トリームである。
[0087] SubPath_typeが 8に設定された場合、 SubPath情報は Secondaryオーディオ再生パス を定義する旨を示す。この Secondaryオーディオ再生パスは、追カ卩のために定義され ている。何に対する追加かというと、 Playltem情報にて再生され得る Primaryオーディ ォの再生音声にミキシングされるべき Secondaryオーディオである。
例えば、 Primaryオーディオと Secondaryオーディオのミキシング再生を行う場合には、 2つのオーディオデコーダとミキサーを動作させる必要があるため、通常の Primaryォ
一ディォだけを再生する場合とは要求が異なり、前もってプレイヤがどのような再生タ ィプかを取得できる必要がある。このために、 SubPath_typeや STN_tableの PIDによつ て、同期再生すべき Secondaryオーディオが存在することを再生前にプレイヤに通知 することが可能となる。
[0088] 以上が SubPathJ peにつ!/、ての説明である。
< SubPath情報についての詳細その 2.三者の関係 >
ここでの三者とは、ローカルストレージ 200上の SubClip、ローカルストレージ 200上 の PlayList情報、 BD- ROM上の MainClipの三者を!、う。
図 18は、ローカルストレージ 200上の SubClipと、ローカルストレージ 200上の PlayLi st情報と、 BD- ROM上の MainClipとの対応を示す図である。本図において第 1段目は 、ローカルストレージ 200上に存在する SubClipを示す。この第 1段目に示すように、口 一力ルストレージ 200上の SubClipには、 Secondaryオーディオストリーム、 PGストリー ム、 IGストリームといった種別がある。これらのうち何れ力が、 SubPathとして同期再生 に供されること〖こなる。
[0089] 第 2段目は、 PlayList情報により定義される 2つの時間軸を示す。第 2段目のうち下側 の時間軸は、 Playltem情報により定義される Playltem時間軸を示し、上側の時間軸は SubPlayltemにより定義される SubPlayltem時間軸を示す。
本図に示すように、 SubPlayltem情報の SubPlayltem— Clip— information— file— nameは、 S TREAMディレクトリに格納された. m2tsファイルのうち、どれを再生区間指定の対象と して選ぶかと 、う、 SubClip選択の役割を果たして!/、ることがわ力る。
[0090] そして SubPlayItem.IN_time、 SubPlayltem.OuUimeは、 SubClip上の、再生区間の始 点及び終点を定義するという役割を果たしていることがわかる。
矢印 Sync_PlayItem_Idは、どの Playltemとの同期を意図して!/、る力と 、う同期指定の 役割を果たし、 sync_start_PTS_of_PlayItemは、 Playltem時間軸上における SubPlaylte mjn_timeの位置を決める役割を果たす。
[0091] 図 19は、 MainClipに対して設定された EPjnap及び Playltem時間軸と、 SubClipに対 して設定された EP_map及び SubPlayltem時間軸と^^約して示す図である。
本図の中段、下 4段〜下 1段は、図 9に示した Playltem時間軸、ピクチャ列、 MainCli
P時間軸、 EP_map、 TSパケット列を示す。
また上 1段目〜上 3段目は、 TSパケット列、 EP_map、 SubClip時間軸を示す。上 4段 目は、 SubPlayltem時間軸を示す。
[0092] 以上が、 SubPath情報についての説明である。
< STN— table >
このローカルストレージ 200における PlayList情報において特徴的であるのは、 STN _Tableである。以降、ローカルストレージ 200上の PlayList情報について説明する。
STN_tableは、 Playltem情報の Clip_Information_file_nameで指定されている AVClipに 多重化された複数エレメンタリストリーム、 SubPlayltem情報の Clip_Information_file_na meで指定されて!、る Out_of_MUXストリームのうち、再生可能なものを示すテーブルで ある。具体的にいうと STN_tableは、 MainClipに多重化されている複数エレメンタリスト リーム、 SubClipに多重化されている Out_of_MUXストリームのそれぞれについての Stre am_entryを、 Stream_attributeと対応付けることで構成される。
[0093] 図 20は、 STN_tableの内部構成を示す図である。本図に示すように STN_tableは、 ST N_tableにおける entryと、 attributeとの糸且み (entry-attribute)を複数含み、これら entry — attributeの糸且 の個数 (number— of— video— stream— entnes'number— of— audio— stream— en tries 'number— of— PG— stream— entries 'number— of— I G— stream— entries)を すァ ~~タ構造に なっている。
[0094] entry- attributeの組みは、図中の括弧記号" {,,に示すように、 Play Itemにおいて再 生可能なビデオストリーム、 Primaryオーディオストリーム、 Secondaryオーディオストリ ーム、 PGストリーム、 IGストリームのそれぞれに対応している。特に注意すべきは、 Sec ondaryオーディオストリームにおける Stream_entryと、 Stream_attributeとの糸且みが、 Co mb— info— secondary— audio— Primary— audioと対 J心 1、J 'けられて 、る;??、で teる。
[0095]
entry— attributeの詳細につ!、て説明する。
図 21 (a)は、ビデオストリームに対応した Stream_attributeを示す図である。 ビデオストリームにおける Stream_attributeは、ビデオストリームの表示方式を示す『 Video_format』と、ビデオストリームの表示周波数を示す『frame_rate』等を含む。
[0096] 図 21 (b)は、 Primaryオーディオストリーム、 Secondaryオーディオストリームに対応し た Stream_attributeを示す図である。
Primary才ーティ才ストリーム, Secondary才ーティ才ストリームにおける Stream— attribu teは、オーディオストリームの符号ィ匕方式を示す『stream_coding_type』と、 stream_codi ng_typeにより示される符号ィ匕方式力 ¾TSまたは DTS-HDである場合に、オーディオフ レームの構成を示す『format_depending_coding_type』と、対応するオーディオストリー ムのチャネル構成を示す『audio_presentation_type』と、対応するオーディオストリーム のサンプリング周波数を示す対応する『Sampling_frequency』と、オーディオストリーム の言語属性を示す『audio_language code』からなる。
[0097] format— depending— coding— typにおいて、オーディオフレームの構成は、 Base,Levell, Level2,Level3という、 4つのパラメータの何れかを用いて規定される。図 22は、 DTS- HD形式の Primaryオーディオストリームのオーディオフレームにお 、て、「format_depe nding_coding_typeJにおける Base,Levell,Level2,Level3がそれぞれ、どのようなデータ 構造に割り当てられるかを示す図である。 DTS-HDオーディオストリームのオーディオ フレームは、基礎データである「Core
SubstreamJと feftgデータである「Extension SubstreamJと力らなる。 Core
Substreamは DTSオーディオストリームと同等であり、 1.5Mbpsの帯域でも伝送させるこ とができる。従って S/PIDFでもこの Core
Substreamを伝送させることができる。それに対して、 Extension
Substreamは、 DTSオーディオストリームには存在しない拡張データであり、 DTS- HD に対応したデコーダでな 、と再生ができな 、。
[0098] DTS- HDの Core Substreamである COREは、 48kHz/5.1chのオーディオデータを格 納している。
Extension Substreamは、図の第 3段目〜第 5段目に示すように
XCH、 X96、 XLLの何れかからなる。
DTS- ESの XCHは、 Core Substreamと共に用いることで、 5.1chに 1チャネルを足した 6. lCh,48KHzの音声再生が可能となるオーディオデータを格納することができ、 DTS -96/24の X96は、 Core Substreamと共に用いることで、 5.1Ch,96KHzの音声再生が可
能となるオーディオデータを格納することができる。 DTS- HDの XLLは、 Core Substre amと共に用いることで、 192kHz/マルチチャンネルロスレスの音声再生が可能となる オーディオデータを格納することができる。
[0099] 「format_depending_coding_type」に Baseが設定されて 、る場合、オーディオフレーム が Core Substreamである COREのみから構成されていることが示される。「format_depe nding_coding_typeJに Levellが設定されている場合、オーディオフレームが Core Subs treamである COREと Extension Substreamである XCHとから構成された DTS- ES形式 であることが示される。「format_depending_coding_type」に Level2が設定されて 、る場 合、オーディオフレームが Core Substreamである COREと Extension Substreamである X96とから構成された DTS— 96/24开式であることが示される。「format— depending— codin g_typejに Level3が設定されている場合、オーディオフレームが Core Substreamであ る COREと Extension Substreamである XLLとから構成された DTS- HD形式であること が示される。
[0100] 尚、上記では Core Substreamには DTSオーディオストリームの COREだけが格納さ れるとして説明した力、、「format depending coding type」にはし ore ¾ubstreamと Extensi on Substreamを区別せずに、 DTS(CORE)、 DTS- ES(XCH)、 DTS- 96/24(X96)、 DTS- HD(XLL)のどの拡張データが含まれて ヽるかを示すようにしても良 、。
図 21 (c)は、ビデオストリームにおける Stream_entryを示す図である。本図に示すよ うに、ビデオストリームの Stream_entryは、ビデオストリームの多重分離に用いられる PI Dを示す「ref_to_Stream_PID_of_Main_Clip」を含む。
[0101] MainClipにて多重化されている Primaryオーディオストリーム、 IGストリーム、 PGストリ ームの Stream_attributeは、この図 21 (c)の形式になっている。
図 21 (d)は、 SubClipにて多重化されているストリーム (以下 Secondaryオーディオスト リームとして説明)における Stream_entryを示す図である。 Secondaryオーディオストリ ームの Stream_entryは、 Secondaryオーディオストリームを参照して 、る SubPath情報を 示す『ref_to_Sub_Path_id』、 Secondaryオーディオストリームが多重化されて!/、る SubCli Pを示す『ref_to_Sub_Clip_entry_id』、 Secondaryオーディオストリームの多重分離に用 いられる PIDを示す『reむ。 _stream_PID_of_Sub_Clip』を含む。
[0102] 図 21 (e)は、 Secondaryオーディオストリームにおける Stream— entryと、 Stream— attrib uteとの糸且みに対応付けられている、 Comb_info_Secondary_audio_Primary_audioの内 咅構成を す。 Comb— info— secondary— audio— Primary— audioi 、各 secondaryォ ~~アイ ォストリームごとに組合せ可能な Primaryオーディオストリームの総数を示す number_of —primary— audio— stream— ref— entriesと、再生時に糸且合せること力 Sできる Primaryオーディ ォストリームのストリーム番号を示す Primary_audio_stream_id_rel 0]〜[n]とからなる。
[0103] 図 23は、 Comb— info— Secondary— audio— Primary— audioによる Primaryオーディオストリ ームの指定を示す図である。ここで本図の右側は、 32本の Secondaryオーディオストリ ームを示し、左側は、 32本の Primaryオーディオストリームを示す。そして矢印 ymlは、 secondaryォ ~~アイオストリ ~~ム fflにおけるし omb— info— Secondary— audio— Primary— audio による指定を示す。このように Secondaryオーディオストリーム毎に設定される Combjnf Secondary— audio— Primary— audio【ま、その Secondary才ーティ才ストリームの再生出力 をミキシングすることができる 1つ以上の Primaryオーディオストリームを一意に指定す る。これにより、所定の属性を有しているような Primaryオーディオストリームの再生時 においては、 Secondaryオーディオストリームをミキシングさせず、それ以外の属性を 有して 、るような Primaryオーディオストリームの再生時にぉ 、てのみ、 Secondaryォー ディォストリームをミキシングするというような、音声属性に応じた、ミキシングの可否を 、ォーサリング時に設定しておくことができる。
[0104] 以上がローカルストレージ 200の構成たる PlayList情報についての説明である。以 上で、ローカルストレージ 200についての説明を終える。
<ノ ーチヤノレノ ッケーシ >
以降、バーチャルパッケージについて説明する。図 24は、ストリーム供給装置 300 により生成されるバーチャルパッケージを示す図である。本図の左上は、 BD- ROMの 記録内容を示し、左下は、ローカルストレージ 200の記録内容を示す。右側は、バー チャルパッケージの構成を示す。
[0105] ストリーム供給装置 300は、 BD- ROMに存在する AVClip、 Clip情報、 PlayList情報 に、ローカルストレージ 200に存在する AVClip、 Clip情報、 PlayList情報を組み合わ
せて、仮想的な 1つの BD- ROMディスクイメージ(バーチャルパッケージ)を得る。 この組合せは、
OLocal Storage上の PlayList(00002.mpls)を、 BD- ROMにおける MPLSディレクトリに 仮想的に追加し、 ii)Local Storage上の Clip情報 #2(00002.clpi)を、 BD- ROMにおける CLPIディレクトリ に仮想的に追加し、 iiOLocal Storage上の AVClip#2(00002.m2ts)を、 BD- ROMにおける STREAMディレク トリに仮想的に追加することでなされる。
[0106] こうすることにより、図 24の右側に示すようなバーチャルパッケージが構成される。
以上が記録媒体にっ 、ての説明である。続、て本発明に係るオーディオアンプ 40 0について説明する。
図 25は、本発明に係るオーディオアンプ 400の内部構成を示す図である。本発明 に係るオーディオアンプ 400は、本図に示す内部構成に基づき、工業的に生産され る。本発明に係るオーディオアンプ 400は、主としてシステム LSIを装置のキャビネット 及び基板に実装することで工業的に生産することができる。システム LSIは、オーディ ォアンプ 400の機能を果たす様々な処理部を集積した集積回路である。こうして生 産されるオーディオアンプ 400は、バッファ 31、オーディオデコーダ 32、 Mixer33、コ ントローラ 34、 HDMI送受信部 35、 EEPROM36力も構成される。
[0107] バッファ 31は、 HDMI送受信部 35で受信したデータのうち、 Primaryオーディオストリ ームを、先入れ先だし式に格納して、オーディオデコーダ 32に供する。
オーディオデコーダ 32は、バッファ 31に格納された Primaryオーディオストリームに 対しデコード処理を行 、、非圧縮状態の LPCM状態のオーディオデータを得て Mixer 33へ出力する。
[0108] Mixer33は、オーディオデコーダ 32から出力されたデジタルオーディオを、オーデ ィォアンプ 400に接続されて!、るスピーカ 500のスピーカ数や配置(以下、スピーカ 構成という)に応じたチャンネル数となるように変換し、各スピーカへ割り当てて出力
する。例えば、デコードして得られた 5.1chのデジタルオーディオを接続されたスピー 力数 (2.1chなど)に減らして出力することもあれば、デコードして得られた 2chのデジタ ルオーディォを接続されたスピーカ数 (5. lchなど)に増やして出力することもある。
[0109] コントローラ 34は、 CPUが命令 ROMに記録されているプログラムを読み出して実行 することで、オーディオアンプ 400の動作を制御する。
HDMI送受信部 35は、 HDMIを介して接続されたストリーム供給装置 300へ自装置 の機器性能を示す情報を送信する。また、 HDMI送受信部 35は、 HDMIを介したストリ ーム供給装置 300からのオーディオデータの受信を行なう。
[0110] EEPROM36は、 HDMI送受信部 35がストリーム供給装置 300へ通知する、自装置 の機器性能を示す情報(以下、 DIB (Decoder Infomation Block) )を保持している不 揮発性メモリである。 DIBとしては、 EIA/CEA-861Bに規定された E-EDID (ENHANCE D EXTENDED DISPLAY IDENTIFICATION DATA)等を用いることができる。図 26 ( a)は、 DIBにおいて、音声再生性能に関する部分のデータ構造を模式的に示した図 である。
[0111] 本図に示すように DIBは、音声再生性能に関する情報として、「CODING TYPEJ ,「 Format depending coding type」、 「し hannelし ount」、 「し hannle/Speaker AllocationJ、 及び「Sample FrenquencyJの各フィールドを含む。
図 26 (b)は、 DIBの各フィールドに設定しうる値を示す。
「CODING TYPEJは、オーディオデコーダ 32でデコードすることができる符号化方 式が、 DTS-HD、 MLP、 DD+などのうち、どれであるかを示す。
[0112] 「Format depending coding typejは、「CODING TYPEJにより DTS— HDのデコードが 可能であると示される場合に、 DTSオーディオストリームの拡張規格である DTS-HDォ 一ディォストリームの拡張データを、どのレベルまでデコード可能であるかを示す。拡 張データをデコード可能なレベルは、 Base,Levell,Level2,Level3という、 4つのパラメ ータの何れかを用いて規定される。
[0113] rchannel CountJは、 7.1ch、 5.1ch、 2chなどデコード可能なチャンネル数を示す。
「Channel/Speaker AllocationJは、 5. lchのステレオ配置である「L/R/C/LS/RS/LF E」、 7.1(*のステレォ配置でぁる「し/1?/じ/1^/1¾/1^/1^/1^¾」、2(;11のステレォ配置
である「L/R」などのスピーカーの物理的な配置情報を示す。
「Sample Frenquency」は、「48KHz」、「192KHz」、「96KHz」などの再生することがで きるサンプリング周波数示す。
[0114] 以下、「Format depending coding type」の詳細について説明する。
「Format depending coding type」における Base,Levell,Level2,Level3i¾それそれ、 DTS- HDに対して、図 22に示すように、 Baseは DTS(CORE)に割り当てられ、 Levellは DTS- ES(CORE+XCH)、 Level2は DTS- 96/24(CORE+X96)に割り当てられ、 Level3は DTS-HD(CORE+XLL)に割り当てられる。そこで「Format depending coding typejに B aseが設定されて!、る場合、オーディオデコーダ 32が DTS-HD形式のオーディオスト リームのデコードに DTS (の CORE)のみをデコードすることが可能であることが示される 。「Format depending coding typejに Levellが設定されている場合、オーディオデコ ーダ 32が DTS-HD形式のオーディオストリームのデコードに DTS-ES(CORE+XCH)ま でデコードできることが示される。「Format depending coding typejに Level2が設定さ れて 、る場合、オーディオデコーダ 32が DTS-HD形式のオーディオストリームのデコ ードに DTS-96/24(CORE+X96)までデコードできることが示される。「Format dependin g coding typejに Level3が設定されている場合、オーディオデコーダ 32が DTS-HD形 式のオーディオストリームのデコードに DTS-HD(CORE+XCH+X96+XLL)までデコー ドできることが示される。
[0115] 以上が、本実施形態に係るオーディオアンプ 400のハードウェア構成である。続い て本実施形態に係るオーディオアンプ 400のソフトウエア構成について説明する。 CP Uが命令 ROMに記録されたソフトウェアを読み出して実行することで、コントローラ 34 は、オーディオアンプの音声再生を制御する。図 27は、コントローラ 34の処理手順を 示す図である。
[0116] ステップ S401は、装置起動がなされた力か否かの起動待ち判定であり、もし起動さ れれば、 HDMIを介した接続相手の機器の認証を行う(ステップ S402)。この認証に より、相互の正当性が判明すれば、ステップ S403に移行する。ステップ S403で、スト リーム供給装置 300への EEPROM36が保持している DIBの送信処理を HDMI送受信 部 35に実行させた後は、ステップ S404に移行する。ステップ S404は、オーディオス
トリームの受信待ちループであり、もしオーディオストリームを受信すれば (ステップ S 404で yes)、音声再生を開始する (ステップ S405)。
[0117] 以上が、本実施形態に係るオーディオアンプ 400についての説明である。続いて 本発明に係るストリーム供給装置 300について説明する。
図 28は、本発明に係るストリーム供給装置 300の内部構成を示す図である。本発 明に係るストリーム供給装置 300は、本図に示す内部構成に基づき、工業的に生産 される。本発明に係るストリーム供給装置 300は、主としてシステム LSIと、ドライブ装 置という 2つのパーツからなり、これらのパーツを装置のキャビネット及び基板に実装 することで工業的に生産することができる。システム LSIは、ストリーム供給装置 300の 機能を果たす様々な処理部魏積した集積回路である。こうして生産されるストリーム 供給装置 300は、 BD- ROMドライブ la、バス lb、リードバッファ 2a,b、デマルチプレク サ 3a,b、ビデオデコーダ 4、ビデオプレーン 5、バッファ 6a,b、オーディオデコーダ 7a, b、 DownMix/DownSample8、ミキサー 9a、ミキサー 9b、スィッチ 10a、エンコーダ 10b、 Interactive (graphicsアコ ~~ダ 11、 Interactive waphicsプレ ~~ン 12、 Presentation Gra phicsデコーダ 13、 Presentation Graphicsプレーン 14、 JPEGデコーダ 15、 Stillプレー ン 16、合成部 17、 STC生成部 18a,b、 ATC生成部 19a,b、メモリ 21、コントローラ 22、 PSRセット 23、 PID変換部 24、通信部 25、操作受付部 26、 HDMI送受信部 27から構 成される。
[0118] BD— ROMドライブ laは、 BD— ROMのローデイング/イジェクトを行い、 BD— ROMディ スクに対するアクセスを実行する。
バス lbは、 BD- ROMから読み出された TSパケット、ローカルストレージ 200から読み 出された TSパケットが転送される。
リードバッファ 2aは、 FIFOメモリであり、 BD- ROMディスク 100またはローカルストレ ージ 200から読み出された TSパケットが先入れ先出し式に格納される。
[0119] リードバッファ 2bは、 FIFOメモリであり、ローカルストレージ 200から読み出された TS パケットが先入れ先出し式に格納される。
デマルチプレクサ 3aは、バスに伝送している TSパケットのうち、 0xl011,0xll00〜0x 111F,0X1200〜0X121F,0X1400〜141Fの PIDをもつ TSパケットのうち、 PID変換部 24
から通知された PIDをもつものを、夫々ビデオデコーダ 4、スィッチ 10a、 Interactive G raphicsテコーダ丄 1、 Presentation Graphicsテコーグ 13に出ノコする。
[0120] デマルチプレクサ 3bは、バス lbに伝送している TSパケットのうち、 0xlA00〜0xlAlF の PIDをもつもの、即ち、 Secondaryオーディオストリームを構成する TSパケットの多重 分離を行う。デマルチプレクサ 3bによる Secondaryオーディオストリームの多重分離は 、 STN_tableに含まれる Secondaryオーディオストリームの stream_entryのうち、 PSR14に 格納されているストリーム番号に対応するものに記述されている PIDの参照値と、バス lbに転送されて 、る TSパケットの PIDとを比較し、当該比較にぉ 、て一致する PIDを もつ TSパケットを、スィッチ 10aに出力することでなされる。再生可能な Secondaryォ 一ディォストリーム力 S1つだけである場合、上述した比較は、 stream_entryに記述され ている PID参照値の上位バイド' 1A"と、バス lbに転送されている TSパケットの PIDの 上位バイド' 1A"との比較で足りる。何故なら、他に Secondaryオーディオストリームが 存在しな!、ので、 Secondaryオーディオストリームであることを意味する PID上位バイト を参照すれば充分だ力 である。
[0121] 再生可能な Secondaryオーディオストリームが複数存在する場合、上述した比較は、 stream_entryに記述されている PID参照値の上位バイト" 1A"と、バス lbに転送されて いる TSパケットの PIDの上位バイト" 1A"との比較に加え、 stream_entryに記述されてい る PID参照値の下位バイト (0x00から OxlFまでの数値)と、バス lbに転送されている TS パケットの PIDの下位バイト (0x00から OxlFまでの数値)との比較が必要になる。何故な ら、 Secondaryオーディオストリームが複数存在するので、再生すべき Secondaryォー ディォストリームを一意に特定するように、 PIDの下位バイトまで参照する必要がある 力 である。
[0122] ここでバス lbには、 BD- ROMから読み出された TSパケット、ローカルストレージ 200 力 読み出された TSパケットが転送されているので、デマルチプレクサ 3a、デマルチ プレクサ 3bは、これら BD- ROMから読み出された TSパケット、ローカルストレージ 200 力 読み出された TSパケットを、 1本のトランスポートストリームとして扱ってバッファに 取り込むことができる。 Primaryオーディオストリームを構成する TSパケット、 Secondary オーディオストリームを構成する TSパケットに割り当てられている PIDは、 PID割当マツ
プにおいて、異なるゾーンに存在しているのでデマルチプレクサ 3a、デマルチプレク サ 3bは、これらを 1つとして、取り込みつつもこれら Primaryオーディオストリーム、 Seco ndaryオーディオストリームを別々のエレメンタリストリームとして出力することができる。 この際、デマルチプレクサ 3a、デマルチプレクサ 3bは、 1つのトランスポートストリーム に多重化されている複数のオーディオストリームを多重分離するのと同じ手順を経る ことにより、デコーダに供給することができるので、 1つのトランスポートストリームから 所定の PIDを持つ TSパケットだけを多重分離するようなデマルチプレクサと互換を保 つ構成で、 Primaryオーディオストリーム、 Secondaryオーディオストリームを、該当する デコーダに供給することができる。
[0123] 尚、実装上デマルチプレクサを 1つに集約することが考えられる。この場合にも Prim aryオーディオと Secondaryオーディオの PIDが異なることが同様に有効である。
以上が、 BD- ROMドライブ la、バス lb〜デマルチプレクサ 3a、デマルチプレクサ 3b についての説明である。
ビデオデコーダ 4は、デマルチプレクサ 3aから出力された複数 PESパケットを復号し て非圧縮形式のピクチャを得てビデオプレーン 5に書き込む。
[0124] ビデオプレーン 5は、非圧縮形式のピクチャを格納しておくためのプレーンである。
プレーンとは、ストリーム供給装置 300において一画面分の画素データを格納してお くためのメモリ領域である。ビデオプレーン 5における解像度は 1920 X 1080であり、こ のビデオプレーン 5に格納されたピクチャデータは、 16ビットの YUV値で表現された 画素データにより構成される。
[0125] バッファ 6aは、デマルチプレクサ 3aから出力された TSパケットがスィッチ 10aを介し て供給される場合に、 PID=0xl 100〜111Fのうち再生されるべきオーディオストリーム の PIDを有する TSパケットを、先入れ先だし式に格納して、オーディオデコーダ 7aに 供する。
ノッファ 6bは、デマルチプレクサ 3bから出力された TSパケットがスィッチ 10aを介し て供給される場合に、 PID=0xlA00〜lAlFを有する TSパケットのうち再生されるべき オーディオストリームの PIDを有する TSパケットのみを、先入れ先だし式に格納して、 オーディオデコーダ 7bに供する。
[0126] バッファ 6cは、 BD- ROM/ローカルストレージから読み出されたファイル sound.bdmv をプリロードしておくためのメモリである。バッファ 6cへのプリロードは、 BD- ROMの口 一ディング時ゃタイトル切替時に行うことが望ましい。何故なら、 AVClipの再生中にフ アイル sound.bdmvを読み出そうとすると、 AVClipとは別のファイルを読み出すための 光ピックアップのシークが発生するからである。一方、 BD-ROMの装填時やタイトル切 替時には、 AVClipの再生が継続していることは希なので、力かるタイミングにファイル sound.bdmvを読み出すことにより、機器の応答性を高め AVClip再生が途切れにくく することができる。
[0127] オーディオデコーダ 7aは、バッファ 6aに格納された TSパケットを PESパケットに変換 して、この PESパケットに対しデコード処理を行い、非圧縮状態の LPCM状態のォー ディォデータを得て出力する。これにより Primaryオーディオストリームにおけるデジタ ル出力がなされる。
オーディオデコーダ 7bは、バッファ 6bに格納された TSパケットを PESパケットに変換 して、この PESパケットに対しデコード処理を行い、非圧縮状態の LPCM状態のォー ディォデータを得て出力する。これにより Secondaryオーディオストリームにおけるデジ タル出力がなされる。
[0128] DownMix/DownSample8は、ミキシングを行うにあたって、オーディオデコーダ 7aか ら出力されたデジタルオーディオの音声属性を、オーディオデコーダ 7bから出力され るデジタルオーディオの音声属性に合わせるための変換を施す。ここで音声属性と は、サンプリング周波数かつ/またはチャンネル数であり、これらを整合させる処理が なされる。また DownMix/DownSample8もしくはミキサー 9aは、 Secondaryオーディオス トリームに多重化されている、メタデータに従い、 Primaryオーディオストリーム側のゲ インを下げたりする処理もオーディオデコーダ 7bが抽出したゲイン制御情報によって 行う。
[0129] ミキサ 9aは、オーディオデコーダ 7aから出力される LPCM状態のデジタルオーディ ォと、オーディオデコーダ 7bから出力される LPCM状態のデジタルオーディオとをミキ シングする。
ミキサ 9bは、ミキサ 9aから出力される LPCM状態のデジタルオーディオと、ノ ッファ 6
cに格納されて 、るサウンドデータとをミキシングする。このサウンドミキサ 9bによるミキ シングは、クリック音の発音を意図したようなナビゲーシヨンコマンド、又は、クリック音 の発音を意図したようなバイトコードを、 CPU22が解読することでなされる。
[0130] スィッチ 10aは、デマルチプレクサ 3aにより多重分離がなされた、 Primaryオーディオ ストリームを構成する TSパケット、デマルチプレクサ 3bにより多重分離がなされた Seco ndaryオーディオストリームを構成する TSパケットを、オーディオデコーダ 7a,bに供給 するか、オーディオデコーダ 7a,bに供給せずそのエレメンタリーストリームだけを他機 器にパススルー出力するかを、コントローラ 22の制御に応じて切り換えるスィッチであ る。本実施形態においては、スィッチ 10aは、 Primaryオーディオストリームを構成する TSパケット及び Secondaryオーディオストリームを構成する TSパケットを、ノ ッファ 6a,b を介してオーディオデコーダ 7a,bへ供給することなく、それらのエレメンタリーストリー ム (もしくは Primaryオーディオストリームのみ)を HDMI送受信部 27へ供給する。これに よりストリーム供給装置 300は音声データをパスルー出力するよう動作する。パススル 一出力の際に用いる、 TSパケットからエレメンタリーストリームへの変換部(TS/PESへ ッダの除去を行う)はスィッチ 10aに組み込まれている。(図示はしていない)
エンコーダ 10bは、オーディオデコーダ 7a,bのデコードにより得られ、ミキサー 9a、ミ キサー 9bによるミキシングがなされた LPCM状態のオーディオデータを、サラウンド音 声として S/PDIFのようなデジタルインターフェース上で送る場合、ミキシングされた LP CMを Dolby Digital(DD)形式や Digital Theater System(DTS)ff 式に圧縮符号化する
[0131] Interactive Graphics(IG)デコーダ 11は、 BD- ROM100又はローカルストレージ 200 力も読み出された IGストリームをデコードして、非圧縮グラフィクスを IGプレーン 12に 書き込む。
Interactive Graphics(IG)プレーン 12は、 IGデコーダ 11によるデコードで得られた非 圧縮グラフィクスが書き込まれる。また BD-Jモードにおいて、アプリケーションにより描 画された文字やグラフィクスが書き込まれる。
[0132] Presentation Graphics(PG)デコーダ 13は、 BD- ROM又はローカルストレージ 200か ら読み出された PGストリームをデコードして、非圧縮グラフィクスを Presentation Graph
icsプレーン 14に書き込む。 PGデコーダ 13によるデコードにより、字幕が画面上に現 れること〖こなる。
Presentation Graphics(PG)プレーン 14は、一画面分の領域をもったメモリであり、一 画面分の非圧縮グラフィクスを格納することができる。
[0133] JPEGデコーダ 15は、 BD- ROM又はローカルストレージ 200に記録されている JPEG データをデコードして、 Stillプレーン 16に書き込む。
Stillプレーン 16は、 JPEGデータを展開することで得られた非圧縮のグラフィクスデ ータが格納されるプレーンである。このグラフィクスデータは、 Javaアプリが描画する、 GUIフレームワークの!/、わゆる"壁紙"として用いられる。
[0134] 合成部 17は、 Interactive Graphicsプレーン 12の格納内容と、 Presentation Graphic sプレーン 14の格納内容と、ビデオプレーン 5の格納内容と、 Stillプレーン 16の格納 内容とを合成した合成画像を得る。
STC生成部 18a,bは、コントローラ 22の指示によって System Time Clock(STC)を生 成し各デコーダの動作タイミングを調整する。
[0135] ATC生成部 19a,bは、コントローラ 22の指示によって Arrival Time Clock(ATC)を生 成しデマルチプレクサの動作タイミングを調整する。 メモリ 21は、カレントの PL情報 やカレントの Clip情報を格納しておくためのメモリである。カレント PL情報とは、 BD-R OMに記録されて!、る複数 PlayList情報のうち、現在処理対象になって!/、るちのを 、う 。カレント Clip情報とは、 BD- ROM/ローカルストレージに記録されている複数 Clip情 報のうち、現在処理対象になっているものをいう。
[0136] コントローラ 22は、 MovieObject.bdmvに格納されている Movie Objectや、 BD- J Obj ectにて参照されて 、る Javaアプリケーションを解読し、この解読結果に従ったプレイリ スト再生 (カレント PlayList情報に従った再生制御のことである)を実行することで、 BD- ROMの再生制御を実現する。また上述のような ATS、 STCの制御も行なう。尚、コント ローラ 22は、オーディオアンプが接続され再生可能なことが HDMI接続機器間の認 証や DIBの受信により判明している場合には、 HDMI送受信部 27及び S/PDIF等の 1/ Fユニットからテレビ 600へ出力するオーディオデータを削除する力、または無音のォ 一ディォデータを出力するよう制御するとしてもよ ヽ。これによりホームシアターシステ
ム環境での視聴中に、テレビ 600内蔵のスピーカから音声が再生されることを防ぐこ とがでさる。
[0137] PSRセット 23は、ストリーム供給装置 300に内蔵されるレジスタであり、 64個の Player
Setting/Status Register(PSR)と、 4096個の General Purpose Register (GPR)とからなる 。 Player Setting/Status Registerの設定値 (PSR)のうち、 PSR4〜PSR8は、現在の再生 時点を表現するのに用いられる。
PID変換部 24は、 PSRセット 23に格納されている Primaryオーディオストリーム、 Seco ndaryオーディオストリームのストリーム番号を、 STN_Tableに基づき、 PIDに変換して、 変換結果たる PIDをデマルチプレクサ 3a、デマルチプレクサ 3bに指示する。
[0138] 通信部 25は、読出装置における通信機能を実現するものであり、 BD-Jモードにお V、て URL指定力 ¾avaアプリケーションから与えられれば、その URLにあたる webサイト との TCPコネクション、 FTPコネクション等を確立する。かかるコネクション確立により we bサイトからのダウンロードを Javaアプリケーションに行わせる。
操作受付部 26は、リモコンに対してなされた操作をユーザカゝら受け付け、そうした 操作を示す User Operation情報をコントローラ 22に通知する。
[0139] HDMI送受信部 27は、 HDMIを介して接続された他の機器から、その機器に関する 情報を受信してコントローラ 22に通知すると共に、受信した情報に基づいて、 HDMI を介して接続された他の機器へのデータ送信を制御する。本実施形態では、ストリー ム供給装置 300がテレビ 600及びオーディオアンプ 400とそれぞれ異なる HDMIケー ブルで接続されており、 HDMI送受信部 27は、ビデオデコーダ 4のデコードにより得ら れたデジタル非圧縮のビデオをテレビ 600へ送信し、 LPCMや圧縮されたオーディオ データを、オーディオアンプ 400へ送信するよう制御する。オーディオストリームの送 信時に、 HDMI送受信部 27は、現在送信中のオーディオストリームの詳細を示す Aud io InfoFrameを送信する。図 29は、 Audio InfoFrameのデータ構造を模式的に示した 図である。
[0140] 本図に示すように Audio InfoFrameは、送信中のオーディオストリームの符号化方式 を示す「CT」、チャネル数を示す「CC」、サンプリング周波数を示す「SF」、サンプリン グサイズを示す「SS」、 CTにより示される符号ィ匕方式が DTSである場合に、オーディオ
フレームの階層構成を示す「Format depending coding type」、各スピーカへのチャン ネル割り当てを示す「CA」、ダウンミキシングの際に用いるレベルシフト値を示す「LSV 」、及びダウンミキシングの可否を示す「DMJNA」の各フィールドを含む。
[0141] ここで「Format depending coding typejの値が 00000001bであればオーディオフレ ームが DTS(CORE)のみから構成されていることが示される。「Format depending codi ng type」の値が 0000001 lbであればオーディオフレームが DTS-ESであり、 CORE+XC Hから構成されていることが示される。「Format depending coding type」の値が 000001 01bであればオーディオフレームが DTS-96/24であり、 CORE+X96から構成されてい ることが示される。「Format depending coding type」の値が 00001001bであればォー ディオフレーム力 ¾TS-HDであり、 CORE+XLLから構成されていることが示される。つ まりビット位置ごとに、どのような拡張フレームデータ (XCH,X96,XLLなど)があるかを 識別できるようになつている。
[0142] これによりオーディオストリームが DTS形式である場合に、オーディオストリームにど のような拡張データが含まれているかをオーディオアンプ 400へ詳細に通知すること ができる。
以上が、本実施形態に係るストリーム供給装置 300のハードウェア構成である。続 いて本実施形態に係るストリーム供給装置 300のソフトウェア構成について説明する
[0143] 図 28に示したコントローラ 22を、機能的に表現すると、図 30のようになる。図 30は 、コントローラ 22を機能的に表現した図であり、本図に示すようにコントローラ 22は、 起動処理部 40、プレイリスト処理部 41、 Procedure実行部 42、 Procedure実行部 43、 ミキシング制御部 44、 ATC生成部 19a,b、 STC生成部 18a,bに対して、 ATC/STCの 生成を行わせる ATC/STC制御部から構成される。
[0144] これらの構成要素の処理は、 PSRセット 23〖こ基づく。以降、 PSR1、 PSR14、 PSR31に ついて説明する。
< PSR1 >
図 31 (a)は、 PSR1のビットアサインを示す図である。
本図によると、 32ビット長の PSR1の下位 8ビット (b0〜b7)は、ストリーム番号であり、力
レント Play Itemの STN_tableに entryが記述されて 、る複数 Primaryオーディオストリー ムのうち、 1つを特定する。 PSR1の設定値が変化すれば、ストリーム供給装置 300は この変化後の Primaryオーディオストリームを再生の対象に特定する。 PSR1は初期値 として OxFFが設定されており、ストリーム供給装置 300により 1〜32の値に設定されう る。この OxFFは、不定値であり、 Primaryオーディオストリームが存在しない旨、又は、 Primaryオーディオストリームが選択されてない旨を示す。 1〜32の設定値は、 Primary オーディオストリームのストリーム番号として解釈される。
[0145] < PSR14>
図 31 (b)は、 PSR14のビットアサインを示す図である。
本図によると、 32ビット長の PSR14における下位 8ビット (b0〜b7)は、ストリーム番号で あり、カレント Play Itemの STN_tableに entryが記述されている複数 Secondaryオーディ ォストリームのうち、 1つを特定する。 PSR14の設定値が変化すれば、ストリーム供給装 置 300はこの変化後の Secondaryオーディオストリームを再生の対象に特定する。 PS R14は初期値として OxFFが設定されており、ストリーム供給装置 300により 1〜32の値 に設定されうる。この OxFFは、不定値であり、 Secondaryオーディオストリームが存在し ない旨、又は、 Secondaryオーディオストリームが選択されてない旨を示す。 1〜32の 設定値は、 Secondaryオーディオストリームのストリーム番号として解釈される。
[0146] < PSR31 >
図 31 (c)は、 PSR31のビットアサインを示す図である。
本図によると、 32ビット長の PSR31のうち、 16ビット目から 19ビット目まで (bl6〜bl9)は 、 Player Profile情報であり、 0000bであれば、当該ストリーム供給装置は、グレースピリ ォド内に出荷されたストリーム供給装置であることを示す。ここでグレースピリオドとは 、この期間内に出荷されたなら、一定の機能の実装を省くことができる期間である。こ のグレースピリオドに出荷するため、省略することができる機能には、音声のミキシン グ機能があり、力かる PSR31の Player Profile情報力 0000bであれば、ミキシングを始 めとする、様々な機能の実装が省略されているストリーム供給装置であると、知ること ができる。
[0147] Player Profile情報が 0001bであれば、当該ストリーム供給装置は、グレースピリオド
経過後に出荷されたストリーム供給装置であることを示す。グレースピリオドの経過後 に出荷されたストリーム供給装置は、原則として、全ての機能の実装が義務付けられ ているので、かかる Player Profile情報が 0001bであるなら、ミキシングが実装されてい るストリーム供給装置であると、知ることができる。
[0148] Player Profile情報が 001 lbであれば、当該ストリーム供給装置は、全ての機能を実 装しているストリーム供給装置であることを示す。力かるストリーム供給装置は、グレー スピリオドの経過前後にかかわらず、全ての機能を実装しているので、かかる Player P rofile情報が 001 lbであるなら、サウンドミキシング機能が実装されているストリーム供 給装置であると、知ることができる。
[0149] 尚、ミキシング機能を示す情報として、ストリーム供給装置がミキシングできるチャン ネル数を示す情報を PSRに持たせても良 ヽ。
尚、最終の音声出力チャンネル数を示す情報を PSRに持たせても良い。例えばミキ シングした結果の 5.1chの LPCM音声は HDMIなどの I/Fが繋がっているのであればそ のまま LPCMでも出力が可能だ力 S/PDIFのような I/Fの場合にはエンコーダにて圧 縮処理を行なわないと 5.1chとしては S/PDIFに出力できずに、 2ch(L/R)の出力となつ てしまう。したがって、ミキサーの後段にエンコーダがあり S/PDIFに繋がっている(例 えば HDMIで繋がっていない)と判断した場合には、最終の音声出力チャンネル数は 5.1chと設定できる。もしミキサーの後段にエンコーダがなければ、最終の音声出力チ ヤンネル数はミキシングした後では 2chと設定することができる。
[0150] < PSR15 >
図 32は、 PSR15のビットアサインを示す図である。
PSR15は、 32ビットのビット長を有する。
PSR15のビット b0からビット b3までは、 LPCMオーディオストリームをデコードして再生 する能力が再生環境 (プレイヤ +アンプなど)に存在するか否かを示す。この 4ビットが 0001bなら、ステレオ属性をもつ 48/96Hzの LPCMオーディオストリームを再生する能 力が再生環境内にある。この 4ビットが 0010bなら、サラウンド属性をもつ 48/96HZの LP CMオーディオストリームを再生する能力が再生環境内にある。この 4ビットが 0101bな ら、ステレオ属性をもつ全ての周波数の LPCMオーディオストリームを再生する能力
が再生環境内にある。この 4ビットが 0110bなら、サラウンド属性をもつ全ての周波数の LPCMオーディオストリームを再生する能力が再生環境内にある。
[0151] PSR15のビット b4からビット b7までは、 DD/DD+形式のオーディオストリームをデコー ドして再生する能力が再生環境 (プレイヤ +アンプなど)に存在するか否かを示す。こ の 4ビットの下位 2ビットが 01bなら、 DD/DD+オーディオストリームの基本データ (indepe ndent substream)がステレオをもっている場合、これを再生する能力が再生環境内に ある。この 4ビットの下位 2ビットが 10bなら、 DD/DD+オーディオストリームの基本デー タ (independent substream)がサラウンドをもっている場合、これを再生する能力が再 生環境内にある。
[0152] この 4ビットの上位 2ビットが 01bなら、 DD/DD+オーディオストリームの拡張データ (De pendent substream)がステレオ属性をもっている場合、これを再生する能力が再生環 境内にある。この 4ビットの上位 2ビットが 10bなら、 DD/DD+オーディオストリームの拡 張データ (Dependent substream)がサラウンドをもっている場合、これを再生する能力 が再生環境内にある。
[0153] 上位 2ビットが 00であるなら、これを再生する能力が再生環境内に存在しないことを 示す。
PSR15のビット b8からビット bl lまでは、 DTS-HD形式のオーディオストリームをデコ ードして再生する能力が再生環境 (プレイヤ +アンプなど)に存在するか否かを示す。 この 4ビットの下位 2ビットが 01bなら、 DTS-HDオーディオストリームの基本データ (Cor e substream)の 2chまでを再生する能力が再生環境内にある。この 4ビットの下位 2ビッ トが 10bなら、 DTS-HDオーディオストリームの基本データ (Core substream)のマルチ チャンネルを再生する能力が再生環境内にある。
[0154] この 4ビットの上位 2ビットが 01bなら、 DTS-HDオーディオストリームの拡張データ (Ex tension substream)の 2chまでを再生する能力が再生環境内にある。この 4ビットの上 位 2ビットが 10bなら、 DTS-HDオーディオストリームの拡張データ (Extension substrea m)のマルチチャンネルを再生する能力が再生環境内にある。
上位 2ビットが 00bであるなら、 DTS-HDオーディオストリームの拡張データ (Extensio n substream)を再生する能力が再生環境内に存在しないことを意味する。
[0155] PSR15のビット bl2からビット bl5までは、 DD/MLP形式のオーディオストリームをデコ ードして再生する能力が再生環境 (プレイヤ +アンプなど)に存在するか否かを示す。 この 4ビットの下位 2ビットが 01bなら、 DD形式のオーディオストリームがステレオの音声 属性をもっている場合、これを再生する能力が再生環境内にある。この 4ビットの下位 2ビットが 10bなら、 DD形式のオーディオストリームがサラウンドの音声属性をもってい る場合、これを再生する能力が再生環境内にある。
[0156] この 4ビットの上位 2ビットが 01bなら、 MLPオーディオストリームがステレオの音声属 性をもっている場合、これを再生する能力が再生環境内にある。この 4ビットの上位 2 ビットが 10bなら、 MLPオーディオストリームがサラウンドの音声属性をもっている場合 、これを再生する能力が再生環境内にある。
上位 2ビットが 00であるなら、これを再生する能力がユーザーの再生環境に存在し ないことを示す。
[0157] このように、 PSR15は、符号化方式毎に、基本データ、拡張データのそれぞれを処 理する能力があるか否かを規定できるようにして 、る。
さらに、 PSR15のビット bl6からビット bl9までは、 PSR15のビット b8からビット bl lまでの DTS-HD Capabilityが、再生環境を構成する何れの機器のデコード能力に基づいて 設定されたかを示す。この 4ビットの下位 2ビットが 01bなら、 DTS- HDオーディオストリ ームの基本データ (Core substream)の Capabilityは、自装置であるプレイヤのデコー ド能力に基づいて設定されている。この 4ビットの下位 2ビットが 10bなら、 DTS-HDォ 一ディォストリームの基本データ (Core substream)の Capabilityは、アンプ等の外部機 器のデコード能力に基づ 、て設定されて 、る。この 4ビットの下位 2ビットが 1 lbなら、 自装置であるプレイヤとアンプ等の外部機器とのデコード能力が同等であり、 DTS-H Dオーディオストリームの基本データ (Core substream)の Capabilityは、これら双方の デコード能力に基づいて設定されている。この 4ビットの下位 2ビットが 00bなら、再生 環境を構成する何れの機器にもデコード能力がなぐ DTS-HDオーディオストリーム の基本データ (Core substream)の Capabilityは incapableに設定されて 、る。
[0158] この 4ビットの上位 2ビットが 01bなら、 DTS-HDオーディオストリームの拡張データ (Ex tension substream)の Capabilityは、自装置であるプレイヤのデコード能力に基づいて
設定されている。この 4ビットの上位 2ビットが 10bなら、 DTS-HDオーディオストリームの 拡張データ (Extension substream)の Capabilityは、アンプ等の外部機器のデコード能 力に基づいて設定されている。この 4ビットの上位 2ビットが l ibなら、自装置であるプ レイヤとアンプ等の外部機器とのデコード能力が同等であり、 DTS-HDオーディオスト リームの拡張データ (Extension substream)の Capabilityは、これら双方のデコード能 力に基づいて設定されている。この 4ビットの上位 2ビットが 00bなら、再生環境を構成 する何れの機器にもデコード能力がなぐ DTS-HDオーディオストリームの拡張デー タ (Extension suDstream)の Capabilityは incapableに設定されて 、る。
[0159] より詳細には、ビット bl6は自装置であるプレイヤのデコード能力に基づいて、基本 データ (Core substream)の Capabilityが設定されたか否かを示し、ビット bl7はアンプ 等の外部機器のデコード能力に基づいて、基本データ (Core substream)の Capability が設定された力否かを示して 、る。ビット bl8は自装置であるプレイヤのデコード能力 に基づいて、拡張データ (Extension substream)の Capabilityが設定されたか否かを示 し、ビット bl9はアンプ等の外部機器のデコード能力に基づいて、拡張データ (Extensi on substream)の Capabilityが設定されたか否かを示して 、る。
[0160] 以上が、 PSRセット 23についての説明である。
以降、起動処理部 40〜ミキシング制御部 44についての説明を開始する。 <機能構成の詳細その 1.起動処理部 40 >
図 33は、ストリーム供給装置 300、オーディオアンプ 400間の通信シーケンスを示 す。
[0161] ストリーム供給装置 300の HDMI送受信部 27は、ストリーム供給装置 300が起動さ れた際や、オーディオアンプ 400と接続された際に、 ©1に示すように、相互認証を行 い、その後、ストリーム供給装置 300の HDMI送受信部 27は、レシーバとなるオーディ ォアンプ 400側力 、 ©2に示すように DIBを受信する。こうして受信した DIBにおいて 、オーディオアンプ 400側に、 Primaryオーディオストリームをデコードする能力が存 在すれば、オーディオアンプ 400に対し、 ©3に示すように Primaryオーディオストリー ムのパススルー出力を行う。
[0162] この時、オーディオアンプ 400のデコード能力に応じた Primaryオーディオストリーム
がパススルー出力の対象となるように、起動処理部 40は、 HDMI送受信部 27を介し てホームシアターシステムの構成を取得し、その構成に応じて PSR15を設定する。 オーディオの再生可否を行なう基本情報である PSR15をプレイヤ内蔵のデコーダだ けでなく、アンプなどを含めたユーザーの再生環境全体を参照して規定することで、 音声選択の幅が増え、より適切な再生可否判断が実現できる。
[0163] 図 34、図 35は、起動処理部 40による処理手順を示すフローチャートである。
図 34のステップ S101は、装置起動がなされたかか否かの起動待ち判定であり、も し起動されれば自機のデコード能力に応じた PSR15を設定する (ステップ S 102)。そ の後、 HDMIを介して他の機器と接続されているかを判定する (ステップ S 103)。 HD Mlを介して他の機器と接続されていない場合は (ステップ S 103で no)、 PSR15により 示されるデコード能力に応じた Primaryオーディオストリームを選択させる手順を Proce dure実行部 42に実行させる (ステップ S 108)。 HDMIを介して他の機器と接続されて いる場合は (ステップ S 103で yes)、 HDMIを介した接続相手の機器の認証を行う(ス テツプ S104)。この認証により、相互の正当性が判明すれば、ステップ S105に移行 する。ステップ S105は、 DIBを受信したかどうかの受信待ちループであり、もし DIBを 受信すれば (ステップ S105で yes)、接続相手力も受け取った DIBにより、接続相手の 能力及びスピーカ配置を認識する (ステップ S106)。ステップ S107は、接続相手に 再生能力が存在する力否かの判定であり、もし再生能力が存在するなら、 DIBに応じ て、 PSR15における Player capability for Audioの追加設定を行う(ステップ S 108)。そ して、 PSR15により示されるデコード能力に応じた Primaryオーディオストリームを選択 させる手順を Procedure実行部 42に実行させる(ステップ S109)。
[0164] 以降、選択された Primaryオーディオストリームが DTS-HDオーディオストリームであ る場合を例に、説明を続ける。
図 35のステップ S110は、ステップ S109で選択された DTS- HDオーディオストリー ムが Extension Substreamを含まないフレーム構成であるか否かの判定である。この判 定は、図 21 (b)に示す Stream_attributeの stream_coding_typeに基づいて判定できる。
[0165] ステップ S109で選択された DTS-HDオーディオストリームが Extension Substreamを 含まな 、フレーム構成である場合 (ステップ S 110で no)、 DTS- HDオーディオストリー
ムの Core substreamの Capabilityが、 HDMIを介して接続された機器のデコード能力 に基づいて設定されたか否かを、 PSR15のビット bl7の値によって判定する(ステップ S l l l)。?3尺15のビット1)17が01)でぁるならば(ステップ3111で01))、1"[0\11を介して接 続された機器のデコード能力に基づ 、て Core substreamの Capabilityが設定されて いないので、 BD- ROMから読み出された AVClipの Primaryオーディオストリームを、ノ ッファ 6aを介してデコーダ 7aへ出力するようにスィッチ 10aを制御する(ステップ S112 ) o PSR15のビット bl7が lbであるならば (ステップ S i l lで lb)、 HDMIを介して接続さ れた機器のデコード能力に基づ 、て Core substreamの Capabilityが設定されて!、る ので、 BD- ROMから読み出された AVClipの Primaryオーディオストリームを、ノ ススル 一出力するようにスィッチ 10aを制御する(ステップ S113)。ここでパススルー出力を 行う場合、 PSR31の Player Profile情報には、ミキシング不可能な機器であることを示 す値を格納しておく。そうしないと、 Procedure実行部 43が Secondaryオーディオストリ ームを選択しょうとして、 Primaryオーディオストリームだけでなぐ Secondaryオーディ ォストリームのパススルー出力がなされるからである。
一方、ステップ S 109で選択された DTS-HDオーディオストリームが Extension Substr earnを含むフレーム構成である場合 (ステップ SI 10で yes)、 DTS- HDオーディオストリ ームの Extension substreamの Capabilityが、 HDMIを介して接続された機器のデコー ド能力に基づいて設定されたか否かを、 PSR15のビット bl9の値によって判定する(ス テツプ S 114)。
PSR15のビット bl9が lbであるならば (ステップ S114で lb)、 BD- ROMから読み出され た AVClipの Primaryオーディオストリームを、パススルー出力するようにスィッチ 10aを 制御する(ステップ S 113)。 PSR15のビット bl9が Obであるならば (ステップ S 114で Ob) 、さらに、 DTS-HDオーディオストリームの Extension substreamの Capabilityが、 自機 のデコード能力に基づいて設定されたか否かを、 PSR15のビット bl8の値によって判 定する(ステップ S 115)。 PSR15のビット bl8が lbであるならば (ステップ S 115で lb)、 自機のデコード能力で Extension substreamを再生可能であるので、 BD- ROMから読 み出された AVClipの Primaryオーディオストリームを、バッファ 6aを介してデコーダ 7a へ出力するようにスィッチ 10aを制御し (ステップ S112)、 PSR15のビット bl8が Obであ
るならば (ステップ SI 14で Ob)、自機のデコード能力で Extension substreamを再生不 可能であるので Core substreamを再生対象とし、 Core substreamの Capabilityが、 HD MIを介して接続された機器のデコード能力に基づ ヽて設定されたカゝ否かを、 PSR15 のビット bl7の値によって判定する (ステップ SI 11)。 HDMIを介して接続された機器 のデコード能力に基づ 、て Core substreamの Capabilityが設定されて!、なければ(ス テツプ S111で Ob)、 BD- ROMから読み出された AVClipの Primaryオーディオストリー ムを、バッファ 6aを介してデコーダ 7aへ出力するようにスィッチ 10aを制御し (ステップ S112)、 HDMIを介して接続された機器のデコード能力に基づいて Core substream の Capabilityが設定されていれば (ステップ SI 11で lb)、 BD- ROMから読み出された AVClipの Primaryオーディオストリームを、パススルー出力するようにスィッチ 10aを制 御する (ステップ S 113)。
[0167] プレイヤでデコードしてアンプに LPCMとして出力させずに、スピーカが直接繋がつ ているアンプにて直接デコードすることを優先させることによって、ノイズの混入を抑 えたり、転送の帯域を抑えることができる他、スピーカの特性に応じた音声信号の加 ェが適切に行なえるようになるため高音質な再生が得られる。
尚、上記では階層構造を持つ DTS-HDオーディオストリームを例に説明したが、階 層構造を持たない他のオーディオストリーム (例えば、 Dolby DigitaKAC- 3)や MPEG- 1 Audioなど)であっても PSR15の設定は同様に可能である。 PSR15の情報を基にストリ ームのデコードを Playerで行なうのカゝ、外部機器 (アンプ)で行なうかを判定し、外部機 器でデコードできる場合にはパススルー出力を選択するのも同様に可能である。
[0168] 図 36は、 CODING TYPEが DTS- HDである際に、 DIBに応じて PSR15における Playe r capability for Audioを追加設定する処理手順を示すフローチャートである。本フロ 一チャートの処理手順が開始される時点で、 PSR15には自機のデコード能力に応じ た値が設定されており、本フローチャートの実行により、 DIBにより性能が示される機 器のデコード能力が自機より勝るか同等である符号ィ匕方式について PSR15の設定値 が更新される。
[0169] 図 36のフローチャートにおいてステップ S200は、 DIBの Format depending coding t ypeに Levell〜Level3が記載されているか否かの判定であり、ステップ S201は、 DIB
の Channel Countに 2よりも大きな値が記載されているか否かの判定である。
ステップ S200が yes、ステップ S 201が yesである場合、ステップ S202において、 Ex tension Substreamの capability 、 10b: Surroundし apableに設疋'し、 Extension suostre amの Capability力 ¾DMIを介して接続された機器のデコード能力に基づ ヽて設定され たかを示す PSR15のビット bl9を lbに設定し、さらに、ステップ S207において、 Core S ubstreamの capability 、 10o:burrouna Capableに設定し、 Core substreamのし apabilit yが HDMIを介して接続された機器のデコード能力に基づ ヽて設定されたかを示す PS R15のビット bl7を lbに設定する。
[0170] ステップ S200が yes、ステップ S 201が Noである場合、ステップ S203に移行する。
スァップ: 5203ί 、 Extension Substreamの capabilityに、 10b:¾urround Capable力設定 されているか否かの半 I』定であり、 Extension Substreamの capabilityに、 10b: Surround Capableが設定されて!、な!/、のであれば (ステップ S 203で no)、ステップ S 204にお!/ヽ " ゝ Extension
substreamの capability 、 01b: Stereoし apable【こ設定し、 Extension substreamのし apa bility力 ¾DMIを介して接続された機器のデコード能力に基づ ヽて設定されたかを示 す PSR15のビット bl9を lbに設定し、さらに、ステップ S 207において、 Core Substream の capability 、 10b:¾urround Capableに設定し、 Core substreamのし apability ) HDM Iを介して接続された機器のデコード能力に基づ!、て設定されたかを示す PSR15のビ ット bl7を lbに設定する。
[0171] 一方、 DIBの Format depending coding typeに Levell〜Level3が記載されて ヽな!ヽ 場合(ステップ S200で no)と、ステップ S203の判定で Extension Substreamの capabili tyに、 10b:Surround Capableが設定されている場合 (ステップ S203で yes)、 PSR15の ビット bl9を Obに設定し (ステップ S 205)、その後、ステップ S206の判定を行う。ステツ プ S206は、 DIBの Channel Countに 2よりも大きな値が記載されているか否かの判定 である。
[0172] ステップ S206力 Syesである場合、ステップ S207にお 、て、 Core Substreamの capabi lityを、 10b:Surround Capableに設定し、 Core substreamの Capabilityが HDMIを介し て接続された機器のデコード能力に基づ ヽて設定されたかを示す PSR15のビット bl7
を lbに設定する。
ステップ S206が noである場合、ステップ S208に移行する。ステップ S208は、 Core Substreamの capabilityに、 10b: Surround Capableが設定されて 、るか否かの判定で あり、 Core Substreamの capabilityに、 10b:Surround Capableが設定されていないので あれば(ステップ S208で no)、ステップ S209において、 Core Substreamの capability を、 01b:Stereo Capableに設定し、 Core substreamの Capabilityが HDMIを介して接続 された機器のデコード能力に基づいて設定されたかを示す PSR15のビット bl7を lbに 設定する。ステップ S208の判定で Core Substreamの capabilityに、 10b:Surround Cap ableが設定されている場合 (ステップ S208で yes)、 PSR15のビット bl7を Obに設定する (ステップ S 210)。
[0173] 尚、図 36の S201、 S206の判定では DIBの Channel Countを用いたが、 Channel/S peaker Allocationを用いても判定しても良!ヽ。
以上、起動処理部 40の処理手順を、 DTS-HD方式への対応を例に説明した力 D D/DD+形式、 DD/MLP形式等についても同様に扱うことができる。
例えば、 DIBに応じて DD/DD+开式、 DD/MLP形式等の Capabilityを PSR15を追加 設定する際には、 PSR15のビット bl6からビット bl9までの情報と同様の形式で、 DD/D D+形式、 DD/MLP形式等の Capabilityが再生環境を構成する何れの機器のデコード 能力に基づいて設定されたかを示す情報をレジスタに設置するとよい。また、再生時 に DD/DD+形式のオーディオストリームや、 DD/MLP形式オーディオストリームが Prim aryオーディオストリームが選択された場合には、 DD/MLP形式等の Capabilityが再生 環境を構成する何れの機器のデコード能力に基づ 、て設定されたかを示す情報に 基づ 、てパススルー出力の要否を判定するとよ!/、。
[0174] 尚、各符号ィ匕方式の Capabilityが再生環境を構成する何れの機器のデコード能力 に基づいて設定されたかを示す情報は、必ずしも PSR15に設定する必要はなぐ他の レジスタやワークメモリに情報を保持する構成としてもよ!、。
<機能構成の詳細その 2.プレイリスト処理部 >
プレイリスト処理部 41は、 PL再生を実現するものであり、 Playltem情報の In_timeにあ たる位置から、 OuUimeにあたる位置までビデオストリーム及び Primaryオーディオスト
リームを再生し、これと同期して、 SubPlayltem情報の Sub_PlayItem_In_timeにあたる位 置から、 Sub_PlayItem_Out_timeにあたる位置までの Secondaryオーディオストリームの 再生を、オーディオデコーダ 7bに行わせる。
[0175] 図 37は、プレイリスト処理部によるプレイリスト再生手順を示すフローチャートである 本フローチャートは、カレント PL情報 (.mpls)の読み込みを行い (ステップ S301)、そ の後、ステップ S302〜ステップ S310の処理を実行するというものである。ここでステ ップ S302〜ステップ S310は、ステップ S309力 SYesになるまで、カレント PL†青報を構 成するそれぞれの PI情報について、ステップ S303〜ステップ S310の処理を繰り返 すと 、うループ処理を構成して!/、る。このループ処理にぉ 、て処理対象となる Playlte mを、 PlayItem#x(PI#x)とよぶ。この Playltemfeは、カレントプレイリストの先頭の Playlte mに設定されることにより、初期化される (ステップ S 302)。上述したループ処理の終 了要件は、この Playltemfeがカレントプレイリストの最後の Playltemになることであり (ス テツプ S309)、もし最後の Playltemでなければ、カレントプレイリストにおける次の Playl temがPlayItem#xに設定される(ステップS310)。
[0176] ループ処理において繰り返し実行されるステップ S303〜ステップ S310は、 Playlte m#xの Clip_information_file_nameで指定される Clip情報をメモリに読み込み (ステップ S 303)、 Playltemfeの In_timeを、カレント Clip情報の EPmapを用いて、 Iピクチャアドレス uに変換し (ステップ S304)、 Playltemfeの OuUimeを、カレント Clip情報の EPjnapを用 いて、 Iピクチャアドレス Vに変換して (ステップ S 305)、これらの変換で得られたァドレ ス Vの次の Iピクチャを求めて、そのアドレスの 1つ手前をアドレス wに設定し (ステップ S 307)、そうして算出されたアドレス wを用いて、 Iピクチャアドレス uからアドレス wまでの TSパケットの読み出しを BD- ROMドライブ 1又はローカルストレージ 200に命じるとい うものである (ステップ S308)。
[0177] 一方、ビデオデコーダ等に対しては、カレント PLMarkの mark_time_stampから Playlte m#xの OuUimeまでの出力を命じる (ステップ S306)。以上のステップ S305〜ステツ プ S308により、 AVClipにおいて、 Playltemfeにより指示されている部分の再生がなさ れること〖こなる。
その後、 Playltemfeがカレントプレイリストの最後の PIであるかの判定がなされる (ス テツプ S309)。
[0178] Playltemfeがカレントプレイリストの最後の PIでなければ、カレントプレイリストにおけ る次の Playltemを、 PlayItem#xに設定して(ステップS310)、ステップ S303に戻る。以 上のステップ S303〜ステップ S310を繰り返することにより、プレイリストを構成する PI は順次再生されることになる。
<機能構成の詳細その 3.Procedure実行部 42 >
Procedure実行部 42は、ある Playltem情報から別の Playltem情報への切り換わりが 生じた場合、又はストリーム番号を切り換える旨の操作がユーザによりなされた場合、 所定のストリーム選択プロシージャを実行して、 PSR1に新たなストリーム番号を書き込 む。ストリーム供給装置 300は、 PSR1に書き込まれたストリーム番号に応じて、 Primar yオーディオストリームを特定するので、力かる PSR1の設定を通じて、 Primaryオーディ ォストリームが選択されることになる。
[0179] Playltem情報の切り換わり時に、ストリーム選択プロシージャを実行するのは、 STN_ Tableは Playltem情報毎に存在するので、ある Playltem情報にお!、ては再生可能であ つた Primaryオーディオストリーム力 別の Playltem情報にお!、て再生不可能になるこ とが有り得るからである。
この Procedure実行部 42により、 PSR1は、図 38 (a)に示すような状態遷移をなす。 図 38 (a)は、 PSR1の設定値が取り得る状態遷移を示す図である。本図において Valid とは、 PSR1の値が、 Play Itemの STN_tableに記述された entry数以下の番号になって いて、尚且つ、デコード可能であることを意味する。
[0180] Invalidとは、 PSR1の値が、 0である力、又は、 Play Itemの STN_tableに記述された ent ry数を上回る番号になっている力、または、 Play Itemの STN_tableに記述された entry 数力 〜 32の値であったとしても、デコードできな!/、場合である。
図 38 (a)における破線枠は、状態遷移時にあたって PSRの値を決定する手順を模 式的に示す。 PSRの設定処理手順には、『Procedure when playback condition is cha nged』、『Procedure when Stream change is requested』力める。
[0181] Procedure when playback condition is changedは、何等かの事象がストリーム供給
装置に生じたため、ストリーム供給装置の状態が変化した際に実行すべき処理手順 を示す。
Procedure when Stream Change is requestedは、ユーザが何等かの切り換え (図 38 (a)において stream)を要求した際、実行すべき処理手順を示す。
これり破線枠に不 れる Procedure when playback condition is changed^ Procedure when Stream change is requestedが、ストリーム選択プロシージャであり、後でフロー チャートを交えて詳細に説明する。
[0182] 図 38 (a)における矢印は、 PSRが取り得る状態間の状態遷移を象徴的に示す。
状態遷移を意味する矢印に添えられた注釈は、各状態遷移のトリガとなるべき事象 を意味する。つまり本図では、 "Load Disc", "Change a Stream", "Start PlayList play back , Cross a Playltem boundary , Terminate PlayList playback というような事象 が発生した際、 PSR1の状態遷移がなされることになる。これらの記法を理解して図 38 (a)を参照すれば、 Invalid→Invalidの状態遷移時、 Valid→Invalidの状態遷移時には 、上述した処理手順は実行されていないことがわかる。これに対し Invalid→Valid間の 状態遷移、 Valid→Valid間の状態遷移は何れも破線枠を経由している。つまり PSR1を Validに設定するにめ 7こつて、上; i Lした Procedure when playback condition is changed 、 Procedure when Stream change is requestedにより PSR1は設疋 れるので teる。
[0183] 以降、状態遷移のトリガとなるべき事象について説明する。
『Load Disc』とは、ストリーム供給装置に BD-ROMがローデイングされたとの事象を 意味する。 PSR1は、カゝかるローデイング時において、ー且不定値 (OxFF)に設定される のである。
『Start PlayList playback』とは、 PLに基づく再生処理が開始したとの事象を意味す る。力力る事象; 0発生時にお ヽて、 Procedure when playback condition is changed力 実行され、 PSR1は Validに設定されることがわかる。
[0184] 『Terminate PlayList playback』とは、 PLに基づく再生処理を終了したとの事象を意 味する。力力る事象の発生時では、 Procedure when playback condition is changedは 実行されず、 Invalidに移行して!/、ることがわかる。
『ChangeXXX』とは、ユーザによる XXX(本図では Stream)の切り換え要求がなされた
との事象を意味する。 PSR1が Invalidである場合に、カゝかる事象が発生すれば (図中の cjl)、 PSR1はその要求通りの値に設定される。こうして設定された値がたとえ有効なス トリーム番号を示して!/、たとしても、この PSR1の設定値は Invalidな値として取り扱われ る。即ち、事象" ChangeXXX"による状態遷移では、 Invalidである PSRが、 Validに変え ることはない。
[0185] 一方、 PSR1が Validである場合に、かかる事象 Change a Streamが発生すれば (図中 の cj2)、 Procedure when Stream change is requestedが実行されて、新たな値が PSR1 【こ設疋 れ 。ここで Procedure when Stream change is requestedの夹ィ丁【こより設疋 れる値は、ユーザが希望した値にならない場合も有り得る。何故なら、 Procedure whe n Stream change is requestedは、無効な値を排除する機能を有している力 である。 PSR1が Validにおいて、 Change streamが発生した場合、 Validから Invalidに状態遷移 することは有り得ない。 PSR1が Invalidにならないよう、 Procedure when Stream change is requested側で保証するからである。
[0186] 『Cross a Playltem boundary』とは、ある Play Itemの境界通過と 、う事象を意味する 。ここで Play Itemの境界とは、連続する 2つの Play Itemのうち、先行する側の終端、後 続する側の先端の狭間を意味する。 PSR1が Validである場合において、かかる事象が 発生すれは、 Procedure when playback condition is changed力 S実行 れることがわ力 る。そして、 Procedure when playback condition is changedの夹行後、 PSR1の状態 ίま Validに戻る力、 Invalidに移行することが分かる。 STN_tableは Play Item毎に存在して おり、 Play Itemが変われば、再生可能なエレメンタリストリームも変わってしまう。 Play I temの冉生 タ台毎に、 Procedure when playback condition is change 行し飞 Play I tem毎に最適な設定値を PSR1に設定するというのが、この状態遷移の趣旨である。
[0187] この状 |§邊移において Procedure when playback condition is changedは、図 58 (b) のようになる。図 38 (b)は、 Procedure when playback condition is changedの処理手 順を示す図である。本処理手順は、ステップ Sl、ステップ S2という 2つの判定ステツ プの組合せで、 PSR1の設定を行うものである。
ステップ S1は、 STN_tableにおける entry数が 0であるか否かの判定であり、もし 0であ れば PSR1の値を維持する (ステップ S 3)。
[0188] ステップ S2は、 STN_tableにおける entry数は 0ではない場合に、 PSR1より STN_table の entry数が多ぐ尚且つ、条件 (A)が真であるかを判定するものである。条件 (A)とは 、 PSR1で特定される Primaryオーディオストリームを再生する能力がデコーダに存在 することである。もしステップ S2が Yesであれば PSR1を維持する (ステップ S4)。もし PS R1の値カ^ ntry数より大きいか、或は条件 (A)を満たさない場合は、 PSR1を再設定す る (ステップ S 5)。ここで、本実施形態では、ストリーム供給装置 300が選択したオーデ ィォストリームをオーディオアンプ 400へ供給し、オーディオアンプ 400がオーディオ ストリームをデコードするという接続形態をとるため、条件 (A)でいうデコーダとしては、 オーディオアンプ 400が内蔵するものが相当する。
[0189] その後、 PSR1に設定されている Primaryオーディオストリーム力 ¾TS-HD形式で符号 化されたものである場合は (ステップ S 19が yes)、ステップ S20で、オーディオアンプ 400で実際に再生される音声の品質を示すメニューを表示する。
図 39は、実際に再生される音声の品質を示すメニューの一例を示す図である。本 図におけるメニューは、「お客さまのシアターシステムでは、接続先の機器で DTS-XX XXの品質でオーディオ再生されます」などの注意を喚起する旨のメッセージと確認 ボタンからなる。 DTS- XXXXの部位には、 PSR15の DTS- HD Extension capabilityに 設定されている値に応じて、 DTS core, DTS- ES、 DTS- 96/24、 DTS- HD(xLL)の何れ かを表示する。こうすることで、実際にどのような品質で音声再生される力をユーザが 事前に把握することができる。
[0190] 尚、音声品質の提示の際には、必ずしもユーザの確認操作を求める必要はない。
そこで、本図に示すようなメッセージを一定期間表示した後、メッセージの表示を終 了する構成としてちよい。
更に、実際に再生される音声品質の表示は、オーディオストリームを選択したタイミ ングに限らず、他のタイミングで表示してもよい。例えば、図 34のステップ S107の判 定で、接続相手に再生能力が存在すると判定された時に再生可能な音声品質を表 示してもよい。このようなタイミングで音声品質を表示する場合には、「お客さまのシァ ターシステムでは、接続先の機器で DTS-XXXXの品質でオーディオ再生されます。 接続先機器でデコードしますか?」等のメッセージと、接続先機器でのデコード可否
を受け付けるボタン「Yes」「No」と力 なるメニュー画面を表示することで、ユーザがパ ススルー出力を希望する力否かを確認することもできる。具体的には、このようなメ- ユーの表示に対して「Yes」ボタンが選択されたならば図 34のステップ S108へ処理を 移して DIBに応じた PSR15設定を行 、、「No」ボタンが選択されたならばステップ S10 9へ処理を移して、自機のデコード能力に応じた PSR15設定に基づいて Primaryォー ディォストリームの選択を行うとよい。
[0191] 図 40は、ステップ S5の詳細な処理手順に示したフローチャートである。
ステップ S6、ステップ S7は、全ての Primaryオーディオストリームについてステップ S 8を繰り返すループ処理を形成している。このループ処理において、処理対象となる 個々の Primaryオーディオストリームを、 Primaryオーディオストリーム〖という。ステップ S 8は、 Primaryオーディオストリーム ¾つの条件 (a)(b)(c)を満たすかのチヱックを行う。
[0192] 条件 (a)とは、 Primaryオーディオストリーム iを再生する能力がデコーダに存在するこ とであり、これを満たすか否かの判定は、 PSR15と、 Primaryオーディオストリーム iの str earn— coding— type及び format— depending— coding— typeとの _b匕較でな れる。
条件 (b)とは、 Primaryオーディオストリーム iの言語属性がストリーム供給装置 300の 言語設定と同じであることであり、これを満たす力否かの判定は、 STN_tableに記述さ れた Primaryオーディオストリーム iの Audio_language_codeが PSRの設定値と同じである か否かの比較でなされる。
[0193] 条件 (c)とは、 Primaryオーディオストリーム iのチャネル属性がサラウンドであり、これ を再生する能力がデコーダに存在することである。これを満たすか否かの判定は、 PS R15と, Audio Streamの audio— presentation— type、 stream— coding— typeとの比 |¾でなされ る。ここで条件 (a)及び条件 (c)でいうデコーダとは、条件 (A)と同様に、本実施形態で はオーディオアンプ 400が内蔵するものが相当する。
[0194] これらの複数の条件のうち、「Primaryオーディオストリーム iがどれとどれを満たすか 」、また「何個の条件を満たすか」という、満たすべき条件のパターンにより、本フロー チャートは、 Primaryオーディオストリームに優先順位を付与する。
以上の処理を Primaryオーディオストリームの全てについて繰り返されれば、ステップ S9〜ステップ S13の処理を行う。ステップ S9は、(a)を満たす Primaryオーディオストリ
ームが存在しないかどうかの判定である。もし、存在しなければ、不定値 (OxFF)を PSR 1に設定する (ステップ S 14)。
[0195] ステップ S10は、条件 (a)(b)(c)の全てを満たす Primaryオーディオストリームが存在 するかどうかの判定である。もし存在すれば、条件 (a)(b)(c)を満たす Primaryオーディ ォストリームの番号を PSR1に設定する (ステップ S 15)。
ここで問題になるの力 条件 (a)(b)(c)を満たす Primaryオーディオストリームが複数存 在する場合である。条件 (a)〜条件 (c)が全てみたされるので、同じ優先順位になって しまうので優劣を決めることができない。この場合ステップ S 15では、 STN_tableにおけ る entryの順序に応じて、各ストリームにおける順位が定める。即ち、コーディック—言 語属性―チャネル属性が同じ Primaryオーディオストリームについては、 STN.tableに おける entryの順番を参照することで、最も entryの順番が早!ヽ Primaryオーディオスト リームが選ばれることになる。
[0196] STN_tableにおける記述順序を変えることで、ォーサリング担当者は再生時におい てどのストリームを優先的に再生させ、どのストリームを後回しにするかという選択制 御をォーサリング時に規定することができる。
ステップ S11は、条件 (a)(b)(c)の全てを満たす Primaryオーディオストリームが存在し な 、場合、条件 (a)(b)を満たす Primaryオーディオストリームが存在するかどうかの判 定である。もし存在すれば、条件 (a)(b)を満たす Primaryオーディオストリームのうち、 S TN_tableにおけるエントリーの順番が最も早いものを PSR1に設定する (ステップ S16)。
[0197] ステップ S12は、条件 (a)(b)(c)の全てを満たす Primaryオーディオストリーム、又は、 条件 (a)(b)を満たす Primaryオーディオストリームが存在しな 、場合に、条件 (a)(c)を満 たす Primaryオーディオストリームが存在するかどうかの判定である。もし存在すれば 、条件 (a)(c)を満たす Primaryオーディオストリームのうち、 STN_tableにおけるエントリ 一の順番が最も早いものを PSR1に設定する (ステップ S 17)。
[0198] ステップ S13は、条件 (a)(b)(c)の全て、条件 (a)(b)、条件 (a)(c)を満たす Primaryォー ディォストリームが存在しな 、場合に、条件 (a)を満たす Primaryオーディオストリーム が存在するかどうかの判定である。もし存在すれば、条件 (a)を満たす Primaryオーデ ィォストリームのうち、 STN_tableにおけるエントリーの順番が最も早いものを PSR1に設
定する (ステップ S I 8)。
[0199] 以上力 ^Procedure when playback condition is changedである。続いて Procedure wh en Stream change is requestedについて説明する。図 41は、ストリーム変化時におけ る PSR1の設定手順を示すフローチャートである。本フローチャートと、図 38 (b)との違 いは、図 38 (b)における PSR1の表記が Xに置き換えられている点である。この Xは、 操作受付部 26から出力された User Operation情報や IGデコーダ 13から出力された ボタンコマンドに基づく値である。
[0200] 本フローチャートにおけるステップ S21は、 Xより STN_tableの entry数が多ぐ尚且つ 、条件 (A)が真であるかを判定するものである。条件 (A)とは、 PSR1で特定される Prima ryオーディオストリームを再生する能力が再生装置に存在することであり、 PSR15と、 P rimaryォ ~~アイオストリ ~~ムの Stream— codeig—type、 format— depending— coding— typeの比 較で判定される。ここで条件 (A)でいう再生装置とは、オーディオストリームをデコード する機器を指し、本実施形態ではオーディオアンプ 400が相当する。もし Xがこの条 件を満たすなら、 PSR1に Xを設定する (ステップ S22)。
[0201] もし Xが entry数より大き 、か、或は条件 (A)を満たさな 、場合は、 X力 OxFFである か否かを判定する (ステップ S23)。もし OxFFでなければ、ユーザが選択を意図する P rimaryオーディオストリームの番号は無効であると考えられるので、ユーザ操作に基 づく値 Xを無視し、 PSR1の設定値を維持する (ステップ S24)。
もし PSR1の設定値が OxFFであるなら、 PSR1を設定する (ステップ S25)。このステップ S25の処理手順は、図 40に示した処理手順と同一である (図 40のうち、ステップ S9 の判定は Procedure when Stream change is requestedでは必要ではない。何故なら P rocedure when Stream change is requested ζ:、は、条件 (a)(b)(c)を、商 7こす Primary才 ~~ ディォストリーム力 S1つも存在しない場合、ユーザが設定した値 Xを PSR1に設定せず、 PSR1の設定値を維持するからである。
[0202] その後、 PSR1に設定されている Primaryオーディオストリーム力 ¾TS-HD形式で符号 化されたものである場合は (ステップ S26が yes)、ステップ S27で、オーディオアンプ 400で実際に再生される音声の品質を示す図 39のメニューを表示する。
<機能構成の詳細その 4.Procedure実行部 43 >
Procedure実行部 43は、ある Playltem情報から別の Playltem情報への切り換わりが 生じた場合、又はストリーム番号を切り換える旨の操作がユーザによりなされた場合、 所定の手順を実行して、 PSR14に新たなストリーム番号を書き込む。ストリーム供給装 置 300は、 PSR14に書き込まれたストリーム番号に対応する Secondaryオーディオスト リームを再生対象とするので、カゝかる PSR14の設定を通じて、 Secondaryオーディオス トリームが選択されることになる。
[0203] この Procedure実行部 43により、 PSR14は、図 42 (a)に示すような状態遷移をなす。
図 42 (a)は、 PSR14の設定値が取り得る状態遷移を示す図である。本図において V alidとは、 PSR14の値が、 Play Itemの STN_tableに記述された entry数以下の番号にな つていて、尚且つ、デコード可能であることを意味する。
[0204] Invalidとは、 PSR14の値が、 0である力、又は、 Play Itemの STN_tableに記述された en try数を上回る番号になっている力 または、 Play Itemの STN_tableに記述された entry 数力 〜 32の値であったとしても、デコードできな!/、場合である。
図 42 (a)における破線枠は、状態遷移時にあたって PSRの値を決定する手順を模 式的に示す。 PSRの設定処理手順には、『Procedure when playback condition is cha nged』、『Procedure when Stream change is requested』力める。
[0205] Procedure when playback condition is changedは、何等かの事象がストリーム供給 装置に生じたため、ストリーム供給装置の状態が変化した際に実行すべき処理手順 を示す。
Procedure when Stream Change is requestedは、ユーザが何等かの切り換え (図 42 にお 、て stream)を要求した際、実行すべき処理手順を示す。
これり破線枠に不 れる Procedure when playback condition is changed^ Procedure when Stream change is requestedが、ストリーム選択プロシージャであり、後でフロー チャートを交えて詳細に説明する。
[0206] 図 42 (a)における矢印は、 PSRが取り得る状態間の状態遷移を象徴的に示す。
状態遷移を意味する矢印に添えられた注釈は、各状態遷移のトリガとなるべき事象 を意味する。つまり本図では、 "Load Disc", "Change a Stream", "Start PlayList play back , し ross a Playltem boundaryor Change Primary Audio Stream , Terminate PI
ayList playback"というような事象が発生した際、 PSR14の状態遷移がなされることに なる。これらの記法を理解して図 42 (a)を参照すれば、 Invalid→Invalidの状態遷移 時、 Valid→Invalidの状態遷移時には、上述した処理手順は実行されていないことが わかる。これに対し Invalid→Valid間の状態遷移、 Valid→Valid間の状態遷移は何れ も破線枠を経由している。つまり PSR14を Validに設定するにあたって、上述した Proce dure when playback condition is changed^ Procedure when Stream cnange is request edにより PSR14は設定されるのである。
[0207] 以降、状態遷移のトリガとなるべき事象について説明する。
『Load Disc』とは、ストリーム供給装置に BD-ROMがローデイングされたとの事象を 意味する。 PSR14は、力かるローデイング時において、ー且不定値 (OxFF)に設定され るのである。
『Start PlayList playback』とは、 PLに基づく再生処理が開始したとの事象を意味す る。力力る事象; 0発生時にお ヽて、 Procedure when playback condition is changed力 実行され、 PSR14は Validに設定されることがわかる。
[0208] 『Terminate PlayList playback』とは、 PLに基づく再生処理が終了したとの事象を意 味する。力力る事象の発生時では、 Procedure when playback condition is changedは 実行されず、 Invalidに移行して!/、ることがわかる。
『ChangeXXX』とは、ユーザによる XXX(本図では Stream)の切り換え要求がなされた との事象を意味する。 PSR14が Invalidである場合に、カゝかる事象が発生すれば (図中 の cjl)、 PSR14はその要求通りの値に設定される。こうして設定された値がたとえ有効 なストリーム番号を示していたとしても、この PSR14の設定値は Invalidな値として取り扱 われる。即ち、事象" ChangeXXX"による状態遷移では、 Invalidである PSR力 Validに 変えることはない。
[0209] 一方、 PSR14が Validである場合に、かかる事象 Change a Streamが発生すれば (図 中の cj2)、 Procedure when Stream change is requestedが実行されて、新たな値が PS R14に設定される。ここで Procedure when Stream change is requestedの実行により設 定される値は、ユーザが希望した値にならない場合も有り得る。何故なら、 Procedure when Stream change is requestedは、無効な値を排除する機能を有しているからであ
る。 PSR14が Validにおいて、 Change streamが発生した場合、 Validから Invalidに状態 遷移することは有り得ない。 PSR14力 ^Invalidにならないよう、 Procedure when Stream c hange is requestedィ則で保itする力らである。
[0210] 『Cross a Playltem boundary or Change Primary Audio Stream』とは、める Play Item の境界通過、又は、 Primaryオーディオストリームの切り替えという事象を意味する。 P SR14が Validである場合において、力かる事象が発生すれば、 Procedure when playb ack condition is changed力実行 れること; 0わ力る。てして、 Procedure when playbac k condition is changedの実行後、 PSR14の状態は Validに戻る力、『Cross a Playltem boundary or Change Primary Audio Stream』 )発生すると Invalidに移行すること; 0分 かる。 Play Itemの再生開始や Primaryオーディオストリームの切り替え毎に、 Procedur e when playback condition is changeを実行して Play Item毎に最適な設定値を PSR14 に設定するというのが、この状態遷移の趣旨である。
[0211] この状 |§邊移において Procedure when playback condition is changedは、図 42 (b) のようになる。本処理手順は、ステップ S31、ステップ S32という 2つの判定ステップの 組合せで、 PSR14の設定を行うものである。
ステップ S31は、 STN_tableにおける entry数が 0であるか否かの判定であり、もし 0で あれば PSR14の値を維持する (ステップ S33)。
[0212] ステップ S32は、 STN_tableにおける entry数は 0ではない場合に、 PSR14 » STN_tab leの entry数が多ぐ尚且つ、条件 (A)と (B)が真であるかを判定するものである。条件 ( A)とは、 PSR14で特定される Secondaryオーディオストリームを再生する能力が再生装 置に存在することである。ここで条件 (A)でいうデコーダとしては、本実施形態ではォ 一ディォアンプ 400に内蔵のものが相当する。条件(B)とは、 Primary_Audio_Stream_ Numberと、 Secondary_Audio_Stream_Numberの組み合わせ力 TN_tableで許可されて いることである。もしステップ S32力 。であれば PSR14を維持する (ステップ S34)。 Yes の場合は、 PSR14を再設定する (ステップ S35)。
[0213] 図 43は、ステップ S35の詳細な処理手順に示したフローチャートである。
ステップ S36、ステップ S37は、全ての Secondaryオーディオストリームについてステツ プ S38を繰り返すループ処理を形成している。このループ処理において、処理対象
となる個々の Secondaryオーディオストリームを、 Secondaryオーディオストリーム iという 。ステップ S38は、 Secondaryオーディオストリーム ¾つの条件 (a)(b)(c)を満たすかの チェックを行う。
[0214] 条件 (a)とは、 Secondaryオーディオストリーム iを再生する能力がデコーダに存在す ることであり、これを満たすか否かの判定は、オーディオストリームの再生能力を示す レジスタ (PSR15)と、 Secondaryオーディオストリーム iの stream— coding— type及び format— depending— coding— typeとの比較でなされる。
条件 (b)とは、 Primaryオーディオストリームを Secondaryオーディオストリームにミキシ ングすることができる力否かであり、この条件が満たされているか否かの判定は、 PSR 1に設定されて!、るストリーム番号が、 Secondaryオーディオストリームの Comb_info_Sec ondary_audio_Primary_audioに記載されているかを判断することでなされる。
[0215] 条件 (c)とは、 Secondaryオーディオストリーム iの言語属性がストリーム供給装置の言 語設定と同じであることであり、これを満たす力否かの判定は、 STN_tableに記述され た Secondaryオーディオストリーム iの Audio_language_codeが PSRの設定値と同じである か否かの比較でなされる。
これらの複数の条件のうち、「Secondaryオーディオストリーム iがどれとどれを満たす 力、」、また「何個の条件を満たすか」という、満たすべき条件のパターンにより、本フロ 一チャートは、 Secondaryオーディオストリームに優先順位を付与する。
以上の処理を Secondaryオーディオストリームの全てにつ!、て繰り返されれば、ステツ プ S39〜ステップ S41、ステップ S44〜ステップ S46の処理を行う。ステップ S39は、 条件 (a)及び条件 (b)を満たす Secondaryオーディオストリームが存在しないかどうかの 判定である。もし、存在しなければ、不定値 (OxFF)を PSR14に設定する (ステップ S44)
[0216] ステップ S40は、条件 (a)(b)(c)の全てを満たす Secondaryオーディオストリームが存 在するかどうかの判定である。もし存在すれば、条件 (a)(b)(c)を満たす Secondaryォー ディォストリームの番号を PSR14に設定する (ステップ S45)。
ここで問題になるの力 条件 (a)(b)(c)を満たす Secondaryオーディオストリームが複数 存在する場合である。条件 (a)〜条件 (c)が全てみたされるので、同じ優先順位になつ
てしまうので優劣を決めることができない。この場合ステップ S45では、 STN_tableにお ける entryの順序に応じて、各ストリームにおける順位が定める。即ち、コーディック一 言語属性—チャネル属性が同じ Secondaryオーディオストリームについては、 STN_tab leにおける entryの順番が最も早い Secondaryオーディオストリームが選ばれることにな る。
[0217] STN_tableにおける記述順序を変えることで、ォーサリング担当者は再生時におい てどのストリームを優先的に再生させ、どのストリームを後回しにするかという選択制 御をォーサリング時に規定することができる。
ステップ S41は、条件 (a)(b)(c)の全てを満たす Secondaryオーディオストリームが存 在しな 、場合、条件 (a)(b)を満たす Secondaryオーディオストリームが存在するかどう かの判定である。もし存在すれば、条件 (a)(b)を満たす Secondaryオーディオストリーム のうち、 STN_tableにおけるエントリーの順番が最も早いものを PSR14に設定する (ステ ップ S46)。
[0218] 以上;^ Procedure when playback condition is changedである。 cぃ飞 Procedure wh en Stream change is requestedについて説明する。図 44は、ストリーム変化時におけ る PSR14の設定手順を示すフローチャートである。本フローチャートと、図 42 (b)との 違いは、図 42 (b)における PSR14の表記が Xに置き換えられている点である。この Xは 、操作受付部 26から出力された User Operation情報や IGデコーダ 13から出力された ボタンコマンドに基づく値である。
[0219] 本フローチャートにおけるステップ S49は、 Xより STN_tableの entry数が多ぐ尚且つ 、条件 (A)、条件 (B)が真であるかを判定するものである。もし Xがこの条件を満たすな ら、 PSR14に Xを設定する (ステップ S51)。
もし Xが entry数より大きいか、或は条件 (A)及び条件 (B)を満たさない場合は、 Xが、 OxFFであるか否かを判定する(ステップ S52)。もし OxFFでなければ、ユーザが選択 を意図する Secondaryオーディオストリームの番号は無効であると考えられるので、ュ 一ザ操作に基づく値 Xを無視し、 PSR14の設定値を維持する (ステップ S53)。
[0220] もし PSR14の設定値が OxFFであるなら、 PSR14を設定する (ステップ S54)。このステツ プ S54の処理手順は、図 43に示した処理手順と同一である (図 43のうち、ステップ S
39の判定は Procedure when Stream change is requestedでは必要ではない。何故な ら Procedure when Stream change is requestedでは、条件 (a)(b)(c) 、 たす Secondary オーディオストリーム力 Siつも存在しない場合、ユーザが設定した値 Xを PSR14に設定 せず、 PSR14の設定値を維持する力 である。 )o
[0221] 以上で Procedure実行部 43についての説明を終える。
く機能構成の詳細その 5.ミキシング制御部 44 >
ミキシング制御部 44は、オーディオデコード能力を有する機器力 ¾DMIを介して接 続されて!、る場合、 Primaryオーディオストリームを構成する TSパケット及び Secondary オーディオストリームを構成する TSパケットを、オーディオデコーダ 7a,bへ供給するこ となぐそれらのエレメンタリーストリームを HDMI送受信部 27へ供給するよう、スィッチ 10aを制御する。ミキシング制御部 44は、さらに、オーディオデコード能力を有する機 器が HDMIを介して接続されておらず、且つ、ストリーム供給装置 300の Player Profile 情報が 0001bである場合、又は、 001 lbである場合、 Primaryオーディオストリームの再 生出力に対して、 Secondaryオーディオストリームの再生出力、又は、サウンドデータ の再生出力をミキシングするよう、ミキサー 9a、ミキサー 9bを制御する。
[0222] ここで Playltem時間軸における現在の再生時点力 SubPlayltem情報の In_timeから Out_timeまでであり、また、カレント Playltem情報の STN_Tableにおいて、 Secondaryォ 一ディォストリームが有効になっている場合、 PSR14に格納されたストリーム番号の Se condaryオーディオストリームのデコード力 オーディオデコーダ 7bにてなされて!/、る ので、ミキシング制御部 44は、オーディオデコーダ 7aの再生出力に対して、オーディ ォデコーダ 7bの再生出力をミキシングするよう、ミキサー 9aを制御する。
[0223] Primaryオーディオストリームにおける属性がサラウンドである場合、 L,R,C,LS,RS,L R,RR,LFEといった成分のうち、所望の成分のみを残すようダウンミキシングを行った 上で、 Secondaryオーディオストリームの再生出力をミキシングすることができる。ここ で Secondaryオーディオストリームが映画監督のコメンタリ音声である場合、 Secondary オーディオストリームをミキシングすべき Primaryオーディオストリームのチャンネルを、 L→C→Rというように変化させてゆけば、ユーザの回りを映画監督力 歩き回つている かのような感覚を、ユーザに与えることができる。このようなミキシングをパンユングと
呼んで 、る。パン-ングでは Primaryオーディオストリームよりも少な!/、チャンネル数の Secondaryオーディオストリーム(例えばモノラル)の音声が使われる。
[0224] Javaアプリケーションにて描画されたボタンに対し確定操作がなされた場合、又は、 IGストリームにより描画されたボタンに対し確定操作がなされた場合、 Primaryオーデ ィォストリームの再生出力、又は、 Primaryオーディオストリームの再生出力と、 Second aryオーディオストリームの再生出力とのミキシング結果に対して、サウンドデータをミ キシングするよう、ミキサー 9bを制御する。
[0225] 以上が、本実施形態に係るストリーム供給装置 300についての説明である。
以上のように本実施形態によれば、ストリーム供給装置は HDMIのようにデジタル 1/ Fを介してオーディオアンプの能力を取得し、それに応じて PSR15を設定した上、この PSR15に基づき、 Primaryオーディオストリームを BD— ROMディスク/ローカルストレー ジから選択して、この Primaryオーディオストリームのパススルー出力を行う。このとき 符号ィ匕形式が DTS-HD形式である場合には、 DIBにより拡張データをデコードに利用 可能か否かが示されるため、実際にどのような品質で音声再生される力ストリーム供 給装置がわで事前に把握することができる。
[0226] 尚、ロスレス圧縮されたオーディオデータのデコードは演算量が多ぐ高い処理能 力が必要とされる。そのため、処理速度やメモリ容量のつごうから、 DTS-HD(xLL)を デコードすることは出来る力 DTS-ESや DTS-96/24などをデコードする場合よりも少 な!ヽチャンネル数にしか対応できな 、と!/、つたケースも考えられる。
このような場合には、図 45に示すように DIBを改良することで、 CODING TYPE力DT Sである場合に、 DTSの拡張規格である DTS- ES、 DTS- 96- 24、 DTS- HD(xLL)のうち デコード可能な符号化方式毎に、対応可能なチャンネル数、スピーカ構成、サンプリ ング周波数を、オーディオアンプ力もストリーム供給装置へ通知することができる。こ れによって、実際に再生される音声の品質をストリーム供給装置側でより適切に把握 することが出来る。図 45の例では、オーディオアンプは Core substreamのデコード、 Extention substreamの DTS- ES部分のデコード、 Extention substreamの DTS- 96/24 部分のデコードが可能であり、 Core substreamをデコードに用いる際には 5.1ch、 48K Hzで音声再生が可能であり、 DTS-ES部分をデコードに用いる際には 7.1ch、 48KHz
で音声再生が可能であり、 DTS-96/24部分をデコードに用いる際には 2ch、 196KHz で音声再生が可能であることが示される。
[0227] (備考)
以上、本願の出願時点において、出願人が知り得る最良の実施形態について説明 したが、 以下に示す技術的トピックについては、更なる改良や変更実施を加えること ができる。上記の実施形態に示した通り実施するか、これらの改良'変更を施すか否 かは、何れも任意的であり、実施する者の意思によることは留意されたい。
[0228]
(追加コンテンツに対する処理)
ローカルストレージ 200にダウンロードされた追加コンテンツは、何ヶ月、何年か経 過すれば自動的に消去するよう、ストリーム供給装置を初期設定しておくのが望まし い。
(PIDの代用)
上記実施形態では、 Primaryオーディオストリーム、 Secondaryオーディオストリーム の区別に PIDを用いたが、 MPEG2- PSを使う場合には、 PESパケットヘッダの streamjd をそれぞれ異なるものにするのが望ま 、。
[0229] また Primaryオーディオストリーム、 Secondaryオーディオストリームは、 2つの音声スト リームが 1つのデマルチプレクサでも弁別可能なように、システムストリームレベルに おいて区別されていればよい。もしくは、 2つのストリームを 1つに束ねる前に、片方の PIDを重複しな 、ように付け替えておくだけでもよ!/、。
淛御手順の実現)
上記実施形態においてフローチャートを引用して説明した制御手順や、機能的な 構成要素による制御手順は、ハードウェア資源を用 、て具体的に実現されて 、ること から、自然法則を利用した技術的思想の創作といえ、 "プログラムの発明"としての成 立要件を満たす。
[0230] ·本発明に係るプログラムの生産形態
本発明に係るプログラムは、コンピュータが実行することができる実行形式のプログ ラム (オブジェクトプログラム)であり、上記実施形態に示したフローチャートの各ステツ
プゃ、機能的構成要素の個々の手順を、コンピュータに実行させるような 1つ以上の プログラムコードから構成される。ここでプログラムコードは、プロセッサのネイティブコ ード、 JAVAバイトコードというように、様々な種類がある。またプログラムコードによる 各ステップの実現には、様々な態様がある。外部関数を利用して、各ステップを実現 することができる場合、この外部関数をコールするコール文力 プログラムコードにな る。また、 1つのステップを実現するようなプログラムコード力 別々のオブジェクトプロ グラムに帰属することもある。命令種が制限されている RISCプロセッサでは、算術演 算命令や論理演算命令、分岐命令等を組合せることで、フローチャートの各ステップ 力 S実現されることちある。
[0231] 本発明に力かるプログラムは、以下のようにして作ることができる。先ず初めに、ソフ トウエア開発者は、プログラミング言語を用いて、各フローチャートや、機能的な構成 要素を実現するようなソースプログラムを記述する。この記述にあたって、ソフトウェア 開発者は、プログラミング言語の構文に従い、クラス構造体や変数、配列変数、外部 関数のコールを用いて、各フローチャートや、機能的な構成要素を具現するソースプ ログラムを記述する。
[0232] 記述されたソースプログラムは、ファイルとしてコンパイラに与えられる。コンパイラは 、これらのソースプログラムを翻訳してオブジェクトプログラムを生成する。
コンパイラによる翻訳は、構文解析、最適化、資源割付、コード生成といった過程か らなる。構文解析では、ソースプログラムの字句解析、構文解析および意味解析を行 い、ソースプログラムを中間プログラムに変換する。最適化では、中間プログラムに対 して、基本ブロック化、制御フロー解析、データフロー解析という作業を行う。資源割 付では、ターゲットとなるプロセッサの命令セットへの適合を図るため、中間プログラム 中の変数をターゲットとなるプロセッサのプロセッサが有しているレジスタまたはメモリ に割り付ける。コード生成では、中間プログラム内の各中間命令を、プログラムコード に変換し、オブジェクトプログラムを得る。
[0233] オブジェクトプログラムが生成されるとプログラマはこれらに対してリンカを起動する 。リンカはこれらのオブジェクトプログラムや、関連するライブラリプログラムをメモリ空 間に割り当て、これらを 1つに結合して、ロードモジュールを生成する。こうして生成さ
れるロードモジュールは、コンピュータによる読み取りを前提にしたものであり、各フロ 一チャートに示した処理手順や機能的な構成要素の処理手順を、コンピュータに実 行させるものである。以上の処理を経て、本発明に係るプログラムを作ることができる
[0234]
•本発明に係るプログラムの使用形態
本発明に係るプログラムは、以下のようにして使用することができる。
(0糸且込プログラムとしての使用
本発明に係るプログラムを組込プログラムとして使用する場合、プログラムにあたる ロードモジュールを、基本入出力プログラム (BIOS)や、様々なミドルウェア (オペレー シヨンシステム)と共に、命令 ROMに書き込む。こうした命令 ROMを、制御部に組み込 み、 CPUに実行させることにより、本発明に係るプログラムを、ストリーム供給装置 300 の制御プログラムとして使用することができる。
[0235] GOアプリケーションとしての使用
ストリーム供給装置 300が、ハードディスク内蔵モデルである場合は、基本入出力 プログラム (BIOS)が命令 ROMに組み込まれており、様々なミドルウェア (オペレーショ ンシステム)が、ハードディスクにプレインストールされている。また、ハードディスクか ら、システムを起動するためのブート ROM力 ストリーム供給装置 300に設けられてい る。
[0236] この場合、ロードモジュールのみを、過搬型の記録媒体やネットワークを通じて、スト リーム供給装置 300に供給し、 1つのアプリケーションとしてハードディスクにインスト ールする。そうすると、ストリーム供給装置 300は、ブート ROMによるブートストラップ を行い、オペレーションシステムを起動した上で、 1つのアプリケーションとして、当該 アプリケーションを CPUに実行させ、本発明に係るプログラムを使用する。
[0237] ハードディスクモデルのストリーム供給装置 300では、本発明のプログラムを 1つの アプリケーションとして使用しうるので、本発明に係るプログラムを単体で譲渡したり、 貸与したり、ネットワークを通じて供給することができる。
(コントローラ 22)
上記実施形態に示したコントローラ 22等の構成要素は、一個のシステム LSIとして 実現することができる。
[0238] システム LSIとは、高密度基板上にベアチップを実装し、パッケージングしたものを いう。複数個のベアチップを高密度基板上に実装し、ノ ッケージングすることにより、 あたカゝも 1つの LSIのような外形構造を複数個のベアチップに持たせたものも、システ ム LSIに含まれる (このようなシステム LSIは、マルチチップモジュールと呼ばれる。;)。 ここでパッケージの種別に着目するとシステム LSIには、 QFP (タッドフラッドアレイ) 、 PGA (ピングリッドアレイ)という種別がある。 QFPは、パッケージの四側面にピンが 取り付けられたシステム LSIである。 PGAは、底面全体に、多くのピンが取り付けられ たシステム LSIである。
[0239] これらのピンは、他の回路とのインターフェイスとしての役割を担っている。システム LSIにおけるピンには、こうしたインターフェイスの役割が存在するので、システム LSI におけるこれらのピンに、他の回路を接続することにより、システム LSIは、ストリーム供 給装置 300の中核としての役割を果たす。
システム LSIにパッケージングされるベアチップは、 "フロントエンド部"、 "バックェン ド部"、 "デジタル処理部"からなる。 "フロントエンド部"は、アナログ信号を、デジタル 化する部分であり、 "バックエンド部"はデジタル処理の結果、得られたデータを、アナ 口グイ匕して出力する部分である。
[0240] 上記実施形態において内部構成図として示した各構成要素は、このデジタル処理 部内に実装される。
先に"組込プログラムとしての使用"で述べたように、命令 ROMには、プログラムにあ たるロードモジュールや、基本入出力プログラム (BIOS)、様々なミドルウェア (オペレー シヨンシステム)が書き込まれる。本実施形態において、特に創作したのは、このプロ グラムにあたるロードモジュールの部分なので、プログラムにあたるロードモジュール を格納した命令 ROMを、ベアチップとしてパッケージングすることにより、本発明に係 るシステム LSIは生産することができる。
[0241] 具体的な実装につ!、ては、 SoC実装や SiP実装を用いることができ望ま U、。 SoC(Sy
stem on chip)実装とは、 1チップ上に複数の回路を焼き付ける技術である。 SiP(Syste m in Package)実装とは、複数チップを榭脂等で 1パッケージにする技術である。以上 の過程を経て、本発明に係るシステム LSIは、上記実施形態に示したストリーム供給 装置 300の内部構成図を基に作ることができる。
[0242] 尚、上述のようにして生成される集積回路は、集積度の違いにより、 IC、 LSI,スーパ -LSI,ウノレ卜ラ LSIと呼称されることちある。
さらに、各記録読出装置の構成要素の一部又は全てを 1つのチップとして構成して もよい。集積回路化は、上述した SoC実装, SiP実装に限るものではなぐ専用回路又 は汎用プロセスで実現してもよい。 LSI製造後に、プログラムすることが可能な FPGA ( Field Programmable Gate Array)や、 LSI内部の回路セルの接続や設定を再構成可 能なシリコンフィギユラブル'プロセッサを利用することが考えられる。更には、半導体 技術の進歩又は派生する技術により LSIに置き換わる集積回路化の技術が登場すれ ば、当然、その技術を用いて機能ブロックの集積回路化を行っても良い。例えば、バ ィォ技術の適応などが可能性としてありうる。
産業上の利用可能性
[0243] 本発明はホームシアターシステムを構成するストリーム再生装置、ストリーム供給装 置等に適用でき、特に、記録媒体力もオーディオストリームを読み出すストリーム供給 装置と、オーディオストリームをデコードするストリーム再生装置とが HDMI等のデジタ ル I/Fを介して接続して利用する場合に有用である。