JP2010005159A - 保存データ移行方法 - Google Patents

保存データ移行方法 Download PDF

Info

Publication number
JP2010005159A
JP2010005159A JP2008168342A JP2008168342A JP2010005159A JP 2010005159 A JP2010005159 A JP 2010005159A JP 2008168342 A JP2008168342 A JP 2008168342A JP 2008168342 A JP2008168342 A JP 2008168342A JP 2010005159 A JP2010005159 A JP 2010005159A
Authority
JP
Japan
Prior art keywords
application
data
file
information
migration
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
Application number
JP2008168342A
Other languages
English (en)
Inventor
Takeshi Yamashita
健 山下
Tomokazu Kanamaru
智一 金丸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp filed Critical Panasonic Corp
Priority to JP2008168342A priority Critical patent/JP2010005159A/ja
Publication of JP2010005159A publication Critical patent/JP2010005159A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】BD−ROM端末本体に保存されたデータから携帯端末へ移行するアプリケーションと関連付けられたデータのみを移行でき、かつ、BD−ROM端末本体に保存されたアプリケーション途中状態を他の携帯端末上で実行したアプリケーションによって読み出す。
【解決手段】異なるアプリケーションのデータが混在する中、ディスク上のデータと記憶領域に予め設定されているアプリケーション関連付け情報及びアプリケーション認証で計算されたデータを基に移行対象のアプリケーションと関連するアプリケーション保存データのみを抽出する工程と、抽出した保存データを外部の読み書き可能なリムーバブルメディアに書き込む工程と、保存データの移行対象の属性情報が記載されたアプリ変換情報を基に前記抽出した保存データを移行先のファイル形式に変換する工程と、変換した保存データを外部の読み書き可能なリムーバブルメディアに書き込む工程とを備える。
【選択図】図1

Description

