JP2023552923A - ビデオのトランスコード方法、装置、電子機器及び記憶媒体 - Google Patents

ビデオのトランスコード方法、装置、電子機器及び記憶媒体 Download PDF

Info

Publication number
JP2023552923A
JP2023552923A JP2023558930A JP2023558930A JP2023552923A JP 2023552923 A JP2023552923 A JP 2023552923A JP 2023558930 A JP2023558930 A JP 2023558930A JP 2023558930 A JP2023558930 A JP 2023558930A JP 2023552923 A JP2023552923 A JP 2023552923A
Authority
JP
Japan
Prior art keywords
macroblock
type
video
target
encoding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2023558930A
Other languages
English (en)
Inventor
キアン ワン,
シュジュン ツァン,
Original Assignee
ベイジン フィジュン テクノロジー カンパニー リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ベイジン フィジュン テクノロジー カンパニー リミテッド filed Critical ベイジン フィジュン テクノロジー カンパニー リミテッド
Publication of JP2023552923A publication Critical patent/JP2023552923A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本出願は、ビデオのトランスコード方法、装置、電子機器及び記憶媒体を提案し、この方法は、ソースビデオストリームを復号化して、第1のビデオフレームと復号化情報を取得し、第1のビデオフレームに透かし情報を挿入して、第2のビデオフレームを生成するステップと、透かし情報と復号化情報に基づいて、第2のビデオフレームにおけるマクロブロックのタイプを決定するステップと、各マクロブロックに対して、マクロブロックのタイプとレート歪み最適化(RDO)アルゴリズムに基づいて、マクロブロックの符号化のために必要な目標符号化パラメータを決定するステップと、各マクロブロックの目標符号化パラメータに基づいてマクロブロック符号化を行って、トランスコードされた目標ビデオストリームを生成するステップと、を含む。【選択図】図2

Description

