JP6173085B2 - 情報処理装置及びその制御方法、プログラム、並びに記憶媒体 - Google Patents

情報処理装置及びその制御方法、プログラム、並びに記憶媒体 Download PDF

Info

Publication number
JP6173085B2
JP6173085B2 JP2013149933A JP2013149933A JP6173085B2 JP 6173085 B2 JP6173085 B2 JP 6173085B2 JP 2013149933 A JP2013149933 A JP 2013149933A JP 2013149933 A JP2013149933 A JP 2013149933A JP 6173085 B2 JP6173085 B2 JP 6173085B2
Authority
JP
Japan
Prior art keywords
segment
list
information processing
processing apparatus
imaging device
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
JP2013149933A
Other languages
English (en)
Other versions
JP2015023416A5 (ja
JP2015023416A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2013149933A priority Critical patent/JP6173085B2/ja
Priority to US14/328,040 priority patent/US9445142B2/en
Publication of JP2015023416A publication Critical patent/JP2015023416A/ja
Publication of JP2015023416A5 publication Critical patent/JP2015023416A5/ja
Application granted granted Critical
Publication of JP6173085B2 publication Critical patent/JP6173085B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Studio Devices (AREA)

Description

本発明はネットワークを介した二つの機器間におけるデータ伝送に関するものである。
従来より、ストリーミングの技術として、従来ファイル転送などに用いられていたHTTP(Hypertext Transfer Protocol)/TCP(Transmission Control Protocol)プロトコルを利用して、ストリーミングデータの転送を行う方法がある。この方法でストリーミングを行うと、ネットワーク状況により輻輳遅延が発生する。これに対して、クライアントのバッファに蓄積されている動画パケットの通常再生時間をフレーム数及びフレームレートに基づいて計算すると共にバッファ内合計再生時間を算出し、時間の大小に応じて動画再生速度を決定する技術がある(特許文献1)。
特開2011−244097号公報
しかしながら、上記特許文献1では、クライアント(動画再生端末)のバッファのみを考慮して遅延時間を算出しており、動画配信サーバ側の状況を考慮した遅延時間が算出できない。
本発明は、上記課題に鑑みてなされ、その目的は、ストリーミングでの視聴において、サーバ側の状況を考慮した遅延時間を算出する技術を実現することである。
上記課題を解決し、目的を達成するために、本発明の情報処理装置は、撮像装置と通信するための通信手段を有し、前記撮像装置での撮像により得られた映像データの一部を示すセグメントを順次取得することにより、前記映像データを再生する情報処理装置であって、前記撮像装置により撮像中の映像データのセグメントの情報を記述したセグメントリストを、前記通信手段を介して前記撮像装置に要求するリスト要求手段と、前記リスト要求手段により要求した前記セグメントリストを取得するリスト取得手段と、前記リスト取得手段により取得された前記セグメントリスト内のセグメントのうち、どのセグメントを要求するかを決定する決定手段と、前記決定手段により決定されたセグメントを前記通信手段を介して前記撮像装置に要求するセグメント要求手段と、前記セグメント要求手段により要求した前記セグメントを取得するセグメント取得手段と、前記セグメントリスト内のセグメント数に基づき、セグメント送信の遅延時間を算出する算出手段と、を有する
本発明によれば、ストリーミングでの視聴において、サーバ側の状況を考慮した遅延時間を算出することが可能となる。
本発明に係る実施形態の撮像装置の構成を例示するブロック図。 本発明に係る実施形態の通信装置の構成を例示するブロック図。 本実施形態のシステムによるライブストリーミング動作を説明する図。 本実施形態のプレイリストを例示する図。 本実施形態の撮像装置の動作を示すフローチャート。 本実施形態の通信装置の動作を示すフローチャート。 実施形態2の撮像装置の動作を示すフローチャート。 本実施形態の通信装置におけるライブストリーミング画面を例示する図。
以下に、添付図面を参照して本発明を実施するための形態について詳細に説明する。尚、以下に説明する実施の形態は、本発明を実現するための一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
以下、本発明を、サーバとしての撮像装置1000と、クライアントとしての通信装置2000とを通信可能に接続したシステムを例に説明する。この例では、撮像装置1000で撮影された映像をリアルタイムに順次送信することで、通信装置2000でライブストリーミングにより映像が視聴可能となる。なお、ライブストリーミングの詳細については後述する。本実施形態では、撮像装置1000をデジタルビデオカメラ、通信装置2000をスマートフォンなどの通信端末に適用した例を説明するが、本発明は、これに限られない。例えば、本発明は、撮像装置として、カメラ付き携帯電話や携帯型のメディアプレーヤ、いわゆるタブレット端末など、通信装置として、パーソナルコンピュータなどの情報処理装置や携帯電話、タブレットデバイス端末、テレビなどにも適用できる。
<撮像装置の構成>図1を参照して、本発明に係る実施形態の撮像装置の構成及び機能の概略について説明する。
図1に示す撮像装置(以下、カメラ)1000において、内部バス1010に対してCPU(Central Processing Unit)1001、ROM(Read Only Memory)1002、RAM(Random Access Memory)1003、入力処理部1004、出力処理部1006、通信制御部1008、記録媒体制御部1011、カメラ信号処理部1015、符号・復号処理部1016が接続される。内部バス1010に接続される各部は、内部バス1010を介して互いにデータのやりとりを行える。
ROM1002は、CPU1001が動作するための各種プログラムや設定データが格納される。また、フラッシュメモリなども含まれる。RAM1003は、CPU1001が動作時に必要とするプログラムや変数、作業用の一時データなどが適宜記憶される。
CPU1001は、ROM1002または記録媒体1012に格納されるプログラムに従い、RAM1003をワークメモリとして用いて、このカメラ1000の各部を制御する。
光学系1013は、フォーカス、絞り機構などを含む撮影レンズであり、被写体の光学像を形成する。撮像素子1014は、CCDやCMOS素子等で構成され、ここではA/D変換器を含み、光学像をアナログ電気信号に変換した後、デジタル信号に変換する。
カメラ信号処理部1015は、CPU1001の制御に基づき、撮像素子1014で変換されたデジタル信号に対し、所定の画素補間・縮小といったリサイズ処理や色変換、各種補正処理等を行う。
符号・復号処理部1016は、CPU1001の制御に基づき、カメラ信号処理部1015で処理されたデジタル信号を所定のビットレート、フォーマット形式で圧縮符号化、または映像圧縮符号化データの復号を行う。
なお、音声についてはとくに図示していないが、音声付き映像を配信する場合には、マイクロホン、音声のアナログ信号をデジタル化するA/D変換器、デジタルデータを符号化する構成を持つことになる。当然、映像記録時には映像と共に音声も同時に収録され、符号・復号処理部1016で映像と音声を多重化することで、音声付映像データを生成することになる。
入力処理部1004は、操作部1005でのユーザ操作を受け付け、操作に応じた制御信号を生成し、CPU1001に供給する。例えば、操作部1005は、ユーザ操作を受け付ける入力デバイスとして、キーボードといった文字情報入力デバイスや、マウスやタッチパネルといったポインティングデバイスなどを有する。また、赤外線リモコンなどの遠隔操作可能なものも含む。なお、タッチパネルは、例えば平面的に構成された入力部に対して接触された位置に応じた座標情報が出力されるようにした入力デバイスである。これにより、カメラ1000に対し、ユーザ操作に応じた動作を行わせることができる。
出力処理部1006は、CPU1001がプログラムに従い生成したGUI(Graphical User Interface)などの表示データに基づき、表示部1007に対して表示させるための表示信号を出力する。
なお、操作部1005としてタッチパネルを用いる場合、操作部1005と表示部1007とを一体的に構成することができる。例えば、タッチパネルを光の透過率が表示部1007の表示を妨げないように構成し、表示部1007の表示面の上層に取り付ける。そして、タッチパネルにおける入力座標と、表示部1007上の表示座標とを対応付ける。これにより、あたかもユーザが表示部1007上に表示された画面を直接的に操作可能であるかのようなGUIを構成することができる。
記録媒体制御部1011は、HDDや不揮発性の半導体メモリなどの記録媒体1012が接続され、CPU1001の制御に基づき、接続された記録媒体1012からのデータの読み出しや、当該記録媒体1012に対するデータの書き込みを行う。なお、記録媒体制御部1011が接続可能な記録媒体1012は、不図示のソケットなどを介して、例えばメモリカードなどの着脱可能な不揮発性の半導体メモリを接続するものとしても良い。
記録媒体1012は、撮影した映像データのほか、CPU1001の制御に必要な情報も記録することが可能である。
通信制御部1008は、CPU1001の制御に基づき、コネクタ(有線)/アンテナ(無線)1009を介して、通信装置2000その他の外部装置との通信を行う。通信方法としては、無線のIEEE802.11やBluetooth(登録商標)、有線のIEEE802.3などを用いることが可能である。
なお、ハードウェアの構成は図1に示すものに限定されず、例えば1つのハードウェアが表示制御、通信制御、記録制御、画像処理制御などを行い、カメラ1000の各手段として機能してもよい。また、複数のハードウェアが協働して1つの手段として機能してもよい。
<通信装置の構成>次に、図2を参照して、本発明に係る実施形態の通信装置の構成及び機能の概略について説明する。
図2に示す通信装置(以下、端末)2000において、多くの部分はカメラ1000と同様となるため、カメラ1000と説明が重複するCPU2001〜記録媒体2012までの説明は省略する。符号・復号処理部2013は、CPU2001の制御に基づき、映像圧縮符号化データの復号、および必要に応じて復号したデータの再符号化を行う。
<ライブストリーミング動作の説明>次に、本実施形態のシステムによるプレイリストを利用したライブストリーミング動作について説明する。
まず、本実施形態のシステムにおけるプレイリストを用いたストリーミングの基本動作について説明する。
1.カメラ(サーバ)は、ストリーミングデータを一定時間のセグメントに分割し、そのセグメント取得先を列挙したプレイリストを作成する。ライブストリーミングの場合には、リアルタイムにコンテンツが生成されることに応じて定期的にセグメントが生成される。このため、ライブストリーミングの場合には、新しいセグメントが生成されると、動的に新しい内容のプレイリストに更新(削除、追記)するスライドウインドウ型プレイリストを用いる。
2.端末(クライアント)は、プレイリストを取得・解析し、列挙順にセグメントデータ取得先からデータ取得を行う。
3.端末(クライアント)は、取得したデータの再生表示、または保存を行う。
4.カメラ(サーバ)と端末(クライアント)は、プレイリスト終了(ストリーミング終了)まで、1〜3を繰り返す。
上記基本動作を踏まえ、図1ないし図3、図8を参照して、本実施形態のシステムによるプレイリストを利用したライブストリーミング動作について説明する。
ユーザがカメラ1000において、操作部1005からライブストリーミングモードを実行すると、カメラ1000は、CPU1001の制御により、通信制御部1008を通信可能状態とする。
さらにユーザは端末2000において、操作部2005を操作して通信接続処理およびライブストリーミングに必要なアプリケーションの起動を行う。これに応じて、端末2000のCPU2001は、ROM2002または記録媒体2012に格納された当該プログラムに従い、通信制御部2008を制御し、カメラ1000との通信を開始し、接続処理を行う。
ここで、カメラ1000と端末2000は、通信プロトコルとしてHTTP(Hypertext Transfer Protocol)/TCP(Transmission Control Protocol)を使用するものとする。また、通信接続においてUPnP(Universal Plug and Play)に対応しているものとする。UPnP対応の端末2000は、機器をネットワークに接続すると、DHCP(Dynamic Host Configuration Protocol)または、AutoIPによるIP(Internet Protocol)アドレスの設定を行う。IPアドレスを取得した機器は、ネットワーク上の他の機器を相互に認識するために、「デバイスディスカバリとコントロール」によって、デバイス検索と応答デバイスの種別、サービス機能などの情報取得を行う(ステップ3003)。カメラ1000は、端末2000のデバイス検索要求に対して、機器情報と機器固有情報のプレイリスト取得先情報などを応答する(ステップ3004)。
カメラ1000と端末2000の接続処理が完了すると、カメラ1000はライブストリーミングを開始する。
図8は、端末2000における、ライブストリーミングにおけるアプリケーション画面例であり、操作部2005、表示部2007が一体化された例を示している。ライブストリーミングデータは、表示エリア8001に表示され、カメラ1000のステータスはズーム位置情報8002、記録状態8003、バッテリー情報8004、後述する遅延時間8008などを表示している。また、操作手段としてズーム指示8005、カメラREC8006、端末REC8007、後述する遅延短縮8009などを備えている。
ライブストリーミングにおいて、カメラ1000のCPU1001は、撮像素子1014からの信号出力を開始し、その出力をカメラ信号処理部1015により適切な映像データに処理し、符号・復号処理部1016へデータを送出する。
図3の説明に戻り、符号・復号処理部1016では、受け取った映像データ等を所定のビットレート、フォーマット形式で圧縮符号化し、さらに所定の時間長Tsで分割し、セグメントデータ(3002)としてRAM1003または記録媒体1012に保存する。なお、本実施形態ではTs=0.5秒として、以下説明する。
CPU1001は、上記セグメントデータの保存先と関連させたパス情報を生成する。パス情報は、端末2000がセグメントを取得する際の取得先情報として使用するもので、CPU1001は、プレイリスト3001を作成し、上記パス情報と併せてセグメント情報を記録する。
ここで、図4を参照して、プレイリスト3001について説明する。
図4(a)に示すプレイリスト4010は、Extended M3U形式のプレイリストであり、最初の行4011に識別子タグを記述し、2行目4012にはプレイリストバージョンを示すタグとバージョンを記述する。本例ではバージョンを“3”としている。3行目4013はセグメントデータ3002の時間を示すタグとその時間(秒)を整数または小数で記述する。本実施形態では、セグメントデータ時間長をTs=0.5(秒)としていることから、本例でも“0.5”としている。4行目4014はセグメントデータ3002の取得先パス(クエリパラメータを含む)を記述する。3行目4013および4行目4014はセグメントデータ3002に関する情報として、必ず続けて記述する必要がある。
また、プレイリスト4010は、セグメント情報4013、4014を記録した図3のプレイリスト3001の内容例となる。
端末2000は、セグメントデータ3002の所定の時間長Tsを事前に記憶しているか、カメラ1000の機器情報に含めることで機器情報取得時に得ることができているものとする。
端末2000は、ライブストリーミング開始後、約Ts(秒)後にステップ3004で取得したプレイリスト取得先へ、プレイリスト取得要求(HTTP GETメソッド)を行う(ステップ3005)。
カメラ1000は、応答プレイリストとして、セグメント情報4013、4014が一つ記述されたプレイリスト3001(=4010)を送信する(ステップS3006)。
端末2000は、受信したプレイリスト4010を解析し、遅延時間の算出を行う。また、端末2000は、受信したプレイリスト4010を解析し、セグメント情報の取得先に対して、セグメント取得要求(HTTP GETメソッド)を行う(ステップ3007)。
カメラ1000は、応答セグメントとして、要求されたセグメント3002を送信する(ステップ3008)。
端末2000は、受信したセグメント3002を符号・復号処理部2013に渡し、復号した後、出力処理部2006を介して、表示部2007で再生表示を行う。また、ライブストリーミングアプリケーションにより、ユーザから端末REC8007への指示入力があると、復号したデータ、またはセグメント3002からヘッダなどを除いたデータ部を、記録媒体2012に記録する。そして、さらに順次受信するセグメントデータについても受信済みのデータと結合し記録していく。
ストリーミング中、カメラ1000は、約Ts(秒)毎にセグメント生成、プレイリスト更新を行う。また、端末2000に取得されたセグメント情報はプレイリストから削除する。
端末2000は、カメラ1000にてプレイリストの更新を行う度、その約Ts(秒)毎にそのプレイリスト取得(ステップ3005)を行い、プレイリスト3001に記載されたセグメント情報に基づき、当該セグメントデータを取得要求する。
通信状況が良好である場合、上記プレイリスト取得(ステップ3005)から応答セグメント(ステップ3008)までの一連の処理が定期的に行われることになる。しかし、実際には、輻輳などにより通信が定期的に行えなくなることがある。図4(b)は、輻輳時を含んだプレイリスト4020の例を示している。プレイリスト4020には、3つのセグメント情報が記述されている。
なお、端末2000の要求処理(ステップ3005、3007)には端末、またはアプリケーションの固有のIDを付加する。そして、本実施形態のカメラ1000は、最初に要求のあったIDの要求のみに対してストリーミングを行う。つまり、本実施形態のカメラ1000と端末2000は1対1接続でのみストリーミングを行うものとする。
<システムの動作説明>次に、図5および図6を参照して、本実施形態のシステムを構成するカメラ1000および端末2000の動作について説明する。
まず、図5を参照して、カメラ1000が端末2000と接続確立後、カメラ1000が実行する処理を説明する。なお、以下の処理はカメラ1000のCPU1001が各種プログラムや入力信号に基づきカメラ1000の各部を制御することで実現する。
ステップS5001では、ライブストリーミング開始に伴う、セグメントデータ生成の開始処理を行う。CPU1001は、撮像素子1014からの信号出力を開始し、その出力をカメラ信号処理部1015により適切な映像データに処理し、符号・復号処理部1016へデータを渡す。符号・復号処理部1016では、受け取った映像データを所定のビットレート、フォーマット形式で圧縮符号化し、さらに所定の時間長Ts(本実施形態では0.5秒とする)で分割する処理を開始する。
ステップS5002では、一つのセグメント(0.5秒)生成が完了したか否かの判定を行う。0.5秒で分割されたデータが、RAM1003または記録媒体1012に一時的に保存されたことを確認し、完了していた場合にはステップS5003へ進み、完了していない場合にはステップS5005へ進む。なお、本ステップは問い合わせ(ポーリング)による判定で説明したが、分割したセグメントデータを書き込んだことを検出して割り込み通知を行う等の方法によって、生成完了を判定することも可能である。
ステップS5003では、セグメント情報の生成を行う。生成されたセグメントデータの時間長と、当該セグメントデータを特定できる保存先アドレス、またはファイル名などに関連付けたパス情報を生成する。ここで、本実施形態の説明では、セグメントの時間長は0.5秒固定となる。
ステップS5004では、ステップS5003で生成したセグメント情報をプレイリストに追記する。
ステップS5005では、端末2000からのプレイリスト取得要求(ステップ3005)の有無の判定を行う。プレイリスト取得要求があった場合にはステップS5006へ進み、なかった場合にはステップS5007へ進む。
ステップS5006では、プレイリスト取得要求(ステップ3005)に対する応答として、プレイリストの送信を行う(ステップ3006)。
ステップS5007では、端末2000からのセグメント取得要求(ステップ3007)の有無の判定を行う。セグメント取得要求があった場合にはステップS5008へ進み、なかった場合にはステップS5009へ進む。
ステップS5008では、セグメント取得要求(ステップ3007)に対する応答として、該当するセグメント送信(ステップ3008)を行う。その後、当該送信済みとなったセグメントを削除するとともに、当該セグメントに関する情報をプレイリストから削除し、ステップS5009へ進む。
ステップS5009では、処理を終了するか否かの判定を行い、終了する場合以外はステップS5002へ戻る。
なお、本フローでの各イベント判定ステップS5002、S5005、S5007は、順に問い合わせによる判定で説明したが、各条件のイベント待ちを同時に行う場合には、イベント発生順に各処理を実行しても良い。
次に、図6を参照して、端末2000がカメラ1000と接続確立後、CPU2001が実行する処理を説明する。
ステップS6001では、接続時に取得した機器・プレイリスト取得先情報(ステップ3004)から、プレイリスト取得先情報を取得し、保持する。
ステップS6002では、所定時間経過したか否かの判定を行う。所定時間が経過した場合にはステップS6003へ進み、経過していない場合には再度ステップS6002を繰り返す。ここで所定時間とは、カメラ1000が生成する所定の時間長Tsと同等の値にすることが望ましい。
ステップS6003では、ステップS6001で取得したプレイリスト取得先情報を用いて、プレイリストの取得要求(ステップ3005)を行い、カメラ1000から取得したプレイリストの解析を行う。プレイリストの解析では、識別タグによるプレイリスト形式とバージョンの確認を行った後、セグメント情報を取得する。
ステップS6004では、ステップS6003で取得したプレイリストの解析結果から、下記に示す式(1)にしたがって遅延時間の算出を行う。
遅延時間=プレイリスト内のセグメント数×セグメントの時間長0.5秒・・・(1)
式(1)に示すように、本実施形態ではカメラ1000側にどれだけのセグメントが溜まっているか、つまりカメラ1000側のバッファ状況を考慮した遅延のみで遅延時間を算出している。しかしバッファ状況のみならず、その他の工程によって発生する遅延を加算して遅延時間を算出しても良い。
遅延時間の算出の例としては、例えばカメラ1000のバッファ状況と自機(端末2000)のバッファ状況の両方を考慮して遅延時間を算出しても良い。端末2000側のバッファにセグメントが滞留する場合とは、例えば端末2000の描画処理がセグメントの受信処理に対して遅い場合などが考えられる。
なお、算出結果を表示部2007に渡し、図8に示した遅延時間8008の表示を行うことも可能である。
ステップS6005では、ステップS6003でセグメント情報が存在したか否かの判定を行う。セグメント情報が存在した場合にはステップS6006に進み、存在しない場合にはステップS6003へ戻る。
ステップS6006では、プレイリスト内の最古のセグメント情報の取得先パスに対してセグメントの取得要求(ステップ3007)を行い、カメラ1000からセグメントを取得する。ここで、取得したセグメント情報が1つならば、そのセグメントを最古セグメントとする。また、取得したセグメント情報が複数ならば最も古いセグメントを最古セグメントとする。取得したセグメントは、RAM2003または記録媒体2012に記録した後、符号・復号処理部2013に渡され、復号した後、出力処理部2006を介して、表示部2007で再生表示(映像表示)を行う。また、ライブストリーミングアプリケーションにより端末REC8007が実行されている場合、本フローとは別の処理により、復号したデータ、またはセグメントからヘッダなどを除いたデータ部を、記録媒体2012に保存する。
ステップS6007では、処理を終了するか否かの判定を行い、終了する場合以外はステップS6002へ戻る。
[実施形態2]次に、実施形態2について説明する。
本実施形態は、端末2000からの指示に従い、カメラ1000のバッファデータを削除する例である。なお、本実施形態のシステム構成は実施形態1と同様であるため、その説明は省略する。また、セグメントの長さTsは、0.5秒とする点も実施形態1と同じである。
図8に示したライブストリーミング画面で、ユーザが表示エリア8001に表示された遅延短縮8009をタッチすることで、任意のタイミングでバッファデータの全削除を実行することができる。これにより、滞留していたセグメントの送信がキャンセルされ、遅延を解消することができる。具体的には、ユーザにより遅延短縮8009が操作されると、CPU2001は、入力処理部2004から削除指示を受け、通信制御部2008を介して、プレイリスト取得要求およびセグメント取得要求とは異なる通信内容のバッファデータ全削除要求を行う。
図7は、端末2000がカメラ1000と接続確立後、CPU2001が実行する処理を示している。なお、図7のステップS7001〜ステップS7008は、図5のステップS5001〜ステップS5008と同様の処理であるため、その説明は省略する。
ステップS7009では、端末2000からのバッファデータ全削除要求の有無の判定を行う。バッファデータ全削除要求があった場合にはステップS7010へ進み、なかった場合にはステップS7011へ進む。
ステップS7010では、全セグメントを削除すると共に、全セグメント情報をプレイリストから削除する。例えば図4(b)のプレイリスト4020は図4(c)のプレイリスト4030となる。
ステップS7011では、処理を終了するか否かの判定を行う。終了する場合以外はステップS7002へ戻る。
なお、本フローでの各イベント判定ステップS7002、S7005、S7007、S7009は、順に問い合わせによる判定で説明したが、各条件のイベント待ちを同時に行う場合には、イベント発生順に各処理を実行してもよい。
なお、本実施形態での削除要求は、バッファ内の全データとしたが、これに限らず、任意のデータ量を指定できるようにしても良い。
[他の実施形態]本発明は、以下の処理を実行することによっても実現される。即ち、上記実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。

Claims (17)

  1. 撮像装置と通信するための通信手段を有し、前記撮像装置での撮像により得られた映像データの一部を示すセグメントを順次取得することにより、前記映像データを再生する情報処理装置であって、
    前記撮像装置により撮像中の映像データのセグメントの情報を記述したセグメントリストを、前記通信手段を介して前記撮像装置に要求するリスト要求手段と、
    前記リスト要求手段により要求した前記セグメントリストを取得するリスト取得手段と、
    前記リスト取得手段により取得された前記セグメントリスト内のセグメントのうち、どのセグメントを要求するかを決定する決定手段と、
    前記決定手段により決定されたセグメントを前記通信手段を介して前記撮像装置に要求するセグメント要求手段と、
    前記セグメント要求手段により要求した前記セグメントを取得するセグメント取得手段と、
    前記セグメントリスト内のセグメント数に基づき、セグメント送信の遅延時間を算出する算出手段と、を有することを特徴とする情報処理装置。
  2. 前記算出手段により算出された遅延時間を通知する通知手段をさらに有することを特徴とする請求項1に記載の情報処理装置。
  3. 前記セグメント取得手段により取得したセグメントに基づく映像を表示手段に表示するよう制御する表示制御手段をさらに有することを特徴とする請求項1に記載の情報処理装置。
  4. 前記表示制御手段は、前記表示手段に前記算出手段により算出された遅延時間を、前記セグメント取得手段により取得されたセグメントに基づく映像データとともに前記表示手段に表示する。ことを特徴とする請求項3に記載の情報処理装置。
  5. 前記セグメントリストは、セグメントあたりの時間を含み、
    前記算出手段は、前記セグメントリスト内のセグメント数及びセグメントあたりの時間に基づき、前記遅延時間を算出することを特徴とする請求項1に記載の情報処理装置。
  6. 撮像装置と通信するための通信手段を有し、前記撮像装置での撮像により得られた映像データの一部を示すセグメントを順次取得することにより、前記映像データを再生する情報処理装置であって、
    前記撮像装置により撮像中の映像データのセグメントの情報を記述したセグメントリストを、前記通信手段を介して前記撮像装置に要求するリスト要求手段と、
    前記リスト要求手段により要求した前記セグメントリストを取得するリスト取得手段と、
    前記リスト取得手段により取得された前記セグメントリスト内のセグメントのうち、どのセグメントを要求するかを決定する決定手段と、
    前記決定手段により決定されたセグメントを前記通信手段を介して前記撮像装置に要求するセグメント要求手段と、
    前記セグメント要求手段により要求した前記セグメントを取得するセグメント取得手段と、
    前記セグメントリスト内のセグメント数に基づき、セグメント送信の遅延度を判断する判断手段と、
    前記判断手段により判断された遅延度を通知する通知手段と、を有することを特徴とする情報処理装置。
  7. 前記セグメント取得手段により取得したセグメントに基づく映像を表示手段に表示するよう制御する表示制御手段をさらに有することを特徴とする請求項6に記載の情報処理装置。
  8. 前記表示制御手段は、前記判断手段により判断された遅延度を、前記セグメント取得手段により取得されたセグメントに基づく映像データとともに前記表示手段に表示することを特徴とする請求項7に記載の情報処理装置。
  9. 前記表示制御手段は、ユーザ操作を受け付けるための操作部を、前記セグメント取得手段により取得したセグメントに基づく映像データとともに前記表示手段に表示することを特徴とする請求項7に記載の情報処理装置。
  10. 前記操作部は、前記撮像装置による映像データの記録を開始するための操作部、前記撮像装置におけるズーム倍率を設定するための操作部の少なくとも1つを含むことを特徴とする請求項9に記載の情報処理装置。
  11. 前記操作部は、前記セグメント取得手段により取得された前記セグメントに基づく映像データを前記情報処理装置の記録媒体に記録するための操作部を含むことを特徴とする請求項9に記載の情報処理装置。
  12. 前記操作部は、前記遅延度を減少させるための操作部を含むことを特徴とする請求項9に記載の情報処理装置。
  13. 前記遅延度を減少させるための操作部が操作された場合、前記撮像装置に保持されている未送信セグメントの少なくとも一部を削除する指示を送信する送信手段をさらに有することを特徴とする請求項12に記載の情報処理装置。
  14. 撮像装置と通信するための通信手段を有し、前記撮像装置での撮像により得られた映像データの一部を示すセグメントを順次取得することにより、前記映像データを再生する情報処理装置の制御方法であって、
    前記撮像装置により撮像中の映像データのセグメントの情報を記述したセグメントリストを、前記通信手段を介して前記撮像装置に要求するリスト要求ステップと、
    前記リスト要求ステップにより要求した前記セグメントリストを取得するリスト取得ステップと、
    前記リスト取得ステップにより取得された前記セグメントリスト内のセグメントのうち、どのセグメントを要求するかを決定する決定ステップと、
    前記決定ステップにより決定されたセグメントを前記通信手段を介して前記撮像装置に要求するセグメント要求ステップと、
    前記セグメント要求ステップにより要求した前記セグメントを取得するセグメント取得ステップと、
    前記セグメントリスト内のセグメント数に基づき、セグメント送信の遅延時間を算出する算出ステップと、を有することを特徴とする情報処理装置の制御方法。
  15. 撮像装置と通信するための通信手段を有し、前記撮像装置での撮像により得られた映像データの一部を示すセグメントを順次取得することにより、前記映像データを再生する情報処理装置の制御方法であって、
    前記撮像装置により撮像中の映像データのセグメントの情報を記述したセグメントリストを、前記通信手段を介して前記撮像装置に要求するリスト要求ステップと、
    前記リスト要求ステップにより要求した前記セグメントリストを取得するリスト取得ステップと、
    前記リスト取得ステップにより取得された前記セグメントリスト内のセグメントのうち、どのセグメントを要求するかを決定する決定ステップと、
    前記決定ステップにより決定されたセグメントを前記通信手段を介して前記撮像装置に要求するセグメント要求ステップと、
    前記セグメント要求ステップにより要求した前記セグメントを取得するセグメント取得ステップと、
    前記セグメントリスト内のセグメント数に基づき、セグメント送信の遅延度を判断する判断ステップと、
    前記判断ステップにより判断された遅延度を通知する通知ステップと、を有することを特徴とする情報処理装置の制御方法。
  16. コンピュータを、請求項1ないし13のいずれか1項に記載された情報処理装置の各手段として機能させるプログラム。
  17. コンピュータを、請求項1ないし13のいずれか1項に記載された情報処理装置の各手段として機能させるプログラムを記憶した記憶媒体。
JP2013149933A 2013-07-18 2013-07-18 情報処理装置及びその制御方法、プログラム、並びに記憶媒体 Active JP6173085B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013149933A JP6173085B2 (ja) 2013-07-18 2013-07-18 情報処理装置及びその制御方法、プログラム、並びに記憶媒体
US14/328,040 US9445142B2 (en) 2013-07-18 2014-07-10 Information processing apparatus and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013149933A JP6173085B2 (ja) 2013-07-18 2013-07-18 情報処理装置及びその制御方法、プログラム、並びに記憶媒体

Publications (3)

Publication Number Publication Date
JP2015023416A JP2015023416A (ja) 2015-02-02
JP2015023416A5 JP2015023416A5 (ja) 2016-09-01
JP6173085B2 true JP6173085B2 (ja) 2017-08-02

Family

ID=52344717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013149933A Active JP6173085B2 (ja) 2013-07-18 2013-07-18 情報処理装置及びその制御方法、プログラム、並びに記憶媒体

Country Status (2)

Country Link
US (1) US9445142B2 (ja)
JP (1) JP6173085B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6139872B2 (ja) * 2012-12-10 2017-05-31 キヤノン株式会社 情報処理装置及びその制御方法、プログラム、記憶媒体、並びに、映像処理システム
JP6465541B2 (ja) * 2013-08-06 2019-02-06 キヤノン株式会社 通信装置、再生装置、及びその方法、並びにプログラム
KR101743228B1 (ko) * 2016-01-22 2017-06-05 네이버 주식회사 스트리밍 장치 및 그 방법, 이를 이용한 스트리밍 서비스 시스템 및 컴퓨터로 판독 가능한 기록매체
US10866963B2 (en) 2017-12-28 2020-12-15 Dropbox, Inc. File system authentication
CN112738574B (zh) * 2019-10-28 2023-04-07 深圳市万普拉斯科技有限公司 录屏数据处理方法、装置、计算机设备和存储介质
CN110971926B (zh) * 2019-12-02 2022-01-25 咪咕视讯科技有限公司 视频播放方法、视频处理方法、视频处理装置及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3684009B2 (ja) 1996-11-29 2005-08-17 キヤノン株式会社 映像通信システム及び情報処理装置及びその制御方法
JP2000115245A (ja) * 1998-10-06 2000-04-21 Oki Electric Ind Co Ltd データ送信装置、データ受信装置、データ通信装置及びデータ通信方法
JP3730942B2 (ja) * 2002-08-02 2006-01-05 日本電信電話株式会社 ネットワーク動画像配信システム及びこのシステムにおけるクライアント装置
US20100092095A1 (en) * 2008-10-14 2010-04-15 Exbiblio B.V. Data gathering in digital and rendered document environments
CN102308547B (zh) * 2008-12-31 2014-11-19 苹果公司 通过非流化协议流化多媒体数据的方法
JP5218995B2 (ja) 2010-05-14 2013-06-26 Necシステムテクノロジー株式会社 動画再生端末,動画再生方法及びプログラム
JP2013038766A (ja) * 2011-07-12 2013-02-21 Sharp Corp 送信装置、送信装置の制御方法、制御プログラム、及び記録媒体
US9930408B2 (en) 2012-04-25 2018-03-27 Verizon Patent And Licensing Inc. Live streaming circular buffer
US20140019635A1 (en) * 2012-07-13 2014-01-16 Vid Scale, Inc. Operation and architecture for dash streaming clients

Also Published As

Publication number Publication date
US20150026751A1 (en) 2015-01-22
US9445142B2 (en) 2016-09-13
JP2015023416A (ja) 2015-02-02

Similar Documents

Publication Publication Date Title
JP6173085B2 (ja) 情報処理装置及びその制御方法、プログラム、並びに記憶媒体
WO2013132828A1 (ja) 通信システムおよび中継装置
US20170070699A1 (en) Information processing apparatus, image capturing apparatus, and control methods for the same
JP6360300B2 (ja) 通信装置、撮像装置およびそれらの制御方法、並びにプログラム
JP2021111943A (ja) 画像処理装置およびその制御方法、プログラム、並びに記憶媒体
US10015395B2 (en) Communication system, communication apparatus, communication method and program
JP6257197B2 (ja) 情報処理装置及びその制御方法、プログラム、並びに記憶媒体
US10028017B2 (en) Information processing device and method of controlling information processing device
JP6433151B2 (ja) 映像供給装置、映像取得装置およびそれらの制御方法ならびに映像供給システム
US11190812B2 (en) Communication apparatus, control method for controlling the same, and recording medium for the same
US20150373073A1 (en) Image pickup apparatus, control method and recording medium
JP2019068187A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2017208672A (ja) 映像供給装置、映像取得装置、それらの制御方法及びプログラム、並びに映像供給システム
JP6214221B2 (ja) 撮像装置、クライアント装置、撮像システム、撮像装置の制御方法、クライアント装置の制御方法、および撮像システムの制御方法
JP6451253B2 (ja) 伝送管理システム、伝送システム、中継装置制御方法、及びプログラム
JP7277173B2 (ja) 動画配信機能を有する撮像装置
JP6824949B2 (ja) 通信装置、制御方法およびプログラム
JP6254862B2 (ja) 撮像装置およびその制御方法、システム、並びにプログラム
JP2017046183A (ja) 送信装置、受信装置及び通信システム
JP2015142360A (ja) 撮像装置及び雲台装置
JP2021064971A (ja) 通信装置、制御方法、およびプログラム
CN117478923A (zh) 一种直播推流方法、装置、计算机设备和存储介质
JP2015177474A (ja) 端末、方法、及びプログラム
JP2015154468A (ja) 撮像装置、及び撮像システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160715

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160715

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170428

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170704

R151 Written notification of patent or utility model registration

Ref document number: 6173085

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151