JP2016123097A - Distribution server, distribution method, distribution program, and distribution system - Google Patents

Distribution server, distribution method, distribution program, and distribution system Download PDF

Info

Publication number
JP2016123097A
JP2016123097A JP2015249289A JP2015249289A JP2016123097A JP 2016123097 A JP2016123097 A JP 2016123097A JP 2015249289 A JP2015249289 A JP 2015249289A JP 2015249289 A JP2015249289 A JP 2015249289A JP 2016123097 A JP2016123097 A JP 2016123097A
Authority
JP
Japan
Prior art keywords
time
content
input
division
division content
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
Application number
JP2015249289A
Other languages
Japanese (ja)
Inventor
誠 五味
Makoto Gomi
誠 五味
朋博 宮崎
Tomohiro Miyazaki
朋博 宮崎
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Publication of JP2016123097A publication Critical patent/JP2016123097A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To reduce a delay time until a reproduction start after an input start of each time-division content.SOLUTION: A distribution server comprises: a storage device 22 for storing a time-division content (Segment 26) and a Play_List 27 in which a URL of the time-division content is described; an upload processing unit 23a for adding a URL of a time-division content to be input to the Play_List 27 in successively storing time-division contents in the storage device; and a download processing unit 24 that returns, in the case of having received a transmission request for the Play_List 27 from a video viewing terminal 30, the Play_List 27 on which the addition is performed to the video viewing terminal 30, holds, in the case of having received a distribution request for a time-division content of the added URL before starting storage of the time-division content for the received distribution request, distribution of the time-division content, and distributes, after determining the start of the storage of the time-division content of the added URL, the stored time-division content to the video viewing terminal 30 in response to the distribution request.SELECTED DRAWING: Figure 2

Description

本発明は、配信サーバ、配信方法、配信プログラム、及び配信システムに関し、例えば、ネットワーク経由で、映像データや音声データ等のライブメディアコンテンツを端末に逐次配信する技術に関する。   The present invention relates to a distribution server, a distribution method, a distribution program, and a distribution system. For example, the present invention relates to a technique for sequentially distributing live media content such as video data and audio data to a terminal via a network.

例えば、金融機関や交通機関は、早くから監視カメラを用いた映像監視システムを、犯罪抑止や犯罪実証のために利用している。通常、監視カメラによって撮影されたライブ映像は、通信ネットワークを使って管理サーバに送信され、端末で逐次視聴するようにされている。   For example, financial institutions and transportation agencies have been using video surveillance systems using surveillance cameras for crime prevention and crime demonstration from an early stage. Normally, live video captured by a surveillance camera is transmitted to a management server using a communication network and is sequentially viewed on a terminal.

非特許文献1は、ビデオカメラで撮影中のライブ映像(コンテンツ)をインターネット接続でサーバからクライアント(受信端末)に配信する方法の一つを開示している。この方法は、カメラ等で撮影してエンコードしたライブ映像データについて、短時間毎に分割されたデータファイルを、クライアントがサーバからファイルを順番にダウンロードしてライブ映像を再生するものである。また、クライアントは、サーバが生成したインデックスファイルを受信し、インデックスファイル(Play_List)に順番に記述されたURL(Uniform_Resource_Locator)に逐次アクセスする。
また、特許文献1は、各Segmentを、さらにSub_Segmentに分け、最も新しいSub_Segmentから再生することにより、遅延を低減する技術を開示している。
Non-Patent Document 1 discloses one method for distributing live video (content) being shot by a video camera from a server to a client (receiving terminal) via an Internet connection. In this method, for live video data shot and encoded by a camera or the like, a client sequentially downloads data files divided from the server in a short time and reproduces the live video. Further, the client receives the index file generated by the server, and sequentially accesses URLs (Uniform_Resource_Locator) sequentially described in the index file (Play_List).
Patent Document 1 discloses a technique for reducing delay by further dividing each Segment into Sub_Segments and reproducing from the latest Sub_Segment.

特開2013-38766号公報JP 2013-38766

「HTTPライブストリーミングの概要」第10頁、インターネット<URL:https://developer.apple.com/jp/devcenter/ios/library/documentation/StreamingMediaGuide.pdf>“Overview of HTTP Live Streaming”, page 10, Internet <URL: https://developer.apple.com/jp/devcenter/ios/library/documentation/StreamingMediaGuide.pdf>

非特許文献1の方法は、クライアント(受信端末)が複数の短い映像コンテンツ(以下、Segmentという)を連続して再生することにより、一つのコンテンツを再生するものであり、各Segmentファイルを生成し、ダウンロード、再生という手順を踏んでいる。このため、非特許文献1の方法は、ライブ遅延が大きくなるという問題があり、遅延を低減するための工夫が考えられている。例えば、バッファリング時間を最小限にしたり、一つのSegmentが完成する前(0秒目のデータ生成が始まった時点)から、アップロードを始めたり、アップロードされるSegmentのサーバでの受信が始まり次第、端末からダウンロード可能としたりしている。このような工夫を行った配信サーバでも、以下の問題点が発生し得る。   In the method of Non-Patent Document 1, a client (receiving terminal) reproduces a single content by continuously reproducing a plurality of short video contents (hereinafter referred to as Segments), and generates each Segment file. , Download and playback. For this reason, the method of Non-Patent Document 1 has a problem that the live delay becomes large, and a device for reducing the delay is considered. For example, you can minimize the buffering time, start uploading before a segment is completed (at the start of data generation at the 0 second), or as soon as the uploaded segment starts to be received at the server. It can be downloaded from the terminal. The following problems may occur even in a distribution server that has been devised in this way.

図13は、比較例のコンテンツ配信システムのシーケンス図である。比較例の詳細は、後記するが、ここでは概要を説明する。比較例のコンテンツ配信システムは、映像送信端末10がライブ映像等のコンテンツを逐次分割し、分割された時分割コンテンツ(Segment)を配信サーバ20dに逐次、アップロードし、配信サーバ20dがアップロードされたSegmentを記憶装置に逐次格納し、格納場所を示すURLをPlay_Listに追記するように構成されている。また、比較例のコンテンツ配信システムは、配信サーバ20dが、映像視聴端末30からPlay_Listの送信要求を受信したときに、追記されたPlay_Listを映像視聴端末30に送信し、映像視聴端末30からSegmentの配信要求を受信したときに、指定されたURLのSegmentを映像視聴端末30に配信するように構成されている。   FIG. 13 is a sequence diagram of the content distribution system of the comparative example. Details of the comparative example will be described later, but an outline will be described here. In the content distribution system of the comparative example, the video transmission terminal 10 sequentially divides content such as live video, sequentially uploads the divided time-division content (Segment) to the distribution server 20d, and the segment in which the distribution server 20d is uploaded. Are sequentially stored in the storage device, and a URL indicating the storage location is added to the Play_List. Further, in the content distribution system of the comparative example, when the distribution server 20d receives a Play_List transmission request from the video viewing terminal 30, the added Play_List is transmitted to the video viewing terminal 30, and the Segment of the Segment is transmitted from the video viewing terminal 30. When a distribution request is received, a segment of a designated URL is distributed to the video viewing terminal 30.

例えばライブ映像の配信の場合、映像視聴端末30は、Play_Listに記述された最新のURLのSegmentを配信サーバ20dに配信要求し、該最新のURLのSegmentの受信が完了したら、再び、Play_Listの送信要求を行い、次のSegmentのURLが追記されたPlay_Listを受信するように構成されている。
また、図14は、配信サーバ20dがN番目のSegment(以下、Segment[N]とする)をアップロード(入力)し終え、Segment[N+1]のアップロードの途中、6秒目まで進んでいる配信状態を示している(ここで、各Segmentの時間幅は10秒とする)。
For example, in the case of live video distribution, the video viewing terminal 30 requests the distribution server 20d to distribute the segment of the latest URL described in the Play_List, and when reception of the segment of the latest URL is completed, the video viewing terminal 30 transmits the Play_List again. It is configured to make a request and receive Play_List in which the URL of the next Segment is added.
Further, in FIG. 14, the distribution server 20d finishes uploading (inputting) the Nth segment (hereinafter referred to as “Segment [N]”), and progresses to the 6th second in the middle of uploading the Segment [N + 1]. The delivery state is shown (here, the duration of each Segment is 10 seconds).

この6秒目まで進んでいる時、映像視聴端末30は、Play_Listを取得すると、Segment[N+1]までのURLを取得することができる。このため、映像視聴端末30は、ライブ映像を低遅延再生する場合は、直近のURLであるSegment[N+1]を選択して、ダウンロードを開始することになる。しかしながら、映像視聴端末30は、ネットワーク速度が十分にあれば、アップロード位置である6秒目までを短時間で取得(入力、ダウンロード)できるものの、映像視聴端末30は、Videoデータの再生を各Segment(各時分割セグメント)の先頭から始める必要がある。そのため、映像視聴端末30において、Segment[N+2]のアップロード開始の時刻から、再生開始までに時間差が発生し、再生遅延の時間は6秒となる(図13参照)。また、Segment[N+3]以降も同様に再生遅延が発生し、再生遅延の時間は6秒である。   When proceeding to the sixth second, the video viewing terminal 30 can acquire the URL up to Segment [N + 1] upon acquiring Play_List. For this reason, the video viewing terminal 30 selects Segment [N + 1], which is the latest URL, and starts downloading when reproducing live video with low delay. However, although the video viewing terminal 30 can acquire (input and download) the upload position up to the sixth second in a short time if the network speed is sufficient, the video viewing terminal 30 plays back the video data in each segment. It is necessary to start from the beginning of each time division segment. Therefore, in the video viewing terminal 30, a time difference occurs from the upload start time of Segment [N + 2] to the start of playback, and the playback delay time is 6 seconds (see FIG. 13). Similarly, a playback delay occurs after Segment [N + 3], and the playback delay time is 6 seconds.

ここで、Videoデータの再生速度は自由が効かないことに注意する必要がある。つまり、10秒のVideoデータは10秒かけて再生される必要があり、次回以降のSegment[N+2],・・・の再生開始も、Segment[N+1]の再生終了時点から連続的に再生されるので、6秒の再生遅延が発生する。ここで、再生遅延は、Segment[N+1]の6秒目から再生を始められれば無くなるが、映像視聴端末30は、Videoデータをキーフレームからしか再生することができず、キーフレームである0秒目から再生を開始せざるを得ない。そのため、再生遅延は発生する。   Here, it should be noted that the video data playback speed is not free. That is, the 10-second video data needs to be played back over 10 seconds, and the next playback of Segment [N + 2],... Is continued from the end of playback of Segment [N + 1]. Therefore, a reproduction delay of 6 seconds occurs. Here, the reproduction delay disappears if reproduction can be started from the sixth second of Segment [N + 1], but the video viewing terminal 30 can reproduce the video data only from the key frame and is a key frame. Playback must be started from the 0th second. Therefore, a reproduction delay occurs.

なお、映像視聴端末30は、何らかの方法で遅延を検出して、遅延している分を早送りすれば、遅延を回復することは可能である。しかし、映像視聴端末30は、遅延を回復するための特別な機能を必要とする。また、特許文献1の方法を採用する場合でも、映像視聴端末30は、0秒目から6秒目までの間に存在する最も新しいSub_Segmentのキーフレームから再生を開始せざるを得ない。ある程度の再生遅延は低減されるものの、最も新しいSub_Segmentのキーフレーム位置に対応する時間と6秒目の差分の再生遅延は発生する。特許文献1の方法を採用した映像視聴端末30は、この再生遅延の発生メカニズムを回避することができていない。   Note that the video viewing terminal 30 can recover the delay by detecting the delay by some method and fast-forwarding the delay. However, the video viewing terminal 30 requires a special function for recovering the delay. Even when the method of Patent Document 1 is adopted, the video viewing terminal 30 is forced to start playback from the newest Sub_Segment key frame that exists between the 0th and 6th seconds. Although a certain amount of reproduction delay is reduced, a reproduction delay corresponding to the most recent Sub_Segment key frame position and a difference at the sixth second occurs. The video viewing terminal 30 adopting the method of Patent Document 1 cannot avoid this reproduction delay occurrence mechanism.

そこで、本発明は、各時分割コンテンツの入力開始から再生開始までの遅延時間を低減することができる配信サーバ、配信方法、配信プログラム、及び配信システムを提供することを目的とする。   Therefore, an object of the present invention is to provide a distribution server, a distribution method, a distribution program, and a distribution system that can reduce the delay time from the start of input of each time-division content to the start of reproduction.

前記課題を解決するため、第1の本発明は、コンテンツが時分割された時分割コンテンツ(例えば、Segment)を入力(受信を含む)し、入力された時分割コンテンツを再生する再生端末(例えば、映像視聴端末30)に出力する配信サーバ(20)であって、前記時分割コンテンツのロケーション識別情報(例えば、URL)が記載されたファイル(例えば、プレイリスト,MPDファイル)と前記時分割コンテンツとを格納する記憶装置(22)と、前記入力された時分割コンテンツについて前記記憶装置に格納することを開始すると、当該時分割コンテンツの次に入力予定の時分割コンテンツに対応するロケーション識別情報を前記ファイルに追記する入力処理部(例えば、アップロード処理部23a、入力処理部23b)と、コンテンツの配信要求を受信したときに、前記入力処理部で当該ロケーション識別情報に対応する時分割コンテンツの格納が開始前であるならば、当該時分割コンテンツの配信を保留し、前記入力処理部で当該ロケーション識別情報に対応する時分割コンテンツの格納が開始させているならば、当該時分割コンテンツについて前記再生端末に出力することを開始する出力処理部(ダウンロード処理部24)とを備えることを特徴とする。なお、( )内の記載は例示であり、( )内の記載に限定されるものではない。   In order to solve the above-described problem, the first aspect of the present invention inputs a time-division content (for example, Segment) in which the content is time-divisioned (including reception), and reproduces the input time-division content (for example, a reception terminal) A distribution server (20) for outputting to the video viewing terminal 30), a file (for example, playlist, MPD file) in which location identification information (for example, URL) of the time-division content is described and the time-division content When the storage of the input time-division content is started to be stored in the storage device, location identification information corresponding to the time-division content scheduled to be input next to the time-division content is obtained. An input processing unit (for example, an upload processing unit 23a, an input processing unit 23b) to be added to the file, and a content distribution necessity If the storage of the time-division content corresponding to the location identification information is not yet started in the input processing unit when the request is received, the distribution of the time-division content is suspended and the location identification is performed by the input processing unit. If storage of time-division content corresponding to information is started, an output processing unit (download processing unit 24) that starts outputting the time-division content to the playback terminal is provided. In addition, the description in () is an example, and is not limited to the description in ().

この配信サーバは、端末から入力予定の時分割コンテンツの配信要求を受信した場合、配信を保留し、該入力予定の時分割コンテンツが格納開始されてから端末に配信を行うので、配信要求から再生開始タイミングまでの遅延が発生しない。   When this distribution server receives a distribution request for time-division content scheduled to be input from the terminal, the distribution server holds the distribution and distributes to the terminal after the time-division content scheduled to be input is started. There is no delay until the start timing.

第2の本発明は、コンテンツが時分割された時分割コンテンツを逐次入力し、入力された時分割コンテンツを再生する再生端末に逐次配信する配信サーバであって、前記入力された時分割コンテンツと該入力された時分割コンテンツのロケーション識別情報が記載されたインデックスファイルとを格納する記憶装置と、前記再生端末からインデックスファイルの送信要求を受信すると、入力予定の時分割コンテンツに対応するロケーション識別情報を前記インデックスファイルに追記して、追記されたインデックスファイルを前記再生端末に送信するインデックスファイル処理部と、ロケーション識別情報に対応する時分割コンテンツの配信要求を受信して、当該ロケーション識別情報に対応する時分割コンテンツの格納開始前は、当該時分割コンテンツの配信を保留し、当該ロケーション識別情報に対応する時分割コンテンツの格納開始を確認してから、前記配信要求に応答して、当該時分割コンテンツを前記再生端末に配信する配信処理部とを備えることを特徴とする配信サーバである。   A second aspect of the present invention is a distribution server that sequentially inputs time-division content obtained by time-division of content and sequentially distributes the input time-division content to a playback terminal that reproduces the input time-division content, A storage device that stores an index file in which the location identification information of the input time-division content is written, and location identification information corresponding to the time-division content scheduled to be input upon receiving an index file transmission request from the playback terminal Is added to the index file, the index file processing unit that transmits the added index file to the playback terminal, and the time division content distribution request corresponding to the location identification information is received, and the location identification information is supported. Before starting to store time-sharing content. A distribution processing unit that suspends content distribution and confirms the start of storage of the time-division content corresponding to the location identification information, and then distributes the time-division content to the playback terminal in response to the distribution request; It is a distribution server characterized by comprising.

第3の本発明は、コンテンツが時分割された時分割コンテンツを入力し、入力された時分割コンテンツを再生する再生端末に出力し、前記時分割コンテンツのロケーション識別情報が記載されたファイルと前記時分割コンテンツとを格納する記憶装置を備える配信サーバのコンピュータに実行させる配信プログラムであって、前記入力された時分割コンテンツについて前記記憶装置に格納することを開始すると、当該時分割コンテンツの次に入力予定の時分割コンテンツに対応するロケーション識別情報を前記ファイルに追記する入力処理過程と、コンテンツの配信要求を受信したときに、前記入力処理部で当該ロケーション識別情報に対応する時分割コンテンツの格納が開始前であるならば、当該時分割コンテンツの出力を保留し、前記入力処理部で当該ロケーション識別情報に対応する時分割コンテンツの格納が開始されたならば、当該時分割コンテンツについて前記再生端末に出力することを開始する出力処理過程とを実行させることを特徴とする配信プログラムである。   The third aspect of the present invention inputs time-division content obtained by time-division of content, outputs the input time-division content to a playback terminal that reproduces the input time-division content, and a file in which location identification information of the time-division content is described A distribution program that is executed by a computer of a distribution server that includes a storage device that stores time-division content, and starts storing the input time-division content in the storage device. An input process in which location identification information corresponding to time-division content scheduled to be input is added to the file, and storage of time-division content corresponding to the location identification information in the input processing unit when a content distribution request is received If it is before the start, the output of the time-division content is suspended and the input A distribution characterized in that, when storage of time-division content corresponding to the location identification information is started in the processing unit, an output processing step is started to start outputting the time-division content to the playback terminal. It is a program.

第4の本発明は、コンテンツが時分割された時分割コンテンツを入力し、受信された時分割コンテンツを記憶装置に格納し、該格納された時分割コンテンツを再生する再生端末に出力する配信システムであって、入力予定の時分割コンテンツに対応するロケーション識別情報をファイルに追記して、追記されたロケーション識別情報に対応する前記時分割コンテンツを格納する第1サーバと、前記追記されたロケーション識別情報に対応する時分割コンテンツの配信要求を受信して、前記時分割コンテンツの格納が開始されたならば、当該時分割コンテンツについて前記再生端末に出力することを開始する第2サーバと、を備えることを特徴とする配信システムである。   According to a fourth aspect of the present invention, there is provided a distribution system for inputting time-division content in which content is time-divisionally stored, storing the received time-division content in a storage device, and outputting the stored time-division content to a playback terminal. The location identification information corresponding to the time-division content scheduled to be input is added to the file, the first server storing the time-division content corresponding to the added location identification information, and the additional location identification A second server that receives a time-division content distribution request corresponding to information and starts outputting the time-division content to the playback terminal when storage of the time-division content is started. This is a distribution system characterized by this.