本発明は、端末内にあるアプリケーションデータの保存領域にある保存データを読み書き可能な記録媒体を通して他の端末に移行する技術に関し、特に、移行対象のアプリケーションプログラムに関連する保存データのみを抽出し、さらには異なる再生機器のフォーマットに変換し、変換したデータを異なる再生機器で再生する技術に関する。
近年、BD−ROM再生機を代表としたAVストリームを再生する家電機器に向けて、再生コンテンツとしてAVストリームのみでなく、インタラクティブ性の向上を目的としたアプリケーションプログラム(以下、「アプリケーション」という。)を同時に付加するコンテンツ提供方法が主流となってきている。
このような機器では、アプリケーションが自由に読み書きできるハードディスク等の読み書き可能な記録媒体(以下、「ローカルストレージ」という)を兼ね備え、アプリケーションの途中状態や再生機の設定などのデータを、ローカルストレージに保存することが可能である。例えば、AVストリームを再生しながら、その画面にオーバーレイして、コンテンツに関連するシューティングゲームを実現するアプリケーションでは、ゲームのハイスコアをローカルストレージに保存することが出来る。また他の例として、ユーザのお気に入り場面を登録できるアプリケーションを用いて、ストリームの頭出し情報をローカルストレージに記録する等といったユースケースが考えられる。
ところで、近年AVストリームを再生する端末として、BD−ROM再生機を代表とするセットトップボックス型の端末だけでなく、携帯端末も処理能力やディスプレイ技術の向上により、年々増している光景にある。前記前提を踏まえ、例えばBD−ROM上に携帯端末用のAVストリームを配置し、携帯端末にコピー(例えばManaged Copy)して再生させるサービスが今後盛んになることを想定することは容易である。また、携帯端末はアプリケーションを実行する機能を兼ね備えるものも少なくはない。BD−ROM上に配置されたアプリケーションプログラムを携帯端末にコピーし、携帯端末上で実行させることにより、BD−ROMと同様のインタラクティブ性を与えることも可能となることも同時に想定される。
前述したAVストリームやアプリケーションの複製に加え、ユーザは例えばBD−ROM上で実行したアプリケーションの途中状態を携帯端末で継続して再開できれば利便性が向上するというのは言うまでもないであろう。
同種類の技術として、特許文献1に記載されているものがある。特許文献1に記載のものでは、ゲーム機(親機)にささっているアプリケーションが起動可能なメモリーカード上(子機)にゲーム機に挿入されたディスク上からゲームとゲームデータをコピーし、メモリーカード間でデータを共有する方法が示されている。
特開平11−271164号公報
BD−ROMディスク上で実行されるアプリケーションの場合、保存するデータは機器内の記憶領域に出力されるのが主流である。すなわち、携帯端末にアプリケーションの途中状態を移行する場合には機器内の記憶領域を一旦記憶媒体に移動させ、記憶媒体から携帯端末で前記途中情報を読ませるのが主流となるであろう。
BD−ROM機器上では様々なディスクからの異なるアプリケーションが実行されることがあるが、アプリケーションがデータを保存する領域は共有されている。アプリケーションとその関連するデータを移行する場合には特許文献1のようにゲームと記憶媒体が1対1の関係の場合はアプリケーションとそのアプリケーションのデータを関連付けることは容易である。様々なアプリケーションの途中状態が共通の記憶領域に混在するBD−ROM機器では前記記憶領域ごと移行することは容易である。しかし、データ転送の速度向上、及び移行するデータ容量を制限するためにはアプリケーションに関連するデータのみを移行したいはずである(第1の課題)。
また、BD−ROM上に配置されたアプリケーションプログラムとBD−ROM規格にそっていない携帯端末で実行させるアプリケーションではアクセスできる保存領域が異なるし、アクセスするデータの形式も異なる(第2の課題)。
本発明はかかる問題に鑑み、BD−ROM端末本体に保存されたデータから携帯端末へ移行するアプリケーションと関連付けられたデータのみを移行でき、かつ、BD−ROM端末本体に保存されたアプリケーション途中状態を他の携帯端末上で実行したアプリケーションによって読み出すことが可能となる保存データ移行方法を提供することを目的とする。
上記目的を達成するために、本発明の保存データ移行方法は、読み書き可能な記録媒体において、デジタル証明書に基づいて正当性が証明されたアプリケーションプログラム以外によるアクセスが制限され、アプリケーションプログラム毎にアクセスが許可されるディレクトリが異なる制限領域に、アプリケーションプログラムの実行により記録されたデータを移行するデータ移行方法であって、再生装置の記憶領域に保存された様々なアプリケーションの保存データから、ディスク上のデータと記憶領域にあらかじめ設定されているアプリケーション関連付け情報、およびアプリケーション認証で計算されたデータを基に移行対象のアプリケーションと関連するアプリケーション保存データのみを抽出する工程と、前記抽出した保存データを外部の読み書き可能なリムーバブルメディアに書き込む工程と、保存データの移行対象の属性情報が記載されたアプリ変換情報を基に前記抽出した保存データを移行先のファイル形式に変換する工程と、前記変換した保存データを外部の読み書き可能なリムーバブルメディアに書き込む工程とを備える。
また、本発明は、前記アプリケーション保存データのみを抽出する工程で利用するアプリケーション関連付け情報としてアプリケーションによるファイル書き込み時に別途設定された保存データ作成者の識別子、及び権限を利用する。
また、本発明は、前記アプリケーション保存データのみを抽出する工程で利用するアプリケーション関連付け情報としてアプリケーション認証の際に利用するアプリケーションの権限が記載されるパーミッションファイルの共有情報の検証結果を利用する。
また、本発明は、前記保存データの移行対象の属性情報として、データ移行先がxlet放送規格端末と判定した場合、保存データの書き込む工程の際に、ファイル情報管理テーブルのファイル名からルート証明書のダイジェスト長の文字列分を削除したファイル名を用いてデータ移行を行う。
また、本発明は、前記保存データの移行対象の属性情報として、データ移行先が携帯電話規格端末と判定した場合、保存データの書き込む工程の際に、移行対象の保存データファイル全てを移行対象のアプリケーションアーカイブに含める。
また、本発明は、前記保存データの移行対象の属性情報として、データ移行先が携帯電話規格端末と判定した場合、保存データの書き込む工程の際に、移行対象の保存データファイル全てを繋ぎ合わせ、移行対象の属性情報であるマウントパス情報を用いて変換したファイル名でデータ移行を行う。
また、本発明は、前記保存データの移行対象の属性情報として、データ移行先が携帯電話規格端末と判定した場合、保存データの書き込む工程の際に、移行対象の保存データファイル全てをアーカイブし、移行対象の属性情報であるマウントパス情報を用いて変換したファイル名でデータ移行を行う。
上述の構成により本発明に係る保存データ移行方法では、BD−ROM端末本体に保存されたデータから携帯端末へ移行するアプリケーションと関連付けられたデータのみを移行することによって、リムーバブルメディアにコピーが必要なデータ容量を削減でき、より多くのデータ量を保存できるようになる。
さらに、BD−ROM端末本体に保存されたデータから携帯端末へ移行するアプリケーションと関連付けられたデータのみを移行することによって、移行するデータ量が削減し、コピーにかかる時間が削減される効果もある。
また、保存データの移行対象の属性情報が記載されたアプリ変換情報を基に前記抽出した保存データを移行先のファイル形式に変換することによって、保存形式のことなる端末でもBD−ROM端末本体に保存されたデータを用いて継続利用できるようになる。
(第1の実施形態)
以降、本発明に係るデータ移行方法の実施形態について説明する。先ず始めに、本発明に係るデータ移行方法の実施行為のうち、使用行為についての形態を説明する。
図1は、本発明に係るデータ移行方法の、使用行為についての形態を示す図である。図1において、本発明に係るデータ移行装置は、再生装置200(親機)、および携帯端末600(子機)である。この再生装置200は、リモコン300、テレビ400により形成されるホームシアターシステムに、映画作品を供給するという用途に供される。記憶媒体500は再生装置200、及び携帯端末600ともに読み書きが可能な媒体である。
以上が本発明に係るデータ移行方法の使用形態についての説明である。続いて再生装置200が再生の対象としている、記録媒体について説明する。再生装置200により、再生されるのは、BD−ROM100である。図2は、BD−ROM100の内部構成を示す図である。
本図の第4段目にBD−ROMを示し、第3段目にBD−ROM上のトラックを示す。本図のトラックは、BD−ROMの内周から外周にかけて螺旋状に形成されているトラックを、横方向に引き伸ばして描画している。このトラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。また、リードインの内側にはBCA(Burst Cutting Area)と呼ばれるドライブでしか読み出せない特別な領域がある。この領域はアプリケーションから読み出せないため、例えば著作権保護技術などに利用されることがよくある。
本図のボリューム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもち、ボリューム領域には、ファイルシステム情報(ボリューム)を先頭に映像データなどのアプリケーションデータが記録されている。ファイルシステムとは、UDFやISO9660などのことであり、通常のPCと同じように記録されている論理データをディレクトリ、ファイル構造を使って読み出しする事が可能になっており、255文字のファイル名、ディレクトリ名を読み出すことが可能である。ディレクトリ構造を用いてBD−ROMの応用層フォーマット(アプリケーションフォーマット)を表現すると、図中の第1段目のようになる。この第1段目においてBD−ROMには、Rootディレクトリの下に、CERTIFICATEディレクトリ、及びBDMVディレクトリがある。
CERTIFICATEディレクトリの配下には、ディスクのルート証明書のファイル(app.discroot.cert)が存在する。app.discroot.certはJava(登録商標)仮想マシンを用いて動的なシナリオ制御を行うJava(登録商標)アプリケーションのプログラムを実行する際に、アプリケーションが改竄されていないか、及びアプリケーションの身元確認を行なうプロセス(以下、署名検証という)に用いられるデジタル証明書である。
BDMVディレクトリはBD−ROMで扱うAVコンテンツや管理情報などのデータが記録されているディレクトリであり、BDMVディレクトリの配下には、PLAYLISTディレクトリ、CLIPINFディレクトリ、STREAMディレクトリ、BDJOディレクトリ、JARディレクトリ、METAディレクトリと呼ばれる6つのサブディレクトリが存在し、INDEX.BDMVとMovieObject.bdmvの2種類のファイルが配置されている。
STREAMディレクトリには、いわばデジタルストリーム本体となるファイルを格納しているディレクトリであり、拡張子“m2ts”が付与されたファイル(000001. m2ts)が存在する。
PLAYLISTディレクトリには、拡張子“mpls”が付与されたファイル(000001.mpls)が存在する。
CLIPINFディレクトリには、拡張子“clpi”が付与されたファイル(000001.clpi)が存在する。
BDJOディレクトリには、拡張子“bdjo”付与されたファイル(XXXXX.bdjo)が存在する。
JARディレクトリには、拡張子“jar”が付与されたファイル(YYYYY.jar)が存在する。
METAディレクトリには、XMLファイル(ZZZZZ.xml)が存在する。
以下、これらのファイルについて説明する。
<AVClip>
先ず初めに、拡張子“m2ts”が付与されたファイルについて説明する。拡張子“m2ts”が付与されたファイルは、MPEG−TS(TransportStream)形式のデジタルAVストリームであり、ビデオストリーム、1つ以上のオーディオストリーム、グラフィクスストリーム、テキスト字幕ストリーム等を多重化することで得られる。ビデオストリームは映画の動画部分を、オーディオストリームは映画の音声部分をそれぞれ示している。
<PlayList情報>
拡張子“mpls”が付与されたファイルは、PlayList(PL)情報を格納したファイルである。PL情報は、AVClipを参照してプレイリストを定義する情報である。
<Clip情報>
拡張子“clpi”が付与されたファイルは、AVClipのそれぞれに1対1に対応するClip情報である。管理情報故に、Clip情報は、AVClipにおけるストリームの符号化形式、フレームレート、ビットレート、解像度等の情報や、GOPの先頭位置を示すEP_mapをもっている。以上のClip情報及びPL情報は、“静的シナリオ”に分類される。
<BD−Jオブジェクト>
続いて、拡張子BDJOを付したファイルについて説明する。拡張子BDJOを付したファイルは、BD−Jオブジェクトを格納したファイルである。BD−Jオブジェクトは、PlayList情報により定義されるAVClip列と、アプリケーションとの関連付けにより、タイトルを定義する情報である。図3は、BD−Jオブジェクトの内部構成を示す図である。本図に示すように、BD−Jオブジェクトは、“アプリケーション管理テーブル”と、“PlayList情報に対する参照値”とを示す。“PlayList情報に対する参照値”は、このタイトルの開始時に、同時に再生すべきPlayList情報を示す。アプリケーション管理テーブルは、破線の矢印ai1に示すように、このタイトルを生存区間とするアプリケーションを指定する情報を羅列したものである。アプリケーション管理テーブルにおけるアプリケーションの指定には、破線の矢印ai2に示すようにアプリケーション特定情報とアプリケーション詳細情報とが含まれる。アプリケーション特定情報としては、アプリケーションの作成者のID(OrganizationID)とアプリケーションの識別子(アプリケーションID)とそのアプリケーションを構成するJava(登録商標)アーカイブファイルのIDとが用いられる。つまり、一つのアプリケーションは一つ以上のJava(登録商標)アーカイブファイルで構成される。
また、アプリケーション管理テーブルには、破線の矢印ai4に示すように、アプリケーション詳細情報として、アプリケーションの名称を示す文字列と、アプリケーションに対応づけるアイコンの所在を指し示すアイコンロケータとを、アプリケーション毎にさせて格納している。アイコンロケータは、Java(登録商標)アーカイブファイル内に含まれるアイコンをアドレスにより指し示す。
以上が拡張子BDJOを付したファイルについての説明である。
続いて“動的なシナリオ”について説明する。“動的に”というのは、再生装置200における状態変化やユーザからのキーイベントにより再生制御の中身がかわることをいう。BD−ROMでは、Java(登録商標)アプリケーションと同様の記述により、この再生制御を記述することができる。つまりBD−ROMでは、Java(登録商標)アプリケーションが、動的シナリオとしての役割を担うことになる。
Java(登録商標)アプリケーションについて説明する。Java(登録商標)アプリケーションは、仮想マシンのヒープ領域(ワークメモリとも呼ばれる)にロードされた1つ以上のxletプログラムからなる。このワークメモリにロードされたxletプログラム、及び、データから、アプリケーションは構成されることになる。以上がJava(登録商標)アプリケーションの構成である。
このJava(登録商標)アプリケーションの実体にあたるのが、図2におけるBDMVディレクトリ配下のJARディレクトリに格納されたJava(登録商標)アーカイブファイル(YYYYY.jar)である。以降、Java(登録商標)アーカイブファイルについて、図4を参照しながら説明する。
<Java(登録商標)アーカイブファイル>
Java(登録商標)アーカイブファイル(図2のYYYYY.jar)は、1つ以上のクラスファイル、1つ以上のデータファイル等を1つにまとめることで得られるファイルである。図4は、アーカイブファイルにより収められているプログラム、データの一例を示す図である。本図におけるデータは、枠内に示すディレクトリ構造が配置された複数ファイルを、Java(登録商標)アーカイバでまとめたものである。枠内に示すディレクトリ構造は、Rootディレクトリ、java(登録商標)ディレクトリ、imageディレクトリ、META−INFディレクトリとからなり、Java(登録商標)アーカイブファイルは、これらをJava(登録商標)アーカイバでまとめることで得られる。
RootディレクトリにCopyディレクトリが、java(登録商標)ディレクトリにクラスファイル(aaa.class)とセキュリティに用いられるパーミッションファイル(aaa.perm)が、imageディレクトリに、menu.jpg、YYYYY.ICO等のファイルが配置されている。かかるクラスファイル及びデータは、BD−ROMからキャッシュに読み出されるにあたって展開され、キャッシュ上で、ディレクトリに配置された複数ファイルとして取り扱われる。Java(登録商標)アーカイブファイルのファイル名における“YYYYY”という5桁の数値は、Java(登録商標)アーカイブファイルのIDを示し、BD−Jオブジェクトは、この値を用いてJava(登録商標)アーカイブファイルを参照する。
本図における“YYYYY.ICO”はアイコンファイルであり、BD−Jオブジェクトのアイコンロケータにおいて、Java(登録商標)アーカイブファイルのファイル名からの相対アドレスにより、“YYYYY/image/YYYYY.ICO”のように指定される。
本図におけるクラスファイル(図中のaaa.class)は、上述したxletプログラムに対応するクラスファイルである。Java(登録商標)動作環境による動作モード(BD−Jモード)における再生手順は、このクラスファイルのインスタンスにあたるxletプログラムにより規定される。xletプログラムとは、JMF(Java(登録商標) Media Framework)方式のインターフェイスを利用することができるJava(登録商標)プログラムであり、JMF等の方式に従って、キーイベントに基づきプレイリスト再生処理を行う。
更にxletプログラムは、WWWサイトをアクセスしてコンテンツをダウンロードするという手順を実行することもできる。これによりダウンロードコンテンツと、プレイリスト再生とを交えた斬新な作品を再生させることができる。
またJava(登録商標)アーカイブファイルのMETA−INFディレクトリには、アプリケーションプログラムのアーカイブの情報を記載したマニフェストファイル(YYYYY.MF)、署名ファイル(YYYYY.SF)、署名ブロックファイル(YYYYY.RSA)が含まれている。
<メタファイル>
METAディレクトリに格納されたメタファイル(ZZZZZ.xml)には、ディスクに入っている映像作品に関する様々な情報が格納されている。メタファイルに格納されている情報としては、ディスクのディスク名及び画像、ディスクが誰によって作成されたかの情報、各タイトルに関わるタイトル名等がある。以上がBD−ROM100についての説明である。メタファイルは、必須のファイルではなく、このファイルが格納されていないBD−ROMもある。
以上がBD−ROMについての説明である。
以上説明した各ファイルに基づいて、BD−ROMの映画作品は再生装置において再生制御がなされる。図5は再生制御のレイヤモデルを示した図である。図5の第1層は、物理層であり、処理対象たるストリーム本体の供給制御である。この第1層に示すように、処理対象たるストリームは、BD−ROMだけではなく、HDD(ハードディスクドライブ)などの再生装置に予め組み込まれた記録媒体であるローカルストレージやリムーバブルメディア、ネットワークといったあらゆる記録媒体、通信媒体を供給源としている。これらローカルストレージ、リムーバブルメディア、ネットワークといった供給源に対する制御(ディスクアクセス、カードアクセス、ネットワーク通信)が第1層の制御である。
第2層は、AVデータのレイアである。第1層で供給されたストリームを、どのような復号化方式を用いて復号するのかを規定しているのがこの第2層である。
第3層(BD管理データ)は、ストリームの静的なシナリオを規定するレイアである。静的なシナリオとは、ディスク制作者によって予め規定された再生経路情報、ストリーム管理情報であり、これらに基づく再生制御を規定しているのがこの第3層である。
第4層(BD再生プログラム)は、ストリームにおける動的なシナリオを実現するレイヤである。動的なシナリオは、AVストリームの再生手順、及び、その再生に関する制御手順のうち少なくとも一方を実行するプログラムである。動的なシナリオによる再生制御は、装置に対するユーザ操作に応じて変化するものであり、プログラム的な性質をもつ。ここでの動的な再生制御には、2つのモードがある。2つのモードのうち1つは、AV機器特有の再生環境で、BD−ROMに記録された動画データを再生するモード(HDMVモード)であり、もう1つはBD−ROMに記録された動画データの付加価値を高めるモード(BD−Jモード)である。図5において第4層には、HDMVモードとBD−Jモードの2つのモードが記述されている。HDMVモードは、DVDライクな再生環境での再生モードであり、再生進行を動的に変化させるためのシナリオが記述されたシナリオプログラムが動作する。もう一つのBD−Jモードは、Java(登録商標)仮想マシンを主体とした再生モードであり、Java(登録商標)アプリケーションから再生制御を行う。
図6は、2つのモードの動的な再生制御にて作成される映画作品を示す図である。図6(a)は、HDMVモードで動的な再生制御を定義することにより、作成される映画作品の一場面を示す図である。HDMVモードはDVD再生装置が解釈可能なコマンドと良く似たコマンドで再生制御を記述することができるので、DVDと同じような再生制御、つまり、メニューに対する選択により再生が進行するような再生制御を定義することができる。
図6(b)は、BD−Jモードで動的な再生制御を定義することにより、作成される映画作品である。BD−JモードはJava(登録商標)仮想マシンが解釈可能なJava(登録商標)言語で制御手順を記述することができる。この再生制御がコンピュ−タ・グラフィックス(CG)の動作を制御するものなら、BD−Jモードにあっては、動画を表示した画面の横でCG(図中のカンガルーの絵)が動きまわっているような再生制御を定義することができる。
次に本実施形態に係る再生装置200の詳細について説明する。
図7は、再生装置の内部構成を示すブロック図である。図9に示すように、再生装置は、BD−ROMドライブ1、トラックバッファ2、デマルチプレクサ3、ビデオデコーダ4、ビデオプレーン5、オーディオデコーダ6、イメージメモリ7、グラフィックプレーン9、グラフィックデコーダ8、加算器10、静的シナリオメモリ11、動的シナリオメモリ12、HDMVモジュール14、BD−Jモジュール15、UO探知モジュール21、モード管理モジュール16、ディスパッチャ17、AV再生ライブラリ18、アプリデータ関連付けモジュール19、ネットワークインターフェース23、ローカルストレージ24、BDファイルシステム25、リムーバブルメディア27から構成される。
BD−ROMドライブ1は、BD−ROMのローディング/イジェクトを行い、BD−ROMに対するアクセスを実行する。
トラックバッファ2は、FIFOメモリであり、BD−ROMから読み出されたACCESS UNITが先入れ先出し式に格納される。
デマルチプレクサ3は、BD−ROMドライブ1にローディングされているBD−ROM、またはローカルストレージ24上に保存されているトランスポートストリームの多重分離を行い、GOPを構成するビデオフレームと、オーディオフレームとを得てビデオフレームをビデオデコーダ4に出力し、オーディオフレームをオーディオデコーダ6に出力する。グラフィックストリームはイメージメモリ7に格納し、Navigation Button情報は動的シナリオメモリ12に格納する。デマルチプレクサ3による多重分離は、TSパケットをPESパケットに変換するという変換処理を含む。
ビデオデコーダ4は、デマルチプレクサ3から出力されたビデオフレームを復号して非圧縮形式のピクチャをビデオプレーン5に書き込む。
ビデオプレーン5は、非圧縮形式のピクチャを格納しておくためのメモリである。
オーディオデコーダ6は、デマルチプレクサ3から出力されたオーディオフレームを復号して、非圧縮形式のオーディオデータを出力する。
イメージメモリ7は、デマルチプレクサ3から読み出されたグラフィックストリーム、Navigation Button情報内のPNGデータ、あるいは、BDファイルシステム25を介してBD−ROMまたはローカルストレージ24から読み出された画像ファイルを格納しておくバッファである。
グラフィックデコーダ8は、イメージメモリ7に格納されたグラフィックストリーム等をデコードしてグラフィックプレーン9に書き込む。グラフィックストリームのデコードにより、字幕が画面上に現れることになる。
加算器10は、ビデオプレーン5に格納された非圧縮形式のピクチャデータに、グラフィックプレーン9に展開されたイメージを合成して出力する。図6(b)に示した画面(動画を表示した画面の横でCG(図中のカンガルーの絵)が動きまわっているような画面)は、この加算器10が、グラフィックプレーン9内のイメージと、ビデオプレーン5内のピクチャとを合成することで出力される。
静的シナリオメモリ11は、カレントのPLやカレントのストリーム管理情報を格納しておくためのメモリである。カレントPLとは、BD−ROMまたはローカルストレージ24に記録されている複数PLのうち、現在処理対象になっているものをいう。カレントストリーム管理情報とは、BD−ROMまたはローカルストレージ24に記録されている複数ストリーム管理情報のうち、現在処理対象になっているものをいう。
動的シナリオメモリ12は、カレント動的シナリオを格納しておき、HDMVモジュール14、BD−Jモジュール15による処理に供されるメモリである。カレント動的シナリオとは、BD−ROMまたはローカルストレージ24に記録されている複数シナリオのうち、現在実行対象になっているものをいう。
制御部13は、ROM、RAM、CPUからなるマイコンシステムであり、ROMには再生装置を制御するプログラムが記録されており、ROM内のプログラムがCPUに読み込まれ、プログラムとハードウェア資源とが協動することにより、HDMVモジュール14、BD−Jモジュール15、モード管理モジュール16、ディスパッチャ17、AV再生ライブラリ18、アプリデータ関連付けモジュール19の機能を実現する。
HDMVモジュール14は、HDMVモードの実行主体となるDVD仮想プレーヤであり、動的シナリオメモリ12に読み出されたカレントのシナリオプログラムを実行する。
BD−Jモジュール15は、Java(登録商標)プラットフォームであり、Java(登録商標)仮想マシン、コンフィグレーション、プロファイルからなる。BD−Jモジュール15は、動的シナリオメモリ12に読み出されたJava(登録商標)クラスファイルからカレントのJava(登録商標)オブジェクトを生成し、実行する。Java(登録商標)仮想マシンは、Java(登録商標)言語で記述されたJava(登録商標)オブジェクトを、再生装置におけるCPUのネィティブコードに変換して、CPUに実行させる。
モード管理モジュール16は、BD−ROMまたはローカルストレージ24から読み出されたモード管理テーブルを保持して、モード管理及び分岐制御を行う。モード管理モジュール16によるモード管理とは、動的シナリオをどのHDMVモジュール14、BD−Jモジュール15に実行させるかという、モジュールの割り当てである。
ディスパッチャ17は、UOから、現在の再生装置におけるモードに適切なUOのみを選んで、そのモードを実行するモジュールに受け渡す。例えばHDMVモードの実行中に、上下左右、アクティベートといったUOを受け付けた場合、HDMVモードのモジュールにこれらのUOを出力するというのがディスパッチャ17の処理である。
AV再生ライブラリ18はHDMVモジュール14、BD−Jモジュール15からの関数呼び出しに応じて、AV再生機能、プレイリストの再生機能を実行する。AV再生機能とは、DVDプレーヤ、CDプレーヤから踏襲した機能群であり、再生開始、再生停止、一時停止、一時停止の解除、静止画機能の解除、再生速度を即値で指定した早送り、再生速度を即値で指定した巻戻し、音声切り替え、副映像切り替え、アングル切り替えといった処理である。プレイリスト再生機能とは、このAV再生機能のうち、再生開始や再生停止をプレイリスト情報に従って行うことをいう。
アプリデータ関連付けモジュール19は、BD−ROMディスク上の情報と、機器内で計算した結果、及びアプリケーションが設定する属性情報を元に、ローカルストレージ24内からアプリケーションに関連する情報を保存するアプリケーション関連付け情報を生成、及び更新する機能を有している。
ネットワークインターフェース23は、インターネット上に公開されたBD−ROM追加コンテンツのダウンロードに用いられる。BD−ROM追加コンテンツとは、オリジナルのBD−ROMにないコンテンツで、例えば追加の副音声、字幕、特典映像、アプリケーションなどである。BD−Jモジュール15からネットワークインターフェース23を制御することができ、インターネット上に公開された追加コンテンツをローカルストレージ24にダウンロードすることができる。
ローカルストレージ24は、再生装置に内蔵されているハードディスク等の磁気記録装置である。リムーバブルメディア25は外部スロットから挿入される記憶媒体であり、フラッシュ、磁気が代表される。
図8は、ローカルストレージ24におけるディレクトリ構造を示す図である。Rootディレクトリの下に、ADAディレクトリ、SYSディレクトリ及びBUDAディレクトリがある。ADAディレクトリは、アプリケーションが使うデータなどの保存に用いられ、配下ディレクトリにアプリケーション毎にアクセスできるディレクトリが存在する。
本図のディレクトリ構造においてADAディレクトリは、正当性が証明されたSignedアプリケーション以外によるアクセスが制限される制限領域であり、ADAディレクトリ配下には、「CertIDディレクトリ」というサブディレクトリがあり、その配下に、「OrganizationIDディレクトリ」、さらにその配下に「AppIDディレクトリ」というサブディレクトリがある。
CertIDディレクトリはBD−ROM上のディスクルート証明書(app.discroot.cert)から導き出されるIDを名前に持つディレクトリで、ディスクルート証明書のSHA−1ダイジェスト値からディレクトリ名前が導かれる。
OrganizationIDディレクトリは、BD−ROM上のBD−Jオブジェクトに記載されている、アプリケーションを作成した組織を特定する32bitの識別子(OrganizationID)を16進表記で表した8文字の名前のディレクトリである。
AppIDディレクトリは、BD−ROM上のBD−Jオブジェクトに記載されている、アプリケーションを識別する16bitの識別子(アプリケーションID)を16進表記で表した4文字の名前のディレクトリである。アプリケーション識別子の値が0x3FFFまでであればアプリケーションは署名のないアプリケーションである。
OrganizationIDディレクトリ、及びAppIDディレクトリの配下には、BD−Jオブジェクトに記載されているアプリケーションが属するIDのディレクトリ以下のみアクセスできるようになっている。つまり、“56789abc”のOrganizationID、“4003”のアプリケーションIDを持つアプリケーションは、“56789abc”OrganizationIDディレクトリのサブディレクトリである“4003”AppIDディレクトリの配下のデータファイルにアクセスできるが、“56789aaa”OrganizationIDディレクトリのサブディレクトリの1つに“4003”というディレクトリ(図示せず)が存在したとしても、この“56789aaa”OrganizationIDディレクトリの配下であって、“4003”AppIDディレクトリの配下のデータファイルにはアクセスできない。また、“56789abc”以下のファイルであっても、“4001”のAppIDディレクトリ以下をアクセスすることはできない。
また、ローカルストレージ24に保存されたデータファイルには、どのようなアプリケーションでもアクセスできるわけではなく、ローカルストレージ24は信用された特殊なアプリケーションのみアクセスできる。具体的には、コンテンツ提供者の秘密鍵により署名されたアプリケーションである(以下、Signedアプリケーションという)。
signedアプリケーションによりアクセスするローカルストレージは秘密鍵と対応する公開鍵を用いて有効性の確認(署名検証)が成功した場合のみ、利用可能になる。公開鍵は、X.509の規格に準拠した証明書という形式で、アプリケーションに含まれる。X.509の詳細な仕様は、国際電信電話諮問委員会より発行されている、CCITT Recommendation X.509(1988)、“The Directory − Authentication Framework”に記載されている。また、アプリケーションの署名検証時においては、リーフ証明書の組織名の末尾に示されるOrganizationIDがBD−ROM上のBD−Jオブジェクトに記載されているOrganizationIDと同一でないと、署名検証は失敗となる。
以上が再生装置の内部構成である。
本実施の形態では、図3、図4に示されたBD−ROMディスク上の情報と、機器内で計算した結果、及びアプリケーションが設定する属性情報を元に、ローカルストレージ24内からアプリケーションに関連する情報のみを吸出し、リムーバルメディア27へとコピーする。また、リムーバルメディア27へコピーする際にはBD−ROMアプリケーションが読みこもるデータ形式のみではなく、図1の600で示す携帯端末がアクセス可能な形式に合わせたものも保存する。このような処理を実現するには大きく2つの工程で再現できる。アプリケーション関連付け情報を生成しローカルストレージ24へ保存する工程と、アプリケーション関連付け情報を用いてリムーバブルメディアへとコピーする工程である。さらには、リムーバブルメディアにコピーする際に再生装置内の変換先情報を用いて携帯端末で読み込めるデータを生成する工程も有する。以下にこれらの工程を制御するBD−Jモジュールの詳細について説明する。
図9は図7に示すBD−Jモジュールのより具体的な構成を示す図である。BD−Jモジュール15はメディア再生モジュール31、アプリケーションマネージャ32、アプリケーション認証モジュール33、ファイルI/Oモジュール34から構成される。
メディア再生モジュール31はJava(登録商標)アプリケーション30に対し、メディア再生制御のためのAPIを提供している。Java(登録商標)アプリケーション30がメディア再生制御APIを呼び出すと、メディア再生モジュールは対応するAV再生ライブラリ18の関数を呼び出し、AV再生制御を行う。
アプリケーションマネージャ32は、BD−ROM上に記録された図3のBD−Jオブジェクトのアプリケーション管理テーブルを基づいてJava(登録商標)アプリケーションの起動・終了を管理する。また、アプリケーションマネージャがディスパッチャ17から受け取ったUOイベントを、現在動作中のJava(登録商標)アプリケーション30に渡すといった処理も行う。
アプリケーション認証モジュール33は、検証手段としてアプリケーションプログラムの署名検証処理を実行する。
具体的には、アプリケーションマネージャ32により起動されたアプリケーションがSignedアプリケーションか否かを判定し、Signedアプリケーションであった場合は、アプリケーション内に含まれたデジタル証明書、署名ファイル、署名ブロックファイルを用いてアプリケーション認証を行なう。
ファイルI/Oモジュール34はJava(登録商標)アプリケーション30からのローカルストレージへのアクセス要求の処理を行う。Java(登録商標)アプリケーション30はファイルI/Oモジュールを用いて、コンテンツデータをローカルストレージ上の適切な位置に配置することが出来る。また、Java(登録商標)アプリケーション30はローカルストレージ上にあるデータをリムーバブルメディア27へコピーするよう要求を行え、その際はローカルストレージ上の適切なコンテンツデータがファイルI/Oモジュール34を通してコピーされる。
以下にアプリケーション関連付け情報を生成し、Java(登録商標)アプリケーション30からローカルストレージ上にあるデータをリムーバブルメディア27へのコピー要求があった際にローカルストレージ24からアプリケーションに関連付けられた情報のみコピーする処理の詳細について説明する。
図10は、本実施形態1に係るアプリケーション関連付け処理を伴うアプリケーション起動の流れを示すフローチャートである。BD−Jモード用のタイトルが再生され、アプリケーションマネージャによってJava(登録商標)アプリケーション起動要求がアプリケーション認証モジュールに対して発行される(S101)。アプリケーション起動要求にはアプリケーション管理情報から取得した、起動するアプリケーションのアプリケーションIDとOrganizationIDが含まれる。アプリケーション起動要求を受け取ったアプリケーション認証モジュール33は受け取ったアプリケーションIDを基にSignedか否かを判定する(S102)。Signedか否かの判定は、例えば、アプリケーションIDの値が、0x000から0x3FFFの範囲であれば、Signedアプリケーションでなく、0x4000から0x7FFFであればSignedアプリケーションである。
アプリケーション認証モジュール33がS102でSignedアプリケーションと判定しなかった場合はアプリケーション認証を行わず、アプリケーションはそのまま起動される。しかし、アプリケーション認証を通さないアプリケーショはローカルストレージへのアクセスは不可能となる。ここでアプリ関連付け情報の構成、及びこの時点でどのような情報が入っているかを説明する。
図11はS102が完了した時点のアプリ関連付け情報の一例を示す図である。図11で示されるとおり、アプリ関連付け情報はローカルストレージのシステム領域の一部である。具体的にはシステム領域はアプリ関連付け情報1201とアプリ変換情報1202を含む。アプリ変換情報1202の詳細な説明は後述する。アプリ関連付け情報は起動対象のアプリケーションの情報を含んだ自アプリ情報管理テーブル1211と、現状アプリデータ領域に入っているファイルとそのアクセス情報が含まれるファイル情報管理テーブル1212からなる。自アプリ情報管理テーブルにはルート証明書のハッシュ1221と、OrgID1222と、AppID1223からなる。ファイル情報管理テーブル1212はファイルが移行対象か否かのフラグ1224、ファイル名1225、ファイル名に記載されているファイルの作成したアプリケーションのOrganizationID1226、ファイル名に記載されているファイルの作成したアプリケーションのAppID1227、ファイル名に記載されているファイルのアクセス権限1228からなる。図11を参照のとおり、自アプリ情報管理テーブルに1211にはまだ何も情報が入っていないことと、ファイル情報管理テーブル1212は図8に示すアプリデータ領域の情報が入っていることがわかる。ファイル名1225にはCertIDディレクトリ、Organizationディレクトリ、AppIDディレクトリとデータファイルを“/”を挟んで全部繋ぎあわせたものが入る。また、権限1228は例えば、アプリ権限とOrganization権限とからなり、作成者以外のアプリケーションID、またはOrganizationIDにアクセス権限を与えるかいなかを指定できる。例えば、両方がなしの場合は0、他アプリケーションIDとの共有のみOKの場合は1、他OrganizationIDとの共有のみOKの場合は2、他アプリケーションID、及び他OrganizationIDとの共有がOKの場合は3などとしてもよい。
図10に戻り、アプリケーション認証モジュール33がS102でSignedアプリケーションと判定した場合は、アプリケーション認証処理を実行する。アプリケーション認証処理を施すことによって、アプリケーションが改竄されていないことと、アプリケーションの身元確認が行なえる。Signedアプリケーションは例えば、Sun Microsystems Incが規定した”Signed Jar”形式であり、アプリケーションに各ファイルに対するダイジェストを記載したManifestファイル、及びSignatureファイル(署名ファイル)を含む。また、Signed Jarファイルはこれらの2つのファイルに加え、Signatureファイルの署名と、署名を検証する証明書チェーン等の情報をPKCS #7の形式記述されたSignature Blockファイル(署名ブロックファイル)と認証が成功すれば、ども含む。
上記アプリケーション認証処理は、アプリケーション認証モジュール33によりアプリケーションのSignature Blockファイルに含まれた証明書チェーンのリーフ証明書から公開鍵を抽出し、Signature Blockファイルに含まれるアプリケーション自体から得られた署名値を検証する(S103)。検証が失敗した場合は、アプリケーションは不正であるとみなされ、起動されない(End)。署名の検証が成功した場合は、アプリケーションは改竄されていないことが保証されていることを意味する。
次にアプリケーションの身元確認のため、証明書チェーンの検証を行なう。アプリケーション認証モジュール33はSignature Blockファイルの証明書チェーンからアプリルート証明書を抽出し、検証を行なう(S104)。具体的にはアプリルート証明書の検証は、アプリルート証明書に記載されている有効期限が有効であることを確認するプロセスと、アプリルート証明書がディスク上のCERTIFICATEディレクトリ以下に配置されているディスクルート証明書と同一であることを確認するプロセスを含む。アプリルート証明書の検証が失敗であった場合(S104:No)は、アプリケーションは不正であるとみなされ、起動されない(End)。
ここでアプリルート証明書の検証が成功であった場合(S104:Yes)は、アプリデータ関連付けモジュール19にこのことが通知され、アプリデータ関連付けモジュール19が、アプリルート証明書のSHA−1ダイジェスト値の計算を行う。アプリルートの証明書のダイジェスト値は、アプリ関連付け情報の自アプリ情報管理テーブルのルートハッシュとして保存される(S105)。
次にアプリデータ関連付けモジュール19は、S101で受け取ったアプリケーションIDとOrganizationIDをS105のルート証明書のダイジェストと関連付けて、自アプリ管理テーブルに登録する(S106)。
図12はS106が完了した時点のアプリ関連付け情報の一例を示す図である。図11で示されるとおり、左にルート証明書のダイジェスト値と右にOrganizationID、及びアプリケーションIDが連携づけて登録されている。
次に、この時点での移行対象を判定するために、アプリデータ関連付けモジュール19は、アプリ対象付け処理を行う(S107)。アプリ対象付け処理S107の詳細を図13に示す。
まずは自アプリ情報管理テーブル1211にあるルートハッシュ1221、OrgID1222、AppID1223の情報は“/”の文字列を挟んで繋げ合わせる(S201)。今回の例の場合は081a24ed/56789abc/4000となる。
次に、ファイル情報管理テーブル1212にある行からファイル名1225を抽出し、S201で生成した情報から始まるかを比較する(S202)。ここで比較結果が一致した場合(S202:Yes)は、そのファイルは移行対象とみなし、ファイル情報管理テーブル1212の前記ファイルに対する対象フラグ1224を“Y”にする(S203)。
S202で比較結果が一致しなかった場合(S202:No)は、S201で生成した文字列から、AppIDと”/”の情報を削り、再度ファイル名1225との比較を行う(S204)。ここで比較結果が一致しなかった場合(S204:No)は、そのファイルは移行対象ではないとみなし、ファイルに対する対象付け処理を終了する。
S204で比較結果が一致した場合(S204:Yes)、次にファイル情報管理テーブル1202にある行から作成者OrgID1226と作成者AppID1227を抽出し、自アプリ情報管理テーブル1211のOrgID1222が作成者OrgID1226、AppIDが作成者AppIDと一致しているかを比較する(S205)。ここで比較結果が一致した場合(S205:Yes)は、そのファイルは移行対象とみなし、ファイル情報管理テーブル1202の前記ファイルに対する対象フラグ1224を”Y”にする(S203)。
S205で比較結果が一致しなかった場合(S205:No)は、ファイル情報管理テーブル1202の権限1228を参照し、“0”になっていないこと、つまり共有フラグが立っていないことを確認する(S206)。S206が0だった場合は、そのファイルは移行対象ではないとみなし、ファイルに対する対象付け処理を終了する。S206が0以外だった場合は、そのファイルは移行対象とみなし、ファイル情報管理テーブル1202の前記ファイルに対する対象フラグ1224を“Y”にする(S203)。S201〜S206no処理はファイル情報管理テーブル1202に存在するファイル全てに対して行われる。以上が、アプリ対象付け処理の詳細である。
図14はアプリ対象付け処理S107が完了した時点の不アプリ関連付け情報を示す図である。1、2、5行目が移行対象となったことがわかる。
次に、アプリデータ関連付けモジュール19はアプリケーションのJARファイルから、パーミッションファイルを抽出する(S108)。パーミッションファイルは図4に示すとおり、ここでは.permの拡張子がついたファイルであり、Signedアプリケーションに対し、機器内のどのリソースにアクセスできるかが記載されているメタファイルである。
図15はパーミッションファイルの一例を示す図である。図15に示されるとおり、パーミッションファイルは例えば図5で示されるHDD(ローカルストレージ)やネットワーク等の機器内にあるリソースに加え、アプリケーションによるタイトルの選択が行えるか否かを設定できる。ローカルストレージアクセスが有の場合はアプリケーションが起動した後にローカルストレージ24のADA領域のBD−Jオブジェクトに記載されているアプリケーションが属するIDのディレクトリ以下の領域に、データの読み書きが可能となる。それ以外のADA領域をアクセスするにはクレデンシャルが必要である。
クレデンシャルは例えば他ディスクのBD−ROM上のアプリケーションとファイルを共有できる仕組である。クレデンシャルは自アプリケーションが属する以外のOrganizationIDである、提供元ORGID、その提供元が許した提供先のIDを示す提供先アプリIDと提供先ORGID、共有するファイル郡が有効な有効期限、共有するファイル名、前記情報提供元の秘密鍵によりSignした署名、前記署名を復号する際に必要な公開鍵を含む利用証明書からなる。
アプリデータ関連付けモジュール19はS108で抽出したパーミッションファイルの中からクレデンシャルの要素が有か無かを確認する(S109)。クレデンシャルが無かった場合(S109:No)は、アプリ関連付け情報を更新せず、そのままアプリケーションを起動する(End)。
クレデンシャルが有りの場合(S109:Yes)はまず、署名に記載されている情報を利用証明書内の公開鍵を用いて復号し、署名より上の部分と一致しているかを検証し(S111)、検証結果を確認する(S112)。クレデンシャル検証が成功の失敗の場合(S111:No)は、アプリ関連付け情報を更新せず、そのままアプリケーションを起動する(End)。
クレデンシャル検証が成功の場合(S111:Yes)は、パーミッションファイルの提供先のアプリIDとOrganizationIDがアプリケーション起動要求で受け取ったアプリIDとOrganizationIDと一致しているかを比較する(S112)。一致していない場合(S112:No)は、アプリ関連付けを更新せず、そのままアプリケーションを起動する(End)。一致している場合(S112:Yes)は検証に成功したクレデンシャルの情報を元にアプリ関連付け情報を更新する(S113)。まず、パーミッションファイルの利用証明書のSHA−1ダイジェストの値を計算し、それに“/”の文字列を挟み、パーミッションファイルのファイル名情報を関連付ける。生成した情報はファイル情報管理テーブル1202のファイル名と比較を行い、一致した場合にその一致したファイルに対する対象フラグ1224が“Y”が設定される。以上が、アプリ起動時におけるアプリ関連付け処理の詳細である。
図16はクレデンシャルの検証が成功した場合のアプリ関連付け情報の一例を示す図である。図16で示されるとおり、1、2、5行目に加え、8行目がさらに移行対象となったことがわかる。
図10の処理が完了した後にはアプリケーション認証モジュール33がアプリケーションマネージャ32にアプリケーション認証成功の旨を通達し、アプリケーションマネージャはS101で発行した起動要求のあったアプリケーションを起動する。
起動したアプリケーションはローカルストレージ24のADA領域のBD−Jオブジェクトに記載されているアプリケーションが属するIDのディレクトリ以下の領域に、データの読み書きが可能となる。
次に、起動したアプリがファイルアクセスを行った場合のアプリ関連付け情報の処理を説明する。起動したアプリケーションはアプリデータ領域の属するOrganizationIDディレクトリとAppIDディレクトリにファイルを作成、及び存在するファイルの削除を行える。存在するファイルを削除した場合は連携して、アプリデータ関連付けモジュール19はファイル情報管理テーブル1202の関連するファイルの行を削除する。またファイルが新たに生成された場合はファイル情報管理テーブル1202に行が新たに追加され、対象フラグ1224は“Y”、ファイル名1225には作成したファイル名、作成者OrgID1226には自アプリ情報管理テーブル1211のOrgID1222の値、作成者AppID1227には自アプリ情報管理テーブル1212のAppID1223の値、権限情報1228には0が設定される。
さらに、権限情報1228はアプリケーションによって直接変更可能であり、権限情報変更APIが呼ばれた場合はその値が設定される。
起動中のアプリケーションは次にリムーバブルメディアへの保存データの書き出し要求を行う。アプリケーションがリムーバブルメディアへ書き出す対象として、他端末用に実行する同一コンテキストのアプリケーションそのものをコピーしてもよい。これは例えば図4に示すCopyディレクトリ配下にxletのJARファイルを配置し、書き出し要求があった際は前記JARファイルをリムーバブルメディアへとコピーする。また、前記コピー対象のアプリケーションのアプリケーション保存データを書き出すには機器のローカルストレージにあるアプリデータ領域とシステム領域のアプリ関連付け情報を利用する。
まず、リムーバブルメディアへの保存データの書き出し要求があった際にはアプリ関連付け情報のファイル情報管理テーブルを参照し、各ファイルに対し対象フラグ1224が“Y”になっているか否かを参照する。“Y”になっているファイル名と同一のファイルをアプリデータ領域から抽出し、リムーバブルメディアへとコピーを行う。
図17は書き出し要求の結果、アプリケーション及び関連する保存データがリムーバブルメディア500に移行した後の一例を示す図である。Root直下にxletにJARファイル形式でアプリケーションが保存されている。また、図16のファイル情報管理テーブル1202で“Y”と示されたファイルのみコピーされていることがわかる。
BD−ROM端末本体に保存されたデータから携帯端末へ移行するアプリケーションと関連付けられたデータのみを移行でき、結果として移行するデータ量が削減し、コピーにかかる時間が削減される効果がある。
尚、本実施の形態では、再生装置200以外の端末でデータを利用する方法も加えて提供する。
まず、図1を参照し、リモートの携帯端末600が再生装置200と同一データ保存領域形式を持っている場合である。その場合は携帯端末600がインポート機能を有する必要がある。前記インポートとはリムーバブルメディアのADAディレクトリ以下のファイル全てを携帯端末600のローカルストレージのアプリデータ領域の同一の場所にコピーすればよい。また、携帯端末600のBDファイルシステムモジュールにより、機器内のアプリデータ領域を参照せず、直接リムーバブルメディアのADAディレクトリを参照するようにしてもよい。
次に、再生装置200と同一データ保存領域形式を持っていない端末へのデータ移行方法を提供する。再生装置200と同一データ保存領域形式を持っていない端末へのデータ移行を行う場合は図11で示されるローカルストレージのシステム領域内にあるアプリ変換情報1202を用いる。
アプリ変換情報1202はあらかじめ、再生装置200が所有している情報で、各データ移行先の情報を持っている。図18はアプリ変換情報1202一例を示す図である。
図18で示されるとおり、アプリ変換情報はローカルストレージのシステム領域の一部である。アプリ関変換情報はユーザからのアプリ変換要求があった際にどの端末の情報を変換するかの対象かを示すアプリ変換対象フラグ1301と、変換先の端末の識別子1302と、変換先の端末の規格を示す端末タイプ1303と、変換先の端末の会社名1304と、変換先の端末の端末名1305と、アプリ保存情報を変換先へとマッピングする際に必要な変換パス1306からなる。
アプリ変換情報1202に示される各情報は端末にあらかじめ設定されていることを想定するが、外部メモリや、ネットワークを用いて変更、追加、削除するようにしてもよい。また、アプリ変換対象フラグ1301はユーザによりあらかじめ対象か非対象を変更できる。また変換パス1306は、マッピングする端末に必要な変換パス、つまり文字列としたが、文字列ではなく、リモートの携帯端末600へ変換を行う際に必要なロジック(コールバック)を登録しておくようにしてもよい。
上記で述べたアプリ変換情報は全て必要でない場合があるが、実装に応じて省くことも可能である。例えば、本実施の形態では変換先の端末の識別子1302と、変換先の端末の会社名1304と、変換先の端末の端末名1305は利用されない。
次に、再生装置200から、リモートの携帯端末600に保存データを移行する場合に、リモート端末先の保存領域にCertIDディレクトリがない、図19を用いて放送受信端末の場合の例を記載する。
起動中のBD−Jアプリケーションはリムーバブルメディアへの保存データの書き出し要求を行う(S301)。
保存データの書き出し要求を受けたアプリデータ関連付けモジュール19は、アプリ変換情報1202から変換先端末規格タイプ1305を抽出する(S302)。変換先端末規格タイプ1305が放送受信端末ではない場合は(S302:No)、他の端末用の変換処理を実施する(S307)。S302で変換先端末規格タイプ1305が放送受信端末である場合は(S302:Yes)、次にアプリデータ関連付けモジュール19は、ファイル情報管理テーブル1202の各行に対し、対象フラグ1224に”Y“が設定されているか否かを判別する(S303)。対象フラグ1224に”Y“が設定されていない行(S302:No)についてはなにも行わない(End)。一方、対象フラグ1224に”Y“が設定されていない行が存在すれば、アプリデータ関連付けモジュール19は、ファイル情報管理テーブル1202の”Y“となっている関連する行から、ファイル名1225を抽出する(S304)。
次に、アプリデータ関連付けモジュール19は、S304で取得したファイル名に対し、アプリ変換情報1202の変換パス1306に書いているロジックを実行する。変換先端末規格タイプ1305が放送受信端末である場合は、例えばロジックに次のS305,S306の処理を実行する。
まず、ファイル名1225に設定されている文字列を先頭からルートハッシュの文字列数+1を削除する(S305)。ファイル情報管理テーブル1202が図16の情報が入っていたとすると、最上段の行のファイル名は56789abc/4000/Scores.txtとなる。次に、ファイル名1225に設定されている文字列で示されるファイルを再生装置200のアプリデータ領域から抽出し、S305の文字列としてリムーバブルメディアへと保存する(S306)。
上記図19の処理により構成したリムーバブルメディアのデータを、リモートの携帯端末600にインポートすることにより、保存領域にCertIDディレクトリがない放送受信端末でも、アプリケーションの保存データが移行可能となる。
図20は、図16の情報を保存領域にCertIDディレクトリがない放送受信端末用に保存データをリムーバブルメディアに移行した場合のファイル構成を示す図である。図16と比べ、CertIDディレクトリがないことがわかる。
次に、再生装置200から、リモートの携帯端末600に保存データを移行する対象が、保存形式の全く異なる携帯電話の場合の例を図21を用いて記載する。
起動中のBD−Jアプリケーションはリムーバブルメディアへの保存データの書き出し要求を行う(S401)。
保存データの書き出し要求を受けたアプリデータ関連付けモジュール19は、アプリ変換情報1202から変換先端末規格タイプ1305を抽出する(S402)。変換先端末規格タイプ1305が携帯端末規格ではない場合は(S402:No)、他の端末用の変換処理を実施する(S408)。S402で変換先端末規格タイプ1305が携帯端末規格である場合は(S402:Yes)、次にアプリデータ関連付けモジュール19は、ファイル情報管理テーブル1202の各行に対し、対象フラグ1224に“Y”が設定されているか否かを判別する(S403)。対象フラグ1224に“Y”が設定されていない行(S402:No)についてはなにも行わない(End)。一方、対象フラグ1224に“Y”が設定されていない行が存在すれば、アプリデータ関連付けモジュール19は、ファイル情報管理テーブル1202の“Y”となっている関連する行から、ファイル名1225を抽出する(S404)。
次に、アプリデータ関連付けモジュール19は、S404で取得したファイル名と関連付けられたアプリ変換情報1202の変換パス1306に書いているロジックを実行する。変換先端末規格タイプ1305が携帯端末規格である場合は、例えばロジックに次のS405〜S407の処理を実行する。
まず、リモートの携帯端末600で実行されるコピー対象のアプリケーションをBDディスクから抽出する(S405)。コピー対象アプリケーションは例えば、図4に示すように、再生装置200が実行するアプリケーションの中に保存しているものであり、図のようにCopy/xxxxx.jarのようにあらかじめディスク上に配置しておく。
次に、アプリデータ関連付けモジュール19は、S405で抽出したJAR内にS404で示されるファイル名と対象のファイルを再生装置200のアプリデータ領域から抽出し、保存する(S406)。
最後に、S406で更新した携帯端末600用アプリケーションJARファイルそのものをリムーバブルメディアへと保存する(S407)。
上記図21の処理により構成した携帯端末600用アプリケーションJARファイルを携帯端末600で実行し、前記携帯端末600用アプリケーションでデータファイルを利用、あるいは端末内の保存領域にコピーすることにより、携帯規格端末でも、アプリケーションの保存データが移行可能となる。
また、以下に携帯端末600用アプリケーションJARファイルに保存データを埋め込む方法の他に、マウントパスを利用する方法を利用する方法も図22を用いて記載する。
起動中のBD−Jアプリケーションはリムーバブルメディアへの保存データの書き出し要求を行う(S501)。
保存データの書き出し要求を受けたアプリデータ関連付けモジュール19は、アプリ変換情報1202から変換先端末規格タイプ1305を抽出する(S502)。変換先端末規格タイプ1305が携帯端末規格ではない場合は(S502:No)、他の端末用の変換処理を実施する(S509)。S502で変換先端末規格タイプ1305が携帯端末規格である場合は(S502:Yes)、次にアプリデータ関連付けモジュール19は、ファイル情報管理テーブル1202の行に対し、対象フラグ1224に”Y“が設定されているか否かを判別する(S503)。対象フラグ1224に”Y“が設定されていない行(S502:No)についてはなにも行わない。一方、対象フラグ1224に”Y“が設定されていない行が存在すれば、アプリデータ関連付けモジュール19は、ファイル情報管理テーブル1202の”Y“となっている関連する行から、ファイル名1225を抽出する(S504)。
次に、アプリデータ関連付けモジュール19は、S504で取得したファイル名のファイルをコピー対象として保存しておく(S505)。もし、S505が2回目以降なら、S504で取得したデータはコピー対象データの尾に付加する(Appendする)。
次にアプリデータ関連付けモジュール19は、ファイル情報管理テーブル1202の次の行が存在するかを確認する(S506)。行が存在した場合は、S503へ移行する(S502:Yes)(S507)。行が存在しなかった場合はアプリデータ関連付けモジュール19は、ファイル名と関連するマウントパス1306をアプリ変換情報1202から取得し、アプリ保存データをマウントパス1306に書かれているファイル名でリムーバブルメディアに保存する(S508)。前記マウントパスは、携帯端末600のアプリケーションの保存データのデフォルトのアクセス先である。
上記図22の処理により保存されたデータを携帯端末600用にインポートすることにより、アプリケーションはデフォルトのアクセスポイントをアクセスすることで移行した保存データが利用できることになる。
なお、S505で保存データをつなげ合わせるときに、繋ぎ合わせる対象の区切りのデータサイズをメタ情報として保存対象ファイルに付け加えておいてもよい。
なお、S505は保存データをつなげ合わせるとしたが、一つのアーカイブファイルとしてアーカイブしてもよい。
尚、本実施の形態はアプリケーションに関連する情報のみを抽出してリムーバブルメディアへのコピーを行っていたが、リムーバブルメディアの容量が大量に有った場合、あるいはコピー速度は意識しない実装が有った場合は、アプリケーションに関連する情報のみではなく、ADAの情報を全てリモート端末600の形式に変換し、移行することも許される。
(変形例)
尚、本発明を上記の実施形態に基づいて説明してきたが、本発明は、上記の実施形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
本発明は、各実施形態で説明したフローチャートの処理手順が開示する関連付けを行う装置であるとしてもよい。また、前記処理手順でコンピュータを動作させるプログラムコードを含むコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラム又は前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなど、に記録したものとしてもよい。
また、本発明は、前記コンピュータプログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送するものとしてもよい。
また、前記コンピュータプログラム又は前記デジタル信号を前記記録媒体に記録して移送することにより、又は前記コンピュータプログラム又は前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
本発明は、上記実施の形態に記載のデータ管理装置を制御するLSIとしても実施可能である。機能ブロックは、個別に1チップ化されても良いし、一部または全てを含むように1チップ化されてもよい。
ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路または、汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロック及び部材の集積化を行ってもよい。このような技術には、バイオ技術の適用等が可能性としてありえる。
保存データの移行対象たる読み書き可能な記録媒体として、第1、第2実施形態では、記録媒体(例えばSDカードやコンパクトフラッシュ(登録商標)などの半導体メモリ)を用いたが、本発明の特徴は、記録媒体の物理的特性に依存するものではなく、本発明は、他の読み書き可能な記録媒体にも適用できる。例えば、外付けハードディスクなどにデータが記録された場合においても上述と同様の効果を奏することはもちろんのことである。
第1の実施形態では、BD−ROMを再生する再生機能を有する再生装置について説明したが、本発明は、再生機能のみを有するものではなく記録機能をも有する再生装置にも適用できることはもちろんのことである。
上記実施形態、及び上記変形例をそれぞれ組み合わせるとしてもよい。
本発明に係るアプリケーション、及びプログラム保存データ移行方法は、再生装置上のアプリケーションが保存したデータを他の端末で継続して利用する技術として有用であり、BD−ROMの再生機器等の装置に適用しうる。
本発明に係るデータ移行方法の使用形態を示す図 BD−ROMにおけるファイル・ディレクトリ構成を示す図 BD−Jオブジェクトの構成を示す図 Java(登録商標)アーカイブファイルに収められているプログラム、データを示す図 再生装置200におけるソフトウェアのレイヤモデルを示す図 再生装置200における2つのモードの動的な再生制御にて作成される映画作品を示す図 本実施の形態1に係る再生装置100の内部構成を示す図 ローカルストレージ24のアプリデータ領域のディレクトリ構成を示す図 本実施形態1におけるBD−Jモジュールの詳細な構成、及び関連モジュールの構成を示す図 本実施形態1に係る保存データ関連付け処理を伴うアプリケーション起動の流れを示すフローチャート ローカルストレージ24のシステム領域のアプリ関連付け情報の構成の一例を示す図 自アプリ情報管理テーブル1211の情報が埋め込まれ状態のアプリ関連付け情報の一例を示す図 アプリ対象付けの詳細な処理の流れを示すフローチャート アプリ起動が完了した時点でのローカルストレージ24のシステム領域のアプリ関連付け情報の一例を示す図 パーミッションファイル、およびクレデンシャルの詳細な構成の一例を示す図 クレデンシャルの処理結果を反映したローカルストレージ24のシステム領域のアプリ関連付け情報の一例を示す図 保存データ関連付け処理が完了した時点でのリムーバブルメディアのディレクトリ構成の一例を示す図 アプリ変換情報1202の構成の一例を示す図 アプリケーション保存データ領域にCertIDディレクトリがない放送規格端末へ保存データ移行を行う場合の詳細な処理の流れを示すフローチャート 図19で示す保存データ関連付け処理が完了した時点でのリムーバブルメディアのディレクトリ構成の一例を示す図 携帯電話規格端末へ保存データ移行を行う場合の詳細な処理の流れを示すフローチャート 携帯電話規格端末へ保存データ移行を行う場合の詳細な処理の流れを示すフローチャート
符号の説明
1 BD−ROMドライブ
2 トラックバッファ
3 デマルチプレクサ
4 ビデオデコーダ
5 ビデオプレーン
6 オーディオデコーダ
7 イメージメモリ
8 グラフィックデコーダ
9 グラフィックプレーン
10 加算器
11 静的シナリオメモリ
12 動的シナリオメモリ
13 制御部
14 HDMVモジュール
15 BD−Jモジュール
16 モード管理モジュール
17 ディスパッチャ
18 AV再生ライブラリ
19 アプリデータ関連付けモジュール
23 ネットワークインターフェース
24 ローカルストレージ
25 BDファイルシステム
26 リムーバブルメディア検知モジュール
27 リムーバブルメディア
30 アプリケーション
31 メディア再生モジュール
32 アプリケーションマネージャ
33 アプリケーション認証モジュール
34 ファイルI/Oモジュール
100 再生装置
200 再生装置
300 リモコン
400 テレビ
500 記憶媒体(リムーバブルメディア)
600 携帯端末
1201 アプリ関連付け情報
1202 アプリ変換情報
1211 自アプリ情報管理テーブル
1212 ファイル情報管理テーブル
1221 ルートハッシュ
1222 OrgID
1223 AppID
1224 対象フラグ
1225 ファイル名
1226 作成者OrgID
1227 作成者AppID
1228 権限
1301 対象
1302 端末識別子
1303 端末タイプ
1304 会社名
1305 端末名
1306 変換パス

