JP4528022B2 - 映像配信方法およびシステム - Google Patents

映像配信方法およびシステム Download PDF

Info

Publication number
JP4528022B2
JP4528022B2 JP2004132746A JP2004132746A JP4528022B2 JP 4528022 B2 JP4528022 B2 JP 4528022B2 JP 2004132746 A JP2004132746 A JP 2004132746A JP 2004132746 A JP2004132746 A JP 2004132746A JP 4528022 B2 JP4528022 B2 JP 4528022B2
Authority
JP
Japan
Prior art keywords
frame
time interval
transmission time
frame transmission
video
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.)
Expired - Fee Related
Application number
JP2004132746A
Other languages
English (en)
Other versions
JP2005318190A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004132746A priority Critical patent/JP4528022B2/ja
Publication of JP2005318190A publication Critical patent/JP2005318190A/ja
Application granted granted Critical
Publication of JP4528022B2 publication Critical patent/JP4528022B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、ビデオサーバの映像データ送出制御技術に係り、特に映像のIフレームのみを配信する映像高速再生技術に関する。
映像圧縮技術の向上とネットワークの高速化により、映像をサーバに蓄積し、ユーザの要求に応じて映像を配信するビデオオンデマンドという視聴形態が普及してきた。ビデオオンデマンドには、ネットワーク帯域という有限のリソースを利用するという制約が存在する。そしてこの制約の下で従来ビデオデッキで可能であった早送り機能が備わっていることが求められる。
ビデオオンデマンドシステムで早送りを実現する方法には、サーバが全映像データを通常再生時より高速に送信し、クライアントが受け取ったデータをすべてデコードする滑らかな早送り方式と、サーバが映像のすべてを送信するのではなく、フレーム間相関を利用しないアルゴリズムで符号化されているIフレームのみを送信するフレーム飛ばし方式の2つがある。
利用可能なネットワーク帯域とクライアントのデコード能力には限界があるため、ビデオオンデマンドシステムでは、通常フレーム飛ばし方式の高速再生をサポートする。
フレーム飛ばし方式の高速再生を実現する従来技術としては、特開平10−32809号公報に記載された技術がある。これは映像ファイル中のIフレームの挿入間隔と要求された再生速度から、送信すべきIフレームを選択し、クライアントにおける表示時間間隔を算出し正確な速度でフレーム飛ばし再生を実現する方式を示したものである。
特開平10−32809号公報
上記の従来技術によれば、Iフレームのみを送信する再生方式を利用し、指定した速度で映像を再生できる。しかしクライアントのPC(パソコン)においてCPU負荷が高く、サーバから送られた映像のレンダリングが予定通り行われなかった場合や、サーバにおいて映像を格納するディスクのディスク負荷が高く、予定した時間内で映像ファイルの読み込みができない場合には、映像再生速度が遅くなったり、正常に再生できなかったりするといった問題があった。
本発明は、クライアントおよびサーバの負荷を考慮するフレーム飛ばしの配信技術を提供することを目的とする。
本発明は、はじめに指定された再生速度を維持するためのIフレーム送信時間間隔と映像ファイル上で次のIフレームまでのシーク時間を意味するシーク時間間隔とを設定する。そしてビデオサーバまたはクライアントの負荷の上昇により実際のIフレーム送信時間間隔が延びたとき、指定された再生速度を維持するようにはじめのIフレーム送信時間間隔とシーク時間間隔を補正する。
本発明によれば、クライアントのCPU負荷があがったり、ビデオサーバのディスク負荷があがったりしても再生速度を一定に保つことができるため、視聴者の違和感を少なくすることができる。
以下、本発明の実施形態について図面を用いて説明する。
図1は、実施形態のビデオオンデマンドシステムの構成図である。本システムは、クライアント102からネットワーク105を介して映像制御コマンドを受け取り、映像ファイルの該当個所をクライアント102に送出するサーバ101と、サーバ101からネットワーク105を介して映像データを受け取って再生するクライアント102と、ネットワーク105からなる。
サーバ101は、映像配信パラメータを保持し管理する配信設定管理部103と、クライアントからの映像制御コマンドを受け付ける制御コマンド受信部104と、映像制御コマンドを受け映像データの配信処理を行うストリーム送出制御部109と、映像ファイルにアクセスし映像データを読み出すファイル読み出し部108と、映像ファイル112を格納する記憶装置111とから構成される。ただし記憶装置111は別のサーバ上にあってもよい。
クライアント102は、外部の入力装置100から入力された映像制御コマンドに従って制御コマンドの送出から映像データの再生までの全体を制御するプレーヤ制御部107と、サーバに対し映像制御コマンドを送信する制御コマンド送信部106と、サーバから映像データを受信するストリーム受信部110と、受信した映像データの映像部分と音声部分を分離するA/V多重化解除部113と、符号化された映像をデコードして映像を復元する映像デコード部114と、映像データをモニタ116に表示する映像レンダラ115と、符号化された音声データをデコードして音声を復元するオーディオデコード部117と、音声を生成してスピーカ119に再生するオーディオレンダラ118とから構成される。
クライアント102を構成する各コンポーネントを詳細に説明する。
プレーヤ制御部107は、入力装置100から映像制御コマンドを受けると、制御コマンド送信部106に制御コマンド送信を指示する。制御コマンドは、サーバとクライアントを接続するための接続コマンドと、映像の再生、早送りまたは巻き戻しを要求する再生コマンドと、クライアントとサーバとの間のコネクションを切断するための切断コマンドの3種類を備える。
制御コマンド送信部106は、プレーヤ制御部107から受けた指令が接続コマンドの場合は、ネットワーク105を介してサーバ101の制御コマンド受信部104に接続要求メッセージを送信し、その応答として接続応答メッセージを受信する。制御コマンド送信部106は、接続応答メッセージに含まれるセッションIDと映像ファイル112の宛先であるURLをストリーム受信部110に渡す。再生コマンドの場合は、制御コマンド送信部106は、ストリーム受信部110にコマンドをそのまま渡す。
ストリーム受信部110は、制御コマンド送信部106から再生コマンドを受け取ると、先に受け取ったURLに対して、HTTPプロトコルのPOST命令を用いて映像再生要求メッセージ220を送信する。このメッセージの応答として、ストリーム受信部110は、映像データを受信し、受信した映像データをA/V多重化解除部113へ渡す。
A/V多重化解除部113は、受け取ったデータをビデオとオーディオに分解し、それぞれ映像デコード部114と、オーディオデコード部117へ渡す。
映像デコード部114は、圧縮されたビデオデータを伸張して映像データを生成し、再生すべき時間とともに映像レンダラ115へ渡す。映像レンダラ115は、映像デコード部114から受け取った映像データをモニタ116に表示する。
クライアント102は、PCのような計算機であり、CPUとメモリを備える。クライアント102の図示するコンポーネントは、CPUがメモリに格納されたプログラムを実行することによって実現される。
続いてサーバ101を構成するコンポーネントの詳細を説明する。
制御コマンド受信部104は、制御コマンド送信部106が送信した接続要求メッセージを受信した場合には、その要求を配信設定管理部103に転送し、配信設定管理部103が生成したセッションIDとURLを受け取り、制御コマンド送信部106へ接続応答メッセージを返信する。
配信設定管理部103は、制御コマンド受信部104から接続コマンドを受けたときには、セッションIDとURLを生成し、内部に保持する配信設定テーブルに格納する。また再生コマンドを受けたときには、該当するセッションIDに対応してその制御コマンドと最大再生フレームレート、再生開始位置を記録する。配信設定管理部103が配信情報を集中して管理することにより、ビデオサーバの状態を監視するのが容易になる。
ストリーム送出制御部109は、ファイル読み出し部108に映像ファイル112の指定範囲の読み出し指令を発行し、読み出した映像データをネットワーク105経由でクライアント102のストリーム受信部110に送信する。特に高速再生コマンドの場合には、ストリーム送出制御部109は、Iフレームデータを送信する。なお再生コマンド処理時の処理手順の詳細は後述する。
ファイル読み出し部108は、ストリーム送出制御部109から受けたファイル読み出し命令に従い、映像ファイル112の該当するデータの範囲を読み出し、ストリーム送出部109に渡す。
サーバ101は、サーバ計算機のような計算機であり、CPUとメモリを備える。サーバ101の図示するコンポーネントは、そのCPUがメモリに格納されたプログラムを実行することによって実現される。
次に図2を用いて、映像制御コマンドメッセージのデータ形式について説明する。映像制御コマンドメッセージには、接続要求メッセージ200と、その応答である接続応答メッセージ210と、再生、早送り、巻き戻しを要求する映像再生要求メッセージ220と、その応答である映像再生応答メッセージがある。
接続要求メッセージ200は、送信されるデータがない。接続応答メッセージ210は、サーバとクライアントとの間の接続を識別可能なセッションID211と、映像データを受信するサイトのアドレスであるURL212からなる。映像再生要求メッセージ220は、接続を管理するためのセッションID211と、制御コマンド222と、再生速度223と、再生開始位置224と、フレーム飛ばし再生時の最大表示フレームレートであるクライアント最大表示fps225からなる。映像再生応答メッセージ230は、映像再生要求の実行が成功したか否かを表す可否231から成る。
次に図3を用いて配信設定管理部103が保持する配信設定テーブルについて説明する。配信設定テーブル300は、配信先を一意に識別するためのセッションID302と、制御コマンドの種類を示す制御コマンド303と、再生速度304と、再生開始位置305と、フレーム飛ばし再生時の最大表示フレームレートである最大送信フレームレート306と、映像配信用のURL307などを有する。再生速度304は、n倍速のnを示す無次元数である。
次にストリーム送出制御部109がファイル読み出し部108とともに実行する高速再生処理の処理手順について図4のPAD図を用いて説明する。本アルゴリズムは、クライアントの映像再生速度を意味する「再生速度」と、映像ファイル内に挿入されているIフレームの時間間隔を意味する「Iフレーム挿入時間間隔」と、クライアント側で受け付け可能な映像の最大フレームレートを意味する「最大表示フレームレート」と、サーバでIフレームを送信する時間間隔を意味する「Iフレーム送信時間間隔」(msec)と、次に探索の対象とするIフレームまでのシーク時間を意味する「シーク時間間隔」(msec)と、予定の「シーク位置時間」と読み出したIフレームのタイムスタンプ(msec)との差分時間であるIフレーム誤差時間(msec)と、「シーク位置時間」(msec)を保存する変数である「前回のシーク位置時間」と、「シーク位置」(バイト)を保存する変数である「前回のシーク位置」を変数として使用する。以下、「」は一般用語ではなく変数を意味する。
ステップ401では、ストリーム送出制御部109は、配信設定管理部103から当該セッションについて「再生速度」と「最大表示フレームレート」を取得し、これらのパラメータと当該映像ファイルの「Iフレーム挿入時間間隔」とから、「Iフレーム送信時間間隔」(msec)」と「シーク時間間隔」(msec)を算出する。
「Iフレーム送信時間間隔」は、(1)「再生速度」<=「最大表示フレームレート」×「Iフレーム挿入時間間隔」、(2) 「再生速度」>「最大表示フレームレート」×「Iフレーム挿入時間間隔」、によって算出の仕方が異なる。
(1)の条件では、ファイル内のすべてのIフレームを送信可能であるため、
「Iフレーム送信時間間隔」=「Iフレーム挿入時間間隔」/「再生速度」(無次元)
「シーク時間間隔」=「Iフレーム挿入時間間隔」
である。この値では、ファイル内のすべてのIフレームを送信することになる。
(2)の条件では、ファイル内のすべてのIフレームを送信できないため、
「Iフレーム送信時間間隔」=1000/「最大表示フレームレート」(sec)
「シーク時間間隔」=「Iフレーム送信時間間隔」×「再生速度」
である。この条件では、ファイル内に存在するIフレームを適切に読み飛ばして送信することになる。
ステップ402では、ストリーム送出制御部109は、「シーク位置時間」(msec)に「再生開始位置」(msec)を代入し、「Iフレーム誤差時間」(msec)を0に初期化する。「再生開始位置」は、映像ファイルの先頭を0msecとする変数であり、その初期値は制御コマンド受信部104から渡される。
ステップ420では、ストリーム送出制御部109は、映像ファイルの終端に達するなど配信終了条件を満たすまでステップ403〜ステップ411を繰り返し実行する。
ステップ403では、ストリーム送出制御部109は、「シーク位置時間」と「シーク位置」を計算する。まず現在の「シーク位置時間」を「前回のシーク位置時間」に代入し、現在の「シーク位置」を「前回のシーク位置」に保存する。次に新しい「シーク位置時間」は、「前回のシーク位置時間」+「シーク時間間隔」―「Iフレーム誤差時間」とする。新しい「シーク位置」は、「前回のシーク位置」+(「シーク位置時間」―「前回のシーク位置時間」)×「映像ビットレート」(ビット数/ms)とする。
「前回のシーク位置時間」から「Iフレーム誤差時間」を減算することにより、1.5倍速のような中途半端な倍速値のときであっても正確な早送り時間を実現することができる。
あらかじめサーバ101にIフレームデータのシーク位置とタイムスタンプの関係を記録したIフレーム格納ファイルを保存し、Iフレームのシーク時に参照することによって、シーク位置時間が実際のIフレームデータの位置にあうように補正してもよい。Iフレーム格納ファイルがない場合は、ステップ404においてIフレームデータの探索を行う。
ステップ404では、ファイル読み出し部108は、ステップ403で得られた「シーク位置」までシークし、早送りなら前方に、巻き戻しなら後方にIフレームデータを探索して、Iフレームデータを読み出す。ここでIフレームのシーク位置とタイムスタンプを取得し、「Iフレーム誤差時間」←(「Iフレームのタイムスタンプ」−「シーク位置時間」)とし、「シーク位置時間」←「Iフレームのタイムスタンプ」とする。
ステップ404では、記憶装置の負荷が高い場合には、予定したファイル読み込み処理が即座に実行されず待たされる場合がある。またステップ404ではあらかじめ作成したIフレーム格納ファイルを参照し、Iフレーム探索処理を省いてもよい。
またステップ404では、映像ファイルから目的のIフレーム以外に映像データをすべて取得してもよい。その場合には、Iフレームデータと映像データの双方をストリーム受信部110へ送ることになる。
またステップ404では、取得したIフレームに対してなんらかの加工を行ってもよい。前回のIフレーム送信で遅れを検出したときに、Iフレームデータをデコードして画像を復元し、画像サイズを縮小した後、同一のエンコードを行い、エンコードを行ったデータをクライアントに送信する。この場合は、サーバ101にクライアント102と同等の処理能力をもつデコーダおよびエンコーダを備える。
ステップ405では、ストリーム送出制御部109は、取得したIフレームデータをTCP/IPの送信バッファに出力する。送信バッファに出力されたIフレームデータはクライアント102へ送信される。ここではTCP/IPバッファに空きがない場合にデータ送信をブロックさせる設定とする。送信バッファが満たされている場合はデータ書き込み処理がブロックされるため、クライアント102のデータ受信によるバッファのデータ量の減少がない限り、書き込み処理はブロックされる。ここでブロックされている時間を計測することによって、クライアント102のCPU負荷による映像レンダリングの遅れを検出することが可能である。
ステップ406では、ストリーム送出制御部109は、現在時刻が(「前回送信時刻」+「Iフレーム送信時間間隔」)になるまで処理を一時停止する。これにより「Iフレーム送信時間間隔」でデータを定期的に送出することができる。さらにIフレーム送信時間間隔から一時停止時間を除いた実現可能な送信時間間隔を計算し、メモリに保存する。最初のIフレーム送信では送信時刻だけ記録し、一時停止しない。
ステップ407では、ストリーム送出制御部109は、「実際の送信時間間隔」に(「現在時刻」―「前回送信時刻」)を代入する。最初のIフレーム送信では「実際の送信時間間隔」は0である。
ステップ408では、ストリーム送出制御部109は、「実際の送信時間間隔」と「Iフレーム送信時間間隔」を比較し、「実際の送信時間間隔」の方が大きい場合にはステップ409に進む。
ステップ409は、送信パラメータである「Iフレーム送信時間間隔」と、「シーク時間間隔」を変更するステップである。ストリーム送出制御部109は、「Iフレーム送信時間間隔」←「実際の送信時間間隔」とし、「シーク時間間隔」←「実際の送信時間間隔」×「再生速度」とする。このパラメータ修正により、サーバ101のディスク負荷が高い場合と、クライアント102のCPU負荷が高い場合に、Iフレーム映像の送信時間間隔、すなわちクライアント側の表示時間間隔を広げることができる。しかもサーバ101またはクライアント102の負荷がそのピークを過ぎて下がっても次のステップ410の補正条件を満足するまで一定の表示時間間隔と一定の再生速度を維持することができる。
ステップ410では、ストリーム送出制御部109は、ステップ406で保存したIフレームの可能な送信時間間隔とステップ401で算出した初期のIフレーム送信時間間隔とを比較する。すなわちサーバ101またはクライアント102の負荷が下がり、可能な送信時間間隔がほぼ初期のIフレーム送信時間間隔に戻ったか、あるいは前者が後者以下になったと判定したとき、ステップ411に進む。
ステップ411は、「Iフレーム送信時間間隔」と「シーク時間間隔」をステップ401で算出した初期値に補正するステップである。「Iフレーム送信時間間隔」←初期の「Iフレーム送信時間間隔」、「シーク時間間隔」←初期の「シーク時間間隔」とする。これにより一時的に広くなったIフレーム送信時間間隔を元に戻すことができる。
次に実施形態のサーバ101およびクライアント102のハードウエア構成について図5を用いて説明する。
クライアント102は、記憶装置601、メモリ602、CPU603、ネットワークインタフェース604、バス605、サウンドカード606、モニタ116、入力装置100、スピーカ119およびビデオカード610から構成される。記憶装置601は、OS619のほかにすでに説明したプログラムのコンポーネントを格納する。
サーバ101は、メモリ651、CPU652、ネットワークインタフェースと653、バス654、記憶装置111、ビデオカード656、モニタ657および入力装置658から構成される。記憶装置111は、OS664と映像ファイル112のほかにすでに説明したプログラムのコンポーネントを格納する。映像ファイル112を外部の記憶装置やファイルサーバに格納してもよい。
次に図6を用いてクライアント102のモニタ116に表示される画面の例について説明する。クライアントに表示される画面は、映像表示部701と、シークバー702と、巻き戻しボタン703と、再生ボタン704と、早送りボタン705を備える。入力装置100のマウスで表示画面上のコンポーネントをクリックすることによりプレーヤ制御部107に指令が入力され、映像を制御できる。映像表示部701は、受信した映像データを表示する。
シークバー702がマウスでクリックされると、プレーヤ制御部107はシークバー702の値から計算した再生位置をもとに映像の再生を行う。巻き戻しボタン703がマウスでクリックされると、プレーヤ制御部107は巻き戻し指令を実行する。再生ボタン704がマウスでクリックされると、プレーヤ制御部107は再生指令を実行する。早送りボタン705がマウスでクリックされると、プレーヤ制御部107は早送り指令を実行する。
実施例2は、映像の配信プロトコルとしてUDP/IPプロトコルを利用する。UDP/IPプロトコルの場合も正確な速度でで高速早送りを実現できる。実施例1は、TCP/IPの送信バッファへのデータ書き込みをブロックすることによってクライアント102の再生の遅れを検知する方式であったが、実施例2は、サーバ101がクライアント102から映像の表示時間間隔を受信し、再生の遅れをチェックする方式である。
プレーヤ制御部107は、映像デコード部114からIフレームのデコードが終了するたびに終了通知を受け、その時刻から表示時間間隔を計算し、制御コマンド送信部106を介してサーバ101へ表示時間間隔を送信する。ただしクライアント102は、Iフレームのデコードが終了するたびに表示時間間隔を送信するのではなく、一定時間間隔で送るようにしてもよい。
制御コマンド受信部104は、実施例1の映像制御コマンドメッセージのほかに、クライアント102から表示時間間隔メッセージを受信し、配信設定管理部103に通知する。表示時間間隔メッセージは、セッションIDと表示時間間隔を含む。
配信設定管理部103は、実施例1で保持する情報のほかに、セッション対応に表示時間間隔を保持する。
ストリーム送出制御部109は、高速再生時にクライアントの表示時間間隔を参照し、クライアントの表示時間間隔を実際の送信時間間隔とする補正をする。
実施例1の処理手順のステップ407とステップ408の間に、図7のステップ501、ステップ502およびステップ503を追加して実行することにより実施例2を実現することができる。なお実施例2ではステップ405における書き込み処理のブロックはない。
ステップ501では、ストリーム送出制御部109は、配信設定管理部103からクライアントの表示時間間隔を取得する。
ステップ502では、ストリーム送出制御部109は、サーバ101の実際の送信時間間隔とクライアント102の表示時間間隔とを比べ、クライアント102の表示時間間隔の方が長い、すなわちクライアント側の負荷が高く再生が間に合っていない状態のときには、ステップ503を実行する。
ステップ503では、ストリーム送出制御部109は、クライアントの再生の遅れを考慮して配信のパラメータを修正する。すなわちクライアントの表示時間間隔を実際の送信時間間隔とする。これによりクライアントが処理可能なフレームレートで映像を送信することができる。
上記の手順によりストリーム送出制御部109は、映像配信プロトコルとしてUDP/IPプロトコルを利用する場合であっても、クライアント102の負荷状況を示す情報の取得が可能になる。
実施例2によりUDP/IPプロトコルに従って映像データを配信する場合であっても、クライアントの負荷を考慮して最適なフレームレートの早送り映像を送ることが可能になる。
実施形態のビデオオンデマンドシステムの構成図である。 映像制御コマンドメッセージのデータ形式を示す図である。 配信設定テーブルの例を示す図である。 実施例1の高速再生処理の手順を示すPAD図である。 サーバおよびクライアントのハードウエア構成図である。 クライアントの表示画面の例を示す図である。 実施例2の高速再生処理の手順を示すPAD図である。
符号の説明
101:サーバ、102:クライアント、103:配信設定管理部、108:ファイル読み出し部、109:ストリーム送出制御部