第5の本発明は、コンテンツが時分割された時分割コンテンツを入力し、受信された時分割コンテンツを記憶装置に格納し、該格納された時分割コンテンツを再生する再生端末に出力する配信システムの配信方法であって、入力予定の時分割コンテンツに対応するロケーション識別情報をファイルに追記して、追記されたロケーション識別情報に対応する前記時分割コンテンツを格納する第1処理ステップと、前記追記されたロケーション識別情報に対応する時分割コンテンツの配信要求を受信して、前記時分割コンテンツの格納が開始されたならば、当該時分割コンテンツについて前記再生端末に出力することを開始する第2処理ステップと、を備えることを特徴とする配信方法である。   According to a fifth aspect of the present invention, there is provided a distribution system for inputting time-division content in which content is time-divisionally stored, storing the received time-division content in a storage device, and outputting the stored time-division content to a playback terminal. A first processing step of adding location identification information corresponding to time-division content scheduled to be input to a file and storing the time-division content corresponding to the added location identification information; When the time-sharing content distribution request corresponding to the location identification information received is received and the storage of the time-sharing content is started, the second process of starting to output the time-sharing content to the playback terminal A distribution method comprising: a step.

第6の本発明は、コンテンツが時分割された時分割コンテンツを入力し、受信された時分割コンテンツを記憶装置に格納し、該格納された時分割コンテンツを再生する再生端末に出力するコンピュータに実行させる配信プログラムであって、前記コンピュータを、入力予定の時分割コンテンツに対応するロケーション識別情報をファイルに追記して、追記されたロケーション識別情報に対応する前記時分割コンテンツを格納する第1処理手段、前記追記されたロケーション識別情報に対応する時分割コンテンツの配信要求を受信して、前記時分割コンテンツの格納が開始されたならば、当該時分割コンテンツについて前記再生端末に出力することを開始する第2処理手段、として機能させるための配信プログラムである。   According to a sixth aspect of the present invention, there is provided a computer that inputs time-division content obtained by time-division of content, stores the received time-division content in a storage device, and outputs the stored time-division content to a playback terminal that reproduces the time-division content. A distribution program to be executed, wherein the computer adds location identification information corresponding to time-division content to be input to a file and stores the time-division content corresponding to the added location identification information Means for receiving a time-sharing content distribution request corresponding to the added location identification information and, when storage of the time-sharing content is started, starts outputting the time-sharing content to the playback terminal It is a delivery program for functioning as the 2nd processing means to do.

第7の発明は、コンテンツが時分割された時分割コンテンツを入力し、入力された時分割コンテンツを再生する再生端末に出力する配信サーバであって、前記時分割コンテンツとロケーション識別情報とを対比して記載したリストと前記時分割コンテンツとを格納する記憶装置と、前記入力された時分割コンテンツについて前記記憶装置に格納することを開始すると、当該時分割コンテンツの次に入力予定の時分割コンテンツに対応するロケーション識別情報を前記リストに追記する入力処理部と、前記コンテンツの配信要求を受信したときは、前記入力処理部が入力する時分割コンテンツの出力を保留し、前記配信要求受信後、前記入力処理部で次の時分割コンテンツの入力が開始したならば、当該時分割コンテンツについて前記再生端末に出力することを開始する出力処理部とを備えることを特徴とする。   A seventh invention is a distribution server for inputting time-division content obtained by time-division of content and outputting the input time-division content to a playback terminal, which compares the time-division content and location identification information. When the storage device that stores the list and the time-division content described above and starting to store the input time-division content in the storage device, the time-division content scheduled to be input next to the time-division content An input processing unit that adds location identification information corresponding to the list, and when receiving the content distribution request, the output of the time-division content input by the input processing unit is suspended, and after receiving the distribution request, If input of the next time-division content starts in the input processing unit, the playback terminal for the time-division content And an outputting processing section which starts to output.

第8の発明は、KeyFrameを有するコンテンツを入力し、該入力されたコンテンツを再生する再生端末に出力する配信サーバであって、前記KeyFrameの位置情報が記載されたリストと前記コンテンツとを格納する記憶装置と、前記入力されたKeyFrameコンテンツについて前記記憶装置に格納することを開始すると、当該コンテンツのKeyFrameの位置情報を前記リストに追記する入力処理部と、前記コンテンツの配信要求を受信したときは、前記入力処理部が入力するコンテンツの出力を保留し、前記配信要求受信後、前記入力処理部で次のKeyFrameの入力が開始したならば、当該KeyFrameからのコンテンツについて前記再生端末に出力することを開始する出力処理部とを備えることを特徴とする。   An eighth invention is a distribution server that inputs content having a KeyFrame and outputs the content to a playback terminal that plays back the input content, and stores the list in which the position information of the KeyFrame is described and the content When storage of the input KeyFrame content starts to be stored in the storage device, an input processing unit for adding the KeyFrame position information of the content to the list, and when the content distribution request is received Suspend the output of the content input by the input processing unit, and output the content from the KeyFrame to the playback terminal if the input processing unit starts to input the next KeyFrame after receiving the distribution request. And an output processing unit for starting the process.

本発明によれば、各時分割コンテンツの入力開始から再生開始までの遅延時間を低減することができる。   According to the present invention, the delay time from the start of input of each time-division content to the start of reproduction can be reduced.

本発明の第1実施形態であるコンテンツ配信システムの全体構成図である。1 is an overall configuration diagram of a content distribution system according to a first embodiment of the present invention. 本発明の第1実施形態である映像送信端末、配信サーバ、及び映像視聴端末の機能ブロック図である。It is a functional block diagram of the video transmission terminal which is 1st Embodiment of this invention, a delivery server, and a video viewing terminal. プレイリストの一例を示す図である。It is a figure which shows an example of a play list. 配信サーバの機能であるアップロード処理部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the upload process part which is a function of a delivery server. (a)は配信サーバの機能であるダウンロード処理部の動作を示すフローチャートであり、(b)は映像視聴端末の主制御部の動作を示すフローチャートである。(A) is a flowchart which shows operation | movement of the download process part which is a function of a delivery server, (b) is a flowchart which shows operation | movement of the main control part of a video viewing terminal. 配信サーバの機能であるエラー処理部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the error process part which is a function of a delivery server. 本発明の第1実施形態であるコンテンツ配信システムのシーケンス図である。It is a sequence diagram of the content delivery system which is 1st Embodiment of this invention. 本発明の第1実施形態である配信サーバによるセグメントの配信状態を示す図である。It is a figure which shows the delivery state of the segment by the delivery server which is 1st Embodiment of this invention. 本発明の第2実施形態である配信サーバ、及び映像視聴端末の内部構成図である。It is an internal block diagram of the delivery server which is 2nd Embodiment of this invention, and a video viewing terminal. 本発明の第3実施形態である映像送信端末、配信サーバ、及び映像視聴端末の内部構成図である。It is an internal block diagram of the video transmission terminal which is 3rd Embodiment of this invention, a delivery server, and a video viewing terminal. 本発明の第4,5実施形態である映像送信端末、配信サーバ、及び映像視聴端末の内部構成図である。It is an internal block diagram of the video transmission terminal which is 4th, 5th embodiment of this invention, a delivery server, and a video viewing terminal. 本発明の第4実施形態である配信サーバの機能であるアップロード処理部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the upload process part which is a function of the delivery server which is 4th Embodiment of this invention. (a)は本発明の第4実施形態である配信サーバの機能であるダウンロード処理部の動作を示すフローチャートであり、(b)は映像視聴端末の主制御部の動作を示すフローチャートである。(A) is a flowchart which shows operation | movement of the download process part which is a function of the delivery server which is 4th Embodiment of this invention, (b) is a flowchart which shows operation | movement of the main control part of a video viewing terminal. 本発明の第4実施形態であるコンテンツ配信システムのシーケンス図である。It is a sequence diagram of the content delivery system which is 4th Embodiment of this invention. (a)は本発明の第5実施形態である配信サーバの機能であるダウンロード処理部の動作を示すフローチャートであり、(b)は映像視聴端末の主制御部の動作を示すフローチャートである。(A) is a flowchart which shows operation | movement of the download process part which is a function of the delivery server which is 5th Embodiment of this invention, (b) is a flowchart which shows operation | movement of the main control part of a video viewing terminal. 本発明の第5実施形態であるコンテンツ配信システムのシーケンス図である。It is a sequence diagram of the content delivery system which is 5th Embodiment of this invention. 本発明の第6実施形態である映像送信端末、配信サーバ、及び映像視聴端末の内部構成図である。It is an internal block diagram of the video transmission terminal which is 6th Embodiment of this invention, a delivery server, and a video viewing terminal. 本発明の第6実施形態である配信サーバの機能であるアップロード処理部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the upload process part which is a function of the delivery server which is 6th Embodiment of this invention. (a)は本発明の第6実施形態である配信サーバの機能であるダウンロード処理部の動作を示すフローチャートであり、(b)は映像視聴端末の主制御部の動作を示すフローチャートである。(A) is a flowchart which shows operation | movement of the download process part which is a function of the delivery server which is 6th Embodiment of this invention, (b) is a flowchart which shows operation | movement of the main control part of a video viewing terminal. 本発明の第6実施形態であるコンテンツ配信システムのシーケンス図である。It is a sequence diagram of the content delivery system which is 6th Embodiment of this invention. 本発明の第7実施形態である映像送信端末、配信サーバ、及び映像視聴端末の内部構成図である。It is an internal block diagram of the video transmission terminal which is 7th Embodiment of this invention, a delivery server, and a video viewing terminal. 本発明の第7実施形態の他の利用形態である映像送信端末、配信サーバ、及び映像視聴端末の内部構成図である。It is an internal block diagram of the video transmission terminal which is the other usage form of 7th Embodiment of this invention, a delivery server, and a video viewing terminal. 比較例のアップロード処理部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the upload process part of a comparative example. 比較例のダウンロード処理部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the download process part of a comparative example. 比較例のコンテンツ配信システムのシーケンス図である。It is a sequence diagram of the content delivery system of a comparative example. 比較例の配信サーバによるセグメントの配信状態を示す図である。It is a figure which shows the delivery state of the segment by the delivery server of a comparative example.

以下、図面を参照して、本発明の実施の形態(以下、「本実施形態」と称する)につき詳細に説明する。なお、各図は、本発明を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。また、各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。   Hereinafter, an embodiment of the present invention (hereinafter referred to as “the present embodiment”) will be described in detail with reference to the drawings. Each figure is only schematically shown so that the present invention can be fully understood. Therefore, the present invention is not limited to the illustrated example. Moreover, in each figure, the same code | symbol is attached | subjected about the common component and the same component, and those overlapping description is abbreviate | omitted.

(第1実施形態)
(構成の説明)
≪コンテンツ配信システム1≫
図1は、本発明の第1実施形態であるコンテンツ配信システムの全体構成図である。
コンテンツ配信システム1は、映像送信端末10と、コンテンツ配信装置としての配信サーバ20(20a)と、複数の再生端末としての映像視聴端末30(30a,30b,30c,30d,・・・)とを備える。配信サーバ20は、ネットワークNW1を介して映像視聴端末30のそれぞれと通信可能に接続され、ネットワークNW2を介して映像送信端末10と接続されている。
(First embodiment)
(Description of configuration)
Content distribution system 1≫
FIG. 1 is an overall configuration diagram of a content distribution system according to a first embodiment of the present invention.
The content distribution system 1 includes a video transmission terminal 10, a distribution server 20 (20a) as a content distribution device, and video viewing terminals 30 (30a, 30b, 30c, 30d,...) As a plurality of playback terminals. Prepare. The distribution server 20 is communicably connected to each of the video viewing terminals 30 via the network NW1, and is connected to the video transmission terminal 10 via the network NW2.

コンテンツ配信システム1は、ライブ映像(コンテンツ)をストリーミング配信するためのプロトコルであるHLS(HTTP_Live_Streaming)を前提としている。そのため、コンテンツ配信システム1は、ライブ映像を短い時間で分割したセグメント(Segment)として取り扱う。なお、詳細は後記するが、コンテンツ配信システム1は、後記する比較例の配信方法と比較して「Play_List」を更新するタイミングや「Segment」の配信を開始するタイミングなどに特徴がある。   The content distribution system 1 is based on HLS (HTTP_Live_Streaming), which is a protocol for streaming distribution of live video (content). Therefore, the content distribution system 1 handles the live video as a segment (Segment) divided in a short time. Although details will be described later, the content distribution system 1 is characterized by the timing of updating “Play_List” and the timing of starting the distribution of “Segment” as compared with the distribution method of the comparative example described later.

(映像送信端末10)
映像送信端末10は、ビデオカメラ11を外部に接続し、接続されたビデオカメラ11で逐次撮像されたライブ映像やライブ音声を含むライブコンテンツを、ネットワークNW2を介して配信サーバ20aに送信(アップロード)する端末装置である。ここで、ビデオカメラ11は、リアルタイムに映像データや音声データを生成するVideo_Sourceである。
(Video transmission terminal 10)
The video transmission terminal 10 connects the video camera 11 to the outside, and transmits (uploads) live content including live video and live audio sequentially captured by the connected video camera 11 to the distribution server 20a via the network NW2. Is a terminal device. Here, the video camera 11 is a Video_Source that generates video data and audio data in real time.

(映像視聴端末30)
映像視聴端末30は、通信機能を備えたコンピュータであり、ファイル化(Segment化)されたライブコンテンツ(映像データや音声データ)を再生して、映像を表示パネル37(図2参照)に表示させ、音声を発音させる再生端末である。映像視聴端末30は、例えば、スマートフォン(smartphone)等の携帯通信端末や、タブレット型コンピュータ等の携帯情報端末等の無線で通信を行うコンピュータである。また、据え置き型のデスクトップパソコン(desktop_personal_computer)等の有線で通信を行うコンピュータであってもよい。複数の映像視聴端末30a,30b,30c,30d,・・・は、ブラウザを介して同一のコンテンツをほぼ同時に視聴することができる。
(Video viewing terminal 30)
The video viewing terminal 30 is a computer having a communication function, reproduces live files (video data and audio data) that have been filed (segmented), and displays the video on the display panel 37 (see FIG. 2). This is a playback terminal for generating sound. The video viewing terminal 30 is a computer that performs wireless communication such as a mobile communication terminal such as a smartphone or a mobile information terminal such as a tablet computer. Further, it may be a computer that performs wired communication such as a stationary desktop personal computer (desktop_personal_computer). A plurality of video viewing terminals 30a, 30b, 30c, 30d,... Can view the same content almost simultaneously via a browser.

(配信サーバ20a)
配信サーバ20aは、ネットワークNW2を介して接続された映像視聴端末10からSegment化された映像データがアップロードされるのを受信する。また、配信サーバ20aは、ネットワークNW1を介して接続された映像視聴端末30からアップロードされた映像データの配信要求を受け、対応する映像データを映像視聴端末30に配信する。配信サーバ20aの詳細な構成については後記する。
(Distribution server 20a)
The distribution server 20a receives the upload of segmented video data from the video viewing terminal 10 connected via the network NW2. In addition, the distribution server 20a receives a distribution request for video data uploaded from the video viewing terminal 30 connected via the network NW1, and distributes the corresponding video data to the video viewing terminal 30. The detailed configuration of the distribution server 20a will be described later.

(ネットワークNW1,NW2)
ネットワークNW1は、映像視聴端末30のそれぞれと配信サーバ20aとを接続し、ネットワークNW2は、映像送信端末10と配信サーバ20aとを接続するコンピュータネットワークである。ネットワークNW1,NW2は、例えば、有線/無線LAN(Local_Area_Network)やWAN(Wide_Area_Network)等を介して、インターネットプロトコル(Internet_Protocol)技術を利用して相互接続する。
(Network NW1, NW2)
The network NW1 connects each of the video viewing terminals 30 and the distribution server 20a, and the network NW2 is a computer network that connects the video transmission terminal 10 and the distribution server 20a. The networks NW1 and NW2 are interconnected using an Internet protocol (Internet_Protocol) technology via a wired / wireless LAN (Local_Area_Network), a WAN (Wide_Area_Network), or the like.

図2は、映像送信端末、コンテンツ配信装置、及び映像視聴端末の機能ブロック図である。以下、映像送信端末10、コンテンツ配信装置20a、及び映像視聴端末30の順に、内部構成を説明する。
(映像送信端末10の内部構成)
映像送信端末10は、ビデオカメラ11を外部に接続し、Video_Encoder12と、TS_Muxer13と、Segmenter14と、HTTP_Client15との機能を実現する。映像送信端末10は、非特許文献1におけるサーバコンポーネントの役割を果たすものである。
FIG. 2 is a functional block diagram of the video transmission terminal, the content distribution device, and the video viewing terminal. Hereinafter, the internal configuration will be described in the order of the video transmission terminal 10, the content distribution device 20 a, and the video viewing terminal 30.
(Internal configuration of video transmission terminal 10)
The video transmission terminal 10 connects the video camera 11 to the outside, and realizes the functions of Video_Encoder 12, TS_Muxer 13, Segmenter 14, and HTTP_Client 15. The video transmission terminal 10 serves as a server component in Non-Patent Document 1.

Video_Encoder12は、ビデオカメラ11で撮像したライブコンテンツをVideo_Stream (例えば、H.264)にエンコードする。TS_Muxer13は、このVideo_StreamをMPEG2_Transport_Stream(以下、TSという。)に結合(Mux)する。この TS_Muxer13では、Video_Streamの他、Audio_Streamやその他のデータを結合して一つのTSにするのが一般的である。Segmenter14は、TSを適切な短い時間(本実施形態では、例えば10秒)に区切って複数のファイルを生成する。Segmenter14が生成する各々のファイルを、Segmentと呼ぶ。Segmentは、先頭がキーフレームから始まり、それ単独でも再生が可能な、短い時間幅のTSファイルである。HTTP_Client15は、Segmenter14が生成したファイルを、逐次、HTTP_PUTリクエストにより配信サーバ20aにアップロードする。   The Video_Encoder 12 encodes live content captured by the video camera 11 into Video_Stream (for example, H.264). The TS_Muxer 13 combines (Mux) this Video_Stream with the MPEG2_Transport_Stream (hereinafter referred to as TS). In this TS_Muxer 13, it is general to combine Audio_Stream and other data in addition to Video_Stream into one TS. The Segmenter 14 generates a plurality of files by dividing the TS into an appropriate short time (in this embodiment, for example, 10 seconds). Each file generated by the Segmenter 14 is called a Segment. A Segment is a TS file with a short time width that starts from a key frame and can be played back alone. The HTTP_Client 15 sequentially uploads the file generated by the Segmenter 14 to the distribution server 20a by an HTTP_PUT request.

(配信サーバ20aの内部構成)
配信サーバ20aは、制御部25(25a)と記憶装置22とを備え、制御部25aはプログラムを実行することにより、HTTP_Server21と入力処理部としてのアップロード処理部23(23a)と出力処理部としてのダウンロード処理部24(24a)とエラー処理部28(28a)との機能を実現する。
記憶装置22は、コンテンツを時系列的に分割した複数のSegment26と、複数のSegment26に対応する1つのPlay_List27とを格納する。
(Internal configuration of distribution server 20a)
The distribution server 20 a includes a control unit 25 (25 a) and a storage device 22, and the control unit 25 a executes a program, thereby serving as an HTTP_Server 21, an upload processing unit 23 (23 a) as an input processing unit, and an output processing unit. The functions of the download processing unit 24 (24a) and the error processing unit 28 (28a) are realized.
The storage device 22 stores a plurality of Segments 26 obtained by dividing the content in time series and one Play_List 27 corresponding to the plurality of Segments 26.

