(57)【特許請求の範囲】
【請求項１】
１以上のデジタル信号を多重化した多重化ストリームの一部の差し替え対象データを他の差し替え用データに差し替えるデータ処理装置において、
前記差し替え用データと前記差し替え対象データの一方のサイズを検出する検出手段と、
前記検出手段の検出結果に対応して、前記差し替え用データと前記差し替え対象データの他方の長さを調整する調整手段と、
前記調整手段により調整された前記差し替え対象データと前記差し替え用データとを差し替える差し替え手段とを備え、
前記検出手段は、前記差し替え対象データのアクセスユニットのサイズを検出し、
前記調整手段は、前記検出手段により検出されたサイズに対応して、前記差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加する
ことを特徴とするデータ処理装置。
【請求項２】
前記差し替え対象データと差し替え用データは、長さを調整するために用いられる調整データを有し、前記調整手段は、前記調整データを増減することで、その長さを調整する
ことを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
１以上のデジタル信号を多重化した多重化ストリームの一部の差し替え対象データを他の差し替え用データに差し替えるデータ処理方法において、
前記差し替え用データと前記差し替え対象データの一方のサイズを検出する検出ステップと、
前記検出ステップでの検出結果に対応して、前記差し替え用データと前記差し替え対象データの他方の長さを調整する調整ステップと、
前記調整ステップの処理で調整された前記差し替え対象データと前記差し替え用データとを差し替える差し替えステップとを含み、
前記検出ステップは、前記差し替え対象データのアクセスユニットのサイズを検出し、
前記調整ステップは、前記検出ステップの処理で検出されたサイズに対応して、前記差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加する
ことを特徴とするデータ処理方法。
【請求項４】
１以上のデジタル信号を多重化した多重化ストリームの一部の差し替え対象データを他の差し替え用データに差し替えるデータ処理装置に、
前記差し替え用データと前記差し替え対象データの一方のサイズを検出する検出ステップと、
前記検出ステップでの検出結果に対応して、前記差し替え用データと前記差し替え対象データの他方の長さを調整する調整ステップと、
前記調整ステップの処理で調整された前記差し替え対象データと前記差し替え用データとを差し替える差し替えステップと
を実行させるためのコンピュータプログラムが記録されている記録媒体において、
前記検出ステップは、前記差し替え対象データのアクセスユニットのサイズを検出し、
前記調整ステップは、前記検出ステップの処理で検出されたサイズに対応して、前記差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加する
ことを特徴とする記録媒体。
【請求項５】
１以上のデジタル信号を多重化した多重化ストリームの一部の差し替え対象データを他の差し替え用データに差し替えるデータ処理装置において、
前記差し替え用データとして、前記差し替え対象データに対応する長さのデータを提供する提供手段と、
前記差し替え対象データの時刻情報を検出する検出手段と、
前記検出手段により検出された時刻情報に対応して、前記差し替え用のデータの時刻情報を書き換える書き換え手段と、
前記差し替え対象データを、前記書き換え手段により書き換えられた時刻情報を有する前記差し替え用データで差し替える差し替え手段とを備え、
前記提供手段は、前記差し替え対象データのアクセスユニットのサイズを検出し、検出された前記アクセスユニットのサイズに対応して、前記差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加する
ことを特徴とするデータ処理装置。
【請求項６】
１以上のデジタル信号を多重化した多重化ストリームの一部の差し替え対象データを他の差し替え用データに差し替えるデータ処理方法において、
前記差し替え用データとして、前記差し替え対象データに対応する長さのデータを提供する提供ステップと、
前記差し替え対象データの時刻情報を検出する検出ステップと、
前記検出ステップの処理で検出された時刻情報に対応して、前記差し替え用のデータの時刻情報を書き換える書き換えステップと、
前記差し替え対象データを、前記書き換えステップの処理で書き換えられた時刻情報を有する前記差し替え用データで差し替える差し替えステップと
を含み、
前記提供ステップは、前記差し替え対象データのアクセスユニットのサイズを検出し、検出された前記アクセスユニットのサイズに対応して、前記差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加する
ことを特徴とするデータ処理方法。
【請求項７】
１以上のデジタル信号を多重化した多重化ストリームの一部の差し替え対象データを他の差し替え用データに差し替えるデータ処理装置に、
前記差し替え用データとして、前記差し替え対象データに対応する長さのデータを提供する提供ステップと、
前記差し替え対象データの時刻情報を検出する検出ステップと、
前記検出ステップの処理で検出された時刻情報に対応して、前記差し替え用のデータの時刻情報を書き換える書き換えステップと、
前記差し替え対象データを、前記書き換えステップの処理で書き換えられた時刻情報を有する前記差し替え用データで差し替える差し替えステップと
を実行させるためのコンピュータプログラムが記録されている記録媒体において、
前記提供ステップは、前記差し替え対象データのアクセスユニットのサイズを検出し、検出された前記アクセスユニットのサイズに対応して、前記差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加する
ことを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ処理装置およびデータ処理方法、並びに記録媒体に関し、特に、例えば、デジタルテレビジョン放送において、エレメンタリストリームの構成要素を調整することにより、エレメンタリストリームを分解したり再多重化することなく、本編多重化ストリームの一部のエレメンタリストリームを他のエレメンタリストリームに差し替えることができるようにしたデータ処理装置およびデータ処理方法、並びに記録媒体に関する。
【０００２】
【従来の技術】
画像信号や音響信号の差し替えは、放送やスタジオにおける編集作業の際によく用いられる技術である。例えば、本局から送出されてきた本編のコマーシャルを、支局（地方局）において、その地域に属する地域企業のコマーシャルに差し替えたり、全国ニュースを地域ニュースに置き換える場合、画像信号や音響信号の差し替えが必要になる。
【０００３】
図１３は、アナログベースバンド信号を利用した従来のデータ処理装置の構成例を示している。サーバ５０１は、差し替えるデータを格納しており、選択スイッチ５０２により選択された場合、格納しているデータをスイッチ５０３に供給する。選択スイッチ５０２は、差し替えるデータが録画または録音されているものではない、いわゆるライブからのデータの場合、そのライブ情報を選択し、スイッチ５０３に供給する。スイッチ５０３は、本編の中の差し替えられるデータと、サーバ５０１またはライブ情報から供給される差し替えるデータを同期信号に同期して差し替える。
【０００４】
例えば、地方局において、本編の全国ニュースを地域ニュースに差し替えたい場合、図１３の本編が、本局から送出されてきた番組に、全国ニュースが差し替えられるデータに、そして地域ニュースが差し替えるデータに、それぞれ相当する。地域ニュースは録画されている場合はサーバ５０１から、生放送の場合はライブ情報として、スイッチ５０２に直接供給され、差し替えが実行される。
【０００５】
上記は、アナログベースバンド信号を利用した例であるが、近年、画像信号や音響信号は、デジタル信号として扱われることが多くなり、そのためデジタル信号に対応する差し替え装置も多く利用されてきている。
【０００６】
デジタル信号化された画像信号や音響信号は、所定の規則に準拠して符号化され、多重化されている。符号化方式の代表的な例として、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）方式があげられる。これは、ＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｏｒｇａｎｉｚａｔｉｏｎ  ｆｏｒ  Ｓｔａｎｄａｒｄｉｚａｔｉｏｎ／Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｅｌｅｃｔｒｏｔｅｃｈｎｉｃａｌ  Ｃｏｍｍｉｓｓｉｏｎ，  Ｊｏｉｎｔ  Ｔｅｃｈｎｉｃａｌ  Ｃｏｍｍｉｔｅｅ  １／Ｓｕｂ−Ｃｏｍｍｉｔｅｅ  ２９：国際標準機構／国際電気標準会議  合同技術委員会１／専門部会２９）によって標準化されている技術である。
【０００７】
現在、ＭＰＥＧ方式には、２つのシステムが存在し、ＩＳＯ１１１７２において標準化され、比較的狭い範囲のアプリケーションに対応するＭＰＥＧ１と、ＩＳＯ１３８１８において標準化されている広い範囲のアプリケーションに対応するＭＰＥＧ２とがある。また、それぞれのシステムにおいて、システム多重化の項目がＩＳＯ１１１７２−１およびＩＳＯ１３８１８−１により、映像符号化の項目がＩＳＯ１１１７２−２およびＩＳＯ１３８１８−２により、そして音声符号化の項目がＩＳＯ１１１７２−３およびＩＳＯ１３８１８−３により、それぞれ標準化されている。
【０００８】
図１４は、ＩＳＯ／ＩＥＣ１３８１８−１に規定されているトランスポートストリーム（いわゆるＭＰＥＧ２システム規格）に基づくＩＳＯ１１１７２−３に規定されているオーデイオエレメンタリストリームの多重化の構造を示す。オーデイオエレメンタリストリームとは、符号化されたオーデイオビットストリームのことで、アクセスユニットと呼ばれるデコード単位によって構成されている。
【０００９】
このエレメンタリストリームはパケット化され、ＰＥＳパケット（ＭＰＥＧ２システムで用いられるパケットの名称）と呼ばれる適当な長さのストリームに分割される。また、ＰＥＳパケットのヘッダには、ビデオかオーデイオかの属性を識別する情報や、ＰＥＳパケット中で最初に開始するアクセスユニットの時刻情報などが含まれている。
【００１０】
トランスポートストリームは、複数の固定長のトランスポートパケットにより構成され、オーデイオＰＥＳパケットは、所定のトランスポートパケットに配置される。各トランスポートパケットには、制御情報やビデオエレメンタリストリームのＰＥＳパケットなども配置される。また、トランスポートパケットには、アクセスユニットのデコード時刻、表示時刻、およびデコーダバッファへの入力タイミングを表すクロックリファレンスなども多重化されている。
【００１１】
つまり、受信側におけるデコーダの標準的なモデルが想定され、このデコーダモデルにおいて、正しくデコード処理できるように、各種の情報が時分割多重化されている。
【００１２】
図１５に、例えば、ＩＳＯ１３８１８−１（ＭＰＥＧ２システム）およびＩＳＯ１１１７２−１（ＭＰＥＧ１システム）で規定されているデコーダモデルの構成例を示す。
【００１３】
このデコーダモデルは、オーデイオ部分のみを示している。スイッチ６０１はトランスポートストリームに含まれるトランスポートパケットを、その種類に応じで選択する。スイッチ６０１によって選択されたオーデイオのトランスポートパケットは、５１２バイト固定のトランスポートバッファ６０２に供給される。トランスポートバッファ６０２にデータが存在する限り、デコーダバッファ６０３は一定のレートでデータを引き抜き、その引き抜いたデータのうちＰＥＳパケットデータ部分（ペイロード部分）だけをデコーダ６０４に供給する。つまり、デコーダバッファ６０３内のデータは、デコードの単位であるアクセスユニットのデコード時刻に基づいて、アクセスユニットのサイズ（バイト数）分、瞬時にデコーダバッファ６０３からデコーダ６０４に出力される。
【００１４】
次に、上記に説明されたような多重化デジタル信号に対応する従来の差し替え装置の構成例を図１６に示す。
【００１５】
本編多重化ストリームが分離器７０１に供給されるようになされており、そこでは、本編多重化ストリームの中の制御情報を参照しながら、本編多重化ストリームを、ビデオデータ、オーデイオデータ、その他のデータのエレメンタリストリームに分離する。このように本編多重化ストリームをエレメンタリストリームごとに分離することにより、差し替えられるエレメンタリストリーム、いわゆる差し替え対象エレメンタリストリームを取り出すことができる。
【００１６】
一方、エレメンタリストリームサーバ７０２は、差し替え対象エレメンタリストリームに代わって本編多重化ストリームに差し替えられるエレメンタリストリーム、いわゆる差し替え用エレメンタリストリームをスイッチ７０３に供給する。
【００１７】
スイッチ７０３は、システムコントローラ７０４の指示に基づいて、差し替え対象エレメンタリストリームを差し替え用エレメンタリストリームに差し換え、多重化器７０５に供給する。多重化器７０５は、差し替え用エレメンタリストリームと、差し替え対象エレメンタリストリーム以外の本編多重化ストリームのエレメンタリストリームを多重化し、多重化ストリームを出力する。
【００１８】
【発明が解決しようとする課題】
しかしながら、このような従来の差し替え装置では、入力された本編多重化ストリームを分離し、差し替え後、再び多重化を行わなければならない。そのため、差し替え装置に分離と多重化の機能が必要となり、装置の構成が煩雑になる。また放送のような実時間性の高いアプリケーションでは、分離と再多重化による遅延が問題となったり、スタジオにおける編集では、編集を繰り返すたびに分離と再多重化が必要になり、手間がかかってしまう。
【００１９】
本編多重化ストリームの中の差し替え対象エレメンタリストリームを他の差し替え用エレメンタリストリームに差し替えることができれば、分離と再多重化を行う必要がなくなる。しかしながら、そのためには、それぞれの差し替えられるデータのサイズ、つまり、バイト数が等しくなければならない。またさらに、差し替え後のデータの構造が準拠する多重化方式の規則に反しないように、パケットのサイズおよびアクセスユニットが等しくなけらばならない。
【００２０】
ＩＳＯ１１１７２−３に規定されるオーデイオエレメンタリストリームにおいて、アクセスユニットのサイズが一定でない場合の一例を図１７に示す。
【００２１】
ＩＳＯ１１１７２−３では、オーデイオエレメンタリストリームのアクセスユニットは、フレームと呼ばれる。フレームのサイズは次式によって定義される。
【００２２】
フレームのサイズ（バイト）＝（ビットレート）×（サンプル数）／（サンプリング周波数）／８
【００２３】
サンプリング周波数の値によって、計算上フレームサイズに端数が生じてしまう場合がある。フレームのサイズは、バイト単位で整数値であるため、このような場合、端数を切り上げた数値をサイズとするフレームと、端数を切りすてた数値をサイズとするフレームが存在する。例えば、サンプリング周波数＝４４．１（ＫＨｚ）、ビットレート＝２２４（ｋｂｐｓ）、およびサンプル数＝１１２４（ｓａｍｐｌｅ／ｆｒａｍｅ）の場合、上記の式によると、計算結果は、７１３．６５バイトとなり、端数が生じてしまう。この場合、７１４バイトまたは７１３バイトの大きさを持つフレームが存在することになる。
【００２４】
多重化する際、フレームのサイズ情報は、フレームのヘッダに書き込まれる。図１７に示すように、フレームのヘッダにあるｐａｄｄｉｎｇ−ｂｉｔにそのフレームのサイズ情報を書き込むことができる。たとえば、７１４バイトのサイズを持つフレームのｐａｄｄｉｎｇ−ｂｉｔは１、７１３バイトのサイズを持つフレームのｐａｄｄｉｎｇ−ｂｉｔには０が書き込まれる。
【００２５】
上述のように、アクセスユニットのサイズが１つでない場合があり、そのため、差し替え対象エレメンタリストリームと差し替え用エレメンタリストリームのアクセスユニットが異なる場合がある。またパケットのサイズにおいても、パケットがアクセスユニットで構成されているために、そのサイズが異なる場合も生じることがある。
【００２６】
次に、差し替えられるデータのサイズは等しいが、パケットのサイズが異なるエレメンタリストリームを差し替える場合に発生する問題点を説明する。
【００２７】
トランスポートストリームによって多重化されるＩＳＯ１１１７２−３に規定されているオーデイオエレメンタリストリームの２つのＰＥＳパケットを差し替える場合の例を図１８に示す。図１８（Ａ）は、差し替え対象と差し替え用のエレメンタリストリームの２つのＰＥＳパケットを示す。差し替え対象エレメンタリストリームのｎ番目のＰＥＳパケットＰ（ｎ）のパケットのサイズはＸバイトで、ｎ＋１番目のＰＥＳパケットＰ（ｎ＋１）のサイズは（Ｘ＋１）バイト（Ｘプラス１の意味である）である。２つのＰＥＳパケットのサイズの和は、（２Ｘ＋１）バイトとなる。
【００２８】
差し替え用エレメンタリストリームの２つのＰＥＳパケットのサイズの和を計算すると同様に（２Ｘ＋１）となり、差し替えられるデータのサイズが等しいことがわかる。しかしながら、ＰＥＳパケットごとにサイズを比較すると、差し替え対象エレメンタリストリームのＰＥＳパケットＰ（ｎ）のサイズが、差し替え用エレメンタリストリームのＰＥＳパケットＰ’（ｎ）のサイズより１バイト小さい。
【００２９】
この２つのＰＥＳパケットの差し替えを実行した場合、図１８（Ｂ）に示すように、差し替え前の本編多重化ストリームにおいてＰＥＳパケットＰ（ｎ＋１）の先頭データｂが多重化されていた場所に、差し替え後の多重化ストリームでは、ＰＥＳパケットＰ’（ｎ）の最後のデータｃが多重化さる。ところで、ＩＳＯ／ＩＥＣ１３８１８−１に規定されているトランスポートストリームに基づく多重化ストリームでは、ＰＥＳパケットの先頭バイトがトランスポートストリームのペイロード（ユーザ情報、つまり、この場合トランスポートパケットヘッダの直後からのデータ）の先頭に位置しなければならない規定があり、この場合、この規則に反する。
【００３０】
このような場合、図１８（Ｃ）に示すように、トランスポートヘッダにスタッフィング（ダミーバイトを付加してパケットの大きさを調整する領域）にダミーバイト付加して、ＰＥＳパケットＰ’（ｎ＋１）の先頭データｄがトランスポートストリームのペイロードの先頭で開始するようにアライメントしなけらばならない。しかしながら、ダミーバイトを付加してしまうと、差し替えるデータのサイズが大きくなってしまい、差し替え用エレメンタリストリームのＰＥＳパケットが本編多重化ストリームに入りきれなくなってしまう。
【００３１】
以上のように、差し替えられるそれぞれのデータのサイズが同じ場合でも、パケットのサイズが異なる場合は、差し替え用のデータが本編多重化ストリームに入りきれなくなる問題が生じる。
【００３２】
次に、差し替えられるデータのサイズは等しいが、アクセスユニットのサイズが異なるエレメンタリストリームを差し替える場合に発生する問題点を説明する。
【００３３】
トランスポートストリームによって多重化されるＩＳＯ１１１７２−３に規定されているオーデイオエレメンタリストリームの２つのアクセスユニットを差し替える場合の例を図１９に示す。ＩＳＯ１１１７２−３において、アクセスユニットはフレームと呼ばれる。
【００３４】
図１９（Ａ）は、差し替え対象と差し替え用のエレメンタリストリーム２つのフレームを示す。差し替え対象エレメンタリストリームのｎ番目のフレームＦ（ｎ）のサイズはＸバイトで、ｎ＋１番目のフレームＦ（ｎ＋１）のサイズは（Ｘ−１：Ｘマイナス１）バイトである。２つのフレームのサイズの和は、（２Ｘ−１）バイトとなる。
【００３５】
同様に、差し替え用エレメンタリストリームのフレームのサイズの和を算出すると（２Ｘ−１）バイトとなり、差し替えられるデータのサイズと等しいことがわかる。しかしながら、フレームごとにサイズを比較すると、フレームＦ（ｎ）とフレームＦ’（ｎ）のサイズが異なり、フレームＦ（ｎ）のサイズはフレームＦ’（ｎ）より１バイト大きい。
【００３６】
従って、差し替え前の本編多重化ストリームにおいて、フレームＦ（ｎ）はｋ番目のＰＥＳパケットｋに、最後のデータａまで含まれている。またフレームＦ（ｎ＋１）の先頭データｂは、ｋ＋１番目のＰＥＳパケットｋ＋１の先頭に位置する。しかしながら、差し替え後の多重化ストリームにおいては、図１９（Ｂ）に示すように、フレームＦ’（ｎ＋１）の先頭のデータｄがＰＥＳパケットｋのペイロードに含まれる。
【００３７】
ＩＳＯ１３８１８−１に規定されているトランスポートストリームのＰＥＳパケットのヘッダには、フレームのデコード時刻と表示時刻を示す時刻情報が含まれている。これらの時刻情報は、その時刻情報が書き込まれているヘッダを持つＰＥＳパケットのペイロードに先頭データが位置するフレームに対応する。この場合、本編多重化ストリームでは、ＰＥＳパケットｋ＋１のペイロードに先頭データが位置するフレームはフレームＦ（ｎ＋１）であるから、ＰＥＳパケットｋ＋１のヘッダにはフレームＦ（ｎ＋１）に対応する時刻が書き込まれている。
【００３８】
しかしながら、差し替え後、フレームＦ（ｎ＋１）に対応するフレームＦ’（ｎ＋１）の先頭データは、ＰＥＳパケットｋ内に位置することになり、ＰＥＳパケットｋ＋１のヘッダに書き込まれている時刻情報と対応しなくなる。仮に、ＰＥＳパケットｋ＋１のペイロード中に次のフレームＦ’（ｎ＋２）の先頭データが位置するならば、本来フレームＦ’（ｎ＋１）に対応づけられるべき時刻情報がフレームＦ’（ｎ＋２）に対応づけられてしまい、デコーダの動作が保証されなくなる。またＰＥＳパケットｋ＋１のペイロード中に、次のフレームＦ’（ｎ＋２）の先頭データが含まれない場合、そのＰＥＳパケットヘッダの時刻情報に対応するフレームが存在しないことになり、ＩＳＯ／ＩＥＣ１３８１８−１の規定に違反してしまう。
【００３９】
つまり、差し替えられるＰＥＳパケットのサイズが等しくても、アクセスユニットのサイズが異なる場合には、ＰＥＳパケットヘッダに含まれているデコーダの時刻情報とアクセスユニットの対応関係が崩れてしまい問題となる。
【００４０】
次に上げる問題は、アクセスユニットのサイズが異なるために生じる、デコーダバッファのアンダーフロやオーバーフロである。図２０は、デコーダバッファがアンダーフローする場合の例を示す。
【００４１】
差し替え対象エレメンタリストリームのフレームのサイズを図２０（Ａ）に示す。図２０（Ｂ）に示す実線は、差し替え前の本編多重化ストリームのフレームＦ（ｎ−１）、フレームＦ（ｎ）、フレームＦ（ｎ＋１）がデコードされる際のデコーダバッファの占有量の軌跡を示す。デコーダは、フレームＦ（ｎ）の最後のデータａがデコーダバッファに入力された直後に、フレームＦ（ｎ）のサイズ分だけ、デコーダバッファからデータを引き抜く。
【００４２】
図２０（Ｂ）に示す点線は、差し替えられた後の多重化ストリームのフレームＦ’（ｎ−１）、フレームＦ’（ｎ）、フレームＦ’（ｎ＋１）をデコードする際のデコーダバッファの占有量の軌跡を示す。差し替え対象のフレームＦ（ｎ）のサイズが、フレームＦ’（ｎ）のサイズより１バイト小さいので、フレームＦ’（ｎ）の最後のデータｄが入力される前にデコード時刻となり、その瞬間、フレームＦ’（ｎ）のサイズであるＸバイト分のデータがデコーダバッファから引き抜かれてしまう。この時点では、デコーダバッファには、（Ｘ−１）バイトしかデコーダバッファに格納されていないので、アンダーフロが発生してしまう。
【００４３】
図２１に、デコーダバッファがオーバーフロする例を示す。
【００４４】
差し替え対象エレメンタリストリームのフレームのサイズを図２１（Ａ）に示す。図２１（Ｂ）の実線は、差し替え前の本編多重化ストリームのフレームＦ（ｎ−１）、フレームＦ（ｎ）、フレームＦ（ｎ＋１）がデコードされる際のデコーダバッファの占有量の軌跡を示す。デコーダは、フレームＦ（ｎ）のデコーダ時刻ＴｎにフレームＦ（ｎ）のサイズ分だけのデータを引き抜ぬく。
【００４５】
図２１（Ｂ）の点線は、差し替えられた後の多重化ストリームのフレームＦ’（ｎ−１）、フレームＦ’（ｎ）、フレームＦ’（ｎ＋１）がデコードされる際のデコーダバッファの占有量の軌跡を示す。
【００４６】
差し替え対象のフレームＦ(n)のサイズが差し替え用のフレームＦ'(n)のサイズより１バイト大きいため、デコード時刻Ｔｎにおいて、デコーダは、フレームＦ(n)のサイズＸより１バイト少ない、フレームＦ'(n)のサイズ分の（Ｘ−１）バイトだけしかデコーダバッファから引き抜かない。そのため、デコーダバッファに１バイト残ってしまい、次のデコード時刻Ｔｎ+1の直前までに新たに蓄積された（Ｘ−１）バイトによって、オーバーフロが発生してしまう。
【００４７】
本発明はこのような状況に鑑みてなされたものであり、上記にあげられた問題点を克服し、分離と再多重化することなく、本編多重化ストリームの中の一部の差し替え対象データを他の差し替え用データに差し替えることができるようにするものである。
【００４８】
【課題を解決するための手段】
本発明の第１のデータ処理装置は、差し替え用データと差し替え対象データの一方のサイズを検出する検出手段と、検出手段の検出結果に対応して、差し替え用データと差し替え対象データの他方の長さを調整する調整手段と、調整手段により調整された差し替え対象データと差し替え用データとを差し替える差し替え手段とを備え、検出手段は、差し替え対象データのアクセスユニットのサイズを検出し、調整手段は、検出手段により検出されたサイズに対応して、差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加することを特徴とする。
【００４９】
差し替え対象データと差し替え用データは、長さを調整するために用いられる調整データを有し、調整手段は、調整データを増減することで、その長さを調整することができる。
【００５０】
本発明の第１のデータ処理方法は、差し替え用データと差し替え対象データの一方のサイズを検出する検出ステップと、検出ステップでの検出結果に対応して、差し替え用データと差し替え対象データの他方の長さを調整する調整ステップと、調整ステップの処理で調整された差し替え対象データと差し替え用データとを差し替える差し替えステップとを含み、検出ステップは、差し替え対象データのアクセスユニットのサイズを検出し、調整ステップは、検出ステップの処理で検出されたサイズに対応して、差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加することを特徴とする。
【００５１】
本発明の第１の記録媒体は、１以上のデジタル信号を多重化した多重化ストリームの一部の差し替え対象データを他の差し替え用データに差し替えるデータ処理装置に、差し替え用データと差し替え対象データの一方のサイズを検出する検出ステップと、検出ステップでの検出結果に対応して、差し替え用データと差し替え対象データの他方の長さを調整する調整ステップと、調整ステップの処理で調整された差し替え対象データと差し替え用データとを差し替える差し替えステップとを実行させるためのコンピュータプログラムが記録され、検出ステップは、差し替え対象データのアクセスユニットのサイズを検出し、調整ステップは、検出ステップの処理で検出されたサイズに対応して、差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加することを特徴とする。
【００５２】
本発明の第１のデータ処理装置および方法、並びに記録媒体のプログラムは、差し替え対象データのアクセスユニットのサイズが検出され、検出されたサイズに対応して、差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータが付加されて、差し替え用データと差し替え対象データの他方の長さが調整され、調整された差し替え対象データと差し替え用データとが差し替えられる。
【００５３】
本発明の第２のデータ処理装置は、差し替え用データとして、差し替え対象データに対応する長さのデータを提供する提供手段と、差し替え対象データの時刻情報を検出する検出手段と、検出手段により検出された時刻情報に対応して、差し替え用のデータの時刻情報を書き換える書き換え手段と、差し替え対象データを、書き換え手段により書き換えられた時刻情報を有する差し替え用データで差し替える差し替え手段とを備え、提供手段は、差し替え対象データのアクセスユニットのサイズを検出し、検出されたアクセスユニットのサイズに対応して、差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加することを特徴とする。
【００５４】
本発明の第２のデータ処理方法は、差し替え用データとして、差し替え対象データに対応する長さのデータを提供する提供ステップと、差し替え対象データの時刻情報を検出する検出ステップと、検出ステップの処理で検出された時刻情報に対応して、差し替え用のデータの時刻情報を書き換える書き換えステップと、差し替え対象データを、書き換えステップの処理で書き換えられた時刻情報を有する差し替え用データで差し替える差し替えステップとを含み、提供ステップは、差し替え対象データのアクセスユニットのサイズを検出し、検出されたアクセスユニットのサイズに対応して、差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加することを特徴とする。
【００５５】
本発明の第２の記録媒体は、１以上のデジタル信号を多重化した多重化ストリームの一部の差し替え対象データを他の差し替え用データに差し替えるデータ処理装置に、差し替え用データとして、差し替え対象データに対応する長さのデータを提供する提供ステップと、差し替え対象データの時刻情報を検出する検出ステップと、検出ステップの処理で検出された時刻情報に対応して、差し替え用のデータの時刻情報を書き換える書き換えステップと、差し替え対象データを、書き換えステップの処理で書き換えられた時刻情報を有する差し替え用データで差し替える差し替えステップとを実行させるためのコンピュータプログラムが記録され、提供ステップは、差し替え対象データのアクセスユニットのサイズを検出し、検出されたアクセスユニットのサイズに対応して、差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータを付加することを特徴とする。
【００５６】
本発明の第２のデータ処理装置および方法、並びに記録媒体のプログラムにおいては、差し替え用データとして、差し替え対象データに対応する長さのデータが提供され、差し替え対象データの時刻情報が検出され、検出された時刻情報に対応して、差し替え用のデータの時刻情報が書き換えられ、差し替え対象データのアクセスユニットのサイズが検出され、検出されたアクセスユニットのサイズに対応して、差し替え用のデータのアクセスユニットに、外部データとして、スタッフィングデータが付加され、差し替え対象データが、書き換えられた時刻情報を有し、スタッフィングデータが付加された差し替え用データで差し替えられる。
【００６０】
【発明の実施の形態】
【００６４】
図１は、本発明のデータ処理装置を適用した差し替え装置の第１の実施の形態の構成例を示している。
【００６５】
多重化器１０１は、各テーダが、例えば、ＩＳＯ１３８１８−１に準拠して符号化されたエレメンタリストリームを多重化し、本編トランスポートストリームを出力する。
【００６６】
ＰＥＳパケットヘッダ書換器１０２は、ＰＩＤ（Ｐａｃｋｅｔ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）検出機能を備え、多重化器１０１から出力される本編トランスポートストリームから、差し替えられるエレメンタリストリーム、いわゆる、差し替え対象エレメンタリストリームを検出し、後述する差し替え用エレメンタリストリームサーバ１０３または符号化器１０４から供給されるエレメンタリストリーム、いわゆる、差し替え用エレメンタリストリームのサイズ情報に基づいて、差し替え用エレメンタリストリームと同じＰＥＳパケットのサイズを持つように、差し替え対象エレメンタリストリームのＰＥＳパケットのヘッダを書き換える。
【００６７】
差し替え用エレメンタリストリームサーバ１０３は、録音または録画されたエレメンタリストリームを格納し、差し替えスイッチ１０５にエレメンタリストリームを供給する。また差し替え用エレメンタリストリームが録音または録画でない情報、いわゆるライブ情報の場合、そのライブ情報は符号化器１０４に入力され、所定の規格に準拠して符号化された後、差し替えスイッチ１０５に出力される。
【００６８】
差し替え用エレメンタリストリームサーバ１０３および符号化器１０４は、それぞれ差し替え用エレメンタリストリームのＰＥＳパケットのサイズ情報をＰＥＳパケットヘッダ書換器１０２に供給するが、ここでのサイズ情報とは、ＰＥＳパケットのサイズそのものである必要はなく、それを求めることができるような情報であれば良い。
【００６９】
システムコントローラ１０６は、ＰＥＳパケットヘッダ書換器１０２と差し替えスイッチ１０５を制御する。
【００７０】
差し替えスイッチ１０５は、システムコントローラ１０６からの指示に基づいて、差し替え対象エレメンタリストリームと差し替え用エレメンタリストリームを差し替え、差し替え後のトランスポートストリームを出力する。差し替え対象エレメンタリストリーム以外の本編トランスポートストリームは、そのまま出力される。
【００７１】
次に、第１の実施の形態の動作例を説明する。はじめに、ＩＳＯ／ＩＥＣ１３８１８−１に規定されるトランスポートストリームのＰＥＳパケットのデータ構造を図２に示す。ＰＥＳパケットは、スタッフィング領域にダミーバイトを付加することによって、ＰＥＳパケットのサイズを調整することができる。
【００７２】
図３に、ＩＳＯ１１１７２−３に規定されているオーデイオエレメンタリストリームのアクセスユニットのサイズの異なる差し替え対象エレメンタリストリームと差し替え用エレメンタリストリームを差し替える例を示す。
【００７３】
差し替え対象エレメンタリストリームのフレームの最大サイズがＸバイトの場合で、各フレームのサイズはそのＸバイトに対して、等しいかまたは１バイト小さいかで表されている。例えば、フレームＦ（ｎ＋１）のサイズは、サイズＸに等しく、フレームＦ（ｎ）のサイズは、サイズＸより１バイト小さい。
【００７４】
多重化器１０１は、エレメンタリストリームを多重化し、本編トランスポートストリームを出力するが、多重化にあたり、はじめに、エレメンタリストリームのパケット化を行う。例えば、本編のＰＥＳパケットＰ（Ｋ）は、フレームＦ（ｎ）、フレームＦ（ｎ＋１）とフレームＦ（ｎ＋２）の一部を含むように処理されている。
【００７５】
パケット化する際、多重化器１０１は、差し替えられるＰＥＳパケット内、フレームの最後のデータが含まれているフレームのサイズに基づいて、ＰＥＳパケットのスタッフィング領域に加えられるダミーバイトの量を決定する。例えば、ＰＥＳパケットＰ（Ｋ）においては、フレームＦ（ｎ）とフレームＦ（ｎ＋１）がそのダミーバイト量算出の対象となる。フレームＦ（ｎ）のサイズはサイズＸより１バイト小さく、フレームＦ（ｎ＋１）のサイズはサイズＸに等しいので、この時、１バイトがＰＥＳパケットＰ（Ｋ）のヘッダのスタッフィング領域に加えられる。
【００７６】
多重化器１０１は、パケット化および多重化終了後、本編トランスポートストリームをＰＥＳパケットヘッダ書換器１０２に出力する。
【００７７】
符号化器１０４または差し替え用エレメンタリストリームサーバ１０３から供給されるサイズ情報とは、差し替え用エレメンタリストリームのＰＥＳパケットのサイズに関する情報であり、いま場合、差し替え用エレメンタリストリームのフレームＦ’（ｎ）、フレームＦ’（ｎ＋１）のサイズがそれぞれサイズＸに対して、１バイト少ないことがサイズ情報となる。
【００７８】
ＰＥＳパケットヘッダ書換器１０２は、差し替え対象エレメンタリストリームのＰＥＳパケットヘッダを、サイズ情報に基づいて書き換える。すなわち、ここでは、スタッフィング領域に加えられるダミーバイトの量が調整される。いま場合、差し替え用エレメンタリストリームのフレームＦ'(n)とフレームＦ'(n+1)は、いずれも１バイト小さいフレームであるので、差し替え後のＰＥＳパケットＰ'(k)のスタッフィング領域に、２バイトのダミーバイトが付加されることになる。このようにして、ヘッダが書き換えられた後、本編のＰＥＳパケットのペイロードが、差し替え用エレメンタリストリームのＰＥＳパケットのペイロードと差し替えスイッチ１０５で差し替えられる。
【００７９】
以上のような処理を行うことより、第１の実施の形態において、本編多重化ストリームの差し替え対象エレメンタリストリームを他の差し替え用エレメンタリストリームで差し替えを行っても、それぞれのＰＥＳパケットのサイズが常に等しいので、差し替え用エレメンタリストリームが本編多重化ストリームに入りきらなくなることはない。また、アクセスユニット（フレーム）の先頭バイトが含まれるＰＥＳパケットは、差し替え前後において変わらないため、ＰＥＳパケットに書き込まれている時刻情報とそれに対応するアクセスユニットの関係がずれることもない。
【００８０】
しかしながら、アクセスユニットのサイズ自体は異なるため、デコーダバッファのオーバーフロやアンダーフロが発生してしまいデコーダバッファを破綻させてしまう場合がある。
【００８１】
例えば、図３におけるデータ差し替えの例をみると、ＰＥＳパケットＰ’（ｋ）には２バイトのダミーバイトがＰＥＳパケットヘッダに付加されている。そのため、フレームＦ（ｎ）のデコード時刻において、フレームＦ’（ｎ）のデータが、まだ１バイト分だけデコーダバッファへ入力されていない。この状態で、デコーダは、デコーダバッファからデータを引き抜いてしまうため、その１バイト分アンダーフロになる。
【００８２】
次に、デコーダバッファにマージンを設けることによって、デコーダの破綻を回避する方法について説明する。図４は、デコーダバッファのアンダーフロを回避するためのマージンの算出例を示す。
【００８３】
第１の実施の形態において、最大のアンダーフロが発生する場合は、差し替えが行われた後、最も多くのダミーデータが差し替え用エレメンタリストリームのＰＥＳパケットのスタッフィングに加えられている時である。つまりその場合でもアンダーフロが発生しないようなマージンを下限に設ければ、アンダーフロを防止できる。
【００８４】
図４に示す例において、１つのＰＥＳパケットは最大３つのフレームを取り込むことができる。図４（Ａ）に示すように、差し替え対象エレメンタリストリームのＰＥＳパケットを構成するフレームＦ（１）、Ｆ（２）、およびＦ（３）のサイズが、それぞれ最大のフレームのサイズＸの時で、かつ、差し替え用エレメンタリストリームのＰＥＳパケットのフレームＦ’（１）、Ｆ’（２）およびＦ’（３）が、それぞれサイズＸに対して１バイト小さい時、最も多くのダミーバイトがスタッフィングに付加される。この場合、３バイトのダミーバイトがスタッフィング領域に加えられる。つまり、１つのＰＥＳパケットに最大Ｎ個のフレームが取り込まれる場合、最大Ｎバイトのダミーデータが付加される。
【００８５】
差し替え後の多重化ストリームのデコードを実行すると、フレームＦ’（１）の最後から２バイト（（Ｎ−１）バイト）がデコーダバッファに入力される前に、フレームＦ’（１）のサイズ分のバイト数がデコーダに引き抜かれるため、その分アンダーフロが発生する。
【００８６】
そこで、図４（Ｂ）に示すように、本編を多重化する際、差し替え対象エレメンタリストリームのデコーダバッファの下限に、（Ｎ−１）バイトのマージンを設け、デコード直後のデコーダバッファのなかのデータの占有量が、（Ｎ−１）バイト以上とすることにより、アンダーフロを回避することができる。
【００８７】
次に、図５に、オーバーフロを回避するためのデコーダバッファに設けるマージンを算出する例を示す。最大のオーバーフロが発生する場合は、差し替え対象エレメンタリストリームのＰＥＳパケットに最大のダミーバイトがスタッフィング領域に加えられていて、差し替え後のエレメンタリストリームのＰＥＳパケットのスタッフィング領域にダミーバイトが存在しない時である。例えば、図５（Ａ）に示すように、最大３つのフレームが１つのＰＥＳパケットに取り込むことができる場合、差し替え対象エレメンタリストリームのＰＥＳパケットを構成するフレームＦ（１）、Ｆ（２）、およびＦ（３）のサイズが、それぞれ最大のフレームのサイズＸより１バイト小さく、かつ、差し替え用エレメンタリストリームのＰＥＳパケットのフレームＦ’（１）、Ｆ’（２）およびＦ’（３）のサイズが、それぞれサイズＸに等しい時である。
【００８８】
この場合、差し替え後の多重化ストリームをデコードすると、図５（Ｂ）に示すように、フレームＦ’（１）のデコード時刻では、（Ｎ−１）バイトがデータ残量として、デコーダバッファに蓄積される。次に、フレームＦ’（２）のサイズ分のデータがデコーダバッファに供給されたとき、（Ｎ−１）バイトのオーバーフロが発生する。
【００８９】
そこで、本編を多重化する際、差し替え対象エレメンタリストリームのデコーダバッファの上限に（Ｎ−１）バイトのマージンを設け、デコーダバッファの空き容量が常に（Ｎ−１）バイト以上とすることによって、オーバーフロを回避することができる。
【００９０】
第１の実施の形態における多重化器１０１が、上記のデコーダバッファにマージンを設けるように多重化を行うことにより、分離と再多重化することなしに、本編多重化ストリームの中の差し替え対象エレメントリストリームを他の差し替え用エレメントリストリームに差し替えることができる。
【００９１】
次に、本発明を適用した差し替え装置の第２の実施の形態の構成例を図６に示す。なお、図中、図１における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は適宜省略する。
【００９２】
多重化器１０１は、本編トランスポートストリームを出力する。時刻情報検出器２０１は、システムコントローラ２０２により指示された差し替え対象エレメンタリストリームのデコード時刻情報を検出し、時刻情報書換器２０３に出力する。ここでのデコード時刻情報は、時刻そのものである必要はなく、デコード時刻を算出できるものであればよい。
【００９３】
差し替え用ＰＥＳパケットサーバ２０４は、予め定めた本編トランスポートストリームと等しいＰＥＳパケットのサイズを有する、パケット化された差し替え用エレメンタリストリームが格納されている。時刻情報書換器２０３は、時刻情報検出器２０１から検出された差し替え対象エレメンタリストリームの時刻情報を基に、差し替え用ＰＥＳパケットサーバ２０４に格納されている差し替え用エレメンタリストリームの時刻情報を書き換え、差し替えスイッチ２０５に出力する。
【００９４】
差し替え用エレメンタリストリームが、ライブ情報の場合、そのライブ情報は、符号化器２０６によって、所定の規定に準拠して符号化され、ＰＥＳパケット化器２０７に供給される。ここでは、ＰＥＳパケットサイズ検出器２０８により検出されたＰＥＳサイズ情報に基づいて、符号化されたライブ情報をＰＥＳパケット化する。このことより、差し替え対象エレメンタリストリームと等しいＰＥＳパケットのサイズを持つ差し替え用エレメンタリストリームを作成することができる。
【００９５】
選択スイッチ２０９は、システムコントローラ２０２の指示により、差し替えＰＥＳパケットサーバ２０４またはＰＥＳパケット化器２０７からのエレメンタリストリームを選択し、時刻情報書換器２０３に供給する。差し替えスイッチ２０５は、システムコントローラ２０２の指示に基づき、差し替え対象エレメンタリストリームを差し替え用エレメンタリストリームに差し替え、差し替え後のトランスポートストリームを出力する。
【００９６】
システムコントローラ２０２は、ＰＥＳパケットサイズ検出器２０８、時刻情報検出器２０１、および差し替えスイッチ２０５の処理を制御する。
【００９７】
第１の実施の形態は、差し替え対象エレメンタリストリームのＰＥＳパケットのサイズを、差し替え用エレメンタリストリームのＰＥＳパケットのサイズに等しくなるようにスタッフィングを調整し、図２（Ａ）に示すスタッフィング領域とＰＥＳパケットデータ部を差し替えたものである。時刻情報を含む情報フィールドは、本編トランスポートストリームに符号化されているものを使用している。
【００９８】
それに対して、第２の実施の形態は、スタッフィング領域とＰＥＳパケットデータ部に加え、情報フィールドも同時に差し替えるものである。このことにより、差し替え用エレメンタリストリームがライブで得られる場合、ライブ情報を符号化しながら差し替えを行うので、あらかじめパケット化しておく必要がない。
【００９９】
第２の実施の形態における多重化器１０１も、第１の実施の形態と同じく、デコーダバッファにマージンを設けるように多重化することより、分離と再多重化することなしに、本編トランスポートストリームの中の差し替え対象エレメントリストリームを、他の差し替え用エレメントリストリームに差し替えることができる。
【０１００】
上記の第１の実施の形態および第２の実施の形態の構成例の動作例の説明は、ＩＳＯ１１１７２−３に規定されているオーデイオエレメンタリストリームを差し替える例に基づいて行われた。しかしながら、これらは、それに限定するものではない。図７に、第１の実施の形態と第２の実施の形態の動作例の一般例を示す。
【０１０１】
アクセスユニットの最大サイズをＸバイトとし、ｉ番目のアクセスユニットのサイズをＸーＤ（ｉ）とする。つまり、ｉ番目のアクセスユニットのサイズは、サイズＸよりＤ（ｉ）バイト小さい。この場合、パケット化する際、そのｉ番目のアクセスユニットの最後のデータまでを含むパケットのスタッフィング領域にＤ（ｉ）バイト加える。
【０１０２】
さらにアクセスユニットのサイズの最大値と最小値の差をＤｍａｘとし、１つのパケットに最大Ｎ個のアクセスユニットが含まれる場合、デコーダバッファの破綻を回避するためのデコーダバッファのマージンは（Ｎ−１）＊Ｄｍａｘとなり、本編の多重化ストリームを多重化する際、そのマージンを設けることで、デコーダが破綻しないことを保証することができる。
【０１０３】
このように第１および第２の実施の形態は、あらゆるエレメンタリストリームの差し替えに適用でき、分離と再多重化することなしに、本編多重化ストリームの中の差し替え対象エレメントリストリームを他の差し替え用エレメントリストリームに差し替えることができる。
【０１０４】
次に、第３の実施の形態の構成例を図８に示す。
【０１０５】
第１および第２の実施の形態の構成例における多重化器１０１は、多重化する際、スタッフィング調整やデコーダバッファへのマージンの設定を行う必要があったが、多重化器３０１は、このような制約を受けずに多重化することができる。サイズ検出器３０２は、本編トランスポートストリームの差し替え対象エレメンタリストリームのアクセスユニットのサイズを検出し、その結果をサイズ変換器３０３に供給する。
【０１０６】
差し替え用エレメンタリストリームサーバ１０３は、差し替え用エレメンタリストリームを格納する。選択スイッチ３０４は、システムコントローラ３０６の指示により、差し替え用エレメンタリストリームサーバ１０３または符号化器３０５からエレメンタリストリームを引き出し、サイズ変換器３０３に供給する。
【０１０７】
サイズ変換器３０３は、サイズ検出器３０２によって検出されたサイズ情報に基づいて、差し替え用エレメンタリストリームのアクセスユニットのサイズを変更する。即ち、サイズ変換器３０３から出力される差し替え用エレメンタリストリームのアクセスユニットのサイズは、差し替え対象エレメンタリストリームのアクセスユニットのサイズと等しくなる。
【０１０８】
差し替え用エレメンタリストリームがライブ情報の場合、ライブ情報は符号化器３０５に入力され、符号化される。差し替えスイッチ３０７は、システムコントローラ３０６の指示により、差し替え対象エレメンタリストリームのフレームと差し替え用エレメンタリストリームのフレームを差し替え、差し替え後のトランスポートストリームを出力する。
【０１０９】
ＩＳＯ１１１７２−３に規定されているオーデイオエレメンタリストリームによる第３の実施の形態の動作例を図９に示す。
【０１１０】
第１の実施の形態および第２の実施の形態は、アクセスユニットのサイズは異なるままで、差し替え対象と差し替え用のエレメンタリストリームのＰＥＳパケットのサイズを等しくし、またＰＥＳパケットのヘッダの時刻情報を書き換えることによって、差し替えを実行するものである。第３の実施の形態は、差し替え用エレメンタリストリームのアクセスユニットのサイズを、差し替え対象エレメンタリストリームのサイズに合わせて変換することにより、差し替えを実行するものである。
【０１１１】
即ち、差し替え対象エレメンタリストリームと差し替え用エレメンタリストリームのアクセスユニットのサイズを等しくすることで、第１および第２の実施の形態で考慮されているスタッフィングの調整やデコーダバッファを破綻の回避するためのマージン設定を不要とすることができる。
【０１１２】
図１７に示したように、ＩＳＯ１１１７２−３に規定されているオーデイオエレメンタリストリームのフレーム（アクセスユニット）は、サイズが最大のフレームのサイズより１バイト小さい場合、フレームのヘッダのｐａｄｄｉｎｇ−ｂｉｔが０とされ、サイズが最大のフレームのサイズと等しい場合はヘッダのｐａｄｄｉｎｇ−ｂｉｔが１とされる。
【０１１３】
また、フレームの外部データ領域には、ユーザ定義可能なデータを組み込むことが可能である。この外部データのサイズはストリーム中には示されておらず、フレームのサイズからヘッダ、エラーチェック、およびオーデイオデータで使用されたビット数を減じて求めることができる。
【０１１４】
差し替え用エレメンタリストリームのフレームのｐａｄｄｉｎｇ−ｂｉｔが０で、差し替え対象エレメンタリストリームのフレームのｐａｄｄｉｎｇ−ｂｉｔが１であるとする。両方のフレームのサイズを等しくするには、差し替え用エレメンタリストリームのフレームを１バイト分大きくする必要がある（図９（Ａ））。
【０１１５】
サイズ変換器３０３は、フレームのｐａｄｄｉｎｇ−ｂｉｔの値を変更するもので、この場合、差し替え用エレメンタリストリームのフレームのｐａｄｄｉｎｇ−ｂｉｔが１に変更され、フレームの最後にダミーとして１バイトが加えられる。付加されたダミーデータは必ず外部データとして扱われるため、オーデイオのデコードには影響しない。また外部データを有効なユーザデータとして使用する場合は、差し替え時のサイズ変換処理によりダミーデータが加えられても良いようにユーザデータを定義しておく。
【０１１６】
一方、差し替え対象エレメンタリストリームのフレームが差し替え用エレメンタリストリームのフレームより、１バイト分小さい場合、差し替え用エレメンタリストリームのフレームを１バイト小さくする必要がある（図９（Ｂ））。１バイト小さくするためには、データから１バイトを削らなければならない。そのため、ｐａｄｄｉｎｇ−ｂｉｔが１である差し替え用エレメンタリストリームのフレームは、削除可能なダミーデータを１バイトリザーブして符号化される必要がある。
【０１１７】
ここでサイズ変換器３０３は、差し替え用エレメンタリストリームのフレームのｐａｄｄｉｎｇ−ｂｉｔを０に変更し、フレームの最後にリザーブされているダミーデータを削除し、差し替え用エレメンタリストリームと差し替え対象エレメンタリストリームのフレームのサイズを等しくする。
【０１１８】
以上のように、第３の実施の形態では、差し替え対象エレメンタリストリームと差し替え用エレメンタリストリームのアクセスユニットのサイズが等しくなることから、第１および第２の実施の形態で考慮されているスタッフィングの調整や、デコーダバッファの破綻を回避するためのマージンの設定が必要なく、分離と再多重化することなしに、本編多重化ストリームの中の差し替え対象エレメントリストリームを他の差し替え用エレメントリストリームに差し替えることができる。
【０１１９】
上述の第３の実施の形態の動作例は，ＩＳＯ１１１７２−３に規定されているオーデイオエレメンタリストストリームにもとづいて説明されたが、本発明は、アクセスユニットサイズを変更可能なあらゆるエレメンタリストリームにおいて同様に実施することができる。例えば、ＡＴＳＣ（Ｕｎｉｔｅｄ  Ｓｔａｔｅｓ  Ａｄｖａｎｃｅｄ  Ｔｅｌｅｖｉｓｉｏｎ  Ｓｙｓｔｅｍ  Ｃｏｍｍｉｔｔｅｅ）標準で規定されているＤｉｇｉｔａｌ  Ａｕｄｉｏ  Ｃｏｍｐｒｅｓｓｉｏｎ（ＡＣ−３）を差し替える場合にも適用できる。
【０１２０】
図１０に、ＡＴＳＣ  ＡＣ−３に規定されているオーデイオエレメンタリストリームのアクセスユニットの構成を示す。ＡＣ−３オーデイオのアクセスユニットは、シンクフレームと呼ばれる。シンクフレームのサイズは、シンク情報中にある５バイト固定長のframesizecodフィールドに示される。
【０１２１】
サンプリング周波数が４４．１ＫＨｚの場合、シンクフレームのサイズは一定ではなく、４８７バイトまたは４８８バイトの２つのシンクフレームのサイズが存在する。フレームのサイズが４８７バイトの時、このフレームのｆｒａｍｅｓｉｚｅｃｏｄフィールドの再下位ビットは０となり、４８８バイトの時、ｆｒａｍｅｓｉｚｅｃｏｄフィールドの再下位ビットは１となる。
【０１２２】
シンクフレームは、ユーザが定義できる外部データを符号化でき、外部データのサイズは、ストリーム中に示されておらず、フレームのサイズから外部データ以外のフィールドで使用されたビット数を減じたものに等しい。また外部データの中で、有効な外部データが存在することを示すフラグが存在し、フラグが１の場合は有効な外部データのサイズを示すフィールドが存在することを意味する。有効な外部データとして用いられなかったビットは、フレームのサイズをあわせるためのダミーデータである。
【０１２３】
図１１に、シンクフレームのサイズの調整例を示す。ＡＣ−３オーデイオのシンクフレームのシンク情報中にあるｆｒａｍｅｓｉｚｅｃｏｄの最下位ビットを１に変換し、外部データの先頭に１バイトのダミデータを付加することでサイズを１バイト大きくすることができる（図１１（Ａ））。一方、サイズを小さくする場合、差し替え用エレメンタリストリームのフレームに、外部データ内に削除可能なダミーデータを１バイトリザーブしておく。ここでサイズ変換器３０３は、差し替え用エレメンタリストリームのアクセスユニット（シンクフレーム）のシンク情報中のｆｒａｍｅｓｉｚｅｃｏｄの最下位ビットを０に変換し、外部データの先頭にあらかじめリザーブされている１バイトのダミーデータを削除することでサイズを１バイト小さくすることができる。
【０１２４】
上記のように第３の実施の形態は、アクセスユニットのサイズを変更できるあらゆるエレメンタリストリームに適用できる。サイズ変換によって書き換えられたデータがエラーチェックの入力となっている場合は、サイズ変換後にエラーチェクを計算し直すことでエラーチェックを正当な値に保つことができる。
【０１２５】
次に、本発明を適用した第４の実施の形態の構成例を図１２に示す。サイズ検出器３０２は、システムコントローラ４０１に指示された差し替え対象エレメンタリストリームのアクセスユニットのサイズ情報を検出し、符号化器４０２に供給する。ここで符号化器４０２は、サイズ情報に基づいてライブで入力されたライブ情報を符号化する。即ち、差し替え対象エレメンタリストリームと差し替え用エレメンタリストリームのアクセスユニットのサイズが等しくなるように、ライブ情報を符号化する。
【０１２６】
第４の実施の形態の構成例は、第３の実施の形態の構成例におけるライブ情報により差し替え用エレメンタリストリームが供給される場合に限り、さらに簡素化したものである。
【０１２７】
また、アクセスユニットのサイズ情報をアクセスユニットのヘッダ内でなく、本編トランスポートストリーム内に多重化しておくことにより、サイズ検出器３０２における検出処理をより単純にすることができる。
【０１２８】
例えば、本編がＩＳＯ／ＩＥＣ１３８１８−１に規定されているトランスポートストリームに基づいて多重化される場合、サイズ情報はトランスポートパケットのアダプテーション内のプライベートバイトのフィールドに多重化しておくことができる。サイズ検出器３０２は差し替えタイミングに先んじてサイズ情報を取り出すことが可能となり、符号化器４０２は、差し替えタイミングに先んじてサイズ変換および符号化を行うことができ、差し替え処理の遅延を無くすることができる。
【０１２９】
以上のようにして、分離と再多重化することなしに、差し替られるデータを本編から差し替えることができる。
【０１３０】
なお、上記したような処理を行うコンピュータプログラムをユーザに伝送する伝送媒体としては、磁気ディスク、ＣＤ−ＲＯＭ、固体メモリなどの記録媒体の他、ネットワーク、衛星などの通信媒体を利用することができる。
【０１３１】
【発明の効果】
第１および第２の本発明によれば、差し替え対象データを差し替え用データで差し替えることが容易となる。
【図面の簡単な説明】
【図１】本発明を適用したデータ差し替え装置の第１の実施の形態の構成例を示すブロック図である。
【図２】ＩＳＯ／ＩＥＣ１３８１８−１に規定されているＰＥＳパケットのデータ構造を示す図である。
【図３】ＩＳＯ／ＩＥＣ１３８１８−１に規定されているＰＥＳパケットのヘッダ書き換え処理を示す図である。
【図４】アンダーフロを回避するためのマージンを算出する方法を示す図である。
【図５】オーバーフロを回避するためのマージンを算出する方法を示す図である。
【図６】本発明を適用したデータ差し替え装置の第２の実施の形態の構成例を示すブロック図である。
【図７】パケットにスタッフィングを加えることによってパケットのサイズを調整できる多重化ストリームのＰＥＳパケットのヘッダ書き換え処理を示す図である。
【図８】本発明を適用したデータ差し替え装置の第３の実施の形態の構成例を示すブロック図である。
【図９】ＩＳＯ１１１７２−３に規定されているオーデイオのフレーム（アクセスユニット）のサイズの変換処理を示す図である。
【図１０】ＡＣ−３に規定されているオーデイオのシンクフレーム（アクセスユニット）の構成を示す図である。
【図１１】ＡＣ−３に規定されているオーデイオのシンクフレーム（アクセスユニット）のサイズの変換処理を示す図である。
【図１２】本発明を適用したデータ差し替え装置の第４の実施の形態の構成例を示すブロック図である。
【図１３】アナログベースバンド信号に対応する従来の差し替え装置の構成例を示すブロック図である。
【図１４】ＩＳＯ／ＩＥＣ１３８１８−１に規定されているトランスポートストリームの構成例を示す図である。
【図１５】ＩＳＯ／ＩＥＣ１３８１８−１に規定されているトランスポートストリームに適用されるデコーダモデルの構成例を示すブロック図である。
【図１６】デジタル信号に対応する従来の差し替え装置の構成例を示すブロック図である。
【図１７】ＩＳＯ１１１７２−３に規定されているオーデイオのフレーム（アクセスユニット）の構成を示す図である。
【図１８】ＰＥＳパケットのサイズが異なる差し替え対象と差し替え用のエレメンタリストリームを差し替えた場合の例を示す図である。
【図１９】フレーム（アクセスユニット）のサイズが異なる差し替え対象と差し替え用のエレメンタリストリームを差し替えた場合の例を示す図である。
【図２０】デコーダバッファがアンダーフロになる場合の例を示す図である。
【図２１】デコーダバッファがオーバーフロになる場合の例を示す図である。
【符号の説明】
１０１  多重化器，  １０２  ＰＥＳパケットヘッダ書換器，  １０３  差し替え用エレメンタリストリームサーバ，  １０４  符号化器，  １０５  差し替えスイッチ，  １０６  システムコントローラ，  ２０１  時刻情報検出器，  ２０２  システムコントローラ，２０３  時刻情報書換器，  ２０４  差し替え用ＰＥＳパケットサーバ，  ２０５  差し替えスイッチ，  ２０６  符号化器，２０７  ＰＥＳパケット化器，２０８  ＰＥＳパケットサイズ検出器，  ２０９  選択スイッチ，  ３０１  多重化器，  ３０２  サイズ検出器，  ３０３  サイズ変換器，  ３０４  選択スイッチ  ３０５  符号化器，  ３０６  システムコントローラ，  ３０７  差し替えスイッチ，  ４０１  システムコントローラ，４０２  符号化器，  ５０１  サーバ，  ５０２  選択スイッチ，  ５０３スイッチ，  ６０１  スイッチ，  ６０２  トランスポートバッファ，  ６０３  デコーダバッファ，  ６０４  デコーダ，  ７０１  分離器，  ７０２  エレメンタリストリームサーバ，  スイッチ，  システムコントローラＥ，  ７０５  多重化器
【図１】
0003622451.tif 000002
【図２】
0003622451.tif 000003
【図３】
0003622451.tif 000004
【図４】
0003622451.tif 000005
【図５】
0003622451.tif 000006
【図６】
0003622451.tif 000007
【図７】
0003622451.tif 000008
【図８】
0003622451.tif 000009
【図９】
0003622451.tif 000010
【図１０】
0003622451.tif 000011
【図１１】
0003622451.tif 000012
【図１２】
0003622451.tif 000013
【図１３】
0003622451.tif 000014
【図１４】
0003622451.tif 000015
【図１５】
0003622451.tif 000016
【図１６】
0003622451.tif 000017
【図１７】
0003622451.tif 000018
【図１８】
0003622451.tif 000019
【図１９】
0003622451.tif 000020
【図２０】
0003622451.tif 000021
【図２１】
0003622451.tif 000022