(57)【要約】  本開示は、複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を効率的に行うことができるようにする情報処理装置および情報処理方法に関する。httpクライアントは、複数の属性の動画コンテンツを管理するMPDファイルと、複数の属性のうちの所定の属性の動画コンテンツの初期化セグメントファイルの送信を配信サーバに要求する、push-init-segment指令を含むMPDリクエストを送信する。本開示は、例えば、配信サーバと再生クライアントがネットワークを介して接続されることにより構成される情報処理システムの再生クライアント等に適用することができる。
2017138387.tif 000002
【特許請求の範囲】
【請求項１】
複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を、他の情報処理装置に要求する管理ファイル要求情報を送信する送信部
を備える情報処理装置。
【請求項２】
前記管理ファイルは、MPD（Media Presentation Description）ファイルであり、
前記初期化ファイルは、初期化セグメントファイルであり、
前記管理ファイル要求情報は、前記所定の属性を示す属性情報を含む
ように構成された
請求項１に記載の情報処理装置。
【請求項３】
前記MPDファイルは、複数の種類の前記コンテンツを管理し、
前記管理ファイル要求情報は、前記初期化セグメントファイルに対応する前記コンテンツの種類を示す情報を含む
ように構成された
請求項２に記載の情報処理装置。
【請求項４】
前記送信部は、所定の符号化ビットレートの所定の再生時刻のコンテンツのファイルと、前記他の情報処理装置により許容範囲内で選択された符号化ビットレートの前記所定の再生時刻より後の再生時刻の前記コンテンツである後続コンテンツのファイルの送信を、前記他の情報処理装置に要求するコンテンツファイル要求情報を送信する
ように構成された
請求項１に記載の情報処理装置。
【請求項５】
前記管理ファイルは、MPD（Media Presentation Description）ファイルであり、
前記ファイルは、メディアセグメントファイルであり、
前記コンテンツファイル要求情報は、前記許容範囲を示す範囲情報を含む
ように構成された
請求項４に記載の情報処理装置。
【請求項６】
前記コンテンツファイル要求情報は、前記後続コンテンツの期間を示す情報を含む
ように構成された
請求項５に記載の情報処理装置。
【請求項７】
前記属性の種類は、前記コンテンツの符号化ビットレート、言語、役割、解像度、サンプリングレート、フレームレート、およびチャンネル数の少なくとも１つである
ように構成された
請求項１に記載の情報処理装置。
【請求項８】
前記送信部は、HTTP（HyperText Transfer Protocol）/2またはWebSocketプロトコルに準拠した送信を行う
ように構成された
請求項１に記載の情報処理装置。
【請求項９】
情報処理装置が、
複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を、他の情報処理装置に要求する管理ファイル要求情報を送信する送信ステップ
を含む情報処理方法。
【請求項１０】
複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を要求する管理ファイル要求情報に基づいて、前記管理ファイルと前記所定の属性のコンテンツの初期化ファイルを送信する送信部と
を備える情報処理装置。
【請求項１１】
前記管理ファイルは、MPD（Media Presentation Description）ファイルであり、
前記初期化ファイルは、初期化セグメントファイルであり、
前記管理ファイル要求情報は、前記所定の属性を示す属性情報を含む
ように構成された
請求項１０に記載の情報処理装置。
【請求項１２】
前記MPDファイルは、複数の種類の前記コンテンツを管理し、
前記管理ファイル要求情報は、前記初期化セグメントファイルに対応する前記コンテンツの種類を示す情報を含む
ように構成された
請求項１１に記載の情報処理装置。
【請求項１３】
所定の符号化ビットレートの所定の再生時刻のコンテンツのファイルと、前記情報処理装置により許容範囲内で選択された符号化ビットレートの前記所定の再生時刻より後の再生時刻の前記コンテンツである後続コンテンツのファイルの送信を要求するコンテンツファイル要求情報と、ネットワークの帯域とに基づいて、前記許容範囲内の符号化ビットレートから、前記後続コンテンツの符号化ビットレートを選択する選択部
をさらに備え、
前記送信部は、前記所定の符号化ビットレートの前記所定の再生時刻のコンテンツのファイルと、前記選択部により選択された前記符号化ビットレートの前記後続コンテンツのファイルを送信する
ように構成された
請求項１０に記載の情報処理装置。
【請求項１４】
前記管理ファイルは、MPD（Media Presentation Description）ファイルであり、
前記ファイルは、メディアセグメントファイルであり、
前記コンテンツファイル要求情報は、前記許容範囲を示す範囲情報を含む
ように構成された
請求項１３に記載の情報処理装置。
【請求項１５】
前記コンテンツファイル要求情報は、前記後続コンテンツの期間を示す情報を含む
ように構成された
請求項１４に記載の情報処理装置。
【請求項１６】
前記属性の種類は、前記コンテンツの符号化ビットレート、言語、役割、解像度、サンプリングレート、フレームレート、およびチャンネル数の少なくとも１つである
ように構成された
請求項１０に記載の情報処理装置。
【請求項１７】
前記送信部は、HTTP（HyperText Transfer Protocol）/2またはWebSocketプロトコルに準拠した送信を行う
ように構成された
請求項１０に記載の情報処理装置。
【請求項１８】
情報処理装置が、
複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を要求する管理ファイル要求情報に基づいて、前記管理ファイルと前記所定の属性のコンテンツの初期化ファイルを送信する送信ステップと
を含む情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置および情報処理方法に関し、特に、複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を効率的に行うことができるようにした情報処理装置および情報処理方法に関する。
【背景技術】
【０００２】
MPEG-DASH（Moving Picture Experts Group phase − Dynamic Adaptive Streaming over HTTP）によるダイナミック・アダプティブ・ストリーミングでは、サーバが、各メディア種別の属性の異なる動画コンテンツのセグメントファイルと、メディア種別および属性ごとにセグメントファイルを管理するMPD（Media Presentation Description）ファイルとを用意する。【０００３】
なお、メディア種別とは、映像、字幕、音声などの動画コンテンツの種類であり、属性の種類は、符号化ビットレート、言語、役割（目的）、映像の解像度やフレームレート、音声のサンプリングレートやチャンネル数などである。MPDファイルには、メディア種別ごとに、各属性を示す属性情報、各属性のセグメントファイルのURL（Uniform Resource Locator）などが含まれている。【０００４】
クライアントは、サーバからMPDファイルを取得し、MPDファイルに基づいて各メディア種別の所定の属性のセグメントファイルのURLをサーバに送信することにより、そのセグメントファイルを取得する。【０００５】
現在のMPEG-DASHでは、クライアントとサーバ間の通信プロトコルが、HTTP（HyperText Transfer Protocol）1.1である。従って、基本的に、サーバは、クライアントからのリクエストに対してレスポンスとしてデータを送信する。【０００６】
具体的には、クライアントが、サーバからMPDファイルの送信を要求するHTTP GET リクエストをサーバに送信し、サーバが、このHTTP GETリクエストで指定されたURLのMPDファイルを、HTTP GETレスポンスとしてクライアントに送信する。【０００７】
次に、クライアントが、受信したMPDファイルに基づいて、各メディア種別の１以上の属性のセグメントファイルのうちの初期化セグメントファイル（Initialization Segment）の送信を要求するHTTP GETリクエストを、初期化セグメントファイル単位で順次サーバに送信する。そして、サーバが、このHTTP GETリクエストで指定されたURLの初期化セグメントファイルを、HTTP GETレスポンスとしてクライアントに順次送信する。【０００８】
また、クライアントは、実効ネットワーク帯域などに基づいて、メディア種別ごとに初期化セグメントファイルに対応する属性から１つの属性を選択する。そして、クライアントは、選択された属性のセグメントファイルのうちのメディアセグメントファイルの送信を要求するHTTP GETリクエストを、メディアセグメントファイル単位で順次サーバに送信する。サーバは、このHTTP GETリクエストで指定されたURLのメディアセグメントファイルをHTTP GETレスポンスとして順次クライアントに送信し、クライアントは、受信したメディアセグメントファイルを受信バッファに順次蓄積する。【０００９】
このとき、クライアントは、メディアセグメントファイルの受信速度（例えば、受信されたデータの再生時間に対する受信に要した時間の比など）を計測する。計測された受信速度は、次のメディアセグメントファイルの各メディア種別の符号化ビットレートの属性の選択に用いられる。【００１０】
以上のように、クライアントが、初期化セグメントファイル（メディアセグメントファイル）を受信するためには、初期化セグメントファイル単位（メディアセグメントファイル単位）で、HTTP GETリクエストの送信とHTTP GETレスポンスの受信を行う必要がある。従って、オーバヘッドが大きい。【００１１】
一方、2015年5月にHTTP1.1の後継バージョンとしてHTTP/2がIETF(Internet Engineering Task Force)によって公開された（例えば、非特許文献１参照）。HTTP/2は、HTTP1.1との完全な後方互換性を維持しながら、多重化通信、ヘッダの圧縮、リクエストとレスポンスのパイプライン化などを可能にするものである。【００１２】
また、これよりも前の2011年12月に、HTTPをベースとした多重化通信（双方向通信）を可能とするプロトコルとして、WebSocketプロトコルがIETFによって公開された（例えば、非特許文献２参照）。なお、多重化通信とは、サーバが、クライアントのリクエストに対するレスポンスだけでなく、リクエストによらないデータも送信する通信である。【００１３】
以上により、現在、MPEGでは、MPEG-DASHにおけるクライアントとサーバ間の通信プロトコルとして、全二重通信プロトコルであるHTTP/2やWebSocketプロトコルを採用することにより、ストリーミングを効率化することが検討されている。
【先行技術文献】
【非特許文献】
【００１４】
【非特許文献１】Hypertext Transfer Protocol Version 2 (HTTP/2)，May 2015、インターネット＜URL:https://tools.ietf.org/html/rfc7540＞
【非特許文献２】The WebSocket Protocol, December 2011、インターネット＜URL:https://tools.ietf.org/html/rfc6455＞
【発明の概要】
【発明が解決しようとする課題】
【００１５】
しかしながら、複数の属性のうちの所定の属性の動画コンテンツの初期化セグメントファイルの送信を効率的に行うことは考案されていなかった。【００１６】
本開示は、このような状況に鑑みてなされたものであり、複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を効率的に行うことができるようにするものである。
【課題を解決するための手段】
【００１７】
本開示の第１の側面の情報処理装置は、複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を、他の情報処理装置に要求する管理ファイル要求情報を送信する送信部を備える情報処理装置である。【００１８】
本開示の第１の側面の情報処理方法は、本開示の第１の側面の情報処理装置に対応する。【００１９】
本開示の第１の側面においては、複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を、他の情報処理装置に要求する管理ファイル要求情報が送信される。【００２０】
本開示の第２の側面の情報処理装置は、複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を要求する管理ファイル要求情報に基づいて、前記管理ファイルと前記所定の属性のコンテンツの初期化ファイルを送信する送信部とを備える情報処理装置である。【００２１】
本開示の第２の側面の情報処理方法は、本開示の第２の側面の情報処理装置に対応する。【００２２】
本開示の第２の側面においては、複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を要求する管理ファイル要求情報に基づいて、前記管理ファイルと前記所定の属性のコンテンツの初期化ファイルが送信される。【００２３】
なお、本開示の第１および第２の側面の情報処理装置は、コンピュータにプログラムを実行させることにより実現することができる。【００２４】
また、本開示の第１および第２の側面の情報処理装置を実現するために、コンピュータに実行させるプログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
【発明の効果】
【００２５】
本開示の第１の側面によれば、データの送信を要求することができる。また、本開示の第１の側面によれば、複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信の要求を効率的に行うことができる。【００２６】
また、本開示の第２の側面によれば、データを受信することができる。また、本開示の第１の側面によれば、複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を効率的に行うことができる。【００２７】
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【００２８】
【図１】MPEG-DASHにおけるMPDファイルの階層構造を説明する図である。
【図２】本開示を適用した情報処理システムの第１実施の形態の構成例を示すブロック図である。
【図３】図２の再生クライアントのソフトウエアの階層構造の例を示す図である。
【図４】図２の情報処理システムの処理を説明するフローチャートである。
【図５】初期化セグメント送信リスト生成処理の詳細を説明するフローチャートである。
【図６】後続メディアセグメント送信リスト生成処理スタートの詳細を説明するフローチャートである。
【図７】WebSocketプロトコルにおけるフレームの構成例を示す図である。
【図８】第２実施の形態におけるサブフレームの構造例を示す図である。
【図９】サブフレームのEXTENSIONの例を示す図である。
【図１０】サブフレームのEXTENSIONの他の例を示す図である。
【図１１】コンピュータのハードウエアの構成例を示すブロック図である。
【発明を実施するための形態】
【００２９】
以下、本開示を実施するための形態（以下、実施の形態という）について説明する。なお、説明は以下の順序で行う。
１．第１実施の形態：情報処理システム（図１乃至図６）
２．第２実施の形態：情報処理システム（図７乃至図１０）
３．第３実施の形態：コンピュータ（図１１）
【００３０】
＜第１実施の形態＞
（MPDファイルの説明）
図１は、MPEG-DASHにおけるMPDファイルの階層構造を説明する図である。
【００３１】
MPDファイルには、動画コンテンツの符号化方式、符号化ビットレート、映像の解像度、言語などの情報が階層化されて、XML形式で記述される。
【００３２】
具体的には、図１に示すように、MPDファイルには、ピリオド（Period）、アダプテーションセット（AdaptationSet）、リプレゼンテーション（Representation）、セグメントインフォ（SegmentInfo）等の要素が階層的に含まれている。
【００３３】
MPDファイルでは、自分が管理する動画コンテンツが所定の時間範囲（例えば、番組、ＣＭ（Commercial）などの単位）で分割される。ピリオド要素は、分割された動画コンテンツごとに記述される。ピリオド要素は、動画コンテンツのプログラム(同期を取った１組の映像データや音声データなどのデータ)の再生開始時刻などの情報を有する。
【００３４】
アダプテーションセット要素は、ピリオド要素に含まれ、そのピリオド要素に対応する動画コンテンツのリプレゼンテーション要素をメディア種別や属性などによってグルーピングする。アダプテーションセット要素は、グループに含まれるリプレゼンテーション要素に対応する動画コンテンツに共通のメディア種別、属性などを有する。
【００３５】
リプレゼンテーション要素は、それをグルーピングするアダプテーションセット要素に含まれ、上位層のピリオド要素に対応する動画コンテンツのうちの、メディア種別および属性が同一である動画コンテンツのセグメントファイル群ごとに記述される。リプレゼンテーション要素は、このリプレゼンテーション要素に対応するセグメントファイル群に共通の属性、URLなどを有する。
【００３６】
セグメントインフォ要素は、リプレゼンテーション要素に含まれ、そのリプレゼンテーションに対応するセグメントファイル群の各セグメントファイルに関する情報（例えば、URLなど）を有する。
【００３７】
（情報処理システムの第１実施の形態の構成例）
図２は、本開示を適用した情報処理システムの第１実施の形態の構成例を示すブロック図である。
【００３８】
図２の情報処理システム１０は、配信サーバ１１と再生クライアント１２がネットワーク１３を介して接続することにより構成される。情報処理システム１０は、HTTP/2に準拠して、MPEG-DASHによるダイナミック・アダプティブ・ストリーミングを行う。
【００３９】
具体的には、情報処理システム１０の配信サーバ１１は、記憶部３０、httpサーバ３１、解析部３２、計測部３３、選択部３４、および選択部３５により構成される。
【００４０】
配信サーバ１１の記憶部３０（ストレージ）は、複数のメディア種別の各属性の動画コンテンツのセグメントファイルを管理するMPDファイルと、そのセグメントファイルとを記憶する。
【００４１】
セグメントファイルは、動画コンテンツの符号化ストリームをセグメントと呼ばれる数秒から10秒程度の時間単位で格納するメディアセグメントファイルと、その符号化ストリームを復号する際に用いられるパラメータを含む初期化セグメントファイルとにより構成される。
【００４２】
メディアセグメントファイルに格納される符号化ストリームは、メディア種別および属性ごとに、動画コンテンツが符号化された符号化ストリームである。第１実施の形態では、属性の種類は、言語、役割（目的）、および符号化ビットレートであるものとする。従って、例えば、符号化ビットレートが異なる符号化ストリームや言語が異なる符号化ストリームは、それぞれ、異なるメディアセグメントに格納される。
【００４３】
httpサーバ３１は、HTTP/2に準拠してネットワーク１３を介して再生クライアント１２と通信を行う。具体的には、httpサーバ３１は、再生クライアント１２から送信されてくる、MPDファイルの送信を配信サーバ１１に要求するHTTP GETリクエスト（以下、MPDリクエストという）を受信する。httpサーバ３１は、MPDリクエスト（管理ファイル要求情報）で指定されたMPDファイルのURLに基づいて、記憶部３０からMPDファイルを読み出し、再生クライアント１２に送信する。また、httpサーバ３１は、MPDリクエストのヘッダを解析部３２に供給する。
【００４４】
また、httpサーバ３１は、再生クライアント１２から送信されてくる、所定のメディア種別の所定の属性の所定の再生時刻のメディアセグメントファイルの送信を配信サーバ１１に要求するHTTP GETリクエスト（以下、メディアリクエストという）を受信する。httpサーバ３１は、メディアリクエスト（コンテンツファイル要求情報）で指定されたURLに基づいて、記憶部３０から選択部３４を介してメディアセグメントファイルを読み出し、再生クライアント１２に送信する。また、httpサーバ３１は、メディアリクエストのヘッダを解析部３２に供給する。
【００４５】
さらに、httpサーバ３１（送信部）は、選択部３４から供給される初期化セグメントファイルおよび選択部３５から供給されるメディアセグメントファイルを、再生クライアント１２に送信する。
【００４６】
解析部３２は、httpサーバ３１から供給されるMPDリクエストのヘッダを解析し、push-init-segment指令を記述する拡張ヘッダを抽出する。push-init-segment指令は、記憶部３０に記憶される複数のメディア種別の各属性の動画コンテンツの初期化セグメントファイルのうちの、所定のメディア種別の所定の属性の初期化セグメントファイルの送信を配信サーバ１１に要求するプッシュ指令である。
【００４７】
push-init-segment指令を記述する拡張ヘッダの記述は、「Accept-push-policy: “type”=“push-init-segment”, PUSH_PARAMS」である。「Accept-push-policy」は、拡張ヘッダの名前であり、配信サーバ１１に対するプッシュ指令を記述する拡張ヘッダであることを示している。「Accept-push-policy」以降の記述は、パラメータを示すコードと、そのパラメータの値とをイコールで結ぶことにより、各パラメータの値を指定する。
【００４８】
即ち、「“type”=“push-init-segment”」では、プッシュ指令のタイプ（種類）をパラメータとして示すコード「type」と、そのパラメータの値である「push-init-segment」とがイコールで結ばれている。従って、拡張ヘッダに記述されるプッシュ指令のタイプとして、push-init-segment指令が指定されている。
【００４９】
また、「“type”=“push-init-segment”」の後の「PUSH_PARAMS」は、push-init-segment指令により送信を要求する初期化セグメントファイルのメディア種別（種類）または属性の種類をパラメータとして示すコードと、そのパラメータの値とをイコールで結ぶ記述である。この記述により、push-init-segment指令により送信を要求する初期化セグメントファイルのメディア種別または属性が指定される。
【００５０】
例えば、「PUSH_PARAMS」では、メディア種別をパラメータとして示すコード「media」と、メディア種別を示す値であるMIME-typeとがイコールで結ばれる。これにより、push-init-segment指令により送信を要求する初期化セグメントファイルのメディア種別が指定される。メディア種別を示すMIME-typeとしては、「video/mp4」、「audio/mp4」などがある。「video/mp4」は、メディア種別としてMP4形式でファイル化される映像を示し、「audio/mp4」は、メディア種別としてMP4形式でファイル化される音声を示す。
【００５１】
また、「PUSH_PARAMS」では、言語をパラメータとして示すコード「lang」と、言語の属性を示す属性情報としてのISO 639-1に基づく言語コードとがイコールで結ばれる。これにより、push-init-segment指令により送信を要求する初期化セグメントファイルの言語の属性が指定される。例えば、言語の属性として日本語を指定する場合、「PUSH_PARAMS」には、「“lang”=”ja”」が記述される。なお、言語の属性は、メディア種別として音声または字幕が指定される場合にのみ指定することができる。
【００５２】
さらに、「PUSH_PARAMS」では、目的（役割）をパラメータとして示すコード「role」と、目的（役割）の属性情報としてのMPDファイルのアダプテーションセット要素が有し得るroleアトリビュートの値とがイコールで結ばれる。これにより、push-init-segment指令により送信を要求する初期化セグメントファイルの目的（役割）の属性が指定される。MPDファイルが有し得るroleアトリビュートの値としては、「main」、「alternate」、「supplementary」、「commentary」、「dub(吹替え)」、「description」などがある。
【００５３】
また、「PUSH_PARAMS」では、符号化ビットレートをパラメータとして示すコード「bitrate」と、符号化ビットレートの属性情報としての１秒あたりの符号化ビットレートの範囲とがイコールで結ばれる。これにより、push-init-segment指令により送信を要求する初期化セグメントファイルの符号化ビットレートの属性の範囲が指定される。
【００５４】
従って、例えば、push-init-segment指令により送信を要求する初期化セグメントファイルのメディア種別、目的(役割)、および符号化ビットレートを指定するpush-init-segment指令を記述する拡張ヘッダの記述は、「Accept-push-policy: “type”=“push-init-segment”,”media”=”video/mp4”,”role”=”main”,”bitrate”=”400000-8000000”」になる。
【００５５】
この場合、push-init-segment指令により送信を要求する初期化セグメントファイルのメディア種別として、MP4形式でファイル化される映像が指定されており、目的(役割)の属性情報として「main」が指定されている。また、符号化ビットレートの属性情報の範囲として400kbpsから8Mbpsまでの範囲が指定されている。
【００５６】
解析部３２は、push-init-segment指令を記述する拡張ヘッダの「PUSH_PARAMS」により指定されたメディア種別および属性を認識し、選択部３４に供給する。
【００５７】
また、解析部３２は、httpサーバ３１から供給されるメディアリクエストのヘッダを解析し、push-media-adapted指令を記述する拡張ヘッダを抽出する。push-media-adapted指令は、送信元により許容範囲内で選択された符号化ビットレートの後続メディアセグメントファイル（後続コンテンツのファイル）の送信を配信サーバ１１に要求するプッシュ指令である。なお、後続メディアセグメントファイルとは、メディアリクエストで送信が要求されるメディアセグメントファイルの再生時刻より後の再生時刻の、そのメディアセグメントファイルと符号化ビットレート以外の属性が同一であるメディアセグメントファイルである。
【００５８】
push-media-adapted指令を記述する拡張ヘッダの記述は、「Accept-push-policy: “type”=“push-media-adapted”, PUSH_PARAMS」である。push-media-adapted指令を記述する拡張ヘッダの記述は、プッシュ指令のタイプと、PUSH_PARAMSにおけるパラメータとを除いて、push-init-segment指令を記述する拡張ヘッダの記述と同様である。
【００５９】
即ち、push-media-adapted指令を記述する拡張ヘッダの記述では、「“type”=“push-media-adapted”」において、コード「type」と「push-init-segment」とがイコールで結ばれている。従って、拡張ヘッダに記述されるプッシュ指令のタイプとして、push-media-adapted指令が指定されている。
【００６０】
また、「“type”=“push-media-adapted”」の後の「PUSH_PARAMS」は、push-media-adapted指令により送信を要求する後続メディアセグメントファイルの期間と符号化ビットレートの許容範囲をパラメータとして示すコードと、そのパラメータの値とをイコールで結ぶ記述である。この記述により、push-media-adapted指令により送信を要求する後続メディアセグメントファイルの期間および符号化ビットレートの許容範囲が指定される。
【００６１】
後続メディアセグメントファイルの期間をパラメータとして示すコードとしては、例えば、「duration」または「number」がある。後続メディアセグメントファイルの期間を示すコードが「duration」である場合、「PUSH_PARAMS」では、コード「duration」と、後続メディアセグメントファイルの期間を示す情報としての再生時間を秒単位で示す整数値とがイコールで結ばれる。一方、後続メディアセグメントファイルの期間を示すコードが「number」である場合、「PUSH_PARAMS」では、コード「duration」と、後続メディアセグメントファイルの期間を示す情報としてのファイル数を示す整数値とがイコールで結ばれる。これにより、push-media-adapted指令により送信を要求する後続メディアセグメントファイルの期間が指定される。
【００６２】
また、「PUSH_PARAMS」では、符号化ビットレートの許容範囲をパラメータとして示すコード「bitrate」と、符号化ビットレートの許容範囲を示す範囲情報としての１秒あたりの符号化ビットレートの範囲とがイコールで結ばれる。これにより、push-media-adapted指令により送信を要求する後続メディアセグメントファイルの符号化ビットレートの範囲情報が指定される。
【００６３】
従って、例えば、push-media-adapted指令により送信を要求する後続メディアセグメントファイルの期間を再生時間で指定するpush-media-adapted指令を記述する拡張ヘッダの記述は、「accept-push-policy:“type”=“push-media-adapted”,”duration”=”120”,”bitrate”=”400000-8000000”」になる。この場合、push-media-adapted指令により送信を要求する後続メディアセグメントファイルの再生時間として120秒が指定されており、符号化ビットレートの許容範囲として400kbpsから8Mbpsまでの範囲が指定されている。
【００６４】
解析部３２は、push-media-adapted指令を記述する拡張ヘッダの「PUSH_PARAMS」により指定された期間と符号化ビットレートの許容範囲を認識し、選択部３５に供給する。
【００６５】
計測部３３は、httpサーバ３１から送信されるMPDファイル、初期化セグメントファイル、およびメディアセグメントファイルの実効的なデータ送信レートを計測する。具体的には、配信サーバ１１と再生クライアント１２の間の伝送では、データの受信時、そのデータの受信通知としてACK信号を送信する。従って、計測部３３は、例えば、TCP(Transfer Control Protocol)レイヤにおける再生クライアント１２からのACK信号の状況に基づいて、実効的なデータ送信レートを計測する。計測部３３は、計測の結果得られるデータ送信レートを、ネットワーク１３の実効帯域を示す計測ビットレートとして選択部３５に供給する。
【００６６】
選択部３４は、記憶部３０に記憶されているMPDファイルに基づいて、解析部３２から供給される、指定されたメディア種別および属性の初期化セグメントファイルのURLを登録した送信リストを生成し、保持する。
【００６７】
具体的には、選択部３４は、MPDファイルに記述される全てのリプレゼンテーション要素から、指定されたメディア種別を有するアダプテーションセット要素のリプレゼンテーション要素を選択する。そして、選択部３４は、選択されたリプレゼンテーション要素から、そのリプレゼンテーション要素またはリプレゼンテーション要素をグルーピングするアダプテーションセット要素が、指定された属性を有するリプレゼンテーション要素を選択する。
【００６８】
例えば、MPDファイルでは、リプレゼンテーション要素が、符号化ビットレートの属性情報をbandwidthアトリビュートとして有する。従って、指定された属性の種類が符号化ビットレートのみである場合、選択部３４は、選択されたリプレゼンテーション要素から、指定された符号化ビットレートの属性の範囲内の属性の属性情報をbandwidthアトリビュートとして有するリプレゼンテーション要素を選択する。
【００６９】
なお、指定された属性の種類の数が複数である場合には、全種類の属性に対応するリプレゼンテーション要素が選択される。しかしながら、全種類の属性に対応するリプレゼンテーション要素が存在しない場合には、選択部３４は、各属性の種類の優先度に基づいて選択に用いる属性の種類を削減する。
【００７０】
ここでは、各属性の種類の優先度は、予め決められているものとするが、PUSH_PARAMSにより指定される順番に基づいて決められてもよい。
【００７１】
選択部３４は、以上のようにして選択されたリプレゼンテーション要素が有する初期化セグメントファイルのURLを登録した送信リストを、初期化セグメントファイルの送信リストとして生成し、保持する。選択部３４は、初期化セグメントファイルの送信リストに登録されているURLに基づいて、記憶部３０から初期化セグメントファイルを読み出し、httpサーバ３１に供給する。
【００７２】
選択部３５は、計測ビットレート、MPDファイル、並びに、解析部３２から供給される期間および符号化ビットレートの許容範囲に基づいて、許容範囲内の符号化ビットレートから、後続メディアセグメントファイルの符号化ビットレートを選択する。
【００７３】
具体的には、選択部３５は、MPDファイルから、許容範囲内の符号化ビットレートをbandwidthアトリビュートとして有する後続メディアセグメントファイルが属するリプレゼンテーション要素を選択する。そして、選択部３５は、選択されたリプレゼンテーション要素から、計測ビットレートに適した符号化ビットレートをbandwidthアトリビュートとして有するリプレゼンテーション要素を選択する。
【００７４】
選択部３５は、選択されたリプレゼンテーション要素に属する後続メディアセグメントファイルのURLを登録した送信リストを、後続メディアセグメントファイルの送信リストとして生成し、保持する。選択部３５は、後続メディアセグメントファイルの送信リストに登録されているURLに基づいて、記憶部３０から後続メディアセグメントファイルを読み出し、httpサーバ３１に供給する。
【００７５】
再生クライアント１２は、リクエスト生成部５０、httpクライアント５１、MPDパーサ５２、選択部５３、受信バッファ５４、および再生部５６により構成される。
【００７６】
再生クライアント１２のリクエスト生成部５０は、ヘッダにpush-init-segment指令を含むMPDリクエスト生成する。具体的には、再生クライアント１２は、MPDリクエストの生成時には、まだMPDファイルを取得していないため、配信サーバ１１に実際に記憶されている初期化セグメントファイルの属性およびメディア種別は未知である。しかしながら、再生クライアント１２は、再生クライアント１２の特性やユーザの嗜好などに基づいて、初期化セグメントファイルのメディア種別および属性としてとり得る値から、必要となり得る初期化セグメントファイルのメディア種別および属性を選択することは可能である。
【００７７】
従って、リクエスト生成部５０は、必要となり得る初期化セグメントファイルのメディア種別および属性を指定するpush-init-segment指令を記述する拡張ヘッダを生成し、その拡張ヘッダをヘッダに含むMPDリクエストを生成する。リクエスト生成部５０は、MPDリクエストをhttpクライアント５１に供給する。
【００７８】
また、リクエスト生成部５０は、選択部５３から供給されるURLと符号化ビットレートの許容範囲とに基づいて、ヘッダにpush-media-adapted指令を含むメディアリクエストを生成する。具体的には、リクエスト生成部５０は、URLをデータ部(ボディ)に配置し、後続メディアセグメントファイルの期間と符号化ビットレートの許容範囲を指定するpush-media-adapted指令を記述する拡張ヘッダをヘッダ部に配置したメディアリクエストを生成する。リクエスト生成部５０は、メディアリクエストをhttpクライアント５１に供給する。
【００７９】
httpクライアント５１(送信部)は、HTTP/2に準拠してネットワーク１３を介して配信サーバ１１と通信を行う。具体的には、httpクライアント５１は、リクエスト生成部５０から供給されるMPDリクエストおよびメディアリクエストを、配信サーバ１１に送信する。httpクライアント５１は、MPDリクエストに応じて配信サーバ１１から送信されてくるMPDファイルと初期化セグメントファイルを受信する。
【００８０】
httpクライアント５１は、MPDファイルをMPDパーサ５２に供給し、初期化セグメントファイルを受信バッファ５４に供給する。また、httpクライアント５１は、メディアリクエストに応じて配信サーバ１１から送信されてくるメディアセグメントファイルを受信し、受信バッファ５４に供給する。
【００８１】
MPDパーサ５２は、httpクライアント５１から供給されるMPDファイルを解析し、各リプレゼンテーション要素に対応するメディア種別、属性、URLなどを含むリプレゼンテーション情報を、選択部５３に供給する。
【００８２】
選択部５３は、帯域推定部５７から供給される計測ビットレート、再生クライアント１２の特性、ユーザの嗜好などに基づいて、メディアリクエストでURLを指定するメディアセグメントファイルのメディア種別と属性を決定する。
【００８３】
選択部５３は、決定されたメディア種別および属性に基づいて、MPDパーサ５２から供給されるリプレゼンテーション情報から、メディアリクエストでURLを指定するメディアセグメントファイルのリプレゼンテーション情報を選択する。また、選択部５３は、メディアリクエストでURLを指定するメディアセグメントファイルの再生時刻と、選択されたリプレゼンテーション情報とに基づいて、メディアリクエストで指定するメディアセグメントファイルのURLを決定し、リクエスト生成部５０に供給する。
【００８４】
また、選択部５３は、計測ビットレート、再生クライアント１２の特性、ユーザの嗜好などに基づいて、後続メディアセグメントファイルの符号化ビットレートの許容範囲を決定し、リクエスト生成部５０に供給する。
【００８５】
受信バッファ５４は、httpクライアント５１から供給される初期化セグメントファイルとメディアセグメントファイルを保持する。
【００８６】
再生部５６は、受信バッファ５４から再生対象の初期化セグメントファイルを読み出し、その初期化セグメントファイルに含まれるパラメータを設定する。また、再生部５６は、受信バッファ５４から再生対象のメディアセグメントファイルを読み出す。再生部５６は、設定されたパラメータを用いて、読み出されたメディアセグメントファイルに格納される符号化ストリームを復号し、再生する。
【００８７】
帯域推定部５７は、受信バッファ５４に保持される初期化セグメントファイルやメディアセグメントファイルのデータ量に基づいて、実効的なデータ受信レートを計測する。帯域推定部５７は、計測の結果得られるデータ受信レートを、計測ビットレートとして選択部５３に供給する。
【００８８】
（再生クライアントのソフトウエアの階層構造の例）
図３は、図２の再生クライアント１２のソフトウエアの階層構造の例を示す図である。
【００８９】
図３に示すように、再生クライアント１２のソフトウエアの最下層は、受信バッファ５４と再生部７０により構成されるハードウエア層である。また、中間層は、DASHクライアント部７１、帯域推定部７２、および再生制御部７３により構成され、最上層は、アプリケーション部７４により構成される。
【００９０】
DASHクライアント部７１は、httpクライアント５１とMPDパーサ５２を実現するソフトウエアであり、帯域推定部７２は、帯域推定部５７を実現するソフトウエアである。また、再生制御部７３は、再生部７０を制御するソフトウエアであり、再生部７０と再生制御部７３により、再生部５６が実現される。アプリケーション部７４は、リクエスト生成部５０、選択部５３等を実現するソフトウエアである。
【００９１】
（情報処理システムの処理の説明）
図４は、図２の情報処理システム１０の処理を説明するフローチャートである。
【００９２】
図４のステップＳ１１において、再生クライアント１２のリクエスト生成部５０は、初期化セグメントファイルのメディア種別および属性としてとり得る値から、必要となり得る初期化セグメントファイルのメディア種別および属性を選択する。
【００９３】
ステップＳ１２において、リクエスト生成部５０は、選択されたメディア種別および属性を指定するpush-init-segment指令を記述する拡張ヘッダをヘッダに含むMPDリクエストを生成し、配信サーバ１１に送信する。
【００９４】
ステップＳ４１において、配信サーバ１１のhttpサーバ３１は、再生クライアント１２から送信されてくるMPDリクエストを受信する。そして、httpサーバ３１は、MPDリクエストで指定されたMPDファイルのURLに基づいて、記憶部３０からMPDファイルを読み出す。ステップＳ４２において、httpサーバ３１は、読み出されたMPDファイルを、MPDリクエストのレスポンスとして、再生クライアント１２に送信する。また、httpサーバ３１は、MPDリクエストのヘッダを解析部３２に供給する。
【００９５】
ステップＳ１３において、httpクライアント５１は、配信サーバ１１から送信されてくるMPDファイルを受信し、MPDパーサ５２に供給する。MPDパーサ５２は、httpクライアント５１から供給されるMPDファイルを解析し、各リプレゼンテーション要素のリプレゼンテーション情報を、選択部５３に供給する。
【００９６】
ステップＳ４３において、配信サーバ１１は、MPDリクエストのヘッダに含まれるpush-init-segment指令とMPDファイルとに基づいて、初期化セグメントファイルの送信リストを生成する初期化セグメント送信リスト生成処理を行う。この初期化セグメント送信リスト生成処理の詳細は、後述する図５を参照して説明する。
【００９７】
ステップＳ４４において、選択部３５は、初期化セグメントファイルの送信リストに登録されている先頭から１番目のURLに基づいて、記憶部３０から初期化セグメントファイルを読み出し、httpサーバ３１を介して再生クライアント１２に送信する。なお、以下では、初期化セグメントファイルの送信リストに登録されている先頭からｉ番目のURLに対応する初期化セグメントファイルを初期化セグメントファイル＃ｉという。
【００９８】
ステップＳ１４において、httpクライアント５１は、配信サーバ１１から送信されてくる初期化セグメントファイル＃ｉを受信し、受信バッファ５４に供給して保持させる。
【００９９】
ステップＳ４４の処理後、ステップＳ４４の処理と同様に、初期化セグメントファイル＃ｉ＋１乃至＃ｎ−１が再生クライアント１２に順次送信される。そして、ステップＳ１４の処理後、ステップＳ１４の処理と同様に、初期化セグメントファイル＃ｉ＋１乃至＃ｎ−１が配信サーバ１１から順次受信される。なお、ｎとは、初期化セグメントファイルの送信リストに登録されているURLの数であり、１以上の整数である。
【０１００】
初期化セグメントファイル＃ｎ−１の送信後、ステップＳ４５において、選択部３５は、ステップＳ４４の処理と同様に、初期化セグメントファイル＃ｎを再生クライアント１２に送信する。
【０１０１】
そして、初期化セグメントファイル＃ｎ−１の受信後、ステップＳ１５において、httpクライアント５１は、ステップＳ１４の処理と同様に、初期化セグメントファイル＃ｎを配信サーバ１１から受信し、受信バッファ５４に供給して保持させる。
【０１０２】
ステップＳ１６において、選択部５３は、帯域推定部５７から供給される計測ビットレート、再生クライアント１２の特性、ユーザの嗜好などに基づいて、メディアリクエストで指定するメディアセグメントファイルのURLを決定する。また、選択部５３は、計測ビットレート、再生クライアント１２の特性、ユーザの嗜好などに基づいて、後続メディアセグメントファイルの符号化ビットレートの属性の許容範囲を決定する。そして、選択部５３は、決定されたURLと許容範囲をリクエスト生成部５０に供給する。
【０１０３】
ステップＳ１７において、選択部５３から供給されるURLと符号化ビットレートの許容範囲とに基づいて、ヘッダにpush-media-adapted指令を含むメディアリクエストを生成すし、httpクライアント５１を介して、配信サーバ１１に送信する。
【０１０４】
ステップＳ４６において、httpサーバ３１は、配信サーバ１１から送信されてくるメディアリクエストを受信する。ステップＳ４７において、httpサーバ３１は、メディアリクエストで指定されたURLに基づいて、記憶部３０から選択部３４を介してメディアセグメントファイルを読み出し、再生クライアント１２に送信する。また、httpサーバ３１は、メディアリクエストのヘッダを解析部３２に供給する。
【０１０５】
ステップＳ１８において、httpクライアント５１は、配信サーバ１１から送信されてくるメディアセグメントファイルを受信し、受信バッファ５４に供給して保持させる。
【０１０６】
ステップＳ４８において、配信サーバ１１は、メディアリクエストのヘッダに含まれるpush-media-adapted指令とMPDファイルとに基づいて、後続メディアセグメントファイルの送信リストを生成する後続メディアセグメントファイル送信リスト生成処理を行う。この後続メディアセグメント送信リスト生成処理の詳細は、後述する図６を参照して説明する。
【０１０７】
ステップＳ４９において、選択部３５は、後続メディアセグメントファイルの送信リストに登録されている先頭から１番目のURLに基づいて、記憶部３０から後続メディアセグメントファイルを読み出し、httpサーバ３１を介して再生クライアント１２に送信する。なお、以下では、後続メディアセグメントファイルの送信リストに登録されている先頭からｉ番目のURLに対応する後続メディアセグメントファイルを後続メディアセグメントファイル＃ｉという。
【０１０８】
ステップＳ１９において、httpクライアント５１は、配信サーバ１１から送信されてくる後続メディアセグメントファイル＃ｉを受信し、受信バッファ５４に供給して保持させる。
【０１０９】
ステップＳ４９の処理後、ステップＳ４９の処理と同様に、後続メディアセグメントファイル＃ｉ＋１乃至＃ｍ−１が再生クライアント１２に順次送信される。そして、ステップＳ１９の処理後、ステップＳ１９の処理と同様に、後続メディアセグメントファイル＃ｉ＋１乃至＃ｍ−１が配信サーバ１１から順次受信される。なお、ｍとは、後続メディアセグメントファイルの送信リストに登録されているURLの数であり、１以上の整数である。
【０１１０】
後続メディアセグメントファイル＃ｍ−１の送信後、ステップＳ５０において、選択部３５は、ステップＳ４９の処理と同様に、後続メディアセグメントファイル＃ｍをhttpサーバ３１を介して再生クライアント１２に送信する。
【０１１１】
そして、後続メディアセグメントファイル＃ｍ−１の受信後、ステップＳ２０において、httpクライアント５１は、ステップＳ１９の処理と同様に、後続メディアセグメントファイル＃ｍを配信サーバ１１から受信し、受信バッファ５４に供給して保持させる。
【０１１２】
以上のようにして保持された初期化セグメントファイルと後続メディアセグメントファイルのうちの、再生対象の初期化セグメントファイルと後続メディアセグメントファイルは、再生部５６により読み出される。その結果、後続メディアセグメントファイルの再生が行われる。
【０１１３】
図５は、図４のステップＳ４３の初期化セグメント送信リスト生成処理の詳細を説明するフローチャートである。
【０１１４】
なお、図５の例では、各属性の優先度は、言語、役割、符号化ビットレートの順に高くなっている。
【０１１５】
図５のステップＳ７１において、解析部３２は、httpサーバ３１から供給されるヘッダにpush-init-segment指令が含まれているかどうかを判定する。具体的には、解析部３２は、httpサーバ３１から供給されるヘッダに、ヘッダ名が「accept-push-policy」である拡張ヘッダが含まれており、その拡張ヘッダに「“type”=“push-init-segment”」が含まれているかどうかを判定する。
【０１１６】
ステップＳ７１でpush-init-segment指令が含まれていると判定された場合、処理はステップＳ７２に進む。ステップＳ７２において、選択部３４は、MPDファイルに記述される全てのリプレゼンテーション要素に対応する初期化セグメントファイルをプッシュ対象（送信対象）とし、そのリプレゼンテーション要素が有する初期化セグメントファイルのURLを送信リストに登録する。
【０１１７】
ステップＳ７３において、解析部３２は、push-init-segment指令でメディア種別が指定されているかどうか、即ち拡張ヘッダにコード「media-type」が含まれているかどうかを判定する。ステップＳ７３でpush-init-segment指令でメディア種別が指定されていると判定された場合、解析部３２は、コード「media-type」とイコールで結ばれるMIME-typeが示すメディア種別を、指定されたメディア種別として認識し、選択部３４に供給する。
【０１１８】
ステップＳ７４において、選択部３４は、解析部３２から供給される、指定されたメディア種別以外のメディア種別に対応するURLを送信リストから削除する。具体的には、選択部３４は、指定されたメディア種別以外のメディア種別を有するアダプテーションセット要素によりグルーピングされるリプレゼンテーション要素が有する初期化セグメントファイルのURLを送信リストから削除する。そして、処理はステップＳ７５に進む。
【０１１９】
一方、ステップＳ７３でpush-init-segmentでメディア種別が指定されていないと判定された場合、処理はステップＳ７４をスキップし、ステップＳ７５に進む。
【０１２０】
ステップＳ７５において、選択部３４は、push-init-segment指令で言語の属性が指定されており、その言語の属性に対応するURLが送信リストに存在するかどうかを判定する。即ち、拡張ヘッダにコード「lang」が含まれており、解析部３２から、コード「lang」とイコールで結ばれる言語コードが示す属性が、指定された言語の属性として供給された場合、選択部３４は、その属性のリプレゼンテーション要素が有する初期化セグメントファイルのURLが送信リストに存在するかどうかを判定する。
【０１２１】
ステップＳ７５でpush-init-segment指令で言語の属性が指定されており、その言語の属性に対応するURLが送信リストに存在すると判定された場合、処理はステップＳ７６に進む。
【０１２２】
ステップＳ７６において、選択部３４は、解析部３２から供給される、指定された言語の属性以外の言語の属性に対応するURLを送信リストから削除する。そして、処理はステップＳ７７に進む。
【０１２３】
一方、ステップＳ７５でpush-init-segment指令で言語の属性が指定されていないか、または、push-init-segment指令で指定された言語の属性に対応するURLが送信リストに存在しないと判定された場合、処理はステップＳ７６をスキップし、ステップＳ７７に進む。
【０１２４】
ステップＳ７７において、選択部３４は、push-init-segment指令で役割の属性が指定されており、その役割の属性に対応するURLが送信リストに存在するかどうかを判定する。即ち、拡張ヘッダにコード「role」が含まれており、解析部３２から、コード「role」とイコールで結ばれるroleアトリビュートの値が示す属性が、指定された役割の属性として供給された場合、選択部３４は、その属性のリプレゼンテーション要素が有する初期化セグメントファイルのURLが送信リストに存在するかどうかを判定する。
【０１２５】
ステップＳ７７でpush-init-segment指令で役割の属性が指定されており、その役割の属性に対応するURLが送信リストに存在すると判定された場合、処理はステップＳ７８に進む。
【０１２６】
ステップＳ７８において、選択部３４は、解析部３２から供給される、指定された役割の属性以外の役割の属性に対応するURLを送信リストから削除する。そして、処理はステップＳ７９に進む。
【０１２７】
一方、ステップＳ７７でpush-init-segment指令で役割の属性が指定されていないか、または、push-init-segment指令で指定された役割の属性に対応するURLが送信リストに存在しないと判定された場合、処理はステップＳ７８をスキップし、ステップＳ７９に進む。
【０１２８】
ステップＳ７９において、選択部３４は、push-init-segment指令で符号化ビットレートの属性の範囲が指定されており、その範囲内の符号化ビットレートに対応するURLが送信リストに存在するかどうかを判定する。即ち、拡張ヘッダにコード「bitrate」が含まれており、解析部３２から、コード「bitrate」とイコールで結ばれる属性情報が示す属性の範囲が、指定された符号化ビットレートの属性の範囲として供給された場合、選択部３４は、その属性の範囲内の符号化ビットレートのリプレゼンテーション要素が有する初期化セグメントファイルのURLが送信リストに存在するかどうかを判定する。
【０１２９】
ステップＳ７９でpush-init-segment指令で符号化ビットレートの属性の範囲が指定されており、その範囲内の符号化ビットレートに対応するURLが送信リストに存在すると判定された場合、処理はステップＳ８０に進む。
【０１３０】
ステップＳ８０において、選択部３４は、解析部３２から供給される、指定された符号化ビットレートの属性の範囲外の符号化ビットレートに対応するURLを送信リストから削除する。そして、処理は終了する。
【０１３１】
一方、ステップＳ７９でpush-init-segment指令で符号化ビットレートの属性の範囲が指定されていないか、または、push-init-segment指令で指定された符号化ビットレートの属性の範囲内の符号化ビットレートに対応するURLが送信リストに存在しないと判定された場合、処理はステップＳ８０をスキップし、終了する。
【０１３２】
また、ステップＳ７１でpush-init-segment指令が含まれていないと判定された場合、処理は終了する。
【０１３３】
なお、ステップＳ７４，Ｓ７６，Ｓ７８において、送信リストに登録されている全てのURLを削除することになる場合には、選択部３４は削除を行わない。また、ステップＳ８０において、送信リストに登録されている全てのURLを削除することになる場合には、選択部３４は、指定された符号化ビットレートの属性の範囲の下限値または上限値に最も近い符号化ビットレートに対応するURLを送信リストから削除せずに残す。
【０１３４】
例えば、送信リストに登録されている全てのURLに対応する符号化ビットレートが、指定された範囲より小さい場合、選択部３４は、指定された範囲の下限値に最も近い符号化ビットレートに対応するURLを残す。一方、送信リストに登録されている全てのURLに対応する符号化ビットレートが、指定された範囲より大きい場合、選択部３４は、指定された範囲の上限値に最も近い符号化ビットレートに対応するURLを残す。
【０１３５】
図６は、図４のステップＳ４８の後続メディアセグメント送信リスト生成処理スタートの詳細を説明するフローチャートである。
【０１３６】
図６のステップＳ１０１において、解析部３２は、httpサーバ３１から供給されるヘッダにpush-media-adapted指令が含まれているかどうかを判定する。具体的には、解析部３２は、httpサーバ３１から供給されるヘッダに、ヘッダ名が「accept-push-policy」である拡張ヘッダが含まれており、その拡張ヘッダに「“type”=“push-media-adapted”」が含まれているかどうかを判定する。
【０１３７】
ステップＳ１０１でpush-media-adapted指令が含まれていると判定された場合、ステップＳ１０２において、解析部３２は、push-media-adapted指令で指定される後続メディアセグメントファイルの期間と符号化ビットレートの許容範囲を認識し、保持する。
【０１３８】
ステップＳ１０３において、選択部３５は、現在の送信対象のメディアセグメントファイルの送信ビットレートが、計測部３３から供給される計測ビットレートより高いかどうかを判定する。ステップＳ１０３で送信ビットレートが計測ビットレートより高いと判定された場合、処理はステップＳ１０４に進む。
【０１３９】
ステップＳ１０４において、選択部３５は、解析部３２から許容範囲を読み出し、送信ビットレートが、その許容範囲の下限値より高いかどうかを判定する。ステップＳ１０４で送信ビットレートが許容範囲の下限値より高いと判定された場合、処理はステップＳ１０５に進む。
【０１４０】
ステップＳ１０５において、選択部３５は、MPDファイルに記述されている後続メディアセグメントファイルが属するリプレゼンテーション要素がBandwidthとして有する、送信ビットレートの次に低い符号化ビットレートが、許容範囲の下限値以上であるかどうかを判定する。
【０１４１】
ステップＳ１０５で許容範囲の下限値以上であると判定された場合、ステップＳ１０６において、選択部３５は、送信ビットレートの次に低い符号化ビットレートのリプレゼンテーション要素に属する後続メディアセグメントファイルのURLを送信リストに登録する。そして、処理はステップＳ１１２に進む。
【０１４２】
一方、ステップＳ１０３で送信ビットレートが計測ビットレートより高くはないと判定された場合、ステップＳ１０７において、選択部３５は、送信ビットレートが計測ビットレートより低いかどうかを判定する。ステップＳ１０７で送信ビットレートが計測ビットレートより低いと判定された場合、処理はステップＳ１０８に進む。
【０１４３】
ステップＳ１０８において、選択部３５は、解析部３２から許容範囲を読み出し、送信ビットレートが、その許容範囲の上限値より低いかどうかを判定する。ステップＳ１０８で送信ビットレートが許容範囲の上限値より低いと判定された場合、処理はステップＳ１０９に進む。
【０１４４】
ステップＳ１０９において、選択部３５は、MPDファイルに記述されている後続メディアセグメントファイルが属するリプレゼンテーション要素がBandwidthとして有する、送信ビットレートの次に高いビットレートが、許容範囲の上限値以下であるかどうかを判定する。
【０１４５】
ステップＳ１０９で許容範囲の上限値以下であると判定された場合、ステップＳ１１０において、選択部３５は、送信ビットレートの次に高い符号化ビットレートのリプレゼンテーション要素に属する後続メディアセグメントファイルのURLを送信リストに登録する。そして、処理はステップＳ１１２に進む。
【０１４６】
また、ステップＳ１０４で送信ビットレートが許容範囲の下限値より高くはないと判定された場合、または、ステップＳ１０５で送信ビットレートの次に低い符号化ビットレートが許容範囲の下限値より低いと判定された場合、処理はステップＳ１１１に進む。
【０１４７】
さらに、ステップＳ１０７で送信ビットレートが計測ビットレートより低くはないと判定された場合、即ち送信ビットレートと計測ビットレートが同一である場合、処理はステップＳ１１１に進む。
【０１４８】
また、ステップＳ１０８で送信ビットレートが許容範囲の上限値より低くはないと判定された場合、または、ステップＳ１０９で送信ビットレートの次に高い符号化ビットレートが許容範囲の上限値より高いと判定された場合、処理はステップＳ１１１に進む。
【０１４９】
ステップＳ１１１において、選択部３５は、送信ビットレートのリプレゼンテーション要素に属する後続メディアセグメントファイルのURLを送信リストに登録する。そして、処理はステップＳ１１２に進む。
【０１５０】
ステップＳ１１２において、選択部３５は、解析部３２から後続メディアセグメントファイルの期間を読み出し、その期間分の後続メディアセグメントファイルのURLを送信リストに登録したかどうかを判定する。
【０１５１】
ステップＳ１１２で、読み出された期間分の後続メディアセグメントファイルのURLを送信リストにまだ登録していないと判定された場合、処理はステップＳ１０３に戻り、ステップＳ１０３乃至Ｓ１１２の処理が繰り返される。
【０１５２】
一方、ステップＳ１１２で、読み出された期間分の後続メディアセグメントファイルのURLを送信リストに既に登録したと判定された場合、処理は終了する。
【０１５３】
また、ステップＳ１０１でpush-media-adapted指令が含まれていないと判定された場合、処理は終了する。
【０１５４】
以上のように、情報処理システム１０では、再生クライアント１２が、push-init-segment指令を含むMPDリクエストを送信する。従って、再生クライアント１２は、MPDリクエストを送信するだけで、MPDファイルと初期化セグメントファイルの両方を受信することができる。即ち、再生クライアント１２は、初期化セグメントファイルの送信を要求するHTTP GETリクエストを送信する必要がない。従って、再生クライアント１２は、初期化セグメントファイルの送信の要求を効率的に行うことができる。また、配信サーバ１１は、初期化セグメントファイルの送信を要求するHTTP GETの受信を待つ必要がないため、初期化セグメントファイルの送信を効率的に行うことができる。
【０１５５】
また、push-init-segment指令では、送信を要求する初期化セグメントファイルのメディア種別や属性を指定することができる。従って、不要な初期化セグメントファイルを無駄に受信する必要がなく、初期化セグメントファイルの受信の更なる効率化を実現することができる。その結果、スタートアップを高速化することができる。
【０１５６】
これに対して、MPDリクエストに含まれるプッシュ指令において、送信を要求する初期化セグメントファイルのメディア種別や属性を指定することができない場合、MPDリクエストに応じて、全てのメディア種別および属性の初期化セグメントファイルが送信される。例えば、MPDリクエストに含まれるプッシュ指令において、初期化セグメントファイルのURLのみを指定することができる場合、再生クライアント１２は、MPDリクエスト時にMPDファイルを取得しておらず、URLを指定することはできない。従って、全てのメディア種別および属性の初期化セグメントファイルが送信される。
【０１５７】
その結果、受信バッファ５４は、受信した初期化セグメントファイルを保持するために多くの容量を必要とする。例えば、メディア種別や属性の数が多数である場合、受信バッファ５４は、再生に必要な初期化セグメントファイルのデータ量の何倍ものデータ量の初期化セグメントファイルを保持する必要がある。
【０１５８】
よって、受信バッファ５４の容量が小さく、全てのメディア種別および属性の初期化セグメントファイルを保持することができない場合、再生クライアント１２は、プッシュ指令をMPDリクエストに含めることはできない。その結果、再生クライアント１２は、MPDファイルの受信後、初期化セグメントファイルごとに、再生に必要な初期化セグメントファイルの送信を要求するHTTP GETリクエストを送信する必要がある。
【０１５９】
また、再生クライアント１２は、push-media-adapted指令を含むメディアリクエストを送信する。従って、再生クライアント１２は、メディアリクエストを送信するだけで、メディアリクエストでURLが指定されるメディアセグメントファイルだけでなく、後続メディアセグメントファイルも受信することができる。即ち、再生クライアント１２は、後続メディアセグメントファイルごとに、メディアリクエストを送信する必要がない。従って、再生クライアント１２は、後続メディアセグメントファイルの送信の要求を効率的に行うことができる。また、配信サーバ１１は、後続メディアセグメントファイルの送信を要求するメディアリクエストの受信を待つ必要がないため、後続メディアセグメントファイルの送信を効率的に行うことができる。
【０１６０】
さらに、push-media-adapted指令では、後続メディアセグメントファイルの符号化ビットレートの許容範囲を指定することができる。従って、配信サーバ１１は、ネットワーク１３の実効帯域に応じて、送信する後続メディアセグメントファイルの符号化ビットレートを許容範囲内で変更させることができる。その結果、再生品質が向上する。
【０１６１】
即ち、例えば、配信サーバ１１と再生クライアント１２の間のストリーミングの開始時、帯域推定部５７は、まだネットワーク１３の実効帯域を推定することができない。従って、この場合、選択部５３は、メディアリクエストによりURLが指定されるメディアセグメントファイルの符号化ビットレートとして、比較的低い符号化ビットレートを設定する。よって、この符号化ビットレートを後続メディアセグメントファイルの符号化ビットレートに適用した場合、後続メディアセグメントファイルの符号化ビットレートは、ネットワーク１３の実効帯域に適した符号化ビットレートではない。
【０１６２】
従って、再生クライアント１２は、push-media-adapted指令において後続メディアセグメントファイルの符号化ビットレートの許容範囲を指定する。これにより、再生クライアント１２は、受信する後続メディアセグメントファイルの符号化ビットレートを、許容範囲内でネットワーク１３の実効帯域に適した符号化ビットレートに変更させることができる。その結果、再生品質が向上する。
【０１６３】
また、再生クライアント１２は、ネットワーク１３の実効帯域に適した符号化ビットレートの後続メディアセグメントファイルを受信するために、ネットワーク１３の実効帯域に応じた指令を配信サーバ１１に送信する必要がない。従って、ネットワーク１３の実効帯域に適した符号化ビットレートの後続メディアセグメントを効率的に受信することができる。
【０１６４】
これに対して、メディアリクエストに含まれるプッシュ指令において、後続メディアセグメントファイルの期間のみが指定され、符号化ビットレートの許容範囲が指定されない場合、後続メディアセグメントファイルの期間内でネットワーク１３の実効帯域が変化すると、再生クライアント１２は、プッシュ指令をキャンセルする必要がある。そして、再生クライアント１２は、実行帯域に適した符号化ビットレートを指定するプッシュ指令を含むメディアリクエストを新たに送信し直す必要がある。従って、後続メディアセグメントファイルの期間として長い期間を指定しても、プッシュ指令のキャンセルとメディアリクエストの送信を行う確率が増加するため、メディアセグメントファイルの送信に要する時間を抑制できない場合がある。
【０１６５】
また、push-media-adapted指令では、符号化ビットレートの許容範囲とともに、後続メディアセグメントファイルの期間を指定することができる。従って、再生クライアント１２は、符号化ビットレートの許容範囲を段階的に変化させることができる。再生クライアント１２は、符号化ビットレートの許容範囲を段階的に広げることにより、再生品質を緩やかに変化させることができる。
【０１６６】
なお、push-init-segment指令では、「PUSH_PARAMS」により複数のメディア種別が指定されてもよい。この場合、コード「media」と、複数のメディア種別のMIME-typeがカンマで区切られた記述とがイコールで結ばれる。同様に、push-init-segment指令では、「PUSH_PARAMS」により、ある種類の属性の属性情報が複数指定されてもよい。
【０１６７】
また、push-init-segment指令やpush-media-adapted指令では、パラメータの値の範囲として、その範囲の下限値または上限値のみが指定されるようにしてもよい。この場合、指定されない下限値または上限値は、指定されないことを示す０とされる。例えば、符号化ビットレートの属性の下限値として400kbpsを指定し、上限値を指定しない場合、「”bitrate”= “400000-0”」が記述され、下限値を指定せず、上限値として8Mbpsを指定する場合、「”bitrate”= “0-8000000“」が記述される。
【０１６８】
さらに、再生クライアント１２は、push-init-segment指令により送信される初期化セグメントファイル以外の初期化セグメントアイルの送信を要求するHTTP GETリクエストを送信してもよい。この場合であっても、全ての初期化セグメントファイルの送信をHTTP GETリクエストで要求する場合に比べて、HTTP GETリクエストの数を削減することができる。
【０１６９】
また、第１実施の形態では、再生クライアント１２が、メディアリクエストに必ずpush-media-adapted指令を含めたが、push-media-adapted指令以外のプッシュ指令を含めてもよい。例えば、再生クライアント１２は、後続メディアセグメントファイルの期間のみを指定するプッシュ指令をメディアリクエストに含めてもよい。この場合、プッシュ指令に含まれる後続メディアセグメントファイルの期間を示す情報は、例えば、後続メディアセグメントファイルの数（Push-next）、再生時間(Push-time)、もしくは、URLのリストまたはURLのテンプレートとテンプレートを適用する範囲($number$)を指定するパラメータ(Push-template)である。また、この場合、メディアリクエストでURLが指定されたメディアセグメントファイルと同一の符号化ビットレートの後続メディアセグメントファイルが再生クライアント１２に送信される。
【０１７０】
なお、第１実施の形態では、アダプテーションセット要素が、メディア種別、言語、役割の属性を有し、リプレゼンテーション要素が、符号化ビットレートの属性を有するようにした。しかしながら、メディア種別および属性は、アダプテーションセット要素とリプレゼンテーション要素のいずれが有するようにしてもよい。
【０１７１】
また、第１実施の形態では、属性の種類は、動画コンテンツの符号化ビットレート、言語、および役割（目的）としたが、映像の解像度やフレームレート、音声のサンプリングレートやチャンネル数などであってもよい。
【０１７２】
例えば、push-init-segment指令で映像の解像度を指定する場合、映像の解像度をパラメータとして示すコード「resolution」と、映像の解像度の属性情報としての縦方向の画素数の範囲とがイコールで結ばれる。映像の解像度の属性情報は、属性が4k解像度である場合2160であり、フルHD解像度である場合1080であり、SD解像度である場合480である。また、MPDファイルでは、映像のリプレゼンテーション要素が、映像の解像度の属性情報をheightアトリビュートとして有する。
【０１７３】
また、push-init-segment指令で音声のサンプリングレートを指定する場合、音声のサンプリングレートをパラメータとして示すコード「audioSamplingRate」と、音声のサンプリングレートの属性情報としてのサンプリングレートの範囲とがイコールで結ばれる。例えば、音声のサンプリングレートの属性が48kHzである場合、属性情報は48000である。また、MPDファイルでは、音声のリプレゼンテーション要素が、音声のサンプリングレートの属性情報をaudioSamplingRate アトリビュートとして有する。
【０１７４】
さらに、範囲情報は、許容範囲内の符号化ビットレートをBandwidthとして有する後続メディアセグメントファイルが属するリプレゼンテーション要素を特定する情報（例えば、Representation idなど）や、そのリプレゼンテーション要素に属する後続メディアセグメントファイルのURLの範囲などであってもよい。
【０１７５】
＜第２実施の形態＞
（WebSocketプロトコルにおけるフレームの構成例）
本開示を適用した情報処理システムの第２実施の形態の構成は、WebSocketプロトコルに準拠して配信サーバ１１と再生クライアント１２の間の通信が行われる点を除いて、図１の情報処理システム１０の構成と同一である。従って、以下では、配信サーバ１１と再生クライアント１２の間の通信についてのみ説明する。
【０１７６】
図７は、WebSocketプロトコルにおけるフレームの構成例を示す図である。
【０１７７】
図７に示すように、WebSocketプロトコルにおけるフレームは、ペイロードデータ（Payload Data）部と、それより前のヘッダ部とにより構成される。ヘッダ部は、WebSocketプロトコルの基本機能を実現するためのものである。特定用途の機能は、ペイロード部を用いて実現される。なお、WebSocketプロトコルにおけるフレームの詳細は、非特許文献２等に記載されている。
【０１７８】
ペイロード部により特定用途の機能を実現する場合、ペイロード部のプロトコルとして、サブプロトコルを定義し、ペイロード部のデータ構造を、サブフレーム(sub-frame)として定義する必要がある。
【０１７９】
第２実施の形態では、WebSocketプロトコルに準拠して配信サーバ１１と再生クライアント１２の間の通信が行われる。従って、WebSocketプロトコルにおけるフレームにおいて、MPEG-DASHによるストリーミングを特定用途の機能として実現する必要がある。よって、MPEG-DASHによるストリーミングを実現するためのサブプロトコルであるDASHサブプロトコルとサブフレームが定義される。
【０１８０】
（サブフレームの構造例）
図８は、第２実施の形態におけるサブフレームの構造例を示す図である。
【０１８１】
図８のサブフレームは、STREAM_ID,CMD_CODE,F，EXT_LENGTH，EXTENSION等により構成される。STREAM_IDは、WebSocketプロトコルでやり取りされるストリームのＩＤを示す８ビットの値である。なお、WebSocketプロトコルでは、１つのコネクションで複数のストリーム の送受信が可能である。
【０１８２】
CMD_CODEは、DASHサブプロトコルで定義されるコマンドの種別を示す８ビットの値である。例えば、このサブフレームがMPDリクエストを送信する際に用いられるサブフレームである場合、CMD_CODEは１であり、メディアリクエストを送信する際に用いられるサブフレームである場合、CMD_CODEは２である。
【０１８３】
また、このサブフレームがMPDリクエストに対するレスポンスとしてMPDファイルを送信する際に用いられるサブフレームである場合、CMD_CODEは3である。このサブフレームがメディアリクエストに対するレスポンスとしてメディアセグメントファイルを送信する際に用いられるサブフレームである場合、CMD_CODEは4である。さらに、このサブフレームが、プッシュ指令をキャンセルする際に用いられるサブフレームである場合、CMD_CODEは255である。
【０１８４】
Fは、コマンドごとに規定される３ビットのフラグである。EXT_LENGTHは、EXTENSIONのサイズを示す１３ビットの値である。EXTENSIONには、第１実施の形態においてMPDリクエストやメディアリクエストのヘッダに記述されるパラメータがJSON（JavaScript(登録商標) Object Notation）エンコードされた値が格納される。JSONエンコードの詳細は、https://tools.ietf.org/html/rfc4627に記載されている。
【０１８５】
（EXTENSIONの例）
図９は、MPDリクエストを送信する際に用いられるサブフレームのEXTENSIONの例を示す図であり、図１０は、メディアリクエスト送信する際に用いられるサブフレームのEXTENSIONの例を示す図である。
【０１８６】
図９および図１０に示すように、EXTENSIONでは、パラメータを示すコードと、そのパラメータの値とがコロンで結ばれることにより、各パラメータの値が指定される。
【０１８７】
具体的には、図９のEXTENSIONでは、コード「push-type」と「init-segment」とがコロンで結ばれている。従って、EXTENSIONに記述されるプッシュ指令のタイプとして、push-init-segment指令が指定されている。
【０１８８】
また、コード「media」と「video/mp4」とがコロンで結ばれているので、メディア種別として、MP4形式でファイル化される映像が指定されている。コード「lang」と「ja」とがコロンで結ばれているので、言語の属性として日本語が指定されている。
【０１８９】
さらに、コード「role」と「main」とがコロンで結ばれているので、目的の属性情報として「main」が指定されている。コード「bitrate」と「400000-8000000」とがコロンで結ばれているので、符号化ビットレートの属性情報の範囲として、400kbpsから8Mbpsまでの範囲が指定されている。
【０１９０】
一方、図１０のEXTENSIONでは、コード「push-type」と「segment-adapted」とがコロンで結ばれている。従って、EXTENSIONに記述されるプッシュ指令のタイプとして、push-segment-adapted指令が指定されている。
【０１９１】
また、コード「duration」と「120」とがコロンで結ばれているので、後続メディアセグメントファイルの期間として、120秒が指定されている。さらに、コード「bitrate」と「400000-8000000」とがコロンで結ばれているので、後続メディアセグメントファイルの符号化ビットレートの許容範囲として、400kbpsから8Mbpsまでの範囲が指定されている。
【０１９２】
なお、第１実施の形態と同様に、コード「duration」の代わりに、コード「number」が記述されるようにしてもよい。この場合、コード「number」と、後続メディアセグメントファイル数を示す整数値とがコロンで結ばれる。
【０１９３】
＜第３実施の形態＞
（本開示を適用したコンピュータの説明）
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【０１９４】
図１１は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
【０１９５】
コンピュータ２００において、CPU（Central Processing Unit）２０１，ROM（Read Only Memory）２０２，RAM（Random Access Memory）２０３は、バス２０４により相互に接続されている。
【０１９６】
バス２０４には、さらに、入出力インタフェース２０５が接続されている。入出力インタフェース２０５には、入力部２０６、出力部２０７、記憶部２０８、通信部２０９、及びドライブ２１０が接続されている。
【０１９７】
入力部２０６は、キーボード、マウス、マイクロフォンなどよりなる。出力部２０７は、ディスプレイ、スピーカなどよりなる。記憶部２０８は、ハードディスクや不揮発性のメモリなどよりなる。通信部２０９は、ネットワークインタフェースなどよりなる。ドライブ２１０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア２１１を駆動する。
【０１９８】
以上のように構成されるコンピュータ２００では、CPU２０１が、例えば、記憶部２０８に記憶されているプログラムを、入出力インタフェース２０５及びバス２０４を介して、RAM２０３にロードして実行することにより、上述した一連の処理が行われる。
【０１９９】
コンピュータ２００（CPU２０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア２１１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【０２００】
コンピュータ２００では、プログラムは、リムーバブルメディア２１１をドライブ２１０に装着することにより、入出力インタフェース２０５を介して、記憶部２０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部２０９で受信し、記憶部２０８にインストールすることができる。その他、プログラムは、ROM２０２や記憶部２０８に、あらかじめインストールしておくことができる。
【０２０１】
なお、コンピュータ２００が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０２０２】
また、本明細書において、システムとは、複数の構成要素（装置、モジュール（部品）等）の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、１つの筐体の中に複数のモジュールが収納されている１つの装置は、いずれも、システムである。
【０２０３】
さらに、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
【０２０４】
また、本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
【０２０５】
例えば、push-media-adapted指令において、符号化ビットレート以外の属性の範囲が指定されてもよい。
【０２０６】
なお、本開示は、以下のような構成もとることができる。
【０２０７】
（１）
複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を、他の情報処理装置に要求する管理ファイル要求情報を送信する送信部
を備える情報処理装置。
（２）
前記管理ファイルは、MPD（Media Presentation Description）ファイルであり、
前記初期化ファイルは、初期化セグメントファイルであり、
前記管理ファイル要求情報は、前記所定の属性を示す属性情報を含む
ように構成された
前記（１）に記載の情報処理装置。
（３）
前記MPDファイルは、複数の種類の前記コンテンツを管理し、
前記管理ファイル要求情報は、前記初期化セグメントファイルに対応する前記コンテンツの種類を示す情報を含む
ように構成された
前記（２）に記載の情報処理装置。
（４）
前記送信部は、所定の符号化ビットレートの所定の再生時刻のコンテンツのファイルと、前記他の情報処理装置により許容範囲内で選択された符号化ビットレートの前記所定の再生時刻より後の再生時刻の前記コンテンツである後続コンテンツのファイルの送信を、前記他の情報処理装置に要求するコンテンツファイル要求情報を送信する
ように構成された
前記（１）に記載の情報処理装置。
（５）
前記管理ファイルは、MPD（Media Presentation Description）ファイルであり、
前記ファイルは、メディアセグメントファイルであり、
前記コンテンツファイル要求情報は、前記許容範囲を示す範囲情報を含む
ように構成された
前記（４）に記載の情報処理装置。
（６）
前記コンテンツファイル要求情報は、前記後続コンテンツの期間を示す情報を含む
ように構成された
前記（５）に記載の情報処理装置。
（７）
前記属性の種類は、前記コンテンツの符号化ビットレート、言語、役割、解像度、サンプリングレート、フレームレート、およびチャンネル数の少なくとも１つである
ように構成された
前記（１）乃至（６）のいずれかに記載の情報処理装置。
（８）
前記送信部は、HTTP（HyperText Transfer Protocol）/2またはWebSocketプロトコルに準拠した送信を行う
ように構成された
前記（１）乃至（７）のいずれかに記載の情報処理装置。
（９）
情報処理装置が、
複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を、他の情報処理装置に要求する管理ファイル要求情報を送信する送信ステップ
を含む情報処理方法。
（１０）
複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を要求する管理ファイル要求情報に基づいて、前記管理ファイルと前記所定の属性のコンテンツの初期化ファイルを送信する送信部と
を備える情報処理装置。
（１１）
前記管理ファイルは、MPD（Media Presentation Description）ファイルであり、
前記初期化ファイルは、初期化セグメントファイルであり、
前記管理ファイル要求情報は、前記所定の属性を示す属性情報を含む
ように構成された
前記（１０）に記載の情報処理装置。
（１２）
前記MPDファイルは、複数の種類の前記コンテンツを管理し、
前記管理ファイル要求情報は、前記初期化セグメントファイルに対応する前記コンテンツの種類を示す情報を含む
ように構成された
前記（１１）に記載の情報処理装置。
（１３）
所定の符号化ビットレートの所定の再生時刻のコンテンツのファイルと、前記情報処理装置により許容範囲内で選択された符号化ビットレートの前記所定の再生時刻より後の再生時刻の前記コンテンツである後続コンテンツのファイルの送信を要求するコンテンツファイル要求情報と、ネットワークの帯域とに基づいて、前記許容範囲内の符号化ビットレートから、前記後続コンテンツの符号化ビットレートを選択する選択部
をさらに備え、
前記送信部は、前記所定の符号化ビットレートの前記所定の再生時刻のコンテンツのファイルと、前記選択部により選択された前記符号化ビットレートの前記後続コンテンツのファイルを送信する
ように構成された
前記（１０）に記載の情報処理装置。
（１４）
前記管理ファイルは、MPD（Media Presentation Description）ファイルであり、
前記ファイルは、メディアセグメントファイルであり、
前記コンテンツファイル要求情報は、前記許容範囲を示す範囲情報を含む
ように構成された
前記（１３）に記載の情報処理装置。
（１５）
前記コンテンツファイル要求情報は、前記後続コンテンツの期間を示す情報を含む
ように構成された
前記（１４）に記載の情報処理装置。
（１６）
前記属性の種類は、前記コンテンツの符号化ビットレート、言語、役割、解像度、サンプリングレート、フレームレート、およびチャンネル数の少なくとも１つである
ように構成された
前記（１０）乃至（１５）のいずれかに記載の情報処理装置。
（１７）
前記送信部は、HTTP（HyperText Transfer Protocol）/2またはWebSocketプロトコルに準拠した送信を行う
ように構成された
前記（１０）乃至（１６）のいずれかに記載の情報処理装置。
（１８）
情報処理装置が、
複数の属性のコンテンツを管理する管理ファイルと、前記複数の属性のうちの所定の属性のコンテンツの初期化ファイルの送信を要求する管理ファイル要求情報に基づいて、前記管理ファイルと前記所定の属性のコンテンツの初期化ファイルを送信する送信ステップと
を含む情報処理方法。
【符号の説明】
【０２０８】
１１  配信サーバ,  １２  再生クライアント，  ３１  httpサーバ,  ３５  選択部,  ５１  httpクライアント
【図１】
2017138387.tif 000003
【図２】
2017138387.tif 000004
【図３】
2017138387.tif 000005
【図４】
2017138387.tif 000006
【図５】
2017138387.tif 000007
【図６】
2017138387.tif 000008
【図７】
2017138387.tif 000009
【図８】
2017138387.tif 000010
【図９】
2017138387.tif 000011
【図１０】
2017138387.tif 000012
【図１１】
2017138387.tif 000013
【国際調査報告】
2017138387.tif 000014
2017138387.tif 000015
2017138387.tif 000016
2017138387.tif 000017