HTTP_Server21は、非特許文献1におけるディストリビューションコンポーネントの役割を果たす。具体的には、HTTP_Server21は、HTTP(Hypertext_Transfer_Protocol、ハイパーテキスト・トランスファー・プロトコル)を用いて映像送信端末10、及び映像視聴端末30との間でSegmentに分割されたライブコンテンツやこれに関連する情報を送受信する。   HTTP_Server 21 plays the role of a distribution component in Non-Patent Document 1. Specifically, the HTTP_Server 21 uses the HTTP (Hypertext_Transfer_Protocol, Hypertext Transfer Protocol) to display live content divided into segments between the video transmission terminal 10 and the video viewing terminal 30 and information related thereto. Send and receive.

アップロード処理部23aは、非特許文献1におけるディストリビューションコンポーネントの役割を果たす。具体的には、アップロード処理部23aは、映像送信端末10から受信(アップロード)したSegmentを記憶装置22に保存する(以下、N番目にアップロードされたSegmentをSegment[N]と呼ぶ)。これにより、記憶装置22には、ライブコンテンツを構成する複数のSegment26(Segment[N],Segment[N+1],Segment[N+2],・・・)が格納される。   The upload processing unit 23a serves as a distribution component in Non-Patent Document 1. Specifically, the upload processing unit 23a stores the segment received (uploaded) from the video transmission terminal 10 in the storage device 22 (hereinafter, the Nth uploaded segment is referred to as Segment [N]). As a result, the storage device 22 stores a plurality of Segments 26 (Segment [N], Segment [N + 1], Segment [N + 2],...) Constituting the live content.

また、アップロード処理部23aは、アップロードを開始したSegment(ここでは、Segment[N]とする)の次にアップロードする予定のSegment(ここでは、Segment[N+1]とする)を格納する位置を、Segment[N]のアップロードの完了する前(最適なタイミングはアップロードの開始直後)にPlay_List27に追記する。これにより、Play_List27には、時間順にSegment[N]のURL(Uniform_Resource_Locator、ユニフォームリソースロケータ)が列記されることになる。ここで、URLは、リソースの識別情報であるURI(Uniform_Resource_Identifier、ユニフォーム・リソース・アイデンティファイア)において、リソースの「場所」を識別するものである。   In addition, the upload processing unit 23a stores a position for storing a segment (here, Segment [N + 1]) that is scheduled to be uploaded next to the segment where the upload is started (here, Segment [N]). Before the upload of Segment [N] is completed (the optimum timing is immediately after the start of the upload), it is added to the Play_List 27. As a result, the URL of the Segment [N] (Uniform_Resource_Locator, uniform resource locator) is listed in the Play_List 27 in order of time. Here, the URL identifies a “location” of a resource in a URI (Uniform_Resource_Identifier, uniform resource identifier) which is resource identification information.

アップロード処理部23aにより更新されたプレイリストの例を図3に示す。Play_List27は、HLS(HTTP_Live_Streaming)における拡張子「.m3u8」のインデックスファイルであり、ここでは、時系列的にSegment[N],Segment[N+1],Segment[N+2]のURLが列記されている。コンテンツとしてのライブ映像の配信を想定した場合、Segment[N+1]のアップロードを行っている最中であり、最新のSegment[N+2]のアップロードは開始されていない状態となる。なお、「#EXTM3U」はヘッダであり、「#EXTINF:10」はSegmentにおける時間の長さが10秒であることを意味する拡張情報である。なお、Segmentの配列でカウントされるセグメント番号をインデックスという。   An example of the playlist updated by the upload processing unit 23a is shown in FIG. Play_List 27 is an index file with the extension “.m3u8” in HLS (HTTP_Live_Streaming), and here, URLs of Segment [N], Segment [N + 1], and Segment [N + 2] are listed in time series. ing. Assuming distribution of live video as content, Segment [N + 1] is being uploaded and uploading of the latest Segment [N + 2] has not started. “# EXTM3U” is a header, and “#EXTINF: 10” is extension information indicating that the length of time in the Segment is 10 seconds. The segment number counted in the Segment array is called an index.

ダウンロード処理部24aは、非特許文献1におけるディストリビューションコンポーネントの役割を果たす。具体的には、ダウンロード処理部24aは、映像視聴端末30からPlay_List27の送信要求を受信し、その送信要求に従い、記憶装置22に存在するPlay_List27を映像視聴端末30に返信する。また、配信サーバ20aは、映像視聴端末30から受信したコンテンツ(Segment26)の配信要求を受信し、その送信要求に従い、記憶装置22に存在するSegment26について配信し、Segment26を配信する。ここで、ライブ映像の配信のときには、映像視聴端末30は、Play_List27に記載された最新のSegment(アップロード開始前のSegment)のURLを指定するようになっている。   The download processing unit 24a serves as a distribution component in Non-Patent Document 1. Specifically, the download processing unit 24 a receives a Play_List 27 transmission request from the video viewing terminal 30, and returns Play_List 27 existing in the storage device 22 to the video viewing terminal 30 in accordance with the transmission request. In addition, the distribution server 20a receives the distribution request for the content (Segment 26) received from the video viewing terminal 30, distributes the Segment 26 existing in the storage device 22 according to the transmission request, and distributes the Segment 26. Here, at the time of distribution of live video, the video viewing terminal 30 designates the URL of the latest Segment (Segment before start of upload) described in the Play_List 27.

エラー処理部28aは、通信障害、過大な処理時間の経過や、端末の異常情報等が発生したときに、映像送信端末10や映像視聴端末30にエラーを返信する割り込み処理を実行するものである。   The error processing unit 28a executes interrupt processing for returning an error to the video transmission terminal 10 or the video viewing terminal 30 when a communication failure, excessive processing time has elapsed, or terminal abnormality information has occurred. .

(映像視聴端末30の内部構成)
映像視聴端末30は、制御部38と表示パネル37とを備え、制御部38は、CPUがプログラムを実行することにより、HTTP_Client31と主制御部32とTS_Demuxer33とVideo_Decoder34とRenderer35とブラウザ36との機能を実現する。映像視聴端末30は、HLSでのクライアントコンポーネントの役割を果たすものである。
(Internal structure of video viewing terminal 30)
The video viewing terminal 30 includes a control unit 38 and a display panel 37. The control unit 38 executes functions of the HTTP_Client 31, the main control unit 32, the TS_Demuxer 33, the Video_Decoder 34, the Renderer 35, and the browser 36 by the CPU executing a program. Realize. The video viewing terminal 30 plays the role of a client component in HLS.

HTTP_Client31は、配信サーバ20aが送信したファイルを受信する。つまり、HTTP_Client31は、HTTP_GETリクエストにより配信サーバ20aに対して、Play_List27やSegment26の要求を行い、Play_List27やSegment26を受信する。なお、HTTP_Client31は、映像の安定化のためにデータをバッファリングするが、ライブ映像の受信のときには、バッファ時間を最小限に設定している。主制御部32は、複数のSegmentからなるコンテンツのダウンロードを制御するものである。主制御部32の動作については後記する。   The HTTP_Client 31 receives a file transmitted by the distribution server 20a. That is, the HTTP_Client 31 makes a request for the Play_List 27 and the Segment 26 to the distribution server 20a by the HTTP_GET request, and receives the Play_List 27 and the Segment 26. Note that HTTP_Client 31 buffers data for video stabilization, but the buffer time is set to a minimum when receiving live video. The main control unit 32 controls the download of content composed of a plurality of segments. The operation of the main control unit 32 will be described later.

TS_Demuxer33は、受信したSegmentから音声データ等を分離して、Video_Streamを取り出す。また、TS_Demuxer33は、取り出したVideo_StreamをVideo_Decoder34に入力する。Video_Decoder34は、符号化されたVideo_Streamを元のデータ(画像や画面の内容を指示するデータの集まり(数値や数式のパラメータ、描画ルールを記述したものなど))に戻す。Renderer35は、Video_Decoder34の出力データを処理して、具体的な映像データや画像データを生成する。なお、映像送信端末10が、Video_Stream以外のAudio_Stream等のデータを結合(Mux)している場合は、それらのデータも適切に処理される。ブラウザ36は、Renderer35が再生したデータの映像や画像を表示パネル37に表示させる。表示パネル37は、LCD(Liquid_Crystal_Display)等により構成され、映像や画像を表示する。   The TS_Demuxer 33 separates audio data and the like from the received Segment and extracts Video_Stream. Also, the TS_Demuxer 33 inputs the extracted Video_Stream to the Video_Decoder 34. The Video_Decoder 34 returns the encoded Video_Stream to the original data (a collection of data indicating the contents of the image and the screen (such as numerical values, mathematical parameters, and drawing rules)). The Renderer 35 processes the output data of the Video_Decoder 34 and generates specific video data and image data. When the video transmission terminal 10 combines (Mux) data such as Audio_Stream other than Video_Stream, these data are also appropriately processed. The browser 36 causes the display panel 37 to display video and images of data reproduced by the renderer 35. The display panel 37 is configured by an LCD (Liquid_Crystal_Display) or the like, and displays video and images.

(アップロード処理部23aの動作)
図4は、配信サーバの機能であるアップロード処理部の動作を示すフローチャートであり、このルーチンは映像送信端末10と接続されることにより起動する。
最初に、アップロード処理部23aは、変数iをi=-1に設定して(S11)、最初に受信されるべきSegment[i+1]のURLをPlay_List27に記述する(つまり、Segment[-1+1]=Segment[0]のURLを記述する。)(S12)。実際に、Segmentがアップロードされる前にURLが必要となるので、Segment[0]のURLは、特定の規則に従った予測可能な文字列である必要がある。
(Operation of the upload processing unit 23a)
FIG. 4 is a flowchart showing the operation of the upload processing unit, which is a function of the distribution server, and this routine is activated when connected to the video transmission terminal 10.
First, the upload processing unit 23a sets the variable i to i = -1 (S11), and describes the URL of the Segment [i + 1] to be received first in the Play_List 27 (that is, Segment [-1 +1] = Segment [0] URL is described.) (S12). In fact, since the URL is required before the Segment is uploaded, the URL of Segment [0] needs to be a predictable string according to a specific rule.

次に、アップロード処理部23aは、実際に映像送信端末10からアップロードの要求(例えば、HTTP_PUTリクエスト)があるまで待つ(S13)。
アップロード処理部23aは、Play_List27に記述される最新のSegment(次のSegment)のアップロードを開始すると(S14)、変数「i」を「i+1」に更新して(S15)、記憶装置22にSegment[i]の生成を開始する(S16)。ここで、ファイル生成時においては、アップロードの開始状態なので、Segment[i]のファイル長は実質的にゼロである。
Next, the upload processing unit 23a waits until there is an upload request (for example, HTTP_PUT request) from the video transmission terminal 10 (S13).
The upload processing unit 23a starts uploading the latest Segment (next Segment) described in the Play_List 27 (S14), updates the variable “i” to “i + 1” (S15), and stores it in the storage device 22. Generation of Segment [i] is started (S16). Here, when the file is generated, since the upload is in a start state, the file length of Segment [i] is substantially zero.

また、アップロード処理部23aは、Segment[i]の生成の開始に伴い(S16)、ダウンロード処理部24に対してシグナルを送る。このシグナルは、Segment[i]の生成を開始した事を示すものであり、これによりSegment[i]のダウンロードが可能になる。つまり、本実施形態では、アップロード処理部23aは、Segmentのアップロードの前にSegmentのURLをPlay_List27に記述するので、実際のSegment[i]のアップロードの開始を知らせるものである。また、アップロード処理部23は、Play_List27に、Segment[i+1]のURLを追記する(S17)。これにより、Play_List27には、次に入力される予定のSegmentのURLが追記される。   In addition, the upload processing unit 23a sends a signal to the download processing unit 24 with the start of generation of Segment [i] (S16). This signal indicates that the generation of Segment [i] has started, so that Segment [i] can be downloaded. That is, in the present embodiment, the upload processing unit 23a describes the start of upload of the actual Segment [i] because the URL of the Segment is described in the Play_List 27 before the Segment is uploaded. Further, the upload processing unit 23 adds the URL of Segment [i + 1] to the Play_List 27 (S17). As a result, the URL of the Segment to be input next is added to the Play_List 27.

そして、逐次、Segment[i]のデータがアップロードされてくるので、アップロード処理部23は、このデータを記憶装置22のSegment[i]に追記(格納)する(S18)。アップロード処理部23aは、Segment[i]の全てのデータのアップロード、及び書き込みが完了すると、映像送信端末10に対して完了のレスポンス(具体的には、HTTP_Status_200_OK)を返す(S19)。そして、アップロード処理部23は、S13に戻り、次のSegmentのアップロード要求(HTTP_PUTリクエスト)を待ち、以上の動作を繰り返す。   Then, since the data of Segment [i] is uploaded sequentially, the upload processing unit 23 adds (stores) this data to the Segment [i] of the storage device 22 (S18). When uploading and writing of all the data of Segment [i] is completed, the upload processing unit 23a returns a completion response (specifically, HTTP_Status_200_OK) to the video transmission terminal 10 (S19). Then, the upload processing unit 23 returns to S13, waits for the next segment upload request (HTTP_PUT request), and repeats the above operation.

なお、ライブ映像終了時には、映像送信端末10から終了を指示するHTTP_PUTリクエストが送られてくるので、アップロード処理部23は、これを受信し、Play_List27に、終了マークを付ける。また、この終了の指示は、ダウンロード処理部24aにも送信される。   At the end of the live video, an HTTP_PUT request for instructing termination is sent from the video transmission terminal 10, so the upload processing unit 23 receives this and attaches an end mark to the Play_List 27. This termination instruction is also transmitted to the download processing unit 24a.

(ダウンロード処理部24aの動作)
図5(a)は、配信サーバの機能であるダウンロード処理部の動作を示すフローチャートであり、図5(b)は、映像視聴端末の主制御部の動作を示すフローチャートである。図5(a)(b)を用いて、配信サーバ20aが映像視聴端末30にライブ映像データを配信する配信処理について説明する。
(Operation of the download processing unit 24a)
FIG. 5A is a flowchart showing the operation of the download processing unit, which is a function of the distribution server, and FIG. 5B is a flowchart showing the operation of the main control unit of the video viewing terminal. A distribution process in which the distribution server 20a distributes live video data to the video viewing terminal 30 will be described with reference to FIGS.

まず、映像視聴端末30の主制御部32は、HTTP_Client31に指示し、HTTP_GETリクエストにより配信サーバ20aからPlay_List27を取得することについて要求する(S31)。これにより、配信サーバ20aは、Play_List27を映像視聴端末30に送信する(S21)。このとき、映像送信端末10がSegment[i-1]をアップロード中の場合、アップロード側フローの処理に従って、Play_List27にはSegment[i]までのURLが記述されている。   First, the main control unit 32 of the video viewing terminal 30 instructs the HTTP_Client 31 to request acquisition of the Play_List 27 from the distribution server 20a by an HTTP_GET request (S31). Thereby, the distribution server 20a transmits Play_List 27 to the video viewing terminal 30 (S21). At this time, when the video transmission terminal 10 is uploading Segment [i-1], URLs up to Segment [i] are described in Play_List 27 in accordance with the processing of the upload side flow.

次に、主制御部32は、再生開始Segmentを選択し、選択されたSegment番号を変数「i」とする(S32)。特に、本実施形態のライブ映像配信では、主制御部32は、Play_List27に列挙されている複数のSegmentから最新のSegmentを選択することにし、この選択された最新のSegmentをSegment[i]とする。   Next, the main control unit 32 selects a reproduction start segment, and sets the selected segment number as a variable “i” (S32). In particular, in live video distribution according to the present embodiment, the main control unit 32 selects the latest segment from a plurality of segments listed in the Play_List 27, and sets the selected latest segment as Segment [i]. .

次に、主制御部32は、HTTP_Client31にHTTP_GETリクエストの指示を行い、配信サーバ20aに対して最新のSegment[i]のダウンロード要求(配信要求)を送信する(S33)。配信サーバ20aのダウンロード処理部24は、映像視聴端末30からSegment[i]のダウンロード要求を受信する(S22)。   Next, the main control unit 32 instructs the HTTP_Client 31 to issue an HTTP_GET request, and transmits a latest Segment [i] download request (distribution request) to the distribution server 20a (S33). The download processing unit 24 of the distribution server 20a receives a download request for Segment [i] from the video viewing terminal 30 (S22).

しかしながら、ダウンロード処理部24は、Play_List27に記述される最新のSegment[i]は、まだアップロードが始まっていないので、ダウンロード要求に対して、何も応答を返さないで保留する(従来の配信サーバであれば、そのSegment[i]は記憶装置22に存在しないので、配信サーバから再生端末に対してHTTP_Status_404_Not_Found等のエラーを返すことになる。)。つまり、ダウンロード処理部24は、記憶装置22にSegment[i]が生成されるまで待機し(S23)、アップロード処理部23aから、Segment[i]が記憶装置22に生成されたことを示すシグナル(図4のS16参照)の受信することによりSegment[i]の生成が開始されたことを検出する(S24)。   However, since the upload of the latest Segment [i] described in the Play_List 27 has not yet started, the download processing unit 24 holds the download request without returning any response (in the conventional distribution server). If there is, the Segment [i] does not exist in the storage device 22, and an error such as HTTP_Status_404_Not_Found is returned from the distribution server to the playback terminal. That is, the download processing unit 24 waits until Segment [i] is generated in the storage device 22 (S23), and a signal (S) indicating that Segment [i] is generated in the storage device 22 from the upload processing unit 23a. It is detected that the generation of Segment [i] has started (S24).

そして、ダウンロード処理部24は、アップロード処理部23からシグナルを受けた後、映像視聴端末30に対してレスポンス(例えば、HTTP_Status_200_OK)を返す(S25)。そして、ダウンロード処理部24は、逐次、記憶装置22に書き込まれてくるSegment[i]のデータを、記憶装置22から読み出しつつ、読み出されたSegment[i]のデータを映像視聴端末30に対してダウンロードさせる(S26)。そして、Segment[i]のダウンロードが完了する(S27)。   Then, after receiving the signal from the upload processing unit 23, the download processing unit 24 returns a response (for example, HTTP_Status_200_OK) to the video viewing terminal 30 (S25). Then, the download processing unit 24 sequentially reads the data of Segment [i] written in the storage device 22 from the storage device 22 and reads the read data of Segment [i] to the video viewing terminal 30. Download (S26). Then, the download of Segment [i] is completed (S27).

映像視聴端末30は、配信サーバ20aからHTTP_GETリクエストに対する応答(HTTP_Status_200_OK)が返り(S34)、次いで、Segment[i]のデータが逐次ダウンロードされてくるので、主制御部32がダウンロードされたSegment[i]のデータをTS_Demuxer33に入力する(S35)。このとき、一般的に、映像視聴端末30は、映像の安定化のためにデータをバッファリングするが、それを最小限の時間にする。   The video viewing terminal 30 returns a response (HTTP_Status_200_OK) to the HTTP_GET request from the distribution server 20a (S34), and then the data of the Segment [i] is downloaded sequentially, so that the main control unit 32 downloads the Segment [i ] Is input to the TS_Demuxer 33 (S35). At this time, in general, the video viewing terminal 30 buffers data to stabilize the video, but makes it a minimum time.

主制御部32は、Segment[i]のデータの全ての処理を行い、TS_Demuxer33に入力し終わったら(S36)、Play_List27にSegment[i+1]のURLが記述されているか否かを判定する(S37)。もし、Play_List27にSegment[i+1]のURLが含まれていない場合(S37でNo)、主制御部32は、Play_List27の取得を、Segment[i+1]のURLが含まれるまで繰り返す。つまり、主制御部32は、配信サーバ20aの記憶装置22に次のSegmentのURLが追記されるまでPlay_List27の取得を繰り返す(S38)。   The main control unit 32 performs all the processing of the data of Segment [i], and after input to the TS_Demuxer 33 (S36), determines whether or not the URL of the Segment [i + 1] is described in the Play_List 27 ( S37). If the Play_List 27 does not include the URL of Segment [i + 1] (No in S37), the main control unit 32 repeats the acquisition of Play_List 27 until the URL of Segment [i + 1] is included. That is, the main control unit 32 repeats the acquisition of Play_List 27 until the URL of the next Segment is added to the storage device 22 of the distribution server 20a (S38).