Claims (7)

  1. 読み書き可能な記録媒体において、デジタル証明書に基づいて正当性が証明されたアプリケーションプログラム以外によるアクセスが制限され、アプリケーションプログラム毎にアクセスが許可されるディレクトリが異なる制限領域に、アプリケーションプログラムの実行により記録されたデータを移行する保存データ移行方法であって、
    再生装置の記憶領域に保存された様々なアプリケーションの保存データから、ディスク上のデータと記憶領域にあらかじめ設定されているアプリケーション関連付け情報、およびアプリケーション認証で計算されたデータを基に移行対象のアプリケーションと関連するアプリケーション保存データのみを抽出する工程と、
    前記抽出した保存データを外部の読み書き可能なリムーバブルメディアに書き込む工程と、
    保存データの移行対象の属性情報が記載されたアプリ変換情報を基に前記抽出した保存データを移行先のファイル形式に変換する工程と、
    前記変換した保存データを外部の読み書き可能なリムーバブルメディアに書き込む工程とを備えることを特徴とする保存データ移行方法。
  2. 前記アプリケーション保存データのみを抽出する工程で利用するアプリケーション関連付け情報としてアプリケーションによるファイル書き込み時に別途設定された保存データ作成者の識別子、及び権限を利用することを特徴とする請求項1の保存データ移行方法。
  3. 前記アプリケーション保存データのみを抽出する工程で利用するアプリケーション関連付け情報としてアプリケーション認証の際に利用するアプリケーションの権限が記載されるパーミッションファイルの共有情報の検証結果を利用することを特徴とする請求項1のアプリケーション及びプログラム保存データ移行方法。
  4. 前記保存データの移行対象の属性情報として、データ移行先がxlet放送規格端末と判定した場合、保存データの書き込む工程の際に、ファイル情報管理テーブルのファイル名からルート証明書のダイジェスト長の文字列分を削除したファイル名を用いてデータ移行を行うことを特徴とする請求項1の保存データ移行方法。
  5. 前記保存データの移行対象の属性情報として、データ移行先が携帯電話規格端末と判定した場合、保存データの書き込む工程の際に、移行対象の保存データファイル全てを移行対象のアプリケーションアーカイブに含めることを特徴とする請求項1のアプリケーション、及びプログラム保存データ移行方法。
  6. 前記保存データの移行対象の属性情報として、データ移行先が携帯電話規格端末と判定した場合、保存データの書き込む工程の際に、移行対象の保存データファイル全てを繋ぎ合わせ、移行対象の属性情報であるマウントパス情報を用いて変換したファイル名でデータ移行を行うことを特徴とする請求項1の保存データ移行方法。
  7. 前記保存データの移行対象の属性情報として、データ移行先が携帯電話規格端末と判定した場合、保存データの書き込む工程の際に、移行対象の保存データファイル全てをアーカイブし、移行対象の属性情報であるマウントパス情報を用いて変換したファイル名でデータ移行を行うことを特徴とする請求項1の保存データ移行方法。
