(57)【特許請求の範囲】
【請求項１】
入力した音声信号の音程を保ちつつ時間軸に伸長処理をして出力する方法であって、
入力した音声信号の音声区間の先頭が、文の先頭であるか文の途中であるかを判断し、
文の先頭であれば、前記音声区間の先頭の第１の区間を第１の伸長率で伸長処理し、これに続く第２の区間を前記第１の伸長率以下である第２の伸長率で伸長処理し、
文の途中であれば、前記音声区間の先頭の区間である第３の区間を前記第１の伸長率以下である第３の伸長率で伸長処理し、これに続く第４の区間を前記第３の伸長率以上である第４の伸長率で伸長処理し、さらにこれに続く第５の区間を前記第３の伸長率と略同一の第５の伸長率で伸長処理することを特徴とする話速変換方法。
【請求項２】
前記第１の区間は前記音声区間の先頭の約６００ミリ秒の区間であり、前記第２の区間は前記第１の区間に続く約１００ミリ秒の区間である請求項１に記載の話速変換方法。
【請求項３】
前記第２の伸長率は、第１の伸長率１＋ｓ倍（ｓは正数）よりも小さく、約１．３倍〜約１＋ｓ／２倍の範囲である請求項１または請求項２に記載の話速変換方法。
【請求項４】
前記第３の区間は前記音声区間の先頭の約１００ミリ秒の区間であり、前記第４の区間は前記第３の区間に続く約５００ミリ秒の区間であり、前記第５の区間は前記第４の区間に続く約１００ミリ秒の区間である請求項１、請求項２、または請求項３に記載の話速変換方法。
【請求項５】
前記第３および第５の伸長率は、第４の伸長率１＋ｒ倍（ｒは正数）よりも小さく、約１．３倍〜約１＋ｒ／２倍の範囲である請求項１乃至請求項４のいずれかに記載の話速変換方法。
【請求項６】
請求項１乃至請求項５のいずれかの話速変換方法を実行する処理部を備えた話速変換装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、入力した音声信号の音程を保ちつつ時間軸に伸長する話速変換方法および話速変換装置に関する。
【０００２】
【従来の技術】
補聴器などで話速変換機能を備えたものが提案されている。話速変換機能は、入力された音声信号を（音程を保ちつつ）時間軸に伸長する機能であり、聴覚感度に加えて理解能力も衰えた老人用の聴覚補助装置として利用される。しかし、音声信号を時間軸に伸長する話速変換を行うと、入力信号に対して出力信号量が増加するため、これを長時間継続すると、話速変換した音声信号が出力されないで蓄積されてゆき出力バッファがオーバーフローしてしまう。また、対話時には、話者の口ぶりや身振りなどの視覚による情報が言語理解の補助になることが知られているが、話速変換処理を継続した場合、入力される音声信号に対して出力される音声信号は徐々に遅れてゆき、視覚による情報と音声信号とのずれが大きくなりすぎて、視覚による情報が言語理解に役立たなくなる。
【０００３】
また、言語理解において、文の先頭部分の数音節を良好に聞き取ることが大きな要素となっていることが研究によって知られており、先頭部分の数音節を伸長してゆっくり聴かせることが話速変換における重要な要素となっている。
【０００４】
このような事情から、補聴器などに適用される話速変換では、文の先頭部分の数音節（７００ｍｓ程度）を２倍程度の伸長率で話速変換し、それ以後の音声については話速変換せずに原音話速で出力することが考えられるが、話速変換している信号とそれ以後の原音話速の信号の切り替わりで音声が不自然な感じになり、これがまた理解度低下の原因になっていた。
【０００５】
そこで、特開平７−２８１６９０号公報や特開平７−２８１６９１号公報などに最初は大きな伸長率でゆっくりに話速変換し、徐々に伸長率を小さくして最終的に原音話速にするという技術が提案されている。
【０００６】
【発明が解決しようとする課題】
しかし、上記公報のように徐々に伸長率を小さくしてゆくという技術は、話速変換に要する信号処理量が増大するという問題点があった。このため高速信号処理デバイスを用いる必要が生じ、システム価格が高くなるとともに、消費電力の増大、装置の大型化を招くため、特に補聴器として用いる場合には問題点が多かった。
【０００７】
この発明は、より簡略な処理で高い理解度が得られる（リアルタイムの）話速変換を実現できる話速変換方法および話速変換装置を提供することを目的とする。
【０００８】
【課題を解決するための手段】
この発明は、入力した音声信号の音程を保ちつつ時間軸に伸長処理をして出力する方法であって、入力した音声信号の音声区間の先頭が、文の先頭であるか文の途中であるかを判断し、文の先頭であれば、前記音声区間の先頭の第１の区間を第１の伸長率で伸長処理し、これに続く第２の区間を前記第１の伸長率以下である第２の伸長率で伸長処理し（第１の処理手順）、文の途中であれば、前記音声区間の先頭の区間である第３の区間を前記第１の伸長率以下である第３の伸長率で伸長処理し、これに続く第４の区間を前記第３の伸長率以上である第４の伸長率で伸長処理し、さらにこれに続く第５の区間を前記第３の伸長率と略同一の第５の伸長率で伸長処理する（第２の処理手順）ことを特徴とする。
この発明は、上記発明において、前記第１の区間は前記音声区間の先頭の約６００ミリ秒の区間であり、前記第２の区間は前記第１の区間に続く約１００ミリ秒の区間であることを特徴とする。
この発明は、上記発明において、前記第２の伸長率は、第１の伸長率１＋ｓ倍（ｓは正数）よりも小さく、約１．３倍〜約１＋ｓ／２倍の範囲であることを特徴とする。
この発明は、上記発明において、前記第３の区間は前記音声区間の先頭の約１００ミリ秒の区間であり、前記第４の区間は前記第３の区間に続く約５００ミリ秒の区間であり、前記第５の区間は前記第４の区間に続く約１００ミリ秒の区間であることを特徴とする。
この発明は、上記発明において、第３および第５の伸長率は、第４の伸長率１＋ｒ倍（ｒは正数）よりも小さく、約１．３倍〜約１＋ｒ／２倍の範囲であることを特徴とする。
【０００９】
上記のように、言語理解において文の先頭部分の数音節を良好に聞き取ることが大きな要素となっているため、この発明では、文の先頭部分のみを時間軸に伸長して話速変換する。話速変換して出力する音声区間とそれ以後の原音話速のままで出力する音声区間との境界での不自然さを解消するため、大きな伸長率（第１の伸長率）で話速変換する第１の区間の次に小さな伸長率（第２の伸長率）で話速変換する第２の区間を設けて段階的に伸長率を下げてゆくようにした。これにより、簡略な処理で文の先頭部分のみを話速変換する不自然さを解消して理解度を高くすることができる。この方式で話速変換をした場合、前記第１の区間、第２の区間を通じて同じ伸長率（第１の伸長率）で話速変換した場合に比べて約２０％理解度が向上することが実験で判明している。なお、上記ｓの値は０．６≦ｓ≦１．０程度の範囲が適当である。
【００１１】
音声信号は、それぞれある有限の時間長を有する信号として入力されるが、その信号の先頭が文頭（文の先頭）であるか、それとも文の途中であるかは識別が容易ではない。文の途中を突然話速変換して時間軸に伸長してしまうと出力される音声信号が不自然になって却って理解度を低下させてしまう。そこで、音声信号の先頭の区間（第３の区間）は小さい伸長率（第３の伸長率）で伸長し、途中の区間（第４の区間）は大きい伸長率（第４の伸長率）で伸長し、さらにこれに続く区間（第５の区間）は小さい伸長率（第５の伸長率）で伸長する。このように先頭区間（第３の区間）の伸長率を小さくしたことにより、音声信号の先頭が文の先頭でなかった場合でも話速変換をしてかえって理解度が低下するということがなく、また、第５の区間の伸長率を小さくすることにより、先頭の区間だけ話速変換することによる不自然さを（請求項１，２，３の発明と同様に）解消している。
文中のフレーズの先頭部分を話速変換で伸長しても、このような方式であれば自然であり、このフレーズの理解度を向上することができる。また、文頭のフレーズでこの方式の話速変換を行った場合の理解度の向上は、第３の区間、第４の区間、第５の区間を同じ伸長率（第４の伸長率）で伸長した場合とほぼ同様の向上率を示すことが実験的に判明している。
【００１３】
音声信号の先頭が文の先頭であるかを判断し、文の先頭であれば第１の処理手順を実行することで理解度を向上することができる。また、音声信号の先頭が文の先頭でない場合には第２の処理手順を実行することで、文の流れを妨げずに先頭部分の話速変換を行うことができ、このフレーズの理解度を向上するとともに、もし、このフレーズが文の先頭であった場合にはこの文の理解度を向上することができる。
【００１４】
【発明の実施の形態】
図１はこの発明が適用される話速変換装置の概略ブロック図である。この話速変換装置は例えば補聴器などとして実現される。
【００１５】
マイクなどから入力された音声信号はフィルタ１を介してＡ／Ｄ変換器２でＰＣＭのデジタル音声データに変換される。フィルタ１は、Ａ／Ｄ変換時のエリアシングを防止するためのローパスフィルタである。Ａ／Ｄ変換器２は、入力された音声信号をたとえば、１１ｋＨｚでサンプリングする。Ａ／Ｄ変換器２で変換された音声データはＤＳＰ３に入力され、話速変換などの処理を受けたのち、Ｄ／Ａ変換器６でアナログの音声信号に再度変換され、写像信号を除去するローパスフィルタ７を介してイヤホンなどの出力部に出力される。ＤＳＰ３にはマイクロプログラムなどを記憶するＲＯＭ４および音声データ等をバッファするためのＲＡＭ５が接続されている。
【００１６】
図２は上記ＤＳＰ３の機能を説明する機能ブロック図である。Ａ／Ｄ変換器２が出力した音声データは音声データ取込部１０が取り込む。音声データ取込部１０は取込タイミング制御部１１が指示するタイミングで音声データを取り込み、入力音声データメモリ５ａに順次書き込んでゆく。入力音声データメモリ５ａは前記ＲＡＭ５内に確保されているエリアである。入力音声データメモリ５ａに書き込まれた音声データは、音声／雑音区間判定部１３で音声区間であるか雑音区間であるか判定され、音声区間であると判定された区間については、必要に応じて話速変換処理部１２が話速変換処理を行い、変換処理をした音声データを出力音声データメモリ５ｂに書き込む。この出力音声データメモリ５ｂもＲＡＭ５内に確保されているエリアである。出力音声データメモリ５ｂに蓄積された話速変換された音声データは読み出しタイミング制御部１５の制御によって音声データ読み出し部１４が読み出し、Ｄ／Ａ変換器６に出力される。
【００１７】
なお、音声／雑音区間判定処理部１３には平均パワーメモリ５ｃが接続されている。この平均パワーメモリ５ｃもＲＡＭ５内に確保されているエリアである。
【００１８】
音声／雑音区間判定部１３および話速変換処理部１２は、以下のような処理を行う。音声／雑音区間判定部１３は、Ａ／Ｄ変換された音声データのレベルおよび相関度を判定し、その区間が話速変換する対象である音声区間であるか、話速変換の対象にならない雑音区間であるかを判断する。音声区間、雑音区間の判断については後述する。
【００１９】
話速変換処理部１２は、音声区間の音声信号を取り込み必要に応じて話速変換処理をしたのち出力音声データメモリ５ｂに書き込む。音声信号を時間軸に伸長する話速変換は、一かたまりの音声信号であるフレーズの先頭部分の約７００ｍｓの区間に対して行う。これは、あまり長い区間の話速変換を行うと、大きな出力音声データメモリ５ｂが必要になるうえ、出力される音声が話者の口ぶりや身振りと大きくずれるため違和感があり、視覚による情報の聴覚補助効果が期待できなくなるからであることと、文の先頭部分をゆっくり聴かせることが文全体の理解度向上に大きく寄与するからである。
【００２０】
図１３に示すように、音声／雑音区間判定部１３は、音声区間であるフレーズと次のフレーズの間の雑音区間の長さＴｎを計測しており、この長さが時間しきい値Ｔｔｈ（＝５００ｍｓ）を超える場合には、これに続くフレーズは文の先頭（文頭）であると判断し、Ｔｎの長さが時間しきい値Ｔｔｈよりも短い場合には、これに続くフレーズは文の途中（文中）であると判断する。そして、文頭と判断されたフレーズに対しては図１１に示すＡパターンの話速変換処理（伸長処理）を行い、文中と判断されたフレーズに対しては図１２に示すＢパターンの話速変換処理（伸長処理）を行う。
【００２１】
図１１のＡパターンの話速変換処理は、フレーズの先頭から約６００ｍｓの区間（第１音声区間）は１．３倍〜２倍の大きな伸長率である第１伸長率で音声データの時間軸伸長処理（話速変換）を行い、続く約１００ｍｓの区間（第２音声区間）は第１の伸長率よりも小さな１．３倍程度の第２伸長率で時間軸伸長処理を行う。それ以後の音声区間については伸長処理を行わずにそのまま（原音話速で）出力音声データメモリ５ｂに書き込む。
【００２２】
図１２のＢパターンの話速変換処理は、フレーズの最初の約１００ｍｓの区間（第３音声区間）は、１．３倍程度の第３伸長率で時間軸伸長処理を行い、続く約５００ｍｓの区間（第４音声区間）は、１．３倍〜２倍の第４伸長率で時間軸伸長処理を行い、さらに続く約１００ｍｓの区間（第５音声区間）は、１．３倍程度の第５伸長率で時間軸伸長処理を行う。
【００２３】
このように、Ｂパターンの話速変換処理において、先頭の約１００ｍｓ区間を小さい伸長率で話速変換処理を行うのは、文の途中で突然大きな伸長率で話速変換処理をすると、却って文の理解度が低下してしまうためである。また、フレーズ途中であっても話速変換を行うことにより無音区間の次の音節の理解度をあげることができるが、この様な場合においては、最初の１００ｍｓ程度の区間は小さい伸長率にしたＢパターンの話速変換処理を行うのが効果的である。
【００２４】
以下図面を参照して、同話速変換装置の動作について説明する。
図３は、話速変換の処理手順を示すフローチャートである。図４は、音声／雑音区間判定動作を示すフローチャートである。また、図５および図６は音声／雑音区間判定動作に用いられる相関計算および平均パワー計算を説明する図である。図３の処理は図２の機能ブロックの話速変換処理部１２が行い、図４の処理は図２の機能ブロックの音声／雑音区間判定部１３が行う。
【００２５】
まず、図４において、雑音区間の長さをカウントするＴｎレジスタをリセットするとともに（ｓ１０）、音声区間レベルの連続検出回数（および後述の雑音区間レベルの連続検出回数）をカウントするカウンタＴｍをリセットする（ｓ１１）。この前処理ののち、入力音声データメモリ５ａからリングバッファに入力音声データを取り込む（ｓ１２）。リングバッファは１２０サンプル程度の記憶容量のバッファである。取り込んだデータの相関値Ｋおよび平均パワーＰａｖを算出する（ｓ１３）。相関値Ｋは、取り込んだデータを２分割して対応するサンプルデータを乗算または減算するなどした値である。音声信号などの周期信号の場合相関値Ｋは高くなり、周期性の少ない雑音の場合相関値Ｋは低くなる。相関値Ｋが図５に示す相関しきい値Ｋｎｔｈよりも低い場合には、信号レベル（平均パワー）がどのような値であっても今回のバッファデータは雑音であると判定する。これはレベルの高い雑音を排除するためである。この場合、平均パワーは計算せず０とする。また、相関値Ｋがしきい値Ｋｎｔｈ以上の場合には各サンプルデータを２乗して加算し、サンプル数で除算して平均パワーＰａｖを算出する。このようにして算出された（または０とされた）平均パワーＰａｖを平均パワーメモリ５ｃに書き込む（ｓ１４）。
【００２６】
平均パワーメモリ５ｃは図６の下段に示すように５つの記憶エリアＰＦａｖ１〜ＰＦａｖ５を有している。ｓ１２では、新たなバッファデータについて平均パワーを算出する毎に、記憶エリアＰＦａｖ１からＰＦａｖ５へ順にこれを書き込んでゆき、ＰＦａｖ５までくると次にＰＦａｖ１に書き込む。これにより、平均パワーメモリ５ｃには常に最新の５つの平均パワーが記憶されていることになる。
【００２７】
図４にもどって、ｓ１５では平均パワーが音声区間のレベルになったか否かを判定する。これは平均パワーメモリ５ｃに書き込まれている５つの平均パワーを再度平均し、その平均値が音声しきい値Ｐｓｔｈを超えたか否かで判断される。ｓ１５で音声区間のレベルであると判断されなかった場合には、雑音区間の長さをカウントするレジスタＴｎをカウントアップして（ｓ１７）、ｓ１１に戻る。一方、ｓ１５で音声区間のレベルであると判断された場合には、音声区間レベルの連続検出回数をカウントするカウンタＴｍを１加算する（ｓ１８）。このカウントアップの結果、カウント値が所定値Ｎになった場合には実際に音声区間になっていると判断してｓ１９からｓ２０に進む。同時に、雑音区間長Ｔｎのデータを伴って音声区間（フレーズ）の開始をｓ１に通知する。カウント値が所定値Ｎに達していない場合には、未だ音声区間と判断することはできないとしてｓ１９からｓ１２にもどる。ｓ１２に戻ることによりこのカウンタはリセットされない。
【００２８】
上記所定値Ｎは３程度が適当である。これにより、時間的に連続し相関値も高い雑音に対する誤った判定を排除するようにしている。すなわち、ｓ１５で１回または２回繰り返して音声区間レベルを検出したのち、次の検出処理では音声区間レベルを検出しなかった場合にはｓ１５からｓ１６に進み、短い音声区間レベルの信号は大レベルのノイズであったと判断してカウントアップされていたＴｍを雑音区間長Ｔｎに加算する。さらに、この大レベルノイズを検出していた連続検出回数カウンタＴｍをリセットしたのち（ｓ１１）、次の検出処理を行う。
【００２９】
図３において、ｓ１で音声区間が開始したことを判断すると、時間Ｔｎを判定する（ｓ２）。これがしきい値Ｔｎｔｈ（＝５００ｍｓ）を超える場合には、今回検出された音声区間は文の先頭（文頭）であるとして図１１に示すＡパターンの話速変換処理を実行する（ｓ３）。一方、Ｔｎがしきい値Ｔｎｔｈ以下の場合には今回検出された音声区間は直前の音声区間の続き（文中）であるとして図１２に示すＢパターンの話速変換処理を実行する（ｓ４）。そして、先頭の約７００ｍｓ以後の音声区間に対しては原音話速で出力音声データバッファに書き込みながら（ｓ５）、音声区間が終了するまで待機する（ｓ６）。
【００３０】
図４において、音声区間にはいるとｓ２０以下の処理を実行する。まず雑音区間レベルの連続検出回数をカウントするカウンタＴｍをリセットする（ｓ２０）。次に、入力音声データメモリ５ａからリングバッファに入力音声データを取り込む（ｓ２１）。取り込んだデータの相関値Ｋおよび平均パワーＰａｖを算出する（ｓ２２）。相関値Ｋが図５に示す相関しきい値Ｋｎｔｈよりも低い場合には、信号レベル（平均パワー）がどのような値であっても今回のバッファデータは雑音であると判定する。この場合、平均パワーは計算せず０とする。また、相関値Ｋがしきい値Ｋｎｔｈ以上の場合には各サンプルデータを２乗して加算し、サンプル数で除算して平均パワーＰａｖを算出する。このようにして算出された（または０とされた）平均パワーＰａｖを平均パワーメモリ５ｃに書き込む（ｓ２３）。この処理も新たなバッファデータ毎に繰り返されるため、平均パワーメモリ５ｃには常に最新の５つの平均パワーが記憶されていることになる。
【００３１】
ｓ２４では雑音区間になったか否かを判定する。これは平均パワーメモリ５ｃに書き込まれている５つの平均パワーを再度平均し、その平均値が雑音しきい値Ｐｎｔｈ以下になったか否かで判断される。実際にはこの判断は１回のみで行うのではなく、繰り返されるｓ１５以下の処理動作で３回ないし４回連続して平均値が雑音しきい値Ｐｎｔｈ以下になったとき音声区間が終了し、雑音区間が開始したと判断される。
【００３２】
ｓ２４では平均パワーが雑音区間のレベルになったか否かを判定する。これは平均パワーメモリ５ｃに書き込まれている５つの平均パワーを再度平均し、その平均値が雑音しきい値Ｐｎｔｈ以下になったか否かで判断される。ｓ２４で雑音区間のレベルであると判断されなかった場合には、そのままｓ２０に戻る。一方、ｓ２４で雑音区間のレベルであると判断された場合には、雑音区間レベルの連続検出回数をカウントするカウンタＴｍを１加算する（ｓ２５）。このカウントアップの結果、Ｔｍのカウント値が所定値Ｎになった場合には実際に雑音区間になっていると判断してｓ１０にもどる。同時に、図３のｓ６にその旨を通知する。カウント値が所定値Ｎに達していない場合には、未だ雑音区間と判断することはできないとしてｓ２６からｓ２１にもどる。ｓ２１に戻ることによりこのカウンタはリセットされない。
【００３３】
上記所定値Ｎは３程度が適当である。これにより、１００ｍｓ以下の発話中の無音区間で音声信号を区切らないようにしている。
【００３４】
図３において、音声区間の終了が通知された場合には、ｓ６の判断で、入力音声データの出力音声データメモリ５ｂへの書き込みを終了する。
【００３５】
なお、上記音声区間の開始を検出するしきい値Ｐｓｔｈは、音声区間の終了（雑音区間の開始）を検出するしきい値Ｐｎｔｈよりも高く設定されており、いわゆるヒステリシスが設けられているため、チャタリングが発生せず安定した区間検出が可能になっている。
【００３６】
次に図７〜図１０を参照して話速変換（伸長）処理について説明する。話速変換処理は、信号を１周期の波形に切りわけ、各周期波形の間に新たに合成した周期波形を挿入することで信号の周期波形数を増やして、音程を保ちつつ信号を時間伸長する処理である。
【００３７】
図７（Ａ）は伸長処理の手順を示すフローチャートである。また、同図（Ｂ）は伸長方法を説明する図である。同図（Ａ）において、まず入力音声信号の先頭部分の１周期のサンプル数（サンプリング周波数×１／信号周波数）を検出する（ｓ３１）。この１周期分のサンプルデータである周期波形を２つ取り出して、同図（Ｂ）に示すように、１つめの周期波形Ａに対して減衰利得係数を乗算することによって減衰波を作成し、２つめの周期波形Ｂに対して増加利得係数を乗算することによって増加波を作成する（ｓ３２）。そして、これらを加算合成することによってＡとＢの中間の形状の周期波形を合成する（ｓ３３）。この合成波形を周期波形Ａと周期波形Ｂとの間に挿入することによって音響的に自然な時間軸伸長を行う。
【００３８】
なお、音声データを圧縮する場合には、上記ｓ３３で合成したＡとＢの中間の形状の合成波形を周期波形Ａ，Ｂに代えて出力することにより、時間軸を１／２に圧縮することができる。
【００３９】
図８は、入力音声データから１周期の波形を切り出すためのピッチ周期検出の方法を説明する図である。同じ長さｎのサンプル列Ａ，Ｂを切り出し、これらサンプル列Ａ，Ｂの相関値を求める。相関値は、各サンプル列Ａ，Ｂの各サンプルを先頭から順次対応づけ、▲１▼対応するサンプル値を乗算して全て加算した値、または、▲２▼対応するサンプル値を減算して加算した値、のいずれかである（実際にはこの値をサンプル数で除算する）。▲１▼の場合は値が大きいほど相関度が高くなり、▲２▼の場合には値が小さいほど相関度が高くなる。
【００４０】
サンプル列の長さｎを１つずつ変えてゆき、概ね８０Ｈｚ〜２５０Ｈｚの１周期に対応するサンプル列について相関値を割り出す。サンプリング周波数が１１ｋＨｚの場合には、１３８サンプル（＝８０Ｈｚ）〜４４サンプル（＝２５０Ｈｚ）のサンプル列について相関値を割り出す。このようにして求められた複数の相関値のうち、同図（Ｂ）に示すように最も高い相関値Ｋａに対応するサンプル列のサンプル数が入力音声データのこの区間の１周期に相当し、このサンプル列Ａ，Ｂを図７に示す周期波形Ａ，Ｂとする。
【００４１】
図９は、周期波形を切り出して伸長処理をする手順を説明する図である。入力音声メモリ５ａから読み出された入力音声データの先頭のデータから図８に示すピッチ周期検出処理を行って、最高の相関値Ｋａを示すサンプル列Ａ，Ｂを割り出す。このサンプル列を周期波形Ａ，Ｂとし、この周期波形Ａ，Ｂに対して図７で説明した伸長処理を行って出力データメモリ５ｂに書き込む。上記ピッチ周期検出、周期波形の切り出し、波形伸長処理は、入力音声データに対して順次繰り返し行われるが、次の処理は前回２つの周期波形として切り出された２つサンプルデータ列の次のサンプルデータから行う。
【００４２】
図１０は、各種の伸長倍率の伸長例を示す図である。上記第１〜第５の伸長率は、利用者の設定によりまたは装置が自動的にどのような倍率にも設定することができる。この図では、そのうち２倍、３／２倍、４／３倍の伸長率で伸長する場合の処理について説明する。図７および図９に示した伸長方式は、この図１０（ｂ）の３／２倍伸長の方式である。すなわち、２つの周期波形を切り出してその間に合成波形を挿入し、次の処理を上記２つの周期波形の次のサンプルデータから行う処理である。これに対して、音声データを２倍に伸長する（ａ）の方式では、２つの周期波形Ａ，Ｂを切り出して周期波形Ａの後ろに合成波形を挿入したのち、周期波形Ａのみを処理済とし、次の処理を周期波形Ｂの先頭から行う。これにより、１つの周期波形と同じ長さの合成波形がその直後に挿入されるため波形データを２倍に伸長することができる。
【００４３】
また、４／３倍に伸長する場合には、２つの周期波形を切り出してその間に合成波形を挿入したのち、この２つの周期波形に続くサンプルデータ列をこの周期波形と同じ長さだけ、入力音声データメモリから出力音声データメモリに転記する。そして、その次のデータから次の伸長処理を行う。これにより、３つの周期波形に対して１つの合成波形が挿入されるため、伸長率は４／３倍となる。
【００４４】
この図では、２倍、３／２倍、４／３倍の伸長について説明したが、処理開始ポインタの位置を変えることでどのような倍率で伸長することも可能である。
【００４５】
【発明の効果】
以上のようにこの発明によれば、比較的簡略な処理で、出力音声の遅れが少なく出力用のバッファが少なくてすむ話速変換を実現することができる。
【図面の簡単な説明】
【図１】この発明の実施形態である話速変換装置のブロック図
【図２】同話速変換装置のＤＳＰの機能ブロック図
【図３】話速変換処理の全体動作を示すフローチャート
【図４】音声／雑音区間判定動作を示すフローチャート
【図５】入力音声データの相関値の計算例を示す図
【図６】入力音声データの平均パワーデータの計算方法を説明する図
【図７】音声データの伸長処理の手順を説明する図
【図８】ピッチ周期検出方法を説明する図
【図９】伸長処理のデータの流れを説明する図
【図１０】種々の伸長倍率の伸長方法を説明する図
【図１１】Ａパターンの伸長処理を説明する図
【図１２】Ｂパターンの伸長処理を説明する図
【図１３】伸長パターンの選択方法を説明する図
【符号の説明】
１…フィルタ、２…Ａ／Ｄ変換器、３…ＤＳＰ、４…ＲＯＭ、５…ＲＡＭ、５ａ…入力音声データメモリ、５ｂ…出力音声データメモリ、５ｃ…平均パワーメモリ、６…Ｄ／Ａ変換器、７…フィルタ、
１０…音声データ取込部、１１…取込タイミング制御部、１２…話速変換処理部、１３…音声／雑音区間判定部、１４…音声データ読出部、１５…読出タイミング制御部１５
【図１】
0003937688.tif 000002
【図２】
0003937688.tif 000003
【図３】
0003937688.tif 000004
【図４】
0003937688.tif 000005
【図５】
0003937688.tif 000006
【図６】
0003937688.tif 000007
【図７】
0003937688.tif 000008
【図８】
0003937688.tif 000009
【図９】
0003937688.tif 000010
【図１０】
0003937688.tif 000011
【図１１】
0003937688.tif 000012
【図１２】
0003937688.tif 000013
【図１３】
0003937688.tif 000014