一方、主制御部32は、Play_List27にSegment[i+1]のURLが記述されていれば(S37でYes)、変数「i」を「i+1」に1つインクリメントして(S39)、処理をS33に戻す。そして、主制御部32は、配信サーバ20aに対してSegment[i]のダウンロード要求(配信要求)を送信する。   On the other hand, if the URL of Segment [i + 1] is described in Play_List 27 (Yes in S37), the main control unit 32 increments the variable “i” by 1 to “i + 1” (S39), The process returns to S33. Then, the main control unit 32 transmits a download request (distribution request) for Segment [i] to the distribution server 20a.

(過去のコンテンツ再生)
映像視聴端末30は、Play_List27の送信要求後のライブ映像のみならず、既録のコンテンツを含んで再生することができる。図5(b)の主制御部32のフローチャートを用いて、既録のコンテンツを含んだライブ映像の再生について説明する。
(Past content playback)
The video viewing terminal 30 can reproduce not only the live video after the transmission request of Play_List 27 but also the recorded content. With reference to the flowchart of the main control unit 32 in FIG. 5B, reproduction of live video including recorded content will be described.

映像視聴端末30は、Play_List27の送信要求を配信サーバ20に行い、Play_List27を取得する(S31)。そして、映像視聴端末30は、Play_List27を用いて、再生開始セグメントの選択を行う(S32)。配信サーバ20から送信されるPlay_List27は、既録のコンテンツを含んで、ライブ画面の次のSegmentのURLまで列挙されている。このため、操作者は、表示パネルのタッチスイッチ等を介して任意のSegment[i]を再生開始セグメントとして選択する。映像視聴端末30は、選択されたSegment[i]の配信要求(例えば、HTTP_GET)を行い(S33)、HTTP_GETに対して配信サーバ20から応答(200_OK)が返ってきたら(S34)、Segment[i]のダウンロードを行い、Segment[i]をTS_Demuxer33に入力する(S35)。   The video viewing terminal 30 makes a transmission request for Play_List 27 to the distribution server 20, and acquires Play_List 27 (S31). Then, the video viewing terminal 30 uses the Play_List 27 to select a playback start segment (S32). The Play_List 27 transmitted from the distribution server 20 includes already recorded contents and is listed up to the URL of the next Segment on the live screen. For this reason, the operator selects an arbitrary Segment [i] as a playback start segment via a touch switch or the like of the display panel. The video viewing terminal 30 makes a distribution request (for example, HTTP_GET) of the selected Segment [i] (S33), and when a response (200_OK) is returned from the distribution server 20 to HTTP_GET (S34), the Segment [i] ] Is downloaded and Segment [i] is input to TS_Demuxer 33 (S35).

そして、映像視聴端末30は、Segment[i]の全ての処理を終えると(S36)、既録のコンテンツの場合は、Play_List27に、次のSegment[i+1]のURLがあるので(S37でYes)、変数「i」を「i+1」に1つインクリメントして(S39)、次のSegment[i]の配信要求を行う(S33)。これらの処理を繰り返して、最新画面(ライブ画面)になると、映像視聴端末30は、Play_List27にSegment[i+1]のURLがなくなるので(S37でNo)、Play_List27を取得する(S38)。この取得したPlay_List27には、新しい画面のSegment[i+1]のURLが追記されているので、S37でYesと判定され、S39を介して、S33でSegment[i]の配信要求を行う。   When the video viewing terminal 30 finishes all the processing of Segment [i] (S36), in the case of recorded content, the Play_List 27 has the URL of the next Segment [i + 1] (in S37) Yes), the variable “i” is incremented by 1 to “i + 1” (S39), and a distribution request for the next Segment [i] is made (S33). When these processes are repeated and the latest screen (live screen) is displayed, the video viewing terminal 30 acquires the Play_List 27 because the URL of the Segment [i + 1] disappears in the Play_List 27 (No in S37) (S38). In this acquired Play_List 27, the URL of Segment [i + 1] of the new screen is added, so it is determined Yes in S37 and a distribution request for Segment [i] is made in S33 via S39.

図6は、配信サーバの機能であるエラー処理部の動作を示すフローチャートである。
このフローは、通信障害、過大な処理時間の経過や、端末の異常情報等のエラーが発生したときに、割込みにより実行される。ここで過大な処理時間の経過と見なす時間は、少なくともSegment26の時間幅よりも十分に長い時間である必要がある。
FIG. 6 is a flowchart showing the operation of the error processing unit which is a function of the distribution server.
This flow is executed by interruption when an error such as a communication failure, excessive processing time, or abnormal information of the terminal occurs. Here, the time which is regarded as the passage of the excessive processing time needs to be a time sufficiently longer than at least the time width of the Segment 26.

エラー処理部28a(図2参照)は、前記したエラーが発生したときに、エラーを映像送信端末10や映像視聴端末30に送信し(S29)、エラー処理が終了する。   When the above-described error occurs, the error processing unit 28a (see FIG. 2) transmits the error to the video transmission terminal 10 or the video viewing terminal 30 (S29), and the error processing ends.

(効果の説明)
図7は、本発明の第1実施形態であるコンテンツ配信システムのシーケンス図である。図7のシーケンス図、及び図4,5のフローチャートを用いて、コンテンツ配信システム1の全体の動作を説明する。
配信サーバ20aは、映像送信端末10からライブ映像コンテンツを時分割した時分割コンテンツ(・・・, Segment[N],Segment[N+1],Segment[N+2],・・・)を逐次アップロードし、アップロードされた時分割コンテンツを記憶装置22に逐次格納する。
(Explanation of effect)
FIG. 7 is a sequence diagram of the content distribution system according to the first embodiment of the present invention. The overall operation of the content distribution system 1 will be described with reference to the sequence diagram of FIG. 7 and the flowcharts of FIGS.
The distribution server 20a sequentially generates time-division content (..., Segment [N], Segment [N + 1], Segment [N + 2], ...) obtained by time-division of live video content from the video transmission terminal 10. The uploaded time-division content is sequentially stored in the storage device 22.

配信サーバ20aは、Segment[N]を格納し終わり、Segment[N+1]のファイルを生成するときに(S16)、Segment[N+1]の次に入力される予定のSegmentであるSegment[N+2]のURLをPlay_List27に追記する(S17)。
配信サーバ20aのアップロード処理部23aがSegment[N+1]をアップロードしているときに(S18)、ダウンロード処理部24は、Play_List27の送信要求(HTTP_GETリクエスト(T1))を映像視聴端末30から受信すると、Segment[N+2]のURLが記述されたPlay_List27を映像視聴端末30に送信するとする(S21)。
When the distribution server 20a finishes storing Segment [N] and generates a file of Segment [N + 1] (S16), Segment [N + 1] is the segment to be input next to Segment [N + 1]. N + 2] URL is added to the Play_List 27 (S17).
When the upload processing unit 23a of the distribution server 20a is uploading Segment [N + 1] (S18), the download processing unit 24 receives a Play_List27 transmission request (HTTP_GET request (T1)) from the video viewing terminal 30. Then, Play_List 27 in which the URL of Segment [N + 2] is described is transmitted to the video viewing terminal 30 (S21).

ここで、配信サーバ20aのアップロード処理部23aがSegment[N+1]をアップロードしているときに(S18)、映像視聴端末30は、Segment[N+2]の配信要求(HTTP_GETリクエスト(T2))を配信サーバ20aに送信する(S33)。   Here, when the upload processing unit 23a of the distribution server 20a is uploading the Segment [N + 1] (S18), the video viewing terminal 30 requests the Segment [N + 2] distribution request (HTTP_GET request (T2)). ) Is transmitted to the distribution server 20a (S33).

そして、ダウンロード処理部24は、Segment[N+2]の配信要求(例えば、HTTP_GETリクエスト)を映像視聴端末30から受信すると(S22)、HTTP_Status_404_Not_Found等のエラーの返信をせず、Segment[N+2]の配信を待機して(S23)、Segment[N+2]が記憶装置22に生成されてから(S24)、応答(例えば、200_OK(T3))を映像視聴端末30に返す(S25)。   When the download processing unit 24 receives a segment [N + 2] distribution request (for example, HTTP_GET request) from the video viewing terminal 30 (S22), the download processing unit 24 does not return an error such as HTTP_Status_404_Not_Found, and Segment [N + 2 ] (S23), Segment [N + 2] is generated in the storage device 22 (S24), and a response (for example, 200_OK (T3)) is returned to the video viewing terminal 30 (S25).

配信サーバ20aは、アップロード処理部23aがSegment[N+3]のURLをPlay_List27に追記し(S17)、Segment[N+2]を受信しつつ記憶装置22に格納する。この記憶装置22への格納とほぼ同時進行して、ダウンロード処理部24は、記憶装置22からSegment[N+2]を読み出して映像視聴端末30にダウンロードさせる(S26)。   In the distribution server 20a, the upload processing unit 23a adds the URL of the Segment [N + 3] to the Play_List 27 (S17), and stores the Segment [N + 2] in the storage device 22 while receiving the Segment [N + 2]. Almost simultaneously with the storage in the storage device 22, the download processing unit 24 reads Segment [N + 2] from the storage device 22 and downloads it to the video viewing terminal 30 (S26).

図8は、本発明の第1実施形態である配信サーバによるセグメントの配信状態を示す図であり、映像送信端末10がSegment[N+1]の6秒目までをアップロードしているときの状態を実線で示している。また、Segment[N+1]の6秒目以降と、次にアップロードされる予定のSegment[N+2]を破線で示している。そして、このとき映像視聴端末30が再生を開始すると、Segment[N+2] から再生を始めることを示している。なお、各Segmentの時間幅は10秒とする。   FIG. 8 is a diagram showing a segment distribution state by the distribution server according to the first embodiment of the present invention, and a state when the video transmission terminal 10 uploads up to the sixth second of Segment [N + 1]. Is shown by a solid line. In addition, the sixth and subsequent seconds of Segment [N + 1] and the Segment [N + 2] scheduled to be uploaded next are indicated by broken lines. At this time, when the video viewing terminal 30 starts playback, it shows that playback starts from Segment [N + 2]. The duration of each segment is 10 seconds.

再び、図7に戻り、配信サーバ20aは、Segment[N+2]のファイルを記憶装置22に生成してから(S24)、応答(例えば、200_OK(T3))を映像視聴端末30に返すので(S25)、記憶装置22への格納とほぼ同時進行して映像視聴端末30での再生が行われる。つまり、映像送信端末10がSegment[N+2]の先頭をアップロードし始めるタイミングと、映像視聴端末30がSegment[N+2]の先頭を再生し始めるタイミングとの時間差が極めて小さくなる。また、映像視聴端末30は、極短時間のバッファリングのみをして、再生を開始することにより、映像送信端末10が直前に送信したデータが、映像視聴端末30で直ぐに再生される状態になり、低遅延再生が実現される。   Returning to FIG. 7 again, the distribution server 20a generates a file of Segment [N + 2] in the storage device 22 (S24), and then returns a response (for example, 200_OK (T3)) to the video viewing terminal 30. (S25) The playback on the video viewing terminal 30 is performed almost simultaneously with the storage in the storage device 22. That is, the time difference between the timing at which the video transmission terminal 10 starts to upload the beginning of Segment [N + 2] and the timing at which the video viewing terminal 30 starts to reproduce the beginning of Segment [N + 2] becomes extremely small. In addition, the video viewing terminal 30 starts reproduction by performing only buffering for a very short time, so that the data transmitted immediately before by the video transmission terminal 10 is immediately reproduced by the video viewing terminal 30. Low delay playback is realized.

映像視聴端末30は、Segment[N+2]をTS_Demuxer33に入力し(S35)、Video_Decoder34、Renderer35、ブラウザ36を介して、表示パネル37に映像を表示する。映像視聴端末30は、Segment[N+2]を全て処理すると(S36)、Play_List27の送信要求(HTTP_GET)を配信サーバ20aに行い、Segment[N+3]のURLが追記されたPlay_List27を取得する(S38)。そして、映像視聴端末30は、Segment[N+3]の配信要求(HTTP_GET)を配信サーバ20aに行い(S33)、これら処理(S33〜S39)を繰り返す。   The video viewing terminal 30 inputs Segment [N + 2] to the TS_Demuxer 33 (S35), and displays the video on the display panel 37 via the Video_Decoder 34, the Renderer 35, and the browser 36. When all the Segment [N + 2] is processed (S36), the video viewing terminal 30 sends a Play_List27 transmission request (HTTP_GET) to the distribution server 20a, and acquires the Play_List27 in which the URL of the Segment [N + 3] is added. (S38). Then, the video viewing terminal 30 sends a segment [N + 3] distribution request (HTTP_GET) to the distribution server 20a (S33), and repeats these processes (S33 to S39).

このように、本実施形態のコンテンツ配信システム1は、配信サーバ20のみの工夫により、映像視聴端末30の再生開始のタイミングをコントロールしている。このため、映像視聴端末30は、従来のHLS再生クライアントを使うことができる。なお、本実施形態は、配信サーバ20aが応答を保留するだけ、映像視聴端末30がSegmentの配信要求を出してから実際に再生を開始するまでの時間が長くなるので、Segmentの長さを適切に設定するのがよい。   As described above, the content distribution system 1 according to the present embodiment controls the reproduction start timing of the video viewing terminal 30 by using only the distribution server 20. Therefore, the video viewing terminal 30 can use a conventional HLS playback client. In the present embodiment, since the time from when the video viewing terminal 30 issues a segment distribution request to when the reproduction is actually started is increased only by the distribution server 20a holding the response, the length of the segment is appropriately set. It is good to set to.

(第2実施形態)
第1実施形態では、映像送信端末10と配信サーバ20とを分離し、映像送信端末10からHTTP_PUTリクエストにより、Segmentが配信サーバ20aにアップロードされるとしたが、配信サーバ20に、映像送信端末10を介することなく、直接ビデオカメラを接続することができる。
(Second Embodiment)
In the first embodiment, the video transmission terminal 10 and the distribution server 20 are separated, and the Segment is uploaded to the distribution server 20a by the HTTP_PUT request from the video transmission terminal 10, but the distribution server 20 includes the video transmission terminal 10 You can connect a video camera directly without going through

図9は、本発明の第2実施形態である配信サーバ、及び映像視聴端末の内部構成図である。ここで、映像視聴端末30は、図2の内部構成図と同一である。   FIG. 9 is an internal configuration diagram of the distribution server and the video viewing terminal according to the second embodiment of the present invention. Here, the video viewing terminal 30 is the same as the internal configuration diagram of FIG.

配信サーバ20bは、直接、ビデオカメラ11を接続し、配信サーバ20bの内部に、映像送信端末10(図2)の機能である、Video_Encoder12、TS_Muxer13、Segmenter14を実装している。また、映像送信端末10のアップロード処理部23は、入力処理部23bに変更されている。入力処理部23bは、HTTP_Server21を介することなく、直接、Segmenter14からSegmentの入力を受け付ける。つまり、制御部25bは、プログラムを実行することにより、Video_Encoder12、TS_Muxer13、Segmenter14、入力処理部23bダウンロード処理部24、HTTP_Server21、エラー処理部28aの機能を実現している。   The distribution server 20b is directly connected to the video camera 11, and the Video_Encoder 12, TS_Muxer 13, and Segmenter 14, which are functions of the video transmission terminal 10 (FIG. 2), are installed inside the distribution server 20b. In addition, the upload processing unit 23 of the video transmission terminal 10 is changed to an input processing unit 23b. The input processing unit 23b accepts an input of a Segment directly from the Segmenter 14 without going through the HTTP_Server 21. That is, the control unit 25b realizes the functions of the Video_Encoder 12, the TS_Muxer 13, the Segmenter 14, the input processing unit 23b, the download processing unit 24, the HTTP_Server 21, and the error processing unit 28a by executing a program.

(第3実施形態)
第1実施形態は、配信サーバ20aの制御部25aをアップロード処理部23aとダウンロード処理部24aとして機能させたが、制御部をPlay_List27を生成処理する機能部とSegment26を配信する機能部として実現させることができる。
(Third embodiment)
In the first embodiment, the control unit 25a of the distribution server 20a functions as the upload processing unit 23a and the download processing unit 24a. However, the control unit is realized as a function unit that generates the Play_List 27 and a function unit that distributes the Segment 26. Can do.

図10は、本発明の第3実施形態である映像送信端末、配信サーバ、及び映像視聴端末の内部構成図である。
制御部25cは、プログラムを実行することにより、HTTP_Server21とエラー処理部28aとインデックスファイル処理部29aと配信処理部29bとの機能を実現する。
FIG. 10 is an internal configuration diagram of a video transmission terminal, a distribution server, and a video viewing terminal according to the third embodiment of the present invention.
The control unit 25c implements the functions of the HTTP_Server 21, the error processing unit 28a, the index file processing unit 29a, and the distribution processing unit 29b by executing a program.

インデックスファイル処理部29aは、映像視聴端末30からPlay_List27の送信要求を受信した場合、受信予定(記憶装置22に格納予定でもある。)のSegment26のURLをPlay_List27に追記して、追記されたPlay_List27を映像視聴端末30に返信する。   When receiving the Play_List27 transmission request from the video viewing terminal 30, the index file processing unit 29a adds the URL of the Segment 26 scheduled to be received (also scheduled to be stored in the storage device 22) to the Play_List 27, and adds the added Play_List 27. A reply is sent to the video viewing terminal 30.

配信処理部29bは、追記されたURLのSegment26の配信要求を受信した場合、その配信要求を受信したSegment26の受信開始前は、Segment26の配信を保留し、Play_List27に追記されたURLのSegment26の受信開始を確認してから、配信要求に応答して、受信されたSegment26を映像視聴端末30に配信する。   When the distribution processing unit 29b receives a distribution request for the segment 26 of the URL that has been added, the distribution processing unit 29b suspends the distribution of the segment 26 and starts receiving the segment 26 of the URL that has been added to the Play_List 27 before receiving the segment 26 that has received the distribution request. After confirming the start, the received segment 26 is distributed to the video viewing terminal 30 in response to the distribution request.

(第4実施形態)
前記各実施形態のコンテンツ配信システムは、HLSのプロトコルを前提にし、映像視聴端末30が配信サーバ20に対して、コマンド「HTTP_GET」を逐次送信していたが、映像視聴端末30が再生開始を配信サーバ20に指示するのみで、コンテンツのダウンロードを行うこともできる。
(Fourth embodiment)
In the content distribution system of each of the embodiments, the video viewing terminal 30 sequentially transmits the command “HTTP_GET” to the distribution server 20 on the premise of the HLS protocol. The content can be downloaded only by instructing the server 20.

図11は、本発明の第4実施形態である映像送信端末、配信サーバ、及び映像視聴端末の内部構成図である。ここで、ビデオカメラ11、映像送信端末10、及び映像視聴端末30は、前記各実施形態のものと同一であり、配信サーバ20が配信サーバ20d(20da)に変更されている。   FIG. 11 is an internal configuration diagram of a video transmission terminal, a distribution server, and a video viewing terminal according to the fourth embodiment of the present invention. Here, the video camera 11, the video transmission terminal 10, and the video viewing terminal 30 are the same as those in the above embodiments, and the distribution server 20 is changed to the distribution server 20d (20da).