関連出願の相互引用
本出願は、中国特許出願番号が「202110487567.6」であり、出願日が2021年4月30日である中国特許出願に基づいて提案され、当該中国特許出願の優先権を主張し、当該中国特許出願のすべての内容はここで参照として本出願に導入されている。
本出願は、画像処理技術の分野に関し、具体的にビデオのトランスコード方法、装置、電子機器及び記憶媒体に関する。
関連技術では、ソースビデオストリームに透かしを追加してトランスコードする場合、まずビデオを復号化し、その後にビデオフレームに透かしを追加し、最後に符号化する必要があり、このような汎用トランスコード方式は計算量が多く、実行時間が長く、ビデオ品質の損失が大きく、入出力のコードレートが一致しない。
本出願は、関連技術における技術的課題の少なくとも1つをある程度解決することを目的とする。
本出願の第1の態様の実施例は、ビデオのトランスコード方法を提案し、前記方法は、ソースビデオストリームを復号化して、第1のビデオフレームと復号化情報を取得し、第1のビデオフレームに透かし情報を挿入して、第2のビデオフレームを生成するステップと、透かし情報と復号化情報に基づいて、第2のビデオフレームにおけるマクロブロックのタイプを決定するステップと、各マクロブロックに対して、マクロブロックのタイプとレート歪み最適化(RDO)アルゴリズムに基づいて、マクロブロックの符号化のために必要な目標符号化パラメータを決定するステップと、各マクロブロックの目標符号化パラメータに基づいてマクロブロック符号化を行って、トランスコードされた目標ビデオストリームを生成するステップと、を含む。
本出願の第2の態様の実施例は、ビデオのトランスコード装置を提案し、前記装置は、ソースビデオストリームを復号化して、第1のビデオフレームと復号化情報を取得し、第1のビデオフレームに透かし情報を挿入して、第2のビデオフレームを生成するための復号化モジュールと、透かし情報と復号化情報に基づいて、第2のビデオフレームにおけるマクロブロックのタイプを決定するためのマクロブロックタイプ取得モジュールと、各マクロブロックに対して、マクロブロックのタイプとレート歪み最適化(RDO)アルゴリズムに基づいて、マクロブロックの符号化のために必要な目標符号化パラメータを決定するためのパラメータ取得モジュールと、各マクロブロックの目標符号化パラメータに基づいてマクロブロック符号化を行って、トランスコードされた目標ビデオストリームを生成するための符号化モジュールと、を備える。
本出願の第3の態様の実施例は、電子機器を提案し、少なくとも1つのプロセッサと、少なくとも1つのプロセッサと通信可能に接続されるメモリと、を備え、メモリには、少なくとも1つのプロセッサによって実行可能な命令が記憶され、命令は、少なくとも1つのプロセッサが本出願の第1の態様の実施例によって提供されるビデオのトランスコード方法を実行できるように、少なくとも1つのプロセッサによって実行される。
本出願の第4の様態の実施例は、コンピュータ命令が記憶されているコンピュータ読み取り可能な記憶媒体を提案し、コンピュータ命令は、コンピュータに本出願の第1の態様の実施例によって提供されるビデオのトランスコード方法を実行させる。
本出願の第5の態様の実施例は、コンピュータプログラムが含まれるコンピュータプログラム製品を提案し、コンピュータプログラムはプロセッサによって実行される場合、本出願の第1の様態の実施例によって提供されるビデオのトランスコード方法が実現される。
H.264の文法構成図である。 本出願の一実施例によるビデオのトランスコード方法のフローチャートである。 本出願の実施例によって提案されるマクロブロック分類の概略図である。 本出願の別の実施例によるビデオのトランスコード方法のフローチャートである。 本出願の別の実施例によるビデオのトランスコード方法のフローチャートである。 本出願の別の実施例によるビデオのトランスコード方法のフローチャートである。 本出願の別の実施例によるビデオのトランスコード方法のフローチャートである。 本出願の別の実施例によるビデオのトランスコード方法のフローチャートである。 本出願の一実施例によるビデオトランスコードの装置の構成ブロック図である。 本出願の一実施例による電子機器の概略構成図である。
以下、本出願の実施例について詳細に説明し、前記実施例の例は図面に示され、ここで、最初から最後まで同じまたは類似の符号は同じまたは類似の素子、または同じまたは類似の機能を有する素子を示す。以下、添付図面を参照して説明される実施例は例示的なものであり、本出願を説明するためだけであり、本出願に対する制限として理解されたくない。
H.264は、高度圧縮デジタルビデオ符号復号器規格であり、広く使用されているデジタルビデオ圧縮フォーマットである。H.264は主に、ベースラインプロファイル(baseline profile)、メインプロファイル(main profile)、高いプロファイル(high profile)及び拡張プロファイル(extended profile)という4つのプロファイル(profile)がある。各種類のprofileは異なる符号化ツールを使用する。例えば、baseline profileはコンテキスト適応型可変長符号化(Context Adaptive Variable Length Coding、CAVLC)及び内部符号化(intra、I)/前方予測(Predictive-coded、P)フレームのみをサポートし、high profileは、コンテキストベースの適応型バイナリ算術符号化(Context-based Adaptive Binary Arithmetic Coding、CABAC)と双方向予測(Bidirectionally-predicted、B)フレームとをサポートする。ライブビデオやオンデマンドではbaseline profile、main profile、high profileがよく使用される。
図1に示すように、H.264規格は、ネットワーク抽象化レイヤユニット(Network Abstract Layer Unit、NALU)でビデオデータをカプセル化し、NALUは、シーケンスパラメータセット(Sequence Paramater Set、SPS)または画像パラメータセット(picture parameter set、PPS)、瞬時符号化リフレッシュスライス(instantaneous decoding refresh slice、IDR slice)、スライス(slice)などのいくつかのタイプに分類することができる。SPS/PPSには主に、profile、解像度、参照フレーム数などの主要なビデオ符号化パラメータが記憶される。IDR slice/sliceは、実際のビデオ圧縮データを保存する。各sliceは多くのマクロブロックで構成され、マクロブロック情報は主に予測モード、ブロック化方式、及び残差を含む。
ビデオ符号化・復号化はフレーム内(intra)とフレーム間(inter)という2種類の予測方法をサポートし、マクロブロックは主にI/P/Bという3つのタイプに分けられ、フレームタイプは主にI/P/Bという3つのタイプに分けられる。したがって、Bフレームを有するビデオストリームの場合、ビデオフレームの符号化順序と表示順序は異なる。P/Bフレームの場合、符号化器は複数の参照フレームを用いてフレーム間予測を行い、同時に、長期参照フレームを使用してビデオ品質をさらに向上させる。H.264フレーム間予測は重み付け予測をサポートし、参照ブロックのピクセルの重みを選択することで動き補償の残差を減少させることができる。baseline/main profileは4x4整数変換を使用するが、high profileは4x4と8x8という2種類の変換をサポートする。以上の符号化ツールに加えて、復号化されたフレームを出力する前に、符号復号器は、またビデオ品質を向上させるために、デブロッキングフィルタリングを呼び出す。
汎用トランスコードはソースストリームに透かしを追加したトランスコードを実現し、各モジュールの計算複雑さは、符号化器が86%、復号化器が11%、符号化器のレート歪み最適化(Rate Distortion Optimation、RDO)関数が69%を占める。
理解を容易にするために、図1における用語を引き続き説明する:
1、ビデオ符号化レイヤ(Video Coding Layer、VCL)
2、ネットワーク抽出レイヤ(Network Abstraction Layer、NAL)
3、スライスレイヤ(Slice Layer)、スライスヘッダ(Slice Header)、スライスデータ(Slice Data)
4、マクロブロック(Macro Block、MB)
5、マクロブロックレイヤ(Macroblock Layer)、タイプ(Type)、予測モード(Prediction)、マクロブロックモード(Macro Block Pattern)、量子化値(Quantization Parameter、QP)、残差(Residual)
6、フレーム内予測(intra modes)、参照フレーム(Reference Frames)、動きベクトル(Motion vectors)
本出願は、ビデオのトランスコード方法、装置、電子機器及び記憶媒体を提案し、汎用トランスコード方案に存在する計算量が大きく、実行時間が長く、ビデオ品質の損失が大きく、入出力のコードレートが一致しないという課題を解決することができる。
以下、図面と併せて本出願の実施例によるビデオのトランスコード方法、装置、電子機器及び記憶媒体を説明する。
図2は、本出願の一実施例によるビデオのトランスコード方法のフローチャートである。図2に示すように、このビデオのトランスコード方法は以下のステップS201~S204を含む。
S201、ソースビデオストリームを復号化して、第1のビデオフレームと復号化情報を取得し、第1のビデオフレームに透かし情報を挿入して、第2のビデオフレームを生成する。
本出願の実施例では、ソースビデオストリームを取得して、ソースビデオストリームを復号化器に入力して、復号化器によってソースビデオストリームを復号化することにより、ソースビデオストリーム内の第1のビデオフレームを取得し、第1のビデオフレームの復号化情報を抽出することができる。
いくつかの実施例では、復号化情報は、スライスヘッダ情報、参照フレームの並び替え情報、参照画像シーケンスマーク、復号化器の参照フレームリスト、デブロッキングフィルタリング前の再構成ピクセル及びマクロブロック情報などを含む。いくつかの実施例では、マクロブロック情報は、予測モード、ブロック化方式、残差及び量子化パラメータなどを含む。
第1のビデオフレームに透かし情報を挿入して、第2のビデオフレームを生成し。一方、透かし情報は、ビデオフレームに対してプライバシー保護、著作権保護または字幕解釈の役割を果たすことができ、他方、透かし情報は、ビデオフレーム内の修正されたピクセルも識別し、修正されたピクセルを含むマクロブロックに注目するようにトランスコード装置に指示する。いくつかの実施例では、透かし情報は、著作権情報、プライバシー情報、字幕情報などであってもよい。
S202、透かし情報と復号化情報に基づいて、第2のビデオフレームにおけるマクロブロックのタイプを決定する。
ビデオフレームは、符号化の基本単位である複数のマクロブロックに分割することができ、いくつかの実施例では、マクロブロックのサイズは16×16である。
本出願の実施例では、透かし情報は、一部のマクロブロック内の1つまたは複数のピクセルを部分的にまたはすべて変更することができる。透かし情報領域は、ビデオフレームにおけるピクセルが修正された領域であり、透かし情報の座標に基づいて第2のビデオフレームにおける修正されたピクセルの位置を決定し、そして第2のビデオフレームにおける修正されたピクセルが含まれるマクロブロックを第1のタイプのマクロブロックとして決定することができる。すなわち、第1のタイプはマクロブロックが透かし情報に直接関連することを指示する。非第1のタイプのマクロブロックでは、マクロブロック復号化情報内の予測モードに基づいて、第1のタイプのマクロブロックとの依存関係を確認し、第1のタイプのマクロブロックと依存関係が存在するか否かに基づいてマクロブロックのタイプを確認する。本出願の実施例では、復号化情報が第1のタイプのマクロブロックに依存するいずれか1つのマクロブロックのタイプを、第2のタイプとして確認し、復号化情報が第1のタイプのマクロブロックに依存しないいずれか1つのマクロブロックのタイプを、第3のタイプとして確認し、すなわち、フレーム内予測やフレーム間予測を行うとき、第2のタイプのマクロブロックの復号化情報は第1のタイプのマクロブロックに依存し、第3のタイプのマクロブロックの復号化情報は第1のタイプのマクロブロックに依存しない。これで、第2のビデオフレーム内のすべてのマクロブロックのタイプが取得される。マクロブロックの分類は図3に示すとおり、ここで、logoは第1のタイプのマクロブロックを表し、qualityは第2のタイプのマクロブロックを表し、copyは第3のタイプのマクロブロックを表す。
マクロブロックのタイプを決定する目的は、マクロブロックのタイプに対して、マクロブロックのタイプとマッチングする目標符号化パラメータを選択的に取得することを容易にすることであり、これにより計算量を削減し、トランスコード速度を向上させる。
S203、各マクロブロックに対して、マクロブロックのタイプとレート歪み最適化(RDO)アルゴリズムに基づいて、マクロブロックの符号化のために必要な目標符号化パラメータを決定する。
マクロブロックの高速トランスコードを実現するために、本出願の実施例では、異なるマクロブロックのタイプに対して、異なる目標符号化パラメータが対応することができる。いくつかの実施例では、目標符号化パラメータは、予測モード、ブロック化方法、動きベクトル、整数変換サイズ、量子化パラメータ、及び残差などを含むことができる。
マクロブロックの参照符号化ピクセルはRDOアルゴリズムの入力とされ、マクロブロックに対して選択された参照符号化ピクセルが往々にしてマクロブロックに対応するRDOコスト値に影響を与える。本出願の実施例では、異なるタイプのマクロブロックに対して、異なる参照符号化ピクセルを選択し、参照符号化ピクセルが決定された後、マクロブロックの候補符号化パラメータをさらに取得することができ、ここで、候補符号化パラメータは復号化情報を含むことができる。マクロブロックの参照符号化ピクセルと復号化情報に対してRDOアルゴリズム処理を行い、すなわちマクロブロックの参照符号化ピクセルと復号化情報とをRDOアルゴリズムに入力すると、候補符号化パラメータ及びそれに対応するRDOコスト値を取得することができる。さらに、RDOコスト値が最も小さい候補符号化パラメータを選択して、マクロブロックの符号化のために必要な目標符号化パラメータとすることができる。本出願の実施例では、マクロブロックを符号化する中に、符号化器のネイティブRDOアルゴリズムを直接呼び出すことではなく、RDOアルゴリズムの論理を変更し、復号化情報を含む候補符号化パラメータに基づいてRDOコスト値を計算し、その中から最小のものを目標符号化パラメータとして選択することにより、符号化中の演算量を低減することができる。
S204、各マクロブロックの目標符号化パラメータに基づいてマクロブロック符号化を行って、トランスコードされた目標ビデオストリームを生成する。
いずれか1つのマクロブロックに対して、マクロブロックの目標符号化パラメータに基づいて、H.264ビデオ規格に従ってマクロブロックを符号化して、第2のビデオフレームに対応する目標符号化データを生成し、各フレームの目標符号化データに基づいて、目標ビデオストリームを生成する。
本出願の実施例によって提案されるビデオのトランスコード方法は、ソースビデオストリームを復号化して、第1のビデオフレームと復号化情報を取得し、第1のビデオフレームに透かし情報を挿入して、第2のビデオフレームを生成し、透かし情報と復号化情報に基づいて、第2のビデオフレームにおけるマクロブロックのタイプを決定し、各マクロブロックに対して、マクロブロックのタイプとレート歪み最適化(RDO)アルゴリズムに基づいて、マクロブロックの符号化のために必要な目標符号化パラメータを決定し、各マクロブロックの目標符号化パラメータに基づいてマクロブロック符号化を行って、トランスコードされた目標ビデオストリームを生成する。
この方法では、符号化中に復号化情報に基づいて符号化することができ、計算量を削減するだけでなく、追加される透かし情報のフレームタイプがソースビデオストリームと完全に一致することを保証し、画像品質にもほとんど損傷がなく、ビデオ品質が高い。
図4は、本出願の別の実施例によるビデオのトランスコード方法のフローチャートである。図4に示すように、上記の実施例に基づいて、ステップS203は、ステップS401~S403を含むことができる。
S401、マクロブロックのタイプに基づいて、マクロブロックの参照符号化ピクセルを決定する。
透かし情報を挿入する必要がないビデオトランスコードに対して、符号化器は単に復号化情報を使用して再符号化するだけであり、符号化側と復号化側のデブロッキングフィルタリング前のピクセルは同じである。本出願の実施例では、ビデオトランスコード中にソースビデオストリームに透かし情報を挿入する必要があり、効率的で高品質なトランスコードの目的を達成するために、符号化器はできるだけ復号化情報を使用する必要がある。
透かし情報で修正された領域に対して、ビデオトランスコードの精度を保証するために、その参照符号化ピクセルは、透かし情報で修正されたピクセルを直接使用する必要がある。第1のタイプのマクロブロックは透かし情報で修正された領域を含むが、非第1のタイプのマクロブロックは透かし情報で修正された領域を含まないため、両者の参照符号化ピクセルには違いがあり、マクロブロックのタイプに基づいて適切な参照符号化ピクセルを選択する必要がある。
S402、マクロブロックの復号化情報及び参照符号化ピクセルに対してRDOアルゴリズム処理を行って、マクロブロックの少なくとも1組の候補符号化パラメータ及び各組の候補符号化パラメータに対応するRDOコスト値を生成する。
いくつかの実装では、符号化器はマクロブロックの復号化情報及び参照符号化ピクセルを使用して符号化パラメータ及びそれに対応するRDOコスト値を生成し、いくつかの実装では、符号化器は、マクロブロック残差以外のマクロブロック復号化情報及び参照符号化ピクセルを使用して符号化パラメータ及びそれに対応するRDOコスト値を生成する。
実際の応用シーンを組み合わせて、ネイティブRDOアルゴリズムで符号化パラメータを取得する複雑さが高く、計算量が大きく、トランスコード速度が低いため、ビデオトランスコードの品質と速度を両立するために、マクロブロックに対して選択的に目標符号化パラメータを選択する必要がある。いくつかの実施例では、本出願の実施例では、マクロブロック復号化情報を使用して生成された符号化パラメータを1組の候補符号化パラメータとし、そのRDOコスト値を取得し、マクロブロック残差以外のマクロブロック復号化情報を使用して生成された符号化パラメータを別の組の候補符号化パラメータとし、そのRDOコスト値を取得し、候補符号化パラメータから目標符号化パラメータを選択する。
計算を簡素化するために、本出願の実施例では、RDOコスト値を比較し、候補符号化パラメータから目標符号化パラメータを確認し、RDOコスト値は最適な候補符号化パラメータをビデオトランスコードの目標符号化パラメータとして指示することができる。
S403、RDOコスト値に基づいて、少なくとも1組の候補符号化パラメータから、マクロブロックの符号化のために必要な目標符号化パラメータを決定する。
候補符号化パラメータのうち最小のRDOコスト値に対応する候補符号化パラメータを、マクロブロックの目標符号化パラメータとして選択する。
いくつかの実施例では、誤差を低減するために、本出願の実施例では閾値を予め設定することができ、最小のRDOコスト値が予め設定された閾値より大きい場合、符号化器のネイティブRDOアルゴリズムを呼び出して、マクロブロックのネイティブRDOコスト値とネイティブ符号化パラメータを取得し、最小のRDOコスト値とネイティブRDOコスト値を引き続き比較し、最小のRDOコスト値がネイティブRDOコスト値以下である場合、最小のRDOコスト値に対応する1組の候補符号化パラメータをマクロブロックの目標符号化パラメータとし、最小のRDOコスト値がネイティブRDOコスト値より大きい場合、ネイティブ符号化パラメータをマクロブロックの目標符号化パラメータとする。
図5は、本出願の別の実施例によるビデオのトランスコード方法のフローチャートである。図5に示すように、上記の実施例に基づいて、マクロブロックのタイプが第1のタイプである場合、マクロブロックの符号化過程は以下のステップS501~S503を含む。
S501、第2のビデオフレームにおけるマクロブロックに対してタイプ認識を行って、マクロブロックのタイプが第1のタイプであると決定する。
ステップS102を参照すると、第2のビデオフレームにおける修正されたピクセルが含まれるマクロブロックを第1のタイプのマクロブロックとして決定し、すなわち第1のタイプはマクロブロックが透かし情報に直接関連することを指示する。
S502、第1のタイプのマクロブロックにおけるピクセルが透かし情報で修正されていない第1の領域と修正された第2の領域を決定する。
実装ではビデオフレームに透かしを挿入し、透かしは一部のマクロブロックの1つまたは複数のピクセルのみを占める可能性があり、すなわち第1のタイプのマクロブロックには、透かし情報で修正された領域が含まれる可能性があり、透かし情報で修正されていない領域が含まれる可能性もあるため、第1のタイプのマクロブロックを領域分割して、その参照符号化ピクセルを確認する必要がある。本出願の実施例では、ピクセルが透かし情報で修正されていない領域を第1の領域とし、ピクセルが透かし情報で修正された領域を第2の領域とする。ここで、第2の領域の参照符号化ピクセルは符号化器によって現在入力されているピクセルであり、現在入力されているピクセルは透かし情報で修正されたピクセルである。
透かし情報で修正されてない第1の領域に対して、復号化器のデブロッキングフィルタリング前の再構成ピクセルを第1の領域の参照符号化ピクセルとすることができ、符号化の品質を向上させるだけでなく、復号化情報がトランスコードされるため、ビデオトランスコードの効率を保証することができる。
透かし情報で修正された第2の領域に対して、その参照符号化ピクセルは、透かし情報で修正されたピクセルを直接使用することにより、ビデオトランスコードの精度を保証する。
S503、符号化器のネイティブRDOアルゴリズムを呼び出し、第1のタイプのマクロブロックの参照符号化ピクセルに基づいて、第1のタイプのマクロブロックのネイティブ符号化パラメータを取得し、ネイティブ符号化パラメータを第1のタイプのマクロブロックの目標符号化パラメータとして決定する。
第1のタイプのマクロブロックに対して、ステップS502で取得された参照符号化ピクセルに基づいて、符号化器のネイティブRDOアルゴリズムを呼び出してマクロブロックのネイティブ符号化パラメータを取得し、ネイティブ符号化パラメータを第1のタイプのマクロブロックの目標符号化パラメータとして決定する。目標符号化パラメータに基づいてマクロブロック符号化を行って、第2のビデオフレームに対応する目標符号化データを生成し、さらにトランスコードされた目標ビデオストリームを生成する。
本出願の実施例によるビデオトランスコード方法は、計算量を削減するだけでなく、追加される透かし情報のフレームタイプがソースビデオストリームと完全に一致することを保証し、画像品質にもほとんど損傷がなく、ビデオ品質が高い。
図6は、本出願の別の実施例によるビデオのトランスコード方法のフローチャートである。図6に示すように、上記の実施例に基づいて、マクロブロックのタイプが第2のタイプである場合、マクロブロックの符号化過程は以下のステップS601~S608を含む。
S601、第2のビデオフレームにおけるマクロブロックに対してタイプ認識を行って、マクロブロックのタイプが第2のタイプであると決定し、復号化器のデブロッキングフィルタリング前の再構成ピクセルを、参照符号化ピクセルとする。
ここで、第2のタイプはマクロブロックと透かし情報を搬送するマクロブロックとの間に依存関係が存在することを指示する。
ステップS102を参照すると、第2のビデオフレームにおける修正されたピクセルが含まれない非第1のタイプに対して、予測モードにおけるマクロブロック復号化情報が第1のタイプのマクロブロックに依存するタイプを第2のタイプとして決定する。
復号化器のデブロッキングフィルタリング前の再構成ピクセルを非第1のタイプの参照符号化ピクセルとし、すなわち、第2のタイプのマクロブロックの参照符号化ピクセルはデブロッキングフィルタリング前の再構成ピクセルである。
S602、第2のタイプのマクロブロックの復号化情報及び参照符号化ピクセルに基づいて、第2のタイプのマクロブロックの少なくとも1組の候補符号化パラメータ及びそのRDOコスト値を生成する。
本出願の実施例では、マクロブロック復号化情報及び参照符号化ピクセルを使用して生成された符号化パラメータを1組の候補符号化パラメータとし、そのRDOコスト値を取得し、マクロブロック残差以外のマクロブロック復号化情報及び参照符号化ピクセルを使用して生成された符号化パラメータを別の組の候補符号化パラメータとし、そのRDOコスト値を取得する。
符号化器のネイティブRDOアルゴリズムは複雑さが高く、RDOアルゴリズムの呼び出し回数を減少させるために、本出願の実施例では、各組の候補符号化パラメータに対応するRDOコスト値を比較して、目標符号化パラメータを取得する。
S603、最小のRDOコスト値を決定し、最小のRDOコスト値が予め設定された閾値より大きいか否かを判断する。
RDOはアルゴリズムモジュールであり、レート歪み(Rate Distortion、RD)曲線によってビデオ符号化器の優劣を比較することができ、RD二次元グラフで1つの最適な点を選択し、この最適な点は1つのコスト値に対応する。コスト値は最適な符号化方法を選択するための値であり、コスト値が最も小さいことは、このコスト値に対応する符号化パラメータがマクロブロックの最適な符号化パラメータであることを示す。したがって、マクロブロックの最適な符号化パラメータを選択するために、本出願の実施例は先に最小のRDOコスト値と予め設定された閾値とを比較して、最小のRDOコスト値が予め設定された閾値より大きいか否かを判断する。
S604、最小のRDOコスト値が予め設定された閾値以下であることに応答して、最小のRDOコスト値に対応する1組の候補符号化パラメータを、第2のタイプのマクロブロックの目標符号化パラメータとして選択する。
最小のRDOコスト値が予め設定された閾値以下であることに応答した場合、現在の最小のRDOコスト値に対応する候補符号化パラメータが要求を満たすことを示し、最小のRDOコスト値に対応する1組の候補符号化パラメータを、第2のタイプのマクロブロックの符号化ときの目標符号化パラメータとすることができる。
S605、最小のRDOコスト値が予め設定された閾値より大きいことに応答して、符号化器のネイティブRDOアルゴリズムを呼び出して、第2のタイプのマクロブロックのネイティブRDOコスト値とネイティブ符号化パラメータを取得する。
最小のRDOコスト値が予め設定された閾値より大きいことに応答した場合、現在の最小のRDOコスト値に対応する候補符号化パラメータが最適な符号化パラメータではない可能性があることを示し、符号化器のネイティブRDOアルゴリズムを呼び出して、マクロブロックのネイティブRDOコスト値とネイティブ符号化パラメータを取得し、ネイティブRDOコスト値と現在の最小のRDOコスト値とを引き続き比較して、最小のRDOコスト値を更新する必要がある。
S606、最小のRDOコスト値がネイティブRDOコスト値より大きいか否かを判断する。
S607、最小のRDOコスト値がネイティブRDOコスト値以下である場合、最小のRDOコスト値に対応する1組の候補符号化パラメータを、マクロブロックの目標符号化パラメータとする。
最小のRDOコスト値がネイティブRDOコスト値以下である場合、最小のRDOコスト値に対応する1組の候補符号化パラメータを、マクロブロックの目標符号化パラメータとし、目標符号化パラメータに基づいてマクロブロック符号化を行って、第2のビデオフレームに対応する目標符号化データを生成し、さらにトランスコードされた目標ビデオストリームを生成する。
S608、最小のRDOコスト値がネイティブRDOコスト値より大きい場合、ネイティブ符号化パラメータをマクロブロックの目標符号化パラメータとする。
最小のRDOコスト値がネイティブRDOコスト値より大きい場合、ネイティブ符号化パラメータをマクロブロックの目標符号化パラメータとし、目標符号化パラメータに基づいてマクロブロック符号化を行って、第2のビデオフレームに対応する目標符号化データを生成し、さらにトランスコードされた目標ビデオストリームを生成する。
本出願の実施例によるビデオトランスコード方法は、計算量を削減するだけでなく、追加される透かし情報のフレームタイプがソースビデオストリームと完全に一致することを保証し、画像品質にもほとんど損傷がなく、ビデオ品質が高い。
図7は、本出願の別の実施例によるビデオのトランスコード方法のフローチャートである。図7に示すように、上記の実施例に基づいて、マクロブロックのタイプが第3のタイプである場合、マクロブロックの符号化過程は以下のステップS701~S703を含む。
S701、第2のビデオフレームにおけるマクロブロックに対してタイプ認識を行って、マクロブロックが第3のタイプのマクロブロックであると決定し、復号化器のデブロッキングフィルタリング前の再構成ピクセルを、参照符号化ピクセルとする。
ここで、第3のタイプのマクロブロックはマクロブロックと透かし情報を搬送するマクロブロックとの間に依存関係が存在しないことを指示する。
ステップS102を参照すると、第2のビデオフレームにおける修正されたピクセルが含まれない非第1のタイプに対して、予測モードにおけるマクロブロック復号化情報が第1のタイプのマクロブロックに依存しないタイプを第3のタイプとして決定する。
復号化器のデブロッキングフィルタリング前の再構成ピクセルを非第1のタイプの参照符号化ピクセルとし、すなわち、第3のタイプのマクロブロックの参照符号化ピクセルはデブロッキングフィルタリング前の再構成ピクセルである。
S702、第3のタイプのマクロブロックの復号化情報及び参照符号化ピクセルに基づいて、第3のタイプのマクロブロックの少なくとも1組の候補符号化パラメータ及びそのRDOコスト値を生成する。
ステップS701、ステップS702の具体的な説明について、上記の実施例の関連する内容の説明を参照することができ、ここで説明を省略する。
S703、最小のRDOコスト値に対応する1組の候補符号化パラメータを、第3のタイプのマクロブロックの目標符号化パラメータとして選択する。
最適な符号化パラメータを取得するために、RDOコスト値が最も小さい候補符号化パラメータを選択して、第3のタイプのマクロブロックのマクロブロックの符号化のために必要な目標符号化パラメータとして決定することができる。目標符号化パラメータにに基づいてマクロブロック符号化を行って、第2のビデオフレームに対応する目標符号化データを生成し、さらにトランスコードされた目標ビデオストリームを生成する。
本出願の実施例によるビデオトランスコード方法は、計算量を削減するだけでなく、追加される透かし情報のフレームタイプがソースビデオストリームと完全に一致することを保証し、画像品質にもほとんど損傷がなく、ビデオ品質が高い。
図8は、本出願の別の実施例によるビデオのトランスコード方法のフローチャートである。図8に示すように、上記の実施例に基づいて、ビデオのトランスコード方法は、ステップS801~S802をさらに含む。
S801、目標ビデオの符号化データとソースビデオの符号化データのサイズが一致しないことに応答して、マクロブロックのタイプに基づいて、マクロブロックの量子化値を調整するための優先順位を決定する。
目標ビデオの符号化データとソースビデオの符号化データのサイズが一致しないことに応答した場合、ビデオフレームのサイズを統一し、トランスコードの安定性を保証するために、量子化値を調整する必要がある。
ソースビデオストリームに透かし情報を挿入してビデオトランスコードを行う応用シーンでは、第1のタイプのマクロブロックと第2のタイプのマクロブロックの占める割合は小さく、マクロブロックの大部分は第3のタイプのマクロブロックであり、第3のタイプのマクロブロックのトランスコードが復号化情報に依存し、そのビデオ符号化データのサイズはほとんど変化しない。したがって、マクロブロックの量子化値を調整するための優先順位は、第1のタイプのマクロブロック、第2のタイプのマクロブロック、第3のタイプのマクロブロックである。すなわち、目標ビデオの符号化データとソースビデオの符号化データのサイズが一致しないことに応答した場合、まず第1のタイプのマクロブロックの量子化値を調整する。
S802、優先順位に従って、各タイプのマクロブロックの量子化値を順次に調整し、調整された量子化値に基づいてマクロブロックを量子化する。
目標ビデオの符号化データとソースビデオの符号化データのサイズが一致しないことに応答した場合、まず第1のタイプのマクロブロックの量子化値を調整し、調整された量子化値に基づいてマクロブロックを量子化し、調整された目標ビデオの符号化データがソースビデオの符号化データサイズと一致する場合、量子化調整が終了し、そうでなければ第2のタイプのマクロブロックの量子化値を調整し、2回目に調整された量子化値に基づいてマクロブロックを量子化し、調整された目標ビデオの符号化データがソースビデオの符号化データサイズと一致するか否かを引き続き判断し、一致する場合、量子化調整が終了し、そうでなければ、目標ビデオの符号化データがソースビデオの符号化データサイズと一致するまで、第3のタイプのマクロブロックの量子化値を引き続き調整し、3回目に調整された量子化値に基づいてマクロブロックを量子化する。
量子化は非可逆圧縮技術であり、ビデオフレームの品質に影響する。したがって、トランスコードされたビデオフレームの品質を保証するためには、量子化値の調整ごとに最低の品質要求を満たす必要がある。
本出願の実施例によるビデオトランスコード方法は、計算量を削減するだけでなく、追加される透かし情報のフレームタイプがソースビデオストリームと完全に一致することを保証し、画像品質にもほとんど損傷がなく、ビデオ品質が高い。
図9に示すように、本出願の実施例は、ビデオのトランスコード装置900をさらに提供し、前記装置は、ソースビデオストリームを復号化して、第1のビデオフレームと復号化情報を取得し、第1のビデオフレームに透かし情報を挿入して、第2のビデオフレームを生成するための復号化モジュール910と、透かし情報と復号化情報に基づいて、第2のビデオフレームにおけるマクロブロックのタイプを決定するためのマクロブロックタイプ取得モジュール920と、各マクロブロックに対して、マクロブロックのタイプとレート歪み最適化(RDO)アルゴリズムに基づいて、マクロブロックの符号化のために必要な目標符号化パラメータを決定するためのパラメータ取得モジュール930と、各マクロブロックの目標符号化パラメータに基づいてマクロブロック符号化を行って、トランスコードされた目標ビデオストリームを生成するための符号化モジュール940と、を備える。
さらに、本出願の実施例の可能な一実現形態では、パラメータ取得モジュール930は、
マクロブロックのタイプに基づいて、マクロブロックの参照符号化ピクセルを決定するための符号化ピクセル取得モジュール931と、マクロブロックの復号化情報及び参照符号化ピクセルに対してRDOアルゴリズム処理を行って、マクロブロックの少なくとも1組の候補符号化パラメータ及び各組の候補符号化パラメータに対応するRDOコスト値を生成するための予備パラメータ取得モジュール932と、RDOコスト値に基づいて、少なくとも1組の候補符号化パラメータから、マクロブロックの符号化のために必要な目標符号化パラメータを決定するための目標パラメータ取得モジュール933と、をさらに備える。
さらに、本出願の実施例の可能な一実現形態では、符号化ピクセル取得モジュール931は、さらに、非第1のタイプのマクロブロックに対して、復号化器のデブロッキングフィルタリング前の再構成ピクセルを、参照符号化ピクセルとし、第1のタイプのマクロブロックに対して、第1のタイプのマクロブロックにおけるピクセルが透かし情報で修正されていない第1の領域と修正された第2の領域を決定し、ここで、第1の領域の参照符号化ピクセルは復号化器のデブロッキングフィルタリング前の再構成ピクセルであり、第2の領域の参照符号化ピクセルは符号化器によって現在入力されているピクセルであり、現在入力されているピクセルは透かし情報で修正されたピクセルであり、ここで、第1のタイプのマクロブロックは透かし情報に関連することを指示する。
さらに、本出願の実施例の可能な一実現形態では、パラメータ取得モジュール930は、さらに、マクロブロックのタイプが非第1のタイプであることに応答して、最小のRDOコスト値に対応する1組の候補符号化パラメータを、マクロブロックの目標符号化パラメータとして選択する。
さらに、本出願の実施例の可能な一実現形態では、目標パラメータ取得モジュール933は、さらに、マクロブロックのタイプが第2のタイプであり、かつ最小のRDOコスト値が予め設定された閾値より大きいことに応答して、符号化器のネイティブRDOアルゴリズムを呼び出して、マクロブロックのネイティブRDOコスト値とネイティブ符号化パラメータを取得し、ここで、第2のタイプはマクロブロックと透かし情報を搬送するマクロブロックとの間に依存関係が存在することを指示し、最小のRDOコスト値がネイティブRDOコスト値以下である場合、最小のRDOコスト値に対応する1組の候補符号化パラメータを、マクロブロックの目標符号化パラメータとし、最小のRDOコスト値がネイティブRDOコスト値より大きい場合、ネイティブ符号化パラメータをマクロブロックの目標符号化パラメータとする。
さらに、本出願の実施例の可能な一実現形態では、目標パラメータ取得モジュール933は、さらに、マクロブロックのタイプが第1のタイプであることに応答して、符号化器のネイティブRDOアルゴリズムを呼び出して、マクロブロックのネイティブ符号化パラメータを生成し、ネイティブ符号化パラメータをマクロブロックの目標符号化パラメータとして決定する。
さらに、本出願の実施例の可能な一実現形態では、符号化モジュール940は、さらに、マクロブロックの目標符号化パラメータに基づいて、マクロブロックに対してマクロブロック符号化を行って、第2のビデオフレームに対応する目標符号化データを生成し、各フレームの目標符号化データに基づいて、目標ビデオストリームを生成する。
さらに、本出願の実施例の可能な一実現形態では、マクロブロックタイプ取得モジュール920は、さらに、第2のビデオフレームに透かし情報が挿入された場合に修正されたピクセルを取得し、修正されたピクセルを含むマクロブロックのタイプを第1のタイプとして決定し、残りのいずれか1つのマクロブロックに対して、いずれか1つのマクロブロックの復号化情報に基づいて、いずれか1つのマクロブロックが第1のタイプのマクロブロックに依存するか否かを決定し、第1のタイプのマクロブロックに依存するいずれか1つのマクロブロックのタイプを、第2のタイプとして決定し、第1のタイプのマクロブロックに依存しないいずれか1つのマクロブロックのタイプを、第3のタイプとして決定する。
さらに、本出願の実施例の可能な一実現形態では、符号化モジュール940は、さらに、目標ビデオの符号化データとソースビデオの符号化データのサイズが一致しないことに応答して、マクロブロックのタイプに基づいて、マクロブロックの量子化値を調整するための優先順位を決定し、優先順位に従って、各タイプのマクロブロックの量子化値を順次に調整し、調整された量子化値に基づいてマクロブロックを量子化する。
本出願の実施例は電子機器をさらに提供する。
図10は本出願の実施例によって提供される電子機器の概略構成図である。図10に示すように、この電子機器100は、記憶媒体110、プロセッサ120及びメモリ110に記憶され、プロセッサ120で実行可能なコンピュータプログラム製品を含み、プロセッサはコンピュータプログラムを実行する場合、前記のビデオのトランスコード方法が実現される。
当業者は、本考案の実施例が方法、システム、またはコンピュータプログラム製品として提供できることを理解されたい。したがって、本出願は、完全ハードウェア実施例、完全ソフトウェア実施例、またはソフトウェア及びハードウェアを組み合わせた実施例を採用することができる。さらに、本出願は、コンピュータ利用可能なプログラムコードを含む1つまたは複数のコンピュータ利用可能な記憶媒体(磁気ディスクメモリ、CD-ROM、光学メモリなどを含むが、これらに限定されない)で実施されるコンピュータプログラム製品の形態を採用することができる。
本出願は、本出願の実施例に係る方法、デバイス(システム)およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照して説明されたものである。フローチャートおよび/またはブロック図における各フローおよび/またはブロック、及びフローチャートおよび/またはブロック図におけるフローおよび/またはブロックの組み合わせは、コンピュータプログラム命令によって実現され得ることを理解されたい。これらのコンピュータプログラム命令を、汎用コンピュータ、専用コンピュータ、埋め込みプロセッサ、または他のプログラマブルデータ処理装置のプロセッサに提供して、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサによって実行される命令が、フローチャートの1つまたは複数のフロー、および/またはブロック図の1つまたは複数のブロックにおいて指定された機能を実現するために使用される装置を生成することができる。
これらのコンピュータプログラム命令は、コンピュータ読み取り可能なメモリに記憶されている命令が、フローチャートの1つまたは複数のフローおよび/またはブロック図の1つまたは複数のブロックで指定された機能を実現する命令装置を含む製造品を生成するように、コンピュータまたは他のプログラマブルデータ処理装置を特定の方式で動作させるように導くことができるコンピュータ読み取り可能なメモリに記憶することもできる。
これらのコンピュータプログラム命令はまた、コンピュータまたは他のプログラマブル装置上で一連の動作ステップを実行してコンピュータ実装の処理を生成するように、コンピュータまたは他のプログラマブルデータ処理装置にロードされてもよく、これにより、コンピュータまたは他のプログラマブル装置上で実行される命令は、フローチャートの1つまたは複数のフローおよび/またはブロック図の1つまたは複数のブロックで指定された機能を実現するためのステップを提供する。
本出願の実施例はコンピュータ命令が記憶されているコンピュータ読み取り可能な記憶媒体をさらに提供し、このコンピュータ命令は、コンピュータに上記実施例のビデオのトランスコード方法を実行させる。
本出願の実施例は、コンピュータプログラムが含まれるコンピュータプログラム製品をさらに提供し、このコンピュータプログラムはプロセッサによって実行される場合、上記実施例のビデオのトランスコード方法が実現される。
なお、請求項において、括弧の間にある任意の参照符号は、請求項を限定するように構成されてはならない。「含む」という単語は、請求項に記載されていない部品またはステップを排除しない。部品の前にある単語「一」または「一つ」は、このような部品が複数存在することを排除しない。本出願は、いくつかの異なるコンポーネントを含むハードウェア、および適切なプログラミングを行うコンピュータによって実現することができる。いくつかの装置のユニットが列挙された請求項において、これらの装置のいくつかは、同一のハードウェアによって具体的に体現され得る。第1、第2、及び第3などの単語の使用は任意の順序を表していない。これらの単語は名称として解釈することができる。
また、「第1」、「第2」という用語は説明の目的にのみ使用され、相対的な重要性を示しまたは暗示し、示された技術的特徴の数を暗黙的に示すと理解されたくない。これにより、「第1」、「第2」と限定された特徴は、1つまたは複数の当該特徴を明示または暗黙的に含むことができる。本出願の説明では、「複数」という意味は、特に具体的な明確な限定がない限り、2つ以上である。
本開示のすべての実施例は、単独で実行されてもよく、他の実施例と組み合わせて実行されてもよく、いずれも本開示の要求の保護範囲とみなされる。
本出願の第5の態様の実施例は、コンピュータプログラムを提案し、コンピュータプログラムはプロセッサによって実行される場合、本出願の第1の様態の実施例によって提供されるビデオのトランスコード方法が実現される。
図10は本出願の実施例によって提供される電子機器の概略構成図である。図10に示すように、この電子機器100は、記憶媒体110、プロセッサ120及びメモリ110に記憶され、プロセッサ120で実行可能なコンピュータプログラムを含み、プロセッサはコンピュータプログラムを実行する場合、前記のビデオのトランスコード方法が実現される。
当業者は、本考案の実施例が方法、システム、またはコンピュータプログラム製品として提供できることを理解されたい。したがって、本出願は、完全ハードウェア実施例、完全ソフトウェア実施例、またはソフトウェア及びハードウェアを組み合わせた実施例を採用することができる。さらに、本出願は、コンピュータ利用可能なプログラムコードを含む1つまたは複数のコンピュータ利用可能な記憶媒体(磁気ディスクメモリ、CD-ROM、光学メモリなどを含むが、これらに限定されない)で実施されるコンピュータプログラムの形態を採用することができる。
本出願は、本出願の実施例に係る方法、デバイス(システム)およびコンピュータプログラムのフローチャートおよび/またはブロック図を参照して説明されたものである。フローチャートおよび/またはブロック図における各フローおよび/またはブロック、及びフローチャートおよび/またはブロック図におけるフローおよび/またはブロックの組み合わせは、コンピュータプログラム命令によって実現され得ることを理解されたい。これらのコンピュータプログラム命令を、汎用コンピュータ、専用コンピュータ、埋め込みプロセッサ、または他のプログラマブルデータ処理装置のプロセッサに提供して、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサによって実行される命令が、フローチャートの1つまたは複数のフロー、および/またはブロック図の1つまたは複数のブロックにおいて指定された機能を実現するために使用される装置を生成することができる。
本出願の実施例は、コンピュータプログラムをさらに提供し、このコンピュータプログラムはプロセッサによって実行される場合、上記実施例のビデオのトランスコード方法が実現される。

