IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ シェンチェン ティーシーエル ニュー テクノロジー カンパニー リミテッドの特許一覧

特表2024-529090ストリーミングメディアデータ伝送方法、装置および端末装置
<>
  • 特表-ストリーミングメディアデータ伝送方法、装置および端末装置 図1
  • 特表-ストリーミングメディアデータ伝送方法、装置および端末装置 図2
  • 特表-ストリーミングメディアデータ伝送方法、装置および端末装置 図3
  • 特表-ストリーミングメディアデータ伝送方法、装置および端末装置 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-08-01
(54)【発明の名称】ストリーミングメディアデータ伝送方法、装置および端末装置
(51)【国際特許分類】
   H04N 21/438 20110101AFI20240725BHJP
   H04N 21/442 20110101ALI20240725BHJP
【FI】
H04N21/438
H04N21/442
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024508028
(86)(22)【出願日】2021-08-10
(85)【翻訳文提出日】2024-02-21
(86)【国際出願番号】 CN2021111732
(87)【国際公開番号】W WO2023015436
(87)【国際公開日】2023-02-16
(81)【指定国・地域】
(71)【出願人】
【識別番号】523465850
【氏名又は名称】シェンチェン ティーシーエル ニュー テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】SHENZHEN TCL NEW TECHNOLOGY CO.,LTD.
(74)【代理人】
【識別番号】100118256
【弁理士】
【氏名又は名称】小野寺 隆
(74)【代理人】
【識別番号】100166338
【弁理士】
【氏名又は名称】関口 正夫
(72)【発明者】
【氏名】リン イージュン
(72)【発明者】
【氏名】リー ホンチアン
(72)【発明者】
【氏名】チャン リー
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164FA06
5C164UB21P
5C164UB38S
5C164UB41P
5C164YA21
(57)【要約】
本発明の実施例は、ストリーミングメディアデータ伝送方法、装置及び端末装置を提供する。ストリーミングメディアデータ伝送方法は、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、GOPパケットデータをバッファに送り込み、バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかを検出することと、前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータの送り込みを一時停止することと、リアルタイムでビデオを出力することと、を含む。エンコーダ器に進入するGOPパケットデータの数を合理的な範囲内に制御することにより、GOPパケットデータのデコードが不完全になることを回避する。
【選択図】図1
【特許請求の範囲】
【請求項1】
ストリーミングメディアデータ伝送方法であって、
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を含む、ことを特徴とするストリーミングメディアデータ伝送方法。
【請求項2】
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することの前に、
ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、
前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、をさらに含む、
ことを特徴とする請求項1に記載のストリーミングメディアデータ伝送方法。
【請求項3】
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することは、
隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することを含む、
ことを特徴とする請求項1に記載のストリーミングメディアデータ伝送方法。
【請求項4】
前記MMTPパケットデータが、前記キーフレーム位置情報の送信時間をさらに含み、
前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、
所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、をさらに含む、
ことを特徴とする請求項1に記載のストリーミングメディアデータ伝送方法。
【請求項5】
前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計することと、
前記理論的な時間間隔と前記実際の時間間隔とに対して、差分計算を行い、誤差値を取得することと、
前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、前記バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにすることと、をさらに含む、
ことを特徴とする請求項4に記載のストリーミングメディアデータ伝送方法。
【請求項6】
前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することは、
前記理論的な時間間隔が前記実際の時間間隔よりも大きい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔から、前記誤差値の絶対値を減算することと、
前記理論的な時間間隔が前記実際の時間間隔よりも小さい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔に、前記誤差値の絶対値を加算することと、を含む、
ことを特徴とする請求項5に記載のストリーミングメディアデータ伝送方法。
【請求項7】
ストリーミングメディア倍速再生命令を受信した場合、前記ストリーミングメディア倍速再生命令に基づいて再生倍速を決定することと、
前記再生倍速に基づいて、所定の再生規則に従ってビデオを出力することと、をさらに含む、
ことを特徴とする請求項1に記載のストリーミングメディアデータ伝送方法。
【請求項8】
前記再生規則が、次の方式に従って前記バッファに進入するGOPパケットデータを選択することを含み、
T1、Tn+1、T2n+1、・・・、Tmn+1であり、
ここで、T1が前記バッファの開始位置にあるGOPパケットデータであり、mが前記バッファ内に進入したGOPパケットデータの数の最大値であり、nが前記再生倍速である、
ことを特徴とする請求項7に記載のストリーミングメディアデータ伝送方法。
【請求項9】
ストリーミングメディアデータ伝送装置であって、
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信する受信モジュールと、
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含む解析モジュールと、
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出する算出モジュールと、
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出する検出モジュールと、
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止する判断モジュールと、
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力する出力モジュールと、を含む、
ことを特徴とするストリーミングメディアデータ伝送装置。
【請求項10】
ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、に用いられるトリガーモジュールをさらに含む、
ことを特徴とする請求項9に記載のストリーミングメディアデータ伝送装置。
【請求項11】
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することは、
隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することを含む、
ことを特徴とする請求項9に記載のストリーミングメディアデータ伝送装置。
【請求項12】
前記MMTPパケットデータが前記キーフレーム位置情報の送信時間をさらに含み、前記ストリーミングメディアデータ伝送装置は、
前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、に用いられる通知モジュールをさらに含む、
ことを特徴とする請求項9に記載のストリーミングメディアデータ伝送装置。
【請求項13】
前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計することと、前記理論的な時間間隔と前記実際の時間間隔とに対して、差分計算を行い、誤差値を取得することと、前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、前記バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにすることと、に用いられる補正モジュールをさらに含む、
ことを特徴とする請求項12に記載のストリーミングメディアデータ伝送装置。
【請求項14】
前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することは、
前記理論的な時間間隔が前記実際の時間間隔よりも大きい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔から、前記誤差値の絶対値を減算することと、
前記理論的な時間間隔が前記実際の時間間隔よりも小さい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔に、前記誤差値の絶対値を加算することと、を含む、
ことを特徴とする請求項13に記載のストリーミングメディアデータ伝送装置。
【請求項15】
ストリーミングメディア倍速再生命令を受信した場合、前記ストリーミングメディア倍速再生命令に基づいて再生倍速を決定することと、前記再生倍速に基づいて、所定の再生規則に従ってビデオを出力することと、に用いられる倍速再生モジュール、をさらに含む、
ことを特徴とする請求項9に記載のストリーミングメディアデータ伝送方法。
【請求項16】
前記再生規則が、次の方式に従って前記バッファに進入するGOPパケットデータを選択することを含み、
T1、Tn+1、T2n+1、・・・、Tmn+1であり、
ここで、T1が前記バッファの開始位置にあるGOPパケットデータであり、mが前記バッファ内に進入したGOPパケットデータの数の最大値であり、nが前記再生倍速である、
ことを特徴とする請求項15に記載のストリーミングメディアデータ伝送方法。
【請求項17】
端末装置であって、
プロセッサと、複数の命令を格納するメモリとを含み、前記プロセッサは、前記命令をロードして、
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を実行する、
ことを特徴とする端末装置。
【請求項18】
前記プロセッサは、前記命令をロードして、
ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、
前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、を実行する、
ことを特徴とする請求項17に記載の端末装置。
【請求項19】
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することは、
隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することを含む、
ことを特徴とする請求項17に記載の端末装置。
【請求項20】
前記MMTPパケットデータが、前記キーフレーム位置情報の送信時間をさらに含み、前記プロセッサは、前記命令をロードして、
前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、
所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、を実行する、
ことを特徴とする請求項17に記載のストリーミングメディアデータ伝送方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、データ伝送技術に関し、特にストリーミングメディアデータ伝送方法、装置、および端末装置に関する。
【背景技術】
【0002】
ストリーミングメディアデータは、デコード器によってデコードされた後、表示装置でビデオ画面情報を復元することができる。ストリーミングメディアデータは、デコード器に送り込み、デコード器にデコードされる前に、デマルチプレクサにキャッシュされ、デマルチプレクサによってデマルチプレクサのバッファ空間の余裕を検出し、バッファ空間の余裕が残った場合、デマルチプレクサにキャッシュされたストリーミングメディアデータをデマルチプレクサのバッファにプッシュしてデコードを待つ。
【0003】
しかし、デマルチプレクサはデコード器のバッファの空間状態を検出するだけでなく、キャッシュとストリーミングメディアデータのプッシュの機能をさらに実現する必要がある。一旦、デマルチプレクサまたはその他のベース設備に未知の問題が発生した場合、例えば、デマルチプレクサはキャッシュされたストリーミングメディアデータが溢れた場合に、多くのストリーミングメディアデータをデコード器のバッファにプッシュすることをトリガして、それにより、元のデコードが完了していないストリーミングメディアデータを上書きしてしまい、元のデコードが完了していないストリーミングメディアデータが廃棄されてしまい、最終的にビデオの正常な再生に影響を与えることになる。したがって、従来技術には欠陥があり、改善と発展が必要である。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の実施例は、エンコーダ器に進入するGOPパケットデータの数を合理的な範囲内に制御することにより、エンコーダ器が過負荷にならないようにし、GOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避するストリーミングメディアデータ伝送方法、装置及び端末装置を提供する。
【課題を解決するための手段】
【0005】
第1態様において、本開示の実施例は、ストリーミングメディアデータ伝送方法を提供し、前記ストリーミングメディアデータ伝送方法は、
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を含む。
【0006】
さらに、送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することの前に、前記ストリーミングメディアデータ伝送方法は、
ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、
前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、をさらに含む。
【0007】
さらに、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することは、
隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することを含む。
【0008】
さらに、前記MMTPパケットデータが、前記キーフレーム位置情報の送信時間をさらに含み、前記ストリーミングメディアデータ伝送方法は、
前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、
所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、をさらに含む。
【0009】
さらに、前記ストリーミングメディアデータ伝送方法は、
前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計することと、
前記理論的な時間間隔と前記実際の時間間隔とに対して、差分計算を行い、誤差値を取得することと、
前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、前記バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにすることと、をさらに含む。
【0010】
さらに、前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することは、
前記理論的な時間間隔が前記実際の時間間隔よりも大きい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔から、前記誤差値の絶対値を減算することと、
前記理論的な時間間隔が前記実際の時間間隔よりも小さい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔に、前記誤差値の絶対値を加算することと、を含む。
【0011】
さらに、前記ストリーミングメディアデータ伝送方法は、
ストリーミングメディア倍速再生命令を受信した場合、前記ストリーミングメディア倍速再生命令に基づいて再生倍速を決定することと、
前記再生倍速に基づいて、所定再生規則に従ってビデオを出力することと、をさらに含む。
【0012】
さらに、前記再生規則が、次の方式に従って前記バッファに進入するGOPパケットデータを選択することを含み、
T1、Tn+1、T2n+1、・・・、Tmn+1であり、
ここで、T1が前記バッファの開始位置にあるGOPパケットデータであり、mが前記バッファ内に進入したGOPパケットデータの数の最大値であり、nが前記再生倍速である。
【0013】
第2態様において、本開示の実施例は、ストリーミングメディアデータ伝送装置を提供し、前記ストリーミングメディアデータ伝送装置は、
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信する受信モジュールと、
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含む解析モジュールと、
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出する算出モジュールと、
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出する検出モジュールと、
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止する判断モジュールと、
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力する出力モジュールと、を含む。
【0014】
前記ストリーミングメディアデータ伝送装置は、ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、に用いられるトリガーモジュールをさらに含む。
【0015】
さらに、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することは、
隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することを含む。
【0016】
さらに、前記MMTPパケットデータが前記キーフレーム位置情報の送信時間をさらに含み、前記ストリーミングメディアデータ伝送装置は、前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、に用いられる通知モジュールをさらに含む。
【0017】
さらに、前記ストリーミングメディアデータ伝送装置は、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計することと、前記理論的な時間間隔と前記実際の時間間隔とに対して、差分計算を行い、誤差値を取得することと、前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、前記バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにすることと、に用いられる補正モジュールをさらに含む。
【0018】
さらに、前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することは、
前記理論的な時間間隔が前記実際の時間間隔よりも大きい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔から、前記誤差値の絶対値を減算することと、
前記理論的な時間間隔が前記実際の時間間隔よりも小さい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔に、前記誤差値の絶対値を加算することと、を含む。
【0019】
さらに、前記ストリーミングメディアデータ伝送装置は、ストリーミングメディア倍速再生命令を受信した場合、前記ストリーミングメディア倍速再生命令に基づいて再生倍速を決定することと、前記再生倍速に基づいて、所定再生規則に従ってビデオを出力することと、に用いられる倍速再生モジュール、をさらに含む。
【0020】
さらに、前記再生規則が、次の方式に従って前記バッファに進入するGOPパケットデータを選択することを含み、
T1、Tn+1、T2n+1、・・・、Tmn+1であり、
ここで、T1が前記バッファの開始位置にあるGOPパケットデータであり、mが前記バッファ内に進入したGOPパケットデータの数の最大値であり、nが前記再生倍速である。
【0021】
第3態様において、本発明の実施例は端末装置を提供し、前記端末装置が、プロセッサと、複数の命令を格納するメモリとを含み、前記プロセッサが、前記命令をロードすることで、前述したストリーミングメディアデータ伝送方法を実行する。具体的に、
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を実行する。
【0022】
さらに、前記プロセッサは、前記命令をロードして、
ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、
前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、を実行する。
【0023】
さらに、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することは、
隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することを含む。
【0024】
さらに、前記MMTPパケットデータが、前記キーフレーム位置情報の送信時間をさらに含み、前記プロセッサは、前記命令をロードして、
前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、
所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、をさらに実行する。
【発明の効果】
【0025】
本発明の実施例に提供されるストリーミングメディアデータ伝送方法は、送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を含む。本発明の実施例により、GOPパケットデータを順序よくエンコーダ器に送り込んでデコードされることができ、同時にエンコーダ器に進入するGOPパケットデータの数を合理的な範囲内に制御することができ、エンコーダ器が過負荷にならないようにし、エンコーダ器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる。
【図面の簡単な説明】
【0026】
図1】本発明の実施例に提供されるストリーミングメディアデータ伝送方法のフロー図である。
図2】本発明の実施例に提供されるストリーミングメディアデータ伝送方法の1つ具体的な表示方法の概略図である。
図3】本発明の実施例に提供されるストリーミングメディアデータ伝送装置の構成概略図である。
図4】本発明の実施例に提供される端末装置の構成概略図である。
【発明を実施するための形態】
【0027】
以下、本出願の実施例における添付図面と合わせて、本出願の実施例における技術方案について明確かつ完全に説明する。明らかに、説明された実施例は、本出願の一部の実施例にすぎず、全ての実施例ではない。本出願の実施例に基づいて、当業者が創造的な労働をしていないことを前提に獲得したその他のすべての実施例は、本出願の保護範囲に属する。
【0028】
本発明の実施例は、端末装置に適用可能なストリーミングメディアデータ伝送方法を提供する。前記端末装置は、テレビ、スマートフォン、タブレット等の機器であってもよく、本発明では、主にテレビに適用される。具体的には、本出願の実施例が提供するストリーミングメディアデータ伝送方法を利用して、GOPパケットデータを順序よくエンコーダ器に送り込んでデコードされることができ、同時にエンコーダ器に進入するGOPパケットデータの数を合理的な範囲内に制御することができ、エンコーダ器が過負荷にならないようにし、エンコーダ器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる。
【0029】
なお、MMTP(MPEG Media Transport Protocol、Motion Picture Experts Group Media Transport Protocol)は、多様なIPネットワーク環境上でマルチメディアサービスのために符号化されたメディアデータの配信技術を指定するデジタルコンテナ規格またはフォーマットである。配信されるエンコードされたメディアデータは、指定された時間に同期的にデコードしてデータを表示するための特定ユニットにおけるオーディオビジュアルメディアデータ、すなわちタイミングデータと、ユーザのサービスまたはインタラクションのコンテキストに基づいて任意の時間に復号化されて提示される他のタイプのデータ、すなわち非タイミングデータとを含む。MMTPを用いてビデオを再生する場合、ビデオデータをそれぞれMPU(Media Processing Unit)データにカプセル化し、ビデオ再生時にビデオのMPUをそれぞれ再生し、それらの同期を制御する。
【0030】
TLV(Type Length Value、ISDB S3カプセル化フォーマット)が、データ通信ネットワークにおいて、デバイス間の伝送と交換のメッセージの内容の多くは、TLVフォーマットで表示される。例えば、EPONシステムにおけるOAMメッセージなどである。TLVフォーマットデータは、type、length、valueという3つの部分から構成される。Tフィールドがメッセージのタイプを表し、Lフィールドがメッセージの長さを表し、Vフィールドがメッセージの内容を保持するために使用される。
【0031】
GOP( Group of Pictures )は、1組の連続的な画面を表し、GOPにおける画面の数が、1つのIフレーム(キーフレーム)の開始から次のIフレームの開始までのフレームの数、すなわち、2つの連続するIフレームの間のフレームの数である。
【0032】
図1-2を参照し、図1は、本発明の実施例に提供されるストリーミングメディアデータ伝送方法のフロー図である。端末装置に適用されるストリーミングメディアデータ伝送方法は、以下のステップを含んでもよい。
【0033】
ステップ101:送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信する。
【0034】
テレビのローカル記録によるテレビ番組のループ再生を例として、本方案を詳しく説明する。本実施例において、端末装置(すなわちテレビ)が、送信側(すなわちテレビ局)から送信されたTLVパケットデータを受信するようにトリガする調整は、ユーザが操作するための操作インタフェース(例えばタッチスクリーン、実体キー、または仮想キー)を端末装置に設定し、ユーザが操作インタフェース上でストリーミング記録指示を出したとき、ユーザがあるテレビ番組をリアルタイムに記録する必要があることを示す。端末装置は、ストリーミング記録指示に従って、記録すべきストリーミングメディアのカテゴリを決定し、ストリーミングメディアのカテゴリが含まれるストリーミング転送要求を送信側に出し、ストリーミング転送要求が送信側から応答された後、送信側から送信された複数のMMTPパケットデータが含まれるTLVパケットデータを受信する。ストリーミングメディアカテゴリとは、テレビ番組のチャンネル(例えばCCTV5)を指し、音声やビデオのみを記録することも可能である。
【0035】
ステップ102:前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含む。
【0036】
本実施例において、端末装置は、送信側から伝送されたTLVパケットデータを受信すると、TLVパケットデータを解析して、TLVパケットデータ中の伝送時間順に並べられた複数のMMTPパケットデータを取得する。
【0037】
ここで、各MMTPパケットデータには、GOPパケットデータおよびGOPパケットデータのキーフレーム位置情報が含まれる。GOPパケットデータは、連続する2つのIフレーム間の画面情報を格納するために用いられる。キーフレーム位置情報は、各GOPパケットデータを区別するために、各GOPパケットデータを標記する。また、キーフレーム位置情報を利用することにより、各GOPパケットデータに含まれるデータ量の大きさ、すなわち、連続する2つのIフレーム間の画面情報量を算出する。各GOPパケットデータに含まれるデータ量の大きさを計算し、GOPパケットデータのデータ量の大きさに応じて、デコード器バッファに進入するGOPパケット数を制御することによって、デコード器バッファに進入するGOPパケット数を合理的な範囲内に制御することができ、エンコーダ器が過負荷にならないようにし、エンコーダ器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる。
【0038】
ステップ103:前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出する。
【0039】
本実施例において、GOPパケットデータに含まれるデータ量の算出方式は、具体的には、
隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することを含む。
【0040】
ステップ104:ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出する。
【0041】
本実施例において、端末装置は、ユーザからのストリーミングメディア再生指示を受信すると、デマルチプレクサを用いてGOPパケットを伝送時間順に配列させ、デコード完了後に出力されたビデオを記録順に復元再生できるようにし、配列された複数のGOPパケットデータをデコード器のバッファに順次に送り込んでデコードを待つと同時に、バッファに入ったGOPパケットデータのデータ量の合計値がバッファの最大負荷閾値より大きいか否かをミドルウェアを用いてリアルタイムに検出し、それぞれの検出結果に応じて対応的な操作を実行する。
【0042】
ここで、バッファの最大負荷閾値は、バッファの最大容量の3分の2を例とし、デコード器の高速なデコード機能を保証すると同時に、バッファの有効容量の無駄を避けることができる。他の実施例において、バッファの最大負荷閾値は、ここでは限定されない別の値を選択してもよい。
【0043】
ここで、デマルチプレクサ(demux)は、リモート通信で信号を送信するために、複数のペイロードを搬送し、複数のストリームに分割するデバイスである。本技術案では、デマルチプレクサは、もはや伝統的な方案における、バッファに入ったGOPパケットデータのデータ量の合計値がバッファの最大負荷閾値より大きくなるかどうかを検出する必要がない。本技術案では、主にGOPパケットデータをデコード器のバッファ内にプッシュする役割を果たし、そしてプッシュ命令を受信した時にのみGOPパケットデータのプッシュを行う。伝統的な主動的なプッシュ方式から受動的なプッシュ方式に変換して、デマルチプレクサやその他のベースデバイスの不明な問題が発生することにより、例えば、デマルチプレクサがGOPパケットデータの溢れる場合にトリガされて、余分なGOPパケットデータをデコード器にプッシュすることにより、もとのデコードを完了していないデータが上書きされて、つまりもとのデコードを完了していないGOPパケットデータが廃棄されて、最終的にビデオの正常な再生に影響してしまうことを回避する。
【0044】
ステップ105:前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止する。
【0045】
本実施例において、バッファに入ったすべてのGOPパケットデータのデータ量の合計値が最大ベアラ閾値より大きいことを検出した場合、GOPパケットデータのバッファへの進入を一時停止し、データ量の合計値が最大ベアラ閾値を超えるGOPパケットデータの現在のバッファへの進入を阻止する。すなわち、データ量の合計値が最大ベアラ閾値より大きくなるGOPパケットデータの次バッファへの進入を待機させる。バッファに入ったすべてのGOPパケットデータのデータ量の合計値が、最大負荷閾値の以下になることを検出した場合、GOPパケットデータのバッファへの送り込みを許可し、これにより、バッファの有効な領域を最大限に活用する。なお、前述の検出動作は、GOPパケットデータがバッファに入る前に行われる。すなわち、各GOPパケットは、バッファに進入する前に、データ量の計算を行って、最大負荷閾値を超えない時に、GOPパケットがバッファに入ることを許可し、もしあるGOPパケットの進入により、バッファに入るすべてのGOPパケットデータのデータ量の合計値が最大負荷閾値より大きくなる時に、検出動作を一時停止して、バッファの過負荷をもたらしたGOPパケットデータを次バッファに移動させ、同時にそれ以前のGOPパケットデータをバッファ内に送り込んでデコードする。
【0046】
ビデオ表示時間のプログレスバーを計算するとき、従来技術には通常経験値に依存して1秒あたりの平均伝送データ量を制御して、コードレートの差別が大きいストリーミングメディアデータに対して、従来技術には、ビデオ表示記録時間や、再生時間のエラーが発生し、同時にPTS(Presentation Time Stamp、表示タイムスタンプ)のホップが大きくなるストリーミングメディアデータに対して、一定速度ではないプッシュの起因にして時間プログレスバーのホップが大きくなり、それにより、最終的に出力されたビデオ再生の異常が発生してしまう。
【0047】
本技術案を通じて、デコード器バッファに進入するGOPパケット数を合理的な範囲内に制御することで、エンコーダ器が過負荷にならないようにし、エンコーダ器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、同時にコードレートの差別が大きいストリーミングメディアデータによる問題を解决することができる。
【0048】
ステップ106:前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力する。
【0049】
本実施例において、バッファ内のGOPパケットデータのデコードが完了した時点で、対応するビデオを直ちに出力することで、デコードしながら再生を実現し、ビデオ再生の連続性を保証する。
【0050】
いくつかの実施例において、前記MMTPパケットデータが、前記キーフレーム位置情報の送信時間をさらに含み、前記ストリーミングメディアデータ伝送方法は、
前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、
所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、をさらに含む。
【0051】
本実施例において、キーフレーム位置情報、およびバッファに入るすべてのGOPパケットデータに含まれるデータ量の大きさによって、デマルチプレクサに対してデータを順序よく正確にプッシュし、メインスレッド全体が非同期のメッセージメカニズムを用いて制御され、必須でないときのCPU消費を低減し、タイミング性が要求される一部の機能インタフェース呼び出しのタイミングの正確性を保証する。バッファのスペースが限られているため、テレビで記録されるファイルは多くの場合、いくつかのGまたは数十Gのサイズに近いので、次のデータプッシュのタイミングをタイマーでメインスレッドに通知する必要がある。すなわち、バッファ内のすべてのGOPパケットデータのデコードが完了した後、次のバッチのGOPパケットデータをバッファに送り込むことをメインスレッドに通知する。
【0052】
具体的には、バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得し、所定のタイマーを用いて、理論的な時間間隔後にGOPパケットデータのバッファへの進入をオンにする。
【0053】
さらに、タイマーは、select、semaphore、およびuser timerを含む。百ミリ秒レベルでは、select、semaphore、およびuser timerの精度比較はselect>semaphore>user timerとなるが、いずれも誤差が小さいである。semaphoreとselectのタイミング方式はブロッキング方式なので、タイミング機能を完了するためにもう1つスレッドを追加する必要がある。スレッドリソースのオーバヘッドなどの問題を考慮して、最終的なタイマーとしてuser timerを優先的に使用する。
【0054】
いくつかの実施例において、前記ストリーミングメディアデータ伝送方法は、
前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計することと、
前記理論的な時間間隔と前記実際の時間間隔とに対して、差分計算を行い、誤差値を取得することと、
前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、前記バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにすることと、をさらに含む。
【0055】
本実施例において、タイマーで100%正確にすることができないため、理論的な時間間隔と実際の時間間隔との間に誤差が生じ、次のGOPパケットのデータのバッファへの進入をすぐにメインスレッドに通知することができず、ビデオ再生のスムーズさに影響を与えてしまう。
【0056】
したがって、バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計し、理論的な時間間隔と実際の時間間隔とに対して、差分計算を行い、誤差値を取得し、誤差値に基づいて、次にバッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにする。すなわち、ミドルウェア検出間隔時間もGOPを単位とする。
【0057】
具体的には、理論的な時間間隔が前記実際の時間間隔よりも大きい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔から、前記誤差値の絶対値を減算する。理論的な時間間隔が実際の時間間隔よりも小さい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔に、前記誤差値の絶対値を加算する。
【0058】
たとえば、理論的な時間間隔が10sで実際の時間間隔が15sであるとすると、ミドルウェアが次のバッファ検出を実行する時間間隔は5sになる。
【0059】
いくつかの実施例において、前記ストリーミングメディアデータ伝送方法は、
ストリーミングメディア倍速再生命令を受信した場合、前記ストリーミングメディア倍速再生命令に基づいて再生倍速を決定することと、
前記再生倍速に基づいて、所定再生規則に従ってビデオを出力することと、をさらに含む。
【0060】
本実施例において、所定再生規則に従ってビデオを倍速再生することができる。再生規則には、GOPパケットデータが以下の方式でバッファに進入し、以下の方式に該当しないGOPパケットデータが廃棄されることが含まれる。
【0061】
T1、Tn+1、T2n+1、・・・、Tmn+1であり、
ここで、T1が前記バッファの開始位置にあるGOPパケットデータであり、mが前記バッファ内に進入したGOPパケットデータの数の最大値であり、nが前記再生倍速である。
【0062】
上述したすべての任意の技術案は、任意の組み合わせを採用して本出願の任意の実施例を形成することができ、ここで説明しない。
【0063】
具体的に実施する場合には、本出願は記述された各ステップの実行順序の制限を受けず、衝突が生じない場合には、一部のステップは他の順序を採用して行うことができ、又は同時に行うことができる。
本発明の実施例に提供されるストリーミングメディアデータ伝送方法は、送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を含む。本発明の実施例により。
【0064】
本発明の実施例はストリーミングメディア伝送装置を提供し、前記ストリーミングメディア伝送装置が端末装置に内蔵してもよい。前記端末装置は、テレビ、スマートフォン、タブレット等の機器であってもよい。
【0065】
図3は本発明の実施例に提供されるストリーミングメディアデータ伝送装置の構成概略図である。ストリーミングメディアデータ伝送装置30は、
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信する受信モジュール31と、
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含む解析モジュール32と、
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出する算出モジュール33と、
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出する検出モジュール34と、
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止する判断モジュール35と、
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力する出力モジュール36と、を含む。
【0066】
いくつかの実施例において、前記ストリーミングメディアデータ伝送装置30は、ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、に用いられるトリガーモジュールをさらに含む。
【0067】
いくつかの実施例において、前記算出モジュール33は、隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することに用いられる。
【0068】
いくつかの実施例において、前記ストリーミングメディアデータ伝送装置30は、前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、に用いられる通知モジュールをさらに含む。
【0069】
いくつかの実施例において、前記ストリーミングメディアデータ伝送装置30は、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計することと、前記理論的な時間間隔と前記実際の時間間隔とに対して、差分計算を行い、誤差値を取得することと、前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、前記バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにすることと、に用いられる補正モジュールをさらに含む。
【0070】
いくつかの実施例において、前記補正モジュールは、前記理論的な時間間隔が前記実際の時間間隔よりも大きい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔から、前記誤差値の絶対値を減算することと、前記理論的な時間間隔が前記実際の時間間隔よりも小さい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔に、前記誤差値の絶対値を加算することと、に用いられる。
【0071】
いくつかの実施例において、前記ストリーミングメディアデータ伝送装置30は、ストリーミングメディア倍速再生命令を受信した場合、前記ストリーミングメディア倍速再生命令に基づいて再生倍速を決定することと、前記再生倍速に基づいて、所定再生規則に従ってビデオを出力することと、に用いられる倍速再生モジュール、をさらに含む。
【0072】
具体的に実施する場合、上記の各モジュールは独立した実体として実現することもできるし、任意に組み合わせて同一又は複数の実体として実現することもできる。
【0073】
本発明の実施例に提供されるストリーミングメディアデータ伝送装置30は、受信モジュール31によって、送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信し、解析モジュール32によって、前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含み、算出モジュール33によって、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出し、検出モジュール34によって、ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出し、判断モジュール35によって、前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止し、出力モジュール36によって、前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力する。本発明の実施例により、GOPパケットデータを順序よくエンコーダ器に送り込んでデコードされることができ、同時にエンコーダ器に進入するGOPパケットデータの数を合理的な範囲内に制御することができ、エンコーダ器が過負荷にならないようにし、エンコーダ器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる。
【0074】
図3は本発明の実施例に提供されるストリーミングメディアデータ伝送装置の構成概略図である。ストリーミングメディアデータ伝送装置30は、メモリ120と、1つ以上のプロセッサ180と、1つ以上のアプリケーションプログラムとを含む。ここで、1つ以上のアプリケーションプログラムは、メモリ120に格納され、プロセッサ180によって実行されるように構成されている。プロセッサ180は、受信モジュール31と、解析モジュール32と、算出モジュール33と、検出モジュール34と、判断モジュール35と、出力モジュール36とを含んでもよい。例えば、上記の各部品の構造と接続関係は以下のようになる。
【0075】
メモリ120は、アプリケーションおよびデータを記憶するために用いられる。メモリ120に記憶されたアプリケーションプログラムには、実行可能コードが含まれている。アプリケーションは様々な機能モジュールを構成してもよい。プロセッサ180は、メモリ120に記憶されたアプリケーションプログラムを実行することによって、様々な機能アプリケーションおよびデータ処理を実行する。また、メモリ120は、高速ランダムアクセスメモリを含んでもよく、少なくとも1つの磁気ディスク記憶装置、フラッシュメモリ装置を含んでもよく、または他の揮発性固体メモリ装置のような不揮発性メモリを含んでもよい。相応的に、メモリ120は、プロセッサ180によるメモリ120へのアクセスを提供するメモリコントローラをさらに含んでもよい。
【0076】
プロセッサ180は、装置の制御センターであり、様々なインタフェースと回線を利用して端末装置全体の各部を接続し、メモリ120内に格納されたアプリケーションプログラムを実行し、メモリ120内に格納されたデータを呼び出すことによって、装置の様々な機能を実行し、データを処理することで、装置の全体を監視する。選択的に、プロセッサ180は、1つ以上の処理コアを含んでもよい。好ましくは、プロセッサ180は、オペレーティングシステム、ユーザインタフェース、およびアプリケーションプログラムなどを主に処理するアプリケーションプロセッサおよび変復調プロセッサを統合してもよい。
【0077】
本実施例において、プロセッサ180は、以下の命令に従って、1つまたは複数のアプリケーションプログラムのプロセスに対応する実行可能コードをメモリ120にロードし、メモリ120に格納されたアプリケーションプログラムをプロセッサ180が実行することにより、様々な機能を実現する。
【0078】
受信モジュール31は、送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信する。解析モジュール32は、前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含む。算出モジュール33は、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出する。検出モジュール34は、ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出する。判断モジュール35は、前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止する。出力モジュール36は、前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力する。
【0079】
いくつかの実施例において、前記ストリーミングメディアデータ伝送装置30は、ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、に用いられるトリガーモジュールをさらに含む。
【0080】
いくつかの実施例において、前記算出モジュール33は、隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することに用いられる。
【0081】
いくつかの実施例において、前記ストリーミングメディアデータ伝送装置30は、前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、に用いられる通知モジュールをさらに含む。
【0082】
いくつかの実施例において、前記ストリーミングメディアデータ伝送装置30は、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計することと、前記理論的な時間間隔と前記実際の時間間隔とに対して、差分計算を行い、誤差値を取得することと、前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、前記バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにすることと、に用いられる補正モジュールをさらに含む。
【0083】
いくつかの実施例において、前記補正モジュールは、前記理論的な時間間隔が前記実際の時間間隔よりも大きい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔から、前記誤差値の絶対値を減算することと、前記理論的な時間間隔が前記実際の時間間隔よりも小さい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔に、前記誤差値の絶対値を加算することと、に用いられる。
【0084】
いくつかの実施例において、前記ストリーミングメディアデータ伝送装置30は、ストリーミングメディア倍速再生命令を受信した場合、前記ストリーミングメディア倍速再生命令に基づいて再生倍速を決定することと、前記再生倍速に基づいて、所定再生規則に従ってビデオを出力することと、に用いられる倍速再生モジュール、をさらに含む。
【0085】
本発明の実施例は端末装置をさらに提供する。前記端末装置は、テレビ、スマートフォン、タブレット等の機器であってもよい。
【0086】
図4は本発明の実施例に提供される端末装置の構成概略図である。前記端末装置は、実施例に提供されるストリーミングメディアデータ伝送方法を実施しても良い。前記端末装置1200は、テレビまたはスマートフォンまたはタブレットとしてもよい。
【0087】
図4に示すように、端末装置1200は、RF(Radio Frequency)回路110と、1つ以上(図には1つのみが示されている)のコンピュータ可読記憶媒体を含むメモリ120と、入力ユニット130と、表示ユニット140と、センサ150と、オーディオ回路160と、送信モジュール170と、1つ以上(図には1つのみが示されている)の処理コアを含むプロセッサ180と、電源190などの構成要素を含んでもよい。当業者であれば、図4に示された端末装置1200の構造は、端末装置1200の限定を構成するものではなく、図示よりも多くまたは少ない構成要素を含むことができ、またはいくつかの構成要素を組み合わせることができ、または異なる構成要素の配置を含むことができることを理解することができる。
【0088】
RF回路110は、電磁波を受信および送信するために用いられ、電磁波と電気信号との相互変換を実現し、通信ネットワークまたは他のデバイスと通信を行う。RF回路110は、アンテナ、無線周波数トランシーバ、デジタル信号プロセッサ、暗号化/復号化チップ、ユーザ識別モジュール(SIM)カード、メモリなど、これらの機能を実行するための様々な既存の回路要素を含んでもよい。RF回路110は、インターネット、企業イントラネット、無線ネットワーク、または無線ネットワークを介して他のデバイスなどの様々なネットワークと通信してもよい。
【0089】
メモリ120は、上述の実施例におけるストリーミングメディアデータ伝送方法に対応するプログラム命令/モジュールのようなソフトウェアプログラムおよびモジュールを格納するために使用されてもよい。プロセッサ180は、メモリ120内に格納されたソフトウェアプログラムおよびモジュールを実行することによって、様々な機能アプリケーションおよびデータ処理を実行する。端末装置が置かれている現在のシーンに応じて、ストリーミングメディアデータ伝送のために振動リマインダモードを自動的に選択してもよい。会議などのシーンが邪魔されないことを保証し、ユーザが着信を感知できることを保証し、端末装置のインテリジェンスを向上させる。メモリ120は、高速ランダムアクセスメモリを含んでもよく、さらに、1つまたは複数の磁気記憶装置、フラッシュメモリ、または他の不揮発性固体メモリのような不揮発性メモリを含んでもよい。いくつかの実施例において、メモリ120は、ネットワークを介して端末装置1200に接続されることができるプロセッサ180に対してリモートに配置されたメモリをさらに含んでもよい。上述のネットワークの例には、インターネット、企業イントラネット、ローカルエリアネットワーク、移動通信ネットワーク、およびこれらの組み合わせが含まれるが、これらに限定されない。
【0090】
入力ユニット130は、入力された数字または文字情報を受け取り、ユーザ設定および機能制御に関連するキーボード、マウス、操作レバー、光学式またはトラックボールの信号入力を生成するために使用されてもよい。具体的には、入力ユニット130は、接触感知性表面131および他の入力デバイス132を含んでもよい。タッチディスプレイまたはタッチパッドとも呼ばれる接触感知性表面131は、その上またはその近傍でのユーザのタッチ操作(例えば、指、スタイラスなどの任意の適切な物体またはアクセサリを使用して接触感知性表面131上またはその近傍でのユーザの操作)を収集し、所定プログラムに従って、対応する接続デバイスを駆動することができる。選択的に、接触感知性表面131は、タッチ検出デバイスおよびタッチコントローラとの2つの部分を含んでもよい。その中で、タッチ検出装置はユーザのタッチ方位を検出して、タッチ操作の信号を検出して、信号をタッチコントローラに送信する。タッチコントローラは、タッチ検出装置からタッチ情報を受信し、それを接点座標に変換してプロセッサ180に送り、プロセッサ180からのコマンドを受信して実行することができる。また、接触感応性表面131は、抵抗式、静電容量式、赤外線、弾性表面波等の複数のタイプを用いて実現することができる。入力ユニット130は、接触感応性表面131に加えて、他の入力デバイス132を含んでもよい。具体的には、他の入力デバイス132は、物理キーボード、ファンクションキー(例えば、ボリュームコントロールキー、スイッチキー等)、トラックボール、マウス、操作レバー等の1つ以上を含んでもよいが、これらに限定されるものではない。
【0091】
表示ユニット140は、ユーザによって入力された情報またはユーザに提供された情報または端末装置1200の様々なグラフィカルユーザインタフェースを表示するために使用してもよい。これらのグラフィカルユーザインタフェースは、グラフィック、テキスト、アイコン、ビデオ、およびそれらの任意の組み合わせによって構成され得る。表示ユニット140は、表示パネル141を含んでもよい。選択的に、表示パネル141は、LCD(Liquid Crystal Display)、OLED(Organic Light-Emitting Diode)などの形態で構成されてもよい。さらに、接触感知性表面131は、表示パネル141を覆ってもよい。接触感知性表面131がその上またはその近傍でのタッチ操作を検出した後、タッチイベントのタイプを決定するためにプロセッサ180に送信される。その後、プロセッサ180は、タッチイベントのタイプに応じて、表示パネル141上に対応する視覚出力を提供する。図4では、接触感知性表面131と表示パネル141とは、2つの独立した構成要素として入出力機能を実現しているが、ある実施例では、接触感知性表面131と表示パネル141とを一体化して入出力機能を実現してもよい。
【0092】
端末装置1200は、光センサ、モーションセンサ、および他のセンサのような少なくとも1つのセンサ150を含んでもよい。具体的には、光センサは、周囲光の明暗に応じて表示パネル141の明るさを調整することができる周囲光センサと、端末装置1200が耳元に移動したときに表示パネル141および/またはバックライトをオフすることができる近接センサとを含んでもよい。モーションセンサの一つとして、重力加速度センサは、全方向(一般的には3軸)の加速度の大きさを検出し、静止時の重力の大きさや方向を検出することができ、携帯電話の姿勢を認識するアプリケーション(縦横の画面切り替え、ゲーム関連、磁力計の姿勢校正)、振動認識関連機能(歩数計、ノックなど)などに利用できる。なお、端末装置1200には、ジャイロスコープ、気圧計、湿度計、温度計、赤外線センサ等の他のセンサも配置可能であるが、ここでは説明しない。
【0093】
オーディオ回路160、スピーカ161、マイクロホン162は、ユーザと端末装置1200との間のオーディオインターフェースを提供することができる。オーディオ回路160は、受信したオーディオデータを変換した電気信号をスピーカ161に伝送し、スピーカ161で音声信号に変換して出力することができる。一方、マイクロホン162は、収集された音声信号を電気信号に変換し、オーディオ回路160によって受信した後、オーディオデータに変換し、オーディオデータ出力プロセッサ180によって処理した後、RF回路110を介して、例えば別の端末装置に送信し、または、オーディオデータをメモリ120に出力する。オーディオ回路160は、周辺機器のヘッドホンと端末装置1200との通信を提供するための耳栓ジャックを含んでもよい。
【0094】
端末装置1200は、送信モジュール170(例えばWi-Fi(登録商標)モジュール)を介して、ユーザが電子メールを送受信し、ウェブページを閲覧し、ストリーミングメディアにアクセスするのを支援することができ、ユーザに無線によるブロードバンドインターネットアクセスを提供する。図4は送信モジュール170を示しているが、送信モジュール170は、端末装置1200の必須の構成に属さず、必要に応じて、出願の本質を変更しない範囲で省略されてもよいことを理解できる。
【0095】
プロセッサ180は、装置の制御センターであり、様々なインタフェースと回線を利用して端末装置全体の各部を接続し、メモリ120内に格納されたアプリケーションプログラムを実行し、メモリ120内に格納されたデータを呼び出すことによって、装置の様々な機能を実行し、データを処理することで、装置の全体を監視する。選択的に、プロセッサ180は、1つ以上の処理コアを含んでもよい。いくつかの実施例において、プロセッサ180は、アプリケーションプロセッサおよび変復調プロセッサを統合してもよい。ここで、アプリケーションプロセッサが、オペレーティングシステム、ユーザインタフェース、およびアプリケーションプログラムなどを主に処理する。変復調プロセッサが、無線通信を主に処理する。なお、上述の変復調プロセッサは、プロセッサ180に統合されていなくてもよい。
【0096】
端末装置1200は、様々な構成要素に電力を供給する電源190をさらに含む。いくつかの実施例において、電源は、電力管理システムを介してプロセッサ180に論理的に接続され、電力管理システムを介して放電の管理、および電力消費の管理のような機能を実現することができる。電源190はまた、1つ以上の直流または交流電源、電源障害検出回路、電源変換器またはインバータ、電源状態インジケータなどの任意の構成要素を含んでもよい。
【0097】
図示されていないが、端末装置1200は、カメラ(例えば、前面カメラ、背面カメラ)、ブルートゥース(登録商標)モジュールなどを含んでもよく、ここでは説明しない。具体的には、本実施例において、端末装置1200の表示部140はタッチスクリーンディスプレイである。端末装置1200は、メモリ120と、1つ以上のプログラムとをさらに備える。前記1つ以上のプログラムがメモリ120に記憶され、1つ以上のプロセッサ180によって1つ以上のプログラムを実行するように構成され、以下の動作を実行するための命令を含む。
【0098】
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信する。
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含む。
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出する。
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出する。
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止する。
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力する。
【0099】
いくつかの実施例において、前記プログラムは、ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、に用いられるトリガ命令をさらに含む。
【0100】
いくつかの実施例において、前記算出命令は、隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することに用いられる。
【0101】
いくつかの実施例において、前記プログラムは、前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、に用いられる通知命令をさらに含む。
【0102】
いくつかの実施例において、前記プログラムは、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計することと、前記理論的な時間間隔と前記実際の時間間隔とに対して、差分計算を行い、誤差値を取得することと、前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、前記バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにすることと、に用いられる補正命令をさらに含む。
【0103】
いくつかの実施例において、前記補正命令は、前記理論的な時間間隔が前記実際の時間間隔よりも大きい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔から、前記誤差値の絶対値を減算することと、前記理論的な時間間隔が前記実際の時間間隔よりも小さい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔に、前記誤差値の絶対値を加算することと、に用いられる。
【0104】
いくつかの実施例において、前記プログラムは、ストリーミングメディア倍速再生命令を受信した場合、前記ストリーミングメディア倍速再生命令に基づいて再生倍速を決定することと、前記再生倍速に基づいて、所定再生規則に従ってビデオを出力することと、に用いられる倍速再生命令、をさらに含む。
【0105】
本発明の実施例は端末装置をさらに提供する。前記端末装置は、テレビ、スマートフォン、タブレット等の機器であってもよい。
【0106】
本発明の実施例に提供される端末装置1200は、送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を実行する。本発明の実施例により、GOPパケットデータを順序よくエンコーダ器に送り込んでデコードされることができ、同時にエンコーダ器に進入するGOPパケットデータの数を合理的な範囲内に制御することができ、エンコーダ器が過負荷にならないようにし、エンコーダ器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる。
【0107】
本発明の実施例は記憶媒体を提供し、前記記憶媒体にコンピュータプログラムが格納され、コンピュータプログラムがコンピュータ上で実行されるときに、コンピュータが上記のいずれかの実施例で説明されたストリーミングメディアデータ伝送方法を実行する。
【0108】
なお、本明細書に記載されたストリーミングメディアデータ伝送方法について、当業者は、本明細書の実施例に記載されたストリーミングメディアデータ伝送方法を実施するためのフローの全部または一部が、関連するハードウェアを制御するコンピュータプログラムによって達成され得ることを理解することができ、コンピュータプログラムが、端末装置のメモリに記憶され、端末装置内の少なくとも1つのプロセッサによって実行され、実行中に、ストリーミングメディアデータ伝送方法の実施例フローを含む。ここで、前記記憶媒体は、磁気ディスク、光ディスク、読出し専用メモリ(ROM、Read Only Memory)、ランダムアクセスメモリ(RAM、Random Access Memory)などであってもよい。
【0109】
本発明の実施例に係るストリーミングメディアデータ伝送方法について、その各機能モジュールは、1つの処理チップ内に集積されていてもよいし、各モジュールは個別に物理的に存在していてもよいし、2つ以上のモジュールが1つのモジュール内に集積されていてもよい。上述の集積モジュールは、ハードウェアの形式で実現することも、ソフトウェア機能モジュールの形式で実現することもできる。統合されたモジュールは、ソフトウェア機能モジュールの形式で実現され、独立した製品として販売又は使用される場合、例えば読み取り専用メモリ、磁気ディスク又は光ディスク等のコンピュータ可読記憶媒体に記憶することもできる。
【0110】
以上、本発明の実施例に係るストリーミングメディアデータ伝送方法、装置、記憶媒体及び端末装置について詳細に説明した。本明細書では具体的な例を用いて本出願の原理及び実施例について述べたが、上記の実施例の説明は本出願の方法及びその核心思想の理解を助けるためにのみ用いられる。同時に、当業者については、本出願の考え方に基づいて、具体的な実施例及び応用範囲に変更点があることから、上述したように、本明細書の内容は本出願に対する制限と理解すべきではない。
図1
図2
図3
図4
【手続補正書】
【提出日】2024-02-21
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ストリーミングメディアデータ伝送方法であって、
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を含む、ことを特徴とするストリーミングメディアデータ伝送方法。
【請求項2】
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することの前に、
ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、
前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、をさらに含む、
ことを特徴とする請求項1に記載のストリーミングメディアデータ伝送方法。
【請求項3】
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することは、
隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することを含む、
ことを特徴とする請求項1に記載のストリーミングメディアデータ伝送方法。
【請求項4】
前記MMTPパケットデータが、前記キーフレーム位置情報の送信時間をさらに含み、
前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、
所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、をさらに含む、
ことを特徴とする請求項1に記載のストリーミングメディアデータ伝送方法。
【請求項5】
前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計することと、
前記理論的な時間間隔と前記実際の時間間隔とに対して、差分計算を行い、誤差値を取得することと、
前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、前記バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにすることと、をさらに含む、
ことを特徴とする請求項4に記載のストリーミングメディアデータ伝送方法。
【請求項6】
前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することは、
前記理論的な時間間隔が前記実際の時間間隔よりも大きい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔から、前記誤差値の絶対値を減算することと、
前記理論的な時間間隔が前記実際の時間間隔よりも小さい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔に、前記誤差値の絶対値を加算することと、を含む、
ことを特徴とする請求項5に記載のストリーミングメディアデータ伝送方法。
【請求項7】
ストリーミングメディア倍速再生命令を受信した場合、前記ストリーミングメディア倍速再生命令に基づいて再生倍速を決定することと、
前記再生倍速に基づいて、所定の再生規則に従ってビデオを出力することと、をさらに含む、
ことを特徴とする請求項1に記載のストリーミングメディアデータ伝送方法。
【請求項8】
前記再生規則が、次の方式に従って前記バッファに進入するGOPパケットデータを選択することを含み、
T1、Tn+1、T2n+1、・・・、Tmn+1であり、
ここで、T1が前記バッファの開始位置にあるGOPパケットデータであり、mが前記バッファ内に進入したGOPパケットデータの数の最大値であり、nが前記再生倍速である、
ことを特徴とする請求項7に記載のストリーミングメディアデータ伝送方法。
【請求項9】
ストリーミングメディアデータ伝送装置であって、
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信する受信モジュールと、
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含む解析モジュールと、
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出する算出モジュールと、
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出する検出モジュールと、
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止する判断モジュールと、
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力する出力モジュールと、を含む、
ことを特徴とするストリーミングメディアデータ伝送装置。
【請求項10】
ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、に用いられるトリガーモジュールをさらに含む、
ことを特徴とする請求項9に記載のストリーミングメディアデータ伝送装置。
【請求項11】
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することは、
隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することを含む、
ことを特徴とする請求項9に記載のストリーミングメディアデータ伝送装置。
【請求項12】
前記MMTPパケットデータが前記キーフレーム位置情報の送信時間をさらに含み、前記ストリーミングメディアデータ伝送装置は、
前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、に用いられる通知モジュールをさらに含む、
ことを特徴とする請求項9に記載のストリーミングメディアデータ伝送装置。
【請求項13】
前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な実際の時間間隔を統計することと、前記理論的な時間間隔と前記実際の時間間隔とに対して、差分計算を行い、誤差値を取得することと、前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することで、前記バッファに進入する前後2つのGOPパケットデータの理論的な時間間隔の和が実際の時間間隔の和に等しくなるようにすることと、に用いられる補正モジュールをさらに含む、
ことを特徴とする請求項12に記載のストリーミングメディアデータ伝送装置。
【請求項14】
前記誤差値に基づいて、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔を補正することは、
前記理論的な時間間隔が前記実際の時間間隔よりも大きい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔から、前記誤差値の絶対値を減算することと、
前記理論的な時間間隔が前記実際の時間間隔よりも小さい場合、次に前記バッファに進入するGOPパケットデータの理論的な時間間隔に、前記誤差値の絶対値を加算することと、を含む、
ことを特徴とする請求項13に記載のストリーミングメディアデータ伝送装置。
【請求項15】
ストリーミングメディア倍速再生命令を受信した場合、前記ストリーミングメディア倍速再生命令に基づいて再生倍速を決定することと、前記再生倍速に基づいて、所定の再生規則に従ってビデオを出力することと、に用いられる倍速再生モジュール、をさらに含む、
ことを特徴とする請求項9に記載のストリーミングメディアデータ伝送装置
【請求項16】
前記再生規則が、次の方式に従って前記バッファに進入するGOPパケットデータを選択することを含み、
T1、Tn+1、T2n+1、・・・、Tmn+1であり、
ここで、T1が前記バッファの開始位置にあるGOPパケットデータであり、mが前記バッファ内に進入したGOPパケットデータの数の最大値であり、nが前記再生倍速である、
ことを特徴とする請求項15に記載のストリーミングメディアデータ伝送装置
【請求項17】
端末装置であって、
プロセッサと、複数の命令を格納するメモリとを含み、前記プロセッサは、前記命令をロードして、
送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、
前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、
ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、
前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、
前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を実行する、
ことを特徴とする端末装置。
【請求項18】
前記プロセッサは、前記命令をロードして、
ストリーミング記録命令を受信した場合、前記ストリーミング記録命令に基づいて、記録すべきストリーミングメディアのカテゴリを決定することと、
前記送信側に、前記ストリーミングメディアのカテゴリが含まれるストリーミングメディア転送要求を送信することと、を実行する、
ことを特徴とする請求項17に記載の端末装置。
【請求項19】
前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することは、
隣接する2つの前記GOPパケットデータのキーフレーム位置情報に対して差分計算を行い、前記隣接する2つの前記GOPパケットデータのうちの前者に含まれるデータ量を取得することを含む、
ことを特徴とする請求項17に記載の端末装置。
【請求項20】
前記MMTPパケットデータが、前記キーフレーム位置情報の送信時間をさらに含み、前記プロセッサは、前記命令をロードして、
前記バッファ内の最初と最後の2つのGOPパケットデータのキーフレーム位置情報の送信時間に対して差分計算を行い、前記バッファ内のすべてのGOPパケットデータのデコードが完了するのに必要な理論的な時間間隔を取得することと、
所定のタイマーを用いて、前記理論的な時間間隔後に前記GOPパケットデータのバッファへの進入をオンにすることと、を実行する、
ことを特徴とする請求項17に記載の端末装置
【手続補正書】
【提出日】2024-02-26
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0004
【補正方法】変更
【補正の内容】
【0004】
本発明の実施例は、デコード器に進入するGOPパケットデータの数を合理的な範囲内に制御することにより、デコード器が過負荷にならないようにし、GOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避するストリーミングメディアデータ伝送方法、装置及び端末装置を提供する。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0025
【補正方法】変更
【補正の内容】
【0025】
本発明の実施例に提供されるストリーミングメディアデータ伝送方法は、送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を含む。本発明の実施例により、GOPパケットデータを順序よくデコード器に送り込んでデコードされることができ、同時にデコード器に進入するGOPパケットデータの数を合理的な範囲内に制御することができ、デコード器が過負荷にならないようにし、デコード器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0028
【補正方法】変更
【補正の内容】
【0028】
本発明の実施例は、端末装置に適用可能なストリーミングメディアデータ伝送方法を提供する。前記端末装置は、テレビ、スマートフォン、タブレット等の機器であってもよく、本発明では、主にテレビに適用される。具体的には、本出願の実施例が提供するストリーミングメディアデータ伝送方法を利用して、GOPパケットデータを順序よくデコード器に送り込んでデコードされることができ、同時にデコード器に進入するGOPパケットデータの数を合理的な範囲内に制御することができ、デコード器が過負荷にならないようにし、デコード器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0037
【補正方法】変更
【補正の内容】
【0037】
ここで、各MMTPパケットデータには、GOPパケットデータおよびGOPパケットデータのキーフレーム位置情報が含まれる。GOPパケットデータは、連続する2つのIフレーム間の画面情報を格納するために用いられる。キーフレーム位置情報は、各GOPパケットデータを区別するために、各GOPパケットデータを標記する。また、キーフレーム位置情報を利用することにより、各GOPパケットデータに含まれるデータ量の大きさ、すなわち、連続する2つのIフレーム間の画面情報量を算出する。各GOPパケットデータに含まれるデータ量の大きさを計算し、GOPパケットデータのデータ量の大きさに応じて、デコード器バッファに進入するGOPパケット数を制御することによって、デコード器バッファに進入するGOPパケット数を合理的な範囲内に制御することができ、デコード器が過負荷にならないようにし、デコード器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる。
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】0047
【補正方法】変更
【補正の内容】
【0047】
本技術案を通じて、デコード器バッファに進入するGOPパケット数を合理的な範囲内に制御することで、デコード器が過負荷にならないようにし、デコード器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、同時にコードレートの差別が大きいストリーミングメディアデータによる問題を解决することができる。
【手続補正6】
【補正対象書類名】明細書
【補正対象項目名】0063
【補正方法】変更
【補正の内容】
【0063】
具体的に実施する場合には、本出願は記述された各ステップの実行順序の制限を受けず、衝突が生じない場合には、一部のステップは他の順序を採用して行うことができ、又は同時に行うことができる。
本発明の実施例に提供されるストリーミングメディアデータ伝送方法は、送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を含む。本発明の実施例により、GOPパケットデータを順序よくデコード器に送り込んでデコードされることができ、同時にデコード器に進入するGOPパケットデータの数を合理的な範囲内に制御することができ、デコード器が過負荷にならないようにし、デコード器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる
【手続補正7】
【補正対象書類名】明細書
【補正対象項目名】0073
【補正方法】変更
【補正の内容】
【0073】
本発明の実施例に提供されるストリーミングメディアデータ伝送装置30は、受信モジュール31によって、送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信し、解析モジュール32によって、前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含み、算出モジュール33によって、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出し、検出モジュール34によって、ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出し、判断モジュール35によって、前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止し、出力モジュール36によって、前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力する。本発明の実施例により、GOPパケットデータを順序よくデコード器に送り込んでデコードされることができ、同時にデコード器に進入するGOPパケットデータの数を合理的な範囲内に制御することができ、デコード器が過負荷にならないようにし、デコード器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる。
【手続補正8】
【補正対象書類名】明細書
【補正対象項目名】0106
【補正方法】変更
【補正の内容】
【0106】
本発明の実施例に提供される端末装置1200は、送信側から転送され、複数のMMTPパケットデータが含まれるTLVパケットデータを受信することと、前記TLVパケットデータを解析して、前記TLVパケットデータ中の伝送時間順に配列された複数のMMTPパケットデータを取得し、前記複数のMMTPパケットデータが、いずれもGOPパケットデータ及び前記GOPパケットデータのキーフレーム位置情報を含むことと、前記キーフレーム位置情報に基づいて、各GOPパケットデータに含まれるデータ量をそれぞれ算出することと、ストリーミングメディア再生命令を受信すると、前記GOPパケットデータを伝送時間順に配列した後、デコード器のバッファに順次に送り込み、前記バッファに進入したGOPパケットデータのデータ量の合計値が前記バッファの最大負荷閾値より大きくなるかどうかをリアルタイムで検出することと、前記データ量の合計値が最大負荷閾値よりも大きい場合、GOPパケットデータのバッファへの送り込みを一時停止し、前記データ量の合計値が最大負荷閾値を超えることを招くGOPパケットデータの前記バッファへの進入を阻止することと、前記バッファ内のデコードされたGOPパケットデータに対応するビデオをリアルタイムで出力することと、を実行する。本発明の実施例により、GOPパケットデータを順序よくデコード器に送り込んでデコードされることができ、同時にデコード器に進入するGOPパケットデータの数を合理的な範囲内に制御することができ、デコード器が過負荷にならないようにし、デコード器の過負荷によるGOPパケットデータのデコードが不完全になったり、データが失われたりすることを回避し、最終的に出力されたビデオの再生が一時停止になったり、ビデオの一部が表示できなくなったりすることを回避することができる。
【国際調査報告】