(57)【要約】【課題】  無音圧縮適用時でも通話品質劣化を低減できる音声復号装置を得ることを目的とする。【解決手段】  受信されたパケットを一時蓄積し、所定の出力タイミングで出力するジッタ吸収バッファと、上記ジッタ吸収バッファから出力されたパケットに含まれる背景雑音データに基づいて背景雑音の音声データを生成する背景雑音生成部と、上記ジッタ吸収バッファから出力されたパケットに含まれる音声符号化データを復号して音声の音声データを生成する音声復号部と、上記音声復号部で復号された上記音声データの再生速度を変換する話速変換を行う話速変換部と、上記ジッタ吸収バッファにおけるパケットの蓄積状況に基づいて、上記背景雑音生成部で生成される上記背景雑音の時間長を制御するとともに、上記話速変換部で変換される上記再生速度を制御する制御部とを備えた。【選択図】  図１
2014167525.tif 000002
【特許請求の範囲】
【請求項１】
受信されたパケットを一時蓄積し、所定の出力タイミングで出力するジッタ吸収バッファと、
上記ジッタ吸収バッファから出力されたパケットに含まれる背景雑音データに基づいて背景雑音の音声データを生成する背景雑音生成部と、
上記ジッタ吸収バッファから出力されたパケットに含まれる音声符号化データを復号して音声の音声データを生成する音声復号部と、
上記音声復号部で復号された上記音声データの再生速度を変換する話速変換を行う話速変換部と、
上記ジッタ吸収バッファにおけるパケットの蓄積状況に基づいて、上記背景雑音生成部で生成される上記背景雑音の時間長を制御するとともに、上記話速変換部で変換される上記再生速度を制御する制御部と
を備えたことを特徴とする音声復号装置。
【請求項２】
上記制御部は、
上記蓄積状況として、上記ジッタ吸収バッファの残量を監視するバッファ残量監視部と、
上記バッファ残量監視部で監視された上記残量に基づいて、上記背景雑音生成部で生成される上記背景雑音の時間長を制御する時間長制御信号と、上記話速変換部で変換される上記再生速度を制御する再生速度制御信号とを出力する制御信号出力部と
を備えたことを特徴とする請求項１に記載の音声復号装置。
【請求項３】
上記制御部は、
上記蓄積状況として、上記受信されたパケットが上記ジッタ吸収バッファに到着する到着速度を監視する到着速度監視部と、
上記到着速度監視部で監視された上記到着速度に基づいて、上記背景雑音生成部で生成される上記背景雑音の時間長を制御する時間長制御信号と、上記話速変換部で変換される上記再生速度を制御する再生速度制御信号とを出力する制御信号出力部と
を備えたことを特徴とする請求項１に記載の音声復号装置。
【請求項４】
上記受信されたパケットを分析し、当該パケットにに含まれる音声符号化データから無音・雑音区間が検出された場合には上記パケットを背景雑音データを含む背景雑音パケットに置き換え、上記無音・雑音区間が検出されなかった場合には上記パケットの置き換えをせずに出力する高精度無音圧縮部を備え、
上記ジッタ吸収バッファは、上記高精度無音圧縮部から出力されたパケットを一時蓄積することを特徴とする請求項１に記載の音声復号装置。
【請求項５】
ユーザの発話の有無を検出する音声検出部を備え、
上記ジッタ吸収バッファは、上記音声検出部でユーザの発話が有ることが検出された場合に、初期状態に戻ることを特徴とする請求項１に記載の音声復号装置。
【請求項６】
上記受信されたパケットが背景雑音データを含むか否かを検出し、背景雑音データを含むことを検出した場合に、１パケット当たりの時間長が音声符号化データを含むパケットの１パケット当たりの時間長と等しいパケットを上記背景雑音データの無音・雑音区間の時間長に相当する個数分、上記ジッタ吸収バッファに挿入する背景雑音データ検出・挿入部を備えたことを特徴とする音声復号装置。
【請求項７】
上記背景雑音の音声データと上記音声の音声データとを一時蓄積する出力バッファと、
上記出力バッファに蓄積された上記音声デーの蓄積量を監視し、当該蓄積量に応じて上記ジッタ吸収バッファに対して上記一時蓄積されたパケットの出力タイミングを指示する出力バッファ監視部とを備え、
上記ジッタ吸収バッファは、上記出力バッファ監視部からの指示に基づいて上記一時蓄積されたパケットを出力することを特徴とする請求項１に記載の音声復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネット電話等で用いられる符号化された音声を復号する音声復号装置に関するものである。
【背景技術】
【０００２】
インターネット電話等の音声通話は、音声を符号化した後にパケット化し、ネットワークを通してパケットを送受信することによって通話する。パケットの通信において、パケットが受信される時間間隔は一定ではないことが多く、パケットの受信時間間隔にばらつき（ジッタ）が生じる場合が多い。このようなジッタを吸収して、受信したパケットに含まれる音声の符号を復号した復号音声を連続的に出力する技術として、例えば、特許文献１に記載された技術がある。
【０００３】
特許文献１に記載された技術では、受信パケットが一時的に格納されるジッタ吸収バッファにおける受信パケットの蓄積量に応じて、再生速度を速くしたり、遅くしたりする制御を行うことにより、ジッタ吸収バッファにおける受信パケットの蓄積量を適切な量に保ち、復号音声を連続的に出力する。これにより、ジッタ吸収バッファにおける受信パケットの廃棄、複製によって受信パケットの蓄積量を適切な量に保つ場合と比較して音声品質劣化は軽減される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３７９６２４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の音声復号装置では、一定の時間間隔で音声が符号化され、パケット化されて送信されたパケットが、ジッタ吸収バッファにおける当該パケットのパケット番号に対応した位置に格納されることを前提とした制御である。よって、例えば、無音区間ではパケットの送出間隔が長くなるなど、必ずしも一定の時間間隔でパケットが送出されない無音圧縮を適用したシステムでは、適切な処理ができずに、通話品質劣化を招くという問題点があった。
この発明は上記のような問題点を解決するためになされたもので、無音圧縮適用時でも通話品質劣化を低減できる音声復号装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明にかかる音声復号装置は、受信されたパケットを一時蓄積し、所定の出力タイミングで出力するジッタ吸収バッファと、上記ジッタ吸収バッファから出力されたパケットに含まれる背景雑音データに基づいて背景雑音の音声データを生成する背景雑音生成部と、上記ジッタ吸収バッファから出力されたパケットに含まれる音声符号化データを復号して音声の音声データを生成する音声復号部と、上記音声復号部で復号された上記音声データの再生速度を変換する話速変換を行う話速変換部と、上記ジッタ吸収バッファにおけるパケットの蓄積状況に基づいて、上記背景雑音生成部で生成される上記背景雑音の時間長を制御するとともに、上記話速変換部で変換される上記再生速度を制御する制御部とを備えたものである。
【発明の効果】
【０００７】
この発明によれば、受信されたパケットを一時蓄積し、所定の出力タイミングで出力するジッタ吸収バッファと、上記ジッタ吸収バッファから出力されたパケットに含まれる背景雑音データに基づいて背景雑音の音声データを生成する背景雑音生成部と、上記ジッタ吸収バッファから出力されたパケットに含まれる音声符号化データを復号して音声の音声データを生成する音声復号部と、上記音声復号部で復号された上記音声データの再生速度を変換する話速変換を行う話速変換部と、上記ジッタ吸収バッファにおけるパケットの蓄積状況に基づいて、上記背景雑音生成部で生成される上記背景雑音の時間長を制御するとともに、上記話速変換部で変換される上記再生速度を制御する制御部とを備えたことにより、無音圧縮適用時でも通話品質劣化を防止することができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の実施の形態１における音声復号装置の機能ブロック構成図である。
【図２】パケットのタイムスタンプとジッタ吸収バッファの蓄積との関係を示す説明図である。
【図３】この発明の実施の形態２における音声復号装置の機能ブロック構成図である。
【図４】この発明の実施の形態３における音声復号装置の機能ブロック構成図である。
【図５】この発明の実施の形態４における音声復号装置の機能ブロック構成図である。
【図６】この発明の実施の形態５における音声復号装置の機能ブロック構成図である。
【図７】パケットのタイムスタンプとジッタ吸収バッファの蓄積との関係を示す説明図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態を説明する。なお、以下の実施の形態は、本発明の一例であり、本発明は以下の実施の形態に限定されるものではない。
【００１０】
実施の形態１．
図１はこの発明の一実施例を示す音声復号装置の機能ブロック構成図である。
図１において、ジッタ吸収バッファ１は、受信されたパケットを一時蓄積し、所定の出力タイミングで出力する。背景雑音生成部２は、ジッタ吸収バッファ１から出力されたパケットに含まれる背景雑音データに基づいて背景雑音の音声データを生成する。音声復号部３は、ジッタ吸収バッファ１から出力されたパケットに含まれる音声符号化データを復号して音声の音声データを生成する。話速変換部４は、音声復号部３で復号された音声データの再生速度を変換する話速変換を行う。出力バッファ５は、上記背景雑音生成部２で生成された背景雑音の音声データと上記音声復号部３で生成された音声の音声データとを一時蓄積する。出力バッファ監視部６は、出力バッファ５に蓄積された音声デーの蓄積量を監視し、当該蓄積量に応じてジッタ吸収バッファ１に対して一時蓄積されたパケットの出力タイミングを指示する。制御部７は、ジッタ吸収バッファ１におけるパケットの蓄積状況に基づいて、背景雑音生成部２で生成される背景雑音の時間長を制御するとともに、話速変換部４で変換される再生速度を制御する。
【００１１】
本実施の形態では、制御部７は、バッファ残量監視部７１と制御信号出力部７２を備えている。バッファ残量監視部７１は、ジッタ吸収バッファ１におけるパケットの蓄積状況として、ジッタ吸収バッファ１の残量を監視する。制御信号出力部７２は、バッファ残量監視部７１で監視されたジッタ吸収バッファ残量に基づいて、背景雑音生成部２で生成される背景雑音の時間長を制御する時間長制御信号と、話速変換部４で変換される再生速度を制御する再生速度制御信号とを出力する。
【００１２】
次に動作について説明する。
なお、本実施の形態では、ユーザとユーザの通話相手との二者間で音声通話をしている場合の動作について説明するが、本発明はこれに限定されるものではない。
【００１３】
まず、ユーザの通話相手が発話すると、その音声が通話相手側で符号化、パケット化され、ネットワークを通してユーザ側で受信される。このように通話相手側から送信されたパケットがユーザ側で受信されると、ジッタ吸収バッファ１は、その受信されたパケットを一時蓄積する。ジッタ吸収バッファ１は、パケット到着遅延の揺らぎであるジッタを吸収し、平滑化したタイミングにて出力できるよう、あらかじめ定められた初期遅延量のパケットを蓄積後、一時蓄積したパケットを順次出力する。但し、ジッタ吸収バッファ１からの出力タイミングは、出力バッファ監視部６からの指示に従う。
【００１４】
ジッタ吸収バッファ１から出力されたパケットは、背景雑音データを含む背景雑音パケットと、音声符号化データを含む音声パケットとに分けて処理される。音声パケットの場合は、当該パケットは音声復号部３に入力され、背景雑音パケットの場合は、当該パケットは背景雑音生成部２に入力される。背景雑音生成部２には、背景雑音パケットと共に、次パケットとの時間差、例えば、背景雑音パケットと次パケットに付与されている各々の送信時間を示すタイムスタンプ値の差を背景雑音生成時間長として、ジッタ吸収バッファ１から伝えられる。
【００１５】
詳細な動作を図を用いて説明する。図２は、パケットのタイムスタンプとジッタ吸収バッファの蓄積との関係を示す説明図である。
図２では、各々ｔ時間分の音声符号化データを含む音声パケット＃１、＃２、＃４、及び、背景雑音データを含む背景雑音パケット＃３が、＃１、＃２、＃３、＃４の順で到着し、ジッタ吸収バッファ１に一時蓄積される。
【００１６】
背景雑音パケットである＃３のパケットにシーケンス番号Ｎ、タイムスタンプ値Ｍが付与されているとすると、＃１パケットのシーケンス番号はＮ−２、＃２パケットのシーケンス番号はＮ−１、＃４パケットのシーケンス番号はＮ＋１となり、＃１パケットのタイムスタンプ値はＭ−２ｔ、＃２パケットのタイムスタンプ値はＭ−ｔとなる。＃４パケットのタイムスタンプ値は雑音区間長であるＴ時間分だけ経った時間、つまりＭ＋Ｔとなる。背景雑音生成時間長は、背景雑音パケットである＃３パケットと次パケットである＃４パケットのタイムスタンプ値の差、（Ｍ＋Ｔ）−Ｍ＝Ｔ となる。
【００１７】
背景雑音パケットと背景雑音生成時間長が入力された背景雑音生成部２は、背景雑音パケットに格納されている背景雑音データを基に背景雑音を生成し、背景雑音生成時間長分だけ背景雑音生成を継続させて、背景雑音の音声データとして出力バッファ５に出力する。
【００１８】
音声パケットが入力された音声復号部３は、音声パケットに格納されている音声符号化データを復号する事で音声の音声データを生成し、話速変換部４に出力する。話速変換部４にて処理された音声の音声データは出力バッファ５に入力される。
【００１９】
出力バッファ監視部６は、出力バッファ５に蓄積される音声データの有無（蓄積された音声データの蓄積量）を監視し、背景雑音生成部２及び話速変換部４からの入力が無い（所定量より少ない）と判断した場合に、ジッタ吸収バッファ１に蓄積している１パケットを出力するようにジッタ吸収バッファ１に対してパケットの出力タイミングを指示する。
【００２０】
バッファ残量監視部７１は、ジッタ吸収バッファ１に一時蓄積されているパケットの量を監視し、バッファ残量としてある閾値Ａよりも少ない場合には「小」、ある閾値Ｂよりも多い場合には「大」、ある閾値Ａよりも多くある閾値Ｂよりも少ない場合には「中」として、制御信号出力部７２に通知する。
【００２１】
バッファ残量監視部７１からの通知を受けた制御信号出力部７２は、ジッタ吸収バッファ１のバッファ残量が大きいほど背景雑音生成時間長を短縮するように制御（指示）する時間長制御信号を出力するとともに、ジッタ吸収バッファ１のバッファ残量が大きいほど話速の再生を速くするように制御（指示）する再生速度制御信号を出力する。
【００２２】
例えば、表１記載の制御内容に基づき、「小」と通知されたならば背景雑音生成部２には背景雑音生成時間長を延長させる指示、例えば1.1倍との指示を出し、話速変換部４には再生をゆっくり行う指示、例えば、0.8倍との指示を出す。「大」と通知されたならば、背景雑音生成部２には背景雑音生成時間長を短縮させる指示、例えば0.9倍との指示を出し、話速変換部４には再生を早める指示、例えば、1.2倍との指示を出す。「中」と通知されたならば背景雑音生成部２には背景雑音生成時間長を通常の長さとする指示、例えば1.0倍との指示を出し、話速変換部４には再生を通常の速さとする指示、例えば、1.0倍との指示を出す。
【００２３】
【表１】
2014167525.tif 000003
【００２４】
以上のように、本実施の形態によれば、制御部７から背景雑音生成部２及び話速変換部４に連携した指示を出す。すなわち、ジッタ吸収バッファ１におけるパケットの蓄積状況に基づいて、背景雑音生成部２で生成される背景雑音の時間長を制御するとともに、話速変換部４で変換される再生速度を制御する。このようにすることにより、送信間隔が異なる背景雑音（無音区間）と音声（有音区間）とを別々に制御するので、必ずしも一定間隔でパケットが送出されない無音圧縮適用時でも通話品質劣化を防止することができる。
【００２５】
ジッタ吸収バッファ１におけるパケットの蓄積状況として、ジッタ吸収バッファ１の残量に基づいて、背景雑音生成部２で生成される背景雑音の時間長を制御する時間長制御信号と、話速変換部４で変換される再生速度を制御する再生速度制御信号とを出力することにより、ジッタ吸収バッファ１の残量に応じて適切なジッタバッファ制御ができ、無音圧縮適用時でも通話品質劣化を防止することができる。
【００２６】
ジッタ吸収バッファ残量を閾値Ａ、閾値Ｂに基づいて「小」「中」「大」の３つに分けて説明したが、それ以上に分けて制御することで、更に細かな制御が可能となる。
また、残量が変化することに伴って制御も変化するが、残量の変化方向によって「小」「中」「大」を区別する閾値に異なる閾値を設定ことで、閾値近辺での残量の増減で制御が頻繁に変化することを回避でき、より良い通話品質を提供できる。例えば、ジッタ吸収バッファ残量が増える方向に変化する変化方向にある場合の閾値Ｃ、閾値Ｄと、減る方向に変化する変化方向にある場合の閾値Ｅ、閾値Ｆを設定することで、より良い通話品質を提供できる。
【００２７】
また、背景雑音生成部２において、背景雑音生成時間長を短縮する場合、ある一定の時間長よりも短くならないようにすることで、より良い通話品質を提供できる。
なお、背景雑音生成部２に対する制御部７からの指示を、上記説明では1.1倍や0.9倍と記しが、増減させる時間量、例えば、100ms延長や200ms短縮などの指示でもよい。
【００２８】
また、出力バッファ５、出力バッファ監視部６を備えた場合について説明したが、出力バッファ５及び出力バッファ監視部６を削除してもよい。例えば、ジッタ吸収バッファ１は、所定の時間間隔の出力タイミングでパケットを出力するように構成してもよい。また例えば、ジッタ吸収バッファにおけるパケットの蓄積状況に基づいて、制御部７の制御に応じた出力タイミングでパケットを出力するように構成してもよい。
【００２９】
実施の形態２．
図３はこの発明の一実施例を示す音声復号装置の機能ブロック構成図である。
図３において、上記実施の形態と同一もしくは相当部分は同一符号で示し、説明を省略する。
【００３０】
図３において、制御部７は、バッファ残量監視部７１、制御信号出力部７２及び到着速度監視部７３を備えている。到着速度監視部７３は、ジッタ吸収バッファ１に蓄積されるパケットの到着速度を監視する。本実施の形態において、制御信号出力部７２は、ジッタ吸収バッファにおけるパケットの蓄積状況として、バッファ残量監視部７１で監視された残量及び到着速度監視部７３で監視された到着速度に基づいて、背景雑音生成部２で生成される背景雑音の時間長を制御する時間長制御信号と、話速変換部４で変換される再生速度を制御する再生速度制御信号とを出力する。
【００３１】
次に動作について説明する。
なお、本実施の形態では、ユーザとユーザの通話相手との二者間で音声通話をしている場合の動作について説明するが、本発明はこれに限定されるものではない。
【００３２】
まず、ユーザの通話相手が発話すると、その音声が通話相手側で符号化、パケット化され、ネットワークを通してユーザ側で受信される。このように通話相手側から送信されたパケットがユーザ側で受信されると、ジッタ吸収バッファ１は、その受信されたパケットを一時蓄積する。ジッタ吸収バッファ１は、パケット到着遅延の揺らぎであるジッタを吸収し、平滑化したタイミングにて出力できるよう、あらかじめ定められた初期遅延量のパケットを蓄積後、一時蓄積したパケットを順次出力する。但し、ジッタ吸収バッファ１からの出力タイミングは、出力バッファ監視部６からの指示に従う。
【００３３】
ジッタ吸収バッファ１から出力されたパケットは、背景雑音データを含む背景雑音パケットと、音声符号化データを含む音声パケットとに分けて処理される。音声パケットの場合は、当該パケットは音声復号部３に入力され、背景雑音パケットの場合は、当該パケットは背景雑音生成部２に入力される。背景雑音生成部２には、背景雑音パケットと共に、次パケットとの時間差、例えば、背景雑音パケットと次パケットに付与されている各々の送信時間を示すタイムスタンプ値の差を背景雑音生成時間長として、ジッタ吸収バッファ１から伝えられる。
【００３４】
背景雑音パケットと背景雑音生成時間長が入力された背景雑音生成部２は、背景雑音パケットに格納されている背景雑音データを基に背景雑音を生成し、背景雑音生成時間長分だけ背景雑音生成を継続させて、背景雑音の音声データとして出力バッファ５に出力する。
【００３５】
音声パケットが入力された音声復号部３は、音声パケットに格納されている音声符号化データを復号する事で音声の音声データを生成し、話速変換部４に出力する。話速変換部４にて処理された音声の音声データは出力バッファ５に入力される。
【００３６】
出力バッファ監視部６は、出力バッファ５に蓄積される音声データの有無（蓄積された音声データの蓄積量）を監視し、背景雑音生成部２及び話速変換部４からの入力が無い（所定量より少ない）と判断した場合に、ジッタ吸収バッファ１に蓄積している１パケットを出力するようにジッタ吸収バッファ１に対してパケットの出力タイミングを指示する。
【００３７】
バッファ残量監視部７１は、ジッタ吸収バッファ１に一時蓄積されているパケットの量を監視し、バッファ残量としてある閾値Ａよりも少ない場合には「小」、ある閾値Ｂよりも多い場合には「大」、ある閾値Ａよりも多くある閾値Ｂよりも少ない場合には「中」として、制御信号出力部７２に通知する。
【００３８】
到着速度監視部７３は、ジッタ吸収バッファ１に入力される（到着する）パケットの到着速度を監視し、ある閾値αよりも遅い速度で入力されている場合には「低速」、ある閾値βよりも速い速度で入力されている場合には「高速」、ある閾値αよりも速くある閾値βよりも遅い場合には「中速」として、制御部信号出力部７２に通知する。
【００３９】
バッファ残量監視部７１及び、到着速度監視部７３からの通知を受けた制御信号出力部７２は、ジッタ吸収バッファ１のバッファ残量が大きいほど背景雑音生成時間長を短縮、ジッタ吸収バッファ１に入力される（到着する）パケットの到着速度が高速なほど背景雑音生成時間長を短縮するように制御（指示）する時間長制御信号を出力するとともに、ジッタ吸収バッファ１のバッファ残量が大きいほど話速の再生を速く、ジッタ吸収バッファ１に入力される（到着する）パケットの到着速度が高速なほど話速の再生を速くするように制御（指示）する再生速度制御信号を出力する。
【００４０】
例えば、表２記載の制御内容に基づき、背景雑音生成部２及び話速変換部４に指示を出す。背景雑音生成部２に対しては、「延長」とする場合には例えば1.1倍との指示を出し、「更に延長」とする場合には例えば1.3倍との指示を出し、「短縮」とする場合には例えば0.9倍との指示を出し、「更に短縮」の場合には例えば0.5倍との指示を出し、「普通」とする場合には例えば1.0倍との指示を出す。話速変換部４に対しては、「ゆっくり」とする場合には例えば0.8倍との指示を出し、「更にゆっくり」とする場合には例えば0.6倍との指示を出し、「速く」とする場合には例えば1.2倍との指示を出し、「更に速く」の場合には例えば1.4倍との指示を出し、「普通」とする場合には例えば1.0倍との指示を出す。
【００４１】
【表２】
2014167525.tif 000004
【００４２】
以上のように、本実施の形態によれば、制御部７から背景雑音生成部２及び話速変換部４に連携した指示を出す。すなわち、ジッタ吸収バッファ１におけるパケットの蓄積状況に基づいて、背景雑音生成部２で生成される背景雑音の時間長を制御するとともに、話速変換部４で変換される再生速度を制御することにより、送信間隔が異なる背景雑音（無音区間）と音声（有音区間）とを別々に制御するので、必ずしも一定間隔でパケットが送出されない無音圧縮適用時でも通話品質劣化を防止することができる。
【００４３】
ジッタ吸収バッファ１におけるパケットの蓄積状況として、ジッタ吸収バッファ１の残量及びジッタ吸収バッファ１に到着する到着速度に基づいて、背景雑音生成部２で生成される背景雑音の時間長を制御する時間長制御信号と、話速変換部４で変換される再生速度を制御する再生速度制御信号とを出力することにより、ジッタ吸収バッファ１の残量に応じて適切なジッタバッファ制御ができるとともに、パケットの受信が一時的に滞り、その後、滞りが解消されて一気に多量のパケット到着するような場合でも、到着速度も監視することでバッファオーバーフローを未然に防ぐことができる適切なジッタバッファ制御が実現でき、無音圧縮適用時でも通話品質劣化を防止することができる。
【００４４】
ジッタ吸収バッファ残量を閾値Ａ、閾値Ｂに基づいて「小」「中」「大」、到着速度を閾値α、閾値βに基づいて「低速」「中速」「高速」の３つに分けて説明したが、それ以上に分けて制御することで、更に細かな制御が可能となる。
【００４５】
また、ジッタ吸収バッファ残量及び到着速度が変化することに伴って制御も変化するが、残量及び速度の変化方向によって「小」「中」「大」、「低速」「中速」「高速」を区別する閾値に異なる閾値を設定ことで、閾値近辺での残量の増減で制御が頻繁に変化することを回避でき、より良い通話品質を提供できる。例えば、ジッタ吸収バッファ残量が増える方向に変化する変化方向にある場合の閾値Ｃ、閾値Ｄと、減る方向に変化する変化方向にある場合の閾値Ｅ、閾値Ｆを設定する。また、到着速度が速くなる方向に変化する変化方向にある場合の閾値γ、閾値δと、遅くなる方向に変化する変化方向にある場合の閾値ε、閾値ζを設定する。このようにすることで、より良い通話品質を提供できる。
【００４６】
また、背景雑音生成部２において、背景雑音生成時間長を短縮する場合、ある一定の時間長よりも短くならないようにすることで、より良い通話品質を提供できる。
なお、背景雑音生成部２に対する制御部７からの指示を、上記説明では1.1倍や0.9倍と記しが、増減させる時間量、例えば、100ms延長や200ms短縮などの指示でもよい。
【００４７】
また、バッファ残量監視部７１及び到着速度監視部７３を備えた制御部７について説明したが、バッファ残量監視部７１を削除し、制御信号出力部７２は、到着速度監視部７３で監視されるジッタ吸収バッファに到着する到着速度に基づいて、時間長制御信号と再生速度制御信号とを出力するように構成してもよい。
【００４８】
また、出力バッファ５、出力バッファ監視部６を備えた場合について説明したが、出力バッファ５及び出力バッファ監視部６を削除してもよい。例えば、ジッタ吸収バッファ１は、所定の時間間隔の出力タイミングでパケットを出力するように構成してもよい。また例えば、ジッタ吸収バッファにおけるパケットの蓄積状況に基づいて、制御部７の制御に応じた出力タイミングでパケットを出力するように構成してもよい。
【００４９】
実施の形態３．
図４はこの発明の一実施例を示す音声復号装置の機能ブロック構成図である。
図４において、上記実施の形態と同一もしくは相当部分は同一符号で示し、説明を省略する。
【００５０】
図４において、高精度無音圧縮部８は、受信されたパケットを分析し、当該パケットにに含まれる音声符号化データから無音・雑音区間が検出された場合にはそのパケットを背景雑音データを含む背景雑音パケットに置き換え、無音・雑音区間が検出されなかった場合にはパケットの置き換えをせずに出力する。
【００５１】
次に動作について説明する。
なお、本実施の形態では、ユーザとユーザの通話相手との二者間で音声通話をしている場合の動作について説明するが、本発明はこれに限定されるものではない。
【００５２】
まず、ユーザの通話相手が発話すると、その音声が通話相手側で符号化、パケット化され、ネットワークを通してユーザ側で受信される。通話相手側の符号化において無音圧縮が行われ、背景雑音区間では背景雑音パケットが、音声区間では音声パケットが出力されて、ユーザ側の音声復号装置に届く。通話相手側の音声符号化装置での無音圧縮機能の精度は悪い場合には、実際は背景雑音区間であるにも関わらず、音声パケットとしてパケットが出力される。あるいは、通話相手側の音声符号化装置では無音圧縮機能を実施せずに、すべてのパケットが音声パケットとして出力される。何れの場合にでも、ユーザ側の音声復号装置にて適切なジッタ吸収バッファ制御が実現できるように、高精度無音圧縮部８が設けられている。
【００５３】
通話相手側から送信されたパケットがユーザ側で受信されると、高精度無音圧縮部８は、受信されたパケットを分析し、受信した音声パケットに格納されている符号化データからより高精度に雑音区間を見つけ出す。当該パケットにに含まれる音声符号化データから無音・雑音区間が検出された場合にはそのパケットを背景雑音データを含む背景雑音パケットに置き換えて、ジッタ吸収バッファ１に出力する。無音・雑音区間が検出されなかった場合にはパケットの置き換えをせずにジッタ吸収バッファ１に出力する。以降の動作は上述の実施の形態と同様である。
【００５４】
以上のように、本実施の形態によれば、受信されたパケットを分析し、当該パケットにに含まれる音声符号化データから無音・雑音区間が検出された場合にはそのパケットを背景雑音データを含む背景雑音パケットに置き換え、無音・雑音区間が検出されなかった場合にはパケットの置き換えをせずに出力することにより、対向する音声符号化装置の無音圧縮機能の良し悪しや有無に関わらず、背景雑音（無音区間）と音声（有音区間）とを別々に制御するので、適切なジッタ吸収バッファ制御が実現でき、通話品質劣化を更に防止することができる。
【００５５】
なお、本実施の形態では、到着速度監視部７３は、高精度無音圧縮部８に入力されるパケットの到着速度を監視する場合について説明したが、高精度無音圧縮部８とジッタ吸収バッファ１との間でパケットの到着速度を監視するように構成してもよい。
【００５６】
また、バッファ残量監視部７１及び到着速度監視部７３を備えた制御部７について説明したが、バッファ残量監視部７１及び到着速度監視部７３は、いずれか一方を備え、時間長制御信号と再生速度制御信号とを出力するように構成してもよい。
【００５７】
また、出力バッファ５、出力バッファ監視部６を備えた場合について説明したが、出力バッファ５及び出力バッファ監視部６を削除してもよい。例えば、ジッタ吸収バッファ１は、所定の時間間隔の出力タイミングでパケットを出力するように構成してもよい。また例えば、ジッタ吸収バッファにおけるパケットの蓄積状況に基づいて、制御部７の制御に応じた出力タイミングでパケットを出力するように構成してもよい。
【００５８】
実施の形態４．
図５はこの発明の一実施例を示す音声復号装置の機能ブロック構成図である。
図５において、上記実施の形態と同一もしくは相当部分は同一符号で示し、説明を省略する。
【００５９】
図５において、音声復号装置２０は、ユーザ側で受信された音声符号化データを復号する。音声符号化装置２１は、ユーザ側から送信される音声を符号化する。音声検出部９は、ユーザの発話の有無を検出する。本実施の形態では、入力された音声データが「音声」なのか音声ではない「雑音」なのかを一定区間ごとに判定する。音声データが「音声」の場合はユーザの発話があると判定され、音声データが「雑音」の場合はユーザの発話がないと判定される。
【００６０】
音声符号化部１０は、音声データを符号化し、音声符号化データを出力する。無音圧縮制御部１１は、音声検出部９で「音声」と判定された場合には音声符号部１０からの音声符号化データを出力し、「雑音」と判定された場合には音声符号化部１０から背景雑音データを間欠的に出力する。
【００６１】
また、本実施の形態において、ジッタ吸収バッファ１は、音声検出部９でユーザの発話が有ることが検出された場合に、バッファ内が初期状態に戻るように構成されている。
【００６２】
次に動作について説明する。
なお、本実施の形態では、ユーザとユーザの通話相手との二者間で音声通話をしている場合の動作について説明するが、本発明はこれに限定されるものではない。
【００６３】
音声符号化装置２１では、音声データが音声検出部９及び音声符号化部１０に入力される。音声検出部９は、入力された音声データが「音声」なのか音声ではない「雑音」なのかを一定区間ごとに判定し、その結果を音声符号化部１０、無音圧縮制御部１１、及び、音声復号装置２０にあるジッタ吸収バッファ１に出力する。音声符号化部１０は、「音声」と通知された場合には入力された音声データの符号化データを出力し、「雑音」と通知された場合には背景雑音データを出力する。無音圧縮制御部１１は、「音声」と通知された場合には音声符号部１０からの音声符号化データを出力し、「雑音」と通知された場合には音声符号化部１０から背景雑音データを間欠的に出力する。ジッタ吸収バッファ１にも音声検出部１２の判定結果は通知される。ジッタ吸収バッファ１は、「雑音」と通知された場合には通常の処理を継続するが、「音声」と通知された場合にはジッタ吸収バッファ１に蓄積されている音声パケットを破棄し、初期状態から処理を再開させる。
【００６４】
音声符号化装置２１に「音声」の音声データが入力された場合は、ユーザが発話している状態であり、通常、この時ユーザの通話相手は発話していない。したがって、この場合、ユーザ側で復号処理を行う必要が無い可能性が高いので、ジッタ吸収バッファ１に蓄積されている音声パケットを破棄し、初期状態に戻しておくことにより、ユーザの通話相手が発話を開始し、ユーザ側で復号処理が開始される際に、バッファ枯渇や溢れに近い状態ではない初期状態からジッタ吸収バッファ制御が行える。
【００６５】
以上のように、本実施の形態によれば、音声符号化装置２１に「音声」の音声データが入力された場合に、ジッタ吸収バッファ１に蓄積されている音声パケットを破棄し、初期状態に戻ることにより、ユーザの通話相手が発話を開始し、ユーザ側で復号処理が開始される際に、バッファ枯渇や溢れに近い状態ではない初期状態からジッタ吸収バッファ制御が行えるため、より適切な制御が実現でき、通話品質劣化を更に防止することができる。
【００６６】
また、音声符号化装置２１では必ずしも無音圧縮を適用する必要は無く、音声検出部９を備え、その判定結果をジッタ吸収バッファ１で取得することでもよい。
【００６７】
また、バッファ残量監視部７１及び到着速度監視部７３を備えた制御部７について説明したが、バッファ残量監視部７１及び到着速度監視部７３は、いずれか一方を備え、時間長制御信号と再生速度制御信号とを出力するように構成してもよい。
【００６８】
また、出力バッファ５、出力バッファ監視部６を備えた場合について説明したが、出力バッファ５及び出力バッファ監視部６を削除してもよい。例えば、ジッタ吸収バッファ１は、所定の時間間隔の出力タイミングでパケットを出力するように構成してもよい。また例えば、ジッタ吸収バッファにおけるパケットの蓄積状況に基づいて、制御部７の制御に応じた出力タイミングでパケットを出力するように構成してもよい。
【００６９】
実施の形態５．
図６はこの発明の一実施例を示す音声復号装置の機能ブロック構成図である。
図６において、上記実施の形態と同一もしくは相当部分は同一符号で示し、説明を省略する。
【００７０】
図６において、背景雑音データ検出・挿入部１２は、受信されたパケットが背景雑音データを含むか否かを検出し、背景雑音データを含むことを検出した場合に、１パケット当たりの時間長が音声符号化データを含むパケットの１パケット当たりの時間長と等しいパケットを背景雑音データの無音・雑音区間の時間長に相当する個数分、ジッタ吸収バッファ１に挿入する。
【００７１】
次に動作について説明する。
なお、本実施の形態では、ユーザとユーザの通話相手との二者間で音声通話をしている場合の動作について説明するが、本発明はこれに限定されるものではない。
【００７２】
まず、ユーザの通話相手が発話すると、その音声が通話相手側で符号化、パケット化され、ネットワークを通してユーザ側で受信される。
【００７３】
背景雑音データ検出・挿入部１２では、受信したパケットが背景雑音データを含む背景雑音パケットであるか否かを検出し、背景雑音パケットを検出した場合には、１パケット当たりの時間長が音声符号化データを含むパケットの１パケット当たりの時間長と等しいパケットを背景雑音データの無音・雑音区間の時間長に相当する個数分、ジッタ吸収バッファ１に挿入する。
【００７４】
詳細な動作を図を用いて説明する。図７は、パケットのタイムスタンプとジッタ吸収バッファの蓄積との関係を示す説明図である。
図７では、ｔ時間分の音声符号化データを含む音声パケット＃１、＃２、＃４、及び、背景雑音データを含む背景雑音パケット＃３が、＃１、＃２、＃３、＃４の順で到着し、ジッタ吸収バッファ１に一時蓄積される。背景雑音パケットである＃３のパケットにシーケンス番号Ｎ、タイムスタンプ値Ｍが付与されているとすると、＃１パケットのシーケンス番号はＮ−２、＃２パケットのシーケンス番号はＮ−１、＃４パケットのシーケンス番号はＮ＋１となり、＃１パケットのタイムスタンプ値はＭ−２ｔ、＃２パケットのタイムスタンプ値はＭ−ｔとなる。＃４パケットのタイムスタンプ値は雑音区間長であるＴ時間分だけ経った時間、つまりＭ＋Ｔとなる。
【００７５】
背景雑音データ検出・挿入部１２は、背景雑音パケットである＃３パケットを検出するとそのシーケンス番号Ｎとタイムスタンプ値Ｍを記憶しておき、＃３パケットをジッタ吸収バッファ１に出力すると共に、次パケットとなるシーケンス番号がＮ＋１となるパケットの到着を待つ。背景雑音データ検出・挿入部１２は、シーケンス番号Ｎ＋１のパケット、つまり、＃４パケットが到着すると、そのタイムスタンプ値Ｍ＋Ｔを見い出し、＃２パケットと＃４パケットの間に存在する雑音区間の時間長Ｔを算出する。ｔ時間間隔で存在する音声パケットと同様に背景雑音パケットもｔ時間間隔で存在するように、Ｔ時間分の雑音区間に相当するＸ個のｔ時間分の背景雑音パケットをジッタ吸収バッファ１内の＃２パケットに続けて挿入し、そのあとに＃４パケットをジッタ吸収バッファ１に出力する。こうする事により、ジッタ吸収バッファ１内には、ｔ時間ごとに音声パケットまたは背景雑音パケットが存在するようになる。
【００７６】
バッファ残量監視部７１は、ジッタ吸収バッファ１に一時蓄積されているパケットの量を監視し、バッファ残量としてある閾値Ａよりも少ない場合には「小」、ある閾値Ｂよりも多い場合には「大」、ある閾値Ａよりも多くある閾値Ｂよりも少ない場合には「中」として、制御部信号出力部７２に通知する。
【００７７】
到着速度監視部７３は、ジッタ吸収バッファ１に入力される（到着する）パケットの到着速度を監視し、ある閾値αよりも遅い速度で入力されている場合には「低速」、ある閾値βよりも速い速度で入力されている場合には「高速」、ある閾値αよりも速くある閾値βよりも遅い場合には「中速」として、制御部信号出力部７２に通知する。
【００７８】
バッファ残量監視部７１及び、到着速度監視部７３からの通知を受けた制御信号出力部７２は、ジッタ吸収バッファ１のバッファ残量が大きいほど背景雑音生成時間長を短縮、ジッタ吸収バッファ１に入力される（到着する）パケットの到着速度が高速なほど背景雑音生成時間長を短縮するように制御（指示）する時間長制御信号を出力するとともに、ジッタ吸収バッファ１のバッファ残量が大きいほど話速の再生を速く、ジッタ吸収バッファ１に入力される（到着する）パケットの到着速度が高速なほど話速の再生を速くするように制御（指示）する再生速度制御信号を出力する。
【００７９】
バッファ残量監視部７１、及び、到着速度監視部７３からの通知を受けた制御信号出力部７２では、例えば、表２記載の制御内容に基づき、ジッタ吸収バッファ１及び話速変換部４に指示を出す。ジッタ吸収バッファ１に対しては、「延長」とする場合には例えば背景雑音パケットを１つ挿入との指示を出し、「更に延長」とする場合には例えば背景雑音パケットを３つ挿入との指示を出し、「短縮」とする場合には例えば背景雑音パケットを１つ削除との指示を出し、「更に短縮」の場合には例えば背景雑音パケットを３つ削除との指示を出し、「普通」とする場合には例えば挿入・削除無しとの指示を出す。話速変換部４に対しては、「ゆっくり」とする場合には例えば0.8倍との指示を出し、「更にゆっくり」とする場合には例えば0.6倍との指示を出し、「速く」とする場合には例えば1.2倍との指示を出し、「更に速く」の場合には例えば1.4倍との指示を出し、「普通」とする場合には例えば1.0倍との指示を出す。
【００８０】
以上のように、本実施の形態によれば、ジッタ吸収バッファ残量及び到着速度に基づいて、制御部７からジッタ吸収バッファ１及び話速変換部４に連携した指示を出す。すなわち、ジッタ吸収バッファ１におけるパケットの蓄積状況に基づいて、背景雑音生成部２で生成される背景雑音の時間長を制御するとともに、話速変換部４で変換される再生速度を制御することにより、送信間隔が異なる背景雑音（無音区間）と音声（有音区間）とを別々に制御するので、必ずしも一定間隔でパケットが送出されない無音圧縮適用時でも通話品質劣化を防止することができる。
【００８１】
背景雑音データを含むことを検出した場合に、１パケット当たりの時間長が音声符号化データを含むパケットの１パケット当たりの時間長と等しいパケットを背景雑音データの無音・雑音区間の時間長に相当する個数分、ジッタ吸収バッファ１に挿入することにより、背景雑音生成部２で生成される背景雑音の時間長を制御することで、ジッタ吸収バッファ１に蓄積されたパケットの個数で制御できるので背景雑音生成部３の処理が簡易化できる。
【００８２】
また、パケットの受信が一時的に滞り、その後、滞りが解消されて一気に多量のパケット到着するような場合でも、到着速度も監視することでバッファオーバーフローを未然に防ぐことができる適切なジッタバッファ制御が実現できる。
【００８３】
ジッタ吸収バッファ残量を閾値Ａ、閾値Ｂに基づいて「小」「中」「大」、到着速度を閾値α、閾値βに基づいて「低速」「中速」「高速」の３つに分けて説明したが、それ以上に分けて制御することで、更に細かな制御が可能となる。
【００８４】
また、ジッタ吸収バッファ残量及び到着速度が変化することに伴って制御も変化するが、残量及び速度の変化方向によって「小」「中」「大」、「低速」「中速」「高速」を区別する閾値に異なる閾値を設定ことで、閾値近辺での残量の増減で制御が頻繁に変化することを回避でき、より良い通話品質を提供できる。例えば、ジッタ吸収バッファ残量が増える方向に変化する変化方向にある場合の閾値Ｃ、閾値Ｄと、減る方向に変化する変化方向にある場合の閾値Ｅ、閾値Ｆを設定する。また、到着速度が速くなる方向に変化する変化方向にある場合の閾値γ、閾値δと、遅くなる方向に変化する変化方向にある場合の閾値ε、閾値ζを設定する。このようにすることで、より良い通話品質を提供できる。
【００８５】
また、本実施の形態では、パケット化周期を基に説明したが、１つのパケットに音声符号化フレームが複数含まれる場合には、その音声符号化フレームの時間長を基に制御を行うことでも良い。
【００８６】
また、背景雑音データ検出・挿入部１２の動作として、背景雑音パケットである＃３パケットが到着後、音声パケットである＃４パケットが到着するまでの間、ｔ時間経過ごとに背景雑音パケットをジッタ吸収バッファ１内に順に挿入することでも良い。
【００８７】
また、背景雑音生成部２において、背景雑音生成時間長を短縮する場合、ある一定の時間長よりも短くならないようにすることで、より良い通話品質を提供できる。
【００８８】
また、バッファ残量監視部７１及び到着速度監視部７３を備えた制御部７について説明したが、到着速度監視部７３を削除し、バッファ残量監視部７１の監視結果で時間長制御信号と再生速度制御信号とを出力するように構成してもよい。
【００８９】
また、出力バッファ５、出力バッファ監視部６を備えた場合について説明したが、出力バッファ５及び出力バッファ監視部６を削除してもよい。例えば、ジッタ吸収バッファ１は、所定の時間間隔の出力タイミングでパケットを出力するように構成してもよい。また例えば、ジッタ吸収バッファにおけるパケットの蓄積状況に基づいて、制御部７の制御に応じた出力タイミングでパケットを出力するように構成してもよい。
【符号の説明】
【００９０】
１  ジッタ吸収バッファ、２  背景雑音生成部、３  音声復号部、４  話速変換部、５  出力バッファ、６  出力バッファ監視部、７  制御部、７１  バッファ残量監視部、７２  制御信号出力部、７３  到着速度監視部、８  高精度無音圧縮部、９  音声検出部、１０  音声符号化部、１１  無音圧縮制御部、１２  背景雑音データ検出・挿入部、２０  音声復号装置、２１  音声符号化装置。
【図１】
2014167525.tif 000005
【図２】
2014167525.tif 000006
【図３】
2014167525.tif 000007
【図４】
2014167525.tif 000008
【図５】
2014167525.tif 000009
【図６】
2014167525.tif 000010
【図７】
2014167525.tif 000011