請求項1に記載のストリーム比較装置において、前記ストリーム変更抽出部は、編集前後のストリームを先頭及び末尾から順に比較して、ストリームが不一致の先頭側から最初の編集ユニットと末尾側から最初の編集ユニットを検出し、両者の間をストリームが不一致となる領域として抽出することを特徴とする、ストリーム比較装置。
【背景技術】
【0002】
放送番組等のコンテンツは、複数のコンテンツ素材(映像、音声など)を編集し、さらに必要な文字データ・音声データ等を重ね合わせるなどの作業を経て制作される。コンテンツは、実際に送出されるまでに、編集や書き換えが繰り返される場合もある。
【0003】
放送局などでは、制作済みコンテンツを送出する前に、コンテンツの映像や音声にデータの破損や編集ミスがないか確認するために、コンテンツを人間が視聴する試写確認(単に「試写」とも呼ばれる。)が行われている。試写確認が済んだコンテンツに対して再編集等で書き換えが行われた場合は、書き換えが行われた部分の試写確認を再度行う必要がある。
【0004】
従来、コンテンツは映像のフレーム単位で編集を行っており、コンテンツの書き換えもフレームのまとまりを差し替えるだけであるため、書き換えられた部分の特定は容易であり、再編集後にはその部分のみ再度の試写確認をすることが行われていた。
【0005】
近年では、映像をフレーム単位ではなく、比較的大きな画像の単位で管理することも行われており、例えば、GOP(Group Of Picture)などの単位で編集や書き換えを行うことも試みられている。また、これらコンテンツを管理するために、コンテンツのデータに対してメタデータを使用することが行われている(特許文献1、非特許文献1)。
【発明の概要】
【発明が解決しようとする課題】
【0008】
コンテンツは映像や音声から構成され、特に映像は圧縮されたストリームとして保存される。ストリームの編集・管理は、映像や音声などのコンテンツの種類によらないため、本明細書では、その種類を問わずコンテンツが圧縮・符号化されたデータを、単にストリームと呼ぶこととする。
【0009】
一般に、制作済みコンテンツはランダムアクセス性を増すために、編集ユニット(編集可能な単位)のストリーム上での位置を示す情報をメタデータとして含んでいる。例えば、MXF(Material eXchange Format)規格(非特許文献1)では、Edit Unitと呼ばれる編集ユニットまでのバイトオフセット(位置)とEdit Unitのバイト数(サイズ)が、Index Tableと呼ばれるメタデータに記述されている。本明細書では、編集ユニットの位置(さらに、サイズを含んでもよい)を示すメタデータを「インデックス」と呼ぶこととする。
【0010】
このようなコンテンツについて、ストリームを部分編集した場合について説明する。図7は、再編集を行った場合の、編集前後のストリームとメタデータを比較したイメージ図である。図7の上段は、編集前ストリーム(u0〜u7)と編集前メタデータ(m0〜m7)であり、下段は、編集後ストリームと編集後メタデータ(書き換えデータにダッシュを付加)である。なお、メタデータとストリームは、一体化された一連のデータとして構成されていてもよい。ストリームの各ブロックは、フレームやGOPなどの編集可能な単位(編集ユニット)を示しており、メタデータは、対応する編集ユニットの位置を示すインデックスを含んでいる。編集前ストリームを制作済みコンテンツとし、再編集によって書き換えられた部分を、下段においてハッチングで囲んで示す。図7は、再編集により2番目から4番目の編集ユニット(u1〜u3)が書き換えられた例を示している。この場合、ストリームに変更が加えられた2番目から4番目の編集ユニット(u1’〜u3’)だけを試写確認すれば、確認作業としては本来十分である。
【0011】
しかし、再編集した編集ユニット(u1’〜u3’)のサイズが編集前から変化した場合、編集が行われた編集ユニットと後続する全ての編集ユニットの位置が変化する。そのため、それら位置が変化した編集ユニットのインデックスを含むメタデータ(m1’〜m7’)に書き換えが生じる。前述のようにデータの書き換えが行われた部分は再度試写を行うため、このコンテンツについて再編集を行った部分は一部であるにもかかわらず、その部分以降のメタデータが書き換えられた全ての編集ユニット(u1’〜u7)の試写確認を行う必要が生じてしまう。この例では、ストリームとしては変化していない部分(u4〜u7)に関しても試写確認が必要となり、試写確認の時間が大幅に増加してしまう。
【0012】
従って、上記のような問題点に鑑みてなされた本発明の目的は、試写確認を必要とする最小限のコンテンツを抽出することができ、試写確認の時間を短縮することのできる、ストリーム比較装置及びプログラムを提供することにある。
【課題を解決するための手段】
【0013】
上記課題を解決するために本発明に係るストリーム比較装置は、編集前後でストリームが不一致となる領域を抽出するストリーム変更抽出部と、前記ストリームの編集ユニットの位置を示すメタデータ以外のメタデータが編集前後で不一致となる領域を抽出するメタデータ比較部と、前記編集ユニットの位置を示すメタデータだけが不一致となる領域で、前記編集ユニットの位置を示すメタデータの指し示すストリーム部分が編集前後で一致しない領域を抽出する参照先ストリーム比較部とを備えることを特徴とする。
【0014】
また、前記ストリーム比較装置は、前記ストリーム変更抽出部が、編集前後のストリームを先頭及び末尾から順に比較して、ストリームが不一致の先頭側から最初の編集ユニットと末尾側から最初の編集ユニットを検出し、両者の間をストリームが不一致となる領域として抽出することが望ましい。
【0015】
上記課題を解決するために本発明に係るストリーム比較装置は、ストリームの編集ユニットの位置を示すメタデータ以外のメタデータが編集前後で不一致となる領域を抽出するメタデータ比較部と、前記編集ユニットの位置を示すメタデータ以外のメタデータが一致する領域において、前記編集ユニットの位置を示すメタデータの指し示すストリーム部分が編集前後で一致しない領域を抽出する参照先ストリーム比較部とを備えることを特徴とする。
【0016】
上記課題を解決するために本発明に係るプログラムは、コンピュータに、編集前後でストリームが不一致となる領域を抽出するステップと、前記ストリームの編集ユニットの位置を示すメタデータ以外のメタデータが編集前後で不一致となる領域を抽出するステップと、前記編集ユニットの位置を示すメタデータだけが不一致となる領域で、前記編集ユニットの位置を示すメタデータの指し示すストリーム部分が編集前後で一致しない領域を抽出するステップとを実行させることを特徴とする。
【0017】
また、上記課題を解決するために本発明に係るプログラムは、コンピュータに、ストリームの編集ユニットの位置を示すメタデータ以外のメタデータが編集前後で不一致となる領域を抽出するステップと、前記編集ユニットの位置を示すメタデータ以外のメタデータが一致する領域において、前記編集ユニットの位置を示すメタデータの指し示すストリーム部分が編集前後で一致しない領域を抽出するステップとを実行させることを特徴とする。
【0018】
また、上記課題を解決するために本発明に係るプログラムは、コンピュータに、編集前のストリームと編集後のストリームを編集ユニット毎に先頭から比較し、最初に不一致となる編集後の編集ユニットSe[p]を求める第1のステップと、編集前のストリームと編集後のストリームを編集ユニット毎に末尾から比較し、最初に不一致となる編集後の編集ユニットSe[q]を求める第2のステップと、前記編集ユニットの位置を示すメタデータがSe[p]を示す編集後のメタデータMe[P]と、前記編集ユニットの位置を示すメタデータがSe[q]を示す編集後のメタデータMe[Q]を求める第3のステップと、P≦i≦Qの範囲のメタデータMe[i]にマークを付ける第4のステップと、0≦i<Pの範囲のメタデータMe[i]とMo[i]とを比較し、前記編集ユニットの位置を示すメタデータ以外に差がある場合はMe[i]にマークをつけ、また、前記編集ユニットの位置を示すメタデータだけに差がある場合は、前記編集ユニットの位置を示すメタデータが示す編集前後の編集ユニットを比較し、一致しない場合はMe[i]にマークをつける第5のステップと、Q<i≦Nmeの範囲のメタデータMe[i]とMo[j](j = i−Nme+Nmo:Nmeは編集後のメタデータの総数であり、Nmoは編集前のメタデータの総数)とを比較し、前記編集ユニットの位置を示すメタデータ以外に差がある場合はMe[i]にマークをつけ、また、前記編集ユニットの位置を示すメタデータだけに差がある場合は、前記編集ユニットの位置を示すメタデータが示す編集前後の編集ユニットを比較し、一致しない場合はMe[i]にマークをつける第6のステップとを実行させることを特徴とする。
【発明の効果】
【0019】
本発明におけるストリーム比較装置及びプログラムによれば、試写確認を必要とする最小限のコンテンツを抽出することができ、再編集により実データが変更されなかったコンテンツの範囲は試写が不要となり、試写確認の時間を必要最小限とすることができる。
【図面の簡単な説明】
【0020】
【図1】本発明の第1のストリーム比較装置のブロック図の例である。
【図2】第1のストリーム比較動作を説明するフローチャートである。
【図3】第1のストリーム比較動作を説明するためのストリームとメタデータのイメージ図である。
【図4】本発明の第2のストリーム比較装置のブロック図の例である。
【図5】第2のストリーム比較動作を説明するフローチャートである。
【図6】第3のストリーム比較動作を説明するフローチャートである。
【図7】編集前後のストリームとメタデータを比較したイメージ図である。
【発明を実施するための形態】
【0021】
以下、本発明の実施の形態について、図面を用いて説明する。
【0022】
(第1のストリーム比較装置)
図1は、本発明の第1のストリーム比較装置10のブロック図の例である。ストリーム比較装置10は、ストリーム変更抽出部11と、メタデータ比較部12と、参照先ストリーム比較部13を備えている。なお、ストリーム比較装置10の動作の詳細は、後述のフローチャートにより説明する。
【0023】
ストリーム変更抽出部11は、編集前後のストリームが入力され、両者を比較してストリームが変更された領域を抽出する。この抽出作業は、ストリーム全体について編集前後の編集ユニットをそれぞれ比較することにより可能であるが、他の動作で行ってもよい。例えば、編集前後のストリームを先頭から順に、及び末尾から順に比較して、ストリームが不一致の先頭側から最初の編集ユニットと末尾側から最初の編集ユニットを検出し、両者の間をストリームが不一致となる領域として抽出してもよい。この抽出動作は、ストリームの編集が、連続した編集ユニットの書き換えで行われること(通常採用される編集方法)を前提としており、全ての編集ユニットについて比較を行うよりも効率的である。ストリームが不一致となる領域の情報を、試写の必要な範囲aとして出力する。また、ストリームが不一致となる領域の始めと末尾の編集ユニットの情報を、メタデータ比較部12に出力する。編集前後で一致しているストリームは、参照先ストリーム比較部13に出力する。
【0024】
メタデータ比較部12は、編集前後のメタデータが入力され、両者を比較してストリームの編集位置を示すインデックス以外のメタデータに相違がある領域を抽出する。この抽出作業は、ストリーム全体について編集前後のメタデータをそれぞれ比較することにより可能であるが、他の方法で行ってもよい。例えば、ストリーム変更抽出部11から入力された、ストリームが不一致となる領域の始めと末尾の編集ユニットの情報を利用して、ストリームが一致した範囲のメタデータについて、編集前後のメタデータを比較してもよい。この抽出動作は、ストリームが不一致の範囲は既にストリーム変更抽出部11で抽出されていることから、試写が必要な範囲の抽出を、重複を避けて行うためであり、全てのメタデータを比較するよりも効率的である。編集前後のメタデータにおいて、インデックス以外のメタデータが不一致となる領域(メタデータ)を、試写が必要な範囲bとして出力する。インデックスだけに差がある(インデックスだけが書き換えられた)メタデータについては、参照先ストリーム比較部13へ出力する。
【0025】
参照先ストリーム比較部13は、メタデータ比較部12からの入力に基づいて、インデックスだけに差があるメタデータについて、インデックスが示す編集前後のストリーム(編集ユニット)を比較する。インデックスの指し示すストリーム部分が編集前後で一致しない領域を、試写が必要な範囲cとして出力する。
【0026】
本発明のストリーム比較装置10によれば、各ブロックで抽出した範囲a,b,cを合わせて、再編集後に試写が必要な範囲を設定することができる。この範囲は、ストリームの内容又は表示条件等が変更された範囲と、インデックスのデータ誤りが疑われる範囲である。
【0027】
次に、本発明に関連するストリーム比較動作、すなわち、試写確認が必要なコンテンツの領域を求める手順を説明する。
【0028】
(第1のストリーム比較動作)
図2は、第1のストリーム比較動作を説明するフローチャートである。図3は、編集前後のストリームとメタデータを比較したイメージ図であり、図7と基本的に同一のデータ内容である。図3の上段は、編集前ストリームと編集前メタデータであり、下段は、編集後ストリームと編集後メタデータである。図3は、編集前ストリームを制作済みコンテンツとし、再編集により2番目から4番目の編集ユニット(u1〜u3)が書き換えられた場合である。ここでは、図3のデータを例として、図2のフローチャートを説明する。以下に、各手順(ステップ)を示す。
【0029】
ステップ11(S11):編集前のストリーム(u1〜u7)と編集後のストリームを編集ユニット毎に先頭から比較し、最初に不一致となる編集ユニットS1を求める。ここでは、編集ユニットu1’が、最初の不一致ユニットS1となる(図3参照)。なお、編集ユニットが全て一致した場合は、S1は先頭の編集ユニット(u0)とする。
【0030】
ステップ12(S12):編集前のストリーム(u1〜u7)と編集後のストリームを編集ユニット毎に末尾から比較し、最初に不一致となる編集ユニットS2を求める。ここでは、編集ユニットu3’が、末尾から最初の不一致ユニットS2となる(図3参照)。なお、S1が先頭の編集ユニット(u0)の場合は、比較処理を行うことなく、S2も先頭の編集ユニット(u0)とする。
【0031】
ステップ13(S13):インデックスがS1を示す編集後のメタデータM1を求める。また、インデックスがS2を示す編集後のメタデータM2を求める。この例では、メタデータm1’がM1であり、メタデータm3’がM2である(図3参照)。
【0032】
ステップ14(S14):M1(M1を含む)〜M2(M2を含む)の範囲のメタデータにマークを付ける。なお、後述するように、マークを付けたメタデータに対応する編集ユニットが試写の対象となる。
【0033】
ステップ15(S15):M1〜M2以外のメタデータ、すなわち、メタデータの先頭〜M1(M1は含まない)の範囲[図3のA]と、M2(M2は含まない)〜メタデータの末尾の範囲[図3のB]に含まれるメタデータについて、編集前後のメタデータを比較し、インデックス以外の情報に差があるか判定する。インデックス以外の情報には、例えば、ファイル内容を記述するメタデータや、映像を表示するときのパラメータ等が含まれる。すなわち、インデックス以外の情報に差がある場合は、ストリームをデコードしてコンテンツを視聴する際に影響を与える情報が変化した可能性がある。インデックス以外の情報に差がある場合は、ステップ16に進み、差が無い場合は、ステップ17に進む。なお、ステップ15以降の処理は、メタデータ毎に行う。
【0034】
ステップ16(S16):インデックス以外の情報に差がある編集後のメタデータにマークを付け、その後、終了する。
【0035】
ステップ17(S17):インデックスだけに差があるメタデータについて、インデックスが示す編集前後の編集ユニットを比較し、同じ編集ユニットを示しているか判定する。一致しない場合はステップ18に進み、一致する場合は終了する。なお、ステップ11,12において、ストリームは比較済みであるが、編集によりインデックスが誤った編集ユニットを指し示す可能性があるため、インデックスが示す編集ユニットの比較も必要となる。このステップにより、メタデータの編集誤りについても抽出できる。
【0036】
ステップ18(S18):編集前後のインデックスが示す編集ユニットが一致しない場合は、そのメタデータにマークをつけ、その後、終了する。
【0037】
以上の手順によりマークがつけられたメタデータ群が示す編集ユニットが、試写確認が必要なコンテンツの領域である。上記の処理において、ストリームやメタデータの一致・不一致は、ストリームのデコードを行うことなく、ストリームをデータとして電子的に比較処理を行うことで検出することができ、極めて高速で行うことができる。したがって、上記のストリーム比較動作によれば、電子的な比較処理を利用して、実際に人間が行う試写確認を最小限とし、試写確認の時間を短縮することができる。
【0038】
図1と図2を対応させると、図2のフローチャートにおいて、ステップ11〜14を、図1のストリーム変更抽出部11で行い、ステップ15,16をメタデータ比較部で行い、ステップ17,18を参照先ストリーム比較部13で行うことができる。なお、ステップ13,14はメタデータの処理であるので、メタデータ比較部12で行ってもよい。
【0039】
(第2のストリーム比較装置)
図4は、本発明の第2のストリーム比較装置20のブロック図の例である。ストリーム比較装置20は、メタデータ比較部12と、参照先ストリーム比較部13を備えている。図1のストリーム比較装置10と比較して、ストリーム比較装置20は、ストリーム変更抽出部11を備えていない。なお、ストリーム比較装置20の動作の詳細は、後述のフローチャートにより説明する。
【0040】
メタデータ比較部12は、編集前後のメタデータが入力され、両者を比較してストリームの編集位置を示すインデックス以外のメタデータに相違がある領域を抽出する。本実施形態では、メタデータ比較部12は、メタデータの先頭〜メタデータの末尾の範囲に含まれるメタデータについて、編集前後のメタデータを比較し、インデックス以外に差があるメタデータを検出すると、試写が必要な範囲dとして出力する。それ以外のメタデータについては、参照先ストリーム比較部13へ出力する。
【0041】
参照先ストリーム比較部13には、編集前後のストリームと、メタデータ比較部12からの出力(インデックス以外には差のないメタデータの情報)が入力される。参照先ストリーム比較部13は、メタデータ比較部12からのインデックス以外に差がないメタデータ(インデックスが同じメタデータも含む)について、インデックスが示す編集前後のストリーム(編集ユニット)を比較する。編集前後のストリームが一致しないとき、インデックスの指し示すストリーム部分が編集前後で不一致な領域(不一致な編集ユニット)を、試写が必要な範囲eとして出力する。
【0042】
ストリーム比較装置20は、図1のストリーム変更抽出部11で行われていたストリーム比較を、参照先ストリーム比較部13の処理を行う際にまとめて行っている。したがって、ストリーム比較処理の重複を解消できる効果がある。
【0043】
(第2のストリーム比較動作)
第2のストリーム比較動作、すなわち、試写確認が必要なコンテンツの領域を求める別の手順を説明する。第2のストリーム比較動作は、メタデータの比較を優先的に行う動作である。
【0044】
図5は、第2のストリーム比較動作を説明するフローチャートである。先頭のメタデータをm0とし、末尾のメタデータをmkmax(kmaxはメタデータの総数)とする。以下に、各手順(ステップ)を示す。
【0045】
ステップ21(S21):k=0とする。なお、kはメタデータを特定する番号である。
【0046】
ステップ22(S22):k番目のメタデータmkについて、編集前後のメタデータを比較し、インデックス以外の情報に差があるか判定する。インデックス以外の情報に差がある場合は、ステップ23に進み、差が無い場合は、ステップ24に進む。
【0047】
ステップ23(S23):インデックス以外の情報に差があるメタデータにマークを付け、その後、ステップ26に進む。
【0048】
ステップ24(S24):インデックスが示す編集前後の編集ユニットを比較し、編集ユニットが一致するか判定する。一致しない場合はステップ25に進み、一致する場合はステップ26に進む。
【0049】
ステップ25(S25):インデックスが示す編集前後の編集ユニットが一致しないメタデータにマークをつけ、その後、ステップ26に進む。
【0050】
ステップ26(S26):k=kmaxであるか、すなわち、末尾のメタデータであるかを判定し、Yesであるなら終了し、Noであるならステップ27に進む。
【0051】
ステップ27(S27):kをインクリメントし、ステップ22に進む。すなわち、メタデータの先頭〜メタデータの末尾の範囲に含まれる全てのメタデータについて、同様の処理を行う。
【0052】
第2のストリーム比較動作は、図1のストリーム比較装置において、ストリーム変更抽出部11で行っていた処理を、参照先ストリーム比較部13で行うことに相当する。
【0053】
図4と図5を対応させると、図5のフローチャートにおいて、ステップ21〜23を、図4のメタデータ比較部12で行い、ステップ24,25を参照先ストリーム比較部13で行うことができる。
【0054】
なお、ストリームの比較において、データの厳密な一致を判断してもよいが、編集した以外の箇所のストリーム中に無効データの挿入(例えば、ゼロパディング)や削除があっても視聴上問題ない場合は、無効データの有無をストリームの不一致と見なさない等の基準を設けてストリームの比較処理を行うことができる。
【0055】
(第3のストリーム比較動作)
第3のストリーム比較動作、すなわち、試写確認が必要なコンテンツの領域を求める更に別の手順を説明する。第3のストリーム比較動作は、第1のストリーム比較動作を一般化したものである。
【0056】
図6は、第3のストリーム比較動作を説明するフローチャートである。編集により、ストリーム中の編集ユニットの数や、メタデータの数が変化する場合がある。このような場合に対応する動作を示す。
【0057】
まず、ストリームとメタデータを次のように設定する。
・編集前のストリームをSoとし、x番目の編集ユニットをSo[x]、編集前の編集ユニットの総数をNsoとする。
・編集後のストリームをSeとし、x番目の編集ユニットをSe[x]、編集後の編集ユニットの総数をNseとする。
・編集前のメタデータをMoとし、x番目のメタデータをMo[x]、編集前のメタデータの総数をNmoとする。
・編集後のメタデータをMeとし、x番目のメタデータをMe[x]、編集後のメタデータの総数をNmeとする。
・編集ユニットとメタデータの先頭の番号は0とする。
【0058】
ステップ31(S31):編集前のストリームと編集後のストリームを編集ユニット毎に先頭から比較し、最初に不一致となる編集後の編集ユニットSe[p]を求める。全て一致した場合はp=0とする。
【0059】
ステップ32(S32):編集前のストリームと編集後のストリームを編集ユニット毎に末尾から比較し、最初に不一致となる編集後の編集ユニットSe[q]を求める。ただし、p=0のときはq=0とする。
【0060】
ステップ33(S33):インデックスがSe[p]を示す編集後のメタデータMe[P]を求める。また、インデックスがSe[q]を示す編集後のメタデータMe[Q]を求める。
【0061】
ステップ34(S34):P≦i≦Qの範囲のメタデータMe[i]にマークを付ける。
【0062】
ステップ35(S35):0≦i<Pの範囲のメタデータMe[i]とMo[i]とを比較し、インデックス以外に差がある場合はMe[i]にマークをつける。また、インデックスだけに差がある場合は、インデックスが示す編集前後の編集ユニットを比較し、一致しない場合はMe[i]にマークをつける。
【0063】
ステップ36(S36):Q<i≦Nmeの範囲のメタデータMe[i]とMo[j](ここでj = i−Nme+Nmo)とを比較し、インデックス以外に差がある場合はMe[i]にマークをつける。また、インデックスだけに差がある場合は、インデックスが示す編集前後の編集ユニットを比較し、一致しない場合はMe[i]にマークをつける。
【0064】
以上の手順によりマークがつけられたメタデータMeが示す編集データが、試写確認が必要なコンテンツの領域である。
【0065】
上記の各ステップによれば、編集により、ストリーム中の編集ユニットの数や、メタデータの数が変化する場合であっても、適切に、試写確認が必要なコンテンツの領域を抽出することができる。
【0066】
ここで、上述した第1乃至第3のストリーム比較動作を実行するために、コンピュータを好適に用いることができ、そのようなコンピュータは、ストリーム比較動作の各ステップに対応する処理内容を記述したプログラムを、当該コンピュータの記憶部に格納しておき、当該コンピュータの中央演算処理装置(CPU)によってこのプログラムを読み出して実行させることで実現することができる。
【0067】
或いは、上述した第1又は第2のストリーム比較装置として機能させるためにコンピュータを好適に用いることができ、そのようなコンピュータは、ストリーム比較装置の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのCPUによってこのプログラムを読み出して実行させることで実現することができる。なお、このプログラムは、コンピュータ読取り可能な記録媒体に記録可能である。
【0068】
上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、各ブロック、各ステップ等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の構成ブロックやステップ等を1つに組み合わせたり、或いは分割したりすることが可能である。