本実施形態の配信サーバ20dは、第1実施形態の配信サーバ20a(図2)に対して、Play_List27がSegment_List41に変更されている点が主な相違点である。また、配信サーバ20dは、制御部25aが制御部25dに変更され、アップロード処理部23aがアップロード処理部23dに変更され、ダウンロード処理部24aがダウンロード処理部24d(24da)に変更され、エラー処理部28aがエラー処理部28bに変更されている点でも相違する。   The distribution server 20d of this embodiment is mainly different from the distribution server 20a (FIG. 2) of the first embodiment in that Play_List 27 is changed to Segment_List 41. Further, the distribution server 20d has the control unit 25a changed to the control unit 25d, the upload processing unit 23a changed to the upload processing unit 23d, the download processing unit 24a changed to the download processing unit 24d (24da), and the error processing unit. The difference is that 28a is changed to an error processing unit 28b.

Segment_List41は、Segment[i]のURLを記載するリストであり、受信(アップロード)時であって、Segment[i]が生成されたときにURLが追記される。エラー処理部28bは、過大な処理時間の経過や、通信障害、端末の異常情報等が発生したときに機能するものである。本実施形態では、コマンド「HTTP_GET」の逐次送受信を行わないので、エラー処理部28bは、Segment26の時間幅よりも十分に長い時間経過したときにエラーと判定する必要がない。   Segment_List 41 is a list in which URLs of Segment [i] are described. When receiving (uploading), Segment_List 41 is added with a URL when Segment [i] is generated. The error processing unit 28b functions when an excessive processing time elapses, communication failure, terminal abnormality information, or the like occurs. In this embodiment, since the command “HTTP_GET” is not sequentially transmitted and received, the error processing unit 28 b does not need to determine an error when a time sufficiently longer than the time width of the Segment 26 has elapsed.

図12は、本発明の第4実施形態である配信サーバの機能であるアップロード処理部の動作を示すフローチャートである。
アップロード処理部23dは、第1実施形態のアップロード処理部23a(図4)に対して、「Play_List」(S12,S17)を「Segment_List」(S62,S67)に変更している点で相違する。つまり、アップロード処理部23dは、Segment_List41にSegment[0]のURLを記述し(S62)、アップロード要求が行われ(S63)、次のSegment[0]のアップロードを開始したときに(S64)、Segment[0]を記憶装置22に生成する(S66)。また、アップロード処理部23dは、Segment_List41にSegment[0]のURLを追記し(S67)、Segment[0]を受信しつつ、記憶装置22に追記する(S68)。つまり、アップロード処理部23dは、Segment[i]の受信を開始する前に、Segment_List41にSegment[i+1]のURLを追記する。そして、アップロード処理部23dは、アップロード完了まで、Segment[i]の受信、書き込みを繰り返す。
FIG. 12 is a flowchart showing the operation of the upload processing unit, which is the function of the distribution server according to the fourth embodiment of the present invention.
The upload processing unit 23d differs from the upload processing unit 23a (FIG. 4) of the first embodiment in that “Play_List” (S12, S17) is changed to “Segment_List” (S62, S67). That is, the upload processing unit 23d describes the URL of Segment [0] in the Segment_List 41 (S62), an upload request is made (S63), and the upload of the next Segment [0] is started (S64). [0] is generated in the storage device 22 (S66). Also, the upload processing unit 23d appends the URL of Segment [0] to the Segment_List 41 (S67), and appends to the storage device 22 while receiving the Segment [0] (S68). That is, the upload processing unit 23d adds the URL of Segment [i + 1] to the Segment_List 41 before starting to receive Segment [i]. Then, the upload processing unit 23d repeats reception and writing of Segment [i] until the upload is completed.

図13(a)は本発明の第4実施形態である配信サーバの機能であるダウンロード処理部の動作を示すフローチャートであり、図13(b)は映像視聴端末の主制御部の動作を示すフローチャートである。   FIG. 13A is a flowchart showing the operation of the download processing unit which is the function of the distribution server according to the fourth embodiment of the present invention, and FIG. 13B is a flowchart showing the operation of the main control unit of the video viewing terminal. It is.

ダウンロード処理部24d(24da)は、Segment_List41から最新のSegmentを取得し、それをSegment[N]とする(S71)。ダウンロード処理部24daは、変数iをNに設定する(S72)。映像視聴端末30の主制御部32は、HTTP_Client31(図11)を介して、対象ファイルについての配信要求(HTTP_GET)を行う(S91)。ダウンロード処理部24daは、映像視聴端末30からの対象ファイルのダウンロード要求を受信する(S73)。ダウンロード処理部24daは、映像視聴端末30にレスポンス(200_OK)を返す(S75)。映像視聴端末30の主制御部32は、配信要求(S91)に対する応答を受信する(S93)。   The download processing unit 24d (24da) acquires the latest Segment from the Segment_List 41 and sets it as Segment [N] (S71). The download processing unit 24da sets the variable i to N (S72). The main control unit 32 of the video viewing terminal 30 makes a distribution request (HTTP_GET) for the target file via the HTTP_Client 31 (FIG. 11) (S91). The download processing unit 24da receives the download request for the target file from the video viewing terminal 30 (S73). The download processing unit 24da returns a response (200_OK) to the video viewing terminal 30 (S75). The main control unit 32 of the video viewing terminal 30 receives a response to the distribution request (S91) (S93).

ダウンロード処理部24daは、変数iを1つ増加する演算(i=i+1)を行い(S76)、Segment[i]が記憶装置22に生成されるまで待機する(S77)。ダウンロード処理部24daは、アップロード処理部23dからSegment[i]が記憶装置22に生成されたことを示すシグナルの受信により(S78)、Segment[i]=Segment[N+1]を記憶装置22から読み出しつつ、映像視聴端末30にダウンロードさせ(S81)、Segment[i] =Segment[N+1]のダウンロードが完了する(S81)。   The download processing unit 24da performs an operation of incrementing the variable i by 1 (i = i + 1) (S76), and waits until Segment [i] is generated in the storage device 22 (S77). Upon receiving a signal indicating that Segment [i] has been generated in the storage device 22 from the upload processing unit 23d (S78), the download processing unit 24da sends Segment [i] = Segment [N + 1] from the storage device 22. While reading, it is downloaded to the video viewing terminal 30 (S81), and the download of Segment [i] = Segment [N + 1] is completed (S81).

ここで、ダウンロード処理部24daは、Segment[N+1]を映像視聴端末32dにダウンロードさせてもHTTP_Server21の接続を切らない。   Here, the download processing unit 24da does not disconnect the HTTP_Server 21 even if the segment [N + 1] is downloaded to the video viewing terminal 32d.

S81のとき、映像視聴端末30の主制御部32は、Segment[i]をTS_Demuxer33(図2)に入力し(S94)、Segment[i]を全て処理するまでS94の処理を繰り返す(S95)。つまり、ダウンロード処理部24daは、Segment[N+2]がアップロードされるのを待ち、それがアップロードされると、引き続きSegment[N+2]を返す。このとき、HTTP上では、Segment[N+1]にSegment[N+2]が連結されるようになる。そして、Segment[N+3]、Segment[N+4]・・・も同様に行われる。ダウンロード処理部24daは、Segment_List41の最後のSegmentを返して、かつ、Segment_List41に終了マークが書き込まれていれば、HTTP接続を閉じる。このようにすると、映像視聴端末30は、Segmentとして認識することができないが、Segment[N+1]に対応するデータから始まる、一連のTSデータがHTTPにより取得できることになる。   At S81, the main control unit 32 of the video viewing terminal 30 inputs Segment [i] to the TS_Demuxer 33 (FIG. 2) (S94), and repeats the processing of S94 until all the Segment [i] are processed (S95). That is, the download processing unit 24da waits for Segment [N + 2] to be uploaded, and when it is uploaded, it continues to return Segment [N + 2]. At this time, on HTTP, Segment [N + 2] is connected to Segment [N + 1]. Segment [N + 3], Segment [N + 4]... Are also performed in the same manner. The download processing unit 24da returns the last Segment of the Segment_List 41, and closes the HTTP connection if an end mark is written in the Segment_List 41. In this way, the video viewing terminal 30 cannot recognize as a Segment, but can acquire a series of TS data starting from data corresponding to the Segment [N + 1] by HTTP.

図14は、本発明の第4実施形態であるコンテンツ配信システムのシーケンス図である。
図14のシーケンス図は、図7のシーケンス図に比較して、映像視聴端末30から配信サーバ20daに配信要求(HTTP_GET)を行うと、直ちに返信(200_OK)が行われる点で相違する。また、図7のシーケンス図は、Segment[N+1],Segment[N+2],・・・の送受信(ダウンロード)終了後、200_OKの返信、及びHTTP_GETの配信要求を逐次行っていたが、図14のシーケンス図では、Segment[N+1],Segment[N+2],・・・の送受信(ダウンロード)終了後、返信(200_OK)、及び配信要求(HTTP_GET)を逐次行っていない点でも相違する。
FIG. 14 is a sequence diagram of the content distribution system according to the fourth embodiment of the present invention.
The sequence diagram of FIG. 14 differs from the sequence diagram of FIG. 7 in that a reply (200_OK) is immediately made when a delivery request (HTTP_GET) is made from the video viewing terminal 30 to the delivery server 20da. Further, in the sequence diagram of FIG. 7, after the transmission / reception (downloading) of Segment [N + 1], Segment [N + 2],... Is completed, a 200_OK reply and an HTTP_GET distribution request are sequentially performed. In the sequence diagram of FIG. 14, the reply (200_OK) and the distribution request (HTTP_GET) are not sequentially performed after the transmission / reception (download) of Segment [N + 1], Segment [N + 2],. Is different.

以上説明したように、本実施形態の配信サーバ20daは、ダウンロード処理部24daは、映像視聴端末30からのライブ映像取得要求(HTTP_GET)に対して、現在アップロードしているSegment[N]から返しはじめるのではなく、接続をいったん保留して、Segment[N+1]がアップロードされ始めるタイミングでアップロード処理部23(図11,12)が発生する通知を受けてからSegment[N+1]を映像視聴端末30に対して返し始める。これにより、映像送信端末10aがSegment[N+1]の先頭をアップロードし始めるタイミングと、映像視聴端末30がSegment[N+1]の先頭をダウンロードし始めるタイミングとの時間差が極めて小さくなる。   As described above, in the distribution server 20da of this embodiment, the download processing unit 24da starts to return from the currently uploaded Segment [N] in response to the live video acquisition request (HTTP_GET) from the video viewing terminal 30. Instead, the connection is temporarily suspended, and the segment [N + 1] is viewed after receiving the notification that the upload processing unit 23 (FIGS. 11 and 12) is generated when the Segment [N + 1] starts to be uploaded. Returning to the terminal 30 starts. Thereby, the time difference between the timing at which the video transmission terminal 10a starts to upload the beginning of Segment [N + 1] and the timing at which the video viewing terminal 30 starts to download the beginning of Segment [N + 1] becomes extremely small.

さらに、映像視聴端末30が極短時間のバッファリングのみを行い、再生を開始することにより、映像送信端末10aが直前に送信したデータは、映像視聴端末30で直ぐに再生される状態になる。つまり、本実施形態の配信システム1(図1)は、低遅延再生が実現される。また、本実施形態の配信システム1は、配信サーバ20dのみの工夫により、映像視聴端末30の再生開始のタイミングをコントロールしている。このため、映像視聴端末30は従来と同様の再生クライアントを使うことができる。   Furthermore, when the video viewing terminal 30 performs only extremely short buffering and starts reproduction, the data transmitted immediately before by the video transmission terminal 10a is immediately reproduced by the video viewing terminal 30. That is, the delivery system 1 (FIG. 1) of the present embodiment realizes low delay reproduction. In addition, the distribution system 1 of the present embodiment controls the timing of starting the reproduction of the video viewing terminal 30 by using only the distribution server 20d. For this reason, the video viewing terminal 30 can use a reproduction client similar to the conventional one.

(第5実施形態)
前記第4実施形態の配信サーバ20daは、映像視聴端末30から配信要求(HTTP_GET)を受信すると、直ちに、返信(200_OK)を行い、次のSegment[N+1]が記憶装置22に生成されるまで、待機していたが、配信要求(HTTP_GET)を受信し、次のSegment[N+1]が記憶装置22に生成されてから、返信(200_OK)を行うこともできる。
(Fifth embodiment)
When the distribution server 20da of the fourth embodiment receives a distribution request (HTTP_GET) from the video viewing terminal 30, it immediately replies (200_OK), and the next Segment [N + 1] is generated in the storage device 22. It is possible to reply (200_OK) after receiving the distribution request (HTTP_GET) and generating the next Segment [N + 1] in the storage device 22.

図15(a)は本発明の第5実施形態である配信サーバの機能であるダウンロード処理部の動作を示すフローチャートであり、図15(b)は映像視聴端末の主制御部の動作を示すフローチャートである。なお、アップロード処理部23dの動作は、図12のフローチャートと同一である。また、本実施形態の配信システムの構成図は、図11と同様であり、配信サーバ20daが、配信サーバ20dbに変更され、ダウンロード処理部24daがダウンロード処理部24dbに変更されている。   FIG. 15A is a flowchart showing the operation of the download processing unit which is the function of the distribution server according to the fifth embodiment of the present invention, and FIG. 15B is a flowchart showing the operation of the main control unit of the video viewing terminal. It is. The operation of the upload processing unit 23d is the same as that in the flowchart of FIG. The configuration diagram of the distribution system of the present embodiment is the same as that of FIG. 11, the distribution server 20da is changed to the distribution server 20db, and the download processing unit 24da is changed to the download processing unit 24db.

ダウンロード処理部24(24db)は、Segment_List41(図11)から最新のSegmentを取得し、それをSegment[N]とする(S71)。ダウンロード処理部24dbは、変数iをNに設定する(S72)。映像視聴端末30の主制御部32は、HTTP_Client31(図2)を介して、対象ファイルについての配信要求(HTTP_GET)を行う(S91)。そして、ダウンロード処理部24dbは、映像視聴端末30からの対象ファイルのダウンロード要求を受信する(S73)。   The download processing unit 24 (24db) acquires the latest Segment from the Segment_List 41 (FIG. 11) and sets it as Segment [N] (S71). The download processing unit 24db sets the variable i to N (S72). The main control unit 32 of the video viewing terminal 30 makes a distribution request (HTTP_GET) for the target file via the HTTP_Client 31 (FIG. 2) (S91). Then, the download processing unit 24db receives a request for downloading the target file from the video viewing terminal 30 (S73).

次に、ダウンロード処理部24dbは、変数iを1つ増加する演算(i=i+1)を行い(S76)、Segment[i]が記憶装置22に生成されるまで待機する(S77)。そして、ダウンロード処理部24dbは、アップロード処理部23dからSegment[i]が記憶装置22に生成されたことを示すシグナルを受信し、Segment[i]が記憶装置22に生成されたと認識する(S78)。次に、ダウンロード処理部24dbは、変数iが(N+1)になっているか否かの判定を行う(S79)。   Next, the download processing unit 24db performs an operation (i = i + 1) to increase the variable i by 1 (S76), and waits until Segment [i] is generated in the storage device 22 (S77). Then, the download processing unit 24db receives a signal indicating that Segment [i] is generated in the storage device 22 from the upload processing unit 23d, and recognizes that Segment [i] is generated in the storage device 22 (S78). . Next, the download processing unit 24db determines whether or not the variable i is (N + 1) (S79).

変数iが(N+1)になっていれば(S79でYes)、ダウンロード処理部24dbは、映像視聴端末30にレスポンス(200_OK)を返す(S80)。つまり、映像視聴端末30の主制御部32は、配信要求(S91)に対する応答を受信することになる(S93)。   If the variable i is (N + 1) (Yes in S79), the download processing unit 24db returns a response (200_OK) to the video viewing terminal 30 (S80). That is, the main control unit 32 of the video viewing terminal 30 receives a response to the distribution request (S91) (S93).

ダウンロード処理部24dbは、映像視聴端末30にレスポンス(200_OK)を返したり(S80)、S79の判定で、変数iが(N+1)になっていたりしなければ(S79でNo)、Segment[i]を記憶装置22から読み出しつつ、映像視聴端末30にダウンロードさせ(S81)、Segment[i]のダウンロードが完了する(S82)。ここで、映像視聴端末30の主制御部32は、Segment[i]をTS_Demuxer33(図2)に入力しつつ(S94)、Segment[i]を全て処理するまでS94の処理に戻す(S95)。ここで、ダウンロードは、Segmentのアップロードに合わせて、長時間続くものであるので、映像視聴端末30は、ダウンロード、Demux、デコード、及び再生を平行して実行するストリーミング再生を行う必要がある。   The download processing unit 24db returns a response (200_OK) to the video viewing terminal 30 (S80), or if the variable i is not (N + 1) in the determination of S79 (No in S79), the Segment [ i] is read from the storage device 22 and downloaded to the video viewing terminal 30 (S81), and the download of Segment [i] is completed (S82). Here, the main control unit 32 of the video viewing terminal 30 inputs the Segment [i] to the TS_Demuxer 33 (FIG. 2) (S94), and returns to the processing of S94 until all the Segment [i] are processed (S95). Here, since the download lasts for a long time in accordance with the upload of the Segment, the video viewing terminal 30 needs to perform streaming playback that executes download, Demux, decoding, and playback in parallel.

図16は、本発明の第5実施形態であるコンテンツ配信システムのシーケンス図である。
図16のシーケンス図は、図14のシーケンス図に比較して、Segment[N+1]のダウンロード直前にHTTP_GETに対する応答(200_OK)が実行されている点で相違する。
FIG. 16 is a sequence diagram of the content distribution system according to the fifth embodiment of the present invention.
The sequence diagram of FIG. 16 is different from the sequence diagram of FIG. 14 in that a response (200_OK) to HTTP_GET is executed immediately before Segment [N + 1] is downloaded.

(第6実施形態)
前記1,2,3実施形態のコンテンツ配信システムは、HLSのプロトコルを前提にしていたが、TS(MPEG2_Transport_Stream)を前提にすることができる。このため、本実施形態の映像送信端末10は、配信サーバ20に対して、セグメントに分割した送信を行わない。
(Sixth embodiment)
The content distribution system of the first, second, and third embodiments is based on the HLS protocol, but can be based on TS (MPEG2_Transport_Stream). For this reason, the video transmission terminal 10 of the present embodiment does not perform transmission divided into segments to the distribution server 20.

図17は、本発明の第6実施形態である映像送信端末、配信サーバ、及び映像視聴端末の内部構成図である。
本実施形態の映像送信端末10eは、前記各実施形態の映像送信端末10a(図2)に比較して、Segmenter14が削除されている点で相違する。また、本実施形態の配信サーバ20eの制御部25eは、配信サーバ20aの制御部25a(図2)に比較して、TS解析部44を備え、エラー処理部28aがエラー処理部28bに変更されている点で相違する。また、本実施形態の配信サーバ20eの記憶装置22は、配信サーバ20aの記憶装置22(図2)に比較して、Segment26の代わりに、TSファイル42を格納し、Play_List27の代わりにKeyFrame_List43を格納している点で相違する。
FIG. 17 is an internal configuration diagram of a video transmission terminal, a distribution server, and a video viewing terminal according to the sixth embodiment of the present invention.
The video transmission terminal 10e of this embodiment is different from the video transmission terminal 10a (FIG. 2) of each of the above embodiments in that the Segmenter 14 is deleted. Further, the control unit 25e of the distribution server 20e according to the present embodiment includes a TS analysis unit 44 as compared with the control unit 25a (FIG. 2) of the distribution server 20a, and the error processing unit 28a is changed to the error processing unit 28b. Is different. Further, the storage device 22 of the distribution server 20e of the present embodiment stores the TS file 42 instead of the Segment 26 and stores the KeyFrame_List 43 instead of the Play_List 27, as compared with the storage device 22 (FIG. 2) of the distribution server 20a. Is different.

