(57)【特許請求の範囲】
【請求項１】
音声符号を含む受信されたパケットにおけるパケットエラー又はパケットロスの検出結果、および音声符号が復号されて得られた復号信号を外部から受け取り、パケットロスした部分に対応する復号信号について、パケットロスの隠蔽を行う隠蔽信号生成装置であって、
前記検出結果が正常とされたパケットに含まれていた音声符号から得られた復号信号を蓄積する復号信号蓄積部と、
前記検出結果が異常の場合、時間周波数領域表現された復号信号であって前記復号信号蓄積部により蓄積されている復号信号のパワー変化とパワースペクトルの性質変化の両方又は一方を検出し、当該検出結果を表す信号識別情報として、変化の開始に関する情報と変化の終了に関する情報の両方又は一方を出力する信号識別部と、
前記信号識別情報と、前記復号信号蓄積部により蓄積された復号信号とに基づいて、パケットロスした部分に対応する復号信号を補間するための隠蔽信号を生成する第一隠蔽信号生成部と、
を備える隠蔽信号生成装置。
【請求項２】
前記第一隠蔽信号生成部は、前記復号信号蓄積部において前記信号識別情報を用いて指定される範囲の復号信号を繰り返して得られる信号を、隠蔽信号として生成することを特徴とする請求項１に記載の隠蔽信号生成装置。
【請求項３】
前記第一隠蔽信号生成部は、前記復号信号蓄積部において前記信号識別情報を用いて指定される範囲の復号信号を繰り返した上でパワーを調整することで得られる信号を、隠蔽信号として生成することを特徴とする請求項１に記載の隠蔽信号生成装置。
【請求項４】
音声符号を含む受信されたパケットにおけるパケットエラー又はパケットロスの検出結果、および音声符号が復号されて得られた復号信号を外部から受け取り、パケットロスした部分に対応する復号信号について、パケットロスの隠蔽を行う隠蔽信号生成装置、により実行される隠蔽信号生成方法であって、
前記検出結果が正常とされたパケットに含まれていた音声符号から得られた復号信号を復号信号蓄積部に蓄積する復号信号蓄積ステップと、
前記検出結果が異常の場合、時間周波数領域表現された復号信号であって前記復号信号蓄積部により蓄積されている復号信号のパワー変化とパワースペクトルの性質変化の両方又は一方を検出し、当該検出結果を表す信号識別情報として、変化の開始に関する情報と変化の終了に関する情報の両方又は一方を出力する信号識別ステップと、
前記信号識別情報と、前記復号信号蓄積ステップにより蓄積された復号信号とに基づいて、パケットロスした部分に対応する復号信号を補間するための隠蔽信号を生成する第一隠蔽信号生成ステップと、
を備える隠蔽信号生成方法。
【請求項５】
コンピュータを、
音声符号を含む受信されたパケットにおけるパケットエラー又はパケットロスの検出結果が正常とされたパケットに含まれていた音声符号から復号により得られた復号信号を蓄積する復号信号蓄積部と、
前記検出結果が異常の場合、時間周波数領域表現された復号信号であって前記復号信号蓄積部により蓄積されている復号信号のパワー変化とパワースペクトルの性質変化の両方又は一方を検出し、当該検出結果を表す信号識別情報として、変化の開始に関する情報と変化の終了に関する情報の両方又は一方を出力する信号識別部と、
前記信号識別情報と、前記復号信号蓄積部により蓄積された復号信号とに基づいて、パケットロスした部分に対応する復号信号を補間するための隠蔽信号を生成する第一隠蔽信号生成部、
として機能させるための隠蔽信号生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ網や移動体通信網経由で音声パケットを伝送する際のエラー隠蔽に関するものであり、さらに詳しくは、エラー隠蔽のための隠蔽信号を生成する隠蔽信号生成装置、隠蔽信号生成方法および隠蔽信号生成プログラムに関する。
【背景技術】
【０００２】
音声・音響信号（以下「音声信号」と総称する）をＩＰ網や移動体通信において伝送する際には、音声信号をエンコードして少ないビット数で表現して音声パケットに分割し、その音声パケットを通信網経由で伝送する。通信網を通じて受け取られた音声パケットは、受信側のサーバ、ＭＣＵ、端末等において復号され、復号音声信号が得られる。
【０００３】
通信網を通じて音声パケットを伝送する際には、通信網の輻輳状態等に起因して、一部の音声パケットが失われる又は音声パケットに書き込まれた情報の一部に誤りが生じるといった現象（いわゆるパケットロス）が起こりうる。そのような場合には、受信側において音声パケットを正しく復号することができないため、所望の復号音声信号を得ることが出来ない。また、パケットロスが生じた音声パケットに対応する復号音声信号は雑音として知覚されるため、受聴する人間に対して与える主観品質を著しく損なう。
【０００４】
周波数領域でのパケットロス隠蔽方法として、「改良された周波数領域におけるエラー隠蔽技術」に関する下記の特許文献１がある。これは、過去に正常に受信したパケットに含まれていた周波数領域（フーリエ級数）で表現された復号音声をバッファに蓄積し、パケットロスを検出した場合にはバッファに蓄積した復号音声から最適なゲインを推定して、当該最適なゲインを最も最近受信したパケットに含まれる復号音声に乗算することにより、パケットロスに対応する部分の信号を復元する手法である。
【０００５】
また、パケットロスにより失われた部分の音声・音響信号を補間するエラー隠蔽技術として、ITU-T  G.711  Appendix  I（非特許文献１）が知られている。これは、正常に受け取った復号音声・音響信号の一部をバッファに記憶しておき、パケットロスが起こった場合には、バッファからピッチ単位で波形を取り出して繰り返すことにより、失われた部分に対応する信号を合成する。
【０００６】
より高度なエラー隠蔽技術として、「隠蔽信号生成装置、隠蔽信号生成方法、隠蔽信号生成プログラム」に関する下記の特許文献２がある。当該発明は、過去に正常に受け取ったパケットを復号して得た信号について信号の定常性を常に監視し、定常性が認められる信号（以下「定常信号」という）についてはバッファに記録する。エラーが発生したときには、エラーが発生する直前の信号が定常信号であるかどうかを判定し、定常信号である場合にはバッファ中の定常信号について、信号をコピーする範囲を信号の定常性を表すパラメータを用いて決定して、失われた部分にコピーする手法である。通常、パケットロスが続いた場合に同一の波形を繰り返すことによりうなりのような雑音が発生するが、当該発明を用いると同一の波形の繰り返し回数を減らすことができるため、上記述べた雑音を低減することができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第３９９９８０７号公報
【特許文献２】特開２００８−２０３７８３号公報
【非特許文献】
【０００８】
【非特許文献１】ITU-T  G.711  Appendix  I
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記特許文献１の技術を含め従来の周波数領域でのパケットロス隠蔽は過去に正常に受信した復号信号を繰り返すことにより隠蔽信号を生成するが、繰り返しの単位が１フレームの信号となるため、取り出したフレームに母音と子音のように性質の異なる信号が混在する場合には、隠蔽された信号にも性質の異なる信号が混在する結果となり、十分な隠蔽効果を発揮できないという課題がある。
【００１０】
また、繰り返しの単位を１フレームに限定せず、柔軟に選択可能な技術として隠蔽信号の生成を行う特許文献２の技術では、性質の異なる信号が混在することをある程度避けることができるが、隠蔽信号の生成基準を信号の定常性およびピッチ周期に限定しており、パワーやスペクトルの変化などを用いて繰り返す波形を決定するといった柔軟な処理が困難である。また、当該発明は時間領域におけるパケットロス隠蔽方法に関する発明であるため、周波数領域あるいは時間周波数領域における音声符号化・復号装置と組み合わせるためには復号処理を行った上で時間領域の信号に変換する必要があり、演算量の観点から現実的ではない。
【００１１】
以上述べたとおり、バッファに蓄積した復号音声を用いて隠蔽信号を生成する際、パワーの変化やパワースペクトルの性質変化などに応じて柔軟に繰り返しの単位を求めて、隠蔽信号を生成することが困難である。特に、復号音声が周波数領域で表現されている場合には、繰り返しの単位を１フレームより短くすることができないので、性質が異なる信号が隠蔽信号に混在するのを避けるのが困難であった。
【００１２】
本発明は、上記課題を解決し、パケットロス隠蔽のための隠蔽信号の音質低下を防ぐことを目的とする。
【課題を解決するための手段】
【００１３】
本発明に係る隠蔽信号生成装置は、音声符号を含む受信されたパケットにおけるパケットエラー又はパケットロスの検出結果、および音声符号が復号されて得られた復号信号を外部から受け取り、パケットロスした部分に対応する復号信号について、パケットロスの隠蔽を行う隠蔽信号生成装置であって、前記検出結果が正常とされたパケットに含まれていた音声符号から得られた復号信号を蓄積する復号信号蓄積部と、前記検出結果が異常の場合、時間周波数領域表現された復号信号であって前記復号信号蓄積部により蓄積されている復号信号のパワー変化とパワースペクトルの性質変化の両方又は一方を検出し、当該検出結果を表す信号識別情報として、変化の開始に関する情報と変化の終了に関する情報の両方又は一方を出力する信号識別部と、前記信号識別情報と、前記復号信号蓄積部により蓄積された復号信号とに基づいて、パケットロスした部分に対応する復号信号を補間するための隠蔽信号を生成する第一隠蔽信号生成部と、を備えることを特徴とする。
【００１６】
第一隠蔽信号生成部は、前記復号信号蓄積部において信号識別情報を用いて指定される範囲の復号信号を繰り返して得られる信号を、隠蔽信号として生成してもよい。
【００１７】
また、第一隠蔽信号生成部は、前記復号信号蓄積部において信号識別情報を用いて指定される範囲の復号信号を繰り返した上でパワーを調整することで得られる信号を、隠蔽信号として生成してもよい。
【００１８】
ところで、前述した隠蔽信号生成装置に係る発明は、隠蔽信号生成方法に係る発明、および隠蔽信号生成プログラムに係る発明として捉えることができ、以下のように記述することができる。
【００１９】
本発明に係る隠蔽信号生成方法は、音声符号を含む受信されたパケットにおけるパケットエラー又はパケットロスの検出結果、および音声符号が復号されて得られた復号信号を外部から受け取り、パケットロスした部分に対応する復号信号について、パケットロスの隠蔽を行う隠蔽信号生成装置、により実行される隠蔽信号生成方法であって、前記検出結果が正常とされたパケットに含まれていた音声符号から得られた復号信号を復号信号蓄積部に蓄積する復号信号蓄積ステップと、前記検出結果が異常の場合、時間周波数領域表現された復号信号であって前記復号信号蓄積部により蓄積されている復号信号のパワー変化とパワースペクトルの性質変化の両方又は一方を検出し、当該検出結果を表す信号識別情報として、変化の開始に関する情報と変化の終了に関する情報の両方又は一方を出力する信号識別ステップと、前記信号識別情報と、前記復号信号蓄積ステップにより蓄積された復号信号とに基づいて、パケットロスした部分に対応する復号信号を補間するための隠蔽信号を生成する第一隠蔽信号生成ステップと、を備えることを特徴とする。
【００２１】
本発明に係る隠蔽信号生成プログラムは、コンピュータを、音声符号を含む受信されたパケットにおけるパケットエラー又はパケットロスの検出結果が正常とされたパケットに含まれていた音声符号から復号により得られた復号信号を蓄積する復号信号蓄積部と、前記検出結果が異常の場合、時間周波数領域表現された復号信号であって前記復号信号蓄積部により蓄積されている復号信号のパワー変化とパワースペクトルの性質変化の両方又は一方を検出し、当該検出結果を表す信号識別情報として、変化の開始に関する情報と変化の終了に関する情報の両方又は一方を出力する信号識別部と、前記信号識別情報と、前記復号信号蓄積部により蓄積された復号信号とに基づいて、パケットロスした部分に対応する復号信号を補間するための隠蔽信号を生成する第一隠蔽信号生成部、として機能させるための隠蔽信号生成プログラムである。
【００２３】
以上のような本発明により、隠蔽信号生成時の信号の繰り返し単位を、従来のＭＤＣＴやＦＦＴを用いた周波数領域信号よりも短くできるため、隠蔽のために出力した信号に性質の異なる信号が混在することを防ぐことができ、パケットロス隠蔽信号の音質低下を防ぐことができる。
【発明の効果】
【００２４】
本発明によれば、パケットロス隠蔽のための隠蔽信号の音質低下を防ぐことができる。
【図面の簡単な説明】
【００２５】
【図１】発明の一実施形態におけるシステム環境を示す図である。
【図２】復号部の構成図である。
【図３】第１実施形態における信号識別部の構成図である。
【図４】第１実施形態における第一隠蔽信号生成部の動作を示すフローチャートである。
【図５】第２実施形態における信号識別部の構成図である。
【図６】第２実施形態における信号識別部の動作を示すフローチャートである。
【図７】第２実施形態における第一隠蔽信号生成部の動作を示すフローチャートである。
【図８】第３実施形態における信号識別部の構成図である。
【図９】第３実施形態における信号識別部の動作を示すフローチャートである。
【図１０】第４実施形態における信号識別部の構成図である。
【図１１】第４実施形態における第一隠蔽信号生成部の動作を示すフローチャートである。
【図１２】第５実施形態における信号識別部の構成図である。
【図１３】第５実施形態における補助情報の関係を示す図である。
【図１４】コンピュータのハードウェア構成図である。
【図１５】コンピュータの外観図である。
【図１６】隠蔽信号生成プログラムの構成を示す図である。
【発明を実施するための形態】
【００２６】
以下、図面を用いて、本発明に係るさまざまな実施形態を説明する。
【００２７】
［第１実施形態］
まず、図１を用いて、本発明が想定するシステム環境を説明する。図１に示すように、マイクなどのセンサを通じて得られた音声信号はディジタル形式で表現され、符号化部１に入力される。
【００２８】
符号化部１は、決まったサンプル数の音声信号が、内蔵したバッファに所定量蓄積するたびにバッファ内のディジタル信号を符号化する。上記の所定量、即ち、蓄積するサンプル数をフレーム長といい、符号化対象となるディジタル信号の集合をフレームと呼ぶ。例えば、３２ｋＨｚのサンプリング周波数で収音する際に２０ｍｓのフレーム長とした場合には６４０サンプルのディジタル信号をバッファに蓄積するものとする。なお、バッファには先読み分のディジタル信号を余計に蓄積してもよい。符号化を行うタイミングとしては、フレーム長単位で符号化を行ってもよいし、フレーム間にある長さのオーバーラップを持たせて符号化を行ってもよい。符号化には、どのような符号化方式を用いてもよい。
【００２９】
パケット構成部２は、符号化部１で得られた音声符号にＲＴＰヘッダなどの通信に必要な情報を付加して、音声パケットを生成する。生成された音声パケットはネットワークを通じて受信側に送られる。
【００３０】
パケット分離部３は、ネットワークを通じて受信した音声パケットをＲＴＰヘッダと音声符号とに分離し、音声パケットのエラー状態を示すエラーフラグを音声符号に付加して得られたビットストリームを生成し、ビットストリームを復号部４へ出力する。
【００３１】
復号部４は、図２に示すように、エラー/ロス検出部４１、音声復号部４２、および隠蔽信号生成部４３を有する。復号部４は、エラー/ロス検出部４１にてエラーフラグの状態を識別することで音声パケットにおける異常（パケットエラー又はパケットロス）を検出し、正常（異常なし）の場合には音声復号部４２にて音声符号の復号を行って復号信号を出力する。一方、異常（パケットエラー又はパケットロス）を検出した場合には隠蔽信号生成部４３にて隠蔽信号を生成し、隠蔽信号を復号信号として出力する。なお、復号部４からはフレーム毎に復号音声が出力される。この復号音声はオーディオのバッファ等に送られスピーカなどを通じて再生されるか、メモリやハードディスクなどの記録媒体に蓄積される。
【００３２】
以下、復号部４の動作について説明する。エラー/ロス検出部４１は、ビットストリームに含まれたエラーフラグの状態を識別することで、音声パケットにおける異常（パケットエラー又はパケットロス）を検出する。
【００３３】
ここで、エラーフラグに音声パケット正常を示す値がセットされている場合、エラー/ロス検出部４１は、エラーフラグを音声復号部４２および隠蔽信号生成部４３（具体的には後述する復号信号蓄積部４３１と信号識別部４３４）に送るとともに、音声符号を音声復号部４２に送る。そして、音声復号部４２は、音声符号を復号して復号信号を生成し、復号音声として出力する。このとき、音声復号部４２は復号信号を隠蔽信号生成部４３にも送る。
【００３４】
一方、エラーフラグに音声パケット異常を示す値がセットされている場合、エラー/ロス検出部４１は、エラーフラグを隠蔽信号生成部４３（具体的には後述する復号信号蓄積部４３１と信号識別部４３４）に送る。隠蔽信号生成部４３は、過去に正常に受け取った音声パケットに対応する復号信号から、隠蔽信号を生成する。隠蔽信号生成部４３の動作の詳細は後述する。
【００３５】
以上で述べた図１の全体構成および図２の復号部４のエラー/ロス検出部４１と音声復号部４２の動作は、後述する第２〜第５実施形態でも同様であるため、第２〜第５実施形態では重複した説明を省略する。
【００３６】
以下、隠蔽信号生成部４３の構成・動作について詳細に述べる。第１実施形態では、隠蔽信号生成部４３において、時間領域の信号におけるパワーの急激な変化を信号識別情報として用いる例を示す。
【００３７】
図２に示すように、隠蔽信号生成部４３は、復号信号蓄積部４３１、信号識別部４３４、および第一隠蔽信号生成部４３３を備える。
【００３８】
復号信号蓄積部４３１は、エラーフラグに音声パケット正常を示す値がセットされている場合に、音声復号部４２から入力された復号信号を蓄積する。蓄積する復号信号のサンプル数は、過去数フレーム分（ｄフレーム分）とするのが望ましい（ここでは、x(0),…,x(dL)とする。なお、１フレームの長さをＬとした）。
【００３９】
信号識別部４３４は、図３に示す通り、復号信号蓄積部４３４０と、時間包絡算出部４３４１と、信号識別情報生成部４３４２とを備える。このうち復号信号蓄積部４３４０は、エラーフラグに音声パケット正常を示す値がセットされている場合、復号信号蓄積部４３１と同様の動作を行う。
【００４０】
時間包絡算出部４３４１は、エラーフラグに音声パケット異常を示す値がセットされている場合、復号信号蓄積部４３４０から、蓄積された復号信号（以下「蓄積復号信号」という）を読み出し、蓄積復号信号毎のパワーに関する情報である時間包絡情報を算出する。なお、変形例として、復号信号蓄積部４３４０を設けずに、代わりに、復号信号蓄積部４３１から時間包絡算出部４３４１が蓄積復号信号を読み出す構成としてもよい。
【００４１】
ここでの時間包絡情報の算出方法としては、複数の小区間それぞれについて振幅の最大値を用いて時間包絡情報を算出する方法や、分散を用いて時間包絡情報を算出する方法など様々な方法が考えられるが、例えば、以下の式に従って時間包絡情報を算出する。なお、ここでは、Ｋ個の小区間について時間包絡情報を算出するものとする。
【数１】
0005694745.tif 000002
x(k)は、ｋ番目のサンプルの値を表す。ここで、ｋlstartはｌ番目の小区間の開始位置を示し、ｋlendはｌ番目の小区間の終了位置を示す。また、ここではｋlstart＝ｋl-1end＋１としたが、小区間同士でオーバーラップを持たせるようにしてもよい。
【００４２】
信号識別情報生成部４３４２は、パワーの急激な変化を検出し、結果に応じて信号識別情報を出力する。具体的には、パワーの分散値を算出し、当該分散値と閾値とを比較することでパワーの急激な変化を検出するなど、様々な方法を用いることができるが、本実施形態では、例えば以下のようにしてパワーの急激な変化を検出する。
ステップ１：Env（l）を平滑化したエンベロープPenv（l）を次式により算出する。ただし、αは０＜α＜１を満たす定数である。
Penv(l) = α・Penv(l−1)+ (1−α)・Env(l)
ステップ２：Env（l）とPenv（l）とを用いて、Env(l)と（β・Penv(l)）とを比較することでパワーの急激な変化を検出する。ただし、βは定数である。即ち、Env(l) > β・Penv(l) の時、サブサンプルlにおいてパワーが急激に変化すると判定する。
【００４３】
以上に示した方法はパワーの変化に基づく信号変化検出の単純な例であり、他のもっと複雑な方法により信号変化検出を行ってもよい。上記処理の結果、パワーの急激な変化を検出した場合には、変化が開始するサブサンプルのインデックスlstartを信号識別情報として出力する。パワーが急激に変化する信号が検出されない場合は、バッファの最後から１フレーム分のサンプル数を減算した値をインデックスlstartとしてもよい。なお、バッファの先頭のインデックスやバッファの最後のインデックスをlstartとするなどの単純な方法を用いてもよいし、ピッチ周期を算出してバッファの最後からピッチ周期を減算した値をlstartとしてもよい。
【００４４】
第一隠蔽信号生成部４３３は、信号識別情報および蓄積復号信号を用いて隠蔽信号を生成する。具体的には以下の手順で隠蔽信号を生成する。第一隠蔽信号生成部４３３の動作を図４に示す。
【００４５】
図４のステップS11で第一隠蔽信号生成部４３３は、信号識別情報を参照しインデックスlstartを求め、また、バッファに格納された蓄積復号信号の最後のサブサンプルのインデックスをlendとする。ここで、lend-lstartの値を変数L’にセットする。
【００４６】
ステップS12で第一隠蔽信号生成部４３３は、復号信号蓄積部４３１から蓄積復号信号をコピーする。コピーする際には、lstartからlendまでのサンプルを１フレームに含まれるサンプル数Nを満たすまで繰り返しコピーする。例えば、まず変数iを０にリセットし（ステップS121）、以下の式に従い、パケットロス部分に対応する隠蔽信号v(i)として、復号信号蓄積部４３１に蓄積された蓄積復号信号をコピーする（ステップS122）。
v(i)=b(lstart+i%L’)
ここで、b(i)は復号信号蓄積部４３１に蓄積された蓄積復号信号を意味し、(i%L’)はiをL’で割った余りを表す。
【００４７】
そして、変数iがサンプル数N未満であれば（ステップS124でＹＥＳ）、変数iを１つカウントアップし（ステップS123）、カウントアップした変数iについてステップS122の処理を行う。その後、変数iがサンプル数Nに等しくなる（ステップS124でＮＯとなる）まで、ステップS122およびS123を繰り返す。これにより、lstartからlendまでのサンプルを１フレームに含まれるサンプル数Nを満たすまでコピーすることができる。
【００４８】
次に、ステップS13で第一隠蔽信号生成部４３３は、コピーした蓄積復号信号をサブサンプル毎に平均二乗振幅を算出して正規化した上で、パケットロス直前のサブサンプルの平均二乗振幅に減衰係数のべき乗を乗算することで隠蔽信号を生成する。例えば、まず変数iを０にリセットし（ステップS131）、パケットロス部分に対応する隠蔽信号vを、以下の式に従い生成する（ステップS132）。
v(iL’+k) = v(iL’+k)／10(Env(i)/2)・10(Env(K-1)/2)・γi
ここでEnv(i)はi番目の小区間の時間包絡(Ｋは小区間の数)、v(i)はパケットロス部分に対応する隠蔽信号、γは減衰定数をそれぞれ表す。
【００４９】
そして、変数iがサンプル数N未満であれば（ステップS134でＹＥＳ）、変数iを１つカウントアップし（ステップS133）、カウントアップした変数iについてステップS132の処理を行う。その後、変数iがサンプル数Nに等しくなる（ステップS134でＮＯとなる）まで、ステップS132およびS133を繰り返す。これにより、隠蔽信号が生成される。
【００５０】
そして、ステップS14で第一隠蔽信号生成部４３３は、生成した隠蔽信号を出力する。
【００５１】
なお、上記で述べた以外にも、予測により隠蔽信号を生成してもよい。具体的には、以下のような方法を用いてもよい。
ステップ１：信号識別情報を参照し、インデックスlstartを求める。またバッファに格納された蓄積復号信号の最後のサブサンプルのインデックスをlendとする。
ステップ２：復号信号蓄積部４３１における蓄積復号信号を、lstartからlendまでコピーし、線形予測分析する。
ステップ３：ステップ２で得られる残差信号を１フレームに含まれるサンプル数Nを満たすまで繰り返す。
ステップ４：ステップ２で得られた線形予測係数で、ステップ３で得られた信号を逆フィルタリングした上で、予め定めた減衰係数をサンプルごとに乗算する。これにより得られた信号を隠蔽信号とする。
【００５２】
以上のように第１実施形態では、隠蔽信号生成部４３において、時間領域の信号におけるパワーの急激な変化を用いて信号識別情報を生成し出力することができる。
【００５３】
［第２実施形態］
第１実施形態では、パワーの急激な変化を用いて信号識別情報の出力を行ったが、第２実施形態では、パワースペクトルの急激な変化を用いて信号識別情報を生成する例について述べる。
【００５４】
なお、本実施形態では復号信号として時間領域の信号を仮定しているが、復号信号が周波数領域の信号（例えばＱＭＦ係数など）として得られる場合には、周波数領域における表現のまま復号信号蓄積部に復号信号を蓄積し、時間周波数変換部を省略する構成としてもよい。
【００５５】
以下、隠蔽信号生成部４３の動作について説明する。
【００５６】
図２に示す復号信号蓄積部４３１の動作は、第１実施形態と同様である。
【００５７】
信号識別部４３４は、図５に示すように復号信号蓄積部４３４０と、時間周波数変換部４３４３と、変換利得算出部４３４４と、信号識別情報生成部４３４２とを備える。このうち復号信号蓄積部４３４０の動作は、第１実施形態と同様である。
【００５８】
エラーフラグに音声パケット異常を示す値がセットされている場合に動作する時間周波数変換部４３４３、変換利得算出部４３４４、信号識別情報生成部４３４２について、図６を用いて以下に説明する。
【００５９】
時間周波数変換部４３４３は、復号信号蓄積部４３４０から蓄積復号信号を読み出して、周波数領域に変換した蓄積周波数信号を出力する（図６のステップS21）。変換には、ＦＦＴ（Fast  Fourier  Transform）を用いてもよいし、ＭＤＣＴ（Modified  Discrete  Transform）を用いてもよいし、ＱＭＦを用いても良い。また、変形例として、復号信号蓄積部４３４０を設けずに、復号信号蓄積部４３１から蓄積復号信号を読み出す構成としてもよい。
【００６０】
本実施形態では、例えばＱＭＦを用いて時間周波数変換を行う例を示す。ここで、蓄積復号信号をx(n)とする。
【数２】
0005694745.tif 000003
ここで、例えばV(k,l)のサブサンプルl0と言う場合には、
【数３】
0005694745.tif 000004
なる周波数ビンの集合を現すものとする。Eは時間方向のサブサンプル数を表し、Kは周波数ビンの数を表す。ｋは周波数ビンのインデックスであり（0≦k≦K-1）、lはサブサンプルのインデックス（0≦l≦L-1）である。また、ｐA(n)は分析に用いる窓関数を表す。
【００６１】
変換利得算出部４３４４は、時間周波数変換した蓄積復号信号について、（相加平均／相乗平均）の値（以後、この値を「U(l)」と称し、「相加平均／相乗平均U(l)」と表記する）を算出する（図６のステップS22）。
【数４】
0005694745.tif 000005
なお、本実施例では全周波数ビンを用いてU(l)を算出したが、一部の周波数ビンのみを用いて相加平均／相乗平均U(l)を算出してもよい。
【００６２】
信号識別情報生成部４３４２は、相加平均／相乗平均U(l)がある閾値Thを越えるサブサンプルｌを信号識別情報lstartとして検出する（図６のステップS23）。例えば、まずサブサンプルのインデックスlを０にリセットし（ステップS231）、相加平均／相乗平均U(l)が閾値Thを越えるか否かを判断する（ステップS232）。相加平均／相乗平均U(l)が閾値Thを越えなければ、ステップS235へ進み、相加平均／相乗平均U(l)が閾値Thを越えるならば、そのときのインデックスlを信号識別情報lstartに設定して（ステップS233）、ステップS235へ進む。
【００６３】
そして、ステップS235でインデックスlがL未満であれば（ステップS235でＹＥＳ）、インデックスlを１つカウントアップし（ステップS234）、カウントアップしたインデックスlについてステップS232およびS233の処理を行う。その後、インデックスlがLに等しくなる（ステップS235でＮＯとなる）まで、ステップS232〜S234を繰り返す。これにより、相加平均／相乗平均U(l)がある閾値Thを越えるサブサンプルｌを信号識別情報lstartとして検出することができる。
【００６４】
そして、信号識別情報生成部４３４２は、ステップS23で得られた信号識別情報lstartを出力する（図６のステップS24）。
【００６５】
第一隠蔽信号生成部４３３は、信号識別情報および蓄積復号信号を用いて隠蔽信号を生成する。具体的には以下の手順で隠蔽信号を生成する。第一隠蔽信号生成部４３３の動作を図７に示す。
【００６６】
図７のステップS25で第一隠蔽信号生成部４３３は、信号識別情報を参照しインデックスlstartを求め、また、バッファに格納された蓄積復号信号の最後のサブサンプルのインデックスをlendとする。ここで、lend-lstartの値を変数L’にセットする。
【００６７】
ステップS26で第一隠蔽信号生成部４３３は、復号信号蓄積部４３１から蓄積復号信号をコピーする。コピーする際には、lstartからlendまでのサンプルを１フレームに含まれるサンプル数Nを満たすまでコピーする。例えば、まず変数iを０にリセットし（ステップS261）、以下の式に従い、パケットロス部分に対応する隠蔽信号V(k,i)として、復号信号蓄積部４３１に蓄積された蓄積復号信号をコピーする（ステップS262）。
V(k,i)=B(k,lstart+i%L’)
ここで、B(k,i)は復号信号蓄積部４３１に蓄積された蓄積復号信号を時間周波数変換した信号、V(k,i)はパケットロス部分に対応する隠蔽信号、(i%L’)はiをL’で割った余りをそれぞれ表す。
【００６８】
そして、変数iがサンプル数N未満であれば（ステップS264でＹＥＳ）、変数iを１つカウントアップし（ステップS263）、カウントアップした変数iについてステップS262の処理を行う。その後、変数iがサンプル数Nに等しくなる（ステップS264でＮＯとなる）まで、ステップS262およびS263を繰り返す。これにより、lstartからlendまでのサンプルを１フレームに含まれるサンプル数Nを満たすまでコピーすることができる。
【００６９】
ステップS27で第一隠蔽信号生成部４３３は、サブサンプルのパワーEnv(l)を算出する。
【数５】
0005694745.tif 000006
ステップS28で第一隠蔽信号生成部４３３は、コピーした蓄積復号信号をサブサンプル毎に平均二乗振幅を算出して正規化した上で、パケットロス直前のサブサンプルの平均二乗振幅に減衰係数のべき乗を乗算することで隠蔽信号を生成する。例えば、まず変数iを０にリセットし（ステップS281）、パケットロス部分に対応する隠蔽信号Vを、以下の式に従い生成する（ステップS282）。
V(k,i) = V(k,i)／10(Env(i)/2)・10(Env(L-1)/2)・γi
ここでEnv(i)はi番目の小区間の時間包絡(Ｋは小区間の数)、V(k,i)はパケットロス部分に対応する隠蔽信号、γは減衰定数をそれぞれ表す。
【００７０】
そして、変数iがサンプル数N未満であれば（ステップS284でＹＥＳ）、変数iを１つカウントアップし（ステップS283）、カウントアップした変数iについてステップS282の処理を行う。その後、変数iがサンプル数Nに等しくなる（ステップS284でＮＯとなる）まで、ステップS282およびS283を繰り返す。これにより、隠蔽信号が生成される。
【００７１】
そして、ステップS29で第一隠蔽信号生成部４３３は、パケットロス部分に対応する隠蔽信号V(k,i)を合成ＱＭＦにより逆変換して時間領域の隠蔽信号y(kL+i)を生成し出力する。
【数６】
0005694745.tif 000007
ここで、i（0≦i<L）は時間領域の信号のインデックスであり、k（0≦k<K-1）はサブフレームのインデックスである。
【００７２】
以上のように第２実施形態では、パワースペクトルの急激な変化を用いて信号識別情報を生成し出力することができる。
【００７３】
［第３実施形態］
第１実施形態ではパワーの急激な変化を用いて信号識別情報を算出し、第２実施形態ではパワースペクトルの急激な変化を用いて信号識別情報を算出したが、第３実施形態では、それらの両方を用いて信号識別情報を算出する例について述べる。
【００７４】
なお、本実施形態では復号信号として時間領域の信号を仮定しているが、復号信号が周波数領域の信号（例えばＱＭＦ係数など）として得られる場合には、周波数領域における表現のまま復号信号蓄積部に復号信号を蓄積し、時間周波数変換部を省略する構成としてもよい。
【００７５】
以下、隠蔽信号生成部４３の動作について説明する。
【００７６】
図２に示す復号信号蓄積部４３１の動作は、第１実施形態と同様である。
【００７７】
信号識別部４３４は、図８に示すように復号信号蓄積部４３４０と、時間包絡算出部４３４１と、時間周波数変換部４３４３と、変換利得算出部４３４４と、信号識別情報生成部４３４２とを備える。このうち復号信号蓄積部４３４０は、エラーフラグに音声パケット異常を示す値がセットされている場合、復号信号蓄積部４３１と同様の動作をする。
【００７８】
以下、エラーフラグに音声パケット異常を示す値がセットされている場合に動作する時間周波数変換部４３４３、時間包絡算出部４３４１と、変換利得算出部４３４４、信号識別情報生成部４３４２について、図９を用いて以下に説明する。
【００７９】
時間周波数変換部４３４３は、復号信号蓄積部４３４０から蓄積復号信号を読み出して、周波数領域に変換した蓄積周波数信号を出力する（図９のステップS31）。変形例として、復号信号蓄積部４３４０を設ける代わりに、復号信号蓄積部４３１から蓄積復号信号を読み出す構成としてもよい。ここでは、蓄積復号信号をx(n)とした。
【数７】
0005694745.tif 000008
ここで、例えばV(k,l)のサブサンプルl0と言う場合には、
【数８】
0005694745.tif 000009
なる周波数ビンの集合を現すものとする。Eは時間方向のサブサンプル数を表し、Kは周波数ビンの数を表す。ｋは周波数ビンのインデックスであり（0≦k≦K-1）、lはサブサンプルのインデックス（0≦l≦L-1）である。また、ｐA(n)は分析に用いる窓関数を表す。
【００８０】
時間包絡算出部４３４１は、時間包絡を例えば次式に従い算出する（図９のステップS32）。
【数９】
0005694745.tif 000010
変換利得算出部４３４４は、蓄積周波数信号について、相加平均／相乗平均U(l)を算出する（図９のステップS33）。
【数１０】
0005694745.tif 000011
なお、本実施例では全周波数ビンを用いてU(l)を算出したが、一部の周波数ビンのみを用いて相加平均／相乗平均U(l)を算出してもよい。
【００８１】
信号識別情報生成部４３４２は、相加平均／相乗平均U(I)がある閾値Thを越えるサブサンプルｌを信号識別情報lstartとして検出した上で、Env(l)と（β・Penv(l)）とを比較することでパワーの急激な変化を検出し、必要に応じてlstartの更新を行うことで、信号識別情報lstartを生成する（図９のステップS34）。ただし、βは定数である。Env(l) > β・Penv(l) の時、サブサンプルlにおいてパワーが急激に変化すると判定してlstartを算出してもよい。なお、変換利得と時間包絡とに重み付けを行い、これら変換利得と時間包絡とを組み合わせて信号識別情報を生成してもよい。
【００８２】
具体的にステップS34において、信号識別情報生成部４３４２は、図９に示すように、まずサブサンプルのインデックスlを０にリセットし（ステップS341）、相加平均／相乗平均U(l)が閾値Thを越えるか否かを判断する（ステップS342）。相加平均／相乗平均U(l)が閾値Thを越えなければ、ステップS345へ進み、相加平均／相乗平均U(l)が閾値Thを越えるならば、そのときのインデックスlを信号識別情報lstartに設定して（ステップS343）、ステップS345へ進む。
【００８３】
そして、ステップS345でインデックスlがL未満であれば（ステップS345でＹＥＳ）、インデックスlを１つカウントアップし（ステップS344）、カウントアップしたインデックスlについてステップS342およびS343の処理を行う。その後、インデックスlがLに等しくなる（ステップS345でＮＯとなる）まで、ステップS342〜S344を繰り返す。これにより、相加平均／相乗平均U(l)がある閾値Thを越えるサブサンプルｌを信号識別情報lstartとして検出することができる。
【００８４】
次に、インデックスlを０にリセットして（ステップS346）、Env(l)と（β・Penv(l)）とを比較し（ステップS347）、Env(l)が（β・Penv(l)）を越えなければ、ステップS34Aへ進み、Env(l)が（β・Penv(l)）を越えるならば、そのときのインデックスlを信号識別情報lstartに設定して（ステップS348）、ステップS34Aへ進む。
【００８５】
そして、ステップS34AでインデックスlがL未満であれば（ステップS34AでＹＥＳ）、インデックスlを１つカウントアップし（ステップS349）、カウントアップしたインデックスlについてステップS347およびS348の処理を行う。その後、インデックスlがLに等しくなる（ステップS34AでＮＯとなる）まで、ステップS347〜S349を繰り返す。これにより、パワーが急激に変化するサブサンプルｌを信号識別情報lstartとして検出することができる。
【００８６】
そして、信号識別情報生成部４３４２は、ステップS34で得られた信号識別情報lstartを出力する（図９のステップS35）。
【００８７】
なお、第３実施形態における第一隠蔽信号生成部４３３は、第２実施形態と同様の動作を行う。
【００８８】
以上のように第３実施形態では、パワーの急激な変化とパワースペクトルの急激な変化の両方を用いて信号識別情報を生成し出力することができる。
【００８９】
［第４実施形態］
第４実施形態では、第１〜第３実施形態とは異なり、信号識別情報を外部から取得する場合の処理例について説明する。なお、信号識別情報の入力方法としては、例えば復号の過程で補助的に得られるパラメータを用いるといった方法がある。
【００９０】
以下、TS26.401（enhanced  aacPlus）を符号化方法として用いた場合に、復号時に得られるパラメータを信号識別情報としてパケットロス隠蔽を行う例について述べる。
【００９１】
TS26.401はＳＢＲ（Spectral  Band  Replication）により、高域信号を少ないビット量で符号化する。ＳＢＲによる復号では、ＳＢＲの符号化側から送られてくる補助情報と、低域の復号信号を用いて高域信号を生成する。補助情報には、フレーム内の時間境界の情報が含まれる。具体的には、TS26.404の3.2節にて定義されるtEなるパラメータである。フレーム内の時間境界は、パワーが急激に大きくなる部分や、パワースペクトルの性質が変化する際にSBR符号化部において挿入される。
【００９２】
本実施形態では、図２の隠蔽信号生成部４３において、上記フレーム内の時間境界tEを用いて隠蔽信号の生成を行う場合について述べる。なお、復号信号蓄積部４３１の動作は第１実施形態と同様である。
【００９３】
信号識別部４３４は、図１０に示すように、信号識別情報蓄積部４３４５を備える。信号識別情報蓄積部４３４５は、エラーフラグに音声パケット正常を示す値がセットされている場合、音声復号部４２から入力される信号識別情報を蓄積する。信号識別情報は、上記述べたフレーム内の時間境界tEである。エラーフラグに音声パケット異常（例えばパケットエラー又はパケットロス）を示す値がセットされている場合、蓄積された信号識別情報（以下「蓄積信号識別情報」という）が信号識別情報蓄積部４３４５から第一隠蔽信号生成部４３３へ出力される。
【００９４】
第一隠蔽信号生成部４３３は、蓄積信号識別情報および蓄積復号信号を用いて、以下の手順で隠蔽信号を生成する。第一隠蔽信号生成部４３３の動作を図１１に示す。
【００９５】
図１１のステップS41で第一隠蔽信号生成部４３３は、蓄積信号識別情報を参照し、インデックスlstartおよびインデックスlendを以下の式に従い求める。ここで、tEは信号識別情報蓄積部に蓄積した信号識別情報のうち最も最近受信したパケットに含まれていたものを表す。L’はフレーム内の時間境界で区切られた区間の数である。
【数１１】
0005694745.tif 000012
ステップS42で第一隠蔽信号生成部４３３は、復号信号蓄積部４３１から蓄積復号信号をコピーする。コピーする際には、lstartからlendまでのサブサンプルを１フレームに含まれるサブサンプル数を満たすまでコピーする。例えば、まず変数iを０にリセットし（ステップS421）、以下の式に従い、パケットロス部分に対応する隠蔽信号V(k,i)として、復号信号蓄積部４３１に蓄積された蓄積復号信号をコピーする（ステップS422）。
V(k,i)=B(k,lstart+i%L’)
ここで、B(k,i)は復号信号蓄積部４３１に蓄積された蓄積復号信号を時間周波数変換した信号、V(k,i)はパケットロス部分に対応する隠蔽信号、(i%L’)はiをL’で割った余りをそれぞれ表す。
【００９６】
そして、変数iがサンプル数N未満であれば（ステップS424でＹＥＳ）、変数iを１つカウントアップし（ステップS423）、カウントアップした変数iについてステップS422の処理を行う。その後、変数iがサンプル数Nに等しくなる（ステップS424でＮＯとなる）まで、ステップS422およびS423を繰り返す。これにより、lstartからlendまでのサブサンプルを１フレームに含まれるサブサンプル数を満たすまでコピーすることができる。
【００９７】
ステップS43で第一隠蔽信号生成部４３３は、サブサンプルのパワーEnv(l)を算出する。
【数１２】
0005694745.tif 000013
ステップS44で第一隠蔽信号生成部４３３は、コピーした蓄積復号信号をサブサンプル毎に平均二乗振幅を算出して正規化した上で、パケットロス直前のサブサンプルの平均二乗振幅に減衰係数のべき乗を乗算することで隠蔽信号を生成する。例えば、まず変数iを０にリセットし（ステップS441）、パケットロス部分に対応する隠蔽信号Vを、以下の式に従い生成する（ステップS442）。
V(k,i) = V(k,i)／10(Env(i)/2)・10(Env(L-1)/2)・γi
ここでEnv(i)はi番目の小区間の時間包絡(Ｋは小区間の数)、V(k,i)はパケットロス部分に対応する隠蔽信号、γは減衰定数をそれぞれ表す。
【００９８】
そして、変数iがサンプル数N未満であれば（ステップS444でＹＥＳ）、変数iを１つカウントアップし（ステップS443）、カウントアップした変数iについてステップS442の処理を行う。その後、変数iがサンプル数Nに等しくなる（ステップS444でＮＯとなる）まで、ステップS442およびS443を繰り返す。これにより、隠蔽信号が生成される。
【００９９】
そして、ステップS45で第一隠蔽信号生成部４３３は、パケットロス部分に対応する隠蔽信号V(k,i)を合成ＱＭＦにより逆変換して時間領域の隠蔽信号y(kL+i)を生成し出力する。
【数１３】
0005694745.tif 000014
ここで、i（0≦i<L）は時間領域の信号のインデックスであり、k（0≦k<K-1）はサブフレームのインデックスである。
【０１００】
以上のように第４実施形態では、信号識別情報を外部から取得する場合にも、隠蔽信号を生成し出力することができる。
【０１０１】
［第５実施形態］
第５実施形態では、第４実施形態とは異なり、復号の過程で補助的に得られるパラメータから信号識別情報を算出する例を説明する。
【０１０２】
本実施形態では、例えば符号化にAACを用いた場合のスケールファクタや、その他の符号化方式における復号信号の時間周波数領域表現などを用いることができる。例えば以下に述べる例におけるV(k,l)にそれらパラメータを代入することにより、以下の例を利用することができる。それら時間周波数領域表現から算出可能なパラメータを用いて同様の処理を行ってもよい。
【０１０３】
本実施形態では、以下、TS26.401（enhanced  aacPlus）を符号化方法として用いた場合に、復号時に得られるパラメータから信号識別情報を算出し、パケットロス隠蔽を行う例について述べる。
【０１０４】
本実施形態では、TS26.404の補助情報に含まれる、パワースペクトル包絡の情報から信号識別情報を算出する。上記TS26.404の補助情報とは、具体的には、TS26.404の3.2節にて定義されるEorigなるパワースペクトル包絡のパワーを表すパラメータと、fTableHighなるパワースペクトル包絡の帯域境界を表すパラメータである。図１３にこれらパラメータの関係の例を示す。なお、上記パラメータは復号の過程で算出される。
【０１０５】
そこで、本実施形態では、上記を用いて隠蔽信号の生成を行う場合について述べる。なお、図２の隠蔽信号生成部４３において復号信号蓄積部４３１の動作は第１実施形態と同様である。
【０１０６】
信号識別部４３４は、図１２に示すように、補助情報蓄積部４３４６と、パワースペクトル包絡算出部４３４７と、時間包絡算出部４３４１と、変換利得算出部４３４４と、信号識別情報生成部４３４２とを備える。
【０１０７】
このうち補助情報蓄積部４３４６は、エラーフラグに音声パケット正常を示す値がセットされている場合、音声復号部４２から入力されるEorigなるパワースペクトル包絡のパワーおよびfTableHighなるパワースペクトル包絡の帯域境界を蓄積する。
【０１０８】
パワースペクトル包絡算出部４３４７は、エラーフラグに音声パケット異常を示す値がセットされている場合、補助情報蓄積部４３４６から上記パワースペクトル包絡のパワーおよびパワースペクトル包絡の帯域境界を読み出し、以下のとおり信号識別情報を算出する。即ち、EorigとfTableHighからパワースペクトル包絡V(k,l)を以下の通り算出する。
【数１４】
0005694745.tif 000015
ここで、全周波数帯域をnhigh個の帯域に分割したとする。
【０１０９】
なお、時間包絡算出部４３４１、変換利得算出部４３４４、および信号識別情報生成部４３４２の動作は、第３実施形態と同様である。また、第一隠蔽信号生成部４３３の動作も、第３実施形態と同様である。
【０１１０】
以上、復号の過程において得られるEorigなるパワースペクトル包絡のパワーおよびfTableHighなるパワースペクトル包絡の帯域境界を用いて信号識別情報を算出する例について述べたが、他にも復号の過程で得られるパラメータを用いて信号識別情報を算出し、得られた信号識別情報に基づき隠蔽信号を生成する任意の手法を用いてもよい。
【０１１１】
以上のように第５実施形態では、復号の過程で補助的に得られるパラメータから信号識別情報を算出し、当該信号識別情報に基づいて隠蔽信号を生成し出力することができる。
【０１１２】
［隠蔽信号生成プログラムについて］
まず、コンピュータを、本発明に係る隠蔽信号生成装置として動作させる隠蔽信号生成プログラムについて説明する。
【０１１３】
図１６は、一実施形態に係る隠蔽信号生成プログラムの構成を示す図である。図１４は、一実施形態に係るコンピュータのハードウェア構成図である。図１５は、一実施形態に係るコンピュータの外観図である。図１６に示す隠蔽信号生成プログラムＰ４３は、図１４および図１５に示すコンピュータＣ１０を隠蔽信号生成部４３として動作させることができる。なお、本明細書に説明するプログラムは、図１４および図１５に示すようなコンピュータに限定されず、携帯電話、携帯情報端末、携帯型パーソナルコンピュータといった任意の情報処理装置を、当該プログラムに従って動作させることができる。
【０１１４】
隠蔽信号生成プログラムＰ４３は、記録媒体Ｍに格納されて提供され得る。なお、記録媒体Ｍとしては、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ、あるいはＲＯＭ等の記録媒体、あるいは半導体メモリ等が例示される。
【０１１５】
図１４に示すように、コンピュータＣ１０は、フレキシブルディスクドライブ装置、ＣＤ−ＲＯＭドライブ装置、ＤＶＤドライブ装置等の読み取り装置Ｃ１２と、作業用メモリ（ＲＡＭ）Ｃ１４と、記録媒体Ｍに記憶されたプログラムを記憶するメモリＣ１６と、ディスプレイＣ１８と、入力装置であるマウスＣ２０及びキーボードＣ２２と、データ等の送受信を行うための通信装置Ｃ２４と、プログラムの実行を制御する中央演算部（ＣＰＵ）Ｃ２６とを備える。
【０１１６】
コンピュータＣ１０は、記録媒体Ｍが読み取り装置Ｃ１２に挿入されると、記録媒体Ｍに格納された隠蔽信号生成プログラムＰ４３に読み取り装置Ｃ１２からアクセス可能になり、隠蔽信号生成プログラムＰ４３によって、本発明に係る隠蔽信号生成装置として動作することが可能になる。
【０１１７】
図１５に示すように、隠蔽信号生成プログラムＰ４３は、搬送波に重畳されたコンピュータデータ信号Ｗとしてネットワークを介して提供されるものであってもよい。この場合、コンピュータＣ１０は、通信装置Ｃ２４によって受信した隠蔽信号生成プログラムＰ４３をメモリＣ１６に格納し、隠蔽信号生成プログラムＰ４３を実行することができる。
【０１１８】
図１６に示すように、隠蔽信号生成プログラムＰ４３は、復号信号蓄積モジュールＰ４３１、信号識別モジュールＰ４３４、および第一隠蔽信号生成モジュールＰ４３３を備えている。これらの復号信号蓄積モジュールＰ４３１、信号識別モジュールＰ４３４、および第一隠蔽信号生成モジュールＰ４３３は、前述した復号信号蓄積部４３１、信号識別部４３４、および第一隠蔽信号生成部４３３とそれぞれ同様の機能をコンピュータＣ１０に実行させる。かかる隠蔽信号生成プログラムＰ４３によれば、コンピュータＣ１０は、本発明に係る隠蔽信号生成装置として動作することが可能となる。
【０１１９】
以上説明したさまざまな実施形態によって、隠蔽信号生成を目的としてバッファ内の信号から繰り返しの単位となる波形を求める際、パワーの時間変化やパワースペクトルの時間変化を用いる。さらに、ＱＭＦ（Quadrature  Mirror  Filter）を用いた時間周波数変換により得られた周波数領域信号を用いて隠蔽信号の生成を行う。これらの場合、隠蔽信号生成時の信号の繰り返し単位を、従来のＭＤＣＴやＦＦＴを用いた周波数領域信号よりも短くできるため、隠蔽のために出力した信号に性質の異なる信号が混在することを防ぐことができ、パケットロス隠蔽信号の音質低下を防ぐことができる。
【符号の説明】
【０１２０】
１…符号化部、２…パケット構成部、３…パケット分離部、４…復号部、４１…エラー／ロス検出部、４２…音声復号部、４３…隠蔽信号生成部、４３１…復号信号蓄積部、４３３…第一隠蔽信号生成部、４３４…信号識別部、４３４０…復号信号蓄積部、４３４１…時間包絡算出部、４３４２…信号識別情報生成部、４３４３…時間周波数変換部、４３４４…変換利得算出部、４３４５…信号識別情報蓄積部、４３４６…補助情報蓄積部、４３４７…パワースペクトル包絡算出部、Ｃ１０…コンピュータ、Ｃ１２…読み取り装置、Ｃ１４…作業用メモリ、Ｃ１６…メモリ、Ｃ１８…ディスプレイ、Ｃ２０…マウス、Ｃ２２…キーボード、Ｃ２４…通信装置、Ｃ２６…ＣＰＵ、Ｍ…記録媒体、Ｗ…コンピュータデータ信号、Ｐ４３…音声符号化プログラム、Ｐ４３１…復号信号蓄積モジュール、Ｐ４３３…第一隠蔽信号生成モジュール、Ｐ４３４…信号識別モジュール。
【図１】
0005694745.tif 000016
【図２】
0005694745.tif 000017
【図３】
0005694745.tif 000018
【図４】
0005694745.tif 000019
【図５】
0005694745.tif 000020
【図６】
0005694745.tif 000021
【図７】
0005694745.tif 000022
【図８】
0005694745.tif 000023
【図９】
0005694745.tif 000024
【図１０】
0005694745.tif 000025
【図１１】
0005694745.tif 000026
【図１２】
0005694745.tif 000027
【図１３】
0005694745.tif 000028
【図１４】
0005694745.tif 000029
【図１５】
0005694745.tif 000030
【図１６】
0005694745.tif 000031