(57)【要約】【課題】音声信号を音高変換する場合に、出力音声の伸縮揺らぎを抑制できるようにする。【解決手段】誤差検出部は、音高変換前の入力音声信号、音高変換後の出力音声信号、および未処理の入力音声信号のサンプル数に基づいて、出力音声信号のサンプル数の期待値との誤差を算出する。音高変換部は入力音声信号に音高変換を施し、時間伸縮処理部は音高変換された音声信号に対して時間伸縮処理を行う。さらに、間引き／挿入部は、時間長制御部の制御にしたがって、算出された誤差分だけ、音声信号からサンプルを間引くか、または音声信号にサンプルを挿入し、出力音声信号を生成する。このように、各状態の音声信号のサンプル数から誤差を求めれば、音声信号の時間長を正確に調整することができ、伸縮揺らぎを抑制することができる。本発明は、音高変換装置に適用することができる。【選択図】図１
2012194417.tif 000002
【特許請求の範囲】
【請求項１】
入力音声信号に対して音高変換処理を施して、前記入力音声信号の音の高さを変換する音高変換部と、
期待される出力音声信号のサンプル数と、実際に出力される前記出力音声信号のサンプル数との誤差を検出する誤差検出部と、
前記出力音声信号の時間長が前記誤差の分だけ補正されるように、前記時間長の調整を制御する時間長制御部と
を備える音声処理装置。
【請求項２】
前記誤差検出部は、前記入力音声信号のサンプル数、出力された前記出力音声信号のサンプル数、および前記入力音声信号の未処理のサンプル数に基づいて、前記誤差を検出する
請求項１に記載の音声処理装置。
【請求項３】
前記入力音声信号に対して時間伸縮処理を施して、前記入力音声信号の時間長を調整する時間伸縮処理部をさらに備える
請求項１に記載の音声処理装置。
【請求項４】
前記時間長制御部による制御にしたがって、前記音高変換処理が施された前記入力音声信号に対するサンプルの間引きまたは挿入を行なうことで、前記時間長を調整する間引き挿入部をさらに備える
請求項１に記載の音声処理装置。
【請求項５】
前記時間長制御部による制御にしたがって、前記音高変換処理が施された前記入力音声信号に対するサンプリングレート変換を行なうことで、前記時間長を調整する変換部をさらに備える
請求項１に記載の音声処理装置。
【請求項６】
前記時間長制御部による制御にしたがって、前記誤差により定まる長さの窓を用いたオーバーラップ処理を、前記音高変換処理が施された前記入力音声信号に対して行なうことで、前記時間長を調整するオーバーラップ処理部をさらに備える
請求項１に記載の音声処理装置。
【請求項７】
前記時間長制御部による制御にしたがって、前記誤差により定まる時間伸縮率で、前記入力音声信号に対する時間伸縮処理を行うことで、前記時間長を調整する時間伸縮処理部をさらに備える
請求項１に記載の音声処理装置。
【請求項８】
入力音声信号に対して音高変換処理を施して、前記入力音声信号の音の高さを変換する音高変換部と、
期待される出力音声信号のサンプル数と、実際に出力される前記出力音声信号のサンプル数との誤差を検出する誤差検出部と、
前記出力音声信号の時間長が前記誤差の分だけ補正されるように、前記時間長の調整を制御する時間長制御部と
を備える音声処理装置の音声処理方法であって、
前記音高変換部が、前記入力音声信号に対して音高変換処理を施し、
前記誤差検出部が、前記誤差を検出し、
前記時間長制御部が、前記時間長の調整を制御する
ステップを含む音声処理方法。
【請求項９】
入力音声信号に対して音高変換処理を施して、前記入力音声信号の音の高さを変換し、
期待される出力音声信号のサンプル数と、実際に出力される前記出力音声信号のサンプル数との誤差を検出し、
前記出力音声信号の時間長が前記誤差の分だけ補正されるように、前記時間長の調整を制御する
ステップを含む処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は音声処理装置および方法、並びにプログラムに関し、特に、音声信号を音高変換する場合に、出力音声の伸縮揺らぎを抑制することができるようにした音声処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、音声や楽曲の音声信号の音高を変換する技術が、カラオケにおけるキーコントロールや、楽器練習用のリファレンス音楽のキーの変更などに用いられている。このような音高変換処理は、リファレンスとなる音声信号を１つだけ用意しておけば、所望のキーを得ることができるので、メモリの節約にもなる有用な技術である。
【０００３】
例えば、音声信号の音高を変換する方法として、サンプリングレートコンバータにより音声波形の周期を変更する方法が知られている。この方法では、音声信号を所望の音高の音声信号に変換することはできるが、変換前後で音声信号のサンプル数が変化してしまう。
【０００４】
そのため、通常、音高変換処理装置に期待されるように、入力データサンプル数と等しい出力データサンプル数を得るには、PICOLA（Pointer Interval Controlled Overlap and Add）などの時間伸縮処理により、出力データサンプル数の調整が行なわれる（例えば、非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】森田，板倉，「ポインター移動量制御による重複加算法（PICOLA）を用いた音声の時間軸での伸長圧縮とその評価」，日本音響学会論文集，昭和６１年１０月，pp.149-150
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した技術では、音声信号を音高変換する場合に、出力音声の伸縮揺らぎが生じてしまい、高品質な音声を得ることができなかった。
【０００７】
例えば、音高変換する音声信号に対して、PICOLA等の時間伸縮処理を施す場合、音声信号の時間長をほぼ期待される長さに調整することはできるが、ピッチ長やフレーム長を単位として処理が行われるため、処理単位による制約を受けてしまう。そのため、音声信号の時間長を、期待されている時間長に正確に変換することができず、音高変換により得られた音声に伸縮揺らぎが生じてしまう。
【０００８】
また、サンプリングレートコンバータ等により音高変換を行なった場合、音声信号に対する時間伸縮処理では、音高変換における音声の時間伸縮率の逆数が用いられて、時間長の調整が行なわれるが、時間伸縮率の逆数が必ずしも有理数になるとは限らない。このように時間伸縮率の逆数が有理数とならない場合には、時間伸縮処理に用いる時間伸縮率に誤差が生じてしまい、音声信号の時間長を、期待されている時間長に正確に変換することができなくなってしまう。
【０００９】
本技術は、このような状況に鑑みてなされたものであり、音声信号を音高変換する場合に、出力音声の伸縮揺らぎを抑制することができるようにするものである。
【課題を解決するための手段】
【００１０】
本技術の一側面の音声処理装置は、入力音声信号に対して音高変換処理を施して、前記入力音声信号の音の高さを変換する音高変換部と、期待される出力音声信号のサンプル数と、実際に出力される前記出力音声信号のサンプル数との誤差を検出する誤差検出部と、前記出力音声信号の時間長が前記誤差の分だけ補正されるように、前記時間長の調整を制御する時間長制御部とを備える。
【００１１】
前記誤差検出部には、前記入力音声信号のサンプル数、出力された前記出力音声信号のサンプル数、および前記入力音声信号の未処理のサンプル数に基づいて、前記誤差を検出させることができる。
【００１２】
音声処理装置には、前記入力音声信号に対して時間伸縮処理を施して、前記入力音声信号の時間長を調整する時間伸縮処理部をさらに設けることができる。
【００１３】
音声処理装置には、前記時間長制御部による制御にしたがって、前記音高変換処理が施された前記入力音声信号に対するサンプルの間引きまたは挿入を行なうことで、前記時間長を調整する間引き挿入部をさらに設けることができる。
【００１４】
音声処理装置には、前記時間長制御部による制御にしたがって、前記音高変換処理が施された前記入力音声信号に対するサンプリングレート変換を行なうことで、前記時間長を調整する変換部をさらに設けることができる。
【００１５】
音声処理装置には、前記時間長制御部による制御にしたがって、前記誤差により定まる長さの窓を用いたオーバーラップ処理を、前記音高変換処理が施された前記入力音声信号に対して行なうことで、前記時間長を調整するオーバーラップ処理部をさらに設けることができる。
【００１６】
音声処理装置には、前記時間長制御部による制御にしたがって、前記誤差により定まる時間伸縮率で、前記入力音声信号に対する時間伸縮処理を行うことで、前記時間長を調整する時間伸縮処理部をさらに設けることができる。
【００１７】
本技術の一側面の音声処理方法またはプログラムは、入力音声信号に対して音高変換処理を施して、前記入力音声信号の音の高さを変換し、期待される出力音声信号のサンプル数と、実際に出力される前記出力音声信号のサンプル数との誤差を検出し、前記出力音声信号の時間長が前記誤差の分だけ補正されるように、前記時間長の調整を制御するステップを含む。
【００１８】
本技術の一側面においては、入力音声信号に対して音高変換処理が施されて、前記入力音声信号の音の高さが変換され、期待される出力音声信号のサンプル数と、実際に出力される前記出力音声信号のサンプル数との誤差が検出され、前記出力音声信号の時間長が前記誤差の分だけ補正されるように、前記時間長の調整が制御される。
【発明の効果】
【００１９】
本技術の一側面によれば、音声信号を音高変換する場合に、出力音声の伸縮揺らぎを抑制することができる。
【図面の簡単な説明】
【００２０】
【図１】音高変換装置の一実施の形態の構成例を示す図である。
【図２】音高変換処理を説明するフローチャートである。
【図３】音高変換装置の他の構成例を示す図である。
【図４】音高変換処理を説明するフローチャートである。
【図５】音高変換装置の他の構成例を示す図である。
【図６】音高変換処理を説明するフローチャートである。
【図７】音高変換装置の他の構成例を示す図である。
【図８】音高変換処理を説明するフローチャートである。
【図９】音高変換装置の他の構成例を示す図である。
【図１０】音高変換処理を説明するフローチャートである。
【図１１】オーバーラップ処理について説明する図である。
【図１２】窓関数の一例を示す図である。
【図１３】オーバーラップ処理について説明する図である。
【図１４】窓関数の一例を示す図である。
【図１５】音高変換装置の他の構成例を示す図である。
【図１６】音高変換処理を説明するフローチャートである。
【図１７】音高変換装置の他の構成例を示す図である。
【図１８】音高変換処理を説明するフローチャートである。
【図１９】音高変換装置の他の構成例を示す図である。
【図２０】音高変換処理を説明するフローチャートである。
【図２１】コンピュータの構成例を示す図である。
【発明を実施するための形態】
【００２１】
以下、図面を参照して、本技術を適用した実施の形態について説明する。
【００２２】
〈第１の実施の形態〉
［音高変換装置の構成例］
図１は、本技術を適用した音高変換装置の一実施の形態の構成例を示す図である。
【００２３】
この音高変換装置１１は、入力された音声信号に対して音高変換処理を施して、音高（音声のキーの高さ）が変換された音声信号を出力するものである。
【００２４】
なお、以下では、音高変換装置１１に入力される音声信号を入力音声信号とも称し、音高変換装置１１から出力される音声信号を出力音声信号とも称することとする。また、音高変換処理の対象となる音声信号は、人の声や楽曲など、どのような音声の信号であってもよい。
【００２５】
音高変換装置１１は、バッファ２１、誤差検出部２２、時間長制御部２３、音高変換部２４、時間伸縮処理部２５、および間引き／挿入部２６から構成される。
【００２６】
バッファ２１は、入力された入力音声信号を一時的に保持し、音高変換部２４に供給する。誤差検出部２２は、入力された入力音声信号、バッファ２１に保持されている未処理の音声信号、および間引き／挿入部２６から供給された出力音声信号に基づいて、実際の出力音声信号のサンプル数と、出力音声信号のサンプル数の期待値との誤差を検出する。誤差検出部２２は、検出された誤差を時間長制御部２３に供給する。
【００２７】
時間長制御部２３は、誤差検出部２２から供給された誤差に基づいて、音声信号の時間長の調整の制御を行なう。すなわち、時間長制御部２３は、間引き／挿入部２６に対して、音声信号の時間長、つまり音声信号のサンプル数の調整を指示する。
【００２８】
音高変換部２４は、バッファ２１から読み出した音声信号に対して音高変換処理を施して、時間伸縮処理部２５に供給する。時間伸縮処理部２５は、音高変換部２４から供給された音声信号に対して時間伸縮処理を施して、音声の音程を変えずに音声信号の時間長を伸縮させ、間引き／挿入部２６に供給する。
【００２９】
間引き／挿入部２６は、時間長制御部２３の制御にしたがって、時間伸縮処理部２５から供給された音声信号のサンプルを間引いたり、音声信号にサンプルを挿入したりすることで音声信号の時間長を調整する。間引き／挿入部２６は、音声信号に対する時間長の調整により得られた出力音声信号を、誤差検出部２２および図示せぬ後段に出力する。
【００３０】
［音高変換処理の説明］
ところで、音高変換装置１１に入力音声信号が供給されて音高変換が指示されると、音高変換装置１１は音高変換処理を行って、入力音声信号を、同じサンプル数であり、異なる音高の出力音声信号に変換し、出力する。
【００３１】
以下、図２のフローチャートを参照して、音高変換装置１１による音高変換処理について説明する。
【００３２】
ステップＳ１１において、バッファ２１は入力された入力音声信号を一時的に保持する。
【００３３】
ステップＳ１２において、誤差検出部２２は、入力された入力音声信号、バッファ２１に保持されている入力音声信号、および間引き／挿入部２６から供給された出力音声信号に基づいて、出力音声信号のサンプル数の誤差を算出する。
【００３４】
例えば、誤差検出部２２は、入力された入力音声信号のサンプル数をＮ１、バッファ２１に保持されている入力音声信号のサンプル数をＮ２、出力音声信号のサンプル数をＮ３として次式（１）を計算し、出力音声信号のサンプル数の誤差ＥＲを算出する。
【００３５】
誤差ＥＲ＝Ｎ３−（Ｎ１−Ｎ２）      ・・・（１）
【００３６】
なお、式（１）において、入力音声信号のサンプル数Ｎ１、および出力音声信号のサンプル数Ｎ３は、所定の位置（サンプル）からのサンプル数、例えば処理対象の音声信号の先頭のサンプルからのサンプル数などとされる。
【００３７】
音高変換をしようとする場合、変換により得られる出力音声信号で伸縮揺らぎが生じないようにするためには、実際に出力された出力音声信号の全サンプルの数と、入力音声信号の全サンプルの数とが等しくなればよい。そこで、誤差検出部２２は、現時点における出力音声信号のサンプル数と、実際に処理された入力音声信号のサンプル数との差を誤差ＥＲとして算出する。
【００３８】
ここで、入力音声信号の各サンプルは、バッファ２１から順番に読み出されて音高変換部２４により処理されるため、音高変換装置１１に入力された入力音声信号のなかには、まだ処理されていないサンプルもある。そのような未処理のサンプルは、バッファ２１に保持されているサンプルであるので、入力音声信号のサンプル数Ｎ１と、バッファ２１に保持されている音声信号のサンプル数Ｎ２の差を求めれば、実際に処理されたサンプル数が得られることになる。
【００３９】
したがって、実際に処理されたサンプル数（Ｎ１−Ｎ２）と、実際に出力された出力音声信号のサンプル数Ｎ３とが同じ数であれば、つまり誤差ＥＲが０となれば、出力音声信号で伸縮揺らぎが生じないことになる。
【００４０】
入力音声信号のサンプル数Ｎ１、バッファ２１の音声信号のサンプル数Ｎ２、および出力音声信号のサンプル数Ｎ３は、誤差検出部２２により正確に把握が可能であり、これらの数は、０または正の整数となる。したがって、誤差検出部２２は、これらの０または正の整数から、誤差検出部２２における演算精度によらず、式（１）の計算により誤差ＥＲを正確に算出することができる。
【００４１】
誤差検出部２２は、算出した誤差ＥＲを時間長制御部２３に供給すると、処理はステップＳ１２からステップＳ１３に進む。
【００４２】
ステップＳ１３において、時間長制御部２３は、誤差検出部２２から供給された誤差ＥＲに基づいて、音声信号の時間長の調整の制御を行なう。
【００４３】
例えば、時間長制御部２３は、誤差ＥＲが正の値である場合、間引き／挿入部２６に音声信号からのサンプルの間引きを指示し、誤差ＥＲが負の値である場合、間引き／挿入部２６に音声信号へのサンプルの挿入を指示する。また、誤差ＥＲが０である場合には、時間長制御部２３は、間引き／挿入部２６に処理の実行を抑制させる。
【００４４】
ステップＳ１４において、音高変換部２４は、バッファ２１から所定量の音声信号を読み出して、読み出した音声信号に対して音高変換処理を行い、音高変換された音声信号を時間伸縮処理部２５に供給する。例えば、バッファ２１からは、１フレーム分ずつ音声信号が読み出されて、処理が行われる。
【００４５】
また、音高変換部２４は、例えば音声信号に対してサンプリングレート変換を行なうことにより、音声信号の音声波形の周期を長くしたり、短くしたりして音声信号の音高を所望の高さに変換する。なお、音声信号の音高変換は、PSOLA（Pitch Synchronous Overlap Add）など、他の方法により実現されるようにしてもよい。
【００４６】
ステップＳ１５において、時間伸縮処理部２５は、音高変換部２４から供給された音声信号に対して、PICOLAやフェーズボコーダなどの時間伸縮処理を行い、その結果得られた音声信号を間引き／挿入部２６に供給する。
【００４７】
例えば、時間伸縮処理では、音高変換部２４により行なわれる音高変換処理によって変化した音声信号の時間長の伸縮率の逆数が時間伸縮率とされ、その時間伸縮率により音声信号の時間長が調整される。これにより、音高変換部２４による音高変換により増減した音声信号のサンプル数が、音高変換前のサンプル数とほぼ同じサンプル数となるように、音声信号のサンプル数が増減される。
【００４８】
ステップＳ１６において、間引き／挿入部２６は、時間長制御部２３の制御にしたがって、時間伸縮処理部２５から供給された音声信号のサンプルの間引きまたは挿入を行い、出力音声信号を生成する。
【００４９】
例えば、間引き／挿入部２６は、誤差ＥＲが正の値である場合、誤差ＥＲに示される数だけ、音声信号からサンプルを間引く（欠落させる）。なお、音声信号から複数個のサンプルが間引かれる場合には、音声信号の連続して並ぶ複数のサンプルが間引かれてもよいし、音声信号のいくつかの位置から、それぞれサンプルが間引かれるようにしてもよい。
【００５０】
また、間引き／挿入部２６は、誤差ＥＲが負の値である場合、誤差ＥＲに示される数だけ、音声信号の所定の位置にサンプルを挿入する。ここで、音声信号に挿入されるサンプルのサンプル値は、例えば挿入しようとするサンプルの直前または直後にあるサンプルのサンプル値と同じ値とされてもよいし、０などの予め定められた値とされてもよい。
【００５１】
なお、音声信号に複数個のサンプルを挿入する場合には、音声信号の１つの区間に連続して複数のサンプルが挿入されてもよいし、音声信号のいくつかの位置に、それぞれサンプルが挿入されるようにしてもよい。
【００５２】
また、誤差ＥＲが０である場合には、間引き／挿入部２６は、音声信号に対するサンプルの間引きも挿入も行なわず、時間伸縮処理部２５から供給された音声信号を、そのまま出力音声信号とする。
【００５３】
間引き／挿入部２６は、出力音声信号を生成すると、生成した出力音声信号を誤差検出部２２に供給するとともに、出力音声信号を後段の再生部等に出力する。
【００５４】
このように、間引き／挿入部２６において、誤差ＥＲの分だけ音声信号からサンプルを欠落させたり、サンプルを挿入したりして音声信号のサンプル数の補正を行なうことで、出力音声信号のサンプル数を、期待される（予測される）サンプル数とすることができる。すなわち、時間伸縮処理部２５では調整しきれなかったサンプル数の微調整を行ない、出力音声信号のサンプル数を、入力音声信号のサンプル数と同じ数とすることができる。
【００５５】
ステップＳ１７において、音高変換装置１１は、処理を終了するか否かを判定する。例えば、供給された入力音声信号の全てのサンプルについて処理を行った場合、処理を終了すると判定される。
【００５６】
ステップＳ１７において、処理を終了しないと判定された場合、処理はステップＳ１１に戻り、上述した処理が繰り返される。これに対して、ステップＳ１７において、処理を終了すると判定された場合、音高変換処理は終了する。
【００５７】
以上のようにして、音高変換装置１１は、出力されると期待される出力音声信号のサンプル数と、実際の出力音声信号のサンプル数との誤差を算出し、その誤差に応じて音声信号のサンプル数を増減させる。
【００５８】
これにより、出力音声信号のサンプル数を、期待されるサンプル数とすることができる。特に、音高変換装置１１では、音高変換処理を行いながら、常に期待する出力音声信号のサンプル数への補正が行なわれるため、出力音声の伸縮揺らぎを抑制することができる。
【００５９】
〈変形例１〉
［音高変換装置の構成例］
なお、以上においては、音高変換処理が行われてから時間伸縮処理が行われる場合について説明したが、時間伸縮処理の後に音高変換処理が行われるようにしてもよい。そのような場合、音高変換装置は、例えば図３に示すように構成される。なお、図３において、図１における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【００６０】
図３の音高変換装置５１は、バッファ２１乃至間引き／挿入部２６から構成される。この音高変換装置５１と、図１の音高変換装置１１とは、音高変換部２４と時間伸縮処理部２５との接続関係のみが異なり、他の構成は同じとなっている。
【００６１】
すなわち、音高変換装置５１では、時間伸縮処理部２５がバッファ２１から読み出した音声信号に対して時間伸縮処理を行い、音高変換部２４に供給する。そして、音高変換部２４は、時間伸縮処理部２５からの音声信号に音高変換処理を施し、間引き／挿入部２６に供給する。
【００６２】
［音高変換処理の説明］
次に、図４のフローチャートを参照して、図３の音高変換装置５１による音高変換処理について説明する。なお、ステップＳ４１乃至ステップＳ４３の処理は、図２のステップＳ１１乃至ステップＳ１３の処理と同様であるので、その説明は省略する。
【００６３】
ステップＳ４４において、時間伸縮処理部２５は、バッファ２１から音声信号を読み出して時間伸縮処理を行い、音高変換部２４に供給する。そして、ステップＳ４５において、音高変換部２４は、時間伸縮処理部２５からの音声信号に音高変換処理を施し、間引き／挿入部２６に供給する。なお、ステップＳ４４およびステップＳ４５では、図２のステップＳ１５およびステップＳ１４と同様の処理が行われる。
【００６４】
ステップＳ４５の処理が行われると、その後、ステップＳ４６およびステップＳ４７の処理が行われて音高変換処理は終了するが、これらの処理は図２のステップＳ１６およびステップＳ１７の処理と同様であるので、その説明は省略する。
【００６５】
このように、時間伸縮処理後に音高変換処理を行うようにしても、出力音声の伸縮揺らぎを抑制することができる。
【００６６】
〈第２の実施の形態〉
［音高変換装置の構成例］
また、以上においては、サンプル数の誤差ＥＲ分の補正を、サンプルの間引きまたは挿入により行なうと説明したが、サンプリングレート変換処理により誤差ＥＲ分の補正が行われるようにしてもよい。
【００６７】
そのような場合、音高変換装置は、例えば図５に示すように構成される。なお、図５において、図１における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。図５の音高変換装置７１と図１の音高変換装置１１とは、音高変換装置１１の間引き／挿入部２６に代えて、音高変換装置７１に変換処理部８１が設けられている点で異なり、その他の点では同じ構成とされている。
【００６８】
変換処理部８１は、時間長制御部２３の制御にしたがって、時間伸縮処理部２５から供給された音声信号にサンプリングレート変換処理を施すことで、音声信号の時間長を調整する。変換処理部８１は、音声信号に対する時間長の調整により得られた出力音声信号を、誤差検出部２２および図示せぬ後段に出力する。
【００６９】
［音高変換処理の説明］
次に、図６のフローチャートを参照して、音高変換装置７１による音高変換処理について説明する。なお、ステップＳ７１乃至ステップＳ７５の処理は、図２のステップＳ１１乃至ステップＳ１５の処理と同様であるので、その説明は省略する。
【００７０】
ステップＳ７６において、変換処理部８１は、時間長制御部２３の制御にしたがって、時間伸縮処理部２５から供給された音声信号に対してサンプリングレート変換を行い、音声信号のサンプリングレートを変換する。
【００７１】
例えば、変換処理部８１は、誤差ＥＲが正の値である場合、誤差ＥＲに示される数だけ音声信号からサンプルが欠落するように、音声信号を誤差ＥＲにより定まる変換率でダウンサンプリングする。
【００７２】
また、変換処理部８１は、誤差ＥＲが負の値である場合、誤差ＥＲに示される数だけ音声信号にサンプルが挿入されるように、音声信号を誤差ＥＲにより定まる変換率でアップサンプリングする。
【００７３】
このように、サンプリングレート変換処理として、誤差ＥＲに応じてダウンサンプリングまたはアップサンプリングを行うことで、補間等により音声信号のサンプル数を増減させて、出力音声信号のサンプル数を期待されるサンプル数とすることができる。
【００７４】
なお、誤差ＥＲが０である場合には、変換処理部８１は、音声信号に対するサンプリングレート変換処理を行なわず、時間伸縮処理部２５から供給された音声信号を、そのまま出力音声信号とする。
【００７５】
変換処理部８１は、出力音声信号を生成すると、生成した出力音声信号を誤差検出部２２に供給するとともに、出力音声信号を後段の再生部等に出力する。
【００７６】
ステップＳ７６の処理が行われると、その後、ステップＳ７７の処理が行われて音高変換処理は終了するが、ステップＳ７７の処理は図２のステップＳ１７の処理と同様であるので、その説明は省略する。
【００７７】
このようにして音高変換装置７１は、出力されると期待される出力音声信号のサンプル数と、実際の出力音声信号のサンプル数との誤差を算出し、その誤差に応じて音声信号のサンプリングレートを変換して、音声信号のサンプル数を増減させる。これにより、出力音声信号のサンプル数を、期待されるサンプル数とすることができ、出力音声の伸縮揺らぎを抑制することができる。
【００７８】
〈変形例２〉
［音高変換装置の構成例］
なお、誤差ＥＲに応じてサンプリングレート変換処理が行われる場合においても、時間伸縮処理の後に音高変換処理が行われるようにしてもよい。そのような場合、音高変換装置は、例えば図７に示すように構成される。なお、図７において、図５における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【００７９】
図７の音高変換装置１１１と図５の音高変換装置７１とは、音高変換部２４と時間伸縮処理部２５の接続関係が逆となっている点で異なり、その他の点では同じ構成とされている。
【００８０】
すなわち、音高変換装置１１１では、時間伸縮処理部２５がバッファ２１から読み出した音声信号に対して時間伸縮処理を行い、音高変換部２４は、時間伸縮処理部２５からの音声信号に音高変換処理を施し、変換処理部８１に供給する。
【００８１】
［音高変換処理の説明］
次に、図８のフローチャートを参照して、図７の音高変換装置１１１による音高変換処理について説明する。なお、ステップＳ１０１乃至ステップＳ１０３の処理は、図６のステップＳ７１乃至ステップＳ７３の処理と同様であるので、その説明は省略する。
【００８２】
ステップＳ１０４において、時間伸縮処理部２５は、バッファ２１から音声信号を読み出して時間伸縮処理を行い、音高変換部２４に供給する。そして、ステップＳ１０５において、音高変換部２４は、時間伸縮処理部２５からの音声信号に音高変換処理を施し、変換処理部８１に供給する。なお、ステップＳ１０４およびステップＳ１０５では、図６のステップＳ７５およびステップＳ７４と同様の処理が行われる。
【００８３】
ステップＳ１０５の処理が行われると、その後、ステップＳ１０６およびステップＳ１０７の処理が行われて音高変換処理は終了するが、これらの処理は図６のステップＳ７６およびステップＳ７７の処理と同様であるので、その説明は省略する。
【００８４】
このように、時間伸縮処理後に音高変換処理を行うようにしても、出力音声の伸縮揺らぎを抑制することができる。
【００８５】
〈第３の実施の形態〉
［音高変換装置の構成例］
なお、以上においては、サンプリングレート変換処理により誤差ＥＲ分の補正を行なう例について説明したが、窓掛けによるオーバーラップ処理により、誤差ＥＲ分の補正が行われるようにしてもよい。
【００８６】
そのような場合、音高変換装置は、例えば図９に示すように構成される。なお、図９において、図１における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。図９の音高変換装置１４１と図１の音高変換装置１１とは、音高変換装置１１の間引き／挿入部２６に代えて、音高変換装置１４１にオーバーラップ処理部１５１が設けられている点で異なり、その他の点では同じ構成とされている。
【００８７】
オーバーラップ処理部１５１は、時間長制御部２３の制御にしたがって、時間伸縮処理部２５から供給された音声信号に窓掛けによるオーバーラップ処理を施すことで、音声信号の時間長を調整する。オーバーラップ処理部１５１は、音声信号に対する時間長の調整により得られた出力音声信号を、誤差検出部２２および図示せぬ後段に出力する。
【００８８】
［音高変換処理の説明］
次に、図１０のフローチャートを参照して、音高変換装置１４１による音高変換処理について説明する。なお、ステップＳ１３１乃至ステップＳ１３５の処理は、図２のステップＳ１１乃至ステップＳ１５の処理と同様であるので、その説明は省略する。
【００８９】
ステップＳ１３６において、オーバーラップ処理部１５１は、時間長制御部２３の制御にしたがって、時間伸縮処理部２５から供給された音声信号に対してオーバーラップ処理を行い、音声信号のサンプル数を増減させる。
【００９０】
例えば、オーバーラップ処理部１５１は、誤差ＥＲが正の値である場合、誤差ＥＲ分のサンプル数の長さ（以下、窓フレーム長とも称する）の窓掛けによるオーバーラップ処理を音声信号に対して行う。これにより、例えば音声信号の窓フレーム長の２倍の長さの区間が、窓フレーム長の長さの区間に変換されて、サンプル数の調整が行なわれる。すなわち、窓フレーム長（誤差ＥＲ）の長さ分だけ、音声信号のサンプルが削減される。
【００９１】
また、オーバーラップ処理部１５１は、誤差ＥＲが負の値である場合、誤差ＥＲ分のサンプル数の長さの窓掛けによるオーバーラップ処理を音声信号に対して行う。これにより、例えば音声信号の窓フレーム長の２倍の長さの区間が、窓フレーム長の３倍の長さの区間に変換されて、サンプル数の調整が行なわれる。すなわち、窓フレーム長（誤差ＥＲ）の長さ分だけ、音声信号のサンプルが増加される。
【００９２】
なお、誤差ＥＲが０である場合には、オーバーラップ処理部１５１は、音声信号に対するオーバーラップ処理を行なわず、時間伸縮処理部２５から供給された音声信号を、そのまま出力音声信号とする。
【００９３】
また、オーバーラップ処理で用いられる窓は、三角窓、方形窓、ハニング窓、sin窓、cos窓など、どのような形状の窓であってもよい。
【００９４】
例えば、誤差ＥＲが正の値であり、オーバーラップ処理において三角窓が用いられる場合、図１１に示すように音声信号ＤＡ１１が時間方向に縮小される。なお、図１１において、横方向は時間を示しており、縦方向は信号または関数の値の大きさを示している。また、図中、音声信号の波形上の円はサンプルを表している。
【００９５】
図１１において、矢印Ａ１１に示すように、時間伸縮処理部２５から音声信号ＤＡ１１がオーバーラップ処理部１５１に供給されたとする。そして、オーバーラップ処理部１５１が、音声信号ＤＡ１１の区間ＮＨ１および区間ＮＨ２からなる区間を、半分のサンプル数の区間に縮小するとする。なお、区間ＮＨ１および区間ＮＨ２は、ともに音声信号ＤＡ１１のＮ個の連続するサンプルからなる、窓フレーム長の長さの区間である。
【００９６】
このような場合、音声信号ＤＡ１１の区間ＮＨ１および区間ＮＨ２に対して、矢印Ａ１２に示すように、三角窓ＴＦ１および三角窓ＴＦ２による窓掛けが行なわれる。
【００９７】
ここで、三角窓ＴＦ１は、区間ＮＨ１内の各サンプルに乗算される重みを示す窓関数であり、区間ＮＨ１内の図中、右側にあるサンプルに乗算される重みほど、その重みの大きさが小さくなっている。三角窓ＴＦ１の重みの大きさは、時間方向（未来方向）に直線的に小さくなる。
【００９８】
また、三角窓ＴＦ２は、区間ＮＨ２内の各サンプルに乗算される重みを示す窓関数であり、区間ＮＨ２内の図中、右側にあるサンプルに乗算される重みほど、その重みの大きさが大きくなっている。三角窓ＴＦ２の重みの大きさは、時間方向（未来方向）に直線的に大きくなる。
【００９９】
このような三角窓ＴＦ１および三角窓ＴＦ２を用いた窓掛けが行なわれると、矢印Ａ１３に示す信号ＤＮ１および信号ＤＮ２が得られる。つまり、音声信号ＤＡ１１の区間ＮＨ１内の各サンプルに、それらのサンプルと同じ位置の三角窓ＴＦ１の値が重みとして乗算され、信号ＤＮ１とされる。同様に、音声信号ＤＡ１１の区間ＮＨ２内の各サンプルに、それらのサンプルと同じ位置の三角窓ＴＦ２の値が重みとして乗算され、信号ＤＮ２とされる。
【０１００】
そして、信号ＤＮ１と信号ＤＮ２の同じ位置にあるサンプルが加算されて、矢印Ａ１４に示す信号ＤＣ１が生成される。このように信号ＤＮ１と信号ＤＮ２を合成して得られた、Ｎ個のサンプルからなる信号ＤＣ１が、音声信号ＤＡ１１の区間ＮＨ１および区間ＮＨ２からなる区間に挿入され、その結果得られた信号がオーバーラップ処理後の音声信号とされる。すなわち、音声信号ＤＡ１１の区間ＮＨ１および区間ＮＨ２からなる区間の信号が、信号ＤＣ１と置き換えられて、音声信号ＤＡ１１がＮサンプル分だけ縮小される。
【０１０１】
また、音声信号ＤＡ１１を縮小させる場合、例えば図１２に示す窓が用いられてもよい。すなわち、図中、上側に示すように、音声信号ＤＡ１１の区間ＮＨ１および区間ＮＨ２に対して、方形窓ＴＦ１１および方形窓ＴＦ１２による窓掛けが行なわれてもよい。ここで、方形窓ＴＦ１１および方形窓ＴＦ１２は、各サンプルに乗算される重みが同じ値となる窓関数である。
【０１０２】
さらに、図中、下側に示すように、音声信号ＤＡ１１の区間ＮＨ１および区間ＮＨ２に対して、ハニング窓ＴＦ２１およびハニング窓ＴＦ２２による窓掛けが行なわれてもよい。
【０１０３】
ここで、ハニング窓ＴＦ２１は、区間ＮＨ１内の各サンプルに乗算される重みを示す窓関数であり、区間ＮＨ１内の未来方向側にあるサンプルに乗算される重みほど、その重みの大きさが小さくなっている。また、ハニング窓ＴＦ２２は、区間ＮＨ２内の各サンプルに乗算される重みを示す窓関数であり、区間ＮＨ２内の未来方向側にあるサンプルに乗算される重みほど、その重みの大きさが大きくなっている。これらのハニング窓ＴＦ２１およびハニング窓ＴＦ２２の値（重み）は、時間方向に非線形に変化している。
【０１０４】
さらに例えば、誤差ＥＲが負の値であり、オーバーラップ処理において三角窓が用いられる場合、図１３に示すように音声信号ＤＡ２１が時間方向に伸長される。なお、図１３において、横方向は時間を示しており、縦方向は信号または関数の値の大きさを示している。また、図中、音声信号の波形上の円はサンプルを表している。
【０１０５】
図１３において、矢印Ａ２１に示すように、時間伸縮処理部２５から音声信号ＤＡ２１がオーバーラップ処理部１５１に供給されたとする。そして、オーバーラップ処理部１５１が、音声信号ＤＡ２１の区間ＮＨ１１および区間ＮＨ１２からなる区間を、３／２倍のサンプル数の区間に伸長するとする。なお、区間ＮＨ１１および区間ＮＨ１２は、ともに音声信号ＤＡ２１のＮ個の連続するサンプルからなる、窓フレーム長の長さの区間である。
【０１０６】
このような場合、音声信号ＤＡ２１の区間ＮＨ１１および区間ＮＨ１２に対して、矢印Ａ２２に示すように、三角窓ＴＦ３１および三角窓ＴＦ３２による窓掛けが行なわれる。
【０１０７】
ここで、三角窓ＴＦ３１は、区間ＮＨ１１内の各サンプルに乗算される重みを示す窓関数であり、区間ＮＨ１１内の図中、右側にあるサンプルに乗算される重みほど、その重みの大きさが大きくなっている。三角窓ＴＦ３１の重みの大きさは、時間方向（未来方向）に直線的に大きくなる。
【０１０８】
また、三角窓ＴＦ３２は、区間ＮＨ１２内の各サンプルに乗算される重みを示す窓関数であり、区間ＮＨ１２内の図中、右側にあるサンプルに乗算される重みほど、その重みの大きさが小さくなっている。三角窓ＴＦ３２の重みの大きさは、時間方向（未来方向）に直線的に小さくなる。
【０１０９】
このような三角窓ＴＦ３１および三角窓ＴＦ３２を用いた窓掛けが行なわれると、矢印Ａ２３に示す信号ＤＮ１１および信号ＤＮ１２が得られる。つまり、音声信号ＤＡ２１の区間ＮＨ１１内の各サンプルに、それらのサンプルと同じ位置の三角窓ＴＦ３１の値が重みとして乗算され、信号ＤＮ１１とされる。同様に、音声信号ＤＡ２１の区間ＮＨ１２内の各サンプルに、それらのサンプルと同じ位置の三角窓ＴＦ３２の値が重みとして乗算され、信号ＤＮ１２とされる。
【０１１０】
そして、信号ＤＮ１１と信号ＤＮ１２の同じ位置にあるサンプルが加算されて、その結果得られた信号が、矢印Ａ２４に示すように、音声信号ＤＡ２１における区間ＮＨ１１と区間ＮＨ１２の間に挿入されて、伸長後の音声信号ＤＡ２１’とされる。この音声信号ＤＡ２１’では、区間ＮＨ１１と区間ＮＨ１２の間に、Ｎ個のサンプルからなる区間ＮＨ１３が挿入されており、この区間ＮＨ１３は、信号ＤＮ１１と信号ＤＮ１２を合成して得られた信号からなる区間である。
【０１１１】
このように、音声信号ＤＡ２１に新たに生成した信号（区間ＮＨ１３）を挿入することで、２Ｎ個のサンプルからなる区間を、３Ｎ個のサンプルからなる区間に変換し、音声信号をＮサンプル（誤差ＥＲ）分だけ伸長することができる。
【０１１２】
また、音声信号ＤＡ２１を伸長させる場合、例えば図１４に示す窓が用いられてもよい。すなわち、図中、上側に示すように、音声信号ＤＡ２１の区間ＮＨ１１および区間ＮＨ１２に対して、方形窓ＴＦ４１および方形窓ＴＦ４２による窓掛けが行なわれてもよい。ここで、方形窓ＴＦ４１および方形窓ＴＦ４２は、各サンプルに乗算される重みが同じ値となる窓関数である。
【０１１３】
さらに、図中、下側に示すように、音声信号ＤＡ２１の区間ＮＨ１１および区間ＮＨ１２に対して、ハニング窓ＴＦ５１およびハニング窓ＴＦ５２による窓掛けが行なわれてもよい。
【０１１４】
ここで、ハニング窓ＴＦ５１は、区間ＮＨ１１内の各サンプルに乗算される重みを示す窓関数であり、区間ＮＨ１１内の未来方向側にあるサンプルに乗算される重みほど、その重みの大きさが大きくなっている。また、ハニング窓ＴＦ５２は、区間ＮＨ１２内の各サンプルに乗算される重みを示す窓関数であり、区間ＮＨ１２内の未来方向側にあるサンプルに乗算される重みほど、その重みの大きさが小さくなっている。なお、ハニング窓ＴＦ５１およびハニング窓ＴＦ５２の値（重み）は、時間方向に非線形に変化している。
【０１１５】
以上のように、オーバーラップ処理を行うことで、音声信号のサンプル数を増減させて、出力音声信号のサンプル数を期待されるサンプル数とすることができる。
【０１１６】
オーバーラップ処理部１５１は、出力音声信号を生成すると、生成した出力音声信号を誤差検出部２２に供給するとともに、出力音声信号を後段の再生部等に出力する。
【０１１７】
図１０のフローチャートの説明に戻り、ステップＳ１３６の処理が行われると、その後、ステップＳ１３７の処理が行われて音高変換処理は終了するが、ステップＳ１３７の処理は図２のステップＳ１７の処理と同様であるので、その説明は省略する。
【０１１８】
このようにして音高変換装置１４１は、出力されると期待される出力音声信号のサンプル数と、実際の出力音声信号のサンプル数との誤差を算出し、その誤差に応じて音声信号にオーバーラップ処理を施して、音声信号のサンプル数を増減させる。これにより、出力音声信号のサンプル数を、期待されるサンプル数とすることができ、出力音声の伸縮揺らぎを抑制することができる。
【０１１９】
〈変形例３〉
［音高変換装置の構成例］
なお、誤差ＥＲに応じてオーバーラップ処理が行われる場合においても、時間伸縮処理の後に音高変換処理が行われるようにしてもよい。そのような場合、音高変換装置は、例えば図１５に示すように構成される。なお、図１５において、図９における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【０１２０】
図１５の音高変換装置１８１と図９の音高変換装置１４１とは、音高変換部２４と時間伸縮処理部２５の接続関係が逆となっている点で異なり、その他の点では同じ構成とされている。すなわち、音高変換装置１８１では、時間伸縮処理部２５がバッファ２１から読み出した音声信号に対して時間伸縮処理を行い、音高変換部２４は、時間伸縮処理部２５からの音声信号に音高変換処理を施し、オーバーラップ処理部１５１に供給する。
【０１２１】
［音高変換処理の説明］
次に、図１６のフローチャートを参照して、図１５の音高変換装置１８１による音高変換処理について説明する。なお、ステップＳ１６１乃至ステップＳ１６３の処理は、図１０のステップＳ１３１乃至ステップＳ１３３の処理と同様であるので、その説明は省略する。
【０１２２】
ステップＳ１６４において、時間伸縮処理部２５は、バッファ２１から音声信号を読み出して時間伸縮処理を行い、音高変換部２４に供給する。そして、ステップＳ１６５において、音高変換部２４は、時間伸縮処理部２５からの音声信号に音高変換処理を施し、オーバーラップ処理部１５１に供給する。なお、ステップＳ１６４およびステップＳ１６５では、図１０のステップＳ１３５およびステップＳ１３４と同様の処理が行われる。
【０１２３】
ステップＳ１６５の処理が行われると、その後、ステップＳ１６６およびステップＳ１６７の処理が行われて音高変換処理は終了するが、これらの処理は図１０のステップＳ１３６およびステップＳ１３７の処理と同様であるので、その説明は省略する。
【０１２４】
このように、時間伸縮処理後に音高変換処理を行うようにしても、出力音声の伸縮揺らぎを抑制することができる。
【０１２５】
〈第４の実施の形態〉
［音高変換装置の構成例］
なお、以上においては、窓掛けによるオーバーラップ処理により、誤差ＥＲ分の補正を行なう例について説明したが、時間伸縮処理における時間伸縮率が誤差ＥＲの分だけ補正されるようにしてもよい。
【０１２６】
そのような場合、音高変換装置は、例えば図１７に示すように構成される。なお、図１７において、図１における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。図１７の音高変換装置２１１と図１の音高変換装置１１とは、音高変換装置２１１に間引き／挿入部２６が設けられていない点で異なり、その他の点では同じ構成とされている。
【０１２７】
すなわち、音高変換装置２１１では、時間長制御部２３は、時間伸縮処理部２５による時間伸縮処理の制御を行う。時間伸縮処理部２５は、時間長制御部２３の制御にしたがって、誤差ＥＲを加味した時間伸縮率で、音高変換部２４から供給された音声信号に対して時間伸縮処理を施して、音声信号の時間長を伸縮させる。時間伸縮処理部２５は、時間伸縮処理により得られた出力音声信号を、誤差検出部２２および図示せぬ後段に出力する。
【０１２８】
［音高変換処理の説明］
次に、図１８のフローチャートを参照して、音高変換装置２１１による音高変換処理について説明する。なお、ステップＳ１９１乃至ステップＳ１９４の処理は、図２のステップＳ１１乃至ステップＳ１４の処理と同様であるので、その説明は省略する。
【０１２９】
ステップＳ１９５において、時間伸縮処理部２５は、時間長制御部２３の制御にしたがって、音高変換部２４から供給された音声信号に対して、PICOLAやフェーズボコーダなどの時間伸縮処理を行う。
【０１３０】
このとき、時間伸縮処理部２５は、音高変換部２４により行なわれる音高変換処理によって変化する音声信号の時間伸縮率の逆数を、時間伸縮処理時における時間伸縮率として求める。そして、時間伸縮処理部２５は、求めた時間伸縮率を誤差ＥＲに応じて増減させ、最終的な時間伸縮率とする。
【０１３１】
例えば、時間伸縮処理部２５は、誤差ＥＲが正の値である場合、音声信号の時間長が誤差ＥＲの分だけ短くなるように時間伸縮率を減少させ、誤差ＥＲが負の値である場合、音声信号の時間長が誤差ＥＲの分だけ長くなるように時間伸縮率を増加させる。
【０１３２】
このようにして、誤差ＥＲ分だけ補正した時間伸縮率が得られると、時間伸縮処理部２５は、得られた時間伸縮率で、音声信号に対する時間伸縮処理を行い、音声信号の時間長を調整する。そして、時間伸縮処理により時間長が調整された音声信号が、出力音声信号とされる。このように、誤差ＥＲの分だけ時間伸縮率を補正して時間伸縮処理を行うことで、音声信号のサンプル数を増減させて、出力音声信号のサンプル数を期待されるサンプル数とすることができる。
【０１３３】
時間伸縮処理部２５は、出力音声信号を生成すると、生成した出力音声信号を誤差検出部２２に供給するとともに、出力音声信号を後段の再生部等に出力する。
【０１３４】
ステップＳ１９５の処理が行われると、その後、ステップＳ１９６の処理が行われて音高変換処理は終了するが、ステップＳ１９６の処理は図２のステップＳ１７の処理と同様であるので、その説明は省略する。
【０１３５】
このようにして音高変換装置２１１は、出力されると期待される出力音声信号のサンプル数と、実際の出力音声信号のサンプル数との誤差を算出し、その誤差に応じて音声信号に時間伸縮処理を施して、音声信号のサンプル数を増減させる。これにより、出力音声信号のサンプル数を、期待されるサンプル数とすることができ、出力音声の伸縮揺らぎを抑制することができる。
【０１３６】
〈変形例４〉
［音高変換装置の構成例］
なお、誤差ＥＲに応じて時間伸縮処理が行われる場合においても、時間伸縮処理の後に音高変換処理が行われるようにしてもよい。そのような場合、音高変換装置は、例えば図１９に示すように構成される。なお、図１９において、図１７における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【０１３７】
図１９の音高変換装置２３１と図１７の音高変換装置２１１とは、音高変換部２４と時間伸縮処理部２５の接続関係が逆となっている点で異なり、その他の点では同じ構成とされている。すなわち、音高変換装置２３１では、時間伸縮処理部２５がバッファ２１から読み出した音声信号に対して時間伸縮処理を行い、音高変換部２４は、時間伸縮処理部２５からの音声信号に音高変換処理を施し、出力音声信号を生成する。
【０１３８】
［音高変換処理の説明］
次に、図２０のフローチャートを参照して、図１９の音高変換装置２３１による音高変換処理について説明する。なお、ステップＳ２２１乃至ステップＳ２２３の処理は、図１８のステップＳ１９１乃至ステップＳ１９３の処理と同様であるので、その説明は省略する。
【０１３９】
ステップＳ２２４において、時間伸縮処理部２５は、時間長制御部２３の制御にしたがって、バッファ２１から音声信号を読み出して時間伸縮処理を行い、音高変換部２４に供給する。そして、ステップＳ２２５において、音高変換部２４は、時間伸縮処理部２５からの音声信号に音高変換処理を施し、出力音声信号を生成する。
【０１４０】
音高変換部２４は、出力音声信号を生成すると、生成した出力音声信号を誤差検出部２２に供給するとともに、出力音声信号を後段の再生部等に出力する。なお、ステップＳ２２４およびステップＳ２２５では、図１８のステップＳ１９５およびステップＳ１９４と同様の処理が行われる。
【０１４１】
ステップＳ２２５の処理が行われると、その後、ステップＳ２２６の処理が行われて音高変換処理は終了するが、この処理は図１８のステップＳ１９６の処理と同様であるので、その説明は省略する。
【０１４２】
このように、時間伸縮処理後に音高変換処理を行うようにしても、出力音声の伸縮揺らぎを抑制することができる。
【０１４３】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１４４】
図２１は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０１４５】
コンピュータにおいて、CPU（Central Processing Unit）５０１，ROM（Read Only Memory）５０２，RAM（Random Access Memory）５０３は、バス５０４により相互に接続されている。
【０１４６】
バス５０４には、さらに、入出力インターフェース５０５が接続されている。入出力インターフェース５０５には、キーボード、マウス、マイクロホンなどよりなる入力部５０６、ディスプレイ、スピーカなどよりなる出力部５０７、ハードディスクや不揮発性のメモリなどよりなる記録部５０８、ネットワークインターフェースなどよりなる通信部５０９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア５１１を駆動するドライブ５１０が接続されている。
【０１４７】
以上のように構成されるコンピュータでは、CPU５０１が、例えば、記録部５０８に記録されているプログラムを、入出力インターフェース５０５及びバス５０４を介して、RAM５０３にロードして実行することにより、上述した一連の処理が行われる。
【０１４８】
コンピュータ（CPU５０１）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア５１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【０１４９】
そして、プログラムは、リムーバブルメディア５１１をドライブ５１０に装着することにより、入出力インターフェース５０５を介して、記録部５０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部５０９で受信し、記録部５０８にインストールすることができる。その他、プログラムは、ROM５０２や記録部５０８に、あらかじめインストールしておくことができる。
【０１５０】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１５１】
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０１５２】
１１  音高変換装置，  ２２  誤差検出部，  ２３  時間長制御部，  ２４  音高変換部，  ２５  時間伸縮部，  ２６  間引き／挿入部，  ８１  変換処理部，  １５１  オーバーラップ処理部
【図１】
2012194417.tif 000003
【図２】
2012194417.tif 000004
【図３】
2012194417.tif 000005
【図４】
2012194417.tif 000006
【図５】
2012194417.tif 000007
【図６】
2012194417.tif 000008
【図７】
2012194417.tif 000009
【図８】
2012194417.tif 000010
【図９】
2012194417.tif 000011
【図１０】
2012194417.tif 000012
【図１１】
2012194417.tif 000013
【図１２】
2012194417.tif 000014
【図１３】
2012194417.tif 000015
【図１４】
2012194417.tif 000016
【図１５】
2012194417.tif 000017
【図１６】
2012194417.tif 000018
【図１７】
2012194417.tif 000019
【図１８】
2012194417.tif 000020
【図１９】
2012194417.tif 000021
【図２０】
2012194417.tif 000022
【図２１】
2012194417.tif 000023