JP6711120B2 - 映像再生装置、映像再生方法および映像再生プログラム - Google Patents

映像再生装置、映像再生方法および映像再生プログラム Download PDF

Info

Publication number
JP6711120B2
JP6711120B2 JP2016094614A JP2016094614A JP6711120B2 JP 6711120 B2 JP6711120 B2 JP 6711120B2 JP 2016094614 A JP2016094614 A JP 2016094614A JP 2016094614 A JP2016094614 A JP 2016094614A JP 6711120 B2 JP6711120 B2 JP 6711120B2
Authority
JP
Japan
Prior art keywords
video
time
unit
frame
reproduction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016094614A
Other languages
English (en)
Other versions
JP2017204700A (ja
Inventor
夏季 甲斐
夏季 甲斐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2016094614A priority Critical patent/JP6711120B2/ja
Publication of JP2017204700A publication Critical patent/JP2017204700A/ja
Application granted granted Critical
Publication of JP6711120B2 publication Critical patent/JP6711120B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Description

本発明は、映像再生装置、映像再生方法および映像再生プログラムに関し、特に映像を配信する通信ネットワークに変動が生じた場合であっても映像の再生停止を防いでユーザにとっての体感品質を維持する映像再生装置、映像再生方法および映像再生プログラムに関する。
通信ネットワークを介した映像配信では、例えば適応レート制御技術が用いられる。適応レート制御技術は、帯域幅の変動に合わせて配信対象の映像のビットレート(画質)を動的に変更しながら映像を配信することによって、映像データの到着の遅延による映像の再生停止を防ぐ技術である。
しかし、帯域幅の変動が激しい通信ネットワークを介して映像が配信される場合、映像の再生停止を防ぐためには、配信端末が配信する映像のビットレートを制御するだけでは不十分である。
その理由は、帯域幅の変動が激しい通信ネットワークを介して映像が配信される場合、例えば帯域幅が狭い時に、映像再生端末の再生映像用のバッファ(以下、再生バッファという。)に格納されている配信された映像データが枯渇する可能性があるためである。再生バッファに格納されている映像データが枯渇すると、映像の再生停止が発生する。
再生バッファに格納されている映像データの枯渇による映像の再生停止は、映像配信サービスに対して映像視聴者が感じたサービス品質である体感品質(QoE:quality of experience)を大きく下げる要因である。
再生バッファに格納されている映像データの枯渇による映像の再生停止が発生する問題を解決するために、例えば映像再生端末が配信された映像の再生速度を調節することによって再生停止を防ぐ映像再生制御技術が用いられる。映像再生制御技術が用いられると、映像視聴者にとっての体感品質の低下が防止される。
映像再生制御技術の例に、特許文献1に記載されているTCP(Transmission Control Protocol)でのデータ転送における品質を推定するTCP品質測定システムがある。特許文献1に記載されているTCP品質測定システムは、再生バッファに格納されている未再生の映像の再生時間である再生バッファ時間に予め上限値と下限値を設ける。再生バッファ時間は、未再生の映像が撮影された時間に相当する。
特許文献1に記載されているTCP品質測定システムは、再生バッファ時間が上限値以上の場合に未再生の映像を等倍速よりも高速で再生し、再生バッファ時間が下限値以下の場合に未再生の映像を等倍速よりも低速で再生する。また、特許文献1に記載されているTCP品質測定システムは、再生バッファ時間が下限値より大きく上限値より小さい場合に未再生の映像を等倍速で再生する。
特開2004−140596号公報
特許文献1に記載されているTCP品質測定システムにおいて、制御の最小単位は再生バッファ時間である。再生バッファ時間は、1フレームあたりの表示時間の総和である。よって、フレームレートが小さく1フレームあたりの表示時間が長い場合、各フレームに対する制御時間も長くなるため、TCP品質測定システムによる各制御の間隔は長くなる。
また、特許文献1に記載されているTCP品質測定システムは、予め定められた閾値を基準にして、再生バッファ時間の変動に応じて映像の再生速度を調節している。特許文献1に記載されているTCP品質測定システムには、通信ネットワークの状態の変化に応じて映像の再生速度を細かく調節することが困難であるという問題がある。
例えば、映像の到着の大きな遅延が発生しないことが求められるライブ映像配信等で特許文献1に記載されているTCP品質測定システムが使用された場合、TCP品質測定システムには、再生バッファに格納される未再生の映像の量を比較的小さくすることが求められる。その理由は、再生バッファに格納される未再生の映像の量が多いと、撮影されてから視聴されるまでの時間差が大きい映像が生じる可能性があるためである。
すなわち、ライブ映像配信等で特許文献1に記載されているTCP品質測定システムが使用された場合、閾値である上限値と下限値の差分である、映像が等倍速で再生される再生バッファ時間の範囲が縮小される。
映像が等倍速で再生される範囲が縮小されると、再生バッファ時間が頻繁に閾値を超えるため、映像の再生速度が度々変更される。すなわち、映像が等倍速で再生される範囲が縮小されることは、映像視聴者にとっての体感品質を下げる要因になる可能性がある。
また、下限値が上限値に対する極小値に変更されると、映像が等倍速で再生される範囲が広げられる。しかし、映像が等倍速で再生される範囲が広げられると、映像が低速で再生される機会が減る。
すなわち、帯域幅の変動が激しい通信ネットワークを介して映像が配信される場合、上記の内容が原因である再生バッファに格納されている映像データの枯渇による映像の再生停止の発生が懸念される。
以上のように、帯域幅の変動が激しい通信ネットワークを介した映像配信で予め定められた閾値を基準にして再生速度を制御する映像再生技術が使用される場合、再生停止の防止のために映像が等倍速で再生される範囲が縮小される。しかし、映像が等倍速で再生される範囲が縮小されると、映像視聴者にとっての体感品質が下がるという問題がある。
上記の内容を踏まえると、未再生の映像が枯渇しないように映像が等倍速で再生される範囲を、映像配信で使用される通信ネットワークの状態に合わせて拡張できる手法が求められている。
そこで、本発明は、未再生の映像の枯渇を防止しつつ等倍速で再生される再生バッファ時間の範囲を拡張できる映像再生装置、映像再生方法および映像再生プログラムを提供することを目的とする。
本発明による映像再生装置は、映像フレームが受信された時刻の間隔である受信間隔を計測する計測部と、受信された映像フレームを格納する格納部と、未再生の映像が撮影された時間である撮影時間と同じ時間で再生される撮影時間の下限値を計測された受信間隔に基づいて決定する決定部と、未再生の映像が撮影時間と同じ時間で再生される撮影時間の上限値および下限値に基づいて未再生の映像の再生時間を調節する調節部と、調節部により調節された再生時間で未再生の映像を再生する再生部とを備え、未再生の映像は、格納部に格納されている映像フレームで構成されていることを特徴とする。
本発明による映像再生方法は、格納部を備える映像再生装置において実行される映像再生方法であって、映像再生装置は、映像フレームが受信された時刻の間隔である受信間隔を計測し、受信された映像フレームを格納部に格納し、未再生の映像が撮影された時間である撮影時間と同じ時間で再生される撮影時間の下限値を計測された受信間隔に基づいて決定し、未再生の映像が撮影時間と同じ時間で再生される撮影時間の上限値および下限値に基づいて未再生の映像の再生時間を調節し、調節された再生時間で未再生の映像を再生し、未再生の映像は、格納部に格納されている映像フレームで構成されていることを特徴とする。
本発明による映像再生プログラムは、格納部を備えるコンピュータに、映像フレームが受信された時刻の間隔である受信間隔を計測する計測処理、受信された映像フレームを格納部に格納する格納処理、未再生の映像が撮影された時間である撮影時間と同じ時間で再生される撮影時間の下限値を計測された受信間隔に基づいて決定する決定処理、未再生の映像が撮影時間と同じ時間で再生される撮影時間の上限値および下限値に基づいて未再生の映像の再生時間を調節する調節処理、および調節された再生時間で未再生の映像を再生する再生処理を実行させるための映像再生プログラムであって、未再生の映像は、格納部に格納されている映像フレームで構成されていることを特徴とする。
本発明によれば、未再生の映像の枯渇を防止しつつ等倍速で再生される再生バッファ時間の範囲を拡張できる。
本発明による映像再生システム10の第1の実施形態の構成例を示すブロック図である。 受信部201による受信処理の動作を示すフローチャートである。 第2の閾値決定部205による閾値決定処理の動作を示すフローチャートである。 フレーム表示時間決定部206による表示時間決定処理の動作を示すフローチャートである。 本実施形態の映像再生システム10が使用された時の映像フレームの受信間隔と第2の閾値との対応関係を示す説明図である。 本発明による映像再生装置の概要を示すブロック図である。
<第1の実施形態>
[構成の説明]
以下、本発明の第1の実施形態を、図面を参照して説明する。図1は、本発明による映像再生システム10の第1の実施形態の構成例を示すブロック図である。
図1に示す映像再生システム10は、通信ネットワークを介して配信された映像の再生において、配信端末から配信された映像データの通信ネットワーク変動等による到着遅延やバースト到着が発生しても、映像の再生停止を防いでユーザにとっての体感品質を維持する映像再生システムである。なお、バースト到着は、一度に大量の映像データがまとまって到着する事象である。
図1に示すように、本実施形態の映像再生システム10は、配信端末100と、再生端末200と、通信ネットワーク300とを含む。配信端末100は、通信ネットワーク300を介して再生端末200と通信可能に接続されている。
本実施形態の配信端末100および再生端末200は、例えばネットワークインタフェースカード等の通信装置を備えたパーソナルコンピュータである。また、配信端末100および再生端末200は、パーソナルコンピュータ以外の端末装置でもよい。
また、本実施形態の通信ネットワーク300は、例えばインターネットやモバイルネットワーク等のWAN(Wide Area Network)で構成される通信ネットワークである。
また、本実施形態において配信端末100から再生端末200に伝送されるデータは、例えば配信端末100がキャプチャした映像データが符号化されたストリーム情報である。
図1に示すように、配信端末100は、符号化部101と、送信部102と、スループット計測部103と、パラメータ決定部104とを含む。
符号化部101は、指定されたパラメータが設定されたエンコーダ(図示せず)を用いて、配信対象の映像フレームを符号化する機能を有する。
送信部102は、符号化部101により符号化された映像フレームを、通信ネットワーク300を介して再生端末200に送信する機能を有する。送信部102は、例えば符号化された映像フレームをTCPで送信する。
スループット計測部103は、送信部102による送信のスループットを計測する機能を有する。また、パラメータ決定部104は、スループット計測部103による計測結果に基づいて、次の映像フレームを符号化するエンコーダに設定されるパラメータを決定する機能を有する。
なお、本実施形態の映像再生システム10に含まれる配信端末100は、符号化された映像フレームを送信する送信部102のみを含む単純な配信端末でもよい。
また、図1に示すように、再生端末200は、受信部201と、復号部202と、映像フレームバッファリング部203と、受信間隔計測部204と、第2の閾値決定部205と、フレーム表示時間決定部206と、フレーム表示部207とを含む。
受信部201は、配信端末100から配信される符号化された映像フレームを受信する機能を有する。また、復号部202は、受信部201により受信された、符号化された映像フレームを復号する機能を有する。
映像フレームバッファリング部203は、復号部202により復号された映像フレームを再生バッファにバッファリングする機能を有する。映像フレームバッファリング部203は、再生バッファを有する。図1に示す映像フレームバッファリング部203の下に位置する複数の矩形が、バッファリングされた映像フレームを表す。
受信間隔計測部204は、受信部201により受信された映像フレームの、再生端末200への到着の間隔を計測する機能を有する。また、第2の閾値決定部205は、受信間隔計測部204による到着間隔の計測値に基づいて、後述する第2の閾値を決定する機能を有する。
フレーム表示時間決定部206は、映像フレームの表示時間を決定する機能を有する。フレーム表示時間決定部206は、予め与えられる第1の閾値、第2の閾値決定部205から与えられる第2の閾値、および映像フレームバッファリング部203にバッファリングされている映像フレームの再生バッファ時間に基づいて、後述するように映像フレームの表示時間を決定する。なお、本実施形態の第1の閾値は、映像の撮影が開始されてから、撮影された映像が視聴可能な状態になるまでの遅延目標時間である。
フレーム表示部207は、映像フレームバッファリング部203からバッファリングされている映像フレームを取り出し、フレーム表示時間決定部206が決定した映像フレームの表示時間だけ取り出された映像フレームを表示する機能を有する。
[動作の説明]
以下、本実施形態の映像再生システム10の再生端末200の動作を図2〜図4を参照して説明する。
最初に、再生端末200の受信部201による受信処理を説明する。図2は、受信部201による受信処理の動作を示すフローチャートである。
受信部201は、配信端末100から配信されたi番目の映像フレーム(i = 1, 2, ・・・, n)を受信する(ステップS101)。以下、i番目の映像フレームを「フレームi」ともいう。
次いで、受信部201は、フレームiが受信された時刻をt(i)として保持する。また、受信部201は、フレームiに含まれるタイムスタンプpts_iを取得する(ステップS102)。
次いで、受信部201は、フレームiに設定されたフレームレートfps_iを算出する(ステップS103)。図2に示すように、受信部201は、フレームレートfps_iを以下の式で算出する。
fps_i = 1000 / (pts_i - pts_(i-1)) [fps]・・・式(1)
なお、fps(frames per second)は、式(1)で算出されるfps_iの単位である。また、フレームレートの算出方法は、タイムスタンプの種類に応じて変更される。受信部201は、ステップS103で式(1)以外の式でフレームレートfps_iを算出してもよい。
受信部201は、受信時刻t(i)およびフレームレートfps_iを保持する。保持した後、受信部201は、受信されたi番目の映像フレームがn番目の映像フレームであるか否かを確認する(ステップS104)。
i<nである場合、すなわち映像フレームがn番目の映像フレームでない場合(ステップS104におけるTrue)、受信部201は、iに1を加算する(ステップS105)。次いで、受信部201は、再度ステップS101の処理を行う。
i<nでない場合、すなわち映像フレームがn番目の映像フレームである場合(ステップS104におけるFalse)、受信部201は、受信処理を終了する。
上記のように、受信部201は、映像フレームに設定されているタイムスタンプの差分を基に、受信されたi番目の映像フレームのフレームレートfps_iを算出する。算出されるフレームレートの単位は、例えばfpsである。
具体的な算出方法として、例えば、実時間に対応したタイムスタンプが映像フレームに設定されている場合、式(1)で表現される算出方法が用いられる。ただし、i = 1の時、fps_i = 1とする。
また、タイムスタンプの設定形式は、符号化部101が用いるエンコーダに依存する。すなわち、i番目の映像フレームのフレームレートfps_iの算出方法も、符号化部101が用いるエンコーダに依存する。
次に、再生端末200の第2の閾値決定部205による閾値決定処理を説明する。図3は、第2の閾値決定部205による閾値決定処理の動作を示すフローチャートである。
再生端末200の受信部201がi番目の映像フレームを受信した時、上述したようにi番目の映像フレームの到着時刻は、受信時刻t(i)として受信部201に保持される。
第2の閾値決定部205は、受信されたi番目の映像フレームに関して、受信間隔interval_iを算出する(ステップS201)。図3に示すように、第2の閾値決定部205は、受信間隔interval_iを以下の式で算出する。
interval_i = t(i) - t(i-1) [sec]・・・式(2)
次いで、受信間隔計測部204は、受信部201からi番目の映像フレームのフレームレートfps_iを受け取り、i番目の映像フレームの到着遅延Ad_iを算出する(ステップS202)。図3に示すように、受信間隔計測部204は、到着遅延Ad_iを以下の式で算出する。
Ad_i = interval_i - (1/fps_i) [sec] ・・・式(3)
ただし、受信間隔計測部204は、i = 1の時、Ad_i = 0とする。また、算出されたAd_iが負の値である時、受信間隔計測部204は、Ad_i = 0とする。
第2の閾値決定部205は、ステップS202で算出された映像フレームの到着遅延Ad_iを受信間隔計測部204から受け取る。次いで、第2の閾値決定部205は、受け取った到着遅延Ad_iと、(i-1)番目の映像フレームに関する第2の閾値p_lower_(i-1)との大小関係を確認する(ステップS203)。
p_lower_(i-1) <= Ad_iである場合(ステップS203におけるFalse)、第2の閾値決定部205は、図3に示すようにi番目の映像フレームに関する第2の閾値p_lower_iを以下の式で算出する(ステップS204)。
p_lower_i = coef_2 * p_lower_(i-1) + (1.0 - coef_2) * Ad_i・・・式(4)
p_lower_(i-1) > Ad_iである場合(ステップS203におけるTrue)、第2の閾値決定部205は、図3に示すようにi番目の映像フレームに関する第2の閾値p_lower_iを以下の式で算出する(ステップS205)。
p_lower_i = coef_1 * p_lower_(i-1) + (1.0 - coef_1) * Ad_i・・・式(5)
なお、式(4)におけるcoef_2、および式(5)におけるcoef_1は、それぞれ任意のパラメータである。具体的には、例えばcoef_1 = 0.95、coef_2 = 0.2とそれぞれ設定される。
なお、i = 1の時、第2の閾値決定部205は、p_lower_i = Ad_iとする。また、算出された第2の閾値p_lower_iが予め与えられる第1の閾値p_upperを超えた場合、第2の閾値決定部205は、p_lower_i = p_upperとする。
次いで、第2の閾値決定部205は、第2の閾値p_lower_iが算出されたi番目の映像フレームがn番目の映像フレームであるか否かを確認する(ステップS206)。
i<nである場合、すなわち映像フレームがn番目の映像フレームでない場合(ステップS206におけるTrue)、第2の閾値決定部205は、iに1を加算する(ステップS207)。次いで、第2の閾値決定部205は、再度ステップS201の処理を行う。
i<nでない場合、すなわち映像フレームがn番目の映像フレームである場合(ステップS206におけるFalse)、第2の閾値決定部205は、閾値決定処理を終了する。
以下、第2の閾値決定部205による閾値決定処理におけるステップS204の処理およびステップS205の処理の意味を説明する。映像フレームバッファリング部203にバッファリングされている未再生の映像の再生バッファ時間が第2の閾値p_lowerを下回ると、表示時間係数d_coefが大きくなり、映像がスローで再生される。すなわち、ユーザにとっての体感品質が若干下がる。
第2の閾値p_lowerが小さくなると等倍速で再生される範囲が広がるが、再生バッファに格納されている映像データが枯渇するリスクも増える。第2の閾値p_lowerが大きくなると再生バッファに格納されている映像データが枯渇するリスクが減るが、等倍速で再生される範囲が狭くなる。第2の閾値決定部205は、閾値決定処理において、上記の対応関係の因子である第2の閾値p_lowerを映像フレームの到着のゆらぎに応じて動的に制御する。
具体的には、到着遅延Ad_iが第2の閾値p_lower_(i-1)より小さい場合、すなわち映像フレームの到着が遅延していない場合、再生バッファに格納されている映像データが枯渇するリスクは小さい。よって、第2の閾値決定部205は、等倍速で再生される再生バッファ時間の範囲を広げる。
等倍速で再生される範囲を広げるために、第2の閾値決定部205は、第2の閾値p_lower_iを小さくする。しかし、到着遅延Ad_iのゆらぎが大きいため、第2の閾値決定部205は、ステップS205で第2の閾値p_lower_iを、1.0に近い平滑化係数coef_1を用いて式(5)のように計算することによって平滑化する。
また、到着遅延Ad_iが第2の閾値p_lower_(i-1)以上である場合、すなわち映像フレームの到着が遅延している場合、再生バッファに格納されている映像データが枯渇するリスクは大きい。よって、第2の閾値決定部205は、等倍速で再生される再生バッファ時間の範囲を狭める。
等倍速で再生される範囲を狭めるために、第2の閾値決定部205は、第2の閾値p_lower_iを大きくする。しかし、一般的に再生バッファに格納されている映像データの枯渇による再生停止が生じると、再生速度の微小な変化がユーザにとっての体感品質に及ぼす影響度は大きい。
上記の場合、第2の閾値決定部205は、第2の閾値p_lower_iを到着遅延Ad_iに追従するように増加させるため、ステップS204で第2の閾値p_lower_iを、0.0に近い平滑化係数coef_2を用いて式(4)のように計算することによって平滑化する。その理由は、等倍速で再生される再生バッファ時間の範囲が広げられやすくするためである。
すなわち、第2の閾値決定部205は、直近のデータの方が重視される指数平滑移動平均法を用いて第2の閾値p_lower_iを算出している。
次に、再生端末200のフレーム表示時間決定部206による表示時間決定処理を説明する。図4は、フレーム表示時間決定部206による表示時間決定処理の動作を示すフローチャートである。
表示時間決定処理において、フレーム表示時間決定部206は、予め与えられる第1の閾値p_upperと、映像フレームバッファリング部203が有する再生バッファ時間p_iを比較する。また、フレーム表示時間決定部206は、第2の閾値決定部205から与えられる第2の閾値p_lower_iと、再生バッファ時間p_iを比較する。比較の結果に基づいて、フレーム表示時間決定部206は、表示時間係数d_coefを決定する。
フレーム表示時間決定部206には、第1の閾値p_upperが入力として与えられる。また、フレーム表示時間決定部206には、第2の閾値決定部205から第2の閾値p_lower_iが与えられる(ステップS301)。なお、本例において、第1の閾値p_upperの単位、および第2の閾値p_lower_iの単位は秒(sec)である。
次いで、映像フレームバッファリング部203は、再生バッファ時間p_iを算出する(ステップS302)。ステップS103の処理で算出されたi番目の映像フレームに設定されているフレームレートfps_iの逆数が、i番目の映像フレームの表示時間disp_i、すなわち再生バッファ時間p_iに相当する。
よって、映像フレームバッファリング部203に格納されている映像フレームの集合をBとすると、映像フレームバッファリング部203は、再生バッファ時間p_iを以下の式で算出する。
なお、本例において、表示時間disp_iの単位、および再生バッファ時間p_iの単位は秒(sec)である。フレーム表示時間決定部206は、ステップS302で算出された再生バッファ時間p_iを映像フレームバッファリング部203から受け取る。
次いで、フレーム表示時間決定部206は、受け取った再生バッファ時間p_iと、予め与えられる第1の閾値p_upperとの大小関係を確認する(ステップS303)。
p_upper < p_iである場合(ステップS303におけるTrue)、フレーム表示時間決定部206は、図4に示すように以下の式に従ってi番目の映像フレームに関する表示時間係数d_coefを決定する(ステップS307)。
d_coef = fast_coef・・・式(7)
p_upper >= p_iである場合(ステップS303におけるFalse)、フレーム表示時間決定部206は、受け取った再生バッファ時間p_iと、i番目の映像フレームに関する第2の閾値p_lower_iとの大小関係を確認する(ステップS304)。
p_lower_i > p_iである場合(ステップS304におけるTrue)、フレーム表示時間決定部206は、図4に示すように以下の式に従ってi番目の映像フレームに関する表示時間係数d_coefを決定する(ステップS306)。
d_coef = slow_coef・・・式(8)
p_lower_i <= p_iである場合(ステップS304におけるFalse)、フレーム表示時間決定部206は、図4に示すように以下の式に従ってi番目の映像フレームに関する表示時間係数d_coefを決定する(ステップS305)。
d_coef = 1.0・・・式(9)
映像フレームが到着する度に、表示時間係数d_coefは更新される。なお、fast_coefおよびslow_coefは、それぞれ予め与えられる係数である。具体的には、fast_coefは0より大きく1.0より小さい係数であり、slow_coefは1.0より大きい係数である。
次いで、フレーム表示時間決定部206は、表示時間係数d_coefが算出されたi番目の映像フレームがn番目の映像フレームであるか否かを確認する(ステップS308)。
i<nである場合、すなわち映像フレームがn番目の映像フレームでない場合(ステップS308におけるTrue)、フレーム表示時間決定部206は、iに1を加算する(ステップS309)。次いで、フレーム表示時間決定部206は、再度ステップS301の処理を行う。
i<nでない場合、すなわち映像フレームがn番目の映像フレームである場合(ステップS308におけるFalse)、フレーム表示時間決定部206は、表示時間決定処理を終了する。
フレーム表示部207は、映像フレームバッファリング部203に格納されている映像フレームの集合Bの先頭のフレームであるj番目のフレームを取得する。なお、jはi以下の整数である。また、フレーム表示部207は、フレーム表示時間決定部206から決定された表示時間係数d_coefを取得する。
フレーム表示部207は、取得された情報に基づいて、j番目のフレームを表示時間(disp_j * d_coef)だけ表示する。表示時間の単位は、例えば秒(sec)である。
j番目のフレームを表示した後、(j+1)番目のフレームが映像フレームバッファリング部203に格納されていれば、フレーム表示部207は、(j+1)番目のフレームの表示処理を行う。
以下、本発明の実施例を、図面を参照して説明する。本実施例では、配信端末100の動作、および再生端末200の動作を具体的な数値を用いて説明する。
本実施例では、配信端末100が再生端末200に向けて10fpsで映像配信を続ける場合を想定する。10fpsのフレームレートで映像配信が行われる場合、フレームの到着間隔は100msecである。
再生端末200の受信部201は、i番目の映像フレーム(i = 1, 2, ・・・, n)を受信した後、復号部202にi番目のフレームを入力する。復号部202は、入力されたi番目のフレームを復号し、復号されたフレームを映像フレームバッファリング部203に格納する。
映像フレームバッファリング部203が、直前にバッファリングされたi番目のフレームを含めて3フレームをバッファリングしている場合を想定する。3フレームがバッファリングされている場合の再生バッファ時間p_iは、式(6)に従って以下のように算出される。
p_i = Σ(1/fpsb) = (1/0.01) * 3 = 300 [msec]
受信間隔計測部204は、i番目のフレームの受信時刻と(i-1)番目のフレームの受信時刻との差分を受信間隔interval_iとして保持する。次いで、受信間隔計測部204は、式(3)に従って映像フレームの到着遅延Ad_iを算出する。
受信間隔interval_iが130msecである場合、受信間隔計測部204は、式(3)に従って映像フレームの到着遅延Ad_iを以下のように算出する。
Ad_i = interval_i - (1/fps_i) = 130 - 100 = 30 [msec]
次いで、第2の閾値決定部205は、(i-1)番目の映像フレームに関する第2の閾値p_lower_(i-1)と、算出された映像フレームの到着遅延Ad_iを比較する。本例において、各値が以下のように設定されている。
p_lower_(i-1) = 60 [msec]、coef_1 = 0.95、coef_2 = 0.2
すなわち、第2の閾値p_lower_(i-1)が映像フレームの到着遅延Ad_iより大きいため、第2の閾値決定部205は、式(5)に従って以下のようにi番目の映像フレームに関する第2の閾値p_lower_iを算出する。
p_lower_i = coef_1 * p_lower_(i-1) + (1.0 - coef_1) * Ad_i
= 0.95 * 60 + 0.05 * 30 = 58.5 [msec]
次いで、フレーム表示時間決定部206は、現在の再生バッファ時間p_iを、第1の閾値p_upperおよび第2の閾値p_lower_iとそれぞれ比較する。比較の結果に基づいて、フレーム表示時間決定部206は、映像フレームバッファリング部203において先頭にバッファリングされているj番目のフレームの表示時間係数d_coefを更新する。なお、jはi以下の整数である。
入力として与えられる遅延目標時間である第1の閾値p_upperが500msecである場合を想定する。現在の再生バッファ時間p_iが300msec、第2の閾値p_lower_iが58.5msecであるため、以下の関係式が成立する。
p_lower_i <= p_i <= p_upper
よって、フレーム表示時間決定部206は、図4に示す表示時間決定処理に従って表示時間係数d_coefを1.0に更新する。
次いで、フレーム表示部207は、映像フレームバッファリング部203に格納されているj番目のフレームを取り出す。また、フレーム表示部207は、フレーム表示時間決定部206から表示時間係数d_coefを取得する。取得された情報に基づいて、フレーム表示部207は、j番目のフレームの表示時間を以下のように算出する。
disp_j * d_coef = 100 * 1.0 = 100 [msec]
フレーム表示部207は、j番目のフレームを算出された表示時間、すなわち100msecだけ表示する。
次に、受信部201が(i+1)番目の映像フレームを受信し、受信間隔interval_(i+1)が220msecである場合を想定する。受信間隔interval_(i+1)が220msecであることは、i番目のフレームが受信されてから(i+1)番目のフレームが受信されるまでに220msecが経過したことを意味する。
上記の例と同様に、受信部201は、復号部202に(i+1)番目のフレームを入力する。復号部202は、入力された(i+1)番目のフレームを復号し、復号されたフレームを映像フレームバッファリング部203に格納する。
フレーム表示時間決定部206が有する表示時間係数d_coefは、1.0のままである。よって、フレーム表示部207は、j番目のフレームを表示した後、映像フレームバッファリング部203から(j+1)番目のフレームを取り出し、100msecだけ(j+1)番目のフレームを表示する。
同様に、(j+1)番目のフレームを表示した後、フレーム表示部207は、映像フレームバッファリング部203から(j+2)番目のフレームを取り出し、100msecだけ(j+2)番目のフレームを表示する。すなわち、(i+1)番目のフレームが受信された時は、(j+2)番目のフレームが表示されている最中である。具体的には、(i+1)番目のフレームが受信された時は、(j+2)番目のフレームの表示が開始されてから20msec経過した時である。
(j+2)番目のフレームの表示が開始されてから20msecが経過した段階で、最初にバッファリングされていた3フレームは既に表示されている。よって、映像フレームバッファリング部203には、直前にバッファリングされた(i+1)番目のフレームを含めて1フレームがバッファリングされている。すなわち、再生バッファ時間p_(i+1)は、式(6)に従って以下のように算出される。
p_(i+1) =Σ(1/fpsb) = (1/0.01) * 1 = 100 [msec]
受信間隔interval_(i+1)が220msecである場合、受信間隔計測部204は、式(3)に従って映像フレームの到着遅延Ad_(i+1)を以下のように算出する。
Ad_(i+1) = interval_(i+1) - (1/fps_(i+1)) = 220 - 100 = 120 [msec]
次いで、第2の閾値決定部205は、i番目の映像フレームに関する第2の閾値p_lower_iと、算出された映像フレームの到着遅延Ad_(i+1)を比較する。上記の計算でp_lower_iが58.5msecと求められたため、第2の閾値p_lower_iは、到着遅延Ad_(i+1)以下である。よって、第2の閾値決定部205は、式(4)に従って以下のように(i+1)番目の映像フレームに関する第2の閾値p_lower_(i+1)を算出する。
p_lower_(i+1) = coef_2 * p_lower_i + (1.0 - coef_2) * Ad_(i+1)
= 0.2 * 58.5 + 0.8 * 120 = 107.7 [msec]
次いで、フレーム表示時間決定部206は、映像フレームバッファリング部203において先頭にバッファリングされている(j+3)番目のフレームの表示時間係数d_coefを更新する。現在の再生バッファ時間p_(i+1)が100msec、第1の閾値p_upperが500msec、第2の閾値p_lower_(i+1)が107.7msecであるため、以下の関係式が成立する。
p_(i+1) < p_lower_(i+1)
よって、フレーム表示時間決定部206は、図4に示す表示時間決定処理に従って表示時間係数d_coefをslow_coefに更新する。fast_coef = 0.8、slow_coef = 1.2とそれぞれ設定されている場合、d_coefは、1.2に更新される。
現在表示されている(j+2)番目のフレームの表示が完了した後、フレーム表示部207は、映像フレームバッファリング部203に格納されている(j+3)番目のフレームを取り出す。また、フレーム表示部207は、フレーム表示時間決定部206から表示時間係数d_coefを取得する。取得された情報に基づいて、フレーム表示部207は、(j+3)番目のフレームの表示時間を以下のように算出する。
disp_(j+3) * d_coef = 100 * 1.2 = 120 [msec]
フレーム表示部207は、(j+3)番目のフレームを算出された表示時間、すなわち120msecだけ表示する。
以上のように、第2の閾値決定部205は、映像フレームの受信間隔に応じてフレーム表示時間が変動する閾値を動的に変更する。閾値が動的に変更されることによって、映像が等倍速で再生される再生バッファ時間の範囲が拡張されつつ、映像の再生停止の防止が実現される。
図5は、本実施形態の映像再生システム10が使用された時の映像フレームの受信間隔と第2の閾値との対応関係を示す説明図である。図5(a)は、到着フレーム数に対する到着遅延Adを示す説明図である。また、図5(b)は、到着フレーム数に対する第2の閾値Plowerを示す説明図である。
図5(a)に示す到着遅延Adの単位、および図5(b)に示す第2の閾値Plowerの単位はmsecである。図5に示すように、第2の閾値決定部205は、到着遅延、すなわち映像フレームの受信間隔が変動した時、到着遅延の変動に合わせて第2の閾値を変更する。
[効果の説明]
上記の課題を解決する本実施形態および本実施例の映像再生制御方式に従う再生端末は、符号化された映像データを受信する受信部と、符号化された映像データを復号する復号部と、復号された映像フレームをバッファリングするバッファリング部とを有する。
また、再生端末は、受信部により受信された映像フレームの到着間隔を計測する受信間隔計測部と、第1の閾値および受信間隔計測部が計測した受信間隔の変動情報に基づいた第2の閾値を用いて、表示時間を決定するフレーム表示時間決定部とを有する。
また、再生端末は、フレーム表示時間決定部から通知された表示時間だけ、バッファリングされた映像フレームを表示するフレーム表示部を有する。すなわち、再生速度が調節されることによって再生停止が防止されるため、本実施形態の映像再生制御方式に従う再生端末が使用されると、ユーザにとっての体感品質が向上する。
本実施形態の映像再生システムは、ユーザにとっての体感品質を低下させずに、再生バッファに格納されている映像データの枯渇による映像の再生停止を防ぐことができる。その理由は、再生端末200の第2の閾値決定部205が、映像フレームの到着間隔に応じて再生速度の調節用の閾値を動的に変更するためである。
具体的には、映像フレームの到着が遅延している場合、第2の閾値決定部205は、第2の閾値を大きくすることによって低速で再生される再生バッファ時間の範囲を広げ、再生バッファに格納されている映像データの枯渇による再生停止を防ぐ。また、映像フレームの到着間隔が概ね所定の間隔である場合、第2の閾値決定部205は、第2の閾値を小さくすることによって等倍速で再生される再生バッファ時間の範囲を広げ、ユーザにとっての体感品質を維持する。
よって、本実施形態の映像再生システムは、モバイルネットワークのような帯域幅の変動が激しい環境下で配信された映像が視聴される際、再生バッファに格納されている映像データの枯渇を防止しつつ、等倍速で再生される再生バッファ時間の範囲を拡張する再生制御を行う。映像再生システムは、等倍速で再生される再生バッファ時間の範囲を最大にすることも可能である。再生制御が行われることによって、ユーザにとっての体感品質の低下が防止される。
なお、本実施形態の再生端末200は、例えば、記憶媒体に格納されているプログラムに従って処理を実行するCPU(Central Processing Unit)によって実現される。すなわち受信部201、復号部202、映像フレームバッファリング部203、受信間隔計測部204、第2の閾値決定部205、フレーム表示時間決定部206、およびフレーム表示部207は、例えば、プログラム制御に従って処理を実行するCPUによって実現される。
また、本実施形態の再生端末200における各部は、ハードウェア回路によって実現されてもよい。一例として、受信部201、復号部202、映像フレームバッファリング部203、受信間隔計測部204、第2の閾値決定部205、フレーム表示時間決定部206、およびフレーム表示部207が、それぞれLSI(Large Scale Integration)で実現される。また、それらが1つのLSIで実現されていてもよい。
次に、本発明の概要を説明する。図6は、本発明による映像再生装置の概要を示すブロック図である。本発明による映像再生装置20は、映像フレームが受信された時刻の間隔である受信間隔を計測する計測部21(例えば、受信間隔計測部204)と、未再生の映像が撮影された時間である撮影時間(例えば、再生バッファ時間)と同じ時間で再生される撮影時間の下限値を計測された受信間隔に基づいて決定する決定部22(例えば、第2の閾値決定部205)とを備える。
そのような構成により、映像再生装置は、未再生の映像の枯渇を防止しつつ等倍速で再生される再生バッファ時間の範囲を拡張できる。
また、映像再生装置20は、未再生の映像が撮影時間と同じ時間で再生される撮影時間の上限値および下限値に基づいて未再生の映像の再生時間を調節する調節部(例えば、フレーム表示時間決定部206)を備えてもよい。
そのような構成により、映像再生装置は、通信ネットワークの帯域幅の変動に応じて未再生の映像の再生時間を調節できる。
また、映像再生装置20は、調節部により調節された再生時間で未再生の映像を再生する再生部(例えば、フレーム表示部207)を備えてもよい。
そのような構成により、映像再生装置は、通信ネットワークの帯域幅の変動に応じて調節された再生時間で未再生の映像を再生できる。
また、決定部22は、指数平滑移動平均法で下限値を決定してもよい。
そのような構成により、映像再生装置は、映像フレームの到着のゆらぎに応じて下限値を動的に制御できる。
また、決定部22は、第1の平滑化係数(例えば、coef_1)および第2の平滑化係数(例えば、coef_2)が用いられる指数平滑移動平均法で下限値を決定してもよい。
そのような構成により、映像再生装置は、前回制御された下限値と到着遅延との関係に応じて下限値を制御できる。
また、映像再生装置20は、受信された映像フレームを格納する格納部(例えば、映像フレームバッファリング部203)を備え、未再生の映像は、格納部に格納されている映像フレームで構成されていてもよい。
そのような構成により、映像再生装置は、現在の通信ネットワークの状態に応じてバッファリングされている映像フレームの再生速度を調節できる。
10 映像再生システム
20 映像再生装置
21 計測部
22 決定部
100 配信端末
101 符号化部
102 送信部
103 スループット計測部
104 パラメータ決定部
200 再生端末
201 受信部
202 復号部
203 映像フレームバッファリング部
204 受信間隔計測部
205 第2の閾値決定部
206 フレーム表示時間決定部
207 フレーム表示部
300 通信ネットワーク

Claims (9)

  1. 映像フレームが受信された時刻の間隔である受信間隔を計測する計測部と、
    受信された前記映像フレームを格納する格納部と、
    未再生の映像が撮影された時間である撮影時間と同じ時間で再生される前記撮影時間の下限値を計測された前記受信間隔に基づいて決定する決定部と
    前記未再生の映像が前記撮影時間と同じ時間で再生される前記撮影時間の上限値および下限値に基づいて前記未再生の映像の再生時間を調節する調節部と、
    前記調節部により調節された前記再生時間で前記未再生の映像を再生する再生部とを備え
    前記未再生の映像は、
    前記格納部に格納されている前記映像フレームで構成されている
    ことを特徴とする映像再生装置。
  2. 決定部は、指数平滑移動平均法で下限値を決定する
    請求項記載の映像再生装置。
  3. 決定部は、第1の平滑化係数および第2の平滑化係数が用いられる指数平滑移動平均法で下限値を決定する
    請求項記載の映像再生装置。
  4. 格納部を備える映像再生装置において実行される映像再生方法であって、
    前記映像再生装置は、
    映像フレームが受信された時刻の間隔である受信間隔を計測し、
    受信された前記映像フレームを前記格納部に格納し、
    未再生の映像が撮影された時間である撮影時間と同じ時間で再生される前記撮影時間の下限値を計測された前記受信間隔に基づいて決定し、
    前記未再生の映像が前記撮影時間と同じ時間で再生される前記撮影時間の上限値および下限値に基づいて前記未再生の映像の再生時間を調節し、
    調節された前記再生時間で前記未再生の映像を再生し、
    前記未再生の映像は、
    前記格納部に格納されている前記映像フレームで構成されている
    ことを特徴とする映像再生方法。
  5. 映像再生装置は、指数平滑移動平均法で下限値を決定する
    請求項4記載の映像再生方法。
  6. 映像再生装置は、第1の平滑化係数および第2の平滑化係数が用いられる指数平滑移動平均法で下限値を決定する
    請求項5記載の映像再生方法。
  7. 格納部を備えるコンピュータに、
    映像フレームが受信された時刻の間隔である受信間隔を計測する計測処理
    受信された前記映像フレームを前記格納部に格納する格納処理、
    未再生の映像が撮影された時間である撮影時間と同じ時間で再生される前記撮影時間の下限値を計測された前記受信間隔に基づいて決定する決定処理
    前記未再生の映像が前記撮影時間と同じ時間で再生される前記撮影時間の上限値および下限値に基づいて前記未再生の映像の再生時間を調節する調節処理、および
    調節された前記再生時間で前記未再生の映像を再生する再生処理を実行させるための映像再生プログラムであって、
    前記未再生の映像は、
    前記格納部に格納されている前記映像フレームで構成されている
    映像再生プログラム
  8. コンピュータに、
    決定処理で、指数平滑移動平均法で下限値を決定させる
    請求項7記載の映像再生プログラム。
  9. コンピュータに、
    決定処理で、第1の平滑化係数および第2の平滑化係数が用いられる指数平滑移動平均法で下限値を決定させる
    請求項8記載の映像再生プログラム。
JP2016094614A 2016-05-10 2016-05-10 映像再生装置、映像再生方法および映像再生プログラム Active JP6711120B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016094614A JP6711120B2 (ja) 2016-05-10 2016-05-10 映像再生装置、映像再生方法および映像再生プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016094614A JP6711120B2 (ja) 2016-05-10 2016-05-10 映像再生装置、映像再生方法および映像再生プログラム

Publications (2)

Publication Number Publication Date
JP2017204700A JP2017204700A (ja) 2017-11-16
JP6711120B2 true JP6711120B2 (ja) 2020-06-17

Family

ID=60321617

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016094614A Active JP6711120B2 (ja) 2016-05-10 2016-05-10 映像再生装置、映像再生方法および映像再生プログラム

Country Status (1)

Country Link
JP (1) JP6711120B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022025633A1 (ko) * 2020-07-31 2022-02-03 삼성전자 주식회사 영상 출력 방법 및 이를 지원하는 전자 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7287500B2 (ja) * 2019-12-16 2023-06-06 日本電信電話株式会社 端末装置、通信方法、及び通信システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022025633A1 (ko) * 2020-07-31 2022-02-03 삼성전자 주식회사 영상 출력 방법 및 이를 지원하는 전자 장치

Also Published As

Publication number Publication date
JP2017204700A (ja) 2017-11-16

Similar Documents

Publication Publication Date Title
US6625656B2 (en) Method and apparatus for continuous playback or distribution of information including audio-visual streamed multimedia
EP2974207B1 (en) Playback stall avoidance in adaptive media streaming
JP6662905B2 (ja) オーディオビジュアル品質推定装置、オーディオビジュアル品質推定方法、及びプログラム
US20080148327A1 (en) Method and Apparatus for Providing Adaptive Trick Play Control of Streaming Digital Video
CN107205160A (zh) 一种针对服务器下发的视频的播放方法及装置
JP2015536594A (ja) 積極的なビデオフレームドロップ
US9232249B1 (en) Video presentation using repeated video frames
US20140362291A1 (en) Method and apparatus for processing a video signal
US20240340507A1 (en) Methods, systems, and media for streaming video content using adaptive buffers
JP6711120B2 (ja) 映像再生装置、映像再生方法および映像再生プログラム
US8848803B2 (en) Information processing device and method, and program
US20070110168A1 (en) Method for generating high quality, low delay video streaming
CN112995720A (zh) 一种音视频同步方法和装置
CN107087210B (zh) 基于缓存时间判断视频播放状态的方法及终端
US9806967B2 (en) Communication device and data processing method
EP4099710A1 (en) Buffer management for live video streaming
US20220400309A1 (en) Engagement estimation apparatus, engagement estimation method and program
JP2021132259A (ja) 受信装置及びプログラム
JP2013042457A (ja) 動画配信装置、動画配信システム、動画配信方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200227

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200428

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200511

R150 Certificate of patent or registration of utility model

Ref document number: 6711120

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150