(57)【特許請求の範囲】
【請求項１】
音声信号中のクリップ部分を検出する検出部と、
前記検出部が検出したクリップ部分の極性を判別する正負判別部と、
前記検出部が検出したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方を判別する開始終了判別部と、
前記開始終了判別部が判別したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方の前後の予め定められた範囲を、前記正負判別部が判別した極性および前記予め定められた範囲に対応するパラメータに基づいて、加工する加工部と、
を備えることを特徴とする音声信号加工装置。
【請求項２】
音声信号中のクリップ部分を検出する検出部と、
前記検出部が検出したクリップ部分の極性を判別する正負判別部と、
前記検出部が検出したクリップ部分を、前記正負判別部が判別した極性に対応するパラメータに基づいて、加工する加工部と、
を備え、
前記検出部が検出したクリップ部分が、加工対象であるか否かを、前記正負判別部が判別した極性とクリップ部分の時間長さに対応する判別基準に基づいて判別する加工判別部をさらに備え、
前記加工部は、前記加工判別部が前記クリップ部分を加工対象であると判別した場合に、前記クリップ部分を加工する、
ことを特徴とする音声信号加工装置。
【請求項３】
前記検出部が検出したクリップ部分がクリップしている時間長さをカウントするカウント部をさらに備え、
前記加工判別部は、前記カウント部がカウントしたクリップ部分の時間長さに基づいて当該クリップ部分が加工対象であるか否か判別する、
ことを特徴とする請求項２に記載の音声信号加工装置。
【請求項４】
前記加工部は、クリップ部分の開始点を含む第１の所定範囲とクリップ部分の終了点を含む第２の所定範囲の少なくとも一方の所定範囲内のデータの値を信号を圧縮するように補正する、
ことを特徴とする請求項１乃至３の何れか１項に記載の音声信号加工装置。
【請求項５】
実質的に形状が同一で極性が異なる波形が、出力先のスピーカに入力された際に、第１の極性の波形が入力された時の方が、第２の極性の波形が入力された時よりもスピーカの可動部の動きが大きい場合には、
前記加工部の、第１の極性に対応するパラメータの方が、第２の極性に対応するパラメータよりも、信号を圧縮する程度が大きい、
ことを特徴とする請求項１乃至４の何れか１項に記載の音声信号加工装置。
【請求項６】
第１の極性に対応するパラメータの方が、第２の極性に対応するパラメータよりも、信号を圧縮する程度が大きく、及び／又は、補正の期間が長い、
ことを特徴とする請求項５に記載の音声信号加工装置。
【請求項７】
音声信号を複数の帯域の信号成分に分割する分割部をさらに備え、
前記検出部は、前記分割部が分割した各信号成分について、クリップ部分を検出し、
前記正負判別部は、前記分割部が分割した信号成分毎に極性を判別し、
前記加工部は、前記分割部が分割した信号成分毎に信号を加工する、
ことを特徴とする請求項１乃至６の何れか１項に記載の音声信号加工装置。
【請求項８】
供給された音声信号中のクリップ部分を検出し、
前記検出したクリップ部分の極性を判別し、
前記検出したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方を判別し、
前記判別したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方の前後の予め定められた範囲を、前記判別した極性および前記予め定められた範囲に対応するパラメータに基づいて、加工する、
ことを特徴とする音声信号加工方法。
【請求項９】
コンピュータに、
供給された音声信号中のクリップ部分を検出する段階と、
前記検出したクリップ部分の極性を判別する段階と、
前記検出したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方を判別する段階と、
前記判別したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方の前後の予め定められた範囲を、前記判別した極性および前記予め定められた範囲に対応するパラメータに基づいて、加工する段階と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声信号加工装置、音声信号加工方法及びプログラムに関する。
【背景技術】
【０００２】
音声信号をスピーカで出力するにあたって、聴者にとって心地よい音声を出力するために音声信号を加工する音声信号加工装置が知られている。このような音声信号加工装置の中には、音声信号のクリップ部分を検出して選択的に加工するものがある。
【０００３】
特許文献１は、音声信号のクリップ部分を加工するにあたって、クリップが起こった長さ等の情報に基づいて加工方法を選択し、選択した加工方法で音声信号のクリップ部分を加工する技術を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−１１０１４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
スピーカは、入力された音声信号に応答してコーン紙を振動させることにより、音声信号を放音する。通常、入力された音声信号がプラス（正）極性である場合には、コーン紙は標準位置（０入力時）よりも前方に動き、入力信号がマイナス（負）極性であれば後方に動く。
スピーカの構造上、コーン紙が前方に動くときと後方に動くときとでは、動作特性が異なる。このため、入力信号の絶対値が同一であっても、信号の極性が異なると、入力信号に起因するコーン紙の動作は異なる。このため、同じ絶対値の音声信号を入力した場合でも、信号が正極性か負極性かで、スピーカから放音される音波の波形（振動波形）は異なり、原音とは異なる音が再生されてしまう。
【０００６】
特許文献１に記載の技術では、コーン紙が前方に動く場合でも、後方に動く場合でも、クリップ部分を同様に加工する。そのため、特許文献１に記載の音声信号加工装置を用いてクリップ部分を加工すると、実際に放音される波形が、入力信号の正極性側と負極性側とで異なってしまい、音声波形が歪んでしまう。このため、聴者に違和感を与えるおそれがある。
【０００７】
本発明は上記のような事情に鑑みてなされたもので、聴者に違和感を与えないようにクリップ部分を加工することが出来る音声信号加工装置、音声信号加工方法、及びプログラムを提供することを目的とする。
また、本発明は、歪みの小さい再生音を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の第１の観点に係る音声信号加工装置は、
音声信号中のクリップ部分を検出する検出部と、
前記検出部が検出したクリップ部分の極性を判別する正負判別部と、
前記検出部が検出したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方を判別する開始終了判別部と、
前記開始終了判別部が判別したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方の前後の予め定められた範囲を、前記正負判別部が判別した極性および前記予め定められた範囲に対応するパラメータに基づいて、加工する加工部と、
を備えることを特徴とする。
【０００９】
上記目的を達成するため、本発明の第２の観点に係る音声信号加工装置は、
音声信号中のクリップ部分を検出する検出部と、
前記検出部が検出したクリップ部分の極性を判別する正負判別部と、
前記検出部が検出したクリップ部分を、前記正負判別部が判別した極性に対応するパラメータに基づいて、加工する加工部と、
を備え、
前記検出部が検出したクリップ部分が、加工対象であるか否かを、前記正負判別部が判別した極性とクリップ部分の時間長さに対応する判別基準に基づいて判別する加工判別部をさらに備え、
前記加工部は、前記加工判別部が前記クリップ部分を加工対象であると判別した場合に、前記クリップ部分を加工する、
ことを特徴とする。
【００１０】
例えば、上記音声信号加工装置は、
前記検出部が検出したクリップ部分がクリップしている時間長さをカウントするカウント部をさらに備え、
前記加工判別部は、前記カウント部がカウントしたクリップ部分の時間長さに基づいて当該クリップ部分が加工対象であるか否か判別する、
としてもよい。
【００１１】
例えば、
前記加工部は、クリップ部分の開始点を含む第１の所定範囲とクリップ部分の終了点を含む第２の所定範囲の少なくとも一方の所定範囲内のデータの値を信号を圧縮するように補正する、
としてもよい。
【００１２】
例えば、
実質的に形状が同一で極性が異なる波形が、出力先のスピーカに入力された際に、第１の極性の波形が入力された時の方が、第２の極性の波形が入力された時よりもスピーカの可動部の動きが大きい場合には、
前記加工部の、第１の極性に対応するパラメータの方が、第２の極性に対応するパラメータよりも、信号を圧縮する程度が大きい、
としてもよい。
【００１３】
例えば、
第１の極性に対応するパラメータの方が、第２の極性に対応するパラメータよりも、信号を圧縮する程度が大きく、及び／又は、補正の期間が長い、
としてもよい。
【００１４】
例えば、上記音声信号加工装置は、
音声信号を複数の帯域の信号成分に分割する分割部をさらに備え、
前記検出部は、前記分割部が分割した各信号成分について、クリップ部分を検出し、
前記正負判別部は、前記分割部が分割した信号成分毎に極性を判別し、
前記加工部は、前記分割部が分割した信号成分毎に信号を加工する、
としてよい。
【００１５】
上記目的を達成するため、本発明の第３の観点に係る音声信号加工方法は、
供給された音声信号中のクリップ部分を検出し、
前記検出したクリップ部分の極性を判別し、
前記検出したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方を判別し、
前記判別したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方の前後の予め定められた範囲を、前記判別した極性および前記予め定められた範囲に対応するパラメータに基づいて、加工する、
ことを特徴とする。
【００１６】
上記目的を達成するため、本発明の第４の観点に係るプログラムは、
コンピュータに、
供給された音声信号中のクリップ部分を検出する段階と、
前記検出したクリップ部分の極性を判別する段階と、
前記検出したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方を判別する段階と、
前記判別したクリップ部分の開始点とクリップ部分の終了点の少なくともいずれか一方の前後の予め定められた範囲を、前記判別した極性および前記予め定められた範囲に対応するパラメータに基づいて、加工する段階と、
を実行させる。
【発明の効果】
【００１７】
本発明によれば、聴者に違和感を与えないようにクリップ部分を加工することが出来る音声信号加工装置、音声信号加工方法、及びプログラムを提供することが出来る。また、本発明によれば、歪みの小さい再生音を提供することが出来る。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態に係るオーディオシステムの構成を示す図である。
【図２】スピーカの構成を示す図であり、（ａ）はスピーカ全体の断面図、（ｂ）は、スピーカユニットの拡大断面図である。
【図３】スピーカのコーン紙の動作特性を示す図である。
【図４】図１に示す音声信号加工装置の構成を示す図であり、（ａ）は、物理構成を示す図、（ｂ）は、機能的構成を示す図である。
【図５】図４（ｂ）に示す記憶部に格納される補正乗数の例を示す図である。
【図６】クリップが発生している入力信号の波形、原音の波形、補正された出力信号の波形を重ねて示す波形図である。
【図７】音声信号加工装置が実行する音声信号加工処理のフローチャートである。
【図８】図７に示す加工対象領域特定処理の詳細を示すフローチャートである。
【図９】音声信号加工装置の他の構成例を示す図である。
【図１０】音声信号加工装置のさらに他の構成例を示す図である。
【図１１】入力信号の波形と補正信号の波形とを重ねて示すその他の波形図である。
【図１２】補正乗数の変形例を示す図である。
【図１３】スピーカの他の構成例を示す図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態に係る音声再生装置を、図を参照しながら説明する。
【００２０】
（実施形態１）
本発明の実施形態１に係る音声再生装置１は、図１に示すように、音源装置１０と、デコーダ２０と、音声信号加工装置３０と、Ｄ／Ａ変換器４０と、スピーカ５０と、から構成される。
【００２１】
音源装置１０は、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）プレーヤ、ＭＰ３（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ  Ａｕｄｉｏ  Ｌａｙｅｒ  ３）プレーヤ、等から構成され、符号化されて記録されている音声信号（デジタル音声信号）を記録媒体から読み出し、デコーダ２０に供給する装置である。
【００２２】
デコーダ２０は、音源装置１０から供給された符号化された音声信号をデコードして、離散時系列の振幅を示す音声データｘ（ｔ）に変換して音声信号加工装置３０に出力する。
【００２３】
音声信号加工装置３０は、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）等から構成され、デコーダ２０からの入力データ（音声データ）ｘ（ｔ）を一旦記憶し、記憶した音声データｘ（ｔ）がクリップしている場合には、クリップによる音の歪みを低減するように加工して、加工済音声データＸ（ｔ）をＤ／Ａ変換器４０に出力する。音声信号加工装置３０が行う音声信号加工処理については後述する。
【００２４】
Ｄ／Ａ変換器４０は、音声信号加工装置３０から供給された加工済音声データＸ（ｔ）をＤ／Ａ（Ｄｉｇｉｔａｌ  ｔｏ  Ａｎａｌｏｇ）変換して、アナログ音声信号をスピーカ５０に出力する。
【００２５】
スピーカ５０は、Ｄ／Ａ変換器４０から供給されるアナログ音声信号を音に変換して出力する。
スピーカ５０は図２(a)に示すように、スピーカユニット５１とスピーカエンクロージャ５２と入力端子５３とを備える。
【００２６】
スピーカユニット５１は、図２（ｂ）に示すように、コイル５１１と、マグネット５１２と、フレーム５１３と、センタキャップ５１４と、ダンパ５１５と、コーン紙５１６と、エッジ５１７と、を備える。
【００２７】
コイル（ボイスコイル）５１１は、コーン紙５１６の中心部に固定され、Ｄ／Ａ変換器４０から、入力端子５３を介して供給される、アナログ音声信号が流れるように接続され、マグネット５１２からの磁界とアナログ音声信号（電流）とによって生じる電磁力によって前後に移動し、コーン紙５１６を振動させる。
【００２８】
マグネット５１２は、コイル５１１に磁界を加える。
【００２９】
フレーム５１３は、スピーカエンクロージャ５２に固定され、マグネット５１２とダンパ５１５とエッジ５１７とを支持・固定する。
【００３０】
センタキャップ５１４は、コイル５１１の前面中央部に取り付けられ、コーン紙５１６の中央部及びコイル５１１を保護する。
【００３１】
ダンパ５１５は、コイル５１１とコーン紙５１６とからなるスピーカユニット５１の動的ユニットを支持し、所定の位置に保持する。
【００３２】
コーン紙５１６は、コーン状に成形された振動板であり、中心部にコイル５１１が固定され、コイル５１１と共に振動することによって空気を振動させ、放音する。コーン紙５１６は、エッジ５１７によってフレーム５１３に固定されている。
【００３３】
上記構成により、負極性の音声信号が入力されると、コーン紙５１６は後方に、つまりスピーカエンクロージャ５２に含まれる空気を圧縮する方向に移動し、正極性の音声信号が入力されると、コーン紙５１６は前方に、即ちスピーカエンクロージャ５２に含まれる空気を膨張させる方向に移動する。このため、絶対値が等しい正極性の音声信号入力と負極性の音声信号ではコーン紙５１６の動作性が異なる。また、コーン紙５１６の形状やエッジ５１７の物性等が前後方向に対称では無いため、コーン紙５１６に同じ絶対値の力を加えた場合でも、前方に移動する場合と後方に移動する場合とで、コーン紙５１６の反応は前後で異なる。このため、図３に示すように、絶対値が同一の入力信号を供給しても、入力信号が正極性の時と負極性のときとでは、コーン紙の５１６の動きは異なり、負極性の信号を供給したときの動きの方が正極性の信号を印加したときの動きよりも小さい。
また、スピーカ５０は、スピーカエンクロージャ５２が小さいほど、また、スピーカエンクロージャ５２の内部空間の気密度が高いほど、コーン紙５１６の移動による圧力変化の影響が大きいという特性を有する。また、密閉型のスピーカ５０はコーン紙５１６が動きにくいという特性を有する。
【００３４】
次に、図１に示す音声信号加工装置３０の構成を、図４を参照して説明する。
音声信号加工装置３０は、図４（ａ）に示すように、情報処理部３０１と、データ記憶部３０２と、プログラム記憶部３０３と、データ入力部３０４と、データ出力部３０５とを備える。
【００３５】
情報処理部３０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、音声処理用ＤＳＰ、等から構成され、プログラム記憶部３０３に記憶されている制御プログラム３０８に従って、クリップ波形の加工（圧縮；レベル低減）を含む音声信号加工処理を含む各種の処理を実行する。
【００３６】
データ記憶部３０２は、ＲＡＭ（Ｒａｎｄｏｍ−Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等から構成され、デコーダ２０からの入力データ（音声データ）ｘ（ｔ）を順次記憶する。また、データ記憶部３０２は、情報処理部３０１の作業領域として用いられる。
【００３７】
プログラム記憶部３０３は、フラッシュメモリ、ハードディスク、等の不揮発性メモリから構成され、情報処理部３０１の動作を制御する制御プログラム３０８を記憶する。なお、情報処理部３０１と、データ記憶部３０２と、プログラム記憶部３０３と、データ入力部３０４と、データ出力部３０５とは、内部パス３０７によってそれぞれ接続され、情報の送信が可能である。
【００３８】
データ入力部３０４は、デコーダ２０から供給される入力データ（音声データ）ｘ（ｔ）を、順次取り込み、情報処理部３０１に供給する。なお、デコーダ２０から供給される音声信号の、時刻ｔにおける音声データ（信号素片）をｘ（ｔ）と表記する。入力信号ｘ（ｔ）は、システムの設計上の最大値（ＭＡＸ）と最小値（ＭＩＮ）との間の値を取る。本実施形態では、最大値は＋１，最小値は−１とする。
【００３９】
データ出力部３０５は、処理済の音声データＸ（ｔ）を、Ｄ／Ａ変換器４０に順次出力する。
【００４０】
音声信号加工装置３０は、上記物理構成により、図４（ｂ）に示すように、入力部３１０、遅延バッファ３２０、クリップ検出部３３０、正負判別部３４０、クリップカウンタ３５０、加工部３６０、記憶部３７０、出力部３８０、として機能する。入力部３１０は、図４（ａ）のデータ入力部３０４に対応する。遅延バッファ３２０、クリップ検出部３３０、正負判別部３４０、クリップカウンタ３５０、加工部３６０、の機能は図４（ａ）の情報処理部３１０がデータ記憶部３０２をバッファとして用いることにより実現する。記憶部３７０、図４（ａ）のデータ記憶部３０２及びプログラム記憶部３０３に対応する。出力部３８０は、図４（ａ）のデータ出力部３０５に対応する。
【００４１】
入力部３１０は、デコーダ２０から供給される入力データ（信号素片）ｘ（ｔ）を、遅延バッファ３２０とクリップ検出部３３０とに伝達する。
【００４２】
遅延バッファ３２０は、入力信号ｘ（ｔ）をｎサンプリング期間だけ遅延して加工部３６０に供給する。遅延バッファ３２０の遅延時間を定めるサンプリング数ｎは、実験的に求められた値であり、例えば、音声信号に含まれる最低周波数成分の１周期分のサンプリング数である。
【００４３】
クリップ検出部３３０は、入力信号ｘ（ｔ）がクリップしているか否か判別する。ここで、信号がクリップしているとは、入力信号ｘ（ｔ）がＭＡＸ又はＭＩＮの値であることをいう。ここでは、入力データｘ（ｔ）の値が＋１又は−１であるときに、入力データｘ（ｔ）がクリップしていると判別する。クリップ検出部３３０は、入力データｘ（ｔ）が＋１又は−１であると判別すると、カウントアップ信号ＵＰをクリップカウンタ３５０に出力し、＋１でも−１でも無いと判別するとリセット信号ＲＥＳＥＴをクリップカウンタ３５０に出力する。
【００４４】
正負判別部３４０は、入力データｘ（ｔ）の符号が正であるか負であるかを判別し、判別した符号を示す符号データを加工部３６０に供給する。また、正負判別部３４０は、信号の正負が反転すると、リセット信号ＲＥＳＥＴをクリップカウンタ３５０に出力する。
【００４５】
クリップカウンタ３５０は、クリップ検出部３３０からのカウントアップ信号ＵＰに応答して、カウント値をアップする。また、リセット信号ＲＥＳＥＴに応答して、カウント値を０にリセットする。クリップカウンタ３５０の値は、値が＋１又は−１である入力データｘ（ｔ）が連続した数を示す。
【００４６】
加工部３６０は、クリップカウンタ３５０のカウント値と正負判別部３４０から供給された符号データとに基づいて、入力データｘ（ｔ）を加工対象とするか否かを判別し、判別結果を内部メモリに記憶する。加工部３６０は、内部メモリに記憶された判別結果のデータに基づいて、遅延バッファ３２０から供給される遅延データｘ（ｔ−ｎ）に乗算すべき補正乗数（係数）を求め、入力データｘ（ｔ−ｎ）と補正乗数との積を求めることにより各入力データの絶対値を小さくし（信号を圧縮し）、出力部３８０を介してＤ／Ａ変換器４０に出力する。
【００４７】
この補正乗数は、クリップによる音の歪みを減少すると共に、上述した入力信号の極性の差によるスピーカ５０のコーン紙５１６の動きの差に起因する音の歪みを低減する。すなわち、同一波形で極性が異なる音声信号が入力したときにコーン紙５１６の動きにより生成される振動波形の極性間の差を小さくするような値の集合に設定されている。
【００４８】
具体的には、本実施形態においては、補正乗数として、図５に示すように、入力データｘ（ｔ）が正の値のときのクリップ開始位置近傍の入力データｘ（ｔ）を補正加工するための乗数群α１と、クリップ終了位置近傍の入力データｘ（ｔ）を補正するための乗数群α２と、入力データｘ（ｔ）が負の値のときのクリップ開始位置近傍の入力データｘ（ｔ）を補正加工するための乗数群β１とクリップ終了位置近傍の入力データｘ（ｔ）を補正するための乗数群β２と、が用意される。補正乗数の詳細及びその求め方、使用方法の詳細については後述する。
【００４９】
記憶部３７０は、加工部３６０が入力信号のクリップ部分を加工（圧縮）するための補正乗数の集合を図５に示すように記憶している。
また、記憶部３７０は、入力音声信号のクリップ部分を補正（加工）するか否かを判別するための基準値（閾値）ｔｈ（＋）とｔｈ（−）を記憶している。基準値ｔｈ（＋）は、正極性の音声信号に関し、クリップがこの基準値ｔｈ（＋）以上連続した際に入力信号を加工すると判別する基準値であり、基準値ｔｈ（−）は、負極性の音声信号に関し、クリップがこの基準値ｔｈ（−）以上連続した際に入力信号を加工すると判別する基準値である。
【００５０】
次に、加工部３６０が実行する音声信号加工処理について説明する。
クリップしている原音、入力信号、出力信号の波形の一例を図６に示す。実線で示される入力信号の波形は、一点鎖線で示す原音のように正弦波となるべきものが、録音時に音量が最大値（＋１）と最小値（−１）を超えたために、最大値より大きい部分及び最小値より小さい部分が制限され、台形状に変形している。この場合に、一点鎖線で示す原音の波形を復元できれば理想であるが、実際には、データの値が＋１から−１の間に制限されているため困難である。
【００５１】
そこで、本実施形態では、クリップしている入力信号の波形のクリップ開始点Ｐ１、Ｐ３近傍、及び、クリップ終了点Ｐ２、Ｐ４近傍の波形を加工（補正）して、波形の角を取る（なめらかにする）ことにより、出力信号を得て、高調波成分の発生を抑え、音質を改善する。
【００５２】
波形の加工は、クリップ開始点Ｐ１、Ｐ３近傍、及び、クリップ終了点Ｐ２、Ｐ４近傍の波高値（信号値）に予め設定されている１以下の正の値である補正乗数を乗算して、補正された波高値とすることにより行う。
また、スピーカ５０のコーン紙５１６は、前述したように、同一の波形の入力信号を供給しても、負極性の信号を供給したときの方が正極性の信号を供給したときよりも動きが小さい。このため、波形の加工に関しては、負極性の信号に関しては、正極性の信号よりも、波形の実効値が大きくなる（補正量が小さくなる）ように補正乗数を設定する。また、スピーカ５０は、上述したように、スピーカエンクロージャ５２が小さいほど、また、スピーカエンクロージャ５２の内部空間の気密度が高いほど、コーン紙５１６の移動による圧力変化の影響が大きい。また、密閉型のスピーカ５０はコーン紙５１６が動きにくい。
さらに、エッジ５１７の硬さや形状によってもコーン紙５１６の前後の動作性が変わってくる。そのため、スピーカ毎に設計値、実験等に基づいて、最適な補正乗数を設定する必要がある。
【００５３】
本実施形態では、図５に示すように正極性の波形加工用の補正乗数群α１及びα２と、負極性用の波形加工用の補正乗数群β１及びβ２と、を設定する。補正乗数群α１とα２は、クリップした正極性の波形の角をとるように滑らかに補正するための係数であり、補正乗数群β１とβ２は、クリップした負極性の波形の角をとるように滑らかに補正するための係数であるが、α１とα２と比べて補正の程度が小さい係数群である。また、補正乗数群α１とβ１とは、クリップ開始位置近傍の入力データｘ（ｔ）を補正するための補正乗数であり、補正乗数群α２とβ２とは、クリップ終了位置近傍の入力データｘ（ｔ）を補正するための補正乗数である。
【００５４】
補正乗数α１（ｉ）、β１（ｉ）におけるｉは、入力データｘ（ｔ）のクリップ開始位置（最初に＋１又は−１となったデータの位置）を０としたときの時間軸上の相対位置を示し、例えば、−１は、時間軸上で１サンプリング期間前を、＋２は２サンプリング期間後のタイミングを示す。また、補正乗数α２（ｉ）、β２（ｉ）におけるｉは、入力データｘ（ｔ）のクリップ終了位置（最後に＋１又は−１となったデータの位置）を０としたときの時間軸上の相対位置を示し、例えば、−２は、時間軸上で２サンプリング期間前を、＋３は３サンプリング期間後のタイミングを示す。
【００５５】
従って、例えば、α１（０）は、入力データｘ（ｔ）が、正極性の半波長中で最初にクリップした（＋１となった）入力データｘ（ｉ）と乗算され、α１（−２）は、正極性の半波長中で最初にクリップした（＋１となった）入力データｘ（ｉ）より２つ前の入力データｘ（ｉ−２）に乗算される。同様に、β１（０）は、入力データｘ（ｔ）が、負極性の半波長中で最初にクリップした（−１となった）入力データｘ（ｉ）と乗算され、α１（−１）は、負極性の半波長中で最初にクリップした（−１となった）入力データｘ（ｉ）より１つ前の入力データｘ（ｉ−１）に乗算される。また、α２（０）は、正極性の半波長中でクリップ状態にある（値が＋１である）最後の入力データｘ（ｉ）と乗算され、α２（＋１）は、正極性の半波長中でクリップ状態にある（値が＋１である）最後の入力データｘ（ｉ）より１つ後の入力データｘ（ｉ＋１）に乗算される。また、β２（０）は、負極性の半波長中でクリップ状態にある（値が−１である）最後の入力データｘ（ｉ）と乗算され、β２（＋２）は、負極性の半波長中でクリップ状態にある（値が−１である）最後の入力データｘ（ｉ）より２つ後の入力データｘ（ｉ＋２）に乗算される。
【００５６】
次に、上記構成を有する音声再生装置１の動作を図７，図８のフローチャートを参照して説明する。
まず、音源装置１０は、再生の指示に応答して、記録媒体から符号化された音声信号を順次読み出し、デコーダ２０に順次出力する。デコーダ２０は、供給された符号化音声信号をデコードし、音声データｘ（ｔ）を順次出力する。
【００５７】
一方、音声信号加工装置３０は、電源投入後、図７に示す音声信号加工処理を開始し、まず、所定の初期化処理を実行する（ステップＳ１１）。
【００５８】
続いて、音声信号加工装置３０は、デコーダ２０から順次供給される入力データ（音声データ）ｘ（ｔ）を取得する（ステップＳ１２）。音声信号加工装置３０は、取得した入力データｘ（ｔ）を用いて、加工対象領域抽出処理を実行する（ステップＳ１３）。
【００５９】
加工対象領域抽出処理（ステップＳ１３）は、入力された音声信号がクリップした波形であるか否かを判別し、さらに、クリップした波形であると判別した場合には、加工（補正）の対象するか否かを判別し、加工の対象とすると判別した場合には、加工する領域（クリップの開始点近傍とクリップの終了点近傍の所定範囲）を特定する処理である。
【００６０】
加工対象領域抽出処理（ステップＳ１２）の詳細を、図８を参照して説明する。
まず、音声データｘ（ｔ）が供給されると、クリップ検出部３３０は、今回入力したデータｘ（ｔ）がクリップしているか否かを判別する（ステップＳ１０１）。即ち、ｘ（ｔ）の値が１又は−１であるか否かを判別する。
【００６１】
クリップ検出部３３０は、入力データｘ（ｔ）がクリップしていないと判別した場合（ステップＳ１０１；Ｎｏ）、リセット信号ＲＥＳＥＴをクリップカウンタ３５０に出力する。リセット信号ＲＥＳＥＴに応答して、クリップカウンタ３５０は、カウント値を０にリセットする（ステップＳ１０３）。
【００６２】
次に、クリップ検出部３３０は、入力データｘ（ｔ）がクリップ状態（値が＋１又は−１である状態）からクリップが解除した状態（値が＋１又は−１では無い状態）に変化したか否かを判別する（ステップＳ１０４）。クリップの解除に該当すると判別すると（ステップＳ１０４；Ｙｅｓ）、後述するステップＳ１０５に進み、クリップの解除に該当しないと判別すると（ステップＳ１０４；Ｎｏ）、今回の加工対象領域特定処理を終了する。ここでは、クリップの解除ではないと仮定する（ステップＳ１０４；Ｎｏ）。この場合、今回の加工対象領域抽出処理を終了する。
【００６３】
例えば、図６に示した入力信号の場合、入力データｘ（ｔ）の値は、０近傍から徐々に大きくなっていく。このため、当初は入力データｘ（ｔ）は、その値が＋１とはならず（ステップＳ１０１；Ｎｏ）、クリップカウンタ３５０がリセットされ（ステップＳ１０３）、クリップの解除には該当しないと判断され（ステップＳ１０４；Ｎｏ）、今回の加工対象領域抽出処理を終了する。
【００６４】
一方、ステップＳ１０１で、クリップ検出部３３０が、入力データｘ（ｔ）の値が＋１又は−１であると判別すると（ステップＳ１０１；Ｙｅｓ）、次に、ｘ（ｔ）がｘ（ｔ−１）と同符号であるか、正負判別部３４０が判別する（ステップＳ１０２）。例えば、ｘ（ｔ）が＋１でｘ（ｔ−１）が−１で有った場合等、ｘ（ｔ−１）とｘ（ｔ）の符号が異なる場合（ステップＳ１０２；ＮＯ）、クリップは解除されたものとされ、ステップＳ１０３に移行する。なお、入力データｘ（ｔ）のｔは入力データの絶対時刻を表す変数であり、加工対象となるクリップの開始位置を０とした場合の時間軸上の相対位置を示す変数ｉとは区別される。
【００６５】
一方、ｘ（ｔ）とｘ（ｔ−１）とが同符号であった場合（ステップＳ１０２；Ｙｅｓ）、クリップ検出部３３０は、カウントアップ信号ＵＰをクリップカウンタ３５０に出力する。カウントアップ信号ＵＰに応答して、クリップカウンタ３５０は、カウント値をインクリメントする（ステップＳ１０６）。次に、正負判別部３４０は、入力データｘ（ｔ）が正の値であるか、負の値であるかが判別し、判別結果を加工部３６０に通知する（ステップＳ１０７）。加工部３６０は、通知に応答し、記憶部３７０から、通知された極性に対応する閾値ｔｈ（＋）又はｔｈ（−）を読み出し、ＴＨと置く（ステップＳ１０８，Ｓ１０９）。この閾値ｔｈ（＋）とｔｈ（−）は、それぞれ、正極性の半波及び負極性の半波において発生したクリップが、波形の補正が必要な程に大きな（長い）ものであるか否かを判別するための基準値である。ｔｈ（−）≧ｔｈ（＋）である。
【００６６】
次に、クリップカウンタ３５０のカウント値が閾値ＴＨに一致したか否かを判別する（ステップＳ１１０）。即ち、クリップ状態がＴＨサンプリング期間継続したか否か、換言すると、入力データｘ（ｔ）がＴＨ回連続して＋１又は−１であったか否かを判別する。
【００６７】
加工部３６０は、クリップカウンタ３５０のカウント値が閾値ＴＨと等しくないと判別した場合（ステップＳ１１０；Ｎｏ）、特段の処理を行わず、今回の加工対象領域抽出処理を終了する。なお、クリップカウンタ３５０のカウント値が閾値ＴＨ等しくないと判別する場合には、２つの場面がある。まず、クリップカウンタ３５０のカウント値が閾値ＴＨ未満の場合は、クリップ状態の連続量が少なく、未だ、補正が必要な程度に達していないため、特段なにも行わない。一方、クリップカウンタ３５０のカウント値が閾値ＴＨより大きい場合は、補正の対象領域を特定済みのため、今回は特段なにも行わない。
【００６８】
一方、加工部３６０は、クリップカウンタ３５０の値が閾値ＴＨと等しいと判別した場合（ステップＳ１１０；Ｙｅｓ）、即ち、入力データｘ（ｔ）の補正が必要である程度にクリップ状態が連続していると判別した場合、波形の補正が必要であることを示すクリップフラグをセットする（ステップＳ１１２）。
【００６９】
次に、入力データｘ（ｔ）の符号（正負）を判別する（ステップＳ１１３）。
符号が正であった場合（ステップＳ１１３；正）、（ｔ−クリップカウント値）、即ち、入力データｘ（ｔ）が、初めて＋１となった時点を基準（ｘ（ｉ））として、ｘ（ｔ−ｍ１）〜ｘ（ｔ＋ｎ１）を処理対象範囲（加工対象範囲）に特定し、さらに、補正乗数をα１とする（ステップＳ１１４）。即ち、クリップ開始時点近傍の補正範囲及び補正内容を特定する。なお、図５の例では、ｍ１＝４、ｎ１＝４である。
【００７０】
一方、入力データｘ（ｔ）の符号が負であった場合（ステップＳ１１３；負）、（ｔ−クリップカウント値）、即ち、入力データｘ（ｔ）が、初めて−１となった時点を基準として、ｘ（ｔ−ｍ２）〜ｘ（ｔ＋ｎ２）を処理対象範囲に特定し、さらに、補正乗数をβ１とする（ステップＳ１１５）。即ち、クリップ開始時点近傍の補正範囲及び補正内容を特定する。なお、図５の例では、ｍ２＝４、ｎ２＝４である。
【００７１】
ステップＳ１１４又はＳ１１５の設定処理終了後、今回の処理を終了する。
【００７２】
続いて、例えば、入力データｘ（ｔ）のクリップ状態が終了し、入力データｘ（ｔ）の値が＋１又は−１ではなくなった場合、ステップＳ１０１でＮｏと判別され、クリップカウンタ３５０がリセットされる（ステップＳ１０３）。ｘ（ｔ）の値が＋１から−１（あるいはその逆）に変化した場合（ステップＳ１０２；Ｎｏ）も同様である。さらに、ステップＳ１０４では、クリップの解除（入力データｘ（ｔ）が＋１又は−１から他の値に変化した）と判別される（ステップＳ１０４；Ｙｅｓ）。
【００７３】
次に、加工部３６０は、クリップフラグがオンか否かを判別する（ステップＳ１０５）。なお、クリップフラグがオンであるのは、クリップ状態が閾値ＴＨ以上の期間継続し、ステップＳ１１４，Ｓ１１５で波形の補正が必要と判別された場面である。
クリップフラグがオンであると判別された場合（ステップＳ１０５；Ｙｅｓ）、クリップフラグをリセット（オフ）する（ステップＳ１１６）。
【００７４】
次に、１つ前の入力データｘ（ｔ−１）を特定し、その符号を判別する（ステップＳ１１７）。
入力データｘ（ｔ−１）は、クリップ状態にある最後の入力データに相当する。
入力データｘ（ｔ−１）の符号が正の場合（ステップＳ１１７；正）、（ｔ−１）、即ち、クリップ状態にある最後のデータの入力時点を基準として、ｘ（ｔ−１−ｍ３）〜ｘ（ｔ−１＋ｎ３）を加工対象範囲に特定し、さらに、補正乗数をα２とする（ステップＳ１１８）。即ち、クリップ終了時点近傍の補正範囲及び補正内容を特定する。図５の例では、ｍ３＝４、ｎ３＝４である。
【００７５】
一方、入力データｘ（ｔ−１）の符号が負であった場合（ステップＳ１１７；負）、（ｔ−１）、即ち、クリップ状態にある最後のデータの入力時点を基準として、ｘ（ｔ−１−ｍ４）〜ｘ（ｔ−１＋ｎ４）を処理対象範囲に特定し、さらに、補正乗数をβ２とする（ステップＳ１１９）。即ち、クリップ終了時点近傍の補正範囲及び補正内容を特定する。図５の例では、ｍ４＝４、ｎ４＝４である。
【００７６】
以上で、本実施形態の加工対象領域抽出処理を終了し、図７に示すメインフローに戻る。
【００７７】
次に、タイミングｔでは、遅延バッファ３２０からｎクロック前の入力データｘ（ｔ−ｎ）が出力されている。
加工部３６０は、この遅延データｘ（ｔ−ｎ）がステップＳ１３で実施した加工対象領域抽出処理で特定した処理対象データ（処理対象範囲に含まれるデータ、加工対象のデータ）として、内部メモリに登録されているか否かを、内部メモリの記録内容から判別する（ステップＳ１４）。
処理対象として登録されていない場合（ステップＳ１４；Ｎｏ）、遅延データｘ（ｔ−ｎ）をそのまま出力データＸ（ｔ）としてデコーダ４０に出力する（ステップ１６）。
その後、処理はステップＳ１２に戻り、次の入力データに同様の処理が実行される。
【００７８】
一方、ステップＳ１４で、遅延データｘ（ｔ−ｎ）が加工対象のデータであると判別された場合（ステップＳ１４；Ｙｅｓ）、内部メモリに記憶されているデータに基づいて、使用する乗算計数を特定する、さらに、基準時点ｉに対する相対位置を特定する。次に、特定した乗算係数群α１，α２，β１、β２のうちから相対位置が一致するものを特定し、遅延データｘ（ｔ−ｎ）に乗算し、積を求める（ステップＳ１５）。
続いて、求めた積を出力データＸ（ｔ）として出力する（ステップＳ１６）。
【００７９】
例えば、今、遅延バッファ３２０から出力されたデータｘ（ｔ−ｎ）が処理対象データとして特定されており、補正乗数としてα１が設定さているとする。加工部３６０は、ｔ−ｎと基準位置ｉとの差を求める。
例えば、（ｔ−ｎ）−ｉ＝−３、即ち、遅延データｘ（ｔ−ｎ）が基準位置ｉより３サンプリング前のデータの場合、加工部３６０は、乗算係数α１（−３）＝０．９を図５のテーブルから読み出し、これを遅延データｘ（ｔ−ｎ）に乗算してｘ（ｔ−ｎ）・α１（−３）＝０．９・ｘ（ｔ−ｎ）を補正後の音声データとして出力する。
同様に、例えば、遅延バッファ３２０から出力されたデータｘ（ｔ−ｎ）が処理対象データとして特定されており、乗算係数としてβ２が設定さているとする。加工部３６０は、ｔ−ｎが基準位置ｉとの差を求める。例えば、（ｔ−ｎ）−ｉ＝＋２、即ち、遅延データｘ（ｔ−ｎ）が基準位置ｉより２サンプリング後のデータの場合、加工部３６０は、乗算係数β２（＋２）＝０．８５を図５のテーブルから読み出し、これを遅延データｘ（ｔ−ｎ）に乗算してｘ（ｔ−ｎ）・α１（−３）＝０．８８・ｘ（ｔ−ｎ）を求めて補正後の音声データとして出力する。
【００８０】
このような動作を繰り返すことにより、音声信号加工装置３０は、クリップによる歪みの影響を小さくするようにデコーダ２０から供給される音声信号の音声信号を補正すると共に入力音声信号の極性に対するコーン紙５１６の動特性の異方性に起因する音の歪みを抑えることができる。
【００８１】
この発明は上記実施形態に限定されず、種々の変形及び応用が可能である。
【００８２】
例えば、上記実施形態においては、入力信号の全周波数帯域に一様の加工処理を施したが、例えば、入力信号の周波数帯域別に加工（補正）処理を行っても良い。図９に入力信号を高周波数帯と低周波数帯の２つに分離し、それぞれ加工処理を行った後、加算する構成の例を示す。この構成は、入力信号をハイパスフィルタ（ＨＰＦ）３９０とローパスフィルタ（ＬＰＦ）３９１により２つの周波数帯域の成分に分離し、それぞれ、図４（ｂ）に示した回路と同様の回路とそれぞれの周波数帯のスピーカ５０の特性に最適化した補正パラメータにより補正処理を行った後、加算器３９２により両帯域の補正済信号を加算して出力する構成である。また、入力信号を３つ以上フィルタ（ハイパスフィルタ、バンドパスフィルタ、ローパスフィルタ）を用いて３つ以上の周波数帯に分離し、分離したそれぞれの周波数帯の入力信号に対してそれぞれ上記加工処理を行っても良い。
【００８３】
また、図１０に示すように、高周波数処理部の出力を、図示せぬ高周波数用Ｄ／Ａコンバータを介して、高周波数用スピーカ５１Ｈに供給し、低周波数処理部の出力を、図示せぬ低周波数用Ｄ／Ａコンバータを介して、低周波数用スピーカ５１Ｌに供給するように構成してもよい。
【００８４】
上述した補正乗数α１、α２、β１、β２は、一例であり、クリップ波形による再生音の歪み、及び、入力信号の極性に対するスピーカの動特性の差による再生音の歪みを共に抑制できるならば、任意の補正乗数を採用可能である。
例えば、上記実施の形態では、入力音声信号の各波形のクリップ部分の両端部分を主に加工（補正）したが、図１１に示すように、より広範囲に加工（補正）を行うようにしてもよい。
【００８５】
上記実施形態においては、クリップの開始点を含む所定範囲とクリップの終了点を含む所定範囲とをそれぞれ加工（圧縮）の範囲としたが、クリップの開始点を含む所定範囲とクリップの終了点を含む所定範囲との一方のみを加工（圧縮）の対象としてもよい。また、クリップ部分（クリップの開始点と終了点との間の部分）のみを加工の対象としてもよい。
【００８６】
入力データｘ（ｔ）の加工対象とするか否かを判別するために、クリップの連続数がＴＨ（ｔｈ（＋）、ｔｈ（−））に基づいて判別したが、他の手法を使用することも可能である。
【００８７】
また、例えば、図５の例では、正極性の入力信号用の補正乗数α１，α２は、補正の範囲（加工の対象とする入力データ数）も個々の入力データに対する補正の程度も、負極性の入力データ用の補正乗数β１，β２よりも大きくなるように設計した。本発明はこれに限定されず、例えば、入力信号の極性に応じて、補正の範囲のみ異ならせたり、補正の範囲は同一として、補正の程度のみを入力信号の極性に応じて異ならせるように設計してもよい。
【００８８】
また、上記実施の形態においては、補正乗数を数値の形態で予め用意しておいたが、補正乗数を関数ｆの形態で用意してもよい。例えば、補正乗数を図１２に例示するような関数の形式で記憶し、入力信号の極性Ｐ等に基づいて、関数ｆ（ＣＮ，Ｐ）の形状、例えば、補正する範囲に相当するＴ、補正の程度に相当する深さＤ、曲線の傾きＣ、等を変化させるようにしてもよい。なお、ＣＮは入力信号の各波形におけるクリップの長さ（クリップカウンタ３５０のカウント値）をあらわす数値である。、各パラメータ（Ｔ，Ｄ、Ｃ）は、少なくとも入力信号の極性Ｐに基づいて変化する必要があるが、その他にも入力信号の各波形におけるクリップの長さＣＮ、等に基づいて変化してもよい。図１２のグラフでは、ｆ＝１と関数ｆとの交点が、それぞれ加工を開始する部分と加工を終了する部分とに対応する。関数ｆの極小値を入力信号のクリップ開始部（クリップ終了部）と対応させることが好ましい。図１２では、関数ｆの極小値と上記二つの交点との距離は等しいが、当該極小値と上記二つの交点との距離は異なっていても良い。
【００８９】
上記実施の形態では、正極性の音声信号が入力された時のコーン紙（可動部）５１６の動きの方が、負極性の音声信号が入力された時のコーン紙（可動部）５１６の動きよりも大きいスピーカ５０を使用する例を示した。負極性の音声信号が入力された時のコーン紙５１６の動きの方が、正極性の音声信号が入力された時のコーン紙５１６の動きよりも大きいスピーカ５０を使用する場合には、負極性の入力信号に対する補正を正極性の入力信号の補正よりも大きくすればよい。
【００９０】
スピーカ５０の構成は任意であり、例えば、図１３に示すような、開口を有する構成等も採用可能である。この場合、スピーカの動作特性や周波数特性に合わせて、補正乗数を適宜設計する。
【００９１】
音源装置１０の出力信号は、アナログでも良い。このときは、デコーダ２０に代えてＡ／Ｄコンバータを配置すればよい。
【００９２】
また、入力部、通信などを介して、上述の各種パラメータ、例えば、ｔｈ（＋）、ｔｈ（−）、α１〜β２等を適宜設定変更できるようにしてもよい。また、他の加工・圧縮、補正用のパラメータをあわせて使用することも可能である。
【００９３】
また、音源装置１０の出力信号が複数チャネル存在する場合には、チャネル毎に、音声信号加工装置３０を配置すればよい。
【００９４】
なお、この発明は専用の装置に限定されず、例えば、汎用のコンピュータに上述の信号加工処理を実行させるプログラムをインストールし、実行させることにより、音声信号加工装置として機能するようにしてもよい。
【符号の説明】
【００９５】
１    音声再生装置
１０  音源装置
２０  デコーダ
３０  音声信号加工装置
４０  Ｄ／Ａ変換器
５０  スピーカ
５１  スピーカユニット
５１Ｈ  高周波数用スピーカ
５１Ｌ  低周波数用スピーカ
５２  スピーカエンクロージャ
５３  入力端子
３０１  情報処理部
３０２  データ記憶部
３０３  プログラム記憶部
３０４  データ入力部
３０５  データ出力部
３０７  内部パス
３０８  制御プログラム
３１０  入力部
３２０  遅延バッファ
３３０  クリップ検出部
３４０  正負判別部
３５０  クリップカウンタ
３６０  加工部
３７０  記憶部
３８０  出力部
３９０  ハイパスフィルタ（ＨＰＦ）
３１９  ローパスフィルタ（ＬＰＦ）
３９２  加算器
５１１  コイル
５１２  マグネット
５１３  フレーム
５１４  センタキャップ
５１５  ダンパ
５１６  コーン紙
５１７  エッジ
【図１】
0005821431.tif 000002
【図２】
0005821431.tif 000003
【図３】
0005821431.tif 000004
【図４】
0005821431.tif 000005
【図５】
0005821431.tif 000006
【図６】
0005821431.tif 000007
【図７】
0005821431.tif 000008
【図８】
0005821431.tif 000009
【図９】
0005821431.tif 000010
【図１０】
0005821431.tif 000011
【図１１】
0005821431.tif 000012
【図１２】
0005821431.tif 000013
【図１３】
0005821431.tif 000014