JP2014143496A - 送信装置、送信装置の制御方法およびプログラム - Google Patents
送信装置、送信装置の制御方法およびプログラム Download PDFInfo
- Publication number
- JP2014143496A JP2014143496A JP2013009617A JP2013009617A JP2014143496A JP 2014143496 A JP2014143496 A JP 2014143496A JP 2013009617 A JP2013009617 A JP 2013009617A JP 2013009617 A JP2013009617 A JP 2013009617A JP 2014143496 A JP2014143496 A JP 2014143496A
- Authority
- JP
- Japan
- Prior art keywords
- request
- key frame
- encoding
- time
- frame request
- 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.)
- Pending
Links
Images
Abstract
【課題】サーバがクライアントの要求に応じて短時間でキーフレームを送信してリアルタイム性を確保しながらも、多数のクライアントの同時接続によるキーフレームの乱発的生成を防止する。
【解決手段】受信装置に符号化した動画データ動画データを送信する送信装置は、受信装置から受信した要求に対応するキーフレーム依頼と、該キーフレーム依頼の登録時から規定時間内に受信した別の要求に対応するキーフレーム依頼とを一つのキーフレーム依頼としてフレーム内符号化を実行する。
【選択図】 図7
【解決手段】受信装置に符号化した動画データ動画データを送信する送信装置は、受信装置から受信した要求に対応するキーフレーム依頼と、該キーフレーム依頼の登録時から規定時間内に受信した別の要求に対応するキーフレーム依頼とを一つのキーフレーム依頼としてフレーム内符号化を実行する。
【選択図】 図7
Description
本発明は動画データのネットワーク伝送を行う送信装置、送信装置の制御方法およびプログラムに関する。
インターネット及びLAN上をリアルタイムに動画データをストリーム伝送する有力な技術として、RTP(Realtime Transport Protocol)が知られている。RTPによるストリームを制御するプロトコルとして、RTSP(Realtime Streaming Protocol)が一般的に利用されている。また、動画ストリーム伝送に利用される主要な動画符号化方式として、H.264(MPEG−4/AVC)方式が知られている。H.264方式を始めとした動画符号化方式は、いわゆるフレーム間予測という方式を採用している。フレーム間予測方式において、動画像フレームは、一つのフレームのデータのみでそのフレーム画像を復号可能なフレームと、別フレームデータも含めて一つのフレーム画像を復号可能なフレームに分けることができる。特に、前者のフレームは他のフレームと区別するために、一般的にキーフレームと呼ばれ、H.262/263方式ではIフレーム、H.264方式ではIDRフレームに該当する。
動画データのキーフレームの有用性は、ランダムアクセスにおいて再生開始点(フレーム)となることにある。これは動画ストリーム伝送の際も同様である。従って、サーバは、クライアントから再生開始要求を受信した場合、キーフレームから送信することが重要である。何故なら、非キーフレームから送信したとしても、クライアントはキーフレームが到着するまでの間の動画フレームを正常に復号することはできないからである。従って、ビデオ会議や監視カメラの様にリアルタイム性が重要となる用途では、サーバは、クライアントからの再生開始要求に応じて、即座にキーフレームを送信する機能の実装が重要である。サーバがキーフレームの送信を即座に行わないと、クライアントは即座に再生を開始できない。すなわち、リアルタイム性を損なう。なお、一般的なキーフレームの生成間隔は数秒のオーダーである。このように、サーバは、クライアントからの再生開始要求またはキーフレーム同期要求に応じて、できるだけ早くキーフレームを送信する必要がある。
このような課題に対する従来技術として、サーバがクライアントから要求を受信すると、サーバ内の符号化部に対してキーフレームの即時生成を依頼するという方法がある。非特許文献1には、Full INTRA−frame Request(FIR)について記載されている。具体的には、非特許文献1には、クライアントがRTCP(RTP Control Protocol)に基づいて、サーバに対してフレーム内符号化データの即時生成と送信を要求するFIRについて記載されている。サーバ内の符号化部は、FIRによってキーフレームの即時生成依頼を受けると、本来の次のキーフレーム生成のタイミングに関係なく、即座にキーフレームを生成する。すなわち、サーバはクライアントの再生開始要求の直後にキーフレームを生成し、送信できる。これにより、リアルタイム性が確保される。
T. Turletti and C. Huitema. RTP Payload Format for H.261Video Streams. 1996.
しかしながら、従来技術のように、サーバが、クライアントからの再生開始要求に応じてサーバ内の符号化部にキーフレームの即時生成を指示する方法では、複数のクライアントが短時間の間に接続要求を行った場合に問題が生じる。複数のクライアントが短時間の間に接続要求を行った場合、符号化部は短時間の間に複数のキーフレームを生成することにより、動画データの送信レートが不必要に高まってしまう。特に、動画ストリームが全てユニキャストで送信される場合、総送信データレートが一時的に急増することになり、データ伝送の輻輳を起こす可能性が高くなる。
また、符号化部が複数のキーフレームを短時間の間に生成すると、処理負荷が非常に高まることから、特に組み込み機器の符号化装置では機能停止に陥ることもある。動画ストリームがユニキャストで送信される場合、ネットワーク回線の容量から同時接続クライアント数は十数までに制限されることが現実的である。これに対し、マルチキャストで送信される場合は動画ストリームを共有するため数十から百程度のクライアント数に対応することが現実的な使用例である。つまり、ユニキャスト送信並びにマルチキャスト送信に対応するために、少なくとも数十のクライアントからの同時接続に耐えるシステムを実現することが要求される。
また、符号化部が出力する動画データは、リアルタイム動画視聴以外にも利用される場合もあり、このような場合にも問題が生じる。例えば、撮影映像の録画サービスを有する監視カメラシステムでは、リアルタイムストリームのクライアントが複数同時に接続しキーフレームが短時間に複数生成される。この場合、録画映像データにもキーフレームが複数記録されることになり、映像データのデータ量を無駄に増大させることになる。
本発明は、上記課題に鑑みてなされたものであり、サーバがクライアントの要求に応じて短時間でキーフレームを送信してリアルタイム性を確保しながらも、複数のクライアントの同時接続によるキーフレームの乱発的生成を防止することを目的とする。
上記目的を達成するための一手段として、本発明のデータ送信装置は以下の構成を備える。すなわち、受信装置に符号化した動画データを送信する送信装置であって、キーフレーム依頼を受けて動画データに対してフレーム内符号化を行う符号化手段と、前記受信装置から要求を受信し、該要求に対応するキーフレーム依頼を登録する管理手段とを備え、前記管理手段は、受信した要求に対応するキーフレーム依頼と、該キーフレーム依頼の登録時からから規定時間内に受信した別の要求に対応するキーフレーム依頼とを一つのキーフレーム依頼として、該規定時間の経過後に前記符号化手段に送ることを特徴とする。
本発明によれば、サーバがクライアントの要求に応じて短時間でキーフレームを送信してリアルタイム性を確保しながらも、複数のクライアントの同時接続によるキーフレームの乱発的生成を防止することが可能となる。
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
以下の実施形態では、一種類のH.264映像を出力可能な映像符号化装置を備えるネットワークカメラが、同時に複数の映像再生クライアントにストリーム配信する状況を想定する。なお、簡単のため、ネットワークカメラとクライアントとの間のネットワーク接続、配信メディア情報のやり取り、ストリーム送信の開始処理、停止処理の説明については省略する。
[第1実施形態]
図1は、本実施形態によるシステムの全体構成を示す図である。サーバとしてのネットワークカメラ101は、ネットワーク102を介して、クライアント1〜N(103〜105)と接続される。ここで、ネットワークカメラ101から出力される動画ストリーム(符号化後の動画データ)は、ユニキャストもしくはマルチキャストでクライアントに配信される。
図1は、本実施形態によるシステムの全体構成を示す図である。サーバとしてのネットワークカメラ101は、ネットワーク102を介して、クライアント1〜N(103〜105)と接続される。ここで、ネットワークカメラ101から出力される動画ストリーム(符号化後の動画データ)は、ユニキャストもしくはマルチキャストでクライアントに配信される。
図2は、本実施形態によるネットワークカメラ101(送信装置)の機能ブロックを示す図である。撮像部201は、映像を撮影し、撮像データ(動画データ)をビットマップデータとして符号化部202に渡す。符号化部202は、フレーム間予測を用いる符号化方式であるH.264方式で撮像データを圧縮符号化し、フレームデータとしてフレームバッファ203へ格納する。なお、符号化部202は、複数の符号化設定のH.264データストリームを同時に生成することはできない。ストリーム送信部204は、フレームバッファ203に格納されたフレームデータをRTPパケットに変換する。RTPパケットは、通信部205、ネットワーク102を介してクライアント1〜N(103〜105)へ送信される。
ストリーム管理部206は、RTSPに基づいたセッション管理の機能と、映像ストリームの送信管理の機能を有する。さらに、ストリーム管理部206は、クライアントからのRTCPメッセージに基づいたパケットロス及び輻輳の検知機能と、フレーム内符号化されたキーフレーム生成を符号化部202に対し依頼する機能を有する。
ストリーム管理部206は、まず、第1のクライアント103からRTSP SETUP要求を受信すると、符号化部202に対し符号化処理の準備を指示する。次に、ストリーム管理部206は、クライアント103からRTSP PLAY要求を受信すると、符号化部202に対しキーフレームの生成を依頼することにより、フレーム内符号化処理の開始を指示する。これと同時に、ストリーム管理部206は、ストリーム送信部204に対しクライアント103へのH.264データのストリーム送信を指示する。また、ストリーム管理部206は、キーフレーム依頼待機状況を格納するキーフレーム依頼格納部207を有する。ストリーム管理部206は、クライアントからのRTSP PLAY要求に応じて、キーフレーム依頼格納部207を参照して、以下に述べるような方法で符号化部202に対してキーフレームの生成依頼処理を行う。
本実施形態によるストリーム管理部206が行う、符号化部202に対するフレーム内符号化されたキーフレーム生成依頼処理の手順について、図を参照して説明する。但し、簡単のため、ストリームの停止処理の説明については省略する。図3に、ストリーム管理部206が行うフレーム内符号化されたキーフレーム生成依頼処理のフローチャートを示す。図3示す処理は、ストリーム管理部206がクライアントから要求メッセージを受信した際に開始する。まず、ストリーム管理部206は、クライアントから受信した要求メッセージの解析処理を行う(S301)。ストリーム管理部206は、S301の解析の結果に基づいて、要求メッセージが新たなストリームの開始要求、すなわち、RTSP PLAY要求であるか否かを判断する(S302)。要求メッセージがRTSP PLAY要求ではないと判断した場合(S302のNo)は、ストリーム管理部206は処理をS304へ進める。一方、要求メッセージがRTSP PLAY要求であると判断した場合(S302のYes)は、ストリーム管理部206は、RTSP PLAY要求に対応するキーフレーム依頼の登録処理を行い(S303)、処理をS304へ進める。その後、ストリーム管理部206は、符号化部202を監視することによって、キーフレーム依頼の有効性を判定する処理を行い(S304)、符号化部202に対してキーフレーム生成依頼を実行する(S305)。その後、ストリーム管理部206は、キーフレーム依頼格納部207を参照し(S306)、待機しているキーフレーム依頼がある場合(S307のYes)、処理をS301に戻す。待機しているキーフレーム依頼がない場合(S307のNo)、ストリーム管理部206は、処理を終了する。
図3におけるクライアント要求の解析処理(S301)から、キーフレーム依頼の登録処理(S303)について、図4及び図5を用いて具体的に説明する。図4は、本実施形態によるクライアント要求の解析に関する処理(S301〜S303)の詳細な処理フローチャートを示す図である。S401とS402は、図3のS301とS302と同様の処理を行う。ストリーム管理部206は、まずクライアントから要求メッセージであるRTSP要求を受信し(S401)、この要求が新たなストリームの送信依頼としてのRTSP PLAY要求であるか否かを判定する(S402)。RTSP PLAY要求ではない場合(S402のNo)、ストリーム管理部206は、このRTSP PLAY要求に対応するキーフレーム依頼を登録する必要はないと判断して、処理を終了する。一方、RTSP PLAY要求である場合(S402のYes)、ストリーム管理部206は、キーフレーム依頼格納部207を参照して(S403)、以降の処理を進める(S404〜S407)。
ここで、キーフレーム依頼格納部207について説明する。図5は、キーフレーム依頼格納部207に格納される内容を示す図である。キーフレーム依頼格納部207は、格納する項目として、待機状態であるキーフレーム依頼の有無を示す項目(501)と、登録時間(502)を有する。ここで、待機状態とは、ストリーム管理部206が受信したRTSP PLAY要求に対応するキーフレーム依頼が、その依頼の実行のために待機している状態を表す。また、登録時間とは、そのキーフレーム依頼がストリーム管理部206に登録された時間を表す。図5(a)は、待機状態のキーフレーム依頼が無い場合のキーフレーム依頼格納部207の様子を示しており、依頼待機有無の項目(503)が0、すなわち、待機しているキーフレーム依頼が無いことを示している。したがって、登録時間(504)も0である。一方、図5(b)はキーフレーム依頼が待機状態である場合のキーフレーム依頼格納部207の様子を示しており、依頼待機有無の項目(505)が1、すなわち、待機しているキーフレーム依頼が一つあることを示している。そして、この依頼が登録された時間が101000ミリ秒と記録されている(506)。
ストリーム管理部206は、キーフレーム依頼格納部207を参照し(S403)、待機状態のキーフレーム依頼の有無を判定する(S404)。既に待機状態のキーフレーム依頼がある場合(S404のYes)、すなわち図5(b)の場合、ストリーム管理部206は、新たにキーフレーム依頼を登録する必要はないと判断して、処理を終了する。これは、複数の待機状態のキーフレーム生成依頼を作らずに、一つを共有するためである。一方、待機状態のキーフレーム依頼がない場合(S404のNo)、すなわち図5(a)の場合、ストリーム管理部206は、更に現在キーフレームを送信中であるか判定する(S405)。なお、ここではストリーム管理部206がRTSP PLAY要求を受信した後に、キーフレームを送信中か否かを判定するものとする。また、キーフレームを送信中であるかは、ストリーム送信部204を監視することによって判定できる。キーフレームを現在送信中である場合(S405のYes)は、ストリーム管理部206は、キーフレームの生成が実行されることにより、新たに依頼を登録する必要はないと判断して、処理を終了する。なお、S403からS404を経ずにS405へ処理を進めることも可能である。一方、キーフレームを現在送信中でない場合(S405のNo)は、ストリーム管理部206は、現在時刻を取得(S406)する。そして、ストリーム管理部206は、キーフレーム依頼格納部207の待機有無の項目(501)を1とし、取得した現在時刻を登録時間の項目(502)に設定し(S407)、処理を終了する。以上の手順により、ストリーム管理部206はクライアントからのストリーム開始要求に応じてキーフレーム依頼を即座には実行せず、まず待機状態とする。つまり、一つのキーフレーム依頼が登録されてから短時間の間にストリーム管理部206が別のクライアントからRTSP PLAY要求を受信し、RTSP PLAY要求に対応するキーフレーム依頼が登録された場合、一つの待機状態が共有される。
次に、待機状態のキーフレーム依頼の有効性判定処理(S304)について、図6を参照して説明する。図6は、本実施形態によるキーフレーム依頼の有効性判定処理(S304)の詳細な処理フローチャートを示す図である。まず、ストリーム管理部206は、フレームバッファ203を監視し(S601)、符号化部によりキーフレームが生成されたか否かを判定する(S602)。キーフレームが作成されていない場合(S602のNo)は、ストリーム管理部206は、待機状態のキーフレーム依頼の有効性判定は不要と判断して、処理を終了する。一方、キーフレームが作成された場合(S602のYes)は、ストリーム管理部206は、キーフレーム依頼格納部207を参照する(S603)ことによって、待機状態のキーフレーム依頼があるか判定する(S604)。待機状態のキーフレーム依頼が無い場合(S604のNo)は、ストリーム管理部206は、機状態のキーフレーム依頼の有効性判定は不要と判断して、処理を終了する。一方、待機状態のキーフレーム依頼がある場合(S604のYes)は、ストリーム管理部206は、キーフレーム依頼格納部207の待機設定を無効化する(S605)。つまり、図5を(b)から(a)のように変える。以上の手順により、ストリーム管理部206は、符号化部202がキーフレームを生成した場合には、それまで待機状態となっていたキーフレーム依頼に対して符号化が実行されたと判断し、このキーフレーム依頼を無効化する。
次に、図3におけるキーフレーム生成依頼処理(S305)について、図7を参照して説明する。図7は、本実施形態によるキーフレーム生成依頼処理(S305)の詳細な処理フローチャートを示す図である。まず、ストリーム管理部206は、キーフレーム依頼格納部207を参照し(S701)、待機状態のキーフレーム依頼があるか否かを判定する(S702)。待機状態のキーフレーム依頼がない場合(S702のNo)は、ストリーム管理部206は、キーフレーム生成の必要はないと判断して、処理を終了する。一方、待機状態のキーフレーム依頼がある場合(S702のYes)は、ストリーム管理部206は、キーフレーム依頼格納部207に格納されている現在時刻を取得する(S703)。そして、ストリーム管理部206は、取得した登録時間と所定の規定時間を比較して、この登録時間が規定時間を経過したか否かを判断する(S704)。待機状態のキーフレーム依頼に対して、前回符号化された時間から短い時間内で符号化を実行することを防ぐためである。登録時間が規定時間を経過していない場合(S704のNo)は、ストリーム管理部206は、キーフレーム生成の必要はないと判断して、処理を終了する。登録時間が規定時間を経過した場合(S704のYes)は、ストリーム管理部206は、符号化部202に対して直ちにキーフレームの生成依頼を行う(S705)。そして、ストリーム管理部206は、キーフレーム依頼格納部207の待機状態の設定を無効化し(S706)、処理を終了する。以上の手順により、ストリーム管理部206は、キーフレーム依頼が待機状態になってから規定時間内に符号化部202にキーフレーム生成の依頼を行うことができる。そして、符号化部202は、キーフレーム依頼を受けると即座に符号化処理を行い、キーフレームを生成する。
以上の手順によりキーフレーム依頼を遅延させて実行する様子について、図8を参照して説明する。図8(a)は、クライアント1(103)に対して送信される符号化フレームの様子を時間軸に沿って表している。キーフレーム801が最初に生成され、それ以降はフレーム間参照符号化された、いわゆるPフレーム802が定期的に生成されている。
図8(b)は、図8(a)の802のPフレーム生成直後にクライアント2(104)からクライアントN(105)がRTCP PLAY要求804を短時間の間に連続して行った場合の、本実施形態によるキーフレーム生成依頼処理の様子を表している。最初のRTCP PLAY要求803に対応するキーフレーム依頼805は、所定の規定時間の間、待機状態(待機状態のキーフレーム依頼)となる(図4のS407)。所定の規定時間内に受信されたRCTP PLAY要求804に対応するキーフレーム依頼は、待機状態のキーフレーム依頼805に統合される(図4のS404のYes)。待機時間が所定の規定時間を経過した時点806で、ストリーム管理部206は符号化部202へキーフレーム生成を依頼する(図7のS705)。符号化部202は、キーフレーム生成依頼によりキーフレーム807を即座に生成する。
図8(c)は、キーフレーム依頼が待機期間中に符号化部202がキーフレームを生成した場合の、本実施形態によるキーフレーム生成依頼処理の様子を表している。RTCP PLAY要求808に対応するキーフレーム依頼809は、キーフレーム810が生成された時点811で無効化される(図6のS605)。従って、図8(b)の時点806のように、ストリーム管理部206は符号化部202へキーフレーム依頼809に起因したキーフレーム生成を依頼することはしない。
以上の説明の通り、本実施形態のストリーム管理部206は、図4に示した手順により、短時間の間に到着したクライアントからのストリーム送信開始要求に対し一つのキーフレーム依頼を待機させることで、それらの要求を共有する。また、キーフレーム依頼が待機状態である間にキーフレームが符号化された場合は、図6に示した手順により、その依頼は無効化される。更に、所定の短時間が経過すると、図7に示した手順により待機中のキーフレーム依頼を符号化部202へ行う。これにより、本実施形態による送信装置および送信装置の制御方法によれば、短時間の間に複数のクライアントからストリーム開始要求があった場合でも、キーフレームの乱発的生成を防止することができる。
[第2実施形態]
本実施形態では、第1実施形態におけるキーフレーム生成依頼の遅延実行に加え、パケットエラーの発生に応じてキーフレーム依頼の待機時間を短縮する。なお、本実施形態と第1実施形態とは、キーフレーム生成依頼実行の判断、すなわち、第1実施形態における図3のS305の詳細手順が異なる。従って、以下では本実施形態によるS305の詳細手順について説明する。
本実施形態では、第1実施形態におけるキーフレーム生成依頼の遅延実行に加え、パケットエラーの発生に応じてキーフレーム依頼の待機時間を短縮する。なお、本実施形態と第1実施形態とは、キーフレーム生成依頼実行の判断、すなわち、第1実施形態における図3のS305の詳細手順が異なる。従って、以下では本実施形態によるS305の詳細手順について説明する。
本実施形態によるキーフレーム生成依頼処理(S305)について、図9を参照して説明する。図9は、本実施形態によるキーフレーム生成依頼処理の詳細な処理フローチャートを示す図である。図9のS901、S902、S906〜S909は、図7のS701〜S706と同様の処理を行うため、説明を省略する。ストリーム管理部206は、待機状態のキーフレーム依頼がある場合(S902のYes)、現在の送信状況を取得し(S903)、クライアント側で再生エラーが発生する程度のパケットエラーが発生しているか否か判定する(S904)。パケットエラーの発生有無は、クライアントから適時受信するRTCP受信者応答(Receiver Report)等から判断できる。
再生エラーが発生する程度のパケットエラーが発生していると判断した場合(S904のYes)は、ストリーム管理部206は、キーフレーム依頼の待機時間を短縮する(S905)。より早くキーフレームをクライアントへ送信することで正常な再生を回復させるためである。なお、待機時間の短縮とは、待機時間をゼロとすることも含む。具体的には、ストリーム管理部206は、図5(b)に示すキーフレーム依頼格納部207の登録時間506の値を、短縮した待機時間に対応する短縮時間分減算して再設定する。減算することによって、所定の規定時間を経過するまでの時間がより短くなり、ストリーム管理部206は、より早く符号化部202へキーフレーム生成を依頼できる。これにより、より早くキーフレームが生成されることになる。
このように、本実施形態では、ストリーム管理部206は再生エラーが発生する程度のパケットエラーが発生した場合に待機時間を短縮する。これにより、第1実施形態における動作と効果に加えネットワークエラーによる再生不具合のより早い回復を考慮した動作を行うことができる。なお、再生エラーが発生する程度のパケットエラー量の判断方法として、どのような方法を用いても構わない。また、1パケットのエラーのみで即キーフレーム依頼待機時間の短縮を行っても構わない。
[第3実施形態]
本実施形態では、第1実施形態におけるキーフレーム生成依頼の遅延実行に加え、ネットワークの輻輳の発生に応じてキーフレーム依頼の待機時間を延長する。なお、本実施形態と第1実施形態とはキーフレーム生成依頼実行の判断、すなわち第1実施形態における図3のS305の詳細手順が異なる。従って、以下では本実施形態によるS305の詳細手順について説明する。
本実施形態では、第1実施形態におけるキーフレーム生成依頼の遅延実行に加え、ネットワークの輻輳の発生に応じてキーフレーム依頼の待機時間を延長する。なお、本実施形態と第1実施形態とはキーフレーム生成依頼実行の判断、すなわち第1実施形態における図3のS305の詳細手順が異なる。従って、以下では本実施形態によるS305の詳細手順について説明する。
次に、本実施形態によるキーフレーム生成依頼処理(S305)について、図10を参照して説明する。図10は、本実施形態によるキーフレーム生成依頼処理の詳細な処理フローチャートを示す図である。図10のS1001、S1002、S1006〜S1009は、図7のS701〜S706と同様の処理を行うため、説明を省略する。ストリーム管理部206は、待機状態のキーフレーム依頼がある場合(S1002のYes)、現在の送信状況を取得し(S1003)、輻輳が発生しているか否か判定する(S1004)。輻輳の発生有無は、クライアントから適時受信するRTCP受信者応答(Receiver Report)等から判断される。
輻輳が発生していると判断した(S1004のYes)場合は、キーフレーム依頼の待機時間を延長する(S1005)。データ量の大きいキーフレームの送信を遅らせることで、輻輳を悪化させないためである。更に、延長した待機時間に応じてキーフレーム依頼格納部207の登録時間を再設定する。これに従って、図5(b)に示すキーフレーム依頼格納部207の登録時間506の値を、延長時間分加算する。加算することによって、所定の規定時間を経過するまでの時間がより長くなり、ストリーム管理部206は、より遅く符号化部202へキーフレーム生成を依頼できる。これにより、より遅くキーフレームが生成されることになる。
このように、本実施形態では、ストリーム管理部206はネットワーク上で輻輳が発生した場合に待機時間を延長する。これにより、第1実施形態における動作と効果に加えネットワークの輻輳と輻輳を悪化させないことを考慮した動作を行うことができる。なお、輻輳の判断方法として、どのような方法を用いても構わない。
以上の実施形態により、複数のクライアントが同時にストリーム送信開始を要求した場合であっても、キーフレームが連続して送信されることと符号化装置へ過度な負荷を与えることを回避することができる。更には、短時間で再生開始が可能なリアルタイム性も確保した動画ストリーム伝送を実現することができる。更に、本実施形態におけるサーバは、通信状況を認識可能であるため、送信ストリームのパケットエラーや通信路の輻輳、過度な数のクライアントからの再生開始要求、といった通信状況に応じてキーフレーム生成依頼実行の遅延時間を柔軟に調整できる。なお、本実施形態において発生させている遅延は、再生要求からキーフレーム生成までの遅延であり、撮像から伝送、再生までの遅延とは無関係であることに注意されたい。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
Claims (11)
- 受信装置に符号化した動画データを送信する送信装置であって、
キーフレーム依頼を受けて動画データに対してフレーム内符号化を行う符号化手段と、
前記受信装置から要求を受信し、該要求に対応するキーフレーム依頼を登録する管理手段とを備え、
前記管理手段は、受信した要求に対応するキーフレーム依頼と、該キーフレーム依頼の登録時から規定時間内に受信した別の要求に対応するキーフレーム依頼とを一つのキーフレーム依頼として、該規定時間が経過した後に前記符号化手段に送ることを特徴とする送信装置。 - 前記管理手段は、前記規定時間内に前記符号化手段によって前記フレーム内符号化が行われたと判定した場合には、該フレーム内符号化が行われるまでに登録されているキーフレーム依頼を無効化とすることを特徴とする請求項1に記載の送信装置。
- 前記管理手段は、前記符号化手段を監視することによって、前記判定を行うことを特徴とする請求項2に記載の送信装置。
- 前記管理手段は、前記符号化手段によって前記フレーム内符号化が行われたデータが送信中であると判定した場合には、前記受信した要求に対応するキーフレーム依頼を登録しないことを特徴とする請求項1乃至3のいずれか1項に記載の送信装置。
- 前記管理手段は、登録しているキーフレーム依頼がない場合であって、前記符号化手段によって前記フレーム内符号化が行われたデータが送信中でないと判定した場合には、前記受信した要求に対応するキーフレーム依頼を登録することを特徴とする請求項1乃至4のいずれか1項に記載の送信装置。
- 前記管理手段は、前記受信した要求に対応するキーフレーム依頼の有無と、該キーフレーム依頼の登録時間を登録することを特徴とする請求項1乃至5のいずれか1項に記載の送信装置。
- 前記管理手段は、前記受信装置において再生エラーが発生していると判定した場合、登録している登録時間の値を、予め決めた短縮時間分減算することを特徴とする請求項6に記載の送信装置。
- 前記管理手段は、前記受信装置へのネットワークで輻輳が発生していると判定した場合、もしくは、該輻輳が予測されると判定した場合は、登録している登録時間の値を、予め決めた延長時間分加算することを特徴とする請求項6に記載の送信装置。
- 前記要求は、前記受信装置による動画データの送信開始の要求、もしくは、前記フレーム内符号化した動画データの送信の要求であることを特徴とする請求項1乃至8のいずれか1項に記載の送信装置。
- 受信装置に符号化した動画データを送信する送信装置の制御方法であって、
キーフレーム依頼を受けて動画データに対して符号化手段がフレーム内符号化を行う工程と、
前記受信装置から要求を受信して、管理手段が該要求に対応するキーフレーム依頼を登録する工程とを備え、
前記管理手段は、受信した要求に対応するキーフレーム依頼と、該キーフレーム依頼の登録時から規定時間内に受信した別の要求に対応するキーフレーム依頼とを一つのキーフレーム依頼として、該規定時間が経過した後に前記符号化手段に送ることを特徴とする送信装置の制御方法。 - 請求項10に記載された送信装置の制御方法の各工程をコンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013009617A JP2014143496A (ja) | 2013-01-22 | 2013-01-22 | 送信装置、送信装置の制御方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013009617A JP2014143496A (ja) | 2013-01-22 | 2013-01-22 | 送信装置、送信装置の制御方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014143496A true JP2014143496A (ja) | 2014-08-07 |
Family
ID=51424488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013009617A Pending JP2014143496A (ja) | 2013-01-22 | 2013-01-22 | 送信装置、送信装置の制御方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014143496A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016163111A (ja) * | 2015-02-27 | 2016-09-05 | キヤノンマーケティングジャパン株式会社 | 情報処理装置、情報処理方法、プログラム |
JP2016225758A (ja) * | 2015-05-28 | 2016-12-28 | キヤノン株式会社 | 表示制御装置、表示制御方法及びプログラム |
US10085029B2 (en) | 2015-07-21 | 2018-09-25 | Qualcomm Incorporated | Switching display devices in video telephony |
-
2013
- 2013-01-22 JP JP2013009617A patent/JP2014143496A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016163111A (ja) * | 2015-02-27 | 2016-09-05 | キヤノンマーケティングジャパン株式会社 | 情報処理装置、情報処理方法、プログラム |
JP2016225758A (ja) * | 2015-05-28 | 2016-12-28 | キヤノン株式会社 | 表示制御装置、表示制御方法及びプログラム |
US10085029B2 (en) | 2015-07-21 | 2018-09-25 | Qualcomm Incorporated | Switching display devices in video telephony |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108810636B (zh) | 视频播放方法、虚拟现实设备、服务器、系统及存储介质 | |
US20200333924A1 (en) | Reduced latency server-mediated audio-video communication | |
EP3806477B1 (en) | Video transcoding system and method, apparatus, and storage medium | |
US10015068B2 (en) | Methods and devices for media processing in distributed cloud | |
US10063606B2 (en) | Systems and methods for using client-side video buffer occupancy for enhanced quality of experience in a communication network | |
US9585062B2 (en) | System and method for implementation of dynamic encoding rates for mobile devices | |
EP2675129B1 (en) | Streaming media service processing method | |
KR20180031547A (ko) | 서버에서 멀티 비트 레이트 스트림 미디어를 적응적으로 제공하기 위한 방법 및 장치 | |
EP2566128B1 (en) | Method and server for obtaining key information during fast channel switching | |
US8990407B2 (en) | Fast setup response prediction | |
KR20130140192A (ko) | 실시간 비디오 검출기 | |
KR20100027162A (ko) | 실시간 프로토콜 스트림 마이그레이션 | |
US20070127437A1 (en) | Medium signal transmission method, reception method, transmission/reception method, and device | |
US8791982B1 (en) | Video multicast engine | |
JP2015138990A (ja) | 受信装置、送信装置及び通信システム | |
JP2016506206A (ja) | エラー制御のための再送およびフレーム同期 | |
JP2014143496A (ja) | 送信装置、送信装置の制御方法およびプログラム | |
CN109862400A (zh) | 一种流媒体传输方法、装置及其系统 | |
JP2015095733A (ja) | 画像伝送装置、画像伝送方法、及びプログラム | |
JP2017022529A (ja) | 通信システム、通信装置、通信方法、及び、プログラム | |
JP2008193500A (ja) | データ送信装置及びデータ中継装置 | |
US9049350B2 (en) | Imaging apparatus that transmits media data to reception apparatus, method of processing information, and storage medium | |
US9363574B1 (en) | Video throttling based on individual client delay | |
CN102111330A (zh) | 双通道视频监控系统的数据传输方法 | |
KR102531337B1 (ko) | 방송 채널을 제공하는 장치, 서버 및 방법 |