(57)【要約】【課題】クライアントが配信サーバーから切断された後にメディアデータの配信処理を終了可能とすることを目的とする。【解決手段】メディアデータをクライアントに対して配信する配信手段と、クライアントとの通信に係る切断を検出する検出手段と、を有し、検出手段は、メディアデータの単位時間に基づいて切断検出時間を決定し、クライアントからのメディアデータの配信要求を切断検出時間以上受信しない場合に、クライアントとの通信に係る切断を検出し、検出手段によりクライアントとの通信に係る切断が検出された場合、配信手段は、配信を終了する。【選択図】図６
2019152972.tif 000002
【特許請求の範囲】
【請求項１】
メディアデータをクライアントに対して配信する配信手段と、
前記クライアントとの通信に係る切断を検出する検出手段と、
を有し、
前記検出手段は、前記メディアデータの単位時間に基づいて切断検出時間を決定し、前記クライアントからの前記メディアデータの配信要求を前記切断検出時間以上受信しない場合に、前記クライアントとの通信に係る切断を検出し、
前記検出手段により前記クライアントとの通信に係る切断が検出された場合、前記配信手段は、前記配信を終了する配信装置。
【請求項２】
前記検出手段は、前記メディアデータの単位時間に比例する時間として前記切断検出時間を決定する請求項１記載の配信装置。
【請求項３】
前記配信手段が異なる単位時間のメディアデータを前記クライアントに対して配信する場合、前記検出手段は、前記異なる単位時間のうち、最長の単位時間に基づいて前記切断検出時間を決定する請求項１記載の配信装置。
【請求項４】
前記検出手段は、前記メディアデータの単位時間に基づいて切断検出時間を求め、前記求めた切断検出時間が最短待ち時間以下となる場合、前記最短待ち時間を切断検出時間に決定する請求項１乃至３何れか１項記載の配信装置。
【請求項５】
前記検出手段は、前記メディアデータの単位時間に基づいて切断検出時間を求め、前記求めた切断検出時間が最長待ち時間以上となる場合、前記最長待ち時間を切断検出時間に決定する請求項１乃至３何れか１項記載の配信装置。
【請求項６】
メディアデータをクライアントに対して配信する配信手段と、
前記クライアントとの通信に係る切断を検出する検出手段と、
を有し、
前記検出手段は、前記メディアデータの配信状態に基づいて切断検出時間を決定し、前記クライアントからの前記メディアデータの配信要求を前記切断検出時間以上受信しない場合に、前記クライアントとの通信に係る切断を検出し、
前記検出手段により前記クライアントとの通信に係る切断が検出された場合、前記配信手段は、前記配信を終了する配信装置。
【請求項７】
前記メディアデータは、ＭＰＤファイルと、初期化セグメントと、メディアセグメントと、を含み、
前記検出手段は、ＭＰＤファイルと、初期化セグメントと、メディアセグメントと、のうち、前記ＭＰＤファイルを配信済みか、前記初期化セグメントを配信済みか、前記メディアセグメントを配信済みか、に基づいて前記切断検出時間を決定する請求項６記載の配信装置。
【請求項８】
前記配信装置は、撮像部を有するカメラである請求項１乃至７何れか１項記載の配信装置。
【請求項９】
配信装置が実行する情報処理方法であって、
メディアデータをクライアントに対して配信する配信工程と、
前記クライアントとの通信に係る切断を検出する検出工程と、
を含み、
前記検出工程では、前記メディアデータの単位時間に基づいて切断検出時間を決定し、前記クライアントからの前記メディアデータの配信要求を前記切断検出時間以上受信しない場合に、前記クライアントとの通信に係る切断を検出し、
前記検出工程により前記クライアントとの通信に係る切断が検出された場合、前記配信工程では、前記配信を終了する情報処理方法。
【請求項１０】
配信装置が実行する情報処理方法であって、
メディアデータをクライアントに対して配信する配信工程と、
前記クライアントとの通信に係る切断を検出する検出工程と、
を含み、
前記検出工程では、前記メディアデータの配信状態に基づいて切断検出時間を決定し、前記クライアントからの前記メディアデータの配信要求を前記切断検出時間以上受信しない場合に、前記クライアントとの通信に係る切断を検出し、
前記検出工程により前記クライアントとの通信に係る切断が検出された場合、前記配信工程では、前記配信を終了する情報処理方法。
【請求項１１】
コンピュータを、請求項１乃至８何れか１項記載の配信装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、配信装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、映像データ又は音声データを含むメディアデータのストリームをセグメント時間（ｓｅｇｍｅｎｔ  ｄｕｒａｔｉｏｎ）単位のメディアセグメントに分割して配信を行う、アダプティブストリーミング技術を用いたシステムが普及している。アダプティブストリーミング技術の代表的な例としては、下記の２つがある。第１の技術は、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）によって規格化されたＤＡＳＨ（Ｄｙｎａｍｉｃ  Ａｄａｐｔｉｖｅ  Ｓｔｒｅａｍｉｎｇ  ｏｖｅｒ  ＨＴＴＰ）である。第２の技術は、ＨＬＳ（ＨＴＴＰ  Ｌｉｖｅ  Ｓｔｒｅａｍｉｎｇ）である。
例えば、ＤＡＳＨの規格に基づくアダプティブストリーミングにおいては、まずクライアントは、配信サーバーが配信可能なメディアセグメントの系列の情報であるＲｅｐｒｅｓｅｎｔａｔｉｏｎが１つ以上記載されたＭＰＤ（Ｍｅｄｉａ  Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｄｅｓｃｒｉｐｔｉｏｎ）ファイルを取得する。そして、クライアントは、ＭＰＤに記載されたＲｅｐｒｅｓｅｎｔａｔｉｏｎの中から、クライアントの表示性能や通信状況に応じた適切なＲｅｐｒｅｓｅｎｔａｔｉｏｎの系列を選択する。その後、クライアントは、ＭＰＤの記載に従って、ＭＰＥＧ２−ＴＳ又はＭＰ４の映像フォーマットをメディアセグメント単位でダウンロードして再生する。
一般にＭＰＤ内の１つのＲｅｐｒｅｓｅｎｔａｔｉｏｎに対し特定のセグメント時間が記載されている。クライアントは、そのＲｅｐｒｅｓｅｎｔａｔｉｏｎのセグメント時間から各メディアセグメントのダウンロードタイミングを決定し、配信サーバーに対してダウンロード要求を連続して行う。
クライアントに対する連続的なメディアデータの配信処理において、配信サーバーがメディアデータの配信処理を終了するための方法が開示されている。
特許文献１は、メディアデータの配信においてパケットロス量が相当量になった際にメディアデータの配信処理を終了する方法を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１６９０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１の技術では、クライアントが配信サーバーから切断される前にメディアデータの配信処理が終了してしまい、メディアデータの再生が途切れる恐れがあった。
【課題を解決するための手段】
【０００５】
本発明は、メディアデータをクライアントに対して配信する配信手段と、前記クライアントとの通信に係る切断を検出する検出手段と、を有し、前記検出手段は、前記メディアデータの単位時間に基づいて切断検出時間を決定し、前記クライアントからの前記メディアデータの配信要求を前記切断検出時間以上受信しない場合に、前記クライアントとの通信に係る切断を検出し、前記検出手段により前記クライアントとの通信に係る切断が検出された場合、前記配信手段は、前記配信を終了する。
【発明の効果】
【０００６】
本発明によれば、クライアントが情報処理装置から切断された後にメディアデータの配信処理を終了可能とすることができる。
【図面の簡単な説明】
【０００７】
【図１】情報処理システムのシステム構成を示す図である。
【図２】情報処理装置のハードウェア構成を示す図である。
【図３】初期化セグメント及びメディアセグメントのデータ構成を説明する図である。
【図４】情報処理装置の機能構成を示す図である。
【図５】ＭＰＤファイルの構成を示す図である。
【図６】配信シーケンスを示す図である。
【図７】実施形態１の通信部の配信処理を示すフローチャートである。
【図８】実施形態１の切断検出部の切断検出処理を示すフローチャートである。
【図９】テーブルを示す図である。
【図１０】実施形態２の通信部の配信処理を示すフローチャートである。
【図１１】実施形態２の切断検出部の切断検出処理を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について図面に基づいて説明する。
【０００９】
＜実施形態１＞
図１は、情報処理システムのシステム構成の一例を示す図である。情報処理システムは、情報処理装置１０１と、クライアント１０２と、ネットワーク１０３とを有する。情報処理装置１０１とクライアント１０２とは、ネットワーク１０３を介して、相互に接続され、相互に通信することができる。クライアント１０２は、情報処理装置１０１に対して、後述のＭＰＤファイル、初期化セグメント、メディアセグメントの配信要求を含む各種リクエストコマンドを送信する。本明細書において、メディアデータは、ＭＰＤファイル、初期化セグメント、メディアセグメントを含むものとする。情報処理装置１０１は、それらのコマンドに対するレスポンスをクライアント１０２に送信する。ネットワーク１０３は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のＩＰネットワークで、Ｅｔｈｅｒｎｅｔ（登録商標）等の通信規格を満足する複数のルータ、スイッチ、ケーブル等を有しうる。ネットワーク１０３は、情報処理装置１０１及びクライアント１０２間の通信が行えるものであれば、その通信規格、規模、構成が限定されない。ネットワーク１０３は、インターネットから無線ＬＡＮにまで適用することができる。なお、図１では、説明の簡略化のために、情報処理装置１０１は１台としているが、２台以上であってもよい。また、クライアント１０２以外にも、情報処理装置１０１に接続するクライアントがあってもよい。
【００１０】
図２は、情報処理装置１０１のハードウェア構成の一例を示す図である。情報処理装置１０１では、ＣＰＵ２０１、一次記憶装置２０２、二次記憶装置２０３、ネットワークインタフェース２０５が内部バス２０４を介して相互に接続されている。一次記憶装置２０２は、例えばＲＡＭであり、書き込み可能な高速の記憶装置であり、ＯＳや各種プログラム及び各種データがロードされ、またＣＰＵ２０１の作業領域として使用される。二次記憶装置２０３は、例えばフラッシュメモリ、ＨＤＤ、ＳＤカード等であり、不揮発性記憶装置であり、ＯＳや各種プログラム及び各種データの永続的な記憶領域として使用され、短期的な各種データの記憶領域として使用される。ＣＰＵ２０１が、二次記憶装置２０３に記憶されているプログラムを一次記憶装置２０２に展開して実行することにより、後述する図４の情報処理装置１０１の機能構成が実現される。また、ＣＰＵ２０１が、二次記憶装置２０３に記憶されているプログラムを一次記憶装置２０２に展開して実行することにより、後述する図６の情報処理装置１０１の処理及び図７、８、１０、１１のフローチャートの処理が実現される。二次記憶装置２０３では、初期化セグメント及びメディアセグメントを保持する。ネットワークインタフェース２０５は、ネットワーク１０３を介して、情報処理装置１０１へ映像の要求をするクライアント１０２に接続するインタフェースであり、クライアント１０２との通信を担う。
クライアント１０２もハードウェア構成として、図２に示すような構成を有する。そして、クライアント１０２のＣＰＵが二次記憶装置に記憶されているプログラムを一次記憶装置に展開して実行することにより、後述するクライアント１０２の機能及び図６のクライアント１０２の処理が実現される。
【００１１】
図３は、初期化セグメント及びメディアセグメントのデータ構成を説明する図である。
情報処理装置１０１は、初期化セグメント３０１、メディアセグメント４０１を、それぞれ符号化された映像データを含むファイルとして二次記憶装置２０３に保持することができる。初期化セグメント３０１及びメディアセグメント４０１に含まれる映像データの符号化方式は、例えばＨ．２６４／ＡＶＣ又はＨ．２６５／ＨＥＶＣを用いることができる。但し、符号化方式はこれらに限らず、種々の符号化方式でよく、映像データを生成可能なものであればよい。
初期化セグメント３０１は、例えばＳＰＳ（Ｓｅｑｕｅｎｃｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）やＰＰＳ（Ｐｉｃｔｕｒｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）等の映像再生を開始するために必要な映像データである映像メタデータ３１１を含む。
メディアセグメント４０１は、１つ以上の映像フレームを含むことができる。映像フレームは、映像再生時に継続して表示される映像１コマ単位の情報を示す映像データである。映像フレームには、例えば、独立フレーム又は従属フレームがある。独立フレームは、フレーム内符号化処理によって生成され、復号時に他の映像フレームの情報を必要としない映像フレームであり、いわゆるＩフレームと呼ばれている。従属フレームは、フレーム間符号化処理によって生成され、他の映像フレームとの差分情報から構成される映像フレームであり、いわゆるＰフレーム又はＢフレームと呼ばれている。メディアセグメント４０１は映像フレーム５０１〜５０３を符号化順に含む。例えば、５０１を独立フレーム、５０２、５０３を従属フレームとすることができる。なお、メディアセグメント４０１の先頭の映像フレームを独立フレームとしたが、メディアセグメントの先頭の映像フレームが独立フレームでないメディアセグメントがあってもよい。情報処理装置１０１は、二次記憶装置２０３に、メディアセグメント４０１以外に複数のメディアセグメントを保持し、クライアント１０２の配信要求に応じてネットワークインタフェース２０５を通して配信することができる。
【００１２】
図４は、情報処理装置１０１の機能構成の一例を示す図である。情報処理装置１０１は、通信部６０１、切断検出部６０２を機能構成として含む。
通信部６０１は、クライアント１０２から後述のＭＰＤファイル、初期化セグメント、メディアセグメントの配信要求を受信し、それぞれの要求に対してＭＰＤファイル、初期化セグメント、メディアセグメントのデータをクライアント１０２に対して配信する。通信部６０１は、クライアント１０２からメディアセグメントの配信要求を受信すると、切断検出部６０２に対してメディアセグメントの配信要求通知を送信する。
切断検出部６０２は、まず、ＭＰＤファイルに記載されたメディアセグメントのセグメント時間から切断検出時間を決定する。切断検出時間は、クライアント１０２が情報処理装置１０１から切断されたことを検出するための時間である。そして、切断検出部６０２は、クライアント１０２のメディアセグメントの配信要求通知を通信部６０１から受信する毎に、タイマのカウント値をリセットしカウントアップを開始する。切断検出部６０２は、タイマのカウント値が切断検出時間に達した場合に、通信部６０１に対し切断検出通知を送信する。
【００１３】
図５は、情報処理装置１０１がクライアント１０２に配信するＭＰＤファイル７００の構成の一例を示す図である。
ＭＰＤファイル７００は、Ｐｅｒｉｏｄ７０１、ＡｄａｐｔａｔｉｏｎＳｅｔ７０２、Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３、ＳｅｇｍｅｎｔＴｅｍｐｌａｔｅ７０４の順の要素の階層構造となっている。この階層構造によって情報処理装置１０１がクライアント１０２に配信することが可能な初期化セグメント、メディアセグメントに関する情報を定義することができる。
Ｐｅｒｉｏｄ７０１は下位階層の要素が定義される期間の範囲を定義する。Ｐｅｒｉｏｄ７０１では、Ｐｅｒｉｏｄ７０１の開始時間ｓｔａｒｔを０と記述し、Ｐｅｒｉｏｄ７０１の期間であるｄｕｒａｔｉｏｎを記述しないことで、情報処理装置１０１が配信する初期化セグメント、メディアセグメントの全ての情報の期間を定義することができる。また、ＡｖａｉｌａｂｉｌｉｔｙＳｔａｒｔＴｉｍｅ７１５は、ＭＰＤファイル７００が有効となる時刻を示す。ＡｖａｉｌａｂｉｌｉｔｙＳｔａｒｔＴｉｍｅ７１５にＰｅｒｉｏｄ７０１の開始時間ｓｔａｒｔの時間を加算することによって初期化セグメント及びメディアセグメントが配信可能になる時刻を算出することができる。初期化セグメント及びメディアセグメントが配信可能になる時刻と現在時刻とをクライアント１０２が比較することで現在配信可能な初期化セグメント及びメディアセグメントについて知ることができる。
ＡｄａｐｔａｔｉｏｎＳｅｔ７０２は映像の情報を示しており、例えば同じＰｅｒｉｏｄ７０１の期間で別の視点の映像ごとに定義することができる。
【００１４】
Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３は初期化セグメント、メディアセグメントの映像の情報として解像度やフレームレート等を定義することができる。ｉｄ情報７１４はＲｅｐｒｅｓｅｎｔａｔｉｏｎ７０３を識別するためのｉｄ情報であり、Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３のｉｄが１であることを示す。Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３は、解像度情報７０５、フレームレート情報７０６を含む。解像度情報７０５は、メディアセグメントの映像フレームの解像度２５６×１４４を示す。フレームレート情報７０６は、メディアセグメントの映像の１秒当たりに生成される映像フレームの枚数２５を示す。
クライアント１０２は、ＳｅｇｍｅｎｔＴｅｍｐｌａｔｅ７０４で示す、タイムスケール情報７０７及びセグメント時間情報７０８と下記の式（１）とを用いることにより、Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３のメディアセグメントのセグメント時間を算出することができる。
（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３のセグメント時間）＝（セグメント時間情報７０８）／（タイムスケール情報７０７）＝３６０／３０００［秒］＝３／２５［秒］  ・・・  式（１）
【００１５】
また、Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３は、初期化セグメントＵＲＩ情報７０９、及び、メディアセグメントＵＲＩ情報７１０を含んでいる。クライアント１０２は、情報処理装置１０１のＩＰアドレスを含むＭＰＤＢａｓｅＵＲＩ情報７００１１、ＲｅｐｒｅｓｅｎｔａｔｉｏｎＢａｓｅＵＲＩ情報７００１３を使用することにより、下記のＵＲＩにアクセスすることができる。そして、クライアント１０２は、Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３及びＳｅｇｍｅｎｔＴｅｍｐｌａｔｅ７０４によって定義された初期化セグメントと各メディアセグメントとの取得を行うことができる。クライアント１０２は、Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３の初期化セグメントＵＲＩ、及び、メディアセグメントＵＲＩを、ｉｄ情報７１４から＄ＲｅｐｒｅｓｅｎｔａｔｉｏｎＩＤ＄を１として、それぞれ式（２）、式（３）で決定することができる。
（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３の初期化セグメントＵＲＩ）＝（ＭＰＤＢａｓｅＵＲＩ情報７００１１）＋（ＲｅｐｒｅｓｅｎｔａｔｉｏｎＢａｓｅＵＲＩ情報７００１３）＋（初期化セグメントＵＲＩ情報７０９）＝"ｈｔｔｐ：／／１９２．１６９．１００．１：８０／ｖｉｄｅｏ／ｓｔｒｅａｍ１／ｉｎｉｔ１．ｍｐ４"・・・式（２）
（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３のメディアセグメントＵＲＩ）＝（ＭＰＤＢａｓｅＵＲＩ情報７００１１）＋（ＲｅｐｒｅｓｅｎｔａｔｉｏｎＢａｓｅＵＲＩ情報７００１３）＋（メディアセグメントＵＲＩ情報７１０）＝"ｈｔｔｐ：／／１９２．１６９．１００．１：８０／ｖｉｄｅｏ／ｓｔｒｅａｍ１／ｍｅｄｉａ１＿＄Ｎｕｍｂｅｒ＄．ｍ４ｓ"  ・・・式（３）
上記の式で、Ａ＋Ｂは、要素Ａの文字列の右側に要素Ｂの文字列を結合すること意味する。＄Ｎｕｍｂｅｒ＄は、テンプレート表現であり、メディアセグメントＵＲＩ情報７１０のｓｔａｒｔＮｕｍｂｅｒの値からメディアセグメントの映像の時系列順又は符号化順に評価値がインクリメントされていく。
実際の各メディアセグメントのＵＲＩは、"ｈｔｔｐ：／／１９２．１６９．１００．１：８０／ｖｉｄｅｏ／ｓｔｒｅａｍ１／ｍｅｄｉａ１＿１．ｍ４ｓ"、"ｈｔｔｐ：／／１９２．１６９．１００．１：８０／ｖｉｄｅｏ／ｓｔｒｅａｍ１／ｍｅｄｉａ１＿２．ｍ４ｓ"・・・となる。
【００１６】
通信部６０１が、このようなＭＰＤファイル７００を、初期化セグメントと各メディアセグメントとを配信する前にクライアント１０２に配信する。このことで、クライアント１０２は情報処理装置１０１に対し初期化セグメント又はメディアセグメントの配信要求を次々に行うことが可能となる。例えば、まず、クライアント１０２は初期化セグメントを取得し、映像再生のための初期化処理を行う。そして、クライアント１０２は、セグメント時間情報７０８に基づいたセグメント時間毎にメディアセグメントの配信要求を行って、順次、メディアセグメントを取得し映像を再生する。
クライアント１０２は、任意のタイミングでメディアセグメントの送信要求を行うことを中止することができる。より具体的には、メディアセグメントの送信要求を行うことを中止するタイミングの例として、Ｐｅｒｉｏｄ７０１に基づいて情報処理装置１０１のメディアセグメントの配信期間の終了をクライアント１０２が判定したタイミングがある。また、クライアント１０２が備えるＭＰＤファイル、初期化セグメント、及び、メディアセグメントに対する配信要求処理又は再生処理するプログラムが終了したタイミングでもよい。また、クライアント１０２がメディアセグメントを取得することができていない状態で再度同一のメディアセグメントの配信要求（リトライ処理）を所定のリトライ上限回数行ったタイミングでもよい。但し、メディアセグメントの送信要求を行うことを中止するタイミングはこれに限らない。
【００１７】
図６は、ＭＰＤファイル、初期化セグメント、及びメディアセグメントの配信シーケンスの一例を示す図である。
図６ではクライアント１０２が、情報処理装置１０１から配信されるセグメントを受信しているシーケンスを示している。情報処理装置１０１の機能構成として通信部６０１、切断検出部６０２のみを記載している。
Ｓ８０１において、まずクライアント１０２は、情報処理装置１０１が配信可能な初期化セグメント及びメディアセグメントの情報を示すＭＰＤファイル７００の配信要求を情報処理装置１０１に送信する。その後、通信部６０１は、Ｓ８０２において、ＭＰＤファイル７００をクライアント１０２に返信する。
Ｓ８０３において、クライアント１０２は、自装置のＣＰＵ能力や表示解像度等から受信するＲｅｐｒｅｓｅｎｔａｔｉｏｎを決定し、初期化セグメントの配信要求を情報処理装置１０１に送信する。本図では、クライアント１０２はＲｅｐｒｅｓｅｎｔａｔｉｏｎ７０３を受信すると決定するものとする。通信部６０１は、初期化セグメントの配信要求を受信すると、Ｓ８１０において、切断検出部６０２に初期化セグメントの配信要求通知を切断検出部６０２に送信する。そして、切断検出部６０２は、切断検出処理を開始し、まずＳ８１５において、Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３のメディアセグメントのセグメント時間に基づいて切断検出時間を決定する。Ｓ８０４において、通信部６０１は、クライアント１０２に初期メディアセグメントを返信する。
【００１８】
初期化セグメントを受信した後、Ｓ８０５において、クライアント１０２は、最初のメディアセグメント１の配信要求を情報処理装置１０１に送信する。通信部６０１は、メディアセグメント１の配信要求を受信すると、Ｓ８１１において、メディアセグメント１の配信要求通知を切断検出部６０２に送信する。そして、Ｓ８１６において、切断検出部６０２は、Ｓ８１５で決定した切断検出時間のタイマカウントアップを開始する。
その後、通信部６０１は、Ｓ８０６において、メディアセグメント１をクライアント１０２に返信する。
そして、Ｓ８０７において、クライアント１０２は、次のメディアセグメント２の配信要求を送信する。通信部６０１は、メディアセグメント２の配信要求を受信すると、Ｓ８１２において、メディアセグメント２の配信要求通知を切断検出部６０２に送信する。そして、Ｓ８１７において、切断検出部６０２は、Ｓ８１６でカウントをしていたタイマ値をリセットし、再びタイマカウントアップを開始する。
その後、通信部６０１は、Ｓ８０８において、メディアセグメント２をクライアント１０２に返信する。
Ｓ８０９において、クライアント１０２は、メディアセグメントの配信要求処理を中止する。切断検出部６０２は、Ｓ８１７でカウントしていたタイマ値が切断検出時間Ｔ８２１に達すると、Ｓ８１３において、切断検出通知を通信部６０１に対して送信する。通信部６０１は、切断検出部６０２から切断検出通知を受信すると、Ｓ８１４において、配信処理を終了する。そして、Ｓ８１８において、切断検出部６０２は、切断検出処理を終了する。
図６において、Ｔ８２２が切断検出時間Ｔ８２１より短ければ、クライアント１０２は、メディアセグメント２の取得ができない。また、Ｔ８２２が切断検出時間Ｔ８２１より長くなるほど、通信部６０１はクライアントがメディアセグメントの配信要求を行わないにも関わらず処理を長く継続しなければならなくなる。そのため、切断検出時間Ｔ８２１を適切に決定することが重要である。
【００１９】
図７は、実施形態１の通信部６０１の配信処理の一例を示すフローチャートである。
本実施形態において、通信部６０１の配信処理は、クライアント１０２からＭＰＤファイルの配信要求を受信すると開始される。
Ｓ９０１において、通信部６０１は、二次記憶装置２０３にて保持されるＭＰＤファイル７００をクライアント１０２に配信する。
Ｓ９０２において、通信部６０１は、クライアント１０２から初期化セグメントの配信要求を受信したかどうかを判定する。通信部６０１は、初期化セグメントの配信要求を受信した場合にはＳ９０３に処理を進める。このとき、通信部６０１は、クライアント１０２から配信要求が行われた初期化セグメントのＲｅｐｒｅｓｅｎｔａｔｉｏｎのセグメント時間を一次記憶装置２０２に保持する。通信部６０１は、初期化セグメントの配信要求を受信していない場合にはＳ９０２の処理を繰り返す。
Ｓ９０３において、通信部６０１は、二次記憶装置２０３にて保持される初期化セグメントをクライアント１０２に対し配信する。
Ｓ９０４において、通信部６０１は、切断検出部６０２に対し切断検出処理の開始を指示する。
【００２０】
Ｓ９０５において、通信部６０１は、イベントの発生を待ち、発生イベントの判定により処理動作を切り替える。通信部６０１は、発生イベントがメディアセグメントの配信要求であると判定した場合には、Ｓ９０６に処理を進める。また、通信部６０１は、発生イベントが切断検出部６０２からの切断検出通知であると判定した場合には、Ｓ９１０に処理を進める。
Ｓ９０６において、通信部６０１は、切断検出部６０２に対し、メディアセグメントの配信要求通知を送信する。
Ｓ９０７において、通信部６０１は、クライアント１０２から配信要求されたメディアセグメントが配信可能であるかを判定する。通信部６０１は、クライアント１０２から配信要求されたメディアセグメントが配信可能である場合にはＳ９０８に処理を進める。
Ｓ９０８において、通信部６０１は、二次記憶装置２０３にて保持されるメディアセグメントをクライアント１０２に対し配信する。
通信部６０１は、クライアント１０２から配信要求されたメディアセグメントが配信不可である場合にはＳ９０９に処理を進める。
Ｓ９０９において、通信部６０１は、クライアント１０２に対し例えばＨＴＴＰステータスコードの４０４を含むエラーレスポンスを配信する。
Ｓ９１０において、通信部６０１は、切断検出部６０２に対し切断検出処理の終了を指示し、図７に示す配信処理を終了する。
【００２１】
図８は、実施形態１の切断検出部６０２の切断検出処理の一例を示すフローチャートである。
本実施形態において、切断検出部６０２の切断検出処理は、Ｓ９０４における通信部６０１による開始指示が行われると開始される。
Ｓ１００１において、切断検出部６０２は、切断検出時間を決定し、一次記憶装置２０２に保持する。切断検出時間は、例えば、クライアント１０２に対して配信するメディアセグメントのセグメント時間に比例する値として算出することができる。このとき、クライアント１０２に対して配信するメディアセグメントのセグメント時間の値としては、Ｓ９０３において一次記憶装置２０２に保持されているものが使用される。
【００２２】
セグメント時間に比例する算出値をそのまま切断検出時間として決定せず、切断検出時間に下限値（最短待ち時間）を設けることとしてもよい。即ち、切断検出部６０２は、メディアデータの単位時間に基づいて切断検出時間を求め、求めた切断検出時間が最短待ち時間以下となる場合、最短待ち時間を切断検出時間に決定する。切断検出部６０２は、通信部６０１がクライアント１０２からのメディアセグメントの配信要求を受信開始してからクライアント１０２にメディアセグメントを配信開始するまでの処理時間から最短待ち時間を算出してもよい。また、切断検出部６０２は、通信部６０１がメディアセグメントを配信してからクライアント１０２がメディアセグメントを受信するまでの時間から最短待ち時間を算出してもよい。また、切断検出部６０２は、クライアント１０２がメディアセグメントを受信してから通信部６０１がクライアント１０２から次にメディアセグメントの配信要求を受信するまでの時間から最短待ち時間を算出してもよい。また、切断検出部６０２は、クライアント１０２の前述のリトライ処理の処理時間から最短待ち時間を算出してもよい。また、切断検出部６０２は、これらの時間の任意の組合せから最短待ち時間を算出してもよい。
通信部６０１がクライアント１０２からのメディアセグメントの配信要求を受信開始してからクライアント１０２にメディアセグメントを配信開始するまでの処理時間は、例えば、通信部６０１において計測することができる。同様に、通信部６０１がメディアセグメントを配信してからクライアント１０２がメディアセグメントを受信するまでの時間については、例えば通信部６０１において計測することができる。また、クライアント１０２がメディアセグメントを受信してから通信部６０１がクライアント１０２から次にメディアセグメントの配信要求を受信するまでの時間は、例えば、通信部６０１が、メディアセグメントのファイルサイズを通信帯域（ｂｐｓ）の値で除することによって決定することができる。クライアント１０２の前述のリトライ処理の処理時間（リトライ処理時間）については、例えば、切断検出部６０２が、図９に示したクライアント１０２の種類とリトライ処理時間とを対応付けたテーブルから選択して決定することができる。また、例えば、クライアント１０２がＭＰＤの配信要求のクエリ等に含ませることにより通信部６０１が取得したリトライ処理時間を一次記憶装置２０２に記録しておき、切断検出部６０２がこのリトライ処理時間を使用することとしてもよい。図９に示したテーブルは、例えば、二次記憶装置２０３に記憶されている。
【００２３】
セグメント時間に比例する算出値をそのまま切断検出時間として決定せず、切断検出時間に上限値（最長待ち時間）を設けることとしてもよい。即ち、切断検出部６０２は、メディアデータの単位時間に基づいて切断検出時間を求め、求めた切断検出時間が最長待ち時間以上となる場合、最長待ち時間を切断検出時間に決定する。切断検出部６０２は、通信部６０１がクライアント１０２に対し配信するメディアセグメントのセグメント時間から最長待ち時間を算出してもよい。また、切断検出部６０２は、通信部６０１がクライアント１０２からのメディアセグメントの配信要求を受信開始してからクライアント１０２にメディアセグメントを配信開始するまでの処理時間から最長待ち時間を算出してもよい。また、切断検出部６０２は、通信部６０１がメディアセグメントを配信してからクライアント１０２がメディアセグメントを受信するまでの時間から最長待ち時間を算出してもよい。また、切断検出部６０２は、クライアント１０２がメディアセグメントを受信してから通信部６０１が次にメディアセグメントの配信要求を受信するまでの時間から最長待ち時間を算出してもよい。また、切断検出部６０２は、これらの時間の任意の組合せから最長待ち時間を算出してもよい。
通信部６０１がクライアント１０２からのメディアセグメントの配信要求を受信開始してからクライアント１０２にメディアセグメントを配信開始するまでの処理時間は、例えば、通信部６０１において計測することができる。同様に、通信部６０１がメディアセグメントを配信してからクライアント１０２がメディアセグメントを受信するまでの時間については、例えば、通信部６０１において計測することができる。また、クライアント１０２がメディアセグメントを受信してから通信部６０１がクライアント１０２から次にメディアセグメントの配信要求を受信するまでの時間は、例えば、通信部６０１が、メディアセグメントのファイルサイズを通信帯域（ｂｐｓ）の値で除することによって決定することができる。
【００２４】
Ｓ１００２において、切断検出部６０２は、タイマ値を初期化しＳ１００１で決定した切断検出時間のタイマカウントアップを開始する。
Ｓ１００３において、切断検出部６０２は、イベントの発生を待ち、発生イベントの判定により処理動作を切り替える。切断検出部６０２は、発生イベントが一次記憶装置２０２に保持される切断検出時間分のタイマ経過によるものであればＳ１００４に処理を進める。切断検出部６０２は、発生イベントが通信部６０１からのメディアセグメント配信要求通知の受信であればＳ１００２に戻る。切断検出部６０２は、発生イベントが通信部６０１からの切断検出処理終了指示であれば、図８に示す切断検出処理を終了する。
Ｓ１００４において、切断検出部６０２は、通信部６０１に対して切断検出通知を送信する。
このように、切断検出部６０２は、少なくともクライアントに対し配信するメディアセグメントのセグメント時間に基づいて切断検出時間を決定して、クライアントからの配信要求を切断検出時間以上受信しない場合にクライアントとの通信に係る切断を検出する。
【００２５】
本実施形態では、Ｓ１００１において、切断検出部６０２は、切断検出処理が開始された直後に切断検出時間を決定するものとしたが、クライアント１０２に対しメディアセグメントを配信する度に切断検出時間を決定し、更新した値を使用してよい。その場合、通信部６０１がＳ９０６においてクライアント１０２からメディアセグメントの配信要求通知を送信する度に、配信要求があったメディアセグメントのセグメント時間を一次記憶装置２０２に保持する。そして、その後、Ｓ１００２において、切断検出部６０２は切断検出時間を決定し更新した値を使用してタイマカウントアップを開始すればよい。その際、クライアント１０２がリトライ処理を行った場合とそうでない場合とで、切断検出部６０２は、最短待ち時間の算出にリトライ処理時間を使用するかどうかを切り替えることとしてもよい。
また、ＭＰＤファイル７００ではＡｄａｐｔａｔｉｏｎＳｅｔ７０２、Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３のみ記述したが、ＭＰＤファイル７００に複数のＡｄａｐｔａｔｉｏｎＳｅｔ、Ｒｅｐｒｅｓｅｎｔａｔｉｏｎの記述がされていてもよい。その際、クライアント１０２が複数のＡｄａｐｔａｔｉｏｎＳｅｔ、及び、複数のＲｅｐｒｅｓｅｎｔａｔｉｏｎのメディアセグメントの中から選択しメディアセグメントの配信要求を行うものとしてもよい。
また、ＭＰＤファイル７００に複数のＡｄａｐｔａｔｉｏｎＳｅｔ、及び、複数のＲｅｐｒｅｓｅｎｔａｔｉｏｎが記載されている等により、クライアント１０２に対し異なるセグメント時間のメディアセグメントを配信しうる場合には、最長であるセグメント時間を、切断検出時間、最長待ち時間に用いるセグメント時間として使用してもよい。
また、Ｓ９１０において、通信部６０１が、切断検出部６０２に対し切断検出処理の終了を指示するものとしているが、その他の機能が切断検出部６０２に対し切断検出処理の終了を指示するものとしてもよい。また、切断検出部６０２は、Ｓ１００４における切断検出通知後に自身の切断検出処理を終了するものとしてもよい。
また、メディアセグメントは映像フレームのデータを含むものとしたが、音声データを含むものとしてもよい。
また、本実施形態では、二次記憶装置２０３にＭＰＤファイル、初期化セグメント、メディアセグメントを予め保存しておくものとした。しかし、情報処理装置１０１は、撮像部、集音部等をさらに備え、ＭＰＤファイル、初期化セグメント、メディアセグメントを生成しながらクライアント１０２に対し配信するものとしてもよい。撮像部を有する情報処理装置１０１は、カメラの一例である。
また、本実施形態ではメディアセグメントの映像のフレームレート、映像フレームの解像度、及びセグメント時間は、上述のものに限らない。
【００２６】
以上のように、少なくともクライアントに対し配信するメディアセグメントのセグメント時間に基づいて切断検出時間を決定して、クライアントからの配信要求を切断検出時間以上受信しない場合にクライアントとの通信に係る切断を検出する。このことで、クライアントが情報処理装置から切断された後にクライアントに対する配信処理を終了することができる。
【００２７】
＜実施形態２＞
実施形態２では、実施形態２と実施形態１とで異なる部分について主に説明を行う。
図１０は、実施形態２の通信部６０１の配信処理を示すフローチャートである。
本実施形態において、通信部６０１の配信処理は、クライアント１０２からＭＰＤファイルの配信要求を受信すると開始される。
Ｓ１１０１において、通信部６０１は、二次記憶装置２０３にて保持されるＭＰＤファイル７００をクライアント１０２に配信する。
Ｓ１１０２において、通信部６０１は、配信状態をＭＰＤ配信済みとして一次記憶装置２０２に記憶する。
Ｓ１１０３において、通信部６０１は、切断検出部６０２に対し切断検出処理の開始を指示する。
【００２８】
Ｓ１１０４において、通信部６０１は、イベントの発生を待ち、発生イベントの判定により処理動作を切り替える。通信部６０１は、発生イベントが初期化セグメントの配信要求であると判定した場合には、Ｓ１１０５に処理を進める。また、通信部６０１は、発生イベントがメディアセグメントの配信要求であると判定した場合には、Ｓ１１１０に処理を進める。また、通信部６０１は、発生イベントが切断検出部６０２からの切断検出通知であると判定した場合には、Ｓ１１１５に処理を進める。
Ｓ１１０５において、通信部６０１は、切断検出部６０２に対し、初期化セグメントの配信要求通知を送信する。
Ｓ１１０６において、通信部６０１は、クライアント１０２から配信要求された初期化セグメントが配信可能であるかを判定する。通信部６０１は、クライアント１０２から配信要求された初期化セグメントが配信可能である場合は、Ｓ１１０７に処理を進める。また、通信部６０１は、クライアント１０２から配信要求された初期化セグメントが配信不可である場合には、Ｓ１１０９に処理を進める。
Ｓ１１０７において、通信部６０１は、二次記憶装置２０３にて保持される初期化セグメントをクライアント１０２に対し配信する。
Ｓ１１０８において、通信部６０１は、配信状態を初期化セグメント配信済みとして一次記憶装置２０２に記憶する。
Ｓ１１０９において、通信部６０１は、クライアント１０２に対し例えばＨＴＴＰステータスコードの４０４を含むエラーレスポンスを配信する。
【００２９】
Ｓ１１１０において、通信部６０１は、切断検出部６０２に対し、メディアセグメントの配信要求通知を送信する。
Ｓ１１１１において、通信部６０１は、クライアント１０２から配信要求されたメディアセグメントが配信可能であるかを判定する。通信部６０１は、クライアント１０２から配信要求されたメディアセグメントが配信可能である場合は、Ｓ１１１２に処理を進め、クライアント１０２から配信要求されたメディアセグメントが配信不可である場合は、Ｓ１１１４に処理を進める。
Ｓ１１１２において、通信部６０１は、二次記憶装置２０３にて保持されるメディアセグメントをクライアント１０２に対し配信する。
Ｓ１１１３において、通信部６０１は、配信状態をメディアセグメント配信済みとして一次記憶装置２０２に記憶する。
Ｓ１１１４において、通信部６０１は、クライアント１０２に対し例えばＨＴＴＰステータスコードの４０４を含むエラーレスポンスを配信する。
Ｓ１１１５において、通信部６０１は、切断検出部６０２に対し切断検出処理の終了を指示する。そして、通信部６０１は、図１０に示す配信処理を終了する。
【００３０】
図１１は、実施形態２の切断検出部６０２の切断検出処理を示すフローチャートである。
本実施形態において、切断検出部６０２の切断検出処理は、Ｓ１１０３における通信部６０１による開始指示が行われると開始される。
Ｓ１２０１において、切断検出部６０２は、一次記憶装置２０２に記憶されている配信状態に基づいて切断検出時間を決定し、一次記憶装置２０２に保持する。
図１０におけるＳ１１０１にて配信状態がＭＰＤ配信済みとして一次記憶装置２０２に保持された場合、切断検出部６０２は、通信部６０１がクライアント１０２からのＭＰＤファイル７００の配信要求を受信開始してからクライアント１０２にＭＰＤファイル７００を配信開始するまでの処理時間に基づき、切断検出時間を決定してもよい。また、切断検出部６０２は、通信部６０１がＭＰＤファイル７００を配信してからクライアント１０２がＭＰＤファイル７００を受信するまでの時間に基づき、切断検出時間を決定してもよい。また、切断検出部６０２は、クライアント１０２がＭＰＤファイル７００を受信してから通信部６０１がクライアント１０２から初期化セグメントの配信要求を受信するまでの時間に基づき、切断検出時間を決定してもよい。また、切断検出部６０２は、これらの時間の任意の組合せから切断検出時間を決定してもよい。
【００３１】
通信部６０１がクライアント１０２からのＭＰＤファイル７００の配信要求を受信開始してからクライアント１０２にＭＰＤファイル７００を配信開始するまでの処理時間については、例えば、通信部６０１において計測することができる。また、通信部６０１がＭＰＤファイル７００を配信してからクライアント１０２がＭＰＤファイル７００を受信するまでの時間は、例えば、通信部６０１がＭＰＤファイル７００のファイルサイズを通信帯域（ｂｐｓ）の値で除した値を用いることによって決定することができる。また、クライアント１０２がＭＰＤファイル７００を受信してから通信部６０１がクライアント１０２から初期化セグメントの配信要求を受信するまでの時間は、例えば、通信部６０１が、前述の初期化セグメント及びメディアセグメントが配信可能になる時刻とメディアセグメントのファイルサイズを通信帯域（ｂｐｓ）の値で除した値とを用いることによって決定することができる。
【００３２】
図１０におけるＳ１１０８にて配信状態が初期化セグメント配信済みとして一次記憶装置２０２に保持された場合の切断検出時間は、実施形態１における切断検出時間の決定方法を次の部分を変更して算出すればよい。即ち、最短待ち時間の決定方法において用いられる時間のうち、通信部６０１がクライアント１０２からのメディアセグメントの配信要求を受信開始してからクライアント１０２にメディアセグメントを配信開始するまでの処理時間を、通信部６０１がクライアント１０２からの初期化セグメントの配信要求を受信開始してからクライアント１０２に初期化セグメントを配信開始するまでの処理時間と変更する。また、通信部６０１がメディアセグメントを配信してからクライアント１０２がメディアセグメントを受信するまでの時間を、通信部６０１が初期化セグメントを配信してからクライアント１０２がメディアセグメントを受信するまでの時間と変更して算出することでできる。また、最長待ち時間の決定方法において用いられる時間のうち、通信部６０１がクライアント１０２からのメディアセグメントの配信要求を受信開始してからクライアント１０２にメディアセグメントを配信開始するまでの処理時間を、通信部６０１がクライアント１０２からの初期化セグメントの配信要求を受信開始してからクライアント１０２に初期化セグメントを配信開始するまでの処理時間と変更する。また、通信部６０１がメディアセグメントを配信してからクライアント１０２がメディアセグメントを受信するまでの時間を通信部６０１が初期化セグメントを配信してからクライアント１０２が初期化セグメントを受信するまでの時間と変更して算出することでできる。
図１０におけるＳ１１１３にて配信状態がメディアセグメント配信済みとして一次記憶装置２０２に保持された場合の切断検出時間は、実施形態１における切断検出時間の決定方法と同じ方法で決定することができる。
【００３３】
Ｓ１２０２において、切断検出部６０２は、タイマ値を初期化しＳ１２０１で決定した切断検出時間のタイマカウントアップを開始する。
Ｓ１２０３において、切断検出部６０２は、イベントの発生を待ち、発生イベントの判定により処理動作を切り替える。切断検出部６０２は、発生イベントが一次記憶装置２０２に保持される切断検出時間分のタイマ経過によるものであれば、Ｓ１２０４に処理を進める。切断検出部６０２は、発生イベントが通信部６０１からのＭＰＤファイル７００、初期化セグメント、又は、メディアセグメント配信要求通知の受信であればＳ１２０１に戻る。切断検出部６０２は、切発生イベントが通信部６０１からの切断検出処理終了指示であれば、図１１に示す切断検出処理を終了する。
Ｓ１２０４において、切断検出部６０２は、通信部６０１に対して切断検出通知を送信する。
【００３４】
このように、クライアントに対し直前に配信したデータの種別が、ＭＰＤファイルであるか、初期化セグメントであるか、メディアセグメントであるかに基づいて切断検出時間を決定する。そして、クライアントからの配信要求を切断検出時間以上受信しない場合にクライアントとの通信に係る切断を検出する。
本実施形態では、クライアント１０２に対し直前に配信したデータの種別が、ＭＰＤファイルであるか、初期化セグメントであるか、メディアセグメントであるかに基づいて切断検出時間を決定するものとした。しかし、情報処理装置１０１は、クライアント１０２に対しそれ以外の種別のデータを配信し、配信したデータの種別に基づいて切断検出時間を決定するものとしてもよい。
【００３５】
以上のように、クライアントに対し直前に配信したデータの種別が、ＭＰＤファイルであるか、初期化セグメントであるか、メディアセグメントであるかに基づいて切断検出時間を決定する。そしてクライアントからの配信要求を切断検出時間以上受信しない場合にクライアントとの通信に係る切断を検出することで、クライアントに対するデータの配信フェーズごとに適切な切断検出時間でクライアントに対する配信処理を終了することができる。
【００３６】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００３７】
以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
例えば、図４に示した情報処理装置１０１のソフトウェア構成の一部又は全てをハードウェア構成として情報処理装置１０１に実装してもよい。また、情報処理装置１０１のハードウェア構成としてＣＰＵ、一次記憶装置、二次記憶装置、ネットワークインタフェース等は１つである必要はない。複数のＣＰＵがプログラムに基づき、複数の一次記憶装置、二次記憶装置に記憶されたデータ等を用いながら処理を実行するようにしてもよい。また、ＣＰＵに替えてＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いることとしてもよい。
また、上述した実施形態では、ＤＡＳＨ配信を例に説明したが、上述した構成、処理等は、ＨＬＳ配信等、他のアダプティブストリーミング技術にも適用することができる。
【００３８】
以上、上述した各実施形態によれば、クライアントが情報処理装置から切断された後にメディアデータの配信処理を終了可能とすることができる。
【符号の説明】
【００３９】
１０１  情報処理装置
１０２  クライアント
２０１  ＣＰＵ
【図１】
2019152972.tif 000003
【図２】
2019152972.tif 000004
【図３】
2019152972.tif 000005
【図４】
2019152972.tif 000006
【図５】
2019152972.tif 000007
【図６】
2019152972.tif 000008
【図７】
2019152972.tif 000009
【図８】
2019152972.tif 000010
【図９】
2019152972.tif 000011
【図１０】
2019152972.tif 000012
【図１１】
2019152972.tif 000013