(57)【要約】【課題】通信ネットワークにおける伝送時間の揺らぎがあっても再生遅延することなく、かつ、ビデオやオーディオなどのストリームデータの品質を劣化させることなく再生できるストリームデータ受信再生装置を提供する。【解決手段】本発明に拠るストリームデータ受信再生装置は、受信したストリームデータに含まれる符号化データの各々を順次蓄積するバッファと、前記バッファに蓄積されている符号化データを読み出し間隔をもって順次読み出してこれらを映像音声データに復号する復号部と、前記映像音声データを再生出力する再生出力部とに加えて、所定周期毎に当該周期内における前記バッファ内のデータ残量の最小値を検出して当該最小値に基づいて前記読出間隔を変更するデータ読出し速度制御部を含む。【選択図】図１
2008199361.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークからストリームデータを受信するデータ受信部と、
前記データ受信部が受信したストリームデータに含まれる符号化データの各々を順次蓄積するバッファと、
前記バッファに蓄積されている符号化データの各々を読出間隔をもって順次読み出して、これらを映像音声データに復号する復号部と、
前記映像音声データを再生出力する再生出力部と、を含むストリームデータ受信再生装置であって、
所定周期毎に当該周期内における前記バッファ内のデータ残量の最小値を検出して当該最小値に基づいて前記読出間隔を変更するデータ読出し速度制御部を含むことを特徴とするストリームデータ受信再生装置。
【請求項２】
前記データ読出し速度制御部は、前記最小値が予め定められた所定値よりも大きい場合に前記復号部の読出間隔をその現在値よりも短縮することを特徴とする請求項1に記載のストリームデータ受信再生装置。
【請求項３】
前記データ読出し速度制御部は、前記最小値が予め定められた所定値よりも小さい場合に前記復号部の読出間隔をその現在値よりも伸長することを特徴とする請求項1に記載のストリームデータ受信再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通信ネットワークを介してビデオやオーディオなどのストリームデータを受信し、これをストリーミング再生するストリームデータ受信再生装置に関する。
【背景技術】
【０００２】
通信ネットワークを介してビデオやオーディオなどのストリームデータを受信して再生する装置は通常、受信したストリームデータを一時的にバッファに蓄積する。通信ネットワークにおけるストリームデータの伝送時間の揺らぎ（ジッタ）などに起因して、受信再生装置におけるこれらの受信タイミングが偏る場合がある。受信するストリームデータの量が短期間で大幅に増加あるいは減少した場合、バッファのオーバーフローやアンダーフローが生じるなどして、再生されるビデオやオーディオの品質が劣化するという問題点がある。
【０００３】
特許文献１に開示されるバッファ制御方法は、過去の一定期間に受信したストリームデータに基づいて当該期間におけるジッタ量を算出し、当該算出したジッタ量に基づいてストリームデータの再生に係る各種バッファ閾値を算出する。更に当該バッファ制御方法は、ジッタバッファの蓄積量に基づいて当該ジッタバッファからストリームデータを出力再生する速度を変更する。すなわち、当該バッファ制御方法は、ジッタ量の大小に応じて適応的に再生速度を調整することを特徴としている。
【０００４】
特許文献２に開示されるストリーミング再生方法は、通信ネットワークから受信したストリームデータをバッファに蓄積するが、ストリームデータの再生を開始するのに最低限必要なストリームデータの蓄積量を再生開始条件の値として定めておき、蓄積量が再生開始条件の値以上になった場合にストリーミングデータの再生を開始する。更に当該ストリーミング再生方法はストリームデータの再生中にバッファのアンダーフローが発生した場合に再生開始条件の値を増加させる一方、再生中に受信バッファのオーバーフローが発生した場合に当該再生開始条件の値を減少させる。すなわち、当該ストリーミング再生方法はバッファのアンダーフローやオーバーフローが発生する度に再生開始条件を変更することを特徴としている。
【特許文献１】特開２００６−０５０４８８号公報
【特許文献２】特開２００２−３３０１３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示されるバッファ制御方法においては、ジッタバッファの蓄積量及びジッタ量が共に大きい場合にはバッファ閾値が大きくなるため、蓄積量が大きいにもかかわらず再生速度が調整されずに再生遅延が解消されない場合がある。また、ジッタバッファの蓄積量が小さくかつジッタ量が大きい場合には、バッファ閾値が大きくなるため、蓄積量が小さいにもかかわらずバッファのアンダーフローの直前になってはじめて再生速度が調整される。これによりアンダーフロー回避のためにストリームデータの再生が停止し、再生品質が劣化する場合がある。この場合には再びバッファにストリームデータが蓄積されても、上記と同様の制御により再生停止を引き起こしてしまう。
【０００６】
特許文献２に開示されるストリーミング再生方法には、再生遅延時間を必要以上に大きくしなければならないという問題点がある。例えば再生開始時間の初期設定値が大きく、かつ、アンダーフローやオーバーフローが発生しない場合、再生開始時間の値が大きいまま維持されることになり、当該値の大きさ分の再生遅延が発生する。別の例として、通信ネットワークにおいて短期的にストリームデータの伝送時間の揺らぎが生じたことにより再生開始時間が大きな値に変更された後、伝送時間の揺らぎが小さいまま安定した場合、再生開始時間は大きな値のまま維持されることになり、結果として再生遅延時間も大きいまま維持される。また、伝送時間の揺らぎが大きい場合、アンダーフローやオーバーフローを数多く発生する可能性があり、この場合には、再生されるビデオやオーディオの品質が劣化するという問題点がある。
【０００７】
本発明は、上記した如き問題点に鑑みてなされたものであって、通信ネットワークにおいてストリームデータの伝送時間の揺らぎがあっても再生遅延することなく、かつ、ビデオやオーディオなどのストリームデータの品質を劣化させることなく再生できるストリームデータ受信再生装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明によるストリームデータ受信再生装置は、通信ネットワークからストリームデータを受信するデータ受信部と、前記データ受信部が受信したストリームデータに含まれる符号化データの各々を順次蓄積するバッファと、前記バッファに蓄積されている符号化データの各々を読出間隔をもって順次読み出して、これらを映像音声データに復号する復号部と、前記映像音声データを再生出力する再生出力部と、を含むストリームデータ受信再生装置であって、所定周期毎に当該周期内における前記バッファ内のデータ残量の最小値を検出して当該最小値に基づいて前記読出間隔を変更するデータ読出し速度制御部を含むことを特徴とする。
【発明を実施するための最良の形態】
【０００９】
以下、本発明に係る実施例について添付の図面を参照しつつ詳細に説明する。
【００１０】
図１は本発明によるストリームデータ受信再生装置３をデータ送信装置１、通信ネットワーク２及び表示部９と共に表すブロック図である。
【００１１】
データ送信装置１は通信ネットワーク２へストリームデータを送信する。ここでのストリームデータは例えばビデオやオーディオなどである。通信ネットワーク２は例えばインターネットなどである。また、通信ネットワーク２の通信状況や通信環境によってはストリームデータの伝送時間に揺らぎが生じる場合がある。
【００１２】
ストリームデータ受信再生装置３は、データ受信部４と、バッファ５と、復号部６と、データ読出し速度制御部７と、再生出力部８とを含む。
【００１３】
データ受信部４はデータ送信装置１が送信したストリームデータを通信ネットワーク２から受信する。
【００１４】
バッファ５はデータ受信部４が受信したストリームデータに含まれる符号化データの各々を順次、蓄積する。通信ネットワーク２においてストリームデータの伝送時間に揺らぎが生じた場合、蓄積する符号化データの量が一時的に変動し過大あるいは過小になる場合がある。
【００１５】
復号部６はバッファ５に蓄積されている符号化データの各々を読出間隔をもって順次、読み出して、これを映像音声データに復号する。平常時の読出間隔は通常、復号部６に予め設定されている。
【００１６】
データ読出し速度制御部７は所定周期毎に当該周期内におけるバッファ５内の符号化データの残量（以下、データ残量と称する）の最小値を検出して、当該最小値に基づいて復号部６の読出間隔を変更する。ここでのデータ残量とは、バッファ５に蓄積されたデータ量から復号部６によってバッファ５から読み出されたデータ量を差し引いた量である。通常、データ読出し速度制御部７は所定値を予め記憶している。
【００１７】
データ読出し速度制御部７は当該最小値が予め定められた所定値よりも大きい場合に復号部６の読出間隔を現在値よりも短縮する。すなわち、現状に比較して短期間に多くの符号化データが読み出される。これにより、通信ネットワーク２におけるストリームデータの伝送時間揺らぎなどに起因してバッファ５内のデータ残量が過大になった場合に、バッファ５内のデータ残量を減少させることができる。
【００１８】
また、データ読出し速度制御部７は当該最小値が予め定められた所定値よりも小さい場合に復号部６の読出間隔を現在値よりも伸長する。すなわち、現状に比較して短期間に読み出される符号化データの量が減少する。これにより、通信ネットワーク２におけるストリームの伝送時間揺らぎなどに起因してバッファ５内のデータ残量が過小になった場合に、バッファ５内のデータ残量を増加させることができる。
【００１９】
再生出力部８は復号部６による復号によって得られた映像音声データを所定の再生タイミングで再生出力する。ここでの再生タイミングとは例えばビデオであれば３３ｍ秒周期などである。表示部９は再生出力部８によって再生出力された映像音声データを表示する。
【００２０】
図２はデータ読出し速度制御部７が所定周期毎に行う、バッファ５内のデータ残量を減少させる場合の処理ルーチンの一例を表すフローチャートである。以下に図２を参照しつつ、データ読出し速度制御部７の処理を説明する。
【００２１】
現在、データ受信部４がストリームデータを受信しており、バッファ５はデータ受信部４が受信したストリームデータに含まれる符号化データの各々を順次、蓄積しているものとする。また、復号部６はバッファ５に蓄積されている符号化データを読出間隔をもって順次、読み出して、これらを映像音声データに復号しているものとする。すなわち、バッファ５に符号化データが順次、蓄積されるのに併行して、これら蓄積された符号化データがバッファ５から復号部６によって順次、読み出されている。バッファ５に蓄積された符号化データの量よりも読み出された符号化データの量が少ない場合、バッファ５には符号化データが残存している。
【００２２】
データ読出し速度制御部７は所定周期Δｔ毎に以下の処理を行う。データ読出し速度制御部７は所定周期Δｔ内におけるバッファ５内のデータ残量の最小値ｍ１を検出して、最小値ｍ１が予め定められた所定値ＴＡよりも大きい場合（Ｓ２１）、復号部６の読出間隔を現在値よりも短縮する（Ｓ２２）。これによりバッファ５から短期間に多くの符号化データが読み出され、バッファ５内のデータ残量は現状に比較して短時間で減少する。バッファ５内のデータ残量が予め定められた所定値ＴＢよりも小さくなった場合（Ｓ２３）、データ読出し速度制御部７は、復号部６の読出間隔を平常時の間隔に戻す（Ｓ２４）。
【００２３】
図３は上記処理によるバッファ５内のデータ残量の減少変化の一例を表す図である。
【００２４】
横軸ｘは時間経過を表す。縦軸ｙはバッファ５内におけるデータ残量を表す。時刻ｔ０〜ｔ１の期間が所定周期Δｔである。データ残量ｍ１は所定周期Δｔ内におけるバッファ５内のデータ残量の最小値である。
【００２５】
データ読出し速度制御部７は時刻ｔ１において、所定周期Δｔ内におけるバッファ５内のデータ残量の最小値がｍ１であることを検出する。データ残量の最小値ｍ１は予め定められた所定値ＴＡよりも大きいため、データ読出し速度制御部７は復号部６の読出間隔を現在値よりも短縮する。例えば読出間隔の現在値が３０ｍ秒である場合に１５ｍ秒に短縮する。これによりバッファ５から短期間に多くの符号化データが読み出され、バッファ５内のデータ残量は時刻ｔ１〜ｔ２の短期間で適正量に減少する。バッファ５内のデータ残量が予め定められた所定値ＴＢよりも小さくなった時刻ｔ２において、データ読出し速度制御部７は、復号部６の読出間隔を平常時の間隔に戻す。
【００２６】
通常、再生出力されずにバッファ５内に残存している符号化データの量（データ残量）が過大である程、ストリームデータの再生遅延が増大する。上記した処理により時刻ｔ１〜ｔ２の短期間でバッファ５内のデータ残量を適正量まで減らすことによって再生遅延を解消できる。したがって、リアルタイム性が重視される用途、例えば、ビデオやオーディオなどのストリームデータのストリーミング再生において、再生遅延が解消され、サービス品質を向上させることができる。
【００２７】
図４はデータ読出し速度制御部７が所定周期毎に行う、バッファ５内のデータ残量を増加させる場合の処理ルーチンの一例を表すフローチャートである。以下に図４を参照しつつ、データ読出し速度制御部７の処理を説明する。
【００２８】
現在、データ受信部４がストリームデータを受信しており、バッファ５はデータ受信部４が受信したストリームデータに含まれる符号化データを順次蓄積しているものとする。また、復号部６はバッファ５に蓄積されている符号化データを読出間隔をもって順次、読み出して、これらを映像音声データに復号しているものとする。すなわち、バッファ５に符号化データが順次、蓄積されるのに併行して、これら蓄積された符号化データがバッファ５から復号部６によって順次、読み出されている。バッファ５に蓄積された符号化データの量よりも読み出された符号化データの量が少ない場合、バッファ５にはデータが残存している。
【００２９】
データ読出し速度制御部７は所定周期Δｔ毎に以下の処理を行う。データ読出し速度制御部７は所定周期Δｔ内におけるバッファ５内のデータ残量の最小値ｍ２を検出して、最小値ｍ２が予め定められた所定値ＴＣよりも小さい場合（Ｓ４１）、復号部６の読出間隔を現在値よりも伸長する（Ｓ４２）。これによりバッファ５から読み出される符号化データの量が短期間の内に減少し、バッファ５内のデータ残量は現状に比較して短時間で増加する。バッファ５内のデータ残量が予め定められた所定値ＴＤよりも大きくなった場合（Ｓ４３）、データ読出し速度制御部７は、復号部６の読出間隔を平常時の間隔に戻す（Ｓ４４）。
【００３０】
図５は上記処理によるバッファ５内のデータ残量の増加変化の一例を表す図である。
【００３１】
横軸ｘは時間経過を表す。縦軸ｙはバッファ５内におけるデータ残量を表す。時刻ｔ３〜ｔ４の期間が所定周期Δｔである。データ残量ｍ２は所定周期Δｔ内におけるバッファ５内のデータ残量の最小値である。
【００３２】
データ読出し速度制御部７は時刻ｔ４において、所定周期Δｔ内におけるバッファ５内のデータ残量の最小値がｍ２であることを検出する。データ残量の最小値ｍ２は予め定められた所定値ＴＣよりも小さいため、データ読出し速度制御部７は復号部６の読出間隔を現在値よりも伸長する。例えば読出間隔の現在値が３０ｍ秒である場合に５０ｍ秒に伸長する。これによりバッファ５から読み出される符号化データの量が短期間の内に減少し、バッファ５内のデータ残量は時刻ｔ４〜ｔ５の短期間で適正量に増加する。バッファ５内のデータ残量が予め定められた所定値ＴＤよりも大きくなった時刻ｔ５において、データ読出し速度制御部７は、復号部６の読出間隔を平常時の間隔に戻す。
【００３３】
通常、バッファ５内に残存している符号化データの量（データ残量）が過小である場合、例えばビデオやオーディオの再生間隔が間延びするなどの再生品質の劣化が生じやすい。上記した処理により時刻ｔ４〜ｔ５の短期間でバッファ５内のデータ残量を適正量まで増やすことによって再生品質の劣化が生じやすい状態から生じ難い状態に移行できる。したがって、リアルタイム性が重視される用途、例えば、ビデオやオーディオなどのストリームデータのストリーミング再生において、再生遅延を必要最小限としつつ、サービス品質を向上させることができる。
【００３４】
上述した実施例はバッファ５内のデータ残量が過大である場合に、復号部６が短期間で読み出した符号化データを全て復号する場合の例であるが、復号部６はこれら短期間で読み出した符号化データを復号せずに破棄しても良い。この場合には復号部６はデータ読出し速度制御部７より平常間隔で符号化データを読み出すよう指示された時点において符号化データの復号処理を再開すれば上述の実施例と同様の効果が得られる。また、上述した実施例はバッファ５内のデータ残量が過小である場合に、復号部６がバッファ５内に残存する符号化データの読出し間隔を伸長する場合の例であるが、復号部６は符号化データの読み出しを一時的に停止しても良い。この場合には復号部６はデータ読出し速度制御部７より平常間隔で符号化データを読み出すよう指示された時点において読み出し及び復号処理を再開すれば上述の実施例と同様の効果が得られる。
【００３５】
再生出力部８は平常間隔で符号化データが読み出されているときには、所定の表示タイミングで映像音声データを再生出力する。所定の表示タイミングよりも早く映像音声データが得られた場合は、再生出力部８は所定の表示タイミングが到来してから当該映像音声データを再生出力する。短縮された読出間隔で符号化データが読み出されているときには、再生出力部８は所定の表示タイミングが到来した時点において得られた最新の映像音声データを再生出力する。伸長された読出間隔で符号化データが読み出されているときには、再生出力部８は所定の表示タイミングよりも長い表示タイミングにて映像音声データを再生出力する。
【００３６】
上記した如く本実施例に拠れば、通信ネットワーク２におけるストリームデータの伝送時間揺らぎなどに起因してバッファ５内のデータ残量が過大となった場合には、バッファ５からデータの各々を順次読み出す読出間隔を短くすることにより、短期間でバッファ５内のデータ残量を適正量まで減少させ、ストリームデータの再生遅延を抑制できる。また、バッファ５内のデータ残量が過小となった場合には、バッファ５からデータの各々を順次読み出す読出間隔を長くすることにより、短期間でバッファ５内のデータ残量を適正量まで増加させ、ストリームデータの再生遅延を最小限としつつ、再生品質を向上させることができる。このように本実施例に拠れば、所定周期毎に検出されるデータ残量に基づいてバッファ５からの符号化データの読出間隔を調整するため、通信ネットワーク２における伝送時間の揺らぎなどの時間経過に伴う変動があってもストリームデータの再生を遅延することなく、かつ、ビデオやオーディオなどのストリームデータの品質を劣化させることなく再生できる。
【図面の簡単な説明】
【００３７】
【図１】ストリームデータ受信再生装置をデータ送信装置、通信ネットワーク及び表示部と共に表すブロック図である。
【図２】データ読出し速度制御部が所定周期毎に行う、バッファ内のデータ残量を減少させる場合の処理ルーチンの一例を表すフローチャートである。
【図３】バッファ内のデータ残量の減少変化の一例を表す図である。
【図４】データ読出し速度制御部が所定周期毎に行う、バッファ内のデータ残量を増加させる場合の処理ルーチンの一例を表すフローチャートである。
【図５】バッファ内のデータ残量の増加変化の一例を表す図である。
【符号の説明】
【００３８】
１  データ送信装置
２  通信ネットワーク
３  ストリームデータ受信再生装置
４  データ受信部
５  バッファ
６  復号部
７  データ読出し速度制御部
８  再生出力部
９  表示部
【図１】
2008199361.tif 000003
【図２】
2008199361.tif 000004
【図３】
2008199361.tif 000005
【図４】
2008199361.tif 000006
【図５】
2008199361.tif 000007