(57)【特許請求の範囲】
【請求項１】
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するための電子デバイスであって、
プロセッサと、
プログラムを記憶する、前記プロセッサと電気的に通信するメモリと、
を備え、前記プログラムは、
損失パケットを検出する手順と、
合成フィルタバンクのゼロ入力応答を取得する手順と、
粗いピッチ推定値を取得する手順と、
前記ゼロ入力応答および前記粗いピッチ推定値に基づいて細かいピッチ推定値を取得する手順と、
前記細かいピッチ推定値に基づいて最終ピッチ期間を選択する手順と、
前記損失パケットに対して前記最終ピッチ期間からのサンプルを使用する手順と
を前記プロセッサに実行させる、電子デバイス。
【請求項２】
前記粗いピッチ推定値がサブ帯域サンプルの自己相関を計算することによって取得される、請求項１に記載の電子デバイス。
【請求項３】
前記サブ帯域サンプルは、合成されていない、請求項２に記載の電子デバイス。
【請求項４】
前記プログラムは、さらに、前記最終ピッチ期間からの前記サンプルの少なくともいくつかを前記ゼロ入力応答と重複加算する手順を前記プロセッサにさらに実行させる、請求項１に記載の電子デバイス。
【請求項５】
前記細かいピッチ推定値は、前記ゼロ入力応答と前に復号されたサンプルとの相関を計算することによって取得される、請求項１に記載の電子デバイス。
【請求項６】
前記プログラムは、さらに、
さらなる損失パケットを検出する手順と、
前記さらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用する手順と
を前記プロセッサにさらに実行させる、請求項１に記載の電子デバイス。
【請求項７】
前記プログラムは、さらに、前記最終ピッチ期間からの前記サンプルをフェードする手順を前記プロセッサにさらに実行させる、請求項６に記載の電子デバイス。
【請求項８】
前記プログラムは、さらに、複数のさらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用する手順を前記プロセッサにさらに実行させる、請求項６に記載の電子デバイス。
【請求項９】
前記プログラムは、さらに、
正確に復号されたパケットまたはフレームを検出する手順と、
望ましくないサンプルの範囲に対して前記最終ピッチ期間からのサンプルを使用する手順と、
前記最終ピッチ期間からのサンプルを遷移サンプルと重複加算する手順と
を前記プロセッサにさらに実行させる、請求項１に記載の電子デバイス。
【請求項１０】
前記損失パケットに対して前記最終ピッチ期間からの前記サンプルを使用することは、前記サンプルを前記損失パケットに複写することを備える、請求項１に記載の電子デバイス。
【請求項１１】
前記ＳＢＣ復号器は、広帯域スピーチ信号を復号するために使用される、請求項１に記載の電子デバイス。
【請求項１２】
前記電子デバイスは、無線通信デバイスである、請求項１に記載の電子デバイス。
【請求項１３】
前記無線通信デバイスはＢＬＵＥＴＯＯＴＨ（登録商標）デバイスである、請求項１２に記載の電子デバイス。
【請求項１４】
前記ＳＢＣ復号器によって、実行可能なパケットを復号することに比べて、少しの追加の遅延も前記損失パケットを再構築するのに使用されない、請求項１に記載の電子デバイス。
【請求項１５】
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するための方法であって、
損失パケットを検出することと、
電子デバイス上で、合成フィルタバンクのゼロ入力応答を取得することと、
粗いピッチ推定値を取得することと、
前記電子デバイス上で、前記ゼロ入力応答および前記粗いピッチ推定値に基づいて細かいピッチ推定値を取得することと、
前記細かいピッチ推定値に基づいて最終ピッチ期間を選択することと、
前記損失パケットに対して前記最終ピッチ期間からのサンプルを使用することと
を備える方法。
【請求項１６】
前記粗いピッチ推定値がサブ帯域サンプルの自己相関を計算することによって取得される、請求項１５に記載の方法。
【請求項１７】
前記サブ帯域サンプルは、合成されていない、請求項１６に記載の方法。
【請求項１８】
前記最終ピッチ期間からの前記サンプルの少なくともいくつかを前記ゼロ入力応答と重複加算することをさらに備える、請求項１５に記載の方法。
【請求項１９】
前記細かいピッチ推定値は、前記ゼロ入力応答と前に復号されたサンプルとの相関を計算することによって取得される、請求項１５に記載の方法。
【請求項２０】
さらなる損失パケットを検出することと、
前記さらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用することと
をさらに備える、請求項１５に記載の方法。
【請求項２１】
前記最終ピッチ期間からの前記サンプルをフェードすることをさらに備える、請求項２０に記載の方法。
【請求項２２】
複数のさらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用することをさらに備える、請求項２０に記載の方法。
【請求項２３】
正確に復号されたパケットまたはフレームを検出することと、
望ましくないサンプルの範囲に対して前記最終ピッチ期間からのサンプルを使用することと、
前記最終ピッチ期間からのサンプルを遷移サンプルと重複加算することと  をさらに備える、請求項１５に記載の方法。
【請求項２４】
前記損失パケットに対して前記最終ピッチ期間からの前記サンプルを使用することは、前記サンプルを前記損失パケットに複写することを備える、請求項１５に記載の方法。
【請求項２５】
前記ＳＢＣ復号器は、広帯域スピーチ信号を復号するために使用される、請求項１５に記載の方法。
【請求項２６】
前記電子デバイスは、無線通信デバイスである、請求項１５に記載の方法。
【請求項２７】
前記無線通信デバイスはＢＬＵＥＴＯＯＴＨデバイスである、請求項２６に記載の方法。
【請求項２８】
前記ＳＢＣ復号器によって、実行可能なパケットを復号することに比べて、少しの追加の遅延も、前記損失パケットを再構築するのに使用されない、請求項１５に記載の方法。
【請求項２９】
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するためのプログラムであって、
損失パケットを検出する手順と、
合成フィルタバンクのゼロ入力応答を取得する手順と、
粗いピッチ推定値を取得する手順と、
前記ゼロ入力応答および前記粗いピッチ推定値に基づいて細かいピッチ推定値を取得する手順と、
前記細かいピッチ推定値に基づいて最終ピッチ期間を選択する手順と、
前記損失パケットに対して前記最終ピッチ期間からのサンプルを使用する手順と
をコンピュータに実行させるためのプログラム。
【請求項３０】
前記粗いピッチ推定値がサブ帯域サンプルの自己相関を計算することによって取得される、請求項２９に記載のプログラム。
【請求項３１】
前記プログラムは、さらに、
さらなる損失パケットを検出する手順と、
前記さらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用する手順と、
を前記コンピュータに実行させる、請求項２９に記載のプログラム。
【請求項３２】
前記プログラムは、さらに、
正確に復号されたパケットまたはフレームを検出する手順と、
望ましくないサンプルの範囲に対して前記最終ピッチ期間からのサンプルを使用する手順と、
前記最終ピッチ期間からのサンプルを遷移サンプルと重複加算する手順と
を備える、請求項２９に記載のプログラム。
【請求項３３】
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するための装置であって、
損失パケットを検出するための手段と、
合成フィルタバンクのゼロ入力応答を取得するための手段と、
粗いピッチ推定値を取得するための手段と、
前記ゼロ入力応答および前記粗いピッチ推定値に基づいて細かいピッチ推定値を取得するための手段と、
前記細かいピッチ推定値に基づいて最終ピッチ期間を選択するための手段と、
前記損失パケットに対して前記最終ピッチ期間からのサンプルを使用するための手段と
を備える装置。
【請求項３４】
前記粗いピッチ推定値は、サブ帯域サンプルの自己相関を計算することによって取得される、請求項３３に記載の装置。
【請求項３５】
さらなる損失パケットを検出するための手段と、
前記さらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用するための手段と、
をさらに備える、請求項３３に記載の装置。
【請求項３６】
正確に復号されたパケットまたはフレームを検出するための手段と、
望ましくないサンプルの範囲に対して前記最終ピッチ期間からのサンプルを使用するための手段と、
前記最終ピッチ期間からのサンプルを遷移サンプルと重複加算するための手段と
をさらに備える、請求項３３に記載の装置。
【発明の詳細な説明】
【関連出願】
【０００１】
本出願は、２０１０年２月１１日に出願された「An Efficient Packet Loss Concealment (PLC) Scheme in SBC Decoder for Wideband Speech Communications over BlueTooth（登録商標）」と題する米国仮出願６１／３０３，５６０号、並びに、２０１０年４月１４日に出願された「An Efficient Packet Loss Concealment (PLC) Scheme in a Subband Coding Decoder for Wide-Band Speech Communications」と題する米国仮出願６１／３２４，２２８号に関連し、その優先権を主張する。
【技術分野】
【０００２】
本開示は一般に電子デバイスに関する。さらに詳細には、本開示は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽することに関する。
【背景技術】
【０００３】
過去数十年で、電子 デバイスの使用は一般的になってきている。特に、電子テクノロジの進歩は、ますます複雑かつ有益な電子デバイスのコストを削減した。コストの削減と消費者の需要が電子デバイスの使用を激増させ、それは、事実上、現代社会においてユビキタスである。電子デバイスの使用が拡大するにつれ、電子デバイスの新しくかつ改善された特徴に対する需要も拡大した。さらに詳細には、より迅速に、より効率的に、あるいは、より高い品質で機能を実行する電子デバイスが求められることが多い。
【０００４】
多数の電子デバイスが、例えば、ミュージックまたは音声データのようなオーディオまたはサウンド情報と共に使用される。このオーディオまたはサウンド情報により、電子デバイスはサウンドを再生することができる。いくつかの電子デバイスは、他の電子デバイスと通信する。例えば、ある種類の電子デバイスは、セルラ電話のような無線通信デバイスである。いくつかの無線通信デバイスまたは他の電子デバイスは、オーディオまたはサウンド情報を受信することができる。例えば、無線通信デバイスは、別の電子デバイスから音声情報を受信しうる。
【０００５】
例えば、電子デバイスがオーディオまたはサウンド情報を受信している際に、いくつかのオーディオまたはサウンド情報は失われる可能性がある。例えば、無線通信デバイスは、通話中に音声情報またはデータの１または複数のパケットを失う可能性がある。損失オーディオまたはサウンド情報は、ユーザ経験を劣化させる可能性がある。この論述から分かるように、損失オーディオまたはサウンド情報を処理するための改善されたシステムおよび方法が有益でありうる。
【発明の概要】
【０００６】
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するための電子デバイスが開示される。電子デバイスは、プロセッサと、メモリに記憶された命令とを含む。電子デバイスは、損失パケットを検出し、合成フィルタバンクのゼロ入力応答を取得する。電子デバイスは、さらに、粗いピッチ推定値（coarse pitch estimate）を取得し、ゼロ入力応答と粗いピッチ推定とに基づいて細かいピッチ推定値（fine pitch estimate）を取得する。電子デバイスは、さらに、細かいピッチ推定値に基づいて最終ピッチ期間（last pitch period）を選択し、損失パケットに対して最終ピッチ期間からのサンプルを使用する。
【０００７】
サブ帯域サンプル（sub-band sample）の自己相関を計算することによって粗いピッチ推定値が取得されうる。サブ帯域サンプルは、合成されていない可能性がある。電子デバイスは、さらに、最終ピッチ期間からのサンプルのうちの少なくともいくつかをゼロ入力応答と重複加算（overlap-add）しうる。細かいピッチ推定値は、ゼロ入力応答と前に復号されたサンプルとの相関を計算することによって取得される。
【０００８】
電子デバイスは、さらに、追加損失パケットを検出し、この追加損失パケットに対して最終ピッチ期間からのサンプルを使用しうる。電子デバイスは、さらに、最終ピッチ期間からのサンプルをフェード（fade）しうる。電子デバイスは、さらに、複数の追加損失パケットに対して最終ピッチ期間からのサンプルを使用しうる。
【０００９】
電子デバイスは、さらに、正確に復号されたパケットまたはフレームを検出し、望ましくないサンプルの範囲に対して最終ピッチ期間からのサンプルを使用し、最終ピッチ期間からのサンプルを遷移サンプル（transition sample）と重複加算しうる。損失パケットに対して最終ピッチ期間からのサンプルを使用することは、このサンプルを損失パケットへと複写することを含みうる。
【００１０】
ＳＢＣ復号器は、広帯域スピーチ信号を復号するために使用されうる。電子デバイスは、無線通信デバイスでありうる。無線通信デバイスは、ＢＬＵＥＴＯＯＴＨ（登録商標）デバイスでありうる。ＳＢＣ復号器による実行可能パケット（viable packet）の復号と比べると、少しの追加の遅延も損失パケットを再構築するために使用されない。
【００１１】
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するための方法も開示される。方法は、損失パケットを検出することと、電子デバイス上で、合成フィルタバンクのゼロ入力応答を取得することとを含む。方法は、さらに、粗いピッチ推定値を取得することと、ゼロ入力応答および粗いピッチ推定値に基づいて細かいピッチ推定値を取得することとを含む。方法は、さらに、細かいピッチ推定値に基づいて最終ピッチ期間を選択することと、損失パケットに対して最終ピッチ期間からのサンプルを使用することとを含む。
【００１２】
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するためのコンピュータプログラムプロダクトがさらに開示される。コンピュータプログラムプロダクトは、命令を有する非一時的な有形のコンピュータ可読媒体を含む。命令は、電子デバイスに対して、損失パケットを検出させ、合成フィルタバンクのゼロ入力応答を取得させるためのコードを含む。命令は、さらに、電子デバイスに対して、粗いピッチ推定値を取得させ、ゼロ入力応答および粗いピッチ推定値に基づいて細かいピッチ推定値を取得させるためのコードを含む。命令はさらに、電子デバイスに対して、細かいピッチ推定値に基づいて最終ピッチ期間を選択させ、損失パケットに対して最終ピッチ期間からのサンプルを使用させるためのコードを含む。
【００１３】
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するための装置がさらに開示される。装置は、損失パケットを検出するための手段と、合成フィルタバンクのゼロ入力応答を取得するための手段とを含む。装置は、さらに、粗いピッチ推定値を取得するための手段と、ゼロ入力応答および粗いピッチ推定値に基づいて細かいピッチ推定値を取得するための手段とを含む。装置は、さらに、細かいピッチ推定に基づいて最終ピッチ期間を選択するための手段と、損失パケットに対して最終ピッチ期間からのサンプルを使用するための手段とを含む。
【図面の簡単な説明】
【００１４】
【図１】図１は、パケット損失隠蔽（ＰＬＣ）または損失パケット再構築のためのシステムおよび方法が実施されうる電子デバイスの１つの構成を例証するブロック図である。
【図２】図２は、パケット損失隠蔽（ＰＬＣ）または損失パケット再構築のためのシステムおよび方法が実施されうる無線通信デバイスの１つの構成を例証するブロック図である。
【図３】図３は、パケット損失隠蔽（ＰＬＣ）または損失パケット再構築のためのシステムおよび方法が実施されうる無線通信デバイスの別の構成を例証するブロック図である。
【図４】図４は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するための方法の１つの構成を例証するフロー図である。
【図５】図５は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するためのいくつかのモジュールの１つの構成を例証するブロック図である。
【図６】図６は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するための方法のより詳細な構成を例証するフロー図である。
【図７Ａ】図７Ａは、損失または紛失パケット検出を例証する。電子デバイス１０２は、ＳＢＣ符号化オーディオ（例えば、音声またはスピーチ）を受信および／または復号しうる。
【図７Ｂ】図７Ｂは、ゼロ入力応答の生成を例証する。
【図７Ｃ】図７Ｃは、粗いピッチ推定値または期間の決定を例証する。
【図７Ｄ】図７Ｄは、細かいピッチ推定値または最終ピッチ期間の決定を例証する。
【図７Ｅ】図７Ｅは、損失パケットに対して最終ピッチ期間を使用すること、および、ゼロ入力応答を最終ピッチ期間からのサンプルと重複加算することを例証する。
【図７Ｆ】図７Ｆは、隠蔽または再構築されたパケットまたはフレームを例証する。
【図８】図８は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するためのいくつかのモジュールの１つの構成を例証するブロック図である。
【図９】図９は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するための方法の別の構成を例証するフロー図である。
【図１０Ａ】図１０Ａは、追加の損失パケットの検出を例証する図である。
【図１０Ｂ】図１０Ｂは、追加の損失パケットまたはフレームを隠蔽または再構築するために、最終ピッチ期間からのサンプルを使用することを例証する図である。
【図１０Ｃ】図１０Ｃは、隠蔽されたパケットまたはフレーム内のフェーディングサンプルを例証する図である。
【図１１】図１１は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するために使用されうるいくつかのモジュールの１つの構成を例証するブロック図である。
【図１２】図１２は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するための方法の１つの構成を例証するフロー図である。
【図１３Ａ】図１３Ａは、正確に復号されたパケットまたはフレームのゼロ状態応答を例証する図である。
【図１３Ｂ】図１３Ｂは、正確に復号されたパケットまたはフレームのゼロ状態応答に対して最終ピッチ期間からのサンプルを使用することを例証する図である。
【図１４】図１４は、フレームオーバラップの例を例証する図である。
【図１５】図１５は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するために使用されうるいくつかのモジュールの１つの構成を例証するブロック図である。
【図１６】図１６は、電子デバイスにおいて利用されうる様々なコンポーネントを例証する。
【図１７】図１７は、無線通信デバイス内に含まれうる特定のコンポーネントを例証する。
【図１８】図１８は、基地局内に含まれうる特定のコンポーネントを例証する。
【発明を実施するための形態】
【００１５】
本明細書で使用される場合、「基地局（base station）」という用語は、一般的に、通信ネットワークへのアクセスを提供することができる通信デバイスを表す。通信ネットワークの例は、電話ネットワーク（例えば、公衆交換電話ネットワーク（ＰＳＴＮ）のような「陸線」ネットワークまたはセルラ電話ネットワーク）、インターネット、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）等を含むがそれらに限定されるわけではない。基地局の例は、例えば、セルラ電話基地局またはノード、アクセスポイント、無線ゲートウェイ、および／または、無線ルータを含む。基地局は、ＩＥＥＥ（Institute of Electrical and Electronics Engineers）８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ、８０２．１１ｎ、８０２．１１ａｃ（例えば、Wireless Fidelity、すなわち、「Ｗｉ−Ｆｉ」）標準のような特定の業界標準に従って動作しうる。基地局が従事しうる標準の他の例は、ＩＥＥＥ ８０２．１６（例えば、Worldwide Interoperability for Microwave Access、すなわち「ＷｉＭＡＸ」）、第３世代パートナーシッププロジェクト（３ＧＰＰ）、３ＧＰＰロングタームエボリューション（ＬＴＥ）、および、他の標準（例えば、基地局がノードＢ、発展型ノードＢ（ｅＮＢ）等と呼ばれうる）を含みうる。本明細書に開示されるシステムおよび方法のうちのいくつかは、１または複数の標準の観点から記述されるが、このシステムおよび方法が多数のシステムおよび／または標準に適用可能でありうるため、これは本開示の範囲を限定するべきではない。
【００１６】
本明細書で使用される場合、「無線通信デバイス（wireless communication device）」という用語は、一般的に、基地局または他の電子デバイスと無線で通信しうる電子デバイス（例えば、アクセス端末、クライアントデバイス、クライアント局等）を表す。無線通信デバイスは、別名、モバイルデバイス、モバイル局、加入者局、ユーザ機器（ＵＥ）、リモート局、アクセス端末、モバイル端末、端末、ユーザ端末、加入者ユニット等と呼ばれうる。無線通信デバイスの例は、ラップトップまたはデスクトップコンピュータ、セルラ電話、スマートフォン、無線モデム、電子リーダ、タブレットデバイス、ゲーミングシステム等を含む。無線通信デバイスは、基地局に関して上に記述されたような１または複数の業界標準に従って動作しうる。このように、「無線通信デバイス」という一般用語は、業界標準に従った様々な用語（例えば、アクセス端末、ユーザ機器（ＵＥ）、リモート端末等）で記述される無線通信デバイスを含みうる。
【００１７】
過去数年にわたり、消費者電気業界では、ＢＬＵＥＴＯＯＴＨ（ＢＴ）を通した広域（ＷＢ）スピーチ通信を可能にする技術に対する強い需要が存在している。この需要に対する応答して、ＢＴ標準の組織は、ＢＴのＷＢスピーチまたは音声アプリケーションのために必須コーデックとしてサブ帯域コード化（ＳＢＣ）を選択している。ＳＢＣは、フレームベースのコーデックであり、ここで、入力信号はフレームにフラグメント化され、このフレーム内の時間サンプルは、分析フィルタによってデシメートされた（decimated）サブ帯域サンプルに変換される。各周波数帯域のサブ帯域サンプルは適応的に量子化され、次に、量子化器インデックスは、量子化器ステップサイズと共にＳＢＣ復号器に送信される。ＳＢＣ復号器において、サブ帯域サンプルは、逆量子化器によって再構築され、合成フィルタによって時間ドメイン信号に変換し戻されうる。
【００１８】
ＢＴを通した狭帯域（ＮＢ）スピーチに対するＣＶＳＤ（Continuously Variable Slope Delta Modulation）コーデックとは異なり、ＳＢＣ復号器は、それがビット誤りによって破損したパケットに対してうるさいほど悪化した（annoyingly impaired）オーディオを生成する傾向にあるため、送信ビット誤りに対して敏感であることが知られている。そのような劣化を回避するために、破損したパケットは破棄され、パケット損失隠蔽（ＰＬＣ）または損失パケット再構築を用いて良い推定値と置き換えられうる。
【００１９】
サイレンス挿入（silence insertion）、パケット反復（packet repetition）、ピッチ分析に基づく波形置換、線形予測（ＬＰ）ベースのＰＬＣなどの多数のＰＬＣ技術がＳＢＣ復号器に組み込まれうる。中でも、Ｇ．７１１ ＮＢスピーチコーデックに対して展開されるＰＬＣは、それが適度な遅延と計算複雑性で良いオーディオ品質を生成することができるため、費用効率の高いソリューションとしてＢＴ標準の組織によって推薦されている。
【００２０】
音声またはスピーチ信号（例えば、広帯域音声またはスピーチ情報）が電子デバイス（例えば、ＢＬＵＥＴＯＯＴＨ送信機および受信機）間で送信される場合、１または複数のパケットが失われうる。このパケットの損失は、望ましくない信号の歪みおよびアーティファクトを引き起こしうる。音声またはスピーチ信号のパケットが失われた場合、パケット損失隠蔽（ＰＬＣ）または損失パケット再構築が使用され、別のパケットが成功裏に受信されるまで、受信データに基づいて損失パケットを再構築し、それによって、望ましくない信号の歪みおよびアーティファクトを減らしうる。しかしながら、典型的なＰＬＣスキームは、かなりの処理およびメモリリソースを要求しうる。さらに、ＰＬＣスキームが広帯域スピーチ信号（狭帯域とは対照的に）に適用される場合、追加の処理およびメモリリソースが必要とされうる。
【００２１】
ＰＬＣが使用されない場合、ＳＢＣ符号器によって符号化された広帯域スピーチビットストリームがＳＢＣ復号器によって受信されうる。ビットストリームパーサは、逆量子化器への入力のためにビットストリームをパースおよびフォーマットしうる。逆量子化器は、合成フィルタバンクへの入力のためにサブ帯域サンプルを再構築する。合成フィルタバンクは、再構築されたサブ帯域サンプルを時間ドメイン（例えば、パルスコード変調（ＰＣＭ）された）サンプルに変換する。時間ドメインサンプルは、ＳＢＣ復号器によって復号された広帯域スピーチを備えうる。例えば、パケットがＰＬＣせずに誤って受信されるか、失われると、上述されたように、復号された広帯域スピーチにおける望ましくない歪みが発生する可能性がある。
【００２２】
理解のため、１つの典型的なＰＬＣスキームについてのレビューが以下に示される。Ｇ．７１１は、典型的なＰＬＣ電気通信標準化部門（ＩＴＵ−Ｔ）標準である。Ｇ．７１１復号器のためのＰＬＣは、本質的に、最後に利用可能なサンプルに最も類似した、正確に受信された前のサンプルのフラグメントを探索することによって、損失スピーチフレームを推定する。次に、復号器は、前のフレームと次の（正確に受信された）フレームとの間にこのフラグメントを挿入する。
【００２３】
１０ミリ秒（ｍｓｅｃ）のフレームのパケットが正確に受信されると、復号されたフレームは、最大ピッチ長よりも２倍以上長い履歴バッファに記憶される。パケットが失われると、ピッチ分析ブロックにおいて、最終ピッチ期間が決定される。第１に、最大ピッチ長と同じ長さのブロックｘが、最大ピッチ長が１２０に設定されている履歴バッファ内の最後のサンプルから取得される。同じ長さの別のブロックｙ０も、最短時間ラグで履歴バッファ内から取得される。これら２つのブロック（ｘおよびｙ０）に対して正規化相関が計算され、局所変数Ｒ（０）に記録される。次に、１つのサンプルぶんインクリメントされた時間ラグで履歴バッファ内のサンプルを取得することによって第２のブロックｙ１が取得される。正規化相関Ｒ（１）は、２つのブロックｘおよびｙ１を用いて計算される。これらの動作は、時間ラグが最大ピッチ長に増やされるまで反復される。最終ピッチ期間は、正規化相関を最大化する時間ラグとして決定される。
【００２４】
概要において、Ｇ．７１１ ＰＬＣは、最初に、最終ブロックと履歴バッファ内のサンプルブロックとの相関を計算する。第２に、これは、相関が最大化される最終ピッチ期間を決定する。第３に、これは、最終ピッチ期間を損失フレームに複写する。第４に、これは、受信サンプルと隠蔽サンプルとの間での平滑的な遷移のためにテール重複加算（ＯＬＡ）を実行する。第５に、これは、隠蔽サンプルと次のフレームとの間のシームレスな遷移のためにヘッドＯＬＡを実行する。
【００２５】
ピッチ分析がかなりの量の算術演算を要求し、それが、１０ミリ秒のフレームのＧ．７１１復号の計算複雑性を超えうることは理解できる。この計算的負担を減らすために、ＰＬＣ標準は、粗い推定とその精緻化（refinement）という方法でピッチ分析を実行するアルゴリズムを用いる。最終ピッチ期間の粗い推定値は、デシメートされたサンプルに対する相関を半分のレートで計算することによって取得されうる。この粗い推定値から、精緻化のための３つの候補（粗い推定値およびその２つの隣接）が、候補ごとに、最後の２つのピッチ期間のブロック間の正規化相関を計算することによって、並びに、この相関を最大化する候補を選択することによって比較される。
【００２６】
ピッチ分析において最終ピッチ期間が決定されると、履歴バッファ内の最終ピッチ期間は、損失フレームに複写される。最終ピッチ期間内のサンプルに加えて、フレーム境界における波形不連続性を回避するために、最終ピッチ期間の直前の３．７５ミリ秒のサンプルブロックも複写され、履歴バッファの最後のセグメントと重複加算（ＯＬＡ）される。このテールＯＬＡプロセスから、前のフレーム（出力バッファにすでに出力された）のサンプルの最後の３．７５ミリ秒が、現在のフレームの隠蔽において変更されることが理解可能である。このように、復号または隠蔽されたフレームが出力バッファに出力されると、フレーム内のサンプルは３．７５ミリ秒ぶん遅らされ、３．７５ミリ秒のブロックへの潜在的な変更を可能にする。従って、隠蔽フレーム内の最初の６．２５ミリ秒のサンプルよりも先に、前のフレームの最後の３．７５ミリ秒がきて、１０ミリ秒の隠蔽フレームが最終的に出力バッファに排出される。
【００２７】
パケットの損失の後に良いパケットが受信されると、復号されたフレームが前の隠蔽フレームの直後に挿入される。しかしながら、フレーム境界には波形不連続性が存在する可能性がある。シームレスな遷移を確実にするために、３．７５ミリ秒のサンプルブロックが前のピッチ期間から反復され、復号されたフレーム内の最初の３．７５ミリ秒のブロックと重複加算される。復号されたフレームのこの変更の後、３．７５ミリ秒ぶん遅らされた１０ミリ秒のブロックが、出力バッファに出力される。
【００２８】
サブ帯域コード化（ＳＢＣ）復号器は、一般的に、受信されたサブ帯域サンプルから時間ドメイン信号を再構築する。単一のＳＢＣパケットの損失は、フレームにおけるサブ帯域サンプルの損失を意味する。このように、損失サブ帯域サンプルを推定するＳＢＣ復号器のためにＰＬＣスキームを設計することが望まれうる。しかしながら、この場合、履歴バッファ内の信号が、高度にデシメートされたサブ帯域サンプルでありうるため、このタスクは難しい可能性がある。代わりとして、Ｇ．７１１ ＰＬＣが、そのメリットにより、ＳＢＣ復号器に組み込まれうる。しかしながら、このアプローチにおいて、ＳＢＣ復号器へのＰＬＣの組み込みは、Ｇ．７１１の復号器の場合ほど容易ではない可能性がある。
【００２９】
具体的には、単一のＳＢＣパケットが失われた場合、損失パケット内のサブ帯域サンプルは、失われたと見なされうる。それ故に、パケットまたはフレームの復号は省かれ、このパケットまたはフレームは隠蔽されうる。これらのプロセスの間、合成フィルタメモリは、更新されない恐れがある。これは、次のパケットが正確に受信された場合であっても、次のフレームの再構築に対して深刻な歪みを引き起こしうる。換言すると、単一のパケットの損失は、２つのフレームにわたって波形歪みを引き起こしうる。このように、１より多くのＳＢＣフレームサイズのスピーチサンプルは、出力オーディオにおけるより多くの損傷が避けられない可能性があるため、ＰＬＣによって隠蔽されうる。
【００３０】
隠蔽オーディオの品質問題を除き、Ｇ．７１１ ＰＬＣを組み込むことは、３．７５ミリ秒の遅延を本質的に必要とし、それは、遅延に敏感なＢＬＵＥＴＯＯＴＨ（ＢＴ）アプリケーションにおいて望ましくない。さらに、アルゴリズムの複雑性が、狭帯域（ＮＢ）スピーチのＧ．７１１ ＰＬＣの複雑性と比較して著しく増やされうるため、ＰＬＣによって要求される計算も懸念されうる。具体的には、相関計算に使用されるサンプルブロックの長さは、広帯域（ＷＢ）スピーチＰＬＣに対して２倍となりうるため、算術演算の数は４倍に増加するであろう。結果として、ＰＬＣを実行するための計算は、単一のフレームのＳＢＣ復号に対して要求される計算をはるかに超えるであろう。この計算的負担は、効率的な技術が、粗い推定とその精緻化を介して最適なピッチラグを見つけるために用いられたとしても、容易に取り除かれ（lifted）ないであろう。
【００３１】
Ｇ．７１１ ＰＬＣの性能制限に対処するために、本明細書に開示されるシステムおよび方法は、ＳＢＣ復号ストラクチャ内へのＧ．７１１ ＰＬＣの効率的な組み込みを可能にしうる。本明細書に開示されるシステムおよび方法は、歪められたサンプルを隠蔽する際、および、ピッチ分析を実行する際に、ＳＢＣ復号器において全ての利用可能な情報を活用しうる。
【００３２】
Ｇ．７１１ ＰＬＣに類似して、正確に受信されたパケットは復号され、履歴バッファに記憶されうる。時間ドメインのサンプルに加えて、多数の復号済み第１のサブ帯域サンプルも、サブ帯域バッファ（例えば、より小さいサイズの）に記憶されうる。
【００３３】
ＳＢＣパケットが失われると、失われたフレーム内の失われたサブ帯域サンプルが、ゼロと推定されうる。サブ帯域サンプルがゼロに設定されると、１または複数の合成フィルタは、ゼロ入力応答を出力しうる。合成フィルタ状態が、ゼロ入力応答を合成する間ゼロに再設定されうるため、パケットが正確に受信される次のフレームの再構築は、ゼロ状態応答でありうる。１つの例において、後続フレーム内のゼロ状態応答は、損失フレーム内のゼロ入力応答に続きうる。例えば、第１のパケットが失われると、復号器は、ゼロ入力応答を出力しうる。次に第２のフレームが正確に受信されうる。波形歪みは、１つのパケットしか失われなかった場合であっても、この２つのフレームの両方にわたって観察されうる。
【００３４】
このように、単一パケットの損失が２つのフレームにわたって波形歪みを引き起こす可能性があったとしても、損失フレーム内のゼロ入力応答の最初の数ミリ秒（msec）、および、次のフレームの最後の数ミリ秒は、原信号に近く再構築されうる。このように、２つの部分の中間にあるサンプルは、Ｇ.７１１ ＰＬＣを介して推定されうる。推定されたサンプルは、隣接サンプルと共にテールおよびヘッドＯＬＡを介して挿入されうる。ＳＢＣ復号器において合成フィルタのゼロ入力およびゼロ状態応答を活用することによって、Ｇ．７１１ ＰＬＣによって本質的に要求される３．７５ミリ秒の遅延は回避されうる。
【００３５】
利用可能な全ての情報を十分に利用するアプローチは、ピッチ分析にも適用されうる。損失フレームおよび次のフレームの歪んだサンプルを隠蔽するために、前のフレームは、Ｇ．７１１ ＰＬＣで展開されるような粗い推定とその精緻化を使用することによって同様に探索されうる。しかしながら、記憶されたサブ帯域サンプルの正規化相関（例えば、自己相関）を計算することによって、粗い推定値は別に取得されうる。例えば、８倍デシメートされたサブ帯域サンプルに対して相関が計算されるため、計算の数およびメモリ使用という観点では、かなりの削減が達成されうる。例えば、ＷＢスピーチに対して最大許容ピッチラグが２４０個のサンプルと定義された場合、相関計算は、２４０個のサンプルからなる２つのブロックに対して実行され、履歴バッファは、少なくとも２×２４０個のサンプルを記憶しうる。しかしながら、本明細書に開示されるシステムおよび方法に従ってサブ帯域サンプルを用いて、最大許容ピッチラグは、３０個のサンプルへと８倍デシメートされうる。３０個のサンプルからなる２つのブロックに対して相関が計算されるため、サブ帯域バッファには２×３０個のサンプルだけが記憶される必要がありうる。
【００３６】
次に、履歴バッファ内の時間ドメインサンプルを用いて粗い推定値が精緻化されうる。Ｇ．７１１ ＰＬＣにおいて、精緻化候補ごとに最後の２つのピッチ期間のブロック間の正規化相関を計算することによって精緻化が実行される。これについて、最大ピッチラグの２倍の時間ドメインサンプルが履歴バッファに記録される必要がありうる。メモリ利用上のそのような負荷を取り除く（lift）ために、本明細書に開示されるシステムおよび方法は、履歴バッファサイズを半分に（例えば、最大ピッチラグへと）減らすことを可能にするピッチ精緻化に対して効率的なスキームを用いる。例えば、本明細書に開示されるシステムおよび方法は、損失フレームのゼロ入力応答内のサンプル（例えば、パルスコード変調（ＰＣＭ）されたサンプル）の最初の数ミリ秒を使用し、相関計算において第１のアーギュメントとしてそれを使用しうる。第２のアーギュメントは、ピッチ精緻化候補ごとの履歴バッファ内の１ピッチ遅れたサンプルでありうる。これら２つの短いブロックを使用して、相関が効率的に計算されうる。この相関は、この相関を最大化するピッチラグをピッチ分析の最後の出力として選択するために使用されうる。このアプローチは、損失フレーム内のゼロ入力応答の最初の数ミリ秒が、原信号に近く再構築されうるという観察から正当化され、１つのピッチラグぶん離れた２つのショートブロック間の相関は、正確な精緻化結果を生じさせうる。
【００３７】
複雑性削減への別の寄与は、最初の数サブ帯域サンプル（ゼロに設定された）だけを合成フィルタに与えることによりゼロ入力応答の最初の数ミリ秒を計算することによって行われうる。ピッチ分析によって要求される計算およびメモリ利用の数は、本明細書に開示されたシステムおよび方法を最低限の計算およびメモリ利用に適用することによって、かなり減らされうる。このように、ＰＬＣのアルゴリズムの複雑性は、正常なＳＢＣ復号のそれに類似して維持されうる。
【００３８】
最終ピッチ期間として識別されたサンプルが反復され、次に、最終ピッチ期間の反復されたピッチ期間またはサンプルが損失フレームに複写されうる。受信フレームと隠蔽フレームとの間での平滑的な遷移のために、ＯＬＡが、ゼロ入力応答の最初の数ミリ秒と、履歴バッファ内の１ピッチ遅れたサンプルとの間で実行されうる。隠蔽または再構築されたブロック（例えば、パケットまたはフレーム）は、Ｇ．７１１ ＰＬＣでは発生する余分な遅延なく、復号器出力バッファに出力されうる。最終ピッチ期間は、次の良いパケットが復号器で受信されるまで、フェードイン信号減衰で反復されうる。
【００３９】
復号器に再度良いパケットが与えられると、復号済みサブ帯域サンプルが、１または複数の合成フィルタに適用されうる。しかしながら、この場合、フィルタ状態がゼロに再設定されたことにより、ゼロ状態応答を出力しうる。このように、最初の５ミリ秒を越えるゼロ状態応答は、例えば、前のフレームから続く最終ピッチ期間と置き換えられうる。最終ピッチ期間は、ゼロ状態応答における対応フラクションとのヘッドＯＬＡのために、さらに数ミリ秒以上にわたって再度継続されうる。この方法において、隠蔽フレームから復号フレームへのシームレスな遷移が達成されうる。満たされたフレームは、復号フレームと隠蔽フレームとの間でのＯＬＡに対して別途要求される余計な遅延なく復号器出力バッファに向けられうる。
【００４０】
ＳＢＣ復号器のＰＬＣに対して本明細書に開示されるシステムおよび方法は、隠蔽フレームと復号フレームとの間のシームレスな遷移のためにＳＢＣ合成フィルタのゼロ入力およびゼロ状態応答を使用しうる。本明細書に開示されるシステムおよび方法は、さらに、減らされたまたは最低限の計算およびメモリ使用でピッチ分析の効率的な実現化を可能にしうる。一般的に、本明細書に開示されるシステムおよび方法は、Ｇ．７１１ ＰＬＣとの使用に限定されないが、任意のＰＬＣをＳＢＣ復号器に組み込むタスクに適用されうる。例えば、オーディオ品質が他の設計制約よりも最優先されるいくつかのアプリケーションにおいて、ＬＰ分析およびピッチ分析を介して損失フレームを推定する線形予測ベースの（ＬＰベースの）ＰＬＣが用いられうる。ＰＬＣの組み込みにおいて、隠蔽フレームと復号フレームとの間のシームレスな遷移のためにＳＢＣ合成フィルタのゼロ入力およびゼロ状態応答を用いて、この隠蔽フレームは、シームレスに、その隣接フレームに挿入されうる。さらに、ＬＰベースのＰＬＣにおけるピッチ分析は、本明細書に開示されるシステムおよび方法に従って、減らされた計算およびメモリ使用でピッチ分析の効率的な実現を使用することによって効率的に実行されうる。
【００４１】
このパケット損失隠蔽スキーム（ＰＬＣ）スキームのいくつかの有益な態様は、特に、サブ帯域サンプルバッファにおいて自己相関されたサブ帯域サンプルを利用した粗い推定値の計算と、ゼロ入力応答サンプルの使用を含む。このアプローチは、メモリ利用に加えて、ＰＬＣスキームの計算的複雑性を減らしうる。さらに、本明細書に開示されるシステムおよび方法に従って、他のアプローチで生じる遅延がＰＬＣで生じないため、このアプローチは有益でありうる。
【００４２】
このように、パケット損失隠蔽（ＰＬＣ）または損失パケット再構築についての改善されたシステムおよび方法は、損失パケットの効率的な再構築を可能にしうる。これらの改善されたシステムおよび方法は、サブ帯域コード化された広帯域（および／または狭帯域）スピーチ信号に適用されうる。本明細書で開示されるシステムおよび方法は、計算的複雑性およびメモリ使用を減らしうる。
【００４３】
様々な構成が、図に関して記述されうる。ここで、同様の参照番号は、機能的に類似したエレメントを示しうる。本明細書の図において一般的に記述および例証されるシステムおよび方法は、多種多様な異なる構成で配列および設計されうる。このように、図において表される、いくつかの構成下のより詳細な記述は、請求される範囲を制限することを企図せず、システムおよび方法の単なる代表である。
【００４４】
図１は、パケット損失隠蔽（ＰＬＣ）または損失パケット再構築のためのシステムおよび方法が実施されうる電子デバイス１０２の１つの構成を例証するブロック図である。電子デバイス１０２の例は、セルラ電話、スマートフォン、ラップトップコンピュータ、携帯情報端末（ＰＤＡ）、電子リーダ、ゲーミングシステム、無線モデム等のような無線通信デバイスを含む。電子デバイス１０２の他の例は、デスクトップコンピュータ、電話、記録デバイス等を含む。電子デバイス１０２は、サブ帯域コード化（ＳＢＣ）復号器１０４、１または複数のスピーカ１１４、および／または、メモリ１１６を含みうる。本明細書に開示されるシステムおよび方法に従って、ＳＢＣ復号器１０４は、パケット損失検出器１０６、逆量子化器１０８、合成フィルタバンク１１０、および／または、ＰＬＣ／損失パケット再構築モジュール１１２を含みうる。
【００４５】
パケット損失検出器１０６は、オーディオ、音声、またはスピーチ情報がいつ正確に受信および／または復号されなかったかを決定しうる。１つの構成において、電子デバイス１０２は、別の電子デバイスから音声またはスピーチ情報を受信しうる（例えば、有線または無線リンクを使用して）。別の構成において、電子デバイス１０２は、メモリ１１６（例えば、ＲＡＭ、ハードドライブ等）から音声またはスピーチ情報を検索しうる。パケット損失検出器１０６は、ＣＲＣ（巡回冗長検査）などの誤り検出コード化を用いて、パケット（例えば、音声またはスピーチ情報の）が失われたことを決定しうる。パケット損失検出器１０６は、別の方法でも、パケットが失われたことを決定しうる。例えば、期待される音声またはスピーチ情報が特定の時間期間内に到着しなかった場合、あるいは、電子デバイス１０２が受信された音声またはスピーチ情報を適切に復号できなかった場合、パケット損失検出器１０６は、パケットが失われたと決定しうる。逆量子化器１０８は、音声またはスピーチ信号のサブ帯域サンプルを再構築しうる。合成フィルタバンク１１０は、１または複数の合成フィルタを備え、再構築されたサブ帯域サンプルを時間ドメイン（オーディオ）サンプルに変換しうる。
【００４６】
パケット損失隠蔽（ＰＬＣ）または損失パケット再構築モジュール１１２は、損失パケットを隠蔽または再構築しうる。より具体的には、ＰＬＣまたは損失パケット再構築モジュール１１２は、合成フィルタバンク１１０のゼロ入力応答と、粗いピッチ推定値（例えば、サブ帯域サンプルを使用して取得される）とを使用して、細かいピッチ推定値を獲得しうる。細かいピッチ推定値は、最終ピッチ期間を選択するために使用されうる。最終ピッチ期間からのサンプルは、損失パケットのフレームに複写または挿入されうる。このように、損失パケットは、「隠蔽」または再構築されうる。１つの構成において、「再構築された」パケットまたはサンプル（例えば、損失パケットが占有するであろうフレーム内のサンプル）は、１または複数のスピーカ１１４を使用して音響的に出力されうる。別の構成において、「再構築された」パケットまたはサンプルは、メモリ１１６に保存されうる。さらに別の構成において、「再構築された」パケットまたはサンプルは、別の電子デバイスに送信されうる。
【００４７】
例えば、パケットが失われると、ＰＬＣ／損失パケット再構築モジュール１１２は、損失パケットまたはフレームを、最終ピッチ期間からのサンプルと置換するか、それらで満たしうる。最終ピッチ期間は、先行するフレームまたはパケットからの一連のサンプルを備えうる。最終ピッチ期間からのサンプルは、損失または紛失パケットまたはフレームに複写、挿入および／または併合されうる。ゆえに、これは、先行するフレームからのピッチを継続しうる。このように、損失または紛失パケットまたはフレームに配置されたサンプルは、先行フレームと類似して鳴り（音響信号として出力された場合）、これによって、望ましくない歪みを回避しうる。本明細書で使用される場合、「再構築すること（reconstructing）」、「再構築する（reconstruct）」、「隠蔽（concealment）」、「隠蔽する（conceal）」という用語および他の変形が、損失パケットと、損失パケットからのもののではない他のサンプルとの置換（または、損失パケットが占有するであろうフレームにおける配置）を表しうることに注意されたい。このように、損失パケットを再構築することで、電子デバイス１０２のユーザに対して、パケット損失を分かりにくくする。
【００４８】
図２は、パケット損失隠蔽（ＰＬＣ）または損失パケット再構築のためのシステムおよび方法が実施されうる無線通信デバイス２０２の１つの構成を例証するブロック図である。無線通信デバイスＡ ２０２は、ＰＬＣまたは損失パケット再構築モジュール２１２を含みうる１または複数のアンテナ２１８、１または複数のスピーカ２１４、メモリ２１６、および／または、ＳＢＣ復号器２０４を含みうる。無線通信デバイスＢ ２２２は、ＳＢＣ符号器２２４、および／または、１または複数のアンテナ２２０を含みうる。無線通信デバイスＡ ２０２および無線通信デバイスＢ ２２２は、それぞれのアンテナ２１８、２２０を使用して互いに通信しうる。
【００４９】
無線通信デバイスＢ ２２２は、ＳＢＣ符号器２２４を使用して、オーディオ（例えば、音声またはスピーチ）信号を符号化しうる。例えば、無線通信デバイスＢ ２２２は、オーディオ信号（例えば、ユーザの音声またはスピーチ）をキャプチャするためのマイクロフォン（示されない）を含みうる。無線通信デバイスＢ ２２２は、ＳＢＣ符号器２２４を使用して、オーディオ信号を符号化しうる。ＳＢＣ符号化された信号は、１または複数のアンテナ２２０を用いて無線通信デバイスＡ ２０２に送信されうる。無線通信デバイスＡ ２０２は、このＳＢＣ符号化された信号を、１または複数のアンテナ２１８を使用して受信しうる。次に、無線通信デバイスＡ ２０２は、ＳＢＣ復号器２０４を使用して、ＳＢＣ符号化された信号を復号しうる。ＳＢＣ符号化された信号の任意のパケットが損失または紛失している場合、無線通信デバイスＡ ２０２は、ＰＬＣ／損失パケット再構築モジュール２１２を使用して、損失パケットの代わりに他のサンプル（例えば、「再構築された」パケット）を隠蔽または配置しうる。ＳＢＣ復号されたオーディオ信号は、１または複数のスピーカ２１４を使用して音響的に出力され、メモリ２１６に記憶され、および／または、別の電子デバイスまたは無線通信デバイスに送信されうる。
【００５０】
１つの構成において、例えば、無線通信デバイスＢ ２２２は、ＢＬＵＥＴＯＯＴＨヘッドセットであり、無線通信デバイスＡ ２０２は、セルラ電話である。ユーザは、無線通信デバイスＢ ２２２（例えば、ＢＬＵＥＴＯＯＴＨヘッドセット）を使用して、電話呼出のためのユーザの音声またはスピーチをキャプチャしうる。ユーザの音声またはスピーチは、マイクロフォンによってキャプチャされ、ＳＢＣ符号器２２４を使用して符号化されうる。キャプチャ／符号化されたスピーチは、例えば、広帯域スピーチまたは狭帯域スピーチでありうる。ＳＢＣ符号化されたオーディオ（例えば、音声、スピーチ）信号は、アンテナ２２０を使用して送信され、それは、次に、アンテナ２１８を使用して無線通信デバイスＡ ２０２（例えば、セルラ電話）によって受信される。無線通信デバイスＡ ２０２は、ＳＢＣ復号器２０４を使用して、ＳＢＣ符号化された信号を復号する。パケットが損失または紛失している場合、無線通信デバイスＡ ２０２は、ＰＬＣ／損失パケット再構築モジュール２１２を使用して、前のフレームからのサンプルを、この損失または紛失パケットのフレームに配置する。結果として得られるＳＢＣ復号された信号は、オーディオ信号（例えば、１または複数の「隠蔽された」パケットを有する広帯域または狭帯域オーディオ信号）である。この例において、無線通信デバイスＡ ２０２（例えば、セルラ電話）は、オーディオ信号をフォーマット（例えば、誤り検出／訂正コード化の追加、変調など）し、これを別の電子デバイス（例えば、セルラ電話、陸線電話など）に送信する。加えて、または、あるいは、オーディオ信号は、メモリ２１６に記憶され、および／または、１または複数のスピーカ２１４を使用して音響的に出力されうる。
【００５１】
図３は、パケット損失隠蔽（ＰＬＣ）または損失パケット再構築のためのシステムおよび方法が実施されうる無線通信デバイス３０２の別の構成を例証するブロック図である。無線通信デバイス３０２は、１または複数のアンテナ３１８、１または複数のスピーカ３１４、メモリ３１６、および／または、ＳＢＣ復号器３０４を含み、それは、ＰＬＣ／損失パケット再構築モジュール３１２を含みうる。基地局３２８は、１または複数のアンテナ３２６を用いて無線通信デバイス３０２と通信しうる。
【００５２】
上で論述されたように、無線通信デバイス３０２の１つの例はセルラ電話である。例えば、無線通信デバイス３０２（例えば、セルラ電話）がＳＢＣ符号化されたオーディオ信号をＢＬＵＥＴＯＯＴＨヘッドセット（例えば、図２の無線通信デバイスＢ ２２２）から受信したと仮定する。さらに、ＳＢＣ符号化オーディオ信号の１または複数のパケットが失われた（例えば、正確に受信または復号されなかった）と仮定する。無線通信デバイス３０２は、ＳＢＣ復号器３０４を使用して、受信されたＳＢＣ符号化オーディオ信号を復号する。無線通信デバイス３０２は、さらに、ＰＬＣ／損失パケット再構築モジュール３１２を使用して損失パケットを隠蔽または置換しうる。結果として得られる信号は、１または複数の損失パケットが別のフレームまたはパケットからのサンプルと置換された復号済みオーディオ信号またはサンプルである。次に、復号されたオーディオ信号は、送信のためにフォーマット（例えば、誤り訂正／検出コード化が追加、変調など）されうる。次に、このフォーマット済みオーディオ信号は、１または複数のアンテナ３１８を使用して送信され、１または複数のアンテナ３２６を使用して基地局３２８によって受信されうる。次に、基地局３２８は、オーディオ信号を別の電子デバイスに中継しうる。例えば、基地局３２８は、公衆交換電話ネットワーク（ＰＳＴＮ）またはインターネットを用いて（例えば、ボイスオーバインターネットプロトコル（ＶｏＩＰ）を通して）、電話、計算デバイス（例えば、デスクトップ／ラップトップコンピュータ）またはセルラ電話にオーディオ信号を送りうる。次に、オーディオ信号は、電子デバイス（例えば、電話、計算デバイス、セルラ電話など）によって出力されうる。無線通信デバイス３０２は、加えて、または、あるいは、復号されたオーディオ信号をメモリ３１６に記憶し、および／または、１または複数のスピーカ３１４を使用してこの復号されたオーディオ信号を出力しうる。
【００５３】
図４は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するための方法４００の１つの構成を例証するフロー図である。例えば、図４は、パケット損失隠蔽（ＰＬＣ）または損失パケット再構築モジュール１１２が３つのＰＬＣケースの間でどのようにスイッチするかを例証する。一般的に、ＰＬＣケースＩは、ＳＢＣ符号化オーディオのパケットまたはフレームが正確に復号され、その後に損失または不正確に復号されたパケットが続くケースを表しうる。ＰＬＣケースＩＩは、損失または不正確に復号されたパケットの後にさらなる損失または不正確に復号されたパケットが続くケースを表しうる。ＰＬＣケースＩＩＩは、損失または不正確に復号されたパケットの次に正確に復号されたパケットが続くケースを表しうる。
【００５４】
電子デバイス１０２（例えば、ＳＢＣ復号器１０４およびＰＬＣ／損失パケット再構築モジュール１１２を備える）は、ＳＢＣ符号化オーディオ信号（例えば、受信された広帯域スピーチビットストリーム）の復号を開始４０２する。電子デバイス１０２は、パケットが失われたか否か（例えば、受信されなかった、不正確に復号された、など）を決定４０４しうる。パケットが失われていないと電子デバイス１０２が決定４０４すると電子デバイス１０２は、損失パケットが検出または決定４０４されるまで、ＳＢＣ符号化オーディオ信号（例えば、受信された広帯域スピーチビットストリーム）の復号を継続しうる。パケットが失われたと電子デバイス１０２が決定４０４すると、電子デバイス１０２は、ＰＬＣケースＩを実行４０６しうる。ＰＬＣケースＩを実行４０６する際、電子デバイス１０２は、最終ピッチ期間を決定しうる。最終ピッチ期間は、正確に復号されたパケットからの多数のサンプルでありうる。電子デバイス１０２は、最終ピッチ期間からの１または複数のサンプルを損失パケットまたはフレームに配置または複写しうる。ＰＬＣケースＩの実行４０６についてのさらなる詳細が下に示される。
【００５５】
電子デバイス１０２は、さらなる損失パケットが存在するか否かを決定４０８しうる（例えば、一度ＰＬＣケースＩが実行４０６されると）。さらなる損失パケットが存在しないことを電子デバイス１０２が決定４０８すると、電子デバイス１０２は、ＰＬＣケースＩＩＩを実行４１４しうる。ＰＬＣケースＩＩＩを実行４１４する際、電子デバイス１０２は、最終ピッチ期間からの１または複数のサンプルを、正確に復号されたパケットまたはフレーム、あるいは、復号されたパケットまたはフレームの一部に配置または複写しうる。これは、例えば、正確に復号されたパケットからの良いまたは望ましいサンプルに遷移するために実行されうる。ＰＬＣケースＩＩＩの実行４１４についてのさらなる詳細が下に示される。電子デバイス１０２（例えば、ＳＢＣ復号器１０４）は、ＳＢＣ符号化オーディオ信号（例えば、ビットストリーム）に損失パケットが存在するか否かを決定４０４するために戻りうる。これは、例えば、ＰＬＣケースＩＩＩの実行４１４に続いて実行されうる。
【００５６】
さらなる損失パケットが存在すると電子デバイス１０２が決定４０８した場合（例えば、ＰＬＣケースＩを実行４０６した後に）、電子デバイス１０２（例えば、ＳＢＣ復号器１０４）は、ＰＬＣケースＩＩを実行４１０しうる。ＰＬＣケースＩＩの実行４１０の際、電子デバイス１０２は、（最初に決定された）最終ピッチ期間からのサンプルをさらなる損失パケットまたはフレームに配置または複写しうる。これは、損失パケットまたはフレームを満たすために必要に応じて反復的に実行されうる。電子デバイス１０２は、さらに、さらなる損失パケットまたはフレーム内の配置または複写されたサンプルをフェードしうる（例えば、ボリュームまたは大きさを漸進的に減らす）。電子デバイス１０２は、さらなる損失パケットが存在するか否を決定４１２しうる。さらなる損失パケットが存在する場合、電子デバイス１０２は、最終ピッチ期間からのサンプルをさらなる損失パケットまたはフレームに配置または複写することによって、および／または、サンプルのフェードを継続することによって、ＰＬＣケースＩＩを再度実行４１０しうる。さらなる損失パケットが存在しないと電子デバイス１０２が決定４１２した場合（例えば、実行可能パケットが受信された場合）、電子デバイス１０２は、ＰＬＣケースＩＩＩを実行４１４し、損失パケットが存在するか否かを決定４０４するために戻りうる（例えば、ＰＬＣケースＩＩＩを実行４１４した後に）。
【００５７】
図５は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するためのいくつかのモジュールの１つの構成を例証するブロック図である。ＳＢＣ符号器によって符号化されたスピーチビットストリーム（例えば、広帯域スピーチビットストリーム）５３０は、ビットストリームパーサ５３２に入力されうる。ビットストリームパーサ５３２は、ビットストリームをパースし、ビット誤り検出およびデータ再構築に関する情報を次に続く復号器に提供しうる。パースされたビットストリームは、パケット損失検出器５０６に入力されうる。パケット損失検出器５０６は、オーディオ、音声、またはスピーチ情報がいつ正確に受信および／または復号されなかったかを決定しうる。パケット損失検出器５０６は、ＣＲＣ（巡回冗長検査）のような誤り検出コード化を使用して、パケット（例えば、音声またはスピーチ情報の）が失われたことを決定しうる。パケット損失検出器５０６は、他の方法でも、パケットが失われたことを決定しうる。例えば、期待される音声またはスピーチ情報が特定の時間期間内に到着しなかった場合、または、電子デバイス１０２が受信された音声またはスピーチ情報を適切に復号できなかった場合、パケット損失検出器５０６は、パケットが失われたと決定しうる。
【００５８】
パケット損失検出器５０６は、ＳＢＣ復号器１０４がどのように動作しうるかを決定するために使用されうる。例えば、パケット損失検出器５０６がどの損失パケットも検出しない場合、ＳＢＣ復号器１０４は、逆量子化器５０８（便宜上、図５では「ＩＱ」と略記される）、および、合成フィルタバンク５１０（便宜上、図５では「ＳＦＢ」と略記される）を直接使用し、ＳＢＣ復号器１０４によって復号されたスピーチ５４４（例えば、スピーチサンプル）を生成することによって動作しうる。逆量子化器５０８は、音声またはスピーチ信号のサブ帯域サンプルを再構築しうる。再構築されたサブ帯域サンプルは、サブ帯域サンプルバッファ５３４に入力または記憶されうる。合成フィルタバンク５１０は、再構築されたサブ帯域サンプルを、ＳＢＣ復号器１０４によって復号されたスピーチ５４４の時間ドメインサンプルに変換しうる。これらのスピーチサンプル５４４は、さらに、履歴バッファ５３６に記憶されうる。例えば、履歴バッファ５３６は、パルスコード変調（ＰＣＭ）スピーチサンプルを含みうる。
【００５９】
パケット損失検出器５０６が正確に復号されたパケットに続いて損失パケットを検出する場合、電子デバイス１０２は、ＰＬＣケースＩ ５３８にスイッチし、および／または、ＰＬＣケースＩ ５３８を実行しうる。すなわち、ＰＬＣケースＩ ５３８は、少なくとも１つのパケットが正確に復号され、その後に、損失または紛失パケットが続く場合に実行されうる。ＰＬＣケースＩ ５３８は、（０、ｘ）と表されうる。ここで、０は正確に復号されたパケットまたはフレームを表し、ｘは、紛失または損失パケットを表す。ＰＬＣケースＩＩ ５４０は、紛失または損失パケットに続いてさらなる紛失または損失パケットをパケット損失検出器５０６が検出する場合（例えば、（ｘ、ｘ））に実行されうる。ＰＬＣケースＩＩＩ ５４２は、紛失または損失パケットに続いて正確に復号されたパケットをパケット損失検出器５０６が検出する場合（例えば、（ｘ、０））に実行されうる。ＰＬＣケースＩ ５３８、ＰＬＣケースＩＩ ５４０またはＰＬＣケースＩＩＩ ５４２に従って動作する場合、電子デバイス１０２は、いくつかのパケット隠蔽または再構築を使用してＳＢＣ復号器１０４によって復号されたスピーチ５４４（例えば、広帯域スピーチ）サンプルを生成しうる。ＰＬＣケースＩ ５３８、ＰＬＣケースＩＩ ５４０またはＰＬＣケースＩＩＩ ５４２についてのさらなる詳細が下に示される。
【００６０】
図６は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するための方法６００のより具体的な構造を例証するフロー図である。より具体的には、図６は、例えば、ＰＬＣケースＩを実行４０６することについてのさらなる詳細を例証する。電子デバイス１０２は、合成フィルタバンクのゼロ入力応答を取得６０２しうる。例えば、正確に復号されたパケットに続いて紛失または損失パケットを電子デバイス１０２（例えば、パケット損失検出器１０６）が検出した場合、電子デバイス１０２は、ゼロ（例えば、ゼロのサンプル）を合成フィルタバンク１１０に入力しうる。合成フィルタバンク１１０は、ゼロ入力応答を出力し、それは、前のフレームからのいくつかの残余データを反映しうる。ゼロ入力応答（例えば、有益な数のゼロ入力応答のサンプル）が損失パケットまたはフレームの一部を占有しうる。
【００６１】
電子デバイス１０２は、前のフレーム（例えば、前のフレームによって占有される時間の範囲）に対応するサブ帯域サンプルの自己相関を計算することによって粗いピッチ推定値を取得６０４しうる。例えば、電子デバイス１０２は、サブ帯域サンプルバッファ５３４からのサブ帯域サンプルの範囲の自己相関を計算しうる。１つの構成において（および、図５に例証されるように）、使用されるサブ帯域サンプルは、逆量子化器５０８によって出力されている。この構成において、合成前（例えば、合成フィルタバンク５１０によって合成される前）のサブ帯域サンプルは、自己相関を計算するために直接使用されうる。
【００６２】
電子デバイス１０２は、ゼロ入力応答と前のフレームからの出力サンプルとの相関（例えば、正規化相関）を計算することによって、少なくとも１つの細かいピッチ推定値を取得６０６しうる。少なくとも１つの細かいピッチ推定値は、少なくとも１つの粗いピッチ推定値に基づきうる。例えば、電子デバイス１０２（例えば、ＳＢＣ復号器１０４）は、ゼロ入力応答サンプルと、粗いピッチ推定値の周りの範囲内の履歴バッファ５３６からの（または、粗いピッチ推定値に対応する履歴バッファ５３６内のサンプルの周りの）スピーチサンプルとの相関を計算しうる。最大相関は、細かいピッチ推定値を示すか、あるいは、それに対応しうる。例えば、最大相関に対応する履歴バッファ５３６内のサンプルは、細かいピッチ推定値として選択されうる。
【００６３】
電子デバイス１０２は、細かいピッチ推定値に基づいて最終ピッチ期間を選択６０８しうる。例えば、最終ピッチ期間は、フレームの最後まで（例えば、履歴バッファ５３６内の）、細かいピッチ推定値からのサンプルとして選択６０８されうる。電子デバイス１０２は、損失パケットに対して最終ピッチ期間からの出力サンプルを使用６１０しうる。例えば、電子デバイス１０２は、最終ピッチ期間（例えば、履歴バッファ５３６内の）からのサンプルを損失パケットまたはフレームに複写または配置しうる。損失パケットまたはフレームを満たすために、反復された最終ピッチ期間が使用されうる。例えば、履歴バッファ５３６内の最終ピッチ期間からのサンプルは、損失パケットまたはフレームが満たされるまで、損失パケットまたはフレームに反復的に複写または配置されうる。電子デバイス１０２は、ゼロ入力応答サンプル（例えば、多数のゼロ入力応答サンプルまたは有益なゼロ入力応答サンプル）を、損失パケットまたはフレーム内の最終ピッチ期間サンプルと重複加算６１２しうる。例えば、損失パケットまたはフレームを占有する多数のゼロ入力応答サンプル（例えば、損失パケットまたはフレームの最初）が、多数の最終ピッチ期間サンプルと重複加算６１２されうる。
【００６４】
図７Ａ〜７Ｆは、サブ帯域コード化復号器において損失パケットを隠蔽または再構築することについてのさらなる詳細を例証する図である。より具体的に、図７Ａ〜７Ｆは、例えば、ＰＬＣケースＩに従って実行されうる動作を例証する。
【００６５】
図７Ａは、損失または紛失パケット検出を例証する。電子デバイス１０２は、ＳＢＣ符号化オーディオ（例えば、音声またはスピーチ）を受信および／または復号しうる。例えば、ＳＢＣ復号器１０４は、ＳＢＣ符号化スピーチを復号して、復号スピーチサンプルを生成しうる。これらの復号スピーチサンプルは、例えば、ＰＣＭサプルでありうる。復号スピーチサンプルは、履歴バッファ７４６ａに記憶されうる。電子デバイス１０２は、損失パケット７４８ａを検出７５０しうる。例えば、パケットが正確に受信および／または復号されない場合、損失パケット７４８ａが検出されうる。
【００６６】
図７Ｂは、ゼロ入力応答７５２ｂの生成を例証する。損失パケット７４８ｂが検出７５０されると、電子デバイス１０２は、多数のゼロを合成フィルタバンク１１０に挿入し、多数のゼロ入力応答サンプル７５２ｂを取得する。ゼロを合成フィルタバンク１１０に挿入することで、より早くに復号されたオーディオ（例えば、音声またはスピーチ）サンプルを残余的に（residually）反映するゼロ入力応答サンプル７５２ｂが生成され、それは、履歴バッファ７４６ｂに記憶されうる。本明細書に記載されるシステムおよび方法に従って、履歴バッファ７４６は、最大許容ピッチラグの長さを有する（これは、典型的な履歴バッファの長さよりも短くなりうる（例えば、半分））。最大許容ピッチラグの長さは、最大スピーチおよび／または音声波長に対応しうる。
【００６７】
図７Ｃは、粗いピッチ推定値または期間７５６ｃの決定を例証する。特に、図７Ｃは、履歴バッファ７４６ｃ、多数のゼロ入力応答サンプル７５２ｃ、損失パケット７４８ｃ、サブ帯域バッファ７５４ｃ、および、粗いピッチ推定値７５６ｃを例証する。サブ帯域バッファ７５４ｃは、多数のサブ帯域サンプルを記憶しうる。サブ帯域サンプルは、合成されていない（例えば、合成フィルタバンク１１０によって）サブ帯域サンプルでありうる。電子デバイス１０２は、サブ帯域バッファ内のサンプルの自己相関を計算し、粗いピッチ推定値ｔ０ ７５６ｃを取得しうる。粗いピッチ推定値ｔ０ ７５６ｃは、計算された自己相関の範囲内の最大自己相関値に対応する時間インスタントまたはサンプルでありうる。計算された自己相関の範囲は、最大許容ピッチラグに対応しうる。図７Ｃで例証されるように、粗いピッチ推定値ｔ０ ７５６ｃは、特定の時間、または、履歴バッファ７４６ｃ内のサンプル数に対応する。
【００６８】
図７Ｄは、細かいピッチ推定値および／または最終ピッチ期間の決定を例証する。図７Ｄは、特に、履歴バッファ７４６ｄ〜ｅ、多数のゼロ入力応答サンプル７５２ｄ〜ｅ、損失パケット７４８ｄ〜ｅ、粗いピッチ推定値７５６ｄ、および、最終ピッチ期間ｔ０’ ７５８ａを示す細かいピッチ推定値を例証する。ゼロ入力応答サンプル７５２ｄと履歴バッファ７４６ｄ内のサンプルとの相関は、粗いピッチ推定値７５６ｄの周りの±ｍ個のサンプルの範囲内で電子デバイス１０２によって計算されうる。サンプルの範囲は、例えば、粗いピッチ推定値サンプルと、隣接する候補との間でありうる（例えば、ｔ０−ｍおよびｔ０＋ｍで表される）。例えば、ｍは、サブ帯域サンプルごとの履歴バッファサンプルの数でありうる。この範囲内の最大相関は、履歴バッファ７４６ｅ内の最終ピッチ期間ｔ０’ ７５８ａを示す。例えば、最終ピッチ期間７５８ａは、パケットまたはフレームの最後まで細かいピッチ推定値からのサンプルを含みうる。
【００６９】
図７Ｅは、損失パケット７４８ｆ〜ｇに対して最終ピッチ期間７５８ｂ〜ｃを使用すること、並びに、ゼロ入力応答７５２ｅを最終ピッチ期間７６０ａ〜ｂからのサンプルと「テール」重複加算することを例証する。特に、図７Ｅは、履歴バッファ７４６ｆ〜ｇ、細かいピッチ推定値によって示される最終ピッチ期間７５８ｂ〜ｃ、最終ピッチ期間７６０ａ〜ｂの多数のサンプルまたは複写、ゼロ入力応答７５２ｅ、損失パケット７４８ｆ〜ｇ、および、最終ピッチ期間７６２ａの多数のサンプルまたは複写と重複加算されたゼロ入力応答サンプルを例証する。電子デバイス１０２は、最終ピッチ期間７６０ａの複写でありうる最終ピッチ期間７５８ｂからのサンプルを使用しうる。最終ピッチ期間サンプル７６０ａは、損失パケット７４８ｆの代わりに置換または使用されうる。例えば、最終ピッチ期間サンプル７６０ａは、ゼロ入力応答サンプル７５２ｅに重複加算されうる。これは、多数の重複加算されたサンプル７６２ａと、重複加算されていない最終ピッチ期間サンプル７６０ｂの残りの部分とをもたらす。
【００７０】
図７Ｆは、隠蔽または再構築されたパケットまたはフレーム７６６を例証する。特に、図７Ｆは、履歴バッファ７４６ｈ、最終ピッチ期間７５８ｄ、多数の重複加算されたゼロ入力応答および最終ピッチ期間サンプル７６２ｂ、重複加算されていない最終ピッチ期間サンプル７６０ｃの残りの部分、反復最終ピッチ期間７６４ｆ、および、隠蔽または再構築されたパケット（または、例えば、フレーム）７６６を例証する。損失パケット７４８の一部が満たされない場合、電子デバイス１０２は、損失パケット７４８が完全に満たされるまで、反復最終ピッチ期間７６４ｆを挿入しうる。これらの動作は、隠蔽パケット７６６（または、例えば、フレーム）に帰着しうる。細かいピッチ推定値または最終ピッチ期間は、時々、本明細書において、損失パケット内に均等に納まっているように例証されるが、これが必ずしも全ての構成またはインスタンスにおけるケースとなりうるわけではないことに注意されたい。例えば、最終ピッチ期間は、損失パケット（または、例えば、フレーム）間で（あるいは、損失パケットと正確に受信されたパケットとの間で）重複しうる。さらに、１つの構成において、細かいピッチ推定値または最終ピッチ期間は、フェードアウト／イン・アプローチを使用し、隣接および／または重複ピッチ期間の間の不連続性を減らしうる。
【００７１】
図８は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するためのいくつかのモジュールのうちの１つの構成を例証するブロック図である。より具体的に、図８は、正確に受信および／または復号されたパケットの次に損失または紛失パケットが続く場合（例えば、ＰＬＣケースＩ）に使用されうるモジュールの１つの構成を例証する。特に、図８は、合成フィルタバンク（便宜上図８では「ＳＦＢ」と示される）モジュール８１０、粗い推定モジュール８６８、第１の反復期間モジュール８７０、サブ帯域バッファ更新モジュール８７２、精緻化モジュール８７４、第２の反復ピッチ期間モジュール８７８、重複加算モジュール８８０、および、履歴バッファ更新モジュール８８２を例証する。図８に例証されるモジュールは、ハードウェア、ソフトウェア、または、両方の組み合わせとして実施されうる。
【００７２】
正確に復号されたパケットの次に、検出された損失または紛失パケットが続く場合（例えば、ＰＬＣケースＩ）、電子デバイス１０２は、ゼロ入力８８６を合成フィルタバンクモジュール８１０に提供しうる。例えば、ゼロ入力８８６は、多数のゼロサンプルを備えうる。合成フィルタバンク８１０は、このゼロ入力８８６を使用して、ゼロ入力応答サンプル８８８を生成しうる。ゼロ入力応答サンプル８８８は、損失パケットまたはフレームのうちのいくつかまたは全てを占有する多数のゼロ入力応答サンプル８８８を備えうる。１つの構成において、合成フィルタバンク８１０へのゼロ入力の数は、パケットまたはフレーム内のサンプルの数よりも少なくなりうる。例えば、２４個のゼロが合成フィルタバンク８１０に挿入されうる。例えば、ゼロ入力８８６は、行列Ｘ（ｋ、ｍ）を備えうる。ここで、１≦ｋ≦８並びに１≦ｍ≦３について、Ｘ（ｋ、ｍ）＝０である。このように、合成フィルタバンク８１０は、２４個のゼロ入力応答サンプル８８８を出力しうる。
【００７３】
電子デバイス１０２は、多数のサブ帯域サンプル８９０を使用し、粗い推定８６８を実行しうる。例えば、サブ帯域サンプル８９０は、サブ帯域バッファに記憶される合成フィルタバンク８１０を通過していないサブ帯域（例えば、デシメートされたサブ帯域）サンプルでありうる。サブ帯域サンプルは、加えて、または、あるいは、サブ帯域バッファからの多数の「第１の」サブ帯域サンプルでありうる。すなわち、サブ帯域サンプルは、第１のサブ帯域バッファからのサンプルでありうる。粗い推定モジュール８６８は、このサブ帯域サンプル８９０を使用し、粗いピッチ推定値を決定しうる。例えば、粗い推定モジュール８６８は、サブ帯域バッファからの多数のサブ帯域サンプル８９０にわたって自己相関を計算しうる。最大自己相関値は、粗いピッチ推定値を示しうる。粗いピッチ推定値は、最大自己相関の時間インスタントまたはサンプルを示しうる。この方法で粗いピッチ推定値を取得することは、例えば、最終ピッチ期間を決定するのに必要な計算の数を減らしうる。
【００７４】
精緻化モジュール８７４は、ゼロ入力応答サンプル８８８、粗い推定モジュール８６８からの粗い推定値、多数の履歴バッファサンプル８７６を使用して、細かいピッチ推定値および／または最終ピッチ期間（例えば、履歴バッファ内の）を決定しうる。例えば、精緻化モジュール８７４は、粗いピッチ推定値（例えば、多数の「候補」についての）の周りの範囲においてゼロ入力応答サンプル８８８と履歴バッファサンプル８７６との（正規化）相関を計算しうる。これは、「精緻化」とみなされ、履歴バッファにおいて細かいピッチ推定値を提供しうる。細かいピッチ推定値は、計算された範囲におけるゼロ入力応答サンプル８８８と履歴バッファサンプル８７６との最大相関に対応しうる。最終ピッチ期間は、細かいピッチ推定値に基づいて選択されうる。最終ピッチ期間は、履歴バッファからの多数のサンプルを備えうる。例えば、最終ピッチ期間は、履歴バッファ内のフレームまたはパケットの終わりまで細かいピッチ推定値からの履歴バッファサンプル８７６の各々を含みうる。このように、最終ピッチ期間は、細かいピッチ推定値に基づいて選択されうる。
【００７５】
第２の反復ピッチ期間モジュール８７８は、損失パケットまたはフレームにおいて最終ピッチ期間を反復しうる。例えば、第２の反復ピッチ期間モジュール８７８は、履歴バッファ内の最終ピッチ期間からのサンプルを損失パケットまたはフレームに複写または配置しうる。例えば、第２の反復ピッチ期間モジュール８７８は、損失サンプル隠蔽、並びに、履歴バッファ更新のために履歴バッファ内のサンプルを反復しうる。最終ピッチ期間は、損失パケットまたはフレームを満たすために必要に応じて反復されうる。重複加算モジュール８８０は、多数の最終ピッチ期間サンプルを、損失パケットまたはフレーム内のゼロ入力応答サンプルと重複加算しうる。これは、隠蔽パケットまたはフレーム８８４を生成しうる。履歴バッファは、次に、履歴バッファ更新モジュール８８２によって更新されうる。第１の反復ピッチ期間モジュール８７０は、前のフレームに対応するサブ帯域バッファ内のサブ帯域サンプルを反復しうる。このように、サブ帯域バッファは、サブ帯域バッファ更新モジュール８７２によって更新されうる。例えば、第１の反復ピッチ期間モジュール８７０は、第１のサブ帯域のためにのみ、サブ帯域バッファ内のサブ帯域サンプルを反復しうる。
【００７６】
図９は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するための方法９００の別の構成を例証するフロー図である。より具体的に、図９は、損失パケットに続いて、さらなる損失パケットが検出される場合（例えば、ＰＬＣケースＩＩ）を例証する。電子デバイス１０２は、さらなる損失パケットを検出９０２しうる。例えば、パケット損失検出器１０６は、前の損失パケットに続いて後続の損失パケットを検出する。電子デバイス１０２は、さらなる損失パケットのために最終ピッチ期間からの出力サンプルを使用９０４しうる。例えば、電子デバイス１０２は、最終ピッチ期間（例えば、第１の損失パケットに対して決定された）からの出力サンプルをさらなる損失パケットまたはフレームに複写または配置しうる。反復最終ピッチ期間、または、最終ピッチ期間からのサンプルは、損失パケットまたはフレームを満たすために必要に応じて使用されうる。電子デバイス１０２は、さらなる損失パケットに対して使用される最終ピッチ期間からの出力サンプルをフェード９０６しうる。例えば、電子デバイス１０２は、損失パケットまたはフレームに使用された最終ピッチ期間からのサンプルのボリュームまたは大きさを減らしうる。
【００７７】
図１０Ａ〜Ｃは、さらなる損失パケットに対して損失パケット隠蔽または再構築を例証する図である。図１０Ａ〜１０Ｃは、例えば、ＰＬＣケースＩＩを例証する。
【００７８】
図１０Ａは、さらなる損失パケットの検出を例証する図である。例えば、パケット損失検出器１０６は、さらなる損失パケット１０９８を検出１０５０しうる。例えば、電子デバイス１０２は、前の損失パケットに対して隠蔽または再構築されたパケットまたはフレーム１０９２ａを生成している。隠蔽または再構築されたパケットまたはフレーム１０９２ａに続いて、電子デバイス１０２は、さらなる損失パケット１０９８を検出１０５０しうる。
【００７９】
図１０Ｂは、最終ピッチ期間からのサンプルを使用して、さらなる損失パケットまたはフレーム１０９８を隠蔽または再構築することを例証する図である。例えば、電子デバイス１０２は、履歴バッファ内の最終ピッチ期間１０５８（これは、隠蔽パケットまたはフレーム１０９２ｂを生成するために使用された可能性がある）を前に決定している。電子デバイス１０２は、さらなる損失パケットに対して最終ピッチ期間１０５８からのサンプルを使用１０９４しうる。例えば、電子デバイス１０２は、最終ピッチ期間１０５８からのサンプルをさらなる損失パケット１０９８に複写または配置しうる。反復最終ピッチ期間１０５８、または、最終ピッチ期間１０５８からの反復サンプルは、さらなる損失パケットまたはフレーム１０９８を満たすために、必要に応じて、さらなる損失パケットまたはフレーム１０９８に複写または配置されうる。
【００８０】
図１０Ｃは、隠蔽パケットまたはフレーム１０９２ｄにおいてサンプルをフェード１０９６することを例証する図である。電子デバイスは、隠蔽パケットまたはフレーム１０９２ｄのサンプルをフェード１０９６しうる。本明細書で使用される場合、「フェードする（fade）」という用語は、一連のサンプルのボリュームまたは大きさを漸進的に減らすことを表す。１つの構成において、例えば、電子デバイス１０２は、前の隠蔽パケットまたはフレーム１０９２ｃに続く後続の隠蔽パケットまたはフレーム１０９２ｄ内のサンプルをフェード１０９６しうる。他の構成において、フェード１０９６することは、第１の隠蔽パケットまたはフレーム１０９２ｃ、または、後の隠蔽パケットまたはフレーム１０９２（例えば、第３の隠蔽パケットまたはフレームなど）で開始されうる。
【００８１】
図１１は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するために使用されうるいくつかのモジュールの１つの構成を例証するブロック図である。例えば、図１１は、前の損失パケットの次にさらなる損失パケットが続く場合（例えば、ＰＬＣケースＩＩ）に使用されうるモジュールを例証する。図１１に例証されるモジュールは、ハードウェア、ソフトウェア、または、両方の組み合わせで実施されうる。特に、図１１は、反復ピッチ期間モジュール１１０３、サブ帯域バッファ更新モジュール（便宜上、図１１では「Ｓバッファ更新」と例証される）１１０５、フェードモジュール１１０７、および、履歴バッファ更新モジュール１１０９を例証する。
【００８２】
反復ピッチ期間モジュール１１０３は、第１の損失パケット１１０１のために決定される最終ピッチ期間またはピッチ分析を使用しうる。例えば、反復ピッチ期間モジュール１１０３は、最終ピッチ期間からのサンプルをさらなる損失パケットまたはフレームに反復（例えば、複写または配置）しうる。最終ピッチ期間からの反復ピッチ期間またはサンプルは、さらなる損失パケットまたはフレームを満たすために、必要に応じて、さらなる損失パケットまたはフレームに複写または配置されうる。サブ帯域バッファは、Ｓバッファ更新モジュール１１０５によって更新されうる。例えば、前のパケットまたはフレームサンプルに対応するサブ帯域バッファ内のサブ帯域サンプルが反復されうる。これは、上に記述されたように、第１のサブ帯域に対して行われうる。
【００８３】
フェードアウトモジュール１１０７は、さらなる損失パケットまたはフレーム内の最終ピッチ期間サンプルのボリュームまたは大きさを漸進的に減らすために使用されうる。これは、隠蔽または再構築パケットまたはフレーム１１８４を生成しうる。履歴バッファは、履歴バッファ更新モジュール１１０９によって更新されうる（例えば、反復最終ピッチ期間サンプルを用いて）。１つの構成において、このフェードアウトは、例えば、ボリュームまたは大きさが０に到達するまで更にさらなる損失パケットまたはフレームに継続しうる。フェードアウトは、結果として得られるオーディ信号における奇妙な（strange）アーティファクトの生成を回避するために使用されうる。例えば、パケット／フレーム隠蔽の期間が長くなるにつれ、紛失パケットまたはフレームを隠蔽するために使用された合成信号が実信号から分岐しうる。このように、フェードアウトまたは減衰は、奇妙に鳴るアーティファクトの生成を回避するために使用されうる（例えば、独立して自然に鳴る合成信号でさえ、長時間ホールドアウトされると奇妙に鳴りうるため）。１つの構成において、第１の隠蔽パケットまたはフレームは、フェードアウトまたは減衰を使用しない可能性がある。しかしながら、合成信号の線形衰退は、第２の隠蔽パケットまたはフレームの始まりで開始しうる（例えば、フレームに対して２０％の減衰レートで）。この例示的な構成において、合成信号は、いくつかの隠蔽パケットまたはフレームの後にゼロに減衰しうる。
【００８４】
図１２は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するための方法１２００の１つの構成を例証するフロー図である。より詳細には、図１２は、正確に受信および／または復号されたパケットが損失パケットまたはフレームの次に続く場合（例えば、ＰＬＣケースＩＩＩ）を例証する。例えば、図１２に例証される方法１２００は、隠蔽または再構築されたパケットまたはフレームに続いて正確に復号されたパケットまたはフレームに対して使用されうる。
【００８５】
電子デバイス１０２は、正確に復号されたパケットまたはフレームを検出１２０２しうる。例えば、電子デバイス１０２は、損失パケットを示すパケット損失検出器１０６を用いずにパケットまたはフレームを受信および／または復号しうる。電子デバイス１０２は、望ましくないサンプル範囲に対して最終ピッチ期間からのサンプルを使用１２０４しうる。例えば、前にゼロが合成フィルタバンク１１０に入力されているため、合成フィルタバンク１１０は、実行可能または「良い」データが入力されるとゼロ状態応答を出しうる。これは、正確に復号されたパケットまたはフレームの最初に、多数の望ましくないサンプルまたは望ましくないサンプルの範囲を引き起こしうる。このように、電子デバイス１０２は、最終ピッチ期間からのサンプルを望ましくないサンプル範囲に使用（例えば、複写または配置）しうる。例えば、最終ピッチ期間（例えば、第１の損失パケットに対して前に決定されている）からの多数のサンプルは、正確に復号されたパケットまたはフレームにおける望ましくないサンプルの範囲内のサンプルと置換されうる。電子デバイス１０２は、最終ピッチ期間、または、最終ピッチ期間からのサンプルを多数の遷移サンプルと重複加算１２０６しうる。例えば、遷移サンプルは、望ましくないサンプルと望ましい復号サンプルとの多数のサンプルでありうる。
【００８６】
図１３Ａ〜Ｂは、正確に復号されたパケットまたはフレームが次に損失パケットまたはフレームが続く場合を例証する図である。例えば、図１３Ａ〜Ｂは、ＰＬＣケースＩＩＩを例証する。
【００８７】
図１３Ａは、正確に復号されたパケットまたはフレーム１３１１ａのゼロ状態応答を例証する図である。例えば、電子デバイス１０２は、１または複数の損失パケットまたはフレームに対して１または複数の隠蔽または再構築パケットまたはフレーム１３９２ａを生成している。上に記述されたように、電子デバイス１０２は、ゼロを合成フィルタバンク１１０に入力し、損失パケットまたはフレームのためのゼロ入力応答を生成しうる。結果として、実行可能または良いパケットまたはフレームが復号されると、合成フィルタバンク１１０は、正確に復号されたパケットまたはフレーム１３１１ａのゼロ状態応答を出しうる。このように、正確に復号されたパケットまたはフレームは、多数の望ましくないサンプル１３１３ａ、多数の遷移サンプル１３１５ａ、多数の望ましいまたは良いサンプル１３１７ａを含みうる。ゼロ状態応答の最初は、減らされた（半分の）情報で構築されうる。このように、この波形は歪んで見え、復号器または隠蔽出力に対して使用されない可能性がる。これらのサンプルは、望ましくないサンプル１３１３ａでありうる。合成フィルタバンク１１０がサブ帯域サンプルをさらに得ると、フィルタメモリは、正確または望ましい出力へと徐々に更新されうる。すなわち、合成フィルタバンク１１０は、それが正確または望ましいサンプル１３１７ａの出力に近づくにつれ、遷移サンプル１３１５ａを出力する。合成フィルタバンク１１０は、最終的に、正確な出力または望ましいサンプル１３１７ａを出力する。このように、経験的に、合成フィルタメモリの長さに依存することによって、および、波形再構築を観察することによって、３つの領域が観察および／または決定されうる。
【００８８】
図１３Ｂは、正確に復号されたパケットまたはフレーム１３１１ｂのゼロ状態応答に対して最終ピッチ期間１３５８からのサンプルを使用することを例証する図である。電子デバイス１０２は、正確に復号されたパケットまたはフレーム１３１１ｂのゼロ状態応答に対して最終ピッチ期間１３５８サンプルを使用１３２１しうる。電子デバイス１０２は、例えば、隠蔽パケットまたはフレーム１３９２ｂを生成するために、第１の損失パケットに対する最終ピッチ期間１３５８を前に決定している可能性がある。１つの構成において、最終ピッチ期間１３５８からの多数のサンプルは、多数の望ましくないサンプル１３１３ａと置換する（または、その代わりに配置される）ために使用１３２１されうる。望ましくないサンプル１３１３ａは、例えば、正確に復号されたパケットまたはフレーム１３１１ｂのゼロ状態応答の最初に存在しうる。電子デバイス１０２は、重複加算サンプル１３１９を生成するために、遷移サンプル１３１５ａと多数の最終ピッチ期間１３５８サンプルを重複加算１３２３しうる。これらの重複加算サンプル１３１９は、遷移範囲内でありうる。望ましいまたは良いサンプル１３１７ｂは、正確に復号されたパケットまたはフレーム１３１１ｂの残りを満たしうる。
【００８９】
図１４は、フレーム重複１４２５の例を例証する図である。図１４に例証されるフレーム重複１４２５の例は、図１３に関して示される。しかしながら、フレーム重複１４２５は、さらに、図１０に関しても起こりうる。例えば、反復ピッチ期間は、パケットまたはフレーム境界を重複１４２５しうる。これが発生した場合、前の（例えば、隠蔽または再構築された）パケットまたはフレーム１４９２内の反復ピッチ期間１４２７からの残りのサンプルは、次に続くパケットまたはフレーム（例えば、ゼロ状態応答パケット／フレーム１４１１またはさらなる損失パケット／フレーム１０９８）の最初に含まれうる。図１４に示される例において、隠蔽パケットまたはフレーム１４９２からの反復ピッチ期間１４２７に残っているいくつかのサンプルは、正確に復号されたパケットまたはフレーム１４４１のゼロ状態応答の「望ましくないサンプル」１４１３部の中に挿入されうる。これら残りのサンプルに続いて、図１３に関して上に記述されたように、さらなる反復ピッチ期間サンプルが挿入され、遷移サンプル１４１５と重複加算されうる。この例において、望ましいまたは良いサンプル１４１７は、正確に復号されたパケットまたはフレーム１４１１のゼロ状態応答の残りを満たしうる。
【００９０】
図１５は、サブ帯域コード化（ＳＢＣ）復号器において損失パケットを隠蔽または再構築するために使用されうるいくつかのモジュールのうちの１つの構成を例証するブロック図である。例えば、図１５は、損失パケットまたはフレームに続いて、実行可能または良いパケットが受信または復号される場合（例えば、ＰＬＣケースＩＩＩ）を例証する。損失パケットまたはフレームは、電子デバイス１０２によって隠蔽または再構築されうる。特に、図１５は、逆量子化器１５０８（便宜上、図１５では「ＩＱ」と例証される）、サブ帯域バッファ更新モジュール１５３１（便宜上、図１５では「Ｓバッファ更新」と例証される）、合成フィルタバンク１５１０（便宜上、図１５では「ＳＢＳ」と例証される）、重複加算モジュール１５３５、反復ピッチ期間モジュール１５３９、および、履歴バッファ更新モジュール１５４１を例証する。
【００９１】
逆量子化器１５０８は、パースされたビットストリーム１５２９を使用してサブ帯域サンプルを生成しうる。サブ帯域サンプルは、サブ帯域バッファ更新モジュール１５３１により使用され、サブ帯域バッファを更新しうる。サブ帯域サンプルは、さらに、合成フィルタバンク１５１０に入力されうる。１つの構成において、１２０個のサブ帯域サンプルが、行列の形態Ｘ（ｋ、ｍ）で合成フィルタバンク１５１０に入力される。ここで、１≦ｋ≦８および１≦ｍ≦１５である。上に記述されたように、ゼロは、第１の損失パケットが検出され場合に、合成フィルタバンク１５１０に入力されうる。結果として、実行可能または「良い」サブ帯域サンプルが合成フィルタバンク１５１０に入力された場合、合成フィルタバンク１５１０は、ゼロ状態応答１５３３を生成しうる。上に記述されたように、ゼロ状態応答１５３３の多数の初期サンプルは、望ましくないサンプルであり、その次に多数の遷移サンプルが続き、さらに次には多数の望ましいまたは良いサンプルが続く。
【００９２】
反復ピッチ期間モジュール１５３９は、ゼロ状態応答１５３３パケットまたはフレームのために第１の損失パケット１５０１に対して決定される最終ピッチ期間からの前のピッチ分析またはサンプルを使用しうる。例えば、電子デバイス１０２は、望ましくないサンプルを最終ピッチ期間１５０１からのサンプルと置換しうる。電子デバイス１０２は、さらに、重複加算モジュール１５３５を使用し、多数の最終ピッチ期間サンプル１５０１を多数の遷移サンプルと重複加算しうる。これは、隠蔽パケットまたはフレーム１５３７を生成しうる。この場合、隠蔽パケットまたはフレーム１５３７は、損失パケットまたはフレームではない可能性があるが、実行可能パケットまたはフレームの隠蔽されたゼロ状態応答でありうる。例えば、ゼロ状態応答１５３３内の望ましくないサンプルおよび／または遷移サンプルは、隠蔽または再構築されうる。結果として得られる隠蔽パケットまたはフレーム１５３７は、履歴バッファを更新するために、履歴バッファ更新モジュール１５４１によって使用されうる。
【００９３】
図１６は、電子デバイス１６０２において利用されうる様々なコンポーネントを例証する。例証されるコンポーネントは、同じ物理ストラクチャ内、または、離れたハウジングまたはストラクチャに配置されうる。図１に関して論述された電子デバイス１０２は、電子デバイス１６０２に類似して構成されうる。電子デバイス１６０２は、プロセッサ１６４９を含む。プロセッサ１６４９は、汎用のシングルチップまたはマルチチップマイクロプロセッサ（例えば、ＡＲＭ）、専用マイクロプロセッサ（例えば、デジタル信号プロセッサ（ＤＳＰ））、マイクロコントローラ、プログラマブルゲートアレイ等でありうる。プロセッサ１６４９は、中央処理装置（ＣＰＵ）と呼ばれうる。図１６の電子デバイス１６０２には単一のプロセッサ１６４９だけが示されるが、別の構成では、プロセッサの組み合わせ（例えば、ＡＲＭおよびＤＳＰ）が使用されうる。
【００９４】
電子デバイス１６０２は、さらに、プロセッサ１６４９と電気的に通信状態にあるメモリ１６４３を含む。すなわち、プロセッサ１６４９は、メモリ１６４３から情報を読み取り、および／または、メモリ１６４３に情報を書き込むことができる。メモリ１６４３は、電子情報を記憶することができる任意の電子コンポーネントでありうる。メモリ１６４３は、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、磁気ディスク記憶媒体、光記憶媒体、ＲＡＭのフラッシュメモリデバイス、プロセッサに含まれるオンボードメモリ、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）、レジスタなど、および、それらの組み合わせでありうる。
【００９５】
データ１６４７ａおよび命令１６４５ａは、メモリ１６４３に記憶されうる。命令１６４５ａは、１または複数のプログラム、ルーティン、サブルーティン、機能、手順、コードなどを含みうる。命令１６４５ａは、単一のコンピュータ可読ステートメントまたは多数のコンピュータ可読ステートメントを含みうる。命令１６４５ａは、上に記述された方法４００、６００、９００、１２００を実施するために、プロセッサ１６４９によって実行可能である。命令１６４５ａを実行することは、メモリ１６４３に記憶されたデータ１６４７ａの使用を含みうる。図１６は、プロセッサ１６４９にロードされているいくつかの命令１６４５ｂおよびデータ１６４７ｂを示す。
【００９６】
電子デバイス１６０２は、さらに、他の電子デバイスと通信するために１または複数の通信インターフェース１６５１を含みうる。通信インターフェース１６５１は、有線通信テクノロジ、無線通信テクノロジ、あるいは、両方に基づきうる。通信インターフェース１６５１の異なるタイプの例は、シリアルポート、パラレルポート、ＵＳＢ（Universal Serial Bus）、イーサネット（登録商標）アダプタ、ＩＥＥＥ １３９４バスインターフェース、小コンピュータシステムインターフェース（ＳＣＳＩ）バスインターフェース、赤外線（ＩＲ）通信ポート、ＢＬＵＥＴＯＯＴＨ無線通信アダプタ、その他を含みうる。
【００９７】
電子デバイス１６０２は、さらに、１または複数の入力デバイス１６５３および１または複数の出力デバイス１６５５を含みうる。異なる種類の入力デバイス１６５３の例は、キーボード、マウス、マイクロフォン、リモート制御デバイス、ボタン、ジョイスティック、トラックボール、タッチパッド、ライトペン、その他を含む。出力デバイス１６５５の異なる種類の例は、スピーカ、プリンタ、その他を含む。電子デバイス１６０２に典型的に含まれうる出力デバイスの１つの特定のタイプは、ディスプレイデバイス１６５７である。本明細書に開示される構成で使用されるディスプレイデバイス１６５７は、ブラウン管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、発光ダイオード（ＬＥＤ）、ガスプラズマ、エレクトロルミネセンスなどの任意の適切な画像プロジェクション技術を利用しうる。ディスプレイコントローラ１６５９は、さらに、メモリ１６４３に記憶されたデータを、ディスプレイデバイス１６５７上に表示されるテキスト、グラフィックス、および／または、動画に（適宜）変換するために提供されうる。
【００９８】
電子デバイス１６０２の様々なコンポーネントは、電力バス、制御信号バス、状態信号バス、データバスなどを含みうる１または複数のバスによって互いに結合されうる。簡略化のために、様々なバスが、バスシステム１６６１として図１６に例証される。図１６は、電子デバイス１６０２の１つの可能な構成しか例証しないことに注意されたい。様々な他のアーキテクチャおよびコンポーネントが利用されうる。
【００９９】
図１７は、無線通信デバイス１７０２に含まれうる特定のコンポーネントを例証する。前に記述された無線通信デバイス２０２、２２２、３０２は、図１７に示される無線通信デバイス１７０２と類似して構成されうる。無線通信デバイス１７０２は、プロセッサ１７４９を含む。プロセッサ１７４９は、汎用のシングルチップまたはマルチチップマイクロプロセッサ（例えば、ＡＲＭ）、専用マイクロプロセッサ（例えば、デジタル信号プロセッサ（ＤＳＰ））、マイクロコントローラ、プログラマブルゲートアレイなどでありうる。プロセッサ１７４９は、中央処理装置（ＣＰＵ）と呼ばれうる。単一のプロセッサ１７４９しか、図１７の無線通信デバイス１７０２には示されないが、別の構成では、プロセッサの組み合わせ（例えば、ＡＲＭとＤＳＰ）が使用されうる。
【０１００】
無線通信デバイス１７０２は、さらに、プロセッサ１７４９と電気的に通信状態にあるメモリ１７４３を含みうる（すなわち、プロセッサ１７４９は、メモリ１７４３から情報を読み取ること、および／または、メモリ１７４３に情報を書き込むことが可能である）。メモリ１７４３は、電子情報を記憶することができる任意の電子コンポーネントでありうる。メモリ１７４３は、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、磁気ディスク記憶媒体、光記憶媒体、ＲＡＭのフラッシュメモリデバイス、プロセッサに含まれるオンボードメモリ、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）、レジスタ、その他、および、それらの組み合わせでありうる。
【０１０１】
データ１７４７ａおよび命令１７４５ａは、メモリ１７４３に記憶されうる。命令１７４５ａは、１または複数のプログラム、ルーティン、サブルーティン、機能、手順などを含みうる。命令１７４５ａは、単一のコンピュータ可読ステートメントまたは多数のコンピュータ可読ステートメントを含みうる。命令１７４５ａは、上に記述された方法４００、６００、９００、１２００を実施するために、プロセッサ１７４９によって実行可能でありうる。命令１７４５ａを実行することは、メモリ１７４３に記憶されるデータ１７４７ａの使用を含みうる。図１７は、プロセッサ１７４９にロードされているいくつかの命令１７４５ｂおよびデータ１７４７ｂを示す。
【０１０２】
無線通信デバイス１７０２は、さらに、無線通信デバイス１７０２とリモートロケーション（例えば、基地局または他の無線通信デバイス）との間での信号の送受信を可能にするための送信機１７６７および受信機１７６９を含みうる。送信機１７６７および受信機１７６９は、集合的に、トランシーバ１７６５と呼ばれうる。アンテナ１７６３は、トランシーバ１７６５に電気的に結合されうる。無線通信デバイス１７０２は、さらに、複数の送信機、複数の受信機、複数のトランシーバ、および／または、複数のアンテナを含みうる（示されない）。
【０１０３】
無線通信デバイス１７０２の様々なコンポーネントは、電力バス、制御信号バス、状態信号バス、データバスなどを含みうる１または複数のバスによって互いに結合されうる。簡潔さのために、様々なバスが、バスシステム１７６１として図１７に例証される。
【０１０４】
図１８は、基地局１８２８に含まれうる特定のコンポーネントを例証する。前に論述された基地局３２８は、図１８に示されうる基地局１８２８と類似に構成されうる。基地局１８２８は、プロセッサ１８８５を含む。プロセッサ１８８５は、汎用のシングルチップまたはマルチチップマイクロプロセッサ（例えば、ＡＲＭ）、専用マイクロプロセッサ（例えば、デジタル信号プロセッサ（ＤＳＰ））、マイクロコントローラ、プログラマブルゲートアレイなどでありうる。プロセッサ１８８５は、中央処理装置（ＣＰＵ）と呼ばれうる。単一のプロセッサ１８８５のみが、図１８の基地局１８２８に示されるが、別の構成では、プロセッサの組み合わせ（例えば、ＡＲＭとＤＳＰ）が使用されうる。
【０１０５】
基地局１８２８は、さらに、プロセッサ１８８５と電気的に通信状態にあるメモリ１８７１を含みうる（すなわち、プロセッサ１８８５は、メモリ１８７１から情報を読み取ること、および／または、メモリ１８７１に情報を書き込むことが可能である）。メモリ１８７１は、電子情報を記憶することができる任意の電子コンポーネントでありうる。メモリ１８７１は、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、磁気ディスク記憶媒体、光記憶媒体、ＲＡＭのフラッシュメモリデバイス、プロセッサに含まれるオンボードメモリ、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）、レジスタなど、および、それらの組み合わせでありうる。
【０１０６】
データ１８７３ａおよび命令１８７５ａは、メモリ１８７１に記憶されうる。命令１８７５ａは、１または複数のプログラム、ルーティン、サブルーティン、機能、手順などを含みうる。命令１８７５ａは、単一のコンピュータ可読ステートメントまたは多数のコンピュータ可読ステートメントを含みうる。命令１８７５ａは、プロセッサ１８８５によって実行可能でありうる。命令１８７５ａを実行することは、メモリ１８７１に記憶されるデータ１８７３ａの使用を含みうる。図１８は、プロセッサ１８８５にロードされているいくつかの命令１８７５ｂおよびデータ１８７３ｂを示す。
【０１０７】
基地局１８２８は、さらに、基地局１８２８とリモートロケーション（例えば、無線通信デバイス）との間での信号の送受信を可能にするための送信機１８８１および受信機１８８３を含みうる。送信機１８８１および受信機１８８３は、集合的に、トランシーバ１８７９と呼ばれうる。アンテナ１８７７は、トランシーバ１８７９に電気的に結合されうる。基地局１８２８は、さらに、複数の送信機、複数の受信機、複数のトランシーバ、および／または、複数のアンテナを含みうる（示されない）。
【０１０８】
基地局１８２８の様々なコンポーネントは、電力バス、制御信号バス、状態信号バス、データバスなどを含みうる１または複数のバスによって互いに結合されうる。簡潔さのために、様々なバスが、バスシステム１８８７として図１８に例証される。
【０１０９】
上の記述において、参照番号は、時々、様々な用語に関連して使用されている。用語が参照番号に関して使用される場合、これは、複数の図のうちの１または複数に示される特定のエレメントを指すことが企図されうる。用語が参照番号なく使用される場合、これは、特定の図に限定されることなく、一般的にその用語を指すことが企図されうる。
【０１１０】
「決定すること（determining）」という用語は、広範囲の動作を包含し、それにより、「決定すること」は、計算すること（calculating）、算出すること（computing）、処理すること（processing）、導き出すこと（deriving）、探索すること（investigating）、ルックアップすること（looking up）（例えば、表、データベースまたは別のデータ構造をルックアップすること）、確認すること（ascertaining）などを含みうる。さらに、「決定すること」は、受信すること（receiving）（例えば、情報を受信すること）、アクセスすること（accessing）（例えば、メモリのデータにアクセスすること）などを含むことができる。さらに、「決定すること」は、解決すること（resolving）、選択すること（selecting）、選ぶこと（choosing）、確立すること（establishing）などを含むことができる。
【０１１１】
「〜に基づいて（based on）」という表現は、そうでないと明確に示されない限り、「〜だけに基づいて（based only on）」を意味しない。換言すると、「〜に基づいて」という表現は、「〜だけに基づいて」および「少なくとも〜に基づいて（based at least on）」の両方を表す。
【０１１２】
本明細書に記述された機能は、プロセッサ可読またはコンピュータ可読媒体上の１または複数の命令として記憶されうる。「コンピュータ可読媒体（computer-readable medium）」という用語は、コンピュータまたはプロセッサによってアクセス可能な任意の利用可能な媒体を指す。それに制限されない例として、そのような媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、ＣＤ−ＲＯＭまたは他の光学ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶デバイス、あるいは、コンピュータによってアクセスされることができ、命令やデータ構造の形で所望のプログラムコードを記憶するために使用される任意の別媒体を備えうる。ディスク（ｄｉｓｋ）とディスク（ｄｉｓｃ）は、本明細書で使用される場合、コンパクトディスク（ＣＤ）、レーザディスク、光ディスク、デジタル多用途ディスク（ＤＶＤ）、フロッピー（登録商標）ディスク、ブルーレイ（登録商標）ディスクを含む。ディスク（ｄｉｓｋ）は通常磁気作用によってデータを再生し、ディスク（ｄｉｓｃ）はレーザーで光学的にデータを再生する。コンピュータ可読媒体が、有形、かつ、非一時的であることに注意されたい。「コンピュータプログラムプロダクト（computer-program product）」という用語は、計算デバイスまたはプロセッサによって実行、処理、または計算されうるコードまたは命令（例えば、「プログラム」）と結合して計算デバイスまたはプロセッサを指す。本明細書において使用される場合、「コード（code）」という用語は、計算デバイスまたはプロセッサによって実行可能であるソフトウェア、命令、コードまたはデータを指しうる。
【０１１３】
ソフトウェアまたは命令は、さらに、送信媒体を通して送信されうる。例えば、同軸ケーブル、光ファイバーケーブル、撚線対、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、マイクロ波などの無線テクノロジを使用してウェブサイト、サーバ、または他のリモートソースからソフトウェアが送信されると、この同軸ケーブル、光ファイバーケーブル、撚線対、ＤＳＬ、または赤外線、無線、マイクロ波などの無線テクノロジは送信媒体の定義に含まれる。
【０１１４】
本明細書に開示された方法は、記述された方法を達成するための１または複数のステップあるいは動作を備える。方法のステップおよび／または動作は、特許請求の範囲を逸脱することなく互いに交換可能である。換言すると、ステップまたは動作の特定の順序が、記述されている方法の適切な動作のために要求されていない限り、この特定のステップおよび／または動作の順序および／または用途は、特許請求の範囲を逸脱することなく変更されうる。
【０１１５】
特許請求の範囲が、上に例証された通りの構成およびコンポーネントに限定されないことは理解されるべきである。様々な変更、変化、および変形が、特許請求の範囲を逸脱することなく、上に記述されたシステム、方法および装置の配列、動作、および詳細に行われる。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するための電子デバイスであって、
プロセッサと、
前記プロセッサと電気的に通信するメモリと、
前記メモリに記憶された命令と
を備え、前記命令は、
損失パケットを検出し、
合成フィルタバンクのゼロ入力応答を取得し、
粗いピッチ推定値を取得し、
前記ゼロ入力応答および前記粗いピッチ推定値に基づいて細かいピッチ推定値を取得し、
前記細かいピッチ推定値に基づいて最終ピッチ期間を選択し、
前記損失パケットに対して前記最終ピッチ期間からのサンプルを使用する
ように実行可能である、電子デバイス。
［Ｃ２］
前記粗いピッチ推定値がサブ帯域サンプルの自己相関を計算することによって取得される、Ｃ１に記載の電子デバイス。
［Ｃ３］
前記サブ帯域サンプルは、合成されていない、Ｃ２に記載の電子デバイス。
［Ｃ４］
前記命令は、さらに、前記最終ピッチ期間からの前記サンプルの少なくともいくつかを前記ゼロ入力応答と重複加算するように実行可能である、Ｃ１に記載の電子デバイス。
［Ｃ５］
前記細かいピッチ推定値は、前記ゼロ入力応答と前に復号されたサンプルとの相関を計算することによって取得される、Ｃ１に記載の電子デバイス。
［Ｃ６］
前記命令は、さらに、
さらなる損失パケットを検出し、
前記さらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用する  ように実行可能である、Ｃ１に記載の電子デバイス。
［Ｃ７］
前記命令は、さらに、前記最終ピッチ期間からの前記サンプルをフェードするように実行可能である、Ｃ６に記載の電子デバイス。
［Ｃ８］
前記命令は、さらに、複数のさらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用するように実行可能である、Ｃ６に記載の電子デバイス。
［Ｃ９］
前記命令は、さらに、
正確に復号されたパケットまたはフレームを検出し、
望ましくないサンプルの範囲に対して前記最終ピッチ期間からのサンプルを使用し、
前記最終ピッチ期間からのサンプルを遷移サンプルと重複加算する
ように実行可能である、Ｃ１に記載の電子デバイス。
［Ｃ１０］
前記損失パケットに対して前記最終ピッチ期間からの前記サンプルを使用することは、前記サンプルを前記損失パケットに複写することを備える、Ｃ１に記載の電子デバイス。
［Ｃ１１］
前記ＳＢＣ復号器は、広帯域スピーチ信号を復号するために使用される、Ｃ１に記載の電子デバイス。
［Ｃ１２］
前記電子デバイスは、無線通信デバイスである、Ｃ１に記載の電子デバイス。
［Ｃ１３］
前記無線通信デバイスはブルートゥースデバイスである、Ｃ１２に記載の電子デバイス。
［Ｃ１４］
前記ＳＢＣ復号器によって、実行可能なパケットを復号することに比べて、少しの追加の遅延も前記損失パケットを再構築するのに使用されない、Ｃ１に記載の電子デバイス。
［Ｃ１５］
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するための方法であって、
損失パケットを検出することと、
電子デバイス上で、合成フィルタバンクのゼロ入力応答を取得することと、
粗いピッチ推定値を取得することと、
前記電子デバイス上で、前記ゼロ入力応答および前記粗いピッチ推定値に基づいて細かいピッチ推定値を取得することと、
前記細かいピッチ推定値に基づいて最終ピッチ期間を選択することと、
前記損失パケットに対して前記最終ピッチ期間からのサンプルを使用することと
を備える方法。
［Ｃ１６］
前記粗いピッチ推定値がサブ帯域サンプルの自己相関を計算することによって取得される、Ｃ１５に記載の方法。
［Ｃ１７］
前記サブ帯域サンプルは、合成されていない、Ｃ１６に記載の方法。
［Ｃ１８］
前記最終ピッチ期間からの前記サンプルの少なくともいくつかを前記ゼロ入力応答と重複加算することをさらに備える、Ｃ１５に記載の方法。
［Ｃ１９］
前記細かいピッチ推定値は、前記ゼロ入力応答と前に復号されたサンプルとの相関を計算することによって取得される、Ｃ１５に記載の方法。
［Ｃ２０］
さらなる損失パケットを検出することと、
前記さらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用することと
をさらに備える、Ｃ１５に記載の方法。
［Ｃ２１］
前記最終ピッチ期間からの前記サンプルをフェードすることをさらに備える、Ｃ２０に記載の方法。
［Ｃ２２］
複数のさらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用することをさらに備える、Ｃ２０に記載の方法。
［Ｃ２３］
正確に復号されたパケットまたはフレームを検出することと、
望ましくないサンプルの範囲に対して前記最終ピッチ期間からのサンプルを使用することと、
前記最終ピッチ期間からのサンプルを遷移サンプルと重複加算することと
をさらに備える、Ｃ１５に記載の方法。
［Ｃ２４］
前記損失パケットに対して前記最終ピッチ期間からの前記サンプルを使用することは、前記サンプルを前記損失パケットに複写することを備える、Ｃ１５に記載の方法。
［Ｃ２５］
前記ＳＢＣ復号器は、広帯域スピーチ信号を復号するために使用される、Ｃ１５に記載の方法。
［Ｃ２６］
前記電子デバイスは、無線通信デバイスである、Ｃ１５に記載の方法。
［Ｃ２７］
前記無線通信デバイスはブルートゥースデバイスである、Ｃ２６に記載の方法。
［Ｃ２８］
前記ＳＢＣ復号器によって、実行可能なパケットを復号することに比べて、少しの追加の遅延も、前記損失パケットを再構築するのに使用されない、Ｃ１５に記載の方法。
［Ｃ２９］
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するためのコンピュータプログラムプロダクトであって、前記コンピュータプログラムプロダクトは、命令を格納した非一時的で有形なコンピュータ可読媒体を備え、前記命令は、
電子デバイスに対して、損失パケットを検出させるためのコードと、
前記電子デバイスに対して、合成フィルタバンクのゼロ入力応答を取得させるためのコードと、
前記電子デバイスに対して、粗いピッチ推定値を取得させるためのコードと、
前記電子デバイスに対して、前記ゼロ入力応答および前記粗いピッチ推定値に基づいて細かいピッチ推定値を取得させるためのコードと、
前記電子デバイスに対して、前記細かいピッチ推定値に基づいて最終ピッチ期間を選択させるためのコードと、
前記電子デバイスに対して、前記損失パケットに対して前記最終ピッチ期間からのサンプルを使用させるためのコードと  を備える、コンピュータプログラムプロダクト。
［Ｃ３０］
前記粗いピッチ推定値がサブ帯域サンプルの自己相関を計算することによって取得される、Ｃ２９に記載のコンピュータプログラムプロダクト。
［Ｃ３１］
前記命令は、さらに、
前記電子デバイスに対して、さらなる損失パケットを検出させるためのコードと、
前記電子デバイスに対して、前記さらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用させるためのコードと、
を備える、Ｃ２９に記載のコンピュータプログラムプロダクト。
［Ｃ３２］
前記命令は、さらに、
前記電子デバイスに対して、正確に復号されたパケットまたはフレームを検出させるためのコードと、
前記電子デバイスに対して、望ましくないサンプルの範囲に対して前記最終ピッチ期間からのサンプルを使用させるためのコードと、
前記電子デバイスに対して、前記最終ピッチ期間からのサンプルを遷移サンプルと重複加算させるためのコードと
を備える、Ｃ２９に記載のコンピュータプログラムプロダクト。
［Ｃ３３］
サブ帯域コード化（ＳＢＣ）復号器において損失パケットを再構築するための装置であって、
損失パケットを検出するための手段と、
合成フィルタバンクのゼロ入力応答を取得するための手段と、
粗いピッチ推定値を取得するための手段と、
前記ゼロ入力応答および前記粗いピッチ推定値に基づいて細かいピッチ推定値を取得するための手段と、
前記細かいピッチ推定値に基づいて最終ピッチ期間を選択するための手段と、
前記損失パケットに対して前記最終ピッチ期間からのサンプルを使用するための手段と
を備える装置。
［Ｃ３４］
前記粗いピッチ推定値は、サブ帯域サンプルの自己相関を計算することによって取得される、Ｃ３３に記載の装置。
［Ｃ３５］
さらなる損失パケットを検出するための手段と、
前記さらなる損失パケットに対して前記最終ピッチ期間からのサンプルを使用するための手段と、
をさらに備える、Ｃ３３に記載の装置。
［Ｃ３６］
正確に復号されたパケットまたはフレームを検出するための手段と、
望ましくないサンプルの範囲に対して前記最終ピッチ期間からのサンプルを使用するための手段と、
前記最終ピッチ期間からのサンプルを遷移サンプルと重複加算するための手段と
をさらに備える、Ｃ３３に記載の装置。
【図１】
0005479617.tif 000002
【図２】
0005479617.tif 000003
【図３】
0005479617.tif 000004
【図４】
0005479617.tif 000005
【図５】
0005479617.tif 000006
【図６】
0005479617.tif 000007
【図７Ａ】
0005479617.tif 000008
【図７Ｂ】
0005479617.tif 000009
【図７Ｃ】
0005479617.tif 000010
【図７Ｄ】
0005479617.tif 000011
【図７Ｅ】
0005479617.tif 000012
【図７Ｆ】
0005479617.tif 000013
【図８】
0005479617.tif 000014
【図９】
0005479617.tif 000015
【図１０Ａ】
0005479617.tif 000016
【図１０Ｂ】
0005479617.tif 000017
【図１０Ｃ】
0005479617.tif 000018
【図１１】
0005479617.tif 000019
【図１２】
0005479617.tif 000020
【図１３Ａ】
0005479617.tif 000021
【図１３Ｂ】
0005479617.tif 000022
【図１４】
0005479617.tif 000023
【図１５】
0005479617.tif 000024
【図１６】
0005479617.tif 000025
【図１７】
0005479617.tif 000026
【図１８】
0005479617.tif 000027