Claims (21)

  1. ソースビデオストリームを復号化して、第1のビデオフレームと復号化情報とを取得し、前記第1のビデオフレームに透かし情報を挿入して、第2のビデオフレームを生成するステップと、
    前記透かし情報と前記復号化情報とに基づいて、前記第2のビデオフレームにおけるマクロブロックのタイプを決定するステップと、
    各マクロブロックに対して、前記マクロブロックのタイプとレート歪み最適化(RDO)アルゴリズムとに基づいて、前記マクロブロックの符号化のために必要な目標符号化パラメータを決定するステップと、
    各マクロブロックの前記目標符号化パラメータに基づいてマクロブロック符号化を行って、トランスコードされた目標ビデオストリームを生成するステップと、
    を含む、ビデオのトランスコード方法。
  2. 前記マクロブロックのタイプとレート歪み最適化(RDO)アルゴリズムとに基づいて、前記マクロブロックの符号化のために必要な目標符号化パラメータを決定するステップが、
    前記マクロブロックのタイプに基づいて、前記マクロブロックの参照符号化ピクセルを決定するステップと、
    前記マクロブロックの復号化情報及び前記参照符号化ピクセルに対してRDOアルゴリズム処理を行って、前記マクロブロックの少なくとも1組の候補符号化パラメータ及び各組の候補符号化パラメータに対応するRDOコスト値を生成するステップと、
    前記RDOコスト値に基づいて、前記少なくとも1組の候補符号化パラメータから、前記マクロブロックの符号化のために必要な目標符号化パラメータを決定するステップと、
    を含む請求項1に記載のビデオのトランスコード方法。
  3. 前記マクロブロックのタイプに基づいて、前記マクロブロックの参照符号化ピクセルを決定するステップが、
    非第1のタイプのマクロブロックに対して、復号化器のデブロッキングフィルタリング前の再構成ピクセルを、前記参照符号化ピクセルとするステップと、
    第1のタイプのマクロブロックに対して、前記第1のタイプのマクロブロックにおけるピクセルが前記透かし情報で修正されていない第1の領域と修正された第2の領域とを決定するステップであって、前記第1の領域の参照符号化ピクセルは前記復号化器のデブロッキングフィルタリング前の再構成ピクセルであり、前記第2の領域の参照符号化ピクセルは符号化器によって現在入力されているピクセルであり、前記現在入力されているピクセルは前記透かし情報で修正されたピクセルであるステップと、
    を含み、
    前記第1のタイプのマクロブロックが、前記透かし情報に関連することを指示する
    請求項2に記載のビデオのトランスコード方法。
  4. 前記RDOコスト値に基づいて、前記少なくとも1組の候補符号化パラメータから、前記マクロブロックの符号化のために必要な目標符号化パラメータを決定するステップが、
    前記マクロブロックのタイプが非第1のタイプであることに応答して、最小の前記RDOコスト値に対応する1組の候補符号化パラメータを、前記マクロブロックの目標符号化パラメータとして選択するステップを含む請求項2または3に記載のビデオのトランスコード方法。
  5. 前記マクロブロックのタイプが第2のタイプであり、かつ前記最小の前記RDOコスト値が予め設定された閾値よりも大きいことに応答して、前記符号化器のネイティブRDOアルゴリズムを呼び出して、前記マクロブロックのネイティブRDOコスト値とネイティブ符号化パラメータとを取得するステップであって、前記第2のタイプはマクロブロックと前記透かし情報を搬送するマクロブロックとの間に依存関係が存在することを指示するステップと、
    前記最小の前記RDOコスト値が前記ネイティブRDOコスト値以下である場合、前記最小の前記RDOコスト値に対応する1組の候補符号化パラメータを、前記マクロブロックの目標符号化パラメータとするステップと、
    前記最小の前記RDOコスト値が前記ネイティブRDOコスト値より大きい場合、前記ネイティブ符号化パラメータを前記マクロブロックの目標符号化パラメータとするステップと、を含む請求項2または3に記載のビデオのトランスコード方法。
  6. 前記マクロブロックのタイプが前記第1のタイプであることに応答して、前記符号化器のネイティブRDOアルゴリズムを呼び出して、前記マクロブロックのネイティブ符号化パラメータを生成し、前記ネイティブ符号化パラメータを前記マクロブロックの目標符号化パラメータとして決定するステップを含む請求項4に記載のビデオのトランスコード方法。
  7. 前記各マクロブロックの前記目標符号化パラメータに基づいてマクロブロック符号化を行って、符号化された目標ビデオストリームを生成するステップが、
    前記マクロブロックの目標符号化パラメータに基づいて、前記マクロブロックに対してマクロブロック符号化を行って、前記第2のビデオフレームに対応する目標符号化データを生成し、各フレームの前記目標符号化データに基づいて、前記目標ビデオストリームを生成するステップを含む請求項1から3のいずれか一項に記載のビデオのトランスコード方法。
  8. 前記透かし情報と前記復号化情報とに基づいて、前記第2のビデオフレームにおけるマクロブロックのタイプを決定するステップが、
    前記第2のビデオフレームに前記透かし情報が挿入された場合に修正されたピクセルを取得し、前記修正されたピクセルを含むマクロブロックのタイプを第1のタイプとして決定するステップと、
    残りのいずれか1つのマクロブロックに対して、前記いずれか1つのマクロブロックの復号化情報に基づいて、前記いずれか1つのマクロブロックが前記第1のタイプのマクロブロックに依存するか否かを決定するステップと、
    前記第1のタイプのマクロブロックに依存する前記いずれか1つのマクロブロックのタイプを、第2のタイプとして決定し、前記第1のタイプのマクロブロックに依存しない前記いずれか1つのマクロブロックのタイプを、第3のタイプとして決定するステップと、
    を含む請求項1に記載のビデオのトランスコード方法。
  9. 前記各マクロブロックの前記目標符号化パラメータに基づいてマクロブロック符号化を行う前に、
    前記目標ビデオの符号化データと前記ソースビデオの符号化データのサイズが一致しないことに応答して、前記マクロブロックのタイプに基づいて、前記マクロブロックの量子化値を調整するための優先順位を決定するステップと、
    前記優先順位に従って、各タイプのマクロブロックの量子化値を順次に調整し、調整された量子化値に基づいて前記マクロブロックを量子化するステップと、
    を含む請求項1に記載のビデオのトランスコード方法。
  10. ソースビデオストリームを復号化して、第1のビデオフレームと復号化情報とを取得し、前記第1のビデオフレームに透かし情報を挿入して、第2のビデオフレームを生成するための復号化モジュールと、
    前記透かし情報と前記復号化情報とに基づいて、前記第2のビデオフレームにおけるマクロブロックのタイプを決定するためのマクロブロックタイプ取得モジュールと、
    各マクロブロックに対して、前記マクロブロックのタイプとレート歪み最適化(RDO)アルゴリズムとに基づいて、前記マクロブロックの符号化のために必要な目標符号化パラメータを決定するためのパラメータ取得モジュールと、
    各マクロブロックの前記目標符号化パラメータに基づいてマクロブロック符号化を行って、トランスコードされた目標ビデオストリームを生成するための符号化モジュールと、
    を備える、ビデオのトランスコード装置。
  11. 前記パラメータ取得モジュールが、
    前記マクロブロックのタイプに基づいて、前記マクロブロックの参照符号化ピクセルを決定するための符号化ピクセル取得モジュールと、
    前記マクロブロックの復号化情報及び前記参照符号化ピクセルに対してRDOアルゴリズム処理を行って、前記マクロブロックの少なくとも1組の候補符号化パラメータ及び各組の候補符号化パラメータに対応するRDOコスト値を生成するための予備パラメータ取得モジュールと、
    前記RDOコスト値に基づいて、前記少なくとも1組の候補符号化パラメータから、前記マクロブロックの符号化のために必要な目標符号化パラメータを決定するための目標パラメータ取得モジュールと、
    を備える請求項10に記載のビデオのトランスコード装置。
  12. 前記符号化ピクセル取得モジュールが、
    非第1のタイプのマクロブロックに対して、復号化器のデブロッキングフィルタリング前の再構成ピクセルを、前記参照符号化ピクセルとし、
    第1のタイプのマクロブロックに対して、前記第1のタイプのマクロブロックにおけるピクセルが前記透かし情報で修正されていない第1の領域と修正された第2の領域とを決定し、前記第1の領域の参照符号化ピクセルは前記復号化器のデブロッキングフィルタリング前の再構成ピクセルであり、前記第2の領域の参照符号化ピクセルは符号化器によって現在入力されているピクセルであり、前記現在入力されているピクセルは前記透かし情報で修正されたピクセルであり、
    前記第1のタイプのマクロブロックが、前記透かし情報に関連することを指示する
    請求項11に記載のビデオのトランスコード装置。
  13. 前記パラメータ取得モジュールが、
    前記マクロブロックのタイプが非第1のタイプであることに応答して、最小の前記RDOコスト値に対応する1組の候補符号化パラメータを、前記マクロブロックの目標符号化パラメータとして選択する請求項11または12に記載のビデオのトランスコード装置。
  14. 前記目標パラメータ取得モジュールが、
    前記マクロブロックのタイプが第2のタイプであり、かつ前記最小の前記RDOコスト値が予め設定された閾値より大きいことに応答して、前記符号化器のネイティブRDOアルゴリズムを呼び出して、前記マクロブロックのネイティブRDOコスト値とネイティブ符号化パラメータとを取得し、前記第2のタイプはマクロブロックと前記透かし情報を搬送するマクロブロックとの間に依存関係が存在することを指示し、
    前記最小の前記RDOコスト値が前記ネイティブRDOコスト値以下である場合、前記最小の前記RDOコスト値に対応する1組の候補符号化パラメータを、前記マクロブロックの目標符号化パラメータとし、
    前記最小の前記RDOコスト値が前記ネイティブRDOコスト値よりも大きい場合、前記ネイティブ符号化パラメータを前記マクロブロックの目標符号化パラメータとする請求項11または12に記載のビデオのトランスコード装置。
  15. 前記目標パラメータ取得モジュールが、
    前記マクロブロックのタイプが前記第1のタイプであることに応答して、前記符号化器のネイティブRDOアルゴリズムを呼び出して、前記マクロブロックのネイティブ符号化パラメータを生成し、前記ネイティブ符号化パラメータを前記マクロブロックの目標符号化パラメータとして決定する請求項13に記載のビデオのトランスコード装置。
  16. 前記符号化モジュールが、
    前記マクロブロックの目標符号化パラメータに基づいて、前記マクロブロックに対してマクロブロック符号化を行って、前記第2のビデオフレームに対応する目標符号化データを生成し、各フレームの前記目標符号化データに基づいて、前記目標ビデオストリームを生成する請求項10から12のいずれか一項に記載のビデオのトランスコード装置。
  17. 前記マクロブロックタイプ取得モジュールが、
    前記第2のビデオフレームに前記透かし情報が挿入された場合に修正されたピクセルを取得し、前記修正されたピクセルを含むマクロブロックのタイプを第1のタイプとして決定し、
    残りのいずれか1つのマクロブロックに対して、前記いずれか1つのマクロブロックの復号化情報に基づいて、前記いずれか1つのマクロブロックが前記第1のタイプのマクロブロックに依存するか否かを決定し、
    前記第1のタイプのマクロブロックに依存する前記いずれか1つのマクロブロックのタイプを、第2のタイプとして決定し、前記第1のタイプのマクロブロックに依存しない前記いずれか1つのマクロブロックのタイプを、第3のタイプとして決定する請求項10に記載のビデオのトランスコード装置。
  18. 前記符号化モジュールが、
    前記目標ビデオの符号化データと前記ソースビデオの符号化データのサイズが一致しないことに応答して、前記マクロブロックのタイプに基づいて、前記マクロブロックの量子化値を調整するための優先順位を決定し、
    前記優先順位に従って、各タイプのマクロブロックの量子化値を順次に調整し、調整された量子化値に基づいて前記マクロブロックを量子化する請求項10に記載のビデオのトランスコード装置。
  19. 少なくとも1つのプロセッサと、
    該少なくとも1つのプロセッサと通信可能に接続されるメモリと、
    を備え、
    前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令は、前記少なくとも1つのプロセッサが請求項1から9のいずれか一項に記載の方法を実行できるように、前記少なくとも1つのプロセッサによって実行される電子機器。
  20. コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
    前記コンピュータ命令が、コンピュータに請求項1から9のいずれか一項に記載の方法を実行させる非一時的なコンピュータ読み取り可能な記憶媒体。
  21. コンピュータプログラムが含まれるコンピュータプログラム製品であって、
    前記コンピュータプログラムがプロセッサによって実行される場合、請求項1から9のいずれか一項に記載の方法が実現されるコンピュータプログラム製品。