JP2008168342A 2008-06-27 2008-06-27 保存データ移行方法 Pending JP2010005159A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008168342A JP2010005159A (ja) 2008-06-27 2008-06-27 保存データ移行方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008168342A JP2010005159A (ja) 2008-06-27 2008-06-27 保存データ移行方法

Publications (1)

Publication Number Publication Date
JP2010005159A true JP2010005159A (ja) 2010-01-14

Family

ID=41586324

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008168342A Pending JP2010005159A (ja) 2008-06-27 2008-06-27 保存データ移行方法

Country Status (1)

Country Link
JP (1) JP2010005159A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010095543A1 (ja) * 2009-02-18 2010-08-26 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム、並びに記録媒体
US9824718B2 (en) 2014-09-12 2017-11-21 Panasonic Intellectual Property Management Co., Ltd. Recording and playback device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010095543A1 (ja) * 2009-02-18 2010-08-26 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム、並びに記録媒体
JP2010191665A (ja) * 2009-02-18 2010-09-02 Sony Corp 情報処理装置、情報処理方法、およびプログラム、並びに記録媒体
US8918604B2 (en) 2009-02-18 2014-12-23 Sony Corporation Information processing apparatus, information processing method, program, and recording medium
US9824718B2 (en) 2014-09-12 2017-11-21 Panasonic Intellectual Property Management Co., Ltd. Recording and playback device