TSファイル42は、複数のKeyFrame(I-Picture)を有するコンテンツのファイルである。ここで、任意のKeyFrameから次のKeyFrameの前までのデータは、一般的には、GOP(Groupe Of Picture)を意味する。このGOPは、最低1つのI-Pictureを含む複数のPictureからなるデータ集合のことであるが、ここでは、1つのI-Pictureが先頭に配置されているものとする。   The TS file 42 is a content file having a plurality of KeyFrames (I-Pictures). Here, data from an arbitrary KeyFrame to the previous KeyFrame generally means GOP (Groupe Of Picture). This GOP is a data set made up of a plurality of pictures including at least one I-Picture. Here, it is assumed that one I-Picture is arranged at the head.

TS解析部44は、TSファイル42を受信したときに、KeyFrameの位置(例えば、ファイルの先頭からのbyte数)を解析するものである。KeyFrame_List43は、KeyFrameの位置が記載されたテーブルであり、KeyFrameを受信する毎に、その位置情報が追記される。   The TS analysis unit 44 analyzes the position of the KeyFrame (for example, the number of bytes from the beginning of the file) when the TS file 42 is received. The KeyFrame_List 43 is a table in which the position of the KeyFrame is described, and the position information is added every time the KeyFrame is received.

図18は、本発明の第6実施形態である配信サーバの機能であるアップロード処理部の動作を示すフローチャートである。
アップロード処理部23eは、変数iをi=0に設定し(S101)、受信する「TS」を追記していくTSファイルを記憶装置22に生成する(S102)。そして、アップロード処理部23eは、映像送信端末10が送信する「TS」の断片を受信すると(S103)、TS解析部44に「TS」の解析を行わせる(S104)。ここでの「TS」の断片とは、1回の受信で受信できたByte単位のデータであり、TSフォーマット上の何らかの単位を意味しない。
FIG. 18 is a flowchart showing the operation of the upload processing unit which is the function of the distribution server according to the sixth embodiment of the present invention.
The upload processing unit 23e sets the variable i to i = 0 (S101), and generates a TS file in which the received “TS” is additionally written in the storage device 22 (S102). Then, upon receiving the “TS” fragment transmitted by the video transmission terminal 10 (S103), the upload processing unit 23e causes the TS analysis unit 44 to analyze “TS” (S104). Here, the “TS” fragment is Byte-unit data that can be received by one reception, and does not mean any unit on the TS format.

アップロード処理部23eは、TS解析部44の解析結果により、KeyFrame を発見したか否かを判別する(S105)。KeyFrame を発見したのであれば(S105でYes)、アップロード処理部23eは、KeyFrame List43にKeyFrame[i](=KeyFrame[0])の位置を追記する(S106)。このとき、アップロード処理部23eは、ダウンロード処理部24dにシグナルを送信する。次いで、アップロード処理部23eは、変数iを1増加させ、i=i+1に設定する(S107)。   The upload processing unit 23e determines whether a KeyFrame has been found based on the analysis result of the TS analysis unit 44 (S105). If a KeyFrame has been found (Yes in S105), the upload processing unit 23e adds the position of KeyFrame [i] (= KeyFrame [0]) to the KeyFrame List 43 (S106). At this time, the upload processing unit 23e transmits a signal to the download processing unit 24d. Next, the upload processing unit 23e increments the variable i by 1 and sets i = i + 1 (S107).

S105において、KeyFrameを発見しなかった場合(S105でNo)、あるいは、S108の処理後、アップロード処理部23eは、受信した「TS」の断片をTSファイル42に追記する(S108)。   If the KeyFrame is not found in S105 (No in S105), or after the processing of S108, the upload processing unit 23e adds the received “TS” fragment to the TS file 42 (S108).

そして、アップロード処理部23eは、S103の処理に戻り、次の「TS」の断片の受信を待ち、同様の処理を繰り返す。つまり、アップロード処理部23eは、この処理を繰り返すことにより、KeyFrame[2],KeyFrame[3],・・・の位置の解析、KeyFrame_List43への追記(S106)、及びコンテンツの追記(S108)を繰り返す。なお、アップロード処理部23eは、アップロードリクエスト(HTTP_PUT)が終了したときにアップロードを終了する。   Then, the upload processing unit 23e returns to the process of S103, waits for the reception of the next “TS” fragment, and repeats the same process. That is, by repeating this process, the upload processing unit 23e repeats the analysis of the position of KeyFrame [2], KeyFrame [3],..., The addition to KeyFrame_List 43 (S106), and the addition of content (S108). . Note that the upload processing unit 23e ends the upload when the upload request (HTTP_PUT) ends.

図19(a)は本発明の第6実施形態である配信サーバの機能であるダウンロード処理部の動作を示すフローチャートであり、図19(b)は映像視聴端末の主制御部の動作を示すフローチャートである。
ダウンロード処理部24eは、KeyFrame_List43から最新のKeyFrameを調べる。(S111)。そして、ダウンロード処理部24eは、最新のKeyFrameがN番目のKeyFrameであれば、変数iをi=Nに設定する(S112)。
FIG. 19A is a flowchart showing the operation of the download processing unit which is the function of the distribution server according to the sixth embodiment of the present invention, and FIG. 19B is a flowchart showing the operation of the main control unit of the video viewing terminal. It is.
The download processing unit 24 e checks the latest KeyFrame from the KeyFrame_List 43. (S111). If the latest KeyFrame is the Nth KeyFrame, the download processing unit 24e sets the variable i to i = N (S112).

ダウンロード処理部24eは、映像視聴端末30から対象ファイルについて配信要求(HTTP_GET)を受信する(S113)。このとき、映像視聴端末30の主制御部32は、HTTP_Client31(図17)を介して、配信要求を配信サーバ20e(図17)に送信している。そして、ダウンロード処理部24eは、変数iを1つ増加し、i=i+1に設定し(S114)、TSファイル42にKeyFrame[i]=KeyFrame[N+1]の生成が開始されるまで待機する(S115)。さらに、アップロード処理部23eからのシグナル受信により、TSファイル42にKeyFrame[i]から始まるコンテンツ(例えば、GOP[N+1](図20参照))が追記される(S116)。   The download processing unit 24e receives a distribution request (HTTP_GET) for the target file from the video viewing terminal 30 (S113). At this time, the main control unit 32 of the video viewing terminal 30 transmits a distribution request to the distribution server 20e (FIG. 17) via the HTTP_Client 31 (FIG. 17). Then, the download processing unit 24e increments the variable i by 1 and sets i = i + 1 (S114) until generation of KeyFrame [i] = KeyFrame [N + 1] in the TS file 42 is started. Wait (S115). Furthermore, content (for example, GOP [N + 1] (see FIG. 20)) starting from KeyFrame [i] is added to the TS file 42 by receiving a signal from the upload processing unit 23e (S116).

ダウンロード処理部24eは、映像視聴端末30に応答(200_OK)を返し(S118)、KeyFrame_List43に記述されたKeyFrame[i]=KeyFrame[N+1]から始まるコンテンツをTSファイル42から読み出しつつ、映像視聴端末30にダウンロードさせる(S119)。   The download processing unit 24e returns a response (200_OK) to the video viewing terminal 30 (S118), and reads the content starting from KeyFrame [i] = KeyFrame [N + 1] described in the KeyFrame_List 43 from the TS file 42 while viewing the video. The terminal 30 is downloaded (S119).

このとき、映像視聴端末30の制御部32は、S220の配信要求(HTTP_GET)に対する配信サーバ20からの応答(200_OK)を受信し(S222)、コンテンツをTS_Demuxer33に入力し(S223)、再生を行う。そして、ダウンロード処理部24eは、KeyFrame_List43に記述された KeyFrame[N+1]から始まるコンテンツのダウンロードが完了する。   At this time, the control unit 32 of the video viewing terminal 30 receives a response (200_OK) from the distribution server 20 to the distribution request (HTTP_GET) in S220 (S222), inputs the content to the TS_Demuxer 33 (S223), and performs reproduction. . Then, the download processing unit 24e completes the download of the content starting from KeyFrame [N + 1] described in KeyFrame_List 43.

映像視聴端末30の制御部32は、 KeyFrame[N+1]から始まるコンテンツを全て処理し終えたら、ダウンロードが完了する(S224)。   When the control unit 32 of the video viewing terminal 30 has processed all the content starting from KeyFrame [N + 1], the download is completed (S224).

これらの処理により、KeyFrame[N+1]以上のコンテンツのダウンロードが行われる。   By these processes, the content of KeyFrame [N + 1] or more is downloaded.

図20は、本発明の第6実施形態であるコンテンツ配信システムのシーケンス図である。
本実施形態の配信システムのシーケンス図は、図7のシーケンス図に比較して、映像送信端末10と配信サーバ20との間の送受信が、Segment[N],Segment[N+1],・・・の送受信からKeyFrame[N],KeyFrame[N+1],KeyFrame[N+2],・・・から始まるコンテンツのTS送信になり、HTTP_PUTリクエストやHTTP_STATUS_200_OKレスポンスが削除されている点で相違する。
FIG. 20 is a sequence diagram of the content distribution system according to the sixth embodiment of the present invention.
Compared with the sequence diagram of FIG. 7, the sequence diagram of the distribution system of the present embodiment transmits and receives between the video transmission terminal 10 and the distribution server 20, Segment [N], Segment [N + 1],. The transmission / reception is changed to TS transmission of content starting from KeyFrame [N], KeyFrame [N + 1], KeyFrame [N + 2],..., And the HTTP_PUT request and HTTP_STATUS_200_OK response are deleted.

また、映像視聴端末30が配信サーバ20eに行う配信要求(HTTP_GETリクエスト)は、「Segmentの配信要求」ではなく、再生を行う「対象ファイルの配信要求」(T1,T2)である。また、映像視聴端末30は、配信サーバ20eに対して行う2回目以降の配信要求(HTTP_GETリクエスト)、及びこの配信終了を示すレスポンスが削除されている。   The distribution request (HTTP_GET request) that the video viewing terminal 30 makes to the distribution server 20e is not the “Segment distribution request” but the “target file distribution request” (T1, T2) for reproduction. Also, the video viewing terminal 30 deletes the second and subsequent distribution requests (HTTP_GET request) to the distribution server 20e and the response indicating the end of distribution.

つまり、配信サーバ20eは、コンテンツを映像送信端末10eからTS受信するときに、KeyFrameの位置の解析を逐次行い、解析を行ったKeyFrame(KeyFrame[N],KeyFrame[N+1],KeyFrame[N+2],・・・)から始まるコンテンツ(例えば、GOP[N],GOP[N+1],GOP[N+2],・・・)を記憶装置22のTSファイル42に追記する。言い換えれば、映像送信端末10eは、配信サーバ20eに対して、KeyFrame[N],KeyFrame[N+1],KeyFrame[N+2],・・・から始まるコンテンツのTS送信(配信,アップロード)を逐次行っているように見える。なお、配信サーバ20eは、KeyFrame[N],KeyFrame[N+1],KeyFrame[N+2],・・・から始まるコンテンツのTS受信(アップロード)終了毎に、映像送信端末10eに対して「TS受信完了通知」をそれぞれ行っている。   That is, the distribution server 20e sequentially analyzes the position of the KeyFrame when receiving content from the video transmission terminal 10e, and the analyzed KeyFrame (KeyFrame [N], KeyFrame [N + 1], KeyFrame [N +2],...) (For example, GOP [N], GOP [N + 1], GOP [N + 2],...) Are added to the TS file 42 of the storage device 22. In other words, the video transmission terminal 10e performs TS transmission (distribution, upload) of content starting from KeyFrame [N], KeyFrame [N + 1], KeyFrame [N + 2], ... to the distribution server 20e. It seems to be going sequentially. Note that the distribution server 20e notifies the video transmission terminal 10e that “TS” (upload) of content starting from KeyFrame [N], KeyFrame [N + 1], KeyFrame [N + 2],. “TS reception completion notification” is performed.

一方、映像視聴端末30は、配信サーバ20eに対して、対象ファイルの配信要求(HTTP_GET)を行う。配信サーバ20eは、対象ファイルの配信要求がKeyFrame[N]の受信時であれば、その受信完了まで待機し、次のKeyFrame[N+1]の受信時に、200_OKレスポンスを映像視聴端末30に送信する。映像視聴端末30は、200_OKレスポンスの受信により、KeyFrame[N+1],KeyFrame[N+2],・・・から始まるコンテンツの受信(ダウンロード)及び再生を逐次行う。   On the other hand, the video viewing terminal 30 makes a target file distribution request (HTTP_GET) to the distribution server 20e. If the distribution request for the target file is when KeyFrame [N] is received, the distribution server 20e waits until the reception is completed, and transmits a 200_OK response to the video viewing terminal 30 when the next KeyFrame [N + 1] is received. To do. Upon receiving the 200_OK response, the video viewing terminal 30 sequentially receives (downloads) and reproduces content starting from KeyFrame [N + 1], KeyFrame [N + 2],.

以上説明したように、本実施形態の配信サーバ20eは、映像視聴端末30からのライブ映像取得要求(HTTP_GET)に対して、現在の最新のKeyFrameから返しはじめるのではなく、接続をいったん保留して、KeyFrame[N+1]が検出されるタイミングでアップロード処理部23eが出力する通知を待ち、その通知を受けてからKeyFrame[N+1]で示される位置からTSファイルを返し始める。これにより、映像送信端末10eがKeyFrame[N+1]に対応するデータをアップロードし始めるタイミングと、映像視聴端末30がKeyFrame[N+1]に対応するデータをダウンロードし始めるタイミングとの時間差が極めて小さくなる。   As described above, the distribution server 20e of the present embodiment does not start returning from the current latest KeyFrame in response to a live video acquisition request (HTTP_GET) from the video viewing terminal 30, but temporarily holds the connection. At the timing when KeyFrame [N + 1] is detected, it waits for the notification output by the upload processing unit 23e, and after receiving the notification, starts to return the TS file from the position indicated by KeyFrame [N + 1]. Thereby, the time difference between the timing at which the video transmission terminal 10e starts to upload data corresponding to KeyFrame [N + 1] and the timing at which the video viewing terminal 30 starts to download data corresponding to KeyFrame [N + 1] is extremely large. Get smaller.

さらに、映像視聴端末30は、極短時間のバッファリングのみをして、再生を開始することにより、映像送信端末10eが直前に送信したデータが、映像視聴端末30で直ぐに再生される状態になる。つまり、本実施形態の配信システム1は、低遅延再生が実現される。   Furthermore, the video viewing terminal 30 starts reproduction by performing only buffering for a very short time, so that the data transmitted immediately before by the video transmission terminal 10e is immediately reproduced by the video viewing terminal 30. . That is, the delivery system 1 of the present embodiment realizes low delay reproduction.

(第7実施形態)
図21は、本発明の第7実施形態である映像送信端末、配信サーバ、及び映像視聴端末の内部構成図である。
配信サーバ20f(図21)は、配信サーバ20e(図17)に比較して、ビデオカメラ11、及び映像送信端末10eが削除されており、配信サーバ20fにVideo_Source16が接続されている点で相違する。このため、配信サーバ20fは、Video_Source16がVideo_Encoder12、TS_Muxer13、及びSegmenter14を介して、映像信号を入力する入力処理部23bを備えている点でも相違する。また、配信サーバ20fは、Segmenter14の出力が入力処理部23bの入力に接続されており、HTTP_Client15、及びHTTP_Server21を介していない点でも相違する。
(Seventh embodiment)
FIG. 21 is an internal configuration diagram of a video transmission terminal, a distribution server, and a video viewing terminal according to the seventh embodiment of the present invention.
The distribution server 20f (FIG. 21) is different from the distribution server 20e (FIG. 17) in that the video camera 11 and the video transmission terminal 10e are deleted and the Video_Source 16 is connected to the distribution server 20f. . For this reason, the distribution server 20f is also different in that the Video_Source 16 includes an input processing unit 23b that inputs a video signal via the Video_Encoder 12, the TS_Muxer 13, and the Segmenter 14. The distribution server 20f is also different in that the output of the Segmenter 14 is connected to the input of the input processing unit 23b and does not go through the HTTP_Client 15 and the HTTP_Server 21.

Video_Source16は、ビデオコンテンツが格納されたDVD(Digital_Versatile_Disc)やHDD(Hard_Disk_Drive)等であり、MPEGデータを出力する。Video_Encoder12、TS_Muxer13は、第1実施形態で説明しているので、説明を省略する。Segmenter14は、TS_Muxer13が出力した映像信号をKeyFrame(I-Picture)から始まるコンテンツ毎に分割する点で、第1実施形態と相違する。   Video_Source 16 is a DVD (Digital_Versatile_Disc), HDD (Hard_Disk_Drive) or the like in which video content is stored, and outputs MPEG data. Since Video_Encoder 12 and TS_Muxer 13 have been described in the first embodiment, description thereof will be omitted. The Segmenter 14 is different from the first embodiment in that the video signal output from the TS_Muxer 13 is divided for each content starting from KeyFrame (I-Picture).

入力処理部23bは、分割されたKeyFrameから始まるコンテンツを連結しつつTSファイル42に格納する。また、入力処理部23bは、それぞれのKeyFrameデータのKeyFrameの位置が記載されるKeyFrame_List43を記憶装置22に生成し、KeyFrameが入力される毎にKeyFrameの位置を追記する。   The input processing unit 23b concatenates contents starting from the divided KeyFrame and stores them in the TS file 42. Further, the input processing unit 23b generates a KeyFrame_List 43 in which the position of the KeyFrame of each KeyFrame data is described in the storage device 22, and adds the position of the KeyFrame every time the KeyFrame is input.

ダウンロード処理部24aは、KeyFrame_List43の位置情報に基づいて、記憶装置22のTSファイル42からKeyFrameから始まるコンテンツ毎に読み出して、読み出したコンテンツをHTTP_Server21に引き渡す。   Based on the position information of the KeyFrame_List 43, the download processing unit 24a reads each content starting from the KeyFrame from the TS file 42 of the storage device 22, and delivers the read content to the HTTP_Server 21.

図22は、本発明の第7実施形態の他の利用形態である映像送信端末、配信サーバ、及び映像視聴端末の内部構成図である。
配信サーバ20gは、配信サーバ20f(図21)に比較して、Segmenter14が削除され、TS_Muxer13が出力するTS信号(KeyFrameから始まるコンテンツ)が入力処理部23bに入力されている。また、配信サーバ20gは、入力処理部23bに接続されるTS解析部44を備え、TS解析部44がKeyFrameから始まるコンテンツ毎にKeyFrameの位置を解析する。
FIG. 22 is an internal configuration diagram of a video transmission terminal, a distribution server, and a video viewing terminal, which are other usage modes of the seventh embodiment of the present invention.
Compared to the distribution server 20f (FIG. 21), the distribution server 20g has the Segmenter 14 deleted, and the TS signal (content starting with KeyFrame) output from the TS_Muxer 13 is input to the input processing unit 23b. The distribution server 20g includes a TS analysis unit 44 connected to the input processing unit 23b, and the TS analysis unit 44 analyzes the position of the KeyFrame for each content starting from the KeyFrame.

(比較例)
図23は、比較例のアップロード処理部の動作を示すフローチャートであり、図24は、比較例のダウンロード処理部の動作を示すフローチャートである。同一符号を付したものは、前記実施形態と同様の装置であり、同様の処理を実行する。図23,24は、第1実施形態の動作を示すフローチャートである図4、及び図5(a)と比較するための図である。この比較例では、配信サーバ20aは、配信サーバ20f(図25参照)に変更されているが、映像視聴端末30の内部構成は、前記第1実施形態の内部構成と同一である。
(Comparative example)
FIG. 23 is a flowchart showing the operation of the upload processing unit of the comparative example, and FIG. 24 is a flowchart showing the operation of the download processing unit of the comparative example. Components with the same reference numerals are the same devices as those in the above-described embodiment, and execute similar processing. FIGS. 23 and 24 are diagrams for comparison with FIGS. 4 and 5A, which are flowcharts showing the operation of the first embodiment. In this comparative example, the distribution server 20a is changed to the distribution server 20f (see FIG. 25), but the internal configuration of the video viewing terminal 30 is the same as the internal configuration of the first embodiment.

図23のアップロード処理部23fの動作を示すフローチャートは、図4と比較して、S12に相当するものが無く、S17の「Play_ListにSegment[i+1]を追記する。」がS47では、「Play_ListにSegment[i]を追記する。」に変更されている。つまり、S46において、Segment[-1+1]=Segment[0]が生成されると、S47において、Play_List27に、S48で受信と同時に格納されるSegment[0]のURLがPlay_List27に追記される。そのため、作成されていないSegmentのURLがPlay_List27に追記されることがないので、図4に示すように、ダウンロード処理部に対してシグナル信号を送信しなくても、HTTP_Status_404_Not_Found等のエラーとなることがない。   The flowchart showing the operation of the upload processing unit 23f in FIG. 23 has nothing equivalent to S12 in comparison with FIG. 4, and “Add Segment [i + 1] to Play_List” in S17 is “ "Segment [i] is added to Play_List." That is, when Segment [-1 + 1] = Segment [0] is generated in S46, the URL of Segment [0] stored simultaneously with reception in S48 is added to Play_List27 in S47. Therefore, since the URL of the segment that has not been created is not added to the Play_List 27, an error such as HTTP_Status_404_Not_Found may occur even if a signal signal is not transmitted to the download processing unit as shown in FIG. Absent.

図24のダウンロード処理部24fのフローチャートは、図5(a)と比較して、S23,S24に相当する処理が無い。つまり、ダウンロード処理部24dは、Play_List27の送信要求を映像視聴端末30から受信すると、S48で格納中のSegment[i]のURLが追記されたPlay_List27を映像視聴端末30に送信する(S51)。ダウンロード処理部24dは、映像視聴端末30からSegment[i]のダウンロード要求(配信要求)を受信すると(S52)、待機することなく直ちに、映像視聴端末30にレスポンス(200_OK)を返し(S55)、Segment[i]を記憶装置22から読み出しつつ、映像視聴端末30にダウンロードさせる(S56)。そして、映像視聴端末30は、ダウンロードしたSegment[i]を表示パネル37に表示させる。   Compared with FIG. 5A, the flowchart of the download processing unit 24f in FIG. 24 does not have processes corresponding to S23 and S24. In other words, when the download processing unit 24d receives a transmission request for Play_List 27 from the video viewing terminal 30, the download processing unit 24d transmits Play_List 27 to which the URL of the Segment [i] stored in S48 is added to the video viewing terminal 30 (S51). When receiving the download request (distribution request) for Segment [i] from the video viewing terminal 30 (S52), the download processing unit 24d immediately returns a response (200_OK) to the video viewing terminal 30 without waiting (S55). The segment [i] is read from the storage device 22 and downloaded to the video viewing terminal 30 (S56). Then, the video viewing terminal 30 displays the downloaded Segment [i] on the display panel 37.

ここで、ダウンロード処理部24fは、待機することなく直ちに、映像視聴端末30にレスポンス(200_OK)を返すので、直ちにSegment[i]の最初(0秒目)から読み出すことになる。ダウンロード処理部24dは、Segment[i]の全てをダウンロードしたら、処理が完了する(S57)。   Here, since the download processing unit 24f immediately returns a response (200_OK) to the video viewing terminal 30 without waiting, the download processing unit 24f immediately reads from the beginning (0 second) of Segment [i]. The download processing unit 24d completes the process after downloading all of the Segment [i] (S57).

図25は、比較例のコンテンツ配信システムのシーケンス図である。
以下、図23,24のフローチャートを参照しつつ、コンテンツ配信システムのシーケンスを説明する。
配信サーバ20fは、Sement[N+1]をアップロードしているときに(S48)、映像視聴端末30からPlay_List27の送信要求(HTTP_GET)を受信すると、Segment[N+1]までのURLが記述されたPlay_List27を映像視聴端末30に送信する(S51)。
FIG. 25 is a sequence diagram of the content distribution system of the comparative example.
Hereinafter, the sequence of the content distribution system will be described with reference to the flowcharts of FIGS.
When the distribution server 20f uploads Sement [N + 1] (S48) and receives a Play_List27 transmission request (HTTP_GET) from the video viewing terminal 30, the URL up to Segment [N + 1] is described. The Play_List 27 is transmitted to the video viewing terminal 30 (S51).

そして、配信サーバ20aがSegment[N+1]をアップロードしているときに(S48)、映像視聴端末30は、Segment[N+1]の配信要求(例えば、HTTP_GETリクエスト(T4))を配信サーバ20dに送信する。これにより、配信サーバ20dは、レスポンス(例えば、200_OK(T5))を直ちに映像視聴端末30に返し(S55)、記憶装置22からSegment[N+1]を読み出して映像視聴端末30にダウンロードさせ(S56)、ダウンロードが完了する(S57)。そして、映像視聴端末30は、Segment[N+1]の配信要求に対するレスポンス(200_OK(T5))の受信により、Segment[N+1]を受信しつつ、これを再生する。   When the distribution server 20a uploads the Segment [N + 1] (S48), the video viewing terminal 30 sends a distribution request (eg, HTTP_GET request (T4)) of the Segment [N + 1] to the distribution server. To 20d. Thereby, the distribution server 20d immediately returns a response (for example, 200_OK (T5)) to the video viewing terminal 30 (S55), reads Segment [N + 1] from the storage device 22, and downloads it to the video viewing terminal 30 ( The download is completed (S57). Then, the video viewing terminal 30 receives the response [200_OK (T5)) to the segment [N + 1] distribution request, and reproduces the segment [N + 1] while receiving the segment [N + 1].

このSegment[N+1]のダウンロード、及び再生は、Segment[N+1]の最初(0秒目)から実行される。つまり、ダウンロードは、ネットワーク速度が十分であれば、アップロードされている部分を短時間で取得できるものの、Videoデータは各Segmentの先頭から再生を始める必要があるため、Segment[N+2]のアップロード時間に入っても、Segment[N+1]の再生が継続している。   The download and playback of the Segment [N + 1] is executed from the beginning (0 second) of the Segment [N + 1]. In other words, if the network speed is sufficient for downloading, the uploaded part can be acquired in a short time, but the Video data needs to start playing from the beginning of each Segment, so uploading Segment [N + 2] Even after the time, Segment [N + 1] continues to play.

したがって、Segment[N+2]のアップロード時間に入っても、Segment[N+1]の再生が継続しており、Segment[N+1]の再生時間からSegment[N+1]の配信要求とSegment[N+2]のアップロード開始との間の時間を減算した時間の再生遅延が発生する。つまり、Segment[N+2]のアップロード開始から再生開始までの遅延時間Tが発生する。また、この再生遅延は、Segment[N+3]以降も継続する。   Therefore, even when the upload time of Segment [N + 2] is entered, the playback of Segment [N + 1] continues, and the distribution request for Segment [N + 1] is determined from the playback time of Segment [N + 1]. A playback delay of the time obtained by subtracting the time from the upload start of Segment [N + 2] occurs. That is, there is a delay time T from the start of uploading Segment [N + 2] to the start of playback. Also, this reproduction delay continues after Segment [N + 3].

図26は、比較例の配信サーバによるセグメントの配信状態を示す図であり、映像送信端末10がN番目のSegment[N]をアップロードし終え、Segment[N+1]の6秒目までをアップロードしているときの状態を実線で示している。比較例の配信サーバ20d、及び映像視聴端末30は、Segment[N+1]の最初(0秒目)からダウンロード、及び再生を行う。なお、各Segmentの時間幅は10秒とする。   FIG. 26 is a diagram illustrating a segment distribution state by the distribution server of the comparative example, in which the video transmission terminal 10 finishes uploading the Nth Segment [N] and uploads up to the sixth second of Segment [N + 1]. The state at the time of doing is shown by the continuous line. The distribution server 20d and the video viewing terminal 30 of the comparative example download and play back from the beginning (0 second) of Segment [N + 1]. The duration of each segment is 10 seconds.

一方、第1実施形態では、図7、及び図8を用いて説明したように、配信サーバ20aがSegment[N+2]のダウンロード処理を開始したときに、映像視聴端末30は、Segment[N+2]の最初(0秒目)から再生を開始するので、遅延時間T(図25)が生じない。   On the other hand, in the first embodiment, as described with reference to FIGS. 7 and 8, when the distribution server 20 a starts the download process of Segment [N + 2], the video viewing terminal 30 receives the Segment [N Since the reproduction is started from the beginning (0 second) of +2], the delay time T (FIG. 25) does not occur.

(変形例)
本発明は前記した実施形態に限定されるものではなく、例えば以下のような種々の変形が可能である。
(1)前記第1実施形態のコンテンツ配信システム1は、映像送信端末10で生成される TS には、Videoが存在することを前提にしているが、Audioのみのデータの場合も有効な場合がある。その場合、映像視聴端末30は、Audioのみのコンテンツを再生する端末となるが、常にSegmentの先頭から再生する場合は、本発明の課題と同様の課題が発生するため、本発明を適用できる。
(Modification)
The present invention is not limited to the embodiments described above, and various modifications such as the following are possible.
(1) The content distribution system 1 of the first embodiment is based on the premise that a video is present in a TS generated by the video transmission terminal 10, but it may be effective for audio-only data. is there. In this case, the video viewing terminal 30 is a terminal that reproduces audio-only content. However, since the same problem as the problem of the present invention occurs when always reproducing from the beginning of the segment, the present invention can be applied.

(2)前記第1実施形態は、HLSを前提としていた。しかしながら、本発明の前提となるプロトコルはHLSに限定されるものではない。 (2) The first embodiment is based on HLS. However, the protocol on which the present invention is based is not limited to HLS.

(3)前記実施形態は、アップロード処理部、及びダウンロード処理部を配信サーバに備えるように構成したが、アップロード処理部をアップロードサーバとし、ダウンロード処理部をダウンロードサーバとして別個独立したサーバとすることもできる。この場合のコンテンツ配信システムは、アップロード処理部がダウンロード処理部に送信するシグナル(図4のS16、図5のS24)はネットワークを介して送信することになる。 (3) In the above embodiment, the distribution server includes the upload processing unit and the download processing unit. However, the upload processing unit may be an upload server and the download processing unit may be a separate and independent server. it can. In the content distribution system in this case, signals (S16 in FIG. 4 and S24 in FIG. 5) transmitted from the upload processing unit to the download processing unit are transmitted via the network.

(4)前記実施形態は、HLSを前提としたものであり、アダプティブストリーミングを適用することができる。つまり、映像視聴端末30は、Play_List27に列挙された複数のバリエーション(ビットレート値に応じたいくつかのバリエーション)で用意されたファイル(TSファイル)から、映像視聴端末30と配信サーバ20との間の通信速度に基づき最適なバリエーションのSegmentファイル(ファイルが記憶された場所を示すURL)を選び、配信サーバ20に配信要求する。これにより、配信サーバ20から選択したバリエーションのSegmentファイルをダウンロードすることができる。 (4) The above embodiment is based on HLS, and adaptive streaming can be applied. That is to say, the video viewing terminal 30 is connected between the video viewing terminal 30 and the distribution server 20 from a file (TS file) prepared in a plurality of variations listed in Play_List 27 (some variations according to the bit rate value). Based on the communication speed, an optimal variation of the Segment file (URL indicating the location where the file is stored) is selected, and the distribution server 20 is requested to distribute. Thereby, the segment file of the variation selected from the distribution server 20 can be downloaded.

ここで、映像視聴端末30は、映像視聴端末30と配信サーバ20との間の通信速度が比較的速い場合は、高ビットレート値の高データ転送レートファイル(例えば、高画質な映像ファイル)を配信要求する。一方、通信速度が比較的遅い場合は、映像視聴端末30は、低ビットレート値の低データ転送レートファイル(例えば、低画質な映像ファイル)を配信要求する。   Here, when the communication speed between the video viewing terminal 30 and the distribution server 20 is relatively high, the video viewing terminal 30 receives a high data transfer rate file (for example, a high-quality video file) having a high bit rate value. Request delivery. On the other hand, when the communication speed is relatively slow, the video viewing terminal 30 requests distribution of a low data transfer rate file (for example, a low-quality video file) having a low bit rate value.

(5)前記第4,5実施形態の配信サーバ20dは、記憶装置22にSegment[i]の生成を、アップロード処理部23dからダウンロード処理部24dまで、通知していたが(S66(図12)、S78(図13,図15))、ダウンロード処理部24dが、アップロード処理部13dからの通知を待つ代わりに、短い時間(例えば、100m秒)待機して、Segment の生成を確認することを繰り返させてもよい。 (5) The distribution server 20d of the fourth and fifth embodiments has notified the storage device 22 of the generation of Segment [i] from the upload processing unit 23d to the download processing unit 24d (S66 (FIG. 12)). S78 (FIGS. 13 and 15)), the download processing unit 24d waits for a short time (for example, 100 milliseconds) instead of waiting for the notification from the upload processing unit 13d, and repeatedly confirms the generation of the Segment. It may be allowed.

1 コンテンツ配信システム
10,10a,10e 映像送信端末
11 ビデオカメラ
12 Video_Encoder
13 TS_Muxer
14 Segmenter
15 HTTP_Client
16 Video_Source
20,20a,20b,20c,20d,20da,20db,20e,20f 配信サーバ
21 HTTP_Server
22 記憶装置
23,23a アップロード処理部(入力処理部)
23b,23d 入力処理部(アップロードサーバ)
24,24a,24b,24c,24d ダウンロード処理部(出力処理部、ダウンロードサーバ)
25,25a,25b,25c,38 制御部
26 Segment(時分割コンテンツ)
27 Play_List(インデックスファイル)
28,28a,28b エラー処理部
29a インデックスファイル処理部
29b 配信処理部
30 映像視聴端末(再生端末)
31 HTTP_Client
32 主制御部
33 TS_Demuxer
34 Video_Decoder
35 Renderer
36 ブラウザ
37 表示パネル
41 Segment_List
42 TSファイル
43 KeyFrame_List
44 TS解析部25
NW1,NW2 ネットワーク
1 Content distribution system 10, 10a, 10e Video transmission terminal 11 Video camera 12 Video_Encoder
13 TS_Muxer
14 Segmenter
15 HTTP_Client
16 Video_Source
20, 20a, 20b, 20c, 20d, 20da, 20db, 20e, 20f Distribution server 21 HTTP_Server
22 Storage device 23, 23a Upload processing unit (input processing unit)
23b, 23d Input processing unit (upload server)
24, 24a, 24b, 24c, 24d Download processing unit (output processing unit, download server)
25, 25a, 25b, 25c, 38 Control unit 26 Segment (time division content)
27 Play_List (index file)
28, 28a, 28b Error processing unit 29a Index file processing unit 29b Distribution processing unit 30 Video viewing terminal (playback terminal)
31 HTTP_Client
32 Main control unit 33 TS_Demuxer
34 Video_Decoder
35 Renderer
36 Browser 37 Display panel 41 Segment_List
42 TS file 43 KeyFrame_List
44 TS analysis unit 25
NW1, NW2 network

Claims (19)

コンテンツが時分割された時分割コンテンツを入力し、入力された時分割コンテンツを再生する再生端末に出力する配信サーバであって、
前記時分割コンテンツのロケーション識別情報が記載されたファイルと前記時分割コンテンツとを格納する記憶装置と、
前記入力された時分割コンテンツについて前記記憶装置に格納することを開始すると、当該時分割コンテンツの次に入力予定の時分割コンテンツに対応するロケーション識別情報を前記ファイルに追記する入力処理部と、
前記コンテンツの配信要求を受信したときに、
前記入力処理部で当該ロケーション識別情報に対応する時分割コンテンツの格納が開始前であるならば、当該時分割コンテンツの出力を保留し、
前記入力処理部で当該ロケーション識別情報に対応する時分割コンテンツの格納が開始されたならば、当該時分割コンテンツについて前記再生端末に出力することを開始する出力処理部と
を備えることを特徴とする配信サーバ。
A distribution server that inputs time-division content that is time-division-divided and outputs the input time-division content to a playback terminal,
A storage device for storing a file in which location identification information of the time-division content is described and the time-division content;
When the storage of the input time-division content is started in the storage device, an input processing unit for adding location identification information corresponding to the time-division content scheduled to be input next to the time-division content to the file;
When receiving the content delivery request,
If storage of the time division content corresponding to the location identification information is before the start in the input processing unit, the output of the time division content is suspended,
An output processing unit that starts outputting the time-division content to the playback terminal when storage of the time-division content corresponding to the location identification information is started in the input processing unit. Distribution server.
請求項1に記載の配信サーバであって、
前記出力処理部は、前記再生端末から前記ファイルの送信要求を受信すると、前記記憶装置に格納される当該ファイルを前記再生端末に送信し、
前記配信要求は、前記ファイルにおけるロケーション識別情報に対応する時分割コンテンツの配信要求である
ことを特徴とする配信サーバ。
The distribution server according to claim 1,
When the output processing unit receives a transmission request for the file from the playback terminal, the output processing unit transmits the file stored in the storage device to the playback terminal;
The distribution server, wherein the distribution request is a distribution request for time-division content corresponding to location identification information in the file.
請求項2に記載の配信サーバであって、
前記出力処理部は、前記記憶装置に格納中の時分割コンテンツの配信要求を受信してから、所定時間経過するまでは、前記再生端末へのエラーの送信を保留することを特徴とする配信サーバ。
The distribution server according to claim 2,
The distribution server, wherein the output processing unit suspends transmission of an error to the playback terminal until a predetermined time elapses after receiving a distribution request for time-division content stored in the storage device .
請求項2に記載の配信サーバであって、
前記出力処理部は、前記入力処理部で前記ロケーション識別情報に対応する時分割コンテンツの格納開始前であるならば、前記配信要求に対する応答を前記再生端末に送信することを特徴とする配信サーバ。
The distribution server according to claim 2,
The distribution server, wherein the output processing unit transmits a response to the distribution request to the reproduction terminal if the input processing unit is before starting to store the time-division content corresponding to the location identification information.
請求項2に記載の配信サーバであって、
前記入力処理部は、前記入力処理部で前記ロケーション識別情報に対応する時分割コンテンツの格納が開始されているならば、当該時分割コンテンツの次に入力予定の時分割コンテンツに対応するロケーション識別情報を前記ファイルに追記することを特徴とする配信サーバ。
The distribution server according to claim 2,
If the input processing unit starts storing time-division content corresponding to the location identification information in the input processing unit, the location identification information corresponding to the time-division content scheduled to be input next to the time-division content Is added to the file.
請求項2に記載の配信サーバであって、
前記出力処理部は、前記配信要求を受信すると、最新の時分割コンテンツのロケーション識別情報が追記されたファイルを前記再生端末に送信することを特徴とする配信サーバ。
The distribution server according to claim 2,
Upon receiving the distribution request, the output processing unit transmits a file in which location identification information of the latest time-division content is added to the reproduction terminal.
請求項2に記載の配信サーバであって、
前記入力処理部は、前記時分割コンテンツを逐次送信する送信端末に接続されており、前記送信された時分割コンテンツを逐次アップロードすることを特徴とする配信サーバ。
The distribution server according to claim 2,
The distribution server, wherein the input processing unit is connected to a transmission terminal that sequentially transmits the time-division content, and sequentially uploads the transmitted time-division content.
コンテンツが時分割された時分割コンテンツを逐次入力し、入力された時分割コンテンツを再生する再生端末に逐次配信する配信サーバであって、
前記入力された時分割コンテンツと該入力された時分割コンテンツのロケーション識別情報が記載されたインデックスファイルとを格納する記憶装置と、
前記再生端末からインデックスファイルの送信要求を受信すると、入力予定の時分割コンテンツに対応するロケーション識別情報を前記インデックスファイルに追記して、追記されたインデックスファイルを前記再生端末に送信するインデックスファイル処理部と、
ロケーション識別情報に対応する時分割コンテンツの配信要求を受信して、
当該ロケーション識別情報に対応する時分割コンテンツの格納開始前は、当該時分割コンテンツの配信を保留し、
当該ロケーション識別情報に対応する時分割コンテンツの格納開始を確認してから、前記配信要求に応答して、当該時分割コンテンツを前記再生端末に配信する配信処理部とを備えることを特徴とする配信サーバ。
A distribution server that sequentially inputs time-division content obtained by time-division content and sequentially distributes the input time-division content to a playback terminal that reproduces the time-division content;
A storage device for storing the input time-division content and an index file in which location identification information of the input time-division content is described;
When an index file transmission request is received from the playback terminal, an index file processing unit that adds location identification information corresponding to the time-division content scheduled to be input to the index file and transmits the added index file to the playback terminal When,
Receive a time-sharing content distribution request corresponding to the location identification information,
Before the storage of the time division content corresponding to the location identification information is started, the distribution of the time division content is suspended,
A distribution processing unit that confirms the start of storage of the time-division content corresponding to the location identification information and then distributes the time-division content to the playback terminal in response to the distribution request. server.
コンテンツが時分割された時分割コンテンツを入力し、入力された時分割コンテンツを再生する再生端末に出力する配信サーバであって、
前記時分割コンテンツとロケーション識別情報とを対比して記載したリストと前記時分割コンテンツとを格納する記憶装置と、
前記入力された時分割コンテンツについて前記記憶装置に格納することを開始すると、当該時分割コンテンツの次に入力予定の時分割コンテンツに対応するロケーション識別情報を前記リストに追記する入力処理部と、
前記コンテンツの配信要求を受信したときは、
前記入力処理部が入力する時分割コンテンツの出力を保留し、
前記配信要求受信後、前記入力処理部で次の時分割コンテンツの入力が開始したならば、当該時分割コンテンツについて前記再生端末に出力することを開始する出力処理部と
を備えることを特徴とする配信サーバ。
A distribution server that inputs time-division content that is time-division-divided and outputs the input time-division content to a playback terminal,
A storage device that stores the list in which the time-division content and location identification information are contrasted and the time-division content;
When the storage of the input time-division content is started in the storage device, an input processing unit for adding location identification information corresponding to the time-division content scheduled to be input next to the time-division content to the list;
When receiving the content delivery request,
Suspending the output of time-division content input by the input processing unit,
An output processing unit that starts outputting the time-division content to the playback terminal when input of the next time-division content is started in the input processing unit after receiving the distribution request. Distribution server.
KeyFrameを有するコンテンツを入力し、該入力されたコンテンツを再生する再生端末に出力する配信サーバであって、
前記KeyFrameの位置情報が記載されたリストと前記コンテンツとを格納する記憶装置と、
前記入力されたコンテンツについて前記記憶装置に格納することを開始すると、当該コンテンツのKeyFrameの位置情報を前記リストに追記する入力処理部と、
前記コンテンツの配信要求を受信したときは、
前記入力処理部が入力するコンテンツの出力を保留し、
前記配信要求受信後、前記入力処理部で次のKeyFrameの入力が開始したならば、当該KeyFrameからのコンテンツについて前記再生端末に出力することを開始する出力処理部と
を備えることを特徴とする配信サーバ。
A distribution server that inputs content having a KeyFrame and outputs the content to a playback terminal that plays back the input content,
A storage device for storing a list in which position information of the KeyFrame is described and the content;
When the storage of the input content is started in the storage device, an input processing unit that appends the position information of the KeyFrame of the content to the list;
When receiving the content delivery request,
Suspending the output of the content input by the input processing unit,
An output processing unit that starts outputting the content from the KeyFrame to the playback terminal when the input of the next KeyFrame is started by the input processing unit after receiving the distribution request. server.
請求項10に記載の配信サーバであって、
前記出力処理部は、前記次のKeyFrameの入力の開始により行われる当該次のKeyFrameからのコンテンツ出力を逐次繰り返す
ことを特徴とする配信サーバ。
The distribution server according to claim 10,
The distribution server, wherein the output processing unit sequentially repeats the content output from the next KeyFrame performed by the start of the input of the next KeyFrame.
コンテンツが時分割された時分割コンテンツを入力し、入力された時分割コンテンツを再生する再生端末に出力する入出力部と、前記時分割コンテンツのロケーション識別情報が記載されたファイル、及び前記時分割コンテンツを格納する記憶装置とを備える配信サーバが実行する配信方法であって、
前記入力された時分割コンテンツについて前記記憶装置に格納することを開始すると、当該時分割コンテンツの次に入力予定の時分割コンテンツに対応するロケーション識別情報を前記ファイルに追記する入力処理過程と、
コンテンツの配信要求を受信したときに、
前記入力処理過程で当該ロケーション識別情報に対応する時分割コンテンツの格納が開始前であるならば、当該時分割コンテンツの出力を保留し、
前記入力処理過程で当該ロケーション識別情報に対応する時分割コンテンツの格納が開始されたならば、当該時分割コンテンツについて前記再生端末に出力することを開始する出力処理過程と
を実行することを特徴とする配信方法。
An input / output unit that inputs time-division content that is time-division-divided and outputs it to a playback terminal that reproduces the input time-division content, a file that describes location identification information of the time-division content, and the time-division A distribution method executed by a distribution server comprising a storage device for storing content,
When the storage of the input time-division content is started in the storage device, an input processing step of adding location identification information corresponding to the time-division content scheduled to be input next to the time-division content to the file;
When a content delivery request is received,
If the storage of the time division content corresponding to the location identification information is not started in the input process, the output of the time division content is suspended.
If the storage of the time division content corresponding to the location identification information is started in the input processing step, an output processing step of starting outputting the time division content to the playback terminal is performed. Delivery method.
コンテンツが時分割された時分割コンテンツを入力し、入力された時分割コンテンツを再生する再生端末に出力する入出力部と、前記時分割コンテンツのロケーション識別情報とを対比して記載したリスト、及び前記時分割コンテンツを格納する記憶装置とを備える配信サーバが実行する配信方法であって、
前記入力された時分割コンテンツについて前記記憶装置に格納することを開始すると、当該時分割コンテンツの次に入力予定の時分割コンテンツに対応するロケーション識別情報を前記リストに追記する入力処理過程と、
前記コンテンツの配信要求を受信して、
前記入力処理過程で入力される時分割コンテンツの出力を保留し、
前記配信要求受信後、前記入力処理過程で次の時分割コンテンツの入力が開始したならば、当該時分割コンテンツについて前記再生端末に出力することを開始する出力処理過程と
を実行することを特徴とする配信方法。
Input / output unit that inputs time-division content that is time-division-divided and outputs it to a playback terminal that reproduces the input time-division content, and a list that describes the location identification information of the time-division content A distribution method executed by a distribution server including a storage device that stores the time-division content,
When the storage of the input time-division content is started in the storage device, an input processing step of adding location identification information corresponding to the time-division content scheduled to be input next to the time-division content to the list;
Receiving the content distribution request;
Suspend the output of time-division content input in the input process,
After the delivery request is received, if input of the next time-division content is started in the input process, an output process step of starting outputting the time-division content to the playback terminal is performed. Delivery method.
KeyFrameを有するコンテンツを入力し、該入力されたコンテンツを再生する再生端末に出力する入出力部と、前記KeyFrameの位置情報が記載されたリスト、及び前記コンテンツを格納する記憶装置とを備える配信サーバが実行する配信方法であって、
前記入力されたコンテンツについて前記記憶装置に格納することを開始すると、当該コンテンツのKeyFrameの位置情報を前記リストに追記する入力処理過程と、
前記コンテンツの配信要求を受信したときは、
前記入力処理過程で入力されるコンテンツの出力を保留し、
前記配信要求受信後、前記入力処理過程で次のKeyFrameの入力が開始したならば、当該KeyFrameからのコンテンツについて前記再生端末に出力することを開始する出力処理過程と
を実行することを特徴とする配信方法。
A distribution server comprising: an input / output unit that inputs content having a KeyFrame and outputs the content to a playback terminal that plays back the input content; a list in which position information of the KeyFrame is described; and a storage device that stores the content Is a delivery method executed by
When the storage of the input content is started in the storage device, an input process for adding the key frame position information of the content to the list;
When receiving the content delivery request,
Suspending the output of the content input in the input process,
After the delivery request is received, if input of the next KeyFrame is started in the input process, an output process is started to start outputting content from the KeyFrame to the playback terminal. Delivery method.
コンテンツが時分割された時分割コンテンツを入力し、受信された時分割コンテンツを記憶装置に格納し、該格納された時分割コンテンツを再生する再生端末に出力する配信システムであって、
入力予定の時分割コンテンツに対応するロケーション識別情報をファイルに追記して、追記されたロケーション識別情報に対応する前記時分割コンテンツを格納する第1サーバと、
前記追記されたロケーション識別情報に対応する時分割コンテンツの配信要求を受信して、
前記時分割コンテンツの格納が開始されたならば、当該時分割コンテンツについて前記再生端末に出力することを開始する第2サーバと、
を備えることを特徴とする配信システム。
A distribution system for inputting time-division content obtained by time-division content storage, storing the received time-division content in a storage device, and outputting the stored time-division content to a playback terminal,
A first server for adding location identification information corresponding to time-division content to be input to a file, and storing the time-division content corresponding to the added location identification information;
Receiving a time-sharing content delivery request corresponding to the location identification information added;
A second server that starts outputting the time-division content to the playback terminal when storage of the time-division content is started;
A distribution system comprising:
コンテンツが時分割された時分割コンテンツを入力し、受信された時分割コンテンツを記憶装置に格納し、該格納された時分割コンテンツを再生する再生端末に出力する配信システムの配信方法であって、
入力予定の時分割コンテンツに対応するロケーション識別情報をファイルに追記して、追記されたロケーション識別情報に対応する前記時分割コンテンツを格納する第1処理ステップと、
前記追記されたロケーション識別情報に対応する時分割コンテンツの配信要求を受信して、
前記時分割コンテンツの格納が開始されたならば、当該時分割コンテンツについて前記再生端末に出力することを開始する第2処理ステップと、
を備えることを特徴とする配信方法。
A delivery method of a delivery system that inputs time-division content obtained by time-division content storage, stores the received time-division content in a storage device, and outputs the stored time-division content to a playback terminal.
A first processing step of adding location identification information corresponding to time-division content to be input to a file and storing the time-division content corresponding to the location identification information added;
Receiving a time-sharing content delivery request corresponding to the location identification information added;
A second processing step of starting to output the time-division content to the playback terminal when storage of the time-division content is started;
A distribution method characterized by comprising:
コンテンツが時分割された時分割コンテンツを入力し、受信された時分割コンテンツを記憶装置に格納し、該格納された時分割コンテンツを再生する再生端末に出力するコンピュータに実行させる配信プログラムであって、
前記コンピュータを、
入力予定の時分割コンテンツに対応するロケーション識別情報をファイルに追記して、追記されたロケーション識別情報に対応する前記時分割コンテンツを格納する第1処理手段、
前記追記されたロケーション識別情報に対応する時分割コンテンツの配信要求を受信して、
前記時分割コンテンツの格納が開始されたならば、当該時分割コンテンツについて前記再生端末に出力することを開始する第2処理手段、
として機能させるための配信プログラム。
A distribution program that is executed by a computer that inputs time-division content obtained by time-division content storage, stores the received time-division content in a storage device, and outputs the stored time-division content to a playback terminal that reproduces the time-division content. ,
The computer,
First processing means for adding location identification information corresponding to time-division content to be input to a file and storing the time-division content corresponding to the added location identification information;
Receiving a time-sharing content delivery request corresponding to the location identification information added;
A second processing means for starting to output the time-division content to the playback terminal when storage of the time-division content is started;
Distribution program to function as.
コンテンツが時分割された時分割コンテンツを入力し、入力された時分割コンテンツを再生する再生端末に出力する入出力部と、前記時分割コンテンツとロケーション識別情報とを対比して記載したリスト、及び前記時分割コンテンツを格納する記憶装置とを備える配信サーバのコンピュータに実行させる配信プログラムであって、
前記入力された時分割コンテンツについて前記記憶装置に格納することを開始すると、当該時分割コンテンツの次に入力予定の時分割コンテンツに対応するロケーション識別情報を前記ファイルに追記する入力処理過程と、
前記コンテンツの配信要求を受信して、
前記入力処理過程で入力する時分割コンテンツの出力を保留し、
前記配信要求受信後、前記入力処理過程で次の時分割コンテンツの入力が開始したならば、当該時分割コンテンツについて前記再生端末に出力することを開始する出力処理過程と
を実行させることを特徴とする配信プログラム。
An input / output unit that inputs time-division content that is time-division-divided and outputs it to a playback terminal that reproduces the input time-division content, a list that describes the time-division content and location identification information, and A distribution program to be executed by a computer of a distribution server comprising a storage device for storing the time-division content,
When the storage of the input time-division content is started in the storage device, an input processing step of adding location identification information corresponding to the time-division content scheduled to be input next to the time-division content to the file;
Receiving the content distribution request;
Suspending the output of time-division content that is input during the input process,
After the delivery request is received, if the input of the next time-division content starts in the input process, an output process is started to start outputting the time-division content to the playback terminal. Delivery program to.
KeyFrameを有するコンテンツを入力し、該入力されたコンテンツを再生する再生端末に出力する入出力部と、前記KeyFrameの位置情報が記載されたリスト、及び前記コンテンツを格納する記憶装置とを備える配信サーバのコンピュータに実行させる配信プログラムであって、
前記入力されたコンテンツについて前記記憶装置に格納することを開始すると、当該コンテンツのKeyFrameの位置情報を前記リストに追記する入力処理過程と、
前記コンテンツの配信要求を受信したときは、
前記入力処理過程で入力されるコンテンツの出力を保留し、
前記配信要求受信後、前記入力処理過程で次のKeyFrameの入力が開始したならば、当該KeyFrameからのコンテンツについて前記再生端末に出力することを開始する出力処理過程と
を実行させることを特徴とする配信プログラム。
A distribution server comprising: an input / output unit that inputs content having a KeyFrame and outputs the content to a playback terminal that plays back the input content; a list in which position information of the KeyFrame is described; and a storage device that stores the content A distribution program to be executed by a computer,
When the storage of the input content is started in the storage device, an input process for adding the key frame position information of the content to the list;
When receiving the content delivery request,
Suspending the output of the content input in the input process,
After the delivery request is received, if the input of the next KeyFrame is started in the input processing process, an output processing process for starting to output the content from the KeyFrame to the playback terminal is executed. Delivery program.
JP2015249289A 2014-12-24 2015-12-22 Distribution server, distribution method, distribution program, and distribution system Pending JP2016123097A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014260902 2014-12-24
JP2014260902 2014-12-24

Publications (1)

Publication Number Publication Date
JP2016123097A true JP2016123097A (en) 2016-07-07

Family

ID=56329069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015249289A Pending JP2016123097A (en) 2014-12-24 2015-12-22 Distribution server, distribution method, distribution program, and distribution system

Country Status (1)

Country Link
JP (1) JP2016123097A (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013021574A (en) * 2011-07-12 2013-01-31 Sharp Corp Generation device, distribution server, generation method, reproduction device, reproduction method, reproduction system, generation program, reproduction program, recording medium, and data structure
JP2013505685A (en) * 2009-09-22 2013-02-14 クゥアルコム・インコーポレイテッド Extended block-request streaming with collaborative concurrent HTTP and forward error correction
JP2013038766A (en) * 2011-07-12 2013-02-21 Sharp Corp Transmitter, transmitter control method, control program, and recording medium
WO2014010445A1 (en) * 2012-07-10 2014-01-16 シャープ株式会社 Content transmission device, content playback device, content delivery system, control method for content transmission device, control method for content playback device, data structure, control program, and recording medium
JP2014116805A (en) * 2012-12-10 2014-06-26 Canon Inc Imaging device, information processing device, control method therefor, and video processing system
WO2014105491A1 (en) * 2012-12-28 2014-07-03 Qualcomm Incorporated Elastic response time to hypertext transfer protocol (http) requests
JP2014131143A (en) * 2012-12-28 2014-07-10 Canon Inc Transmitter, transmitting method and program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013505685A (en) * 2009-09-22 2013-02-14 クゥアルコム・インコーポレイテッド Extended block-request streaming with collaborative concurrent HTTP and forward error correction
JP2013021574A (en) * 2011-07-12 2013-01-31 Sharp Corp Generation device, distribution server, generation method, reproduction device, reproduction method, reproduction system, generation program, reproduction program, recording medium, and data structure
JP2013038766A (en) * 2011-07-12 2013-02-21 Sharp Corp Transmitter, transmitter control method, control program, and recording medium
WO2014010445A1 (en) * 2012-07-10 2014-01-16 シャープ株式会社 Content transmission device, content playback device, content delivery system, control method for content transmission device, control method for content playback device, data structure, control program, and recording medium
JP2014116805A (en) * 2012-12-10 2014-06-26 Canon Inc Imaging device, information processing device, control method therefor, and video processing system
WO2014105491A1 (en) * 2012-12-28 2014-07-03 Qualcomm Incorporated Elastic response time to hypertext transfer protocol (http) requests
JP2014131143A (en) * 2012-12-28 2014-07-10 Canon Inc Transmitter, transmitting method and program

Similar Documents

Publication Publication Date Title
JP6404505B2 (en) Method and apparatus for streaming media content to client devices
US9317188B2 (en) Devices and methods for providing navigation images associated with adaptive bit rate video content
CN105814900B (en) System and method for managing adjacent channel in adaptive streaming environment
TWI643502B (en) Content reproduction system, content reproduction apparatus, program, content reproduction method, and providing content server
US9191725B2 (en) Method and apparatus for streaming video
US9530452B2 (en) Video preview creation with link
RU2543568C2 (en) Smooth, stateless client media streaming
US10484737B2 (en) Methods and systems for instantaneous asynchronous media sharing
WO2013008867A1 (en) Transmission device, method for controlling transmission device, control program, and recording medium
US11489899B1 (en) Segment ladder transitioning in adaptive streaming
US8665963B2 (en) Communication terminal, content reproduction method, content reproduction program, and content reproduction system for distributing and reproducing video contents with reduced stress
US11758200B2 (en) System and method for converting adaptive stream to downloadable media
KR101863598B1 (en) Operating method of client for streaming service
US20170264685A1 (en) Distribution method, distribution request method, and information processing device
JP6397341B2 (en) Reception device, buffer management method, and program
JP6294527B2 (en) Transmission device, transmission method, reproduction device, and reproduction method
JP5423661B2 (en) Network system, server, playback device, and content playback method
JP7356018B2 (en) Information processing program, information processing method, and information processing device
JP2016123097A (en) Distribution server, distribution method, distribution program, and distribution system
JP2012222530A (en) Receiving device and method, and program
JP6071358B2 (en) Image processing apparatus, image processing method, and program
JP2016015534A (en) Information processor and method
JP2024040912A (en) Information processing device, receiving device, information processing method, and program
WO2016002497A1 (en) Information processing device and method, distribution system, and program

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20160425

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180815

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190319

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190517

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20191008