JP2023558930A 2021-04-30 2022-04-11 ビデオのトランスコード方法、装置、電子機器及び記憶媒体 Pending JP2023552923A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202110487567.6A CN113014926B (zh) 2021-04-30 2021-04-30 视频的转码方法、装置、电子设备及存储介质
CN202110487567.6 2021-04-30
PCT/CN2022/086187 WO2022228104A1 (zh) 2021-04-30 2022-04-11 视频的转码方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
JP2023552923A true JP2023552923A (ja) 2023-12-19

Family

ID=76380983

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023558930A Pending JP2023552923A (ja) 2021-04-30 2022-04-11 ビデオのトランスコード方法、装置、電子機器及び記憶媒体

Country Status (4)

Country Link
US (1) US20240048778A1 (ja)
JP (1) JP2023552923A (ja)
CN (1) CN113014926B (ja)
WO (1) WO2022228104A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113014926B (zh) * 2021-04-30 2023-04-07 北京汇钧科技有限公司 视频的转码方法、装置、电子设备及存储介质
CN113613015A (zh) * 2021-07-30 2021-11-05 广州盈可视电子科技有限公司 防篡改视频生成方法、装置、电子设备及可读介质
CN115883835B (zh) * 2023-03-03 2023-04-28 腾讯科技(深圳)有限公司 一种视频编码方法、装置、设备及存储介质
CN117579820B (zh) * 2024-01-15 2024-05-10 腾讯科技(深圳)有限公司 编码参数确定方法、装置、电子设备以及存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7672373B2 (en) * 2005-04-11 2010-03-02 Cisco Technology, Inc. Digital watermarking of a media stream using coded macroblock types
US8351513B2 (en) * 2006-12-19 2013-01-08 Allot Communications Ltd. Intelligent video signal encoding utilizing regions of interest information
US8848791B2 (en) * 2010-09-29 2014-09-30 Futurewei Technologies, Inc. Compressed domain video watermarking
CN105898323A (zh) * 2015-12-04 2016-08-24 乐视致新电子科技(天津)有限公司 一种在视频中添加水印和确定水印的信息的方法和设备
CN107105255B (zh) * 2016-02-23 2020-03-03 阿里巴巴集团控股有限公司 视频文件中添加标签的方法和装置
CN108600757A (zh) * 2018-05-03 2018-09-28 深圳市网心科技有限公司 宏块类型判定方法、视频转码方法、电子设备和存储介质
CN108769828A (zh) * 2018-05-23 2018-11-06 深圳市网心科技有限公司 图片水印添加方法、电子装置及计算机可读存储介质
CN111225211A (zh) * 2018-11-27 2020-06-02 北京达佳互联信息技术有限公司 转码方法、转码装置和计算机可读存储介质
CN111225277A (zh) * 2018-11-27 2020-06-02 北京达佳互联信息技术有限公司 转码方法、转码装置和计算机可读存储介质
US20240146949A1 (en) * 2021-03-02 2024-05-02 Beijing Bytedance Network Technology Co., Ltd. Method, electronic device, storage medium, and recording medium for image encoding
CN113014926B (zh) * 2021-04-30 2023-04-07 北京汇钧科技有限公司 视频的转码方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN113014926B (zh) 2023-04-07
US20240048778A1 (en) 2024-02-08
WO2022228104A1 (zh) 2022-11-03
CN113014926A (zh) 2021-06-22

