(57)【要約】【課題】  受信装置からの要求に応じて、低遅延のコンテンツデータを早いタイミングで送信する。【解決手段】  送信装置１００は、セグメントの取得要求を受信した時刻Ｔ１にセグメント６０２を生成中である場合、時刻Ｔ１から、生成中のセグメント６０２に格納予定の残りの符号化データの生成が完了するまでの時間Ｔｍを導出する。送信装置１００は、この時間Ｔｍに応じた時間Ｔｎ分だけ、生成済みの最新のセグメント６０２に格納されている符号化データを新しいものから順に抽出し、セグメント６０４を生成し、セグメント６０４から送信を開始する。【選択図】  図６
2018113568.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツデータを取得する取得手段と、
前記取得手段により取得されたコンテンツデータのうち所定の時間分のコンテンツデータが格納されたファイルを生成する第１の生成手段と、
前記第１の生成手段により生成済みのファイルに含まれるコンテンツデータの一部が格納されたファイルを生成する第２の生成手段と、
前記ファイルを受信装置に送信する送信手段と、を有することを特徴とする送信装置。
【請求項２】
前記第２の生成手段は、第１の時間に応じた時間分の前記コンテンツデータを、前記第１の生成手段により生成済みの前記ファイルから抽出し、当該抽出したコンテンツデータが格納されたファイルを生成し、
前記第１の時間は、前記コンテンツデータの取得要求を受けとったタイミングから、前記第１の生成手段により生成中のファイルに格納する残りのコンテンツデータの取得を前記取得手段が完了するまでの時間であることを特徴とする請求項１に記載の送信装置。
【請求項３】
前記第１の時間を導出する第１の導出手段を更に有することを特徴とする請求項２に記載の送信装置。
【請求項４】
前記第２の生成手段は、前記取得手段により新しく取得された前記コンテンツデータから順に、前記第１の生成手段により生成済みのファイルから、前記第１の時間に応じた時間分の前記コンテンツデータを抽出することを特徴とする請求項２または３に記載の送信装置。
【請求項５】
前記第１の時間に基づいて、前記第１の生成手段により生成済みのファイルから抽出するコンテンツデータに対応する時間である第２の時間を、前記第１の時間に応じた時間として導出する第２の導出手段、をさらに有し、
前記第２の生成手段は、前記第２の導出手段により導出された第２の時間分の前記コンテンツデータを、前記第１の生成手段により生成済みのファイルから抽出し、当該抽出したコンテンツデータが格納されたファイルを生成することを特徴とする請求項２〜４の何れか１項に記載の送信装置。
【請求項６】
前記送信手段は、前記第２の生成手段によりファイルが生成されると、当該ファイルを受信装置に送信することを特徴とする請求項２〜５の何れか１項に記載の送信装置。
【請求項７】
前記送信手段は、前記第１の時間に基づいて、送信する前記ファイルを選択することを特徴とする請求項２〜６の何れか１項に記載の送信装置。
【請求項８】
前記送信手段は、前記第１の時間が、第１の所定の時間よりも短い場合には、前記第１の生成手段により生成中のファイルの生成が完了するまで待機し、当該ファイルが生成されると、当該ファイルを受信装置に送信することを特徴とする請求項７に記載の送信装置。
【請求項９】
前記第２の生成手段は、前記第１の時間が、第１の所定の時間よりも短い場合には、前記第１の生成手段により生成済みのファイルに含まれるコンテンツデータの一部が格納されたファイルを生成しないことを特徴とする請求項８に記載の送信装置。
【請求項１０】
前記送信手段は、前記第１の時間が、第２の所定の時間よりも長い場合には、前記第１の生成手段により生成済みのファイルのうち、最新のファイルを受信装置に送信することを特徴とする請求項７に記載の送信装置。
【請求項１１】
前記第２の生成手段は、前記第１の時間が、第２の所定の時間よりも長い場合には、前記第１の生成手段により生成済みのファイルに含まれるコンテンツデータの一部が格納されたファイルを生成しないことを特徴とする請求項１０に記載の送信装置。
【請求項１２】
前記送信手段は、前記第１の時間が、前記第１の所定の時間よりも長い所定の時間である第２の所定の時間よりも長い場合には、前記第１の生成手段により生成済みのファイルのうち、最新のファイルを受信装置に送信することを特徴とする請求項８または９に記載の送信装置。
【請求項１３】
前記第２の生成手段は、前記第１の時間が、前記第２の所定の時間よりも長い場合には、前記第１の生成手段により生成済みのファイルに含まれるコンテンツデータの一部が格納されたファイルを生成しないことを特徴とする請求項１２に記載の送信装置。
【請求項１４】
前記送信手段は、前記第１の時間が、前記第１の所定の時間よりも長く、前記第２の所定の時間よりも短い場合には、前記第２の生成手段により前記ファイルが生成されると、当該ファイルを受信装置に送信することを特徴とする請求項１２または１３に記載の送信装置。
【請求項１５】
前記第２の生成手段は、前記コンテンツデータの取得要求を受けとったタイミングで前記第１の生成手段により生成中のファイルがある場合に、前記第１の生成手段により生成済みのファイルに含まれる前記コンテンツデータの一部が格納されたファイルを生成することを特徴とする請求項１〜１４の何れか１項に記載の送信装置。
【請求項１６】
前記取得手段は、符号化された前記コンテンツデータを取得し、
前記ファイルは、前記符号化されたコンテンツデータと、当該コンテンツデータに係る情報を含むヘッダとを含むことを特徴とする請求項１〜１５の何れか１項に記載の送信装置。
【請求項１７】
コンテンツデータを取得する取得工程と、
前記取得工程により取得されたコンテンツデータのうち所定の時間分のコンテンツデータが格納されたファイルを生成する第１の生成工程と、
前記第１の生成工程により生成済みのファイルに含まれるコンテンツデータの一部が格納されたファイルを生成する第２の生成工程と、
前記ファイルを受信装置に送信する送信工程と、を有することを特徴とする送信方法。
【請求項１８】
請求項１〜１６の何れか１項に記載の送信装置の各手段としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、送信装置、送信方法、およびプログラムに関し、特に、コンテンツデータを送信するために用いて好適なものである。
【背景技術】
【０００２】
近年、音声データや映像データ等のコンテンツデータにより構成されるストリーミング形式のコンテンツをユーザにリアルタイムに配信する配信システムが提供されている。このような配信システムにより、ユーザは、自身の端末装置を介して、ライブ映像等の所望のコンテンツをリアルタイムで楽しむことができる。
【０００３】
インターネット等のネットワークを介してストリーミング配信を可能とする技術として例えば、HTTP（HyperText Transfer Protocol）を用いたストリーミング技術（例えばMPEG-DASH）がある。HTTPストリーミング技術では、送信装置側でコンテンツデータを数秒毎のセグメントと呼ばれる単位に区切る。そして、それぞれのセグメントに対するアクセス情報であるURL（Uniform Resource Locator）をプレイリストと呼ばれるファイルに記述する。このプレイリストには、各セグメントに対応する各URLを記述することができる。受信装置は、プレイリストを受信し、当該プレイリストに記述されているURLを用いて所望のセグメントを取得する（特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２０１２−９９２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、コンテンツの提供にリアルタイム性が重視される場合、コンテンツデータを可及的に早くストリーミング配信することが求められる。しかしながら、セグメントの生成方法が固定であると、例えば、コンテンツデータの取得要求があったタイミングによっては、その要求に合うセグメントを適切に送信することができない場合がある。
より具体的な例として、１０秒分のコンテンツが１つのセグメントとして生成される場合の例を説明する。この例において、新たなセグメントの生成を開始したばかりのタイミングでコンテンツデータの取得要求を受信した場合、当該新たなセグメントの生成完了まで、最大１０秒間の待ち時間が発生する。これにより、当該新たなセグメントの送信に係る待ち時間が増大する恐れがある。一方、例えば、コンテンツデータの取得要求の受信に応じて、すでに生成完了している古いセグメントを送信すると、遅延時間（現実の時刻と再生コンテンツの時刻との差）が大きくなる恐れが生じる。
本発明は、このような問題点に鑑みてなされたものであり、受信装置からの要求に応じて、低遅延のコンテンツデータを早いタイミングで送信することができるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の送信装置は、コンテンツデータを取得する取得手段と、前記取得手段により取得されたコンテンツデータのうち所定の時間分のコンテンツデータが格納されたファイルを生成する第１の生成手段と、前記第１の生成手段により生成済みのファイルに含まれるコンテンツデータの一部が格納されたファイルを生成する第２の生成手段と、前記ファイルを受信装置に送信する送信手段と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、受信装置からの要求に応じて、低遅延のコンテンツデータを早いタイミングで送信することができる。
【図面の簡単な説明】
【０００８】
【図１】ネットワークシステムの構成を示す図である。
【図２】送信装置のハードウェアの構成を示す図である。
【図３】送信装置の機能的な構成を示す図である。
【図４】セグメントの生成方法の第１の対比例を説明する図である。
【図５】セグメントの生成方法の第２の対比例を説明する図である。
【図６】セグメントの生成方法を説明する図である。
【図７】セグメントの生成方法を詳細に説明する図である。
【図８】送信装置の処理の第１の例を説明するフローチャートである。
【図９】送信装置の処理の第２の例を説明するフローチャートである。
【発明を実施するための形態】
【０００９】
以下、添付の図面を参照して、実施形態を詳細に説明する。
【００１０】
＜第１の実施形態＞
まず、第１の実施形態について説明する。本実施形態では、MPEG-DASH（Dynamic Adaptive Streaming over Http）を用いてストリーミング配信を行う場合を例に挙げて説明する。そこで、まず、MPEG-DASHを用いる場合のストリーミング配信の概要について説明する。
【００１１】
MPEG-DASHでは、受信装置の能力や受信装置が置かれる通信状況に応じて、受信装置が取得するストリームを動的に変更することができる。MPEG-DASHでは、コンテンツデータ（例えば、映像データ、音声データ、テキストデータ等）を所定の時間長のセグメントに分割し、セグメントを取得するためのURLをプレイリストに記述する。受信装置は、初めにプレイリストを取得し、プレイリストに記述されているＵＲＬを用いて所望のコンテンツデータを送信装置に要求し、セグメントを取得する。更に、複数のバージョンのコンテンツデータセグメントに対するURLをプレイリストに記述することで、受信装置は、自身の能力や通信環境に応じて、最適なバージョンのコンテンツデータセグメントを取得することができる。
【００１２】
セグメントのファイル形式にはISO Base Media File Format（以降、ISOBMFFと称する）が利用される。ISOBMFFを用いる場合、セグメントは、大きく分けて、ヘッダ情報を格納する部分と符号化データを格納する部分とに分けられる。ヘッダ情報には、当該セグメントに格納する符号化データのサイズやタイムスタンプを示す情報等が含まれる。従って、１つのセグメントを完成させるには、当該セグメントに格納される符号化データの生成が全て完了していなければならない。尚、符号化データとは、符号化されたコンテンツデータのことである。
【００１３】
次に、本実施形態のネットワークシステムの一例を説明する。図１は、ネットワークシステムの全体構成の一例を示す図である。送信装置１００は、ネットワーク３００を介して、受信装置２００と相互に接続される。尚、送信装置１００および受信装置２００はそれぞれ複数存在しても良い。
送信装置１００は、符号化データの取得、プレイリスト・セグメントの生成、プレイリスト・コンテンツデータの取得要求の受信、およびプレイリスト・セグメントの送信等の機能を有する。送信装置１００の具体例としては、カメラ装置、ビデオカメラ装置、スマートフォン装置、ＰＣ装置、携帯電話等が挙げられるが、後述の機能を有するものであれば、送信装置１００は、前述の例に限定されない。
【００１４】
図２は、送信装置１００のハードウェアの構成の一例を示す図である。
送信装置１００は、バス１１１、ＣＰＵ（Central Processing Unit）１１２、ＲＯＭ（Read Only Memory）１１３、ＲＡＭ（Random Access Memory）１１４を備える。また、送信装置１００は、撮影部１１５、記憶部１１６、および通信部１１７を備える。ただし、撮影部１１５や記憶部１１６が送信装置１００とは別の装置として存在し、送信装置１００が撮影部１１５や記憶部１１６に接続される構成であってもよい。
【００１５】
ＣＰＵ１１２は、ＲＯＭ１１３、ＲＡＭ１１４、および記憶部１１６内に記憶されたコンピュータプログラムや処理用データに従って各種処理を実行することにより、送信装置１００の各種機能を実現する。また、ＲＡＭ１１４は、半導体メモリ等の揮発性の記録媒体により構成され、ＣＰＵ１１２が実行するコンピュータプログラムや処理用データを一時的に格納する。
【００１６】
ＲＯＭ１１３および記憶部１１６は、磁気的、光学的記録媒体、半導体メモリ等のＣＰＵ１１２が読み取り可能な不揮発性の記録媒体により構成される。ＲＯＭ１１３および記憶部１１６は、送信装置１００の起動プログラム等の基本プログラムを記憶する。また、ＲＯＭ１１３および記憶部１１６は、後述する送信装置１００の動作を実現する配信プログラム等のアプリケーションプログラム、およびこれらプログラムの実行に必要な処理用データも記憶する。
【００１７】
ここで、ＲＯＭ１１３および記憶部１１６内に記憶される情報の一部若しくは全部は、ネットワーク３００を介してインストールする構成にしてもよい。また、前述したアプリケーションプログラムは、後述する処理を実行する際に、ＣＰＵ１１２が記録媒体から読み出すようにしてもよい。この場合、ＣＰＵ１１２は、処理を実行する際に、記録媒体から読み出したアプリケーションプログラムをＲＡＭ１１４内に記録した後に、アプリケーションプログラムを実行する。尚、記録媒体には、例えば、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープ等のＣＰＵ１１２が読み取り可能な全ての記録媒体が含まれる。
【００１８】
撮影部１１５は、ＣＰＵ１１２の指示のもと、撮影を実行してコンテンツデータを生成する。コンテンツデータは、符号化されて記憶部１１６もしくはＲＡＭ１１４に保存される。このように本実施形態では、撮影部１１５により撮影された映像データがコンテンツデータである場合を例に挙げて説明する。また、通信部１１７は、受信装置２００との間で、有線通信または無線通信を行う。前述したように本実施形態では、MPEG-DASHを用いてコンテンツデータの配信に係る通信を行う。
【００１９】
受信装置２００は、コンテンツデータの再生・表示、プレイリスト・セグメントの取得要求の送信、プレイリスト・セグメントの取得、およびユーザからの入力の受け付け等の機能を有する。受信装置２００の具体例は、スマートフォン装置、ＰＣ装置、テレビ、携帯電話等が挙げられるが、前述の機能を備えるものであればこれに限定されない。尚、受信装置２００のハードウェアは、例えば、図２の構成に対し、コンピュータディスプレイとのＩ／Ｆ（インターフェース）を付加したもので実現することができるので、ここでは、その詳細な説明を省略する。
【００２０】
ネットワーク３００としては、例えば有線LAN（Local Area Network）や無線LAN（Wireless LAN）が挙げられる。ただし、ネットワーク３００は、これらに限定されない。ネットワーク３００は、例えば、インターネット、3G/4G/LTE等のWAN（Wide Area Network）、アドホックネットワーク、Bluetooth（登録商標）等を用いたものでもよい。
【００２１】
図３は、送信装置１００の機能的な構成の一例を示す図である。
図３において、送信装置１００は、取得部１０１、セグメント生成部１０２、プレイリスト生成部１０３、通信部１０４、要求処理部１０５、および予測部１０６を有する。
取得部１０１は、符号化データを取得する。セグメント生成部１０２は、取得部１０１で取得された符号化データを所定の時間毎に纏めて所定の時間分のコンテンツデータとすることを含む処理を行い、セグメントを生成する。プレイリスト生成部１０３は、セグメント生成部１０２からの通知を基に、セグメントの取得を可能とするＵＲＬを記述したプレイリストを生成する。通信部１０４は、ネットワーク３００を介して、プレイリストの取得要求およびセグメントの取得要求を受信したり、プレイリストおよびセグメントの送信を行ったりする。
【００２２】
要求処理部１０５は、受信装置２００からの取得要求を、通信部１０４を介して取得する。要求処理部１０５は、取得要求がプレイリストの取得要求である場合、プレイリスト生成部１０３に対してプレイリストの生成を指示する。要求処理部１０５は、この指示に応じてプレイリスト生成部１０３で生成されたプレイリストを、通信部１０４を介して受信装置２００に送信する。
【００２３】
要求処理部１０５は、取得要求がセグメントの取得要求である場合、予測部１０６に対して、セグメント生成部１０２で生成中のセグメントの生成が完了するまでの時間の導出を指示する。取得要求の時点で、セグメント生成部１０２でセグメントが生成中でない場合、要求処理部１０５は、予測部１０６に対して、時間Ｔｍ、Ｔｎの導出を指示する。予測部１０６は、時間Ｔｍ、Ｔｎを導出し、時間Ｔｎをセグメント生成部１０２に出力する。セグメント生成部１０２は、時間Ｔｎに対応するセグメントを、既に生成済みのセグメントのうち最新のセグメントから生成する。時間Ｔｍ、Ｔｎの詳細については後述する。
【００２４】
本実施形態では、例えば、取得部１０１を用いることにより取得手段の一例が実現される。また、例えば、セグメント生成部１０２を用いることにより、第１の生成手段および第２の生成手段の一例が実現される。また、例えば、通信部１０４を用いることにより、送信手段の一例が実現される。また、例えば、時間Ｔｍを用いることにより第１の時間の一例が実現され、時間Ｔｎを用いることにより第２の時間の一例が実現される。また、例えば、予測部１０６を用いることにより第１の導出手段および第２の導出手段の一例が実現される。また、例えば、セグメントを用いることによりファイルの一例が実現される。
【００２５】
ここで、本実施形態の内容を明確にするため、本実施形態と対比される２つの形態について説明する（以下、これらを対比形態と称する）。
図４は、第１の対比形態におけるセグメントの生成方法を説明する図である。図４は、送信装置側の処理を説明する図である。
図４において時間軸上の時刻Ｔ１は、受信装置によりコンテンツデータの取得が要求された時刻である。状態１は、時刻Ｔ１におけるセグメントの生成状態を示す。時刻Ｔ１の時点では、セグメント４０１は既に生成済みのセグメントであり、セグメント４０２は生成中のセグメントである。
第１の対比形態では、時刻Ｔ１において生成済みのセグメントの内、最新のセグメントから送信を開始する。つまり、図４においては、セグメント４０１から送信が開始される。
【００２６】
尚、詳細には、MPEG-DASHで使用するISOBMFFでは、最初に初期化セグメント４０３と呼ばれるセグメントが送信される。初期化セグメント４０３は、一般に、コンテンツデータの配信の決定時（符号化データを含む最初のセグメント４０１よりも前）に生成される。初期化セグメント４０３にはmoovと呼ばれるヘッダが存在する。moovには、以降に続くセグメントに格納される符号化データを復号する為の情報等、受信装置でのコンテンツデータの再生処理に必要な情報が含まれる。そして、セグメント１には、moofと呼ばれるヘッダを付与し、初期化セグメント４０３に続いて送信される。Moof(n)には、セグメントｎに含まれる１つ以上の符号化データの各々の位置を特定する為のオフセット情報や、符号化形式に依存した情報等が含まれる。尚、ｎは、セグメントを識別する情報であり、ここでは、１を初期値とし１ずつ増加する値が生成順にセグメントに付与されるものとする。各セグメントにおいてMoof(n)の後に続いて格納される符号化データにはmdat(n)と呼ばれるヘッダが付与される。
【００２７】
この様に、第１の対比形態では、送信装置は、コンテンツデータの取得要求を受信した時刻Ｔ１において既に生成済みのセグメント４０１から受信装置に送信する。このため、図４の状態１に示すセグメント４０２に格納されている符号化データの時間分、既に時間が経過している事から、遅延が増す事になる。即ち、セグメント４０２の生成が完了しても、セグメント４０１が送信中であるため、生成済みの最新のセグメント４０２の送信の開始が、図４に示す遅延時間に応じて遅れることになる。
【００２８】
図５は、第２の対比形態におけるセグメントの生成方法を説明する図である。図５は、送信装置側の処理を説明する図である。第２の対比形態は、図４に示す第１の対比形態で発生する遅延を少なくするため、送信装置は、セグメントの生成が完了した時点で、当該セグメントを受信装置に送信する（即ち、プッシュ配信する）形態である。
図５において、時刻Ｔ１は、受信装置によりコンテンツデータの取得が要求された時刻である。状態１は、時刻Ｔ１におけるセグメントの生成状態を示し、状態２は、時刻Ｔ２におけるセグメントの生成状態を示す。
セグメントをプッシュ配信する場合、例えばライブ映像の配信を行うケースでは、できるだけ遅延を小さくする為、セグメントの生成が完了次第、速やかに受信装置に送信する事が望ましい。従って、第２の対比形態では、送信装置は、セグメント５０１からではなく、セグメント５０２の生成が完了するまで待機して、初期化セグメント５０３を配信した後、セグメント５０２から配信を開始する。
【００２９】
つまり、図５における時刻Ｔ２から符号化データを含むセグメント５０２の配信が行われる為、時刻Ｔ１から時刻Ｔ２までの時間が待ち時間となる。即ち、受信装置は、時刻Ｔ１から時刻Ｔ２までの時間、コンテンツデータを受信しないことになる。
そこで、本実施形態では、第１の対比形態および第２の対比形態で生じる前述した遅延や待ち時間を削減する。図６は、本実施形態におけるセグメントの生成方法の概要の一例を説明する図である。
【００３０】
図６において、時刻Ｔ１は、受信装置によりコンテンツデータの取得が要求された時刻である。状態１は、時刻Ｔ１におけるセグメントの生成状態を示す。また、時間Ｔｍは、時刻Ｔ１から、セグメント６０２に格納予定の残りの符号化データの取得（生成）が完了するまでの時間の予測値である。本実施形態では、送信装置１００は、セグメント６０１に格納された符号化データの内、最新のものから順に、時間Ｔｍに応じた時間Ｔｎ分の符号化データを抽出して初期化セグメント６０３の次に送信するセグメント６０４を生成する。
これにより、受信装置２００はセグメント６０４を直ぐに取得する事が可能となる。また、送信装置１００が最初に取得した符号化データを含むセグメント６０４は、その次に受信装置２００に送信されるセグメント６０２の取得が可能となる時間Ｔｍに応じた分のデータであることから、再生処理の遅延も増える事がなくなる。
【００３１】
次に、図７を参照しながら、受信装置２００に最初に配信する符号化データを含むセグメント６０４を生成する方法の一例を詳しく説明する。図７は、本実施形態におけるセグメントの生成方法の一例を詳細に説明する図である。
【００３２】
図７において、セグメント６０１はフレーム間予測符号化を用いて圧縮された符号化データを格納したものであり、５個のGOP（Group Of Pictures）で構成される。各々のGOPは、例えば、IBBPBBPBBP（I：イントラ圧縮、P:前方予測圧縮、B：双方向予測圧縮）の様なフレーム構成となっている。図７の時間Ｔｎは、図６で説明した時間Ｔｍを基に送信装置１００が算出する時間である。図７においては、時間Ｔｎは、GOP３個分の時間となっている。本実施形態では、時間Ｔｎに相当するGOP３個分の符号かデータを、新しいものから順にセグメント６０１から抽出したものがGOP3からGOP5である。送信装置１００は、この様にして抽出して作成した符号化データを格納したセグメント６０４を、初期化セグメント６０３に続いて送信する。
【００３３】
尚、時間Ｔｎと時間Ｔｍは、ほぼ同じ値である事が望ましいが、送信装置１００は、セグメントを生成するための処理時間や処理内容等を考慮して時間Ｔｎを算出しても良い。例えば、送信装置１００は、セグメントを生成するのに要する時間を時間Ｔｍから差し引いて時間Ｔｎを算出することができる。また、図７に示す様に、複数のGOPから成るセグメントを生成する場合、格納する符号化データは、GOP単位で抽出する方が処理負荷的に望ましい。従って、このような場合、送信装置１００は、時間Ｔｍに収まる時間分のGOPを抽出してセグメントに格納する様に時間Ｔｎを算出しても良い。また、時間Ｔｎを用いるのが好ましいが、送信装置１００は、セグメント６０１に格納された符号化データの内、最新のものから順に、時間Ｔｍ分の符号化データを抽出してセグメント６０４を生成してもよい。
【００３４】
次に、図８のフローチャートを参照しながら、本実施形態の送信装置１００の処理の一例を説明する。図８では、送信装置１００が行う処理の内、セグメントの取得要求からセグメントの送信を開始するまでの一連の処理の流れを示す。MPEG-DASHを用いる場合、ステップＳ８０１に至るまでに、送信装置１００は、受信装置２００とプレイリストのやり取り等を行う。また、ステップＳ８０６の処理の後（符号化データを含む最初のセグメントの送信を開始した後）は、順次セグメントの送信を行う。ステップＳ７０１の前（セグメントの取得要求を受信する前）の処理およびステップＳ８０６の後（セグメントデータの送信を開始した後）の処理は、公知の技術で実現することができるので、その詳細な説明を省略する。
【００３５】
まず、ステップＳ８０１において、通信部１０４は、セグメントの取得要求を受信する。
次に、ステップＳ８０２において、要求処理部１０５は、セグメント生成部１０２でセグメントを生成中であるか否かを判定する。この判定の結果、セグメントを生成中でない場合、処理は、後述するステップＳ８０７に進む。一方、セグメントを生成中である場合、処理は、ステップＳ８０３に進む。
【００３６】
ステップＳ８０３において、予測部１０６は、セグメントの取得要求を受信した時刻Ｔ１から、生成中のセグメント６０２に格納予定の残りの符号化データの生成が完了するまでの時間Ｔｍを導出する。例えば、予測部１０６は、予め定められている単位データ当たりの処理時間と、生成中のセグメント６０２に格納予定の残りの符号化データのデータ量とに基づいて、時間Ｔｍを導出する。尚、処理時間には、例えば、符号化に要する時間が含まれる。そして、予測部１０６は、時間Ｔｍに基づいて、最新の生成済みのセグメント６０１から抽出する符号化データに対応する時間Ｔｎを導出する。時間Ｔｎの導出方法の一例は前述した通りである。
【００３７】
ステップＳ８０４において、セグメント生成部１０２は、生成済みの最新のセグメント６０１から、ステップＳ８０３で導出された時間Ｔｎ分の符号化データを取得順で新しいデータの方から順に抽出し、セグメント６０４を生成する。
次に、ステップＳ８０５において、通信部１０４は、初期化セグメント６０３を受信装置２００に送信する。
【００３８】
次に、ステップＳ８０６において、通信部１０４は、ステップＳ７０４で抽出された符号化データを格納したセグメント６０４から送信を開始する。その後、通信部１０４は、セグメント生成部１０２で生成されたセグメントを順次受信装置２００に送信する事で、前述した遅延や待ち時間が少ないストリーミング配信が可能となる。
【００３９】
ステップＳ８０２でセグメントを生成中でないと判定された場合、ステップＳ８０７において、通信部１０４は、初期化セグメント６０３を受信装置２００に送信する。次に、ステップＳ８０８において、通信部１０４は、生成済みの最新のセグメントから送信を開始する。
【００４０】
以上のように本実施形態では、送信装置１００は、セグメントの取得要求を受信した時刻Ｔ１にセグメント６０２を生成中である場合、時刻Ｔ１から、生成中のセグメント６０２に格納予定の残りの符号化データの生成が完了するまでの時間Ｔｍを導出する。送信装置１００は、この時間Ｔｍに応じた時間Ｔｎ分だけ、生成済みの最新のセグメント６０２に格納されている符号化データを新しいものから順に抽出してセグメント６０４を生成し、セグメント６０４から送信を開始する。従って、例えば、MPEG-DASHでライブ映像配信を行う場合でも、セグメント６０２の送信の開始の遅延を減少させることができると共に、セグメント６０２の生成が完了するまでの待ち時間を減少させることができる。よって、送信装置１００は、セグメントの取得要求に応じて、送信するセグメントを調整できるようになり、遅延や待ち時間が少ないストリーミング配信が可能となる。これにより、送信装置１００は、受信装置２００からの要求に応じて、低遅延のコンテンツデータを早いタイミングで送信することができる。
【００４１】
（第２の実施形態）
次に、第２の実施形態を説明する。第１の実施形態では、時間Ｔｍに関わらず、時間Ｔｍに応じた時間Ｔｎ分の符号化データを含むセグメント６０４から送信を開始する場合を例に挙げて説明した。これに対し、本実施形態では、セグメントの生成周期とセグメントの取得が要求されるタイミングとに応じて、初期化セグメント６０３の次に送信するセグメントの生成方法を選択する場合を例に挙げて説明する。このように本実施形態と第１の実施形態とでは、時間Ｔｍを導出した後の送信装置１００の処理が主として異なる。従って、本実施形態の説明において、第１の実施形態と同一の部分については、図１〜図８に付した符号と同一の符号を付す等して詳細な説明を省略する。
【００４２】
図９は、本実施形態の送信装置の処理の一例を説明するフローチャートである。図９では、送信装置が行う処理の内、セグメントの取得要求からセグメントの送信を開始するまでの一連の処理の流れを示す。
【００４３】
ステップＳ９０１〜Ｓ９０３の処理は、図８におけるステップＳ８０１〜８０３の処理と同じである。即ち、まず、ステップＳ９０１において、通信部１０４は、セグメントの取得要求を受信する。
次に、ステップＳ９０２において、要求処理部１０５は、セグメント生成部１０２においてセグメントを生成中であるか否かを判定する。この判定の結果、セグメントを生成中でない場合、処理は、後述するステップＳ９１１に進む。一方、セグメントを生成中である場合、処理は、ステップＳ９０３に進む。
ステップＳ９０３において、予測部１０６は、時間Ｔｍ、Ｔｎを導出する。
【００４４】
次に、ステップＳ９０４において、予測部１０６は、ステップＳ９０３で導出した時間Ｔｍが、所定の時間Ｔｈ１以下であるか否かを判定する。この判定の結果、ステップＳ９０３で導出した時間Ｔｍが、所定の時間Ｔｈ１以下である場合、処理は、ステップＳ９０９に進む。ステップＳ９０９において、通信部１０４は、初期化セグメント６０３を受信装置２００に送信する。
【００４５】
次に、ステップＳ９１０において、通信部１０４は、セグメント生成部１０２で生成中のセグメントが完成次第、当該セグメントの送信を開始する。即ち、時間Ｔｍが待ち時間として許容可能な範囲である場合、送信装置１００は、生成済みの最新のセグメント６０１から符号化データを抽出する処理を行わずに、生成中のセグメント６０２の生成が完了するまで待機する。そして、送信装置１００は、生成完了後にセグメント６０２の送信を開始する。
【００４６】
一方、ステップＳ９０３で導出した時間Ｔｍが、所定の時間Ｔｈ１以下でない場合、ステップＳ９０５において、予測部１０６は、ステップＳ９０３で導出した時間Ｔｍが、所定の時間Ｔｈ２（＞Ｔｈ１）を上回るか否かを判定する。この判定の結果、ステップＳ９０３で導出した時間Ｔｍが、所定の時間Ｔｈ２を上回る場合、処理は、ステップＳ９１１に進む。ステップＳ９１１において、通信部１０４は、初期化セグメント６０３を受信装置２００に送信する。そして、ステップＳ９１２において、通信部１０４は、生成済みの最新のセグメント６０１から送信を開始する。即ち、時間Ｔｍが十分に長い時間であれば、生成済みの最新のセグメント６０１の生成が完了から短い時間しか経過していない。そこで、送信装置１００は、生成済みの最新のセグメント６０１から符号化データを抽出する処理を行わずに、当該セグメント６０１から送信を開始する。
【００４７】
一方、ステップＳ９０３で導出した時間Ｔｍが、所定の時間Ｔｈ２を上回らない場合、処理は、ステップＳ９０６に進む。ステップＳ９０６〜Ｓ９０８の処理は、図８におけるステップＳ８０４〜８０６の処理と同じである。即ち、セグメント生成部１０２は、セグメント６０４を生成する。次に、ステップＳ９０７において、通信部１０４は、初期化セグメント６０３を受信装置２００に送信する。次に、ステップＳ９０８において、通信部１０４は、セグメント６０４から送信を開始する。
【００４８】
以上のように本実施形態では、時間Ｔｍに応じて、セグメント６０１、６０２、６０４の何れから送信を開始するかを切り替える。従って、第１の実施形態で説明したのと同様に、セグメント６０２の送信の開始の遅延を減少させることができると共に、セグメント６０２の生成が完了するまでの待ち時間を減少させることができる。また、データ量が少ないセグメント６０４を生成することを抑制することができるので、前述した遅延や待ち時間の減少を実現しつつ、処理の負担を軽減することができる。
【００４９】
尚、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【００５０】
（その他の実施例）
本発明は、前述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５１】
１００：送信装置、２００：受信装置、３００：ネットワーク
【図１】
2018113568.tif 000003
【図２】
2018113568.tif 000004
【図３】
2018113568.tif 000005
【図４】
2018113568.tif 000006
【図５】
2018113568.tif 000007
【図６】
2018113568.tif 000008
【図７】
2018113568.tif 000009
【図８】
2018113568.tif 000010
【図９】
2018113568.tif 000011