(57)【特許請求の範囲】
【請求項１】
通信部の受信するパケットの受信間隔を監視し、前記パケットの受信間隔のばらつき度合いに基づいて、再生制御処理用パラメータである目標値を生成して出力するパケット受信状況監視部と、
前記パケット受信状況監視部の生成する目標値に応じた再生制御を実行する再生制御部と、
を備え、
前記パケット受信状況監視部は、前記通信部の受信する音声パケットの受信間隔のばらつき度合いに基づいて、メモリに格納する音声パケットの目標数である目標格納データ数を算出し、
前記再生制御部は、前記目標格納データ数と、前記メモリに実際に格納された音声パケットの数であるメモリ格納データ数との差分の遷移に応じて音声再生速度の再生制御のモードを切り替える、
通信装置。
【請求項２】
前記パケット受信状況監視部は、
前記通信部の受信する前記音声パケットの受信間隔の前記ばらつき度合いが大きい場合、前記目標格納データ数を大きく設定し、前記ばらつき度合いが小さい場合、前記目標格納データ数を小さく設定する、請求項１に記載の通信装置。
【請求項３】
前記再生制御部は、
前記メモリ格納データ数が前記目標格納データ数より少ない場合、通常再生速度より遅い低速再生モードでの再生制御を実行し、
前記メモリ格納データ数が前記目標格納データ数より多い場合、前記通常再生速度より早い高速再生モードでの再生制御を実行する、
請求項１に記載の通信装置。
【請求項４】
前記再生制御部は、音声再生速度を、ヒステリシスを持たせて変更する、請求項３に記載の通信装置。
【請求項５】
前記再生制御部は、
連続して算出された、前記メモリ格納データ数と前記目標格納データ数との間の各差分値を比較し、前記差分値の増加を２回検出した場合には、前記音声再生速度を上昇させ、
連続して算出された、前記メモリ格納データ数と前記目標格納データ数との間の各前記差分値を比較し、前記差分値の減少を２回検出した場合には、前記音声再生速度を低下させるように、音声再生速度制御処理を実行する、
請求項３に記載の通信装置。
【請求項６】
前記パケット受信状況監視部は、前記通信部の受信する音声パケットの前記受信間隔のばらつき度合いを、前記音声パケットの前記受信間隔の標準偏差として算出する、請求項１に記載の通信装置。
【請求項７】
前記パケット受信状況監視部は、前記音声パケットの前記受信間隔の前記標準偏差が大きい場合には、前記目標格納データ数を大きく設定し、前記受信間隔の前記標準偏差が小さい場合には、前記目標格納データ数を小さく設定する、請求項６に記載の通信装置。
【請求項８】
前記メモリ格納データ数は、所定期間に前記メモリに格納されるパケット数の平均値である、請求項１に記載の通信装置。
【請求項９】
前記パケット受信状況監視部は、前記通信部の受信する画像パケットの前記受信間隔の前記ばらつき度合いに基づいて、前記パケットを送信するサーバのサーバ垂直同期信号と、クライアントのクライアント垂直同期信号との差分に相当する位相オフセットの目標値となる目標位相オフセットを算出し、
前記再生制御部は、前記目標位相オフセットに応じて、画像フレームの再生タイミングを決定することにより画像再生制御を実行する、
請求項１に記載の通信装置。
【請求項１０】
前記パケット受信状況監視部は、前記通信部の受信する前記画像パケットの前記受信間隔の前記ばらつき度合いが大きい場合には、前記目標位相オフセットを大きく設定し、前記ばらつき度合いが小さい場合には、前記目標位相オフセットを小さく設定する、請求項９に記載の通信装置。
【請求項１１】
前記再生制御部は、前記画像パケットの前記受信間隔の前記ばらつき度合いが小さく、且つ、前記目標位相オフセットが小さく設定されている場合には、前記位相オフセットを小さく設定して再生遅延の少ない画像再生を実行する、請求項１０に記載の通信装置。
【請求項１２】
前記再生制御部は、
前記画像パケットの前記受信間隔の前記ばらつき度合いが大きく、且つ、前記目標位相オフセットが大きく設定されている場合には、前記位相オフセットを大きく設定してパケット遅延による再生途切れの発生可能性を低減した画像再生を実行する、請求項１０に記載の通信装置。
【請求項１３】
通信装置において実行するデータ処理方法であって、
パケット受信状況監視部が、通信部の受信するパケットの受信間隔を監視し、前記パケットの前記受信間隔のばらつき度合いに基づいて、再生制御処理用パラメータである目標値を生成して出力し、
再生制御部が、前記パケット受信状況監視部の生成する前記目標値に応じた再生制御を実行することを含み、
前記パケット受信状況監視部は、前記通信部の受信する音声パケットの前記受信間隔のばらつき度合いに基づいて、メモリに格納する音声パケットの目標数である目標格納データ数を算出し、
前記再生制御部は、前記目標格納データ数と、前記メモリに実際に格納された音声パケットの数であるメモリ格納データ数との差分の遷移に応じて音声再生速度の再生制御のモードを切り替える、
データ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、通信装置、およびデータ処理方法に関する。さらに詳細には、ネットワークを介して受信するデータを安定的に出力する通信装置、およびデータ処理方法に関する。
【０００２】
［関連出願への相互参照］
本出願は、２０１４年５月３０日に出願された米国特許仮出願第６２／００５，２７７号及び２０１４年１１月９日に出願された米国特許出願第１４／５６４，２４９号の利益を主張するものであり、そのすべての内容は、参照により本明細書に組み込まれる。
【背景技術】
【０００３】
昨今、例えば携帯端末等のクライアントからデータ処理要求をサーバに送信し、サーバ側でデータ処理を実行して処理結果をクライアントに返し、クライアント側でテータ処理結果を得るといういわゆるクラウド型コンピューティングシステムの利用が普及しつつある。
【０００４】
このクラウドシステムの一利用例として、ゲーム端末におけるゲームの実行がある。ユーザが操作するゲーム端末（クライアント）がサーバと通信を行い、サーバ側の高機能なデータ処理機能を用いてゲームの展開面等の画像データや音声データをクライアントに提供するシステムである。
【０００５】
このようなクラウド型のゲームシステムでは、クライアントからサーバに対してユーザ操作情報を送信する。サーバは、クライアントから受信する操作情報に応じてゲームを展開し、更新した画像や音声データを生成してクライアントに送信する。クライアントは、サーバから受信した更新画像や音声を再生する。このような処理を行なうことで、高機能なプロセッサ等を備えないクライアントであっても、サーバ側の高機能なデータ処理機能を利用したデータ処理結果を得ることが可能となる。
【０００６】
しかし、サーバとクライアント間の転送データは、ネットワーク状況に応じた遅延やジッタ（揺らぎ）が発生する。一般的に画像や音声データは、符号化データとして送信され、クライアントは受信データを順次、デコード（復号）して出力することが必要となる。
【０００７】
ネットワーク状況によりパケット遅延やジッタ（揺らぎ）が発生すると、クライアント側でのパケット受信、デコード、表示、これら一連の処理に乱れが発生し、画像途切れや音声途切れが発生することがある。
【０００８】
なお、通信データの遅延等に基づく音声途切れ等の問題を解決するための手法として、パケット遅延に応じて音声再生速度を変更する処理について米国特許８，５６０，３３１Ｂ１に記載がある。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許８，５６０，３３１Ｂ１
【発明の概要】
【発明が解決しようとする課題】
【００１０】
例えば、上述したクラウド型システムなど、ネットワークを介して受信する画像や音声等のデータの出力処理を実行する場合、通信遅延によって安定的なデータ出力が妨げられる場合がある。
【００１１】
このようなデータ出力の不安定さを回避する構成として、上記特許文献１である米国特許８，５６０，３３１Ｂ１）は、１つのパケット単位で遅延を監視し、パケット単位の遅延状況に応じて再生速度を制御する構成を開示している。
【００１２】
しかし、１つのパケット単位の遅延状況に応じて再生速度を変更すると、再生速度の変化が激しくなり、視聴者に違和感を発生させる恐れがある。
【００１３】
また、１つのパケット単位の遅延状況に応じて再生速度を変更するためには、頻繁な再生速度制御が必要となり、その結果、装置の負荷が大きくなる。
【００１４】
本開示は、例えばこのような問題に鑑みてなされたものであり、視聴者に違和感を発生させず、また過大な装置負荷も発生させることのない緩やかな再生速度制御により、安定したデータ出力を実現する通信装置、およびデータ処理方法を提供する。
【課題を解決するための手段】
【００１５】
本開示の第１の側面は、通信部の受信するパケットの受信間隔を監視し、前記パケットの受信間隔のばらつき度合いに基づいて、再生制御処理用パラメータである目標値を生成して出力するパケット受信状況監視部と、前記パケット受信状況監視部の生成する目標値に応じた再生制御を実行する再生制御部とを有し、前記再生制御部は、前記目標値に応じた音声再生速度の制御、または画像フレームの再生制御を実行する通信装置にある。
【００１６】
さらに、本開示の第２の側面は、通信装置において実行するデータ処理方法であって、パケット受信状況監視部が、通信部の受信するパケットの受信間隔を監視し、前記パケットの前記受信間隔のばらつき度合いに基づいて、再生制御処理用パラメータである目標値を生成して出力し、再生制御部が、前記パケット受信状況監視部の生成する前記目標値に応じた再生制御を実行することを含み、前記再生制御においては、前記目標値に応じた音声再生速度の制御、または画像フレームの再生制御を実行する、データ処理方法にある。
【００１７】
本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００１８】
本開示の一実施例の構成によれば、パケット受信間隔のばらつきを監視し、ばらつきに応じた最適な再生制御を実行する装置、および方法が実現される。
【００１９】
具体的には、パケット受信状況監視部が、音声パケットの受信間隔のばらつき度合いに基づいて、メモリに格納する音声パケットの目標数である目標格納データ数を算出し、再生制御部は、目標格納データ数と、メモリ格納データ数との差分に応じて音声再生速度の再生制御を実行する。メモリ格納データ数が目標格納データ数より少ない場合、通常再生速度より遅い低速再生モードでの再生制御を実行し、メモリ格納データ数が前記目標格納データ数より多い場合、通常再生速度より早い高速再生モードでの再生制御を実行する。再生速度の変更処理は、メモリ格納データ数と目標格納データ数との差分の遷移に対してヒステリシスを持たせて実行する。
【００２０】
本構成により、パケット受信間隔のばらつきを監視し、ばらつきに応じた最適な再生制御を実行する装置、および方法が実現される。
【００２１】
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
【図面の簡単な説明】
【００２２】
【図１】図１は、本開示の処理を実行する通信システムの一構成例について説明する図である。
【図２】図２は、サーバとクライアントの構成例について説明する図である。
【図３】図３は、クライアントのデータ処理部の構成例について説明する図である。
【図４】図４は、クライアントの音声データ処理部の構成例について説明する図である。
【図５】図５は、クライアントの実行する音声データの再生制御処理の一例について説明する図である。
【図６】図６は、クライアントの実行する音声データの再生制御処理のシーケンスについて説明するフローチャート図である。
【図７】図７は、クライアントの画像データ処理部の構成例について説明する図である。
【図８】図８は、クライアントの実行する画像データ再生処理の一例について説明する図である。
【図９】図９は、クライアントの実行する画像データ再生処理の一例について説明する図である。
【図１０】図１０は、クライアントの実行する音声データの再生制御処理のシーケンスについて説明するフローチャート図である。
【図１１】図１１は、クライアントとしての通信装置のハードウェア構成例について説明する図である。
【発明を実施するための形態】
【００２３】
以下、図面を参照しながら本開示の通信装置、およびデータ処理方法の詳細について説明する。なお、説明は以下の項目に従って行なう。
【００２４】
１．通信システムの構成例について
２．クライアントの装置構成例について
３．音声データ処理部の実行する再生速度制御処理の詳細について
４．音声再生速度制御処理の具体例について
５．音声データ処理部の実行する再生速度制御処理のシーケンスについて
６．画像データ処理部の実行する画像データの再生制御処理例について
７．画像データ処理部の実行する再生制御処理のシーケンスについて
８．クライアントのハードウェア構成例について
９．本開示の構成のまとめ
【００２５】
［１．通信システムの構成例について］
まず、図１を参照して本開示の処理を実行するクライアントを有する通信システムの一構成例について説明する。
【００２６】
図１に示すように、通信システム１０は、双方向通信可能なクライアント２０とサーバ３０を有する。クライアント２０とサーバ３０は例えばインターネット等のネットワークを介して通信を行う。
【００２７】
クライアント２０は、一般ユーザのユーザ端末装置であり、具体的には、例えばテ
レビ２１、ＰＣ２２、ゲーム機、スマホ等の携帯端末２３等である。
【００２８】
クライアント２０は、クライアント２０に対するユーザ操作情報をサーバ３０に送信する。サーバ３０は、クライアント２０から受信する操作情報に応じたデータ処理を行なう。例えばユーザがクライアント２０においてゲームを実行中である場合、ユーザ操作に応じてゲームを展開し、更新した画像や音声データを符号化したストリームデータを生成してクライアント２０に送信する。
【００２９】
クライアント２０は、サーバ３０から受信するストリームデータに対するデコードを実行し、デコード結果としての画像や音声をディスプレイあるいはスピーカを介して出力する。
【００３０】
［２．クライアントの装置構成例について］
次に、図２を参照してサーバ３０との通信処理を行なう通信装置であるクライアント２０の構成例について説明する。
【００３１】
図２に示すように、クライアント２０は、データ処理部５１、通信部５２、記憶部５３、入力部５４、出力部５５を有する。
【００３２】
通信部５２は、サーバ３０から配信されるデータ、例えば画像、音声等を格納したパケットを受信する。
【００３３】
データ処理部５１は、受信パケットから画像データや音声データを取得して、デコード（復号）処理等を行い、再生用データを生成して出力する。
【００３４】
ユーザの指示等は入力部５４を介して入力される。
【００３５】
再生データは表示部やスピーカ等を有する出力部５５に出力される。
【００３６】
記憶部５３は受信した画像、音声、字幕等を有する受信データを格納する。
【００３７】
さらに、記憶部５３は、データ処理部５１の実行するデータ処理のワークエリアとして利用され、また各種パラメータの記憶領域としても利用される。
【００３８】
サーバ３０は、データ処理部７１、通信部７２、記憶部７３を有する。
【００３９】
サーバ３０のデータ処理部７１は、データ配信サービスを実行するための各種のデータ処理を実行する。例えば、データ配信サービスの構成データの生成やその送信制御を行う。
【００４０】
具体的には、画像、音声データを格納するパケットの生成、配信処理を実行する。さらに、様々な通知情報の生成、配信処理を制御する。
【００４１】
通信部７２は、データ処理部７１の生成した画像、音声、その他のデータを送信する。
【００４２】
記憶部７３は配信対象である画像、音声等の各データを格納する。
【００４３】
さらに、記憶部７３は、データ処理部７１の実行するデータ処理のワークエリアとして利用され、さらに各種パラメータの記憶領域としても利用される。
【００４４】
図３は、クライアント２０のデータ処理部５１の詳細構成を示す図である。
【００４５】
クライアント２０のデータ処理部５１は、パケット分離部８１、画像データ処理部８２、音声データ処理部８３、制御部８４を有する。
【００４６】
パケット分離部８１は、通信部５２を介して受信するパケットのヘッダ情報に基づいて受信パケットをデータ種別（画像、音声、その他の制御信号）ごとに分離して、分離した各パケットを各データ処理部に供給する。
【００４７】
画像データ処理部８２は、画像データを格納したパケットから画像データを取得し、復号処理等、画像の再生処理に必要な処理を実行する。
【００４８】
音声データ処理部８３は、音声データを格納したパケットから音声データを取得し、復号処理等、音声の再生処理に必要な処理を実行する。
【００４９】
制御部８４は、画像データ処理部８２、音声データ処理部８３の各処理部における処理の制御を実行する。
【００５０】
［３．音声データ処理部の実行する再生速度制御処理の詳細について］
次に、クライアント２０の音声データ処理部８３の実行する音声データに対する再生速度制御処理の詳細について説明する。
【００５１】
図４は、クライアント２０の音声データ処理部８３の詳細構成例を示す図である。
【００５２】
音声データ処理部８３は、音声データ格納メモリ１０１、パケット受信状況監視部１０２、メモリ格納データ数監視部１０３、再生制御部１０４を有する。
【００５３】
音声データ格納メモリ１０１は、サーバ３０から受信されたパケットを格納するメモリであり、パケット分離部８１によって選択された音声データを格納した音声パケットである音声パケットを順次、格納する。
【００５４】
図に示すＰ１，Ｐ２，・・・Ｐｎは、音声パケットを示している。
【００５５】
これらのパケットの各々には、所定長（例えば数ｍｓｅｃ）の再生用音声データが格納されている。
【００５６】
パケット受信状況監視部１０２は、サーバ３０から受信した音声パケットの受信間隔を検出する。
【００５７】
サーバ３０は、所定間隔で音声パケットの送信を行うが、ネットワークの混雑状況等により、クライアント２０が受信する音声パケットの受信間隔は均一とはならず、揺らぎ、いわゆるジッタが発生する。
【００５８】
パケット受信状況監視部１０２は、音声データを格納する各パケットの受信間隔を検出する。検出したパケット受信間隔に応じて、パケット受信状況監視部１０２は、音声データ格納メモリ１０１の目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２を算出してメモリ格納データ数監視部１０３に出力する。
【００５９】
例えば、一定間隔で音声パケットを受信し、一定速度で音声再生が行われれば、音声データ格納メモリ１０１の格納パケット数は、ほぼ一定に維持される。
【００６０】
しかし、ネットワークが混雑し、パケットの受信に遅れが発生すると、メモリ１０１のパケットの入力が再生処理に伴うパケット消費に間に合わず、音声データ格納メモリ１０１の格納パケット数は減少する。遅延が大きい場合、最終的には再生するパケットがメモリ１０１から無くなり、再生音声が途切れてしまう。
【００６１】
本開示のクライアント２０の音声データ処理部８３は、このような事態を防止するため、パケット受信状況に応じて音声再生速度を変化させる。
【００６２】
パケット受信状況監視部１０２は、この音声再生速度の制御に用いるためのデータとして、目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２を算出してメモリ格納データ数監視部１０３に出力する。
【００６３】
パケット受信状況監視部１０２は、通信部５２が受信する音声データを格納したパケットの受信間隔を検出する。検出したパケット受信間隔に応じて、パケット受信状況監視部１０２は、音声データ格納メモリ１０１の目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２を算出してメモリ格納データ数監視部１０３に出力する。
【００６４】
メモリ格納データ数監視部１０３は、音声データ格納メモリ１０１の格納パケットのデータ数に基づいて算出されるメモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１を取得し、さらに、パケット受信状況監視部１０２から、目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２を受信する。
【００６５】
メモリ格納データ数監視部１０３は、以下の２つのデータに基づいて、再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３を生成して、再生制御部１０４に出力する：以下の２つのデータは、（ａ）メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１と、（ｂ）目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２とである。メモリ格納データ数監視部１０３は、再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３を再生制御部１０４に出力する。
【００６６】
再生制御部１０４は、音声データ格納メモリ１０１から順次、音声パケットを取得して、デコード等、再生に必要な処理を実行する。その結果は、スピーカ等の出力部１０５に出力される。
【００６７】
再生制御部１０４は、この音声再生処理において、メモリ格納データ監視部１０３から入力する再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３に基づいて再生速度を制御しつつ再生処理を行なう。
【００６８】
本開示のクライアント２０の音声データ処理部８３は、音声データ格納メモリ１０１に格納されているパケット数の目標数を算出し、実際のメモリ格納パケット数と目標数との差分に応じて、再生速度を変化させる。
【００６９】
この再生速度制御処理の詳細について、図５を参照して説明する。
【００７０】
図５に示すグラフにおいては、横軸が、[メモリ格納データ数−目標格納データ数]（パケット数）、縦軸が、再生速度（％）を示している。当該グラフは、パケット数と再生速度の対応関係を示している。
【００７１】
横軸の０の位置は、[メモリ格納データ数−目標格納データ数]が０であり、メモリ１０１に格納されている音声データパケット数が目標数に一致していることを示す。
【００７２】
＋１の位置は、メモリ格納データ数が目標数より１つ多いことを示している。
【００７３】
−１の位置は、メモリ格納データ数が目標数より１つ少ないことを示している。
【００７４】
横軸において[メモリ格納データ数−目標格納データ数]（パケット数）が０の位置での再生速度は、１００％である。
【００７５】
この１００％の再生速度は通常再生速度として規定される。
【００７６】
横軸において[メモリ格納データ数−目標格納データ数]が＋１，＋２，＋３等、正の値である場合には、制御は、通常再生速度より早い再生速度において再生を実行するように行われる。
【００７７】
すなわち、メモリ格納データ数が、目標格納データ数より多くなると、高速再生モードでの再生制御を実行し、再生速度を速め、メモリ内のパケット消費を早くする。
【００７８】
なお、図５に示すグラフでは、通常速度を１００％として、高速再生モードでの再生速度を１００．５％、さらに１０１％に上昇させている。
【００７９】
一方、横軸において[メモリ格納データ数−目標格納データ数]が−１，−２等、負の値である場合には、制御は、通常再生速度より遅い再生速度において再生を実行するように行われる。
【００８０】
すなわち、メモリ格納データ数が、目標格納データ数より少なくなると、低速再生モードでの再生制御を実行し、再生速度を遅くし、メモリ内のパケット消費を遅くする。
【００８１】
図５に示すグラフでは、通常速度を１００％として、低速再生モードでの再生速度を９９％に低下させている。
【００８２】
なお、図５のグラフから理解されるように、再生速度の変更処理は、[メモリ格納データ数−目標格納データ数]の遷移に対してヒステリシスを持たせて緩やかに実行される。
【００８３】
例えば、図５において、[メモリ格納データ数−目標格納データ数]が０である位置ａから、[メモリ格納データ数−目標格納データ数]が＋１である位置ｂに遷移した場合、位置ｂでの再生速度は、位置ａにおける再生速度である１００％に維持される。
【００８４】
さらにメモリ格納データ数が増加して、位置ｂから、[メモリ格納データ数−目標格納データ数]が＋２である位置ｃに遷移すると、再生速度は０．５％上昇し、位置ｃの再生速度は１００．５％に設定される。
【００８５】
このように、[メモリ格納データ数−目標格納データ数]の連続した上昇傾向が確認された場合には、再生速度を予め規定した範囲（本例では０．５％）で上昇させる。
【００８６】
さらに、メモリ格納データ数が増加して、位置ｃから、[メモリ格納データ数−目標格納データ数]が＋３である位置ｄに遷移する。
【００８７】
しかし、この遷移位置ｄでは、再生速度は位置ｃの再生速度と同様、１００．５％に維持される。
【００８８】
その後、さらに、メモリ格納データ数が増加して、位置ｄから、[メモリ格納データ数−目標格納データ数]が＋４である位置ｅに遷移すると、再生速度は０．５％上昇し、位置ｅの再生速度は１００．５％に設定される。
【００８９】
このように、再生速度の変更処理は、[メモリ格納データ数−目標格納データ数]の遷移に対して所定のヒステリシスを持たせて緩やかに制御される。
【００９０】
図に示す例では、[メモリ格納データ数−目標格納データ数]の変化値が＋２となった場合に、再生速度を上昇させる。
【００９１】
また、１回あたりの再生速度の変更量は、０．５％としている。すなわち、通常再生速度を１００％とした場合、再生速度を１００．５％、さらに１０１％に変更する。
【００９２】
また、高速再生の上限値を１０１％としている。これ以上の高速再生は、視聴者に対する違和感を発生させる懸念があるためである。
【００９３】
図５に示す位置ｅから、メモリ格納データ数が減少し、位置ｆから位置ｃ、位置ｇ、位置ａへと変化した場合も同様である。メモリ格納データと目標数の差分の変化数として−２が検出された場合ごとに、再生速度を１０１％から１００．５％、１００％へと段階的に、低下させる。
【００９４】
また、横軸において[メモリ格納データ数−目標格納データ数]が−１，−２等の負の値である場合、すなわち、メモリ格納データ数が、目標格納データ数より少なくなると、
低速再生モードでの再生制御を実行し、再生速度を遅くし、メモリ内のパケット消費を遅くする。
【００９５】
図５に示すグラフでは、通常速度を１００％として、低速再生モードでの再生速度を９９％に低下させている。
【００９６】
例えば、[メモリ格納データ数−目標格納データ数]が０である位置ａから、[メモリ格納データ数−目標格納データ数]が−１である位置ｈに遷移した場合、位置ｈでの再生速度は、位置ａにおける再生速度である１００％に維持される。
【００９７】
さらにメモリ格納データ数が減少して、位置ｈから、[メモリ格納データ数−目標格納データ数]が−２である位置ｉに遷移すると、再生速度は１％低下し、位置ｉの再生速度は９９％に設定される。
【００９８】
[メモリ格納データ数−目標格納データ数]が正方向に変化した場合は、＋２の変化量に応じて再生速度は＋０．５％上昇し、[メモリ格納データ数−目標格納データ数]が負方向に変化した場合は、−２の変化量に応じて再生速度は−１．０％低下する。
【００９９】
これは、[メモリ格納データ数−目標格納データ数]が負方向に変化した場合は、パケット不足による音声途切れの発生可能性があり、パケット消費を極力、抑えるためである。
【０１００】
低速再生モードにおいても、通常再生速度を１００％とした場合、再生速度の下限値を９９％と設定している。これ以下の低速再生は、視聴者に対する違和感を発生させる懸念があるためである。
【０１０１】
なお、この図５に示す再生速度制御例や、ヒステリシスの設定例は一例であり、この他の様々な設定が可能である。
【０１０２】
例えば、１つのパケットに含まれる音声データの再生長に応じた最適な設定を行うことが好ましい。
【０１０３】
［４．音声再生速度制御処理の具体例について］
図４、図５を参照して説明した音声再生速度の制御処理を行なう場合に適用するパラメータの算出処理の１つの具体例について以下説明する。
【０１０４】
上述した説明から理解されるように、本開示のクライアント２０の音声データ処理部８３は、音声データ格納メモリ１０１に格納されているパケット数の目標数を設定し、実際のメモリ格納パケット数と目標数との差分に応じて、再生速度を変化させる。
【０１０５】
再生速度制御のために必要となる１つのパラメータは、図５のグラフの横軸に示す、[メモリ格納データ数−目標格納データ数]である。
【０１０６】
メモリ格納データ数は、図４に示すように、音声データ格納メモリ１０１に格納されたデータに基づいて算出されるメモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１である。
【０１０７】
また、目標格納データ数は、図４に示すように、パケット受信状況監視部１０２がパケット受信間隔等に応じて算出する目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２である。
【０１０８】
メモリ格納データ数監視部１０３は、以下の２つのデータに基づいて、再生スピード制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３を生成して、再生制御部１０４に出力する：以下の２つのデータは、（ａ）メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１と、（ｂ）目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２とである。
【０１０９】
再生制御部１０４は、音声データ格納メモリ１０１から順次、音声パケットを取得してデコード等の再生に必要な処理を実行する。その結果は、スピーカ等の出力部１０５に出力される。
【０１１０】
再生制御部１０４は、この音声再生処理において、メモリ格納データ監視部１０３から入力する再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３に基づいて再生速度を制御しつつ再生処理を行なう。
【０１１１】
この一連の処理は、定期的に実行される。
【０１１２】
この一連の処理において利用するパラメータは以下の３つのパラメータである：（ａ）メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１、（ｂ）目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２、（ｃ）再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３。
【０１１３】
これら（ａ）〜（ｃ）３つのパラメータの更新タイミングは、同一タイミングであっても異なるタイミングであってもよい。
【０１１４】
一例として、（ａ）メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１を、２秒ごとに更新、（ｂ）目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ
ｎｕｍｂｅｒ）１２２を、１０秒ごとに更新、（ｃ）再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３を、２秒ごとに更新する場合を以下に説明する。
【０１１５】
まず、（ａ）メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１の算出処理例について説明する。
【０１１６】
メモリ格納データ数監視部１０３は、音声データ格納メモリ１０１を、メモリに新たなパケットが入力されるごとにチェックして、メモリに格納されているパケット数を取得する。
【０１１７】
例えば約１０ｍｓｅｃ毎に音声データを格納するパケットが入力される場合、２秒間で２００回のチェックを行う。
【０１１８】
メモリ格納データ数監視部１０３は、この２秒間に行われた約２００回のメモリチェックにおいて得られた約２００個のデータの平均値（ａｖｅｒａｇｅ＿ｂｕｆｆｅｒ＿ｎｕｍｂｅｒ）に基づいて、（ａ）メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１、を算出する。
【０１１９】
具体的には、以下の算出式（式１）に従って、メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１を算出する。
【０１２０】
メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）＝ａｖｅｒａｇｅ＿ｂｕｆｆｅｒ＿ｎｕｍｂｅｒ＝（ｎ回のメモリチェック時のメモリ格納データ数の合計）／ｎ・・・・（式１）
【０１２１】
上記式（式１）において、ｎは、メモリ格納データ数監視部１０３が出力する再生速度制御信号（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３の出力間隔に相当する間隔においてメモリ１０１をチェックした回数である。
【０１２２】
本例では、メモリ格納データ数監視部１０３が出力する再生速度制御信号（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３は、２秒ごとに出力されるため、２秒間に実施されるチェック回数に相当する１０ｍｓｅｃ毎のパケット入力毎にチェックを行う場合、ｎは２００となる。
【０１２３】
次に、（ｂ）目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２の算出処理例について説明する。
【０１２４】
パケット受信状況監視部１０２は、通信部５２が受信する音声データを格納するパケットの受信間隔を検出する。検出したパケット受信間隔に応じて、パケット受信状況監視部１０２は、音声データ格納メモリ１０１の目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２を算出して、メモリ格納データ数監視部１０３に出力する。
【０１２５】
パケット受信状況監視部１０２は、目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２を所定間隔で更新して、メモリ格納データ数監視部１０３に出力する。
【０１２６】
ここでは、１０秒ごとに目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２を更新して、メモリ格納データ数監視部１０３に出力する場合の例について説明する。
【０１２７】
パケット受信状況監視部１０２は、音声データ処理部８３に対して入力された音声データパケットの入力間隔の統計的なばらつきを算出し、このばらつきの算出値に基づいて目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２を生成して再生制御部１０４に出力する。
【０１２８】
以下では、音声データ処理部８３に対して入力された音声データパケットの入力間隔の統計的なばらつきの大きさの指標値の１つとして、「標準偏差」を用いた例について説明する。
【０１２９】
すなわち、音声データパケットの入力間隔の標準偏差をパケットの入力間隔のばらつきを示す指標値として用いる。
【０１３０】
パケット入力間隔のばらつきが大きいほど、パケット入力間隔の標準偏差は大きくなり、パケット入力間隔のばらつきが小さいほど、パケット入力間隔の標準偏差は小さくなる。
【０１３１】
パケット受信状況監視部１０２は、まず、音声データ処理部８３に対して入力された音声データパケットの入力間隔の分散（ｖａｒｉａｎｃｅ）を算出して、算出した分散（ｖａｒｉａｎｃｅ）に基づいて、標準偏差（ｓｔｄＤｅｖ＝ｓｑｒｔ（ｖａｒｉａｎｃｅ））を算出する。上記式及び以下の式においては、「ｓｑｒｔ」とは平方根を示す。
【０１３２】
パケット受信状況監視部１０２は、音声データ処理部８３に対して入力された１つの音声データパケットの入力毎に以下の計算を実行して、音声データ処理部８３に対して入力された音声データパケットの入力間隔の分散（ｖａｒａｎｃｅ）を更新する。
【０１３３】
目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２の更新タイミングの設定期間となる１０秒の間、パケット入力毎にパケット入力間隔を検出して、検出値に基づいて分散（ｖａｒｉａｎｃｅ）の更新を継続する。
【０１３４】
すなわち、１０秒の間に入力するバケットのパケット入力間隔を、遂次検出して、パケット入力間隔の分散（ｖａｒｉａｎｃｅ）を算出する。
【０１３５】
その後、算出した分散値に基づいて、パケット入力間隔の標準偏差（ｓｔｄＤｅｖ＝ｓｑｒｔ（ｖａｒｉａｎｃｅ））を算出する。
【０１３６】
さらに、算出した標準偏差（ｓｔｄＤｅｖ＝ｓｑｒｔ（ｖａｒｉａｎｃｅ））を用いて、目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）を算出する。
【０１３７】
パケット受信状況監視部１０２の実行する分散算出処理について説明する。
【０１３８】
まず、初期値設定処理として、以下の各パラメータを０に設定する。
【０１３９】
ｎ＝０
ｍｅａｎ＝０
Ｍ２＝０
【０１４０】
上記式において、ｎは、分散値の更新回数（＝音声パケット入力数）に対応する。「ｍｅａｎ」は、計測済みのパケット間隔の平均値を意味する。Ｍ２は、分散（ｖａｒｉａｎｃｅ）算出に適用するパラメータである。
【０１４１】
各パケットの入力毎に以下のパラメータの更新を実行する。
【０１４２】
ｎ＝ｎ＋１
ｄｅｌｔａ＝ｘ−ｍｅａｎ
ｍｅａｎ＝ｍｅａｎ＋ｄｅｌｔａ／ｎ
Ｍ２＝Ｍ２＋ｄｅｌｔａ×（ｘ−ｍｅａｎ）
分散（ｖａｒｉａｎｃｅ）＝Ｍ２／（ｎ−１）
【０１４３】
上記式において、ｘは、新たに入力した音声パケットと、その直前に入力した音声パケットとの間のパケット間隔である。ｍｅａｎは、計測済みのパケット間隔の平均値である。
【０１４４】
パケット受信状況監視部１０２は、上記のパラメータ更新処理を、音声データ処理部８３に対する音声データパケットの入力毎に実行し、目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２の更新タイミングの設定期間である１０秒間、継続して実行する。
【０１４５】
１０秒間、上記パラメータ更新を継続することで、その１０秒間に受信したパケットのパケット受信間隔の分散（ｖａｒｉａｎｃｅ）が算出される。
【０１４６】
分散（ｖａｒｉａｎｃｅ）の更新処理開始から１０秒の間に受信したパケットのパケット受信間隔の分散（ｖａｒｉａｎｃｅ）を算出した後、パケット受信状況監視部１０２は、算出した分散（ｖａｒｉａｎｃｅ）に基づいて、以下の数式２に従って、パケット受信間隔の標準偏差（ｓｔｄＤｅｖ）を算出する。
【０１４７】
標準偏差（ｓｔｄＤｅｖ）＝ｓｑｒｔ（ｖａｒｉａｎｃｅ）
・・・（式２）
【０１４８】
なお、上記（式２）においてｓｑｒｔは平方根計算を意味する。
【０１４９】
さらに、パケット受信状況監視部１０２は、上記式２に基づいて算出した１０秒間のパケット受信間隔の標準偏差（ｓｔｄＤｅｖ）を用いて、以下の式３に従って、目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２を算出する。
【０１５０】
目標格納データ数＝３＋ｆｌｏｏｒ（ｓｔｄＤｅｖ）
・・・（式３）
【０１５１】
なお、上記式（３）において、ｆｌｏｏｒ（ｓｔｄＤｅｖ）は、標準偏差（ｓｔｄＤＥｖ）の小数点以下を切り捨て整数値のみを取得する床関数（ｆｌｏｏｒ  ｆｕｎｃｔｉｏｎ）である。
【０１５２】
なお、上記式（３）において算出される目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２、様々な値を取り得るが、予め、許容する最小値と、最大値を決定しておいてもよい。
【０１５３】
例えば、最小値（ｍｉｎ）を４、最大値（ｍａｘ）を８と許容範囲を定め、上記式（３）によって算出される値が３以下の場合は、目標格納データ数を４とし、上記式（３）によって算出される値が９以上の場合は、目標格納データ数を８とする。
【０１５４】
なお、この許容範囲は一例であり、メモリに格納可能なデータ数や、各パケットに格納されるデータ量に応じて最適範囲を設定することが好ましい。
【０１５５】
パケット受信状況監視部１０２は、上記式（３）による目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）の算出を定期的、例えば１０秒ごとに実行して、メモリ格納データ数監視部１０３に出力する。
【０１５６】
これらの処理をまとめると、メモリ格納データ数監視部１０３の実行する処理は以下の処理となる。
【０１５７】
（処理１）メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１を、２秒ごとに検出する。
【０１５８】
（処理２）目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２の更新データを１０秒ごとにパケット受信状況監視部１０２から受領する。
【０１５９】
（処理３）メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１の更新間隔である２秒間隔で、[メモリ格納データ数−目標格納データ数]を算出する。
【０１６０】
この算出値は、図５に示すグラフの横軸に相当する。
【０１６１】
（処理４）２秒ごとに、[メモリ格納データ数−目標格納データ数]の値に基づいて、再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３を生成して再生制御部１０４に出力する。
【０１６２】
メモリ格納データ数監視部１０３の実行する処理は上記の処理となる。
【０１６３】
なお、（処理４）において、［メモリ格納データ数−目標格納データ数］に基づいて生成する再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３は以下のように設定される。
【０１６４】
[メモリ格納データ数−目標格納データ数]が０の場合、又は、メモリ格納データ数が目標格納データ数と一致する場合、現在の再生速度をそのまま維持させる再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３を生成して再生制御部１０４に出力する。
【０１６５】
この処理は、図５に示すグラフのａ点に対応する処理となる。
【０１６６】
［メモリ格納データ数−目標格納データ数］が０よりも大きい場合、又は、メモリ格納データ数が目標格納データ数より多い場合、高速再生モードで再生制御を行う。ただし、再生速度変更処理は、目標数と実際のパケット格納数との差分の遷移に対してヒステリシスを持たせて実行される。
【０１６７】
この処理は、図５に示すグラフのａ〜ｇ点に対応する処理となる。
【０１６８】
高速再生モードにおける再生制御は、［メモリ格納データ数−目標格納データ数］が０よりも大きい場合において実行される。
【０１６９】
先に図５を参照して説明したように、再生速度変更処理は、目標格納データ数とメモリ格納データ数との差分の遷移に対してヒステリシスを持たせて実行される。
【０１７０】
例えば、図５を参照して説明した具体例では、［メモリ格納データ数−目標格納データ数］の上昇が２度、連続して検出された場合に再生速度を上昇させる。また、［メモリ格納データ数−目標格納データ数］の下降が２度、連続して検出された場合に、再生速度を低下させる。
【０１７１】
ただし、再生速度の上限値を設定し、上限値以上の高速での再生は実行しない。図５に示す例では、再生速度の上限値は、通常再生速度の１０１％としている。
【０１７２】
［メモリ格納データ数−目標格納データ数］が０より小さい場合、又は、メモリ格納データ数が目標格納データ数より少ない場合、低速再生モードで再生制御を行う。ただし、再生速度は、目標数と実際の格納数との差分の遷移に対してヒステリシスを持たせて変更される。
【０１７３】
この処理は、図５に示すグラフのａ、ｈ〜ｊ点に対応する処理となる。
【０１７４】
低速再生モードにおける再生制御は、［メモリ格納データ数−目標格納データ数］が０より小さい場合において実行される。
【０１７５】
図５を参照して説明したように、再生速度は、目標格納データ数とメモリ格納データ数との差分の遷移に対してヒステリシスを持たせて変更される。
【０１７６】
図５を参照して説明した具体例では、［メモリ格納データ数−目標格納データ数］の下降が２度、連続して検出された場合に、再生速度を低下させる。また、［メモリ格納データ数−目標格納データ数］の上昇が２度、連続して検出された場合に、再生速度を上昇させる。
【０１７７】
ただし、再生速度の下限値を設定し、下限値以下の低速での再生は実行しない。図５に示す例では、再生速度の下限値は、通常再生速度の９９％としている。
【０１７８】
メモリ格納データ数監視部１０３は、このように、上記の（処理４）において、［メモリ格納データ数−目標格納データ数］に基づいて再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３を生成して、再生制御部１０４に出力する。
【０１７９】
先に説明した例では、メモリ格納データ数は２秒ごとに更新されるので、［メモリ格納データ数−目標格納データ数］も２秒ごとに更新する。
【０１８０】
メモリ格納データ数監視部１０３は、上記の（処理４）において、２秒ごとに更新される［メモリ格納データ数−目標格納データ数］に基づいて、２秒ごとに再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３を生成して、再生制御部１０４に出力する。
【０１８１】
図５を参照して説明したように、再生速度の変更処理は、［メモリ格納データ数−目標格納データ数］の変化の推移に対してヒステリシスを持たせて実行される。
【０１８２】
なお、再生制御部１０４に対して出力する再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３は、図５に示す例では、以下の４つの再生速度のいずれか１つでの再生を実行させるための制御情報となる。
【０１８３】
（１）通常再生速度＝１００％（図５のａ，ｂ，ｈの各点）
（２）高速再生＝１００．５％（図５のｃ，ｄ，ｇの各点）
（３）最高速再生＝１０１％（図５のｅ，ｆの各点）
（４）低速再生＝９９％（図５のｉ，ｊの各点）
【０１８４】
メモリ格納データ数監視部１０３は、上記の（処理４）において、２秒ごとに更新される［メモリ格納データ数−目標格納データ数］に基づいて、図５に示す遷移図のａ〜ｉのどの位置に対応するかを判断する。
【０１８５】
メモリ格納データ数監視部１０３は、判断位置に対応する再生速度（上記の（１）〜（４）のいずれか１つ）を取得し、取得した再生速度で再生を実行させるための再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）１２３を生成して、再生制御部１０４に出力する。
【０１８６】
［５．音声データ処理部の実行する再生速度制御処理のシーケンスについて］
次に、図６に示すフローチャートを参照して、音声データ処理部８３の実行する再生速度制御シーケンスについて説明する。
【０１８７】
図６に示すフローは、例えばクライアント２０の制御部の制御の下、記憶部に格納
されたプログラムに従って処理を実行することで行われる。
【０１８８】
以下、図６に示すフローの各ステップの処理について、順次、説明する。
【０１８９】
（ステップＳ１０１）
まず、音声データ処理部８３は、受信する音声パケットのパケット受信間隔のばらつきを検出する。
【０１９０】
この処理は、パケット受信状況監視部１０２の実行する処理である。
【０１９１】
パケット受信状況監視部１０２は、サーバ３０から受信する音声データを格納するパケットの受信間隔を検出する。
【０１９２】
サーバ３０は、所定間隔で音声パケットの送信を行うが、ネットワークの混雑状況等により、クライアント２０が受信する音声パケットの受信間隔は均一とはならず、揺らぎ、いわゆるジッタが発生する。
【０１９３】
パケット受信状況監視部１０２は、音声データを格納する各パケットの受信間隔のばらつきを算出する。
【０１９４】
なお、前述したように、ばらつきの指標値として、例えば音声データを格納するパケットの受信間隔の標準偏差を用いることが可能である。
【０１９５】
標準偏差を算出する場合、パケット受信状況監視部１０２は、まず、音声データ処理部８３に対して入力された音声データパケットの入力間隔の分散（ｖａｒｉａｎｃｅ）を算出して、算出した分散（ｖａｒｉａｎｃｅ）に基づいて、標準偏差（ｓｔｄＤｅｖ＝ｓｑｒｔ（ｖａｒｉａｎｃｅ））を算出する。
【０１９６】
なお、ばらつきの指標値は、標準偏差に限らず、その他の値を用いてもよい。
【０１９７】
例えば、パケット受信間隔の平均値より長い受信間隔の値を用いることが可能である。
【０１９８】
（ステップＳ１０２）
次に、音声データ処理部８３は、検出したばらつきに基づいてメモリの目標格納データ数を算出する。ばらつきが大きい場合は、大きな目標数を設定し、ばらつきが小さい場合は、小さな目標数を設定する。
【０１９９】
この処理も、パケット受信状況監視部１０２の処理である。パケット受信状況監視部１０２は、通信部５２が受信する音声データを格納するパケットの受信間隔を検出して、検出したパケット受信間隔に応じて、音声データ格納メモリ１０１の目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）を算出してメモリ格納データ数監視部１０３に出力する。
【０２００】
例えば、ステップＳ１０１において、パケット受信間隔のばらつきとして標準偏差（ｓｔｄＤｅｖ＝ｓｑｒｔ（ｖａｒｉａｎｃｅ））を算出した場合、目標格納データ数１２２は、先に説明した（３）に従って算出することができる。
【０２０１】
すなわち、目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２は、目標格納データ数＝３＋ｆｌｏｏｒ（ｓｔｄＤｅｖ）・・・（式３）で示される。
【０２０２】
上記式（３）に基づいて目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２を算出してメモリ格納データ数監視部１０３に出力する。
【０２０３】
（ステップＳ１０３）
次に、音声データ処理部８３は、ステップＳ１０３において、目標格納データ数と実際のメモリ格納データ数との差分を算出する。
【０２０４】
この処理は、メモリ格納データ数監視部１０３の実行する処理である。
【０２０５】
メモリ格納データ数監視部１０３は、メモリ格納データ数（ｃｕｒｒｅｎｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２１を、定期的（例えば２秒ごと）に検出し、パケット受信状況監視部１０２から入力する目標格納データ数（ｔａｒｇｅｔ  ｂｕｆｆｅｒ  ｎｕｍｂｅｒ）１２２からの差分を算出する。
【０２０６】
すなわち、定期的に、［メモリ格納データ数−目標格納データ数］を算出する。
【０２０７】
なお、この算出値は、図５に示すグラフの横軸に相当する。
【０２０８】
（ステップＳ１０４）
メモリ格納データ数監視部１０３は、メモリ格納データ数が目標格納データ数より少ないか、目標格納データ数より多いかを判定する。
【０２０９】
すなわち、ステップＳ１０３において算出された［メモリ格納データ数−目標格納データ数］の差分値が、正の値か、負の値か、又は０であるかを判定する。
【０２１０】
メモリ格納データ数が目標格納データ数に一致する場合は、処理はステップＳ１０５に進む。
【０２１１】
メモリ格納データ数が目標格納データ数より少ない場合は、処理はステップＳ１０６に進む。
【０２１２】
メモリ格納データ数が目標格納データ数より多い場合は、処理はステップＳ１０７に進む。
【０２１３】
ステップＳ１０５〜Ｓ１０７の処理は、再生制御部１０４がメモリ格納データ数監視部１０３から出力される再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）に基づいて実行する処理である。
【０２１４】
（ステップＳ１０５）
ステップＳ１０４の判定処理において、メモリ格納データ数が目標格納データ数に一致すると判定された場合は、処理はステップＳ１０５に進む。
【０２１５】
ステップＳ１０５では、現在の再生速度をそのまま維持する再生速度制御を実行する。
【０２１６】
これは、メモリ格納データ数監視部１０３から出力される再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）に基づいて実行される処理である。
【０２１７】
メモリ格納データ数監視部１０３は、［メモリ格納データ数−目標格納データ数］が０の場合、現在の再生速度をそのまま維持させる再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）を生成して再生制御部１０４に出力する。
【０２１８】
再生制御部１０４は、この再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）に基づいて、現在の再生速度をそのまま維持する再生速度制御を実行する。
【０２１９】
この処理は、図５に示すグラフのａ点に対応する処理となる。
【０２２０】
（ステップＳ１０６）
ステップＳ１０４の判定処理において、メモリ格納データ数が目標格納データ数より少ないと判断した場合は、処理はステップＳ１０６に進む。
【０２２１】
ステップＳ１０６では、低速再生モードで再生制御を行う。ただし、再生速度は、目標数と実際のパケットの格納数との差分の遷移に対してヒステリシスを持たせて変更される。
【０２２２】
これは、再生制御部１０４が、メモリ格納データ数監視部１０３から出力される再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）に基づいて実行する処理である。
【０２２３】
この処理は、図５に示すグラフのｈ〜ｊ点に対応する処理となる。
【０２２４】
先に図５を参照して説明したように、再生速度は、目標格納データ数とメモリ格納データ数との差分の遷移に対してヒステリシスを持たせて変更される。
【０２２５】
例えば、図５を参照して説明した具体例では、［メモリ格納データ数−目標格納データ数］の下降が２度、連続して検出された場合に、再生速度を低下させる。また、［メモリ格納データ数−目標格納データ数］の上昇が２度、連続して検出された場合に、再生速度を上昇させる。
【０２２６】
ただし、再生速度の下限値を設定し、下限値以下の低速での再生は実行しない。図５に示す例では、再生速度の下限値は、通常再生速度の９９％としている。
【０２２７】
（ステップＳ１０７）
ステップＳ１０４の判定処理において、メモリ格納データ数が目標格納データ数より多いと判断された場合は、ステップＳ１０７に進む。
【０２２８】
ステップＳ１０７では、高速再生モードで再生制御を行う。ただし、再生速度は、目標数と実際のパケットの格納数との差分の遷移に対してヒステリシスを持たせて変更される。
【０２２９】
これは、再生制御部１０４が、メモリ格納データ数監視部１０３から出力される再生速度制御情報（ｓｐｅｅｄ  ｃｏｎｔｒｏｌ）に基づいて実行する処理である。
【０２３０】
この処理は、図５に示すグラフのｂ〜ｇ点に対応する処理となる。
【０２３１】
高速再生モードにおける再生制御は、［メモリ格納データ数−目標格納データ数］が０より大きい場合において実行される再生制御である。
【０２３２】
例えば、図５を参照して説明した具体例では、［メモリ格納データ数−目標格納データ数］の上昇が２度、連続して検出された場合に再生速度を上昇させる。また、［メモリ格納データ数−目標格納データ数］の下降が２度、連続して検出された場合に、再生速度を低下させる。
【０２３３】
ただし、再生速度の上限値を設定し、上限値以上の高速での再生は実行しない。図５に示す例では、再生速度の上限値は、通常再生速度の１０１％としている。
【０２３４】
このようにして、音声再生速度の制御が実行される。
【０２３５】
本開示の処理では、パケット受信間隔に応じてメモリ格納データ数を動的に変更し、目標数と実際のパケットの格納数との差分に応じて、再生速度の変更処理を実行する。
【０２３６】
また、再生速度の変更処理は、目標数と実際の格納数との差分の遷移に対してヒステレリシスを与えることにより実行する。
【０２３７】
このような処理を行なうことで、視聴者に違和感を与えない自然な音声再生が可能となり、メモリの格納パケットの不足による音声途切れの発生可能性も低減することが可能となる。
【０２３８】
［６．画像データ処理部の実行する画像データの再生制御処理例について］
次にクライアント２０において実行する画像再生制御処理について説明する。
【０２３９】
図７は、クライアント２０の画像データ処理部８２の構成例を示す図である。
【０２４０】
図７に示すように、画像データ処理部８２は、画像データ格納メモリ２０１、パケット受信状況監視部２０２、メモリ格納データ数監視部２０３、再生制御部２０４を有する。再生制御部２０４は例えばＬＣＤ等のディスプレイからなる出力部２０５に対する画像出力を行う。なお、再生制御部２０４とディスプレイ等の出力部２０５は、例えばＨＤＭＩケーブルによって接続される。
【０２４１】
画像データ格納メモリ２０１は、サーバ３０から受信するパケットを格納するメモリであり、パケット分離部８１によって選択された画像データを格納した画像パケットを順次、格納する。
【０２４２】
図に示すＰ１，Ｐ２，・・・Ｐｎは、画像パケットを示している。
【０２４３】
これらの各パケットの各々には再生用画像データが格納されている。
【０２４４】
パケット受信状況監視部２０２は、サーバ３０から受信する画像データを格納するパケットの受信間隔を検出する。
【０２４５】
サーバ３０は、所定間隔で画像パケットの送信を行うが、ネットワークの混雑状況等により、クライアント２０が受信する画像パケットの受信間隔は均一とはならず、揺らぎ、いわゆるジッタが発生する。
【０２４６】
パケット受信状況監視部２０２は、画像データを格納する各パケットの受信間隔を検出して、検出したパケット受信間隔に応じて、目標位相オフセット（ｔａｒｇｅｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２２を算出して位相オフセット監視部２０３に出力する。
【０２４７】
ここで、位相オフセット（ｐｈａｓｅ  ｏｆｆｓｅｔ）とは、サーバ３０の垂直同期信号（Ｖｓｙｎｃ）と、クライアント２０の垂直同期信号（Ｖｓｙｎｃ）との差分である。
【０２４８】
図８を参照して位相オフセットについて説明する。
【０２４９】
図８は、遅延の少ない場合の画像データの送受信シーケンスの例を示す図である。
【０２５０】
図８には、以下の２つの時系列シーケンスを時間軸（ｔ）に従って示している。
【０２５１】
（Ａ）サーバ送信画像フレーム
（Ｂ）クライアント再生画像フレーム
【０２５２】
（Ａ），（Ｂ）に示す１，２，３，４，の数値は画像フレーム番号を示している。具体的には、１は画像フレーム１であり、２は画像フレーム２である。これらフレームの各々は動画像（ｖｉｄｅｏ）を構成する１つの画像フレームである。
【０２５３】
図８において、（Ａ）は、サーバ３０のサーバクロックに従った垂直同期信号（Ｖｓｙｎｃ）の出力タイミング毎（ｔ１（ｓ），ｔ２（ｓ），ｔ３（ｓ），ｔ４（ｓ）・・・）に各画像フレーム１，２，３，４・・・が送信されることを示している。
【０２５４】
この送信画像フレーム１，２，３，４は、ネットワーク介してクライアント２０が受信する。
【０２５５】
クライアント２０の画像フレーム１，２，３，４・・・の受信タイミングは、（Ａ）サーバ送信画像フレームの各フレーム１，２，３，４の矢印の先端によって示される。これらは、クライアント２０のＶＳｙｎｃを示す時間軸（ｔ）に示す矢印の先端位置となる。
【０２５６】
クライアント２０は、サーバ３０から受信した画像フレーム１，２，３，４をクライアントのクロックに従って生成する垂直同期信号（Ｖｓｙｎｃ）に基づいて、表示部に出力する。
【０２５７】
（Ｂ）クライアント再生画像フレームに示すように画像フレーム１，２，３，４が順次、再生される。
【０２５８】
例えば６０ｆｐｓの動画の場合、各画像フレーム１，２，３，４の表示間隔はいずれも１／６０ｓｅｃである。
【０２５９】
クライアント２０のＶｓｙｎｃの時間軸に示す垂直同期信号（Ｖｓｙｎｃ）の生成タイミング毎（ｔ１（ｃ），ｔ２（ｃ），ｔ３（ｃ），ｔ４（ｃ）・・・）に、各画像フレーム１，２，３，４は表示される。
【０２６０】
位相オフセット（ｐｈａｓｅ  ｏｆｆｓｅｔ）とは、サーバ３０の垂直同期信号（Ｖｓｙｎｃ）と、クライアント２０の垂直同期信号（Ｖｓｙｎｃ）との差分である。
【０２６１】
図８に示す例では、ｔ１（ｃ）とｔ１（ｓ）の差が位相差オフセットに相当する。
【０２６２】
図７に示す画像データ処理部８２のパケット受信状況監視部２０２は、画像データを格納する各パケットの受信間隔を検出して、検出したパケット受信間隔に応じて、目標位相オフセット（ｔａｒｇｅｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２２を算出して位相オフセット監視部２０３に出力する。
【０２６３】
目標位相オフセット（ｔａｒｇｅｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２２は、画像データを格納する各パケットの受信間隔のばらつきが大きい場合は大きくし、画像データを格納する各パケットの受信間隔のばらつきが小さい場合は小さくする。
【０２６４】
パケット受信状況監視部２０２は、このように設定された目標位相オフセット（ｔａｒｇｅｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２２を、位相オフセット監視部２０３に出力する。
【０２６５】
位相オフセット監視部２０３は、画像データ格納メモリ２０１に現在格納されている画像パケットの実位相オフセット（ｃｕｒｒｅｎｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２１を取得する。
【０２６６】
この実位相オフセット２２１は、受信画像フレームのメタデータとして設定された、サーバ３０の垂直同期信号（Ｓｅｒｖｅｒ  ｖｓｙｎｃ）の時間情報から取得される。
【０２６７】
位相オフセット監視部２０３は、以下の２つの種類のデータに基づいて、位相制御情報（ｐｈａｓｅ  ｃｏｎｔｒｏｌ）２２３を生成する：以下の２つの種類のデータは、（ａ）実位相オフセット（ｃｕｒｒｅｎｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２１と、（ｂ）目標位相オフセット（ｔａｒｇｅｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２２とである。位相制御情報（ｐｈａｓｅ  ｃｏｎｔｒｏｌ）２２３は、再生制御部２０４に出力される。
【０２６８】
再生制御部２０４は、画像データ格納メモリ２０１から順次、画像パケットを取得してデコード等の処理を実行する。その結果は、ディスプレイ等の出力部２０５に出力される。
【０２６９】
再生制御部２０４は、この画像再生処理において、メモリ格納データ監視部２０３から入力する位相制御情報（ｐｈａｓｅ  ｃｏｎｔｒｏｌ）２２３に基づいて設定された、最適な位相オフセットを用いて画像再生処理を行なう。
【０２７０】
具体的には、パケット受信間隔のばらつきが小さい（ジッタが小）場合は、位相オフセットを小さくする。
【０２７１】
パケット受信間隔のばらつきが大きい（ジッタが大）場合は、位相オフセットを大きくする。
【０２７２】
このような位相オフセットの制御により画像再生処理を実行する。
【０２７３】
図８に示す例は、パケット受信間隔のばらつきが小さい（ジッタが小）場合に実行される処理例である。
【０２７４】
このように、パケット受信間隔のばらつきが小さい（ジッタが小）場合は、小さい位相オフセットを用いて画像再生を行なう。このように、小さく位相オフセットを設定することで、より小さな再生遅延での再生が実現される。
【０２７５】
一方、図９に示す例は、パケット受信間隔のばらつきが大きい（ジッタが大）場合に実行される処理例である。
【０２７６】
パケット受信間隔のばらつきが大きい（ジッタが大）場合は、大きな位相オフセットを用いて画像再生を行なう。このように、大きな位相オフセットを設定すると再生遅延は大きくなる。しかしながら、大きな遅延の場合、又は、例えば、画像フレーム４の場合のようにサーバの送信からクライアント受信までの時間が長くなる場合でも、クライアントの同期信号（Ｖｓｙｎｃ）の出力のタイミング（ｔ５（ｃ））で遅れなく画像フレーム４を出力することが可能となる。結果として、画像の再生途切れを発生させることのないスムーズな画像再生が可能となる。
【０２７７】
なお、この画像再生処理では、サーバ３０のサーバクロックに基づく垂直同期信号（Ｓｅｒｖｅｒ  ｖｓｙｎｃ）と、クライアント２０のクライアントクロックに基づく垂直同期信号（Ｓｅｒｖｅｒ  ｖｓｙｎｃ）の両者を考慮して行われる。したがって、サーバ３０とクライアント２０との間のクロックのずれを補正する効果も得ることになる。
【０２７８】
［７．画像データ処理部の実行する再生制御処理のシーケンスについて］
次に、図１０に示すフローチャートを参照して、画像データ処理部８２の実行する再生制御シーケンスについて説明する。
【０２７９】
図１０に示すフローは、例えばクライアント２０の制御部の制御の下、記憶部に格納されたプログラムに従った処理を実行することで行われる。
【０２８０】
以下、図１０に示すフローの各ステップの処理について、順次、説明する。
【０２８１】
（ステップＳ２０１）
まず、画像データ処理部８２は、受信する画像パケットのパケット受信間隔のばらつきを検出する。
【０２８２】
この処理は、パケット受信状況監視部２０２の実行する処理である。
【０２８３】
パケット受信状況監視部２０２は、サーバ３０から受信する画像データを格納するパケットの受信間隔を検出する。
【０２８４】
サーバ３０は、所定間隔で画像パケットの送信を行うが、ネットワークの混雑状況等により、クライアント２０が受信する画像パケットの受信間隔は均一とはならず、揺らぎ、いわゆるジッタが発生する。
【０２８５】
パケット受信状況監視部２０２は、画像データを格納する各パケットの受信間隔のばらつきを算出する。
【０２８６】
なお、ばらつきの指標値として、例えば、画像データを格納するパケットの受信間隔の標準偏差を用いることが可能である。
【０２８７】
標準偏差を算出する場合、パケット受信状況監視部２０２は、まず、画像データ処理部８２に対して入力された画像データパケットの入力間隔の分散（ｖａｒｉａｎｃｅ）を算出して、算出した分散（ｖａｒｉａｎｃｅ）に基づいて、標準偏差（ｓｔｄＤｅｖ＝ｓｑｒｔ（ｖａｒｉａｎｃｅ））を算出する。
【０２８８】
なお、ばらつきの指標値は、標準偏差に限らず、その他の値を用いてもよい。
【０２８９】
例えば、パケット受信間隔の平均値より長い受信間隔の値を用いることも可能である。
【０２９０】
（ステップＳ２０２）
次に、画像データ処理部８２は、検出したばらつきに基づいて目標位相オフセットを算出する。
【０２９１】
この処理も、パケット受信状況監視部２０２が実施する処理である。パケット受信状況監視部２０２は、通信部５２が受信する、画像データを格納するパケットのばらつきに基づいて目標位相オフセット（ｔａｒｇｅｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２２を算出して位相オフセット監視部２０３に出力する。
【０２９２】
目標位相オフセット（ｔａｒｇｅｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２２は、画像データを格納する各パケットの受信間隔のばらつきが大きい場合は大きくし、画像データを格納する各パケットの受信間隔のばらつきが小さい場合は小さくする。
【０２９３】
パケット受信状況監視部２０２は、このように設定された目標位相オフセット（ｔａｒｇｅｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）を位相オフセット監視部２０３に出力する。
【０２９４】
（ステップＳ２０３〜Ｓ２０５）
ステップＳ２０３〜Ｓ２０５の処理は、位相オフセット監視部２０３と再生制御部２０４の実行する処理である。
【０２９５】
位相オフセット監視部２０３は、画像データ格納メモリ２０１に現在格納されている画像パケットの実位相オフセット（ｃｕｒｒｅｎｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２１を取得する。
【０２９６】
この実位相オフセット２２１は、受信画像フレームのメタデータとして設定された、サーバ３０の垂直同期信号（Ｓｅｒｖｅｒ  ｖｓｙｎｃ）の時間情報から取得される。
【０２９７】
位相オフセット監視部２０３は、以下の２つの種類のデータに基づいて、位相制御情報（ｐｈａｓｅｃｏｎｔｒｏｌ）２２３を生成して、再生制御部２０４に出力する：以下の２つの種類のデータは、（ａ）実位相オフセット（ｃｕｒｒｅｎｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２１と、（ｂ）目標位相オフセット（ｔａｒｇｅｔ  ｐｈａｓｅ  ｏｆｆｓｅｔ）２２２とである。
【０２９８】
再生制御部２０４は、画像データ格納メモリ２０１から順次、画像パケットを取得してデコード等の処理を実行する。その結果は、ディスプレイ等の出力部２０５に出力される。
【０２９９】
再生制御部２０４は、この画像再生処理において、メモリ格納データ監視部２０３から入力する位相制御情報（ｐｈａｓｅ  ｃｏｎｔｒｏｌ）２２３に基づいて設定された、最適な位相オフセットを用いて画像再生処理を行なう。
【０３００】
具体的には、パケット受信間隔のばらつきが小さい（ジッタが小）場合は、処理はステップＳ２０３からステップＳ２０４に進み、位相オフセット（サーバのＶｓｙｎｃとクライアントのＶｓｙｎｃの差分）を小さくした再生制御を実行する。
【０３０１】
これは、図８を参照して説明した処理例に相当する。
【０３０２】
一方、パケット受信間隔のばらつきが大きい（ジッタが大）場合は、処理はステップＳ２０３からスップＳ２０５に進み、位相オフセット（サーバのＶｓｙｎｃとクライアントのＶｓｙｎｃの差分）を大きくした再生制御を実行する。
【０３０３】
これは、図９を参照して説明した処理例に相当する。
【０３０４】
このような位相オフセットの制御により画像再生処理を実行する。
【０３０５】
このような画像再生を行なうことで、ジッタが小さい場合は小さな位相オフセットが設定されるので、再生遅延の少ない再生処理が実現される。
【０３０６】
一方、ジッタが大きい場合は、大きな位相オフセットが設定されるので、大きな遅延ののちにパケットを受信した場合にも画像途切れを発生させることのないスムーズな再生が実現される。
【０３０７】
［８．クライアントのハードウェア構成例について］
次に、クライアントとしての通信装置の装置構成例について、図１１を参照して説明する。図１１は、クライアントのハードウェア構成例を示している。
【０３０８】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）４０１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）４０２、または記憶部４０８に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述した実施例において説明したシーケンスに従った処理を実行する。ＣＰＵ４０１が実行するプログラムやデータは、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）４０３に記憶される。これらのＣＰＵ４０１、ＲＯＭ４０２、およびＲＡＭ４０３は、バス４０４により相互に接続されている。
【０３０９】
ＣＰＵ４０１はバス４０４を介して入出力インタフェース４０５に接続される。さらに、各種スイッチ、キーボード、マウス、マイクロホンなどよりなる入力部４０６、及び、ディスプレイ、スピーカなどよりなる出力部４０７は、入出力インタフェース４０５に接続される。ＣＰＵ４０１は、入力部４０６から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部４０７に出力する。
【０３１０】
入出力インタフェース４０５に接続されている記憶部４０８は、例えばハードディスク等からなり、ＣＰＵ４０１が実行するプログラムや各種のデータを記憶する。通信部４０９は、インターネットやローカルエリアネットワーク、放送波などの通信路を介したデータ通信の送受信部として機能し、外部の装置と通信する。
【０３１１】
入出力インタフェース４０５に接続されているドライブ４１０は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア４１１を駆動し、データの記録あるいは読み取りを実行する。
【０３１２】
なお、データの符号化あるいは復号は、データ処理部としてのＣＰＵ４０１の処理として実行可能であるが、符号化処理あるいは復号処理を実行するための専用ハードウェアとしてのコーデックを備えた構成としてもよい。
【０３１３】
［９．本開示の構成のまとめ］
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０３１４】
なお、本明細書において開示した技術は、以下のような構成をとることができる。
【０３１５】
（１）通信部の受信するパケットの受信間隔を監視し、前記パケットの受信間隔のばらつき度合いに基づいて、再生制御処理用パラメータである目標値を生成して出力するパケット受信状況監視部と、前記パケット受信状況監視部の生成する目標値に応じた再生制御を実行する再生制御部とを含み、前記再生制御部は、前記目標値に応じた音声再生速度の制御、または画像フレームの再生制御を実行する通信装置。
（２）前記パケット受信状況監視部は、前記通信部の受信する音声パケットの受信間隔のばらつき度合いに基づいて、メモリに格納する音声パケットの目標数である目標格納データ数を算出し、前記再生制御部は、前記目標格納データ数と、前記メモリに実際に格納された音声パケットの数であるメモリ格納データ数との差分に応じて音声再生速度の再生制御を実行する、（１）に記載の通信装置。
（３）前記パケット受信状況監視部は、前記通信部の受信する前記音声パケットの受信間隔の前記ばらつき度合いが大きい場合、前記目標格納データ数を大きく設定し、前記ばらつき度合いが小さい場合、前記目標格納データ数を小さく設定する、（２）に記載の通信装置。
（４）前記再生制御部は、前記メモリ格納データ数が前記目標格納データ数より少ない場合、通常再生速度より遅い低速再生モードでの再生制御を実行し、前記メモリ格納データ数が前記目標格納データ数より多い場合、前記通常再生速度より早い高速再生モードでの再生制御を実行する、（２）または（３）に記載の通信装置。
（５）前記再生制御部は、音声再生速度を、前記メモリ格納データ数と前記目標格納データ数との差分の遷移に対してヒステリシスを持たせて変更する（２）〜（４）のいずれか１つに記載の通信装置。
（６）前記再生制御部は、前記メモリ格納データ数と前記目標格納データ数との差分値が、連続して上昇している場合には、前記音声再生速度を上昇させ、前記メモリ格納データ数と前記目標格納データ数との差分値が、連続して下降している場合には、前記音声再生速度を低下させるように音声再生速度制御処理を実行する、（２）〜（５）のいずれか１つに記載の通信装置。
（７）前記パケット受信状況監視部は、前記通信部の受信する音声パケットの前記受信間隔のばらつき度合いを、前記音声パケットの前記受信間隔の標準偏差として算出する、（２）〜（６）のいずれか１つに記載の通信装置。
（８）前記パケット受信状況監視部は、前記音声パケットの前記受信間隔の前記標準偏差が大きい場合には、前記目標格納データ数を大きく設定し、前記受信間隔の前記標準偏差が小さい場合には、前記目標格納データ数を小さく設定する、（７）に記載の通信装置。
（９）前記メモリ格納データ数は、所定期間に前記メモリに格納されるパケット数の平均値である、（２）〜（８）のいずれか１つに記載の通信装置。
（１０）前記パケット受信状況監視部は、前記通信部の受信する画像パケットの前記受信間隔の前記ばらつき度合いに基づいて、前記パケットを送信するサーバのサーバ垂直同期信号と、クライアントのクライアント垂直同期信号との差分に相当する位相オフセットの目標値となる目標位相オフセットを算出し、前記再生制御部は、前記目標位相オフセットに応じて、画像フレームの再生タイミングを決定することにより画像再生制御を実行する、（１）に記載の通信装置。
（１１）前記パケット受信状況監視部は、前記通信部の受信する前記画像パケットの前記受信間隔の前記ばらつき度合いが大きい場合には、前記目標位相オフセットを大きく設定し、前記ばらつき度合いが小さい場合には、前記目標位相オフセットを小さく設定する、（１０）に記載の通信装置。
（１２）前記再生制御部は、前記画像パケットの前記受信間隔の前記ばらつき度合いが小さく、且つ、前記目標位相オフセットが小さく設定されている場合には、前記位相オフセットを小さく設定して再生遅延の少ない画像再生を実行する、（１０）または（１１）に記載の通信装置。
（１３）前記再生制御部は、前記画像パケットの前記受信間隔の前記ばらつき度合いが大きく、且つ、前記目標位相オフセットが大きく設定されている場合には、前記位相オフセットを大きく設定してパケット遅延による再生途切れの発生可能性を低減した画像再生を実行する、（１０）〜（１２）のいずれか１つに記載の通信装置。
（１４）通信装置において実行するデータ処理方法であって、パケット受信状況監視部が、通信部の受信するパケットの受信間隔を監視し、前記パケットの前記受信間隔のばらつき度合いに基づいて、再生制御処理用パラメータである目標値を生成して出力し、再生制御部が、前記パケット受信状況監視部の生成する前記目標値に応じた再生制御を実行することを含み、前記再生制御においては、前記目標値に応じた音声再生速度の制御、または画像フレームの再生制御を実行する、データ処理方法。
【０３１６】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０３１７】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０３１８】
以上、説明したように、本開示の一実施例の構成によれば、パケット受信間隔のばらつきを監視し、ばらつきに応じた最適な再生制御を実行する装置、および方法が実現される。
【０３１９】
具体的には、パケット受信状況監視部が、音声パケットの受信間隔のばらつきに基づいて、メモリに格納する音声パケットの目標数である目標格納データ数を算出し、再生制御部は、目標格納データ数と、メモリ格納データ数との差分に応じて音声再生速度を制御する。メモリ格納データ数が目標格納データ数より少ない場合、再生制御は通常再生速度より遅い速度での低速再生モードで実行され、メモリ格納データ数が前記目標格納データ数より多い場合、再生制御は通常再生速度より早い速度での高速再生モードで実行される。再生速度の変更処理は、メモリ格納データ数と目標格納データ数との差分の遷移に対してヒステリシスを持たせて実行される。
【０３２０】
本構成により、パケット受信間隔のばらつきを監視し、ばらつきに応じた最適な再生制御を実行する装置、および方法が実現される。
【符号の説明】
【０３２１】
１０    通信システム
２０    クライアント
２１    ＴＶ
２２    ＰＣ
２３    携帯端末
３０    サーバ
５１    データ処理部
５２    通信部
５３    記憶部
５４    入力部
５５    出力部
７１    データ処理部
７２    通信部
７３    記憶部
８１    パケット分離部
８２    画像データ処理部
８３    音声データ処理部
８４    制御部
１０１    音声データ格納メモリ
１０２    パケット受信状況監視部
１０３    メモリ格納データ監視部
１０４    再生制御部
１０５    出力部
２０１    画像データ格納メモリ
２０２    パケット受信状況監視部
２０３    位相オフセット監視部
２０４    再生制御部
３０５    出力部
４０１    ＣＰＵ
４０２    ＲＯＭ
４０３    ＲＡＭ
４０４    バス
４０５    入出力インタフェース
４０６    入力部
４０７    出力部
４０８    記憶部
４０９    通信部
４１０    ドライブ
４１１    リムーバブルメディア
【図１】
0006513704.tif 000002
【図２】
0006513704.tif 000003
【図３】
0006513704.tif 000004
【図４】
0006513704.tif 000005
【図５】
0006513704.tif 000006
【図６】
0006513704.tif 000007
【図７】
0006513704.tif 000008
【図８】
0006513704.tif 000009
【図９】
0006513704.tif 000010
【図１０】
0006513704.tif 000011
【図１１】
0006513704.tif 000012