Similar Documents

Publication Publication Date Title
KR102535361B1 (ko) 머신 러닝을 사용하는 영상 부호화기 및 그것의 데이터 처리 방법
TWI705694B (zh) 片級內部區塊複製及其他視訊寫碼改善
TWI736555B (zh) 視訊寫碼中成分之範圍調整之固定點實施
JP6800896B2 (ja) ビデオコーディングのためにハイダイナミックレンジおよび広色域ビデオデータを処理すること
CN114071165B (zh) 视频编码器、视频解码器及对应方法
TWI700919B (zh) 視訊編解碼方法/裝置及相應地存儲介質
JP2023552923A (ja) ビデオのトランスコード方法、装置、電子機器及び記憶媒体
TW201906406A (zh) 與視訊寫碼中之變換處理一起應用之內部濾波
TW202005399A (zh) 基於區塊之自適應迴路濾波器(alf)之設計及發信令
TW201841503A (zh) 視頻寫碼中之內濾波旗標
TW201943272A (zh) 以角度模式延伸之位置相關框內預測組合
KR102518627B1 (ko) 이미지 인코딩 방법, 디코딩방법, 인코더 및 디코더
TW201733353A (zh) 從用於視訊寫碼之固定濾波器預測濾波器係數
TW202041024A (zh) 用於視訊寫碼中具有運動向量差之合併模式之信令傳輸
WO2021004152A1 (zh) 图像分量的预测方法、编码器、解码器以及存储介质
TW201919402A (zh) 視訊圖像編碼和解碼的方法、裝置及設備
JP7143512B2 (ja) ビデオ復号方法およびビデオデコーダ
JP7124222B2 (ja) Vvcにおける色変換のための方法及び機器
TW201931853A (zh) 具有聯合像素/變換為基礎之量化之視頻寫碼之量化參數控制
US11343513B2 (en) Image encoding method and decoding method, encoder, decoder, and storage medium
CN116567207B (zh) 用于帧内预测的方法和装置
TW202112135A (zh) 用於視訊寫碼之色度內預測單元
CN118509609A (zh) 一种对码流进行解码的方法、装置,编码的方法、装置以及传输码流的设备
TW202034695A (zh) 用於視訊寫碼之限制仿射運動繼承
CN113396586A (zh) 条件依赖的视频块分割

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230614

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230614

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240705

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240723

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241011