(57)【特許請求の範囲】
【請求項１】
複数の連続フレームで構成されるデータ内からエラーフレームを検出するエラー検出手段と、
前記エラー検出手段にて検出されたエラーフレームの前後フレームを抽出する前後フレーム抽出手段と、
前記前後フレーム抽出手段にて抽出した前フレーム及び後フレームに基づいて合成フレームを生成する合成フレーム生成手段と、
前記合成フレーム生成手段にて生成した合成フレームで、前記エラー検出手段にて検出したエラーフレームの前フレーム及び後フレーム間を補間する補間手段とを有し、
前記合成フレーム生成手段は、
前記前後フレーム抽出手段にて抽出した前フレーム及び後フレームの平均値を算出する平均値算出手段と、
前記前フレームの平均値及び前記後フレームの平均値に基づいて、前記前フレーム及び後フレーム間の近似直線を算出する近似直線算出手段と、
前記前フレーム及び後フレームに窓関数を掛け合わせる窓関数手段とを有し、
これら窓関数を掛け合わせた前フレーム及び後フレームを、前記近似直線上で重ね合わせることで、前記合成フレームを生成するフレーム補正装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば音声圧縮方式やＭＰＥＧ方式の複数の連続フレームで構成するデータ内に発生したエラーフレームを補正するフレーム補正装置に関する。
【０００２】
【従来の技術】
近年、音声圧縮方式やＭＰＥＧ方式の複数の連続フレームで構成するデータを再生出力するオーディオ装置が広く知られている。
【０００３】
このようなオーディオ装置では、連続フレーム内にフレームエラーが発生した場合、このエラーを検出することができる。
【０００４】
【発明が解決しようとする課題】
しかしながら、このような従来のオーディオ装置によれば、複数の連続フレームで構成するデータ内にフレームエラーが発生すると、そのフレームエラーを検出することができるものの、そのまま、エラーフレームを出力してしまうため、このエラーフレームがノイズとなるといった問題点があった。
【０００５】
本発明は上記問題点に鑑みてなされたものであり、その目的とするところは、フレームエラーが発生したとしても、このエラーフレームを補正することができるフレーム補正装置を提供することにある。
【０００６】
【課題を解決するための手段】
上記目的を達成するために本発明のフレーム補正装置は、複数の連続フレームで構成するデータの内、前記連続フレーム内にエラーフレームを検出すると、このエラーフレームを補正するフレーム補正装置であって、前記連続フレームからエラーフレームを検出するエラー検出手段と、このエラー検出手段にて検出されたエラーフレームの前後フレームを抽出する前後フレーム抽出手段と、この前後フレーム抽出手段にて抽出した前フレーム及び後フレームに基づいて合成フレームを生成する合成フレーム生成手段と、この合成フレーム生成手段にて生成した合成フレームで、前記エラー検出手段にて検出したエラーフレームの前フレーム及び後フレーム間を補間する補間手段とを有するようにした。
【０００７】
従って、本発明のフレーム補正装置によれば、フレームエラーが発生したとしても、エラーフレームの前後フレームを読み出し、これら前フレーム及び後フレームに基づいて合成フレームを生成し、この合成フレームでエラーフレームの前フレーム及び後フレーム間を補間するようにしたので、エラーフレームにあるべきフレームに最も相関性がある前後フレームを利用することで、フレーム間の連続性を損なうことなく、エラーフレームを補正することができる。
【０００８】
本発明のフレーム補正装置は、前記合成フレーム生成手段が、前記前後フレーム抽出手段にて抽出した前フレーム及び後フレームの平均値を算出する平均値算出手段と、前記前フレームの平均値及び前記後フレームの平均値に基づいて、前記前フレーム及び後フレーム間の近似直線を算出する近似直線算出手段と、前記前フレーム及び後フレームに窓関数を掛け合わせる窓関数手段とを有し、これら窓関数を掛け合わせた前フレーム及び後フレームを、前記近似直線上で重ね合わせることで、前記合成フレームを生成するようにした。
【０００９】
従って、本発明のフレーム補正装置によれば、前フレームの平均値及び後フレームの平均値に基づいて、前記前フレーム及び後フレーム間の近似直線を算出し、前記前フレーム及び後フレームに窓関数を掛け合わせ、これら窓関数を掛け合わせた前フレーム及び後フレームを、前記近似直線上で重ね合わせることで、前記合成フレームを生成するようにしたので、フレームの連続性を確実に保つことができる。
【００１０】
【発明の実施の形態】
以下、図面に基づいて本発明のフレーム補正装置における実施の形態を示すオーディオ装置について説明する。図１は本実施の形態に示すオーディオ装置内部の概略構成を示すブロック図、図２は本実施の形態に示すオーディオ装置の要部であるフレーム補正部内部の概略構成を示すブロック図である。
【００１１】
図１に示すオーディオ装置１は、オーディオデータを符号化するＭＰＥＧエンコーダ等のオーディオエンコーダ２と、このオーディオエンコーダ２にて符号化された、複数の連続フレームで構成するオーディオデータのエラーを補正するフレーム補正部３と、このフレーム補正部３で補正したオーディオデータをアナログ変換するＤ／Ａコンバータ４とを有している。
【００１２】
各フレームは、所定サンプリング間隔で計Ｎ個のオーディオデータで構成している。
【００１３】
さらに、オーディオエンコーダ２は、各オーディオデータ及び、個々のオーディオデータ毎にエラーの有無を示すエラーフラグデータを、フレーム補正部３に順次伝送するものである。尚、エラーフラグデータは、オーディオデータにエラーがあれば“１”とし、エラーがなければ“０”とする。
【００１４】
図２に示すフレーム補正部３は、所定サンプリング間隔毎のオーディオデータ及びエラーフラグデータを順次入力し、フレーム単位でオーディオデータ及びエラーフラグデータを記憶する計６個のフレームメモリ１０と、このフレームメモリ１０の内、第１フレームメモリ１１に記憶されたオーディオデータ及びエラーフラグデータを読み出し、Ｎ個のオーディオデータを時間平均化することで、フレーム単位の平均値を算出すると共に、Ｎ個のエラーフラグデータを加算することでフレーム単位での加算結果を算出する平均値算出回路２０と、この平均値算出回路２０によるエラーフラグデータの加算結果に基づいてフレーム単位でのエラー有無を判別するエラー検出回路３０と、平均値算出回路２０にて算出されたフレーム単位の平均値及びエラー有無を示すエラーフラグをフレーム単位で順次記憶する４個の平均値メモリ４０とを有している。
【００１５】
平均値算出回路２０で算出されるフレーム単位の平均値は、フレーム長をＴ（ｓｅｃ）、ｉ番目のフレームに関わるオーディオデータの離散時間信号をｘi（ｔn）と置き換え、ｉ番目のフレームにおける平均値ＦＡｖｅｒ（ｉ）は、（数１）で算出することができる。
【数１】
0004458635.tif 000002
【００１６】
尚、このｔnは、時間のサンプリング間隔であり、（数２）で表すことができる。
【数２】
0004458635.tif 000003
【００１７】
また、エラー検出回路３０は、フレーム単位のエラーフラグデータの加算結果に基づいてフレーム単位でのエラー有無を判別するが、エラーフラグデータの加算結果が（１／２）Ｎ以上であれば、エラー有りと判別し、エラーフラグを“１”として、第３平均値メモリ４１に順次伝送するものである。
【００１８】
フレームメモリ１０は、計６個のＦＩＦＯメモリであり、第１フレームメモリ１１、第２フレームメモリ１２、第３フレームメモリ１３、第４フレームメモリ１４、第５フレームメモリ１５、第６フレームメモリ１６で構成し、第１フレームメモリ１１内にｉ番目のフレームに関わるオーディオデータ及びエラーフラグデータが記憶され、さらに（ｉ＋１）番目のフレームが到来すると、第１フレームメモリ１１に記憶中のｉ番目のフレームに関わるオーディオデータ及びエラーフラグデータを読出出力しながら、これらオーディオデータ及びエラーフラグデータを第２フレームメモリ１２に順次記憶すると共に、（ｉ＋１）番目のフレームに関わるオーディオデータ及びエラーフラグデータを第１フレームメモリ１１に順次記憶する。
【００１９】
このように第１フレームメモリ１１、第２フレームメモリ１２、第３フレームメモリ１３、第４フレームメモリ１４、第５フレームメモリ１５、第６フレームメモリ１６に順次読出／記憶するものである。
【００２０】
また、平均値メモリ４０は、計４個のＦＩＦＯメモリであり、第３平均値メモリ４１、第４平均値メモリ４２、第５平均値メモリ４３及び第６平均値メモリ４４で構成し、フレームメモリ１０の記憶読出タイミングと連動しており、例えば第３フレームメモリ１３にｉ番目のフレームに関わるオーディオデータ及びエラーフラグデータが記憶されるのと同一タイミングで、このｉ番目のフレームに関わる平均値が第３平均値メモリ４１に記憶される。
【００２１】
また、第３フレームメモリ１３からｉ番目のフレームに関わるオーディオデータ及びエラーフラグデータが読出出力されるのと同一タイミングで、第３平均値メモリ４１からもｉ番目のフレームに関わる平均値が読出出力される。
【００２２】
さらに、フレーム補正部３は、エラー検出回路３０にてフレーム単位でのエラーを検出して、このエラーフレームに関わる平均値が第４平均値メモリ４２に記憶されると、このエラーフレームの前後フレーム（例えばｉ番目のフレームをエラーフレームとすると、前フレームは（ｉ−１）番目のフレーム、後フレームは（ｉ＋１）番目のフレームとなる）に関わる平均値を第３平均値メモリ４１及び第５平均値メモリ４３から読み出し、これら前後フレームに関わる平均値に基づいて近似直線を算出する近似直線算出回路５０と、後フレームに関わるオーディオデータを記憶している第３フレームメモリ１３からオーディオデータを読み出し、このオーディオデータに窓関数を掛け合わせる後フレーム窓関数回路６１と、前フレームに関わるオーディオデータを記憶している第５フレームメモリ１５からオーディオデータを読み出し、このオーディオデータに窓関数を掛け合わせる前フレーム窓関数回路６２と、近似直線算出回路５０にて算出された近似直線、後フレーム窓関数回路６１にて窓関数を掛け合わせた後フレーム及び、前フレーム窓関数回路６２にて窓関数を掛け合わせた前フレームに基づいて合成フレームを生成し、この合成フレームを第４フレームメモリ１４に更新記憶する補間回路７０と、第６フレームメモリ１６で順次読み出されるフレームに移動平均処理を施すことで、フレーム間の不連続性を修正するＦＩＲフィルタ８０とを有している。
【００２３】
近似直線算出回路５０は、第３平均値メモリ４１に記憶中の平均値をＡとし、第５平均値メモリ４３に記憶中の平均値をＢとした場合、（数３）を使用することで、近似直線を算出することができるものである。
【数３】
0004458635.tif 000004
【００２４】
前フレーム窓関数回路６２は、（数４）を使用することで、前フレームに窓関数ｗ（ｔn）、例えばハミング窓関数を掛け合わせた前フレームを生成することができる。尚、後フレーム窓関数回路６１においても、同様に（数４）を使用することで、後フレームに窓関数を掛け合わせることで後フレームを生成することができる。
【数４】
0004458635.tif 000005
【００２５】
また、補間回路７０は、（数５）を使用することで、前フレーム窓関数回路６２で算出した前フレーム及び後フレーム窓関数回路６１で算出した後フレームを合成して、近似直線算出回路で算出した近似直線上に重ね合わせることで合成フレームを生成することができる。
【数５】
0004458635.tif 000006
【００２６】
尚、請求項記載の前後フレーム抽出手段は、第３フレームメモリ１３及び第５フレームメモリ１５に、平均値算出手段は平均値算出回路２０に、エラー検出手段はエラー検出回路３０に、近似直線算出手段は近似直線算出回路５０に、窓関数手段は後フレーム窓関数回路６１及び前フレーム窓関数回路６２、補間手段及び合成フレーム生成手段は補間回路７０に相当するものである。
【００２７】
次に本実施の形態の動作について説明する。図３は本実施の形態に示すオーディオ装置１の要部であるフレーム補正部３のフレーム補正処理に関わる処理動作を示すフローチャートである。図４は同フレーム補正処理に関わる各処理動作のフレーム信号波形を示す説明図である。
【００２８】
まずは、フレーム補正部３の第１フレームメモリ１１は、オーディオエンコーダ２からのオーディオデータ及びエラーフラグデータをフレーム単位で順次に記憶する。さらに、第１フレームメモリ１１は、次のフレームに関わるオーディオデータ（図４（ａ）参照）及びエラーフラグデータが伝送されると、現在記憶中のオーディオデータ及びエラーフラグデータを第２フレームメモリ１２へと読出出力すると共に、これら伝送されたオーディオデータ及びエラーフラグデータを第１フレームメモリ１１に順次記憶する。このように第２フレームメモリ１２以降、同様の読出、記憶動作を繰り返す。
【００２９】
さらに、平均値算出回路２０は、第１フレームメモリ１１に記憶中のオーディオデータ及びエラーフラグデータをフレーム単位で読み出し、（数１）に基づいて、これらオーディオデータをフレーム単位で平均値を算出すると共に、エラーフラグデータをフレーム単位で加算することで、フレーム単位のオーディオデータの平均値及びエラーフラグデータの加算結果をエラー検出回路３０に伝送する。
【００３０】
エラー検出回路３０は、エラーフラグデータの加算結果に基づいて、この加算結果が（１／２）Ｎ以上であるか否かを判定し、その加算結果が（１／２）Ｎ未満であれば、フレームエラーは発生していないものと判断してエラーフラグを“０”とし、このフレームに関わる平均値（図４（Ａ）の点線参照）及びエラーフラグを第３平均値メモリ４１に記憶する。
【００３１】
また、エラー検出回路３０は、エラーフラグデータの加算結果に基づいて、この加算結果が（１／２）Ｎ以上であれば、フレームエラーが発生したものと判断して（ステップＳ１１）、エラーフラグを“１”とし、このフレームに関わる平均値を“０”とし、これらエラーフラグ及び平均値を第３平均値メモリ４１に記憶する（ステップＳ１２）。
【００３２】
尚、この第３平均値メモリ４１に、例えばｉ番目のフレームに関わる平均値及びエラーフラグが記憶された場合、このｉ番目のフレームに関わるオーディオデータ及びエラーフラグデータも第３フレームメモリ１３に記憶され、第４平均値メモリ４２に（ｉ−１）番目のフレームに関わる平均値及びエラーフラグが記憶された場合、この（ｉ−１）番目のフレームに関わるオーディオデータ及びエラーフラグデータも第４フレームメモリ１４に記憶され、第５平均値メモリ４３及び第５フレームメモリ１５間、第６平均値メモリ４４及び第６フレームメモリ１６間においても同様の関係で諸データが記憶されることになる。
【００３３】
例えば第３平均値メモリ４１、第５平均値メモリ４３及び第６平均値メモリ４４に記憶中のエラーフラグが“０”で、第４平均値メモリ４２に記憶中のエラーフラグが“１”の場合、この第４平均値メモリ４２に記憶中のエラーフラグ“１”に関わるフレーム、つまり第４フレームメモリ１４に記憶中のオーディオデータに関わるフレームにエラーが発生しているものと判断することができる。
【００３４】
近似直線算出回路５０は、第４平均値メモリ４２に記憶中の平均値に関わるフレームがエラーフレームであることから、その前後のフレームに関わる第３平均値メモリ４１及び第５平均値メモリ４２に記憶中の平均値を（数３）に代入することで、図４（ｂ）の点線に示すように、エラーフレームを補間するフレームの近似直線を算出する（ステップＳ１３）。
【００３５】
さらに、前フレーム窓関数回路６２は、エラーフレームの前フレームに関わるオーディオデータを第５フレームメモリ１５から読み出し、（数４）に基づいて、この前フレームに対して窓関数を掛け合わせることで、図４（ｂ）に示すような信号波形となる。
【００３６】
また、後フレーム窓関数回路６１は、エラーフレームの後フレームに関わるオーディオデータを第３フレームメモリ１３から読み出し、（数４）に基づいて、この後フレームに対して窓関数を掛け合わせることで、図４（ｂ）に示すような信号波形となる（ステップＳ１４）。
【００３７】
さらに、補間回路７０は、図４（ｃ）に示すように近似直線算出回路５０にて算出した近似直線上に、前フレーム窓関数回路６２及び後フレーム窓関数回路６１で掛け合わせた信号波形を重ね合わせるように、（数５）に基づいて合成フレームを生成する（ステップＳ１５）。
【００３８】
補間回路７０は、図４（ｃ）に示すような合成フレームを生成すると、第４フレームメモリ１４に記憶更新することになる（ステップＳ１６）。
【００３９】
そして、ＦＩＲフィルタ８０では、第６フレームメモリ１６から順次伝送されるフレーム単位のオーディオデータの不連続性を修正する移動平均処理を実行することで、連続したフレームを出力することになる。
【００４０】
本実施の形態によれば、連続フレームからエラーフレームを検出すると、このエラーフレームの前後フレームを読み出し、これら前フレームの平均値及び後フレームの平均値に基づいて、エラーフレームを補間するフレームの近似直線を算出し、この近似直線上に、窓関数を掛け合わせた前フレーム及び窓関数を掛け合わせた後フレームを重ね合わせることで合成フレームを生成し、この合成フレームでエラーフレームの前フレーム及び後フレーム間を補間するようにしたので、エラーフレームにあるべきフレームと最も相関性がある前後フレームを利用することで、このフレームの連続性を損なうことなく、エラーフレームを補正することができ、ひいてはノイズが発生することもなくなる。
【００４１】
尚、上記実施の形態においては、１フレーム分のフレームエラーが発生した場合を例にあげて説明したが、２フレーム分以上のフレームエラーが発生したとしても、その分、フレームメモリ１０や平均値メモリ４０の数を増設したり、又は各メモリのメモリ容量を変えることで、２フレーム分以上のフレームエラーが発生したとしても、そのフレーム間の連続性を損なうこともなく、エラーフレームを補正することができる。
【００４２】
【発明の効果】
上記のように構成された本発明のフレーム補正装置によれば、フレームエラーが発生したとしても、エラーフレームの前後フレームを読み出し、これら前フレーム及び後フレームに基づいて合成フレームを生成し、この合成フレームでエラーフレームの前フレーム及び後フレーム間を補間するようにしたので、エラーフレームにあるべきフレームに最も相関性がある前後フレームを利用することで、フレームの連続性を損なうことなく、エラーフレームを補正することができる。
【図面の簡単な説明】
【図１】本発明のフレーム補正装置における実施の形態を示すオーディオ装置内部の概略構成を示すブロック図である。
【図２】本実施の形態に示すオーディオ装置の要部であるフレーム補正部内部の概略構成を示すブロック図である。
【図３】本実施の形態におけるフレーム補正部のフレーム補正処理に関わる処理動作を示すフローチャートである。
【図４】本実施の形態におけるフレーム補正部のフレーム補正処理に関わるフレームの信号波形を示す説明図である。
【符号の説明】
３  フレーム補正部（フレーム補正装置）
１０  フレームメモリ（前後フレーム抽出手段）
１３  第３フレームメモリ（前後フレーム抽出手段）
１５  第５フレームメモリ（前後フレーム抽出手段）
２０  平均値算出回路（平均値算出手段）
３０  エラー検出回路（エラー検出手段）
４０  平均値メモリ
５０  近似直線算出回路（近似直線算出手段）
６１  後フレーム窓関数回路（窓関数手段）
６２  前フレーム窓関数回路（窓関数手段）
７０  補間回路（補間手段、合成フレーム生成手段）
【図１】
0004458635.tif 000007
【図２】
0004458635.tif 000008
【図３】
0004458635.tif 000009
【図４】
0004458635.tif 000010