(57)【要約】  本開示は、メディア再生のローディング制御方法、装置及び記憶媒体を提供する。前記方法は、ウェブページに埋め込まれたプレーヤの再生過程において、前記プレーヤがプレロードしたメディアデータに対応する時間長を検出するステップと、前記プレロードしたメディアデータに対応する時間長が固定時間長より小さい場合、プレロードしたメディアデータが前記固定時間長を満たすようなメディアデータを取得するステップと、メディアソース拡張インターフェースを介して、取得した前記メディアデータを前記プレーヤが埋め込まれたウェブページのメディア要素に送信してプレロードするステップとを、備える。
2021508220.tif 000002
【特許請求の範囲】
【請求項１】
メディア再生のローディング制御方法であって、
ウェブページに埋め込まれたプレーヤの再生過程において、前記プレーヤがプレロードしたメディアデータに対応する時間長を検出するステップと、
前記プレロードしたメディアデータに対応する時間長が固定時間長より小さい場合、プレロードしたメディアデータが前記固定時間長を満たすようなメディアデータを取得するステップと、
メディアソース拡張インターフェースを介して、取得した前記メディアデータを前記ウェブページのメディア要素に送信してプレロードするステップとを、備える、メディア再生のローディング制御方法。
【請求項２】
前記ウェブページのネットワークパラメータに適応した時間長を固定時間長と確定するステップを、さらに備える、
請求項１に記載の方法。
【請求項３】
前記ウェブページのネットワークパラメータに適応した時間長を固定時間長と確定するステップは、
メディアデータ伝送のダウンリンクネットワークの帯域幅と、プレロードしたメディアデータの量との正の相関関係に基づいて、前記プレーヤがプレロード可能なメディアデータの量を確定するステップと、
前記プレロード可能なメディアデータの量の再生時間長を前記固定時間長と確定するステップとを、さらに備える、
請求項２に記載の方法。
【請求項４】
前記ウェブページの特徴パラメータに適応した時間長を前記固定時間長と確定するステップを、さらに備える、
請求項１に記載の方法。
【請求項５】
前記ウェブページの特徴パラメータに適応した時間長を固定時間長と確定するステップは、
前記ウェブページにおける再生ウィンドウの数を取得するステップと、
再生ウィンドウの数と前記固定時間長の負の相関関係に基づいて、前記固定時間長を確定するステップとを、備える、
請求項４に記載の方法。
【請求項６】
前記プレロードしたメディアデータが、前記固定時間長を満たすようなメディアデータを取得するステップは、
メディアファイルにおいて第１キーフレームを定位して、前記第１キーフレームの復号時刻は、前記プレロードしたメディアデータの再生終了時刻より遅れないようにするステップと、
前記メディアファイルにおいて第２キーフレームを定位して、前記第２キーフレームの復号時刻と、プレロードしたメディアデータの再生開始時刻との差が、前記固定時間長であるようにするステップと、
前記メディアファイルから、前記第１キーフレームと第２キーフレームとの間のメディアデータを抽出するステップとを、備える、
請求項１に記載の方法。
【請求項７】
前記メディアファイルから、前記第１キーフレームと第２キーフレームとの間のメディアデータを抽出するステップは、
メディアファイルにおける、前記第１キーフレームと第２キーフレームとの間のビデオフレームのオフセット量とサイズ、及びメディアファイルにおける、前記ビデオフレームに合わせたオーディオフレームのオフセット量とサイズに基づいて、対象区間のオフセット量とサイズを確定するステップを備え、
前記対象区間は、前記ビデオフレームと前記オーディオフレームを含め、
前記対象区間のオフセット量とサイズに基づいて、前記メディアファイルのメディアデータ容器から、対応するメディアデータを抽出する、
請求項６に記載の方法。
【請求項８】
前記メディアソース拡張インターフェースを介して、取得した前記メディアデータを前記ウェブページのメディア要素に送信してプレロードするステップは、
前記メディアデータをメディアソース拡張インターフェースにおけるメディアソース対象に追加するステップと、
メディアソース拡張インターフェースを呼び出して、前記メディアソース対象に対応する仮想アドレスを作成するステップと、
前記メディア要素にメディアソース対象をデータソースとして再生するための仮想アドレスを伝達するステップとを、備える、
請求項１から７のいずれか一項に記載の方法。
【請求項９】
再生するメディアファイルが、ＭＰＥＧ−４ファイルフォーマットを用いる場合、前記固定時間長を満たすメディアデータに基づいて、セグメントメディアファイルを構築するステップと、
メディアソース拡張インターフェースを介して、前記セグメントメディアファイルを前記メディア要素に送信するステップとを、さらに備える、
請求項１から７のいずれか一項に記載の方法。
【請求項１０】
前記ウェブページにおいて、プレロードしたメディアデータに対応するセグメント、及びプレロードしていないメディアデータに対応するセグメントを差別化表示するステップを、さらに備える、
請求項１から７のいずれか一項に記載の方法。
【請求項１１】
メディア再生のローディング制御装置であって、
ウェブページに埋め込まれたプレーヤの再生過程において、前記プレーヤがプレロードしたメディアデータに対応する時間長を検出するように配置された検出部と、
前記プレロードしたメディアデータに対応する時間長が固定時間長より小さい場合、プレロードしたメディアデータが前記固定時間長を満たすようなメディアデータを取得するように配置された取得部と、
メディアソース拡張インターフェースを介して、取得した前記メディアデータを前記ウェブページのメディア要素に送信してプレロードするように配置された送信部と、を備える、メディア再生のローディング制御装置。
【請求項１２】
前記ウェブページのネットワークパラメータに適応した時間長を前記固定時間長と確定するように配置された第１確定部、をさらに備える、
請求項１１に記載の装置。
【請求項１３】
前記第１確定部は、さらに、メディアデータの伝送のダウンリンクネットワークの帯域幅と、プレロードしたメディアデータの量との正の相関関係に基づいて、前記プレーヤがプレロード可能なメディアデータの量を確定するように配置され、
前記プレロード可能なメディアデータの量の再生時間長を前記固定時間長と確定する、
請求項１２に記載の装置。
【請求項１４】
前記ウェブページの特徴パラメータに適応した時間長を前記固定時間長と確定するように配置された第２確定部を、さらに備える、
請求項１１に記載の装置。
【請求項１５】
前記第２確定部は、さらに、前記ウェブページにおける再生ウィンドウの数を取得するように配置され、
再生ウィンドウの数と前記固定時間長との負の相関関係に基づいて、前記固定時間長を確定する、
請求項１４に記載の装置。
【請求項１６】
前記取得部は、さらに、メディアファイルにおいて第１キーフレームを定位するように配置され、その中、前記第１キーフレームの復号時刻は、前記プレロードしたメディアデータの再生終了時刻より遅れなく、
前記メディアファイルにおいて第２キーフレームを定位するように配置され、その中、前記第２キーフレームの復号時刻と、プレロードしたメディアデータの再生開始時刻との差は、前記固定時間長であり、
前記メディアファイルから、前記第１キーフレームと前記第２キーフレームとの間のメディアデータを抽出する、
請求項１１に記載の装置。
【請求項１７】
前記取得部は、メディアファイルにおける、前記第１キーフレームと前記第２キーフレームとの間のビデオフレームのオフセット量とサイズ、及び前記メディアファイルにおける、前記ビデオフレームに合わせたオーディオフレームのオフセット量とサイズに基づいて、対象区間のオフセット量とサイズを確定するようにさらに配置され、
前記対象区間は、前記ビデオフレームと前記オーディオフレームを含め、
前記対象区間のオフセット量とサイズに基づいて、前記メディアファイルのメディアデータ容器から対応するメディアデータを抽出する、
請求項１６に記載の装置。
【請求項１８】
前記送信部は、さらに、前記メディアデータをメディアソース拡張インターフェース内のメディアソース対象に追加するように配置され、
前記メディアソース拡張インターフェースを呼び出して、前記メディアソース対象に対応する仮想アドレスを作成し、
前記メディア要素にメディアソース対象をデータソースとして再生するための仮想アドレスを伝達する、
請求項１１から１７のいずれか一項に記載の装置。
【請求項１９】
前記送信部は、再生するメディアファイルが、ＭＰＥＧ−４ファイルフォーマットを用いる場合、前記固定時間長を満たすメディアデータに基づいてセグメントメディアファイルを構築するようにさらに配置され、
メディアソース拡張インターフェースを介して、前記セグメントメディアファイルを前記メディア要素に送信する、
請求項１１から１７のいずれか一項に記載の装置。
【請求項２０】
前記ウェブページにおいて、プレロードしたメディアデータに対応するセグメント、及びプレロードしていないメディアデータに対応するセグメントを差別化表示するように配置された表示部を、さらに備える、
請求項１１から１７のいずれか一項に記載の装置。
【請求項２１】
メディア再生のローディング制御装置であって、
実行可能な指令を記憶するように配置されたメモリと、
メモリに記憶されている実行可能な指令を実行する際に、請求項１から１０のいずれか一項に記載のメディア再生のローディング制御方法を実現するように配置されたプロセッサとを、備える、メディア再生のローディング制御装置。
【請求項２２】
記憶媒体であって、
実行可能な指令を記憶し、
前記実行可能な指令が実行される際、請求項１から１０のいずれか一項に記載のメディア再生のローディング制御方法を実現するために用いられる、記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の交差引用
本出願は、２０１８年０５月２９日付で出願された中国特許出願（出願番号２０１８１０５３０５５７．４）に基づくものであり、当該中国特許出願の優先権を主張し、その内容の全てをここに参照として取り込む。
【０００２】
本開示は、メディア再生技術に関し、特にメディア再生のローディング制御方法、装置及び記憶媒体に関する。
【背景技術】
【０００３】
ウェブページを介してメディアファイルを再生する際、ウェブページは、現在の再生箇所から終了時刻までの全てのメディアデータをロードするまで、現在の再生箇所に基づいて、後続のメディアデータをプレロードする。再生箇所を切り換える度に、ウェブページは現在の再生箇所から終了箇所までの全てのメディアデータをロードし直す。メディアデータを繰り返し請求してロードする必要である一方、ユーザはロードしたメディアデータを見ない可能性がある（例えば、ユーザが不連続に見るとき）。これによって、プレロードしたメディアデータが流量及び帯域幅を必要なく消費するとともに、ネットワークを占用したことでウェブページにおける他のサービスに遅延が生じる。
【発明の概要】
【課題を解決するための手段】
【０００４】
こうした状況に鑑みて、本開示の実施例は、メディア再生のローディング制御方法、装置及び記憶媒体を提供し、プレロードしたメディアデータの制御を実現でき、プレロードしたメディアデータに対応する時間長を固定時間長にすることができる。
【０００５】
本開示の実施例の技術は、以下のように実現している：
第一、本開示の実施例は、メディア再生のローディング制御方法を提供して、
ウェブページに埋め込まれたプレーヤの再生過程において、前記プレーヤがプレロードしたメディアデータに対応する時間長を検出するステップと、
前記プレロードしたメディアデータに対応する時間長が固定時間長より小さい場合、プレロードしたメディアデータが、前記固定時間長を満せるようなメディアデータを取得するステップと、
メディアソース拡張インターフェースを介して、取得した前記メディアデータを前記プレーヤが埋め込まれた前記ウェブページのメディア要素に送信してプレロードするステップと、を備える。
【０００６】
第二、本開示の実施例は、メディア再生のローディング制御装置を提供して、
ウェブページに埋め込まれたプレーヤの再生過程において、前記プレーヤがプレロードしたメディアデータに対応する時間長を検出するように配置された検出部と、
前記プレロードしたメディアデータに対応する時間長が固定時間長より小さい場合、プレロードしたメディアデータが、前記固定時間長を満せるようなメディアデータを取得するように配置された取得部と、
メディアソース拡張インターフェースを介して、取得した前記メディアデータを前記ウェブページのメディア要素に送信してプレロードするように配置された送信部と、を備える。
【０００７】
第三、本開示の実施例は、メディア再生のローディング制御装置を提供して、
実行可能な指令を記憶するように配置されたメモリと、
前記実行可能な指令を実行する際、本開示実施例のメディア再生のローディング制御方法を実現するように配置されたプロセッサと、を備える。そのうち、実行可能な指令は、インストールパッケージ、プログラム、コード、プラグイン、ライブラリー（動的／静的ライブラリー）であってよい。
【０００８】
第四、本開示の実施例は、記憶媒体を提供して、実行可能な指令が記憶されている。前記実行可能な指令がプロセッサによって実行される際、本開示の実施例のメディア再生のローディング制御方法を実現する。
【０００９】
本開示の実施例を適用すれば、以下のような効果を有する。
プレーヤの再生過程において、プレロードしたメディアデータに対する制御を実現し、プレロードしたメディアデータに対応する時間長を固定時間長とし、プレロードしたメディアデータが現在再生箇所から終了時刻までの全てのメディアデータであることによる流量及び帯域幅の必要ではない消費を回避できるとともに、ネットワークを占用したことによって生じたウェブページにおける他のサービスの遅延を緩和できる。
【図面の簡単な説明】
【００１０】
【図１】本開示の実施例に係る容器のある選択可能な構造の模式図である。
【図２】本開示の実施例に係るＭＰ４ファイルのある選択可能なパッケージ構造の模式図である。
【図３】本開示の実施例に係るメディアファイルにおけるメディアデータ容器がメディアデータを記憶する構造の模式図である。
【図４】本開示の実施例に係るセグメントＭＰ４ファイルのある選択可能なパッケージ構造の模式図である。
【図５】本開示の実施例に係るメディア再生のローディング制御システムの概略構成図である。
【図６】本開示の実施例に係るメディア再生のローディング制御装置のハードウェアによる構造の模式図である。
【図７】本開示の実施例に係るメディア再生のローディング制御方法の流れの模式図一である。
【図８】本開示の実施例に係るセグメントメディアファイルをパッケージする流れの模式図である。
【図９】本開示の実施例に係るプレーヤがウェブページのメディアソース拡張インターフェースを介して、セグメントメディアファイルを再生する模式図である。
【図１０】本開示の実施例に係るＭＰ４ファイルをＦＭＰ４ファイルに変換して、メディアソース拡張インターフェースを介して再生する模式図である。
【図１１】本開示の実施例に係るプレロードしたメディアデータに対応するセグメント及びプレロードしていないメディアデータに対応するセグメントを差別化表示する模式図である。
【図１２】本開示の実施例に係るメディア再生のローディング制御方法の流れの模式図二である。
【図１３】本開示の実施例に係るメディア再生のローディング制御装置の構成の模式図である。
【発明を実施するための形態】
【００１１】
以下では、図面及び実施例を結び付けて、本開示についてさらに詳しく説明する。なお、提供した実施形態は本開示を解釈するためのものであり、本開示を限定するものではない。また、以下において提供した実施例は本開示を実施するための一部の実施例であり、本開示を実施する全ての実施例を提供したわけではない。衝突しない場合には、本開示の実施例が記載した技術は、任意に組合せた方式で実施可能であることを理解されるところである。
【００１２】
なお、本開示の実施例では、用語「備える」、「含める」或いはそのさまざまな変形は、非排他的な包含を含むことが意図され、一連の要素を備える方法又は装置は、明記した要素を備えるだけでなく、明記していない他の要素も備え、或いは、実施方法又は装置が固有する要素もさらに備える。さらなる制限なない場合、文言「１つの……を備える」によって限定される要素は、当該要素を備える方法又は装置において他の関連要素が存在することを排除するものではない（例えば、方法におけるステップ又は装置における部、例えば、部は一部の回路、一部のプロセッサ、一部のプログラム或いはソフトウェア等であってもよい）。
【００１３】
例えば、本開示の実施例に係るメディア再生のローディング制御方法は、一連のステップを含めるが、本開示の実施例に係るメディア再生のローディング制御方法は、記載したステップに限られるものではない。同様に、本開示の実施例に係るメディア再生のローディング制御装置は、一連の部を備えるが、本開示の実施例に係る装置は明記された部を備えるものに限られず、関連情報を取得し、或いは情報に基づいて処理を実行する際に設置する必要である部をさらに備えてもよい。
【００１４】
本開示についてさらに詳しく説明する前に、本開示の実施例に係る名詞及び用語を説明する。本開示の実施例に係る名詞及び用語は、以下の解釈を適用する。
【００１５】
（１）メディアファイルは、容器（Ｂｏｘ、又はボックスと呼ばれる）の方式で符号化するメディアデータ（例えば、オーディオデータ及びビデオデータの少なくとも１種類）を記憶するファイルである。中には、メタデータ、即ち、メディアデータを記述するデータをさらに含める。メタデータには、メディアデータが正確に復号化されることを確保するメディア情報が載置されている。
【００１６】
例えば、ＭＰ４容器フォーマットを用いてメディアデータをパッケージしたファイルはＭＰ４ファイルと呼ばれる。典型的に、ＭＰ４ファイルには、ＡＶＣ（Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ、即ち、Ｈ．２６４）或いはＭＰＥＧ−４（Ｐａｒｔ２）の規格で符号化したビデオデータ、及びＡＡＣ（Ａｄｖａｎｃｅｄ  Ａｕｄｉｏ  Ｃｏｄｉｎｇ）の規格で符号化したオーディオデータが記憶されている。もちろん、ビデオデータ及びオーディオデータのその他の符号化方式を排除しない。
【００１７】
（２）容器（Ｂｏｘ）、又はボックスと呼ばれ、唯一のタイプ識別子及び長さで定義されたオブジェクト指向構成要素である。図１を参照する。図１は、本開示の実施例に係る容器のある選択可能な構造の模式図であり、容器ヘッダ（Ｂｏｘ  Ｈｅａｄｒ）と容器データ（Ｂｏｘ  Ｄａｔａ）を備え、中には様々な情報を表すためのバイナリデータがパッディングされている。
【００１８】
容器ヘッダは、サイズ（ｓｉｚｅ）とタイプ（ｔｙｐｅ）を備え、サイズは容器が占用した記憶空間の大きさを明示し（本開示では、容量、又は長さとも呼ばれる）、タイプは容器の種類を明示する。図２を参照する。図２は、本開示の実施例に係るＭＰ４ファイルのある選択可能なパッケージ構造の模式図である。ＭＰ４ファイルに係る基本の容器タイプは、ファイルタイプ容器（ｆｔｙｐ  ｂｏｘ）と、メタデータ容器（ｍｏｏｖ  ｂｏｘ）と、メディアデータ容器（ｍｄａｔ  ｂｏｘ）を含める。
【００１９】
容器データ部分は、具体的なデータを記憶でき、この場合、容器は「データ容器」と呼ばれる。容器データ部分は、その他の種類の容器をさらにパッケージすることができ、この場合、容器は「容器の容器」と呼ばれる。
【００２０】
（３）トラック（Ｔｒａｃｋ）は、メディアデータ容器において時間順でソートされた関連するサンプル（Ｓａｍｐｌｅ）である。メディアデータに対して、トラックは、１つのビデオフレームシーケンス又は１つのオーディオフレームシーケンスを示し、ビデオフレームシーケンスに同期する字幕のトラックをさらに含めてもよい。同一トラックにおける１組の連続するサンプルは、チャンク（Ｃｈｕｎｋ）と呼ばれる。
【００２１】
（４）ファイルタイプ容器は、メディアファイルにおいてファイルのサイズ（即ち、占用したバイトの長さ）及びタイプを記憶するための容器である。図２のように、ファイルタイプ容器を「ｆｔｙｐ  ｂｏｘ」とし、その中に記憶されたバイナリデータは、規定されたバイト長さでファイルの容器のタイプ及びサイズを記述する。
【００２２】
（５）メタデータ容器は、メディアデータにおいてメタデータを記憶する（即ち、メディアデータ容器に記憶されたメディアデータを記述するデータ）容器である。ＭＰ４ファイルにおけるメタデータ容器に記憶されたバイナリデータが示す情報は、メディア情報と呼ばれる。
【００２３】
図２のように、メタデータ容器のヘッダは、バイナリデータを用いて容器のタイプを「ｍｏｏｖ  ｂｏｘ」と示す。容器データ部分は、ＭＰ４ファイルの全般的な情報を記憶するためのｍｖｈｄ容器をパッケージして、ＭＰ４ファイルに独立すると共に、ＭＰ４ファイルの再生に関連して、時間長と、作成時刻及び修正時刻などを含める。
【００２４】
メディアファイルのメディデータ容器は、複数のトラックに対応するサブ容器を備えてもよい、例えば、オーディオトラック容器（ａｕｄｉｏ  ｔｒａｃｋ  ｂｏｘ）やビデオトラック容器（ｖｉｄｅｏ  ｔｒａｃｋ  ｂｏｘ）である。オーディオトラック容器及びビデオトラック容器のいずれのサブ容器にも、対応するトラックのメディアデータの引用と記述を含める。必要なサブ容器は、トラックの特徴及び全般的な情報（例えば、時間長、幅と高さ）を記述する容器（ｔｋｈｄ  ｂｏｘとする）、トラックのメディア情報（例えば、メディアタイプとサンプルの情報）を記録する容器（ｍｄｉａ  ｂｏｘとする）を含める。
【００２５】
ｍｄｉａ  ｂｏｘにパッケージされたサブ容器について、トラックの関連属性と内容を記録する容器（ｍｄｈｄ  ｂｏｘとする）と、メディアの再生過程の情報を記録する容器（ｈｄｌｒ  ｂｏｘとする）と、トラックにおけるメディアデータのメディア情報を記述する容器（ｍｉｎｆ  ｂｏｘとする）とを含めてもよい。ｍｉｎｆ  ｂｏｘには、さらに、メディア情報をどのように定位することを解釈するためのサブ容器（ｄｉｎｆ  ｂｏｘとする）と、トラックにおけるサンプルの全ての時間情報（復号化時刻／表示時刻）、位置情報及び符号化／復号化などの情報を記録するためのサブ容器（ｓｔｂｌ  ｂｏｘとする）とをパッケージした。
【００２６】
図３を参照する。図３は、本開示の実施例に係るメディアファイルにおけるメディアデータ容器に記憶されるメディアデータの構造の模式図である。ｓｔｂｌ  ｂｏｘ容器からバイナリデータによって識別されたメディア情報を用いて、サンプルの時間、タイプ、サイズ及びメディアデータ容器における位置を解釈できる。次に、ｓｔｂｌ  ｂｏｘにおける各サブ容器について説明する。
【００２７】
ｓｔｓｄ  ｂｏｘには、サンプル説明（ｓａｍｐｌｅ  ｄｅｓｃｒｉｐｔｉｏｎ）テーブルが含められ、異なる符号化方式と記憶されたデータのファイル数に基づいて、各メディアファイルには１つ又は複数の説明テーブルを有してもよく、説明テーブルを通じて各サンプルの説明情報を見つけることができる。説明情報は、サンプルが正確に復号化されることを保障できる。メディアのタイプによって記憶された説明情報も違い、例えば、ビデオメディアの場合では、説明情報は画像の構造である。
【００２８】
ｓｔｔｓ  ｂｏｘには、サンプルの時間長情報が記憶されていると共に、テーブルを提供して時間（復号化時刻）とサンプルの番号をマッピングする。ｓｔｔｓ  ｂｏｘによって、メディアファイルにおける何れの時間のサンプルを定位することができる。ｓｔｔｓ  ｂｏｘでは、さらに、他のテーブルを用いてサンプルのサイズとポインタをマッピングし、テーブルの各項目が、同じ時間オフセットにおいて連続するサンプルの番号とサンプルのオフセットを提供し、これらのオフセットを累増することで、完全な時間−サンプルのマッピングテーブルを作成することができる。計算式は以下になる：
【００２９】
ＤＴ（ｎ＋１）＝ＤＴ（ｎ）＋ＳＴＴＳ（ｎ）                              （１）
【００３０】
ここで、ＳＴＴＳ（ｎ）は圧縮されていないＳＴＴＳの第ｎ項目の情報であり、ＤＴは第ｎ個目のサンプルの表示時間である。サンプルの配列は、時間順で配列されており、このようにすることで、オフセットは常に非負値である。ＤＴは、一般的に０から始まり、ＤＴの計算式は以下になる：
【００３１】
ＤＴ（ｉ）＝ＳＵＭ
（ｆｏｒ  ｊ＝０  ｔｏ  ｉ−１  ｏｆ  ｄｅｌｔａ（ｊ））                （２）
【００３２】
全てのオフセットの合計は、トラックにおけるメディアデータの時間長である。
【００３３】
ｓｔｓｓ  ｂｏｘは、メディアファイルにおけるキーフレームの番号を記録する。
【００３４】
ｓｔｓｃ  ｂｏｘは、サンプルとサンプルを記憶するチャンクのマッピング関係を記録し、テーブルによってサンプルの番号とチャンクの番号との関係をマッピングして、テーブルを調べることによって指定のサンプルが含められるチャンクを見つけることができる。
【００３５】
ｓｔｃｏ  ｂｏｘは、各チャンクのトラックの位置を定義する。この位置は、メディアデータ容器の開始バイトのオフセットと、前記開始バイトに対する長さ（即ち、サイズ）を用いて示される。
【００３６】
ｓｔｓｚ  ｂｏｘは、メディアファイルにおける各サンプルのサイズ（即ち、大きさ）を記録する。
【００３７】
（６）メディアデータ容器は、メディアファイルにおいてメディアデータを記憶するための容器である。例えば、ＭＰ４ファイルにおけるメディアデータ容器は、図３のように、サンプルがメディアデータ容器に記憶された単位であり、メディアファイルのチャンクに記憶され、チャンクとサンプルの長さは互いに異なってもよい。
【００３８】
（７）セグメントメディアファイルは、メディアファイルが分割されて形成されたサブファイルであり、各セグメントメディアファイルは単独に復号化することができる。
【００３９】
ＭＰ４ファイルを例として、ＭＰ４ファイルにおけるメディアファイルをキーフレームによって分割して、分割したメディアファイルと対応するメタデータをパッケージしてセグメントＭＰ４（Ｆｒａｇｍｅｎｔｅｄ  ＭＰ４）ファイルを形成する。各ＦＭＰ４ファイルのメタデータは、メディアデータが正確に復号化されることを保障することができる。
【００４０】
例えば、図２のようなＭＰ４ファイルを複数のＦＭＰ４ファイルに変換する場合、図４を参照する。図４は、本開示の実施例に係るセグメントＭＰ４（ＦＭＰ４）ファイルのある選択可能なパッケージ構造の模式図である。１つのＭＰ４ファイルは、複数のＦＭＰ４ファイルに変換でき、各ＦＭＰ４ファイルには、ｍｏｏｖ容器と、ｍｏｏｆ容器と、ｍｄａｔ容器との３つの基本な容器を備える。
【００４１】
ｍｏｏｖ容器は、ＭＰ４ファイルレベルのメタデータを含め、ＦＭＰ４ファイルの由来するＭＰ４ファイルの全てのメディアデータを記述するために用いられる。例えば、ＭＰ４ファイルの時間長と、作成時刻及び修正時刻などである。
【００４２】
ｍｏｏｆ容器は、ＦＭＰ４ファイルにパッケージされたメディアデータを記述するためのセグメントレベルのメタデータを記憶し、ＦＭＰ４ファイルにおけるメディアデータが復号化されることを保障する。
【００４３】
１つのｍｏｏｆ容器と１つのｍｄａｔ容器でセグメントＭＰ４ファイルの１つのセグメントを構成する。１つのセグメントＭＰ４ファイルには、このようなセグメントを１つ又は複数含めてもよい。各セグメントにパッケージされたメタデータは、セグメントにパッケージされたメディアデータが単独に復号化されることを保障する。
【００４４】
（８）メディアソース拡張（ＭＳＥ，Ｍｅｄｉａ Ｓｏｕｒｃｅ Ｅｘｔｅｎｓｉｏｎｓ）インターフェースは、ウェブページにおいて実現されるプレーヤに向けるインターフェースである。ウェブページにおいてローディングする期間内に、ウェブページのインタプリタによって解釈され、フロントエンドプログラミング言語（例えば、ＪａｖａＳｃｒｉｐｔ）を実行して実現されて、プレーヤに対してハイパーテキストマークアップ言語（ＨＴＭＬ）及びメディア要素（Ｍｅｄｉａ  Ｅｌｅｍｅｎｔ）を呼び出して、メディアストリームを再生する機能を提供する。例えば、ビデオ要素＜ｖｉｄｅｏ＞及びオーディオ要素＜ａｕｄｉｏ＞を用いて、ビデオ／オーディオの再生機能を実現する。
【００４５】
（９）ストリーミングメディアフォーマットは、メディアデータをストリーミングメディアのファイルにパッケージして、メディアファイルを完全にダウンロードする必要がなく、別途のトランスコードも必要がなくて、そのまま復号化して再生できる。即ち、オリジナルにダウンロードしながら再生することをサポートするパッケージ技術である。典型的なストリーミングメディアフォーマットのファイルは、例えば、ＨＴＴＰライブストリーミング（ＨＬＳ，ＨＴＴＰ  Ｌｉｖｅ  Ｓｔｒｅａｍｉｎｇ）技術に基づくＴＳメディアファイルセグメント、ＦＬＶ（Ｆｌａｓｈ  Ｖｉｄｅｏ）ファイルなどである。
【００４６】
（１０）非ストリーミングメディアフォーマットは、メディアデータをメディアファイルにパッケージし、メディアファイルを完全にダウンロードしてから復号化され再生できるパッケージ技術である。典型的な非ストリーミングメディアフォーマットのファイルは、ＭＰ４ファイル、ＭＫＶ（ＭＫＶ  ｆｉｌｅ  ｆｏｒｍａｔ）ファイル、ＷＭＶ（Ｗｉｎｄｏｗｓ  Ｍｅｄｉａ  Ｖｉｄｅｏ）ファイル、ＡＳＦ（Ａｄｖａｎｃｅｄ  Ｓｔｒｅａｍｉｎｇ  Ｆｏｒｍａｔ）ファイル等を含める。
【００４７】
なお、ＭＰ４ファイルは、オリジナルにストリーミング再生をサポートしないが、オンライントランスコードした後、プレーヤに向けてトランスコードしたメディアストリーム、又は部分的にダウンロードしたＭＰ４ファイルの欠損部分に無効のバイナリデータをパッディングすること（例えば、ｆｙｔｐ容器とｍｏｏｖ容器を完全的にダウンロードした場合、ｍｄａｔ容器の欠損部分の代わりに無効のバイナリデータをパッディングすること）で、ダウンロードしながら再生する技術的効果を実現することができる。このようなオリジナルにストリーミング再生をサポートしないファイルのパッケージフォーマットはいずれも非ストリーミングメディアフォーマットと呼ばれる。
【００４８】
まず、本開示の実施例に係るメディア再生のローディング制御装置について説明する。本開示に係るメディア再生のローディング制御装置は、スマートフォン、タブレットコンピュータ、ノートパソコンなどの各種類のユーザ端末として実現できる。次に、装置をユーザ端末として実現する場合、ユーザ端末を含める例示的な応用について説明する。
【００４９】
図５を参照する。図５は、本開示の実施例に係るメディア再生のローディング制御システム１００のある選択可能な結構の模式図であり、本開示の技術を実現するために例示的な応用である。ユーザ端末（例示的にユーザ端末１０−１及びユーザ端末１０−２を示した）は、ネットワーク２０を通じてサーバ３０に接続する。ネットワーク２０は広域ネットワーク、或いはローカルエリアネットワークであってよく、又は、両者の組み合わせであってもよく、無線リンクを用いてデータ伝送を実現する。
【００５０】
ユーザ端末１０は、プレーヤが埋め込まれたウェブページを介して、メディアファイルを再生し、グラフィカルインタフェース１１０（例示的にグラフィカルインタフェース１１０−１及びグラフィカルインタフェース１１０−２を示した）に介して、再生されているコンテンツを表示する。再生の過程において、ユーザ端末１０は、前記プレーヤがプレロードしたメディアデータに対応する時間長を検出する。前記プレロードしたメディアデータに対応する時間長が固定時間長より小さい場合、サーバ３０からプレロードしたメディアデータが固定時間長を満せるようなメディアデータを取得して、メディアソース拡張インターフェースを介して、取得した前記メディアデータをウェブページのメディア要素に送信してプレロードする。
【００５１】
続いて、本開示の実施形態に係るメディア再生のローディング制御装置について説明する。メディア再生のローディング制御装置は、ハードウェア、ソフトウェア、或いはソフトウェアとハードウェアの組み合わせの方式として提供できる。
【００５２】
次に、メディア再生のローディング制御装置の、ソフトウェアとハードウェアの組み合わせによる実施について説明する。図６を参照する。図６は、本開示の実施例に係るメディア再生のローディング制御装置のある選択可能な構造の模式図である。以下では、本開示の実施例に係るメディア再生のローディング制御装置のハードウェア結構について詳しく説明する。図６では、メディア再生のローディング制御装置について、全ての構造ではなく、例示的な構造だけを示している。必要に応じて、図６の示す部分の構造又は全ての構造を実現することができる。
【００５３】
本開示の実施例に係るメディア再生のローディング制御装置６００は、少なくとも１つのプロセッサ６０１と、メモリ６０２と、ユーザインターフェース６０３と、少なくとも１つネットワークインターフェース６０４と、を備える。メディア再生のローディング制御装置６００における各構成要素は、バスシステム６０５によって接続されている。理解されるように、バスシステム６０５は、これらの部品の間の接続通信を実現するために用いられる。バスシステム６０５はデータバスを除き、電源バス、制御バス及び状態信号バスを含める。ただし、説明を明確にするため、図６において各種のバスにバスシステム６０５と図示する。
【００５４】
そのうち、ユーザインターフェース６０３は、ディスプレ、キーボード、マウス、トラックボール、クリックホイール、キー、ボタン、タッチパネル或いはタッチスクリーンなど、を備えてもよい。
【００５５】
理解されるように、メモリ６０２は、揮発性メモリ又は不揮発性メモリであってよく、揮発性メモリと不揮発性メモリの両方を備えてもよい。
【００５６】
本開示の実施例に係るメモリ６０２は、メディア再生のローディング制御装置６００の操作をサポートするために、各タイプのデータを記憶するために用いられる。このようなデータの例示として、メディア再生のローディング制御装置６００において操作するための如何なる実行可能な指令であり、例えば、実行可能な指令６０２１でああり、本開示の実施形態に係るメディア再生のローディング制御方法を実現するプログラムは実行可能な指令６０２１に含められてもよい。
【００５７】
本開示の実施例が開示したメディア再生のローディング制御方法は、プロセッサ６０１に適用することができ、又は、プロセッサ６０１によって実現される。プロセッサ６０１は、集積回路チップであってよく、信号を処理する機能を有する。実現の過程において、メディア再生のローディング制御方法の各ステップは、プロセッサ６０１におけるハードウェアの集積倫理回路、又はソフトウェア形式の指令によって完成できる。前記プロセッサ６０１は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ、Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、或いは他のプログラマブル論理デバイス、ディスクリートゲート又はトランジスタ倫理デバイス、ディスクリートハードウェア部品であってもよい。プロセッサ６０１は、本開示の実施例が開示した各方法、ステップ及び倫理ブロック図を実現、又は実行できる。汎用のロセッサは、マイクロプロセッサ又は如何なる従来のプロセッサなどであってもよい。本開示の実施例が開示した方法のステップと結び付けて、直接的にハードウェア復号プロセッサによって実行完了、又は、復号プロセッサにおけるハードウェアとソフトウェアモジュールの組み合わせによって実行完了する。ソフトウェアモジュールは、記憶媒体に位置されてよい。前記記憶媒体は、メモリ６０２に位置される。プロセッサ６０１は、メモリ６０２に記憶された情報を読み出して、ハードウェアと組み合わせて本開示の実施例に係るメディア再生のローディング制御方法のステップを完了する。
【００５８】
次に、メディア再生のローディング制御装置のハードウェアのみによる実現について説明する。本開示の実施例に係るメディア再生のローディング制御装置は、１つ又は複数のアプリケーション専用集積回路（ＡＳＩＣ，Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、デジタル信号処理（ＤＳＰ，Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｉｎｇ）、プログラマブル論理デバイス（ＰＬＤ，Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）、複合プログラマブル論理デバイス（ＣＰＬＤ，Ｃｏｍｐｌｅｘ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ，Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、或いはその他の電子部品によって実現されることが可能であり、本開示の実施例に係るメディア再生のローディング制御方法を実現するために用いられる。
【００５９】
次に、メディア再生のローディング制御装置のソフトウェアのみによる実現について説明する。本開示の実施形態に係るメディア再生のローディング制御装置は、アプリケーション又はプラグイン、或いは両者を組み合わせた方式を用いて実現することができる。
【００６０】
例として、アプリケーションはメディア再生のローディング制御を行うために専用のクライアントであってよく、メディア再生のローディング制御機能を選択可能な機能とし、対応のプラクインをインストールすることによって実現されるクライアントであってもよい。
【００６１】
例として、プラグインは、アプリケーションの機能アップデートパッケージとして実現可能であり、特定のアプリケーションにメディア再生のローディング制御機能を追加する。メディア再生のウェブページにおける要素であってもよい。フロントエンド言語を用いて実現し、ウェブページによって直接に解釈して実行され、ウェブページにおいてメディア再生のローディング制御機能を実現する。
【００６２】
続いて、メディア再生のローディング制御方法の例示的な実施場面について説明する。
【００６３】
メディア再生のローディング制御のある実施の形態として、インタプリタのウェブページに埋め込まれたプレーヤによって実現可能である。プレーヤが、インタプリタのウェブページにおいてメディアファイルを再生する。インタプリタのウェブページを介して再生する過程において、プレロードしたメディアデータに対応する時間長が固定時間長より小さいと検出した場合、プレーヤは、サーバからプレロードしたメディアデータが固定時間長を満たせるようなメディアデータを取得する。そして、プレーヤが、メディアソース拡張インターフェースを介して、取得したメディアデータをインタプリタのメディア要素（ビデオ要素及び／或いはオーディオ要素）に送信して、メディアデータをプレロードする。
【００６４】
メディア再生のローディング制御のある実施の形態として、ＡＰＰのウェブページに埋め込まれたプレーヤによって実現されてもよい。前記ＡＰＰにインタプリタのカーネルが埋め込まれ、プレーヤは、ＡＰＰがインタプリタのカーネルを呼び出してロードしたウェブページにおいて、メディアファイルを再生する。インタプリタのカーネルが埋め込まれたＷｅＣｈａｔ（チャットアプリ）のクライアントを例として、ユーザは、ＷｅＣｈａｔのクライアントに埋め込まれたインタプリタのカーネルによってメディアファイルの再生ページをロード可能である。プレーヤが、プレロードしたメディアデータに対応する時間長が固定時間長いかであると検出した場合、サーバからプレロードしたメディアデータが固定時間長を満たせるようなメディアデータを取得する。そして、メディアソース拡張インターフェースを介して、取得したメディアデータをＷｅＣｈａｔのクライアントのメディア要素（ビデオ要素及び／或いはオーディオ要素）に送信して、メディアデータをプレロードする。
【００６５】
プレーヤがメディアファイルを再生する過程において、固定時間長はプレーヤのリアルタイムの再生箇所を接続するために用いられて、メディアファイルの連続再生を実現する。再生箇所について、メディアファイルを連続再生する（即ち、ユーザが干渉を加えていない状態で自然再生する）方式で到達した再生時刻であってよく、例えば、３０分目から４０分目まで再生した再生箇所である。ジャンプ方式（即ち、ユーザがカーソルでプログレスバーをクリックしてページのジャンプを実現する）で到達した再生時刻であってもよく、例えば、元の再生箇所が再生進捗の２０％であり、ジャンプ後の再生箇所が再生進捗の３０％であり、プレロードしたメディアファイル、即ち、再生箇所以降ロードしたメディアデータである。
【００６６】
続いて、プレーヤがウェブページに埋め込まれ、ウェブページがプレーヤのＪＳ（ＪａｖａＳｃｒｉｐｔ）コードを解析、実行することによってプレーヤを実現し、プレーヤがウェブページのメディア要素を使用してメディアファイルを再生することを例として、本開示の実施例に係るメディア再生のローディング制御方法について説明する。
【００６７】
図７は、本開示の実施例に係るメディア再生のローディング制御方法のある選択可能なフローチャート模式図である。図７を参照して、本開示の実施例に係るメディア再生のローディング制御方法は、ステップ２０１からステップ２０３を含め、以下、それぞれについて説明する。
【００６８】
ステップ２０１：プレーヤがウェブページを介して再生する過程において、プレーヤがプレロードしたメディアデータに対応する時間長を検出する。
【００６９】
ある実施例では、以下の方式でプレロードされたメディアデータに対応する時間長を取得することができる。
【００７０】
メディアファイルのリアルタイムの再生箇所に対応する時刻、及びロードしたメディアデータに対応する再生終了時刻を取得し、再生終了時刻と再生箇所に対応する時刻との差を計算して、プレロードしたメディアデータに対応する時間長とする。
【００７１】
そのうち、以下のような方式でメディアファイルのリアルタイムの再生箇所に対応する時刻を取得することができる。メディアファイルの再生開始時刻を時間原点として、メディア時間座標系の時間メトリックに対して、リアルタイムの再生箇所に対応するメディアファイルのビデオフレームに対応する時刻を取得して、取得したビデオフレームの時刻を再生箇所に対応する時間とする。
【００７２】
以下のような方式で、ロードしたメディアデータに対応する再生終了時刻を取得することができる。現在プレロードしたメディアデータの最後のビデオフレームに対応する時刻を取得して、取得した最後のビデオフレームに対応する時間を現在プレロードしたメディアデータに対応する再生終了時刻とする。
【００７３】
ステップ２０２：プレロードしたメディアデータに対応する時間長が固定時間長より小さい場合、プレロードしたメディアデータが固定時間長を満たせるようなメディアデータを取得する。
【００７４】
固定時間長について説明する。ある実施例では、予め固定時間長を設定してもよい。
【００７５】
例示的に、プレーヤにおいて固定時間長を設定可能な機能を提供して、プレーヤの設定情報からプレーヤに設定された固定時間長を取得することができる。或いは、ウェブページ側（サービス側）が固定時間長の設定を行い、プレーヤがウェブページの設定情報からウェブページ側に設定された固定時間長を取得することができる。実際に実施する際、固定時間長は、一回設定すれば有効であり、或いは特定の時間内で有効であり、或いは特定のメディアファイル（例えば、特定のタイプ）に対して有効であり、或いは登録ユーザの設定によって有効である。
【００７６】
ある実施例では、固定時間長はプレーヤの自動適応によって得られる。
【００７７】
例示的に、プレーヤは、ウェブページのネットワークパラメータに適応した時間長を固定時間長と確定する。
【００７８】
データ伝送を行うダウンリンクネットワークの帯域幅をネットワークパラメータの例として、固定時間長の適応について説明する。固定時間長が長ければ、固定時間長に対応するメディアデータの量が多くなり、再生箇所の更新後にサーバに要求するメディアデータ量も多くなり、占用するダウンリンクネットワークの帯域幅も広くなる。即ち、固定時間長の長さとダウンリンクネットワークの帯域幅とは、正の相関関係がある。そこで、ネットワークの伝送性能を保障するために、プレーヤは、現在のダウンリンクネットワークの帯域幅、及び固定時間長の長さとダウンリンクネットワークの正の相関関係に基づいて、固定時間長の長さを適切に設定することができる。
【００７９】
データ伝送を行う伝送流量をネットワークパラメータの例として、固定時間長の適応について説明する。固定時間長が長ければ、固定時間長に対応するメディアデータの量が多くなり、再生箇所のさら新後に、プレーヤがサーバから取得要求するメディアデータの流量も大きくなる。そこで、ネットワークの伝送性能を保障するために、現在行われているメディアデータ伝送の伝送流量が大きければ、固定時間長を短く設定する必要がある。即ち、伝送流量と固定時間長の長さとは、負の相関関係がある。プレーヤは、現在行われているデータ伝送の伝送流量、及び伝送流量と固定時間長の長さとの負の相関関係に基づいて、固定時間長の長さを確定することができる。
【００８０】
例示的に、プレーヤは、ウェブページの特徴パラメータに適応する時間長を固定時間長と確定する。
【００８１】
ウェブページにおける再生ウィンドウの数を特徴パラメータの例として、固定時間長の適応について説明する。ウェブページにおける再生ウィンドウの数が多ければ、ウェブページとサーバのデータ交換回数が多くて、ネットワークの負荷も大きくなる。そこで、ネットワークの性能を保障するために、ウェブページにおける再生ウィンドウの数が多い場合、固定時間長の長さを短く設定する必要がある。即ち、再生ウィンドウの数と固定時間長の長さとは、負の相関関係がある。プレーヤは、現在のウェブページにおける再生ウィンドウの数、及び再生ウィンドウの数と固定時間長の長さとの負の相関関係に基づいて、固定時間長の長さを確定することができる。
【００８２】
特徴パラメータが、ウェブページにおける再生ウィンドウの数である場合、さらに再生ウィンドウの再生状態に基づいて、固定時間長の適切な設定を行うことができる。例えば、現在、再生状態（即ち、メディア再生のローディング制御を実行中）にある再生ウィンドウの数を取得し、再生状態にある再生ウィンドウの数と固定時間長との負の相関関係に基づいて、固定時間長の長さを確定する。
【００８３】
続いて、メディアデータの取得について説明する。実際の応用において、メディアデータは、ビデオフレームとオーディオフレームを備えてよい。１部の映画又は１トラックを再生する際、プレーヤは、データストリームを正確に解析し、一定の時間に対して対応するメディアデータを取得すると共に、前記メディアデータが独立に復号されることを確保する。ある実施例では、以下のような方式でプレロードしたメディアデータが固定時間長を満たせるようなメディアデータを取得することができる。
【００８４】
メディアファイルにおいて、第１キーフレームを定位して、第１キーフレームの復号時刻は、現在プレロードしたメディアデータの再生終了時刻に遅れない。メディアファイルにおいて、第２キーフレームを定位し、第２キーフレームの復号時刻とプレロードしたメディアデータの再生開始時刻との差は、固定時間長である。メディアファイルから第１キーフレームと第２キーフレームのとの間メディアデータを抽出する。即ち、固定時間長のメディアデータは、キーフレームを単位として分割されたものである。
【００８５】
続いて、第１キーフレーム及び第２キーフレームを定位することについて説明する。ＭＰ４ファイルをメディアファイルの例として、プレーヤは、ＭＰ４ファイルから識別したメディア情報（ビデオ／オーディオフレームのオフセット、サイズ、復号時刻などの情報）に基づいて、第１キーフレーム及び第２キーフレームを定位することができる。プレーヤが現在プレロードしたメディアデータの最後のビデオフレームは、通常フレームである又はキーフレームである２つの場合がある。以下では、この２つの場合について、それぞれ第１キーフレームの定位を説明する。
【００８６】
現在プレロードしたビデオデータの最後のビデオフレームがキーフレームである場合に対して、復号データ（即ち、キーフレーム）の欠落によってフレームスキップが生じることを回避するために、第１キーフレームの復号時刻は、プレロードしたビデオデータの再生終了時刻に遅れない。現在プレロードしたビデオデータの最後のビデオフレームがキーフレームであれば、最後の１つのビデオフレームを第１キーフレームとする。このように、余分なデータの請求を最大限に減少し、リンクと流量を占用したことによってウェブページにおける非メディア再生サービスが遅延することを回避する。
【００８７】
現在プレロードしたビデオテータの最後のビデオフレームが通常フレームである場合に対して、復号データ（即ち、キーフレーム）の欠落によってフレームスキップが生じることを回避するために、第１キーフレームの復号時刻は、プレロードしたビデオデータの再生終了時刻に遅れない。従って、前記通常フレームの前の最初のキーフレーム（即ち、通常フレームの前にある通常フレームに一番近いキーフレーム）を第１キーフレームとする、即ち、現在プレロードされたビデオデータの最後のキーフレームを第１キーフレームとする。このようにすることで、現在プレロードしたビデオデータの最後のビデオフレームが、正確に復号するための十分な情報を有することを保障することができる。復号データ（即ち、キーフレーム）の欠落でフレームスキップが生じることはない。
【００８８】
続いて、第２キーフレームの定位について説明する。ある実施例では、プレーヤは以下のような方式で、ＭＰ４ファイルにおいて第２キーフレームを定位することができる。プレロードしたメディアデータの再生開始時刻を確定する。固定時間長のメディアデータは、キーフレームを単位として分割されたものであるので、再生開始時刻は、即ち、最初のキーフレームに対応する復号時刻である。ＭＰ４ファイルにおける復号時刻と再生開始時刻との差を固定時間長とするキーフレームを第２キーフレームとする。ＭＰ４ファイルにおける復号時刻と再生開始時刻との差を固定時間長とするビデオフレームが通常フレームであれば、フレームスキップが生じることを回避するために、前記通常フレームの後の最初のキーフレームを第２キーフレームとする。
【００８９】
続いて、プレーヤが、メディアファイルからメディア情報を識別することについて説明する。ある実施例では、プレーヤは、以下のような方式でメディアファイルからメディア情報を識別することができる。設定したオフセット量とサイズに基づいて、サーバに対して設定したオフセット量とサイズに対応するメディアファイルにおけるデータを要求して（即ち、固定サイズのデータを要求して）、サーバから返信されたデータからメタデータ容器におけるメタデータを識別する。識別したメタデータを解析して、メディアファイルを記述するためのメディアデータ容器にパッケージされたメディアデータのメディア情報を得る。
【００９０】
そのうち、設定されたサイズは現存のメディアファイルのファイルタイプ容器とメタデータ容器のサイズに基づいて、統計して得たものであってよい。設定したサイズが、設定比率（例えば、全部）のメディアファイルのファイルタイプ容器とメタデータ容器のサイズの合計をカバーできるようにして、メディアファイルのパッケージ構造がファイルタイプ容器、メタデータ容器及びメディアデータ容器を順次にパッケージしたものである場合、一回の要求でメタデータ容器にパッケージされた完全なメディアデータを得られることを確保する。ネット伝送時のリンクに対する占用状況を節約し、さらにリンクを占用したことによって、ウェブページにおける非メディア再生サービスがリンクを使用できないことで応答遅延することを回避した。
【００９１】
ＭＰ４ファイルをメディアファイルの例として、プレーヤが取得したメタデータ容器にパッケージされたメディアデータは、即ち、ＭＰ４ファイルにおけるｍｏｏｖ  ｂｏｘにパッケージされたバイナリデータである。ＭＰ４ファイルのパッケージ構造は、ｆｙｔｐ  ｂｏｘ、ｍｏｏｖ  ｂｏｘ及びｍｄａｔ  ｂｏｘを順次にパッケージしたものである場合、サイズの設定は、既存のＭＰ４ファイルのｆｙｔｐ  ｂｏｘとｍｏｏｖ  ｂｏｘのサイズに基づいて、統計して得たものであってよい。設定したサイズが、設定比率（例えば、全部）のＭＰ４ファイルのｆｙｔｐ  ｂｏｘとｍｏｏｖ  ｂｏｘのバイナリデータの合計をカバーできるようにして、多くの場合において、一回でサーバから完全なバイナリデータを含めるｍｏｏｖ  ｂｏｘを要求して得られることを確保する。
【００９２】
ある実施例では、プレーヤが、設定したオフセット量とサイズによってサーバから要求したバイナリデータにおいて、ゼロバイトからのあるバイナリデータは、ファイルタイプ容器に対応する。プレーヤが、容器ヘッダを読み出すことでファイルタイプ容器のサイズを得て、２番目の容器ヘッダを読み出すことで次の容器のタイプ及びサイズを得る。２番目の容器のタイプがメタデータ容器であって、返信されたバイナリデータのサイズがファイルタイプ容器のサイズ及びメタデータ容器のサイズの合計以上である場合、設定したオフセット量とサイズによってサーバから要求したバイナリデータには、メタデータ容器にパッケージされたメタデータを含めることを示す。２番目の容器のタイプが、メタデータ容器であって、返信されたバイナリデータのサイズがファイルタイプ容器のサイズ及びメタデータ容器のサイズの合計以下である場合、設定したオフセット量とサイズによってサーバから要求したバイナリデータには、メタデータ容器にパッケージされたメタデータを含めていないことを示す。設定したオフセット量とサイズによってサーバから要求したバイナリデータには、メタデータ容器にパッケージされたメタデータを含めていない場合、プレーヤは、サーバから返信されたバイナリデータから容器のサイズを読み出して、メタデータ容器のヘーダに基づいてメタデータ容器のオフセット量とサイズを計算する必要がある。サーバに対してメタデータを要求するために、計算して得たオフセット量とサイズをネットワーク要求に携帯させる。サーバが要求に応じて、メディアファイルから計算して得たオフセットによってバイナリデータを読み出して、読み出したバイナリデータが計算したサイズに合致する場合に、データをプレーヤへ返信する。
【００９３】
例を挙げて説明する。プレーヤは、サーバから返信されたバイナリデータから容器のサイズを読み出して、メタデータ容器のヘッダに基づいて、メタデータ容器のオフセット量とサイズを計算する。以下の２つの場合に関する。
【００９４】
状況１）残りのバイナリデータ（即ち、返信されたバイナリデータからファイルタイプ容器のバイナリデータを除いたデータ）から読み出した容器のタイプがメタデータであって、残りのバイナリデータのサイズがメタデータ容器のサイズ以下である場合、初回要求したオフセット量とサイズの合計を新しいオフセットとして、サーバに対して２回目のバイナリデータの要求を行う。
【００９５】
状況２）残りのバイナリデータから読み出した容器のタイプがメディアデータ容器である場合、メディアデータ容器のサイズとファイルタイプ容器のサイズとの合計を計算して新しいオフセットとして、サーバに対して２回目のバイナリデータの要求を行う。
【００９６】
ＭＰ４ファイルをメディアファイルの例とする。プレーヤが、設定したオフセット量とサイズによってサーバから請求したバイナリデータには、完全なｍｏｏｖ  ｂｏｘのバイナリデータを含めていない場合、プレーヤは、サーバから返信されたバイナリデータから容器のタイプとサイズを読み出して、ｍｏｏｖ  ｂｏｘ  がＭＰ４ファイルにおけるオフセット量とサイズを確定する必要がある。
【００９７】
ＭＰ４ファイルのバイナリデータでは、開始のバイトはいつもｆｔｙｐ  ｂｏｘに対応する。返信されたバイナリデータからｆｔｙｐ  ｂｏｘのバイナリデータを識別して、ｆｔｙｐ  ｂｏｘのヘッダに基づいて長さを得ることができることで、残りのバイナリデータから、ヘッダの規定の長さに基づいて、次のｂｏｘのバイナリデータを読み出す。ヘッダが示す容器のタイプに基づいて、以下のいくつかの状況がある。
【００９８】
１）残りのバイナリデータ（即ち、返信されたバイナリデータからｆｔｙｐ  ｂｏｘのバイナリデータを除いたデータ）から読み出した容器のタイプがｍｏｏｖ  ｂｏｘであって、残りのバイナリデータのサイズがｍｏｏｖ  ｂｏｘのサイズ以上である場合、確定したシフトとサイズに基づいて、サーバからＭＰ４ファイルにおけるｍｏｏｖ  ｂｏｘのオフセットを始まりとして、且つｍｏｏｖ  ｂｏｘがＭＰ４ファイルにおけるサイズに合致するＭＰ４ファイルの中のｍｏｏｖデータを取得する。
【００９９】
２）残りのバイナリデータから読み出した容器のタイプがｍｏｏｖ  ｂｏｘであって、残りのバイナリデータのサイズはｍｏｏｖ  ｂｏｘのサイズ以下である場合、ｍｏｏｖ  ｂｏｘのサイズと残りのバイナリデータのサイズとの差を計算して２回目の請求の新なサイズとし、初回の請求のオフセット量とサイズの合計を２回目の請求の新たなオフセットとして、サーバに対して２回目のバイナリデータの要求を行う。
【０１００】
３）残りのバイナリデータから読み出した容器のタイプがｍｄａｔ  ｂｏｘである場合、ｍｄａｔ  ｂｏｘのサイズとｆｔｙｐ  ｂｏｘのサイズの合計を計算して２回目の請求の新たなオフセットとして、設定したサイズでサーバに対して２回目のバイナリデータの要求を行う。
【０１０１】
このように、メディアファイルがどのようなパッケージ構造であっても、即ち、メディアファイルにおいてファイルタイプ容器、メタデータ容器及びメディアデータ容器のパッケージ順番がどのようであっても、プレーヤが最大２回の要求でサーバからメタデータ容器におけるメタデータを取得できることを保障することができ、メタデータの取得効率を向上させる。
【０１０２】
例を挙げて説明する。ＭＰ４ファイルに対して、サーバから返信されたバイナリデータは、ＭＰ４ファイルのパッケージ規則によって、ゼロバイトからの１つのバイナリデータはｆｔｙｐ  ｂｏｘに対応する。一方、ｂｏｘのヘッダのパッケージ規則によって、ｆｔｙｐ  ｂｏｘのヘッダからｆｔｙｐ  ｂｏｘのサイズ（即ち、長さ）及び完全なＭＰ４ファイルのサイズを読み出すことができる。仮に、ｆｔｙｐ  ｂｏｘのサイズをａ（単位はバイト）とすると、ａ＋１から後続の容器のヘッダ情報を読み出して、後続の容器のタイプとサイズを取得する。読み出して取得したｆｔｙｐ  ｂｏｘの後続がｍｏｏｖ  ｂｏｘであって、残りのバイナリデータのサイズ（設定サイズ−  ｆｔｙｐ  ｂｏｘのサイズ）がｍｏｏｖ  ｂｏｘのサイズ以上であれば、ｍｏｏｖ  ｂｏｘの完全なバイナリデータを取得したことを示す。ｍｏｏｖ  ｂｏｘのオフセット量とサイズに基づいて、残りのバイナリデータからｍｏｏｖ  ｂｏｘにおけるメタデータを取得することができる。
【０１０３】
プレーヤは、サーバからメタデータ容器にパッケージされたメタデータを取得した後、メタデータ容器におけるサブ容器のネスト構造を解析して、サブ容器のネスト構造に基づいて、各サブ容器におけるバイナリデータを読み出す。読み出したバイナリデータから、各サブ容器の特徴であるメディアデータのメディア情報を解析する。実際の応用では、メディア情報、はメディアファイルにおけるビデオフレーム及び／或いはオーディオフレームのオフセット、サイズ、復号時刻などの情報を含めてもよい。
【０１０４】
ＭＰ４ファイルをメディアファイルの例とする。メタデータ容器は、即ち、ｍｏｏｖ  ｂｏｘである。図２を参照して分かるように、ｍｏｏｖ  ｂｏｘにはｍｖｈｄ  ｂｏｘとｔｒａｃｋ  ｂｏｘがパッケージされている。そのうち、ｍｖｈｄ  ｂｏｘのバイナリデータを解析することで、ＭＰ４ファイルの作成時刻、修正時刻、時間計測スケール、再生可能時間長、デフォルト音量などの情報を得られる。ｍｏｏｖ  ｂｏｘには複数のｔｒａｃｋ  ｂｏｘを含め、各メディアトラック特有の記述情報を記録している。例えば、ビデオトラックｖｉｄｅｏ  ｔｒａｃｋ  ｂｏｘに関して、ｖｉｄｅｏ  ｔｒａｃｋ  ｂｏｘには複数のサブ容器が複層に埋め込まれて、ｖｉｄｅｏ  ｔｒａｃｋ  ｂｏｘのネスト構造に基づいて対応するバイナリデータを解析して、ＭＰ４ファイルのビデオフレーム情報と、対応する画像情報を得られる。
【０１０５】
ある実施例では、プレーヤは、以下のような方式で取得したメタデータを解析し、メディア情報を得られる。順次に、メタデータ容器バイナリデータにおける、容器ヘッダの規定長さに対応するバイナリデータを解析して、前記メタデータ容器におけるサブ容器の容器タイプと、前記サブ容器の容器データの長さを得る。前記サブ容器の容器タイプに対応するタイプの解析器を呼び出して、解析していないデータにおける前記容器データの長さに対応するバイナリデータを順次に解析して、前記容器データが示すメディア情報を得る。
【０１０６】
そのうち、プレーヤが、メタデータ容器に複数のサブ容器が埋め込まれた状況に対して、毎回読み出したバイナリデータのオフセットが、識別したサブ容器の長さの合計である。読み出したバイナリデータの長さは、容器ヘッダの所定長さに合致して、現在処理しているサブ容器のタイプと長さを解析することができる。
【０１０７】
例えば、初回の読み出しの際に、メタデータ容器のバイナリデータのゼロバイトからバイナリデータを読み出して、読み出したバイナリデータの長さが容器ヘッダの規定長さに合致することによって、最初のサブ容器のタイプと長さを解析することができる。２回目の読み出しの際に、初回に読み出したサブ容器の長さをオフセットとして、バイナリデータを読み出し始めて、読み出したバイナリデータの長さが容器ヘッダの規定長さに合致することによって、２番目のサブ容器のタイプと長さを解析することができる。
【０１０８】
このような方式で読み出したバイナリデータは、必要以上に多く読み出して返却されることがなく、読み出したデータが足りず２回目の読み出しを行うこともなく、解析の効率及び正確率が保障される。
【０１０９】
ある実施例では、メタデータ容器に埋め込まれた典型的な容器タイプを事前ラベル付けして、容器が直接にバイナリデータをパッケージするものであるか、又はさらに容器をパッケージしたものであるかを示すために用いられる。例えば、図２に示すｍｖｈｄ  ｂｏｘと、ａｕｄｉｏ  ｔｒａｃｋ  ｂｏｘ及びｖｉｄｅｏ  ｔｒａｃｋ  ｂｏｘなどに対して、さらに容器をパッケージしたとラベル付けて、図２に示すｓｔｔｓ  ｂｏｘとｓｔｓｄ  ｂｏｘなどに対して、直接にバイナリデータをパッケージしたとラベル付けする。
【０１１０】
直接にバイナリデータをパッケージしたとラベル付けした容器タイプに対して、容器タイプにそれぞれ対応する解析器を設置する。解析器は、バイナリデータに基づいて、示すメディア情報を解析するために用いられる。解析したサブ容器の容器タイプを事前ラベル付けされた容器タイプと比べ、以下の２つの場合がある。
【０１１１】
場合１）比較によって、前記サブ容器の容器タイプが事前ラベル付けされたと確定し、かつ直接にバイナリデータをパッケージするために用いられると事前ラベル付けされた場合、前記サブ容器の容器タイプに対応する解析器を呼び出し、前記解析器によって前記サブ容器における容器データを解析して、前記容器データが示すメディア情報を得る。
【０１１２】
場合２）比較によって、前記サブ容器の容器タイプが事前ラベル付けされたと確定し、且つ継続に容器をパッケージするために用いられると事前ラベル付けされた場合、前記メディアファイルにおける容器ヘッダの規定長さに基づき、前記サブ容器に対応するバイナリデータを再帰的に解析して、前記サブ容器にパッケージされた容器の容器タイプが事前ラベル付けされて、直接にバイナリデータをパッケージするために用いられると事前ラベル付けされるまで解析したら、サブ容器にパッケージされた容器の容器タイプに対応する解析器を呼び出して、１バイト毎にバイナリデータを解析する。解析したバイナリデータの長さを前記サブ容器にパッケージされた容器の容器データの長さに対応させることで、前記サブ容器にパッケージされた容器の容器データが示すメディア情報を得る。
【０１１３】
ある実施例では、メタデータ容器の解析過程におけるメディア情報の記録方式について説明する。メタデータ容器のバイナリデータにおける容器ヘッダの規定長さに対応するバイナリデータを順次に解析して、前記メタデータ容器におけるサブ容器の容器タイプを得たときに、サブ容器と帰属する容器とのネスト関係、及びサブ容器とパッケージされた容器のネスト関係に基づいて対象を作成し、サブ容器の容器タイプが直接にバイナリデータをパッケージするために用いられると事前ラベル付けされた場合、前記サブ容器に対応して作成した対象にはメディア情報を含む配列が記憶され、記憶されたメディア情報は前記サブ容器の容器データによって示される。
【０１１４】
例えば、図２では、解析したサブ容器のタイプがｓｔｔｓ  ｂｏｘであるとき、ｓｔｔｓ  ｂｏｘは直接にバイナリデータをパッケージすると事前ラベル付けされたため、ｓｔｔｓ  ｂｏｘに対応して作成した対象にはメディアデータを含む配列が記憶される。なお、メディアデータはｓｔｔｓ  ｂｏｘの容器データが示す時間長情報である。
【０１１５】
ある実施例では、メタデータ容器の解析過程におけるサブ容器の間のネスト関係の方式について説明する。メタデータ容器のバイナリデータにおける容器ヘッダの規定長さに対応するバイナリデータを順次に解析して、前記メタデータ容器におけるサブ容器の容器タイプを得たときに、容器の容器タイプが直接にバイナリデータをパッケージすると事前ラベル付けされた場合、呼び出された前記解析器に解析したサブ容器を記憶する。記憶したサブ容器の実例をサブ容器の属性に設定する。前記サブ容器の属性は、サブ容器と帰属する容器とのネスト関係を記述するための、前記サブ容器が帰属する容器を含める。
【０１１６】
例えば、図２では、解析したサブ容器のタイプがｓｔｓｄ  ｂｏｘであるとき、ｓｔｓｄ  ｂｏｘは直接にバイナリデータをパッケージすると事前ラベル付けされたため、ｓｔｓｄ  ｂｏｘに対応する解析器にｓｔｓｄ  ｂｏｘを記憶し、ｓｔｓｄ  ｂｏｘの実例をｓｔｂｌ  ｂｏｘのサブ容器の属性に設定する。このように、最終的にｓｔｓｄ  ｂｏｘのサブ容器属性には、ｓｔｓｄ  ｂｏｘ、ｓｔｔｓ  ｂｏｘ、ｓｔｓｃ  ｂｏｘなどの複数のｓｔｂｌ  ｂｏｘに埋め込まれたサブ容器が記憶される。
【０１１７】
ある実施例では、比較によって、前記サブ容器の容器タイプが事前ラベル付けされていなく、又は、直接にバイナリデータをパッケージすると事前ラベル付けされたが対応するタイプの解析器を呼び出さなかったと確定した場合、サブ容器に対応するバイナリデータの解析を無視し、前記サブ容器の長さに基づいて、前記バイナリデータにおいて次のサブ容器に対応する部分へジャンプして解析を継続する。
【０１１８】
実際の応用では、メディアファイルにカスタム容器タイプが現れ、ジャンプ方式を用いてはメタデータ容器の全体的な解析の進捗に影響を与えることはない。また、解析器を設置する方式で、メタデータ容器の容器タイプが変動した場合、対応するタイプの解析器を追加、削除及び変更することによって、最新のメタデータ容器に対する交換解析を速やかに実現でき、バージョンアップが柔軟且つ迅速の特徴を有する。
【０１１９】
前記メディア情報の識別に関する説明に基づいて、続いて、プレーヤが識別したメディア情報によって第１キーフレームと第２キーフレームとの間のメディアデータを取得することについて説明する。プレーヤが、第１キーフレームと第２キーフレームを定位した後に、ある実施例では、以下のような方式でメディアファイルから第１キーフレームと第２キーフレームとの間のメディアデータを抽出することができる。メディアファイルにおける、第１キーフレームと第２キーフレームとの間のビデオフレームのオフセット量とサイズ、及びメディアファイルにおける、ビデオフレームと合わせたオーディオフレームのオフセット量とサイズに基づいて、対象区間のオフセット量とサイズを確定する。そのうち、対象区間は、前記ビデオフレームとオーディオフレームを含む。確定したオフセット量とサイズに基づいて、前記ビデオフレームとオーディオフレームを含む対象区間（最少オフセットと最大サイズからなる区間）のオフセット量とサイズを確定する。対象区間のオフセット量とサイズに基づいて、メディアファイルのメディアデータ容器から対応するメディアデータを抽出する。
【０１２０】
ここで、本開示の実施例に係るオーディオフレームとビデオフレームの整列方式について説明する。ビデオフレームを基準とし、メディアデータの開始時刻と時間長に基づいて、ビデオフレームにおいて時刻が同期するオーディオフレームを定位して、メディアデータにおいて最初のオーディオフレームの復号開始時刻がビデオフレームの復号開始時刻に遅れなく、最後のオーディオフレームの復号時刻がビデオフレームの復号終了時刻より早くないことを保障する。このように、メディアファイル（例えば、ビデオ）を再生する際に、画面が表示されるが音が出ないことを回避でき、過度に取り戻したオーディオフレームは、後続の対応するビデオフレームを再生する際の復号に使用可能である。
【０１２１】
対象区間のオフセット量とサイズを確定することについて説明する。２つのキーフレームのうち、第１キーフレームと第２キーフレームとの間のビデオフレームの、メディアファイルにおけるオフセット量とサイズに基づいて、ビデオフレームがメタデータ容器における位置を定位する。ビデオフレームと合わせたオーディオフレームの、メディアファイルにおけるオフセット量とサイズに基づいて、オーディオフレームがメタデータ容器における位置を定位して、位置の上限と下限からなる区間を対象区間とする。即ち、最小オフセットと最大サイズからなる区間である。そのうち、位置の上限に対応するオフセット量とサイズは、対象区間の上限に対応するオフセット量とサイズであり、位置の下限に対応するオフセット量とサイズは、対象区間の下限に対応するオフセット量とサイズである。実際の応用では、対象区間は目標解像度のメディアファイルのメディアデータ容器に記憶されたビデオフレームとオーディオフレームの最小区間である。例えば、第１キーフレームと第２キーフレームとの間のビデオフレームが、目標解像度のメディアファイルにおける位置のオフセットに対応する空間は［ａ，ｂ］（アドレスが昇順）であり、オーディオフレームが目標解像度のメディアファイルにおける位置のオフセットに対応する空間は［ｃ，ｄ］（アドレスが昇順）である。そこで、位置の上限と下限で構成される空間は、即ち、［ｍｉｎ（ａ，ｃ），ｍａｘ（ｂ，ｄ）］である。このように、プレーヤが、対象区間のオフセット量とサイズを携帯するネットワーク要求をサーバに送信して、対象区間のメディアデータを要求する。サーバは、対象区間のオフセット量とサイズに基づいて、メディアファイルにおけるメディアデータを抽出した後に、一括で対象区間のメディアデータを返信する。２回目の取得が必要なく、プレーヤの請求回数を減らし、処理の効率を向上させる。
【０１２２】
ステップ２０３：メディアソース拡張インターフェースを介して、取得したメディアデータをプレーヤが埋め込まれたウェブページのメディア要素に送信してプレロードする。
【０１２３】
ある実施例では、再生するメディアファイルが、ストリーミング再生をサポートするストリーミングメディアフォーマットのファイルである場合、以下のような方式で、取得したメディアデータをプレーヤが埋め込まれたウェブページのメディア要素に送信してプレロードすることを実現できる。
【０１２４】
取得したメディアデータをメディアソース拡張（ＭＳＥ，Ｍｅｄｉａ  Ｓｏｕｒｃｅ  Ｅｘｔｅｎｓｉｏｎｓ）インターフェースにおけるメディアソース（Ｍｅｄｉａ  Ｓｏｕｒｃｅ）対象に追加する。ＭＳＥを呼び出してメディアソース対象に対応する仮想アドレスを作成する。メディア要素（ビデオ要素、オーディオ要素）に仮想アドレスを伝達する。仮想アドレスは、メディア要素がメディアソース対象をデータソースとしてプレロードするために用いられる。
【０１２５】
ある実施例では、プレーヤが再生するメディアファイルは非ストリーミングメディアフォーマット、例えば、ＭＰ４／  ＭＫＶ  ／  ＷＭＶ／  ＡＳＦなどのパッケージフォーマットを使用する。プレーヤは、取得した固定時間長を満たすメディアデータをセグメントメディアファイルに構築する必要がある。そして、セグメントメディアファイルをＭＳＥにおけるメディアソース対象に追加し、ＭＳＥを呼び出してメディアソース対象に対応する仮想アドレスを作成する。メディア要素（ビデオ要素、オーディオ要素）に仮想アドレスを伝達する。仮想アドレスは、メディア要素がメディアソース対象をデータソースとしてプレロードするために用いられる。
【０１２６】
ここで、プレーヤが取得した、プレロードしたメディアデータが固定時間長を満たせるメディアデータに基づいて、セグメントメディアファイルを構築することについて説明する。ある実施例では、プレーヤは以下のような方式でセグメントメディアファイルを構築することができる。プレーヤは、識別したメディア情報に基づいて、セグメントメディアファイルレベルのメタデータを計算し、計算したメタデータ及び取得したメディアデータをセグメントメディアファイルのパッケージフォーマットに基づいてパッディングして、対応するセグメントメディアファイルを得る。
【０１２７】
本開示のある実施例では、図８を参照する。図８は、本開示の例に係るセグメントメディアファイルをパッケージする選択可能な流れの模式図であり、図８に示すステップを結び付けて説明する。
【０１２８】
ステップ３０１、セグメントメディアファイルのタイプと互換性を示すデータを、セグメントメディアファイルのファイルタイプ容器にパッディングする。
【０１２９】
例えば、図４のようなパッケージ構造のＦＭＰ４ファイルをパッケージして形成することを例として、ＦＭＰ４ファイルのファイルタイプ容器、即ち、ｆｔｙｐ  ｂｏｘのヘッダに容器のタイプと長さ（ｆｔｙｐ  ｂｏｘの全体の長さを示す）をパッディングして、ｆｔｙｐ  ｂｏｘのデータ部分にファイルタイプがＦＭＰ４である及び交換プロトコルを示すデータ（バイナリデータ）をパッディングする。
【０１３０】
ステップ３０２、セグメントメディアファイルのファイルレベルを示すメタデータを、セグメントメディアファイルのメタデータ容器にパッディングする。
【０１３１】
ある実施例では、セグメントメディアファイルのパッケージ構造へパッディング待ちのメディアデータ、セグメントメディアファイルにおけるメタデータ容器のネスト構造に基づいて、ネスト構造をパッディングするために必要のメディアデータを記述するメタデータを計算する。
【０１３２】
また、図４を例として、ＦＭＰ４ファイルのファイルレベルを示すメタデータを計算して、ＦＭＰ４のメタデータ容器（即ち、ｍｏｏｖ  ｂｏｘ）にパッディングする。ｍｏｏｖ  ｂｏｘには、ｍｖｈｄと、ｔｒａｃｋと、ビデオ拡張（ｍｖｅｘ、ｍｏｖｉｅ  ｅｘｔｅｎｄ）の３つの容器が埋め込まれている。
【０１３３】
そのうち、ｍｖｈｄ容器にパッケージされたメタデータは、セグメントメディアファイルの再生に関するメディア情報を示すために用いられて、位置、時間長、作成時刻及び修正時刻などを含む。ｔｒａｃｋ容器に埋め込まれたサブ容器は、メディアデータにおいて対応するトラックの引用と記述を示す。例えば、ｔｒａｃｋ容器には、トラックの特徴と全体情報（例えば、時間長、幅と長さ）を記述する容器（ｔｋｈｄ  ｂｏｘとする）と、トラックのメディア情報（例えば、メディアタイプとサンプル情報）の容器（ｍｄｉａ  ｂｏｘとする）が埋め込まれている。
【０１３４】
ステップ３０３、抽出したメディアデータ、及びメディアデータを記述するメタデータを、セグメントメディアファイルのセグメント容器におけるメディアデータ容器、及びセグメントレベルのメタデータ容器に対応してパッディングする。
【０１３５】
ある実施例では、セグメントメディアファイルには、１つ又は複数のセグメント（ｆｒａｇｍｅｎｔ）をパッケージ可能である。パッディング待ちのメディアデータに対して、セグメントメディアファイルの１つ又は複数のメディアデータ容器（即ち、ｍｄａｔ  ｂｏｘ）にパッディング可能であり、各セグメントにセグメントレベルのメタデータ容器（ｍｏｏｆ  ｂｏｘとする）がパッケージされており、中にパッディングされたメタデータはセグメントにパッディングされたメディアデータを記述するために用いられ、セグメントを単独で復号できるようにする。
【０１３６】
図４を結び付けて、パッディング待ちのメディアデータをＦＭＰ４ファイルのパッケージ構造の２つのセグメントにパッディングすることを例として、各セグメントメディアファイルにパッディングする。対応するセグメントのセグメントレベルのメタデータ容器（即ち、ｍｏｏｆ  ｂｏｘ）にパッディングする必要のメタデータを計算して、ｍｏｏｆ  ｂｏｘに埋め込まれたサブ容器に対応してパッディングする。そのうち、ｍｏｏｆ  ｂｏｘのヘッダではｍｏｏｆ  ｂｏｘと呼ばれ、その中にパッディングしたバイナリデータは、容器のタイプが「ｍｏｏｆ  ｂｏｘ」であり、及びｍｏｏｆ  ｂｏｘの長さを示すために用いられる。
【０１３７】
ステップ３０１からステップ３０３までに、データを対応する容器にパッディングする実施例では、パッディング操作を実行する際、クラスの書き込み操作機能を呼び出して前記サブ容器のメモリバッファでバイナリデータの書き込み及び統合を完了して、さらに前記クラスの実例を返信する。返信した実例は、前記サブ容器とネスト関係を有するサブ容器との統合に用いられる。
【０１３８】
パッディングデータの一例として、パッケージ機能を実現するためのクラスＭＰ４を作成して、セグメントメディアファイルにおける各サブ容器をクラスストリームにパッケージする静的方法である。バイナリデータの操作機能を実現するためのクラスストリームを作成して、各クラスストリームにはパッディング待ちのバイナリデータを記憶するためにメモリバッファが提供される。ストリームに係る静的方法によって、パッディング待ちのマルチバイトデジマルデータをバイナリデータに変換する。クラスストリームの実例に係る書き込み操作機能によって、メモリバッファにおいてサブ容器へパッディング待ちのバイナリデータの合併及びパッディングを完了する。ストリームに係る静的方法の新たなストリームを返信する実例によれば、現在のサブ容器と、その他のネスト関係を有するサブ容器との合併を実現することができる。
【０１３９】
図９を参照する。図９は、本開示の実施例に係るプレーヤが、ウェブページのメディアソース拡張インターフェースを介して、セグメントメディアファイルをメディア要素に送信してプレロードする選択可能な模式図である。プレーヤが、ウェブページにおいて再生ウィンドウ（プレーヤに対応する再生ウィンドウ）によってメディアファイルの再生イベントを受信したとき、ＭＳＥがメディアソース方法を実行してメディアソース（Ｍｅｄｉａ  Ｓｏｕｒｃｅ）対象を作成する。メディアソース拡張インターフェースにパッケージされた追加ソースバッファ（ａｄｄ  Ｓｏｕｒｃｅ  Ｂｕｆｆｅｒ）方法でメディアソース対象のバッファを作成し、即ち、ソースバッファ（Ｓｏｕｒｃｅ  Ｂｕｆｆｅｒ）対象である。各ソースバッファ対象はウェブページにおける１つの再生ウィンドウに対応するために用いられ、ウィンドウにおける再生するセグメントメディアファイルを受信するために用いられる。メディアファイルの再生中において、プレーヤにおける解析器（Ｐａｒｓｅｒ）は、新しく取得したメディアファイルを解析することによって、絶えずに新たなセグメントメディアファイルを構築し続ける。ソースバッファ対象の追加ソースバッファ方法を実行することで、セグメントメディアファイルを同一メディアソース対象のソースバッファ対象に追加して、メディアファイルにおけるメディアデータのプレロードを実現する。
【０１４０】
プレーヤが構築したセグメントメディアファイルを、メディアソース拡張インターフェースにおけるメディアソース対象に追加した後、メディアソース拡張インターフェースを呼び出してメディアソース対象に対応する仮想アドレスを作成する。仮想アドレスは、メディア要素がメディアソース対象をデータソースとしてロード及び再生するために用いられる。例えば、プレーヤが、メディアソース拡張インターフェースにパッケージされた目標ＵＲＬを作成する（ｃｒｅａｔｅ  Ｏｂｊｅｃｔ  ＵＲＬ）方法を実行して、メディアソース対象に対応する仮想アドレス、即ち、仮想ユニフォームリソースロケータ（ＵＲＬ、Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を作成して、中にはＢｌｏｂタイプのセグメントメディアファイルがパッケージされている。なお、プレーヤが、メディアソース対象を仮想ＵＲＬのソース（ｓｒｃ）属性と設定して、即ち、仮想ＵＲＬをウェブページにおけるメディア要素と、例えば、ｖｉｄｅｏ（ビデオ）／ａｕｄｉｏ（オーディオ）要素とバンディングする。この過程は、メディアソース対象をウェブページにおけるメディア要素と関連を付けると呼ばれる。
【０１４１】
図１０は、本開示の実施例に係るプレーヤが、メディアソース拡張インターフェースを介して、セグメントメディアファイルをメディア要素に送信するフローチャート模式図である。図１０を参照して、プレーヤは、メディアファイルのリアルアドレス（図では、ｈｔｔｐ：／／ｗｗｗ．ｔｏｕｔｉａｏ．ｃｏｍ／ａ／ｂ．ｍｐ４）に基づいて、固定時間長を満たすメディアデータを取得してから、取得したメディアデータに基づいてセグメントメディアファイルを構築する。即ち、セグメントＭＰ４ファイルフォーマットのメディアデータに変換する。そして、セグメントメディアファイルをＭＳＥのメディアソース対象（例えば、クラスファイル対象（Ｂｌｏｂ）の方式で実現）に追加する。ＭＳＥがメディアソース対象に対応する仮想ＵＲＬを作成して、ビデオ要素に前記仮想ＵＲＬを伝達して、ビデオ要素が対応するメディアソース対象を取得するようにして、上述の固定時間長を満たすメディアデータのプレロードを実現する。
【０１４２】
ある実施例では、プレロードしたメディアデータの表示に対して、ウェブページにおけるメディアデータに対応する再生ウィンドウにおいて、差別化表示を用いてプレロードしたメディアデータに対応するセグメント、及びプレロードしていないメディアデータに対応するセグメントを表示することができる。例えば、異なるカラーを用いてプレロードしたメディアデータに対応するセグメント、及びプレロードしていないメディアデータに対応するセグメントを表示する。図１１は、本開示の実施例に係るプレロードしたメディアデータに対応するセグメント、及びプレロードしていないメディアデータに対応するセグメントを差別化表示する模式図である。図１１では、太さが異なるセグメント指示バーを用いて、再生したメディアデータ、プレロードしたメディアデータ、及びプレロードしていないメディアデータを区別した。図１１における符号２１が示すのは、現在の再生ウィンドウにおいて再生したメディアデータのセグメントであり、符号２２が示すのは、現在の再生ウィンドウにおいてプレロードしたメディアデータであり、符号２３が示すのは、現在の再生ウィンドウにおいてプレロードしていないメディアデータである。そのうち、プレロードしたメディアデータに対応する時間長は、固定時間長であるので、即ち、現在の再生ウィンドウにおいて、符号２２が示すセグメントの長さは常に一定である。このように、ユーザがメディアファイルを閲覧しようとする場合、手動で再生箇所を切替えしてメディアファイルを閲覧するとき、プレーヤが現在の再生箇所に基づいて再生していない全てのメディアデータをプレロードせずに、固定的に一部のメディアデータをプレロードするので、ユーザの視聴体験を保障すると共に、ユーザの流量消費を低減する。
【０１４３】
続いて、プレーヤがウェブページに埋め込まれ、プレーヤがウェブページのＨＴＭＬ５メディア要素を用いてＭＰ４ファイルを再生することを例として、本開示の実施例に係るメディア再生のローディング制御方法について説明する。図１２に本開示の実施例に係るメディア再生のローディング制御方法のある選択可能なフローチャート模式図が示されている。図１２を参照して、本開示の実施例に係るメディア再生のローディング制御方法は、以下のステップを備える。
【０１４４】
ステップ４０１：プレーヤが設定したオフセット量とサイズに基づいて、サーバに対して固定サイズのＭＰ４ファイルにおけるデータを要求する。
【０１４５】
プレーヤは、設定したオフセット量とサイズを携帯するデータ要求をサーバに送信することで、ＭＰ４ファイルにおけるゼロバイトから、且つ設定サイズに合致するバイナリデータを取得する。ある実施例では、メディアファイルが用いられた容器パッケージ構造には、順次にパッケージされたファイルタイプ容器と、メタデータ容器及びメディアデータ容器を備える。ＭＰ４ファイルに対して、パッケージ構造は、順次にパッケージされたｆｙｔｐ  ｂｏｘと、ｍｏｏｖ  ｂｏｘ及びｍｄａｔ  ｂｏｘを備えることが好ましい。設定サイズは、既存ＭＰ４ファイルのｆｙｔｐ  ｂｏｘとｍｏｏｖ  ｂｏｘのサイズによって統計して得たものであってもよい。一次でサーバから完全なｍｏｏｖ  ｂｏｘバイナリデータを要求できることを確保するために、設定サイズが設定比率（例えば、全部）のＭＰ４ファイルのｆｙｔｐ  ｂｏｘとｍｏｏｖ  ｂｏｘの合計をカバーできるようにする。
【０１４６】
ステップ４０２：プレーヤが、サーバから返信されたデータを受信して、サーバから返信されたデータからＭＰ４ファイルのメディア情報を識別する。
【０１４７】
ＭＰ４ファイルのメディア情報は、ＭＰ４ファイルにおけるビデオ／オーディオフレームのオフセット、サイズ、復号時間等の情報を含む。
【０１４８】
ある実施例では、プレーヤが、以下のような方式でＭＰ４ファイルのメディア情報の識別を実現することができる。サーバから返信されたデータから、ｆｙｔｐ  ｂｏｘのバイナリデータを識別して、残りのバイナリデータから容器のタイプとサイズを読み出す。読み出した容器のタイプがｍｏｏｖ  ｂｏｘであって、残りのバイナリデータのサイズがｍｏｏｖ  ｂｏｘサイズ以上である場合、残りのバイナリデータからメディア情報を解析する。また、サーバから返信されたバイナリデータに関して、最初の１つのバイナリデータは必ずｆｙｔｐ  ｂｏｘに対応するものであり、ｆｙｔｐ  ｂｏｘのパッケージ規則に基づいて、ｆｙｔｐ  ｂｏｘのサイズ（即ち、長さ）及び完全なＭＰ４ファイルのサイズを読み出すことができる。例えば、ｆｙｔｐ  ｂｏｘのサイズがａ（単位はバイト）であれば、ａ＋１から後続の容器のヘッダ情報を読み出して、容器のタイプとサイズを取得する。もしｍｏｏｖ  ｂｏｘであって、（設定サイズ−  ｆｙｔｐ  ｂｏｘのサイズ）ｍｏｏｖ  ｂｏｘのサイズより大きければ、ｍｏｏｖ  ｂｏｘの完全なバイナリデータを取り戻したことを示し、パッケージ構造に基づいてバイナリデータを解析して、メディア情報を還元することができる。
【０１４９】
ある実施例では、サーバから返信されたバイナリデータが完全なｍｏｏｖデータを含めない場合、取得したバイナリデータから容器のサイズを読み出して、ＭＰ４ファイルにおけるｍｏｏｖ  ｂｏｘのオフセット量とサイズを確定する。確定したオフセット量とサイズに基づいて、残りのバイナリデータから読み出した容器のタイプがｍｏｏｖ  ｂｏｘであって、残りのバイナリデータのサイズがｍｏｏｖ  ｂｏｘのサイズ以上である場合、サーバから、ＭＰ４ファイルにおける、ｍｏｏｖ  ｂｏｘのＭＰ４ファイルにおけるオフセットで始めて、ｍｏｏｖ  ｂｏｘのＭＰ４ファイルにおけるサイズに合致するｍｏｏｖデータを取得する。残りのバイナリデータから読み出した容器のタイプがｍｏｏｖ  ｂｏｘであって、残りのバイナリデータのサイズがｍｏｏｖ  ｂｏｘのサイズ以下である場合、ｍｏｏｖ  ｂｏｘのサイズと残りのバイナリデータのサイズとの差を計算して、２回目の要求の新たなサイズとし、初回要求のオフセット量とサイズの合計を新たオフセットとして、サーバに対して２回目のバイナリデータの要求を行う。
【０１５０】
実際の応用では、ＭＰ４ファイルのパッケージ構造が、順次にパッケージされたｆｙｔｐ  ｂｏｘと、ｍｄａｔ  ｂｏｘと、ｍｏｏｖ  ｂｏｘである場合がある。残りのバイナリデータから読み出さした容器のタイプがｍｄａｔ  ｂｏｘである場合、ｍｄａｔ  ｂｏｘのサイズとｍｏｏｖ  ｂｏｘのサイズとの合計を計算して、２回目の要求の新たなオフセットとして、設定したサイズでサーバに対して２回目のバイナリデータの要求を行う。
【０１５１】
ステップ４０３：プレーヤがウェブページを介してＭＰ４ファイルを再生する過程において、メディア情報に基づいてプレロードしたメディアデータに対応する時間長を検出する。
【０１５２】
なお、メディアデータは、ビデオフレーム及びオーディオフレームを含める。
【０１５３】
ある実施例では、以下のような方式でプレロードしたメディアデータに対応する時間長を取得することができる。
【０１５４】
メディアファイルのリアルタイムの再生箇所に対応する時刻、及びロードしたメディアデータに対応する再生終了時刻を取得して、再生終了時刻と再生箇所に対応する時刻との差を計算して、プレロードしたメディアデータに対応する時間長とする。
【０１５５】
ステップ４０４：プレロードしたメディアデータに対応する時間長が固定時間長より小さい場合、メディア情報に基づいて、サーバに対してプレロードしたメディアデータが固定時間長を満たせるようなメディアデータを要求する。
【０１５６】
ある実施例では、固定時間長は、サービス側（異なるビデオプラットフォーム）によって設定される属性を有する。サービス側が、ユーザ体験を重要視すれば、比較的に長い固定時間長を設定することができる。サービス側が、ユーザの流量消費を低減することを重要視すれば、比較的に短い固定時間長を設定することができる。
【０１５７】
ある実施例では、固定時間長のメディアデータは、キーフレームを単位として分割している。以下のような方式で、プレロードしたメディアデータが固定時間長を満たせるメディアデータを取得することができる。
【０１５８】
識別して得られたメディア情報に基づいて、ＭＰ４ファイルにおいて第１キーフレームを定位する。第１キーフレームの復号時刻は、プレロードしたメディアデータの再生終了時刻より遅れない。ＭＰ４ファイルにおいて第２キーフレームを定位する。第２キーフレームの復号時刻と、プレロードしたメディアデータの再生開始時刻との差を、固定時間長とする。ＭＰ４ファイルから、第１キーフレームと第２キーフレームとの間のメディアデータを抽出する。
【０１５９】
ステップ４０５：取得したメディアデータに基づいて、セグメントメディアファイルを構築する。
【０１６０】
ある実施例では、以下のような方式でセグメントメディアファイルを構築することができる。
【０１６１】
識別して得られたメディア情報に基づいて、取得したメディアデータを記述するメタデータを確定する。確定したメタデータ及び取得したメディアデータをセグメントメディアファイルの容器構造によってパッケージして、対応するセグメントメディアファイルを得る。
【０１６２】
ステップ４０６：構築したセグメントメディアファイルをＭＳＥにおけるメディアソース対象に追加する。
【０１６３】
ステップ４０７：ウェブページのメディア要素に仮想アドレスを伝達する。
【０１６４】
仮想アドレスは、ビデオ要素がメディアソース対象をメディアソースとしてプレロードするために用いられる。
【０１６５】
ステップ４０８：ウェブページの再生ウィンドウにおいて、プレロードしたメディアデータに対応するセグメント、及びプレロードしていないメディアデータに対応するセグメントを差別化表示する。
【０１６６】
本開示の上述の実施例を応用すれば、以下の効果を有する。
【０１６７】
１、プレーヤがプレロードしたメディアデータは常に固定時間長であり、メディアデータのローディング制御を実現して、流量の大量消費及びリンクの不必要な占用を回避することができる。
【０１６８】
２、プレーヤが、非ストリームメディアフォーマットのメディアファイルにおけるメディアデータを、セグメントメディアファイルに変換すると共に、ウェブページのメディアソース拡張インターフェースを介して、ウェブページのメディア要素に送信して復号再生することができる。プレーヤが埋め込まれたウェブページを介して、非ストリームメディアフォーマットのメディアファイルを再生することを実現して、非ストリームメディアパッケージフォーマットのファイルを完全的にダウンロードした後に独立に再生できる制限を克服した。
【０１６９】
３、ウェブページのビデオ要素とオーディオ要素が仮想アドレスに基づくことで、ＭＰ４ファイルのリアルアドレスの保護を実現した。
【０１７０】
４、プレロードしたメディアデータに対応するセグメント、及びプレロードしていないメディアデータに対応するセグメントを差別化表示することで、ＭＰ４ファイルの再生過程において異なる段階のメディアデータ表示の提示を実現した。
【０１７１】
続いて、メディア再生のローディング制御装置について説明する。実際に実施する際、メディア再生のローディング制御装置は、ソフトウェアによる実施方式を用いることができる。メディア再生のローディング制御装置のソフトウェアの実施例として、図１３は、本開示に係るメディア再生のローディング制御装置の構成を示す模式図である。図１３を参照して、メディア再生のローディング制御装置９００は、
ウェブページに埋め込まれたプレーヤの再生過程において、前記プレーヤがプレロードしたメディアデータに対応する時間長を検出するように配置された検出部９１と、
前記プレロードしたメディアデータに対応する時間長が固定時間長より小さい場合、サーバからプレロードしたメディアデータが前記固定時間長を満たすようなメディアデータを取得するように配置された取得部９２と、
メディアソース拡張インターフェースを介して、取得した前記メディアデータを前記ウェブページのメディア要素に送信してプレロードするように配置された送信部９３と、を備える装置である。
【０１７２】
ある実施例では、メディア再生のローディング制御装置は、
前記ウェブページのネットワークパラメータに適応した時間長を前記固定時間長と確定するように配置された第１確定部をさらに備えてもよい。
【０１７３】
ある実施例では、前記第１確定部は、さらに、メディアデータの伝送のダウンリンクネットワークの帯域幅とプレロードしたメディアデータの量との正の相関関係に基づいて、前記プレーヤがプレロード可能なメディアデータの量を確定するように配置され、
前記プレロード可能なメディアデータの量の再生時間長を前記固定時間長と確定する。
【０１７４】
ある実施例では、
前記ウェブページの特徴パラメータに適応した時間長を前記固定時間長と確定するように配置された第２確定部をさらに備える。
【０１７５】
ある実施例では、前記第２確定部は、さらに前記ウェブページにおける再生ウィンドウの数を取得するように配置され、
再生ウィンドウの数と前記固定時間長との負の相関関係に基づいて、前記固定時間長を確定する。
【０１７６】
ある実施例では、前記取得部は、さらに、メディアファイルにおいて第１キーフレームを定位するように配置され、前記第１キーフレームの復号時刻は、前記プレロードしたメディアデータの再生終了時刻より遅れなく、
前記メディアファイルにおいて第２キーフレームを定位するように配置され、前記第２キーフレームの復号時刻とプレロードしたメディアデータの再生開始時刻との差は、前記固定時間長であり、
前記メディアファイルから、前記第１キーフレームと前記第２キーフレームとの間のメディアデータを抽出する。
【０１７７】
ある実施例では、前記取得部は、さらに、前記第１キーフレームと前記第２キーフレームとの間のビデオフレームが、メディアファイルにおけるオフセット量とサイズ、及び前記ビデオフレームに合わせたオーディオフレームが、前記メディアファイルにおけるオフセット量とサイズに基づいて、対象区間のオフセット量とサイズを確定するように配置され、
前記対象区間は、前記ビデオフレームと前記オーディオフレームを含め、
前記対象区間のオフセット量とサイズに基づいて、前記メディアファイルのメディアデータ容器から対応するメディアデータを抽出する。
【０１７８】
ある実施例では、前記送信部は、さらに前記メディアデータをメディアソース拡張インターフェース内のメディアソース対象に追加するように配置され、
前記メディアソース対象の仮想アドレスを作成し、
前記メディア要素に仮想アドレスを伝達して、前記仮想アドレスは、前記メディア要素がメディアソース対象をデータソースとして再生するために用いられる。
【０１７９】
ある実施例では、前記送信部は、さらに、再生するメディアファイルがＭＰＥＧ−４ファイルフォーマットを用いる場合に、前記固定時間長を満たすメディアデータに基づいて、セグメントメディアファイルを構築するように配置され、
メディアソース拡張インターフェースを介して、前記セグメントメディアファイルを前記メディア要素に送信する。
【０１８０】
ある実施例では、
前記ウェブページの再生ウィンドウにおいて、プレロードしたメディアデータに対応するセグメント、及びプレロードしていないメディアデータに対応するセグメントを差別化表示するように配置された表示部を、さらに備える。
【０１８１】
本開示の実施例は、読み取り可能な記憶媒体をさらに提供しており、記憶媒体は、モバイル記憶装置、ランダムアクセスメモリ（ＲＡＭ，Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、読み出し専用メモリ（ＲＯＭ，Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）、磁気ディスク或いは光ディスクなど、様々なプログラムコードを記憶可能な媒体を含めてもよい。前記読み取り可能な記憶媒体には、実行可能な指令が記憶され、
前記実行可能な指令は、プロセッサによって実行される際に、前記メディア再生のローディング制御方法を実現するために用いられる。
【０１８２】
以上のように、本開示の具体的な実施の形態に過ぎず、本開示の技術的範囲はこれに限られない。当業者が、本開示の技術的範囲において、容易に想到できる変換又は入れ替えは、いずれも本開示の技術的範囲に含まれる。そこで、本開示の技術的範囲は、請求の範囲に記述された範囲を基準にするべきである。
【符号の説明】
【０１８３】
20  ネットワーク
30  サーバ
600  メディア再生のローディング制御装置
601  プロセッサ
602  メモリ
603  ユーザインターフェース
604  ネットワークインターフェース
6021  実行可能な指令
【図１】
2021508220.tif 000003
【図２】
2021508220.tif 000004
【図３】
2021508220.tif 000005
【図４】
2021508220.tif 000006
【図５】
2021508220.tif 000007
【図６】
2021508220.tif 000008
【図７】
2021508220.tif 000009
【図８】
2021508220.tif 000010
【図９】
2021508220.tif 000011
【図１０】
2021508220.tif 000012
【図１１】
2021508220.tif 000013
【図１２】
2021508220.tif 000014
【図１３】
2021508220.tif 000015
【国際調査報告】
2021508220.tif 000016
2021508220.tif 000017
2021508220.tif 000018
2021508220.tif 000019