(57)【要約】【課題】  音響信号に付加情報を埋め込む場合に、抽出位置を特定し易く、抽出精度を高めることが可能な音響信号に対する情報の埋め込み装置、音響信号からの情報の抽出装置を提供する。【解決手段】  音響信号を所定区間に区分し、埋め込むべきビットパターンに応じて、低周波成分の状態を変更する。この際、所定区間における後部のスペクトル集合ＳＰ２、ＳＰ４、ＳＰ６、ＳＰ８を前部のスペクトル集合ＳＰ１、ＳＰ３、ＳＰ５、ＳＰ７と周波数Ｆｄだけオフセットさせて抽出する。これにより、抽出側において、Ｌ-ch信号を利用してパターンを抽出する場合に、前部と後部の強度が判断し易くなり、パターンの抽出の精度が高まる。【選択図】  図３
2008065052.tif 000002
【特許請求の範囲】
【請求項１】
時系列のサンプル列で構成される音響信号に対して、付加情報を聴取不能な状態で埋め込む装置であって、
前記音響信号より、所定数のサンプルを音響フレームとして読み込む音響フレーム読込手段と、
前記音響フレームに対して第１窓関数、第２窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第２窓関数に対応するスペクトルである第２窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成する周波数変換手段と、
前記生成された第１窓スペクトルから低周波領域におけるスペクトル集合を抽出するとともに、前記第３窓スペクトルから低周波領域におけるスペクトル集合を、前記第１窓スペクトルから抽出したスペクトル集合と所定周波数だけオフセットさせて抽出し、前記埋め込むべき付加情報の情報配列に基づいて、前記抽出した各スペクトル集合の強度を変更するとともに、中央の第２窓関数に対応する低周波成分を除去する低周波成分変更手段と、
前記各スペクトル集合の強度が変更された低周波領域を含む各窓スペクトルに対して周波数逆変換を行って、改変音響フレームを生成する周波数逆変換手段と、
前記生成された改変音響フレームを順次出力する改変音響フレーム出力手段と、
を有することを特徴とする音響信号に対する情報の埋め込み装置。
【請求項２】
請求項１において、
前記低周波成分変更手段は、前記スペクトル集合の強度を、当該スペクトル集合の周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用して変更するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項３】
請求項１または請求項２において、
前記低周波成分変更手段は、前記生成された第１窓スペクトルの低周波領域から互いに重複しない２つのスペクトル集合を抽出するとともに、前記第３窓スペクトルの低周波領域から互いに重複しない２つのスペクトル集合を、前記第１窓スペクトルから抽出した各スペクトル集合と所定周波数だけオフセットさせて抽出し、前記埋め込むべき付加情報の情報配列に基づいて、ＳＰ１＋ＳＰ３とＳＰ２＋ＳＰ４、またはＳＰ１＋ＳＰ４とＳＰ２＋ＳＰ３の強度割合を変更すると共に、中央の第２窓関数に対応する低周波成分を除去するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項４】
請求項１または請求項２において、
前記低周波成分変更手段は、前記生成された第１窓スペクトルの低周波領域から互いに重複しない２つのスペクトル集合を抽出するとともに、前記第３窓スペクトルの低周波領域から互いに重複しない２つのスペクトル集合を、前記第１窓スペクトルから抽出した各スペクトル集合と所定周波数だけオフセットさせて抽出し、前記埋め込むべき付加情報の情報配列に基づいて、ＳＰ１、ＳＰ２、ＳＰ３、ＳＰ４の強度割合を変更すると共に、中央の第２窓関数に対応する低周波成分を除去するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項５】
請求項１または請求項２において、
前記低周波成分変更手段は、前記生成された第１窓スペクトルの低周波領域から互いに重複しない３つのスペクトル集合を抽出するとともに、前記第３窓スペクトルの低周波領域から互いに重複しない３つのスペクトル集合を、前記第１窓スペクトルから抽出した各スペクトル集合と所定周波数だけオフセットさせて抽出し、前記埋め込むべき付加情報の情報配列に基づいて、ＳＰ１、ＳＰ２、ＳＰ３、ＳＰ４、ＳＰ５、ＳＰ６の強度割合を変更すると共に、中央の第２窓関数に対応する低周波成分を除去するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項６】
請求項１または請求項２において、
前記低周波成分変更手段は、前記生成された第１窓スペクトルの低周波領域から互いに重複しない４つのスペクトル集合を抽出するとともに、前記第３窓スペクトルの低周波領域から互いに重複しない４つのスペクトル集合を、前記第１窓スペクトルから抽出した各スペクトル集合と所定周波数だけオフセットさせて抽出し、前記埋め込むべき付加情報の情報配列に基づいて、ＳＰ１、ＳＰ２、ＳＰ３、ＳＰ４、ＳＰ５、ＳＰ６、ＳＰ７、ＳＰ８の強度割合を変更すると共に、中央の第２窓関数に対応する低周波成分を除去するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項７】
請求項１から請求項６のいずれかにおいて、
前記低周波成分変更手段は、所定の固定値Ｖを利用して、前記抽出したスペクトル集合のいずれかに所定の強度を与えることにより、前記抽出した各スペクトル集合の強度を変更するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項８】
請求項１から請求項７のいずれかにおいて、
前記音響フレーム読込手段は、先行する音響フレームと所定数のサンプルを重複させて読み込み、読み込んだ音響フレーム全体に所定の窓関数を乗じて前記周波数変換手段に渡すものであり、
前記改変音響フレーム出力手段は、前記生成された改変音響フレームを先行する改変音響フレームと連結させて出力するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項９】
請求項１から請求項８のいずれかにおいて、
前記低周波成分変更手段は、前記第１窓スペクトルから周波数Ｆ１以上（Ｆ２−Ｆｄ）以下の低周波領域におけるスペクトル集合を抽出するとともに、前記第３窓スペクトルから周波数（Ｆ１＋Ｆｄ）以上Ｆ２以下の低周波領域におけるスペクトル集合を抽出し、前記第１窓スペクトルにおける周波数Ｆ１未満の成分、前記第３窓スペクトルにおける周波数（Ｆ１＋Ｆｄ）未満の成分を除去するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１０】
請求項９において、
前記低周波成分変更手段は、前記周波数Ｆ１を１５０Ｈｚ、、前記周波数Ｆ２を４２０Ｈｚ、前記周波数Ｆｄを３０Ｈｚとするものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１１】
請求項１から請求項１０のいずれかにおいて、
前記音響信号が左右２チャンネルの時系列のサンプル列で構成されるステレオ音響信号であって、
前記音響フレーム読込手段は、各チャンネルに対応する音響フレームをそれぞれ読み込み、
前記周波数変換手段は、各チャンネルの音響フレームに対して周波数変換を行い、スペクトルを生成するものであり、
前記低周波成分変更手段は、一方のチャンネルのスペクトルの低周波領域から抽出した各スペクトル集合に対して、前記埋め込むべき付加情報の情報配列の値に基づいて、抽出したスペクトル集合の強度を、当該スペクトル集合の周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用して変更し、他方のチャンネルのスペクトルの低周波領域から抽出した前記一方のチャンネルに対応する各スペクトル集合に対して、抽出したスペクトル集合の強度を、（１−Ｆ）を適用して変更するものであり、
前記周波数逆変換手段は、各チャンネルについて、変更されたスペクトル集合を含むスペクトルに対して周波数逆変換を行って改変音響フレームを生成し、前記改変音響フレーム出力手段は、各チャンネルについて、生成された改変音響フレームを順次出力するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１２】
コンピュータを、請求項１から請求項１１のいずれかに記載の音響信号に対する情報の埋め込み装置として、機能させるためのプログラム。
【請求項１３】
音響信号から、あらかじめ聴取不能な状態で埋め込まれた付加情報を抽出する装置であって、
前記音響信号の所定区間をデジタル化して、所定数のサンプルで構成される音響フレームを獲得する音響フレーム獲得手段と、
前記音響フレームに対して第１窓関数、第２窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第２窓関数に対応するスペクトルである第２窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成する周波数変換手段と、
前記生成された第１窓スペクトルから低周波領域におけるスペクトル集合を抽出するとともに、前記第３窓スペクトルから低周波領域におけるスペクトル集合を、前記第１窓スペクトルから抽出したスペクトル集合と所定周波数だけオフセットさせて抽出し、抽出したスペクトル集合の強度を算出し、当該強度の関係に基づいて、所定の符号を出力する符号化手段と、
前記出力された符号に対応する情報配列を、所定の規則により変換して付加情報を抽出する付加情報抽出手段と、
を有することを特徴とする音響信号からの情報の抽出装置。
【請求項１４】
請求項１３において、
前記符号化手段は、前記スペクトル集合の強度を、当該スペクトル集合の周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを適用して変更するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１５】
請求項１３または請求項１４において、
前記符号化手段は、前記生成された第１窓スペクトルの低周波領域から互いに重複しない２つのスペクトル集合を抽出するとともに、前記第３窓スペクトルの低周波領域から互いに重複しない２つのスペクトル集合を、前記第１窓スペクトルから抽出した各スペクトル集合と所定周波数だけオフセットさせて抽出し、ＳＰ１＋ＳＰ３、ＳＰ２＋ＳＰ４、ＳＰ１＋ＳＰ４、ＳＰ２＋ＳＰ３の強度を算出し、各強度の２種類の組み合わせの割合に基づいて、所定の符号を出力するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１６】
請求項１３または請求項１４において、
前記符号化手段は、前記生成された第１窓スペクトルの低周波領域から互いに重複しない２つのスペクトル集合を抽出するとともに、前記第３窓スペクトルの低周波領域から互いに重複しない２つのスペクトル集合を、前記第１窓スペクトルから抽出した各スペクトル集合と所定周波数だけオフセットさせて抽出し、前記抽出したＳＰ１、ＳＰ２、ＳＰ３、ＳＰ４の強度に基づいて、所定の符号を出力するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１７】
請求項１３または請求項１４において、
前記符号化手段は、前記生成された第１窓スペクトルの低周波領域から互いに重複しない３つのスペクトル集合を抽出するとともに、前記第３窓スペクトルの低周波領域から互いに重複しない３つのスペクトル集合を、前記第１窓スペクトルから抽出した各スペクトル集合と所定周波数だけオフセットさせて抽出し、前記抽出したＳＰ１、ＳＰ２、ＳＰ３、ＳＰ４、ＳＰ５、ＳＰ６の強度に基づいて、所定の符号を出力するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１８】
請求項１３または請求項１４において、
前記符号化手段は、前記生成された第１窓スペクトルの低周波領域から互いに重複しない４つのスペクトル集合を抽出するとともに、前記第３窓スペクトルの低周波領域から互いに重複しない４つのスペクトル集合を、前記第１窓スペクトルから抽出した各スペクトル集合と所定周波数だけオフセットさせて抽出し、前記抽出したＳＰ１、ＳＰ２、ＳＰ３、ＳＰ４、ＳＰ５、ＳＰ６、ＳＰ７、ＳＰ８の強度に基づいて、所定の符号を出力するものであることを特徴とする音響信号に対する情報の埋め込み装置。
【請求項１９】
請求項１３から請求項１８のいずれかにおいて、
前記音響フレーム獲得手段は、前記音響信号から、所定数のサンプルで構成される音響フレームを基準フレームとして獲得する基準フレーム獲得手段と、前記基準フレームと所定サンプルずつ移動させることにより位相を変更して設定される複数の音響フレームを位相変更フレームとして設定する位相変更フレーム設定手段により構成され、
前記符号化手段は、前記抽出したスペクトル集合に基づいて、符号判定パラメータを算出する符号判定パラメータ算出手段と、基準フレームが異なる過去の同位相の音響フレームにおいて算出された符号判定パラメータに基づいて、前記基準フレームおよび複数の位相変更フレームのうち１つの音響フレームを位相が最適なものであると判断し、当該最適な位相の音響フレームについて判断された前記符号判定パラメータに基づいて、所定の符号を出力する符号出力手段を有するものであることを特徴とする音響信号からの情報の抽出装置。
【請求項２０】
コンピュータを、請求項１３から請求項１９のいずれかに記載の音響信号からの情報の抽出装置として、機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＤ・ＤＶＤ等を用いた民生・業務用途における鑑賞用のパッケージ音楽分野、放送事業者等が商業目的で配信する放送・ネットワーク音楽配信分野における音楽著作権の保護（不正コピーの監視）および音楽属性情報の提供（楽曲タイトル検索サービス）分野、ミュージアム、イベント会場における展示説明ナレーションに連動した文字情報の提供サービス分野、放送番組やＣＤ／ＤＶＤパッケージの音声信号からＵＲＬなどの情報を抽出し、携帯電話を用いて所定のコンテンツに関連するｗｅｂサイトにアクセスして詳細情報を抽出したり、アンケートに回答したりする非接触なインターネットのゲートウェイサービス分野に関する。
【背景技術】
【０００２】
最近、流れている音楽のタイトル等を知ることができる楽曲属性情報の提供サービスとして、放送された音楽に対して日時と地域を放送局に照会したり、携帯電話で流れている音楽断片を録音してデータベースに登録されているメロディーと照合したりするサービスが実用化されている（例えば、特許文献１、２参照）。
【０００３】
特許文献１、２に記載の発明では、録音した音楽の断片と、データベースに登録されているメロディーと照合するため、データベースに登録される楽曲が増えると、処理負荷が増え、類似したメロディーを誤判定する可能性が増える。そこで、曲名やアーチスト情報などの楽曲属性情報を不可聴な電子透かしとして音響信号に埋め込む手法も提案されている（例えば、特許文献３〜６参照）。
【０００４】
特許文献１〜６に記載の手法では、埋め込み可能な情報量が少なく、音質が少なからず劣化し、各種信号処理により透かし情報が消失し、またアナログコピーに対しては、透かし検出が困難であるという問題がある。そこで、本出願人は、複数チャンネル有する音響信号の低周波成分の比率を属性情報のビット値に応じて変更することにより、属性情報（付加情報）を埋め込む手法を提案した（特許文献７参照）。
【０００５】
特許文献７に記載の発明は、ステレオ音響信号にのみ対応したものであったが、本出願人は、モノラル音響信号にも対応可能なように改良を加え、音響信号の所定区間における低周波成分の先頭部分と後部部分のスペクトル強度の割合を変更することにより、付加情報を埋め込む手法を提案した（特許文献８参照）。
【特許文献１】特開２００２−２５９４２１号公報
【特許文献２】特開２００３−１５７０８７号公報
【特許文献３】特開平１１−１４５８４０号公報
【特許文献４】特開平１１−２１９１７２号公報
【特許文献５】特許第３３２１７６７号公報
【特許文献６】特開２００３−９９０７７号公報
【特許文献７】特願２００５−５１５７号
【特許文献８】特願２００５−３０３８９８号
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記特許文献８に記載の発明では、音響信号の所定区間において前部と後部を分けるために、互いに非対象な窓関数を利用している。この前部と後部における信号の特徴の違いにより、抽出側では、所定区間における前部と後部の位置を特定し易くなり、位置ずれを防ぐことができる。しかし、信号の状態によっては、抽出側で、完全には前部と後部の区別をすることができず、位置ずれを防ぐ手法としては不十分である。
【０００７】
そこで、本発明は、音響信号に付加情報を埋め込む場合に、抽出位置を特定し易く、抽出精度を高めることが可能な音響信号に対する情報の埋め込み装置、音響信号からの情報の抽出装置を提供することを課題とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明では、時系列のサンプル列で構成される音響信号に対して、付加情報を聴取不能な状態で埋め込む装置であって、前記音響信号より、所定数のサンプルを音響フレームとして読み込む音響フレーム読込手段と、前記音響フレームに対して第１窓関数、第２窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第２窓関数に対応するスペクトルである第２窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成する周波数変換手段と、前記生成された第１窓スペクトルから低周波領域におけるスペクトル集合を抽出するとともに、前記第３窓スペクトルから低周波領域におけるスペクトル集合を、前記第１窓スペクトルから抽出したスペクトル集合と所定周波数だけオフセットさせて抽出し、前記埋め込むべき付加情報の情報配列に基づいて、前記抽出した各スペクトル集合の強度を変更するとともに、中央の第２窓関数に対応する低周波成分を除去する低周波成分変更手段と、前記各スペクトル集合の強度が変更された低周波領域を含む各窓スペクトルに対して周波数逆変換を行って、改変音響フレームを生成する周波数逆変換手段と、前記生成された改変音響フレームを順次出力する改変音響フレーム出力手段を有する音響信号に対する情報の埋め込み装置を提供する。
【０００９】
また、本発明では、音響信号から、あらかじめ聴取不能な状態で埋め込まれた付加情報を抽出する装置であって、前記音響信号の所定区間をデジタル化して、所定数のサンプルで構成される音響フレームを獲得する音響フレーム獲得手段と、前記音響フレームに対して第１窓関数、第２窓関数、第３窓関数を用いてそれぞれ周波数変換を行い、前記第１窓関数に対応するスペクトルである第１窓スペクトル、前記第２窓関数に対応するスペクトルである第２窓スペクトル、前記第３窓関数に対応するスペクトルである第３窓スペクトルを生成する周波数変換手段と、前記生成された第１窓スペクトルから低周波領域におけるスペクトル集合を抽出するとともに、前記第３窓スペクトルから低周波領域におけるスペクトル集合を、前記第１窓スペクトルから抽出したスペクトル集合と所定周波数だけオフセットさせて抽出し、抽出したスペクトル集合の強度を算出し、当該強度の関係に基づいて、所定の符号を出力する符号化手段と、前記出力された符号に対応する情報配列を、所定の規則により変換して付加情報を抽出する付加情報抽出手段を有する音響信号からの情報の抽出装置を提供する。
【発明の効果】
【００１０】
本発明によれば、音響信号の低周波領域からスペクトル集合を抽出する際、所定区間における前部のスペクトル集合と後部のスペクトル集合を所定周波数だけオフセットさせて抽出し、埋め込むべき付加情報の情報配列に基づいて、抽出したスペクトル集合の強度を変更するようにしたので、抽出側において、所定区間の前部と後部の区別をより正確に行うことができ、抽出精度を高めることが可能となるという効果を奏する。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施形態について図面を参照して詳細に説明する。
（１．１．音響信号に対する情報の埋め込み装置）
まず、本発明第１の実施形態について説明する。図１は、本発明第１、第２の実施形態に共通の音響信号に対する情報の埋め込み装置の構成を示す機能ブロック図である。図１において、１０は音響フレーム読込手段、２０は周波数変換手段、３０は低周波成分変更手段、４０は周波数逆変換手段、５０は改変音響フレーム出力手段、６０は記憶手段、６１は音響信号記憶部、６２は付加情報記憶部、６３は改変音響信号記憶部、７０は付加情報読込手段である。なお、図１に示す装置は、ステレオ音響信号、モノラル音響信号の両方に対応可能であるが、ここでは、ステレオ音響信号に対して処理を行う場合について説明していく。
【００１２】
音響フレーム読込手段１０は、付加情報の埋め込み対象とする元のステレオ音響信号の各チャンネルから所定数のサンプルを１フレームとして読み込む機能を有している。周波数変換手段２０は、音響フレーム読込手段１０が読み込んだ音響信号のフレームをフーリエ変換等により周波数変換してスペクトルを生成する機能を有している。低周波成分変更手段３０は、生成されたスペクトルの低周波領域から８つのスペクトル集合を抽出し、付加情報記憶部６２から抽出した付加情報に基づいて、各スペクトル集合の強度を変更する機能を有している。周波数逆変換手段４０は、強度が変更されたスペクトル集合を含むスペクトルに対して周波数逆変換を行うことにより、改変音響フレームを生成する機能を有している。改変音響フレーム出力手段５０は、生成された改変音響フレームを順次出力する機能を有している。記憶手段６０は、付加情報を埋め込む対象とするステレオ音響信号を記憶した音響信号記憶部６１と、ビット配列として構成され、ステレオ音響信号に埋め込まれる付加情報を記憶した付加情報記憶部６２と、付加情報埋め込み後の改変音響信号を記憶する改変音響信号記憶部６３を有しており、その他処理に必要な各種情報を記憶するものである。付加情報読込手段７０は、付加情報記憶部６２から付加情報を抽出する機能を有している。なお、付加情報とは、音響情報に付加して埋め込むべき情報であり、タイトルやアーティスト名等の属性情報、および属性情報以外の他の情報を含むものである。図１に示した各構成手段は、現実にはコンピュータおよびその周辺機器等のハードウェアに専用のプログラムを搭載することにより実現される。すなわち、コンピュータが、専用のプログラムに従って各手段の内容を実行することになる。
【００１３】
（１．２．埋め込み装置の処理動作）
次に、図１に示した音響信号に対する情報の埋め込み装置の第１の実施形態における処理動作ついて説明する。ここでは、音響信号として、Ｌ（左）、Ｒ（右）の２チャンネルを有するステレオ音響信号に対して処理を行う場合について説明していく。音響フレーム読込手段１０は、音響信号記憶部６１に記憶されたステレオ音響信号の左右の各チャンネルから、それぞれ所定数のサンプルを１音響フレームとして読み込む。音響フレーム読込手段１０が読み込む１音響フレームのサンプル数は、適宜設定することができるが、サンプリング周波数が４４．１ｋＨｚの場合、４０９６サンプル程度とすることが望ましい。したがって、音響フレーム読込手段１０は、左チャンネル、右チャンネルについてそれぞれ４０９６サンプルずつ、順次音響フレームとして読み込んでいくことになる。
【００１４】
音響フレームとしては、ＡタイプとＢタイプが存在する。Ａタイプの音響フレーム、Ｂタイプの音響フレームは、それぞれ同タイプの先行する音響フレームの最後のサンプルの次のサンプルを先頭サンプルとして設定される。そして、ＡタイプとＢタイプの音響フレームは互いに所定数（本実施形態では２０４８）のサンプルを重複して設定される。例えば、Ａタイプの音響フレームを先頭からＡ１、Ａ２、Ａ３…とし、Ｂタイプの音響フレームを先頭からＢ１、Ｂ２、Ｂ３…とすると、Ａ１はサンプル１〜４０９６、Ａ２はサンプル４０９７〜８１９２、Ａ３はサンプル８１９３〜１２２８８、Ｂ１はサンプル２０４９〜６１４４、Ｂ２はサンプル６１４５〜１０２４０、Ｂ３はサンプル１０２４１〜１４３３６となる。なお、ＡタイプとＢタイプは相対的なものであるので、どちらが先であっても良い。すなわち、上記とは逆にＡ１がサンプル２０４９〜６１４４、Ａ２がサンプル６１４５〜１０２４０、Ａ３がサンプル１０２４１〜１４３３６、Ｂ１がサンプル１〜４０９６、Ｂ２がサンプル４０９７〜８１９２、Ｂ３がサンプル８１９３〜１２２８８であっても良い。
【００１５】
周波数変換手段２０は、音響フレーム読込手段１０が読み込んだ音響フレームに対して、周波数変換を行って、その音響フレームのスペクトルであるフレームスペクトルを得る。具体的には、窓関数を利用して周波数変換を行う。周波数変換としては、フーリエ変換、ウェーブレット変換その他公知の種々の手法を用いることができる。本実施形態では、フーリエ変換を用いた場合を例にとって説明する。
【００１６】
一般に、所定の信号に対してフーリエ変換を行う場合、信号を所定の長さに区切って行う必要があるが、この場合、所定長さの信号に対してそのままフーリエ変換を行うと、擬似高調波成分が発生する。そこで、一般にフーリエ変換を行う場合には、ハニング窓と呼ばれる窓関数を用いて、信号の値を変化させた後、変化後の値に対してフーリエ変換を実行する。
【００１７】
本実施形態では、擬似高調波成分の発生を防止するためだけではなく、一つの音響フレームから、情報を埋め込むための複数の状態を作り出すため、複数の窓関数を用意し、一つの音響フレームに対して、各窓関数を利用してフーリエ変換を行い、複数のスペクトルを得る。複数の窓関数として、より良い効果を得るため、本実施形態では、図２（ｂ）〜（ｄ）に示したような第１窓関数Ｗ（１，ｉ）、第２窓関数Ｗ（２，ｉ）、第３窓関数Ｗ（３，ｉ）を用意し、抽出側で認識し易いようにした。第１窓関数Ｗ（１，ｉ）は、音響フレームの前部を抽出するためのものであり、図２（ｂ）に示すように前部の所定のサンプル番号ｉの位置において、最大値１をとり、後部においては、最小値０をとるように設定されている。どのサンプル番号の場合に最大値をとるかについては、窓関数Ｗ（１，ｉ）の設計によって異なってくるが、本実施形態では、後述する〔数式１〕で定義される。窓関数Ｗ（１，ｉ）を乗じることにより、図２（ａ）に示すような音響フレームの信号波形は、図２（ｆ）に示すように、前部に信号成分が残り、後部の信号成分が削除されたものとなり、これがフーリエ変換対象となる。
【００１８】
また、第２窓関数Ｗ（２，ｉ）は、音響フレームの中央部を抽出するためのものであり、図２（ｃ）に示すように、中央部の所定のサンプル番号ｉの位置において、最大値１をとり、前部、後部においては、最小値０をとるように設定されている。どのサンプル番号の場合に最大値をとるかについては、窓関数Ｗ（２，ｉ）の設計によって異なってくるが、本実施形態では、後述する〔数式２〕で定義される。窓関数Ｗ（２，ｉ）を乗じることにより、図２（ａ）に示すような音響フレームの信号波形は、図２（ｇ）に示すように、中央部に信号成分が残り、前部と後部の信号成分が除去されたものとなり、これがフーリエ変換対象となる。
【００１９】
また、第３窓関数Ｗ（３，ｉ）は、音響フレームの後部を抽出するためのものであり、図２（ｄ）に示すように、前部においては最小値０をとり、後部の所定のサンプル番号ｉの位置において、最大値１をとるように設定されている。どのサンプル番号の場合に最大値をとるかについては、窓関数Ｗ（３，ｉ）の設計によって異なってくるが、本実施形態では、後述する〔数式３〕で定義される。窓関数Ｗ（３，ｉ）を乗じることにより、図２（ａ）に示すような音響フレームの信号波形は、図２（ｈ）に示すように、前部の信号成分が除去され、後部に信号成分が残ったものとなり、これがフーリエ変換対象となる。このように前部、中央部、後部を抽出した後、フーリエ変換を実行するため、前部、中央部、後部に対応したスペクトルが得られることになる。１つの音響フレームにビット値を埋め込むためには、本来、前部と後部の２つに分けられれば良いのであるが、抽出側においては、必ずしも、信号を同期して読み込むことができるとは限らず、したがって、前部と後部をはっきりと区別するため、本発明では、埋め込み時に中央部の信号成分を常に除去し、前部と後部を時間的に分離することとしている（ただし、抽出時は前部と後部だけを解析すればよく、中央部は無視してよい）。本発明において用いる窓関数は、窓関数Ｗ（１，ｉ）と窓関数Ｗ（３，ｉ）が左右非対称であるため、抽出時において、埋め込まれていた情報の誤認識が起こりにくくなる。
【００２０】
また、本発明では、音響フレームを重複させて読み込み、奇数フレーム（または偶数フレーム）については、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）を用い、偶数フレーム（または奇数フレーム）については、図２（ｅ）に示したような窓関数Ｗ（４，ｉ）を用いるようにした。
【００２１】
なお、本発明においては、音響フレームは重複して読み込まれる。すなわち、奇数番目の音響フレームと偶数番目の音響フレームは、所定数のサンプルを重複して読み込む。上記のように、奇数フレームと偶数フレームでは、用いられる窓関数が異なるが、奇数フレームと偶数フレームは単に奇数か偶数かの違いだけであるため、どちらに対して処理をどちらの処理を行っても良い。したがって、本明細書では、奇数フレーム、偶数フレームの一方をＡタイプフレーム、他方をＢタイプフレームと呼ぶことにする。本実施形態では、奇数フレームをＡタイプフレーム、偶数フレームをＢタイプフレームとして説明するが、逆に偶数フレームをＡタイプフレーム、奇数フレームをＢタイプフレームとしても良い。
【００２２】
本実施形態では、窓関数Ｗ（１，ｉ）〜Ｗ（４，ｉ）は、以下の〔数式１〕〜〔数式４〕で定義される。なお、図２において、横軸は時間軸（ｉ）である。ｉは、後述するように、各音響フレーム内のＮ個のサンプルに付した通し番号であるため時刻ｔに比例している。また、図２（ａ）（ｆ）（ｇ）（ｈ）（ｉ）において縦軸は信号の振幅値（レベル）を示す。図２（ｂ）〜（ｅ）において縦軸は窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）、Ｗ（４，ｉ）の値を示しており、Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）、Ｗ（４，ｉ）の最大値はいずれも１である。
【００２３】
〔数式１〕
ｉ≦３Ｎ／８のとき、Ｗ（１，ｉ）＝０．５−０．５ｃｏｓ（８πｉ／（３Ｎ））
３Ｎ／８＜ｉ≦Ｎ／２のとき、Ｗ（１，ｉ）＝０．５−０．５ｃｏｓ（８π（ｉ−Ｎ／４）／Ｎ）
ｉ＞Ｎ／２のとき、Ｗ（１，ｉ）＝０．０
【００２４】
〔数式２〕
ｉ≦３Ｎ／８のとき、Ｗ（２，ｉ）＝０．０
３Ｎ／８＜ｉ≦Ｎ／２のとき、Ｗ（２，ｉ）＝０．５−０．５ｃｏｓ（８π（ｉ−３Ｎ／８）／Ｎ）
Ｎ／２＜ｉ≦３Ｎ／４のとき、Ｗ（２，ｉ）＝０．５−０．５ｃｏｓ（４π（ｉ−Ｎ／４）／Ｎ）
ｉ＞３Ｎ／４のとき、Ｗ（２，ｉ）＝０．０
【００２５】
〔数式３〕
ｉ≦Ｎ／２のとき、Ｗ（３，ｉ）＝０．０
ｉ＞Ｎ／２のとき、Ｗ（３，ｉ）＝０．５−０．５ｃｏｓ（４π（ｉ−Ｎ／２）／Ｎ）
【００２６】
〔数式４〕
ｉ≦Ｎ／４のとき、Ｗ（４，ｉ）＝０．０
Ｎ／４＜ｉ≦Ｎ／２のとき、Ｗ（４，ｉ）＝０．５−０．５ｃｏｓ（４π（ｉ−Ｎ／４）／Ｎ）
Ｎ／２＜ｉ≦７Ｎ／８のとき、Ｗ（４，ｉ）＝０．５−０．５ｃｏｓ（８π（ｉ−Ｎ／８）／（３Ｎ））
ｉ＞７Ｎ／８のとき、Ｗ（４，ｉ）＝０．０
【００２７】
なお、図２および上記〔数式１〕〜〔数式４〕から明らかなように、窓関数Ｗ（１，ｉ）とＷ（３，ｉ）は、互いに非対称な形状である。これは、後述する抽出側において、両者の識別を容易にするためである。また、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）は、ｉが所定の値のときに最大値１をとり、ｉがその他の値をとる場合には、ｉの値に応じて単調増加、または単調減少する窓関数を分割したものであるため、窓関数Ｗ（１，ｉ）とＷ（３，ｉ）が定まると、窓関数Ｗ（２，ｉ）も必然的に定まる。このため、窓関数Ｗ（２，ｉ）は左右非対称の形状となっている。
【００２８】
本発明においては、奇数フレームと偶数フレームを、所定サンプルずつ重複して読み込むため、情報の埋め込みを行った後、音響信号に復元する際に、窓関数を乗じた奇数フレームと、窓関数を乗じた偶数フレームの重複サンプルを加算した場合に、ほぼ元の値に戻るようにしなければならない。このため、窓関数Ｗ（４，ｉ）の形状は、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）の値に応じて必然的に定まる。すなわち、奇数フレームと偶数フレームの重複部分において、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）、Ｗ（４，ｉ）を加算すると、全区間固定値１になるように定義されている。
【００２９】
周波数変換手段２０が、Ａタイプの音響フレームに対してフーリエ変換を行う場合は、左チャンネル信号Ｘｌ（ｉ）、右チャンネル信号Ｘｒ（ｉ）（ｉ＝０，…，Ｎ−１）に対して、３つの窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）を用いて、以下の〔数式５〕に従った処理を行い、左チャンネルに対応する変換データの実部Ａｌ（１，ｊ）、Ａｌ（２，ｊ）、Ａｌ（３，ｊ）、虚部Ｂｌ（１，ｊ）、Ｂｌ（２，ｊ）、Ｂｌ（３，ｊ）、右チャンネルに対応する変換データの実部Ａｒ（１，ｊ）、Ａｒ（２，ｊ）、Ａｒ（３，ｊ）、虚部Ｂｒ（１，ｊ）、Ｂｒ（２，ｊ）、Ｂｒ（３，ｊ）を得る。なお、窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）は、それぞれ音響フレームの前部（先頭）付近、中央付近、後部付近において値が大きくなる関数となっている。
【００３０】
〔数式５〕
Ａｌ（１，ｊ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘｌ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｌ（１，ｊ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘｌ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｌ（２，ｊ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘｌ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｌ（２，ｊ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘｌ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｌ（３，ｊ）＝Σi=0,…,N-1Ｗ（３，ｉ）・Ｘｌ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｌ（３，ｊ）＝Σi=0,…,N-1Ｗ（３，ｉ）・Ｘｌ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｒ（１，ｊ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘｒ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｒ（１，ｊ）＝Σi=0,…,N-1Ｗ（１，ｉ）・Ｘｒ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｒ（２，ｊ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘｒ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｒ（２，ｊ）＝Σi=0,…,N-1Ｗ（２，ｉ）・Ｘｒ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｒ（３，ｊ）＝Σi=0,…,N-1Ｗ（３，ｉ）・Ｘｒ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｒ（３，ｊ）＝Σi=0,…,N-1Ｗ（３，ｉ）・Ｘｒ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
【００３１】
周波数変換手段２０が、Ｂタイプの音響フレームに対してフーリエ変換を行う場合は、左チャンネル信号Ｘｌ（ｉ）、右チャンネル信号Ｘｒ（ｉ）（ｉ＝０，…，Ｎ−１）に対して、窓関数Ｗ（４，ｉ）を用いて、以下の〔数式６〕に従った処理を行い、左チャンネルに対応する変換データの実部Ａｌ（４，ｊ）、虚部Ｂｌ（４，ｊ）、右チャンネルに対応する変換データの実部Ａｒ（４，ｊ）、虚部Ｂｒ（４，ｊ）を得る。
【００３２】
〔数式６〕
Ａｌ（４，ｊ）＝Σi=0,…,N-1Ｗ（４，ｉ）・Ｘｌ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｌ（４，ｊ）＝Σi=0,…,N-1Ｗ（４，ｉ）・Ｘｌ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
Ａｒ（４，ｊ）＝Σi=0,…,N-1Ｗ（４，ｉ）・Ｘｒ（ｉ）・ｃｏｓ（２πｉｊ／Ｎ）
Ｂｒ（４，ｊ）＝Σi=0,…,N-1Ｗ（４，ｉ）・Ｘｒ（ｉ）・ｓｉｎ（２πｉｊ／Ｎ）
【００３３】
上記〔数式５〕〔数式６〕において、ｉは、各音響フレーム内のＮ個のサンプルに付した通し番号であり、ｉ＝０，１，２，…Ｎ−１の整数値をとる。また、ｊは周波数の値について、値の小さなものから順に付した通し番号であり、ｉと同様にｊ＝０，１，２，…Ｎ／２−１の整数値をとる。サンプリング周波数が４４．１ｋＨｚ、Ｎ＝４０９６の場合、ｊの値が１つ異なると、周波数が１０．８Ｈｚ異なることになる。
【００３４】
上記〔数式５〕〔数式６〕に従った処理を実行することにより、各音響フレームの信号成分に窓関数を作用させた信号成分についてのスペクトルが得られる。続いて、低周波成分変更手段３０が、生成されたスペクトルの低周波領域から所定数のスペクトル集合を抽出する。人間の聴覚は、２００〜３００Ｈｚ程度までの低周波成分については、方向性を感知しにくくなっていることが知られている（コロナ社１９９０年１０月３０日発行「音響工学講座１．基礎音響工学、日本音響学会編」ｐ２４７図９・２６参照）。したがって、特許文献７〜９に記載の発明においては、低周波成分を２００〜３００Ｈｚ程度以下としていた。しかし、本出願人による研究の結果、最低周波数帯における成分を削除した場合は、４００Ｈｚ付近においても方向性を感知しにくくなることがわかった。そこで、本実施形態では、０〜１５０Ｈｚ付近の最低周波数帯の成分を除去し、１５０〜４００Ｈｚ程度の低周波領域に情報を埋め込むことにしている。さらに、本実施形態では、埋め込み対象とする低周波領域において４つの低周波数帯を設定し、それぞれに対して加工を行うようにしている。
【００３５】
ここで、図３に、本実施形態による低周波成分の状態を１音響フレーム単位で示す。図３に示す各音響フレームにおいて、横軸は時間方向、縦軸は周波数方向を示している。また、網掛けされた部分は、低周波成分が存在している部分を示し、網掛けが濃いほど成分強度が強いことを示している。本実施形態では、低周波領域のうち４つの低周波数帯の分布と、低周波成分のうち時間的に前部の成分と後部の成分の分布を組み合わせて埋め込む符号の区別を行う。
【００３６】
本実施形態では、図３（ａ）に示すような原状態の低周波成分に対して、符号０を埋め込む場合、Ｌ-chの信号の低周波成分を全て除去し、除去した成分と同等の成分をＲ-chの信号の低周波成分に加算して図３（ｂ）に示すような状態に変更する。なお、図３においては、第１窓関数により得られる前部において縦軸の周波数方向が６つに区分されており、第３窓関数により得られる後部において縦軸の周波数方向が５つに区分されている。前部、後部のいずれにおいても、最下部に示すＧ１、Ｇ２はギャップ領域である。さらに、前部においては、最上部にギャップ領域Ｇ１０が設けられている。これらのギャップ領域は、抽出対象であるＬ-chの信号においては、常に成分が除去され、除去された成分と同等の成分がＲ-chの信号の低周波成分に加算される。最下部にギャップ領域を設けることにより、埋め込み可能な低周波成分の上限を高くすることができる。
【００３７】
前部、後部において区分された低周波領域のうちギャップ領域以外の４つを、低い方から順に、第１低周波数帯、第２低周波数帯、第３低周波数帯、第４低周波数帯と定義する。図３（ｂ）に示すように、前部の第１低周波数帯におけるスペクトル集合をＳＰ１、前部の第２低周波数帯におけるスペクトル集合をＳＰ３、前部の第３低周波数帯におけるスペクトル集合をＳＰ５、前部の第４低周波数帯におけるスペクトル集合をＳＰ７とし、後部の第１低周波数帯におけるスペクトル集合をＳＰ２、後部の第２低周波数帯におけるスペクトル集合をＳＰ４、後部の第３低周波数帯におけるスペクトル集合をＳＰ６、後部の第４低周波数帯におけるスペクトル集合をＳＰ８で表現することとする。
【００３８】
図３において、ギャップ領域Ｇ１、Ｇ２の下限は直流成分すなわち周波数０に設定されており、スペクトル集合ＳＰ１の下限は周波数Ｆ１、スペクトル集合ＳＰ８の上限は周波数Ｆ２に設定されている。また、後部のスペクトル集合ＳＰ２、ＳＰ４、ＳＰ６、ＳＰ８は、前部のスペクトル集合ＳＰ１、ＳＰ３、ＳＰ５、ＳＰ７の周波数範囲にそれぞれ周波数Ｆｄだけオフセットした周波数範囲となっている。例えば、スペクトル集合ＳＰ１の下限が周波数Ｆ１である場合、スペクトル集合ＳＰ２の下限は周波数（Ｆ１＋Ｆｄ）である。また、スペクトル集合ＳＰ８の上限が周波数Ｆ２である場合、スペクトル集合ＳＰ７の上限が周波数（Ｆ２−Ｆｄ）である。
【００３９】
本実施形態では、上記のように各音響フレームの低周波領域における８つのスペクトル集合の強度を変更することにより、低周波成分を多数の状態に設定する。具体的には、８つのスペクトル集合のうち４つを強度が大きい状態、４つを強度が小さい状態に変更することにより、７０通りの状態に設定する。したがって、本実施形態では、１音響フレームに７０パターンの情報を埋め込むことが可能となる。８つの各スペクトル集合の状態を、強度が大きい状態、または強度が小さい状態のいずれかに変化させる場合、８つのスペクトル集合全てが強度が小さい状態である場合を除くと、理論的には２５５パターンの情報を埋め込むことが可能である。しかし、この場合、１つのスペクトル集合だけ強度が大きい状態であり、他の７つのスペクトル集合が強度が小さい状態となる等、低周波成分全体としての強度が小さくなった場合には、抽出側において、正しい抽出が困難となる場合が多い。そのため、本実施形態では、いずれの状態とする場合であっても、パターンを埋め込む場合には、８つのスペクトル集合のうち、４つのスペクトル集合を強度が大きい状態に設定することとしている。
【００４０】
本実施形態では、１音響フレームに７０パターンの情報を埋め込むことができるため、ビット配列をそのまま埋め込む場合には、６ビットまでの情報ならば対応することが可能になる。しかし、通常コンピュータ等で扱っている情報は最低でも７ビット以上になっていることが多い。したがって、本実施形態では、その点についても工夫をしている。具体的には、７ビットで表現されているＡＳＣＩＩコードのうち、目的によっては使用しないコードを削除した７０パターンに変換する処理を行っている。本実施形態で行うコード変換表を図４に示す。
【００４１】
図４において、ＡＳＣＩＩコードは１６進表記としている。ｃｈａｒａｃｔｅｒは、そのコードで表現されるｃｈａｒａｃｔｅｒを示している。パターンは埋め込み対象とする７０通りのパターン番号を示している。図４に示すようなコード変換表を用いれば、アルファベット全てとほとんどの記号を網羅することができ、ＵＲＬ等の情報を埋め込むには十分である。
【００４２】
本発明で、パターン１を埋め込む場合、図３（ｃ）に示すように、Ｌ-chの信号のＳＰ２、ＳＰ４、ＳＰ６、ＳＰ８の成分を除去し、除去した成分と同等の成分をＲ-chの信号に加算する。また、Ｌ-chの信号のＳＰ１、ＳＰ３、ＳＰ５、ＳＰ７の成分強度を高め、Ｒ-chの信号の前部の各スペクトル集合の強度を弱めている。この状態を“状態１”と呼ぶことにする。パターン７０を埋め込む場合は、図３（ｄ）に示すように、Ｌ-chの信号のＳＰ１、ＳＰ２、ＳＰ５、ＳＰ６の成分を除去し、除去した成分と同等の成分をＲ-chの信号に加算する。また、Ｌ-chの信号のＳＰ２、ＳＰ４、ＳＰ６、ＳＰ８の成分強度を高め、Ｒ-chの信号の対応する各スペクトル集合の強度を弱めている。
【００４３】
パターン１〜７０と各スペクトル集合の強度との関係を図５に示す。図５において、各スペクトル集合ＳＰ１〜ＳＰ８の値が“１”は、除去されていない状態、“０”は、除去された状態を示している。
【００４４】
ここで、第１の実施形態による周波数成分全体の状況を図６に示す。図６において、上下方向は周波数方向であり、ｊ＝２０４７は２２．０５ｋＨｚに対応している。図６においては、前部においては、最低周波数帯をｊ＝０〜１４（０〜約１５０Ｈｚ）、埋め込み対象とする低周波数領域のうち、第１低周波数帯をｊ＝１５〜２０（約１６０〜２２０Ｈｚ）、第２低周波数帯をｊ＝２１〜２６（約２３０〜２８０Ｈｚ）、第３低周波数帯をｊ＝２７〜３２（約２９０〜３４０Ｈｚ）、第４低周波数帯をｊ＝３３〜３８（約３５０〜４１０Ｈｚ）とした場合を示している。また、後部においては、最低周波数帯をｊ＝０〜１７（０〜約１８０Ｈｚ）、埋め込み対象とする低周波数領域のうち、第１低周波数帯をｊ＝１８〜２３（約１９０〜２５０Ｈｚ）、第２低周波数帯をｊ＝２４〜２９（約２６０〜３１０Ｈｚ）、第３低周波数帯をｊ＝３０〜３５（約３２０〜３８０Ｈｚ）、第４低周波数帯をｊ＝３６〜４１（約３９０〜４４０Ｈｚ）とした場合を示している。また、網掛けの濃さは、信号成分の強度を概念的に示したものである。ｊ＝４２以上の高周波成分に対しては、変更を加えず、原音を維持することとしている。
【００４５】
また、図６においても、図３と同様、網掛けされた部分は、周波数成分が存在している部分を示し、網掛けが濃いほど成分強度が強いことを示している。また、Ｌ（左）信号、Ｒ（右）信号それぞれにおいては、左右方向を第１窓関数〜第３窓関数に対応した３つの時間帯に対応させている。各時間帯の中においては、左右方向は各信号成分の強度を表現している。
【００４６】
図６は、Ｌ信号におけるＳＰ２、ＳＰ３、ＳＰ６、ＳＰ７の成分強度を高め、ＳＰ１、ＳＰ４、ＳＰ５、ＳＰ８の成分強度を弱めた場合を示している。図３では、単純に各スペクトル集合の強度の強弱のみを示したが、図６では、各周波数（整数ｊに比例）に対応して示している。本発明では、各低周波数帯において、その周波数範囲における中央付近における値が大きくなるように周波数方向の値に応じて変化する窓関数Ｆを乗じるため、ＳＰ２、ＳＰ３、ＳＰ６、ＳＰ７の成分において、周波数方向の中央部分の成分が大きくなっていることがわかる。ただし、図６は、各低周波数帯における周波数の強度が中央部分で大きくなることをイメージ的に表現したものであり、図６のようにきれいな円弧になるのは、低周波数帯内の各ｊに対応した成分の値が全て等しい場合である。現実には、各低周波数帯における各ｊに対応した成分の値に応じて変化する。
【００４７】
低周波成分変更手段３０は、Ａタイプの音響フレームについて、付加情報読込手段７０が読み込んだビット値に応じて、スペクトル集合の強度を変更する処理を行う。本実施形態では、付加情報を１バイトずつ読み込み、これを７０通りのビットパターンに変換し、７０通りのパターンのいずれであるかを１音響フレームに対して埋め込む。埋め込まれるパターンは、図５に示した通り“１０１０１０１０”〜“００１１００１１”の７０通りがある。本実施形態では、これらをパターン１〜パターン７０と定義する。そして、低周波成分変更手段３０は、読み込んだパターン１〜パターン７０に応じて、低周波成分の状態を状態１〜状態７０のいずれかに変更する。具体的には、まず、低周波成分変更手段３０は、上記〔数式５〕により求めた左チャンネルの実部Ａｌ（１，ｊ）、Ａｌ（３，ｊ）、虚部Ｂｌ（１，ｊ）、Ｂｌ（３，ｊ）、右チャンネルの実部Ａｒ（１，ｊ）、Ａｒ（３，ｊ）、虚部Ｂｒ（１，ｊ）、Ｂｒ（３，ｊ）を利用して、以下の〔数式７〕により、強度値Ｅ1〜Ｅ8を算出する。
【００４８】
〔数式７〕
Ｅ1＝Σj=m,m+P-1｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2＋Ａr（1,ｊ）2＋Ｂr（1,ｊ）2｝・Ｆ（ｊ−m）・Ｃ
Ｅ2＝Σj=m+d,m+d+P-1｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2＋Ａr（３,ｊ）2＋Ｂr（３,ｊ）2｝・Ｆ（ｊ−m−ｄ）・Ｃ
Ｅ3＝Σj=m+P,m+2P-1｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2＋Ａr（1,ｊ）2＋Ｂr（1,ｊ）2｝・Ｆ（ｊ−m−P）・Ｃ
Ｅ4＝Σj=m+d+P,m+d+2P-1｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2＋Ａr（３,ｊ）2＋Ｂr（３,ｊ）2｝・Ｆ（ｊ−m−ｄ−P）・Ｃ
Ｅ5＝Σj=m+2P,m+3P-1｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2＋Ａr（1,ｊ）2＋Ｂr（1,ｊ）2｝・Ｆ（ｊ−m−2P）・Ｃ
Ｅ6＝Σj=m+d+2P,m+d+3P-1｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2＋Ａr（３,ｊ）2＋Ｂr（３,ｊ）2｝・Ｆ（ｊ−m−ｄ−2P）・Ｃ
Ｅ7＝Σj=m+3P,m+4P-1｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2＋Ａr（1,ｊ）2＋Ｂr（1,ｊ）2｝・Ｆ（ｊ−m−3P）・Ｃ
Ｅ8＝Σj=m+d+3P,m+d+4P-1｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2＋Ａr（３,ｊ）2＋Ｂr（３,ｊ）2｝・Ｆ（ｊ−m−ｄ−3P）・Ｃ
【００４９】
上記〔数式７〕中のＦ（ｊ）は周波数方向の値に応じて変化する窓関数であり、以下の〔数式８〕で定義されるものである。
【００５０】
〔数式８〕
Ｆ（ｊ）＝１．０−（ｊ−Ｐｒ）2／Ｐｒ2
【００５１】
上記〔数式８〕において、Ｐｒ＝Ｐ／２である。この窓関数Ｆ（ｊ）が描く曲線を図７に示す。図７に示すように、窓関数Ｆ（ｊ）は、第１〜第４の各低周波数帯における周波数の中心部分に重みを大きくした関数となっている。実際に窓関数Ｆ（ｊ）を適用する際には、各低周波数帯の下限であるｍ、ｍ＋ｄ、ｍ＋Ｐ、ｍ＋ｄ＋Ｐ、ｍ＋２Ｐ、ｍ＋ｄ＋２Ｐ、ｍ＋３Ｐ、ｍ＋ｄ＋３Ｐだけｊの値を補正して適用することになる。なお、ｄはオフセットさせる周波数Ｆｄに対応する値である。
【００５２】
また、上記〔数式７〕中のＣは固定係数であり、周波数窓関数を利用することにより低減する強度を補正する。この固定係数Ｃは、以下の〔数式９〕で定義される。
【００５３】
〔数式９〕
Ｃ＝１．０／Σj=0,P-1Ｆ（ｊ）
【００５４】
上記〔数式７〕において、ｍはギャップ領域を除く前部の低周波数帯の下限の成分の番号、Ｍは後部の低周波領域の上限の成分の番号であり、ｄ＝（Ｍ−ｍ）／９、Ｐ＝２ｄである。なお、ｄ、Ｐが整数にならない場合、切捨て処理を行う。ｍ＝１５、Ｍ＝４２と設定すると、ｄ＝３、Ｐ＝６となり、図６に例示したスケールと同じになる。上記〔数式７〕により算出されたＥ1〜Ｅ8は音響フレームの所定の範囲におけるスペクトル集合の成分強度の強度値を示すことになる。続いて、この強度値Ｅ1〜Ｅ8がレベル下限値Ｌｅｖ以上であるかどうかの判定を行う。レベル下限値Ｌｅｖは、音響信号Ｘｌ（ｉ）、Ｘｒ（ｉ）の振幅最大値が１に正規化されており、Ｍ＝４０程度に設定されている場合、０．２５に設定する。このＬｅｖ＝０．５という値は、経験的にアナログ変換への耐性が維持できるレベルであり、低周波成分が少ない場合は適宜下げることになるが、その場合は、アナログ変換により検出精度も低下することになる。
【００５５】
強度値Ｅ1〜Ｅ8がレベル下限値Ｌｅｖ以上であるかどうかを判断するのは、信号の強度が小さいと、信号を変化させても、その変化を抽出側で検出することができないためである。すなわち、各低周波スペクトル成分を十分な大きさとすることができるかどうかを判断することになる。
【００５６】
Ｅ1、Ｅ3、Ｅ5、Ｅ7がレベル下限値Ｌｅｖより大きく、埋め込むべきパターンが“パターン１”である場合、以下の〔数式１０〕に従った処理を実行することにより、低周波成分の状態を“状態１”、すなわち、図３（ｃ）に示したような状態に変更する。
【００５７】
〔数式１０〕
ｊ＝ｍ＋ｄ〜ｍ＋ｄ＋Ｐ−１、ｍ＋ｄ＋Ｐ〜ｍ＋ｄ＋２Ｐ−１、ｍ＋ｄ＋２Ｐ〜ｍ＋ｄ＋３Ｐ−１、ｍ＋ｄ＋３Ｐ〜ｍ＋ｄ＋４Ｐ−１の各成分に対して
Ａｌ´（３，ｊ）＝０
Ｂｌ´（３，ｊ）＝０
Ｅ（３，ｊ）＝｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2＋Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝1/2
Ａｒ´（３，ｊ）＝Ａｒ（３，ｊ）・Ｅ（３，ｊ）／｛Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝1/2
Ｂｒ´（３，ｊ）＝Ｂｒ（３，ｊ）・Ｅ（３，ｊ）／｛Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝1/2
さらに、ｊ＝ｍ，．．．，ｍ＋Ｐ−１の各成分に対して、
Ｅ（１,ｊ）＝｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2＋Ａｒ（１,ｊ）2＋Ｂｒ（１,ｊ）2｝1/2
Ａｌ´（１,ｊ）＝Ｆ（ｊ−m）・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｌ´（１,ｊ）＝Ｆ（ｊ−m）・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ａｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m））・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m））・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
ｊ＝ｍ＋Ｐ，．．．，ｍ＋２Ｐ−１の各成分に対して、
Ｅ（１,ｊ）＝｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2＋Ａｒ（１,ｊ）2＋Ｂｒ（１,ｊ）2｝1/2
Ａｌ´（１,ｊ）＝Ｆ（ｊ−m−P）・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｌ´（１,ｊ）＝Ｆ（ｊ−m−P）・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ａｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m−P））・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m−P））・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
ｊ＝ｍ＋２Ｐ，．．．，ｍ＋３Ｐ−１に対して、
Ｅ（１,ｊ）＝｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2＋Ａｒ（１,ｊ）2＋Ｂｒ（１,ｊ）2｝1/2
Ａｌ´（１,ｊ）＝Ｆ（ｊ−m−2P）・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｌ´（１,ｊ）＝Ｆ（ｊ−m−2P）・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ａｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m−2P））・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m−2P））・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
ｊ＝ｍ＋３Ｐ，．．．，ｍ＋４Ｐ−１の各成分に対して、
Ｅ（１,ｊ）＝｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2＋Ａｒ（１,ｊ）2＋Ｂｒ（１,ｊ）2｝1/2
Ａｌ´（１,ｊ）＝Ｆ（ｊ−m−3P）・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｌ´（１,ｊ）＝Ｆ（ｊ−m−3P）・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ａｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m−3P））・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m−3P））・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
【００５８】
上記〔数式１０〕においては、ｊ＝ｍ〜ｍ＋Ｐ−１、ｍ＋Ｐ〜ｍ＋２Ｐ−１、ｍ＋２Ｐ〜ｍ＋３Ｐ−１、ｍ＋３Ｐ〜ｍ＋４Ｐ−１において、Ａｌ´（３，ｊ）、Ｂｌ´（３，ｊ）を共に０としている。これは、図３（ｃ）の上段に示すように、L-chにおいて、ＳＰ２、ＳＰ４、ＳＰ６、ＳＰ８内の各成分を０にすることを示しているが、“状態１”はＳＰ１、ＳＰ３、ＳＰ５、ＳＰ７との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、十分に小さな値であれば良い。
【００５９】
Ｅ3、Ｅ4、Ｅ7、Ｅ8がレベル下限値Ｌｅｖより大きく、埋め込むべきパターンが“パターン７０”である場合、以下の〔数式１１〕に従った処理を実行することにより、低周波成分の状態を“状態７０”、すなわち、図３（ｄ）に示したような状態に変更する。
【００６０】
〔数式１１〕
ｊ＝ｍ，．．．，ｍ＋Ｐ−１およびｊ＝ｍ＋２Ｐ，．．．，ｍ＋３Ｐ−１の各成分に対して、
Ａｌ´（１,ｊ）＝０
Ｂｌ´（１,ｊ）＝０
Ｅ（１,ｊ）＝｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）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
ｊ＝ｍ＋Ｐ，．．．，ｍ＋２Ｐ−１の各成分に対して、
Ｅ（１,ｊ）＝｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2＋Ａｒ（１,ｊ）2＋Ｂｒ（１,ｊ）2｝1/2
Ａｌ´（１,ｊ）＝Ｆ（ｊ−m−Ｐ）・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｌ´（１,ｊ）＝Ｆ（ｊ−m−Ｐ）・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ａｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m−Ｐ））・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m−Ｐ））・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
ｊ＝ｍ＋ｄ＋Ｐ，．．．，ｍ＋ｄ＋２Ｐ−１の各成分に対して、
Ｅ（３,ｊ）＝｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2＋Ａｒ（３,ｊ）2＋Ｂｒ（３,ｊ）2｝1/2
Ａｌ´（３,ｊ）＝Ｆ（ｊ−m−ｄ−Ｐ）・Ａｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ｂｌ´（３,ｊ）＝Ｆ（ｊ−m−ｄ−Ｐ）・Ｂｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ａｒ´（３,ｊ）＝（１．０−Ｆ（ｊ−m−ｄ−Ｐ））・Ａｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ｂｒ´（３,ｊ）＝（１．０−Ｆ（ｊ−m−ｄ−Ｐ））・Ｂｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
ｊ＝ｍ＋３Ｐ，．．．，ｍ＋４Ｐ−１の各成分に対して、
Ｅ（１,ｊ）＝｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2＋Ａｒ（１,ｊ）2＋Ｂｒ（１,ｊ）2｝1/2
Ａｌ´（１,ｊ）＝Ｆ（ｊ−m−３Ｐ）・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｌ´（１,ｊ）＝Ｆ（ｊ−m−３Ｐ）・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ａｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m−３Ｐ））・Ａｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
Ｂｒ´（１,ｊ）＝（１．０−Ｆ（ｊ−m−３Ｐ））・Ｂｌ（１,ｊ）・Ｅ（１,ｊ）／｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝1/2
ｊ＝ｍ＋ｄ＋３Ｐ，．．．，ｍ＋ｄ＋４Ｐ−１の各成分に対して、
Ｅ（３,ｊ）＝｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2＋Ａｒ（３,ｊ）2＋Ｂｒ（３,ｊ）2｝1/2
Ａｌ´（３,ｊ）＝Ｆ（ｊ−m−ｄ−３Ｐ）・Ａｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ｂｌ´（３,ｊ）＝Ｆ（ｊ−m−ｄ−３Ｐ）・Ｂｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ａｒ´（３,ｊ）＝（１．０−Ｆ（ｊ−m−ｄ−３Ｐ））・Ａｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ｂｒ´（３,ｊ）＝（１．０−Ｆ（ｊ−m−ｄ−３Ｐ））・Ｂｌ（３,ｊ）・Ｅ（３,ｊ）／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
【００６１】
上記〔数式１１〕においては、ｊ＝ｍ〜ｍ＋Ｐ−１、ｍ＋２Ｐ〜ｍ＋３Ｐ−１において、Ａｌ´（１，ｊ）、Ｂｌ´（１，ｊ）、Ａｌ´（３，ｊ）、Ｂｌ´（３，ｊ）を共に０としている。これは、図３（ｄ）の上段に示すように、L-chにおいて、ＳＰ１、ＳＰ２、ＳＰ５、ＳＰ６内の各成分を０にすることを示しているが、“状態７０”はＳＰ３、ＳＰ４、ＳＰ７、ＳＰ８との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、十分に小さな値であれば良い。
【００６２】
なお、パターン２〜６９を埋め込む場合も、Ｅ1〜Ｅ8のうち埋め込むべきパターンに対応する４つがレベル下限値Ｌｅｖより大きい場合、〔数式１０〕〔数式１１〕に対応する数式に従った処理を実行することにより、低周波成分の状態を“状態２”〜 “状態６９”のいずれかの状態に変更する。
【００６３】
上記〔数式１０〕〔数式１１〕または対応する数式に従った処理を実行し、低周波成分の状態を“状態１”〜“状態７０”に変更した場合、いずれの場合であっても、さらに以下の〔数式１２〕に従った処理を実行し、最低周波数帯におけるギャップ領域Ｇ１、Ｇ２を設ける。Ｍ−ｍの値が４で割り切れない場合には、最上位の第４低周波数帯の高周波側にさらにギャップ領域を設ける。また、L-chにおいて、第２窓関数に対応する成分については、ｊ＝０〜Ｍ−１の全てについて除去する。
【００６４】
〔数式１２〕
ｊ＝０〜ｍ−１、ｍ＋４Ｐ〜Ｍ−１の各成分に対して
Ａｌ´（１，ｊ）＝０
Ｂｌ´（１，ｊ）＝０
Ｅ（１，ｊ）＝｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）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
ｊ＝０〜Ｍ−１の各成分に対して
Ａｌ´（２，ｊ）＝０
Ｂｌ´（２，ｊ）＝０
Ｅ（２，ｊ）＝｛Ａｌ（２，ｊ）2＋Ｂｌ（２，ｊ）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
Ｅ（２，ｊ）＝｛Ａｌ（２，ｊ）2＋Ｂｌ（２，ｊ）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
【００６７】
上記のように、Ａタイプの音響フレームに対しては、埋め込むべきビット値に応じて、低周波成分の変更を行う必要があるため、低周波成分変更手段３０は、上記〔数式１０〕〔数式１１〕等に従った処理を実行する。ところが、Ｂタイプの音響フレームは、Ａタイプの音響フレームのみの場合に生じる両端部分の不連続性を防止するために用いられるものであるので、ビット値に応じて低周波成分の変更を行う必要はない。そこで、低周波成分変更手段３０は、Ｂタイプの音響フレームについては、以下の〔数式１４〕に従った処理を実行し、常に左信号の低周波成分を除去する。
【００６８】
〔数式１４〕
ｊ＝０〜Ｍ−１の各成分に対して
Ａｌ´（４，ｊ）＝０
Ｂｌ´（４，ｊ）＝０
Ｅ（４，ｊ）＝｛Ａｌ（４，ｊ）2＋Ｂｌ（４，ｊ）2＋Ａｒ（４，ｊ）2＋Ｂｒ（４，ｊ）2｝1/2
Ａｒ´（４，ｊ）＝Ａｒ（４，ｊ）・Ｅ（４，ｊ）／｛Ａｒ（４，ｊ）2＋Ｂｒ（４，ｊ）2｝1/2
Ｂｒ´（４，ｊ）＝Ｂｒ（４，ｊ）・Ｅ（４，ｊ）／｛Ａｒ（４，ｊ）2＋Ｂｒ（４，ｊ）2｝1/2
【００６９】
周波数逆変換手段４０は、上記のようにして、低周波成分の状態が変更されたフレームスペクトルを周波数逆変換して改変音響フレームを得る処理を行う。この周波数逆変換は、当然のことながら、周波数変換手段２０が実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。
【００７０】
具体的には、Ａタイプの音響フレームに対しては、周波数逆変換手段４０は、上記〔数式１０〕〔数式１１〕等により得られたスペクトルの左チャンネルの実部Ａｌ´（１，ｊ）等、虚部Ｂｌ´（１，ｊ）等、右チャンネルの実部Ａｒ´（１，ｊ）等、虚部Ｂｒ´（１，ｊ）等を用いて、以下の〔数式１５〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。なお、上記〔数式１０〕〔数式１１〕等において改変されていない周波数成分については、Ａｌ´（１，ｊ）等として、元の周波数成分であるＡｌ（１，ｊ）等を用いる。
【００７１】
〔数式１５〕
Ｘｌ´（ｉ）＝１／Ｎ・｛ΣjＡｌ´（１，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｌ´（１，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋１／Ｎ・｛ΣjＡｌ´（２，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｌ´（２，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋１／Ｎ・｛ΣjＡｌ´（３，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｌ´（３，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋Ｘｌｐ（ｉ＋Ｎ／２）
Ｘｒ´（ｉ）＝１／Ｎ・｛ΣjＡｒ´（１，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｒ´（１，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋１／Ｎ・｛ΣjＡｒ´（２，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｒ´（２，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋１／Ｎ・｛ΣjＡｒ´（３，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｒ´（３，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋Ｘｒｐ（ｉ＋Ｎ／２）
【００７２】
上記〔数式１５〕においては、式が繁雑になるのを防ぐため、Σj=0,…,N-1をΣjとして示している。上記〔数式１５〕における第１式の“＋Ｘｌｐ（ｉ＋Ｎ／２）”、第２式の“＋Ｘｒｐ（ｉ＋Ｎ／２）”の項は、直前に改変された改変音響フレームのデータＸｌｐ（ｉ）、Ｘｒｐ（ｉ）が存在する場合に、時間軸上Ｎ／２サンプル分重複することを考慮して加算するためのものである。上記〔数式１５〕によりＡタイプの改変音響フレームの左チャンネルの各サンプルＸｌ´（ｉ）、右チャンネルの各サンプルＸｒ´（ｉ）、が得られることになる。
【００７３】
Ｂタイプの音響フレームに対しては、周波数逆変換手段４０は、上記〔数式１４〕により得られたスペクトルの左チャンネルの実部Ａｌ´（４，ｊ）、虚部Ｂｌ´（４，ｊ）、右チャンネルの実部Ａｒ´（４，ｊ）、虚部Ｂｒ´（４，ｊ）を用いて、以下の〔数式１６〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。なお、上記〔数式１４〕において改変されていない周波数成分については、以下の〔数式１６〕においてはＡｌ´（４，ｊ）、Ｂｌ´（４，ｊ）、Ａｒ´（４，ｊ）、Ｂｒ´（４，ｊ）として、元の値であるＡｌ（４，ｊ）、Ｂｌ（４，ｊ）、Ａｒ（４，ｊ）、Ｂｒ（４，ｊ）を用いる。
【００７４】
〔数式１６〕
Ｘｌ´（ｉ）＝１／Ｎ・｛ΣjＡｌ´（４，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｌ´（４，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋Ｘｌｐ（ｉ＋Ｎ／２）
Ｘｒ´（ｉ）＝１／Ｎ・｛ΣjＡｒ´（４，ｊ）・ｃｏｓ（２πｉｊ／Ｎ）−ΣjＢｒ´（４，ｊ）・ｓｉｎ（２πｉｊ／Ｎ）｝＋Ｘｒｐ（ｉ＋Ｎ／２）
【００７５】
上記〔数式１６〕によりＢタイプの改変音響フレームの左チャンネルの各サンプルＸｌ´（ｉ）、右チャンネルの各サンプルＸｒ´（ｉ）、が得られることになる。
【００７６】
改変音響フレーム出力手段５０は、周波数逆変換手段４０の処理により得られたＡタイプの改変音響フレーム、Ｂタイプの改変音響フレームを順次出力ファイルに出力する。
【００７７】
次に、図１に示した音響信号に対する情報の埋め込み装置の処理の全体的な流れを、図８のフローチャートに従って説明する。図１に示した装置を構成する各構成要素は、連携して図８に従った処理を実行する。図８は、付加情報１ワード分の処理に対応したものとなっている。１ワードとしては、任意のビット数に設定することができるが、上述のように、本実施形態では実質７ビットの先頭にビット値“０”を付加した１バイト（８ビット）としている。また、情報の埋め込みは、Ａタイプの音響フレームに対して行われるので、図８は、Ａタイプの音響フレームについての説明となっている。Ｂタイプの音響フレームについては、Ａタイプの音響フレームと並行して、音響フレーム読込手段１０により読み込まれ、窓関数Ｗ（４，ｉ）を利用して周波数変換手段２０により周波数変換された後、低周波成分変更手段３０により低周波成分が除去され、周波数逆変換手段４０により周波数逆変換された後、改変音響フレーム出力手段５０により出力される。
【００７８】
図８においては、まず、付加情報読込手段７０は、付加情報記憶部６２から抽出した付加情報を、７０パターンのビット配列に変換する（Ｓ１０２）。具体的には、上述のように、図４に従って、付加情報として読み込んだＡＳＣＩＩコードを、パターン１〜パターン７０のいずれかのビット配列に変換する。各パターンのビット配列は、図５に示したようになっている。
【００７９】
続いて、音響フレーム読込手段１０が、音響信号記憶部６１に記憶されたステレオ音響信号の左右の各チャンネルから、それぞれ所定数のサンプルを１音響フレームとして読み込む（Ｓ１０４）。
【００８０】
続いて、周波数変換手段２０および低周波成分変更手段３０が、音響フレームの低周波成分の状態を“状態１”〜“状態７０”のいずれかに変更する処理を行う（Ｓ１０５）。具体的には、読み込んだ音響フレームに対して周波数変換を行って、その音響フレームのスペクトルを得る。すなわち、各音響フレームについて、３つの窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）を用いて、上記〔数式５〕に従った処理を行うことになる。
【００８１】
続いて、低周波成分変更手段３０は、上記〔数式７〕によりＥ1〜Ｅ8を算出する。そして、付加情報読込手段７０から受け取ったパターン１〜パターン７０に応じて上記〔数式１０〕〔数式１１〕等に従った処理を実行し、低周波成分の状態を“状態１”〜“状態７０”のいずれかに変更する。
【００８２】
Ｓ１０５において、“状態１”〜“状態７０”のいずれにも変更することができない場合は、低周波成分を“状態０”とする処理を行う（Ｓ１０６）。具体的には、上記〔数式１３〕に従った処理を実行することになる。“状態１”〜“状態７０” のいずれにも変更することができない場合とは、埋め込むべきパターンに対応する強度値Ｅのいずれかが、レベル下限値Ｌｅｖ以下となっている場合である。例えば、パターン１を埋め込む場合、Ｅ1、Ｅ3、Ｅ5、Ｅ7が共にレベル下限値Ｌｅｖより大きい必要があるため、Ｅ1、Ｅ3、Ｅ5、Ｅ7のいずれかがＬｅｖ以下である場合は、Ｓ１０６に進むことになる。
【００８３】
上記〔数式１３〕に従った処理を実行することにより、左チャンネルのフレームスペクトルの低周波数成分は、後部のスペクトルＳＰ１〜ＳＰ８全てにおいて、“０” で同一となる。なお、上記〔数式１３〕においては、ｊ＝０〜Ｍ−１の各成分に対してＡｌ´（ｊ）＝Ｂｌ´（ｊ）＝０としているが、抽出側において、“状態１”〜“状態７０”のいずれでもないことを認識可能とすることを目的としているため、十分小さな値であれば、必ずしも０とする必要はない。また、必ずしも８つのスペクトル成分の値が同一である必要はなく、差が小さければ良い。
【００８４】
次に、周波数逆変換手段４０が、上記Ｓ１０５、Ｓ１０６の処理により各低周波成分のスペクトル集合の強度が変更された音響フレームのスペクトルを周波数逆変換して改変音響フレームを得る処理を行う（Ｓ１０７）。この周波数逆変換は、当然のことながら、周波数変換手段２０がＳ１０５において実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ逆変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。具体的には、上記〔数式１０〕〜〔数式１３〕等により得られたスペクトルの左チャンネルの実部Ａｌ´（１，ｊ）等、虚部Ｂｌ´（１，ｊ）等、右チャンネルの実部Ａｒ´（１，ｊ）等、虚部Ｂｒ´（１，ｊ）等を用いて、上記〔数式１５〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。
【００８５】
改変音響フレーム出力手段５０は、得られた改変音響フレームを順次出力ファイルに出力する。こうして１つの音響フレームに対する処理を終えたら、状態０に設定した場合には、音響フレーム読込手段１０が、次の音響フレームを読み込む（Ｓ１０４）。一方、状態１〜状態７０のいずれかに設定した場合には、付加情報読込手段７０が次のワードを読み込む（Ｓ１０１）。以上のような処理を音響信号の両チャンネルの全サンプルに渡って実行していく。すなわち、所定数のサンプルを音響フレームとして読み込み、音響信号から読み込むべき音響フレームがなくなったら（Ｓ１０４）、処理を終了する。付加情報の全ワードに対して処理が終了した場合は、付加情報の先頭ワードに戻って処理を行う。この結果、全ての音響フレームに対して処理を行った全ての改変音響フレームが出力ファイルに記録されて、改変音響信号として得られる。得られた改変音響信号は、記憶手段６０内の改変音響信号記憶部６３に出力され、記憶される。
【００８６】
上記のようにして得られた改変音響信号の左チャンネルのうち、付加情報が埋め込まれている部分については、低周波成分は、上記状態０〜状態７０の７１通りの分布になる。しかし、高周波成分については、元の音響信号のままであるので、制作者の設定に基づいたさらに多数の種々な分布になる。また、上記の例で示したように、ステレオ音響信号を利用した場合には、左チャンネルにおいて変化させられた低周波成分は、上記〔数式１０〕〜〔数式１３〕等の処理からも明らかなように、必ず右チャンネルの低周波成分に付加されている。したがって、右チャンネルが左チャンネルにおいて削除された成分を補っているため、両チャンネル全体として見ると、信号の劣化がない。人間の聴覚は、高周波成分については、方向性を感知し易いが、低周波成分については、方向性を感知しにくくなっている。したがって、低周波成分が一方に偏っていても、聴いている人にとっては、通常の音響信号と変わりなく聴こえることになる。
【００８７】
（１．３．音響信号からの情報の抽出装置）
次に、本発明に係る音響信号からの情報の抽出装置について説明する。図９は、本発明に係る音響信号からの情報の抽出装置の一実施形態を示す構成図である。図９において、１００は音響信号入力手段、１１０は基準フレーム獲得手段、１２０は位相変更フレーム設定手段、１３０は周波数変換手段、１４０は符号判定パラメータ算出手段、１５０は符号出力手段、１６０は付加情報抽出手段、１７０は音響フレーム保持手段である。
【００８８】
音響信号入力手段１００は、流れている音声をデジタル音響信号として取得し、入力する機能を有している。現実には、マイクロフォンおよびＡ／Ｄ変換器により実現される。マイクロフォンとしては、低周波成分が検出可能なものであれば、モノラル無指向性のものであっても、ステレオ指向性のものであっても使用可能である。ステレオ指向性のものであっても一方のチャンネルだけ利用すれば良い。また、図１に示した装置で情報の埋め込みを行った場合には、特別精度の高いものでなく、一般的な精度のマイクロフォンを用いても情報の抽出が可能となる。基準フレーム獲得手段１１０は、入力されたデジタルのモノラル音響信号（あるいはステレオ音響信号の１チャンネル）から所定数のサンプルで構成される音響フレームを基準フレームとして読み込む機能を有している。位相変更フレーム設定手段１２０は、基準フレームと所定サンプルずつ移動させることにより位相を変更した音響フレームを位相変更フレームとして設定する機能を有している。周波数変換手段１３０は、図１に示した周波数変換手段２０と同様の機能を有している。
【００８９】
符号判定パラメータ算出手段１４０は、生成されたスペクトルの低周波領域から所定の周波数帯に対応する各スペクトル集合を抽出し、各スペクトル集合の強度値ＥC1〜ＥC8を以下の〔数式１７〕に基づいて算出し、このの強度値ＥC1〜ＥC8を符号判定パラメータとし、この符号判定パラメータＥC1〜ＥC8の比率等に基づいて、所定の状態であると判断する機能を有している。以下の〔数式１７〕は上記〔数式７〕において右チャンネル成分を削除したもので、抽出時には右チャンネル成分を参照しないためである。
【００９０】
〔数式１７〕
ＥC1＝Σj=m,m+P-1｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝・Ｆ（ｊ−m）・Ｃ
ＥC2＝Σj=m+d,m+d+P-1｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝・Ｆ（ｊ−m−ｄ）・Ｃ
ＥC3＝Σj=m+P,m+2P-1｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝・Ｆ（ｊ−m−P）・Ｃ
ＥC4＝Σj=m+d+P,m+d+2P-1｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝・Ｆ（ｊ−m−ｄ−P）・Ｃ
ＥC5＝Σj=m+2P,m+3P-1｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝・Ｆ（ｊ−m−2P）・Ｃ
ＥC6＝Σj=m+d+2P,m+d+3P-1｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝・Ｆ（ｊ−m−ｄ−2P）・Ｃ
ＥC7＝Σj=m+3P,m+4P-1｛Ａｌ（１,ｊ）2＋Ｂｌ（１,ｊ）2｝・Ｆ（ｊ−m−3P）・Ｃ
ＥC8＝Σj=m+d+3P,m+d+4P-1｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝・Ｆ（ｊ−m−ｄ−3P）・Ｃ
【００９１】
符号出力手段１５０は、１つの基準フレームに対応する音響フレーム（基準フレームおよび位相変更フレーム）の中から最適な位相であると判断されるものを判断し、その音響フレームの状態に対応する符号を出力する機能を有している。付加情報抽出手段１６０は、符号出力手段１５０により出力された７０通りのビットパターンを、ＡＳＣＩＩコードに変換して意味のある付加情報として抽出する機能を有している。音響フレーム保持手段１７０は、連続する２個の基準フレームを保持可能なバッファメモリである。図９に示した各構成手段は、現実には情報処理機能を有する小型のコンピュータおよびその周辺機器等のハードウェアに専用のプログラムを搭載することにより実現される。特に、本発明の目的をより簡易に達成するためには、携帯型端末装置をハードウェアとして用いることが望ましい。
【００９２】
（１．４．抽出装置の処理動作）
次に、図９に示した音響信号からの情報の抽出装置の処理動作について図１０のフローチャートに従って説明する。まず、本装置では、平均符号レベルＨＬ１、ＨＬ２、…、ＨＬ７０、位相判定テーブルＳ（ｐ）、非符号カウンタＮｎを初期化する（Ｓ２００）。これらについて説明する。平均符号レベルＨＬ１〜ＨＬ７０は、パターンが埋め込まれていたと判断される音響フレーム（以下、有効フレームと呼ぶことにする）についての、上記〔数式１７〕で算出されるスペクトル集合の強度値ＥC1〜ＥC8のうち対応する４つの和の平均値で与えられるものであり、初期値は、０．１に設定されている。位相判定テーブルＳ（ｐ）は、位相を判定するためのテーブルであり、ｐは０〜５の整数値をとる。初期値はＳ（ｐ）＝０に設定されている。非符号カウンタＮｎは、信号レベルが低く、非符号（区切り又は埋め込みエラーを示す情報と同一）であると判断されるフレーム数のカウンタであり、初期状態では、Ｎｎ＝０に設定される。
【００９３】
このように、初期値が設定されている状態で、利用者が流れている音楽について、その楽曲名等の属性情報を知りたいと思った場合、まず、抽出装置に対して、抽出装置としての起動の指示を行う。これは、例えば、抽出装置を携帯電話機等の携帯端末で実現している場合は、所定のボタンを操作することにより実行できる。抽出装置は、指示が入力されると、音響信号入力手段１００が、流れている音楽を録音し、デジタル化してデジタル音響信号として入力する。具体的には、無指向性マイクロフォン（または指向性マイクロフォンの一方のチャンネル）から入力される音声を、Ａ／Ｄ変換器によりデジタル化する処理を行うことになる。
【００９４】
続いて、基準フレーム獲得手段１１０が、音響信号入力手段１００から入力された音響信号から、所定数のサンプルで構成される音響フレームを基準フレームとして抽出する（Ｓ２０１）。具体的には、基準フレームを抽出して音響フレーム保持手段１７０に読み込むことになる。基準フレーム獲得手段１１０が基準フレームとして読み込む１音響フレームのサンプル数は、図１に示した音響フレーム読込手段１０で設定されたものと同一にする必要がある。したがって、本実施形態の場合、基準フレーム獲得手段１１０は、４０９６サンプルずつ、順次基準フレームとして読み込んでいくことになる。音響フレーム保持手段１７０には、上述のように２個の基準フレームが格納可能となっており、新しい基準フレームが読み込まれると、古い基準フレームを破棄するようになっている。したがって、音響フレーム保持手段１７０には、常に基準フレーム２個分（連続する８１９２サンプル）が格納されていることになる。
【００９５】
埋め込み装置で処理する音響フレームは、先頭から途切れることなく隣接して設定される基準フレームと、この基準フレームと位相を変更した位相変更フレームとに分けることができる。基準フレームについては、最初の基準フレームをサンプル番号１からサンプル番号４０９６までを設定したら、次の基準フレームは、サンプル番号４０９７からサンプル番号８１９２、さらに次の基準フレームは、サンプル番号８１９３からサンプル番号１２２８８、というように途切れることなく設定される。そして、各基準フレームについて、１／６フレーム（約６８３サンプル）ずつ移動した５個の位相変更フレームを設定する。例えば、最初の基準フレームについては、サンプル番号６８３、１３６６、２０４９、２７３２、３４１３から始まる４０９６のサンプルで構成される５個の位相変更フレームが設定されることになる。続いて、周波数変換手段１３０、符号判定パラメータ算出手段１４０が、読み込んだ各音響フレームから、埋め込まれている情報を判定し、対応する符号（パターン）を出力する（Ｓ２０２）。出力される符号の形式は、埋め込み側のパターンに対応するパターン１〜パターン７０の７０通り、および状態０に相当する何らかのパターン（パターン０）の計７１通りの形式となる。
【００９６】
ここで、ステップＳ２０２の符号判定処理の詳細を図１１のフローチャートに従って説明する。まず、周波数変換手段１３０が、読み込んだ各音響フレームに対して、周波数変換を行ってフレームスペクトルを得る（Ｓ３０１）。この処理は、図１に示した周波数変換手段２０における処理と同様である。ただし、抽出に用いるのは、左チャンネルだけであるので、上記〔数式５〕に従った処理を行い、左チャンネルに対応する変換データの実部Ａｌ（１，ｊ）等、虚部Ｂｌ（１，ｊ）等を得る。
【００９７】
上記周波数変換手段１３０における処理により、周波数に対応した成分であるスペクトルが得られる。続いて、符号判定パラメータ算出手段１４０は、平均符号レベルＨＬ１〜ＨＬ７０の算出を行う（Ｓ３０２）。具体的には、過去“状態１”であると判断された音響フレームについてのＥC1＋ＥC3＋ＥC5＋ＥC7の積算値であるｖ１を、過去“状態１”であると判断された音響フレームの数であるｎ１で除算することによりＨＬ１を算出する。また、過去“状態７０”であると判断された音響フレームについてのＥC3＋ＥC4＋ＥC7＋ＥC8の積算値であるｖ７０を、過去“状態７０”であると判断された音響フレームの数であるｎ７０で除算することによりＨＬ７０を算出する。同様にしてＨＬ２〜ＨＬ６９についても算出する。したがって、平均符号レベルＨＬ１〜ＨＬ７０は、過去対応する状態であると判断された音響フレームの低周波強度の平均値となる。
【００９８】
続いて、符号判定パラメータ算出手段１４０は、候補符号テーブルの初期化を行う（Ｓ３０３）。候補符号テーブルは、１つの基準フレームおよび５個の位相変更フレームを特定する０〜５の位相番号および、この６個の音響フレームの状態から得られる７１値の符号を記録するものである。
【００９９】
続いて、符号判定パラメータ算出手段１４０は、強度値ＥC1〜強度値ＥC8を用いて、低周波成分の状態がどのような状態であるか、すなわち、パターンとしてどのような値が埋め込まれていたかを判断する処理を行う（Ｓ３０４）。具体的には、まず、ＥC1〜ＥC8を算出し、その値の小さいグループと大きいグループに分ける。そして、大きいグループに属する４つのＥCが全て基準値０．０１ＨＬｋ（ｋ＝１〜７０）以上であるかどうかを判断する。４つのＥCが全て基準値以上である場合は、その４つのＥCに対応する低周波成分の強度が大きいものであると判断して、“状態１”〜“状態７０”のいずれであるかを認識する。
【０１００】
符号判定パラメータ算出手段１４０は、各音響フレーム単位で、上記判定結果に応じてパターン１〜パターン７０のいずれかを出力する（Ｓ３０７）。上記Ｓ３０４において、大きいグループに属する４つのＥCのうちいずれか１つでも基準値未満である場合は、“状態０”であると判断し、パターン０を出力する（Ｓ３０８）。この“状態０”は、強度値Ｅ1〜Ｅ8が下限値Ｌｅｖ以下であることにより、当該フレームにパターン１〜パターン７０のいずれかの記録が行なわれなかったことを示す埋め込みエラーを示すものとなる。
【０１０１】
また、上記判定の結果、パターン１〜パターン７０のいずれかを出力した場合には、さらに、位相判定テーブルＳ（ｐ）の更新を行う（Ｓ３０９）。具体的には、上記Ｓ３０４において、大きいグループに属すると判断された４つのＥCの平均値をＳ（ｐ）に加算することにより更新する。
【０１０２】
続いて、符号判定パラメータ算出手段１４０は、候補符号テーブルに、最適位相となる候補を保存する（Ｓ３１０）。具体的には、位相判定テーブルに記録されているＳ（ｐ）の値が最大となる位相番号ｐの値、前記Ｓ３０７、Ｓ３０８により判定された７１通りのいずれかの符号、その音響フレームについての上記〔数式１７〕に従った処理を実行することにより算出した、低スペクトル集合に対応する各ＥC1〜ＥC8の値を最適位相の候補として候補符号テーブルに保存する。
【０１０３】
続いて、全ての位相番号ｐに対応する処理を終えたかどうかを判定する（Ｓ３１１）。これは、ある基準フレームに対して全ての位相変更フレームの処理を行ったかどうかを判定している。本実施形態では、ｐが０〜５までの値をとるので、６回分処理していない場合は、処理していた音響フレームから所定サンプル数ずらして、位相の異なる音響フレームを設定し、Ｓ３０４に戻って処理を繰り返す。なお、ｐ＝０の場合が基準フレームであり、ｐ＝１〜５の場合が位相変更フレームである。全ての位相番号ｐに対応する処理を終えた場合は、候補保存テーブルに記録されている位相番号ｐに対応する位相が最適位相であると判定し、候補保存テーブルに記録されている符号を出力する（Ｓ３１２）。
【０１０４】
再び図１０のフローチャートに戻って説明する。Ｓ２０２による処理の結果、パターン１〜パターン７０に相当する符号が出力された場合には、平均符号レベルのパラメータの更新処理を行う（Ｓ２０３）。具体的には、平均符号レベルＨＬ１〜ＨＬ７０算出の際の分子となる積算値ｖ１〜ｖ７０にそれぞれ強度値ＥC1〜ＥC8のうちの対応する４つの値を加算して積算値ｖ１〜ｖ７０を更新し、分母となるフレーム数ｎ１〜ｎ７０にそれぞれ１を加算してフレーム数ｎ１〜ｎ７０を更新することにより行う。ｎ１〜ｎ７０はあらかじめ設定したｎmax（例えば１００）を超えないように設定する。
【０１０５】
続いて、非符号カウンタの初期化処理を行う（Ｓ２０４）。具体的には、上記Ｓ２００の初期化処理における処理と同様、非符号カウンタＮｎ＝０と設定する。続いて、出力されたパターンを文字コードに従ったビットパターンに変換する（Ｓ２０５）。本実施形態では、図４に示した対応表に従ってＡＳＣＩＩコードに対応するビットパターンに変換することになる。そして、得られたビットパターンを付加情報抽出手段１６０が出力する（Ｓ２０６）。
【０１０６】
一方、Ｓ２０２による処理の結果、パターン０が出力された場合には、非符号カウンタのカウントアップ処理を行う（Ｓ２０７）。具体的には、非符号カウンタＮｎの値に１を加算する。そして、非符号カウンタＮｎの値がｎmax以上である場合は、Ｓ２００に戻って初期化処理を行う。非符号カウンタＮｎの値がｎmax未満である場合は、Ｓ２０１に戻って符号抽出処理を継続する。図１０に示す処理を各基準フレームに対して実行することにより、付加情報が抽出されることになる。Ｓ２０１において全ての基準フレームが抽出されたと判断された場合には、処理を終了する。
【０１０７】
上記Ｓ２０６の処理において、付加情報抽出手段１６０は、まず、符号判定パラメータ算出手段１４０により出力されたビットパターン単位で文字情報として認識する。すなわち、付加情報抽出手段１６０は、符号判定パラメータ算出手段１４０が判定し、符号出力手段１５０から出力される符号を文字コードに変換し、これを設定されたコード体系に従って文字情報を認識する。このようにして得られた文字情報は、表示装置（図示省略）の画面に表示出力される。
【０１０８】
従って、埋め込み装置により音響信号に、その楽曲の曲名やアーチスト等の属性情報を文字情報として埋め込んでおけば、利用者は、その音楽が流れているのを聞いて、その曲名やアーチストを知りたいと思ったときに、抽出装置として機能する自身の携帯端末に所定の操作を行えば、自身の携帯端末の画面に曲名やアーチスト等の属性情報が文字情報として表示されることになる。
【０１０９】
（１．５．位相補正処理について）
上記のように、抽出時には、埋め込み時に埋め込んだ音響フレームに対応して、音響信号を読み込むことができるとは限らない。そこで、音響フレームの位相をずらして複数通り（本実施形態では６通り）で読み込み、その中で最適な位相を決定し、その位相で特定される音響フレームに対応する符号を出力することにしている。例えば、６通りで読み込む場合、先頭の音響フレームは、本来サンプル番号１〜４０９６のサンプルであるが、サンプル番号１、６８３、１３６６、２０４９、２７３２、３４１３から始まる４０９６のサンプルで構成される６個の各音響フレームに対して処理を行い、最適な音響フレームに対応する符号を出力することになる。この位相補正処理は、Ｓ３０３、Ｓ３０９、Ｓ３１０、Ｓ３１１、Ｓ３１２における処理を中心として行われることになる。
【０１１０】
（１．６．下限閾値補正処理について）
信号レベルが小さい場合には、スペクトル集合の成分強度の大小が判定できず、抽出側で誤判断することが多くなる。そこで、強度値ＥC1〜ＥC8が所定の閾値以下のフレームについては、無効なフレームであると判断するようにしているが、この際の閾値を過去の有効フレームについての低周波強度の積算値を利用して補正する処理を行っている。このように閾値を変動させることにより、信号レベルが変動しても無効なフレームであるか、有効なフレームであるかを正確に判断することが可能となる。この下限閾値補正処理は、Ｓ３０２、Ｓ２０３における処理を中心として行われることになる。
【０１１１】
（１．７．モノラル音響信号の場合）
上記実施形態においては、埋め込み装置、抽出装置のいずれにおいても、左右のチャンネルを有するステレオ音響信号の左チャンネル信号に付加情報を埋め込む場合を例にとって説明したが、逆に右チャンネル信号に付加情報を埋め込むようにしても良い。本発明は、左右の特性には無関係だからである。また、１つのチャンネルしかないモノラル音響信号に対して処理を行う場合は、上記実施形態において、左チャンネル信号に対して行った処理を行うことになる。本発明は、１つのチャンネル信号に対して付加情報を埋め込み、また抽出を行うので、モノラル音響信号であってもステレオ音響信号であっても同様に行うことができる。
【０１１２】
（１．８．信号成分が小さくても情報の埋め込みを可能とする手法）
ここまで、説明してきた処理においては、上記Ｅ1〜Ｅ8が所定の大きさより大きいことが必要となり、上記Ｅ1〜Ｅ8が所定の大きさ以下の場合には、情報の埋め込みを行うことができない。そこで、以下、上記Ｅ1〜Ｅ8が所定の大きさ以下であっても、信号の埋め込みを可能とする手法について説明する。
【０１１３】
この場合、図１に示した埋め込み装置における情報の埋め込み処理は、図８のフローチャートに従って行われるが、強度値Ｅ1〜Ｅ8がレベル下限値Ｌｅｖ以下となることがなくなるため、Ｓ１０５における周波数変換処理において低周波成分変更手段３０がレベルの判定を行わない。これは、この処理では、信号レベルが小さくても強制的に情報を埋め込むこととしているため、情報の埋め込みが不可能な信号レベルが小さい部分が存在するかどうかを判断する必要がないからである。
【０１１４】
したがって、Ｓ１０５における状態１〜状態７０に設定する処理としては、まず、以下の〔数式１８〕に従って算出される固定値Ｖを、低周波成分の強度として設定する。
【０１１５】
〔数式１８〕
Ｖ＝｛０．２５・Ｌｅｖ／（４Ｐ−４）｝1/2
【０１１６】
そして、状態１とする場合は、上記〔数式１０〕に従った処理における  Ａｌ´（1,ｊ）、Ｂｌ´（1,ｊ）の算出を、以下の〔数式１９〕に従った処理により行う。
【０１１７】
〔数式１９〕
ｊ＝ｍ，．．．，ｍ＋Ｐ−１の各成分に対して、
Ａｌ´（1,ｊ）＝Ｆ（ｊ−m）・Ａｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
Ｂｌ´（1,ｊ）＝Ｆ（ｊ−m）・Ｂｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
ｊ＝ｍ＋Ｐ，．．．，ｍ＋２Ｐ−１の各成分に対して、
Ａｌ´（1,ｊ）＝Ｆ（ｊ−m−P）・Ａｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
Ｂｌ´（1,ｊ）＝Ｆ（ｊ−m−P）・Ｂｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
ｊ＝ｍ＋２Ｐ，．．．，ｍ＋３Ｐ−１の各成分に対して、
Ａｌ´（1,ｊ）＝Ｆ（ｊ−m−2P）・Ａｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
Ｂｌ´（1,ｊ）＝Ｆ（ｊ−m−2P）・Ｂｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
ｊ＝ｍ＋３Ｐ，．．．，ｍ＋４Ｐ−１の各成分に対して、
Ａｌ´（1,ｊ）＝Ｆ（ｊ−m−3P）・Ａｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
Ｂｌ´（1,ｊ）＝Ｆ（ｊ−m−3P）・Ｂｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
【０１１８】
状態７０とする場合は、上記〔数式１１〕に従った処理におけるｊ＝ｍ＋Ｐ〜ｍ＋２Ｐ−１、ｊ＝ｍ＋３Ｐ〜ｍ＋４Ｐ−１におけるＡｌ´（1,ｊ）、Ｂｌ´（1,ｊ）、Ａｌ´（3,ｊ）、Ｂｌ´（3,ｊ）の算出を、以下の〔数式２０〕に従った処理により行う。
【０１１９】
〔数式２０〕
ｊ＝ｍ＋Ｐ，．．．，ｍ＋２Ｐ−１の各成分に対して、
Ａｌ´（1,ｊ）＝Ｆ（ｊ−m−P）・Ａｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
Ｂｌ´（1,ｊ）＝Ｆ（ｊ−m−P）・Ｂｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
ｊ＝ｍ＋ｄ＋Ｐ，．．．，ｍ＋ｄ＋２Ｐ−１の各成分に対して、
Ａｌ´（３,ｊ）＝Ｆ（ｊ−m−ｄ−P）・Ａｌ（３，ｊ）・Ｖ／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ｂｌ´（３,ｊ）＝Ｆ（ｊ−m−ｄ−P）・Ｂｌ（３，ｊ）・Ｖ／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
ｊ＝ｍ＋３Ｐ，．．．，ｍ＋４Ｐ−１の各成分に対して、
Ａｌ´（1,ｊ）＝Ｆ（ｊ−m−3P）・Ａｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
Ｂｌ´（1,ｊ）＝Ｆ（ｊ−m−3P）・Ｂｌ（１，ｊ）・Ｖ／｛Ａｌ（1,ｊ）2＋Ｂｌ（1,ｊ）2｝1/2
ｊ＝ｍ＋ｄ＋３Ｐ，．．．，ｍ＋ｄ＋４Ｐ−１の各成分に対して、
Ａｌ´（３,ｊ）＝Ｆ（ｊ−m−ｄ−3P）・Ａｌ（３，ｊ）・Ｖ／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
Ｂｌ´（３,ｊ）＝Ｆ（ｊ−m−ｄ−3P）・Ｂｌ（３，ｊ）・Ｖ／｛Ａｌ（３,ｊ）2＋Ｂｌ（３,ｊ）2｝1/2
【０１２０】
なお、パターン２〜６９を埋め込む場合も、〔数式１０〕〔数式１１〕等に対応する数式に従った処理を実行した後、〔数式１９〕〔数式２０〕等に対応する数式に従った処理を実行することにより、低周波成分の状態を“状態２”〜 “状態６９”のいずれかの状態に変更する。
【０１２１】
上記のように、周波数成分が小さい場合に情報を埋め込んだ場合であっても、抽出側の、音響信号からの情報の抽出装置の構成は図９と同一であり、処理動作は図１０のフローチャートに従ったものと同一である。
【０１２２】
（２．第２の実施形態）
ここからは、第２の実施形態について説明する。第１の実施形態では、図３に示したように、音響フレームの低周波成分を７０個の状態に変更し、６ビット強の情報を埋め込むようにしたが、第２の実施形態では、図１２に示すように、音響フレームの低周波成分を４つの状態に変更し、２ビットの情報を埋め込むことを特徴とする。
【０１２３】
図１２に、本発明第２の実施形態による低周波成分の状態を１音響フレーム単位で示す。図１２に示す各音響フレームにおいても、横軸は時間方向、縦軸は周波数方向を示している。
【０１２４】
本発明第２の実施形態においても、図１２（ａ）に示すような原状態の低周波成分に対して、パターン０を埋め込む場合、Ｌ-chの信号の低周波成分を全て除去し、除去した成分と同等の成分をＲ-chの信号の低周波成分に加算して図２（ｂ）に示すような“状態０”に変更するのは、第１の実施形態と同じである。なお、図１２においては、図１と異なり、第１窓関数により得られる前部において縦軸の周波数方向が４つに区分されており、第３窓関数により得られる後部において縦軸の周波数方向が３つに区分されている。前部、後部のいずれにおいても、最下部に示すＧ１、Ｇ２はギャップ領域である。さらに、前部においては、最上部にギャップ領域Ｇ１０が設けられている。これらのギャップ領域は、抽出対象であるＬ-chの信号においては、常に成分が除去され、除去された成分と同等の成分がＲ-chの信号の低周波成分に加算される。最下部にギャップ領域を設けることにより、埋め込み可能な低周波成分の上限を高くすることができる。
【０１２５】
前部、後部において区分された低周波領域のうちギャップ領域以外の２つを、低い方から順に、第１低周波数帯、第２低周波数帯と定義する。図１２（ｂ）に示すように、前部の第１低周波数帯におけるスペクトル集合をＳＰ１、前部の第２低周波数帯におけるスペクトル集合をＳＰ３とし、後部の第１低周波数帯におけるスペクトル集合をＳＰ２、後部の第２低周波数帯におけるスペクトル集合をＳＰ４で表現することとする。
【０１２６】
図１２において、ギャップ領域Ｇ１、Ｇ２の下限は直流成分すなわち周波数０に設定されており、スペクトル集合ＳＰ１の下限は周波数Ｆ１、スペクトル集合ＳＰ８の上限は周波数Ｆ２に設定されている。また、後部のスペクトル集合ＳＰ２、ＳＰ４は、前部のスペクトル集合ＳＰ１、ＳＰ３の周波数範囲にそれぞれ周波数Ｆｄだけオフセットした周波数範囲となっている。例えば、スペクトル集合ＳＰ１の下限が周波数Ｆ１である場合、スペクトル集合ＳＰ２の下限は周波数（Ｆ１＋Ｆｄ）である。また、スペクトル集合ＳＰ８の上限が周波数Ｆ２である場合、スペクトル集合ＳＰ７の上限が周波数（Ｆ２−Ｆｄ）である。
【０１２７】
本実施形態で、パターン１を埋め込む場合、図１２（ｃ）に示すように、Ｌ-ch信号のスペクトル集合ＳＰ１、ＳＰ３の強度を強め、スペクトル集合ＳＰ２、ＳＰ４の強度を弱める。そして、Ｒ-ch信号の対応する成分については、Ｌ-ch信号を補足するように変更して“状態１”とする。パターン２を埋め込む場合は、図１２（ｄ）に示すように、Ｌ-ch信号のスペクトル集合ＳＰ２、ＳＰ４の強度を強め、スペクトル集合ＳＰ１、ＳＰ３の強度を弱める。そして、Ｒ-ch信号の対応する成分については、Ｌ-ch信号を補足するように変更して“状態２”とする。
【０１２８】
パターン３を埋め込む場合、図１２（ｅ）に示すように、Ｌ-ch信号のスペクトル集合ＳＰ１、ＳＰ４の強度を強め、スペクトル集合ＳＰ２、ＳＰ３の強度を弱める。そして、Ｒ-ch信号の対応する成分については、Ｌ-ch信号を補足するように変更して“状態３”とする。パターン４を埋め込む場合は、図１２（ｆ）に示すように、Ｌ-ch信号のスペクトル集合ＳＰ２、ＳＰ３の強度を強め、スペクトル集合ＳＰ１、ＳＰ４の強度を弱める。そして、Ｒ-ch信号の対応する成分については、Ｌ-ch信号を補足するように変更して“状態４”とする。
【０１２９】
第２の実施形態では、図１２（ｂ）〜（ｆ）に示すような５つの状態に低周波成分を変更することにより、情報の埋め込みを行っている。５つの状態のうち、１つは、埋め込むべき付加情報を構成するワード間の区切りやエラー処理等に用いるものであるので、実質埋め込むことができるのは４つの状態、すなわち、２ビットに相当する。したがって、本実施形態では、１音響フレームに対して２ビットの情報が埋め込み可能となる。
【０１３０】
（２．１．埋め込み装置）
第２の実施形態においても、埋め込み装置の装置構成は、図１に示したようなものとなるが、処理動作は第１の実施形態とは異なる。そこで、第２の実施形態における埋め込み装置の処理の流れを図１３のフローチャートに従って説明する。図１に示した装置を構成する各構成要素は、連携して図１３に従った処理を実行することになる。図１３は、付加情報１ワード分の処理に対応したものとなっている。１ワードとしては、任意のビット数に設定することができるが、通常１バイト（８ビット）に設定する。
【０１３１】
また、情報の埋め込みは、Ａタイプの音響フレームに対して行われるので、図１３も、Ａタイプの音響フレームについての説明となっている。Ｂタイプの音響フレームについては、Ａタイプの音響フレームと並行して、音響フレーム読込手段１０により読み込まれ、窓関数Ｗ（４，ｉ）を利用して周波数変換手段２０により周波数変換された後、低周波成分変更手段３０により低周波成分が除去され、周波数逆変換手段４０により周波数逆変換された後、改変音響フレーム出力手段５０により出力される。
【０１３２】
図１３においては、まず、付加情報読込手段７０は、付加情報記憶部６２から付加情報を１ワード単位で読み込む（Ｓ４０１）。具体的には、音響信号に対する情報の埋め込み装置として用いられるコンピュータ内のレジスタに１ワード読み込むことになる。
【０１３３】
続いて、モードを区切りモードに設定する（Ｓ４０２）。モードは区切りモードと、ビットモードの２種類が存在する。区切りモードは１ワード単位の区切りにおける処理を行うモードを示し、ビットモードは１ワードに含まれる２ビットの値に基づいた処理を行うモードを示している。付加情報記憶部６２から１ワード読み込んだ場合には、その直後に必ず区切りモードに設定されることになる。
【０１３４】
続いて、音響フレーム読込手段１０が、音響信号記憶部６１に記憶されたステレオ音響信号の左右の各チャンネルから、それぞれ所定数のサンプルを１音響フレームとして読み込む（Ｓ４０４）。
【０１３５】
モードが区切りモードである場合、左（Ｌ）チャンネル信号において、低周波成分を“状態０”とする処理を行う（Ｓ４０６）。具体的には、周波数変換手段２０が、読み込んだ音響フレームに対して周波数変換を行って、その音響フレームのスペクトルであるフレームスペクトルを得た後、低周波成分変更手段３０が、上記〔数式１３〕に従った処理を実行することになる。
【０１３６】
モードがビットモードである場合は、周波数変換手段２０および低周波成分変更手段３０が、音響フレームの低周波成分の状態を“状態１”〜“状態４”のいずれかに変更する処理を行う（Ｓ４０５）。具体的には、まず、周波数変換手段２０が、読み込んだ音響フレームに対して、周波数変換を行って、その音響フレームのスペクトルであるフレームスペクトルを得る。すなわち、各音響フレームについて、３つの窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）を用いて、上記〔数式５〕に従った処理を行うことになる。
【０１３７】
続いて、低周波成分変更手段３０が、上記〔数式７〕に対応する数式により、各スペクトル集合ＳＰ１〜ＳＰ４の強度であるＥ1〜Ｅ4を算出する。そして、付加情報読込手段７０から受け取ったパターン１〜パターン４に応じて上記〔数式１０〕〔数式１１〕等に対応する数式に従った処理を実行し、低周波成分の状態を“状態１”〜“状態４”のいずれかに変更する。
【０１３８】
Ｓ４０５において、“状態１”〜“状態４”のいずれにも変更することができない場合は、低周波成分を“状態０”とする処理を行う（Ｓ４０６）。具体的には、上記〔数式１３〕に従った処理を実行することになる。“状態１”〜“状態４” のいずれにも変更することができない場合とは、埋め込むべき値に対応する強度値のいずれかが、レベル下限値Ｌｅｖ以下となっている場合である。例えば、パターン１を埋め込む場合、Ｅ1がレベル下限値Ｌｅｖより大きい必要があるため、Ｅ1がＬｅｖ以下である場合は、Ｓ４０６に進むことになる。
【０１３９】
上記〔数式１３〕に従った処理を実行することにより、左チャンネルのフレームスペクトルの低周波数成分は、スペクトル集合ＳＰ１、ＳＰ２、ＳＰ３、ＳＰ４全てにおいて、“０” で同一となる。この“状態０”のパターンは、付加情報の先頭位置（区切り）を示す情報か、または前述の強度値Ｅ1〜Ｅ4が下限値Ｌｅｖ以下であることにより、当該フレームに２ビットの値の記録が行なわれなかったことを示す情報となる。なお、上記〔数式１３〕においては、ｊ＝０〜Ｍ−１の各成分に対してＡｌ´（ｊ）＝Ｂｌ´（ｊ）＝０としているが、抽出側において、“状態１”〜“状態４”のいずれでもないことを認識可能とすることを目的としているため、十分小さな値であれば、必ずしも０とする必要はない。また、必ずしも４つのスペクトル成分の値が同一である必要はなく、差が小さければ良い。
【０１４０】
次に、周波数逆変換手段４０が、上記Ｓ４０５、Ｓ４０６の処理により各低周波成分のスペクトル集合間の割合が変更されたフレームスペクトルを周波数逆変換して改変音響フレームを得る処理を行う（Ｓ４０７）。この周波数逆変換は、当然のことながら、周波数変換手段２０がＳ４０５において実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ逆変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。具体的には、上記〔数式１０〕〔数式１１〕等に対応する数式に従った処理により得られたスペクトルの左チャンネルの実部Ａｌ´（１，ｊ）等、虚部Ｂｌ´（１，ｊ）等、右チャンネルの実部Ａｒ´（１，ｊ）等、虚部Ｂｒ´（１，ｊ）等を用いて、上記〔数式１５〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。
【０１４１】
改変音響フレーム出力手段５０は、得られた改変音響フレームを順次出力ファイルに出力する。こうして１つの音響フレームに対する処理を終えたら、モードの判定を行い（Ｓ４０８）、モードが区切りモードである場合は、モードをビットモードに設定した後（Ｓ４０９）、音響フレーム読込手段１０が、音響フレームを読み込む（Ｓ４０４）。一方、モードがビットモードである場合は、低周波成分変更手段３０が付加情報のビット配列中の次の２ビットを読み込む（Ｓ４０３）。以上のような処理を音響信号の両チャンネルの全サンプルに渡って実行していく。すなわち、所定数のサンプルを音響フレームとして読み込み、音響信号から読み込むべき音響フレームがなくなったら（Ｓ４０４）、処理を終了する。なお、Ｓ４０１において読み込んだ１ワードのデータの各ビットに対応する処理を終えた場合、Ｓ４０３からＳ４０１に戻り、付加情報の次のワードを読み込み処理をすることになる。付加情報の全ワードに対して処理が終了した場合は、付加情報の先頭ワードに戻って処理を行う。この結果、全ての音響フレームに対して処理を行った全ての改変音響フレームが出力ファイルに記録されて、改変音響信号として得られる。得られた改変音響信号は、記憶手段６０内の改変音響信号記憶部６３に出力され、記憶される。
【０１４２】
なお、本実施形態では、付加情報の１ワードを１バイトとした場合について説明したが、抽出側と取り決めがある限り、付加情報の１ワードを任意のビット数単位で記録することが可能である。
【０１４３】
上記のようにして得られた改変音響信号の左チャンネルのうち、付加情報が埋め込まれている部分については、低周波成分は、上記状態０〜状態４の５通りの分布しかないことになる。しかし、高周波成分については、元の音響信号のままであるので、制作者の設定に基づいた種々な分布になる。
【０１４４】
（２．２．抽出装置）
第２の実施形態においても、抽出装置の装置構成は、図９に示したようなものとなるが、処理動作は第２の実施形態とは異なる。そこで、第２の実施形態における埋め込み装置の処理の流れを図１４のフローチャートに従って説明する。まず、本装置では、平均符号レベルＨＬ１、ＨＬ２、ＨＬ３、ＨＬ４、位相判定テーブルＳ（ｐ）、非符号カウンタＮｎを初期化する（Ｓ５００）。これらについて説明する。平均符号レベルＨＬ１〜ＨＬ４は、２ビットの値が埋め込まれていたと判断される音響フレーム（以下、有効フレームと呼ぶことにする）についての、上記〔数式１７〕で算出される低周波成分の強度値ＥC1〜ＥC4の平均値、すなわち、過去の有効フレームにおける強度値ＥC1〜ＥC4の平均値で与えられるものであり、初期値は、０．１に設定されている。位相判定テーブルＳ（ｐ）は、位相を判定するためのテーブルであり、ｐは０〜５の整数値をとる。初期値はＳ（ｐ）＝０に設定されている。非符号カウンタＮｎは、信号レベルが低く、非符号（区切り又は埋め込みエラーを示す情報と同一）であると判断されるフレーム数のカウンタであり、初期状態では、Ｎｎ＝０に設定される。
【０１４５】
続いて、基準フレーム獲得手段１１０が、音響信号入力手段１００から入力された音響信号から、所定数のサンプルで構成される音響フレームを基準フレームとして抽出する（Ｓ５０１）。具体的には、基準フレームを抽出して音響フレーム保持手段１７０に読み込むことになる。基準フレーム獲得手段１１０が基準フレームとして読み込む１音響フレームのサンプル数は、図３に示した音響フレーム読込手段１０で設定されたものと同一にする必要がある。したがって、本実施形態の場合、基準フレーム獲得手段１１０は、４０９６サンプルずつ、順次基準フレームとして読み込んでいくことになる。音響フレーム保持手段１７０には、上述のように２個の基準フレームが格納可能となっており、新しい基準フレームが読み込まれると、古い基準フレームを破棄するようになっている。したがって、音響フレーム保持手段１７０には、常に基準フレーム２個分（連続する８１９２サンプル）が格納されていることになる。
【０１４６】
埋め込み装置で処理する音響フレームは、先頭から途切れることなく隣接して設定される基準フレームと、この基準フレームと位相を変更した位相変更フレームとに分けることができる。基準フレームについては、最初の基準フレームをサンプル番号１からサンプル番号４０９６までを設定したら、次の基準フレームは、サンプル番号４０９７からサンプル番号８１９２、さらに次の基準フレームは、サンプル番号８１９３からサンプル番号１２２８８、というように途切れることなく設定される。そして、各基準フレームについて、１／６フレーム（約６８３サンプル）ずつ移動した５個の位相変更フレームを設定する。例えば、最初の基準フレームについては、サンプル番号６８３、１３６６、２０４９、２７３２、３４１３から始まる４０９６のサンプルで構成される５個の位相変更フレームが設定されることになる。続いて、周波数変換手段１３０、符号判定パラメータ算出手段１４０が、読み込んだ各音響フレームから、埋め込まれている情報を判定し、対応する符号を出力する（Ｓ５０２）。出力される符号の形式は、埋め込み側の２ビットの値に対応するパターン１〜パターン４の４通り、およびパターン０の計５値の形式となる。
【０１４７】
ここで、ステップＳ５０２の符号判定処理の詳細を図１１のフローチャートに従って説明する。第２の実施形態におけるステップＳ５０２の符号判定処理は、第１の実施形態におけるＳ５０２の符号判定処理とは、正確には異なるが、
概略はほぼ同じであるので、第１の実施形態と同じ図１１を用いて説明することにする。まず、周波数変換手段１３０が、読み込んだ各音響フレームに対して、周波数変換を行ってフレームスペクトルを得る（Ｓ３０１）。この処理は、図１に示した周波数変換手段２０における処理と同様である。ただし、抽出に用いるのは、左チャンネルだけであるので、上記〔数式５〕に従った処理を行い、左チャンネルに対応する変換データの実部Ａｌ（１，ｊ）等、虚部Ｂｌ（１，ｊ）等を得る。
【０１４８】
上記周波数変換手段１３０における処理により、周波数に対応した成分であるスペクトルで表現されたフレームスペクトルが得られる。続いて、符号判定パラメータ算出手段１４０は、平均符号レベルＨＬ１〜ＨＬ４の算出を行う（Ｓ３０２）。具体的には、過去“状態１”であると判断された音響フレームについての強度値ＥC1の積算値であるｖ１を、過去“状態１”であると判断された音響フレームの数であるｎ１で除算することによりＨＬ１を算出し、過去“状態２”であると判断された音響フレームについての強度値ＥC2の積算値であるｖ２を、過去“状態２”であると判断された音響フレームの数であるｎ２で除算することによりＨＬ２を算出し、過去“状態３”であると判断された音響フレームについての強度値ＥC3の積算値であるｖ３を、過去“状態３”であると判断された音響フレームの数であるｎ３で除算することによりＨＬ３を算出し、過去“状態４”であると判断された音響フレームについての強度値ＥC4の積算値であるｖ４を、過去“状態４”であると判断された音響フレームの数であるｎ４で除算することによりＨＬ４を算出する。したがって、平均符号レベルＨＬ１〜ＨＬ４は、過去対応する状態であると判断された音響フレームの低周波強度の平均値となる。
【０１４９】
続いて、符号判定パラメータ算出手段１４０は、候補符号テーブルの初期化を行う（Ｓ３０３）。候補符号テーブルは、１つの基準フレームおよび５個の位相変更フレームを特定する０〜５の位相番号および、この６個の音響フレームの状態から得られる５値の符号を記録するものである。
【０１５０】
続いて、符号判定パラメータ算出手段１４０は、強度値ＥC1〜強度値ＥC4を用いて、低周波成分の状態がどのような状態であるか、すなわち、２ビットの値としてどのような値が埋め込まれていたかを判断する処理を行う（Ｓ３０４）。具体的には、以下の４群の判定処理を実行し、各群における全ての条件を満たす場合に、対応する状態であったと判断し、対応する２ビットの値を出力する。
【０１５１】
ＥC1＞０．００１・ＨＬ１かつＥC1＞２・ＥC2かつＥC1＞ＥC3かつＥC1＞ＥC4の場合、“状態１”であると判断し、パターン１を出力する。
【０１５２】
ＥC2＞０．００１・ＨＬ２かつＥC2＞２・ＥC1かつＥC2＞ＥC3かつＥC2＞ＥC4の場合、“状態２”であると判断し、パターン２を出力する。
【０１５３】
ＥC3＞０．００１・ＨＬ３かつＥC3＞２・ＥC4かつＥC3＞ＥC1かつＥC3＞ＥC2の場合、“状態３”であると判断し、パターン３を出力する。
【０１５４】
ＥC4＞０．００１・ＨＬ４かつＥC4＞２・ＥC3かつＥC4＞ＥC1かつＥC4＞ＥC2の場合、“状態４”であると判断し、パターン４を出力する。
【０１５５】
上記各群は、比較的厳しい判定を行うものであるが、上記各群のいずれも満たさない場合は、符号判定パラメータ算出手段１４０は、上記各群の先頭２つの条件のみの判定処理を実行し、状態を判断し、対応する２ビットの値を出力する。すなわち、以下の各群における判定処理を実行することになる。
【０１５６】
ＥC1＞０．００１・ＨＬ１かつＥC1＞２・ＥC2の場合、“状態１”であると判断し、パターン１を出力する。
【０１５７】
ＥC2＞０．００１・ＨＬ２かつＥC2＞２・ＥC1の場合、“状態２”であると判断し、パターン２を出力する。
【０１５８】
ＥC3＞０．００１・ＨＬ３かつＥC3＞２・ＥC4の場合、“状態３”であると判断し、パターン３を出力する。
【０１５９】
ＥC4＞０．００１・ＨＬ４かつＥC4＞２・ＥC3の場合、“状態４”であると判断し、パターン４を出力する。
【０１６０】
符号判定パラメータ算出手段１４０は、各音響フレーム単位で、上記判定結果に応じてパターン１〜パターン４のいずれかを出力する（Ｓ３０７）。上記いずれの群の条件も満たさない場合は、“状態０”であると判断し、パターン０を出力する（Ｓ３０８）。
この“状態０”は、強度値Ｅ1〜Ｅ4が下限値Ｌｅｖ以下であることにより、当該フレームに２ビットの値の記録が行なわれなかったことを示す埋め込みエラーを示す場合と、ワードの区切りを示す場合とがある。“状態０”がワードの区切りを示すか否かは、後述するようにビットカウンタが８以上に達しているかどうかで判断する。
【０１６１】
また、上記判定の結果、パターン１〜パターン４のいずれかを出力した場合には、さらに、以下の〔数式２１〕に従って位相判定テーブルＳ（ｐ）の更新を行う（Ｓ３０９）。
【０１６２】
〔数式２１〕
“状態１”であると判断し、パターン１を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC1
“状態２”であると判断し、パターン２を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC2
“状態３”であると判断し、パターン３を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC3
“状態４”であると判断し、パターン４を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC4
【０１６３】
続いて、符号判定パラメータ算出手段１４０は、候補符号テーブルに、最適位相となる候補を保存する（Ｓ３１０）。具体的には、位相判定テーブルに記録されているＳ（ｐ）の値が最大となる位相番号ｐの値、前記Ｓ３０７、Ｓ３０８により判定された５値のいずれかの符号、その音響フレームについての上記〔数式１７〕に従った処理を実行することにより算出した、低周波数成分に対応する各ＥC1〜ＥC4の値を最適位相の候補として候補符号テーブルに保存する。
【０１６４】
続いて、全ての位相番号ｐに対応する処理を終えたかどうかを判定する（Ｓ３１１）。これは、ある基準フレームに対して全ての位相変更フレームの処理を行ったかどうかを判定している。本実施形態では、ｐが０〜５までの値をとるので、６回分処理していない場合は、処理していた音響フレームから所定サンプル数ずらして、位相の異なる音響フレームを設定し、Ｓ３０４に戻って処理を繰り返す。なお、ｐ＝０の場合が基準フレームであり、ｐ＝１〜５の場合が位相変更フレームである。全ての位相番号ｐに対応する処理を終えた場合は、候補保存テーブルに記録されている位相番号ｐに対応する位相が最適位相であると判定し、候補保存テーブルに記録されている符号を出力する（Ｓ３１２）。
【０１６５】
再び図１４のフローチャートに戻って説明する。Ｓ５０２による処理の結果、パターン１〜パターン４に相当する符号が出力された場合には、平均符号レベルのパラメータの更新処理を行う（Ｓ５０３）。具体的には、平均符号レベルＨＬ１〜ＨＬ４算出の際の分子となる積算値ｖ１〜ｖ４にそれぞれ強度値ＥC1〜ＥC4を加算して積算値ｖ１〜ｖ４を更新し、分母となるフレーム数ｎ１〜ｎ４にそれぞれ１を加算してフレーム数ｎ１〜ｎ４を更新することにより行う。ｎ１〜ｎ４はあらかじめ設定したｎmax（例えば１００）を超えないように設定する。
【０１６６】
続いて、非符号カウンタの初期化処理を行う（Ｓ５０４）。具体的には、上記Ｓ５００の初期化処理における処理と同様、非符号カウンタＮｎ＝０と設定する。さらに、出力された値に対応する２ビットのビットパターンをバッファに保存する（Ｓ５０５）。次に、ビットカウンタを“２”だけカウントアップする（Ｓ５０６）。
【０１６７】
一方、Ｓ５０２による処理の結果、パターン０が出力された場合には、非符号カウンタのカウントアップ処理を行う（Ｓ５０７）。具体的には、非符号カウンタＮｎの値に１を加算する。そして、非符号カウンタＮｎの値がｎmax以上である場合は、Ｓ５００に戻って初期化処理を行う。非符号カウンタＮｎの値がｎmax未満である場合は、ビットカウンタが８以上であるかどうかを判断し、８未満である場合は、パターン０は、ワードの区切りではなく埋め込みエラーを示す符号と判断し、現在のビットカウンタ値を維持してＳ５０１に戻って符号抽出処理を継続する。ビットカウンタが８以上である場合は、パターン０は、ワードの区切りを示すと判断できるので、バッファに記録された１ワード分のデータを、付加情報抽出手段１６０が出力する（Ｓ５０８）。そして、ビットカウンタを０に初期化する（Ｓ５０９）。図１０に示す処理を各基準フレームに対して実行することにより、付加情報が抽出されることになる。Ｓ５０１において全ての基準フレームが抽出されたと判断された場合には、処理を終了する。
【０１６８】
上記Ｓ５０８の処理において、付加情報抽出手段１６０は、まず、符号判定パラメータ算出手段１４０により出力された値のうち、パターン０を区切り位置として、その次の値（パターン）を先頭と仮定して、各値に対応する２ビットの値に対応させて、ビット配列を作成する。続いて、パターン０を抽出した際に、ビット配列のビットカウンタが８未満であれば、パターン０は埋め込みエラーを示すものと判断し、現状のビットカウンタの値を維持してビット配列の作成を継続する。ビット配列のビットカウンタが丁度８または８を超えていれば、パターン０はワード（１バイト）の区切りを示すものと判断し、ビット配列の最後の８ビットを、所定の規則により変換して意味のある付加情報として抽出する。ここで、８ビットを超える場合は、データの抽出処理を開始する直後に発生しやすく、パターン０を先頭と誤判断してビットカウンタを初期化した場合に発生する。所定の規則としては、情報を埋め込む者が意図した情報が受け取った者に認識可能な状態とできるものであれば、さまざまな規則が適用できるが、本実施形態では、文字情報として認識するための規則としている。すなわち、付加情報抽出手段１６０は、符号判定パラメータ算出手段１４０が判定し、符号出力手段１５０から出力される符号を１バイト（８ビット）単位で認識し、これを設定されたコード体系に従って文字情報を認識する。このようにして得られた文字情報は、表示装置（図示省略）の画面に表示出力される。
【０１６９】
従って、埋め込み装置により音響信号に、その楽曲の曲名やアーチスト等の属性情報を文字情報として埋め込んでおけば、利用者は、その音楽が流れているのを聞いて、その曲名やアーチストを知りたいと思ったときに、抽出装置として機能する自身の携帯端末に所定の操作を行えば、自身の携帯端末の画面に曲名やアーチスト等の属性情報が文字情報として表示されることになる。
【０１７０】
（２．３．信号成分が小さくても情報の埋め込みを可能とする手法）
ここまで、説明してきた処理においては、上記Ｅ1〜Ｅ4が所定の大きさより大きいことが必要となり、上記Ｅ1〜Ｅ4が所定の大きさ以下の場合には、情報の埋め込みを行うことができない。そこで、以下、上記Ｅ1〜Ｅ4が所定の大きさ以下であっても、信号の埋め込みを可能とする手法について説明する。
【０１７１】
この場合、図１に示した埋め込み装置における情報の埋め込み処理は、図１３のフローチャートに従って行われるが、強度値Ｅ1〜Ｅ4がレベル下限値Ｌｅｖ以下となることがなくなるため、Ｓ４０５における周波数変換処理において低周波成分変更手段３０がレベルの判定を行わない。これは、この処理では、信号レベルが小さくても強制的に情報を埋め込むこととしているため、情報の埋め込みが不可能な信号レベルが小さい部分が存在するかどうかを判断し、区切りモードに設定する必要がないからである。
【０１７２】
したがって、Ｓ４０５における状態１〜状態４に設定する処理としては、まず、以下の〔数式２２〕に従って算出される固定値Ｖを、低周波成分の強度として設定する。
【０１７３】
〔数式２２〕
Ｖ＝｛０．５・Ｌｅｖ／（２Ｐ−６）｝1/2
【０１７４】
そして、状態１〜状態４とする場合は、上記〔数式１０〕〔数式１１〕等に従った処理におけるＡｌ´（1,ｊ）、Ｂｌ´（1,ｊ）、Ａｌ´（3,ｊ）、Ｂｌ´（3,ｊ）の算出の際、Ｅ（１,ｊ）に代えて、上記〔数式２２〕で算出される固定値Ｖを用いる。
【０１７５】
上記のように、周波数成分が小さい場合に情報を埋め込んだ場合であっても、抽出側の、音響信号からの情報の抽出装置の構成は図９と同一であり、処理動作は図１４のフローチャートに従ったものと同一である。
【０１７６】
（３．第３の実施形態）
次に、第３の実施形態について説明する。第１の実施形態、第２の実施形態では、それぞれ６ビット強、２ビットの情報を埋め込むようにしたが、第３の実施形態では、図１５に示すように、音響フレームの低周波成分を８つの状態に変更し、３ビットの情報を埋め込むことを特徴とする。
【０１７７】
図１５に示す各音響フレームにおいても、図３、図１２と同様、横軸は時間方向、縦軸は周波数方向を示している。また、網掛けされた部分は、低周波成分が存在している部分を示し、網掛けが濃いほど成分強度が強いことを示している。第３の実施形態において、図１５（ａ）に示すような原状態の低周波成分に対して、パターン０を埋め込む場合、Ｌ-chの信号の低周波成分を全て除去し、除去した成分と同等の成分をＲ-chの信号の低周波成分に加算して図１５（ｂ）に示すような“状態０”に変更する。図１５においては、図１２と同様、第１窓関数により得られる前部において縦軸の周波数方向が４つに区分されており、第３窓関数により得られる後部において縦軸の周波数方向が３つに区分されている。前部、後部のいずれにおいても、最下部に示すＧ１、Ｇ２はギャップ領域である。さらに、前部においては、最上部にギャップ領域Ｇ１０が設けられている。これらのギャップ領域は、抽出対象であるＬ-chの信号においては、常に成分が除去され、除去された成分と同等の成分がＲ-chの信号の低周波成分に加算される。最下部にギャップ領域を設けることにより、埋め込み可能な低周波成分の上限を高くすることができる。
【０１７８】
本実施形態で、パターン１〜パターン４を埋め込む場合、第２の実施形態と全く同様に行われる。したがって、図１５（ｃ）〜（ｆ）は、図１２（ｃ）〜（ｆ）と全く同じ状態となっている。
【０１７９】
本実施形態で、パターン５を埋め込む場合は、図１５（ｇ）に示すように、Ｌ-ch信号のスペクトル集合ＳＰ１の強度を強め、スペクトル集合ＳＰ２、ＳＰ３、ＳＰ４の強度を弱める。そして、Ｒ-ch信号の対応する成分については、Ｌ-ch信号を補足するように変更して“状態５”とする。パターン６を埋め込む場合は、図１５（ｈ）に示すように、Ｌ-ch信号のスペクトル集合ＳＰ２の強度を強め、スペクトル集合ＳＰ１、ＳＰ３、ＳＰ４の強度を弱める。そして、Ｒ-ch信号の対応する成分については、Ｌ-ch信号を補足するように変更して“状態６”とする。
【０１８０】
本実施形態で、パターン７を埋め込む場合は、図１５（ｉ）に示すように、Ｌ-ch信号のスペクトル集合ＳＰ４の強度を強め、スペクトル集合ＳＰ１、ＳＰ２、ＳＰ３の強度を弱める。そして、Ｒ-ch信号の対応する成分については、Ｌ-ch信号を補足するように変更して“状態７”とする。パターン８を埋め込む場合は、図１５（ｊ）に示すように、Ｌ-ch信号のスペクトル集合ＳＰ３の強度を強め、スペクトル集合ＳＰ１、ＳＰ２、ＳＰ４の強度を弱める。そして、Ｒ-ch信号の対応する成分については、Ｌ-ch信号を補足するように変更して“状態８”とする。
【０１８１】
第３の実施形態では、図１５（ｂ）〜（ｊ）に示すような９つの状態に低周波成分を変更することにより、情報の埋め込みを行っている。９つの状態のうち、１つは、埋め込むべき付加情報を構成するワード間の区切りやエラー処理等に用いるものであるので、実質埋め込むことができるのは８つの状態、すなわち、３ビットに相当する。したがって、本実施形態では、１音響フレームに対して３ビットの情報が埋め込み可能となる。
【０１８２】
（３．１．埋め込み装置）
第３の実施形態においても、埋め込み装置の装置構成は、図１に示したようなものとなるが、主に低周波成分変更手段３０の内容が異なっている。具体的には、低周波成分変更手段３０は、Ａタイプの音響フレームについて、付加情報読込手段７０が読み込んだビットパターンに応じて、低周波成分の割合を変更する処理を行うが、第３の実施形態では、ビット配列を３ビットずつ読み込み、１音響フレームに対して３ビットの情報を埋め込む。埋め込まれる３ビットのパターンは、“０００”“００１”“０１０”“０１１” “１００”“１０１”“１１０”“１１１”の８通りがある。第２の実施形態では、これらをパターン１〜パターン８と定義する。この際、“０００”〜“１１１”の８通りのうち、いずれをパターン１〜パターン８と定義しても良い。抽出側において、埋め込み側で埋め込まれた３ビットの配列が特定できれば良いためである。したがって、この定義は、埋め込み側と抽出側で一致している必要がある。
【０１８３】
そして、低周波成分変更手段３０は、このパターン１〜パターン８に応じて、低周波成分を状態１〜状態８のいずれかに変更する。具体的には、まず、低周波成分変更手段３０は、上記〔数式５〕により求めた左チャンネルの実部Ａｌ（１，ｊ）、Ａｌ（３，ｊ）、虚部Ｂｌ（１，ｊ）、Ｂｌ（３，ｊ）、右チャンネルの実部Ａｒ（１，ｊ）、Ａｒ（３，ｊ）、虚部Ｂｒ（１，ｊ）、Ｂｒ（３，ｊ）を利用して、以下の〔数式２３〕により、強度値Ｅ1〜Ｅ4を算出する。この強度値Ｅ1〜Ｅ4は、第１の実施形態におけるものとは異なっている。なお、Ｅ1〜Ｅ8、ＥC1〜ＥC8、ＨＬ１〜ＨＬ７０等の各変数は、各実施形態で独立しており、同一名の変数であっても、算出手法が異なる。ただし、本明細書で用いられる数式については、明細書全体を通じて統一されている。
【０１８４】
〔数式２３〕
Ｅ1＝Σj=m,m+P-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2＋Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝・Ｆ（ｊ−m）・Ｃ
Ｅ2＝Σj=m+d,m+d+P-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2＋Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝・Ｆ（ｊ−m−ｄ）・Ｃ
Ｅ3＝Σj=m+p,m+2P-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2＋Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝・Ｆ（ｊ−m−P）・Ｃ
Ｅ4＝Σj=m+d+p,m+d+2P-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2＋Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝・Ｆ（ｊ−m−ｄ−P）・Ｃ
【０１８５】
上記〔数式２３〕において、ｍは低周波数帯の下限の成分の番号、Ｍは低周波数帯の上限の成分の番号であり、Ｐ＝（Ｍ−ｍ）／２である。なお、Ｐが整数にならない場合、切捨て処理を行う。ｍ＝１５、Ｍ＝３９と設定すると、Ｐ＝１２となる。上記〔数式２３〕により算出されたＥ1〜Ｅ4は音響フレームの低周波領域におけるスペクトル集合の成分の強度値を示すことになる。続いて、この強度値Ｅ1〜Ｅ4がレベル下限値Ｌｅｖより大きいかどうかの判定を行う。レベル下限値Ｌｅｖは、音響信号Ｘｌ（ｉ）、Ｘｒ（ｉ）の振幅最大値が１に正規化されており、Ｍ＝３９に設定されている場合、０．２５に設定する。このＬｅｖ＝０．２５という値は、経験的にアナログ変換への耐性が維持できるレベルであり、低周波成分が少ない場合は適宜下げることになるが、その場合は、アナログ変換により検出精度も低下することになる。
【０１８６】
強度値Ｅ1〜Ｅ4がレベル下限値Ｌｅｖより大きいかどうかを判断するのは、信号の強度が小さいと、信号を変化させても、その変化を抽出側で検出することができないためである。すなわち、各スペクトル集合の強度を十分な大きさとすることができるかどうかを判断することになる。
【０１８７】
Ｅ1およびＥ3が共にレベル下限値Ｌｅｖより大きく、埋め込むべき情報が“パターン１”である場合、上記〔数式１０〕の規則に従った数式に応じた処理を実行することにより、低周波成分の状態を“状態１”、すなわち、図１２（ｃ）に示したような状態に変更する。上記〔数式１０〕の規則に従った数式とは、左信号において、強度を強くするスペクトル集合ＳＰ１、ＳＰ３については、周波数方向窓関数Ｆ（ｊ）を乗じるとともに、対応する右信号のスペクトル集合においては１−Ｆ（ｊ）を乗じ、左信号において、強度を弱くするスペクトル集合ＳＰ２、ＳＰ４については、その部分の値を０にするとともに、対応する右信号のスペクトル集合においては、削除分を加算するものである。なお、左信号において、強度を弱くするスペクトル集合ＳＰ２、ＳＰ４については、ＳＰ１、ＳＰ３との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、小さな値であれば良い。
【０１８８】
Ｅ2およびＥ4が共にレベル下限値Ｌｅｖより大きく、埋め込むべき情報が“パターン２”である場合、上記〔数式１０〕の規則に従った数式に応じた処理を実行することにより、低周波成分の状態を“状態２” 、すなわち、図１２（ｄ）に示したような状態に変更する。上記〔数式１０〕の規則に従った数式とは、左信号において、強度を強くするスペクトル集合ＳＰ２、ＳＰ４については、周波数方向窓関数Ｆ（ｊ）を乗じるとともに、対応する右信号のスペクトル集合においては１−Ｆ（ｊ）を乗じ、左信号において、強度を弱くするスペクトル集合ＳＰ１、ＳＰ３については、その部分の値を０にするとともに、対応する右信号のスペクトル集合においては、削除分を加算するものである。なお、左信号において、強度を弱くするスペクトル集合ＳＰ１、ＳＰ３については、ＳＰ２、ＳＰ４との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、小さな値であれば良い。
【０１８９】
Ｅ1およびＥ4が共にレベル下限値Ｌｅｖより大きく、埋め込むべき情報が“パターン３”である場合、上記〔数式１０〕の規則に従った数式に応じた処理を実行することにより、低周波成分の状態を“状態３” 、すなわち、図１２（ｅ）に示したような状態に変更する。上記〔数式１０〕の規則に従った数式とは、左信号において、強度を強くするスペクトル集合ＳＰ１、ＳＰ４については、周波数方向窓関数Ｆ（ｊ）を乗じるとともに、対応する右信号のスペクトル集合においては１−Ｆ（ｊ）を乗じ、左信号において、強度を弱くするスペクトル集合ＳＰ２、ＳＰ３については、その部分の値を０にするとともに、対応する右信号のスペクトル集合においては、削除分を加算するものである。なお、左信号において、強度を弱くするスペクトル集合ＳＰ２、ＳＰ３については、ＳＰ１、ＳＰ４との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、小さな値であれば良い。
【０１９０】
Ｅ2およびＥ3が共にレベル下限値Ｌｅｖより大きく、埋め込むべき情報が“パターン４”である場合、上記〔数式１０〕の規則に従った数式に応じた処理を実行することにより、低周波成分の状態を“状態４” 、すなわち、図１２（ｆ）に示したような状態に変更する。上記〔数式１０〕の規則に従った数式とは、左信号において、強度を強くするスペクトル集合ＳＰ２、ＳＰ３については、周波数方向窓関数Ｆ（ｊ）を乗じるとともに、対応する右信号のスペクトル集合においては１−Ｆ（ｊ）を乗じ、左信号において、強度を弱くするスペクトル集合ＳＰ１、ＳＰ４については、その部分の値を０にするとともに、対応する右信号のスペクトル集合においては、削除分を加算するものである。なお、左信号において、強度を弱くするスペクトル集合ＳＰ１、ＳＰ４については、ＳＰ２、ＳＰ３との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、小さな値であれば良い。
【０１９１】
Ｅ1がレベル下限値Ｌｅｖより大きく、埋め込むべき情報が“パターン５”である場合、上記〔数式１０〕の規則に従った数式に応じた処理を実行することにより、低周波成分の状態を“状態５” 、すなわち、図１２（ｇ）に示したような状態に変更する。上記〔数式１０〕の規則に従った数式とは、左信号において、強度を強くするスペクトル集合ＳＰ１については、周波数方向窓関数Ｆ（ｊ）を乗じるとともに、対応する右信号のスペクトル集合においては１−Ｆ（ｊ）を乗じ、左信号において、強度を弱くするスペクトル集合ＳＰ２、ＳＰ３、ＳＰ４については、その部分の値を０にするとともに、対応する右信号のスペクトル集合においては、削除分を加算するものである。なお、左信号において、強度を弱くするスペクトル集合ＳＰ２、ＳＰ３、ＳＰ４については、ＳＰ１との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、小さな値であれば良い。
【０１９２】
Ｅ2がレベル下限値Ｌｅｖより大きく、埋め込むべき情報が“パターン６”である場合、上記〔数式１０〕の規則に従った数式に応じた処理を実行することにより、低周波成分の状態を“状態６” 、すなわち、図１２（ｈ）に示したような状態に変更する。上記〔数式１０〕の規則に従った数式とは、左信号において、強度を強くするスペクトル集合ＳＰ２については、周波数方向窓関数Ｆ（ｊ）を乗じるとともに、対応する右信号のスペクトル集合においては１−Ｆ（ｊ）を乗じ、左信号において、強度を弱くするスペクトル集合ＳＰ１、ＳＰ３、ＳＰ４については、その部分の値を０にするとともに、対応する右信号のスペクトル集合においては、削除分を加算するものである。なお、左信号において、強度を弱くするスペクトル集合ＳＰ１、ＳＰ３、ＳＰ４については、ＳＰ２との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、小さな値であれば良い。
【０１９３】
Ｅ4がレベル下限値Ｌｅｖより大きく、埋め込むべき情報が“パターン７”である場合、上記〔数式１０〕の規則に従った数式に応じた処理を実行することにより、低周波成分の状態を“状態７” 、すなわち、図１２（ｉ）に示したような状態に変更する。上記〔数式１０〕の規則に従った数式とは、左信号において、強度を強くするスペクトル集合ＳＰ４については、周波数方向窓関数Ｆ（ｊ）を乗じるとともに、対応する右信号のスペクトル集合においては１−Ｆ（ｊ）を乗じ、左信号において、強度を弱くするスペクトル集合ＳＰ１、ＳＰ２、ＳＰ３については、その部分の値を０にするとともに、対応する右信号のスペクトル集合においては、削除分を加算するものである。なお、左信号において、強度を弱くするスペクトル集合ＳＰ１、ＳＰ２、ＳＰ３については、ＳＰ４との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、小さな値であれば良い。
【０１９４】
Ｅ3がレベル下限値Ｌｅｖより大きく、埋め込むべき情報が“パターン８”である場合、上記〔数式１０〕の規則に従った数式に応じた処理を実行することにより、低周波成分の状態を“状態８” 、すなわち、図１２（ｊ）に示したような状態に変更する。上記〔数式１０〕の規則に従った数式とは、左信号において、強度を強くするスペクトル集合ＳＰ３については、周波数方向窓関数Ｆ（ｊ）を乗じるとともに、対応する右信号のスペクトル集合においては１−Ｆ（ｊ）を乗じ、左信号において、強度を弱くするスペクトル集合ＳＰ１、ＳＰ２、ＳＰ４については、その部分の値を０にするとともに、対応する右信号のスペクトル集合においては、削除分を加算するものである。なお、左信号において、強度を弱くするスペクトル集合ＳＰ１、ＳＰ２、ＳＰ４については、ＳＰ３との差を明確にすることができれば十分であるため、必ずしも０にする必要はなく、小さな値であれば良い。
【０１９５】
上記〔数式１０〕の規則に従った数式に応じた処理を実行し、低周波成分の状態を“状態１”〜“状態８”に変更した場合、いずれの場合であっても、さらに第１、第２の実施形態と同様、上記〔数式１２〕に従った処理を実行し、最低周波数帯におけるギャップ領域Ｇ１、Ｇ２を設ける。
【０１９６】
第３の実施形態においても、第２の実施形態と同様、ワード間の区切りとする場合、埋め込まれる側の低周波成分の強度が小さすぎる場合には、上記〔数式１３〕に従った処理を実行し、その低周波成分を除去し、状態を“状態０”に変更する。これは、図１５（ｂ）に示すような状態である。
【０１９７】
第３の実施形態における埋め込み装置の処理の流れを図１６のフローチャートに示す。図１６において、図１３と同一の部分は、図１３と同一または類似の処理を行うものである。図１６において、図１３と大きく異なるのは、Ｓ４１０の部分であり、第３の実施形態では、低周波成分変更手段３０が、レジスタに保持された１ワードから２ビットを読み込む処理を行った後、読み込む２ビットが末端２ビットでない場合は、さらにもう１ビット読み込む処理を行う。すなわち、この場合、レジスタから３ビット読み込むことになる。すなわち、本実施形態では、１ワードとしてレジスタに８ビットが保持されているため、３ビット、３ビット、２ビットの順に読み込まれる。末端の２ビット以外では、３ビット読み込む方が効率が良いため、末端２ビットであるかどうかを判断し、そうでない場合は、さらに１ビット読み込んで３ビット読み込みとしているのである。
【０１９８】
続いて、音響フレーム読込手段１０が、音響信号記憶部６１に記憶されたステレオ音響信号の左右の各チャンネルから、それぞれ所定数のサンプルを１音響フレームとして読み込む（Ｓ４０４）。
【０１９９】
モードが区切りモードである場合、左（Ｌ）チャンネル信号において、低周波成分を“状態０”とする処理を行う（Ｓ４０６）。具体的には、周波数変換手段２０が、読み込んだ音響フレームに対して周波数変換を行って、その音響フレームのスペクトルであるフレームスペクトルを得た後、低周波成分変更手段３０が、上記〔数式１３〕に従った処理を実行することになる。
【０２００】
モードがビットモードである場合は、周波数変換手段２０および低周波成分変更手段３０が、音響フレームの低周波成分の状態を“状態１”〜“状態８”のいずれかに変更する処理を行う（Ｓ４０５）。具体的には、まず、周波数変換手段２０が、読み込んだ音響フレームに対して、周波数変換を行って、その音響フレームのスペクトルであるフレームスペクトルを得る。すなわち、各音響フレームについて、３つの窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）を用いて、上記〔数式５〕に従った処理を行うことになる。
【０２０１】
続いて、低周波成分変更手段３０が、上記〔数式２３〕によりＥ1〜Ｅ4を算出する。そして、付加情報読込手段７０から受け取ったパターン１〜パターン８に応じて上記〔数式１０〕〔数式１１〕等に従った処理を実行し、低周波成分の状態を“状態１”〜“状態８”のいずれかに変更する。
【０２０２】
Ｓ４０５において、“状態１”〜“状態８”のいずれにも変更することができない場合は、低周波成分を“状態０”とする処理を行う（Ｓ４０６）。具体的には、上記〔数式１３〕に従った処理を実行することになる。“状態１”〜“状態８” のいずれにも変更することができない場合とは、埋め込むべきパターンに対応する強度値のいずれかが、レベル下限値Ｌｅｖ以下となっている場合である。例えば、パターン１を埋め込む場合、Ｅ1およびＥ3が共にレベル下限値Ｌｅｖより大きい必要があるため、Ｅ1、Ｅ3のいずれかがＬｅｖ以下である場合は、Ｓ４０６に進むことになる。
【０２０３】
上記〔数式１３〕に従った処理を実行することにより、左チャンネルのフレームスペクトルの低周波数成分は、スペクトル集合ＳＰ１、ＳＰ２、ＳＰ３、ＳＰ４全てにおいて、“０” で同一となる。この“状態０”のパターンは、付加情報の先頭位置（区切り）を示す情報か、または前述の強度値Ｅ1〜Ｅ4が下限値Ｌｅｖ以下であることにより、当該フレームに３ビットまたは２ビットの値の記録が行なわれなかったことを示す情報となる。なお、上記〔数式１３〕においては、ｊ＝０〜Ｍ−１の各成分に対してＡｌ´（ｊ）＝Ｂｌ´（ｊ）＝０としているが、抽出側において、“状態１”〜“状態８”のいずれでもないことを認識可能とすることを目的としているため、十分小さな値であれば、必ずしも０とする必要はない。また、必ずしも４つのスペクトル成分の値が同一である必要はなく、差が小さければ良い。
【０２０４】
次に、周波数逆変換手段４０が、上記Ｓ４０５、Ｓ４０６の処理により各低周波成分のスペクトル集合間の割合が変更されたフレームスペクトルを周波数逆変換して改変音響フレームを得る処理を行う（Ｓ４０７）。この周波数逆変換は、当然のことながら、周波数変換手段２０がＳ４０５において実行した手法に対応していることが必要となる。本実施形態では、周波数変換手段２０において、フーリエ逆変換を施しているため、周波数逆変換手段４０は、フーリエ逆変換を実行することになる。具体的には、上記〔数式１０〕〔数式１１〕等の規則に対応する数式により得られたスペクトルの左チャンネルの実部Ａｌ´（１，ｊ）等、虚部Ｂｌ´（１，ｊ）等、右チャンネルの実部Ａｒ´（１，ｊ）等、虚部Ｂｒ´（１，ｊ）等を用いて、上記〔数式１５〕に従った処理を行い、Ｘｌ´（ｉ）、Ｘｒ´（ｉ）を算出する。
【０２０５】
改変音響フレーム出力手段５０は、得られた改変音響フレームを順次出力ファイルに出力する。こうして１つの音響フレームに対する処理を終えたら、モードの判定を行い（Ｓ４０８）、モードが区切りモードである場合は、モードをビットモードに設定した後（Ｓ４０９）、音響フレーム読込手段１０が、音響フレームを読み込む（Ｓ４０４）。一方、モードがビットモードである場合は、低周波成分変更手段３０が付加情報のビット配列中の次の２ビットを読み込む（Ｓ４０３）。ここで、読み込んだ２ビットが１ワードの末端の２ビットでない場合は、さらにもう１ビット読み込む処理を行う（Ｓ４１０）。すなわち、この場合、レジスタから３ビット読み込むことになる。一方、読み込んだ２ビットが１ワードの末端の２ビットである場合は、そのまま音響フレームを読み込む処理に移行する（Ｓ４０４）。すなわち、本実施形態では、１ワードとしてレジスタに８ビットが保持されているため、３ビット、３ビット、２ビットの順に読み込まれる。末端の２ビット以外では、３ビット読み込む方が効率が良いため、末端２ビットであるかどうかを判断し、そうでない場合は、さらに１ビット読み込んで３ビット読み込みとしているのである。
【０２０６】
以上のような処理を音響信号の両チャンネルの全サンプルに渡って実行していく。すなわち、所定数のサンプルを音響フレームとして読み込み、音響信号から読み込むべき音響フレームがなくなったら（Ｓ４０４）、処理を終了する。なお、Ｓ４０１において読み込んだ１ワードのデータの各ビットに対応する処理を終えた場合、Ｓ４０３からＳ４０１に戻り、付加情報の次のワードを読み込み処理をすることになる。付加情報の全ワードに対して処理が終了した場合は、付加情報の先頭ワードに戻って処理を行う。この結果、全ての音響フレームに対して処理を行った全ての改変音響フレームが出力ファイルに記録されて、改変音響信号として得られる。得られた改変音響信号は、記憶手段６０内の改変音響信号記憶部６３に出力され、記憶される。
【０２０７】
（３．２．抽出装置）
第２の実施形態においても、装置構成は図９に示したものと同様であるが、主に符号判定パラメータ算出手段１４０の内容が異なっている。具体的には、符号判定パラメータ算出手段１４０は、生成されたスペクトルの低周波領域からスペクトル集合を抽出し、各スペクトル集合の強度値ＥC1〜ＥC4を以下の〔数式２４〕に基づいて算出し、この強度値ＥC1〜ＥC4を符号判定パラメータとし、この符号判定パラメータＥC1〜ＥC4の比率等に基づいて、所定の状態であると判断する機能を有している。以下の〔数式２４〕は上記〔数式２３〕において右チャンネル成分を削除したものとなっている。
【０２０８】
〔数式２４〕
ＥC1＝Σj=m,…,m+P-4｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝・Ｆ（ｊ−m）・Ｃ
ＥC2＝Σj=m+d,…,m+d+P-4｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝・Ｆ（ｊ−m−ｄ）・Ｃ
ＥC3＝Σj=m+P,…,m+2P-4｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝・Ｆ（ｊ−m−P）・Ｃ
ＥC4＝Σj=m+d+P,…,m+d+2P-4｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝・Ｆ（ｊ−m−ｄ−P）・Ｃ
【０２０９】
次に、第３の実施形態における音響信号からの情報の抽出装置の処理の全体的な流れについて説明する。第３の実施形態における抽出処理は、第２の実施形態におけるＳ５０２の抽出処理とは、正確には異なるが、概略はほぼ同じであるので、第２の実施形態と同じ図１４のフローチャートに従って説明することにする。まず、本装置では、平均符号レベルＨＬ１〜ＨＬ８、位相判定テーブルＳ（ｐ）、非符号カウンタＮｎを初期化する（Ｓ５００）。この処理は、図１０におけるＳ５００とほぼ同様の処理である。平均符号レベルＨＬ１〜ＨＬ８の初期値は、第１の実施形態と同様、０．１に設定されている。位相判定テーブルＳ（ｐ）、非符号カウンタＮｎについても第１の実施形態と同様である。
【０２１０】
利用者が抽出装置に対して、抽出装置としての起動の指示を行うと、音響信号入力手段１００が、流れている音楽を録音し、デジタル化してデジタル音響信号として入力する。続いて、基準フレーム獲得手段１１０が、音響信号入力手段１００から入力された音響信号から、所定数のサンプルで構成される音響フレームを基準フレームとして抽出する（Ｓ５０１）。この処理は、図１０におけるＳ５０１とほぼ同様の処理である。
【０２１１】
続いて、周波数変換手段１３０、符号判定パラメータ算出手段１４０が、読み込んだ各音響フレームから、埋め込まれている情報を判定し、対応する符号（パターン）を出力する（Ｓ５０２）。出力される情報の形式は、付加情報が埋め込まれる場合に対応するパターン１〜パターン８の８通り、およびパターン０の計９通りの形式となる。
【０２１２】
ステップＳ５０２の符号判定処理の詳細については、図１１のフローチャートを用いて説明する。後述するように、第１の実施形態における処理と各ステップにおける処理は現実には異なっているが、類似した処理となっているので、ここでは、図１１に従って説明する。まず、周波数変換手段１３０が、第１の実施形態と同様、周波数変換を行った後（Ｓ３０１）、符号判定パラメータ算出手段１４０は、平均符号レベルＨＬ１〜ＨＬ８の算出を行う（Ｓ３０２）。具体的には、過去“状態１”であると判断された音響フレームについての強度値ＥC1と強度値ＥC3の和の積算値であるｖ１を、過去“状態１”であると判断された音響フレームの数であるｎ１で除算することによりＨＬ１を算出し、過去“状態２”であると判断された音響フレームについての強度値ＥC2と強度値ＥC4の和の積算値であるｖ２を、過去“状態２”であると判断された音響フレームの数であるｎ２で除算することによりＨＬ２を算出し、過去“状態３”であると判断された音響フレームについての強度値ＥC1と強度値ＥC4の和の積算値であるｖ３を、過去“状態３”であると判断された音響フレームの数であるｎ３で除算することによりＨＬ３を算出し、過去“状態４”であると判断された音響フレームについての強度値ＥC2と強度値ＥC3の和の積算値であるｖ４を、過去“状態４”であると判断された音響フレームの数であるｎ４で除算することによりＨＬ４を算出する。
【０２１３】
さらに、過去“状態５”であると判断された音響フレームについての強度値ＥC1の２倍の積算値であるｖ５を、過去“状態５”であると判断された音響フレームの数であるｎ５で除算することによりＨＬ５を算出し、過去“状態６”であると判断された音響フレームについての強度値ＥC2の２倍の積算値であるｖ６を、過去“状態６”であると判断された音響フレームの数であるｎ６で除算することによりＨＬ６を算出し、過去“状態７”であると判断された音響フレームについての強度値ＥC3の２倍の積算値であるｖ７を、過去“状態７”であると判断された音響フレームの数であるｎ７で除算することによりＨＬ７を算出し、過去“状態８”であると判断された音響フレームについての強度値ＥC4の２倍の積算値であるｖ８を、過去“状態８”であると判断された音響フレームの数であるｎ８で除算することによりＨＬ８を算出する。したがって、平均符号レベルＨＬ１〜ＨＬ４は、過去対応する状態であると判断された音響フレームの低周波強度の平均値となる。平均符号レベルＨＬ５〜ＨＬ８は、過去対応する状態であると判断された音響フレームの低周波強度の２倍の平均値となる。
【０２１４】
続いて、符号判定パラメータ算出手段１４０は、候補符号テーブルの初期化を行う（Ｓ３０３）。候補符号テーブルは、１つの基準フレームおよび５個の位相変更フレームを特定する０〜５の位相番号および、この６個の音響フレームの状態から得られる９通りの符号を記録するものである。
【０２１５】
続いて、符号判定パラメータ算出手段１４０は、強度値ＥC1〜強度値ＥC4を用いて、低周波成分の状態がどのような状態であるか、すなわち、３ビットまたは２ビットのパターンとしてどのようなパターンが埋め込まれていたかを判断する処理を行う（Ｓ３０４）。具体的には、まず、以下の４群の判定処理を実行し、各群における全ての条件を満たす場合に、対応する状態であったと判断し、対応する値を出力する。
【０２１６】
ＥC1＞０．０００５・ＨＬ１、かつＥC3＞０．０００５・ＨＬ３、かつＥC1＞２・ＥC2、かつＥC3＞２・ＥC4の場合、“状態１”であると判断し、パターン１を出力する。
【０２１７】
ＥC2＞０．０００５・ＨＬ２、かつＥC4＞０．０００５・ＨＬ４、かつＥC2＞２・ＥC1、かつＥC4＞２・ＥC3の場合、“状態２”であると判断し、パターン２を出力する。
【０２１８】
ＥC1＞０．０００５・ＨＬ１、かつＥC4＞０．０００５・ＨＬ４、かつＥC1＞２・ＥC2、かつＥC4＞２・ＥC3の場合、“状態３”であると判断し、パターン３を出力する。
【０２１９】
ＥC2＞０．０００５・ＨＬ２、かつＥC3＞０．０００５・ＨＬ３、かつＥC2＞２・ＥC1、かつＥC3＞２・ＥC4の場合、“状態４”であると判断し、パターン４を出力する。
【０２２０】
上記各群のいずれも満たさない場合は、符号判定パラメータ算出手段１４０は、さらに以下の各群における判定処理を実行して状態を判断し、対応するパターンを出力する。
【０２２１】
ＥC1＞０．０００５・ＨＬ１、かつＥC1＞２・ＥC2、かつＥC1＞ＥC3、かつＥC1＞ＥC4の場合、“状態５”であると判断し、パターン５を出力する。
【０２２２】
ＥC2＞０．０００５・ＨＬ２、かつＥC2＞２・ＥC1、かつＥC2＞ＥC3、かつＥC2＞ＥC4の場合、“状態６”であると判断し、パターン６を出力する。
【０２２３】
ＥC4＞０．０００５・ＨＬ４、かつＥC4＞２・ＥC3、かつＥC4＞ＥC1、かつＥC4＞ＥC2の場合、“状態７”であると判断し、パターン７を出力する。
【０２２４】
ＥC3＞０．０００５・ＨＬ３、かつＥC3＞２・ＥC4、かつＥC3＞ＥC1、かつＥC3＞ＥC2の場合、“状態８”であると判断し、パターン８を出力する。
【０２２５】
符号判定パラメータ算出手段１４０は、各音響フレーム単位で、上記判定結果に応じてパターン１〜パターン８のいずれかを出力する（Ｓ３０７）。上記いずれの群の条件も満たさない場合は、“状態０”であると判断し、パターン０を出力する（Ｓ３０８）。この“状態０”は、強度値Ｅ1〜Ｅ4が下限値Ｌｅｖ以下であることにより、当該フレームにパターン１〜パターン８の記録が行なわれなかったことを示す埋め込みエラーを示す場合と、ワードの区切りを示す場合とがある。“状態０”がワードの区切りを示すか否かは、後述するようにビットカウンタが８以上に達しているかどうかで判断する。
【０２２６】
また、上記判定の結果、パターン１〜パターン８のいずれかを出力した場合には、さらに、以下の〔数式２５〕に従って位相判定テーブルＳ（ｐ）の更新を行う（Ｓ３０９）。
【０２２７】
〔数式２５〕
“状態１”であると判断し、パターン１を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC1＋ＥC3
“状態２”であると判断し、パターン２を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC2＋ＥC4
“状態３”であると判断し、パターン３を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC1＋ＥC4
“状態４”であると判断し、パターン４を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋ＥC2＋ＥC3
“状態５”であると判断し、パターン５を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋２・ＥC1
“状態６”であると判断し、パターン６を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋２・ＥC2
“状態７”であると判断し、パターン７を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋２・ＥC4
“状態８”であると判断し、パターン８を出力した場合、Ｓ（ｐ）←Ｓ（ｐ）＋２・ＥC3
【０２２８】
続いて、符号判定パラメータ算出手段１４０は、候補符号テーブルに、最適位相となる候補を保存する（Ｓ３１０）。具体的には、位相判定テーブルに記録されているＳ（ｐ）の値が最大となる位相番号ｐの値、前記Ｓ３０７、Ｓ３０８により判定された９通りのいずれかの符号、その音響フレームについての上記〔数式２４〕に従った処理を実行することにより算出した、低周波数成分に対応するＥC1＋ＥC3、ＥC2＋ＥC4、ＥC1＋ＥC4、ＥC2＋ＥC3、２・ＥC1、２・ＥC2、２・ＥC4、２・ＥC3のいずれかを最適位相の候補として候補符号テーブルに保存する。
【０２２９】
続いて、全ての位相番号ｐに対応する処理を終えたかどうかを判定する（Ｓ３１１）。これは、ある基準フレームに対して全ての位相変更フレームの処理を行ったかどうかを判定している。本実施形態では、ｐが０〜５までの値をとるので、６回分処理していない場合は、処理していた音響フレームから所定サンプル数ずらして、位相の異なる音響フレームを設定し、Ｓ３０４に戻って処理を繰り返す。なお、ｐ＝０の場合が基準フレームであり、ｐ＝１〜５の場合が位相変更フレームである。全ての位相番号ｐに対応する処理を終えた場合は、候補保存テーブルに記録されている位相番号ｐに対応する位相が最適位相であると判定し、候補保存テーブルに記録されている符号を出力する（Ｓ３１２）。
【０２３０】
再び図１４のフローチャートに戻って説明する。Ｓ５０２による処理の結果、パターン１〜パターン８に相当する符号が出力された場合には、平均符号レベルのパラメータの更新処理を行う（Ｓ５０３）。この処理は、図１０におけるＳ５０３とほぼ同様の処理である。具体的には、平均符号レベルＨＬ１〜ＨＬ８算出の際の分子となる積算値ｖ１〜ｖ８に、それぞれＥC1＋ＥC3、ＥC2＋ＥC4、ＥC1＋ＥC4、ＥC2＋ＥC3、２・ＥC1、２・ＥC2、２・ＥC4、２・ＥC3のいずれかを加算して積算値ｖ１〜ｖ８を更新し、分母となるフレーム数ｎ１〜ｎ８にそれぞれ１を加算してフレーム数ｎ１〜ｎ８を更新することにより行う。ｎ１〜ｎ８はあらかじめ設定したｎmax（例えば１００）を超えないように設定する。
【０２３１】
続いて、非符号カウンタの初期化処理を行う（Ｓ５０４）。具体的には、上記Ｓ５００の初期化処理における処理と同様、非符号カウンタＮｎ＝０と設定する。さらに、出力されたパターンに対応する３ビットをバッファに保存する（Ｓ５０５）。次に、ビットカウンタを“３”だけカウントアップする（Ｓ５０６）。そして、Ｓ５００に戻り、初期化処理を行う。
【０２３２】
一方、Ｓ５０２による処理の結果、パターン０が出力された場合には、非符号カウンタのカウントアップ処理を行う（Ｓ５０７）。具体的には、非符号カウンタＮｎの値に１を加算する。そして、非符号カウンタＮｎの値がｎmax以上である場合は、Ｓ５００に戻って初期化処理を行う。非符号カウンタＮｎの値がｎmax未満である場合は、ビットカウンタが８以上であるかどうかを判断し、８未満である場合は、パターン０は、ワードの区切りではなく埋め込みエラーを示す符号と判断し、現在のビットカウンタ値を維持してＳ５０１に戻って符号抽出処理を継続する。ビットカウンタが８以上である場合は、パターン０は、ワードの区切りを示すと判断できるので、バッファに記録された１ワード分のデータを、付加情報抽出手段１６０が出力する（Ｓ５０８）。そして、ビットカウンタを０に初期化する（Ｓ５０９）。図１４に示す処理を各基準フレームに対して実行することにより、付加情報が抽出されることになる。Ｓ５０１において全ての基準フレームが抽出されたと判断された場合には、処理を終了する。
【０２３３】
上記Ｓ５０８の処理において、付加情報抽出手段１６０は、まず、符号判定パラメータ算出手段１４０により出力された値のうち、パターン０を区切り位置として、その次の値を先頭と仮定して、各パターンに対応する３ビットまたは２ビットのパターンに対応させて、ビット配列を作成する。続いて、パターン０を抽出した際に、ビット配列のビットカウンタが８未満であれば、パターン０は埋め込みエラーを示すものと判断し、現状のビットカウンタの値を維持してビット配列の作成を継続する。ビット配列のビットカウンタが８以上であれば、パターン０はワード（１バイト）の区切りを示すものと判断し、ビット配列の最後の８ビットを、所定の規則により変換して意味のある付加情報として抽出する。ここで、８ビットを超える場合は、データの抽出処理を開始する直後に発生しやすく、パターン０を先頭と誤判断してビットカウンタを初期化した場合に発生する。所定の規則としては、情報を埋め込む者が意図した情報が受け取った者に認識可能な状態とできるものであれば、さまざまな規則が適用できるが、本実施形態では、文字情報として認識するための規則としている。すなわち、付加情報抽出手段１６０は、符号判定パラメータ算出手段１４０が判定し、符号出力手段１５０から出力される符号を１バイト（８ビット）単位で認識し、これを設定されたコード体系に従って文字情報を認識する。このようにして得られた文字情報は、表示装置（図示省略）の画面に表示出力される。
【０２３４】
（３．３．信号成分が小さくても情報の埋め込みを可能とする手法）
ここまで、説明してきた処理においては、上記Ｅ1〜Ｅ4が所定値より大きいことが必要となり、上記Ｅ1〜Ｅ4が所定値以下の場合には、情報の埋め込みを行うことができない。そこで、元の信号の低周波成分が小さくても、信号の埋め込みを可能とする手法について説明する。
【０２３５】
この場合、図１に示した埋め込み装置における情報の埋め込み処理は、図１６のフローチャートに従って行われるが、Ｅ1〜Ｅ4がレベル下限値Ｌｅｖ以下となることがなくなるため、Ｓ４０５において低周波成分変更手段３０がレベルの判定を行わない。これは、この処理では、信号レベルが小さくても強制的に情報を埋め込むこととしているため、情報の埋め込みが不可能な信号レベルが小さい部分が存在するかどうかを判断する必要がないからである。
【０２３６】
したがって、Ｓ４０５における状態１〜状態８に設定する処理としては、まず、上記〔数式２２〕に従って算出される固定値Ｖを、低周波成分の強度として設定する。
【０２３７】
そして、状態１〜状態８のいずれかとする場合は、上記〔数式１０〕〔数式１１〕等に従った処理におけるＡｌ´（1,ｊ）、Ｂｌ´（1,ｊ）、Ａｌ´（3,ｊ）、Ｂｌ´（3,ｊ）の算出の際、Ｅ（１,ｊ）に代えて、上記〔数式２２〕で算出される固定値Ｖを用いる。
【０２３８】
上記のように、周波数成分が小さい場合に情報を埋め込んだ場合であっても、抽出側の、音響信号からの情報の抽出装置の構成は図９と同一であり、処理動作は図１４のフローチャートに従ったものと同一である。
【０２３９】
（４．第４の実施形態）
次に、第４の実施形態について説明する。第１の実施形態〜第３の実施形態では、それぞれ６ビット強、２ビット、３ビットの情報を埋め込むようにしたが、第４の実施形態では、図１７、図１８に示すように、音響フレームの低周波成分を１６の状態に変更し、４ビットの情報を埋め込むことを特徴とする。
【０２４０】
図１７、図１８に示す各音響フレームにおいても、図３、図１２、図１５と同様、横軸は時間方向、縦軸は周波数方向を示している。また、網掛けされた部分は、低周波成分が存在している部分を示し、網掛けが濃いほど成分強度が強いことを示している。第４の実施形態において、図１７（ａ）に示すような原状態の低周波成分に対して、パターン０を埋め込む場合、Ｌ-chの信号の低周波成分を全て除去し、除去した成分と同等の成分をＲ-chの信号の低周波成分に加算して図１７（ｂ）に示すような“状態０”に変更する。図１７においては、第１窓関数により得られる前部において縦軸の周波数方向が５つに区分されており、第３窓関数により得られる後部において縦軸の周波数方向が４つに区分されている。前部、後部のいずれにおいても、最下部に示すＧ１、Ｇ２はギャップ領域である。さらに、前部においては、最上部にギャップ領域Ｇ１０が設けられている。これらのギャップ領域は、抽出対象であるＬ-chの信号においては、常に成分が除去され、除去された成分と同等の成分がＲ-chの信号の低周波成分に加算される。最下部にギャップ領域を設けることにより、埋め込み可能な低周波成分の上限を高くすることができる。
【０２４１】
本実施形態で、パターン１を埋め込む場合は、図１７（ｃ）に示すように、Ｌ-ch信号のスペクトル集合ＳＰ１、ＳＰ４、ＳＰ６の強度を強め、スペクトル集合ＳＰ２、ＳＰ３、ＳＰ５の強度を弱める。そして、Ｒ-ch信号の対応する成分については、Ｌ-ch信号を補足するように変更して“状態１”とする。パターン２を埋め込む場合は、図１７（ｄ）に示すように、Ｌ-ch信号のスペクトル集合ＳＰ２、ＳＰ３、ＳＰ６の強度を強め、スペクトル集合ＳＰ１、ＳＰ４、ＳＰ５の強度を弱める。そして、Ｒ-ch信号の対応する成分については、Ｌ-ch信号を補足するように変更して“状態２”とする。
【０２４２】
パターン３〜パターン１６を埋め込む場合も、同様にして、各領域の低周波成分の強度を図１７（ｅ）〜（ｊ）、図１８（ａ）〜（ｈ）に示すように変更する処理を行う。
【０２４３】
第４の実施形態では、図１７（ｂ）〜（ｊ）、図１８（ａ）〜（ｈ）に示すような１７個の状態に低周波成分を変更することにより、情報の埋め込みを行っている。１７個の状態のうち、１つは、埋め込むことができない状態におけるエラー処理に用いるものであるので、実質埋め込むことができるのは１６個の状態、すなわち、４ビットに相当する。したがって、本実施形態では、１音響フレームに対して４ビットの情報が埋め込み可能となる。
【０２４４】
（４．１．埋め込み装置）
第４の実施形態においても、装置構成は図３に示したものと同様であるが、主に低周波成分変更手段３０の内容が異なっている。具体的には、低周波成分変更手段３０は、Ａタイプの音響フレームについて、付加情報読込手段７０が作成したビット配列に応じて、低周波成分の割合を変更する処理を行うが、第４の実施形態では、ビット配列を４ビットずつ読み込み、１音響フレームに対して４ビットの情報を埋め込む。埋め込まれる４ビットのパターンは、“００００”“０００１”“００１０”“００１１” “０１００”“０１０１”“０１１０”“０１１１” “１０００”“１００１”“１０１０”“１０１１” “１１００”“１１０１”“１１１０”“１１１１”の１６通りがある。第４の実施形態では、これらをパターン１〜パターン１６と定義する。この際、“００００”〜“１１１１”の１６通りのうち、いずれをパターン１〜パターン１６と定義しても良い。抽出側において、埋め込み側で埋め込まれた４ビットの配列が特定できれば良いためである。したがって、この定義は、埋め込み側と抽出側で一致している必要がある。
【０２４５】
そして、低周波成分変更手段３０は、このパターン１〜パターン１６に応じて、低周波成分を状態１〜状態１６のいずれかに変更する。具体的には、まず、低周波成分変更手段３０は、上記〔数式５〕により求めた左チャンネルの実部Ａｌ（１，ｊ）、Ａｌ（３，ｊ）、虚部Ｂｌ（１，ｊ）、Ｂｌ（３，ｊ）、右チャンネルの実部Ａｒ（１，ｊ）、Ａｒ（３，ｊ）、虚部Ｂｒ（１，ｊ）、Ｂｒ（３，ｊ）を利用して、以下の〔数式２７〕により、強度値Ｅ1〜Ｅ6を算出する。この強度値Ｅ1〜Ｅ6は、第１の実施形態におけるものとは異なっている。上述のように、Ｅ1〜Ｅ8、ＥC1〜ＥC8、ＨＬ１〜ＨＬ７０等の各変数は、各実施形態で独立しており、同一名の変数であっても、算出手法が異なる。ただし、本明細書で用いられる数式については、明細書全体を通じて統一されている。
【０２４６】
〔数式２７〕
Ｅ1＝Σj=m,m+P-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2＋Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝・Ｆ（ｊ−m）・Ｃ
Ｅ2＝Σj=m+d,m+d+P-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2＋Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝・Ｆ（ｊ−m−ｄ）・Ｃ
Ｅ3＝Σj=m+p,m+2P-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2＋Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝・Ｆ（ｊ−m−P）・Ｃ
Ｅ4＝Σj=m+d+p,m+d+2P-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2＋Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝・Ｆ（ｊ−m−ｄ−P）・Ｃ
Ｅ5＝Σj=m+2p,m+3P-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2＋Ａｒ（１，ｊ）2＋Ｂｒ（１，ｊ）2｝・Ｆ（ｊ−m−２P）・Ｃ
Ｅ6＝Σj=m+d+2p,m+d+3P-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2＋Ａｒ（３，ｊ）2＋Ｂｒ（３，ｊ）2｝・Ｆ（ｊ−m−ｄ−２P）・Ｃ
【０２４７】
上記〔数式２７〕において、ｍは低周波数帯の下限の成分の番号、Ｍは低周波数帯の上限の成分の番号であり、Ｐ＝（Ｍ−ｍ）／３である。なお、Ｐが整数にならない場合、切捨て処理を行う。ｍ＝１５、Ｍ＝４０と設定すると、Ｐ＝８となる。上記〔数式２７〕により算出されたＥ1〜Ｅ6は音響フレームの所定の範囲におけるスペクトル集合の成分強度の強度値を示すことになる。続いて、この強度値Ｅ1〜Ｅ6がレベル下限値Ｌｅｖより大きいかどうかの判定を行う。レベル下限値Ｌｅｖは、音響信号Ｘｌ（ｉ）、Ｘｒ（ｉ）の振幅最大値が１に正規化されており、Ｍ＝４０に設定されている場合、０．２５に設定する。
【０２４８】
Ｅ1、Ｅ4、Ｅ6がいずれもレベル下限値Ｌｅｖより大きく、埋め込むべき情報が“パターン１”である場合、上記〔数式１０〕の規則に従った処理を実行することにより、低周波成分の状態を“状態１”、すなわち、図１７（ｃ）に示したような状態に変更する。ここで、Ｅ1、Ｅ4、Ｅ6がいずれもレベル下限値Ｌｅｖより大きいことを条件とするのは、Ｅ1、Ｅ4、Ｅ6は、それぞれ前部の下位低周波成分の強度、後部の中位低周波成分の強度、後部の下位低周波成分の強度に対応しており、図１７（ｃ）に示すように、“状態１”とする場合は、これらに所定の強度が必要とされるためである。
【０２４９】
同様にして、“パターン２”〜“パターン１６”を埋め込む場合も、上記〔数式１０〕〔数式１１〕等と同様の規則に従った別の数式を実行することにより、低周波成分の状態を“状態２”〜“状態１６”、すなわち、図１７（ｄ）〜（ｊ）、図１８（ａ）〜（ｈ）に示したような状態に変更する。
【０２５０】
上記のような処理を実行し、低周波成分の状態を“状態１”〜“状態１６”に変更した場合、いずれの場合であっても、さらに上記〔数式１２〕等に従った処理を実行し、最低周波数帯におけるギャップ領域Ｇ１、Ｇ２、上位低周波数帯の高周波側にギャップ領域Ｇ１０を設ける。また、Ｌ-chにおいて時間的に中央となる部分については、全て除去する。
【０２５１】
埋め込まれる側の低周波成分の強度が小さすぎると、信号を変化させても、その変化を抽出側で検出することができない。そこで、このような場合には、付加情報が埋め込まれている音響フレームとの違いを明確にするため、上記〔数式１３〕に従った処理を実行し、その低周波成分を除去し、“状態０”とする。これは、図１７（ｂ）に示すような状態である。
【０２５２】
また、第４の実施形態においても第１〜第３の実施形態と同様、低周波成分変更手段３０は、Ｂタイプの音響フレームについては、上記〔数式１４〕に従った処理を実行し、常にその低周波成分を除去する。低周波成分変更手段３０により上記のような処理が行われたら、周波数逆変換手段４０、改変音響フレーム出力手段５０については、第１〜第３の実施形態と同様の処理が行われる。
【０２５３】
次に、第４の実施形態における音響信号に対する情報の埋め込み装置の処理の全体的な流れについて説明する。第４の実施形態においても、基本的な流れは、第２の実施形態における図１３に示したフローチャートと同じである。しかし、第４の実施形態では、パターン１〜パターン１６が出力されるため、各ステップにおいて実行される処理が若干異なっている。特に第２の実施形態と異なるのは、Ｓ４０３、１０５の部分である。第４の実施形態では、低周波成分変更手段３０が、レジスタに保持された１ワードから４ビットを読み込む処理を行う（Ｓ４０３）。すなわち、第３の実施形態では、１ワードとしてレジスタに８ビットが保持されているため、常に４ビットずつ読み込まれる。
【０２５４】
Ｓ４０４において音響フレーム読込手段１０が音響フレームを読み込んだ後、周波数変換手段２０および低周波成分変更手段３０が、音響フレームの低周波成分の状態を“状態１”〜“状態１６”のいずれかに変更する処理を行う（Ｓ４０５）。まず、第１の実施形態と同様、周波数変換手段２０が、音響フレームに対して窓関数Ｗ（１，ｉ）、Ｗ（２，ｉ）、Ｗ（３，ｉ）を用いて、上記〔数式５〕に従った処理を行って、フレームスペクトルを得る。
【０２５５】
続いて、低周波成分変更手段３０は、上記〔数式２７〕によりＥ1〜Ｅ6を算出する。そして、付加情報読込手段７０から受け取ったパターン１〜パターン１６に応じて上記〔数式１０〕〔数式１１〕等と同様の規則に従った別の数式に従った処理を実行し、低周波成分の状態を“状態１”〜“状態１６”のいずれかに変更する。
【０２５６】
Ｓ４０５において、“状態１”〜“状態１６”のいずれにも変更することができない場合は、低周波成分を“状態０”とする処理を行う（Ｓ４０６）。具体的には、上記〔数式１３〕に従った処理を実行することになる。“状態１”〜“状態１６” のいずれにも変更することができない場合とは、埋め込むべきパターンに対応する強度値のいずれかが、レベル下限値Ｌｅｖ以下となっている場合である。例えば、パターン１を埋め込む場合、Ｅ1、Ｅ4、Ｅ6がいずれもレベル下限値Ｌｅｖより大きい必要があるため、Ｅ1、Ｅ4、Ｅ6のいずれかがＬｅｖ以下である場合は、Ｓ４０６に進むことになる。
【０２５７】
上記〔数式１３〕に従った処理を実行することにより、左チャンネルのフレームスペクトルの低周波数成分は、スペクトル集合ＳＰ１〜ＳＰ６全てにおいて、“０” で同一となる。なお、上記〔数式１３〕においては、ｊ＝０〜Ｍ−１の各成分に対してＡｌ´（ｊ）＝Ｂｌ´（ｊ）＝０としているが、抽出側において、“状態１”〜“状態１６”のいずれでもないことを認識可能とすることを目的としているため、十分小さな値であれば、必ずしも０とする必要はない。また、必ずしも６つのスペクトル集合の各成分の値が同一である必要はなく、差が小さければ良い。
【０２５８】
次に、第１〜第３の実施形態と同様、周波数逆変換手段４０が、上記Ｓ４０５、Ｓ４０６の処理により各窓成分のスペクトル集合間の割合が変更されたフレームスペクトルを周波数逆変換して改変音響フレームを得る処理を行う（Ｓ４０７）。
【０２５９】
改変音響フレーム出力手段５０は、得られた改変音響フレームを順次出力ファイルに出力する。こうして１つの音響フレームに対する処理を終えたら、状態０に設定した場合には、音響フレーム読込手段１０が、次の音響フレームを読み込む（Ｓ４０４）。一方、状態１〜状態１６のいずれかに設定した場合には、低周波成分変更手段３０がビット配列中の次の４ビットを読み込む（Ｓ４０３）。以上のような処理を音響信号の両チャンネルの全サンプルに渡って実行していく。
【０２６０】
（４．２．抽出装置）
第４の実施形態においても、装置構成は図９に示したものと同様であるが、主に符号判定パラメータ算出手段１４０の内容が異なっている。具体的には、符号判定パラメータ算出手段１４０は、生成されたフレームスペクトルから所定の周波数以下に相当する各低周波強度データを抽出し、各成分に対応した各低周波強度データの強度値ＥC1〜ＥC6を以下の〔数式２８〕に基づいて算出し、この強度値ＥC1〜ＥC6を符号判定パラメータとし、この符号判定パラメータＥC1〜ＥC6の比率等に基づいて、所定の状態であると判断する機能を有している。以下の〔数式２８〕は上記〔数式２７〕において右チャンネル成分を削除したものとなっている。
【０２６１】
〔数式２８〕
ＥC1＝Σj=m,…,m+P-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝・Ｆ（ｊ−m）・Ｃ
ＥC2＝Σj=m+d,…,m+d+P-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝・Ｆ（ｊ−m−ｄ）・Ｃ
ＥC3＝Σj=m+P,…,m+2P-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝・Ｆ（ｊ−m−P）・Ｃ
ＥC4＝Σj=m+d+P,…,m+d+2P-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝・Ｆ（ｊ−m−ｄ−P）・Ｃ
ＥC5＝Σj=m+2P,…,m+3P-1｛Ａｌ（１，ｊ）2＋Ｂｌ（１，ｊ）2｝・Ｆ（ｊ−m−２P）・Ｃ
ＥC6＝Σj=m+d+2P,…,m+d+3P-1｛Ａｌ（３，ｊ）2＋Ｂｌ（３，ｊ）2｝・Ｆ（ｊ−m−ｄ−２P）・Ｃ
【０２６２】
次に、第４の実施形態における音響信号からの情報の抽出装置の処理の全体的な流れについて説明する。第４の実施形態においても、基本的な流れは、図１４に示したフローチャートと同じである。しかし、各ステップにおいて実行される処理が若干異なっている。
【０２６３】
まず、本実施形態では、平均符号レベルＨＬ１〜ＨＬ１６、位相判定テーブルＳ（ｐ）、非符号カウンタＮｎを初期化する（Ｓ５００）。平均符号レベルＨＬ１〜ＨＬ１６の初期値は、第１、第２の実施形態と同様、０．１に設定されている。位相判定テーブルＳ（ｐ）、非符号カウンタＮｎについても第１〜第３の実施形態と同様である。
【０２６４】
利用者が抽出装置に対して、抽出装置としての起動の指示を行うと、音響信号入力手段１００が、流れている音楽を録音し、デジタル化してデジタル音響信号として入力する。続いて、基準フレーム獲得手段１１０が、音響信号入力手段１００から入力された音響信号から、所定数のサンプルで構成される音響フレームを基準フレームとして抽出する（Ｓ５０１）。
【０２６５】
続いて、周波数変換手段１３０、符号判定パラメータ算出手段１４０が、読み込んだ各音響フレームから、埋め込まれている情報を判定し、対応する符号を出力する（Ｓ５０２）。出力される情報の形式は、付加情報が埋め込まれる場合に対応するパターン１〜パターン１６の１６値、およびパターン０の計１７値の形式となる。
【０２６６】
ステップＳ５０２の符号判定処理の詳細については、図１１のフローチャートと同様となる。まず、周波数変換手段１３０が、第１〜第３の実施形態と同様、周波数変換を行った後（Ｓ４０１）、符号判定パラメータ算出手段１４０は、平均符号レベルＨＬ１〜ＨＬ１６の算出を行う（Ｓ４０２）。具体的には、過去“状態ｋ（ｋ＝１〜１６）”であると判断された音響フレームについてのＥＧｋの積算値であるｖｋを、過去“状態１”であると判断された音響フレームの数であるｎｋで除算することによりＨＬｋを算出する。
【０２６７】
続いて、符号判定パラメータ算出手段１４０は、候補符号テーブルの初期化を行う（Ｓ４０３）。候補符号テーブルには、１つの基準フレームおよび５個の位相変更フレームを特定する０〜５の位相番号および、この６個の音響フレームの状態から得られる１７値の符号を記録する。
【０２６８】
続いて、符号判定パラメータ算出手段１４０は、強度値ＥC1〜強度値ＥC6を用いて、低周波成分の状態がどのような状態であるか、すなわち、４ビットの値としてどのような値が埋め込まれていたかを判断する処理を行う（Ｓ４０４）。具体的には、まず、判断のための総和値ＥＧｋ（ｋ＝１〜１６）を以下の〔数式２９〕に従って算出し、このうちＥＧｋが最大となるｋを求める。
【０２６９】
〔数式２９〕
ＥＧ１＝ＥC1＋ＥC4＋ＥC6          ＥＧ２＝ＥC6＋ＥC3＋ＥC6
ＥＧ３＝ＥC2＋ＥC4＋ＥC5          ＥＧ４＝ＥC1＋ＥC4＋ＥC5
ＥＧ５＝ＥC1＋ＥC4＋ＥC5          ＥＧ６＝ＥC1＋ＥC3＋ＥC6
ＥＧ７＝ＥC1＋ＥC3＋ＥC5          ＥＧ８＝ＥC2＋ＥC4＋ＥC6
ＥＧ９＝ＥC1＋ＥC2＋ＥC3          ＥＧ１０＝ＥC1＋ＥC2＋ＥC4
ＥＧ１１＝ＥC1＋ＥC3＋ＥC4        ＥＧ１２＝ＥC2＋ＥC3＋ＥC4
ＥＧ１３＝ＥC3＋ＥC4＋ＥC5        ＥＧ１４＝ＥC3＋ＥC4＋ＥC6
ＥＧ１５＝ＥC3＋ＥC5＋ＥC6        ＥＧ１６＝ＥC4＋ＥC5＋ＥC6
【０２７０】
これにより値ｋが仮決定される。続いて、仮決定されたｋの値に応じて以下の１６群のうち、いずれかの群の判定処理を実行し、各群における全ての条件を満たす場合に、仮決定されていたｋを値ｋとして出力する（Ｓ４０７）。
【０２７１】
ｋ＝１の場合、ＥC1＞０．０００５・ＨＬ１、かつＥC4＞０．０００５・ＨＬ４、かつＥC6＞０．０００５・ＨＬ６、かつＥC1＞２・ＥC2、かつＥC4＞２・ＥC3、かつＥC6＞２・ＥC5であれば、パターン１を出力する。
【０２７２】
ｋ＝２の場合、ＥC2＞０．０００５・ＨＬ２、かつＥC3＞０．０００５・ＨＬ３、かつＥC6＞０．０００５・ＨＬ６、かつＥC2＞２・ＥC1、かつＥC3＞２・ＥC4、かつＥC6＞２・ＥC5であれば、パターン２を出力する。
【０２７３】
ｋ＝３の場合、ＥC2＞０．０００５・ＨＬ２、かつＥC4＞０．０００５・ＨＬ４、かつＥC5＞０．０００５・ＨＬ５、かつＥC2＞２・ＥC1、かつＥC4＞２・ＥC3、かつＥC5＞２・ＥC6であれば、パターン３を出力する。
【０２７４】
ｋ＝４の場合、ＥC2＞０．０００５・ＨＬ２、かつＥC3＞０．０００５・ＨＬ３、かつＥC5＞０．０００５・ＨＬ５、かつＥC2＞２・ＥC1、かつＥC3＞２・ＥC4、かつＥC5＞２・ＥC6であれば、パターン４を出力する。
【０２７５】
ｋ＝５の場合、ＥC1＞０．０００５・ＨＬ１、かつＥC4＞０．０００５・ＨＬ４、かつＥC5＞０．０００５・ＨＬ５、かつＥC1＞２・ＥC2、かつＥC4＞２・ＥC3、かつＥC5＞２・ＥC6であれば、パターン５を出力する。
【０２７６】
ｋ＝６の場合、ＥC1＞０．０００５・ＨＬ１、かつＥC3＞０．０００５・ＨＬ３、かつＥC6＞０．０００５・ＨＬ６、かつＥC1＞２・ＥC2、かつＥC3＞２・ＥC4、かつＥC6＞２・ＥC5であれば、パターン６を出力する。
【０２７７】
ｋ＝７の場合、ＥC1＞０．０００５・ＨＬ１、かつＥC3＞０．０００５・ＨＬ３、かつＥC5＞０．０００５・ＨＬ５、かつＥC1＞２・ＥC2、かつＥC3＞２・ＥC4、かつＥC5＞２・ＥC6であれば、パターン７を出力する。
【０２７８】
ｋ＝８の場合、ＥC2＞０．０００５・ＨＬ２、かつＥC4＞０．０００５・ＨＬ４、かつＥC6＞０．０００５・ＨＬ６、かつＥC2＞２・ＥC1、かつＥC4＞２・ＥC3、かつＥC6＞２・ＥC5であれば、パターン８を出力する。
【０２７９】
ｋ＝９の場合、ＥC1＞０．０００５・ＨＬ１、かつＥC2＞０．０００５・ＨＬ２、かつＥC3＞０．０００５・ＨＬ３、かつＥC1＞２・ＥC6、かつＥC2＞２・ＥC5、かつＥC3＞２・ＥC4であれば、パターン９を出力する。
【０２８０】
ｋ＝１０の場合、ＥC1＞０．０００５・ＨＬ１、かつＥC2＞０．０００５・ＨＬ２、かつＥC4＞０．０００５・ＨＬ４、かつＥC1＞２・ＥC6、かつＥC2＞２・ＥC5、かつＥC4＞２・ＥC3であれば、パターン１０を出力する。
【０２８１】
ｋ＝１１の場合、ＥC1＞０．０００５・ＨＬ１、かつＥC3＞０．０００５・ＨＬ３、かつＥC4＞０．０００５・ＨＬ４、かつＥC1＞２・ＥC2、かつＥC3＞２・ＥC6、かつＥC4＞２・ＥC5であれば、パターン１１を出力する。
【０２８２】
ｋ＝１２の場合、ＥC2＞０．０００５・ＨＬ２、かつＥC3＞０．０００５・ＨＬ３、かつＥC4＞０．０００５・ＨＬ４、かつＥC2＞２・ＥC1、かつＥC3＞２・ＥC6、かつＥC4＞２・ＥC5であれば、パターン１２を出力する。
【０２８３】
ｋ＝１３の場合、ＥC3＞０．０００５・ＨＬ３、かつＥC4＞０．０００５・ＨＬ４、かつＥC5＞０．０００５・ＨＬ５、かつＥC3＞２・ＥC2、かつＥC4＞２・ＥC1、かつＥC5＞２・ＥC6であれば、パターン１３を出力する。
【０２８４】
ｋ＝１４の場合、ＥC3＞０．０００５・ＨＬ３、かつＥC4＞０．０００５・ＨＬ４、かつＥC6＞０．０００５・ＨＬ６、かつＥC3＞２・ＥC2、かつＥC4＞２・ＥC1、かつＥC6＞２・ＥC5であれば、パターン１４を出力する。
【０２８５】
ｋ＝１５の場合、ＥC3＞０．０００５・ＨＬ３、かつＥC5＞０．０００５・ＨＬ５、かつＥC6＞０．０００５・ＨＬ６、かつＥC3＞２・ＥC4、かつＥC5＞２・ＥC1、かつＥC6＞２・ＥC2であれば、パターン１５を出力する。
【０２８６】
ｋ＝１６の場合、ＥC4＞０．０００５・ＨＬ４、かつＥC5＞０．０００５・ＨＬ５、かつＥC6＞０．０００５・ＨＬ６、かつＥC4＞２・ＥC3、かつＥC5＞２・ＥC2、かつＥC6＞２・ＥC1であれば、パターン１６を出力する。
【０２８７】
符号判定パラメータ算出手段１４０は、各音響フレーム単位で、上記判定結果に応じてパターン１〜パターン１６のいずれかを出力する（Ｓ４０７）。上記いずれの群の条件も満たさない場合は、“状態０”であると判断し、パターン０を出力する（Ｓ４０８）。
【０２８８】
また、上記判定の結果、パターン１〜パターン１６のいずれかを出力した場合には、さらに、以下の〔数式３０〕に従って位相判定テーブルＳ（ｐ）の更新を行う（Ｓ４０９）。
【０２８９】
〔数式３０〕
“状態ｋ”であると判断し、パターンｋを出力した場合
Ｓ（ｐ）←Ｓ（ｐ）＋ＥＧｋ／３
【０２９０】
続いて、符号判定パラメータ算出手段１４０は、候補符号テーブルに、最適位相となる候補を保存し（Ｓ４１０）、全ての位相番号ｐに対応する処理を終えたかどうかを判定する（Ｓ４１１）。全ての位相番号ｐに対応する処理を終えた場合は、候補保存テーブルに記録されている位相番号ｐに対応する位相が最適位相であると判定し、候補保存テーブルに記録されている符号を出力する（Ｓ４１２）。
【０２９１】
再び図１４のフローチャートに戻って説明する。Ｓ５０２による処理の結果、パターン１〜パターン１６に相当する符号が出力された場合には、平均符号レベルのパラメータの更新処理を行う（Ｓ５０３）。具体的には、平均符号レベルＨＬ１〜ＨＬ１６算出の際の分子となる積算値ｖ１〜ｖ１６に、それぞれＥＧ１〜ＥＧ１６を加算して積算値ｖ１〜ｖ１６を更新し、分母となるフレーム数ｎ１〜ｎ１６にそれぞれ１を加算してフレーム数ｎ１〜ｎ１６を更新することにより行う。ｎ１〜ｎ１６はあらかじめ設定したｎmax（例えば１００）を超えないように設定する。
【０２９２】
続いて、非符号カウンタの初期化処理を行う（Ｓ５０４）。さらに、出力されたパターンに対応する４ビットをバッファに保存する（Ｓ５０５）。次に、ビットカウンタを“４”だけカウントアップする（Ｓ５０６）。そして、Ｓ５００に戻り、初期化処理を行う。
【０２９３】
一方、Ｓ５０２による処理の結果、パターン０が出力された場合には、非符号カウンタのカウントアップ処理を行う（Ｓ５０７）。具体的には、非符号カウンタＮｎの値に１を加算する。そして、非符号カウンタＮｎの値がｎmax以上である場合は、Ｓ５００に戻って初期化処理を行う。非符号カウンタＮｎの値がｎmax未満である場合は、ビットカウンタが８以上であるかどうかを判断し、８未満である場合は、パターン０は、ワードの区切りではなく埋め込みエラーを示す符号と判断し、現在のビットカウンタ値を維持してＳ５０１に戻って符号抽出処理を継続する。ビットカウンタが８以上である場合は、パターン０は、ワードの区切りを示すと判断できるので、バッファに記録された１ワード分のデータを、付加情報抽出手段１６０が出力する（Ｓ５０８）。そして、ビットカウンタを０に初期化する（Ｓ５０９）。図１０に示す処理を各基準フレームに対して実行することにより、付加情報が抽出されることになる。Ｓ５０１において全ての基準フレームが抽出されたと判断された場合には、処理を終了する。
【０２９４】
上記Ｓ５０８の処理において、付加情報抽出手段１６０は、まず、符号判定パラメータ算出手段１４０により出力された値のうち、パターン０を区切り位置として、その次の値を先頭と仮定して、各値に対応する４ビットのパターンに対応させて、ビット配列を作成する。続いて、パターン０を抽出した際に、ビット配列のビットカウンタが８未満であれば、パターン０は埋め込みエラーを示すものと判断し、現状のビットカウンタの値を維持してビット配列の作成を継続する。ビット配列のビットカウンタが８以上であれば、パターン０はワード（１バイト）の区切りを示すものと判断し、ビット配列の最後の８ビットを、所定の規則により変換して意味のある付加情報として抽出する。ここで、８ビットを超える場合は、データの抽出処理を開始する直後に発生しやすく、パターン０を先頭と誤判断してビットカウンタを初期化した場合に発生する。所定の規則としては、情報を埋め込む者が意図した情報が受け取った者に認識可能な状態とできるものであれば、さまざまな規則が適用できるが、本実施形態では、文字情報として認識するための規則としている。すなわち、付加情報抽出手段１６０は、符号判定パラメータ算出手段１４０が判定し、符号出力手段１５０から出力される符号を１バイト（８ビット）単位で認識し、これを設定されたコード体系に従って文字情報を認識する。このようにして得られた文字情報は、表示装置（図示省略）の画面に表示出力される。
【０２９５】
（４．３．信号成分が小さくても情報の埋め込みを可能とする手法）
ここまで、説明してきた処理においては、上記Ｅ1〜Ｅ6が所定値より大きいことが必要となり、上記Ｅ1〜Ｅ6が所定値以下の場合には、情報の埋め込みを行うことができない。そこで、元の信号の低周波成分が小さくても、信号の埋め込みを可能とする手法について説明する。
【０２９６】
この場合、図３に示した埋め込み装置における情報の埋め込み処理は、図１３のフローチャートに従って行われるが、Ｅ1〜Ｅ6がレベル下限値Ｌｅｖ以下となることがなくなるため、Ｓ４０５において低周波成分変更手段３０がレベルの判定を行わない。これは、この処理では、信号レベルが小さくても強制的に情報を埋め込むこととしているため、情報の埋め込みが不可能な信号レベルが小さい部分が存在するかどうかを判断する必要がないからである。
【０２９７】
したがって、Ｓ４０５における状態１〜状態１６に設定する処理としては、まず、以下の〔数式３１〕に従って算出される固定値Ｖを、低周波成分の強度として設定する。
【０２９８】
〔数式３１〕
Ｖ＝｛０．２５・Ｌｅｖ／（３Ｐ−３）｝1/2
【０２９９】
そして、状態１〜状態１６のいずれかとする場合は、上記〔数式１０〕〔数式１１〕等に従った処理におけるＡｌ´（1,ｊ）、Ｂｌ´（1,ｊ）、Ａｌ´（3,ｊ）、Ｂｌ´（3,ｊ）の算出の際、Ｅ（１,ｊ）に代えて、上記〔数式３１〕で算出される固定値Ｖを用いる。
【０３００】
上記のように、周波数成分が小さい場合に情報を埋め込んだ場合であっても、抽出側の、音響信号からの情報の抽出装置の構成は図９と同一であり、処理動作は図１４のフローチャートに従ったものと同一である。
【０３０１】
上記第１〜第４の実施形態で説明したように、本発明は、１音響フレームに埋め込むビット数に関わらず適用することが可能である。しかし、埋め込むビット数を多くすればするほど、１つのスペクトル集合の周波数範囲は狭くなり、わずかな位置ずれであっても抽出側において誤判定を起こしやすくなる。そのため、周波数帯をより多く設け、埋め込むビット数を多くした場合に、特に本発明は効果を有する。
【０３０２】
（５．周波数方向窓関数を利用しない場合）
以上、本発明の好適な実施形態について限定したが、本発明は上記実施形態に限定されず、種々の変形が可能である。例えば、上記第１〜第４の実施形態では、各スペクトル集合ＳＰ１〜ＳＰ８の強度を変更する際、周波数方向窓関数Ｆ（ｊ）を乗じるようにしたが、必ずしも窓関数Ｆ（ｊ）を利用する必要はない。ただし、窓関数Ｆ（ｊ）を利用しない場合は、各低周波数帯（スペクトル集合）の周波数範囲における上端と下端の成分も中央部分と同様の重みで処理されることになるため、他の低周波数帯との干渉が生じる場合がある。このため、窓関数Ｆ（ｊ）を利用しない場合は、各低周波数帯の間にギャップ領域を設けることが望ましい。
【０３０３】
ここで、図１９に、第１の実施形態において窓関数Ｆ（ｊ）を用いない場合の低周波成分の状態を１音響フレーム単位で示す。図１９に示す各音響フレームにおいても、横軸は時間方向、縦軸は周波数方向を示している。また、網掛けされた部分は、低周波成分が存在している部分を示し、網掛けが濃いほど成分強度が強いことを示している。
【０３０４】
第１の実施形態において窓関数を用いる場合の図３と対比すると、図１９では、各低周波数帯の間にもギャップ領域Ｇ３〜Ｇ８を設けている点が異なっている。ギャップ領域Ｇ３〜Ｇ８については、ギャップ領域Ｇ１、Ｇ２、Ｇ１０と同様、抽出対象であるＬ-chの信号においては、常に成分が除去され、除去された成分と同等の成分がＲ-chの信号の低周波成分に加算される。例えば、スペクトル集合ＳＰ３に着目してみると、窓関数Ｆ（ｊ）を使用しない場合、ＳＰ３の上端部分の成分が大きい場合、スペクトル集合ＳＰ５と干渉を起こす可能性がある。しかし、スペクトル集合ＳＰ３とＳＰ５の間に、成分を除去するギャップ領域Ｇ５が設けられているため、干渉が生じないようにすることができる。
【０３０５】
第２〜第４の実施形態においても、同様に、窓関数Ｆ（ｊ）を使用しないようにすることもできる。ただし、上述のように、各低周波数帯の間にギャップ領域を設けることが望ましい。
【０３０６】
このように、ギャップ領域を設けることにより、周波数方向窓関数Ｆ（ｊ）を使用しなくても、本発明は実施可能であるが、本発明は、埋め込み側においても抽出側においても、抽出するスペクトル集合が、音響フレームの前部と後部において所定周波数分だけずれており、適用する周波数方向窓関数Ｆ（ｊ）の周波数範囲もずれている。このため、埋め込み時に前部から抽出したスペクトル集合に対して、後部のスペクトル集合に対応する周波数方向窓関数Ｆ（ｊ）を抽出側で適用すると、不整合が生じ、位置ずれが発生していることが明瞭になる。
【図面の簡単な説明】
【０３０７】
【図１】音響信号に対する情報の埋め込み装置の機能ブロック図である。
【図２】本発明で用いる時間方向の窓関数Ｗを示す図である。
【図３】本発明第１の実施形態による低周波成分の変化の状態を示す図である。
【図４】ＡＳＣＩＩコードと７０通りのビットパターンの変換表を示す図である。
【図５】パターンの番号とビットパターンの対応表を示す図である。
【図６】本発明第１の実施形態による周波数成分全体の状態を示す図である。
【図７】本発明第１の実施形態で用いる周波数方向の窓関数Ｆを示す図である。
【図８】図１に示した装置の処理概要を示すフローチャートである。
【図９】本発明に係る音響信号からの情報の抽出装置の機能ブロック図である。
【図１０】図９に示した装置の処理概要を示すフローチャートである。
【図１１】図１０のＳ２０２の符号判定処理の詳細を示すフローチャートである。
【図１２】本発明第２の実施形態による低周波成分の変化の状態を示す図である。
【図１３】図１の装置の第２の実施形態による処理概要を示すフローチャートである。
【図１４】図９に示した装置の第２の実施形態による処理概要を示すフローチャートである。
【図１５】本発明第３の実施形態による低周波成分の変化の状態を示す図である。
【図１６】図１の装置の第３の実施形態の処理概要を示すフローチャートである。
【図１７】本発明第４の実施形態による低周波成分の変化の状態を示す図である。
【図１８】本発明第４の実施形態による低周波成分の変化の状態を示す図である。
【図１９】本発明第１の実施形態において窓関数Ｆ（ｊ）を用いない場合の低周波成分の変化の状態を示す図である。
【符号の説明】
【０３０８】
１０・・・音響フレーム読込手段
２０・・・周波数変換手段
３０・・・低周波成分変更手段
４０・・・周波数逆変換手段
５０・・・改変音響フレーム出力手段
６０・・・記憶手段
６１・・・音響信号記憶部
６２・・・付加情報記憶部
６３・・・改変音響信号記憶部
７０・・・付加情報読込手段
１００・・・音響信号入力手段
１１０・・・基準フレーム獲得手段
１２０・・・位相変更フレーム設定手段
１３０・・・周波数変換手段
１４０・・・符号判定パラメータ算出手段
１５０・・・符号出力手段
１６０・・・付加情報抽出手段
１７０・・・音響フレーム保持手段
【図１】
2008065052.tif 000003
【図２】
2008065052.tif 000004
【図３】
2008065052.tif 000005
【図４】
2008065052.tif 000006
【図５】
2008065052.tif 000007
【図６】
2008065052.tif 000008
【図７】
2008065052.tif 000009
【図８】
2008065052.tif 000010
【図９】
2008065052.tif 000011
【図１０】
2008065052.tif 000012
【図１１】
2008065052.tif 000013
【図１２】
2008065052.tif 000014
【図１３】
2008065052.tif 000015
【図１４】
2008065052.tif 000016
【図１５】
2008065052.tif 000017
【図１６】
2008065052.tif 000018
【図１７】
2008065052.tif 000019
【図１８】
2008065052.tif 000020
【図１９】
2008065052.tif 000021