映像再生装置
【課題】映像上の任意の位置へシークすることができる映像再生装置において、ユーザの指示から画像の更新までに時間がかかるという課題がある。
【解決手段】映像再生装置500は、ユーザが表示させたい映像上のある地点の画像を指定する表示位置指定部501と、映像ファイル511のインデックス情報を解釈するインデックス解釈部502と、そのインデックス情報に基づいて、指定位置の画像を表示するためにデコードが必要な画像を決定するデコード画像決定部503と、映像ファイル511から順次映像データを取得してデコードするデコード部504と、インデックス情報に基づいて、指定位置の画像の前に表示する画像を決定する表示画像決定部507と、表示画像決定部507で決定した画像を表示する表示部508を備える。
【解決手段】映像再生装置500は、ユーザが表示させたい映像上のある地点の画像を指定する表示位置指定部501と、映像ファイル511のインデックス情報を解釈するインデックス解釈部502と、そのインデックス情報に基づいて、指定位置の画像を表示するためにデコードが必要な画像を決定するデコード画像決定部503と、映像ファイル511から順次映像データを取得してデコードするデコード部504と、インデックス情報に基づいて、指定位置の画像の前に表示する画像を決定する表示画像決定部507と、表示画像決定部507で決定した画像を表示する表示部508を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像を再生する映像再生装置に関する。
【背景技術】
【0002】
従来、放送局の番組制作は、カメラレコーダを用いてテープに映像を記録し、テープを用いて編集やアーカイブを行っていた。近年、HDDやフラッシュメモリなどランダムアクセス可能な記録媒体に映像を記録するカメラレコーダが登場してきている。それにより、カメラレコーダで映像データをファイル形式で記録し、そのファイルをノンリニア編集機で編集するというスタイルが確立されてきている。
【0003】
映像ファイルを記録媒体に記録する場合、容量の観点から映像信号を圧縮して記録することが一般的である。映像データの圧縮符号化方式の代表的な規格の1つとして、MPEG2(Moving Picture Experts Group 2)規格が知られている。MPEG映像データは、何フレームかのデータをまとめたGOP(Group of Picture)と呼ばれる単位で構成される。
【0004】
1つのGOPには、予め定められた所定数の原画像をそれぞれ圧縮符号化して生成される画像データが含まれる。各画像データは、原画像の圧縮符号化方式によって、3つのピクチャタイプ、Iピクチャ(Intra−coded picture)、Pピクチャ(Predictive−coded picture)およびBピクチャ(Bidirectionally predictive−coded picture)に分類される。
【0005】
Iピクチャは、イントラ符号化画像とも呼ばれ、原画像1枚の情報のみを用いて符号化される。したがって、Iピクチャは、前後の他の画像データピクチャとは独立性を保っており、Iピクチャ自身のみで復号することが可能である。
【0006】
Pピクチャは、フレーム間順方向予測符号化画像とも呼ばれ、予測画像(差分を取る基準となる画像)として、時間的に前の既に復号されたIピクチャまたはPピクチャを使用するものであり、動き補償された予測画像との差分を符号化するものである。
【0007】
Bピクチャは、双方向予測符号化画像とも呼ばれ、IピクチャおよびPピクチャを先に処理した後に、その間に挿入される画像として符号化される。すなわち、Bピクチャは、予測画像として、時間的に前の既に復号されたIピクチャまたはPピクチャ、時間的に後の既に復号されたIピクチャまたはPピクチャ、ならびにこの両方から作られた補間画像の3種類を使用する。
【0008】
ランダムアクセスメディアに記録されている映像を再生する映像再生装置には、映像上のある地点にマークをつけるという機能を有するものがある。この機能は、ユーザの指示によりマーク地点の画像を表示する(シークする)場合などに使用される。図1は、画像Aを表示している時点で、ユーザがマーク位置Mにシークするという指示を行ったときに表示される画像データを示している。この場合、AからMの間の画像は表示されず、Aの次にMが表される。
【0009】
マーク地点MがPピクチャまたはBピクチャの場合、予測画像としてIピクチャまたはPピクチャのデコードが必要になる。図1のような再生をシームレスに行うためには、1つの画像を表示している時間に複数の画像をデコードする能力がデコーダに要求される。デコーダが1ピクチャをデコードするのに表示時間と同じ時間かかる(1倍速デコードの)場合、ユーザが指示してからマーク位置の画像のデコードが終わるまでの間の数百ミリ秒間、画像Aが表示されたままで画像が更新されないことになる。この再生方法は、ユーザに違和感およびストレスを感じさせる。
【0010】
特許文献1では、映像データの出力を指示してから実際に画像が表示されるまでの間に、デコードした時点ですぐに表示しない再生画像を先行画像として抽出して、先行画像がデコードされてから映像として最初に表示すべき再生画像のデコードが完了するまでの間、抽出した先行画像にぼかしなどのエフェクトを施して表示することにより、違和感の少ない画像を表示する画像処理装置が提案されている。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開2007−201831号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
しかしながら、特許文献1では、先行画像は時間軸上後ろに表示されるIピクチャであり、時間軸上正しい順番で表示しているわけではない。特に、先行画像と表示画像の間にシーンの切れ目があったときには、ぼかすなどの処理を施しているとはいえ、違和感が出てしまうことは避けられない。
【0013】
上記課題に鑑み本発明は、ユーザから指定位置へのシーク指示があったときに、画像の更新までの時間を短縮して応答性をあげることで、違和感のない再生を行う機構を提供することを目的とする。
【課題を解決するための手段】
【0014】
本発明の映像再生装置は、映像ファイル中のある時点の画像を指定する表示位置指定部と、前記映像ファイルに関するインデックス情報を読み出すインデックス解釈部と、前記インデックス解釈部からの前記インデックス情報に基づいて、前記表示位置指定部で指定された画像を表示するためにデコードが必要な画像を決定するデコード画像決定部と、前記映像ファイルから映像データを読み込む映像読み込み部と、前記デコード画像決定部で決定した画像を、前記映像読み込み部から取得して順次デコードするデコード部と、前記デコード部でデコードした画像のうち、再生時の時間軸方向に応じて、表示する画像を決定する表示画像決定部と、前記表示画像決定部で決定した画像を表示する表示部と、を備える。
【発明の効果】
【0015】
上記の構成により、映像再生装置は、再生中に指定位置の画像にシークする場合に、その画像をデコードするために必要な画像を表示することで、ユーザの指示から画面が更新されるまでの時間を短縮し、応答性をあげることができ、ユーザの違和感、不快感を軽減することができる。
【図面の簡単な説明】
【0016】
【図1】マーク点に移動してから再生するときに表示される画像を示す図
【図2】MXFファイルフォーマットを示す図
【図3】MPEG映像の表示順と記録順を説明する図
【図4】MXFのインデックス情報を説明する図
【図5】実施の形態1における映像再生装置の構成を示すブロック図
【図6】MXFのインデックス情報に記録順を付加した図
【図7】実施の形態1における映像を再生する際のフローチャート
【図8】実施の形態1における正方向の再生時に表示される画像を示す図
【図9】実施の形態1における逆方向の再生時に表示される画像を示す図
【発明を実施するための形態】
【0017】
(実施の形態1)
フレームごとのランダムアクセスを実現するために、フレームごとのインデックス情報を映像データと同一のファイル内に配置できるようなファイルフォーマットが提案されている。そのひとつにMXF(Material Exchange Format、SMPTE 377M)がある。MXFとは主にプロユースのデジタル映像や音声を扱うためのファイルフォーマットである。本実施の形態では、映像ファイルのファイルフォーマットとしてMXFを例にとり、映像再生装置を説明する。
【0018】
MXFはKLV(Key−Length−Value)と呼ぶデータ要素の集まりで構成されており、メタデータ、映像データなど、すべてのデータがKLV構造をとっている。KLV構造とは、その先頭から、キー(Key)、レングス(Length)、バリュー(Value)が順次配置された構造であり、キーには、バリューに配置されるデータがどのようなデータであるかを表す、SMPTE 298Mの規格に準拠した16バイトのラベルが配置される。レングスには、バリューに配置されるデータのデータ長(8バイト)がBER(Basic Encoding Rules:ISO/IEC882−1 ASN)によって配置される。バリューには、実データが配置される。
【0019】
図2にMXFのファイルフォーマットを示す。先頭から、ファイルヘッダ(File Header)、ファイルボディ(File Body)、ファイルフッタ(File Footer)が順次配置されて構成される。
【0020】
ファイルヘッダは、その先頭から、ヘッダパーティションパック(Header Partition Pack)、およびヘッダメタデータ(Header Metadata)が順次配置されて構成される。ヘッダパーティションパックには、ヘッダを特定するためのパターンや、ファイルボディに配置されるデータの形式、MXFファイルフォーマットであることを表す情報およびヘッダサイズ情報などが配置される。
【0021】
ファイルボディは、ボディパーティションパック(Body Partition Pack)およびエッセンスコンテナ(Essence Container)が順次配置されて構成される。エッセンスコンテナには、画像データが配置されている。エッセンスコンテナもKLV構造であるため、キー、レングスの後にバリューとして画像データが配置される。
【0022】
ファイルフッタには、フッタパーティションパック(Footer Partition Pack)およびインデックステーブル(Index Table)が順次配置されて構成される。インデックステーブルには、画像データの位置を指し示すデータが格納されており、詳しくは図4にて後述する。
【0023】
図3(a)は各画像の表示順番を表している。数字の部分が表示の順番、アルファベット(I、B、P)がピクチャタイプを示しており、B1、B2、I3、B4、B5、P6、・・・の順番に表示されることを示している。図3(b)は図3(a)の映像がファイル上どのように格納されるかを示している。Bピクチャをデコードするためには、その予測画像であるIピクチャまたはPピクチャを事前にデコードしておく必要がある。そのため、ファイルの先頭から順次データを読み込んでデコードすることができるようにするために、表示の順番とは別の順番で画像を記録している。たとえば、B1はI3を用いてデコードされるため、I3、B1の順番でファイル上には記録される。よって、記録順としては、I3、B1、B2、P6、B4、B5、・・・となる。
【0024】
図4はMXFのインデックステーブルの詳細である。Temporal Offsetとは表示順から記録順への変換を表すものである。1フレーム目のフレームB1は、表示のフレーム番号1にTemporal Offsetの1を加算した2フレーム目のデータとしてファイルに格納されていることがわかる。同様にI3は、表示のフレーム番号3にTemporal Offsetの−2を加算した1フレーム目のデータとしてファイルに格納されていることがわかる。Key−Frame Offsetとは当該フレームをデコードするためにどのフレームからデコードする必要があるかを示す情報であり、通常Iピクチャを参照している。たとえば、B4をデコードするためには、表示のフレーム番号4からKey−Frame Offsetの−1を加算した3番目のフレーム(I3)からデコードする必要があることを示している。Flagsとは先述のピクチャタイプである。Stream Offsetはファイル上のどの位置にフレームが格納されているかを表す情報である。この情報は記録順フレーム番号に基づいて記録されている。たとえば、B4が格納されているバイトオフセットを求める場合、表示順のフレーム番号4にTemporal Offsetの1を加算した記録のフレーム番号として5を求め、5フレーム目のStream Offsetからバイトオフセット68,000バイトを求める。
【0025】
本実施の形態の映像再生装置500の構成を図5に示す。表示位置指定部501には、表示させたい映像上のある時点(図1のマーク点Mなど)がユーザにより入力される。インデックス解釈部502は、記録媒体510に記録されている映像ファイル511からインデックス情報を読み込み、図4に示すようなインデックステーブルを作成する。デコード画像決定部503は、表示位置指定部501で指定された画像を表示するために、インデックス解釈部502で解釈したインデックス情報に基づいて、デコードする画像を決定する。映像読み込み部506は、映像ファイル511から圧縮データを読み込む。デコード部504は、デコード画像決定部503でデコードすることが決定した画像を順次映像読み込み部506から取得後デコードし、非圧縮データをフレームメモリ505に格納する。表示画像決定部507は、インデックス解釈部502で解釈したインデックス情報に基づいて、デコード部504でデコードした画像のうちどの画像を表示位置指定部501で指定された画像の前に表示するかを決定する。表示部508は、表示画像決定部507で表示することが決定した画像を、デコード部504でデコードした非圧縮データが格納されているフレームメモリ505から読み込み、一定間隔で(NTSCの場合1秒間に30回)モニタに表示する。
【0026】
表示位置指定部501に図3のB16が指定された場合を例に取り、処理の流れを図7のフローチャートで説明する。表示位置指定部501で16フレーム目が指定されると、インデックス解釈部502は、インデックス読み込み処理S71にて、図4に示すインデックス情報を図2で示すMXF形式の映像ファイル511のインデックステーブルから取得する。
【0027】
デコード画像決定部503は、キーフレーム算出処理S72にて、フレーム番号16にKey−Frame Offsetの−13を加算して、キーフレームが3フレーム目であることを求める。デコード画像決定部503は、記録順算出処理S73にて、フレーム番号にTemporal Offsetを加算し、図6の記録順のフレーム番号を求める。図6より、キーフレームは記録順で1番目、16フレーム目は記録順で17番目であることがわかる。デコード画像決定部503は、デコード画像算出処理S74にて、キーフレームの記録順である1番目から、16フレーム目の記録順である17番目までのピクチャに存在するIまたはPピクチャを抜き出す。図6より、記録順で1、4、7、10、13、16番目がIまたはPピクチャであることがわかるので、それに相当するI3、P6、P9、P12、P15、I18がデコードに必要なピクチャと判断される。デコード画像決定部503は、表示画像候補算出処理S75にて、デコード画像算出処理S74でデコードが必要と判断した画像のうち、B16より時間軸上前に表示される画像であるI3、P6、P9、P12、P15を表示候補とする。
【0028】
デコード部504は、デコード処理S76にて、デコード画像算出処理S74でデコードが必要と判断した画像I3、P6、P9、P12、P15、I18、B16を順次デコードし、結果をフレームメモリ505に格納する。I3は記録順では1番目であるので、1番目のStream Offsetの0バイトから、2番目のStream Offsetの50,000バイトまでの50,000バイトのデータをファイルから読み込み、デコードを行った後、非圧縮のI3画像をフレームメモリ505に格納する。P6は記録順では4番目であるので、4番目のStream Offsetの56,000バイトから、5番目のStream Offsetの68,000バイトまでの12,000バイトのデータをファイルから読み込み、フレームメモリ505に格納されているI3のデータを用いてデコードし、非圧縮のP6画像をフレームメモリ505に格納する。P9、P12、P15、I18にも同様の処理を行う。B16は記録順では17番目であるので、17番目のStream Offsetの180,000バイトから、18番目のStream Offsetの183,000バイトまでの3,000バイトのデータをファイルから読み込み、フレームメモリ505に格納されているP15およびI18を用いてデコードし、非圧縮のB16画像をフレームメモリ505に格納する。
【0029】
表示部508は、表示処理S77にて、一定間隔(NTSCの場合1/30秒に1回)でフレームメモリ505から表示画像候補算出処理S75で表示候補とした非圧縮データを取り出し、モニタに出力する。
【0030】
デコード処理S76が1倍速デコードの場合を図8(a)に示す。デコード部504は、デコード処理S76にて、I3、P6、P9、P12、P15、I18、B16を1フレーム時間(NTSCの場合1/30秒)に1回フレームメモリ505に格納する。表示部508は、表示処理S77にて、1フレーム時間に1回フレームメモリを参照してI3、P6、P9、P12、P15、B16の順に画像を表示する。デコード画像決定部503は、表示画像候補算出処理S75にてB16より時間軸上後ろの画像であるI18を表示候補からはずしているので、P15が2フレーム分表示される。これにより、B16を表示する前の6フレーム時間の間に、I3、P6、P9、P12、P15を表示するため、画像の更新が頻繁になりユーザに対する違和感を取り除くことができるようになる。
【0031】
デコード処理S76が2倍速デコードの場合を図8(b)に示す。デコード部504は、デコード処理S76にて、I3、P6、P9、P12、P15、I18、B16を1フレーム時間に2回フレームメモリ505に格納する。表示部508は、表示処理S77にて、1フレーム時間に1回フレームメモリを参照してI3、P9、P15、B16の順に画像表示する。デコードが速い場合、表示部508は、表示処理S77で指定画像のB16のデコード完了後すぐに表示するようにするために、表示画像候補算出処理S75で表示候補とした画像すべてを表示しない。これにより映像再生装置500は指定画像の表示までの時間を短縮している。
【0032】
以上のように、映像再生装置500は、表示位置指定部501で指定された画像を表示するためにデコーダが必要な画像をあらかじめデコードしてフレームメモリ505に格納し、順方向に再生する場合にフレームメモリ505から指定された画像より時間軸上で前にある画像を選択して表示することにより、ユーザの指示から画面が更新されるまでの時間を短縮し、応答性をあげることができ、ユーザの違和感、不快感を軽減することができる。
【0033】
さらに、映像再生装置500は、デコード部504のデコード速度に応じて、表示する映像を抽出することにより、指定画像の表示までの時間を短縮することができる。
【0034】
−1倍で逆再生のときの例を図9に示す。逆再生では、前方の画像を表示すると違和感のある再生になってしまうので、デコード画像決定部503は、表示画像候補算出処理S75にて、後方の画像I8を出力すると判断する。よって、B16の前には、I18のみが表示されることになる。これにより逆再生においても違和感のない再生を行うことができる。
【産業上の利用可能性】
【0035】
本実施の形態にかかる映像再生装置は、ユーザの指示から画面が更新されるまでの時間を短縮し、応答性をあげることができ、ユーザの違和感、不快感を軽減することができ、映像を取り扱う業務用または民生用の種々な装置に適用することができ、有用である。
【符号の説明】
【0036】
500 映像再生装置
501 表示位置指定部
502 インデックス解釈部
503 デコード画像決定部
504 デコード部
505 フレームメモリ
506 映像読み込み部
507 表示画像決定部
508 表示部
510 記録媒体
511 映像ファイル
【技術分野】
【0001】
本発明は、映像を再生する映像再生装置に関する。
【背景技術】
【0002】
従来、放送局の番組制作は、カメラレコーダを用いてテープに映像を記録し、テープを用いて編集やアーカイブを行っていた。近年、HDDやフラッシュメモリなどランダムアクセス可能な記録媒体に映像を記録するカメラレコーダが登場してきている。それにより、カメラレコーダで映像データをファイル形式で記録し、そのファイルをノンリニア編集機で編集するというスタイルが確立されてきている。
【0003】
映像ファイルを記録媒体に記録する場合、容量の観点から映像信号を圧縮して記録することが一般的である。映像データの圧縮符号化方式の代表的な規格の1つとして、MPEG2(Moving Picture Experts Group 2)規格が知られている。MPEG映像データは、何フレームかのデータをまとめたGOP(Group of Picture)と呼ばれる単位で構成される。
【0004】
1つのGOPには、予め定められた所定数の原画像をそれぞれ圧縮符号化して生成される画像データが含まれる。各画像データは、原画像の圧縮符号化方式によって、3つのピクチャタイプ、Iピクチャ(Intra−coded picture)、Pピクチャ(Predictive−coded picture)およびBピクチャ(Bidirectionally predictive−coded picture)に分類される。
【0005】
Iピクチャは、イントラ符号化画像とも呼ばれ、原画像1枚の情報のみを用いて符号化される。したがって、Iピクチャは、前後の他の画像データピクチャとは独立性を保っており、Iピクチャ自身のみで復号することが可能である。
【0006】
Pピクチャは、フレーム間順方向予測符号化画像とも呼ばれ、予測画像(差分を取る基準となる画像)として、時間的に前の既に復号されたIピクチャまたはPピクチャを使用するものであり、動き補償された予測画像との差分を符号化するものである。
【0007】
Bピクチャは、双方向予測符号化画像とも呼ばれ、IピクチャおよびPピクチャを先に処理した後に、その間に挿入される画像として符号化される。すなわち、Bピクチャは、予測画像として、時間的に前の既に復号されたIピクチャまたはPピクチャ、時間的に後の既に復号されたIピクチャまたはPピクチャ、ならびにこの両方から作られた補間画像の3種類を使用する。
【0008】
ランダムアクセスメディアに記録されている映像を再生する映像再生装置には、映像上のある地点にマークをつけるという機能を有するものがある。この機能は、ユーザの指示によりマーク地点の画像を表示する(シークする)場合などに使用される。図1は、画像Aを表示している時点で、ユーザがマーク位置Mにシークするという指示を行ったときに表示される画像データを示している。この場合、AからMの間の画像は表示されず、Aの次にMが表される。
【0009】
マーク地点MがPピクチャまたはBピクチャの場合、予測画像としてIピクチャまたはPピクチャのデコードが必要になる。図1のような再生をシームレスに行うためには、1つの画像を表示している時間に複数の画像をデコードする能力がデコーダに要求される。デコーダが1ピクチャをデコードするのに表示時間と同じ時間かかる(1倍速デコードの)場合、ユーザが指示してからマーク位置の画像のデコードが終わるまでの間の数百ミリ秒間、画像Aが表示されたままで画像が更新されないことになる。この再生方法は、ユーザに違和感およびストレスを感じさせる。
【0010】
特許文献1では、映像データの出力を指示してから実際に画像が表示されるまでの間に、デコードした時点ですぐに表示しない再生画像を先行画像として抽出して、先行画像がデコードされてから映像として最初に表示すべき再生画像のデコードが完了するまでの間、抽出した先行画像にぼかしなどのエフェクトを施して表示することにより、違和感の少ない画像を表示する画像処理装置が提案されている。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開2007−201831号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
しかしながら、特許文献1では、先行画像は時間軸上後ろに表示されるIピクチャであり、時間軸上正しい順番で表示しているわけではない。特に、先行画像と表示画像の間にシーンの切れ目があったときには、ぼかすなどの処理を施しているとはいえ、違和感が出てしまうことは避けられない。
【0013】
上記課題に鑑み本発明は、ユーザから指定位置へのシーク指示があったときに、画像の更新までの時間を短縮して応答性をあげることで、違和感のない再生を行う機構を提供することを目的とする。
【課題を解決するための手段】
【0014】
本発明の映像再生装置は、映像ファイル中のある時点の画像を指定する表示位置指定部と、前記映像ファイルに関するインデックス情報を読み出すインデックス解釈部と、前記インデックス解釈部からの前記インデックス情報に基づいて、前記表示位置指定部で指定された画像を表示するためにデコードが必要な画像を決定するデコード画像決定部と、前記映像ファイルから映像データを読み込む映像読み込み部と、前記デコード画像決定部で決定した画像を、前記映像読み込み部から取得して順次デコードするデコード部と、前記デコード部でデコードした画像のうち、再生時の時間軸方向に応じて、表示する画像を決定する表示画像決定部と、前記表示画像決定部で決定した画像を表示する表示部と、を備える。
【発明の効果】
【0015】
上記の構成により、映像再生装置は、再生中に指定位置の画像にシークする場合に、その画像をデコードするために必要な画像を表示することで、ユーザの指示から画面が更新されるまでの時間を短縮し、応答性をあげることができ、ユーザの違和感、不快感を軽減することができる。
【図面の簡単な説明】
【0016】
【図1】マーク点に移動してから再生するときに表示される画像を示す図
【図2】MXFファイルフォーマットを示す図
【図3】MPEG映像の表示順と記録順を説明する図
【図4】MXFのインデックス情報を説明する図
【図5】実施の形態1における映像再生装置の構成を示すブロック図
【図6】MXFのインデックス情報に記録順を付加した図
【図7】実施の形態1における映像を再生する際のフローチャート
【図8】実施の形態1における正方向の再生時に表示される画像を示す図
【図9】実施の形態1における逆方向の再生時に表示される画像を示す図
【発明を実施するための形態】
【0017】
(実施の形態1)
フレームごとのランダムアクセスを実現するために、フレームごとのインデックス情報を映像データと同一のファイル内に配置できるようなファイルフォーマットが提案されている。そのひとつにMXF(Material Exchange Format、SMPTE 377M)がある。MXFとは主にプロユースのデジタル映像や音声を扱うためのファイルフォーマットである。本実施の形態では、映像ファイルのファイルフォーマットとしてMXFを例にとり、映像再生装置を説明する。
【0018】
MXFはKLV(Key−Length−Value)と呼ぶデータ要素の集まりで構成されており、メタデータ、映像データなど、すべてのデータがKLV構造をとっている。KLV構造とは、その先頭から、キー(Key)、レングス(Length)、バリュー(Value)が順次配置された構造であり、キーには、バリューに配置されるデータがどのようなデータであるかを表す、SMPTE 298Mの規格に準拠した16バイトのラベルが配置される。レングスには、バリューに配置されるデータのデータ長(8バイト)がBER(Basic Encoding Rules:ISO/IEC882−1 ASN)によって配置される。バリューには、実データが配置される。
【0019】
図2にMXFのファイルフォーマットを示す。先頭から、ファイルヘッダ(File Header)、ファイルボディ(File Body)、ファイルフッタ(File Footer)が順次配置されて構成される。
【0020】
ファイルヘッダは、その先頭から、ヘッダパーティションパック(Header Partition Pack)、およびヘッダメタデータ(Header Metadata)が順次配置されて構成される。ヘッダパーティションパックには、ヘッダを特定するためのパターンや、ファイルボディに配置されるデータの形式、MXFファイルフォーマットであることを表す情報およびヘッダサイズ情報などが配置される。
【0021】
ファイルボディは、ボディパーティションパック(Body Partition Pack)およびエッセンスコンテナ(Essence Container)が順次配置されて構成される。エッセンスコンテナには、画像データが配置されている。エッセンスコンテナもKLV構造であるため、キー、レングスの後にバリューとして画像データが配置される。
【0022】
ファイルフッタには、フッタパーティションパック(Footer Partition Pack)およびインデックステーブル(Index Table)が順次配置されて構成される。インデックステーブルには、画像データの位置を指し示すデータが格納されており、詳しくは図4にて後述する。
【0023】
図3(a)は各画像の表示順番を表している。数字の部分が表示の順番、アルファベット(I、B、P)がピクチャタイプを示しており、B1、B2、I3、B4、B5、P6、・・・の順番に表示されることを示している。図3(b)は図3(a)の映像がファイル上どのように格納されるかを示している。Bピクチャをデコードするためには、その予測画像であるIピクチャまたはPピクチャを事前にデコードしておく必要がある。そのため、ファイルの先頭から順次データを読み込んでデコードすることができるようにするために、表示の順番とは別の順番で画像を記録している。たとえば、B1はI3を用いてデコードされるため、I3、B1の順番でファイル上には記録される。よって、記録順としては、I3、B1、B2、P6、B4、B5、・・・となる。
【0024】
図4はMXFのインデックステーブルの詳細である。Temporal Offsetとは表示順から記録順への変換を表すものである。1フレーム目のフレームB1は、表示のフレーム番号1にTemporal Offsetの1を加算した2フレーム目のデータとしてファイルに格納されていることがわかる。同様にI3は、表示のフレーム番号3にTemporal Offsetの−2を加算した1フレーム目のデータとしてファイルに格納されていることがわかる。Key−Frame Offsetとは当該フレームをデコードするためにどのフレームからデコードする必要があるかを示す情報であり、通常Iピクチャを参照している。たとえば、B4をデコードするためには、表示のフレーム番号4からKey−Frame Offsetの−1を加算した3番目のフレーム(I3)からデコードする必要があることを示している。Flagsとは先述のピクチャタイプである。Stream Offsetはファイル上のどの位置にフレームが格納されているかを表す情報である。この情報は記録順フレーム番号に基づいて記録されている。たとえば、B4が格納されているバイトオフセットを求める場合、表示順のフレーム番号4にTemporal Offsetの1を加算した記録のフレーム番号として5を求め、5フレーム目のStream Offsetからバイトオフセット68,000バイトを求める。
【0025】
本実施の形態の映像再生装置500の構成を図5に示す。表示位置指定部501には、表示させたい映像上のある時点(図1のマーク点Mなど)がユーザにより入力される。インデックス解釈部502は、記録媒体510に記録されている映像ファイル511からインデックス情報を読み込み、図4に示すようなインデックステーブルを作成する。デコード画像決定部503は、表示位置指定部501で指定された画像を表示するために、インデックス解釈部502で解釈したインデックス情報に基づいて、デコードする画像を決定する。映像読み込み部506は、映像ファイル511から圧縮データを読み込む。デコード部504は、デコード画像決定部503でデコードすることが決定した画像を順次映像読み込み部506から取得後デコードし、非圧縮データをフレームメモリ505に格納する。表示画像決定部507は、インデックス解釈部502で解釈したインデックス情報に基づいて、デコード部504でデコードした画像のうちどの画像を表示位置指定部501で指定された画像の前に表示するかを決定する。表示部508は、表示画像決定部507で表示することが決定した画像を、デコード部504でデコードした非圧縮データが格納されているフレームメモリ505から読み込み、一定間隔で(NTSCの場合1秒間に30回)モニタに表示する。
【0026】
表示位置指定部501に図3のB16が指定された場合を例に取り、処理の流れを図7のフローチャートで説明する。表示位置指定部501で16フレーム目が指定されると、インデックス解釈部502は、インデックス読み込み処理S71にて、図4に示すインデックス情報を図2で示すMXF形式の映像ファイル511のインデックステーブルから取得する。
【0027】
デコード画像決定部503は、キーフレーム算出処理S72にて、フレーム番号16にKey−Frame Offsetの−13を加算して、キーフレームが3フレーム目であることを求める。デコード画像決定部503は、記録順算出処理S73にて、フレーム番号にTemporal Offsetを加算し、図6の記録順のフレーム番号を求める。図6より、キーフレームは記録順で1番目、16フレーム目は記録順で17番目であることがわかる。デコード画像決定部503は、デコード画像算出処理S74にて、キーフレームの記録順である1番目から、16フレーム目の記録順である17番目までのピクチャに存在するIまたはPピクチャを抜き出す。図6より、記録順で1、4、7、10、13、16番目がIまたはPピクチャであることがわかるので、それに相当するI3、P6、P9、P12、P15、I18がデコードに必要なピクチャと判断される。デコード画像決定部503は、表示画像候補算出処理S75にて、デコード画像算出処理S74でデコードが必要と判断した画像のうち、B16より時間軸上前に表示される画像であるI3、P6、P9、P12、P15を表示候補とする。
【0028】
デコード部504は、デコード処理S76にて、デコード画像算出処理S74でデコードが必要と判断した画像I3、P6、P9、P12、P15、I18、B16を順次デコードし、結果をフレームメモリ505に格納する。I3は記録順では1番目であるので、1番目のStream Offsetの0バイトから、2番目のStream Offsetの50,000バイトまでの50,000バイトのデータをファイルから読み込み、デコードを行った後、非圧縮のI3画像をフレームメモリ505に格納する。P6は記録順では4番目であるので、4番目のStream Offsetの56,000バイトから、5番目のStream Offsetの68,000バイトまでの12,000バイトのデータをファイルから読み込み、フレームメモリ505に格納されているI3のデータを用いてデコードし、非圧縮のP6画像をフレームメモリ505に格納する。P9、P12、P15、I18にも同様の処理を行う。B16は記録順では17番目であるので、17番目のStream Offsetの180,000バイトから、18番目のStream Offsetの183,000バイトまでの3,000バイトのデータをファイルから読み込み、フレームメモリ505に格納されているP15およびI18を用いてデコードし、非圧縮のB16画像をフレームメモリ505に格納する。
【0029】
表示部508は、表示処理S77にて、一定間隔(NTSCの場合1/30秒に1回)でフレームメモリ505から表示画像候補算出処理S75で表示候補とした非圧縮データを取り出し、モニタに出力する。
【0030】
デコード処理S76が1倍速デコードの場合を図8(a)に示す。デコード部504は、デコード処理S76にて、I3、P6、P9、P12、P15、I18、B16を1フレーム時間(NTSCの場合1/30秒)に1回フレームメモリ505に格納する。表示部508は、表示処理S77にて、1フレーム時間に1回フレームメモリを参照してI3、P6、P9、P12、P15、B16の順に画像を表示する。デコード画像決定部503は、表示画像候補算出処理S75にてB16より時間軸上後ろの画像であるI18を表示候補からはずしているので、P15が2フレーム分表示される。これにより、B16を表示する前の6フレーム時間の間に、I3、P6、P9、P12、P15を表示するため、画像の更新が頻繁になりユーザに対する違和感を取り除くことができるようになる。
【0031】
デコード処理S76が2倍速デコードの場合を図8(b)に示す。デコード部504は、デコード処理S76にて、I3、P6、P9、P12、P15、I18、B16を1フレーム時間に2回フレームメモリ505に格納する。表示部508は、表示処理S77にて、1フレーム時間に1回フレームメモリを参照してI3、P9、P15、B16の順に画像表示する。デコードが速い場合、表示部508は、表示処理S77で指定画像のB16のデコード完了後すぐに表示するようにするために、表示画像候補算出処理S75で表示候補とした画像すべてを表示しない。これにより映像再生装置500は指定画像の表示までの時間を短縮している。
【0032】
以上のように、映像再生装置500は、表示位置指定部501で指定された画像を表示するためにデコーダが必要な画像をあらかじめデコードしてフレームメモリ505に格納し、順方向に再生する場合にフレームメモリ505から指定された画像より時間軸上で前にある画像を選択して表示することにより、ユーザの指示から画面が更新されるまでの時間を短縮し、応答性をあげることができ、ユーザの違和感、不快感を軽減することができる。
【0033】
さらに、映像再生装置500は、デコード部504のデコード速度に応じて、表示する映像を抽出することにより、指定画像の表示までの時間を短縮することができる。
【0034】
−1倍で逆再生のときの例を図9に示す。逆再生では、前方の画像を表示すると違和感のある再生になってしまうので、デコード画像決定部503は、表示画像候補算出処理S75にて、後方の画像I8を出力すると判断する。よって、B16の前には、I18のみが表示されることになる。これにより逆再生においても違和感のない再生を行うことができる。
【産業上の利用可能性】
【0035】
本実施の形態にかかる映像再生装置は、ユーザの指示から画面が更新されるまでの時間を短縮し、応答性をあげることができ、ユーザの違和感、不快感を軽減することができ、映像を取り扱う業務用または民生用の種々な装置に適用することができ、有用である。
【符号の説明】
【0036】
500 映像再生装置
501 表示位置指定部
502 インデックス解釈部
503 デコード画像決定部
504 デコード部
505 フレームメモリ
506 映像読み込み部
507 表示画像決定部
508 表示部
510 記録媒体
511 映像ファイル
【特許請求の範囲】
【請求項1】
映像ファイル中のある時点の画像を指定する表示位置指定部と、
前記映像ファイルに関するインデックス情報を読み出すインデックス解釈部と、
前記インデックス解釈部からの前記インデックス情報に基づいて、前記表示位置指定部で指定された画像を表示するためにデコードが必要な画像を決定するデコード画像決定部と、
前記映像ファイルから映像データを読み込む映像読み込み部と、
前記デコード画像決定部で決定した画像を、前記映像読み込み部から取得して順次デコードするデコード部と、
前記デコード部でデコードした画像のうち、再生時の時間軸方向に応じて、表示する画像を決定する表示画像決定部と、
前記表示画像決定部で決定した画像を表示する表示部と、
を具備する映像再生装置。
【請求項2】
前記表示画像決定部は、
順方向に映像を再生する場合に、前記表示位置指定部で指定された画像より時間軸上で前にある画像を表示する画像に決定する
請求項1記載の映像再生装置。
【請求項3】
前記表示画像決定部は、
逆方向に映像を再生する場合に、前記表示位置指定部で指定された画像より時間軸上で後ろにある画像を表示する画像に決定する
請求項1記載の映像再生装置。
【請求項4】
前記表示画像決定部は、
前記デコード部のデコード時の速度に応じて、表示する画像を抽出する
請求項2または3に記載の映像再生装置。
【請求項1】
映像ファイル中のある時点の画像を指定する表示位置指定部と、
前記映像ファイルに関するインデックス情報を読み出すインデックス解釈部と、
前記インデックス解釈部からの前記インデックス情報に基づいて、前記表示位置指定部で指定された画像を表示するためにデコードが必要な画像を決定するデコード画像決定部と、
前記映像ファイルから映像データを読み込む映像読み込み部と、
前記デコード画像決定部で決定した画像を、前記映像読み込み部から取得して順次デコードするデコード部と、
前記デコード部でデコードした画像のうち、再生時の時間軸方向に応じて、表示する画像を決定する表示画像決定部と、
前記表示画像決定部で決定した画像を表示する表示部と、
を具備する映像再生装置。
【請求項2】
前記表示画像決定部は、
順方向に映像を再生する場合に、前記表示位置指定部で指定された画像より時間軸上で前にある画像を表示する画像に決定する
請求項1記載の映像再生装置。
【請求項3】
前記表示画像決定部は、
逆方向に映像を再生する場合に、前記表示位置指定部で指定された画像より時間軸上で後ろにある画像を表示する画像に決定する
請求項1記載の映像再生装置。
【請求項4】
前記表示画像決定部は、
前記デコード部のデコード時の速度に応じて、表示する画像を抽出する
請求項2または3に記載の映像再生装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【公開番号】特開2011−234069(P2011−234069A)
【公開日】平成23年11月17日(2011.11.17)
【国際特許分類】
【出願番号】特願2010−101735(P2010−101735)
【出願日】平成22年4月27日(2010.4.27)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】
【公開日】平成23年11月17日(2011.11.17)
【国際特許分類】
【出願日】平成22年4月27日(2010.4.27)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】
[ Back to top ]