Similar Documents

Publication Publication Date Title
JP5006388B2 (ja) データ管理装置
JP5291211B2 (ja) 再生装置、再生方法
US8320735B2 (en) Reproducing apparatus
JP4862055B2 (ja) 再生装置及びプログラム
RU2516463C2 (ru) Устройство воспроизведения, записывающее устройство, способ воспроизведения и способ записи
US8559789B2 (en) Reproducing apparatus that uses continuous memory area
JP2007257047A (ja) 情報処理装置および情報処理方法、プログラム格納媒体、プログラム、データ構造、並びに、記録媒体の製造方法
TW201029466A (en) Reproduction device, recording medium, and integrated circuit
KR20070043801A (ko) 재생장치, 재생방법, 프로그램 및 컴퓨터 판독 가능한기록매체
US20110299830A1 (en) Application running device
KR20110069745A (ko) 재생장치
US20120002520A1 (en) Playback device, recording medium, playback method and program
JP2008519389A (ja) ローカルストレージを用いて記録媒体からデータを再生する方法及び再生装置
JP2006277389A (ja) 情報記録媒体およびその再生装置、再生方法。
JP2010005159A (ja) 保存データ移行方法
US20110038616A1 (en) Reproduction apparatus and method of controlling a reproduction apparatus
JP2007020211A (ja) 情報提供システム、再生装置および方法、情報提供装置および方法、記録媒体、並びにプログラム
WO2010001548A1 (ja) 記録装置、記録方法、再生装置、及び再生方法
JP2007018365A (ja) 宣言型言語で記述された再生制御環境の起動条件を考慮した情報記録媒体およびその再生装置、再生方法。
JP5166036B2 (ja) 再生装置、再生方法及び再生プログラム
KR20060046120A (ko) 로컬 스토리지를 이용한 기록매체 재생방법 및 재생장치