Claims (8)

  1. クライアント装置からの要求に従いネットワークを介して、映像ファイル中の他のフレームと無相関で符号化されたIフレームデータを前記クライアント装置に配信するサーバ装置による映像配信方法において、
    前記クライアント装置のn倍速の映像再生速度のnを示す再生速度およびフレーム飛ばし再生時の最大表示フレームレート並びに前記サーバ装置の前記映像ファイルに挿入されるIフレームの時間間隔を意味するIフレーム挿入時間間隔から、Iフレームを送信する時間間隔であるIフレーム送信時間間隔と前記映像ファイル中のIフレームを探索してから次のIフレームの探索に要するシーク時間を意味するシーク時間間隔とを設定するステップと、
    前記Iフレームの読み出しから前記シーク時間間隔で前記映像ファイルから前記次のIフレームを読み出すステップと、
    読み出した前記次のIフレームを、前記Iフレームの送信から前記Iフレーム送信時間間隔で前記クライアント装置へ送信するステップと、
    実際のIフレーム送信時間間隔が前記Iフレーム送信時間間隔より大きい場合に、前記実際のIフレーム送信時間間隔によって前記Iフレーム送信時間間隔を補正し、前記実際のIフレーム送信時間間隔と前記再生速度によって前記シーク時間間隔を補正するステップとを有し、
    補正後の前記Iフレーム送信時間間隔と補正後の前記シーク時間間隔とを用いて、さらに次のIフレームについて前記次のIフレームを読み出すステップと前記クライアント装置へ送信するステップを実行することを特徴とする映像配信方法。
  2. 補正後の前記Iフレーム送信時間間隔が設定した前記Iフレーム送信時間間隔以下になったとき、補正後の前記Iフレーム送信時間間隔を設定した前記Iフレーム送信時間間隔に戻すことを特徴とする請求項1に記載の映像配信方法。
  3. クライアント装置からの要求に従いネットワークを介して、映像ファイル中の他のフレームと無相関で符号化されたIフレームデータを前記クライアント装置に配信するサーバ装置による映像配信方法において、
    前記クライアント装置のn倍速の映像再生速度のnを示す再生速度およびフレーム飛ばし再生時の最大表示フレームレート並びに前記サーバ装置の前記映像ファイルに挿入されるIフレームの時間間隔を意味するIフレーム挿入時間間隔から、Iフレームを送信する時間間隔であるIフレーム送信時間間隔と前記映像ファイル中のIフレームを探索してから次のIフレームの探索に要するシーク時間を意味するシーク時間間隔とを設定するステップと、
    前記Iフレームの読み出しから前記シーク時間間隔で前記映像ファイルから前記次のIフレームを読み出すステップと、
    読み出した前記次のIフレームを、前記Iフレームの送信から前記Iフレーム送信時間間隔で前記クライアント装置へ送信するステップと、
    前記クライアント装置から、前記Iフレームと前記次のIフレームとの現在の表示時間間隔を取得するステップと、
    実際のIフレーム送信時間間隔が前記現在の表示時間間隔より小さい場合に、前記実際のIフレーム送信時間間隔を前記現在の表示時間間隔に修正するステップと、
    前記実際のIフレーム送信時間間隔が前記Iフレーム送信時間間隔より大きい場合に、前記実際のIフレーム送信時間間隔によって前記Iフレーム送信時間間隔を補正し、前記実際のIフレーム送信時間間隔と前記再生速度によって前記シーク時間間隔を補正するステップとを有し、
    補正後の前記Iフレーム送信時間間隔と補正後の前記シーク時間間隔とを用いて、さらに次のIフレームについて前記次のIフレームを読み出すステップと前記クライアント装置へ送信するステップを実行することを特徴とする映像配信方法。
  4. クライアント装置からの要求に従いネットワークを介して、映像ファイル中の他のフレームと無相関で符号化されたIフレームデータを前記クライアント装置に配信するサーバ装置に、
    前記クライアント装置のn倍速の映像再生速度のnを示す再生速度およびフレーム飛ばし再生時の最大表示フレームレート並びに前記サーバ装置の前記映像ファイルに挿入されるIフレームの時間間隔を意味するIフレーム挿入時間間隔から、Iフレームを送信する時間間隔であるIフレーム送信時間間隔と前記映像ファイル中のIフレームを探索してから次のIフレームの探索に要するシーク時間を意味するシーク時間間隔とを設定する機能、
    前記Iフレームの読み出しから前記シーク時間間隔で前記映像ファイルから前記次のIフレームを読み出す機能、
    読み出した前記次のIフレームを、前記Iフレームの送信から前記Iフレーム送信時間間隔で前記クライアント装置へ送信する機能、および
    実際のIフレーム送信時間間隔が前記Iフレーム送信時間間隔より大きい場合に、前記実際のIフレーム送信時間間隔によって前記Iフレーム送信時間間隔を補正し、前記実際のIフレーム送信時間間隔と前記再生速度によって前記シーク時間間隔を補正する機能を実現させ、
    補正後の前記Iフレーム送信時間間隔と補正後の前記シーク時間間隔とを用いて、さらに次のIフレームについて前記次のIフレームを読み出す機能と前記クライアント装置へ送信する機能を実現させることを特徴とするプログラム。
  5. クライアント装置からの要求に従いネットワークを介して、映像ファイル中の他のフレームと無相関で符号化されたIフレームデータを前記クライアント装置に配信するサーバ装置に、
    前記クライアント装置のn倍速の映像再生速度のnを示す再生速度およびフレーム飛ばし再生時の最大表示フレームレート並びに前記サーバ装置の前記映像ファイルに挿入されるIフレームの時間間隔を意味するIフレーム挿入時間間隔から、Iフレームを送信する時間間隔であるIフレーム送信時間間隔と前記映像ファイル中のIフレームを探索してから次のIフレームの探索に要するシーク時間を意味するシーク時間間隔とを設定する機能、
    前記シーク時間間隔で前記映像ファイルから前記次のIフレームを読み出す機能、
    読み出した前記次のIフレームを、前記Iフレームの送信から前記Iフレーム送信時間間隔で前記クライアント装置へ送信する機能、
    前記クライアント装置から、前記Iフレームと前記次のIフレームとの現在の表示時間間隔を取得する機能、
    実際のIフレーム送信時間間隔が前記現在の表示時間間隔より小さい場合に、前記実際のIフレーム送信時間間隔を前記現在の表示時間間隔に修正する機能、および
    前記実際のIフレーム送信時間間隔が前記Iフレーム送信時間間隔より大きい場合に、前記実際のIフレーム送信時間間隔によって前記Iフレーム送信時間間隔を補正し、前記実際のIフレーム送信時間間隔と前記再生速度によって前記シーク時間間隔を補正する機能を実現させ、
    補正後の前記Iフレーム送信時間間隔と補正後の前記シーク時間間隔とを用いて、さらに次のIフレームについて前記次のIフレームを読み出す機能と前記クライアント装置へ送信する機能を実現させることを特徴とするプログラム。
  6. 映像データの配信を要求するクライアント装置と、前記クライアント装置からの要求に従いネットワークを介して、前記映像データを含む映像ファイル中の他のフレームと無相関で符号化されたIフレームデータを前記クライアント装置に配信するサーバ装置とを有する映像配信システムにおいて、前記サーバ装置は、
    前記クライアント装置のn倍速の映像再生速度のnを示す再生速度およびフレーム飛ばし再生時の最大表示フレームレート並びに前記サーバ装置の前記映像ファイルに挿入されるIフレームの時間間隔を意味するIフレーム挿入時間間隔から、Iフレームを送信する時間間隔であるIフレーム送信時間間隔と前記映像ファイル中のIフレームを探索してから次のIフレームの探索に要するシーク時間を意味するシーク時間間隔とを設定する手段と、
    前記Iフレームの読み出しから前記シーク時間間隔で前記映像ファイルから前記次のIフレームを読み出す手段と、
    読み出した前記次のIフレームを、前記Iフレームの送信から前記Iフレーム送信時間間隔で前記クライアント装置へ送信する手段と、
    実際のIフレーム送信時間間隔が前記Iフレーム送信時間間隔より大きい場合に、前記実際のIフレーム送信時間間隔によって前記Iフレーム送信時間間隔を補正し、前記実際のIフレーム送信時間間隔と前記再生速度によって前記シーク時間間隔を補正する手段とを有し、
    補正後の前記Iフレーム送信時間間隔と補正後の前記シーク時間間隔とを用いて、さらに次のIフレームについて前記次のIフレームを読み出す手段と、前記クライアント装置へ送信する手段の処理を実行する手段を有することを特徴とする映像配信システム。
  7. 前記サーバ装置は、補正後の前記Iフレーム送信時間間隔が設定した前記Iフレーム送信時間間隔以下になったとき、補正後の前記Iフレーム送信時間間隔を設定した前記Iフレーム送信時間間隔に戻す手段を有することを特徴とする請求項6に記載の映像配信システム。
  8. 映像データの配信を要求するクライアント装置と、前記クライアント装置からの要求に従いネットワークを介して、前記映像データを含む映像ファイル中の他のフレームと無相関で符号化されたIフレームデータを前記クライアント装置に配信するサーバ装置とを有する映像配信システムにおいて、前記サーバ装置は、
    前記クライアント装置のn倍速の映像再生速度のnを示す再生速度およびフレーム飛ばし再生時の最大表示フレームレート並びに前記サーバ装置の前記映像ファイルに挿入されるIフレームの時間間隔を意味するIフレーム挿入時間間隔から、Iフレームを送信する時間間隔であるIフレーム送信時間間隔と前記映像ファイル中のIフレームを探索してから次のIフレームの探索に要するシーク時間を意味するシーク時間間隔とを設定する手段と、
    前記Iフレームの読み出しから前記シーク時間間隔で前記映像ファイルから前記次のIフレームを読み出す手段と、
    読み出した前記次のIフレームを、前記Iフレームの送信から前記Iフレーム送信時間間隔で前記クライアント装置へ送信する手段と、
    前記クライアント装置から、前記Iフレームと前記次のIフレームとの現在の表示時間間隔を取得する手段と、
    実際のIフレーム送信時間間隔が前記現在の表示時間間隔より小さい場合に、前記実際のIフレーム送信時間間隔を前記現在の表示時間間隔に修正する手段と、
    前記実際のIフレーム送信時間間隔が前記Iフレーム送信時間間隔より大きい場合に、前記実際のIフレーム送信時間間隔によって前記Iフレーム送信時間間隔を補正し、前記実際のIフレーム送信時間間隔と前記再生速度によって前記シーク時間間隔を補正する手段とを有し、
    補正後の前記Iフレーム送信時間間隔と補正後の前記シーク時間間隔とを用いて、さらに次のIフレームについて前記次のIフレームを読み出す手段と前記クライアント装置へ送信する手段の処理を実行する手段を有することを特徴とする映像配信システム。
