(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
近年、CELP(Code Excited Linear Prediction)方式やMPEGオーディオ方式など、高能率な音声・音響符号化方式が、通信、放送分野や録音再生システムなどに広く適用されている。また、これらの音声・音響符号化方式に加えて、再生音声を短時間で聞く、あるいは再生音声を聞き取り易い音声に変換するため、音声の高さや声質を変化させることなく音声信号の再生速度を変換させる話速変換技術が併用される場合がある。
【0003】
話速変換処理について
図7および
図8を参照しながら説明する。まず、
図7は音声信号の再生速度を上げる場合の話速変換処理の原理を示す説明図である。
話速変換前信号に対して、まず位置(X1)からの信号の基本周期Tp1を算出する。次に、位置(X1)から基本周期Tp1後(位置(X2))までの信号をフェードアウトさせた信号と、位置(X1)の基本周期Tp1後(位置(X2))から2×Tp1後(位置(X3))までの信号をフェードインさせた信号とを生成する。さらに生成したフェードアウトさせた信号とフェードインさせた信号を合算した長さTp1の信号を生成し、話速変換後信号として出力する。
【0004】
フェードインとフェードアウトを三角窓で実現する場合、話速変換前信号をx(t)(t:時間)、位置(X1)の時間をt1とすると、フェードイン信号と、フェードアウト信号との合成により生成した話速変換後信号y(t)(t1≦t≦t1+Tp1)は以下の式(1)で表わされる。
y(t)={(t1+Tp1−t)/Tp1}x(t)
+{(t−t1)/Tp1}x(t+Tp1)・・・(1)
図7で示した話速変換後信号において、上述した話速変換後の部分の出力信号を太線 で表している。
【0005】
その後、位置(X3)から位置(X4)までの信号を話速変換することなく出力する。これにより、長さTp1+T1の話速変換前信号が、長さT1に短縮されて話速変換後信号となり、当該話速変換後信号の話速は(Tp1+T1)/T1倍となる。ここでT1は話速調整用時間であり、話速をs倍とするには、T1=Tp1/(s−1)とする。以降、位置(X1)から位置(X4)までの処理と同様の処理を繰り返す。
図7の例では、位置(X4)からの信号の基本周期Tp2を算出し、位置(X4)以降の信号をフェードアウト、フェードインして加算した信号を生成するまでを示している。
【0006】
次に、音声信号の再生速度を下げる場合について説明する。
図8は音声信号の再生速度を下げる場合の話速変換処理の原理を示す説明図である。
まず、位置(Y1)の前後の信号の基本周期Tp1を算出する。次に、位置(Y1)の基本周期Tp1前から位置(Y1)までの信号をフェードインさせた信号と、位置(Y1)から位置(Y1)の基本周期Tp1後までの信号をフェードアウトさせた信号を生成する。さらに生成したフェードインさせた信号とフェードアウトさせた信号を合算した長さTp1の信号を生成し、話速変換後信号として出力する。
図8で示した話速変換後信号において、上述した話速変換後の部分の出力信号を太線で表している。
【0007】
この発明に係る音声再生装置は、符号化音声信号をあらかじめ設定された復号条件に基づいて復号する音声復号部と、音声復号部が復号した音声信号を蓄積する蓄積部と、蓄積部に蓄積された音声信号の音声信号波形の基本周期を算出し、算出した基本周期およびあらかじめ設定された話速に基づき音声信号波形の伸長または圧縮を行い、音声信号の再生速度を変換して出力音声信号を生成する話速変換部と、
音声復号部の復号条件として、話速変換部が算出した音声信号波形の基本周期、およびあらかじめ設定された話速に基づき
、話速変換部が算出した音声信号波形の基本周期、およびあらかじめ設定された話速に基づき、話速変換部が次に音声信号波形の基本周期を算出する位置に到達するまでの話速変換部の動作回数および復号すべき符号化フレーム数を算出し、算出した話速変換部の動作回数および復号すべき符号化フレーム数に基づき音声復号部の動作フレーム数を決定する復号動作制御部とを備えるものである。
【0008】
上述した話速変換処理においては、音声の基本周期を算出する処理の演算量が大きい。このため、高能率符号化された音声信号を復号しながら話速変換処理を行う場合に演算量を低減する技術が開示されている。例えば、特許文献1の音声再生装置では、高能率符号化された音声符号の中から基本周期の情報と有声か無声かを示すモード情報とを取り出し、取り出した情報を話速変換処理で利用することにより演算量を低減している。
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、上述した特許文献1に開示された技術では、CELP方式のように高能率符号化された音声符号に基本周期の情報が含まれる場合は演算量を低減することができるが、MPEGオーディオ方式のように音声符号に基本周期の情報が含まれない場合、演算量を低減することが困難であるという課題があった。さらに、基本周期の算出、およびフェードアウト信号、フェードイン信号の生成と加算を行う場合に、高能率符号化された音声符号を復号する音声復号処理の演算量が一時的に増大するという課題があった。
【0011】
ここで、
図9および
図10を参照しながら、音声復号処理の演算量の変化について説明を行う。まず、
図9は音声信号の再生速度を上げる場合の音声復号処理の演算量の変化を示す説明図である。
図9における話速変換前後の音声信号波形は上述した
図7と同様であり、話速変換前信号の基本周期Tp1,Tp2、および話速調整用時間T1も
図7と同様である。一方、最大基本周期Tmaxは、信号の基本周期として想定される最大値である。基本周期の算出処理は、音声信号波形の類似性が最も高い時間間隔を探す処理であり、一般に最大基本周期Tmaxの2倍の長さの信号が必要となる。
図9では、基本周期Tp1および基本周期Tp2を算出する際に必要となる信号に相当する部分に「2×Tmax」と示している。
【0012】
また、話速変換前の入力信号は高能率符号化された音声符号が復号された信号である。高能率音声・音響符号化は、通常、特定の時間長単位で入力信号を符号化・復号するもので、この時間長は符号化フレームと呼ばれる。
図9では、話速変換前の信号の下方に符号化フレーム境界を示し、各符号化フレームには後述する説明で使用するため便宜上番号を付している。また、話速変換後信号の下方には、話速変換処理のタイミングを示している。話速変換処理は当該話速変換処理のタイミング毎に行われ、次の話速変換処理のタイミングまでの時間に相当する信号を出力するものとする。なお、後述する説明で使用するため話速変換処理タイミングの一部に(a)〜(e)なる記号を付している。
【0013】
話速変換処理のタイミングの下方には、各タイミングにおいて必要となる話速変換前の信号の符号化フレーム番号を示している。以下、符号化フレーム番号について順に説明する。まず、話速変換処理タイミング(a)において、符号化フレーム「4」までの音声復号手段の出力信号が必要となる。これは、当該タイミングで信号の基本周期を算出するためである。
図9において、基本周期の算出には、符号化フレーム「1」の先頭を算出起点として、その算出起点から2×Tmaxの信号を必要とする。そして、話速変換処理タイミング(b)までは、符号化フレーム「4」までの音声復号手段の出力信号により、話速変換後信号を生成することができる。その後、話速変換処理タイミング(c)の時点から話速変換処理タイミング(d)までは、話速変換処理のタイミング毎に1ずつ大きい符号化フレームの信号が必要となる。そして、話速変換処理タイミング(e)においては信号の基本周期を算出するため、符号化フレーム「12」までの音声復号手段の出力信号が必要となる。つまり話速変換処理タイミング(d)と比較すると、話速変換処理タイミング(e)で新たに5フレーム分の音声復号手段の出力信号が必要となる。このため、音声復号処理の演算量が一時的に増大する。
【0014】
次に、音声信号の再生速度を下げる場合について説明する。
図10は音声信号の再生速度を下げる場合の音声復号処理の演算量の変化を示す説明図である。
図10における話速変換前後の音声信号波形は上述した
図8と同様であり、話速変換前の信号の基本周期Tp1,Tp2、および話速調整用時間T1も
図8と同様である。また、符号化フレーム境界、話速変換処理のタイミング、当該タイミングにおいて必要となる話速変換前の信号に対応する符号化フレーム番号を
図9と同様に示している。
【0015】
まず、話速変換処理タイミング(a)において、符号化フレーム「3」までの音声復号手段の出力信号が必要となる。これは、信号の基本周期を算出する際、その基本周期算出起点(位置(Z1))の前後の最大基本周期Tmaxの信号を必要とするためである。なお、基本周期の算出起点に対してその前後の信号を用いて基本周期を探索する点は、話速を上げる場合に基本周期の算出起点から未来方向に2×Tmaxの長さの信号を必要とした
図9の場合と異なる。
【0016】
次に、話速変換処理タイミング(b)までは、符号化フレーム「3」の音声復号手段の出力信号により、話速変換後信号を生成することができる。話速変換処理タイミング(c)から話速変換処理タイミング(d)までは、出力タイミング毎に1ずつ大きい符号化フレームの信号が必要となる。話速変換処理タイミング(e)においては再び信号の基本周期を算出するために、符号化フレーム「10」までの信号が必要となる。つまり、話速変換処理タイミング(d)と比較すると、話速変換処理タイミング(e)で新たに2符号化フレーム分の信号が必要となり、これにより音声復号処理の演算量が一時的に増大する。
【0017】
以上のように、音声復号処理および話速変換処理とを備えた音声再生装置では、音声符号に基本周期の情報が含まれない場合、話速変換処理の基本周期算出において一時的に音声復号処理の演算量が増大するという課題があった。
【0018】
この発明は、上記のような課題を解決するためになされたもので、符号化された音声を復号し、さらに話速変換を行う音声再生装置において、音声復号処理の一時的な演算量の増大を抑制することを目的とする。
【課題を解決するための手段】
【0019】
この発明に係る音声再生装置は、符号化音声信号をあらかじめ設定された復号条件に基づいて復号する音声復号部と、音声復号部が復号した音声信号を蓄積する蓄積部と、蓄積部に蓄積された音声信号の音声信号波形の基本周期を算出し、算出した基本周期およびあらかじめ設定された話速に基づき音声信号波形の伸長または圧縮を行い、音声信号の再生速度を変換して出力音声信号を生成する話速変換部と、話速変換部が算出した音声信号波形の基本周期、およびあらかじめ設定された話速に基づき音声復号部の復号条件を決定する復号動作制御部とを備えるものである。
【発明の効果】
【0020】
この発明によれば、音声復号処理の一時的な演算量の増大を抑制することができる。
【発明を実施するための形態】
【0022】
実施の形態1.
図1は、実施の形態1による音声再生装置の構成を示すブロック図である。
音声再生装置10は、音声復号部1、蓄積部2、話速変換部3および復号動作制御部4で構成されている。
音声復号部1は、高能率符号化された符号化音声の復号処理を行う。より詳細には、後述する話速変換処理に先立ち、話速変換処理タイミング毎に、後述する復号動作制御部4から指定される復号すべきフレーム数に基づいて復号処理を行う。蓄積部2は、例えばFIFO(First In Fast Out)バッファなどで構成され、音声復号部1が復号した音声信号を一時蓄積する。話速変換部3は、蓄積部2に蓄積された音声信号の再生速度を変換することにより話速変換を行って出力音声信号を生成し、出力する。復号動作制御部4は、音声復号部1の復号動作を制御する制御情報として、音声復号部1が復号すべきフレーム数(以下、動作フレーム数と称する)を算出する。
【0023】
次に、実施の形態1の音声再生装置10の動作について説明する。
図2は、この発明の実施の形態1による音声再生装置の動作を示すフローチャートである。
高能率符号化された符号化音声が入力されると(ステップST1)、音声復号部1は当該高能率符号化された符号化音声に対して、あらかじめ復号動作制御部4から指定された動作フレーム数の復号処理を話速変換処理タイミング毎に行う(ステップST2)。ステップST2で復号された音声信号は蓄積部2に出力され、蓄積部2は入力された音声信号を一時蓄積する(ステップST3)。
【0024】
話速変換部3は、ステップST3で蓄積された音声信号の再生速度を、話速変換処理タイミング毎に設定された話速に変換する(ステップST4)。話速変換部3は、ステップST4で再生速度を変換した出力音声信号を外部に出力する(ステップST5)と共に、ステップST4の話速変換処理において算出された音声の基本周期を復号動作制御部4に出力する(ステップST6)。復号動作制御部4は、ステップST6で入力された音声の基本周期に基づいて音声復号部1の動作フレーム数を算出し、音声復号部1に出力する(ステップST7)。音声復号部1は、設定されている動作フレーム数をステップST7で入力された動作フレーム数に更新する(ステップST8)。その後、フローチャートはステップST1の処理に戻り、上述した処理を繰り返す。
【0025】
次に、
図3を参照しながら復号動作制御部4の動作をより詳細に説明する。
図3は、実施の形態1による音声再生装置において音声信号の再生速度を上げる場合の話速変換処理を示す説明図である。
図3では、音声復号部1の出力である話速変換前の信号(以下、話速変換前信号と称する)、話速変換前信号の符号化フレーム境界、話速変換部3の出力である話速変換後の信号(以下、話速変換後信号と称する)および話速変換処理タイミングを示している。また、話速変換前信号の上部には基本周期Tp1、基本周期Tp2、基本周期Tp1算出後の話速調整用時間T1、想定される基本周期の最大値である最大基本周期Tmaxを示している。また、符号化フレーム境界は、音声符号の符号化フレーム長Tcを用いて示している。
【0026】
さらに、話速変換処理タイミングは、音声復号部1、話速変換部3および復号動作制御部4の動作周期Toを用いて示している。復号動作制御部4は話速変換処理タイミング毎、即ち動作周期To毎に音声復号部1の動作フレーム数を算出し、音声復号部1は算出された動作フレーム数に基づいて符号化音声の復号処理を行い、話速変換部3は復号された音声信号の話速変換処理を行い、動作周期Toの長さの話速変換後信号を出力音声信号として出力する。また、話速変換後信号において、話速変換後に対応する部分の出力音声信号を太線で表わしている。
【0027】
なお、
図3においても上述した
図9と同様に、話速変換処理タイミングの一部に(a)〜(g)の記号を付している。
図3で示した信号長Taは、話速変換処理タイミング(a)で出力する話速変換後信号の先頭から基本周期Tp1を算出する場合の基本周期算出基点までの信号長を示している。信号長Taの値は、基本周期Tp1の前の基本周期を算出した時点での基本周期算出起点から話速調整用時間経過後の時点であるため、話速変換処理タイミング(a)においては既知の値である。
【0028】
また、信号長Tbは話速変換処理タイミング(a)において音声復号部1が復号処理を行った時点、即ち話速変換部3が話速変換処理を行う前の時点において復号済み且つ未出力の信号長を示している。当該話速変換処理タイミング(a)において話速変換部3が出力する信号には、先頭から信号長Ta後に次の基本周期算出起点がある。従って、話速変換処理タイミング(a)では、話速変換前信号として話速変換部3が基本周期を算出するために必要な長さの信号、すなわち符号化フレーム境界の位置(A2)までの信号が復号されていなければならない。つまり、信号長Tbは、話速変換出力前の信号の先頭位置(A1)から符号化フレーム境界の位置(A2)までの長さ以上の信号長である必要がある。
【0029】
以下、上述した条件、即ち話速変換処理タイミング(a)において音声復号部1の動作が完了した時点で、信号長Tbは話速変換出力前の信号の先頭位置(A1)から符号化フレーム境界の位置(A2)までの長さ以上であるという条件を満たしているものとして説明を行う。言い換えると、上述した条件は復号動作制御部4が以下に示す動作を行うことにより満たされる。
【0030】
次に、話速変換処理タイミング(b)〜(g)における復号動作制御部4の動作について説明する。
まず、復号動作制御部4は話速変換処理タイミング(b)において、次に基本周期を算出する話速変換処理タイミング(g)までの話速変換処理タイミング回数no
Aを以下の式(2)に基づいて算出する。
no
A=floor{(Ta+T1)/To}・・・(2)
式(2)において、floor{x}はx以下の最大の整数である。また、T1は話速変換処理タイミング(a)において話速変換部3が算出した基本周期Tp1および話速設定sから、T1=Tp1/(s−1)により求められる。
図3の例では、式(2)により求めた話速変換処理タイミング回数no
A=6となる。
【0031】
次に、復号動作制御部4は話速変換処理タイミング(g)までに復号されるべき符号化フレーム数nf
Aを求める。符号化フレーム数nf
Aは、話速変換処理タイミング(g)において、次の基本周期を算出するために符号化フレーム境界(A3)までの信号が復号済みとなるように決定する。具体的には、以下の式(3)に基づいて算出する。
nf
A=ceil{(Ta+Tp1+T1+2・Tmax−Tb)/Tc}・・・(3)
式(3)において、ceil{x}はx以上の最小の整数を表す。
図3の例では、式(3)により求めた符号化フレーム数nf
A=8となる。
【0032】
上述した話速変換処理タイミング回数no
Aおよび符号化フレーム数nf
Aを用いて、以降話速変換処理タイミング(b)から(g)までの話速変換処理タイミング回数no
Aの間に符号化フレーム数nf
Aの符号化フレームの音声が復号されるように設定する。具体的には、話速変換処理タイミング(b)から(g)までの間、話速変換処理タイミング毎に、以下の式(4)に基づいて音声復号部1の動作フレーム数np
Aを算出すると共に、式(5)に基づいて音声復号部1の符号化フレーム数nf
Aおよび話速変換処理タイミング回数no
Aの更新を行う。
np
A=ceil(nf
A/no
A)・・・(4)
nf
A=nf
A−np
A
no
A=no
A−1 ・・・(5)
【0033】
図3の例では、話速変換処理タイミング(b)において動作フレーム数np
A=2、話速変換処理タイミング(c)において動作フレーム数np
A=2、話速変換処理タイミング(d)において動作フレーム数np
A=1、話速変換処理タイミング(e)においてで動作フレーム数np
A=1、話速変換処理タイミング(f)において動作フレーム数np
A=1、話速変換処理タイミング(g)において動作フレーム数np
A=1となる。
【0034】
上述した手順により決定した動作フレーム数np
Aに従って音声復号部1が復号動作を行うと、話速変換処理タイミング(g)において、次の基本周期Tp2を算出するために必要となる信号が復号済みとなる。従って、話速変換処理タイミング(a)に至るまでの処理も上述した手順に従ったとすると、話速変換処理タイミング(a)において基本周期Tp1を算出するために必要な信号が復号済みであること、つまり信号長Tbは話速変換出力前の信号の先頭位置(A1)から符号化フレーム境界位置(A2)までの長さとなっていることは自明である。
【0035】
音声再生装置10が起動後に初めて話速変換を開始する場合や、話速が1倍速の状態から再生速度を上げる場合、最初の話速変換処理タイミングにおいて信号の基本周期を算出する場合、信号長Tbが0または非常に小さい値であるため、最初の話速変換処理タイミングのみ音声復号部1の演算量が増大する。そこで、話速調整用時間T1の初期値T1_iniをあらかじめ設定しておき、最初の話速変換処理タイミングのみ上述した話速変換処理タイミング回数no
A、符号化フレーム数nf
A、信号長Taを以下の式(6)に基づいて算出する。
no
A=ceil{(T1_ini)/To}
nf
A=ceil{(T1_ini+2・Tmax−Tb)/Tc}・・・(6)
Ta=0
初期値T1_iniを十分大きい値に設定することにより、話速変換が実質的に開始されるまでに時間を要するが、音声復号部1の演算量増大を防止することができる。
【0036】
次に、
図4を参照しながら音声信号の再生速度を下げる場合の復号動作制御部4の動作を説明する。
図4は、実施の形態1による音声再生装置において音声信号の再生速度を下げる場合の話速変換処理を示す説明図である。
図4では、
図3と同様に話速変換前信号、符号化フレーム境界、話速変換後信号および話速変換処理タイミングを示している。話速変換前信号の上部には基本周期Tp1、基本周期Tp2、基本周期Tp1算出後の話速調整用時間T1、想定される基本周期の最大値である最大基本周期Tmaxを示している。また、符号化フレーム境界は、音声符号の符号化フレーム長Tcを用いて示している。
【0037】
動作周期Toは音声復号部1および話速変換部3の動作周期を示している。復号動作制御部4は、話速変換処理タイミング毎、即ち動作周期To毎に音声復号部1の符号化フレーム数を算出し、音声復号部1は算出された符号化フレーム数に基づいて復号処理を行い、話速変換部3は復号された音声信号の話速変換処理を行い、動作周期Toの長さの話速変換後信号を出力音声信号として出力する。また、話速変換後信号において、話速変換後に対応する部分の出力音声信号を太線で表わしている。
【0038】
なお、
図4においても上述した
図9と同様に、話速変換処理タイミングの一部に(a)〜(i)の記号を付している。
図4で示した信号長Taは、話速変換処理タイミング(a)で出力する話速変換後信号の先頭から基本周期Tp1を算出する場合の基本周期算出基点までの信号長を示している。信号長Taの値は、基本周期Tp1の前の基本周期を算出した時点での基本周期算出起点から話速調整用時間経過後の時点であるため、話速変換処理タイミング(a)においては既知の値である。
【0039】
また、信号長Tbは話速変換処理タイミング(a)において音声復号部1が復号処理を行った時点、即ち話速変換部3が話速変換処理を行う前の時点において復号済み且つ未出力の信号長を示している。当該話速変換処理タイミング(a)において話速変換部3が出力する信号には、先頭から信号長Ta後に次の基本周期算出タイミング(b)がある。従って、話速変換処理タイミング(a)では、話速変換前信号として話速変換部3が基本周期を算出するために必要な長さの信号、すなわち符号化フレーム境界の位置(B2)までの信号が復号されていなければならない。つまり、信号長Tbは、話速変換出力前の信号の先頭位置(B1)から符号化フレーム境界の位置(B2)までの長さ以上の信号長である必要がある。
【0040】
以下、上述した条件、即ち話速変換処理タイミング(a)において音声復号部1の動作が完了した時点で、信号長Tbは話速変換出力前の信号の先頭位置(B1)から符号化フレーム境界の位置(B2)までの長さ以上であるという条件を満たしているものとして説明を行う。言い換えると、上述した条件は復号動作制御部4が以下に示す動作を行うことにより満たされる。
【0041】
次に、話速変換処理タイミング(b)〜(i)における復号動作制御部4の動作について説明する。
まず、復号動作制御部4は話速変換処理タイミング(b)において、次に基本周期を算出する話速変換処理タイミング(i)までの話速変換処理タイミング回数no
Bを以下の式(7)に基づいて算出する。
no
B=floor{(Ta+Tp1+T1)/To}・・・(7)
式(7)において、T1は話速変換処理タイミング(a)において話速変換部3が算出した基本周期Tp1および話速設定sから、T1=Tp1×s/(1−s)により求められる。
図4の例では、式(7)により求めた話速変換処理タイミング回数no
B=8となる。
【0042】
次に、復号動作制御部4は話速変換処理タイミング(i)までに復号されるべき符号化フレーム数nf
Bを求める。符号化フレーム数nf
Bは、話速変換処理タイミング(i)において、次の基本周期を算出するために符号化フレーム境界(B3)までの信号が復号済みとなるように決定する。具体的には、以下の式(8)に基づいて算出する。
nf
B=ceil{(Ta+T1+Tmax−Tb)/Tc}・・・(8)
式(8)において、ceil{x}はx以上の最小の整数を表す。
図4の例では、式(8)により求めた符号化フレーム数nf
B=7となる。
【0043】
以降、上述した音声信号の再生速度を上げる場合と同様、話速変換処理タイミング回数no
Bおよび符号化フレーム数nf
Bを用いて、話速変換処理タイミング(b)から(i)までの話速変換処理タイミング回数no
Bの間に符号化フレーム数nf
Bの符号化フレームの音声が復号されるように設定する。具体的には、話速変換処理タイミング(b)から(i)までの間、話速変換処理タイミング毎に、以下の式(9)に基づいて音声復号部1が動作フレーム数np
Bを算出すると共に、式(9)に基づいて音声復号部1の符号化フレーム数nf
Bおよび話速変換処理タイミング回数no
Bの更新を行う。
np
B=ceil(nf
B/no
B)
nf
B=nf
B−np
B・・・(9)
no
B=no
B−1
【0044】
図4の例では、話速変換処理タイミング(b)において動作フレーム数np
B=1、話速変換処理タイミング(c)において動作フレーム数np
B=1、話速変換処理タイミング(d)において動作フレーム数np
B=1、話速変換処理タイミング(e)において動作フレーム数np
B=1、話速変換処理タイミング(f)において動作フレーム数np
B=1、話速変換処理タイミング(g)において動作フレーム数np
B=1、話速変換処理タイミング(h)において動作フレーム数np
B=1、話速変換処理タイミング(i)において動作フレーム数np
B=0となる。
【0045】
上述した手順により決定した動作フレーム数np
Bに従って音声復号部1が復号動作を行うと、話速変換処理タイミング(i)の時点において、次の基本周期Tp2を算出するために必要となる信号が復号済みとなる。従って、話速変換処理タイミング(a)に至るまでの処理も上述した手順に従ったとすると、話速変換処理タイミング(a)の時点で基本周期Tp1を算出するために必要な信号が復号済みであること、つまり信号長Tbは話速変換出力前の信号の先頭位置(B1)から符号化フレーム境界位置(B2)までの長さとなっていることは自明である。
【0046】
音声再生装置10が起動後に初めて話速変換を開始する場合や、話速が1倍速の状態から再生速度を下げる場合、最初の話速変換処理タイミングにおいて信号の基本周期を算出する場合、信号長Tbが0または非常に小さい値であるため、最初の話速変換処理タイミングのみ音声復号部1の演算量が増大する。そこで、話速調整用時間T1の初期値T1_ini2をあらかじめ設定しておき、最初の話速変換処理タイミングのみ上述した話速変換処理タイミング回数no
B、符号化フレーム数nf
B、信号長Taを以下の式(10)に基づいて算出する。
no
B=ceil{(T1_ini2)/To}
nf
B=ceil{(T1_ini2+Tmax−Tb)/Tc}・・・(10)
Ta=0
初期値T1_ini2を十分大きい値に設定することにより、話速変換が実質的に開始されるまでに時間を要するが、音声復号部1の演算量増大を防止することができる。
【0047】
以上のようにこの実施の形態1によれば、復号された音声信号を一時蓄積する蓄積部2と、蓄積部2に蓄積された音声信号の再生速度を設定された話速に変換して出力音声信号を生成する話速変換部3と、信号の基本周期と設定された話速に基づいて次の基本周期算出を行う話速変換処理タイミングまでの話速変換処理タイミング回数no
A,no
Bおよび話速変換処理タイミングまでに復号されるべき符号化フレーム数nf
A,nf
Bを求め、音声復号部1の動作フレーム数を決定する復号動作制御部4と、復号動作制御部4が決定した動作フレーム数に基づいて音声信号の復号を行う音声復号部1とを備えるように構成したので、符号化された音声を復号すると共に話速変換を行う音声再生装置において、音声復号処理における一時的な演算量の増大を抑制することができる。
【0048】
実施の形態2.
上述した実施の形態1とは異なる方法を適用して音声復号部1の動作フレーム数np
A,np
Bを算出しても良い。具体的には、音声復号部1の動作フレーム数np
A,np
Bは、次の基本周期算出を行う話速変換処理タイミングまでの話速変換処理タイミング回数no
A,no
B、および話速変換処理タイミングまでに復号されるべき符号化フレーム数nf
A,nf
Bを算出した後、話速変換処理タイミング回数no
A,no
Bの処理により符号化フレーム数nf
A,nf
Bのフレームの符号が行われるように決定すればよい。
【0049】
例えば、実施の形態1の
図2で示した話速を上げる場合の話速変換処理において、話速変換処理タイミング回数no
A=6、符号化フレーム数nf
A=8の場合、実施の形態1に示した方法では、話速変換処理タイミング(b)において動作フレーム数np
A=2、話速変換処理タイミング(c)において動作フレーム数np
A=2、話速変換処理タイミング(d)において動作フレーム数np
A=1、話速変換処理タイミング(e)において動作フレーム数np
A=1、話速変換処理タイミング(f)において動作フレーム数np
A=1、話速変換処理タイミング(g)において動作フレーム数np
A=1となる。
【0050】
一方、上述のように話速変換処理タイミング回数no
Aおよび符号化フレーム数nf
Aを求めた後、動作フレーム数np
Aを決定する話速変換処理では、話速変換処理タイミング(b)において動作フレーム数np
A=2、話速変換処理タイミング(c)において動作フレーム数np
A=2、話速変換処理タイミング(d)において動作フレーム数np
A=2、話速変換処理タイミング(e)において動作フレーム数np
A=2、話速変換処理タイミング(f)において動作フレーム数np
A=0、話速変換処理タイミング(g)において動作フレーム数np
A=0となる。
このように、実施の形態2による話速変換処理による音声復号部1の最大の処理フレーム数は「2」であり、演算量のピーク値は実施の形態1で示した話速変換処理と変わらない。
【0051】
以上のように、この実施の形態2によれば、音声復号部1が動作フレーム数np
A,np
Bは、次の基本周期算出を行う話速変換処理タイミングまでの話速変換処理タイミング回数no
A,no
B、および話速変換処理タイミングまでに復号されるべき符号化フレーム数nf
A,nf
Bを算出した後、話速変換処理タイミング回数no
A,no
Bの処理により符号化フレーム数nf
A,nf
Bのフレームの符号が行われるように決定すればよく、上述した実施の形態1と同様に符号化された音声を復号すると共に話速変換を行う音声再生装置において、音声復号処理における一時的な演算量の増大を抑制することができる。
【0052】
実施の形態3.
上述した実施の形態1および実施の形態2では復号動作制御部4が制御情報として音声復号部1の動作フレーム数を決定する構成を示したが、この実施の形態3では復号動作制御部4aが制御情報として音声復号部1aの復号処理時間を決定する構成を示す。
図5は、実施の形態3の音声再生装置の構成を示すブロック図である。
実施の形態3の音声再生装置10aは、
図1で示した音声再生装置10の音声復号部1および復号動作制御部4に替えて、音声復号部1aおよび復号動作制御部4aを設けている。以下では、実施の形態1による音声再生装置10の構成要素と同一または相当する部分には、
図1で使用した符号と同一の符号を付して説明を省略または簡略化する。
【0053】
音声復号部1aは、高能率符号化された符号化音声の復号処理を行うが、より詳細には話速変換処理に先立ち、話速変換処理タイミング毎に、後述する復号動作制御部4aから指定された処理時間の復号処理を行う。復号動作制御部4aは、音声復号部1aの復号動作を制御する制御情報として、復号すべき処理時間(以下、復号処理時間と称する)を算出する。算出した復号処理時間は、音声復号部1aに出力される。
【0054】
次に、実施の形態3の音声再生装置10aの動作について説明する。
図6は、この発明の実施の形態2による音声再生装置の動作を示すフローチャートである。なお以下では、実施の形態1による音声再生装置10と同一のステップには
図2で使用した符号と同一の符号を付し、説明を省略または簡略化する。
【0055】
高能率符号化された符号化音声が入力されると(ステップST1)、音声復号部1aは当該高能率符号化された符号化音声に対して、あらかじめ復号動作制御部4aから指定された復号処理時間の復号処理を話速変換処理タイミング毎に行う(ステップST11)。ステップST11で復号された音声信号は蓄積部2に出力され、蓄積部2は入力された音声信号を一時蓄積する(ステップST3)。
【0056】
その後、ステップST4からステップST6と同様の処理を行う。次に、復号動作制御部4aは、ステップST6で入力された音声の基本周期に基づいて音声復号部1aの復号処理時間を算出し、音声復号部1aに出力する(ステップST12)。音声復号部1aは、復号処理時間をステップST12で入力された処理時間に更新する(ステップST13)。その後、フローチャートはステップST1の処理に戻り、上述した処理を繰り返す。
【0057】
次に、音声信号の再生速度を上げる場合の復号動作制御部4aの動作を説明する。なお、動作の説明は実施の形態1で示した
図3を参照しながら説明を行う。
まず、復号動作制御部4aは、実施の形態1で示した復号動作制御部4と同様に話速変換処理タイミング(b)において、次に基本周期を算出する話速変換処理タイミング(g)までの話速変換処理タイミング回数no
A、および話速変換処理タイミング(g)までに復号されるべき符号化フレーム数nf
Aを求める。
【0058】
以降、話速変換処理タイミング(b)から(g)までの話速変換処理タイミング回数no
Aの間に符号化フレーム数nf
Aの符号化フレームの音声が復号される必要がある。そこで、話速変換処理タイミング回数no
Aおよび符号化フレーム数nf
Aを用いて、話速変換処理タイミング(b)から(g)までの間、話速変換処理タイミング毎に、音声復号部1aの復号処理時間Tdec
Aを以下の式(11)に基づいて算出する。
Tdec
A=Tdmax×nf
A/no
A・・・(11)
式(10)において、Tdmaxは音声復号部1aが1符号化フレーム分の処理を行う際の処理時間の最大値であり、あらかじめ求めておくものとする。
【0059】
音声復号部1aの復号処理時間Tdecを上述した式(11)に基づいて決定すると、音声復号部1aは話速変換処理タイミング(b)から話速変換処理タイミング回数no
A回の間(
図3の話速変換処理タイミング(g)までの間)に、Tdec
A×no
A=Tdmax×nf
Aだけ復号処理が行われ、Tdmaxは1符号化フレーム分の処理時間の最大値であるから符号化フレーム数nf
Aフレーム以上の復号処理が行われる。
【0060】
次に、音声信号の再生速度を下げる場合の復号動作制御部4aの動作を説明する。なお、動作の説明は実施の形態1で示した
図4を参照しながら説明を行う。
まず、復号動作制御部4aは、実施の形態1で示した復号動作制御部4と同様に話速変換処理タイミング(b)において、次に基本周期を算出する話速変換処理タイミング(i)までの話速変換処理タイミング回数no
B、および話速変換処理タイミング(i)までに復号されるべき符号化フレーム数nf
Bを求める。
【0061】
以降、上述した音声信号の再生速度を上げる場合と同様、話速変換処理タイミング回数no
Bおよび符号化フレーム数nf
Bを用いて、話速変換処理タイミング(b)から(i)まで間、話速変換処理タイミング毎に、音声復号部1aの復号処理時間Tdec
Bを以下の式(12)に基づいて算出する。
Tdec
B=Tdmax×nf
B/no
B・・・(12)
【0062】
音声復号部1aの復号処理時間Tdec
Bを上述した式(12)に基づいて決定すると、音声復号部1aは話速変換処理タイミング(b)から話速変換処理タイミング回数no
B回の間(
図4の話速変換処理タイミング(i)までの間)に、Tdec
B×no
B=Tdmax×nf
Bだけ復号処理が行われ、Tdmaxは1符号化フレーム分の処理時間の最大値であるから符号化フレーム数nf
Bフレーム以上の復号処理が行われる。
【0063】
以上のように、この実施の形態3によれば、復号された音声信号を一時蓄積する蓄積部2と、蓄積部2に蓄積された音声信号の再生速度を設定された話速に変換して出力音声信号を生成する話速変換部3と、信号の基本周期と設定された話速に基づいて次の基本周期算出を行う話速変換処理タイミングまでの話速変換処理タイミング回数no
A,no
Bおよび話速変換処理タイミングまでに復号されるべき符号化フレーム数nf
A,nf
Bを求め、音声復号部1が動作すべき処理時間を決定する復号動作制御部4aと、復号動作制御部4aが決定した処理時間に基づいて音声信号の復号を行う音声復号部1aとを備えるように構成したので、符号化された音声を復号すると共に話速変換を行う音声再生装置において、音声復号処理における一時的な演算量の増大を抑制することができる。
【0064】
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。