JP2018513604A - 符号化中にビットレートおよび解像度を最適化する技術 - Google Patents

符号化中にビットレートおよび解像度を最適化する技術 Download PDF

Info

Publication number
JP2018513604A
JP2018513604A JP2017549016A JP2017549016A JP2018513604A JP 2018513604 A JP2018513604 A JP 2018513604A JP 2017549016 A JP2017549016 A JP 2017549016A JP 2017549016 A JP2017549016 A JP 2017549016A JP 2018513604 A JP2018513604 A JP 2018513604A
Authority
JP
Japan
Prior art keywords
bit rate
source data
encoding
complexity
computer
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.)
Granted
Application number
JP2017549016A
Other languages
English (en)
Other versions
JP2018513604A5 (ja
JP6706269B2 (ja
Inventor
アーロン,アン
ロンカ,デイヴィッド
カツァヴォーニディス,イオアニス
シュラー,アンディー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netflix Inc
Original Assignee
Netflix Inc
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 Netflix Inc filed Critical Netflix Inc
Publication of JP2018513604A publication Critical patent/JP2018513604A/ja
Publication of JP2018513604A5 publication Critical patent/JP2018513604A5/ja
Application granted granted Critical
Publication of JP6706269B2 publication Critical patent/JP6706269B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions

Landscapes

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

Abstract

本発明の一実施形態において、符号化ビットレートラダー選択器は、ソースデータの複雑性に合わせてビットレートラダーを調整する。ソースデータを受信した際、複雑性解析器は、一定の量子化パラメータを各符号化についてそれぞれ異なる値に設定しながら、ソースデータを繰り返し符号化するためのエンコーダを構成する。複雑性解析器は、符号化の結果を処理して、視覚的品質指標を符号化ビットレートに関係づける方程式を決定する。バケット化部は、この方程式を解いて、視覚的品質指標の所定の値におけるバケット化ビットレートを推定する。バケット化部は、バケット化ビットレートに基づいて、ソースデータを、所定のビットレートラダーが関連づけられた複雑性バケットに割り当てる。ビットレートラダーを鋭敏に選択することは、単一の「典型的な」ソースデータタイプではなく様々なソースデータタイプにわたって、品質とリソース(例えば、ストレージおよび帯域幅)との間のトレードオフを最適に反映する符号化を可能にするので、有利である。

Description

関連出願への相互参照
本願は、2015年3月30日に出願された米国特許出願第14/673,621号による利益を主張するものであり、これを参照して本明細書に組み込む。
本発明の実施形態は、一般的に、コンピュータサイエンスに関し、より具体的には、符号化中にビットレートおよび解像度を最適化する技術に関する。
ソースデータを効率的且つ正確に符号化することは、ビデオコンテンツのリアルタイムの配信のために不可欠である。動作において、符号化されたデータがエンドポイントマシンにおいて受信された後、符号化されたデータは復号化され、視聴または別様で更に処理される。符号化されたデータの圧縮率を高めるため、および/または、サイズを小さくするために、多くの符号化処理は、選択された情報を消去して、典型的にはソースデータのおおよその再構築のみを可能にする、損失の多いデータ圧縮技術を利用している。特に、エンコーダは情報を取り除くので、符号化されたデータの解像度は減少し、その結果、おおよその再構築が、視聴者が期待し所望する視覚的品質を有する可能性も低くなる。
動作において、エンコーダは、しばしば、符号化/復号化処理中に消費されるリソース(例えば、処理時間、帯域幅、ストレージ等)と視覚的品質との間のトレードオフを行う固定的なビットレートラダーを実装するよう構成される。ビットレートラダーの各「横木」は、異なるビットレートおよび解像度を表す。一般的に、使用可能なビットレートを所与として、エンコーダは、ビットレートラダーに基づいて符号化ビットレートおよび解像度を選択し、次に、決定されたビットレートおよび解像度において符号化データを生成する。
実際には、ビットレートラダーは、「典型的な」ソースデータに対して必要な品質レベルを有する符号化データを生成するよう調整される。しかし、ソースデータが「典型的な」ソースデータとは顕著に異なる状況では、ビットレートラダーによって表されているトレードオフは適切ではない場合がある。例えば、ビットレートラダーが単純なアニメーションについてトレードオフを最適化するよう設計されており、ソースデータが詳細なアクション映画である場合には、符号化中にビットレートラダーが課すトレードオフは、許容できない悪い視覚的品質を生じ得る。逆に、ビットレートラダーが詳細なアクション映画についてトレードオフを最適化するよう設計されており、ソースデータが単純なアニメーションである場合には、符号化中にビットレートラダーが課すトレードオフは、視覚的品質を顕著に高めることなく、リソースの負荷(例えば、ストレージおよび帯域幅の使用率等)を劇的に増加させ得る。
上記で示したように、当該技術分野においては、ソースデータを符号化する際にビットレートおよび解像度を選択するためのより効果的な技術が必要である。
本発明の一実施形態は、コンピュータによって実施される、ソースデータを符号化するためのビットレートラダーを選択する方法を述べる。本方法は、量子化パラメータについて、1組のパラメータ値を選択する工程と、各パラメータ値について、量子化パラメータをこれらのパラメータ値に保ちつつ、ソースデータを符合化して1組の符合化データを生成するためのエンコーダを構成する工程と、各1組の符合化データについて、ビデオ品質指標の値およびそれに対応するビットレートを決定する工程と、ビデオ品質指標と対応するビットレートとの間の関係を導出する工程と、この関係に基づいて、ビデオ品質指標が所定の閾値に等しくなるバケット化ビットレートを決定する工程と、このバケット化ビットレートに基づいて、ソースデータを符号化するためのビットレートラダーを選択する工程とを含む。
本開示のビットレートラダーを選択する技術の1つの長所は、これらの技術が、ソースデータを符号化する際に、複雑性に合わせたビットレートおよび解像度を選択することを可能にすることである。特に、本開示の技術は、ソースデータの複雑性を反映するようビットレートラダーを調整するので、ソースデータの複雑性に関係なく一定のビットレートラダーを実装する従来の技術と比較して、符号化品質と符号化リソースとの間のトレードオフが最適化される。
本発明の1以上の態様を実装するよう構成されたシステムの概念図 本発明の一実施形態による、図1の符号化ビットレートラダー選択器を示すブロック図 本発明の一実施形態による、図2の符号化ビットレートラダー選択器によって実装される複雑性バケットおよびビットレートラダーの概念図 本発明の一実施形態による、図2の複雑性解析器によって構築された、単純なソースについてのピークS/N比(PSNR)曲線の概念図 本発明の一実施形態による、図2の複雑性解析器によって構築された、複雑なソースについてのピークS/N比(PSNR)曲線の概念図 本発明の一実施形態による、ビデオソースデータを符号化しつつ、ビットレートラダーを選択および実装する方法のステップのフロー図
本発明の上記の特徴を詳細に理解できるように、上記で簡潔に要約した本発明を、実施形態を参照してより具体的に説明する。実施形態の幾つかが、添付の図面に示されている。しかし、添付の図面は、本発明の典型的な実施形態のみを示すものであり、本発明の範囲を限定するものとは見なされず、本発明は、他の等しく効果的な実施形態を認め得ることを留意されたい。
以下の説明において、本発明のより完全な理解を提供するために、多くの具体的な詳細が述べられる。しかし、当業者には、これらの具体的な詳細の1以上を含まずとも本発明が実施され得ることが自明である。
システムの概観
図1は、本発明の1以上の態様を実装するよう構成されたシステム100の概念図である。図示されるように、システム100は、入力データの送信機能および/またはビデオの表示機能がある様々な装置に接続された仮想プライベートクラウド(即ち、カプセル化された共有リソース、ソフトウェア、データ等)102を含む。そのような装置は、デスクトップコンピュータ102、スマートフォン104、およびラップトップ106を含むが、それらに限定されない。別の実施形態では、システム100は、任意の数および/またはタイプの入力装置、出力装置、および/または入出力装置を任意の組合せで含み得る。
仮想プライベートクラウド(VPC)102は、任意の数およびタイプのコンピュートインスタンス110を含むが、それらに限定されない。VPC102は、入力装置(例えば、ラップトップ106)からの入力ユーザ情報を受信し、1以上のコンピュータインスタンス110は、ユーザ情報に対する操作を行い、VPC102は、処理された情報をユーザに送信する。VPC102は、任意の数の装置(例えば、従来のCRT、液晶ディスプレイ、発光ダイオード等)の表示機能を介して、出力情報をユーザに伝達する。
別の実施形態では、VPC102は、任意のタイプのクラウドコンピューティング環境(例えば、パブリッククラウドまたはハイブリッドクラウド等)と置き換えられ得る。他の実施形態では、システム100は、VPC102の代わりに、任意の分散型コンピュータシステムを含み得る。更に別の実施形態では、システム100はVPC102を含まず、その代わりに、システム100は、単一の処理装置またはマルチプロセッシング装置を含む。
コンピュートインスタンス110について図示されているように、各コンピュートインスタンス110は、中央処理装置(CPU)112、グラフィック処理装置(GPU)114、およびメモリ116を含む。動作において、CPU112はコンピュートインスタンス110のマスタープロセッサであり、コンピュートインスタンス110に含まれる他の構成要素の動作を制御し調和させる。具体的には、CPU112は、GPU114の動作を制御するコマンドを発行する。GPU114には、グラフィックおよびビデオ処理のために最適化された回路(例えば、ビデオ出力回路を含む)が組み込まれている。様々な実施形態において、GPU114には、コンピュートインスタンス110の他の要素の1以上が統合され得る。メモリ116は、コンピュートインスタンス110のCPU112およびGPU114が用いるためのコンテンツ(例えばソフトウェアアプリケーションおよびデータ等)を格納する。
一般的に、VPC102に含まれるコンピュートインスタンス110は、1以上のアプリケーションを実装するよう構成される。より具体的には、VPC102に含まれるコンピュートインスタンス110は、例えばビデオファイル等のソースデータ105を符号化するよう構成される。図示されるように、コンピュートインスタンス110はソースインスペクタ110として構成され、コンピュートインスタンス110〜110はエンコーダ140として構成される。別の実施形態では、ソースインスペクタ110は、より多くのコンピュートインスタンス110を含んでもよく、エンコーダ140は、単一のコンピュートインスタンス110のみを含んでもよい。
ソースインスペクタ110は、ソースデータ105を受信して、エンコーダ140を構成することを含む任意の数の符号化前処理を行う。例えば、一部の実施形態では、エンコーダ140は並列チャンクエンコーダである。そのような実施形態では、ソースインスペクタ110はソースを複数のソースチャンクに分割してから、それらのソースチャンクを、並列チャンクエンコーダに含まれる複数のコンピュートインスタンス140にルーティングする。
一般的に、エンコーダ140は、符号化処理のカスタマイズを可能にする複数のモードおよび設定(例えば、圧縮アルゴリズム)を含む。具体的には、エンコーダ140は、一定ビットレートモードおよび一定品質符号化モードの両方を実装するが、それらに限定されない。一定ビットレートモードでは、エンコーダ140は、符号化処理を通して目標ビットレートを保つよう試みる。エンコーダ140が、符号化ビットレートが目標ビットレートよりも高いことを検出した場合には、エンコーダ140は、符号化データ145の品質を下げる。エンコーダ140が、符号化ビットレートが目標ビットレートよりも低いことを検出した場合には、エンコーダ140は符号化データ145の品質を上げる。それとは対照的に、一定品質符号化モードでは、エンコーダ140は、符号化処理を通して一定の品質を保つよう試みる。エンコーダ140は、符号化データ145の品質を測定し、符号化品質を目標品質に保つために、符号化データ145に含める信号の詳細の量を定める量子化パラメータ(QP)を変化させる。或いは、エンコーダ140は、符号化処理を通して、QPを一定の値に設定する。
エンコーダ140の構成は、必要なリソース(例えば、帯域幅およびストレージ等)および符号化データ145の品質に劇的に影響することが、当業者には認識されよう。異なるタイプのソースデータ105にわたって、必要なリソースを無駄にすることなく、許容可能な知覚される視覚的品質を満たすために符号化データ145を最適化するようエンコーダ140を構成することは、困難である。例えば、一定のビットレートラダーを利用して、目標ビットレートで符号化する手法等の従来の手法は、一部のタイプのソースデータ105については品質/リソースのトレードオフを最適化するが、他のタイプのソースデータ105については悪い結果を生じる。
この理由から、ソースインスペクタ110は、符号化ビットレートラダー選択器130を含む。動作において、符号化ビットレートラダー選択器130は、エンコーダ140を利用して、ソースデータ105の複雑性を推定し、次に、ソースデータ105を複雑性バケット132に割り当てる。次に、符号化ビットレートラダー選択器130は、選択された複雑性バケット132と関連づけられたビットレートラダー134を、ソースに合わせたビットレートラダー135として識別する。このようにして、符号化ビットレートラダー選択器130は、品質/リソースのトレードオフが、ソースデータ105の複雑性を反映するよう最適化されるのを可能にする。
一般的に、符号化ビットレートラダー選択器130は、任意の数の複雑性バケット132(各複雑性バケット132は、ソースデータ105についてのそれぞれ異なる範囲の複雑性を表す)を含み得る。例えば、一部の実施形態では、「単純」な複雑性バケット132は、最も低い範囲の複雑性(例えば、基本的なアニメーションのソースデータ105等)を表す。各複雑性バケット132は、複雑性バケット132によって表される複雑性を有するソースデータ105について符号化のトレードオフを最適化するよう調整されたビットレートラダー134のうちの特定の1つと関連づけられている。
符号化ビットレートラダー選択器130は、任意の技術的に実行可能な方法で、複雑性バケット132およびビットレートラダー134を実装し得る。一部の実施形態では、符号化ビットレートラダー選択器130は、ソースデータ105を含む何らかのソースデータを処理する前に、複雑性バケット132およびビットレートラダー134を設定する初期化部を含む。別の実施形態では、初期化部は符号化ビットレートラダー選択器130には含まれず、システム100に含まれる1つのユニットである。更に別の実施形態では、初期化部はシステム100に含まれない。
一実施形態では、初期化部は、最適化された複雑性バケット132およびビットレートラダー134を生成するために、手作業で評価される符号化品質フィードバック情報を提供する。まず、初期化部は、「典型的な」ビットレートラダーを受信する。次に、初期化部は、典型的なビットレートラダーに含まれるビットレートにわたる、(ソースデータ105の予期される複雑性の範囲にわたる)様々なテストデータを解析する。得られる符号化テストデータは、ラダーの横木およびテストデータの両方の範囲にわたるものである。
符号化テストデータを生成した後、初期化部は、各符号化テストデータの品質を評価する。より具体的には、初期化部は、符号化テストデータに、Tektronix(登録商標)画質解析器(PQA:Picture Quality Analyzer)ツールを適用する。PQAツールは、符号化テストデータに、「人間による主観的な視覚的評価に近い」画質評定(PQR:Picture Quality Rating)スコアを割り当てる。次に、初期化部は、ビットレートとPQRスコアによる品質とを対比させたグラフ(ここで、品質はPQRスコアである)を作成する。PQRグラフに基づいて、ソースデータ105の予期される複雑性にわたってリソースと品質との間の許容可能なトレードオフを生じるための、最適化された複雑性バケット132およびビットレートラダー134が選択される。とりわけ、最適化された複雑性バケット132およびビットレートラダー134は、以下の目的を満たすために作成され得る:
・解像度を最適化することによって、同じビットレートを所与としたビデオ品質を改善する。
・ストレージおよび帯域幅を節約する。単純なソースについては、高いビットレートのストリームは不必要であり(明らかな品質の利得がない)、その結果、ストレージおよび帯域幅が無駄になる。
・複雑なソースについては、より高いビットレートのストリームを使って、より良好な品質を達成する。複雑なテストデータに対応する複雑性バケット132については、許容可能な品質を達成するために、更なるビットレートが追加され得る。
複雑性バケット132およびビットレートラダー134は、PQRグラフに基づいて、任意の技術的に実行可能な方法(例えば、手作業により評価等)で生成され得る。別の実施形態では、PQRスコアは、任意の品質測定と置き換えられ得る。一般的に、複雑性バケット132およびビットレートラダー134は、様々な複雑性およびビットレートにわたってテストデータを評価する任意の技術的に実行可能な方法で生成され得る。
初期化部の完了後、得られた複雑性バケット132およびビットレートラダー134は、符号化ビットレートラダー選択器130に組み込まれるか、または通信される。様々な実施形態では、複雑性バケット132およびビットレートラダー134は、当該技術分野において知られている任意の通信方法を介してシステム100に転送され得る。
ソースの複雑性を推定する
図2は、本発明の一実施形態による、図1の符号化ビットレートラダー選択器130を示すブロック図である。符号化ビットレートラダー選択器130は、ソースデータ105を受信し、ソースデータ105の複雑性を推定し、ビットレートラダー134から、対応するソースに合わせたビットレートラダー135を選択する。ソースデータ105に対する最適なリソース/品質のトレードオフを表すビットレートラダー134を識別することの一部として、符号化ビットレートラダー選択器130は、エンコーダ140および複雑性バケット132を利用する。
図示されるように、符号化ビットレートラダー選択器130は、サンプル抽出器210、複雑性解析器220、およびバケット化部260を含むが、これらに限定されない。ソースデータ105を受信すると、サンプル抽出器210は、ソースデータ105を4つの等しい長さのセグメントに分割する。各セグメントについて、サンプル抽出器210は、セグメントの中点に中心合わせされた1分間のサンプル215を選択する。このようにして、サンプルエンコーダは、ソースデータ105にわたって均等に分散された4つの1分間のサンプル215を識別する。これらのサンプル215は共に、ソースデータ105の代理としての役割をする。サンプル215が含む情報はソースデータ105よりも少ないので、サンプル215の複雑性を評価するのに要する時間は、ソースデータ105の複雑性を評価するのに要する時間よりも少ない。
別の実施形態では、サンプル抽出器210は、ソースデータ105を任意の数のセグメントに分割して、ソースデータ105の代表的な代理を生成する任意の方法で、セグメントからサンプルを抽出し得る。更に、サンプル抽出器210は、任意の方法で(例えば、最大処理時間の制約を満たす)、任意の数および長さのサンプル215を生成するよう構成され得る。更に別の実施形態では、サンプル抽出器210は省略され、ソースデータ105は単一の完全な長さのサンプル215として処理される。
複雑性解析器220は、4つのサンプル215を受信し、1080pの解像度で4つの異なるQP225にわたって4つのサンプル215の固定的QP符号化を行うためのエンコーダ140を構成する。動作において、複雑性解析器220は、16個の符号化タスク233を実行するためのエンコーダ140を構成することにより、16個の一定QP符号化235を生成する。QP225の値は実験によっておよび/または発見的に決定され、任意の数の複雑性について、許容できない品質の劣化を生じることなくリソースの使用率を効果的に低減することが見込まれるQP225の範囲を良好にカバーするよう吟味される。別の実施形態では、複雑性解析器220は、任意の数のQP225および任意の数のサンプル215にわたる任意の数の符号化タスク233を任意の組合せで行うために、エンコーダ140をカスタマイズし得る。更に、複雑性解析器220は、任意の数および値の解像度について、固定的QP符号化を行い得る。
システム100の複雑性解析処理の精度を高めるために、複雑性解析器220は、ソースデータ105に対する符号化処理の一部として含まれるエンコーダ140を利用する。しかし、別の実施形態では、複雑性解析器220は、一定QP符号化235を生成するために、任意の利用可能な数およびタイプのエンコーダを構成し得る。
次に、各一定QP符号化235について、複雑性解析器220は、ピークS/N比(PSNR)(二乗平均誤差に基づく目標品質指標)の値を決定し、ビットレートを算出する。一部の実施形態では、複雑性解析器220は、一定QP符号化235のPSNR値を測定するようエンコーダ140を構成する。別の実施形態では、複雑性解析器220は、各一定QP符号化235のPSNR値を測定するために、複雑性解析器220の一部であってもよく、または一部でなくてもよいPSNR測定ツールを用いる。
複雑性解析器220は、任意の技術的に実行可能な方法で、各一定QP符号化235のビットレートを決定する。一部の実施形態では、複雑性解析器220は、ビットレートを識別するために、(符号化処理中にエンコーダ140によって生成された)ログファイルに対して読み出し処理を行う。別の実施形態では、複雑性解析器220は、一定QP符号化235のサイズ(即ち、ファイルサイズ)を一定QP符号化235の持続時間で除算することにより(即ち、フレーム数/1秒当たりのフレーム数)、ビットレートを算出する。
PSNR値および対応するビットレートを取得した後、複雑性解析器220は、PSNR値と対応するビットレートとを相関させる。一部の実施形態では、相関処理を行う前に、複雑性解析器220は、各QP255についてのPSNR値および/または対応するビットレートの平均値を求める。より具体的には、QP255について、複雑性解析器220は、QP255での一定QP符号化235の符号化中に4つのサンプル215について取得された4つのPSNR値にわたる平均値および4つのビットレートにわたる平均値を求める。
図示されるように、複雑性解析器220は、決定された相関を反映するPSNRグラフ255を生成する。動作において、複雑性解析器220は、一定QP符号化235についてのビットレートに対してPSNR値をプロットし、次に、曲線近似処理を行って曲線方程式を生成する。別の実施形態では、PSNRグラフ255の代わりに、複雑性解析器220は、一定QP符号化235と関連づけられた統計に基づいて、PSNR変数およびビットレート変数を含む方程式を生成する。一般的に、本発明の実施形態は、一定QP符号化255の品質とビットレートとの間の推定される関係を決定するために、PSNRの代わりに、任意の技術的に実行可能な技術および/または任意の品質測定を用いてよい。
ソースに合わせたビットレートラダーを割り当てる
バケット化部260は、ソースに合わせたビットレートラダー135を生成するために、複雑性バケット132およびビットレートラダー134に関して、PSNRグラフ255を評価する。より具体的には、バケット化部260は、PSNRグラフ255に基づいて、複雑性バケット化ビットレートを決定する。複雑性バケット化ビットレートとは、PSNRグラフ255のPSNR値が、所定の低歪み閾値に等しくなるビットレートである。その結果、複雑性バケット化ビットレートは、ソースデータ105と比較した符号化データ145の歪みが所定の低歪み閾値に一致する、推定されたビットレートである。所定の低歪み閾値は、複雑性バケット132およびビットレートラダー134と調和する様々な発見的および実験による技術のうちの任意のものを用いて割り当てられ得る。
一般的に、バケット化部260は、任意の技術的に実行可能な方法で、複雑性バケット化ビットレートを決定してよい。例えば、バケット化部260は、PSNRグラフ255の曲線と所定の低歪み閾値の一定のPSNR値に対応する線との交点を識別し得る。別の実施形態では、バケット化部260は、PSNR/ビットレート方程式のPSNR変数を所定の低歪み閾値に設定して、ビットレート変数のその値について、PSNR/ビットレート方程式を解いてもよい。
次に、バケット化部260は、複雑性バケット化ビットレートを複雑性バケット132のビットレート範囲と比較して、包含的な複雑性バケット132を選択する。次に、バケット化部260は、ソースに合わせたビットレートラダー135を、選択された複雑性バケット132に対応するビットレートラダー134に設定する。このようにして、ソースに合わせたビットレートラダー135は、ソース105の推定された複雑性に基づいて変化する。単一のビットレートラダーに依拠する従来の技術とは異なり、このカテゴリー化処理は、ソース105のそれぞれ異なる複雑性にわたってリソース/品質のトレードオフを最適化するので有利である。
図3は、本発明の一実施形態による、図2の符号化ビットレートラダー選択器130によって実装される複雑性バケット132およびビットレートラダー134の概念図である。図示されるように、複雑性バケット132は、41デシベル(dB)に等しいPSNR値の低相関閾値におけるビットレートに基づく3つの異なる分類を含む。PSNR値が40dBより大きい場合には、符号化データ145は、一般的に、ソースデータ105と比較して非常に低い歪みであると見なされることが、当業者には認識されよう。別の実施形態は、任意の数の分類および任意の低相関閾値を含み得る。
PSNRグラフ255に基づいて、バケット化部260は、複雑性バケット化ビットレート(R)(41dBのPSNR値に対応する曲線のビットレート値)を決定する。図示されるように、複雑性バケット132は、低複雑性バケット132、中複雑性バケット132、および高複雑性バケット132を含む。複雑性バケット化ビットレートが1750キロビット/秒(kbps)未満である場合には、バケット化部260は、ソースデータ135を低複雑性バケット132に割り当てる。複雑性バケット化ビットレートが1750kbps〜4300kbpsである場合には、バケット化部260は、ソースデータ135を中複雑性バケット132に割り当てる。複雑性バケット化ビットレートが少なくとも4300kbpsである場合には、バケット化部260は、ソースデータ135を高複雑性バケット132に割り当てる。
図示されるように、各複雑性バケット132は、ビットレートラダー134のうちのそれぞれ異なる1つと関連づけられている。ビットレート/解像度の対は、各ビットレートラダー134の横木を定める。更に、各横木は、符号化処理中にエンコーダ140が用いるアルゴリズムの複雑性を特定するプロファイルを含む。各横木の値および横木の数は、各複雑性バケット132について調整される。複雑性バケット132およびビットレートラダー134は共に、リソースの改善と品質の改善とのトレードオフを最適化するよう設計される。例えば、低複雑性ソースについては、最大の知覚可能な視覚的品質は、3000kbps前後のビットレートにおいて達成される。より高いビットレートでの符号化は、視覚的品質を顕著に高めることなく、リソースの無駄となるので、低複雑性ビットレートラダー134の最も高い横木は3000kbpsにあり、その結果、エンコーダ140は、3000kbpsの最大ビットレートを有する符号化データ145を生成する。
図4は、本発明の一実施形態による、図2の複雑性解析器220によって構築された、単純なソースについてのピークS/N比(PSNR)曲線400の概念図である。図示されるように、複雑性バケット化ビットレート410(即ち、41dBに等しいPSNR値である低相関閾値における曲線のビットレート)は600kbpsである。より具体的には、水平方向の点線は、41dBに等しいPSNR値を有する一定の線を示している。水平方向の点線は、「x」として示されている複雑性バケット化ビットレート410において、単純なソースについてのPSNR曲線400と交差する。複雑性バケット化ビットレート410から(垂直方向の点線に沿って)垂直方向に下に辿ると、複雑性バケット化ビットレート410が600kbpsにおいてビットレート軸と交差することが示されている。
再び図3を参照すると、600kbpsのビットレートに基づいて、バケット化部260は、ソースデータ105を低複雑性バケット132に割り当て、ソースに合わせたビットレートラダー135を、それに対応する低複雑性ビットレートラダー134に設定する。特に、ビットレートラダー134を実装することは、最も高い符号化解像度およびビットレートがそれぞれ1080pおよび3000kbps(低複雑性ビットレートラダー134の最も高い横木)であることを確実にする。中複雑性ビットレートラダー134のより高い符号化解像度およびビットレート(例えば、1080pの解像度および4300kbpsのビットレート等)の横木は、単純なソースデータ105については更なる品質の利得を提供しないので、符号化解像度およびビットレートを制限することは、品質に影響することなくリソースを節約するので有利である。
図5は、本発明の一実施形態による、図2の複雑性解析器によって構築された、複雑なソースについてのピークS/N比(PSNR)曲線の概念図である。図示されるように、複雑性バケット化ビットレート410(即ち、41dBに等しいPSNR値である低相関閾値における曲線のビットレート)は6000kbpsである。より具体的には、水平方向の点線は、41dBに等しいPSNR値を有する一定の線を示している。この水平方向の点線は、「x」として示されている複雑性バケット化ビットレート410において、複雑なソースについてのPSNR曲線500と交差する。複雑性バケット化ビットレート410から(垂直方向の点線に沿って)垂直方向に下に辿ると、複雑性バケット化ビットレート410は、6000kbpsにおいてビットレート軸と交差することが示されている。
再び図3を参照すると、6000kbpsのビットレートに基づいて、バケット化部260は、ソースデータ105を高複雑性バケット132に割り当て、ソースに合わせたビットレートラダー135を、それに対応する高複雑性ビットレートラダー134に設定する。特に、ビットレートラダー134を実装することは、最大解像度1080pおよび最大ビットレート7500mbpsでソースデータ105を符号化するようエンコーダ140を構成する。ソースデータ105は比較的複雑なので、そのようなトレードオフは、利用可能なリソースを用いた顕著な品質の改善を可能にする。それとは対照的に、ソースに合わせたビットレートラダー135を中複雑性ビットレートラダー134にした場合には、符号化ビットレートは、5800mbpsまでに不必要に制限されることになる。
図6は、本発明の一実施形態による、ビデオソースデータを符号化しつつ、ビットレートラダーを選択および実装する方法のステップのフロー図である。この方法のステップは、図1〜図5のシステムを参照して説明されるが、この方法のステップを任意の順序で実装するよう構成された任意のシステムが本発明の範囲に含まれることが、当業者には理解されよう。単に議論を進める目的で、この図6の説明では、低歪み閾値、QP225、ビットレートラダー134、および複雑性バケット132は、任意の技術的に実行可能な方法で予め決定されているものとする。
図示されるように、方法600は、ステップ604において開始し、ここで、符号化ビットレートラダー選択器130はソースデータ105を受信し、サンプル抽出器210はソースデータ105をN個のセグメントに分割する(ここで、Nは任意の正の整数である)。ステップ606において、N個のセグメントの各々について、サンプル抽出器210は、セグメントの中点に中心合わせされた固定的な長さのサンプル215を選択する。得られたN個のサンプル215は、ソースデータ105に対する代理としての役割をし、ソースデータ105の複雑性を分類するために評価されるデータの合計量を制限することによって、解析時間を低減するので有利である。
複雑性解析器220は、サンプル215を受信して、M個の所定の一定のQP225にわたって固定的な解像度でサンプル215の固定的QP符号化を行うようエンコーダ140を構成する。ステップ608において、複雑性解析器220は、(N*M)個の各一定QP符号化235について、PSNR値を決定する。一部の実施形態では、複雑性解析器220は、一定QP符号化235のPSNR値を測定するようエンコーダ140を構成する。一般的に、本発明の実施形態は、PSNRを任意の品質指標と置き換えてもよく、この場合、測定および算出は、それに従って変更される。
ステップ610において、複雑性解析器220は、各一定QP符号化235について、対応するビットレート値を決定する。複雑性解析器220は、任意の技術的に実行可能な方法で、各一定QP符号化235のビットレートを決定する。一部の実施形態では、複雑性解析器220は、一定QP符号化235のサイズ(即ち、ファイルサイズ)を一定QP符号化235の持続時間によって除算することにより(即ち、フレーム数/1秒間当たりのフレーム数)、ビットレートを算出する。
ステップ614において、複雑性解析器220は、PSNR値とそれに対応するビットレートとを関係づける最良の近似曲線を含むPSNRグラフ255を生成する。別の実施形態では、PSNRグラフ255の代わりに、複雑性解析器220は、一定QP符号化235と関連づけられた統計に基づいて、PSNR変数およびビットレート変数を含む方程式を生成する。一般的に、本発明の実施形態は、技術的に実現可能な任意の技術を用いて、一定QP符号化255の品質とビットレートとの間の推定された関係を決定し得る。
ステップ616において、バケット化部260は、PSNRグラフ255を評価して、複雑性バケット化ビットレート410を決定する。なお、バケット化部260は、複雑性バケット化ビットレート410を、PSNRグラフ255中の、PSNR値が所定の低歪み閾値に等しくなるビットレートの値に設定する。次に、バケット化部260は、複雑性バケット化ビットレート410を含むビットレートの範囲に対応する複雑性バケット132を選択する。ステップ618において、バケット化部260は、選択された複雑性バケット132に対応するビットレートラダー134を選択する。ステップ620において、バケット化部260は、ソースに合わせたビットレートラダー135を、選択されたビットレートラダー134に設定し、方法600は終了する。
特に、ソースに合わせたビットレートラダー135は、ソースデータ105と同等の複雑性のソースデータについて、符号化ビットレートおよび解像度を最適化するよう調整される。例えば、再び図3を参照すると、比較的単純なソースデータ105については、ソースに合わせたビットレートラダー135は、顕著な品質の改善を提供しない3000kbpsより高いビットレートの横木を含まない。それとは対照的に、比較的複雑なソースデータ105については、ソースに合わせたビットレートラダー135は、リソース(例えば、メモリおよび帯域幅等)を使うことで品質の向上を提供する7500kbpsのビットレートの横木を含む。
要約すると、本開示の技術は、ソースデータを符号化するために最適化されたビットレートラダー(即ち、ビットレートと解像度との対)を効率的に選択するために用いられ得る。動作において、ソースインスペクタは、ソースデータから「N」個の分散したサンプルセグメントを抽出する。各サンプルセグメントについて、複雑性解析器は、量子化パラメータの「M」個の異なる値にわたって固定的量子化パラメータ符号化を行うようエンコーダを構成する。次に、複雑性解析器は、(N*M)個の符号化データセグメントについて、PSNRとビットレートとの間の関係を反映するピークS/N比(PSNR)曲線の方程式を生成する。
次に、バケット化部は、この方程式のPSNR変数を、許容可能な歪みのレベルを表す所定の値に設定し、この方程式を解いてバケット化ビットレートを取得する。バケット化ビットレートに基づいて、バケット化部は、ソースデータを、複数の複雑性バケット(各複雑性バケットは、特定の複雑性のソースデータについて許容可能な歪みのレベルを達成するビットレート範囲にわたる)のうちの1つに割り当てる。例えば、1つのバケットは単純なソースデータ(例えば、アニメーション等)を表し、別のバケットは複雑なソースデータ(例えば、詳細なアクション映画等)を表し得る。特に、各複雑性バケットは、対応する複雑性のソースデータの符号化を最適化するよう経験的に決定されたビットレートラダーと関連づけられている。
複雑性バケットを鋭敏に生成して、適切な複雑性バケットのビットレートラダーを用いて各ソースデータを符号化することは、異なる複雑性のソースデータについての符号化を最適化するので有利である。より具体的には、本開示の技術は、ソースの複雑性に合わせてビットレートラダーを調整するので、バケット化は、符号化品質と符号化リソース(例えば、帯域幅およびストレージ等)との間の賢明なトレードオフを可能にする。それとは対照的に、単一のビットレートラダーに依拠する従来の符号化処理は、しばしば、許容できない低品質の符号化を生じるか、または、思慮深く推定された知覚可能な品質の違いに基づいて符号化リソースの使用を増減する機会を効果的に利用しない。
説明の目的で、様々な実施形態の説明を示したが、これらは網羅的であることを意図したものではなく、開示された実施形態に限定することは意図しない。当業者には、記載された実施形態の範囲および趣旨から逸脱することなく、多くの修正および変形が自明である。
本実施形態の態様は、システム、方法、またはコンピュータプログラム製品として具現化され得る。従って、本開示の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウエア、常駐ソフトウェア、マイクロコード等を含む)、または、ソフトウェアおよびハードウェアの態様を組み合わせた実施形態の形態をとり得るものであり、それらの全てを、本明細書においては一般的に「回路」、「モジュール」、または「システム」と称する。更に、本開示の態様は、具現化されたコンピュータ可読プログラムコードを有する1以上のコンピュータ可読媒体において具現化されたコンピュータプログラム製品の形態をとり得る。
1以上のコンピュータ可読媒体の任意の組合せが用いられ得る。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であり得る。コンピュータ可読記憶媒体は、例えば、電子、磁気、光、電磁、赤外線、もしくは半導体のシステム、装置、もしくはデバイス、またはそれらの任意の適切な組合せであり得るが、それらに限定されない。コンピュータ可読記憶媒体のより具体的な例(網羅的ではないリスト)としては、1以上のワイヤを有する電気的接続、ポータブルコンピュータのディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラマブル読み出し専用メモリ(EPROMもしくはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み出し専用メモリ(CD−ROM)、光ストレージ装置、磁気ストレージ装置、またはそれらの任意の適切な組合せが挙げられる。本明細書の文脈において、コンピュータ可読記憶媒体は、指示を実行するシステム、装置、またはデバイスによって用いられる、またはそれらに関連して用いられるプログラムを収容または格納可能な、任意の有体の媒体であり得る。
上記において、本開示の態様を、本開示の実施形態による方法、装置(システム)およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照して説明した。フローチャートおよび/またはブロック図の各ブロック、並びに、フローチャートおよび/またはブロック図のブロックの組合せは、コンピュータプログラムの指示によって実装され得ることが理解されよう。これらのコンピュータプログラム指示は、汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに供給されてマシンを生成し得るものであり、そのコンピュータまたは他のプログラマブルデータ処理装置のプロセッサによって実行される指示が、フローチャートおよび/またはブロック図の1または複数のブロックにおいて指定されている機能/動作の実装を可能にするようになっている。そのようなプロセッサは、汎用プロセッサ、専用プロセッサ、特定用途向けプロセッサ、またはフィールドプログラマブルプロセッサであり得るが、それらに限定されない。
図面中のフローチャートおよびブロック図は、本開示の様々な実施形態によるシステム、方法、およびコンピュータプログラム製品の可能な実装のアーキテクチャ、機能、および処理を示すものである。この点に関して、フローチャートまたはブロック図の各ブロックは、指定されている論理的機能を実装するための1以上の実行可能な指示を含むモジュール、セグメント、またはコードの一部を表し得る。なお、幾つかの別の実装例においては、ブロック内に記されている機能が、図面に記されている順序から外れて生じ得る。例えば、続けて示されている2つのブロックが、含まれる機能に応じて、実際には略並列に実行される場合もあり、または、それらのブロックが逆の順序で実行される場合もある。また、ブロック図および/またはフローチャートの各ブロック、並びに、ブロック図および/またはフローチャートのブロックの組合せは、指定されている機能もしくは動作を行う専用ハードウェアに基づくシステムによって、または、専用ハードウェアとコンピュータ指示との組合せによって実装され得る。
上記は本開示の実施形態に向けられているが、本開示の基本的な範囲から逸脱することなく、本開示の他のおよび更なる実施形態も考案され得るものであり、本開示の範囲は添付の特許請求の範囲によって決定される。
100 システム
105 ソースデータ
110 ソースインスペクタ
130 符号化ビットレートラダー選択器
132 複雑性バケット
134 ビットレートラダー
135 ソースに合わせたビットレートラダー
140 エンコーダ
145 符号化データ
210 サンプル抽出器
215 サンプル
220 複雑性解析器
225 量子化パラメータ(QP)
235 一定QP符号化
255 ピークS/N比(PSNR)グラフ
260 バケット化部
410 複雑性バケット化ビットレート

Claims (20)

  1. コンピュータによって実施される、ソースデータを符号化するためのビットレートラダーを選択する方法であって、
    量子化パラメータについて、1組のパラメータ値を選択する工程と、
    各前記パラメータ値について、前記量子化パラメータを前記パラメータ値に保ちつつ、ソースデータを符合化して1組の符合化データを生成するためのエンコーダを構成する工程と、
    各前記1組の符合化データについて、ビデオ品質指標の値およびそれに対応するビットレートを決定する工程と、
    前記ビデオ品質指標と前記対応するビットレートとの間の関係を導出する工程と、
    前記関係に基づいて、前記ビデオ品質指標が所定の閾値に等しくなるバケット化ビットレートを決定する工程と、
    前記バケット化ビットレートに基づいて、前記ソースデータを符号化するためのビットレートラダーを選択する工程と
    を含むことを特徴とする方法。
  2. 前記量子化パラメータを所与のパラメータ値に保ちつつ、前記ソースデータを符合化するための前記エンコーダを構成する前記工程が、前記符号化データに含める信号の詳細の量を設定することを含む、請求項1記載のコンピュータによって実施される方法。
  3. 前記1組のパラメータ値を選択する前記工程が、精度の制約および複雑性の制約の両方を満たす信号の詳細の量を選択することを含む、請求項1記載のコンピュータによって実施される方法。
  4. 前記ビデオ品質指標の値を決定する前記工程が、ピークS/N比を識別することを含む、請求項1記載のコンピュータによって実施される方法。
  5. 前記ビデオ品質指標の値を決定する前記工程が、画質評定を算出することを含む、請求項1記載のコンピュータによって実施される方法。
  6. 前記1組の符合化データについて、前記対応するビットレートを決定する前記工程が、前記1組の符合化データと関連づけられたサイズおよび前記1組の符合化データのプレイアウト継続時間と関連づけられた時間の量に基づく除算演算を行うことを含む、請求項1記載のコンピュータによって実施される方法。
  7. 前記ビットレートラダーを選択する前記工程が、前記バケット化ビットレートが複雑性バケットのビットレート範囲内であることを決定することと、前記複雑性バケットと関連づけられたビットレートラダーを識別することとを含む、請求項1記載のコンピュータによって実施される方法。
  8. 前記関係が曲線であり、前記関係を導出する前記工程が、前記1組の符合化データに1以上の曲線近似処理を適用することを含む、請求項1記載のコンピュータによって実施される方法。
  9. 前記エンコーダを構成する前記工程の前に、前記ソースデータから複数のサンプルを抽出する工程を更に含み、前記エンコーダが、前記複数のサンプルと関連づけられた信号の詳細に基づいて、複数の組の前記符号化データを生成する、請求項1記載のコンピュータによって実施される方法。
  10. ソースデータを符号化するためのビットレートラダーを選択させる指示であって、処理装置によって実行された際に、前記処理装置に、
    量子化パラメータについて、1組のパラメータ値を選択する工程と、
    各前記パラメータ値について、前記量子化パラメータを前記パラメータ値に保ちつつ、ソースデータを符合化して1組の符合化データを生成するためのエンコーダを構成する工程と、
    各前記1組の符合化データについて、ビデオ品質指標の値およびそれに対応するビットレートを決定する工程と、
    前記ビデオ品質指標と前記対応するビットレートとの間の関係を導出する工程と、
    前記関係に基づいて、前記ビデオ品質指標が所定の閾値に等しくなるバケット化ビットレートを決定する工程と、
    前記バケット化ビットレートに基づいて、前記ソースデータを符号化するためのビットレートラダーを選択する工程と
    を行わせることによって、ソースデータを符号化するためのビットレートラダーを選択させる指示を含むことを特徴とするコンピュータ可読記憶媒体。
  11. 前記量子化パラメータを所与のパラメータ値に保ちつつ、ソースデータを符合化するための前記エンコーダを構成する前記工程が、前記符号化データに含める信号の詳細の量を設定することを含む、請求項10記載のコンピュータ可読記憶媒体。
  12. 前記エンコーダを構成する前記工程の前に、歪みの最大許容量に対応するよう前記所定の閾値を設定する工程を更に含む、請求項10記載のコンピュータ可読記憶媒体。
  13. 前記ビデオ品質指標の値を決定する前記工程が、ピークS/N比を識別することを含む、請求項10記載のコンピュータ可読記憶媒体。
  14. 前記ビデオ品質指標の値を決定する前記工程が、前記エンコーダによって生成されたログファイルに対して1以上の読み出し処理を行うことを含む、請求項10記載のコンピュータ可読記憶媒体。
  15. 前記1組の符合化データについて、前記対応するビットレートを決定する前記工程が、前記エンコーダによって生成されたログファイルに対して1以上の読み出し処理を行うことを含む、請求項10記載のコンピュータ可読記憶媒体。
  16. 前記ビットレートラダーを選択する前記工程が、前記バケット化ビットレートが複雑性バケットのビットレート範囲内であることを決定することと、前記複雑性バケットと関連づけられたビットレートラダーを識別することとを含む、請求項10記載のコンピュータ可読記憶媒体。
  17. 前記関係が方程式である、請求項10記載のコンピュータ可読記憶媒体。
  18. 前記エンコーダを構成する前記工程の前に、前記ソースデータから複数のクリップを抽出する工程を更に含み、前記エンコーダが、前記複数のクリップと関連づけられた信号の詳細に基づいて、複数の組の前記符号化データを生成し、各前記クリップが所定の長さの時間を表す、請求項10記載のコンピュータ可読記憶媒体。
  19. ソースデータを符号化するためのビットレートラダーを選択するよう構成されたシステムにおいて、
    検証ジェネレータであって、
    量子化パラメータについて、1組のパラメータ値を選択し、
    各前記パラメータ値について、前記量子化パラメータを前記パラメータ値に保ちつつ、ソースデータを符合化して1組の符合化データを生成するためのエンコーダを構成し、
    各前記1組の符合化データについて、ビデオ品質指標の値およびそれに対応するビットレートを決定し、
    前記ビデオ品質指標と前記対応するビットレートとの間の関係を導出し、
    前記関係に基づいて、前記ビデオ品質指標が所定の閾値に等しくなるバケット化ビットレートを決定し、
    前記バケット化ビットレートに基づいて、前記ソースデータを符号化するためのビットレートラダーを選択する
    よう構成された検証ジェネレータと、
    前記ビットレートラダーを実装するよう構成された符号化エンジンと
    を含むことを特徴とするシステム。
  20. 前記量子化パラメータを所与のパラメータ値に保ちつつ、ソースデータを符合化するための前記エンコーダを構成する前記工程が、前記符号化データに含める信号の詳細の量を設定することを含む、請求項19記載のシステム。
JP2017549016A 2015-03-30 2016-03-10 符号化中にビットレートおよび解像度を最適化する技術 Active JP6706269B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/673,621 2015-03-30
US14/673,621 US10404986B2 (en) 2015-03-30 2015-03-30 Techniques for optimizing bitrates and resolutions during encoding
PCT/US2016/021649 WO2016160295A1 (en) 2015-03-30 2016-03-10 Techniques for optimizing bitrates and resolutions during encoding

Publications (3)

Publication Number Publication Date
JP2018513604A true JP2018513604A (ja) 2018-05-24
JP2018513604A5 JP2018513604A5 (ja) 2020-01-09
JP6706269B2 JP6706269B2 (ja) 2020-06-03

Family

ID=55642860

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017549016A Active JP6706269B2 (ja) 2015-03-30 2016-03-10 符号化中にビットレートおよび解像度を最適化する技術

Country Status (9)

Country Link
US (1) US10404986B2 (ja)
EP (1) EP3278561B1 (ja)
JP (1) JP6706269B2 (ja)
KR (1) KR102183513B1 (ja)
CN (1) CN107439016B (ja)
AU (2) AU2016243988B2 (ja)
CA (1) CA2979680C (ja)
MX (1) MX367388B (ja)
WO (1) WO2016160295A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022518234A (ja) * 2019-01-17 2022-03-14 ブライトコーブ インコーポレイテッド 最適なマルチコーデックabrラダー設計
WO2022185534A1 (ja) * 2021-03-05 2022-09-09 日本電信電話株式会社 符号化パラメータ導出装置、符号化パラメータ導出方法及びプログラム

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10349104B2 (en) * 2015-08-19 2019-07-09 Ericsson Ab System and method for managing segment delivery and bandwidth responsive to encoding complexity metrics
US10547856B2 (en) * 2016-10-18 2020-01-28 Netflix, Inc. Constant-slope bitrate allocation for distributed encoding
US11363322B2 (en) * 2016-12-01 2022-06-14 Brightcove, Inc. Optimization of encoding profiles for media streaming
JP6922341B2 (ja) * 2017-03-31 2021-08-18 日本電気株式会社 画像符号化装置、画像符号化方法及びプログラム
GB2595029B (en) 2017-04-21 2022-02-09 Zenimax Media Inc Systems and methods for rendering & pre-encoded load estimation based encoder hinting
WO2019105535A1 (en) 2017-11-28 2019-06-06 Opticom Dipl.-Ing. Michael Keyhl Gmbh Device and method for providing an encoded version of a media signal
US10887609B2 (en) * 2017-12-13 2021-01-05 Netflix, Inc. Techniques for optimizing encoding tasks
CA3028701A1 (en) 2017-12-28 2019-06-28 Comcast Cable Communications, Llc Content-aware predictive bitrate ladder
FR3078798B1 (fr) * 2018-03-12 2021-04-30 Ateme Procede de selection de profils d'encodage d'un contenu multimedia pour une diffusion a la demande
US10616590B1 (en) * 2018-05-16 2020-04-07 Amazon Technologies, Inc. Optimizing streaming video encoding profiles
US11695978B2 (en) 2018-07-05 2023-07-04 Mux, Inc. Methods for generating video-and audience-specific encoding ladders with audio and video just-in-time transcoding
US11343492B2 (en) * 2019-03-15 2022-05-24 Mux, Inc. Method for generating video- and audience-specific encoding ladders
US11128869B1 (en) * 2018-10-22 2021-09-21 Bitmovin, Inc. Video encoding based on customized bitrate table
CN113168838A (zh) * 2018-11-02 2021-07-23 杜比国际公司 音频编码器及音频解码器
CN110536168B (zh) * 2019-09-11 2021-09-17 北京达佳互联信息技术有限公司 视频上传方法、装置、电子设备及存储介质
US10897654B1 (en) 2019-09-30 2021-01-19 Amazon Technologies, Inc. Content delivery of live streams with event-adaptive encoding
BR112022007211A2 (pt) * 2019-11-14 2022-07-05 Intel Corp Aparelho, método e sistema para codificação adaptativa de quadros de vídeo com o uso de análise de conteúdo e rede
US11962781B2 (en) * 2020-02-13 2024-04-16 Ssimwave Inc. Video encoding complexity measure system
US10958947B1 (en) 2020-03-12 2021-03-23 Amazon Technologies, Inc. Content delivery of live streams with playback-conditions-adaptive encoding
US11503302B2 (en) 2020-05-19 2022-11-15 Home Box Office, Inc. Content adaptive encoding
US11190826B1 (en) 2020-06-25 2021-11-30 Disney Enterprises, Inc. Segment quality-guided adaptive stream creation
CN113938682A (zh) * 2020-06-29 2022-01-14 北京金山云网络技术有限公司 视频编码方法、装置和电子设备
US11277620B1 (en) 2020-10-30 2022-03-15 Hulu, LLC Adaptive transcoding of profile ladder for videos
US11902599B2 (en) * 2020-12-09 2024-02-13 Hulu, LLC Multiple protocol prediction and in-session adaptation in video streaming
US11729438B1 (en) * 2021-01-28 2023-08-15 Amazon Technologies, Inc. Optimizing streaming video encoding profiles
US11743313B2 (en) * 2021-09-17 2023-08-29 Comcast Cable Communications, Llc Methods, systems, and apparatuses for adaptive bitrate ladder construction based on dynamically adjustable neural networks
US11700376B1 (en) 2021-09-28 2023-07-11 Amazon Technologies, Inc. Optimizing and assigning video encoding ladders
US20240305788A1 (en) * 2023-03-06 2024-09-12 Beijing Hulu Software Technology Development Co., Ltd. Prediction of rate distortion curves for video encoding
US20240305842A1 (en) * 2023-03-06 2024-09-12 Beijing Hulu Software Technology Development Co., Ltd. Dynamic selection of candidate bitrates for video encoding

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09121348A (ja) * 1995-05-08 1997-05-06 Toshiba Corp ビデオ符号化方法および速度量子化モデルを利用して符号化を行うシステム
US20120147958A1 (en) * 2010-12-10 2012-06-14 Ronca David R Parallel Video Encoding Based on Complexity Analysis

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7646816B2 (en) * 2001-09-19 2010-01-12 Microsoft Corporation Generalized reference decoder for image or video processing
US8743954B1 (en) 2008-02-01 2014-06-03 Zenverge, Inc. Architecture for adjusting bit rate based on measured quality
KR101033442B1 (ko) 2008-06-12 2011-05-09 주식회사 몬도시스템즈 영상 처리 시스템에서 비트 레이트를 제어하는 장치 및방법
EP2430836B1 (en) 2009-05-16 2016-08-17 Thomson Licensing Methods and apparatus for improved quantization rounding offset adjustment for video encoding
US8767825B1 (en) 2009-11-30 2014-07-01 Google Inc. Content-based adaptive video transcoding framework
CN105187835B (zh) 2014-05-30 2019-02-15 阿里巴巴集团控股有限公司 基于内容的自适应视频转码方法及装置
US20160234496A1 (en) 2015-02-09 2016-08-11 Qualcomm Incorporated Near visually lossless video recompression

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09121348A (ja) * 1995-05-08 1997-05-06 Toshiba Corp ビデオ符号化方法および速度量子化モデルを利用して符号化を行うシステム
US20120147958A1 (en) * 2010-12-10 2012-06-14 Ronca David R Parallel Video Encoding Based on Complexity Analysis

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FABIO SONNATI: "Encoding for performance on multiple devices", [ONLINE], JPN7018003570, 5 October 2011 (2011-10-05), ISSN: 0004094090 *
G. HERVOUET ET.AL.: "Video Quality Optimization - Multi-rate Video Encoding", [ONLINE], JPN7018003571, 1 July 2010 (2010-07-01), ISSN: 0004094091 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022518234A (ja) * 2019-01-17 2022-03-14 ブライトコーブ インコーポレイテッド 最適なマルチコーデックabrラダー設計
JP7549581B2 (ja) 2019-01-17 2024-09-11 ブライトコーブ インコーポレイテッド 最適なマルチコーデックabrラダー設計
WO2022185534A1 (ja) * 2021-03-05 2022-09-09 日本電信電話株式会社 符号化パラメータ導出装置、符号化パラメータ導出方法及びプログラム
JP7525045B2 (ja) 2021-03-05 2024-07-30 日本電信電話株式会社 符号化パラメータ導出装置、符号化パラメータ導出方法及びプログラム

Also Published As

Publication number Publication date
AU2016243988B2 (en) 2019-02-07
MX367388B (es) 2019-08-19
EP3278561A1 (en) 2018-02-07
CN107439016A (zh) 2017-12-05
CA2979680C (en) 2020-10-27
MX2017012446A (es) 2018-01-26
KR20170131605A (ko) 2017-11-29
AU2019203178A1 (en) 2019-05-30
CN107439016B (zh) 2020-03-20
AU2016243988A1 (en) 2017-10-05
CA2979680A1 (en) 2016-10-06
US10404986B2 (en) 2019-09-03
US20160295216A1 (en) 2016-10-06
WO2016160295A1 (en) 2016-10-06
EP3278561B1 (en) 2020-07-22
JP6706269B2 (ja) 2020-06-03
KR102183513B1 (ko) 2020-11-26

Similar Documents

Publication Publication Date Title
JP6706269B2 (ja) 符号化中にビットレートおよび解像度を最適化する技術
KR102110022B1 (ko) 지각 비디오 품질을 예측하기 위한 기술
KR102214284B1 (ko) 분산된 인코딩을 위한 일정-기울기 비트레이트 할당
US8295343B2 (en) Video bit rate control method
US10735024B2 (en) Data processing apparatuses, methods, computer programs and computer-readable media
TWI761336B (zh) 視訊編解碼器之複雜度控制
CN113132757B (zh) 数据处理方法和装置
US11979587B2 (en) Hybrid inter-frame coding using an autoregressive model

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171102

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181024

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190320

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190814

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20191114

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20191120

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200415

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200515

R150 Certificate of patent or registration of utility model

Ref document number: 6706269

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250