JP2004132746A 2004-04-28 2004-04-28 映像配信方法およびシステム Expired - Fee Related JP4528022B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004132746A JP4528022B2 (ja) 2004-04-28 2004-04-28 映像配信方法およびシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004132746A JP4528022B2 (ja) 2004-04-28 2004-04-28 映像配信方法およびシステム

Publications (2)

Publication Number Publication Date
JP2005318190A JP2005318190A (ja) 2005-11-10
JP4528022B2 true JP4528022B2 (ja) 2010-08-18

Family

ID=35445178

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004132746A Expired - Fee Related JP4528022B2 (ja) 2004-04-28 2004-04-28 映像配信方法およびシステム

Country Status (1)

Country Link
JP (1) JP4528022B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109922365A (zh) * 2018-12-19 2019-06-21 西安交通大学 一种针对移动端节能的视频融合资源消耗模型建立方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100853498B1 (ko) 2007-01-09 2008-08-22 삼성전자주식회사 디지털 셋탑박스에서의 스트림 처리장치 및 그 방법
JP7136458B2 (ja) * 2019-07-26 2022-09-13 サイレックス・テクノロジー株式会社 符号化装置、再生装置、作成装置、再生システム、符号化方法、再生方法、作成方法、および、プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998038798A1 (en) * 1997-02-26 1998-09-03 Mitsubishi Denki Kabushiki Kaisha Device, system, and method for distributing video data
JPH11215481A (ja) * 1998-01-22 1999-08-06 Fujitsu Ltd 画像データ送受信システムおよびその送信側装置およびその受信側装置並びにそのプログラムを記憶した記憶媒体
JP2002199344A (ja) * 2000-12-26 2002-07-12 Toshiba Corp マルチメディア情報送信サーバ装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998038798A1 (en) * 1997-02-26 1998-09-03 Mitsubishi Denki Kabushiki Kaisha Device, system, and method for distributing video data
JPH11215481A (ja) * 1998-01-22 1999-08-06 Fujitsu Ltd 画像データ送受信システムおよびその送信側装置およびその受信側装置並びにそのプログラムを記憶した記憶媒体
JP2002199344A (ja) * 2000-12-26 2002-07-12 Toshiba Corp マルチメディア情報送信サーバ装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109922365A (zh) * 2018-12-19 2019-06-21 西安交通大学 一种针对移动端节能的视频融合资源消耗模型建立方法

