(57)【要約】【課題】  音に情報を埋め込む技術を利用して、主音声と同期した副音声を再生可能にするコンテンツ同期再生装置を提供することを課題とする。【解決手段】  あらかじめタイムコードが埋め込まれた音響信号を再生することにより発せられた音を、音響信号入力手段２２０が音響ファイルとして取得すると、タイムコード抽出手段２３０が、取得された音響ファイルから、埋め込まれているタイムコードを抽出し、このタイムコードを利用してスキップ時間算出手段２４０がスキップ時間を算出し、コンテンツ再生手段２５０が、算出されたスキップ時間だけスキップして抽出したコンテンツの再生を開始する。【選択図】  図４
2010117605.tif 000002
【特許請求の範囲】
【請求項１】
あらかじめタイムコードが埋め込まれた音響信号を再生することにより発せられた音を取得して、当該取得した音から埋め込まれたタイムコードを取得し、当該取得したタイムコードを利用してコンテンツを再生する装置であって、
時系列に変化するコンテンツを記憶したコンテンツ記憶手段と、
流れている音を音響信号として取得し、音響ファイルを作成する音響信号入力手段と、
前記音響ファイルから、埋め込まれているタイムコードを抽出するタイムコード抽出手段と、
前記抽出したタイムコードより前記コンテンツの再生をスキップするためのスキップ時間を算出するスキップ時間算出手段と、
前記コンテンツ記憶手段からコンテンツを抽出し、前記算出されたスキップ時間だけスキップして前記抽出したコンテンツの再生を開始するコンテンツ再生手段と、
を有することを特徴とするコンテンツ同期再生装置。
【請求項２】
請求項１において、
前記タイムコードは、本来Ｎｗビットで構成されたものを、最小ハミング距離を定めたＮｈ（Ｎｈ＞Ｎｗ）ビットの巡回符号に変換して埋め込まれていることを特徴とするコンテンツ同期再生装置。
【請求項３】
請求項２において、
前記Ｎｗ＝８、Ｎｈ＝１８であり、前記タイムコードとして、０〜２１１の範囲のシリアル番号を、最小ハミング距離４の１８ビットの巡回符号で表現し、同一巡回符号が４回繰り返して埋め込まれていることを特徴とするコンテンツ同期再生装置。
【請求項４】
請求項１から請求項３のいずれかにおいて、
前記タイムコードは、Ｎｗビットで構成されており、対応するＮｈ（Ｎｈ＞Ｎｗ）ビットに変換されて前記音響信号に少なくとも３回以上同一値が埋め込まれており、前記タイムコード抽出手段は、連続する２つのＮｈビットのビット列を抽出して比較し、両ビット列が一致した場合に限り、抽出したＮｈビットをタイムコード抽出の対象とすることを特徴とするコンテンツ同期再生装置。
【請求項５】
請求項１から請求項４のいずれかにおいて、
前記タイムコードは、Ｎｗビットで構成されており、対応するＮｈ（Ｎｈ＞Ｎｗ）ビットに変換されて前記音響信号に少なくとも３回以上同一値が埋め込まれており、前記タイムコード抽出手段は、時間的に近接した２種類のＮｗビットのビット列を抽出して比較し、両ビット列が一致した場合に限り、後に抽出したＮｗビットをタイムコードとして抽出することを特徴とするコンテンツ同期再生装置。
【請求項６】
請求項１から請求項５のいずれかにおいて、
前記スキップ時間算出手段は、前記タイムコード抽出手段から抽出されたタイムコードに所定の係数を乗じることにより実時間に換算し、実時間で設定された遅延時間を加算した値に基づいてスキップ時間を算出することを特徴とするコンテンツ同期再生装置。
【請求項７】
請求項１から請求項６のいずれかにおいて、
前記コンテンツ記憶手段は、複数のコンテンツを記憶し、前記コンテンツ再生手段は、外部からの指定により選択されたコンテンツを前記コンテンツ記憶手段から抽出し、再生を行うことを特徴とするコンテンツ同期再生装置。
【請求項８】
コンピュータを、請求項１から請求項７のいずれかに記載のコンテンツ同期再生装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、流れている音を取得し、当該音に埋め込まれていた情報を利用してコンテンツを同期再生する技術に関する。
【背景技術】
【０００２】
博物館、美術館、テーマパーク、イベント会場等に設置されたシアター内では、映像や展示物に対応する音声が流されている。映像や展示物の説明は、通常、日本語であるため、外国人には理解できない。そこで、外国人向けには、携帯型の同時通訳レシーバを貸し出し、この同時通訳レシーバに対して外国語の副音声を館内ワイヤレス放送することにより対応している。具体的には、５．１ｃｈなど多チャンネル対応の音声プレーヤの一部のチャンネルを副音声として使用し、ＦＭ電波や赤外線によるワイヤレス音声送信機を接続することにより実現している。
【特許文献１】特開２００６−３２３１６１号公報
【特許文献２】特開２００７−４８３４０号公報
【特許文献３】特開２００８−９１０４号公報
【特許文献４】特開２００８−１２９１９８号公報
【特許文献５】特開２００８−２１６５９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記従来の手法では、複数の外国語音声に対応させる必要がある場合、必要とするチャンネル数が多くなるという問題がある。また、主音声として５．１ｃｈなど多チャンネル対応の音声プレーヤの全チャンネルを用いたダイナミックなサラウンド音響を必要とする場合、副音声を収納するチャンネルを確保できないという問題がある。
【０００４】
一方、出願人は、音響信号に情報を埋め込んでおき、その音響信号を再生することにより発せられる音から、埋め込まれていた情報を取得する技術を開発しており（特許文献１〜５参照）、人に聞こえる音を邪魔することなく、音に情報を埋め込んで伝えることを可能としている。
【０００５】
そこで、本発明は、音に情報を埋め込む技術を利用して、主音声と同期した副音声を再生可能にするコンテンツ同期再生装置を提供することを課題とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、本発明では、あらかじめタイムコードが埋め込まれた音響信号を再生することにより発せられた音を取得して、当該取得した音から埋め込まれたタイムコードを取得し、当該取得したタイムコードを利用してコンテンツを再生する装置であって、時系列に変化するコンテンツを記憶したコンテンツ記憶手段と、流れている音を音響信号として取得し、音響ファイルを作成する音響信号入力手段と、前記音響ファイルから、埋め込まれているタイムコードを抽出するタイムコード抽出手段と、前記抽出したタイムコードより前記コンテンツの再生をスキップするためのスキップ時間を算出するスキップ時間算出手段と、前記コンテンツ記憶手段からコンテンツを抽出し、前記算出されたスキップ時間だけスキップして前記抽出したコンテンツの再生を開始するコンテンツ再生手段を有するコンテンツ同期再生装置を提供する。
【発明の効果】
【０００７】
本発明によれば、音響信号に埋め込まれていたタイムコードを抽出し、このタイムコードに対応する時間的位置からコンテンツを再生するようにしたので、流れている音と同期してコンテンツを再生することが可能となる。
【発明を実施するための最良の形態】
【０００８】
（１．タイムコードの埋め込み）
以下、本発明の好適な実施形態について説明する。本発明に係るコンテンツ同期再生装置は、タイムコードが埋め込まれた音響信号が音として再生された場合に、その音を音響信号として取得し、埋め込まれているタイムコードを抽出して、このタイムコードに対応した位置からコンテンツを再生するものである。そこで、まず、タイムコードの音響信号への埋め込みについて説明する。本発明においては、デジタルの音響信号をサンプリングし、得られたサンプルを所定数単位で音響フレームとして取得し、この音響フレームに対して周波数変換を行った後、所定周波数範囲の成分の強度を変更することにより、情報（タイムコード）の埋め込みを行う。
【０００９】
タイムコード埋め込み装置は、汎用のコンピュータに専用のプログラムを組み込むことにより実現される。また、タイムコード埋め込み装置が有する記憶手段には、埋め込み対象とする音響信号、タイムコードが記録されている。この記憶手段は、コンピュータに接続されたハードディスク等の記憶装置により実現される。
【００１０】
音響信号に埋め込まれるタイムコードは、音響信号の再生開始からの経過時間にほぼ比例した連続番号（シリアル番号）であり、所定の値を乗じることにより、音響信号先頭位置から実時間に変換することができるように構成されたものである。本実施形態では、タイムコードを“０”〜“２１１”の２１２個とし、８ビットで表現している。この８ビットの情報の各ビットを音響フレームに埋め込むことも可能であるが、誤り訂正を可能とするため１８ビットに変換する。この際、８ビットを変換することにより得られる１８ビット符号間のハミング距離が大きいほど、誤りに対する耐性が高くなる。そこで、本実施形態では、１８ビット符号間のハミング距離が最低４以上となるように、８ビットから１８ビットへの符号変換テーブルを作成する。タイムコード埋め込み装置では、事前に、符号変換テーブルの作成を行う。タイムコード埋め込み装置による符号変換テーブル作成のフローチャートを図１に示す。
【００１１】
タイムコード埋め込み装置は、最初に初期化処理を行う（Ｓ６０１）。具体的には、８ビット符号“０”に１８ビット符号“１”を対応付けて符号変換テーブルのｉ（＝０）番目に登録するとともに、８ビット符号ＫＦの初期値を１、１８ビット符号ＨＦの初期値を２とする。続いて、ｉ＝０に初期設定する（Ｓ６０２）。次に、１８ビット符号ＨＦと符号変換テーブルのｉ番目に既に登録されている他の１８ビット符号とのハミング距離を算出する（Ｓ６０３）。
【００１２】
算出したハミング距離が４未満の場合、ＨＦの値を１増加して更新した後（Ｓ６０４）、Ｓ６０２に戻って、次の１８ビット符号ＨＦについての処理を行う。一方、算出したハミング距離が４以上の場合、ｉの値を１増加して更新する（Ｓ６０５）。そして、ｉがＫＦ−１未満である場合には、Ｓ６０３に戻って、符号変換テーブル内のｉ番目に登録されている１８ビット符号とのハミング距離を算出する。Ｓ６０５の後、ｉがＫＦ−１以上となった場合には、１８ビット符号ＨＦを符号変換テーブルの８ビット符号ＫＦの位置に登録するとともに、ＫＦ、ＨＦの値をそれぞれ１ずつ増加して更新する（Ｓ６０６）。そして、ＨＦが２６２１４４未満である場合は、Ｓ６０２に戻って、次の８ビット符号ＫＦについての処理を行う。ＨＦが２６２１４４以上である場合は、全ての８ビット符号ＫＦに対応する１８ビット符号ＨＦが登録されたことになるので、符号変換テーブル作成処理を終了する。
【００１３】
このようにして作成された符号変換テーブルを図２に示す。図２に示すように、符号変換テーブルには、８ビット符号の各値０〜２１１について、１８ビット符号が対応付けて登録されている。１８ビット符号の２進表記を見るとわかるように、全ての１８ビット符号は互いにハミング距離が４以上となっている。なお、図２の例では、説明の便宜上、８ビット符号の１０進表記と、１８ビット符号の１０進表記及び２進表記を示しているが、現実には、８ビット符号のビット列と１８ビット符号のビット列が対応付けて登録されている。
【００１４】
符号変換テーブルは、事前に作成して記憶手段に記憶させておいても良いし、埋め込み直前に、図１に従った処理を実行して作成するようにしても良い。この符号変換テーブルを用いて、埋め込み装置は、８ビットのシリアル番号を１８ビットに変換した後、１８ビットを構成する各ビットを、各音響フレームに埋め込む。埋め込みの具体的な手法については、特許文献１〜５に示すような公知のものを用いることができる。本実施形態では、１８ビットを1ワードとして、各ワード単位で４回繰り返して埋め込む。１８ビットを４回繰り返して埋め込むためには、７２フレーム必要となる。ここで、１ワード１８ビットを４回繰り返して埋め込んだ場合の例を図３に示す。図３においては、７２個の音響フレームを時系列で模式的に示している。左側が過去で右側が時間の進行方向である。図３に示すように、先に１８ビット中のＬＳＢ（Least Significant Bit）が埋め込まれ、最後にＭＳＢ（Most Significant Bit）が埋め込まれる。図３に示した４回分は同一のワードが埋め込まれ、次の音響フレームからは、次の異なるワードが４回繰り返して埋め込まれる。
【００１５】
各音響フレームの時間的長さは、音響信号のサンプリング周波数、１音響フレームのサンプル数によって異なるが、音響信号のサンプリング周波数を４８ｋＨｚ、１音響フレームのサンプル数を２０４８とした場合、約４２．６ｍ秒となる。したがって、１８ビットを埋め込むのに必要とする音響信号の時間は７６８ｍ秒、４回繰り返した場合は、３．０７２秒となる。したがって、図２に示したように、２１２個のタイムコードが用意できる場合には、１１分弱の音響信号の全体に渡って、タイムコードを埋め込むことが可能になる。
【００１６】
（２．１．コンテンツ同期再生装置の構成）
図４は、本発明にかかるコンテンツ同期再生装置の一実施形態を示す機能ブロック図である。図２において、２１０はコンテンツ記憶部、２２０は音響信号入力手段、２３０はタイムコード抽出手段、２４０はスキップ時間算出手段、２５０はコンテンツ再生手段である。
【００１７】
コンテンツ記憶部２１０は、再生対象であるコンテンツを記憶した記憶装置であり、現実には、フラッシュメモリ等により実現される。音響信号入力手段２２０は、流れている音を音響信号として取得し、音響ファイルを作成する。具体的には、マイクロフォン、Ａ／Ｄ変換器、ＣＰＵおよび専用のプログラムにより実現される。タイムコード抽出手段２３０は、作成された音響ファイル内の音響信号から所定数のサンプルを音響フレームとして取得し、各音響フレームに埋め込まれていたビット値を認識するとともに、得られた複数のビット値で構成されるビット列に基づいて、タイムコードを抽出する。
【００１８】
スキップ時間算出手段２４０は、タイムコード抽出手段２３０により抽出されたタイムコードを用いて、コンテンツの再生をスキップするためのスキップ時間を算出する。コンテンツ再生手段２５０は、コンテンツ記憶部２１０からコンテンツを抽出し、算出されたスキップ時間だけスキップしてコンテンツの再生を開始する。具体的には、コンテンツ再生手段２５０は、ＣＰＵおよび専用のプログラム、Ｄ／Ａ変換機、イヤホン端子により実現される。
【００１９】
（２．２．コンテンツ同期再生装置の処理動作）
次に、図４に示したコンテンツ同期再生装置の処理動作について説明する。コンテンツ同期再生装置が起動すると、コンテンツ同期再生装置は、コンテンツ記憶部２１０内に格納されているコンテンツの選択画面を表示手段に提示する。利用者が、表示された複数のコンテンツから１つを選択する指示を行うと、コンテンツ同期再生装置は、選択内容を認識し、選択されたコンテンツを再生対象として認識する。
【００２０】
コンテンツ同期再生装置においては、並行して、タイムコード抽出手段２３０が巡回符号表を作成する。巡回符号表とは、図２に示した符号変換テーブルにおいて、変換元の８ビット基準符号に対応する変換後の１８ビットハフマン符号のビット列を１ビットずつ移動させた巡回ビットパターンを記録したものである。タイムコード抽出手段２３０は、図２に示したような符号変換テーブルを保有している。コンテンツ同期再生装置の処理能力に余裕があれば、タイムコード埋め込み装置と同様、図１のフローチャートに従った処理により図２に示したような符号変換テーブルを作成するようにしても良い。タイムコード抽出手段２３０は、図２に示したような符号変換テーブルにおいて、８ビット基準符号に対応付けられた１８ビットハミング符号のビット列を１ビットずつ移動した巡回ビットパターンを作成し、８ビット基準符号に対応付けて記録する。例えば、図２の８ビット基準符号“０”には、１８ビットハミング符号“００，００００，００００，００００，０００１”が正規のビットパターンとして対応付けられているので、タイムコード抽出手段２３０は、１ビット移動した１８ビット符号“００，００００，００００，００００，００１０”（１０進表記“２”）、２ビット移動した１８ビット符号“００，００００，００００，００００，０１００”（１０進表記“４”）、…、１７ビット移動した１８ビット符号“１０，００００，００００，００００，００００”（１０進表記“１３１０７２”）までの１７個の１８ビット符号を巡回ビットパターンとして作成する。このようにして、作成された巡回符号表の一例を図５に示す。
【００２１】
図５の巡回符号表においては、いずれも１０進表記で示してある。例えば、１行目の８ビット基準符号“０”に対しては、正規の１８ビットハミング符号“１”と１７個の巡回ビットパターン“２”“４” “８”“１６”“３２”“６４”“１２８”“２５６”“５１２”“１０２４”“２０４８”“４０９６”“８１９２”“１６３８４”“３２７６８”“６５５３６”“１３１０７２”が対応付けて記録される。
【００２２】
再生対象のコンテンツを認識するとともに、巡回符号表が準備できたら、コンテンツ同期再生装置内の音響信号入力手段２２０は、音響信号の入力処理を開始する。具体的には、マイクロフォンから入ってくる音を所定時間単位でデジタル変換して音響ファイルに記録する。デジタル変換の際、所定の周波数でサンプリングされることにより、音響ファイル内には、多数のサンプルの集合の形態で音響信号が記録される。この音響ファイルは、主メモリ内に記録されることになる。本実施形態では、音響信号入力手段２２０は、２秒単位で音響信号を取得し、音響ファイルの作成を行う。そして、音響信号入力手段２２０は、正式なタイムコードが確定するまで、音響ファイルの作成処理を繰り返し行う。
【００２３】
次に、タイムコード抽出手段２３０は、音響ファイル内の音響信号に埋め込まれたタイムコードを抽出する。具体的には、音響信号から所定数のサンプルを音響フレームとして取得し、この音響フレームに対して周波数変換を行った後、所定周波数範囲における周波数成分の状態を調べることにより、その音響フレームに埋め込まれていたビット値を判断する。音響フレームの周波数成分の状態からビット値を判断する手法の詳細については後述する。
【００２４】
タイムコード抽出手段２３０は、判断により得られたビット値をバッファに保存していく。抽出したビット数が３６に達した場合には、タイムコード抽出手段２３０は、バッファに保存された３６ビットのビット配列のうち、前半１８ビットと後半１８ビットの比較を行う。具体的には、前半１８ビットと後半１８ビットの各ビット同士が一致するかどうかを比較していく。前半１８ビットと後半１８ビットのうち１ビットでも異なる場合には、その音響ファイルに対する処理を終了し、次の音響ファイルに対する処理を行う。
【００２５】
前半１８ビットと後半１８ビットが完全に一致した場合には、次にその１８ビットのビット列と巡回符号表内のビットパターンとの照合を行う。照合の結果、一致するビットパターンが１８ビットハミング符号または巡回ビットパターンとして存在する場合には、適合パターン有りと判断し、対応する基準符号８ビットを抽出する。音響フレームから抽出された１８ビットのビット列が巡回ビットパターンのいずれかであった場合、これらのビットパターンは埋め込み時に埋め込んでいるはずであるので、対応する１８ビットハミング符号のビットパターンをずれた位置で読み込んでいると判断し、８ビット基準符号を抽出するのである。巡回符号表内のビットパターンとの照合の結果、一致するビットパターンが１８ビットハミング符号、巡回ビットパターンのいずれにも存在しない場合には、適合パターン無しと判断し、その音響ファイルに対する処理を終了し、次の音響ファイルに対する処理を行う。
【００２６】
巡回符号表内のビットパターンとの照合の結果、対応する基準符号８ビットが抽出された場合は、直前の音響ファイルから抽出された基準符号８ビット（仮タイムコード）との比較を行う。この結果、１０進法に換算した際に、現在の音響ファイルから抽出された基準符号８ビットが直前の音響ファイルから抽出された基準符号８ビットよりも“１”だけ大きい状態となっていない場合には、正しいタイムコードではないと判断し、現在の音響ファイルから抽出された基準符号８ビットを仮タイムコードとしてバッファに格納し、次の音響ファイルに対する処理を行う。
【００２７】
直前の音響ファイルから抽出された基準符号８ビットとの比較の結果、１０進法に換算した際に、現在の音響ファイルから抽出された基準符号８ビットが直前の音響ファイルから抽出された基準符号８ビットよりも“１”だけ大きい状態となっている場合には、現在の音響ファイルから抽出された基準符号８ビットを正しいタイムコードであると判断する。
【００２８】
タイムコード抽出手段２３０により正しいタイムコードが抽出されたら、スキップ時間算出手段４０が、そのタイムコードを用いて、コンテンツの再生をスキップするためのスキップ時間を算出する。具体的には、タイムコードを示す数字に所定の係数を乗じて再生からの秒数に変換する。本実施形態では、上述のように、１つのタイムコードの記録を３．０７２秒に渡って行うので、タイムコードに３．０７２を係数として乗じることになる。この結果、実時間に換算した値が得られる。さらに、タイムコード抽出手段２３０は算出した実時間に、設定されている遅延時間を加算してスキップ時間を算出する。この遅延時間は、コンテンツ再生装置が再生処理を開始するために必要な処理時間である。この遅延時間は、利用者が任意に設定可能となっている。
【００２９】
スキップ時間算出手段２４０によりスキップ時間が算出されたら、コンテンツ再生手段２５０は、算出されたスキップ時間だけスキップしてコンテンツの再生を開始する。具体的には、スキップ時間に１秒あたりのサンプル数４８０００を乗じて再生開始位置のサンプル番号を特定し、特定されたサンプル番号のサンプルから再生を開始する。
【００３０】
上記のようにして、流れている音に埋め込まれていたタイムコードに対応した時間的位置からコンテンツを再生するようにしたので、コンテンツを流れている音と連動させて再生することが可能となる。例えば、シアター内で映像を流すとともに、スピーカから主音声である日本語を発している場合に、コンテンツ同期再生装置としての機能を備えた携帯型レシーバで、主音声の日本語に同期させて副音声の英語を再生することができる。
【００３１】
（３．音響フレームへのビット値の埋め込み処理の詳細）
音響フレームへのビット値の埋め込みは、音響フレームに対して周波数解析を施し、所定の周波数範囲の成分をビット値に応じて変更することにより行うが、具体的には、上記特許文献１〜５に開示されているような様々な手法を用いることができる。以下では、本実施形態における特に好ましい手法について説明する。
【００３２】
（３．１．タイムコード埋め込み装置の構成）
ここから、タイムコード埋め込み装置の具体例について説明する。図６は、タイムコード埋め込み装置の構成を示す機能ブロック図である。図６において、１０は音響フレーム読込手段、２０は周波数変換手段、３０は周波数成分変更手段、４０は周波数逆変換手段、５０は改変音響フレーム出力手段、６０は記憶手段、６１は音響信号記憶部、６２は付加情報記憶部、６３は改変音響信号記憶部、７０はビット配列作成手段、８０は変換テーブル作成手段である。
【００３３】
音響フレーム読込手段１０は、付加情報の埋め込み対象とする元の音響信号から所定数のサンプルを１フレームとして読み込む機能を有している。周波数変換手段２０は、音響フレーム読込手段１０が読み込んだ音響信号のフレームをフーリエ変換等により周波数変換してスペクトルを生成する機能を有している。周波数成分変更手段３０は、生成されたスペクトルから所定の周波数範囲に相当するスペクトル集合を複数抽出し、付加情報記憶部６２から抽出したタイムコードよりビット配列作成手段７０が作成したビット配列に基づいて、スペクトル集合の状態を変更する機能を有している。周波数逆変換手段４０は、変更されたスペクトル集合を含む複数のスペクトルに対して周波数逆変換を行うことにより、改変音響フレームを生成する機能を有している。改変音響フレーム出力手段５０は、生成された改変音響フレームを順次出力する機能を有している。
【００３４】
記憶手段６０は、タイムコードを埋め込む対象とする音響信号を記憶した音響信号記憶部６１と、ビット列として構成され、音響信号に埋め込まれるタイムコードを記憶した付加情報記憶部６２と、タイムコード埋め込み後の改変音響信号を記憶する改変音響信号記憶部６３を有しており、その他処理に必要な各種情報を記憶するものである。ビット配列作成手段７０は、付加情報記憶部６２からタイムコードを抽出し、変換テーブル作成手段８０を参照し、対応するビット配列を作成する機能を有している。変換テーブル作成手段８０は、Ｎｗビットが取り得る２のＮｗ乗個の全ての基準符号に対して、互いにハミング距離が少なくとも４以上となるＮｈ（＞Ｎｗ）ビットのハミング符号を割り当てることにより、Ｎｗビットの基準符号とＮｈビットのハミング符号が対応付けられた符号変換テーブルを作成する機能を有している。
【００３５】
なお、本実施形態では、上記Ｎｗ、ＮｈをそれぞれＮｗ＝８、Ｎｈ＝１８としている。本実施形態では、付加情報記憶部６２からの抽出時には、８ビットを１ワードとして処理し、ビット配列作成手段７０によるビット配列作成後は、１８ビットを１ワードとして処理している。図６に示した各構成手段は、現実にはコンピュータおよびその周辺機器等のハードウェアに専用のプログラムを搭載することにより実現される。すなわち、コンピュータが、専用のプログラムに従って各手段の内容を実行することになる。
【００３６】
（３．２．タイムコード埋め込み装置の処理動作）
次に、図６に示したタイムコード埋め込み装置の処理動作について説明する。音響フレーム読込手段１０は、音響信号記憶部６１に記憶された音響信号から、所定数Ｎのサンプルを１音響フレームとして読み込む。音響フレーム読込手段１０が読み込む１音響フレームのサンプル数Ｎは、適宜設定することができるが、本実施形態では、サンプリング周波数が４８．０ｋＨｚの場合、２０４８サンプルとしている。したがって、音響フレーム読込手段１０は、２０４８サンプルずつ、順次音響フレームとして読み込んでいくことになる。
【００３７】
音響フレームとしては、ＡタイプとＢタイプが存在する。Ａタイプの音響フレーム、Ｂタイプの音響フレームは、それぞれ同タイプの先行する音響フレームの最後のサンプルの次のサンプルを先頭サンプルとして設定される。そして、ＡタイプとＢタイプの音響フレームは互いに所定数（本実施形態では１０２４）のサンプルを重複して設定される。例えば、Ａタイプの音響フレームを先頭からＡ１、Ａ２、Ａ３…とし、Ｂタイプの音響フレームを先頭からＢ１、Ｂ２、Ｂ３…とすると、Ａ１はサンプル１〜２０４８、Ａ２はサンプル２０４９〜４０９６、Ａ３はサンプル４０９７〜６１４４、Ｂ１はサンプル１０２５〜３０７２、Ｂ２はサンプル３０７３〜５１２０、Ｂ３はサンプル５１２１〜７１６８となる。なお、ＡタイプとＢタイプは相対的なものであるので、どちらが先であっても良い。すなわち、上記とは逆にＡ１がサンプル１０２５〜３０７２、Ａ２がサンプル３０７３〜５１２０、Ａ３がサンプル５１２１〜７１６８、Ｂ１がサンプル１〜２０４８、Ｂ２がサンプル２０４９〜４０９６、Ｂ３がサンプル４０９７〜６１４４であっても良い。
【００３８】
周波数変換手段２０は、振幅変換後の音響フレームに対して周波数変換を行って、その音響フレームのスペクトルを得る。具体的には、窓関数を利用して周波数変換を行う。周波数変換としては、フーリエ変換、ウェーブレット変換その他公知の種々の手法を用いることができる。本実施形態では、フーリエ変換を用いた場合を例にとって説明する。
【００３９】
一般に、所定の信号に対してフーリエ変換を行う場合、信号を所定の長さに区切って行う必要があるが、この場合、所定長さの信号に対してそのままフーリエ変換を行うと、擬似高調波成分が発生する。そこで、一般にフーリエ変換を行う場合には、ハニング窓と呼ばれる窓関数を用いて信号の値を変化させた後、変化後の値に対してフーリエ変換を実行する。
【００４０】
本実施形態においても、窓関数を利用しているが、Ａタイプの音響フレーム、Ｂタイプの音響フレームで、使用する窓関数を分けている。本実施形態では、図７（ａ）（ｂ）に示したような第１窓関数Ｗ（１，ｉ）、第２窓関数Ｗ（２，ｉ）を用意し、抽出側で認識し易いようにした。第１窓関数Ｗ（１，ｉ）は、Ａタイプの音響フレームに対して用いるためのものであり、図７（ａ）に示すように所定のサンプル番号ｉの位置において、最大値１をとり、後部においては、最小値０をとるように設定されている。どのサンプル番号の場合に最大値をとるかについては、窓関数Ｗ（１，ｉ）の設計によって異なってくるが、本実施形態では、後述する〔数式１〕で定義される。Ａタイプの音響フレームについてのフーリエ変換は、この窓関数Ｗ（１，ｉ）を乗じたものに対して行われることになる。
【００４１】
また、第２窓関数Ｗ（２，ｉ）は、Ｂタイプの音響フレームに対して用いるためのものであり、図７（ｂ）に示すように、所定のサンプル番号ｉの位置において、最大値１をとり、前部においては、最小値０をとるように設定されている。どのサンプル番号の場合に最大値をとるかについては、窓関数Ｗ（２，ｉ）の設計によって異なってくるが、本実施形態では、後述する〔数式２〕で定義される。Ｂタイプの音響フレームについてのフーリエ変換は、この窓関数Ｗ（２，ｉ）を乗じたものに対して行われることになる。
【００４２】
なお、上述のように、本実施形態においては、音響フレームは重複して読み込まれる。すなわち、奇数番目の音響フレームと偶数番目の音響フレームは、所定数のサンプルを重複して読み込む。上記のように、奇数フレームと偶数フレームでは、用いられる窓関数が異なるが、奇数フレームと偶数フレームは単に奇数か偶数かの違いだけであるため、どちらに対してどちらの処理を行っても良い。したがって、本明細書では、奇数フレーム、偶数フレームの一方をＡタイプフレーム、他方をＢタイプフレームと呼ぶことにする。本実施形態では、奇数フレームをＡタイプフレーム、偶数フレームをＢタイプフレームとして説明するが、逆に偶数フレームをＡタイプフレーム、奇数フレームをＢタイプフレームとしても良い。
【００４３】
本実施形態では、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）は、以下の〔数式１〕〔数式２〕で定義される。なお、図７において、横軸は時間軸（ｉ）である。ｉは、後述するように、各音響フレーム内のＮ個のサンプルに付した通し番号であるため時刻ｔに比例している。また、図７（ａ）（ｂ）において縦軸は信号の振幅値（レベル）を示す。図７（ａ）（ｂ）において縦軸は窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）の値を示しており、Ｗ（１，ｉ）、Ｗ（２，ｉ）の最大値はいずれも１である。
【００４４】
〔数式１〕
ｉ≦Ｎ／８のとき、Ｗ（１，ｉ）＝０．０
Ｎ／８＜ｉ≦３Ｎ／８のとき、Ｗ（１，ｉ）＝０．５−０．５ｃｏｓ（４π（ｉ−Ｎ／８）／Ｎ）
３Ｎ／８＜ｉ≦１１Ｎ／１６のとき、Ｗ（１，ｉ）＝１．０
１１Ｎ／１６＜ｉ≦１３Ｎ／１６のとき、Ｗ（１，ｉ）＝０．５＋０．５ｃｏｓ（８π（ｉ−１１Ｎ／１６）／Ｎ）
ｉ＞１３Ｎ／１６のとき、Ｗ（１，ｉ）＝０．０
【００４５】
〔数式２〕
ｉ≦３Ｎ／１６のとき、Ｗ（２，ｉ）＝０．０
３Ｎ／１６＜ｉ≦５Ｎ／１６のとき、Ｗ（２，ｉ）＝０．５−０．５ｃｏｓ（８π（ｉ−３Ｎ／１６）／Ｎ）
５Ｎ／１６＜ｉ≦５Ｎ／８のとき、Ｗ（２，ｉ）＝１．０
５Ｎ／８＜ｉ≦７Ｎ／８のとき、Ｗ（２，ｉ）＝０．５＋０．５ｃｏｓ（４π（ｉ−５Ｎ／８）／Ｎ）
ｉ＞７Ｎ／８のとき、Ｗ（２，ｉ）＝０．０
【００４６】
なお、図７および上記〔数式１〕〔数式２〕から明らかなように、窓関数Ｗ（１，ｉ）とＷ（２，ｉ）は、互いに非対称な形状である。これは、後述する抽出側において、両者の識別を容易にするためである。
【００４７】
本実施形態においては、奇数フレームと偶数フレームを、所定サンプルずつ重複して読み込むため、情報の埋め込みを行った後、音響信号に復元する際に、窓関数を乗じた奇数フレームと、窓関数を乗じた偶数フレームの重複サンプルを加算した場合に、ほぼ元の値に戻るようにしなければならない。このため、奇数フレームと偶数フレームの重複部分において、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）を加算すると、全区間固定値１になるように定義されている。
【００４８】
周波数変換手段２０が、Ａタイプの音響フレームに対してフーリエ変換を行う場合は、信号Ｘ（ｉ）（ｉ＝０，…，Ｎ−１）に対して、窓関数Ｗ（１，ｉ）を用いて、以下の〔数式３〕に従った処理を行い、変換データの実部Ａ（１，ｊ）、虚部Ｂ（１，ｊ）を得る。
【００４９】
〔数式３〕
Ａ（１，ｊ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂ（１，ｊ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
【００５０】
周波数変換手段２０が、Ｂタイプの音響フレームに対してフーリエ変換を行う場合は、信号Ｘ（ｉ＋Ｎ／２）（ｉ＝０，…，Ｎ−１）に対して、窓関数Ｗ（２，ｉ）を用いて、以下の〔数式４〕に従った処理を行い、変換データの実部Ａ（２，ｊ）、虚部Ｂ（２，ｊ）を得る。
【００５１】
〔数式４〕
Ａ（２，ｊ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘ（ｉ＋Ｎ／２）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂ（２，ｊ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘ（ｉ＋Ｎ／２）・ｓｉｎ（２πｉｊ／Ｎ）
【００５２】
上記〔数式３〕〔数式４〕において、ｉは、各音響フレーム内のＮ個のサンプルに付した通し番号であり、ｉ＝０，１，２，…Ｎ−１の整数値をとる。また、ｊは周波数の値について、値の小さなものから順に付した通し番号であり、ｉと同様にｊ＝０，１，２，…Ｎ／２−１の整数値をとる。サンプリング周波数が４８．０ｋＨｚ、Ｎ＝２０４８の場合、ｊの値が１つ異なると、周波数が約２３．４Ｈｚ異なることになる。
【００５３】
上記〔数式３〕〔数式４〕に従った処理を実行することにより、各音響フレームの各窓関数に対応するスペクトルが得られる。続いて、周波数成分変更手段３０が、生成されたスペクトルから所定周波数範囲のスペクトル集合を抽出する。本実施形態では、Ｆ１以上Ｆ２以下の範囲のものを抽出する。
【００５４】
周波数変換手段２０は、周波数変換を実行した後に、各スペクトル集合の平均値が設定値になるように変換する。いわゆる振幅を変換する処理を行う。この振幅変換は、各フレームごとのレベル差を軽減し、適切な情報の埋め込みが可能になるようにすることを目的としているため、設定値としては適宜設定することができるが、本実施形態では、１２８に設定するようにしている。
【００５５】
周波数変換手段２０は、得られたスペクトル集合に対して、振幅変換を行うにあたり、まず変換倍率の算出を行う。変換倍率の算出は、所定周波数範囲のスペクトル集合の実効強度値の平均である平均実効値で上記設定値を除算することにより行う。具体的には、Ａタイプの音響フレーム、Ｂタイプの音響フレームのスペクトル集合についての変換倍率Ｚ（１）、Ｚ（２）は、以下の〔数式５〕に従った処理により算出される。対象音響フレームが無音に近く、分母の二乗総和値が所定の値に満たない場合は、変換倍率を１．０に設定し、振幅変換は行わないようにする。振幅変換が実行されることにより、全ての音響フレームは、元の状態における信号強度に関わらず、各音響フレームのスペクトル集合の平均実効値が設定値となるように振幅変換された状態で、情報の埋め込みが行われることになる。
【００５６】
〔数式５〕
Ｚ（１）＝Ｚｏ／［Σj=m,…,m+2G-1｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝］1/2
Ｚ（２）＝Ｚｏ／［Σj=m,…,m+2G-1｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝］1/2
【００５７】
上記〔数式５〕において、Ｚｏ＝２Ｇであり、本実施形態では、Ｇ＝８０であるため、Ｚｏ＝１６０である。
【００５８】
さらに、ｊ＝ｍ，…，ｍ＋２Ｇ−１（周波数Ｆ１，．．．，Ｆ２に相当）の範囲で、Ａ（１，ｊ）およびＢ（１，ｊ）の各々の要素に対してＺ（１）を乗じ、Ａ（２，ｊ）およびＢ（２，ｊ）の各々の要素に対してＺ（２）を乗じることにより、振幅変換を行う。以下説明において、Ａ（１，ｊ）、Ｂ（１，ｊ）、Ａ（２，ｊ）、Ｂ（２，ｊ）はこれらの振幅変換を行った値とする。
【００５９】
周波数成分変更手段３０は、Ａタイプの音響フレームについて、ビット配列作成手段７０が作成したビット配列に応じて、所定周波数成分の割合を変更する処理を行う。本発明では、ビット配列を１ビットずつ読み込み、Ａタイプ、Ｂタイプの１対の音響フレームに対して１ビットの情報を埋め込む。埋め込まれる１ビットの値は、“０” “１”の２通りがある。本実施形態では、これらを値１、値２と定義する。２種類の符号を埋め込むことができるという点で、これらを符号１、符号２と表現することも可能である。この際、“０”“１”の２通りのうち、いずれを値１、値２（符号１、符号２）と定義しても良い。抽出側において、埋め込み側で埋め込まれた１ビットが特定できれば良いためである。したがって、この定義は、埋め込み側と抽出側で一致している必要がある。
【００６０】
周波数成分の変更の手法としては、様々なものが考えられるが、本実施形態では、人間の聴覚心理特性である音脈分凝の原理を利用する。ここで、音脈分凝について説明しておく。音脈分凝とは、時系列に高い音と低い音が交互に進行するパターンに対して、人間が、あたかも高低２つのトラックが連続して流れるように音を補間して聞いてしまう錯覚現象である。
【００６１】
たとえば、図８（ａ）に示すように、３つの低い音である低音１、低音３、低音５と３つの高い音である高音２、高音４、高音６が、低音１、高音２、低音３、高音４、低音５、高音６の順に演奏されている場合を考えてみる。低音１、低音３、低音５と高音２、高音４、高音６は１オクターブ程度離れており、低い音と高い音は同時に演奏されることはないが、時間的間隔は、ほぼ連続しているものとする。この場合、人間には、図８（ｂ）に示すように、低い音と高い音が演奏されていない部分も補間されて演奏されているように聞こえる。すなわち、実際の演奏は単旋律であるのに、人間には、図８（ｂ）に示すように、高音１´、高音３´、高音５´、低音２´、低音４´、低音６´が補間されて複旋律であるように聞こえる。例えば、高音３´は高音２と高音４が連続的につながるように、高音２と高音４の平均的な成分に聞こえる。また、末端部の高音１´と低音６´についても、隣接する高音２と低音５に近い成分で、各々低音１と高音６に対応するように聞こえる。しかし、マイクロフォン等の電気音響装置は、図８（ａ）に示したものをそのままの音として取得することになる。本実施形態では、このような性質を利用する。なお、補間された音は、前後に演奏されている音と必ずしも同じレベルに補間されて聴こえるのではなく、大雑把に言って、前後に演奏されている音の５０％程度があたかも補間されているように聞こえる。
【００６２】
具体的には、埋め込み装置で、音響信号から抽出した所定数のサンプルで構成される音響フレーム内の所定周波数範囲の周波数成分を変更するに際し、その強弱が音脈分凝を発生させるような状態に変更する。これにより、人間には、音が途切れたようには聞こえないが、抽出装置では、その明確な変化を認識することができる。
【００６３】
本実施形態では、音脈分凝の原理を利用して、音響フレームの変更対象周波数帯の成分を２つの状態に変更し、１ビットの情報を埋め込むようにしている。ここで、埋め込み処理の前後における音響フレームの所定周波数成分の変化の状態について説明する。図９に、本実施形態によるＡタイプ、Ｂタイプの１音響フレームの所定周波数成分の状態を示す。図９に示す各音響フレームにおいて、横軸は時間方向、縦軸は周波数方向を示している。
【００６４】
図９においては、縦軸の周波数方向において、周波数領域が４つに区分されているが、上から２番目と３番目の領域、すなわち、周波数Ｆ１以上Ｆ２以下の間が変更対象周波数帯であり、最上部すなわち周波数Ｆ２超、最下部すなわちＦ１未満は、変更対象でない周波数帯である。すなわち、本実施形態では、周波数Ｆ１以上Ｆ２以下を所定周波数範囲として、スペクトル集合の強度を変更することになる。図９（ａ）に示すように、Ａタイプ音響フレームの変更対象周波数帯については、高周波側におけるスペクトルを１Ｕ、低周波側におけるスペクトルを１Ｄで表現することとする。また、図９（ｂ）に示すように、Ｂタイプ音響フレームの変更対象周波数帯については、高周波側におけるスペクトルを２Ｕ、低周波側におけるスペクトルを２Ｄで表現することとする。
【００６５】
本実施形態で、符号１を埋め込む場合、図９（ｃ）（ｅ）に示すように、１Ｄと２Ｕの強度の積を相対的に強い状態に変更し、１Ｕと２Ｄの強度の積を相対的に弱い状態に変更する。この状態を“状態１”と呼ぶことにする。符号２を埋め込む場合は、図９（ｄ）（ｆ）に示すように、１Ｕと２Ｄの強度の積を相対的に強い状態に変更し、１Ｄと２Ｕの強度の積を相対的に弱い状態に変更する。この状態を“状態２”と呼ぶことにする。網掛けされた部分の濃さは、同濃度のものは、積を求めるための組となるスペクトルであることを示している。網掛けの色が濃い方が相対的に強度が強い状態に変更される組を示している。
【００６６】
本実施形態では、図９（ｃ）（ｅ）または（ｄ）（ｆ）に示すような２つの状態にＡタイプ、Ｂタイプの音響フレームの周波数成分を変更することにより、情報の埋め込みを行っている。２つの状態であるので１ビット分の情報量に相当する。
【００６７】
本実施形態では、上記変更対象周波数帯Ｆ１〜Ｆ２を、“１．７ｋＨｚ〜３．４ｋＨｚ”に設定する。これは、以下のような理由による。すなわち、音声通信として普及度の高い携帯電話機を受信端末として利用する場合、上限については、電話回線帯域および携帯電話機の上限である３．４ｋＨｚとする必要がある。これは、携帯電話機の内部に搭載されているローパスフィルターが、電話交換機に合わせて、３．４ｋＨｚ以下に対応したものとなっているためである。そこで、下限については、上限の３．４ｋＨｚから１オクターブ下がった１．７ｋＨｚとすることとした。なお、“１．７ｋＨｚ”“３．４ｋＨｚ”という値は、代表的な値であり、必ずしも正確な値である必要はなく、そこから若干ずれた値であっても良い。
【００６８】
図９に示した例では、相対的に強い状態と弱い状態に変更することについて説明したが、この強弱の程度については、状況に応じて設定することが可能である。両者の割合は、以下に述べるように、大きいほど抽出時の精度が高くなるが、補間される割合は不完全になり、再生時に不連続成分によるノイズが聞こえる。一方、両者の割合が均等であるほど再生品質は原音に近付くが、埋め込んだビットの抽出ができなくなり、再生品質と抽出精度はトレードオフの関係になる。例えば、強い方を１００％、弱い方を０％とした場合、音脈分凝により、補間される部分の音は図９のような変更を行なう前に原音響信号で鳴っていた音の５０％程度となることが確認されている。
【００６９】
そこで、強い方を７０％、弱い方を３０％とした場合、音脈分凝により、補間される部分の音は図９のような変更を行なう前に原音響信号で鳴っていた音とほぼ同程度となり、この割合が抽出精度を維持できる限界であることが確認されている。このため、相対的に強いスペクトル集合と、相対的に弱いスペクトル集合の強度の割合を７０％と３０％とすることを目標に設定することが好ましい。これを実現するため、本実施形態では、後述する具体的な処理において、強い状態を設定するための係数α＝０．７、弱い状態を設定するための係数β＝０．３とする。ただし、強い状態に変更すべきスペクトル集合の強度が元々小さい場合には、係数α、βを補正する必要が生じる。このため、周波数成分変更手段３０は、まず、以下の〔数式６〕に従った処理を実行することにより、弱い状態に変更すべきスペクトル集合に対する強い状態に変更すべきスペクトル集合の強度割合γを算出する。
【００７０】
〔数式６〕
Ｅ１ｄ＝Σj=m,…,m+G-1｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝
Ｅ２ｄ＝Σj=m,…,m+G-1｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝
Ｅ１ｕ＝Σj=m+G,…,m+2G-1｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝
Ｅ２ｕ＝Σj=m+G,…,m+2G-1｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝
埋め込みデータが値１の場合、γ＝（Ｅ１ｄ・Ｅ２ｕ）／（Ｅ１ｕ・Ｅ２ｄ）
埋め込みデータが値２の場合、γ＝（Ｅ１ｕ・Ｅ２ｄ）／（Ｅ１ｄ・Ｅ２ｕ）
【００７１】
上記〔数式６〕において、ｍは変更対象周波数帯の下限の成分の番号、ｍ＋２Ｇは変更対象周波数帯の上限の成分の番号である。例えば、変更対象周波数帯として、１．７ｋＨｚ〜３．４ｋＨｚを設定する場合、ｍ＝１６０、ｍ＋２Ｇ＝３２０となる。したがって、１つの周波数領域の幅Ｇ＝８０である。
【００７２】
そして、さらに強度割合γの値に応じて、周波数成分変更手段３０は、以下の〔数式７〕に従った処理を実行することにより、係数α、βを補正して係数α´、β´を得る。
【００７３】
〔数式７〕
０．０１≦γ＜１．０の場合、α´＝α・γ-1/2、β´＝β・γ1/2
γ＜０．０１の場合、α´＝１０．０・α、β´＝０．１・β
【００７４】
なお、γ≧１．０の場合は、補正を行わない。さらに、周波数成分変更手段３０は、埋め込むべき情報が“値１”である場合、以下の〔数式８〕に従った処理を実行することにより、周波数成分の状態を“状態１”、すなわち、図９（ｃ）（ｅ）に示したような状態に変更する。
【００７５】
〔数式８〕
ｊ＝ｍ〜ｍ＋Ｇ−１の各成分に対して
Ｅ（１，ｊ）＝｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ａ´（１，ｊ）＝Ａ（１，ｊ）・Ｅ（１，ｊ）・α／｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ｂ´（１，ｊ）＝Ｂ（１，ｊ）・Ｅ（１，ｊ）・α／｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ｅ（２，ｊ）＝｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
Ａ´（２，ｊ）＝Ａ（２，ｊ）・Ｅ（２，ｊ）・β／｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
Ｂ´（２，ｊ）＝Ｂ（２，ｊ）・Ｅ（２，ｊ）・β／｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
ｊ＝ｍ＋Ｇ〜ｍ＋２Ｇ−１の各成分に対して
Ｅ（１，ｊ）＝｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ａ´（１，ｊ）＝Ａ（１，ｊ）・Ｅ（１，ｊ）・β／｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ｂ´（１，ｊ）＝Ｂ（１，ｊ）・Ｅ（１，ｊ）・β／｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ｅ（２，ｊ）＝｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
Ａ´（２，ｊ）＝Ａ（２，ｊ）・Ｅ（２，ｊ）・α／｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
Ｂ´（２，ｊ）＝Ｂ（２，ｊ）・Ｅ（２，ｊ）・α／｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
【００７６】
埋め込むべき情報が“値２”である場合は、以下の〔数式９〕に従った処理を実行することにより、周波数成分の状態を“状態２” 、すなわち、図９（ｄ）（ｆ）に示したような状態に変更する。
【００７７】
〔数式９〕
ｊ＝ｍ〜ｍ＋Ｇ−１の各成分に対して
Ｅ（１，ｊ）＝｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ａ´（１，ｊ）＝Ａ（１，ｊ）・Ｅ（１，ｊ）・β／｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ｂ´（１，ｊ）＝Ｂ（１，ｊ）・Ｅ（１，ｊ）・β／｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ｅ（２，ｊ）＝｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
Ａ´（２，ｊ）＝Ａ（２，ｊ）・Ｅ（２，ｊ）・α／｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
Ｂ´（２，ｊ）＝Ｂ（２，ｊ）・Ｅ（２，ｊ）・α／｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
ｊ＝ｍ＋Ｇ〜ｍ＋２Ｇ−１の各成分に対して
Ｅ（１，ｊ）＝｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ａ´（１，ｊ）＝Ａ（１，ｊ）・Ｅ（１，ｊ）・α／｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ｂ´（１，ｊ）＝Ｂ（１，ｊ）・Ｅ（１，ｊ）・α／｛Ａ（１，ｊ）2＋Ｂ（１，ｊ）2｝1/2
Ｅ（２，ｊ）＝｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2＋Ａｒ（２，ｊ）2＋Ｂｒ（２，ｊ）2｝1/2
Ａ´（２，ｊ）＝Ａ（２，ｊ）・Ｅ（２，ｊ）・β／｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
Ｂ´（２，ｊ）＝Ｂ（２，ｊ）・Ｅ（２，ｊ）・β／｛Ａ（２，ｊ）2＋Ｂ（２，ｊ）2｝1/2
【００７８】
なお、上記〔数式７〕に従った処理を実行して係数α´、β´を得た場合は、上記〔数式８〕〔数式９〕において、係数α、βに代えて係数α´、β´を用いる。
【００７９】
周波数逆変換手段４０は、上記のようにして、周波数成分の状態が変更されたフレームスペクトルを周波数逆変換して改変音響フレームを得る処理を行う。この周波数逆変換は、当然のことながら、周波数変換手段２０が実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。
【００８０】
具体的には、Ａタイプの音響フレームに対しては、周波数逆変換手段４０は、上記〔数式８〕〔数式９〕のいずれかにより得られたスペクトルの左チャンネルの実部Ａ´（１，ｊ）等、虚部Ｂ´（１，ｊ）等を用いて、以下の〔数式１０〕に従った処理を行い、Ｘ´（ｉ）を算出する。なお、上記〔数式８〕〔数式９〕において改変されていない周波数成分については、Ａ´（１，ｊ）等として、元の周波数成分であるＡ（１，ｊ）等を用いる。周波数逆変換を計算するにあたり、Ａ´（１，ｊ）およびＢ´（１，ｊ）に対しては〔数式５〕におけるＺ（１）を除することにより、同時に振幅逆変換を施す必要がある。
【００８１】
〔数式１０〕
Ｘ´（ｉ）＝１／Ｎ・｛ΣjＡ´（１，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）／Ｚ（１）−ΣjＢ´（１，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）／Ｚ（１）｝＋Ｘｐ（ｉ＋Ｎ／２）
【００８２】
上記〔数式１０〕においては、式が繁雑になるのを防ぐため、Σj=0,…,N-1をΣjとして示している。上記〔数式１０〕における “＋Ｘｐ（ｉ＋Ｎ／２）”の項は、直前に改変された改変音響フレームのデータＸｐ（ｉ）が存在する場合に、時間軸上Ｎ／２サンプル分重複することを考慮して加算するためのものである。上記〔数式１０〕によりＡタイプの改変音響フレームの左チャンネルの各サンプルＸ´（ｉ）が得られることになる。
【００８３】
Ｂタイプの音響フレームに対しては、周波数逆変換手段４０は、上記〔数式８〕〔数式９〕のいずれかにより得られたスペクトルの実部Ａ´（２，ｊ）、虚部Ｂ´（２，ｊ）を用いて、以下の〔数式１１〕に従った処理を行い、Ｘ´（ｉ）を算出する。なお、上記〔数式８〕〔数式９〕において改変されていない周波数成分については、以下の〔数式１１〕においてはＡ´（２，ｊ）、Ｂ´（２，ｊ）として、元の値であるＡ（２，ｊ）、Ｂ（２，ｊ）を用いる。周波数逆変換を計算するにあたり、Ａ´（２，ｊ）およびＢ´（２，ｊ）に対しては〔数式５〕におけるＺ（２）を除することにより、同時に振幅逆変換を施す必要がある。
【００８４】
〔数式１１〕
Ｘ´（ｉ＋Ｎ／２）＝１／Ｎ・｛ΣjＡ´（２，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）／Ｚ（２）−ΣjＢ´（２，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）／Ｚ（２）｝＋Ｘｐ（ｉ＋Ｎ）
【００８５】
上記〔数式１１〕によりＢタイプの改変音響フレームの各サンプルＸ´（ｉ）が得られることになる。
【００８６】
改変音響フレーム出力手段５０は、周波数逆変換手段４０の処理により得られたＡタイプの改変音響フレーム、Ｂタイプの改変音響フレームを順次出力ファイルに出力する。
【００８７】
次に、図６に示したタイムコード埋め込み装置の処理の全体的な流れについて説明する。埋め込み装置を起動すると、まず、変換テーブル作成手段８０が、Ｎｗビットの基準符号とＮｈビットのハミング符号が対応付けられた符号変換テーブルを作成する。変換テーブル作成手段８０による符号変換テーブル作成の処理は、既に説明したように図１のフローチャートに従ったものとなる。
【００８８】
続いて、符号変換テーブル作成処理後の埋め込み装置の処理を、図１０のフローチャートに従って説明する。本発明では、同一のシリアル番号を埋め込む処理を、設定された所定回数Ｎａだけ繰り返して実行する。例えば、Ｎａ＝４と設定されている場合、同一のシリアル番号が４回繰り返して埋め込まれる。
【００８９】
図１０においては、まず、ビット配列作成手段７０は、付加情報記憶部６２から抽出したタイムコードについて、変換テーブル作成手段８０を参照し、対応するビット配列を作成する（Ｓ１０１）。具体的には、まず、付加情報記憶部６２からタイムコード（８ビット）を抽出し、図２に示した符号変換テーブルを参照し、対応するハミング符号で構成される１８ビットのビット配列を抽出する。
【００９０】
そして、この１８ビットが、タイムコード埋め込み装置として用いられるコンピュータ内のレジスタに読み込まれることになる。このように、付加情報記憶部６２においては、１ワードは８ビットであるが、埋め込み処理時は、この１８ビットの配列で、タイムコード１ワード分の処理を行う。
【００９１】
次に、周波数成分変更手段３０が、レジスタに保持されたＮｈ（＝１８）ビットから１ビットを読み込む処理を行う（Ｓ１０２）。続いて、音響フレーム読込手段１０が、音響信号記憶部６１に記憶された音響信号から、所定数のサンプルをＡタイプの１音響フレームとして読み込み、周波数変換手段２０が周波数変換を行って、得られたフレームスペクトルに対して振幅変換を行う（Ｓ１０３）。具体的には、まず、読み込んだ音響フレームに対して、周波数変換を行って、その音響フレームのスペクトルであるフレームスペクトルを得る。すなわち、各音響フレームについて、窓関数Ｗ（１，ｉ）を用いて、上記〔数式２〕に従った処理を行う。そして、上記〔数式５〕に従った処理を実行してＺ（１）を算出し振幅変換を行う。同様に、音響フレーム読込手段１０が、音響信号記憶部６１に記憶された音響信号から、所定数のサンプルをＢタイプの１音響フレームとして読み込み、周波数変換手段２０が周波数変換を行って、得られたフレームスペクトルに対して振幅変換を行う（Ｓ１０４）。具体的には、まず、読み込んだ音響フレームに対して、周波数変換を行って、その音響フレームのスペクトルであるフレームスペクトルを得る。すなわち、各音響フレームについて、窓関数Ｗ（２，ｉ）を用いて、上記〔数式３〕に従った処理を行う。そして、上記〔数式５〕に従った処理を実行してＺ（２）を算出し振幅変換を行う。
【００９２】
続いて、周波数成分変更手段３０が、読み込んだビット値に応じてＡタイプ音響フレームおよびＢタイプ音響フレームの周波数成分の状態を変更するにあたり、〔数式６〕〔数式７〕に従った処理を実行して変換割合α、βを決定する処理を行う（Ｓ１０５）。この決定された変換割合を用いて、周波数成分変更手段３０は、ビット配列作成手段７０から受け取った値１、値２に応じて上記〔数式８〕〔数式９〕に従った処理を実行し、変更対象周波数帯の成分の状態を“状態１”、“状態２”に応じた状態のいずれかに変更する（Ｓ１０６）。
【００９３】
次に、周波数逆変換手段４０が、上記Ｓ１０６の処理によりＡタイプの音響フレームに対応する各スペクトル集合の強度が変更されたスペクトルを振幅逆変換、周波数逆変換して改変音響フレームを得る処理を行う（Ｓ１０７）。この振幅逆変換は〔数式５〕で算出したＺ（１）の逆数をスペクトルに乗じることにより行なう。この周波数逆変換は、当然のことながら、周波数変換手段２０がＳ１０３において実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ逆変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。具体的には、上記〔数式８〕〔数式９〕のいずれかにより得られたスペクトルの実部Ａ´（１，ｊ）等、虚部Ｂ´（１，ｊ）等を用いて、上記〔数式１０〕に従った処理を行い、Ｘ´（ｉ）を算出する。改変音響フレーム出力手段５０は、得られた改変音響フレームを順次出力ファイルに出力する。
【００９４】
同様に、周波数逆変換手段４０が、上記Ｓ１０６の処理によりＢタイプの音響フレームに対応する各スペクトル集合の強度が変更されたスペクトルを振幅逆変換、周波数逆変換して改変音響フレームを得る処理を行う（Ｓ１０８）。具体的には、振幅逆変換は〔数式５〕で算出したＺ（２）の逆数をスペクトルに乗じることにより行ない、上記〔数式８〕〔数式９〕のいずれかにより得られたスペクトルの実部Ａ´（２，ｊ）等、虚部Ｂ´（２，ｊ）等を用いて、上記〔数式１１〕に従った処理を行い、Ｘ´（ｉ）を算出する。
【００９５】
改変音響フレーム出力手段５０は、得られた改変音響フレームを順次出力ファイルに出力する。こうして、ＡタイプおよびＢタイプの２つの音響フレームに対する処理を終えたら、周波数成分変更手段３０がビット配列中の次の１ビットを読み込む（Ｓ１０２）。以上のような処理を音響信号の全サンプルに渡って実行していく。すなわち、所定数のサンプルを音響フレームとして読み込み、音響信号から読み込むべき音響フレームがなくなったら（Ｓ１０３、Ｓ１０４）、処理を終了する。なお、Ｓ１０１において読み込んだ１ワード分のビット配列（Ｎｈ＝１８ビット）の各ビットに対応する処理を終えた場合、設定された所定回数Ｎａに達していないときは、先頭のビットに戻ってＳ１０３〜Ｓ１０８の処理を繰り返し実行する。設定された所定回数Ｎａに達したときは、Ｓ１０２からＳ１０１に戻り、次のタイムコードを読み込んでビット配列を作成する処理を行うことになる。この結果、全ての音響フレームに対して処理を行った全ての改変音響フレームが出力ファイルに記録されて、改変音響信号として得られる。得られた改変音響信号は、記憶手段６０内の改変音響信号記憶部６３に出力され、記憶される。
【００９６】
なお、本実施形態では、タイムコードを８ビットとし、符号変換テーブルにより１８ビットのビット配列に変換して処理をする場合について説明したが、本発明では、抽出側と取り決めがある限り、タイムコードを他のビット数単位で記録することが可能である。
【００９７】
上記のようにして得られた改変音響信号のうち、付加情報が埋め込まれている部分については、変更対象周波数帯の成分は、上記状態１、状態２の２通りの分布しかないことになる。しかし、変更対象周波数帯の成分以外については、元の音響信号のままであるので、制作者の設定に基づいた種々な分布になる。
【００９８】
以上、タイムコード埋め込み装置について説明したが、ここで、本実施形態である振幅変換を用いた埋め込みおよび抽出の手法について図１１から図１４を用いて説明する。図１１および図１２は、比較のために、振幅変換を用いない場合の埋め込み処理および抽出処理を示し、図１３および図１４は本実施形態における振幅変換を用いた埋め込み処理および抽出処理を示す。これらの説明図においては、音響フレーム奇数および偶数３対分について、３ビットの情報を埋め込むことを想定した音響信号の信号波形を示しており、説明の便宜上、音響フレームが互いに重複しない状態で示している。各図において、左端の波形は時間次元の通常の音響信号波形を示しており、横方向は時間軸であり、右に向かうに従って時間が進行し、縦方向は強度（振幅）である。中央または右端の波形は周波数変換後の所定の周波数範囲のスペクトル成分の合算値を信号波形で表現しており、仮想的にバンドパスフィルターを通した後の信号波形になっている。縦方向は同様に強度であり、本来は左端に比べ顕著に低くなるが、ここでは説明の都合上、左端と同程度に拡大して表現している。また、２種類の波形のレベルも本来は差があるが、ここでは同一レベルで表現している。実際には、周波数変換後のデータとして所定の周波数範囲外の高周波数成分や低周波数成分も存在するが、これらについては改変を加えないという前提で図示しておらず、図９に従った埋め込みを行なう２種の周波数帯域成分に限定して２種の信号波形で示している。
【００９９】
図１１（ａ）は原音響信号を示しており、最初の１対の音響フレームは全体に渡って強度がほぼ一定、中央の１対の音響フレームは奇数フレームの強度が小さく偶数フレームの強度が大きいものであり、最後の１対の音響フレームは奇数フレームの強度が大きく偶数フレームの強度が小さいものである。このような音響信号に対して、周波数変換を行った結果が図１１（ｂ）で、図９で示されように埋め込み対象成分は上下２分割して成分変更を施す都合上、図１１（ｂ）では（ｂ−１）および（ｂ−２）の２種の波形に分離して表現した。周波数変換後の波形形状は周波数ごとに異なり、図１１（ａ）と必ずしも相似形にはならないが、ここでは周波数変換前と同様になると仮定して説明する。図１１（ｂ−１）および（ｂ−２）に対して、［０，０，０］という３ビットのデータを図９で説明した方法に基づいて埋め込むことにより（図９ではビット０は符号１に相当する）、図１１（ｃ−１）および（ｃ−２）が得られる。最初の１対は図９のようなパターンが表現できているが、残り２対の上下一方は、原段階に対して逆方向に大小関係を構築することが要求され、品質維持の都合上、適切なパターンが構築できていないことがわかる。このような改変を加えた結果に対して、周波数逆変換を行った結果が図１１（ｄ）である。一般に音響信号波形の外形（エンベロープという）はエネルギー分布が大きい低周波成分で決定され、これらは本願では所定の周波数範囲外の信号成分に含まれ、図１１（ｃ）の段階では改変が加えられていないため、周波数逆変換後の図１１（ｄ）は周波数変換前の図１１（ａ）と類似した形状になる。
【０１００】
このような埋め込みを行なった結果に対して、抽出処理を行う様子を図１２に示す。図１２（ａ）および図１２（ｂ）は各々図１１（ｄ）および図１１（ｃ）に対応する。図１２（ｂ）において、ビット判定を行なうにあたり、最初の１対以外は図９で想定されているパターンが形成されていないため、正しいビットを判定することが難しくなる。
【０１０１】
次に、本実施形態における振幅変換を導入した手法について図１３および図１４を用いて説明する。図１３（ａ）は図１１（ａ）と同じ原音響信号を示しており、同様に周波数変換を行った図１３（ｂ）も図１１（ｂ）と同じである。ここで、６つのフレーム単位に振幅変換を行った結果が図１３（ｃ）である。図１３の場合、図１３（ａ）で各フレーム内の振幅が平坦であるため、図１３（ｃ）では全体が平坦になっているが、実際には各フレーム内は微細に変動しており、そのフレーム内変動分は図１３（ｃ）の段階でも踏襲されるため、本図のように完全に平坦になることは通常ない。（実際は図１３（ｃ）は周波数次元のデータになるため、周波数次元のデータも平坦にならず変動した形態になる。）また、変換倍率はフレームごとに設定し、上下２つの周波数成分に対しては同一の倍率で変換を行うため、通常は上下で顕著な差が生じる（ただし、時間軸方向は比較的揃う）。これに対して、［０，０，０］という３ビットのデータを埋め込むと、図１３（ｄ−１）および（ｄ−２）が得られる。原段階である図１３（ｃ）が平坦な波形であるため、全てのフレームにおいて図９のような理想的なパターンが容易に構築できることがわかる。続いて、前記フレームごとに設定した倍率の逆数を乗じて振幅逆変換を行った結果が図１３（ｅ）である。この段階では図１１（ｃ）と類似したパターンが生じることが多いが、本形状はいかなるものでも構わない。最後に周波数逆変換を行うと、図１３（ｆ）が得られ、同様に原信号波形の図１３（ａ）と類似した形状になる。
【０１０２】
このような埋め込みを行なった結果に対して、抽出処理を行う様子を図１４に示す。図１４（ａ）、（ｂ）および（ｃ）は各々図１３（ｆ）、（ｅ）および（ｄ）に対応する。図１４（ｂ）の周波数変換後の波形形状は図１３（ｂ）とは基本的に異なるが、算出される振幅変換倍率は類似した値になり、ほぼ同様な倍率で振幅変換が行われ図１４（ｃ）が得られる。図１４（ｃ）の段階で、ビット判定を行なうと、全てのフレームにおいて図９のような理想的なパターンが形成されているため、正しいビットを判定することが可能になる。
【０１０３】
以上、本実施形態では、図１３（ｃ）に示したように、埋め込み対象の信号成分が時間軸方向に平坦になるように変換を行って埋め込むようにしているため、高周波側と低周波側の成分強度の大小関係が完全に逆になるような不自然な変更を行う確率が低くなり、品質を維持しながら、抽出側における抽出精度を高めることが可能となる。
【０１０４】
（３．３．コンテンツ同期再生装置の詳細）
次に、本発明に係るコンテンツ同期再生装置について説明する。図１５は、図４に示したタイムコード抽出手段２３０の詳細な構成を示す図である。図４において、１０は基準フレーム獲得手段、１２０は位相変更フレーム設定手段、１３０は周波数変換手段、１４０は符号判定パラメータ算出手段、１５０は符号出力手段、１６０は付加情報抽出手段、１７０は音響フレーム保持手段、１８０は変換テーブル作成手段である。タイムコード抽出手段２３０は、基準フレーム獲得手段１１０、位相変更フレーム設定手段１２０、周波数変換手段１３０、符号判定パラメータ算出手段１４０、符号出力手段１５０、付加情報抽出手段１６０、音響フレーム保持手段１７０は、変換テーブル作成手段１８０により構成されている。
【０１０５】
音響信号入力手段２２０は、上述のように、流れている音声をデジタル音響信号として取得し、入力する機能を有している。入力した音響信号は音響ファイルとして記録する。現実には、マイクロフォンおよびＡ／Ｄ変換器により実現される。マイクロフォンとしては、変更対象周波数帯の成分が検出可能なものであれば、モノラル無指向性のものであっても、ステレオ指向性のものであっても使用可能である。ステレオ指向性のものであっても一方のチャンネルだけ利用すれば良い。マイクロフォンは特別精度の高いものでなく、一般的な精度のマイクロフォンを用いても情報の抽出が可能となる。基準フレーム獲得手段１１０は、音響ファイルに記録されたデジタルのモノラル音響信号から所定数のサンプルで構成される音響フレームを基準フレームとして読み込む機能を有している。基準フレームとしては、埋め込み時と同様にＡタイプ、Ｂタイプのものが設定される。位相変更フレーム設定手段１２０は、Ａタイプ、Ｂタイプそれぞれの基準フレームと所定サンプルずつ移動させることにより位相を変更した音響フレームを位相変更フレームとして設定する機能を有している。
【０１０６】
周波数変換手段１３０は、基本的には、図６に示した周波数変換手段２０とほぼ同様の機能を有している。ただし、音を取り込むタイミングが、音響信号の先頭からとはならないため、正しい位相を特定するために、複数の位相で振幅変換、周波数変換を行う点が異なっている。
【０１０７】
周波数変換手段１３０は、Ａタイプの音響フレームに対してフーリエ変換を行う場合は、信号Ｘ（ｉ−Ｎ／２＋ｐＮ／６）（ｉ＝０，…，Ｎ−１）に対して、窓関数Ｗ（１，ｉ）を用いて、以下の〔数式１２〕に従った処理を行い、変換データの実部Ａ（１，ｊ，ｐ）、虚部Ｂ（１，ｊ，ｐ）を得る機能を有している。ｐは位相番号であり、０〜５の整数値をとる。
【０１０８】
〔数式１２〕
Ａ（１，ｊ，ｐ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘ（ｉ−Ｎ／２＋ｐ・Ｎ／６）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂ（１，ｊ，ｐ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘ（ｉ−Ｎ／２＋ｐ・Ｎ／６）・ｓｉｎ（２πｉｊ／Ｎ）
【０１０９】
周波数変換手段１３０は、Ｂタイプの音響フレームに対してフーリエ変換を行う場合は、信号Ｘ（ｉ＋ｐ・Ｎ／６）（ｉ＝０，…，Ｎ−１）に対して、窓関数Ｗ（２，ｉ）を用いて、以下の〔数式１３〕に従った処理を行い、変換データの実部Ａ（２，ｊ，ｐ）、虚部Ｂ（２，ｊ，ｐ）を得る機能を有している。
【０１１０】
〔数式１３〕
Ａ（２，ｊ，ｐ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘ（ｉ＋ｐ・Ｎ／６）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂ（２，ｊ，ｐ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘ（ｉ＋ｐ・Ｎ／６）・ｓｉｎ（２πｉｊ／Ｎ）
【０１１１】
周波数変換手段１３０は、周波数変換手段２０と同様に振幅変換を行う。振幅変換を行うにあたり、まず変換倍率の算出を行う。変換倍率の算出は、所定周波数範囲のスペクトル集合の実効強度値の平均である平均実効値で、設定値を除算することにより行う。設定値は、適宜定めておくことができるが、埋め込み時における振幅変換の場合と同一値としておくことが必要となる。したがって、本実施形態では、設定値Ｚｏは１６０にする必要がある。具体的には、Ａタイプの音響フレーム、Ｂタイプの音響フレームについての変換倍率Ｚ（１，ｐ）、Ｚ（２，ｐ）、これらの直前のＡタイプの音響フレーム、Ｂタイプの音響フレームについての変換倍率Ｚ-1（１，ｐ）、Ｚ-1（２，ｐ）は、以下の〔数式１４〕に従った処理により算出される。振幅変換が実行されることにより、全ての音響フレームは、元の状態における信号強度に関わらず、各音響フレームの平均実効値が設定値となるように振幅変換された状態で、情報の抽出が行われることになる。なお、ｐは位相番号であり、０〜５の整数値をとる。
【０１１２】
〔数式１４〕
Ｚ（１，ｐ）＝Ｚｏ／［Σj=m,…,m+2G-1｛Ａ（１，ｊ，ｐ）2＋Ｂ（１，ｊ，ｐ）2｝］1/2
Ｚ（２，ｐ）＝Ｚｏ／［Σj=m,…,m+2G-1｛Ａ（２，ｊ，ｐ）2＋Ｂ（２，ｊ，ｐ）2｝］1/2
Ｚ-1（１，ｐ）＝Ｚｏ／［Σj=m,…,m+2G-1｛Ａ-1（１，ｊ，ｐ）2＋Ｂ-1（１，ｊ，ｐ）2｝］1/2
Ｚ-1（２，ｐ）＝Ｚｏ／［Σj=m,…,m+2G-1｛Ａ-1（２，ｊ，ｐ）2＋Ｂ-1（２，ｊ，ｐ）2｝］1/2
【０１１３】
ｊ＝ｍ，…，ｍ＋２Ｇ−１（周波数Ｆ１，．．．，Ｆ２に相当）およびｐ＝０，．．．，５の範囲で、Ａ（１，ｊ，ｐ）およびＢ（１，ｊ，ｐ）の各々の要素に対してＺ（１，ｐ）を乗じ、Ａ（２，ｊ，ｐ）およびＢ（２，ｊ，ｐ）の各々の要素に対してＺ（２，ｐ）を乗じ、Ａ-1（１，ｊ，ｐ）およびＢ-1（１，ｊ，ｐ）の各々の要素に対してＺ-1（１，ｐ）を乗じ、Ａ-1（２，ｊ，ｐ）およびＢ-1（２，ｊ，ｐ）の各々の要素に対してＺ-1（２，ｐ）を乗じることにより、振幅変換を行う。以下説明において、Ａ（１，ｊ，ｐ）、Ｂ（１，ｊ，ｐ）、Ａ（２，ｊ，ｐ）、Ｂ（２，ｊ，ｐ）、Ａ-1（１，ｊ，ｐ）、Ｂ-1（１，ｊ，ｐ）、Ａ-1（２，ｊ，ｐ）、Ｂ-1（２，ｊ，ｐ）はこれらの振幅変換を行った値とする。
【０１１４】
符号判定パラメータ算出手段１４０は、生成されたスペクトルから所定の周波数範囲に相当するスペクトル集合を抽出し、各スペクトル集合の強度値を算出するとともに、この強度値を利用して符号判定パラメータを算出し、この符号判定パラメータの大小関係に基づいて、所定の状態であると判断する機能を有している。上述のように、本実施形態では、Ａタイプの音響フレームとＢタイプの音響フレームがＮ／２サンプルずつ重複して設定されているため、ある音響フレームについて、強度値、符号判定パラメータを算出する際には、直前の音響フレームによる残響成分を考慮する必要がある。ところが、残響成分は計算により算出されるものであるので、必ずしも正確なものが算出されるとは限らず、算出された残響成分を除去することにより、反って抽出精度が低下する場合がある。そこで、本実施形態では、残響成分を除去しない場合の強度値Ｅ１、Ｅ２、Ｅ３、Ｅ４、および符号判定パラメータＣと、除去した場合の強度値Ｅ１´、Ｅ２´、Ｅ３´、Ｅ４´、および補正符号判定パラメータＣ´を算出し、これらを利用して最適であると思われる状態を判断する。
【０１１５】
Ａタイプの音響フレームの各成分Ａ（１，ｊ，ｐ）、Ｂ（１，ｊ，ｐ）に対して１フレーム分前のＢタイプの音響フレームに対応する各成分をＡ-1（２，ｊ，ｐ）、Ｂ-1（２，ｊ，ｐ）とすると、Ｂタイプの音響フレームの各成分Ａ（２，ｊ，ｐ）、Ｂ（２，ｊ，ｐ）に対応して、１フレーム分前の音響フレームは以下補正を施す前の前記Ａタイプの音響フレームとなる。符号判定パラメータ算出手段１４０は、各スペクトル集合の強度値の算出の前に、まず、各スペクトル集合の基本強度値Ｅ（１，ｊ，ｐ）、Ｅ（２，ｊ，ｐ）、および残響成分を除去した基本強度値Ｅ´（１，ｊ，ｐ）、Ｅ´（２，ｊ，ｐ）を、以下の〔数式１５〕に従った処理により算出する。
【０１１６】
〔数式１５〕
Ｅ（１，ｊ，ｐ）＝Ａ（１，ｊ，ｐ）2＋Ｂ（１，ｊ，ｐ）2
Ｅ（２，ｊ，ｐ）＝Ａ（２，ｊ，ｐ）2＋Ｂ（２，ｊ，ｐ）2
Ｅ-1（１，ｊ，ｐ）＝Ａ-1（１，ｊ，ｐ）2＋Ｂ-1（１，ｊ，ｐ）2
Ｅ-1（２，ｊ，ｐ）＝Ａ-1（２，ｊ，ｐ）2＋Ｂ-1（２，ｊ，ｐ）2
Ｅ´（１，ｊ，ｐ）＝Ｅ（１，ｊ，ｐ）−ｑ・Ｅ-1（２，ｊ，ｐ）
Ｅ´（２，ｊ，ｐ）＝Ｅ（２，ｊ，ｐ）−ｑ・Ｅ（１，ｊ，ｐ）
【０１１７】
上記〔数式１５〕における６つの式のうち、上から５番目（下から２番目）の式は、あるＡタイプの音響フレームに着目したときに、その前半のＮ／２サンプルが重複するＢタイプの音響フレームからの残響成分を除去するためのものである。また、上から６番目（下から１番目）の式は、あるＢタイプの音響フレームに着目したときに、その前半のＮ／２サンプルが重複するＡタイプの音響フレームからの残響成分を除去するためのものである。Ｅ´（１，ｊ，ｐ）≧０、Ｅ´（２，ｊ，ｐ）≧０とし、〔数式１５〕の上から５番目、６番目の式に従った処理の結果、負の値となった場合には、０に設定する。
【０１１８】
上記〔数式１５〕において、ｑは残響成分の大きさを示す係数であるが、この係数ｑは１未満の値を持つものであり、実験の結果、Ｎ＝４０９６のときｑ＝０．０６、Ｎ＝２０４８のときｑ＝０．１２、Ｎ＝１０２４のときｑ＝０．２４、Ｎ＝５１２のときｑ＝０．４８が最適である。
【０１１９】
そして、残響成分を除去しない場合の各スペクトル集合の強度値Ｅ１、Ｅ２、Ｅ３、Ｅ４、除去した場合の強度値Ｅ１´、Ｅ２´、Ｅ３´、Ｅ４´を、算出した基本強度値Ｅ（１，ｊ，ｐ）、Ｅ（２，ｊ，ｐ）、Ｅ´（１，ｊ，ｐ）、Ｅ´（２，ｊ，ｐ）を用いて以下の〔数式１６〕に従った処理により算出する。
【０１２０】
〔数式１６〕
Ｅ１（ｐ）＝Σj=m,…,m+G-1Ｅ（１，ｊ，ｐ）
Ｅ２（ｐ）＝Σj=m,…,m+G-1Ｅ（２，ｊ，ｐ）
Ｅ３（ｐ）＝Σj=m+G,…,m+2G-1Ｅ（１，ｊ，ｐ）
Ｅ４（ｐ）＝Σj=m+G,…,m+2G-1Ｅ（２，ｊ，ｐ）
Ｅ１´（ｐ）＝Σj=m,…,m+G-1Ｅ´（１，ｊ，ｐ）
Ｅ２´（ｐ）＝Σj=m,…,m+G-1Ｅ´（２，ｊ，ｐ）
Ｅ３´（ｐ）＝Σj=m+G,…,m+2G-1Ｅ´（１，ｊ，ｐ）
Ｅ４´（ｐ）＝Σj=m+G,…,m+2G-1Ｅ´（２，ｊ，ｐ）
【０１２１】
このＥ１〜Ｅ４、Ｅ１´〜Ｅ４´については、過去の対応する成分を用いて更新する処理を行う。具体的には、過去の成分を登録する総和値登録テーブルに記録されたＴｅ（１、ｐ）〜Ｔｅ（８、ｐ）を用いて以下の〔数式１７〕に従った処理により算出する。
【０１２２】
〔数式１７〕
Ｅ１（ｐ）＝０．６７Ｅ１（ｐ）＋０．３３Ｔｅ（１、ｐ）
Ｅ２（ｐ）＝０．６７Ｅ２（ｐ）＋０．３３Ｔｅ（２、ｐ）
Ｅ３（ｐ）＝０．６７Ｅ３（ｐ）＋０．３３Ｔｅ（３、ｐ）
Ｅ４（ｐ）＝０．６７Ｅ４（ｐ）＋０．３３Ｔｅ（４、ｐ）
Ｅ１´（ｐ）＝０．６７Ｅ１´（ｐ）＋０．３３Ｔｅ（５、ｐ）
Ｅ２´（ｐ）＝０．６７Ｅ２´（ｐ）＋０．３３Ｔｅ（６、ｐ）
Ｅ３´（ｐ）＝０．６７Ｅ３´（ｐ）＋０．３３Ｔｅ（７、ｐ）
Ｅ４´（ｐ）＝０．６７Ｅ４´（ｐ）＋０．３３Ｔｅ（８、ｐ）
【０１２３】
さらに、Ｔｅ（１、ｐ）〜Ｔｅ（８、ｐ）は、以下の〔数式１８〕に従った処理により更新される。
【０１２４】
〔数式１８〕
Ｔｅ（１、ｐ）＝Ｅ１（ｐ）      Ｔｅ（２、ｐ）＝Ｅ２（ｐ）
Ｔｅ（３、ｐ）＝Ｅ３（ｐ）      Ｔｅ（４、ｐ）＝Ｅ４（ｐ）
Ｔｅ（５、ｐ）＝Ｅ１´（ｐ）    Ｔｅ（６、ｐ）＝Ｅ２´（ｐ）
Ｔｅ（７、ｐ）＝Ｅ３´（ｐ）    Ｔｅ（８、ｐ）＝Ｅ４´（ｐ）
【０１２５】
結局〔数式１５〕〔数式１６〕〔数式１７〕〔数式１８〕により、過去分を考慮した各スペクトル集合の強度値Ｅ１、Ｅ２、Ｅ３、Ｅ４が算出されるとともに、当該各スペクトル集合に対応するタイプの別を問わない直前の音響フレームにおけるスペクトル集合の強度にｑを乗じた値を減じることにより強度値Ｅ１´、Ｅ２´、Ｅ３´、Ｅ４´が算出されることになる。
【０１２６】
また、符号判定パラメータ算出手段１４０は、残響成分を除去せずに算出した強度値Ｅ１、Ｅ２、Ｅ３、Ｅ４を用いて、以下の〔数式１９〕に従った処理を実行し、符号判定パラメータＣを算出する。
【０１２７】
〔数式１９〕
１）Ｅ１（ｐ）＞Ｅ２（ｐ）かつＥ４（ｐ）＞Ｅ３（ｐ）の場合
Ｂ＝０と仮判定、
Ｃ＝｛Ｅ１（ｐ）・Ｅ４（ｐ）−Ｅ２（ｐ）・Ｅ３（ｐ）｝／｛Ｅ１（ｐ）・Ｅ４（ｐ）＋Ｅ２（ｐ）・Ｅ３（ｐ）｝
２）Ｅ２（ｐ）＞Ｅ１（ｐ）かつＥ３（ｐ）＞Ｅ４（ｐ）の場合
Ｂ＝１と仮判定、
Ｃ＝｛Ｅ２（ｐ）・Ｅ３（ｐ）−Ｅ１（ｐ）・Ｅ４（ｐ）｝／｛Ｅ１（ｐ）・Ｅ４（ｐ）＋Ｅ２（ｐ）・Ｅ３（ｐ）｝
３）Ｅ１（ｐ）・Ｅ４（ｐ）＞Ｅ２（ｐ）・Ｅ３（ｐ）の場合
Ｂ＝０と仮判定、
Ｃ＝｛Ｅ１（ｐ）・Ｅ４（ｐ）−Ｅ２（ｐ）・Ｅ３（ｐ）｝／｛Ｅ１（ｐ）・Ｅ４（ｐ）＋Ｅ２（ｐ）・Ｅ３（ｐ）｝
４）上記１）〜３）以外の場合
Ｂ＝１と仮判定、
Ｃ＝｛Ｅ２（ｐ）・Ｅ３（ｐ）−Ｅ１（ｐ）・Ｅ４（ｐ）｝／｛Ｅ１（ｐ）・Ｅ４（ｐ）＋Ｅ２（ｐ）・Ｅ３（ｐ）｝
【０１２８】
また、符号判定パラメータ算出手段１４０は、残響成分を除去して算出した強度値Ｅ１´、Ｅ２´、Ｅ３´、Ｅ４´を用いて、以下の〔数式２０〕に従った処理を実行し、補正符号判定パラメータＣ´を算出する。
【０１２９】
〔数式２０〕
１）Ｅ１´（ｐ）＞Ｅ２´（ｐ）かつＥ４´（ｐ）＞Ｅ３´（ｐ）の場合
Ｂ´＝０と仮判定、
Ｃ´＝｛Ｅ１´（ｐ）・Ｅ４´（ｐ）−Ｅ２´（ｐ）・Ｅ３´（ｐ）｝／｛Ｅ１´（ｐ）・Ｅ４´（ｐ）＋Ｅ２´（ｐ）・Ｅ３´（ｐ）｝
２）Ｅ２´（ｐ）＞Ｅ１´（ｐ）かつＥ３´（ｐ）＞Ｅ４´（ｐ）の場合
Ｂ´＝１と仮判定、
Ｃ´＝｛Ｅ２´（ｐ）・Ｅ３´（ｐ）−Ｅ１´（ｐ）・Ｅ４´（ｐ）｝／｛Ｅ１´（ｐ）・Ｅ４´（ｐ）＋Ｅ２´（ｐ）・Ｅ３´（ｐ）｝
３）Ｅ１´（ｐ）・Ｅ４´（ｐ）＞Ｅ２´（ｐ）・Ｅ３´（ｐ）の場合
Ｂ´＝０と仮判定、
Ｃ´＝｛Ｅ１´（ｐ）・Ｅ４´（ｐ）−Ｅ２´（ｐ）・Ｅ３´（ｐ）｝／｛Ｅ１´（ｐ）・Ｅ４´（ｐ）＋Ｅ２´（ｐ）・Ｅ３´（ｐ）｝
４）上記１）〜３）以外の場合
Ｂ´＝１と仮判定、
Ｃ´＝｛Ｅ２´（ｐ）・Ｅ３´（ｐ）−Ｅ１´（ｐ）・Ｅ４´（ｐ）｝／｛Ｅ１´（ｐ）・Ｅ４´（ｐ）＋Ｅ２´（ｐ）・Ｅ３´（ｐ）｝
【０１３０】
符号出力手段１５０は、１つの基準フレームに対応する音響フレーム（基準フレームおよび位相変更フレーム）の中から最適な位相であると判断されるものを判断し、その音響フレームの状態に対応する符号を出力する機能を有している。符号判定パラメータ算出手段１４０と符号出力手段１５０により符号化手段が構成される。付加情報抽出手段１６０は、符号出力手段１５０により出力された２値の配列をＮｈビット単位で抽出し、巡回符号表を参照することにより、Ｎｗビットの基準符号に変換し、さらに所定の規則により変換して意味のある付加情報として抽出する機能を有している。音響フレーム保持手段１７０は、チャンネルごとのＡタイプ、Ｂタイプそれぞれについて連続する２個の基準フレーム（チャンネルごとに計４個の基準フレーム）を保持可能なバッファメモリである。変換テーブル作成手段１８０は、図６に示した変換テーブル作成手段８０と同様、Ｎｗビットが取り得る２のＮｗ乗個の全ての基準符号に対して、互いにハミング距離が少なくとも４以上となるＮｈ（＞Ｎｗ）ビットのハミング符号を割り当てることにより、Ｎｗビットの基準符号とＮｈビットのハミング符号が対応付けられた符号変換テーブルを作成する機能を有している。
【０１３１】
図１５に示した各構成手段は、現実には情報処理機能を有する小型のコンピュータおよびその周辺機器等のハードウェアに専用のプログラムを搭載することにより実現される。特に、本発明の目的をより簡易に達成するためには、プログラムを実行するコンピュータとしての機能を備えた携帯電話機等の携帯型端末装置をハードウェアとして用いることが望ましい。
【０１３２】
（３．４．コンテンツ同期再生装置の処理動作）
次に、図１５に示したコンテンツ同期再生装置の処理動作について説明する。コンテンツ同期再生装置を起動すると、まず、シリアル番号抽出手段２３０は、位相判定テーブルＳ（ｐ）、位相決定ログ、位相確定フラグ、総和値累積テーブルＴｅ（１、ｐ）〜Ｔｅ（８、ｐ）、ビットカウンタを初期化する。位相判定テーブルＳ（ｐ）は、位相を判定するためのテーブルであり、ｐは０〜５の整数値をとる。初期値はＳ（ｐ）＝０に設定されている。位相決定ログは、１つの基準フレームと５つの位相変更フレームの組ごとに、決定された位相すなわち位相番号ｐを記録していくものであり、初期状態では０が設定されている。位相確定フラグは、位相が確定しているかどうかを示すフラグであり、初期状態ではＯｆｆに設定されている。総和値累積テーブルＴｅ（１、ｐ）〜Ｔｅ（８、ｐ）は、過去分の総和値Ｅ１〜Ｅ４、残響補正後の総和値Ｅ１´〜Ｅ４´を６通りの位相別に保存したものであり、初期状態ではＴｅ（１、ｐ）〜Ｔｅ（８、ｐ）＝０に設定されている。ビットカウンタについては初期値として０を設定する。
【０１３３】
続いて、変換テーブル作成手段１８０が、上述のように、図２に示した符号変換テーブルを用いて図５に示した巡回符号表を作成する。
【０１３４】
シリアル番号抽出手段２３０により、初期化処理、巡回符号表の作成が行われたら、音響信号入力手段２２０は音響信号入力処理を開始する。音響信号入力手段２２０は、マイクロフォンにより入力した音を順次デジタル化して複数のサンプルからなるサンプル列をその内容とする音響ファイルを作成する。シリアル番号抽出手段２３０は、各音響ファイルに対して、順次シリアル番号抽出処理を実行していく。
【０１３５】
１音響ファイルに対するシリアル番号抽出手段２３０の処理についてのフローチャートを図１６に示す。まず、基準フレーム獲得手段１１０が、音響信号入力手段１００により作成された音響ファイルから、所定数のサンプルで構成される音響フレームを基準フレームとして抽出する（Ｓ２０１）。具体的には、Ａタイプ、Ｂタイプについての基準フレームを抽出して音響フレーム保持手段１７０に読み込むことになる。基準フレーム獲得手段１１０が基準フレームとして読み込む１音響フレームのサンプル数は、図６に示した音響フレーム読込手段１０で設定されたものと同一にする必要がある。したがって、本実施形態の場合、基準フレーム獲得手段１１０は、Ａタイプ、Ｂタイプについてそれぞれ２０４８サンプルずつ、順次基準フレームとして読み込んでいくことになる。音響フレーム保持手段１７０には、各チャンネルについて、Ａタイプ、Ｂタイプ２個ずつの基準フレーム、すなわち２．５Ｎサンプルが格納可能となっている。すなわち、音響フレーム保持手段１７０には、基準フレーム最大４個分（連続する５１２０サンプル）が格納されることになる。
【０１３６】
抽出装置で処理する音響フレームは、先頭から途切れることなく隣接して設定される基準フレームと、この基準フレームと位相を変更した位相変更フレームとに分けることができる。基準フレームについては、Ａタイプの音響フレームとＢタイプの音響フレームが、１０２４サンプルずつ重複している場合、最初の基準フレームとしてサンプル番号１からサンプル番号２０４８までを設定したら、次の基準フレームは、サンプル番号１０２５からサンプル番号３０７２、さらに次の基準フレームは、サンプル番号２０４９からサンプル番号４０９６、さらに次の基準フレームは、サンプル番号３０７３からサンプル番号５１２０、というように途切れることなく設定される。そして、各基準フレームについて、１／６フレーム（約３４１サンプル）ずつ移動した５個の位相変更フレームを設定する。例えば、最初の基準フレームについては、サンプル番号３４１、６８３、１０２５、１３６６、１７１３から始まる２０４８のサンプルで構成される５個の位相変更フレームが設定されることになる。続いて、周波数変換手段１３０、符号判定パラメータ算出手段１４０が、読み込んだ各音響フレームについて、位相を特定した後、埋め込まれている情報を判定し、対応する符号を出力する（Ｓ２０２）。出力される情報の形式は、埋め込まれた情報に対応する値１、値２の２通りの形式となる。
【０１３７】
ここで、ステップＳ２０２の位相確定および符号判定の詳細を図１７のフローチャートに従って説明する。まず、位相確定フラグがＯｎであるかＯｆｆであるかの確認を行う（Ｓ３０１）。位相確定フラグがＯｎである場合は、位相確定処理（Ｓ３０３〜Ｓ３０９）を行わず、符号判定処理のみを行う（Ｓ３０２）。ただし、初期状態では位相は確定しておらず、位相確定フラグがＯｆｆとなっているので、候補符号テーブルＢ（ｐ）の初期化を行う（Ｓ３０３）。候補符号テーブルＢ（ｐ）は、１つの基準フレームおよび５個の位相変更フレームを特定するｐ＝０〜５の位相番号および、この６個の音響フレームの状態から得られる２値の符号を記録するものである。
【０１３８】
続いて、符号判定パラメータ算出手段１４０は、符号判定処理を行う（Ｓ３０２）。ここで、符号判定処理の詳細を図１８に示す。まず、周波数変換手段１３０が、読み込んだ各音響フレームに対して、周波数変換を行って各窓スペクトルを得る（Ｓ４０１）。具体的には、上記〔数式１２〕〔数式１３〕に従った処理を実行し、変換データの実部Ａ（１，ｊ，ｐ）、虚部Ｂ（１，ｊ，ｐ）、実部Ａ（２，ｊ，ｐ）、虚部Ｂ（２，ｊ，ｐ）を得る。
【０１３９】
Ｓ４０１の処理については、実際には、Ａタイプ音響フレームについて周波数変換を行った後、Ｎ／２サンプルだけシフトしてＢタイプ音響フレームについて周波数変換を行う。これらの変換データＡ（２，ｊ，ｐ）、Ｂ（２，ｊ，ｐ）、Ａ（２，ｊ，ｐ）、Ｂ（２，ｊ，ｐ）に対して、上記〔数式１４〕に従った処理を実行し、振幅変換を行う（Ｓ４０２）。
【０１４０】
上記周波数変換手段１３０における処理により、周波数に対応した成分であるスペクトルで表現されたフレームスペクトルが得られる。続いて、符号判定パラメータ算出手段１４０は、符号判定パラメータＣ、Ｃ´を上述のようにして算出した後、符号判定パラメータＣ、Ｃ´を用いて、変更対象周波数帯の成分の状態がどのような状態であるか、すなわち、１ビットの値としてどのような値が埋め込まれていたかを判断する処理を行う（Ｓ４０３）。具体的には、上記〔数式１５〕〜〔数式１９〕に従った処理を実行して、符号判定パラメータＣ、Ｃ´を算出する。そして、この両者を比較して、Ｃ≧Ｃ´であれば候補符号Ｂを候補符号テーブルＢ（ｐ）に設定し、Ｃ＜Ｃ´であれば候補符号Ｂ´を候補符号テーブルＢ（ｐ）に出力する。
【０１４１】
Ｓ４０３の具体的な処理手順としては、まず、上記〔数式１５〕の１番目の式と２番目の式を利用して基本強度値Ｅ（１，ｊ，ｐ）、Ｅ（２，ｊ，ｐ）を算出した後、上記〔数式１６〕の１番目から４番目までの式を利用してＥ１（ｐ）、Ｅ２（ｐ）、Ｅ３（ｐ）、Ｅ４（ｐ）を算出し、上記〔数式１９〕に従って候補符号Ｂおよび符号判定パラメータＣを算出する処理を行う。続いて、上記〔数式１５〕の３番目から６番目までの式を利用して、残響補正処理を行って基本強度値Ｅ´（１，ｊ，ｐ）、Ｅ´（２，ｊ，ｐ）を算出する。そして、上記〔数式１６〕の５番目から８番目までの式を利用してＥ１´（ｐ）、Ｅ２´（ｐ）、Ｅ３´（ｐ）、Ｅ４´（ｐ）を算出し、上記〔数式２０〕に従って候補符号Ｂ´および補正符号判定パラメータＣ´を算出する処理を行う。
【０１４２】
また、上記判定の結果、位相ｐにおける候補符号テーブルＢ（ｐ）に値１、値２のいずれかを出力した場合には、さらに、以下の〔数式２１〕に従って位相判定テーブルＳ（ｐ）の更新を行う（Ｓ４０４）。
【０１４３】
〔数式２１〕
Ｃ≧Ｃ´である場合、Ｓ（ｐ）←Ｓ（ｐ）＋Ｃ
Ｃ＜Ｃ´である場合、Ｓ（ｐ）←Ｓ（ｐ）＋Ｃ´
【０１４４】
ここで、図１７のフローチャートに戻って、符号判定パラメータ算出手段１４０は、候補符号テーブルＢ（ｐ）に、位相ｐにおいて符号判定処理（Ｓ３０２）で仮決定された符号を保存する（Ｓ３０４）。
【０１４５】
続いて、全ての位相番号ｐに対応する処理を終えたかどうかを判定する（Ｓ３０５）。これは、ある基準フレームに対して全ての位相変更フレームの処理を行ったかどうかを判定している。本実施形態では、ｐが０〜５までの値をとるので、６回分処理していない場合は、処理していた音響フレームから所定サンプル数ずらして、位相の異なる音響フレームを設定し、Ｓ３０２に戻って処理を繰り返す。なお、ｐ＝０の場合が基準フレームであり、ｐ＝１〜５の場合が位相変更フレームである。全ての位相番号ｐに対応する処理を終えた場合は、位相判定テーブルＳ（ｐ）の値が最大となる位相番号ｐｍａｘに対応する位相が最適位相であると判定し、候補符号テーブルＢ（ｐ）に記録されている符号Ｂ（ｐｍａｘ）を出力する（Ｓ３０６）。
【０１４６】
続いて、位相決定ログの更新を行う（Ｓ３０７）。位相決定ログとは、１つの基準フレームと５つの位相変更フレームの組ごとに、決定された位相すなわち位相番号ｐを記録するものである。そして、位相決定ログを参照して、位相が過去所定回数同一であったかどうかを判断する（Ｓ３０８）。本実施形態では、この回数を１０回としている。位相が過去所定回数同一であった場合には、位相確定フラグをＯｎに設定する（Ｓ３０９）。これにより、同一位相が所定回数続いた場合には、最適位相はｐｍａｘとなる可能性が高いため、位相確定処理（Ｓ３０３〜Ｓ３０９）を行わず、位相番号ｐ＝ｐｍａｘに対してのみ符号判定処理（Ｓ３０２）を行うことになる。
【０１４７】
再び図１６のフローチャートに戻って説明する。位相確定および符号出力が行なわれたら、出力された符号の値に対応する１ビットをバッファに保存する（Ｓ２０３）。次に、ビットカウンタを“１”だけカウントアップする（Ｓ２０４）。
【０１４８】
次に、ビットカウンタが３５以下であるか３６以上であるかを判断する（Ｓ２０５）。ビットカウンタが３５以下の場合は、Ｓ２０１に戻って、次のＡタイプ、Ｂタイプの基準フレームを抽出する処理を行う。
【０１４９】
ビットカウンタが３６以上である場合は、バッファに保存された３６ビットのうち、前半１８ビットと後半１８ビットの照合を行う（Ｓ２０６）。具体的には、前半１８ビットと後半１８ビットについて先頭から順に比較し、全てのビット同士が同一であるかどうかを判断する。照合の結果、前半１８ビットと後半１８ビットが完全に一致する場合には、後半１８ビットと巡回符号表内のビットパターンとの照合を行う（Ｓ２０７）。
【０１５０】
照合の結果、一致するビットパターンが１８ビットハミング符号または巡回ビットパターンとして存在する場合には、適合パターン有りと判断し、対応する８ビット基準符号と、直前に抽出された仮タイムコードとの差分を算出し、その差分が“１”であるかどうかを判断する（Ｓ２０８）。差分が“１”である場合は、８ビット基準符号を正式なタイムコードとして抽出する（Ｓ２０９）。差分が“１”でない場合は、８ビット基準符号を、既に保持されている仮タイムコードに代えて新たな仮タイムコードとして保持する。なお、仮タイムコードが保持されていない場合は、８ビット基準符号を仮タイムコードとして一時保存する。
【０１５１】
図１６に示す処理を各基準フレームに対して実行することにより、タイムコードが抽出されることになる。Ｓ２０９において正式なタイムコードが抽出されたと場合には、処理を終了する。
【０１５２】
（３．５．位相補正処理について）
上記のように、抽出時には、埋め込み時に埋め込んだ音響フレームに対応して、音響信号を読み込むことができるとは限らない。そこで、音響フレームの位相をずらして複数通り（本実施形態では６通り）で読み込み、その中で最適な位相を決定し、その位相で特定される音響フレームに対応する符号を出力することにしている。例えば、６通りで読み込む場合、先頭の音響フレームは、本来サンプル番号１〜２０４８のサンプルであるが、サンプル番号１、３４１、６８３、１０２５、１３６６、１７１３から始まる２０４８のサンプルで構成される６個の各音響フレームに対して処理を行い、最適な音響フレームに対応する符号を出力することになる。なお、図１７のフローチャートを用いて説明したように、本実施形態では、同一位相が所定回数連続した場合には、それ以降はその位相を確定したものとして処理を行う。
【０１５３】
（４．ビット配列のビット数Ｎｈ、ハミング距離を変更した場合）
上記実施形態では、ビット配列作成の際、作成されるビット配列は、１８ビット（Ｎｈビット）でハミング距離が４となるようにしたが、ビット配列のビット数Ｎｈ、およびハミング距離は、適宜変更することが可能である。一般に、ビット配列のビット数Ｎｈを大きくすれば、符号化効率は悪くなるが、訂正可能な誤りビット数は増えることになる。したがって、マイクロフォンの感度や演算処理能力が比較的高い抽出装置を用いる場合には、ビット数、ハミング距離が小さいビット配列を作成するようにし、マイクロフォンの感度や演算処理能力が比較的低い抽出装置を用いる場合には、ビット数、ハミング距離が大きいビット配列を作成するようにする。一方、最低ハミング距離を小さくすることにより訂正可能なビット数は少なくなるが、割り当て可能なタイムコードの数を増やすことができる。流れている音に合わせて、細かいタイミングでコンテンツを再生するためには、タイムコードの間隔はあまり長くなりすぎない方が好ましいため、元の音の時間が長い場合には、タイムコードを増やして対応することになる。このような状況を考慮して、作成するビット配列のビット数、最低ハミング距離は適宜設定されることになる。
【図面の簡単な説明】
【０１５４】
【図１】符号変換テーブル作成の処理概要を示すフローチャートである。
【図２】８ビット符号と１８ビット符号の符号変換テーブルの一例を示す図である。
【図３】１ワード１８ビットを４回繰り返して埋め込んだ場合の例を示す図である。
【図４】本発明に係るコンテンツ同期再生装置の一実施形態を示す機能ブロック図である。
【図５】本発明に係るコンテンツ同期再生装置が用いる巡回符号表の一例を示す図である。
【図６】タイムコード埋め込み装置の構成を示す機能ブロック図である。
【図７】本発明で用いる時間方向窓関数を示す図である。
【図８】人間の聴覚心理特性である音脈分凝の原理の説明図である。
【図９】本発明の一実施形態における変更対象周波数帯の成分の変化の状態を示す図である。
【図１０】図６に示した装置の処理概要を示すフローチャートである。
【図１１】振幅変換を用いない埋め込み処理を説明するための図である。
【図１２】振幅変換を用いない抽出処理を説明するための図である。
【図１３】振幅変換を用いた埋め込み処理を説明するための図である。
【図１４】振幅変換を用いた抽出処理を説明するための図である。
【図１５】図４に示したタイムコード抽出手段２３０の詳細な構成を示す図である。
【図１６】図４に示した装置の処理概要を示すフローチャートである。
【図１７】図１６のＳ２０２の位相確定および符号出力の詳細を示すフローチャートである。
【図１８】図１７のＳ３０２の符号判定処理の詳細を示すフローチャートである。
【符号の説明】
【０１５５】
１０・・・音響フレーム読込手段
２０・・・周波数変換手段
３０・・・周波数成分変更手段
４０・・・周波数逆変換手段
５０・・・改変音響フレーム出力手段
６０・・・記憶手段
６１・・・音響信号記憶部
６２・・・付加情報記憶部
６３・・・改変音響信号記憶部
７０・・・ビット配列作成手段
８０・・・変換テーブル作成手段
１１０・・・基準フレーム獲得手段
１２０・・・位相変更フレーム設定手段
１３０・・・周波数変換手段
１４０・・・符号判定パラメータ算出手段
１５０・・・符号出力手段
１６０・・・付加情報抽出手段
１７０・・・音響フレーム保持手段
１８０・・・変換テーブル作成手段
２１０・・・コンテンツ記憶部
２２０・・・音響信号入力手段
２３０・・・タイムコード抽出手段
２４０・・・スキップ時間算出手段
２５０・・・コンテンツ再生手段
【図１】
2010117605.tif 000003
【図２】
2010117605.tif 000004
【図３】
2010117605.tif 000005
【図４】
2010117605.tif 000006
【図５】
2010117605.tif 000007
【図６】
2010117605.tif 000008
【図７】
2010117605.tif 000009
【図８】
2010117605.tif 000010
【図９】
2010117605.tif 000011
【図１０】
2010117605.tif 000012
【図１１】
2010117605.tif 000013
【図１２】
2010117605.tif 000014
【図１３】
2010117605.tif 000015
【図１４】
2010117605.tif 000016
【図１５】
2010117605.tif 000017
【図１６】
2010117605.tif 000018
【図１７】
2010117605.tif 000019
【図１８】
2010117605.tif 000020