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

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

▶ ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッドの特許一覧

特許7093829ビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体
<>
  • 特許-ビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体 図1
  • 特許-ビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体 図2
  • 特許-ビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体 図3
  • 特許-ビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体 図4
  • 特許-ビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体 図5
  • 特許-ビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体 図6
  • 特許-ビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-22
(45)【発行日】2022-06-30
(54)【発明の名称】ビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体
(51)【国際特許分類】
   H04N 19/40 20140101AFI20220623BHJP
   H04N 19/132 20140101ALI20220623BHJP
   H04N 19/136 20140101ALI20220623BHJP
   H04N 19/156 20140101ALI20220623BHJP
【FI】
H04N19/40
H04N19/132
H04N19/136
H04N19/156
【請求項の数】 23
(21)【出願番号】P 2020215647
(22)【出願日】2020-12-24
(65)【公開番号】P2022022953
(43)【公開日】2022-02-07
【審査請求日】2020-12-24
(31)【優先権主張番号】202010611335.2
(32)【優先日】2020-06-29
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】100096091
【弁理士】
【氏名又は名称】井上 誠一
(72)【発明者】
【氏名】▲けい▼ ▲懐飛▼
(72)【発明者】
【氏名】常 炎隆
【審査官】岩井 健二
(56)【参考文献】
【文献】特開2008-193661(JP,A)
【文献】特開2004-357002(JP,A)
【文献】米国特許出願公開第2019/0364290(US,A1)
【文献】米国特許出願公開第2018/0338146(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
ビデオトランスコーディング処理方法であって、
トランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性を取得するステップと、
前記入力属性及び前記目標属性に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップであって、前記セグメントトランスコーディング速度は、前記トランスコーディング対象ビデオがセグメント化された後の1つのビデオセグメントトランスコーディングする速度を指すステップと、
前記トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及び前記セグメントトランスコーディング速度を用いて、前記トランスコーディング対象ビデオのセグメント数を決定するステップと、
前記トランスコーディング対象ビデオの持続時間及び前記セグメント数に基づいて、前記トランスコーディング対象ビデオのセグメント化処理を行うステップと、
前記セグメントトランスコーディング速度を用いて、前記セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うステップと、を含む、
ことを特徴とするビデオトランスコーディング処理方法。
【請求項2】
前記入力属性は、解像度、ビットレート、エンコーダタイプ、及び予め設定された数のビデオフレームの複雑度の少なくとも1つを含み、前記複雑度は、時間複雑度と空間複雑度とを含み、
前記目標属性は、解像度、ビットレート、エンコーダタイプ、及びキーフレームの数の少なくとも1つを含む、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記入力属性及び前記目標属性に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップの前に、前記方法は、
コンテナインスタンスのリソース構成情報を取得するステップをさらに含み、
前記入力属性及び前記目標属性に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップは、
前記入力属性、前記目標属性及び前記リソース構成情報に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップを含む、
ことを特徴とする請求項1に記載の方法。
【請求項4】
前記セグメントトランスコーディング速度を用いて、前記セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うステップは、
前記コンテナインスタンスを呼び出して、前記セグメントトランスコーディング速度を用いて、前記セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うステップを含む、
ことを特徴とする請求項3に記載の方法。
【請求項5】
前記入力属性、前記目標属性及び前記リソース構成情報に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップの前に、前記方法は、
前記トランスコーディング対象ビデオのセグメントトランスコーディング速度の予め設定された速度グレードを取得するステップをさらに含み、
前記入力属性、前記目標属性及び前記リソース構成情報に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップは、
前記入力属性、前記目標属性、前記リソース構成情報及び前記予め設定された速度グレードに基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップを含む、
ことを特徴とする請求項3に記載の方法。
【請求項6】
前記入力属性及び前記目標属性に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップは、
予めトレーニングされたトランスコーディング速度予測モデルを用いて、前記入力属性及び前記目標属性に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップを含む、
ことを特徴とする請求項1に記載の方法。
【請求項7】
前記方法は、
サンプルビデオセグメントのトランスコーディング前のサンプル入力属性及びビデオトランスコーディング後のサンプル目標属性を取得するステップと、
前記サンプルビデオセグメントのトランスコーディング速度をマークするステップと、
前記サンプル入力属性、前記サンプル目標属性及びトランスコーディング速度のマーク結果を用いて、前記トランスコーディング速度予測モデルをトレーニングして取得するステップと、をさらに含む、
ことを特徴とする請求項6に記載の方法。
【請求項8】
前記トランスコーディング対象ビデオの持続時間及び前記セグメント数に基づいて、前記トランスコーディング対象ビデオのセグメント化処理を行うステップの前に、前記方法は、
前記トランスコーディング対象ビデオのオーディオ及び画像を分離して、トランスコーディング対象オーディオ及びトランスコーディング対象画像シーケンスを取得するステップをさらに含み、
前記トランスコーディング対象ビデオの持続時間及び前記セグメント数に基づいて、前記トランスコーディング対象ビデオのセグメント化処理を行うステップは、
前記トランスコーディング対象ビデオの持続時間及び前記セグメント数に基づいて、前記トランスコーディング対象画像シーケンスのセグメント化処理を行うステップを含み、
前記セグメントトランスコーディング速度を用いて、前記セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うステップは、
前記セグメントトランスコーディング速度を用いて、前記セグメント化処理によって得られた画像シーケンスセグメントのトランスコーディング処理を行うステップを含む、
ことを特徴とする請求項1に記載の方法。
【請求項9】
前記トランスコーディング対象ビデオのオーディオ及び画像を分離して、トランスコーディング対象オーディオ及びトランスコーディング対象画像シーケンスを取得するステップの後、前記方法は、
前記トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度を用いて、前記トランスコーディング対象オーデイオのトランスコーディング処理を行うステップをさらに含む、
ことを特徴とする請求項8に記載の方法。
【請求項10】
前記方法は、
前記画像シーケンスセグメントのタイムスタンプに沿って、前記トランスコーディング処理された画像シーケンスセグメントをマージして、目標画像シーケンスを取得するステップと、
前記目標画像シーケンスと前記トランスコーディング処理されたオーデイオとをマージして、目標ビデオを取得するステップと、をさらに含む、
ことを特徴とする請求項9に記載の方法。
【請求項11】
ビデオトランスコーディング処理装置であって、
トランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性を取得するように構成される属性取得モジュールと、
前記入力属性及び前記目標属性に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するように構成されるトランスコーディング速度決定モジュールであって、前記セグメントトランスコーディング速度は、前記トランスコーディング対象ビデオがセグメント化された後の1つのビデオセグメントトランスコーディングする速度を指すトランスコーディング速度決定モジュールと、
前記トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及び前記セグメントトランスコーディング速度を用いて、前記トランスコーディング対象ビデオのセグメント数を決定するように構成されるセグメント数決定モジュールと、
前記トランスコーディング対象ビデオの持続時間及び前記セグメント数に基づいて、前記トランスコーディング対象ビデオのセグメント化処理を行うように構成されるセグメント化処理モジュールと、
前記セグメントトランスコーディング速度を用いて、前記セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うように構成されるビデオトランスコーディング処理モジュールと、を含む、
ことを特徴とするビデオトランスコーディング処理装置。
【請求項12】
前記入力属性は、解像度、ビットレート、エンコーダタイプ、及び予め設定された数のビデオフレームの複雑度の少なくとも1つを含み、前記複雑度は、時間複雑度と空間複雑度とを含み、
前記目標属性は、解像度、ビットレート、エンコーダタイプ、及びキーフレームの数の少なくとも1つを含む、
ことを特徴とする請求項11に記載の装置。
【請求項13】
前記装置は、
コンテナインスタンスのリソース構成情報を取得するように構成されるリソース構成情報取得モジュールをさらに含み、
前記トランスコーディング速度決定モジュールは、具体的には、
前記入力属性、前記目標属性及び前記リソース構成情報に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するように構成される、
ことを特徴とする請求項11に記載の装置。
【請求項14】
前記ビデオトランスコーディング処理モジュールは、具体的には、
前記コンテナインスタンスを呼び出して、前記セグメントトランスコーディング速度を用いて、前記セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うように構成される、
ことを特徴とする請求項13に記載の装置。
【請求項15】
前記装置は、
前記トランスコーディング対象ビデオのセグメントトランスコーディング速度の予め設定された速度グレードを取得するように構成される予め設定された速度グレード取得モジュールをさらに含み、
前記トランスコーディング速度決定モジュールは、具体的には、
前記入力属性、前記目標属性、前記リソース構成情報及び前記予め設定された速度グレードに基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するように構成される、
ことを特徴とする請求項13に記載の装置。
【請求項16】
前記トランスコーディング速度決定モジュールは、具体的には、
予めトレーニングされたトランスコーディング速度予測モデルを用いて、前記入力属性及び前記目標属性に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するように構成される、
ことを特徴とする請求項11に記載の装置。
【請求項17】
前記装置は、
サンプルビデオセグメントのトランスコーディング前のサンプル入力属性及びビデオトランスコーディング後のサンプル目標属性を取得するように構成されるサンプル属性取得モジュールと、
前記サンプルビデオセグメントのトランスコーディング速度をマークするように構成される速度マークモジュールと、
前記サンプル入力属性、前記サンプル目標属性及び前記トランスコーディング速度のマーク結果を用いて、前記トランスコーディング速度予測モデルをトレーニングして取得するように構成されるモデルトレーニングモジュールと、をさらに含む、
ことを特徴とする請求項16に記載の装置。
【請求項18】
前記装置は、
前記セグメント化処理モジュールが前記トランスコーディング対象ビデオの持続時間及び前記セグメント数に基づいて、前記トランスコーディング対象ビデオのセグメント化処理を行うステップを実行する前に、前記トランスコーディング対象ビデオのオーディオ及び画像を分離して、トランスコーディング対象オーディオ及びトランスコーディング対象画像シーケンスを取得するように構成されるオーディオ及びビデオ分離モジュールをさらに含み、
前記セグメント化処理モジュールは、具体的には、
前記トランスコーディング対象ビデオの持続時間及び前記セグメント数に基づいて、前記トランスコーディング対象画像シーケンスのセグメント化処理を行うように構成され、
前記ビデオトランスコーディング処理モジュールは、具体的には、
前記セグメントトランスコーディング速度を用いて、前記セグメント化処理によって得られた画像シーケンスセグメントのトランスコーディング処理を行うように構成される、
ことを特徴とする請求項11に記載の装置。
【請求項19】
前記装置は、
前記トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度を用いて、前記トランスコーディング対象オーデイオのトランスコーディング処理を行うように構成されるオーデイオトランスコーディングモジュールをさらに含む、
ことを特徴とする請求項18に記載の装置。
【請求項20】
前記装置は、
前記画像シーケンスセグメントのタイムスタンプに沿って、前記トランスコーディング処理された画像シーケンスセグメントをマージして、目標画像シーケンスを取得するように構成される目標画像シーケンス取得モジュールと、
前記目標画像シーケンスと前記トランスコーディング処理されたオーデイオとをマージして、目標ビデオを取得するように構成される目標ビデオ決定モジュールと、をさらに含む、
ことを特徴とする請求項19に記載の装置。
【請求項21】
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信可能に接続されるメモリと、を含む電子機器であって、
前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶されており、前記命令が前記少なくとも1つのプロセッサによって実行される場合、前記少なくとも1つのプロセッサが請求項1~10のいずれかに記載のビデオトランスコーディング処理方法を実行可能である、
ことを特徴とする電子機器。
【請求項22】
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ命令は、コンピュータに請求項1~10のいずれかに記載のビデオトランスコーディング処理方法を実行させる、
ことを特徴とする非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項23】
コンピュータプログラムであって、
前記コンピュータプログラムが実行される場合、コンピュータに請求項1~10のいずれかに記載のビデオトランスコーディング処理方法を実行させる、
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、コンピュータ技術に関し、具体的には、クラウドコンピューティング、深層学習及びビデオ処理技術に関し、特に、ビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体に関する。
【背景技術】
【0002】
ビデオトランスコーディングは、ラジオテレビ、インターネットビデオ、ライブ放送などの分野で広く使用されており、ユーザにビデオライブ(Live)又はVOD(Video On Demand、ビデオオンデマンド)サービスを提供する。ビデオトランスコーディングは、主に1つのビデオエンコーディングフォーマットから別のエンコーディングフォーマット(目標エンコーディングフォーマットと呼ばれてもよい)に変換することを指す。ビデオトランスコーディング後、ビデオ送信中に送信される帯域幅が小さくなり、ユーザの配信コストが削減される。
【0003】
現在、トランスコーディングの速度を向上させるために、既存のビデオトランスコーディング案では、通常、固定長のセグメント化のポリシーを採用し、例えば、ビデオの持続時間に応じて各ビデオを均等にセグメント化し、次に各ビデオセグメントをトランスコーディングする。しかしながら、異なるビデオ間の違いを考慮すると、既存の固定長のセグメント化のポリシーを採用することによって、不合理なビデオセグメント化になりやすく、ビデオトランスコーディング効率の向上に影響を与える。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本出願の実施例は、ビデオトランスコーディング処理中におけるビデオセグメント化の合理性を向上させ、ビデオトランスコーディング効率の効果的な向上を確保することができるビデオトランスコーディング処理方法、ビデオトランスコーディング処理装置、電子機器及び記憶媒体を提供する。
【課題を解決するための手段】
【0005】
本出願の実施例の第1の態様によれば、ビデオトランスコーディング処理方法が提供され、前記ビデオトランスコーディング処理方法は、
トランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性を取得するステップと、
前記入力属性及び前記目標属性に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップであって、前記セグメントトランスコーディング速度は、前記トランスコーディング対象ビデオがセグメント化された後の1つのビデオセグメントのトランスコーディング速度を指すステップと、
前記トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及び前記セグメントトランスコーディング速度を用いて、前記トランスコーディング対象ビデオのセグメント数を決定するステップと、
前記トランスコーディング対象ビデオの持続時間及び前記セグメント数に基づいて、前記トランスコーディング対象ビデオのセグメント化処理を行うステップと、
前記セグメントトランスコーディング速度を用いて、前記セグメント化処理によって得たれたビデオセグメントのトランスコーディング処理を行うステップと、を含む。
【0006】
本出願の実施例の第2の態様によれば、ビデオトランスコーディング処理装置が提供され、前記ビデオトランスコーディング処理装置は、
トランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性を取得するように構成される属性取得モジュールと、
前記入力属性及び前記目標属性に基づいて、前記トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するように構成されるトランスコーディング速度決定モジュールであって、前記セグメントトランスコーディング速度は、前記トランスコーディング対象ビデオがセグメント化された後の1つのビデオセグメントのトランスコーディング速度を指すトランスコーディング速度決定モジュールと、
前記トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及び前記セグメントトランスコーディング速度を用いて、前記トランスコーディング対象ビデオのセグメント数を決定するように構成されるセグメント数決定モジュールと、
前記トランスコーディング対象ビデオの持続時間及び前記セグメント数に基づいて、前記トランスコーディング対象ビデオのセグメント化処理を行うように構成されるセグメント化処理モジュールと、
前記セグメントトランスコーディング速度を用いて、前記セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うように構成されるビデオトランスコーディング処理モジュールと、を含む。
【0007】
本出願の実施例の第3の態様によれば、電子機器が提供され、前記電子機器は、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信可能に接続されるメモリと、を含み、
前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶されており、前記命令が前記少なくとも1つのプロセッサによって実行される場合、前記少なくとも1つのプロセッサが本出願の実施例のいずれかに記載のビデオトランスコーディング処理方法を実行する。
【0008】
本出願の実施例の第4の態様によれば、コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体がさらに提供され、前記コンピュータ命令は、前記コンピュータに本出願の実施例のいずれかに記載のビデオトランスコーディング処理方法を実行させる。
本開示の第5の態様の実施例によれば、コンピュータプログラムがさらに提供され、前記コンピュータプログラムが実行される場合、前記コンピュータに本出願の実施例のいずれかに記載のビデオトランスコーディング処理方法を実行させる。
【発明の効果】
【0009】
本出願の実施例において、まずトランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定し、次にトランスコーディング対象ビデオの予め設定された目標トランスコーディング速度を組み合わせて、トランスコーディング対象ビデオのセグメント数を決定し、次にトランスコーディング対象ビデオをセグメント化してトランスコーディングタスクを実行することにより、ビデオトランスコーディング処理中におけるビデオセグメント化の合理性を向上させることができるとともに、ビデオ全体のトランスコーディング速度は予め設定可能であるため、ビデオトランスコーディング効率の効果的な向上を確保することができる。
【0010】
なお、発明の概要に記載された内容は、本出願の実施例の肝心又は重要な特徴を限定することを意図するものではなく、本出願の範囲を限定することを意図するものでもない。本出願の他の特徴は、以下の説明によって容易に理解されやすくなる。
【図面の簡単な説明】
【0011】
図面は、本技術案をよりよく理解するためのものであり、本出願を限定するものではない。
図1】本出願の実施例に係るビデオトランスコーディング処理のアーキテクチャの概略図である。
図2】本出願の実施例に係るビデオトランスコーディング処理方法のフローチャートである。
図3】本出願の実施例に係る別のビデオトランスコーディング処理方法のフローチャートである。
図4】本出願の実施例に係る別のビデオトランスコーディング処理方法のフローチャートである。
図5】本出願の実施例に係る別のビデオトランスコーディング処理方法のフローチャートである。
図6】本出願の実施例に係るビデオトランスコーディング処理装置の概略構成図である。
図7】本出願の実施例に係る電子機器のブロック図である。
【発明を実施するための形態】
【0012】
以下、図面を参照して本出願の例示的な実施例を説明し、理解を容易にするためにその中には本出願の実施例の様々な詳細事項を含んでおり、それらは単なる例示的なものと見なされるべきである。したがって、当業者は、本出願の範囲及び精神から逸脱することなく、ここで説明される実施例に対して様々な変更及び修正を行うことができることを認識されたい。同様に、明確及び簡潔するために、以下の説明では、周知の機能及び構成の説明を省略する。
【0013】
図1は、本出願の実施例に係るビデオトランスコーディング処理のアーキテクチャの概略図であり、本出願の実施例を例示的に説明するものである。図1に示すように、ビデオトランスコーディングの処理プロセスにおいて、タスクインターフェイス(例えば、Console/API)を介してビデオトランスコーディングタスクを継続的に取得して、トランスコーディングタスクキューに追加し、次に、タスクスケジューラを用いて、予め設定されたタスクスケジューリングポリシーに従って、トランスコーディングタスクキューから現在の処理対象トランスコーディングタスクを呼び出し、最後に、利用可能なコンピューティングリソースを呼び出してトランスコーディングタスクを実行することにより、タスクの処理効率を向上させることができる。ここで、予め設定されたタスクスケジューリングポリシーは、ビデオトランスコーディングタスクの予め設定された優先順位に従って、優先順位の高いトランスコーディングタスクを優先的に実行すること、又はトランスコーディングタスクの複雑度に従って、複雑度の低いランスコーディングタスクを優先的に実行することなどを含んでもよいが、これらに限定されない。図1に示すように、トランスコーディングタスクの複雑度は、エンコーディング複雑度予測器を用いて予測することができる。
【0014】
また、本出願の実施例において、ビデオトランスコーディングタスクを実行する前に、コンピューティング機器上のコンピューティングリソースを予め管理及び隔離して、複数のトランスコーディングインスタンスコンテナを形成することができ、これにより、各コンテナでビデオトランスコーディングタスクを個別に実行することができ、コンテナ間の相互影響がなく、ビデオトランスコーディングタスクの分散処理を実現し、ビデオトランスコーディング処理の効率を向上させることができる。図1に示すように、コンピューティング機器上の負荷が比較的アイドル状態の中央処理装置(CPU)クラスタ、グラフィックスプロセッサ(GPU)クラスタ及び利用可能なコンピューティングチップ(例えば、FPGAチップ)クラスタに応じて、複数のトランスコーディングインスタンスコンテナを隔離することができ、コンテナの数は、実際に利用可能なリソースに応じて設定することができ、図1に示すコンテナの数を本出願の実施例に対する具体的な限定として理解すべきではない。以下、各トランスコーディング対象ビデオをトランスコーディングする方法について、本出願の実施例において説明する。
【0015】
図2は、本出願の実施例に係るビデオのトランスコーディング処理方法のフローチャートであり、ビデオのトランスコーディング処理に適用することができ、具体的に、ビデオクラウドトランスコーディングに適用することができ、すなわちクラウドコンピューティングインフラストラクチャを用いてビデオトランスコーディングを行う。本出願の実施例に係る方法は、ビデオトランスコーディング処理装置によって実行可能であり、当該装置は、ソフトウェア及び/又はハードウェアで実現することができ、サーバなど、コンピューティング能力を有する任意の電子装置に集約することができる。
【0016】
図2に示すように、本出願の実施例に係るビデオトランスコーディング処理方法は、以下のステップS101~ステップS105を含むことができる。
S101において、トランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性を取得する。
【0017】
ここで、トランスコーディング対象ビデオの入力属性は、ビデオ自体の属性を指し、ビデオ分析技術を利用してトランスコーディング対象ビデオの属性分析を行うことによって決定することができる。例として、当該入力属性は、解像度、ビットレート、エンコーダ(Codec)タイプ、及び予め設定された数のビデオフレームの複雑度の少なくとも1つを含むことができ、複雑度は、時間複雑度と空間複雑度とを含む。エンコーダタイプは、トランスコーディング対象ビデオをエンコードするための、異なるエンコーディング標準に基づくエンコーダを含むことができ、例えば、H.264、H.265、VP9又はAV1などのエンコーディング標準である。時間複雑度は、ビデオシーケンスの時間変化量を特徴付けることに用いることができ、空間複雑度は、1フレームの画像のテクスチャの複雑度を特徴付けることに用いることができる。例として、時系列に沿ってトランスコーディング対象ビデオから予め設定された数のビデオフレームを均一に抽出することができ、既存案における時間複雑度及び空間複雑度の計算アルゴリズムを参照して、抽出されたビデオフレームの時間複雑度及び空間複雑度を算出して、トランスコーディング対象ビデオの入力属性とする。
【0018】
トランスコーディング対象ビデオがトランスコーディングされた後の目標属性は、又はトランスコーディングパラメータとも言い、トランスコーディング要求又はトランスコーディング後のビデオ品質に応じて予め設定することができる。当該目標属性は、解像度、ビットレート、エンコーダタイプ、及びキーフレームの数の少なくとも1つを含むことができ、ここで、キーフレームは、ビデオにおけるIフレーム、Pフレーム及びBフレームなどを含むことができ、Bフレームの数を目標属性とすることが好ましい。
【0019】
異なるビデオ属性は、ビデオトランスコーディングの処理速度にある程度影響する。したがって、本出願の実施例は、トランスコーディング対象ビデオの入力属性及びトランスコーディング後の目標属性をきめ細かく考慮することにより、トランスコーディング対象ビデオのセグメントトランスコーディング速度を正確に決定する後続のプロセスに比較的包括的な考慮要素を提供し、ビデオセグメント数の合理性を向上させるための基礎を築くようになる。
【0020】
S102において、入力属性及び目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定し、セグメントトランスコーディング速度は、トランスコーディング対象ビデオがセグメント化された後の1つのビデオセグメントのトランスコーディング速度を指す。
【0021】
具体的に、予め決定されたビデオの入力属性及び目標属性とセグメントトランスコーディング速度とのマッピング関係を用いて、現在のトランスコーディング対象ビデオのセグメントトランスコーディング速度を決定する。トランスコーディング速度は、トランスコーディング倍速と呼ばれてもよい。ビデオの入力属性及び目標属性とセグメントトランスコーディング速度とのマッピング関係は、セグメントトランスコーディング速度に対するビデオの入力属性及び目標属性の影響法則を示し、大量のサンプルビデオセグメントのトランスコーディング前の入力属性及びトランスコーディング後の目標属性とサンプルビデオセグメントのトランスコーディング速度との間の法則を統計的に分析することによって決定することができる。
【0022】
S103において、トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及びセグメントトランスコーディング速度を用いて、トランスコーディング対象ビデオのセグメント数を決定する。
【0023】
トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度は、トランスコーディング要求に応じて予め設定された速度値であり、トランスコーディング処理中におけるトランスコーディング対象ビデオ全体の処理速度を指す。目標トランスコーディング速度が予め設定することができ、すなわち、トランスコーディング要求に応じたトランスコーディング対象ビデオのトランスコーディング速度は制御可能である。ビデオのトランスコーディング速度は、ビデオ持続時間とビデオトランスコーディング処理時間との比であり、セグメントトランスコーディング速度は、ビデオセグメントの持続時間と当該ビデオセグメントのトランスコーディング処理時間との比である。分散ビデオトランスコーディング処理プロセスにおいて、ビデオトランスコーディング処理の効率を確保するために、各ビデオセグメントの処理時間を同じにする必要があり、当該時間は、通常、ビデオ全体のトランスコーディング処理時間であり、このようにすることで、1つのノードのトランスコーディング処理が遅くて他のノードがタスク待機状態になって、ビデオ全体のトランスコーディング処理時間が長くなるという現象は発生しない。したがって、トランスコーディング対象ビデオのセグメントトランスコーディング速度v1が決定された後、トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度v2を組み合わせて、二者の比を求めるにより、トランスコーディング対象ビデオのセグメント数xを算出することができ、すなわちx=v2/v1であり、xは任意の整数である。通常、ビデオセグメント数は多いほど、ビデオトランスコーディングの効率は高くなる。
【0024】
S104において、トランスコーディング対象ビデオの持続時間及びセグメント数に基づいて、トランスコーディング対象ビデオのセグメント化処理を行う。
【0025】
すなわち、トランスコーディング対象ビデオの持続時間及びセグメント数に基づいて、トランスコーディング対象ビデオを化し、各ビデオセグメントに対応する時間区間を決定し、すなわち、各ビデオセグメントのタイムスタンプを決定することができる。
【0026】
S105において、セグメントトランスコーディング速度を用いて、セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行う。
【0027】
各ビデオセグメントに対するトランスコーディング処理が完了した後、ビデオセグメントのタイムスタンプに沿って、トランスコーディングされた複数のビデオセグメントをマージして、トランスコーディングされた完全なビデオを取得することができ、次にビデオストレージ、ビデオ配信などの後続のビジネスサービスを実行することができる。
【0028】
本出願の実施例において、まずトランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定することにより、きめ細かい考慮要素を用いてビデオのセグメントトランスコーディング速度を正確に決定することを実現し、ビデオセグメント数を合理的に決定するための基礎を築くようになる。次に、トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及びセグメントトランスコーディング速度を用いて、トランスコーディング対象ビデオのセグメント数を決定し、トランスコーディング対象ビデオをセグメント化してトランスコーディングタスクを実行することにより、ビデオトランスコーディング処理プロセスにおけるビデオセグメント化の合理性を向上させ、既存のビデオトランスコーディング案におけるビデオセグメント化の不合理な現象を解決することができるとともに、本出願の実施例におけるビデオ全体の目標トランスコーディング速度が予め設定可能であるため、目標トランスコーディング速度に応じてビデオのセグメント数を決定することができ、ビデオトランスコーディング効率の効果的な向上を確保することができる。
【0029】
上記の技術案の基に、選択可能に、入力属性及び目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定する前に、本出願の実施例に係る方法は、コンテナインスタンスのリソース構成情報を取得するステップを含み、これに応じて、入力属性及び目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップは、入力属性、目標属性及びリソース構成情報に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップを含む。
【0030】
ここで、コンテナインスタンスは、本出願の実施例においてコンピューティング機器上のコンピューティングリソースを予め管理及び隔離することによって得られた、トランスコーディングタスクを実行するための独立したリソース空間を指す。コンテナインスタンスのリソース構成情報は、CPUの構成情報と、GPUの構成情報と、コンピューティングチップの構成情報と、を含むことができ、例として、例えば、CPUの型番、メイン周波数及びコア数、GPUの型番、メイン周波数及びコア数、及びコンピューティングチップの型番などである。
【0031】
具体的には、予め決定されたビデオの入力属性、目標属性、及びコンテナインスタンスのリソース構成情報とセグメントトランスコーディング速度とのマッピング関係を用いて、現在のトランスコーディング対象ビデオのセグメントトランスコーディング速度を決定することができる。この場合、当該マッピング関係は、セグメントトランスコーディング速度に対するビデオの入力属性、目標属性及びコンテナインスタンスのリソース構成情報の影響法則を示し、大量のサンプルビデオセグメントのトランスコーディング前の入力属性、トランスコーディング後の目標属性、及びトランスコーディングタスクを実行するプロセスにおけるコンテナインスタンスのリソース構成情報と、サンプルビデオセグメントのトランスコーディング速度との間の法則を統計的に分析することにより決定することができる。トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するプロセスにおいて、コンテナインスタンスのリソース構成情報を考慮することにより、トランスコーディングタスクを実行するプロセスにおいてコンテナリソースを最大限に活用することに役立ち、コンテナリソースの最大限な活用が実現される。
【0032】
さらに、セグメントトランスコーディング速度を用いて、セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うステップは、コンテナインスタンスを呼び出し、セグメントトランスコーディング速度を用いて、セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うステップを含む。複数のコンテナインスタンスを同時に呼び出すことによって、トランスコーディング対象ビデオの分散トランスコーディング処理を実現し、トランスコーディング処理の効率を向上させることができる。
【0033】
さらに、入力属性、目標属性及びリソース構成情報に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定する前に、本出願の実施例に係る方法は、トランスコーディング対象ビデオのセグメントトランスコーディング速度の予め設定された速度グレードを取得するステップを含み、これに応じて、入力属性、目標属性及びリソース構成情報に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップは、入力属性、目標属性、リソース構成情報及び予め設定された速度グレードに基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するステップを含む。
【0034】
ここで、予め設定された速度グレードは、予め設定されたビデオトランスコーディング速度の等級を指し、例えば、非常に遅い、比較的遅い、遅い、速い、比較的速い、非常に速いなどである。ビデオトランスコーディング速度とビデオトランスコーディング品質とは、ある程度負の相関関係となり、したがって、異なるトランスコーディング要求に応じて、トランスコーディング速度グレードを予め設定し、当該トランスコーディング速度グレードを満たすセグメントトランスコーディング速度を決定することができ、すなわち、本出願の実施例は異なるビジネスニーズを満たすことができる。
【0035】
具体的には、予め決定されたビデオの入力属性、目標属性、コンテナインスタンスのリソース構成情報及び予め設定された速度グレードと、セグメントトランスコーディング速度とのマッピング関係を用いて、現在のトランスコーディング対象ビデオのセグメントトランスコーディング速度を決定することができる。この場合、当該マッピング関係は、セグメントトランスコーディング速度に対するビデオの入力属性、目標属性、コンテナインスタンスのリソース構成情報及び予め設定された速度グレードの影響法則を示し、大量のサンプルビデオセグメントのトランスコーディング前の入力属性、トランスコーディング後の目標属性、トランスコーディングタスクを実行するプロセスにおけるコンテナインスタンスのリソース構成情報及びサンプルビデオセグメントのトランスコーディング速度に対応する速度グレードと、サンプルビデオセグメントのトランスコーディング速度との間の法則を統計的に分析することによって決定することができる。
【0036】
図3は、本出願の実施例に係る別のビデオトランスコーディング処理方法のフローチャートである。上記の実施形態に基づいてさらに最適化及び拡張し、上記の実施形態における各選択可能な実施形態と組み合わせることができる。図3に示すように、当該方法は、以下のステップS201~ステップS205を含むことができる。
S201において、トランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性を取得する。
【0037】
S202において、予めトレーニングされたトランスコーディング速度予測モデルを用いて、入力属性及び目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定し、セグメントトランスコーディング速度は、トランスコーディング対象ビデオがセグメント化された後の1つのビデオセグメントのトランスコーディング速度を指す。
【0038】
すなわち、本出願の実施例において、ビデオの入力属性及び目標属性と、セグメントトランスコーディング速度とのマッピング関係は、予めトレーニングされたモデルによって反映することができる。トランスコーディング速度予測モデルは、セグメントトランスコーディング予測機能を有する任意のモデルであってもよい。
【0039】
さらに、本出願の実施例に係る方法は、
サンプルビデオセグメントのトランスコーディング前のサンプル入力属性及びビデオトランスコーディング後のサンプル目標属性を取得するステップと、
サンプルビデオセグメントのトランスコーディング速度をマークするステップと、
サンプル入力属性、サンプル目標属性及びトランスコーディング速度のマーク結果を用いて、トランスコーディング速度予測モデルをトレーニングして取得するステップと、をさらに含むことができる。具体的には、トランスコーディング速度予測モデルは、サポートベクトルマシン(support vector machines、SVM)モデル、ランダムフォレスト(Random Forest、RF)モデル、又はブーストツリー拡張可能なマシン学習システム(eXtreme Gradient Boosting、XGBoost)などに基づいてトレーニングして取得することができる。
【0040】
S203において、トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及びセグメントトランスコーディング速度を用いて、トランスコーディング対象ビデオのセグメント数を決定する。
【0041】
S204において、トランスコーディング対象ビデオの持続時間及びセグメント数に基づいて、トランスコーディング対象ビデオのセグメント化処理を行う。
【0042】
S205において、セグメントトランスコーディング速度を用いて、セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行う。
【0043】
本出願の実施例において、トランスコーディング速度予測モデルを用いて、トランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定することにより、セグメントトランスコーディング速度決定の合理性及び精度を確保することができる。次に、トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及びセグメントトランスコーディング速度を用いて、トランスコーディング対象ビデオのセグメント数を決定することにより、ビデオトランスコーディング処プロセスにおけるビデオセグメント化の合理性を向上させ、既存のビデオトランスコーディング案におけるビデオセグメント化の不合理な現象を解決し、ビデオトランスコーディング効率の効果的な向上を確保することができる。
【0044】
上記の技術案の基に、コンテナインスタンスのリソース構成情報及び/又はトランスコーディング対象ビデオのセグメントトランスコーディング速度の予め設定された速度グレードの増加など、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するための考慮要素の増加に応じて、トランスコーディング速度予測モデルのトレーニングのプロセスにおいて、サンプルビデオセグメントのサンプル入力属性、サンプル目標属性及びトランスコーディング速度のマーク結果を考慮するほか、サンプルビデオセグメントトランスコーディング処理プロセスにおけるコンテナインスタンスのリソース構成情報及び/又はサンプルビデオセグメントのトランスコーディング速度に対応する速度グレードをモデルトレーニングの入力として、最終的なトランスコーディング速度予測モデルをトレーニングして取得することにより、モデルを用いてセグメントトランスコーディング速度を予測する精度を確保する。
【0045】
図4は、本出願の実施例に係る別のビデオトランスコーディング処理方法のフローチャートである。上記の実施形態に基づいてさらに最適化及び拡張し、上記の実施形態における各選択可能な技術案と組み合わせることができる。図4に示すように、本出願の実施例に係る方法は、予測段階とトレーニング段階との2つの段階を含み、具体的には、当該方法は、以下のステップS21~ステップS30を含むことができる。
S21において、トランスコーディング対象ビデオを入力する。
【0046】
S22において、ビデオ分析し、トランスコーディング対象ビデオの入力属性を抽出し、予め設定されたビデオトランスコーディング後の目標属性、リソース構成情報及びビデオセグメントの予め設定された速度グレードを取得する。
【0047】
図4に示すように、ステップS22からステップS27に入るができ、ビデオの入力属性及び目標属性を出力して、モデルトレーニング段階の入力データとすることができる。
【0048】
S23において、トランスコーディング速度予測モデルを用いて、ビデオセグメントのトランスコーディング速度を予測する。
【0049】
S24において、トランスコーディング対象ビデオのセグメント数を決定する。
【0050】
すなわち、トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及びセグメントトランスコーディング速度を用いて、トランスコーディング対象ビデオのセグメント数を決定する。
【0051】
S25において、分散トランスコーディングインスタンスを呼び出して、各セグメント化タスクを実行する。
【0052】
具体的には、ビデオセグメントの数に基づいて、同じ数のトランスコーディングインスタンスを呼び出して、各セグメント化タスクを同時に実行することができる。さらに、ステップS25はステップS28に入ることができ、各ビデオセグメントのトランスコーディング速度と、トランスコーディング速度グレードと、インスタンスコンテナのリソース構成情報とを出力して、同様にモデルトレーニング段階の入力データとする。ここで、トランスコーディングタスクの実行が完了した後にビデオセグメントのトランスコーディング速度グレード及びインスタンスコンテナのリソース構成情報を出力するよことは、トランスコーディングタスクの実行前に予め設定された値に従って出力することより、これらの情報取得の真正性を確保することができる。また、ステップS27及びS28で出力された各情報は、トランスコーディングタスククログを分析することによって具体的に決定することができる。
【0053】
S26において、トランスコーディングされたビデオセグメントをマージして、トランスコーディングされた目標ビデオを形成する。
【0054】
具体的には、ビデオセグメントのタイムスタンプに沿って、エンコーディングされたビデオセグメントをビデオ編集技術でマージする。
【0055】
S27において、ビデオの入力属性及び目標属性を出力する。
【0056】
S28において、各ビデオセグメントのトランスコーディング速度と、トランスコーディング速度グレードと、インスタンスコンテナのリソース構成情報とを出力する。
【0057】
S29において、サンプルビデオセグメントのトランスコーディング前のサンプル入力属性と、ビデオトランスコーディング後のサンプル目標属性と、インスタンスコンテナのリソース構成情報と、サンプルビデオセグメントのトランスコーディング速度グレードとをまとめて、トレーニングサンプルデータとする。
【0058】
S30において、予測モデルオンライン学習プラットフォームは、絶えず収束する特性に基づいてモデルを継続的に更新することができる。
【0059】
すなわち、本出願の実施例において、強化学習の方法を使用して、モデルトレーニングデータを継続的に拡張して、データサンプルをより現実的にし、モデルを継続的に更新及び反復して、モデルの精度を向上させる。新しいモデルの方が優れていることが確認されたら、新しいモデルをダウンロードして予測段階で使用し、現在のトランスコーディング対象ビデオのセグメントトランスコーディング速度を決定することができる。
【0060】
図5は、本出願の実施例に係る別のビデオトランスコーディング処理方法のフローチャートである。上記の実施形態に基づいてさらに最適化及び拡張し、上記の実施形態における各選択可能な技術案と組み合わせることができる。図5に示すように、当該方法は、以下のステップS301~ステップ309を含むことができる。
S301において、トランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性を取得する。
【0061】
例として、入力属性は、解像度、ビットレート、エンコーダタイプ、及び予め設定された数のビデオフレームの複雑度の少なくとも1つを含み、複雑度は、時間複雑度と空間複雑度とを含み、目標属性は、解像度、ビットレート、エンコーダタイプ、及びキーフレームの数の少なくとも1つを含む。
【0062】
S302において、入力属性及び目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定し、ここで、セグメントトランスコーディング速度は、トランスコーディング対象ビデオがセグメント化された後の1つのビデオセグメントのトランスコーディング速度を指す。
【0063】
S303において、トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及びセグメントトランスコーディング速度を用いて、トランスコーディング対象ビデオのセグメント数を決定する。
【0064】
S304において、トランスコーディング対象ビデオのオーディオ及び画像を分離して、トランスコーディング対象オーディオ及びトランスコーディング対象画像シーケンスを取得する。
【0065】
具体的には、利用可能な任意のオーディオ及びビデオ分離ツールによって、トランスコーディング対象ビデオからオーデイオを抽出して、トランスコーディング対象オーディオ及びトランスコーディング対象画像シーケンスをそれぞれ取得する。
【0066】
なお、ステップS304とステップS301~S303との実行順序を限定せず、図5に示される実行順序を本出願の実施例に対する具体的な限定として理解されるべきではない。すなわち、トランスコーディング対象ビデオのオーディオ及び画像を分離するステップは、トランスコーディング対象ビデオのセグメント化処理を行う前の任意の段階で実行することができ、画像シーケンスのみをセグメント化し、オーディオをセグメント化しないことを確保すればよい。
【0067】
S305において、トランスコーディング対象ビデオの持続時間及びセグメント数に基づいて、トランスコーディング対象画像シーケンスのセグメント化処理を行う。
【0068】
具体的には、トランスコーディング対象ビデオの持続時間及びセグメント数に基づいて、トランスコーディング対象画像シーケンスをセグメント化し、各画像シーケンスセグメントに対応する時間区間、すなわち各画像シーケンスのタイムスタンプを決定する。
【0069】
S306において、セグメントトランスコーディング速度を用いて、セグメント化処理によって得られた画像シーケンスセグメントのトランスコーディング処理を行う。
【0070】
S306の実行が完了した後、ステップS308に入り、トランスコーディングされた画像シーケンスセグメントをマージする。
【0071】
S307において、トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度を用いて、トランスコーディング対象オーデイオのトランスコーディング処理を行う。
【0072】
本出願の実施例において、ビデオのオーディオをセグメントトランスコーディングに参与させない理由は、オーディオがセグメントトランスコーディングによってACCフォーマットなどの特定のフォーマットに変換される場合、オーディオセグメントの境界にインパルスノイズが発生し、このノイズの存在は、特定のエンコーディング標準によるもので、オーディオ品質に影響する。したがって、本出願の実施例においてトランスコーディング対象ビデオの予め設定された目標トランスコーディング速度で完全なオーディオのトランスコーディング処理を行うことにより、トランスコーディング後のオーディオの品質を確保することができるだけでなく、画像シーケンスのトランスコーディング時間との一致性も確保することができる。
【0073】
S308において、画像シーケンスセグメントのタイムスタンプに沿って、トランスコーディング処理された画像シーケンスセグメントをマージして、目標画像シーケンスを取得する。
【0074】
S309において、目標画像シーケンスとトランスコーディング処理されたオーデイオをマージして、目標ビデオを取得する。
【0075】
具体的には、利用可能な任意のビデオ合成ツールによって、目標画像シーケンスとトランスコーディング処理されたオーデイオとをマージすることにより、トランスコーディング対象ビデオをトランスコーディングした完全なビデオを取得する。
【0076】
本出願の実施例の技術案によれば、まずトランスコーディング対象ビデオのオーディオ及びビデオを分離し、次にトランスコーディング対象画像シーケンスのセグメントトランスコーディング処理をそれぞれ行い、トランスコーディング対象オーデイオの全体としてのトランスコーディング処理を行い、最後にトランスコーディングされた画像シーケンスとオーデイオとをマージして、トランスコーディングされた完全なビデオを取得することにより、ビデオ内のオーディオのトランスコーディング品質を確保するだけでなく、ビデオトランスコーディング効率の向上も確保することができる。
【0077】
図6は、本出願の実施例に係るビデオトランスコーディング処理装置の概略構成図であり、本出願の実施例は、ビデオのトランスコーディング処理に適用することができ、具体的には、ビデオクラウドトランスコーディングに適用することができ、すなわち、クラウドコンピューティングインフラストラクチャを用いてビデオトランスコーディングを行う。本出願の実施例に係る装置は、ソフトウェア及び/又はハードウェアで実現することができ、サーバなど、コンピューティング能力を有する任意の電子装置に集約することができる。
【0078】
図6に示すように、本出願の実施例に係るビデオトランスコーディング処理装置400は、属性取得モジュール401と、トランスコーディング速度決定モジュール402と、セグメント数決定モジュール403と、セグメント化処理モジュール404と、ビデオトランスコーディング処理モジュール405と、を含むことができる。
属性取得モジュール401は、トランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性を取得するように構成さる。
トランスコーディング速度決定モジュール402は、入力属性及び目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するように構成され、セグメントトランスコーディング速度は、トランスコーディング対象ビデオがセグメント化された後の1つのビデオセグメントのトランスコーディング速度を指す。
セグメント数決定モジュール403は、トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度及びセグメントトランスコーディング速度を用いて、トランスコーディング対象ビデオのセグメント数を決定するように構成される。
セグメント化処理モジュール404は、トランスコーディング対象ビデオの持続時間及びセグメント数に基づいて、トランスコーディング対象ビデオのセグメント化処理を行うように構成される。
ビデオトランスコーディング処理モジュール405は、セグメントトランスコーディング速度を用いて、セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うように構成される。
【0079】
選択可能に、入力属性は、解像度、ビットレート、エンコーダタイプ、及び予め設定された数のビデオフレームの複雑度の少なくとも1つを含み、複雑度は、時間複雑度と空間複雑度とを含み、
目標属性は、解像度、ビットレート、エンコーダタイプ、及びキーフレームの数の少なくとも1つを含む。
【0080】
選択可能に、本出願の実施例に係る装置は、
コンテナインスタンスのリソース構成情報を取得するように構成されるリソース構成情報取得モジュールをさらに含み、
トランスコーディング速度決定モジュール402は、具体的には、
入力属性、目標属性及びリソース構成情報に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するように構成される。
【0081】
選択可能に、ビデオトランスコーディング処理モジュール405は、具体的には、
コンテナインスタンスを呼び出して、セグメントトランスコーディング速度を用いて、セグメント化処理によって得られたビデオセグメントのトランスコーディング処理を行うように構成される。
【0082】
選択可能に、本出願の実施例に係る装置は、
トランスコーディング対象ビデオのセグメントトランスコーディング速度の予め設定された速度グレードを取得するように構成される予め設定された速度グレード取得モジュールをさらに含み、
トランスコーディング速度決定モジュール402は、具体的には、
入力属性、目標属性、リソース構成情報及び予め設定された速度グレードに基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するように構成される。
【0083】
選択可能に、トランスコーディング速度決定モジュール402は、具体的には、
予めトレーニングされたトランスコーディング速度予測モデルを用いて、入力属性及び目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定するように構成される。
【0084】
選択可能に、本出願の実施例に係る装置は、
サンプルビデオセグメントのトランスコーディング前のサンプル入力属性及びビデオトランスコーディング後のサンプル目標属性を取得するように構成されるサンプル属性取得モジュールと、
サンプルビデオセグメントのトランスコーディング速度をマークするように構成される速度マークモジュールと、
サンプル入力属性、サンプル目標属性及びトランスコーディング速度のマーク結果を用いて、トランスコーディング速度予測モデルをトレーニングして取得するように構成されるモデルトレーニングモジュールと、をさらに含む。
【0085】
選択可能に、本出願の実施例に係る装置は、
セグメント化処理モジュール404がトランスコーディング対象ビデオの持続時間及びセグメント数に基づいて、トランスコーディング対象ビデオのセグメント化処理を行うステップを実行する前に、トランスコーディング対象ビデオのオーディオ及び画像を分離して、トランスコーディング対象オーディオ及びトランスコーディング対象画像シーケンスを取得するように構成されるオーディオ及び画像分離モジュールをさらに含む。
セグメント化処理モジュール404は、具体的には、
トランスコーディング対象ビデオの持続時間及びセグメント数に基づいて、トランスコーディング対象画像シーケンスのセグメント化処理を行うように構成される。
ビデオトランスコーディング処理モジュール405は、具体的には、
セグメントトランスコーディング速度を用いて、セグメント化処理によって得られた画像シーケンスセグメントのトランスコーディング処理を行うように構成される。
【0086】
選択可能に、本出願の実施例に係る装置は、
トランスコーディング対象ビデオの予め設定された目標トランスコーディング速度を用いて、トランスコーディング対象オーデイオのトランスコーディング処理を行うように構成されるオーデイオトランスコーディングモジュールをさらに含む。
【0087】
選択可能に、本出願の実施例に係る装置は、
画像シーケンスセグメントのタイムスタンプに沿って、トランスコーディング処理された画像シーケンスセグメントをマージして、目標画像シーケンスを取得するように構成される目標画像シーケンス取得モジュールと、
目標画像シーケンスとトランスコーディング処理されたオーデイオとをマージして、目標ビデオを取得するように構成される目標ビデオ決定モジュールと、をさらに含む。
【0088】
本願の実施例に係るビデオトランスコーディング処理装置400は、本願の実施例に係るビデオトランスコーディング処理方法のいずれかを実行することができ、実行方法に対応する機能モジュール及び有益な効果を備える。本実施例で詳細に説明されていない内容は、本願のいずれかの方法の実施例の説明を参照することができる。
【0089】
本出願の実施例によれば、本出願は、電子機器及び読み取り可能な記憶媒体をさらに提供する。
【0090】
図7に示すように、図7は、本出願の実施例のビデオトランスコーディング処理方法を実現するように構成される電子機器のブロック図である。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータなどの様々な形式のデジタルコンピュータを表すことを目的とする。電子機器は、パーソナルデジタル処理、携帯電話、スマートフォン、ウェアラブルデバイス、他の同様のコンピューティングデバイスなどの様々な形式のモバイルデバイスを表すこともできる。本明細書で示されるコンポーネント、それらの接続と関係、及びそれらの機能は単なる例であり、本明細書の説明及び/又は要求される本出願の実施例の実現を限定することを意図したものではない。
【0091】
図7に示すように、当該電子機器は、1つ又は複数のプロセッサ501と、メモリ502と、高速インターフェースと低速インターフェースを含む各コンポーネントを接続するためのインターフェースと、を含む。各コンポーネントは、異なるバスで相互に接続され、共通のマザーボードに取り付けられるか、又は必要に応じて他の形態で取り付けることができる。プロセッサは、外部入力/出力装置(インターフェースに結合されたディスプレイデバイスなど)にグラフィカルユーザインターフェース(Graphical User Interface、GUI)の図形情報をディスプレイするためにメモリに記憶されている命令を含む、電子機器内に実行される命令を処理することができる。他の実施形態では、必要であれば、複数のプロセッサ及び/又は複数のバスを、複数のメモリと複数のメモリとともに使用することができる。同様に、複数の電子機器を接続することができ、各機器は、例えば、サーバアレイ、ブレードサーバ、又はマルチプロセッサシステムなどの部分的な必要な操作を提供することができる。図7では、1つのプロセッサ501を例とする。
【0092】
メモリ502は、本出願の実施例により提供される非一時的なコンピュータ読み取り可能な記憶媒体である。前記メモリには、少なくとも1つのプロセッサによって実行可能な命令が記憶されており、前記少なくとも1つのプロセッサが本出願の実施例に係るビデオトランスコーディング処理方法を実行することができる。本出願の実施例の非一時的なコンピュータ読み取り可能な記憶媒体には、コンピュータが本出願の実施例に係るビデオトランスコーディング処理方法を実行するためのコンピュータ命令が記憶される。
【0093】
メモリ502は、非一時的なコンピュータ読み取り可能な記憶媒体として、本出願の実施例におけるビデオトランスコーディング処理方法に対応するプログラム命令/モジュール、非一時的なソフトウェアプログラム、非一時的なコンピュータ実行可能なプログラム及びモジュールを記憶するために用いられ、例えば、図6に示す属性取得モジュール401、トランスコーディング速度決定モジュール402、セグメント数決定モジュール403、セグメント化処理モジュール404及びビデオトランスコーディング処理モジュール405である。プロセッサ501は、メモリ502に記憶されている非一時的なソフトウェアプログラム、命令及びモジュールを実行することによって、サーバの様々な機能アプリケーション及びデータ処理を実行し、すなわち上記の方法の実施例におけるビデオトランスコーディング処理方法を実現する。
【0094】
メモリ502は、ストレージプログラム領域とストレージデータ領域とを含むことができ、その中、ストレージプログラム領域は、オペレーティングシステム、少なくとも1つの機能に必要なアプリケーションプログラムを記憶することができ、ストレージデータ領域は、ビデオトランスコーディング処理方法の電子機器の使用によって作成されたデータなどを記憶することができる。また、メモリ502は、高速ランダム存取メモリを含むことができ、非一時的なメモリをさらに含むことができ、例えば、少なくとも1つのディスクストレージデバイス、フラッシュメモリデバイス、又は他の非一時的なソリッドステートストレージデバイスである。いくつかの実施例では、メモリ502は、プロセッサ501に対して遠隔に設置されたメモリを含むことができ、これらの遠隔メモリは、ネットワークを介して本出願の実施例のビデオトランスコーディング処理方法を実現するように構成される電子機器に接続することができる。上記のネットワークの例としては、インターネット、イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク、及びその組み合わせを含むが、これらに限定されない。
【0095】
本出願の実施例のビデオトランスコーディング処理方法を実現するように構成される電子機器は、入力装置503と出力装置504とをさらに含むことができる。プロセッサ501、メモリ502、入力装置503、及び出力装置504は、バス又は他の方式を介して接続することができ、図7では、バスを介して接続することを例とする。
【0096】
入力装置503は、入力された数字又は文字情報を受信することができ、及び本出願の実施例のビデオトランスコーディング処理方法を実現するように構成される電子機器のユーザ設置及び機能制御に関するキー信号入力を生成することができ、例えば、タッチスクリーン、キーパッド、マウス、トラックパッド、タッチパッド、指示杆、1つ又は複数のマウスボタン、トラックボール、ジョイスティックなどの入力装置である。出力装置504は、ディスプレイデバイス、補助照明デバイス、及び触覚フィードバックデバイスなどを含むことができ、補助照明デバイスは、発光ダイオード(Liquid Crystal Display、LED)などであり、触覚フィードバックデバイスは、振動モータなどである。当該ディスプレイデバイスは、液晶ディスプレイ(Liquid Crystal Display、LCD)、LEDディスプレイ、及びプラズマディスプレイを含んでもよいが、これらに限定されない。いくつかの実施形態では、ディスプレイデバイスは、タッチスクリーンであってもよい。
【0097】
本明細書で説明されるシステムと技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、特定用途向け集積回路(Application Specific Integrated Circuit、ASIC)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせで実現することができる。これらの様々な実施形態は、1つ又は複数のコンピュータプログラムで実施されることを含むことができ、当該1つ又は複数のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサを含むプログラム可能なシステムで実行及び/又は解釈することができ、当該プログラマブルプロセッサは、特定用途向け又は汎用プログラマブルプロセッサであってもよく、ストレージシステム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及び命令を受信し、データ及び命令を当該ストレージシステム、当該少なくとも1つの入力装置、及び当該少なくとも1つの出力装置に伝送することができる。
【0098】
プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコーディングとも呼ばれるこれらのコンピューティングプログラムは、プログラマブルプロセッサの機械命令、高レベルのプロセス及び/又はオブジェクト指向プログラミング言語、及び/又はアセンブリ/機械言語でこれらのコンピューティングプログラムを実施することを含む。本明細書に使用されるように、用語「機械読み取り可能な媒体」及び「コンピュータ読み取り可能な媒体」は、機械命令及び/又はデータをプログラマブルプロセッサに提供するために使用される任意のコンピュータプログラム製品、機器、及び/又は装置、例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(Programmable Logic Device、PLD)を指し、機械読み取り可能な信号である機械命令を受信する機械読み取り可能な媒体を含む。用語「機械読み取り可能な信号」は、機械命令及び/又はデータをプログラマブルプロセッサに提供するための任意の信号を指す。
【0099】
ユーザとのインタラクションを提供するために、コンピュータ上でここで説明されているシステム及び技術を実施することができ、当該コンピュータは、陰極線管(Cathode Ray Tube、CRT)又はLCDモニタなどのユーザに情報を表示するためのディスプレイ装置と、マウス又はトラックボールなどのキーボード及びポインティングデバイスとを有し、ユーザは、当該キーボード及び当該ポインティングデバイスによって入力をコンピュータに提供することができる。他の種類の装置は、ユーザとのインタラクションを提供するために用いられることもでき、例えば、ユーザに提供されるフィードバックは、視覚フィードバック、聴覚フィードバック、又は触覚フィードバックなどの任意の形式のセンシングフィードバックであってもよく、音響入力と、音声入力と、触覚入力とを含む任意の形式でユーザからの入力を受信することができる。
【0100】
ここで説明されるシステム及び技術は、データサーバとするなどのバックエンドコンポーネントを含むコンピューティングシステムで実施することができ、又はアプリケーションサーバーなどのミドルウェアコンポーネントを含むコンピューティングシステムで実施することができ、又はフロントエンドコンポーネントを含むコンピューティングシステムで実施することができ、例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータであり、ユーザは、当該グラフィカルユーザインタフェース又は当該ウェブブラウザによってここで説明されるシステム及び技術の実施形態とインタラクションし、又はこのようなバックエンドコンポーネントと、ミドルウェアコンポーネントと、フロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムで実施することができる。通信ネットワークなどの任意の形式又は媒体のデジタルデータ通信によってシステムのコンポーネントを相互に接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク(Local Area Network、LAN)と、ワイドエリアネットワーク(Wide Area Network、WAN)と、インターネットとを含む。
【0101】
コンピュータシステムは、クライアントとサーバとを含むことができる。クライアントとサーバは、一般に、互いに離れており、通常に通信ネットワークを介してインタラクションする。対応するコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによってクライアントとサーバとの関係が生成される。
【0102】
本出願の実施例において、まずトランスコーディング対象ビデオの入力属性及びビデオトランスコーディング後の目標属性に基づいて、トランスコーディング対象ビデオのセグメントトランスコーディング速度を決定し、次にトランスコーディング対象ビデオの予め設定された目標トランスコーディング速度を組み合わせて、トランスコーディング対象ビデオのセグメント数を決定し、さらにトランスコーディング対象ビデオをセグメント化してトランスコーディングタスクを実行し、ビデオトランスコーディング処理プロセスにおけるビデオセグメント化の合理性を向上させることができるとともに、ビデオ全体のトランスコーディング速度が予め設定可能であるため、ビデオトランスコーディング効率の効果的な向上を確保することができる。
【0103】
上記に示される様々な形式のフローを使用して、ステップを並べ替え、追加、又は削除することができることを理解されたい。例えば、本出願に記載されている各ステップは、並列に実行されてもよいし、順次的に実行されてもよいし、異なる順序で実行されてもよいが、本出願で開示されている技術案が所望の結果を実現することができれば、本明細書では限定されない。
【0104】
上記の具体的な実施形態は、本出願に対する保護範囲の限定を構成するものではない。当業者は、設計要求と他の要因に応じて、様々な修正、組み合わせ、サブ組み合わせ、及び置換を行うことができる。本出願の精神及び原則内で行われる任意の修正、同等の置換、及び改良などは、いずれも本出願の保護範囲内に含まれなければならない。
図1
図2
図3
図4
図5
図6
図7