JP6161260B2 - 送信装置、受信装置、送信方法、受信方法、及び、プログラム - Google Patents

送信装置、受信装置、送信方法、受信方法、及び、プログラム Download PDF

Info

Publication number
JP6161260B2
JP6161260B2 JP2012250187A JP2012250187A JP6161260B2 JP 6161260 B2 JP6161260 B2 JP 6161260B2 JP 2012250187 A JP2012250187 A JP 2012250187A JP 2012250187 A JP2012250187 A JP 2012250187A JP 6161260 B2 JP6161260 B2 JP 6161260B2
Authority
JP
Japan
Prior art keywords
receiving
transmission
metadata
receiving device
acquisition 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.)
Active
Application number
JP2012250187A
Other languages
English (en)
Other versions
JP2014099745A5 (ja
JP2014099745A (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 JP2012250187A priority Critical patent/JP6161260B2/ja
Priority to US14/077,765 priority patent/US9680881B2/en
Publication of JP2014099745A publication Critical patent/JP2014099745A/ja
Publication of JP2014099745A5 publication Critical patent/JP2014099745A5/ja
Application granted granted Critical
Publication of JP6161260B2 publication Critical patent/JP6161260B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination

Description

本発明は、映像データを複数のセグメントデータに分割し、各セグメントデータを送信装置から受信装置に送信する技術に関する。特に、受信装置が各セグメントデータを送信装置から取得するために用いるメタデータを送信装置が受信装置に送信する技術に関する。
近年、音声データや映像データ等により構成されるストリーミング形式のコンテンツをユーザにリアルタイムに送信する送信システムが提供されている。このような送信システムにより、ユーザは、自身の端末装置を介してライブ映像等の所望のコンテンツをリアルタイムで視聴することができる(例えば、特許文献1)。
特許文献1に記載の送信システムでは、HTTP(HyperText Transfer Protocol)適合プロトコルなどの転送プロトコルを使用してコンテンツをリアルタイム又はほぼリアルタイムでストリーミングする方法が提案されている。
特許文献1に記載の送信装置は、映像データを複数のセグメントデータへと分割し、各セグメントデータの再生順序および所在情報を含むメタデータ(プレイリスト)を受信装置に提供する。受信装置は取得したプレイリストに記載のセグメントデータの再生順序および所在情報に基づいて、セグメントデータを取得して、再生する。このようにして、特許文献1に記載の送信システムは、映像データのリアルタイム再生を実現する。
特許文献1に記載の受信装置は、送信装置から送信されるプレイリストと共に終端情報(終了タグ)を受信すると、受信した当該プレイリストに対応するセグメントデータを送信装置から取得した後、ストリーミングを終了する。すなわち、特許文献1に記載の送信システムでは、送信装置がストリーミングの終了を受信装置に通知することによって、コンテンツの送信が終了する。
特表2012−514276号公報
しかし特許文献1に記載の方法では、受信装置を用いるユーザが所望のタイミングでストリーミングを終了することができなかった。
このように従来、コンテンツを分割してセグメントデータごとに受信装置に送信する送信システムにおいて、受信装置からのストリーミング終了の指示に応じてストリーミングを終了させるための送信システムについて検討されていなかった。
そこで本発明では、コンテンツを分割したセグメントデータごとに受信装置に送信する送信システムにおいて、受信装置が所望のタイミングでコンテンツの送信を終了させることができる送信装置、受信装置、送信方法及びプログラムを提供することを目的とする。
上述の目的を達成するために、本発明に係る送信装置は例えば、コンテンツを構成する複数のセグメントのうち1つ以上に対して受信装置が取得要求を行うために用いるアドレス情報を含むメタデータを前記受信装置に送信する送信装置であって、前記メタデータに記述されたアドレス情報に基づくセグメントの取得要求を前記受信装置から受信すると共に、前記受信装置がセグメントの取得を終了することを示す終了指示を前記受信装置から受信する受信手段と、前記受信手段が前記受信装置からメタデータの取得要求を受信し、かつ、前記受信装置から終了指示を受信しない場合、セグメントに対する取得要求を行うために用いられるアドレス情報を含み、前記受信装置へ送信するセグメントの終端を表す終端情報を含まないメタデータを前記受信装置に送信し、前記受信手段が前記受信装置からメタデータの取得要求と終了指示を受信した場合、前記アドレス情報を含まず前記終端情報を含むメタデータを前記受信装置に送信する送信手段とを有する。
また、本発明に係る受信装置は例えば、コンテンツを構成する複数のセグメントのうち少なくとも1つに対する取得要求を行うためのアドレス情報を含むメタデータを送信装置から受信する受信装置であって、前記メタデータの取得要求を前記送信装置へ送信すると共に、前記送信装置からのセグメントの取得を終了することを示す終了指示を前記送信装置に送信する送信手段と、前記送信手段が前記送信装置に対してメタデータの取得要求を送信し、かつ、前記送信手段が前記送信装置に対して終了指示を送信した場合に前記送信装置によって送信されるメタデータであって、セグメントに対する取得要求を行うために用いられるアドレス情報を含み、前記受信装置へ送信するセグメントの終端を表す終端情報を含まないメタデータを前記送信装置から受信し、前記送信手段が前記送信装置に対してメタデータの取得要求と終了指示を送信した場合に前記送信装置によって送信されるメタデータであって、前記アドレス情報を含まず前記終端情報を含むメタデータを前記送信装置から受信する受信手段とを有する。
本発明によれば、コンテンツを分割してセグメントデータごとに受信装置に送信する送信システムにおいて、受信装置が所望のタイミングでコンテンツの送信を終了させることができる。
第1の実施形態に係る送信システムの構成図。 第1の実施形態に係る送信装置101及び受信装置102の機能ブロック図。 第1の実施形態に係る送信システムのデータ送信シーケンスを示す図。 第1の実施形態に係るコンテンツ送信処理を説明するためのフロー図。 プレイリスト取得要求メッセージの例を示す図。 プレイリストの例を示す図。 セグメントデータ取得要求メッセージの例を示す図。 第1の実施形態に係るタイマ処理を説明するためのフロー図。 第1の実施形態に係るプレイリスト取得要求と送信されるプレイリストとの対応を示す図。 第2の実施形態に係るコンテンツ送信処理を説明するためのフロー図。 第2の実施形態に係るプレイリスト取得要求と送信されるプレイリストとの対応を示す図。
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
<第1の実施形態>
本発明の第1の実施形態に係る送信システムの全体構成について図1を用いて説明する。本実施形態における送信システムでは、送信装置101と受信装置102がネットワーク103を介して接続されている。
例えば、ネットワーク103はインターネットや有線LAN(Local Area Network)、無線LAN(Wireless LAN)、WAN(Wide Area Network)等により構成される。ネットワーク103は、その通信規格、規模、構成を問わない。ネットワーク103は、アドホックネットワーク、UWB(Urtra Wide Band)などとすることができる。また、ネットワーク103の通信規格として、例えばEthanet(登録商標)、Bluetooth(登録商標)、Zigbee(登録商標)等を用いることができる。
送信装置101は、受信装置102にコンテンツ(映像データ、音声データ、又は、メタデータ等)を送信する。本実施形態では、送信装置101が受信装置102に映像データを送信する例について説明する。送信装置101の具体的な例として、カメラ、ビデオカメラ、タブレット装置、PC(Personal Computer)、携帯電話などが挙げられる。ただし、送信装置101はこれらに限定されない。また、コンテンツの生成は送信装置101内で行われてもよいし、他のコンテンツ生成装置等で生成されたコンテンツでもよい。
受信装置102は、送信装置101からコンテンツを受信する。本実施形態において受信装置102はさらに、受信したコンテンツの再生を行う機能を有する。ただし、受信装置102が受信したコンテンツを別の装置に送信して再生させることとしてもよい。受信装置102として、例えば、タブレット装置、PC、テレビ、携帯電話、などが挙げられるが、これに限定されない。ネットワーク103に接続される受信装置102は一台であっても良いし、図1に示すように複数台存在してもよい。
次に、送信装置101の機能構成例について図2(a)を用いて説明する。
撮像部200は、被写体の撮像を行う。撮像部200は、レンズやCMOS(Complementary Metal Oxide Semiconductor)などの撮像素子などによって構成される。撮像素子はレンズによって結像された被写体の像を画像信号に変換する。
保持部201は撮像部200が撮像した映像データを取得して保持する。保持部201は、撮像部200が過去に撮影した映像データまたは、撮像部200が撮影中の映像データを所定の間隔毎にセグメントデータに分割して保持する。映像データの分割方法は所定間隔ごとに限られず、任意の方法により分割することができる。このようにして保持部201は、コンテンツを構成する複数のセグメントデータを保持する。
また、図2(a)では、送信装置101が撮像部200を有する場合について説明するが、送信装置101が撮像部200を有しない構成としてもよい。この場合、保持部201は送信装置101の外部から映像データ等のコンテンツを取得し、所定のセグメントデータに分割して保持することができる。
また、後述の制御部204がCPU(Central Processing Unit)等のプロセッサを内蔵する場合には、保持部201は、当該プロセッサに実行させるためのプログラムを記録する。さらに、後述の制御部204がプロセッサを内蔵する場合には、保持部201は、当該プロセッサがプログラムを実行する際に用いるパラメータを一時的に保存するために用いられる。
また、本実施形態において保持部201は、送信装置101が受信装置102と確立したセッションを識別するためのセッション識別情報と、当該セッションにおいて送信されるデータがライブ映像であるか記録映像であるかを示す情報とを関連付けて保持する。例えば保持部201は、受信装置102に送信する映像データが、撮像部200において撮影しているライブ映像データの送信であるか、それとも撮影が完了し記録媒体に記録された映像データの送信であるかを示す情報を保持する。
ここで、ライブ映像データの送信とは、送信装置101が取得したコンテンツの一部を構成するセグメントデータを、コンテンツの取得を継続している間に、受信装置102に送信する送信のことである。一方、記録媒体に記録された映像データの送信とは、コンテンツの取得の完了後に、当該コンテンツを受信装置102に送信する送信のことである。
保持部201は、例えばROM(Read Only Memory)やRAM(Random Access Memory)等により構成される。保持部201としてリムーバブルメディアを用いてもよい。また保持部201は、その一部又は全体が外部記憶装置により構成されてもよい。また保持部201は複数の記録媒体により構成されてもよい。
生成部202は、保持部201が保持する映像データのメタデータ(以下、「プレイリスト600」)を生成する。プレイリスト600は、保持部201に保持された複数のセグメントデータのうち受信装置102が取得可能なセグメントデータを示すメタデータである。プレイリスト600は、例えば、セグメントデータの再生時間、セグメントデータの所在情報(例えば、アドレス情報)、セグメントデータの再生順序、セグメントデータの終端情報等を含む。ただし、プレイリスト600はこれらの全ての情報を含む必要はない。また、プレイリスト600は上述の情報に限られない。プレイリスト600の詳細は、図6を用いて後述する。
通信部203は、受信装置102にセグメントデータを送信するために受信装置102とセッションを確立する。また通信部203は、セッションを確立した受信装置102からプレイリスト600の取得要求(以下、「プレイリスト取得要求」)を受信する。通信部203は、プレイリスト取得要求に、セグメントデータの受信装置102への送信が可能な状態(セッション持続状態)の終了を指示する終了指示を含めて受信することができる。あるいは、終了指示をプレイリスト取得要求とは独立して受信することとしてもよい。プレイリスト取得要求の詳細については図5を用いて後述する。
また通信部203は、受信した取得要求に応じてプレイリスト600を受信装置102に送信する。このプレイリスト600は、保持部201に保持された複数のセグメントデータのうち受信装置102が取得可能なセグメントデータを示すメタデータである。通信部203は終了指示を受信した場合、セグメントデータがこれ以上プレイリスト600に追加されないことを示す終端情報をプレイリスト取得要求の応答(プレイリスト600)に含めて送信する。終端情報は、受信装置へ送信するセグメントデータの終端を表す。
また、通信部203は受信装置102からセグメントデータの取得要求(以下、「セグメントデータ取得要求700」)を受信する。そして通信部203は要求されたセグメントデータを受信装置102に送信する。
タイマ部205は、後述の制御部204によりタイマ起動指示がなされてから所定時間内に、受信装置102からプレイリスト取得要求がなされたか判定するための計時を行う。タイマ部205を用いたタイマ処理については、図8を用いて後述する。
制御部204は、図2(a)に示した各構成の動作を制御する。例えば、制御部204は撮像部200に被写体の撮像を行わせる制御を行う。また例えば制御部204は、コンテンツをセグメントデータに分割して保持部201に保持させる制御を行う。また例えば制御部204は、生成部202にプレイリスト600を生成させる制御を行う。また例えば制御部204は、通信部203が行う通信の制御を行う。
制御部204は例えば、CPU等のプロセッサにより構成することができる。制御部204がプロセッサとして構成される場合、制御部204は保持部201に記憶されたプログラムを読み出して実行することにより、図2(a)に示した送信装置101の各構成の動作を制御する。
次に、受信装置102の機能構成例について図2(b)を用いて説明する。
操作部212は、ユーザのコンテンツの受信開始操作を受け付ける。ユーザは、操作部212を操作して、コンテンツの受信開始を指示することができる。コンテンツの受信開始が指示されると、後述の制御部210は後述の通信部211を介して送信装置101にプレイリスト取得要求を送信する制御を行う。このプレイリスト取得要求は、例えば、コンテンツの受信開始指示後、一定時間毎に受信装置102から送信装置101へ送信するように制御部210が制御することができる。プレイリスト取得要求に対する応答として、プレイリスト600を受信すると、制御部210はプレイリスト600に含まれる取得情報610に基づいて、受信するセグメントデータを選択し、選択したセグメントデータの取得要求を送信する指示を行う。受信装置102は、セグメントデータ取得要求に対する応答としてセグメントデータを受信する。このようにして、受信装置102はコンテンツを受信することができる。
また、操作部212は、ユーザのコンテンツの受信終了操作を受け付ける。ユーザは、操作部212を操作して、コンテンツの受信の終了を指示することができる。コンテンツの受信終了が指示されると、制御部210は、通信部211を介して、送信装置101に終了指示を含むプレイリスト取得要求を送信する制御を行う。このプレイリスト送信要求に対する応答として、受信装置102は終端情報を含むプレイリスト600を受信する。受信装置102は、終端情報を含むプレイリスト600の受信に応じて、コンテンツの受信を終了する。
通信部211は、送信装置101にプレイリスト取得要求を送信する。通信部211は、セグメントデータの受信装置102への送信の終了を指示する終了指示をプレイリスト取得要求に含めることができる。通信部211は、プレイリスト取得要求と、終了指示を別々に送信装置101に送信することとしてもよい。
また通信部211は、プレイリスト取得要求の応答としてプレイリスト600を受信する。このプレイリスト600は、コンテンツを構成する複数のセグメントデータを送信装置101の保持部201から取得するために用いるアドレス情報を含むことができる。また、プレイリスト600は、複数のセグメントデータの再生順序を示す再生順序情報を含むことができる。また、通信部211がプレイリスト取得要求とともに終了指示を送信した場合、その応答として受信するプレイリスト600には、これ以上セグメントデータがプレイリスト600に追加されないことを示す終端情報620を含めることができる。
また通信部211は、プレイリスト600の内容に基づいて、送信装置101にセグメントデータ取得要求を送信する。そして通信部211は、セグメントデータ取得要求の応答として、送信装置101からセグメントデータを受信する。
再生部206は、通信部211が受信したコンテンツを再生する。また、記録処理部207は、通信部211が受信したコンテンツを記憶部209に記録する処理を行う。例えば、記録処理部207は通信部211が受信した映像データを録画する処理を行う。あるいは、記録処理部207は通信部211が受信した音声データを録音する処理を行う。受信装置102は再生部206を有さず、受信装置102に接続された外部の再生装置にコンテンツデータを送信して再生させることとしてもよい。
設定部208は、受信したコンテンツを記録するか否かの設定を行う。例えば、設定部208は、受信装置102の録画モードと非録画モードを切り替える。録画モードでは、受信装置102は、通信部211が受信した映像データを記憶部209に記憶する。一方、非録画モードでは、受信装置102は、通信部211が受信した映像データを再生部206に再生させるが、記憶部209に記録させない。設定部208は、受信装置102がコンテンツの記録を行うか否かを示す記憶情報を記憶部209に記憶させる。
制御部210は、図2(b)に示した受信装置102の各構成の動作を制御する。制御部210は例えば、CPU等のプロセッサにより構成することができる。制御部210がプロセッサとして構成される場合、制御部210は記憶部209に記憶されたプログラムを読み出して実行することにより、図2(b)に示した受信装置102の各構成の動作を制御する。
記憶部209は、設定部208により録画モードに設定されている場合、通信部211が受信したコンテンツを記録する。また、記憶部209は、制御部210がCPU等のプロセッサを内蔵する場合には、当該プロセッサに実行させるためのプログラムを記録する。さらに、制御部210がプロセッサを内蔵する場合には、記憶部209は、当該プロセッサがプログラムを実行する際に用いるパラメータを一時的に保存するために用いられる。
記憶部209は、例えばROM(Read Only Memory)やRAM(Random Access Memory)等により構成される。記憶部209としてリムーバブルメディアを用いてもよい。また記憶部209は、その一部又は全体が外部記憶装置により構成されてもよい。また記憶部209は複数の記録媒体により構成されてもよい。
次に、送信装置101と受信装置102との間のデータ送信の処理の例について図3を用いて説明する。
まず受信装置102は、送信装置101に対してプレイリスト取得要求を行う(S301)(プレイリスト要求受信ステップ・プレイリスト要求受信手順/プレイリスト要求送信ステップ・プレイリスト要求送信手順)。プレイリスト600は、送信装置101が受信装置102に送信することができるセグメントデータを示すメタデータである。セグメントデータは、送信装置101が送信するコンテンツの一部を構成するデータである。受信装置102は、プレイリスト600に含まれる情報を用いて、送信装置101から所望のセグメントデータを受信することができる。プレイリストの例については、図6(a)及び(b)を用いて後述する。
本実施形態では、プレイリスト取得要求は、コンテンツ(例えば、映像データ)を識別するための識別子を含む。また、プレイリスト取得要求には、送信装置101と受信装置102との間のセッションを識別するためのセッション識別子を含めることができる。本実施形態では、受信装置102がセッション識別子を生成して送信装置101に送信する。プレイリスト取得要求の詳細については図5を用いて後述する。
送信装置101は、セッション識別子を含むプレイリスト取得要求を受信すると、当該プレイリスト取得要求を行った受信装置102とのセッションを確立可能であるか判定する。プレイリスト取得要求を行った受信装置102とのセッションを確立可能な場合は、送信装置101は、プレイリスト取得要求に応じたプレイリスト600を応答する(S302)。(プレイリスト送信ステップ・プレイリスト送信手順/プレイリスト受信ステップ・プレイリスト受信手順)。受信装置102とのセッションを確立可能な場合とは、例えば、送信装置101がセッションを確立できる受信装置102の上限台数を超えない場合等である。
本実施例では、受信装置102がセッション識別子を作成する場合について説明するが、セッション確立時に送信装置101がセッション識別子を作成して、受信装置102に通知することとしてもよい。この場合、送信装置101は、初めに受信装置102からセッション識別子を含まないプレイリスト取得要求を受信する。そして送信装置101は、セッション識別子を含まないプレイリスト取得要求を行った受信装置102とセッションを確立する場合に、セッション識別子を作成して受信装置102に通知する。
あるいは、送信装置101と受信装置102は、プレイリスト取得要求にセッション識別子を含めないで、セッション識別子を交換することとしてもよい。例えば、プレイリスト取得要求とは異なるコマンドによってセッション識別子を交換することができる。また例えば、NFC(Near Field Communication)などの近接無線を用いて、送信装置101と受信装置102がセッション識別子を交換することとしてもよい。あるいは、例えば、ユーザが手動入力によって送信装置101及び受信装置102にセッション識別子を設定することとしてもよい。
こうして送信装置101と受信装置102との間で確立されるセッションを識別可能にすることで、送信装置101は、送信装置101と受信装置102との間の接続を制御することができる。例えば、送信装置101からコンテンツを受信する受信装置102の台数が所定の上限数に達している場合、新たな受信装置102に対しコンテンツの送信を行わないようにすることができる。例えば、新たにプレイリスト取得要求を行った受信装置102に対してエラー応答を行い、コンテンツの送信を行わないようにすることができる。また例えば、送信装置101はセッションを識別することで、複数の受信装置102を識別して、受信装置102毎に異なるコンテンツの送信を行うことができる。
ステップS302において送信装置101から受信装置102に送信されるプレイリスト600には、セグメントデータの再生順序、再生時間、再生手段、所在情報等を示す取得情報610が含まれる。プレイリスト600については、図6を用いて詳細を後述する。
次に受信装置102は、ステップS302で受信したプレイリスト600の内容に基づき、プレイリスト600に記載されたセグメントデータの取得要求(セグメントデータ取得要求700)を行う(S303)。(セグメントデータ要求受信ステップ・セグメントデータ要求受信手順/セグメントデータ要求送信ステップ・セグメントデータ要求送信手順)。セグメントデータ取得要求700には、要求するセグメントデータを識別するための識別子、及び、上述のセッション識別子を含む。セグメンデータ取得要求については、図7を用いて詳細を後述する。
セグメントデータ取得要求700を受取った送信装置101は、対応するセグメントデータを受信装置102に送信する(S304)。(セグメントデータ送信ステップ・セグメントデータ送信手順/セグメントデータ受信ステップ・セグメントデータ受信手順)。この際、送信装置101は、セグメントデータ取得要求700にセッション識別子が含まれるか否かを判断する。このセッション識別子が、ステップS301において確立したセッションを示すセッション識別子かを判断し、一致した場合のみ、セグメントデータを送信する。セッション識別子が一致しなかった場合は、送信装置101はエラーレスポンスを送信し、セグメントデータを送信しない。受信装置102は、上述のプレイリスト取得要求及びセグメントデータ取得要求700を繰返し行い、映像データのセグメント取得を行う。
受信装置102を利用するユーザが、セッションを終了させたい場合、受信装置102は、プレイリスト取得要求にセッションの終了指示を含めて送信する(S305)。(終了指示送信ステップ・終了指示送信手順/終了指示受信ステップ・終了指示受信手順)。
セッションの終了指示を含むプレイリスト取得要求を受取った送信装置101は、終端情報(終了タグ)を含むプレイリスト600を受信装置102に送信する(S306)(終端情報送信ステップ・終端情報送信手順/終端情報受信ステップ・終端情報受信手順)。
終端情報を含むプレイリスト600を受信すると、受信装置102はプレイリスト600の終端情報よりも前に記載されたセグメントデータの取得要求を行う。送信装置101は、プレイリスト600の終端情報までのセグメントデータの提供が終了すると、送信装置101と受信装置102間のセッションを解放する。送信装置101は、受信装置102とのセッションを解放するまでは、受信装置102に送信するセグメントデータを保持し続け、セグメントデータを受信装置102に提供できる状態にしておく。
次に、図3のステップS301を用いて説明したプレイリスト取得要求の例について、図5を用いて説明する。
プレイリスト取得要求500は、セッションの終了指示を含まないプレイリスト取得要求の例である。プレイリスト取得要求500は、例えば、図3に示したステップS301において送信される。プレイリスト取得要求500内の「GET/playlistHTTP/1.1」は、プレイリストの取得を要求するメッセージである。
セッション識別子501は、送信装置101と受信装置102との間のセッションを識別するための識別子である。セッション識別子501は例えば、数字列や任意の値とすることができる。図5に示した例では、セッション識別子501はHTTPヘッダに記載される。セッション識別子は、HTTPリクエストラインや、HTTPのBodyに記載してもよい。
接続情報511は、送信装置101とのセッションを継続するか否かを示す情報である。プレイリスト取得要求500内の接続情報511に記述されている「keep‐alive」は送信装置101とのセッションを維持することを意味する。ここで、セッションを維持する場合には「keep‐alive」を記述しないこととしてもよい。
プレイリスト取得要求510は、セッションの終了指示を含むプレイリスト取得要求の例である。プレイリスト取得要求510は、例えば、図3に示したステップS305において送信される。プレイリスト取得要求510内の接続情報511に記述されている「close」は、送信装置101とのセッションを終了することを意味する。本例において、セッションの終了を示す接続情報511(「Connection:Close」)は終了指示としての役割を果たす。
プレイリスト取得要求500、510の例では、HTTPの転送モードを接続情報511として扱っている、他のHTTPヘッダを接続情報とみなしてもよいし、HTTPリクエストラインや、HTTPのBodyに記載されている情報を接続情報とみなしてもよい。
プレイリスト取得要求520は、HTTPリクエストラインに、接続情報521、セッション識別子522、受信装置102の受信モード情報523を付加した例である。
プレイリスト530は、HTTPリクエストBodyに接続情報531、セッション識別子532、受信装置102の受信モード情報523を付加した例である。
次に、本実施形態に係るプレイリスト600(メタデータ)の例を図6(a)及び(b)に示す。図6(a)はプレイリスト600の構成を示す概念図である。図6(a)は、送信装置101から受信装置102に送信されるプレイリスト1及びプレイリスト2を表している。例えば送信装置101は、受信装置102からの第1のプレイリスト取得要求に応じて第1のプレイリストを受信装置102に送信する。その後、受信装置102からの第2のプレイリスト取得要求に応じて、第2のプレイリストを受信装置102に送信する。
図6(a)の例では、1つの取得情報610が1つのセグメントデータに対応するものとする。すなわち、1つの取得情報610は、コンテンツを分割して生成される複数のセグメントデータのうち1つのセグメントデータを取得するための情報である。プレイリスト600は、取得情報610によって、受信装置102が取得可能なセグメントデータを示すことができる。またプレイリスト600は、取得情報610によって、送信装置101が送信可能なセグメントデータ示すことができる。図6(a)の例では、対応するセグメントデータが再生される順序に応じた順序で、取得情報610が記載される。
本実施形態において、プレイリスト600は、複数の取得情報610を含むことができる。さらに本実施形態に係るプレイリスト600は、取得情報610を含まないようにすることができる。プレイリスト600が取得情報610を含まない場合、受信装置102が取得可能なセグメントデータが存在しないことを意味する。また、プレイリスト600が取得情報610を含まない場合、送信装置101が送信可能なセグメントデータが存在しないことを意味する。プレイリスト600に取得情報610を含めない場合については、図4及び図9を用いて後述する。
図6(a)左図に示したプレイリスト600は、終端情報を含まないプレイリスト600の例である。図6(a)左図のプレイリスト600は、例えば、図3のステップS302において送信される。このプレイリストは、コンテンツを構成する複数のセグメントデータのうち、セグメントデータ1から3を取得するための取得情報610を含む。また、このプレイリスト600は、終端情報620を含まないため、セグメントデータ1、2、3の順序で再生することを意味する。さらに、このプレイリスト600は、セグメントデータ3以降も受信装置102に送信可能なセグメントデータが存在することを意味する。
図6(a)右図に示したプレイリスト600は、終端情報620を含むプレイリスト600の例である。図6(a)右図に示すプレイリスト600は、例えば、図3のステップS306において送信される。このプレイリストは、コンテンツを構成する複数のセグメントデータのうち、セグメントデータ4から6を取得するための取得情報610を含む。また、終端情報620は、これ以降、受信装置102へ送信すべきセグメントデータが存在しないことを意味する。
受信装置102は、受信したプレイリスト600に終端情報620が含まれない場合、受信したプレイリスト600に記載された取得情報610に対応するセグメントデータに続いて再生すべきセグメントデータを送信装置101が保持していると判断する。一方、受信装置102は、受信したプレイリスト600に終端情報620が含まれる場合、受信したプレイリスト600記載された取得情報610に対応するセグメントデータに続いて再生すべきセグメントデータを送信装置101が保持していないと判断する。
プレイリスト600に含める取得情報610は、受信装置102に送信していないセグメントデータに対応する取得情報610とすることができる。あるいは、すでに受信装置102に送信したセグメントデータに対応する取得情報610をプレイリスト600に含めて送信することとしてもよい。
図6(a)の例では、1つのプレイリストに3つのセグメントデータについての取得情報610を含めることとしたが、これに限らない。1つのプレイリストに含める取得情報610の数や内容については、特に限定しない。
次に、プレイリスト600の記述例を図6(b)に示す。図6(b)に示すプレイリスト600は、終端情報を含むプレイリスト600である。すなわち、図6(b)に示すプレイリスト600は、図6(a)の右図のプレイリスト600に対応する。図6(b)の「#EXTINF:1」はセグメントデータの再生秒数が1秒であることを意味する。また、図6(b)の例では、セグメントデータが保持されている場所がURLによって示されている。さらに、図6(b)の「#EXT‐X‐ENDLIST」は、プレイリストの終端であることを意味する。
このように、プレイリスト600を用いて、送信装置101は受信装置102に対して、送信可能なセグメントデータの再生時間、再生順序、所在等を通知することができる。また、受信装置102は、プレイリスト600を用いて、所望のセグメントデータ選択し、選択したセグメントデータの送信を送信装置101に要求することができる。
図6(a)及び(b)の例では、プレイリスト600に取得情報610及び終端情報620を含める場合について説明したが、これら以外にも追加情報をプレイリスト600に含めて受信装置102に送信することとしてもよい。
次に、セグメントデータ取得要求700の例を図7に示す。このセグメントデータ取得要求700は、例えば、図3のステップS303において受信装置102から送信装置101に送信される。メッセージ710は、取得要求の対象とするセグメントデータを示す。取得要求の対象とするセグメントデータは、受信装置102が受信したプレイリスト600に含まれる取得情報610に対応するセグメントデータである。本実施形態において、受信装置102は、メッセージ710をプレイリスト600に含まれる所在情報612に基づいて生成する。
セッション識別子702は、送信装置101と受信装置102との間のセッションを識別するための識別子である。このセッション識別子702は、図5を用いて説明したセッション識別子501に対応し、同じセッションを識別するためのものである。セッション識別子702は例えば、数字列や任意の値とすることができる。
次に、送信装置101のコンテンツ送信処理について図4を用いて説明する。送信装置101の制御部204がプロセッサを内蔵する形態では、図4の処理フローは、図4に示す手順を制御部204に実行させるためのプログラムを示す。送信装置101の制御部204が内蔵するプロセッサはコンピュータであり、送信装置101が内蔵する保持部201から読み出したプログラムを実行する。なお処理の順序はこのフローチャートに限定されるものではない。
まず送信装置101は、通信部203において受信装置102からのプレイリスト取得要求を受信する(S401)。次に制御部204は、プレイリスト取得要求を行った受信装置102と新規のセッションを確立するか判定する(S402)。制御部204は、受信したプレイリスト取得要求に含まれるセッション識別情報が、現在既に確立しているセッションの識別情報と同じであるか否かにより、新規セッションを確立するか否かを判定する。ここで、現在既に確立しているセッションの識別情報は、保持部201に保持されているものとする。
ステップS402において受信装置102から受信したプレイリスト取得要求に含まれるセッション識別情報が保持部201に保持されている識別情報と一致する場合(S402でYesの場合)、既存のセッションを継続すると判断する。この場合、制御部204はステップS404の処理に進む。
一方、受信装置102から受信したプレイリスト取得要求に含まれるセッション識別情報が、保持部201に保持されている識別情報と異なる場合(S402においてNoの場合)、制御部204は新規のセッションを確立するための処理を行う(S403)。ステップS403において、制御部204は、プレイリスト取得要求に含まれるセッション識別情報を保持部201に新たに保持させる処理を行う。送信装置101がセッション識別情報を生成する場合には、ステップS403において、新たなセッション識別情報を生成する。このようにして制御部204は新規のセッションを確立する。ステップS403において新規のセッションを確立した後、制御部204はステップS404の処理を行う。
ステップS404において、制御部204はプレイリスト取得情報にセッションの終了指示が含まれるか否かを判断する(S404)。図5の例では、プレイリスト取得要求に含まれる接続情報511がセッションの終了を指示するものである場合(「Connection:Close」である場合)、制御部204は、セッションの終了指示が含まれると判定する。一方、プレイリスト取得要求に含まれる接続情報511がセッションの継続を示すものである場合(「Connection:keep−alive」である場合)、制御部204は、セッションの終了指示が含まれないと判定する。あるいは、「Connection:Close」が記述されていない場合に、セッションの終了指示が含まれないと判定することとしてもよい。
プレイリスト取得要求に終了指示を含まない場合(ステップS404においてNoの場合)、制御部204は生成部202にプレイリスト600を生成させる(S405)。本実施形態では、ステップS405において、生成部202は、受信装置102に対して未送信のセグメントデータについての取得情報610を含むプレイリスト600を生成する。なお、受信装置102とのセッションが確立不能な場合は、エラー情報を含む返信を行ってもよい。セッションが確立不能な場合とは、例えば、送信装置101がセッションを確立することができる上限数を超える場合等が該当する。
ステップS405において生成部202がプレイリスト600を生成すると、制御部204は通信部203を制御して、生成されたプレイリスト600を受信装置102に送信させる(S406)。
一方ステップS404において、プレイリスト取得要求に終了指示を含む場合(ステップS404においてYesの場合)、制御部204は受信装置102に送信している映像データがライブ映像であるか判定する(S407)。
本実施形態では、送信装置101が確立しているセッションが、撮像部200で撮影中のライブ映像データを送信するセッションであるか、記録媒体に記録された映像データを送信するセッションであるかを示す情報を保持部201に保持しているものとする。送信装置101が複数の受信装置102と複数のセッションを確立している場合には、セッションごとに、ライブ映像データの送信セッションであるか、記録映像データの送信セッションであるかを示す情報を保持する。ここで、ライブ映像データの送信とは、撮像部200が撮影を行っている間に、撮像部200が撮影した映像データを送信することである。また、記録映像データの送信とは、例えば、送信装置101の外部に接続された外部記憶装置に記録された映像データの送信や、送信装置101に装着可能なメモリカードに記録された映像データの送信などが該当する。あるいは、撮像部200が撮像した映像データであって、保持部201に録画した映像データ等が該当する。
制御部204は、プレイリスト取得要求に含まれるセッション識別情報と、保持部201に保持されている情報とを参照して、受信装置102に送信している映像データがライブ画像であるか判定することができる。
送信が記録映像データの送信である場合(ステップS407においてNoの場合)、制御部204は、受信装置102にセグメントデータの取得情報610を含み、終端情報620を含むプレイリスト600を生成部202に生成させる(S408)。そして、生成したプレイリスト600を受信装置102に送信する(S409)。
プレイリスト600を送信すると、制御部204は、保持部201に保持した受信装置102とのセッションの状態を新規受付可能状態(バックグラウンドモード)に更新する(S410)。
新規受付可能状態とは、現在セッションを確立している第1の受信装置102とのセッションを維持しつつ、第2の受信装置102との新たなセッションの確立を許可する状態のことである。以下、新規受付可能状態をバックグラウンドモードと称する。
セッションの状態がバックグラウンドモードである場合、新たなセッションを確立した第2の受信装置102は送信装置101にプレイリスト取得要求や、セグメントデータ取得要求を送信することができる。そして、第2の受信装置102は送信装置101からプレイリストやセグメントデータを受信することができる。
さらに、バックグラウンドモードである場合、第1の受信装置102もまた、送信装置101にプレイリスト取得要求や、セグメントデータ取得要求を送信することができる。そして、第1の受信装置102は送信装置101からプレイリストやセグメントデータを受信することができる。ただし、プレイリストの送信やセグメントデータの送信においては、第2の受信装置102に対するデータ送信が優先される。
バックグラウンドモードである場合に、第1の受信装置102からのデータ送信要求と、第2の送信装置からのデータ送信要求を受信すると、送信装置101は、第2の受信装置102へのデータ送信を第1の受信装置102へのデータ送信よりも先に実行する。
バックグラウンドモードでは、第1の受信装置102へのデータ送信と、第2の受信装置102へのデータ送信に優先順位をつけて排他的にデータ送信を行うことができる。このようにして、第1の受信装置102にのみデータ送信を行っている場合のデータ送信処理負荷と同じ処理負荷で、第1の受信装置102及び第2の受信装置102にデータ送信を行うことができる。従って、第1の受信装置102とセッションを確立した時点で送信装置101が確立することができるセッション数の上限に達している場合でも、第1の受信装置102及び第2の受信装置102とにデータ送信を行うことができる。
このようにして、第1の受信装置102に、最後のプレイリストに含まれるセグメントデータの送信を行いつつ、第2の受信装置102からのプレイリスト取得要求、セグメントデータ取得要求の受信、第2の受信装置102へのデータ送信を行うことができる。従って、第1の受信装置102に対するコンテンツの送信の終了と、第2の受信装置102に対するコンテンツの送信の開始を、継続的に行うことができる。
セッションの状態をバックグラウンドモードに更新した後、制御部204はタイマ部205を起動させて、タイマ処理を行い、第1の受信装置102とのセッションを終了する(S411)。ここでタイマ処理とは、送信装置101がプレイリストを送信してから所定時間以内に、セッションを確立した受信装置102からセグメントデータの取得要求を受信しない場合には、セッションを確立した受信装置102とのセッションを終了する処理である。タイマ処理の詳細については、図8を用いて後述する。
本実施形態では、ステップS408において終端情報を含むプレイリスト600を生成する場合について説明したが、ステップS408において終端情報を含まないプレイリスト600を生成することとしてもよい。この場合、受信装置102とのセッションは後述のタイマ処理におけるタイマの満了によって終了する。
次に、ステップS407においてライブ映像データ送信中と判定した場合の処理について説明する。ライブ映像データ送信中と判定した場合(S407においてYesの場合)、制御部204は受信装置102が、受信した映像データを録画しているか判定する(S412)。
本実施形態では、受信装置102が送信装置101に終了指示を送信する場合に、終了指示に加えて、受信したコンテンツを記録しているか否かを示す記録情報(録画/非録画モード情報)を受信装置102から送信装置101に通知するものとする。送信装置101は、終了指示と共に受信した記録情報に基づいて、ステップS412の判定を行うことができる。制御部204は、受信装置102がコンテンツを記録していることを示す記録情報を受信しない場合には、受信装置102がコンテンツを記録していないと判定することとしてもよい。
また、ステップS403のセッション確立処理において、送信装置101は、受信装置102が受信した映像データの録画を行う録画モードであるか、受信した映像データの録画を行わない非録画モードであるか確認することとしてもよい。モードの確認方法は特に限定しない。例えば、送信装置101は、ステップS403において受信装置102からモードの通知を受けることとしてもよい。あるいは、送信装置101が受信装置102にモードの通知を行うように能動的に指示することにより、受信装置102のモードを確認することとしてもよい。このようにして、通信部203は、受信装置102がセグメントデータの記録を行うか否かを示す記録情報を受信装置102から受信する。
受信装置102が受信した映像データを録画していると判定した場合(S412においてYesの場合)、制御部204は生成部202に、取得情報610及び終端情報620を含むプレイリスト600を生成させる(S413)。
そして制御部204は、ステップS413において生成したプレイリストを受信装置102に送信する(S414)。その後、制御部204はタイマ部205を起動させてタイマ処理を行い、受信装置102とのセッションを終了する(S415)。
一方、ステップS412で受信装置102が受信した映像データを録画していないと判定した場合(S412においてNoの場合)、制御部204は生成部202に、終端情報620を含み、取得情報610を含まないプレイリスト600を生成させる(S416)。
そして制御部204は、通信部203を制御して、ステップS416において生成したプレイリスト600を受信装置102に送信する(S417)。
そして制御部204は、送信済のプレイリスト600を受信装置102に送信し終えると、受信装置102とのセッションを終了する(S418)。
上述の例では、送信装置101がコンテンツとして映像データを受信装置102に送信する場合について説明したが、これに限られず、送信装置101が音声データ等他のコンテンツを送信する場合にも本発明を適用することができる。
次に、図4のステップS411及びステップS415におけるタイマ処理について図8を用いて説明する。
まず制御部204はタイマ部205を起動させる(S801)。次に制御部204は、通信部203が受信装置102からセグメントデータ取得要求を受信したか判定する(S802)。受信装置102からセグメントデータ取得要求を受信していない場合(S802でNoの場合)、制御部204はタイマが満了しているか判定する(S803)。タイマが満了した場合(S803でYesの場合)、制御部204は受信装置102(第1の受信装置102)とのセッションを終了する(S804)。例えば制御部204は、保持部201に保持した受信装置102とのセッション識別情報を削除することにより、セッションを終了する。一方、タイマが満了していないと判定した場合(S803でNoの場合)、ステップS802の処理を繰り返す。
ステップS802において、受信装置102からセグメントデータ取得要求を受信した場合は、受信装置102とのセッションを維持して、要求されたセグメントデータを受信装置102に送信する(S805)。次に制御部204は、セグメントデータ取得要求において要求されたセグメントデータを全て送信し終えたか判定する(S806)。全てのセグメントデータを送信し終えていない場合(S806でNoの場合)、ステップS805の処理を繰り返す。全てのセグメントデータを送信し終えた場合には、制御部204は受信装置102(第1の受信装置102)とのセッションを終了する(S804)。
このようにして、タイマを起動させてから所定時間以内にセグメントデータ取得要求を受信しない場合には、受信装置102(ステップS411における処理の場合は、前述の第1の受信装置102)とのセッションを終了させることができる。
図4を用いて説明したコンテンツ送信処理について、プレイリスト取得要求の内容と、送信されるプレイリスト600の対応を図9に示す。
まず、受信装置102が送信するプレイリスト取得要求に、コンテンツの送信終了を指示する終了指示が含まれない場合(S404においてNoの場合)について説明する。
この場合、送信装置101は、取得情報610を含み、終端情報620を含まないプレイリスト600を受信装置102に応答する。さらに、送信装置101はプレイリスト取得要求を行った受信装置102とのセッションを継続する(S406)。
本実施形態において、この応答は、受信装置102に送信しているコンテンツがライブコンテンツであるか、記録コンテンツであるかに関りなく行われる。ライブコンテンツとは、送信装置101がコンテンツの取得を継続しているコンテンツである。例えば、ライブコンテンツとは、撮像部200において撮影中の映像である。また、記録コンテンツとは、過去に生成され、送信装置101の取得が完了しているコンテンツである。例えば、記録コンテンツとは、過去に撮像部200において撮影された映像であって、保持部201に保持されている映像データである。また本実施例において、この応答は、受信装置102が受信したコンテンツを記録しているか否かに関わりなく行われる。
次に、受信装置102が送信するプレイリスト取得要求に、コンテンツの送信終了を指示する終了指示が含まれる場合(S404においてYesの場合)について説明する。
この場合、本実施形態では送信装置101はプレイリスト600に終端情報620を含めて受信装置102に応答する。また、プレイリストに取得情報610を含むか否かは、送信装置101が送信するコンテンツデータがライブコンテンツであるか否か、及び、受信装置102の記録/非記録モードに応じて異なる。
まず、送信装置101がライブコンテンツを送信している場合について説明する。ライブコンテンツを送信する場合、送信装置101は、コンテンツの取得を継続している間に、プレイリスト600の送信とセグメントデータの送信を受信装置102に対して行う。
送信装置101がライブコンテンツを送信している場合であって、受信装置102が受信したコンテンツの記録を行っていない場合、送信装置101は、取得情報610を含まず、終端情報620を含むプレイリスト600を受信装置102に送信する(S417)。すなわち、終端情報620のみをプレイリスト600に含めて受信装置102に送信する。プレイリスト600の送信を完了すると、送信装置101は受信装置102とのセッションを終了し、新規の受信装置102とセッションを開始できるようにセッションを開放する(S418)。
このようにして送信装置101は、終了指示受信後に、セグメントデータの取得情報610を受信装置102に送信しないようにすることができる。取得情報610を含まないプレイリスト600を受信した受信装置102は、セグメントデータの取得要求を行わずに送信装置101とのセッションを終了する。従って、送信装置101は終了指示受信後、速やかに当該終了指示を送信した受信装置102とのセッションを終了し、新たな受信装置102にセッションを開放することができる。こうして、受信装置102がコンテンツの記録を行っていない場合には、速やかなセッションの終了を優先させることができる。
一方送信装置101がライブコンテンツを送信している場合であって、受信装置102が受信したコンテンツの記録を行っている場合、送信装置101は取得情報610を含み、終端情報620を含むプレイリスト600を受信装置102に送信する(S414)。
そして、プレイリスト600の送信後、タイマを起動させ、所定時間以内にセグメントデータ取得要求を受信しない場合には、終了指示を送信した受信装置102とのセッションを終了する。所定時間以内にセグメントデータ取得要求を受信した場合には、要求されたセグメントデータを送信後、受信装置102とのセッションを終了する(S415)。
このようにして送信装置101は、受信装置102がコンテンツの記録を行っている場合には、終了指示受信後にセグメントデータの送信を省略しないようにすることができる。従って、受信装置102がコンテンツの記録を行っていない場合に比べて、より多くのセグメントデータを受信装置102に送信して、記録させることができる。さらに、データ送信のリアルタイム性を維持してデータ送信を行うことができる。
最後に、終了指示を受信した場合であって、送信装置101が記録コンテンツを送信している場合について説明する。この場合、送信装置101は、取得情報610を含み、終端情報620を含むプレイリスト600を受信装置102に送信する(S409)。本実施例において、この応答は、受信装置102が記録モードであるか、非記録モードであるかに関わらない。
プレイリスト600の送信後、送信装置101は、セッション状態を上述のバックグラウンドモードに変更する。すなわち、終了指示を送信した第1の受信装置102と、新規の第2の受信装置102の両方とセッションを確立することを可能にする。そして、第1の受信装置102へのコンテンツの送信よりも、第2の受信装置102へのコンテンツの送信を優先させるようにする。
このようにして、新規の受信装置102(第2の受信装置102)とのセッションを速やかに開始することができる。また、終了指示を送信した受信装置102(第1の受信装置102)に対して、セグメントデータを省略せずに送信することができる。
前述のバックグラウンドモードでは、第1の受信装置102へのコンテンツの送信よりも、第2の受信装置102へのコンテンツの送信が優先される。従って、第1の受信装置102へのコンテンツ送信は、第1の受信装置102のみとセッションを確立している場合に比べて時間を要する。しかしながら、受信装置102への配信コンテンツが記録データである場合には、データ送信のリアルタイム性が要求されない。そこで、バックグラウンドモードによるコンテンツ送信を行うことにより、第2の受信装置102との速やかなセッションの確立と、第1の受信装置102へのセグメントデータの送信を両立することができる。データ送信のリアルタイム性が要求されないため、終了指示を受けた場合のプレイリストに終端情報を含めないこととしてもよい。この場合、第1の受信装置102は、タイマ処理のタイマの満了によりセッションを終了する。
本実施例では、送信装置101が送信するコンテンツが記録コンテンツである場合には、受信装置102が受信したコンテンツの記録をしているか否かを考慮しない例について説明した。しかし、送信装置101が記録コンテンツを送信している場合にも、受信装置102が受信したコンテンツの記録を行っているか否かに応じて、プレイリスト600に取得情報610を含めるか否かを切り替えることとしてもよい。
すなわち、送信装置101が記録コンテンツを送信する場合であって、受信装置102が受信したコンテンツの記録を行わない場合、送信装置101は終了情報を含むプレイリスト要求に対して、取得情報610を含まないプレイリスト600を応答する。また、送信装置101が記録コンテンツを送信する場合であって、受信装置102が受信したコンテンツの記録を行う場合、送信装置101は終了情報を含むプレイリスト要求に対して、取得情報610を含むプレイリスト600を応答する。
このようにして、送信装置101が送信するコンテンツがライブコンテンツであるか記録コンテンツであるかに関わらず、セッション終了時にプレイリスト600に取得情報610を含めるか否かを、受信装置102の記録モードに応じて、切り替えることができる。
以上の構成によれば、コンテンツを分割してセグメントデータごとに受信装置に送信する送信システムにおいて、受信装置が所望のタイミングでコンテンツの送信を終了させることができる。
<第2の実施形態>
第2の実施形態では、送信装置101が送信するコンテンツがライブコンテンツであるか否かの判定、及び、受信装置102が受信したコンテンツの記録を行うか否かの判定を行わない例について説明する。
本実施形態に係る送信システムの構成は、実施形態1において図1を用いて説明した構成と同じであるので、説明を省略する。また、本実施形態に係る送信装置101、受信装置102の機能構成についても、第1の実施形態において図2(a)、(b)を用いて説明した内容と同じである。ただし本実施形態において、送信装置101はタイマ部205を有さないこととすることができる。また本実施形態において、受信装置102は記録処理部207を有さないこととすることができる。
次に、本実施形態における送信装置101のコンテンツ送信処理について図10を用いて説明する。送信装置101の制御部204がプロセッサを内蔵する形態では、図10の処理フローは、図10に示す手順を制御部204に実行させるためのプログラムを示す。送信装置101の制御部204が内蔵するプロセッサはコンピュータであり、送信装置101が内蔵する保持部201から読み出したプログラムを実行する。
図10に示したステップS1001からS1004の処理は、第1の実施形態において図4を用いて説明したステップS401からS404の処理と同じであるため、説明を省略する。
ステップS1004において、プレイリスト取得要求に終了指示を含まない場合(ステップS1004においてNoの場合)、制御部204は生成部202にプレイリスト600を生成させる(S1005)。本実施形態では、生成部202は、受信装置102に対して未送信のセグメントデータについての取得情報610を含むプレイリスト600を生成する。なお、受信装置102とのセッションが確立不能な場合は、エラー情報を含む返信を行ってもよい。セッションが確立不能な場合とは、例えば、送信装置101がセッションを確立することができる上限数を超える場合等が該当する。
ステップS1005において生成部202がプレイリスト600を生成すると、制御部204は通信部203を制御して、生成されたプレイリスト600を受信装置102に送信させる(S1006)。
一方ステップS1004において、プレイリスト取得要求に終了指示を含む場合(ステップS1004においてYesの場合)、制御部204は生成部202に、終端情報620を含み、取得情報610を含まないプレイリスト600を生成させる(S1007)。
そして制御部204は、通信部203を制御して、ステップS1007において生成したプレイリスト600を受信装置102に送信する(S1008)。そして制御部204は、送信済のプレイリスト600を受信装置102に送信し終えると、受信装置102とのセッションを終了する(S1009)。
上述の例では、送信装置101がコンテンツとして映像データを受信装置102に送信する場合について説明したが、これに限られず、送信装置101が音声データ等他のコンテンツを送信する場合にも本発明を適用することができる。
図10を用いて説明したコンテンツ送信処理について、プレイリスト取得要求の内容と、送信されるプレイリスト600の対応を図11に示す。
受信装置102から受信したプレイリスト取得要求に終了指示が含まれない場合(S1004においてNoの場合)、送信装置101は、その応答として、取得情報610を含み、終端情報620を含まないプレイリスト600を受信装置102に送信する。この場合送信装置101は、例えば、図6(a)左図に示したプレイリスト600を送信する。送信装置101は、プレイリスト600の送信後も受信装置102とのセッションを継続する。
一方、受信装置102から受信したプレイリスト取得要求に終了指示が含まれる場合、(S1004においてYesの場合)送信装置101は、その応答として、取得情報610を含まず、終端情報620を含むプレイリスト600を受信装置102に送信する。この場合送信装置101は、例えば、図6(a)右図に示したプレイリスト600を送信する。送信装置101は、プレイリスト600の送信後、受信装置102とのセッションを終了する。
このようにして送信装置101は、終了指示受信後に、セグメントデータの取得情報610を受信装置102に送信しないようにすることができる。取得情報610を含まないプレイリスト600を受信した受信装置102は、セグメントデータの取得要求を行わずに送信装置101とのセッションを終了する。従って、送信装置101は終了指示受信後、速やかに当該終了指示を送信した受信装置102とのセッションを終了し、新たな受信装置102にセッションを開放することができる。こうして、速やかなセッションの終了を行うことができる。
このようにして、コンテンツを分割してセグメントデータごとに受信装置に送信する送信システムにおいて、受信装置が所望のタイミングでコンテンツの送信を終了させることができる。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
101 送信装置
201 保持部
202 生成部
203 通信部
204 制御部
205 タイマ部
102 受信装置
207 記録処理部
208 設定部
209 記憶部
210 制御部
211 通信部

Claims (17)

  1. コンテンツを構成する複数のセグメントのうち1つ以上に対して受信装置が取得要求を行うために用いるアドレス情報を含むメタデータを前記受信装置に送信する送信装置であって、
    前記メタデータに記述されたアドレス情報に基づくセグメントの取得要求を前記受信装置から受信すると共に、前記受信装置がセグメントの取得を終了することを示す終了指示を前記受信装置から受信する受信手段と、
    前記受信手段が前記受信装置からメタデータの取得要求を受信し、かつ、前記受信装置から終了指示を受信しない場合、セグメントに対する取得要求を行うために用いられるアドレス情報を含み、前記受信装置へ送信するセグメントの終端を表す終端情報を含まないメタデータを前記受信装置に送信し、
    前記受信手段が前記受信装置からメタデータの取得要求と終了指示を受信した場合、前記アドレス情報を含まず前記終端情報を含むメタデータを前記受信装置に送信する送信手段とを有することを特徴とする送信装置。
  2. コンテンツを構成する複数のセグメントのうち1つ以上に対して受信装置が取得要求を行うために用いるアドレス情報を含むメタデータを前記受信装置に送信する送信装置であって、
    前記メタデータに記述されたアドレス情報に基づくセグメントの取得要求を前記受信装置から受信すると共に、前記受信装置がセグメントの取得を終了することを示す終了指示を前記受信装置から受信する受信手段と、
    前記受信装置のモードを判定するモード判定手段と、
    前記モード判定手段により第1モードであると判定された受信装置からメタデータの取得要求と終了指示とを受信した場合、セグメントに対する取得要求を行うために用いるアドレス情報と、前記受信装置へ送信するセグメントの終端を表す終端情報とを含むメタデータを前記受信装置に送信し、
    前記モード判定手段により第2モードであると判定された受信装置からメタデータの取得要求と終了指示とを受信した場合、セグメントに対する取得要求を行うために用いるアドレス情報を含まず、前記受信装置へ送信するセグメントの終端を表す終端情報を含むメタデータを前記受信装置に送信する送信手段とを有することを特徴とする送信装置。
  3. 前記第1モードは、前記送信装置から受信したセグメントを記録する記録モードであり、前記第2モードは、前記送信装置から受信したセグメントを記録しない非記録モードであることを特徴とする請求項2に記載の送信装置。
  4. 前記受信手段が前記受信装置から前記終了指示を含むメタデータの要求を受信した場合、前記終端情報を含むメタデータを生成し、前記受信手段が前記受信装置から前記終了指示を含まないメタデータの要求を受信した場合、前記終端情報を含まないメタデータを生成する生成手段を有し、
    前記送信手段は、前記受信装置によるメタデータの要求の受信に応じて、前記生成手段により生成されたメタデータを前記受信装置へ送信することを特徴とする請求項1から3のいずれか一項に記載の送信装置。
  5. 前記送信手段は、
    前記受信手段が前記受信装置からメタデータの取得要求を受信し、かつ、前記受信装置から終了指示を受信しない場合、1又は複数のセグメントの再生順序を示す再生順序情報を含み前記終端情報を含まないメタデータを前記受信装置に送信し、
    前記受信手段が前記受信装置からメタデータの取得要求と前記終了指示とを受信した場合、前記再生順序情報を含まず前記終端情報を含むメタデータを前記受信装置に送信することを特徴とする請求項1に記載の送信装置。
  6. コンテンツを取得する取得手段を有し、
    前記送信手段は、前記取得手段が取得したコンテンツの一部を構成するセグメントであって受信装置に送信可能な前記セグメントを示すメタデータを、前記受信装置からの取得要求に応じて前記受信装置に送信することを特徴とする請求項1からのいずれか一項に記載の送信装置。
  7. コンテンツを取得する取得手段を有し、
    前記送信手段は、前記取得手段が取得したコンテンツの一部を構成するセグメントであって受信装置に送信可能な前記セグメントを示すメタデータを、前記取得手段が前記コンテンツの取得を完了した後に、前記受信装置に送信することを特徴とする請求項1からのいずれか一項に記載の送信装置。
  8. 前記受信装置に前記セグメントを送信するために前記受信装置とセッションを確立する確立手段を有し、
    前記受信手段は、前記セッションを確立した前記受信装置からセグメントの取得要求を受信し、
    前記受信手段が前記セッションを確立した前記受信装置から前記終了指示を受信し、且つ、前記セグメントに対する取得要求を行うために用いるアドレス情報と前記終端情報を含むメタデータを前記送信手段が送信してから所定時間内に該受信装置から前記メタデータに応じたセグメントの取得要求を受信しない場合には、前記確立手段は該受信装置とのセッションを終了することを特徴とする請求項2に記載の送信装置。
  9. 前記受信手段が受信した終了指示の送信元である前記受信装置に対し、前記送信装置がライブデータを送信しているか録画データを送信しているかを判定する判定手段と、
    前記受信装置に対して録画データを送信していると前記判定手段により判定された場合、前記受信装置とのセッション終了前に他の受信装置からのセグメントの取得要求を受け付ける一方、前記受信装置に対してライブデータを送信していると前記判定手段により判定された場合、前記受信装置とのセッション終了後に他の受信装置からのセグメントの取得要求を受け付けるように前記送信装置の動作モードを制御する制御手段とをさらに有することを特徴とする請求項1から8のいずれか一項に記載の送信装置。
  10. コンテンツを構成する複数のセグメントのうち少なくとも1つに対する取得要求を行うためのアドレス情報を含むメタデータを送信装置から受信する受信装置であって、
    前記メタデータの取得要求を前記送信装置へ送信すると共に、前記送信装置からのセグメントの取得を終了することを示す終了指示を前記送信装置に送信する送信手段と、
    前記送信手段が前記送信装置に対してメタデータの取得要求を送信し、かつ、前記送信手段が前記送信装置に対して終了指示を送信しない場合に前記送信装置によって送信されるメタデータであって、セグメントに対する取得要求を行うために用いられるアドレス情報を含み、前記受信装置へ送信するセグメントの終端を表す終端情報を含まないメタデータを前記送信装置から受信し、
    前記送信手段が前記送信装置に対してメタデータの取得要求と終了指示を送信した場合に前記送信装置によって送信されるメタデータであって、前記アドレス情報を含まず前記終端情報を含むメタデータを前記送信装置から受信する受信手段と
    を有することを特徴とする受信装置。
  11. 前記受信手段は、前記送信手段が前記送信装置に対して前記終了指示を含むメタデータの要求を送信した場合、前記送信装置から前記終端情報を含むメタデータを受信し、前記送信手段が前記送信装置に対して前記終了指示を含まないメタデータの要求を送信した場合、前記送信装置から前記終端情報を含まないメタデータを受信することを特徴とする請求項10に記載の受信装置。
  12. コンテンツを構成する複数のセグメントのうち1つ以上に対して受信装置が取得要求を行うために用いるアドレス情報を含むメタデータを前記受信装置に送信する送信方法であって、
    前記メタデータに記述されたアドレス情報に基づくセグメントの取得要求を前記受信装置から受信すると共に、前記受信装置がセグメントの取得を終了することを示す終了指示を前記受信装置から受信する受信ステップと、
    前記受信装置からメタデータの取得要求を受信し、かつ、前記受信装置から終了指示を受信しない場合、セグメントに対する取得要求を行うために用いられるアドレス情報を含み、前記受信装置へ送信するセグメントの終端を表す終端情報を含まないメタデータを前記受信装置に送信し、
    前記受信装置からメタデータの取得要求と終了指示を受信した場合、前記アドレス情報を含まず前記終端情報を含むメタデータを前記受信装置に送信する送信ステップとを有することを特徴とする送信方法。
  13. コンテンツを構成する複数のセグメントのうち1つ以上に対して受信装置が取得要求を行うために用いるアドレス情報を含むメタデータを前記受信装置に送信する送信方法であって、
    前記メタデータに記述されたアドレス情報に基づくセグメントの取得要求を前記受信装置から受信すると共に、前記受信装置がセグメントの取得を終了することを示す終了指示を前記受信装置から受信する受信ステップと、
    前記受信装置のモードを判定するモード判定ステップと、
    前記モード判定ステップにより第1モードであると判定された受信装置からメタデータの取得要求と終了指示とを受信した場合、セグメントに対する取得要求を行うために用いるアドレス情報と、前記受信装置へ送信するセグメントの終端を表す終端情報とを含むメタデータを前記受信装置に送信し、
    前記モード判定ステップにより第2モードであると判定された受信装置からメタデータの取得要求と終了指示とを受信した場合、セグメントに対する取得要求を行うために用いるアドレス情報を含まず、前記受信装置へ送信するセグメントの終端を表す終端情報を含むメタデータを前記受信装置に送信する送信ステップとを有することを特徴とする送信方法。
  14. コンテンツを構成する複数のセグメントのうち少なくとも1つに対する取得要求を行うためのアドレス情報を含むメタデータを送信装置から受信する受信装置が行う受信方法であって、
    前記メタデータの取得要求を前記送信装置へ送信すると共に、前記送信装置からのセグメントの取得を終了することを示す終了指示を前記送信装置に送信する送信ステップと、
    前記送信装置に対してメタデータの取得要求を送信し、かつ、前記送信装置に対して終了指示を送信しない場合に前記送信装置によって送信されるメタデータであって、セグメントに対する取得要求を行うために用いられるアドレス情報を含み、前記受信装置へ送信するセグメントの終端を表す終端情報を含まないメタデータを前記送信装置から受信し、前記送信装置に対してメタデータの取得要求と終了指示を送信した場合に前記送信装置によって送信されるメタデータであって、前記アドレス情報を含まず前記終端情報を含むメタデータを前記送信装置から受信する受信ステップとを有することを特徴とする受信方法。
  15. コンピュータを請求項1から9のうちいずれか一項に記載の送信装置の各手段として動作させるためのプログラム。
  16. コンピュータを請求項10から11のうちいずれか一項に記載の受信装置の各手段として動作させるためのプログラム。
  17. 請求項1から9のうちいずれか一項に記載の送信装置と、請求項10から11のうちいずれか一項に記載の受信装置とを有する通信システム。
JP2012250187A 2012-11-14 2012-11-14 送信装置、受信装置、送信方法、受信方法、及び、プログラム Active JP6161260B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012250187A JP6161260B2 (ja) 2012-11-14 2012-11-14 送信装置、受信装置、送信方法、受信方法、及び、プログラム
US14/077,765 US9680881B2 (en) 2012-11-14 2013-11-12 Transmission apparatus, receiving apparatus, transmission method, receiving method, and storage medium for transmitting and/or receiving metadata indicating address information for each of a plurality of segments corresponding to divided content

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012250187A JP6161260B2 (ja) 2012-11-14 2012-11-14 送信装置、受信装置、送信方法、受信方法、及び、プログラム

Publications (3)

Publication Number Publication Date
JP2014099745A JP2014099745A (ja) 2014-05-29
JP2014099745A5 JP2014099745A5 (ja) 2016-03-17
JP6161260B2 true JP6161260B2 (ja) 2017-07-12

Family

ID=50682805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012250187A Active JP6161260B2 (ja) 2012-11-14 2012-11-14 送信装置、受信装置、送信方法、受信方法、及び、プログラム

Country Status (2)

Country Link
US (1) US9680881B2 (ja)
JP (1) JP6161260B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19827454C2 (de) * 1997-06-19 2002-10-17 Nec Corp Logische CMOS-Schaltung und Treiberverfahren dafür

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6193569B2 (ja) * 2012-12-28 2017-09-06 キヤノン株式会社 受信装置、受信方法、及びプログラム、撮像装置、撮像方法、及びプログラム、送信装置、送信方法、及びプログラム
JP6503652B2 (ja) * 2014-07-09 2019-04-24 ティアック株式会社 録音装置
US11039181B1 (en) * 2016-05-09 2021-06-15 Google Llc Method and apparatus for secure video manifest/playlist generation and playback
US10595054B2 (en) 2016-05-10 2020-03-17 Google Llc Method and apparatus for a virtual online video channel
US10771824B1 (en) 2016-05-10 2020-09-08 Google Llc System for managing video playback using a server generated manifest/playlist
US10785508B2 (en) 2016-05-10 2020-09-22 Google Llc System for measuring video playback events using a server generated manifest/playlist
US11069378B1 (en) 2016-05-10 2021-07-20 Google Llc Method and apparatus for frame accurate high resolution video editing in cloud using live video streams
US11032588B2 (en) 2016-05-16 2021-06-08 Google Llc Method and apparatus for spatial enhanced adaptive bitrate live streaming for 360 degree video playback
JP6500132B1 (ja) * 2018-01-15 2019-04-10 ヤフー株式会社 情報処理装置、情報処理方法、及び情報処理プログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829781B1 (en) * 2000-05-24 2004-12-07 At&T Corp. Network-based service to provide on-demand video summaries of television programs
US20020170068A1 (en) * 2001-03-19 2002-11-14 Rafey Richter A. Virtual and condensed television programs
US8161339B2 (en) * 2006-08-11 2012-04-17 Sharp Kabushiki Kaisha Content playback apparatus, content playback method, and storage medium
US20080155627A1 (en) * 2006-12-04 2008-06-26 O'connor Daniel Systems and methods of searching for and presenting video and audio
CN102611701B (zh) * 2008-12-31 2015-07-15 苹果公司 通过非流化协议流化多媒体数据的方法
US8677005B2 (en) * 2009-11-04 2014-03-18 Futurewei Technologies, Inc. System and method for media content streaming
JP4987950B2 (ja) * 2009-12-09 2012-08-01 シャープ株式会社 複合機、プログラムおよび記録媒体
US8463849B2 (en) * 2010-03-09 2013-06-11 Samsung Electronics Co., Ltd Method and apparatus for providing broadcast content and system using the same
US9497290B2 (en) * 2010-06-14 2016-11-15 Blackberry Limited Media presentation description delta file for HTTP streaming
US9049494B2 (en) * 2011-01-31 2015-06-02 Cbs Interactive, Inc. Media playback control

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19827454C2 (de) * 1997-06-19 2002-10-17 Nec Corp Logische CMOS-Schaltung und Treiberverfahren dafür

Also Published As

Publication number Publication date
US20140136661A1 (en) 2014-05-15
US9680881B2 (en) 2017-06-13
JP2014099745A (ja) 2014-05-29

Similar Documents

Publication Publication Date Title
JP6161260B2 (ja) 送信装置、受信装置、送信方法、受信方法、及び、プログラム
JP6662784B2 (ja) 無線通信システムにおけるアプリケーションデータを表示するための方法及び装置
JP6465541B2 (ja) 通信装置、再生装置、及びその方法、並びにプログラム
JP6385429B2 (ja) ストリーム・メディア・データを再生する方法および装置
JP2007306570A (ja) 一時停止点を使用するデータリソースのアクセス
JP2017501598A5 (ja)
US10277652B2 (en) Transmission apparatus, transmission method, and program
JP2014011682A (ja) 映像処理装置及びその制御方法
JP6467395B2 (ja) 画像送信装置、画像受信装置、それらの制御方法および画像通信システム
CN107645490B (zh) 通信装置、控制方法及计算机可读存储介质
JP6873762B2 (ja) 通信装置、通信システム、通信方法、および、プログラム
JP4493443B2 (ja) ネットワークシステム、管理サーバ、及び端末装置
US10649723B2 (en) Communication device, control method, and storage medium
JP2010103656A (ja) コンテンツ送信装置、コンテンツ受信装置
JP6355319B2 (ja) 再生装置及びその制御方法、管理装置及びその制御方法、映像再生システム、並びにプログラム及び記憶媒体
JP2017168940A (ja) 再生制御プログラム、変換プログラム、再生制御装置、端末装置、動画再生システム、再生制御方法、及び変換方法
JP7154833B2 (ja) 通信装置、通信方法、およびプログラム
JP5333546B2 (ja) 携帯端末装置、動画投稿方法及びプログラム
US10862935B2 (en) Distribution device and information device
JP2018045674A (ja) 情報処理装置及びその制御方法、コンピュータプログラム
JP2012156808A (ja) 画像伝送システムおよび画像再生装置
US20140184823A1 (en) Transmission apparatus, reception apparatus, transmission method, reception method, and storage medium
JP7080624B2 (ja) 通信装置、制御方法、およびプログラム
JP2013239091A (ja) 通信端末、再生機器、通信システム、通信方法、およびアクセス制御方法
JP6288440B2 (ja) カラオケシステム及び携帯端末用プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160923

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170407

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170613

R151 Written notification of patent or utility model registration

Ref document number: 6161260

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151