Also Published As

Publication number Publication date
JP2005318190A (ja) 2005-11-10

Similar Documents

Publication Publication Date Title
JP4405523B2 (ja) コンテンツ配信システム、このコンテンツ配信システムで使用されるサーバ装置及び受信装置
KR101737325B1 (ko) 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치
JP4313268B2 (ja) ビデオをオン・デマンドでレンダリングするvcrに似た機能
US20060037057A1 (en) Method and system of enabling trick play modes using HTTP GET
JP5257367B2 (ja) 映像配信装置、映像配信システム及び映像配信方法
CN109937448B (zh) 用于在特技播放回放期间提供音频内容的系统和方法
EP2413564B1 (en) Method and apparatus for transmitting and receiving streaming data based on RTSP sessions
JP2008262686A (ja) 同報通信データを記録するための方法、および、装置
JP2008113301A (ja) ビデオ送信装置及びビデオ送信方法
JP2013211784A (ja) コンテンツデータ記録装置およびコンテンツデータ記録方法
JP2010021663A (ja) 通信装置及び通信方法
JP2003111048A (ja) コンテンツ再生のためのサーバ及びプログラム
JP2013214800A (ja) ストリーミングメディア再生装置、ストリーミングメディア再生方法、及びプログラム
JP4315914B2 (ja) 画像再生装置及び画像再生方法
JP4526294B2 (ja) ストリームデータ送信装置、受信装置、プログラムを記録した記録媒体、およびシステム
JP4528022B2 (ja) 映像配信方法およびシステム
JP2005323068A (ja) ホームネットワークavサーバ及びホームネットワークavサーバプログラム
JP4213697B2 (ja) 動画ストリームの画像再生装置及び方法
JP2006339980A (ja) 映像再生装置
JP4484220B2 (ja) 映像配信装置
JP2005176164A (ja) 映像蓄積配信装置および映像配信システム
JP2019211638A (ja) 処理装置、出力装置、同期制御システム、及びこれらの制御方法、並びにプログラム
US11470362B1 (en) Providing audio data for a video frame
JP2012222689A (ja) 再生装置及び再生方法
JP2011087333A (ja) 画像再生装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070201

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100422

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: 20100518

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100604

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130611

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees