JP6890977B2 - Transmitter, transmission method, and program - Google Patents
Transmitter, transmission method, and program Download PDFInfo
- Publication number
- JP6890977B2 JP6890977B2 JP2017002510A JP2017002510A JP6890977B2 JP 6890977 B2 JP6890977 B2 JP 6890977B2 JP 2017002510 A JP2017002510 A JP 2017002510A JP 2017002510 A JP2017002510 A JP 2017002510A JP 6890977 B2 JP6890977 B2 JP 6890977B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- file
- content data
- generated
- segment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Description
本発明は、送信装置、送信方法、およびプログラムに関し、特に、コンテンツデータを送信するために用いて好適なものである。 The present invention relates to transmission devices, transmission methods, and programs, and is particularly suitable for use in transmitting content data.
近年、音声データや映像データ等のコンテンツデータにより構成されるストリーミング形式のコンテンツをユーザにリアルタイムに配信する配信システムが提供されている。このような配信システムにより、ユーザは、自身の端末装置を介して、ライブ映像等の所望のコンテンツをリアルタイムで楽しむことができる。 In recent years, a distribution system has been provided that distributes streaming-format content composed of content data such as audio data and video data to users in real time. With such a distribution system, the user can enjoy desired contents such as live video in real time via his / her own terminal device.
インターネット等のネットワークを介してストリーミング配信を可能とする技術として例えば、HTTP(HyperText Transfer Protocol)を用いたストリーミング技術(例えばMPEG-DASH)がある。HTTPストリーミング技術では、送信装置側でコンテンツデータを数秒毎のセグメントと呼ばれる単位に区切る。そして、それぞれのセグメントに対するアクセス情報であるURL(Uniform Resource Locator)をプレイリストと呼ばれるファイルに記述する。このプレイリストには、各セグメントに対応する各URLを記述することができる。受信装置は、プレイリストを受信し、当該プレイリストに記述されているURLを用いて所望のセグメントを取得する(特許文献1を参照)。 As a technology that enables streaming distribution via a network such as the Internet, for example, there is a streaming technology (for example, MPEG-DASH) using HTTP (HyperText Transfer Protocol). In HTTP streaming technology, content data is divided into units called segments every few seconds on the transmitting device side. Then, the URL (Uniform Resource Locator), which is the access information for each segment, is described in a file called a playlist. Each URL corresponding to each segment can be described in this playlist. The receiving device receives the playlist and acquires a desired segment using the URL described in the playlist (see Patent Document 1).
ところで、コンテンツの提供にリアルタイム性が重視される場合、コンテンツデータを可及的に早くストリーミング配信することが求められる。しかしながら、セグメントの生成方法が固定であると、例えば、コンテンツデータの取得要求があったタイミングによっては、その要求に合うセグメントを適切に送信することができない場合がある。
より具体的な例として、10秒分のコンテンツが1つのセグメントとして生成される場合の例を説明する。この例において、新たなセグメントの生成を開始したばかりのタイミングでコンテンツデータの取得要求を受信した場合、当該新たなセグメントの生成完了まで、最大10秒間の待ち時間が発生する。これにより、当該新たなセグメントの送信に係る待ち時間が増大する恐れがある。一方、例えば、コンテンツデータの取得要求の受信に応じて、すでに生成完了している古いセグメントを送信すると、遅延時間(現実の時刻と再生コンテンツの時刻との差)が大きくなる恐れが生じる。
本発明は、このような問題点に鑑みてなされたものであり、受信装置からの要求に応じて、低遅延のコンテンツデータを早いタイミングで送信することができるようにすることを目的とする。
By the way, when real-time performance is emphasized in the provision of content, it is required to stream the content data as soon as possible. However, if the segment generation method is fixed, for example, depending on the timing at which the content data acquisition request is made, it may not be possible to appropriately transmit the segment that meets the request.
As a more specific example, an example in which 10 seconds of content is generated as one segment will be described. In this example, when the content data acquisition request is received at the timing when the generation of the new segment has just started, a waiting time of up to 10 seconds occurs until the generation of the new segment is completed. As a result, the waiting time for transmitting the new segment may increase. On the other hand, for example, when an old segment that has already been generated is transmitted in response to the reception of the content data acquisition request, the delay time (difference between the actual time and the time of the reproduced content) may increase.
The present invention has been made in view of such problems, and an object of the present invention is to enable low-delay content data to be transmitted at an early timing in response to a request from a receiving device.
本発明の送信装置は、コンテンツデータを取得する取得手段と、前記取得手段により取得されたコンテンツデータのうち所定の時間分のコンテンツデータが格納されたファイルを生成する第1の生成手段と、前記第1の生成手段により生成済みのファイルに含まれるコンテンツデータの一部が格納されたファイルを生成する第2の生成手段と、前記ファイルを受信装置に送信する送信手段と、を有し、前記第2の生成手段は、第1の時間に応じた時間分の前記コンテンツデータを、前記第1の生成手段により生成済みの前記ファイルから抽出し、当該抽出したコンテンツデータが格納されたファイルを生成し、前記第1の時間は、前記コンテンツデータの取得要求を受けとったタイミングから、前記第1の生成手段により生成中のファイルに格納する残りのコンテンツデータの取得を前記取得手段が完了するまでの時間であることを特徴とする。 The transmission device of the present invention includes an acquisition means for acquiring content data, a first generation means for generating a file in which content data for a predetermined time is stored among the content data acquired by the acquisition means, and the above. a second generating unit configured to generate a file part is stored in the content data included in the generated file by first generating means, transmitting means for transmitting the file to a receiving apparatus, a possess the The second generation means extracts the content data for the time corresponding to the first time from the file generated by the first generation means, and generates a file in which the extracted content data is stored. Then, the first time is from the timing when the acquisition request for the content data is received until the acquisition means completes the acquisition of the remaining content data to be stored in the file being generated by the first generation means. It is characterized by being time.
本発明によれば、受信装置からの要求に応じて、低遅延のコンテンツデータを早いタイミングで送信することができる。 According to the present invention, low-delay content data can be transmitted at an early timing in response to a request from a receiving device.
以下、添付の図面を参照して、実施形態を詳細に説明する。 Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.
<第1の実施形態>
まず、第1の実施形態について説明する。本実施形態では、MPEG-DASH(Dynamic Adaptive Streaming over Http)を用いてストリーミング配信を行う場合を例に挙げて説明する。そこで、まず、MPEG-DASHを用いる場合のストリーミング配信の概要について説明する。
<First Embodiment>
First, the first embodiment will be described. In this embodiment, a case where streaming distribution is performed using MPEG-DASH (Dynamic Adaptive Streaming over Http) will be described as an example. Therefore, first, an outline of streaming distribution when MPEG-DASH is used will be described.
MPEG-DASHでは、受信装置の能力や受信装置が置かれる通信状況に応じて、受信装置が取得するストリームを動的に変更することができる。MPEG-DASHでは、コンテンツデータ(例えば、映像データ、音声データ、テキストデータ等)を所定の時間長のセグメントに分割し、セグメントを取得するためのURLをプレイリストに記述する。受信装置は、初めにプレイリストを取得し、プレイリストに記述されているURLを用いて所望のコンテンツデータを送信装置に要求し、セグメントを取得する。更に、複数のバージョンのコンテンツデータセグメントに対するURLをプレイリストに記述することで、受信装置は、自身の能力や通信環境に応じて、最適なバージョンのコンテンツデータセグメントを取得することができる。 With MPEG-DASH, the stream acquired by the receiving device can be dynamically changed according to the capability of the receiving device and the communication status in which the receiving device is placed. In MPEG-DASH, content data (for example, video data, audio data, text data, etc.) is divided into segments having a predetermined time length, and a URL for acquiring the segments is described in a playlist. The receiving device first acquires the playlist, requests the transmitting device for desired content data using the URL described in the playlist, and acquires the segment. Further, by describing the URLs for the content data segments of a plurality of versions in the playlist, the receiving device can acquire the optimum version of the content data segments according to its own ability and communication environment.
セグメントのファイル形式にはISO Base Media File Format(以降、ISOBMFFと称する)が利用される。ISOBMFFを用いる場合、セグメントは、大きく分けて、ヘッダ情報を格納する部分と符号化データを格納する部分とに分けられる。ヘッダ情報には、当該セグメントに格納する符号化データのサイズやタイムスタンプを示す情報等が含まれる。従って、1つのセグメントを完成させるには、当該セグメントに格納される符号化データの生成が全て完了していなければならない。尚、符号化データとは、符号化されたコンテンツデータのことである。 ISO Base Media File Format (hereinafter referred to as ISOBMFF) is used as the file format of the segment. When ISOBMFF is used, the segment is roughly divided into a part for storing header information and a part for storing coded data. The header information includes information indicating the size and time stamp of the coded data stored in the segment. Therefore, in order to complete one segment, the generation of the coded data stored in the segment must be completed. The coded data is coded content data.
次に、本実施形態のネットワークシステムの一例を説明する。図1は、ネットワークシステムの全体構成の一例を示す図である。送信装置100は、ネットワーク300を介して、受信装置200と相互に接続される。尚、送信装置100および受信装置200はそれぞれ複数存在しても良い。
送信装置100は、符号化データの取得、プレイリスト・セグメントの生成、プレイリスト・コンテンツデータの取得要求の受信、およびプレイリスト・セグメントの送信等の機能を有する。送信装置100の具体例としては、カメラ装置、ビデオカメラ装置、スマートフォン装置、PC装置、携帯電話等が挙げられるが、後述の機能を有するものであれば、送信装置100は、前述の例に限定されない。
Next, an example of the network system of the present embodiment will be described. FIG. 1 is a diagram showing an example of the overall configuration of a network system. The transmitting
The
図2は、送信装置100のハードウェアの構成の一例を示す図である。
送信装置100は、バス111、CPU(Central Processing Unit)112、ROM(Read Only Memory)113、RAM(Random Access Memory)114を備える。また、送信装置100は、撮影部115、記憶部116、および通信部117を備える。ただし、撮影部115や記憶部116が送信装置100とは別の装置として存在し、送信装置100が撮影部115や記憶部116に接続される構成であってもよい。
FIG. 2 is a diagram showing an example of the hardware configuration of the
The
CPU112は、ROM113、RAM114、および記憶部116内に記憶されたコンピュータプログラムや処理用データに従って各種処理を実行することにより、送信装置100の各種機能を実現する。また、RAM114は、半導体メモリ等の揮発性の記録媒体により構成され、CPU112が実行するコンピュータプログラムや処理用データを一時的に格納する。
The
ROM113および記憶部116は、磁気的、光学的記録媒体、半導体メモリ等のCPU112が読み取り可能な不揮発性の記録媒体により構成される。ROM113および記憶部116は、送信装置100の起動プログラム等の基本プログラムを記憶する。また、ROM113および記憶部116は、後述する送信装置100の動作を実現する配信プログラム等のアプリケーションプログラム、およびこれらプログラムの実行に必要な処理用データも記憶する。
The
ここで、ROM113および記憶部116内に記憶される情報の一部若しくは全部は、ネットワーク300を介してインストールする構成にしてもよい。また、前述したアプリケーションプログラムは、後述する処理を実行する際に、CPU112が記録媒体から読み出すようにしてもよい。この場合、CPU112は、処理を実行する際に、記録媒体から読み出したアプリケーションプログラムをRAM114内に記録した後に、アプリケーションプログラムを実行する。尚、記録媒体には、例えば、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープ等のCPU112が読み取り可能な全ての記録媒体が含まれる。
Here, a part or all of the information stored in the
撮影部115は、CPU112の指示のもと、撮影を実行してコンテンツデータを生成する。コンテンツデータは、符号化されて記憶部116もしくはRAM114に保存される。このように本実施形態では、撮影部115により撮影された映像データがコンテンツデータである場合を例に挙げて説明する。また、通信部117は、受信装置200との間で、有線通信または無線通信を行う。前述したように本実施形態では、MPEG-DASHを用いてコンテンツデータの配信に係る通信を行う。
The
受信装置200は、コンテンツデータの再生・表示、プレイリスト・セグメントの取得要求の送信、プレイリスト・セグメントの取得、およびユーザからの入力の受け付け等の機能を有する。受信装置200の具体例は、スマートフォン装置、PC装置、テレビ、携帯電話等が挙げられるが、前述の機能を備えるものであればこれに限定されない。尚、受信装置200のハードウェアは、例えば、図2の構成に対し、コンピュータディスプレイとのI/F(インターフェース)を付加したもので実現することができるので、ここでは、その詳細な説明を省略する。
The receiving
ネットワーク300としては、例えば有線LAN(Local Area Network)や無線LAN(Wireless LAN)が挙げられる。ただし、ネットワーク300は、これらに限定されない。ネットワーク300は、例えば、インターネット、3G/4G/LTE等のWAN(Wide Area Network)、アドホックネットワーク、Bluetooth(登録商標)等を用いたものでもよい。
Examples of the
図3は、送信装置100の機能的な構成の一例を示す図である。
図3において、送信装置100は、取得部101、セグメント生成部102、プレイリスト生成部103、通信部104、要求処理部105、および予測部106を有する。
取得部101は、符号化データを取得する。セグメント生成部102は、取得部101で取得された符号化データを所定の時間毎に纏めて所定の時間分のコンテンツデータとすることを含む処理を行い、セグメントを生成する。プレイリスト生成部103は、セグメント生成部102からの通知を基に、セグメントの取得を可能とするURLを記述したプレイリストを生成する。通信部104は、ネットワーク300を介して、プレイリストの取得要求およびセグメントの取得要求を受信したり、プレイリストおよびセグメントの送信を行ったりする。
FIG. 3 is a diagram showing an example of a functional configuration of the
In FIG. 3, the
The
要求処理部105は、受信装置200からの取得要求を、通信部104を介して取得する。要求処理部105は、取得要求がプレイリストの取得要求である場合、プレイリスト生成部103に対してプレイリストの生成を指示する。要求処理部105は、この指示に応じてプレイリスト生成部103で生成されたプレイリストを、通信部104を介して受信装置200に送信する。
The
要求処理部105は、取得要求がセグメントの取得要求である場合、予測部106に対して、セグメント生成部102で生成中のセグメントの生成が完了するまでの時間の導出を指示する。取得要求の時点で、セグメント生成部102でセグメントが生成中でない場合、要求処理部105は、予測部106に対して、時間Tm、Tnの導出を指示する。予測部106は、時間Tm、Tnを導出し、時間Tnをセグメント生成部102に出力する。セグメント生成部102は、時間Tnに対応するセグメントを、既に生成済みのセグメントのうち最新のセグメントから生成する。時間Tm、Tnの詳細については後述する。
When the acquisition request is a segment acquisition request, the
本実施形態では、例えば、取得部101を用いることにより取得手段の一例が実現される。また、例えば、セグメント生成部102を用いることにより、第1の生成手段および第2の生成手段の一例が実現される。また、例えば、通信部104を用いることにより、送信手段の一例が実現される。また、例えば、時間Tmを用いることにより第1の時間の一例が実現され、時間Tnを用いることにより第2の時間の一例が実現される。また、例えば、予測部106を用いることにより第1の導出手段および第2の導出手段の一例が実現される。また、例えば、セグメントを用いることによりファイルの一例が実現される。
In the present embodiment, for example, an example of the acquisition means is realized by using the
ここで、本実施形態の内容を明確にするため、本実施形態と対比される2つの形態について説明する(以下、これらを対比形態と称する)。
図4は、第1の対比形態におけるセグメントの生成方法を説明する図である。図4は、送信装置側の処理を説明する図である。
図4において時間軸上の時刻T1は、受信装置によりコンテンツデータの取得が要求された時刻である。状態1は、時刻T1におけるセグメントの生成状態を示す。時刻T1の時点では、セグメント401は既に生成済みのセグメントであり、セグメント402は生成中のセグメントである。
第1の対比形態では、時刻T1において生成済みのセグメントの内、最新のセグメントから送信を開始する。つまり、図4においては、セグメント401から送信が開始される。
Here, in order to clarify the contents of the present embodiment, two forms to be compared with the present embodiment will be described (hereinafter, these are referred to as contrast forms).
FIG. 4 is a diagram illustrating a method of generating a segment in the first contrast form. FIG. 4 is a diagram illustrating processing on the transmission device side.
In FIG. 4, the time T1 on the time axis is the time when the receiving device requests the acquisition of the content data.
In the first contrast mode, transmission is started from the latest segment among the segments generated at time T1. That is, in FIG. 4, transmission is started from segment 401.
尚、詳細には、MPEG-DASHで使用するISOBMFFでは、最初に初期化セグメント403と呼ばれるセグメントが送信される。初期化セグメント403は、一般に、コンテンツデータの配信の決定時(符号化データを含む最初のセグメント401よりも前)に生成される。初期化セグメント403にはmoovと呼ばれるヘッダが存在する。moovには、以降に続くセグメントに格納される符号化データを復号する為の情報等、受信装置でのコンテンツデータの再生処理に必要な情報が含まれる。そして、セグメント1には、moofと呼ばれるヘッダを付与し、初期化セグメント403に続いて送信される。Moof(n)には、セグメントnに含まれる1つ以上の符号化データの各々の位置を特定する為のオフセット情報や、符号化形式に依存した情報等が含まれる。尚、nは、セグメントを識別する情報であり、ここでは、1を初期値とし1ずつ増加する値が生成順にセグメントに付与されるものとする。各セグメントにおいてMoof(n)の後に続いて格納される符号化データにはmdat(n)と呼ばれるヘッダが付与される。
More specifically, in ISOBMFF used in MPEG-DASH, a segment called an initialization segment 403 is first transmitted. The initialization segment 403 is generally generated at the time of determining the distribution of the content data (prior to the first segment 401 containing the coded data). The initialization segment 403 has a header called moov. The moov includes information necessary for the reproduction processing of the content data in the receiving device, such as information for decoding the coded data stored in the subsequent segments. Then, a header called moof is added to the
この様に、第1の対比形態では、送信装置は、コンテンツデータの取得要求を受信した時刻T1において既に生成済みのセグメント401から受信装置に送信する。このため、図4の状態1に示すセグメント402に格納されている符号化データの時間分、既に時間が経過している事から、遅延が増す事になる。即ち、セグメント402の生成が完了しても、セグメント401が送信中であるため、生成済みの最新のセグメント402の送信の開始が、図4に示す遅延時間に応じて遅れることになる。
As described above, in the first contrast mode, the transmitting device transmits the content data acquisition request from the already generated segment 401 to the receiving device at the time T1 when the request is received. Therefore, since the time has already passed by the time of the coded data stored in the segment 402 shown in the
図5は、第2の対比形態におけるセグメントの生成方法を説明する図である。図5は、送信装置側の処理を説明する図である。第2の対比形態は、図4に示す第1の対比形態で発生する遅延を少なくするため、送信装置は、セグメントの生成が完了した時点で、当該セグメントを受信装置に送信する(即ち、プッシュ配信する)形態である。
図5において、時刻T1は、受信装置によりコンテンツデータの取得が要求された時刻である。状態1は、時刻T1におけるセグメントの生成状態を示し、状態2は、時刻T2におけるセグメントの生成状態を示す。
セグメントをプッシュ配信する場合、例えばライブ映像の配信を行うケースでは、できるだけ遅延を小さくする為、セグメントの生成が完了次第、速やかに受信装置に送信する事が望ましい。従って、第2の対比形態では、送信装置は、セグメント501からではなく、セグメント502の生成が完了するまで待機して、初期化セグメント503を配信した後、セグメント502から配信を開始する。
FIG. 5 is a diagram illustrating a method of generating a segment in the second contrast form. FIG. 5 is a diagram illustrating processing on the transmission device side. Since the second contrast mode reduces the delay that occurs in the first contrast mode shown in FIG. 4, the transmitting device transmits (that is, pushes) the segment to the receiving device when the generation of the segment is completed. It is a form (delivered).
In FIG. 5, the time T1 is the time when the receiving device requests the acquisition of the content data.
In the case of push distribution of segments, for example, in the case of distribution of live video, it is desirable to promptly transmit to the receiving device as soon as the segment generation is completed in order to reduce the delay as much as possible. Therefore, in the second contrast mode, the transmitter waits until the generation of the segment 502 is completed, not from the segment 501, delivers the initialization segment 503, and then starts the delivery from the segment 502.
つまり、図5における時刻T2から符号化データを含むセグメント502の配信が行われる為、時刻T1から時刻T2までの時間が待ち時間となる。即ち、受信装置は、時刻T1から時刻T2までの時間、コンテンツデータを受信しないことになる。
そこで、本実施形態では、第1の対比形態および第2の対比形態で生じる前述した遅延や待ち時間を削減する。図6は、本実施形態におけるセグメントの生成方法の概要の一例を説明する図である。
That is, since the segment 502 including the coded data is delivered from the time T2 in FIG. 5, the time from the time T1 to the time T2 becomes a waiting time. That is, the receiving device does not receive the content data for the time from the time T1 to the time T2.
Therefore, in the present embodiment, the above-mentioned delay and waiting time that occur in the first contrast mode and the second contrast mode are reduced. FIG. 6 is a diagram illustrating an outline of an outline of a segment generation method in the present embodiment.
図6において、時刻T1は、受信装置によりコンテンツデータの取得が要求された時刻である。状態1は、時刻T1におけるセグメントの生成状態を示す。また、時間Tmは、時刻T1から、セグメント602に格納予定の残りの符号化データの取得(生成)が完了するまでの時間の予測値である。本実施形態では、送信装置100は、セグメント601に格納された符号化データの内、最新のものから順に、時間Tmに応じた時間Tn分の符号化データを抽出して初期化セグメント603の次に送信するセグメント604を生成する。
これにより、受信装置200はセグメント604を直ぐに取得する事が可能となる。また、送信装置100が最初に取得した符号化データを含むセグメント604は、その次に受信装置200に送信されるセグメント602の取得が可能となる時間Tmに応じた分のデータであることから、再生処理の遅延も増える事がなくなる。
In FIG. 6, the time T1 is the time when the receiving device requests the acquisition of the content data.
As a result, the receiving
次に、図7を参照しながら、受信装置200に最初に配信する符号化データを含むセグメント604を生成する方法の一例を詳しく説明する。図7は、本実施形態におけるセグメントの生成方法の一例を詳細に説明する図である。
Next, with reference to FIG. 7, an example of a method of generating the
図7において、セグメント601はフレーム間予測符号化を用いて圧縮された符号化データを格納したものであり、5個のGOP(Group Of Pictures)で構成される。各々のGOPは、例えば、IBBPBBPBBP(I:イントラ圧縮、P:前方予測圧縮、B:双方向予測圧縮)の様なフレーム構成となっている。図7の時間Tnは、図6で説明した時間Tmを基に送信装置100が算出する時間である。図7においては、時間Tnは、GOP3個分の時間となっている。本実施形態では、時間Tnに相当するGOP3個分の符号かデータを、新しいものから順にセグメント601から抽出したものがGOP3からGOP5である。送信装置100は、この様にして抽出して作成した符号化データを格納したセグメント604を、初期化セグメント603に続いて送信する。
In FIG. 7, the segment 601 stores the coded data compressed by using the inter-frame predictive coding, and is composed of five GOPs (Group Of Pictures). Each GOP has a frame structure such as IBBBPBBPBBP (I: intracompression, P: forward prediction compression, B: bidirectional prediction compression). The time Tn in FIG. 7 is the time calculated by the
尚、時間Tnと時間Tmは、ほぼ同じ値である事が望ましいが、送信装置100は、セグメントを生成するための処理時間や処理内容等を考慮して時間Tnを算出しても良い。例えば、送信装置100は、セグメントを生成するのに要する時間を時間Tmから差し引いて時間Tnを算出することができる。また、図7に示す様に、複数のGOPから成るセグメントを生成する場合、格納する符号化データは、GOP単位で抽出する方が処理負荷的に望ましい。従って、このような場合、送信装置100は、時間Tmに収まる時間分のGOPを抽出してセグメントに格納する様に時間Tnを算出しても良い。また、時間Tnを用いるのが好ましいが、送信装置100は、セグメント601に格納された符号化データの内、最新のものから順に、時間Tm分の符号化データを抽出してセグメント604を生成してもよい。
It is desirable that the time Tn and the time Tm are substantially the same value, but the
次に、図8のフローチャートを参照しながら、本実施形態の送信装置100の処理の一例を説明する。図8では、送信装置100が行う処理の内、セグメントの取得要求からセグメントの送信を開始するまでの一連の処理の流れを示す。MPEG-DASHを用いる場合、ステップS801に至るまでに、送信装置100は、受信装置200とプレイリストのやり取り等を行う。また、ステップS806の処理の後(符号化データを含む最初のセグメントの送信を開始した後)は、順次セグメントの送信を行う。ステップS701の前(セグメントの取得要求を受信する前)の処理およびステップS806の後(セグメントデータの送信を開始した後)の処理は、公知の技術で実現することができるので、その詳細な説明を省略する。
Next, an example of the processing of the
まず、ステップS801において、通信部104は、セグメントの取得要求を受信する。
次に、ステップS802において、要求処理部105は、セグメント生成部102でセグメントを生成中であるか否かを判定する。この判定の結果、セグメントを生成中でない場合、処理は、後述するステップS807に進む。一方、セグメントを生成中である場合、処理は、ステップS803に進む。
First, in step S801, the
Next, in step S802, the
ステップS803において、予測部106は、セグメントの取得要求を受信した時刻T1から、生成中のセグメント602に格納予定の残りの符号化データの生成が完了するまでの時間Tmを導出する。例えば、予測部106は、予め定められている単位データ当たりの処理時間と、生成中のセグメント602に格納予定の残りの符号化データのデータ量とに基づいて、時間Tmを導出する。尚、処理時間には、例えば、符号化に要する時間が含まれる。そして、予測部106は、時間Tmに基づいて、最新の生成済みのセグメント601から抽出する符号化データに対応する時間Tnを導出する。時間Tnの導出方法の一例は前述した通りである。
In step S803, the
ステップS804において、セグメント生成部102は、生成済みの最新のセグメント601から、ステップS803で導出された時間Tn分の符号化データを取得順で新しいデータの方から順に抽出し、セグメント604を生成する。
次に、ステップS805において、通信部104は、初期化セグメント603を受信装置200に送信する。
In step S804, the
Next, in step S805, the
次に、ステップS806において、通信部104は、ステップS704で抽出された符号化データを格納したセグメント604から送信を開始する。その後、通信部104は、セグメント生成部102で生成されたセグメントを順次受信装置200に送信する事で、前述した遅延や待ち時間が少ないストリーミング配信が可能となる。
Next, in step S806, the
ステップS802でセグメントを生成中でないと判定された場合、ステップS807において、通信部104は、初期化セグメント603を受信装置200に送信する。次に、ステップS808において、通信部104は、生成済みの最新のセグメントから送信を開始する。
If it is determined in step S802 that the segment is not being generated, the
以上のように本実施形態では、送信装置100は、セグメントの取得要求を受信した時刻T1にセグメント602を生成中である場合、時刻T1から、生成中のセグメント602に格納予定の残りの符号化データの生成が完了するまでの時間Tmを導出する。送信装置100は、この時間Tmに応じた時間Tn分だけ、生成済みの最新のセグメント602に格納されている符号化データを新しいものから順に抽出してセグメント604を生成し、セグメント604から送信を開始する。従って、例えば、MPEG-DASHでライブ映像配信を行う場合でも、セグメント602の送信の開始の遅延を減少させることができると共に、セグメント602の生成が完了するまでの待ち時間を減少させることができる。よって、送信装置100は、セグメントの取得要求に応じて、送信するセグメントを調整できるようになり、遅延や待ち時間が少ないストリーミング配信が可能となる。これにより、送信装置100は、受信装置200からの要求に応じて、低遅延のコンテンツデータを早いタイミングで送信することができる。
As described above, in the present embodiment, when the
(第2の実施形態)
次に、第2の実施形態を説明する。第1の実施形態では、時間Tmに関わらず、時間Tmに応じた時間Tn分の符号化データを含むセグメント604から送信を開始する場合を例に挙げて説明した。これに対し、本実施形態では、セグメントの生成周期とセグメントの取得が要求されるタイミングとに応じて、初期化セグメント603の次に送信するセグメントの生成方法を選択する場合を例に挙げて説明する。このように本実施形態と第1の実施形態とでは、時間Tmを導出した後の送信装置100の処理が主として異なる。従って、本実施形態の説明において、第1の実施形態と同一の部分については、図1〜図8に付した符号と同一の符号を付す等して詳細な説明を省略する。
(Second Embodiment)
Next, the second embodiment will be described. In the first embodiment, the case where the transmission is started from the
図9は、本実施形態の送信装置の処理の一例を説明するフローチャートである。図9では、送信装置が行う処理の内、セグメントの取得要求からセグメントの送信を開始するまでの一連の処理の流れを示す。 FIG. 9 is a flowchart illustrating an example of processing of the transmission device of the present embodiment. FIG. 9 shows a flow of a series of processes from the segment acquisition request to the start of segment transmission among the processes performed by the transmission device.
ステップS901〜S903の処理は、図8におけるステップS801〜803の処理と同じである。即ち、まず、ステップS901において、通信部104は、セグメントの取得要求を受信する。
次に、ステップS902において、要求処理部105は、セグメント生成部102においてセグメントを生成中であるか否かを判定する。この判定の結果、セグメントを生成中でない場合、処理は、後述するステップS911に進む。一方、セグメントを生成中である場合、処理は、ステップS903に進む。
ステップS903において、予測部106は、時間Tm、Tnを導出する。
The processing of steps S901 to S903 is the same as the processing of steps S801 to 803 in FIG. That is, first, in step S901, the
Next, in step S902, the
In step S903, the
次に、ステップS904において、予測部106は、ステップS903で導出した時間Tmが、所定の時間Th1以下であるか否かを判定する。この判定の結果、ステップS903で導出した時間Tmが、所定の時間Th1以下である場合、処理は、ステップS909に進む。ステップS909において、通信部104は、初期化セグメント603を受信装置200に送信する。
Next, in step S904, the
次に、ステップS910において、通信部104は、セグメント生成部102で生成中のセグメントが完成次第、当該セグメントの送信を開始する。即ち、時間Tmが待ち時間として許容可能な範囲である場合、送信装置100は、生成済みの最新のセグメント601から符号化データを抽出する処理を行わずに、生成中のセグメント602の生成が完了するまで待機する。そして、送信装置100は、生成完了後にセグメント602の送信を開始する。
Next, in step S910, the
一方、ステップS903で導出した時間Tmが、所定の時間Th1以下でない場合、ステップS905において、予測部106は、ステップS903で導出した時間Tmが、所定の時間Th2(>Th1)を上回るか否かを判定する。この判定の結果、ステップS903で導出した時間Tmが、所定の時間Th2を上回る場合、処理は、ステップS911に進む。ステップS911において、通信部104は、初期化セグメント603を受信装置200に送信する。そして、ステップS912において、通信部104は、生成済みの最新のセグメント601から送信を開始する。即ち、時間Tmが十分に長い時間であれば、生成済みの最新のセグメント601の生成が完了から短い時間しか経過していない。そこで、送信装置100は、生成済みの最新のセグメント601から符号化データを抽出する処理を行わずに、当該セグメント601から送信を開始する。
On the other hand, if the time Tm derived in step S903 is not equal to or less than the predetermined time Th1, in step S905, the
一方、ステップS903で導出した時間Tmが、所定の時間Th2を上回らない場合、処理は、ステップS906に進む。ステップS906〜S908の処理は、図8におけるステップS804〜806の処理と同じである。即ち、セグメント生成部102は、セグメント604を生成する。次に、ステップS907において、通信部104は、初期化セグメント603を受信装置200に送信する。次に、ステップS908において、通信部104は、セグメント604から送信を開始する。
On the other hand, if the time Tm derived in step S903 does not exceed the predetermined time Th2, the process proceeds to step S906. The processing of steps S906 to S908 is the same as the processing of steps S804 to 806 in FIG. That is, the
以上のように本実施形態では、時間Tmに応じて、セグメント601、602、604の何れから送信を開始するかを切り替える。従って、第1の実施形態で説明したのと同様に、セグメント602の送信の開始の遅延を減少させることができると共に、セグメント602の生成が完了するまでの待ち時間を減少させることができる。また、データ量が少ないセグメント604を生成することを抑制することができるので、前述した遅延や待ち時間の減少を実現しつつ、処理の負担を軽減することができる。
As described above, in the present embodiment, it is switched from which of the
尚、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。 It should be noted that the above-described embodiments are merely examples of embodiment of the present invention, and the technical scope of the present invention should not be construed in a limited manner by these. That is, the present invention can be implemented in various forms without departing from the technical idea or its main features.
(その他の実施例)
本発明は、前述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other Examples)
The present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or storage medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
100:送信装置、200:受信装置、300:ネットワーク 100: Transmitter, 200: Receiver, 300: Network
Claims (17)
前記取得手段により取得されたコンテンツデータのうち所定の時間分のコンテンツデータが格納されたファイルを生成する第1の生成手段と、
前記第1の生成手段により生成済みのファイルに含まれるコンテンツデータの一部が格納されたファイルを生成する第2の生成手段と、
前記ファイルを受信装置に送信する送信手段と、を有し、
前記第2の生成手段は、第1の時間に応じた時間分の前記コンテンツデータを、前記第1の生成手段により生成済みの前記ファイルから抽出し、当該抽出したコンテンツデータが格納されたファイルを生成し、
前記第1の時間は、前記コンテンツデータの取得要求を受けとったタイミングから、前記第1の生成手段により生成中のファイルに格納する残りのコンテンツデータの取得を前記取得手段が完了するまでの時間であることを特徴とする送信装置。 The acquisition method for acquiring content data and
A first generation means for generating a file in which content data for a predetermined time is stored among the content data acquired by the acquisition means, and a first generation means.
A second generation means for generating a file in which a part of the content data included in the file generated by the first generation means is stored, and a second generation means.
Possess a transmitting means for transmitting the file to the receiving device,
The second generation means extracts the content data for a time corresponding to the first time from the file generated by the first generation means, and obtains a file in which the extracted content data is stored. Generate and
The first time is the time from the timing when the acquisition request for the content data is received until the acquisition means completes the acquisition of the remaining content data to be stored in the file being generated by the first generation means. transmitting apparatus characterized by some.
前記第2の生成手段は、前記第2の導出手段により導出された第2の時間分の前記コンテンツデータを、前記第1の生成手段により生成済みのファイルから抽出し、当該抽出したコンテンツデータが格納されたファイルを生成することを特徴とする請求項1〜3の何れか1項に記載の送信装置。 Based on the first time, a second time, which is a time corresponding to the content data extracted from the file generated by the first generation means, is derived as a time corresponding to the first time. It also has 2 derivation means,
The second generation means extracts the content data for the second time derived by the second derivation means from the file generated by the first generation means, and the extracted content data is obtained. The transmitting device according to any one of claims 1 to 3 , wherein a stored file is generated.
前記ファイルは、前記符号化されたコンテンツデータと、当該コンテンツデータに係る情報を含むヘッダとを含むことを特徴とする請求項1〜14の何れか1項に記載の送信装置。 The acquisition means acquires the encoded content data and obtains the coded content data.
The file, said encoded content data, transmission apparatus according to any one of claims 1 to 1 4, characterized in that it comprises a header containing information relating to the content data.
前記取得工程により取得されたコンテンツデータのうち所定の時間分のコンテンツデータが格納されたファイルを生成する第1の生成工程と、
前記第1の生成工程により生成済みのファイルに含まれるコンテンツデータの一部が格納されたファイルを生成する第2の生成工程と、
前記ファイルを受信装置に送信する送信工程と、を有し、
前記第2の生成工程では、第1の時間に応じた時間分の前記コンテンツデータを、前記第1の生成工程により生成済みの前記ファイルから抽出し、当該抽出したコンテンツデータが格納されたファイルを生成し、
前記第1の時間は、前記コンテンツデータの取得要求を受けとったタイミングから、前記第1の生成工程により生成中のファイルに格納する残りのコンテンツデータの取得を前記取得工程で完了するまでの時間であることを特徴とする送信方法。 The acquisition process to acquire content data and
The first generation step of generating a file in which the content data for a predetermined time is stored among the content data acquired by the acquisition step, and
A second generation step of generating a file in which a part of the content data included in the file generated by the first generation step is stored, and a second generation step.
Have a, a transmission step of transmitting the file to the receiving device,
In the second generation step, the content data for the time corresponding to the first time is extracted from the file generated by the first generation step, and the file in which the extracted content data is stored is extracted. Generate and
The first time is the time from the timing of receiving the content data acquisition request to the completion of the acquisition of the remaining content data stored in the file being generated by the first generation step in the acquisition step. transmission method characterized in that there.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017002510A JP6890977B2 (en) | 2017-01-11 | 2017-01-11 | Transmitter, transmission method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017002510A JP6890977B2 (en) | 2017-01-11 | 2017-01-11 | Transmitter, transmission method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018113568A JP2018113568A (en) | 2018-07-19 |
JP6890977B2 true JP6890977B2 (en) | 2021-06-18 |
Family
ID=62912571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017002510A Active JP6890977B2 (en) | 2017-01-11 | 2017-01-11 | Transmitter, transmission method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6890977B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7162295B2 (en) * | 2018-08-01 | 2022-10-28 | 株式会社radiko | Stream distribution system and program with segment file division function |
-
2017
- 2017-01-11 JP JP2017002510A patent/JP6890977B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018113568A (en) | 2018-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9113177B2 (en) | Methods, apparatuses and computer program products for pausing video streaming content | |
US11128897B2 (en) | Method for initiating a transmission of a streaming content delivered to a client device and access point for implementing this method | |
US9680881B2 (en) | Transmission apparatus, receiving apparatus, transmission method, receiving method, and storage medium for transmitting and/or receiving metadata indicating address information for each of a plurality of segments corresponding to divided content | |
EP3001692A1 (en) | Streaming media processing method, apparatus and system | |
US10277652B2 (en) | Transmission apparatus, transmission method, and program | |
US10019448B2 (en) | Methods and systems for providing file data for media files | |
US9571790B2 (en) | Reception apparatus, reception method, and program thereof, image capturing apparatus, image capturing method, and program thereof, and transmission apparatus, transmission method, and program thereof | |
US11706275B2 (en) | Media streaming | |
JP6890977B2 (en) | Transmitter, transmission method, and program | |
JP5739079B1 (en) | Movie compression apparatus and movie compression / decompression system | |
US11496535B2 (en) | Video data transmission apparatus, video data transmitting method, and storage medium | |
JP6327809B2 (en) | Reception device, control method, and program | |
JP6400163B2 (en) | Reception device, reception method, transmission device, transmission method, and program | |
JP2023007048A (en) | Streaming server, transmission method, and program | |
JP6907104B2 (en) | Video distribution device, control method and program | |
JP2019152972A (en) | Distribution device, information processing method and program | |
JP2007324722A (en) | Moving picture data distribution apparatus and moving picture data communication system | |
KR101568317B1 (en) | System for supporting hls protocol in ip cameras and the method thereof | |
US11671681B2 (en) | Method of processing an error during the rendering of a digital content | |
US20160014181A1 (en) | Content transfer method, content transfer apparatus and content receiving apparatus | |
US11303940B2 (en) | Transmission apparatus, transmission method, and non-transitory computer-readable storage medium | |
JP2020150321A (en) | Moving image distribution device and moving image distribution method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191218 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200821 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200929 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201125 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210427 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210526 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6890977 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |