JP5095819B2 - 時間最適化されたエンコードのためのシステムおよび方法 - Google Patents

時間最適化されたエンコードのためのシステムおよび方法 Download PDF

Info

Publication number
JP5095819B2
JP5095819B2 JP2010512130A JP2010512130A JP5095819B2 JP 5095819 B2 JP5095819 B2 JP 5095819B2 JP 2010512130 A JP2010512130 A JP 2010512130A JP 2010512130 A JP2010512130 A JP 2010512130A JP 5095819 B2 JP5095819 B2 JP 5095819B2
Authority
JP
Japan
Prior art keywords
scene
encoding
scenes
video content
length
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.)
Active
Application number
JP2010512130A
Other languages
English (en)
Other versions
JP2010529809A (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.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of JP2010529809A publication Critical patent/JP2010529809A/ja
Application granted granted Critical
Publication of JP5095819B2 publication Critical patent/JP5095819B2/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/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/127Prioritisation of hardware or computational resources
    • 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/142Detection of scene cut or scene change
    • 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/177Methods 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 a group of pictures [GOP]
    • 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/179Methods 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 a scene or a shot
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • H04N19/194Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive involving only two passes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements

Landscapes

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

Description

本発明は、概括的にはビデオ・コンテンツのエンコードに、より詳細にはビデオ・コンテンツの時間最適化されたエンコードに関する。
このセクションは、下記で記載および/または特許請求される本発明のさまざまな側面に関係しうる当技術分野のさまざまな側面を読者に紹介することを意図している。この議論は、本発明のさまざまな側面のよりよい理解を助けるための背景情報を読者に提供する助けとなるものと思われる。よって、これらの陳述がこの観点で読まれるべきであり、従来技術の自認として読まれるべきでないことは理解しておくべきである。
過去において、ビデオ・エンコード工程は、単一のエンコード・ハードウェアによって扱われるリニアなプロセスであった。エンコード・ハードウェアにおいて使用されるコーデックが単純であり、合理的な時間内にエンコードを完了したので、この実装は十分であった。ビデオをより効果的に圧縮してビットレート効率を改善し、より優れたビデオ品質を与えるために先進ビデオ・コーデック(AVC)のような新しい世代のビデオ・コーデックが開発されるに至っている。しかしながら、新しいビデオ・コーデックには、数学的に計算量集約的であり、したがって望ましくないほどビデオ・エンコードに必要とされる時間を増大させるという欠点がある。
さらに、コーデックに複数のエンコード・パスに従事させることによってエンコードの品質を改善しようとする進行中の努力もある。より具体的には、コーデックに、複数のエンコード・パスを通じてコンテンツを通させ、コンテンツを解析させるのである。それらのパスが互いに依存し合う場合、各パスは前のパスが完了するのを待つ必要がある。これは、マルチパス・エンコードを完了させるのに必要とされる時間を増し、結果として、望ましくないほどビデオ・エンコードに必要とされる時間を増すという欠点がある。
本開示は、これらの欠点を克服することに向けられたものである。
本開示は、時間最適化されたエンコードのためのシステムおよび方法に向けられる。時間最適化されたエンコードは、時間集約的なエンコードを、エンコード品質の犠牲を最小限または全くなしにして並列化することによって複数のエンコード・ノードまたはクラスターの使用を最大化する。それにより、時間集約的なエンコードを達成するために必要とされる時間を短縮し、システムを通じた複数のエンコードの効率的なスループットを高める。
本開示の一つの側面は、ビデオ・コンテンツをエンコードする方法であって、ビデオ・コンテンツを受領し、ビデオ・コンテンツを複数のシーンにセグメント分割し、あるシーンが第一の限界を超える長さをもつかどうかを検出し、前記シーンの長さが前記第一の限界を超えていれば前記シーンをシーン・セグメントに分割し、分割されたシーンを並列にエンコードすることを含む方法に向けられる。
本開示のもう一つの側面は、ビデオ・コンテンツをエンコードするための装置またはシステムに向けられ、該装置は、ビデオ・コンテンツを受領する手段と、ビデオ・コンテンツを複数のシーンにセグメント分割する手段と、あるシーンが第一の限界を超える長さをもつかどうかを検出する手段と、前記シーンの長さが前記第一の限界を超えていれば前記シーンをシーン・セグメントに分割する手段と、分割されたシーンを並列にエンコードする手段とを含む。
本発明のこれらおよびその他の側面、特徴および利点は、付属の図面との関連で読まれるべき好ましい実施形態の以下の詳細な記述から説明され、明白となるであろう。
図面において、同様の参照符号は諸図面を通じて類似の要素を表す。
図面は本発明の概念を例解する目的のためであり、必ずしも本発明を例解するための唯一の可能な構成ではないことは理解しておくべきである。
本開示に基づくエンコーダを使った例示的なシステムを図示するブロック図である。 本開示に基づく例示的なエンコーダ装置のブロック図である。 従来式のエンコード作業フローを示す図である。 本開示に基づくエンコード作業フローを示す図である。 本開示に基づく映画コンテンツのシーンを示す図である。 本開示に基づくあるシーン内のピクチャー・グループ(GOP)のサイズおよび型を示す図である。 本開示に基づくエンコード・プロセスを示すフローチャートである。
図面に示されている要素はハードウェア、ソフトウェアまたはそれらの組み合わせのさまざまな形で実装されうることは理解しておくべきである。好ましくは、これらの要素は、プロセッサ、メモリおよび入出力インターフェースを含みうる一つまたは複数の適切にプログラムされた汎用装置上でのハードウェアおよびソフトウェアの組み合わせにおいて実装される。
本記述は、本発明の原理を例解する。よって、本稿に明示的には記述や図示されていないけれども本発明の原理を具現するものでありその精神および範囲内に含まれるさまざまな構成を当業者が考案できるであろうことは理解されるであろう。
本稿に記載されるあらゆる例および条件付きの言辞は、本発明の原理および発明者によって当該技術を進歩させるために寄与される概念の理解において読者を助ける教育的な目的のために意図されたものであり、そのような個別的に記載される例および条件に限定することなく解釈されるものとする。
さらに、本発明の原理、側面および実施形態ならびにその個別的な例を記載する本稿におけるあらゆる陳述は、その構造的および機能的な等価物の両方を包含することが意図されている。さらに、そのような等価物は現在知られている等価物および将来開発される等価物、すなわち構造にかかわりなく同じ機能を実行する任意の開発された要素の両方を含むことが意図されている。
よって、たとえば、当業者は、本稿に呈示されるブロック図が本発明の原理を具現する例示的な回路の概念図を表すものであることを理解するであろう。同様に、フローチャート、流れ図、状態遷移図、擬似コードなどはいずれも、コンピュータ可読媒体において実質的に表現され、コンピュータまたはプロセッサによって実行されうるさまざまなプロセスを表すことが理解されるであろう。これはそのようなコンピュータまたはプロセッサが明示的に示されているかどうかにはよらない。
図面に示されるさまざまな要素の機能は、専用ハードウェアの使用を通じて提供されても、適切なソフトウェアとの関連でソフトウェアを実行することのできるハードウェアの使用を通じて提供されてもよい。プロセッサによって提供されるとき、機能は単一の専用プロセッサによって、単一の共有されるプロセッサによって、あるいは一部が共有されていてもよい複数の個別プロセッサによって提供されうる。さらに、用語「プロセッサ」または「コントローラ」の明示的な使用は、ソフトウェアを実行することのできるハードウェアのみを指すものと解釈されるべきではなく、暗黙的に、限定なしに、デジタル信号プロセッサ(「DSP」)ハードウェア、ソフトウェアを記憶するための読み出し専用メモリ(「ROM」)、ランダム・アクセス・メモリ(「RAM」)および不揮発性記憶装置を含みうる。
通常のものおよび/またはカスタムのものを含め他のハードウェアも含まれてもよい。同様に、図面に示されるスイッチがあったとしても、それは単に概念的なものである。その機能はプログラム論理の動作を通じて、専用論理を通じて、プログラム制御と専用論理の相互作用を通じて、あるいはさらに手動で実行されてもよい。特定の技法は、コンテキストからより個別に理解されるように実装者によって選択可能である。
本願の請求項では、特定の機能を実行する手段として表現されたいかなる要素も、その機能を実行するいかなる仕方をも、たとえばa)その機能を実行する回路素子の組み合わせまたはb)任意の形の、したがってファームウェア、マイクロコードなどを含む、当該機能を実行するソフトウェアを実行するための適切な回路と組み合わされたソフトウェアを包含することが意図されている。そのような請求項によって定義される本発明は、前記さまざまな記載される手段によって提供される機能性が請求項が記載する仕方で組み合わされ、一緒にされるという事実にある。よって、これらの機能性を提供できる任意の手段が本稿で示されている手段と等価であると見なされる。
ここで図1を参照すると、エンコード装置またはシステム10において使用される本開示のある実施形態を示すブロック図が示されている。エンコード装置10は、たとえばノード(図示せず)上にホストされ、前処理器14と動作的に接続されたグラフィカル・ユーザー・インターフェース(GUI)12および今度は下流の処理モジュール18に動作的に接続された先進ビデオ符号化(AVC)エンコーダのようなエンコーダ16を含む。一連のスチール画像フレームを含む未圧縮のモーション・ピクチャー・ビデオ・コンテンツのデータストリームがGUI 12の入力において受領される。
動作について説明すると、GUI 12は未圧縮のモーション・ピクチャー・ビデオ・コンテンツ・データストリームへのアクセスを前処理器14に提供する。前処理器14は、統合シーン検出モジュール(図示せず)を使って受領された未圧縮のモーション・ピクチャー・ビデオ・コンテンツ・データストリーム中の新しいシーンを検出し、新しいピクチャー・グループ(GOP: group of pictures)をエンコードする必要があることを示すシーン検出信号をGUI 12に送信する。シーン検出信号は、その新しいGOPがいつどこで生じるはずかを示すタイムスタンプ、ポインタ、同期データなどを含みうる。GUI 12は未圧縮のモーション・ピクチャー・ビデオ・コンテンツおよび制御データ(たとえば上で論じたシーン検出信号および/または以下で論じる追加的な制御データ)をエンコーダ16に渡す。GUI 12から受信された制御データを使って、エンコーダ16は、たとえば動画像専門家グループ(MPEG: Moving Pictures Experts Group)によって開発された規格に従って動作して、未圧縮データストリームを圧縮データストリームに変換する。圧縮データストリームは、エンコードされたビデオ・コンテンツ・データがもとの未圧縮のスチール画像の視覚的属性(たとえば輝度、クロミナンス)に対応するイントラ符号化されたフレーム(Iフレーム)で始まるGOPを含む。予測符号化フレーム(Pフレーム)および双方向符号化フレーム(Bフレーム)のようなGOP中のその後のフレームは、グループ内の前のフレームからの変化に基づいてエンコードされる。従来技術では、新しいフレームのグループは、よって新しいIフレームは、ビデオ・コンテンツ・データ変化が大きいシーンの変わり目において始められる。隣り合うスチール画像間の大きな変化を記述するよりも新しいスチール画像を記述するほうが要求されるデータが少なくてすむからである。のちに論じるように、本開示は、新しいフレームのグループが開始される時を変更しうる時間最適化された(time optimized)エンコード技法に向けられる。
未圧縮データストリームがエンコーダ16によって圧縮されたのち、圧縮されたデータストリームは下流の処理モジュール18に渡される。下流の処理モジュール18は、圧縮されたデータが記憶されたり(たとえばハードディスク・ドライブ(HDD)、デジタル・ビデオ・ディスク(DVD)、高精細度デジタル・ビデオ・ディスク(HD-DVD)などに)、媒体を通じて送信されたり(たとえば無線で、インターネットを通じて、広域ネットワーク(WAN)またはローカル・エリア・ネットワーク(LAN)などを通じて)、あるいは表示されたり(たとえばシアターにおいて、デジタル・ディスプレイ(たとえばプラズマ・ディスプレイ、LCDディスプレイ、LCOSディスプレイ、DLPディスプレイ、CRTディスプレイ)上などで)できるよう、圧縮されたデータに対して追加的な処理を実行する。
ここで図2を参照すると、本開示に基づく例示的なエンコーダ装置16のブロック図が示されている。エンコーダ装置16は、複数のクラスター22〜26に動作的に接続されたクラスター・マネージャ20を含む。各クラスター22〜26は複数のノード28〜32を含み、それらのノードは今度は複数の中央処理ユニット(CPU)を含む。動作について説明すると、クラスター・マネージャ20は未圧縮のモーション・ピクチャー・ビデオ・コンテンツおよび制御データをGUI 12から受領し、また、クラスター22〜26中のノード28〜32からフィードバック・データをも受領してもよい。制御データおよびもしあれば与えられるフィードバック・データに基づいて、クラスター・マネージャ20は未圧縮モーション・ビデオ・コンテンツをフレームの諸グループにセグメント分割し、フレームの諸グループをクラスター22〜26のノード28〜32に渡す。これについてはのちにさらに詳細に論じる。
ここで図3を参照すると、従来式のエンコードの作業フロー40が示されている。従来式のエンコード作業フローは、クラスター・マネージャ20が未圧縮のモーション・ビデオ・コンテンツを受領し、前処理器14によって生成されるシーン検出信号のような制御データに基づいて未圧縮のビデオ・コンテンツをシーン(a〜i)にセグメント分割41することを含む。セグメント分割後、クラスター・マネージャ20はシーン(a〜i)をクラスター22〜26に提供しうる。クラスター22〜26は複数のエンコード・パス42をシーン(a〜i)に対して実行しうる。たとえば、第一のエンコード・パス43は、各シーンをクラスター22〜26の異なるノード28〜32に提供して、各ノード28〜32が割り当てられたシーン(a〜i)の複雑さ(シーン・フレーム間の動き、フレーム間の色変化など)を解析できるようにすることを含みうる。中間処理44は、第一のエンコード・パス43の結果を単一のログ・ファイルまたはメタデータ・ファイルに総合するクラスター22の一つのノード28を含みうる。中間処理44はまた、これに限られないが、クラスター・マネージャ20からノード28によって受領された指示に基づいてフォーマット調整のような追加的な処理をも含んでいてもよい。その後、第二のエンコード・パス46の間に、クラスター・マネージャは各シーン(a〜i)を、メタデータ・ファイルおよびもしあれば追加的な指示とともに、クラスター22〜24の異なるノード28〜32に提供して、各ノード28〜32が割り当てられたシーンをメタデータ・ファイルおよびもしあれば追加的な指示に従って処理して割り当てられたシーンについてのAVCファイルを生成できるようにする。AVCファイルは次いで、圧縮されたモーション・ビデオ・コンテンツを含むエンコードされたファイル48に総合されてもよく、これが上で論じたようなさらなる処理のために下流の処理モジュール18に渡されることができる。
ビデオ・コンテンツのランダムな性質のため、諸シーンは可変のシーン長またはサイズをもつ可能性が高いことは理解されるはずである。より長いシーンは、より短いシーンよりもエンコード・パスを通過するのにより長い時間がかかる可能性が高い。さらに、より長いシーンは、より短いシーンを処理しているノードに、より長いシーンについてのエンコード・パスが完了してすべてのシーンが次のエンコード・パスに進めるようになるまで待ち、待機モードにはいるよう要求し、それにより貴重な処理資源を浪費し、処理効率を低下させることがありうる。結果として、従来式の並列シーン処理のアプローチは、現行の最先端エンコード・プロセスのスループットを遅くする。
ここで図3に戻り、従来式の並列シーン処理アプローチの欠点をさらに例解する。シーン(a〜i)は可変長をもちうる。たとえば、シーン(i)はシーン(c)より長い、すなわちより多くのフレームをもつ。さらに、図のように、中間処理44が単一のノードによって実行される場合、第一のエンコード・パス43は、中間処理44が開始できる前に完了されなければならない。結果として、シーン(i)の長さがエンコード作業フロー40のスループットを遅くする。
ここで図4を参照すると、本開示に基づくエンコード作業フロー50が示されている。エンコード作業フロー50は、クラスター・マネージャ20が未圧縮のモーション・ビデオ・コンテンツを受領し、これに限られないが前処理器14によって生成されるシーン検出信号のような制御データに基づいて未圧縮のモーション・ビデオ・コンテンツをシーン(a〜i)にセグメント分割52することを含む。未圧縮のモーション・ビデオ・コンテンツをシーンにセグメント分割した後、クラスター・マネージャ20は、エンコード・パス56を開始する前に、のちにさらに詳細に論じるように、たとえばGOP型およびGOPサイズに基づいてシーン(a〜i)をさらに分割54する。シーンのいくつかは、エンコード・パス56を通じたシーン(a〜i)のすべてのスループットを改善するためにさらに分割されるのが好ましい。
図4に示されるように、シーン(a、bおよびe)は「平均的な」長さをもつと考えられ、シーン(c、fおよびh)は「短い」長さをもつと考えられ、シーン(d、gおよびi)は「長い」長さをもつと考えられる。上で論じたように、より長いシーン(d、gおよびi)はエンコード・パス56を通じたすべてのシーン(a〜i)のスループットを遅くする可能性が高い。したがって、スループットを改善するため、クラスター・マネージャ20またはGUI 12はさらに、より長いシーン(d、gおよびi)を分割54しうる。たとえば、シーン(d、gおよびi)は二つのセグメント(d1、d2;g1、g2;およびi1、i2)に分割されてもよい。ここで、一方のセグメントはほぼ平均的な長さをもち(すなわちd2、g2およびi2)、他方のセグメントは、好ましくは平均長さを超えない可変の長さである(d1、g1およびi1)。平均的な長さを超えるシーン・セグメントがより小さなシーン・セグメントにさらに分割されてもよいことを注意しておくべきであろう。シーン54を分割したのち、クラスター・マネージャは、シーンをクラスター22〜26に与える前に、残余セグメント(すなわちd1、g1およびi1)をより短い長さのシーン(c、fおよびh)とグループ化してもよい。シーンの分割およびグループ化(a、b、d1およびc、d2、e、g1およびf、g2、i1およびhならびにi2)は、エンコード・パス42を通じたシーンのスループットを高める。というのも、クラスター22〜26のノード28〜32は、割り当てられたシーン(すなわちa、bおよびe)、分割されたシーン・セグメント(d2、g2およびi2)またはグループ化されたシーンおよび分割されたシーン・セグメント(d1およびc、g1およびfならびにi1およびh)に対するエンコード・パスをほぼ同時に完了するはずだからである。
たとえば、第一のエンコード・パス58は、各シーン(すなわちa、bおよびe)、分割されたシーン・セグメント(d2、g2およびi2)またはグループ化されたシーンおよび分割されたシーン・セグメント(d1およびc、g1およびfならびにi1およびh)をクラスター22〜26の異なるノード28〜32に並列に提供することを含みうる。それにより、各ノード28〜32は、割り当てられたシーン(すなわちa、bおよびe)、分割されたシーン・セグメント(d2、g2およびi2)またはグループ化されたシーンおよび分割されたシーン・セグメント(d1およびc、g1およびfならびにi1およびh)の複雑さ(たとえばシーン・フレーム間の動き、フレーム間の色変化など)を解析できる。中間処理60は、クラスター22の一つのノード28が第一のエンコード・パス58の諸結果を単一のログ・ファイルまたはメタデータ・ファイルに総合することを含みうる。中間処理60はまた、これに限られないが、クラスター・マネージャ20からノード28によって受領された指示に基づいてフォーマット調整のような追加的な処理をも含んでいてもよい。その後、第二のエンコード・パス62の間に、クラスター・マネージャ20は各シーン(すなわちa、bおよびe)、分割されたシーン・セグメント(d2、g2およびi2)またはグループ化されたシーンおよび分割されたシーン・セグメント(d1およびc、g1およびfならびにi1およびh)を、メタデータ・ファイルおよびもしあれば追加的な指示とともに、クラスター22〜24の異なるノード28〜32に並列に提供して、各ノード28〜32が割り当てられたシーンをメタデータ・ファイルおよびもしあれば追加的な指示に従って処理して割り当てられたシーンについてのAVCファイルを生成できるようにする。AVCファイルは次いで、圧縮されたモーション・ビデオ・コンテンツを含むエンコードされたファイル64に総合されてもよく、これが上で論じたようなさらなる処理のために下流の処理モジュール18に渡されることができる。
シーンの分割およびグループ化が、そうしなければ可変なシーン長またはサイズをもつシーンをもつビデオ・コンテンツをエンコードするときに遭遇される欠点を克服することが理解されるはずである。シーンを分割し、グループ化することによって、長いシーンのエンコードによって引き起こされていた遅延が大幅に軽減される。この遅延の軽減はエンコード過程の効率およびスループットを高める。
ここで図5を参照すると、例示的な映画コンテンツ70が示されている。映画コンテンツ70は、任意の数のシーン72〜78を含みうる。各シーンは今度は可変数のフレーム(図示せず)を含みうる。
ここで図6を参照すると、圧縮されたまたはエンコードされたシーン80が示されている。圧縮されたシーン80はIフレーム82、Bフレーム84およびPフレーム86を含む。Iフレーム82は、フレームをその全体において示すために要求される全データを含む。Bフレーム84およびPフレーム86はグループ内の前のフレームからの変化に基づいてエンコードされている。従来技術では、エンコーダは、映画コンテンツ70を、所定のピクチャー・グループ・サイズ90に達するまで所定のGOP型またはパターン88に基づいてエンコードする。所定のピクチャー・グループ・サイズ90に達した時点で、エンコーダは別のIフレームを生成し、所定のGOPパターンおよびサイズに従ってエンコード過程を続ける。たとえば、一つの所定のGOPパターンは、IフレームのあとにBフレーム、Pフレーム、Bフレームのパターンの繰り返しが続くというものであってもよい。所定のGOPサイズは24フレームであってもよい。その場合、24フレームごとのフレームがIフレームになる。他のGOPパターンおよびサイズが当業者には知られており、本開示の範囲内と考えられる。
ここで図2に戻ると、クラスター22〜26のノード28〜32を最大限に利用してそれにより必要とされるエンコード時間を最小化するために、映画中のすべてのシーンのフレームがクラスター22〜26のノード28〜32の間で等しく分配されることができる。しかしながら、任意の仕方でフレームを分配することは、エンコード・パフォーマンスに害をもたらしうる。というのも、任意の位置でのシーンの細分を増すことは、最適に必要とされるより多くのIフレームを導入するからである。Iフレームは、エンコード情報のリサイクルの量を最小にしてすべてのピクチャー情報を保持し、記憶することを要求する。したがって、不必要なIフレームの導入は、ビットレートを増加させ、よって生成されるビデオ・ストリームのファイル・サイズをも増加させる。結果として、エンコードされたファイルは最適なファイル・サイズではなくなる。
ここで図6を参照すると、GOP型88およびGOPサイズ90が既知であり、エンコード過程を通じて一定のままであるので、諸シーンを自動的に分割する理想的な位置となるであろう特定の諸フレームが予測できる。このアプローチを使って、最良のエンコード・パフォーマンスおよび最適なファイル・サイズをもつエンコードされたファイルが生成できる。
上で論じたように、長いシーンは、従来技術では、そのシーン全体をエンコードするために割り当てられたノードを必要としていた。しかしながら、本開示によれば、長いシーンは、該シーン内の既知の諸Iフレーム位置においてさらに分割されることができる。分割されたセグメントは次いで異なるノードに並列に提供されることができる。それにより、シーンはより短い時間でエンコードできる。
本開示に従い、並列化を最適化するための最適なシーンの切れ目を予想または判別する方法は以下のステップを含みうる。エンコードの間に、圧縮者またはユーザーがGOPサイズ90およびGOP型88を選択する。GOPサイズ90および型88は、シーン境界識別情報とともに、どのシーンを分割すべきか、どこで分割が生じるべきかを決定するために用いられうる。これに限られないが、シーンの長さ、各シーン内でのGOPの数および利用可能なクラスター22〜26および/またはノード28〜32の数を含む統計的なデータに基づいて、アルゴリズムまたはプロセスによって正規化された分布が生成できる。換言すれば、すべてのノードは好ましくは、処理すべき実質的に同数のGOPをもつことになる。
シーンをどこで分割または切るかを決定するための一つの例示的なアルゴリズムまたはプロセスは次のステップを含みうる:
1.受領されたビデオ・コンテンツ(たとえばフィーチャーまたはフィルム)における、フェードやディゾルブを含まないもとのシーン数を取得する。
2.受領されたビデオ・コンテンツ内の、エンコードされるべきフレーム数を取得する。
3.各シーンについて、上記のフレームをエンコードするために必要とされるGOP数(Go)を計算する。
4.所与のクラス長さおよびシーン数について必要とされるGOP数に基づいてヒストグラム分布を生成する。
5.前記ヒストグラムを取り、該ヒストグラムについての密度曲線を生成する。
6.密度曲線についての平均、メジアン、最大、最小および標準偏差を求める。換言すれば、クラスターからのバランスの取れた最適なエンコード・スループットのために、各ノードが含むべき平均GOP数。
7.密度曲線が正規曲線である、すなわち曲線が種々のシーン・サイズについての正規曲線の族にフィットすると想定して、68-95-99.7%則(別名正規分布則)を適用して1標準偏差68%の外側に存在する全シーンを割り出して、クラスによって指定されるGOP数のところでより小さなシーンに分割することができる。曲線の高さ(または標準偏差)は利用可能なノード数に依存することができる。利用可能なノード数が多いほど標準偏差は小さくなりえ、よってシーンが含むことになるGOP数が小さくなりうる。
フェードおよびディゾルブは、エンコードするコンテンツに依存して追加的なIフレームを要求し、それにより通常よりも小さいまたは通常とは異なるGOPサイズをもつことがありうることを注意しておくべきであろう。これは、フェードおよびディゾルブは、可能性としては遷移フレーム間の類似性が限られている、より複雑なシーンであるという事実のためである。より小さいまたは異なるGOPサイズの使用は、最適に必要とされるより多くのIフレームを導入することになる。したがって、特にフェードおよび/またはディゾルブ・シーンが関わるときにエンコード時間を最適化するための追加的なアプローチは、シーンを、含まれるフレーム数の長さが増えていく順に配列することによる。換言すれば、より長いシーンまたはディゾルブおよび/またはフェードを含む複雑なシーンは、より短いシーンより前にクラスターまたはノードに与えられる。これは、より長いシーンがエンコード過程を早期に開始し、より短いシーンについては他のノードが利用可能になるにつれて並列化を利用させることを許容する。
ここで図7を参照すると、本開示に基づくエンコード過程100を示すフローチャートが示されている。最初、ステップ102において、エンコード装置10は、これに限られないがフィーチャー・フィルム・コンテンツのようなビデオ・コンテンツをインポートまたは受領する。次に、ステップ104において、エンコード装置10は、インポートされたビデオ・コンテンツに基づいてビデオ・コンテンツ・データを生成する。例示的なビデオ・コンテンツ・データは、これに限られないがシーンおよび/またはショット検出、フェードおよび/またはディゾルブ検出、ヒストグラム生成、シーン色に基づく分類(たとえば、暗いおよび/または赤い色のシーンは伝統的に処理するのがより複雑である)、類似シーンの識別、フレーム分類(たとえば、葉がゆらいでいる木のような多くの動いているオブジェクトをもつノイズ様のフレーム)、サムネイル生成などを含みうる。ビデオ・コンテンツ・データは、前処理器14によって、あるいはユーザーによってGUI 12を介して生成されうる。その後、ステップ106において、エンコーダ装置10はユーザーに、ユーザーがビデオ・コンテンツが時間最適化されたエンコードを使って圧縮またはエンコードされることを望んでいるかどうかを問い合わせる。もしそうでない場合には、エンコード装置10はステップ116において、当業者に知られている従来式のクラスター・エンコード・プロセスを開始する。時間最適化されたエンコードが望まれる場合には、エンコード装置10は、ステップ108において、シーンおよび/またはショット検出ならびにフェードおよび/またはディゾルブ検出に基づいて統計的データを計算および収集する。次に、ステップ110において、エンコード装置10は統計データを処理して、ビデオ・コンテンツ中の所与のシーンがフェードおよび/またはディゾルブを含むかどうかを判定する。そのシーンがフェードやディゾルブを含まない場合、エンコード装置はステップ112においてさらに、そのシーンが短い、平均的または長いシーンであるかを判定し、そのシーンをGOPサイズおよびGOP型に基づいて適宜分割する。シーンがフェードまたはディゾルブを含んでいる場合、エンコード装置はステップ114において、フェードまたはディゾルブを含んでいるシーンをその長さに従って整理する。その後、エンコード装置10は、フェードおよび/またはディゾルブを有するシーン、分割されたシーンおよび分割されていないシーンを上で論じたようにグループ化し、ステップ116でシーンをクラスター22〜26のノード28〜32に本開示に基づく時間最適化されたエンコードのために分配する。
本発明の教示を組み込む実施形態について図示し、本稿で詳細に記述してきたが、当業者は、数多くの他の変形された、それでいてこれらの教示を組み込む実施形態を容易に考案できる。エッセンス・ファイル、メタデータ・ファイルおよびサービス・データ・ファイルを知的なエッジ・デバイスを使ってパッケージングおよび輸送するシステムおよび方法についての好ましい諸実施形態を記載してきたが、上記の教示に照らして当業者によって修正および変形がなされうることを注意しておく。したがって、開示される本発明の個別的な実施形態に、付属の請求項によって述べられる本発明の範囲内である変更がなされてもよいことは理解されるものとする。

Claims (12)

  1. ビデオ・コンテンツをエンコードする方法であって:
    ビデオ・コンテンツを受領する段階と;
    前記ビデオ・コンテンツを複数のシーンにセグメント分割する段階と;
    あるシーンが短い長さ、平均長さおよび長い長さのうちのいずれを有するかを検出する段階と;
    長い長さをもつシーンを平均長さをもつ第一のシーン・セグメントおよび平均長さを超えない第二のシーン・セグメントに分割する段階と;
    前記第二のシーン・セグメントを短い長さをもつシーンとともにグループ化する段階と;
    分割され、グループ化されたシーンを並列にエンコードする段階とを有する、
    方法。
  2. 前記シーンを分割する段階がさらに:
    前記シーン中のピクチャー・グループ特性に基づいて前記シーンを分割する段階を有する、
    請求項1記載の方法。
  3. 前記ピクチャー・グループ特性がピクチャー・グループ型である、請求項2記載の方法。
  4. 前記ピクチャー・グループ特性がピクチャー・グループ・サイズである、請求項2記載の方法。
  5. 前記エンコードする段階がさらに:
    前記グループ化された第二のシーン・セグメントおよび短い長さのシーンを、前記第一のシーン・セグメントと並列にかつ平均長さのシーンと並列に、エンコードする段階を有する、
    請求項記載の方法。
  6. ビデオ・コンテンツをエンコードする方法であって:
    ビデオ・コンテンツを受領する段階と;
    前記ビデオ・コンテンツを複数のシーンにセグメント分割する段階と;
    あるシーンが第一の限界を超える長さをもつかどうかを検出する段階であって、前記検出する段階がさらに、シーンがフェード効果およびディゾルブ効果の一つを含んでいるかどうかを検出する段階を有する、段階と;
    前記シーンの長さが前記第一の限界を超えていれば前記シーンをシーン・セグメントに分割する段階と;
    分割されたシーンを並列にエンコードする段階と;
    フェード効果およびディゾルブ効果の一つを含んでいるシーンのエンコードを、分割されたシーンを並列してエンコードするのに先立って開始する段階を有する
    法。
  7. ビデオ・コンテンツをエンコードする装置であって:
    ビデオ・コンテンツを受領する手段と;
    前記ビデオ・コンテンツを複数のシーンにセグメント分割する手段と;
    あるシーンが短い長さ、平均長さおよび長い長さのうちのいずれを有するかを検出する手段と;
    長い長さをもつシーンを平均長さをもつ第一のシーン・セグメントおよび平均長さを超えない第二のシーン・セグメントに分割する手段と;
    前記第二のシーン・セグメントを短い長さをもつシーンとともにグループ化する手段と;
    分割され、グループ化されたシーンを並列にエンコードする手段とを有する、
    装置。
  8. 前記シーンを分割する手段がさらに:
    前記シーン中のピクチャー・グループ特性に基づいて前記シーンを分割する手段を有する、
    請求項記載の装置。
  9. 前記ピクチャー・グループ特性がピクチャー・グループ型である、請求項記載の装置。
  10. 前記ピクチャー・グループ特性がピクチャー・グループ・サイズである、請求項記載の装置。
  11. 前記エンコードする手段がさらに:
    前記グループ化された第二のシーン・セグメントおよび短い長さのシーンを、前記第一のシーン・セグメントと並列にかつ平均長さのシーンと並列に、エンコードする手段を有する、
    請求項記載の装置。
  12. ビデオ・コンテンツをエンコードする装置であって:
    ビデオ・コンテンツを受領する手段と;
    前記ビデオ・コンテンツを複数のシーンにセグメント分割する手段と;
    あるシーンが第一の限界を超える長さをもつかどうかを検出する手段であって、前記検出する手段がさらに、シーンがフェード効果およびディゾルブ効果の一つを含んでいるかどうかを検出する手段を有する、手段と;
    前記シーンの長さが前記第一の限界を超えていれば前記シーンをシーン・セグメントに分割する手段と;
    分割されたシーンを並列にエンコードする手段と;
    フェード効果およびディゾルブ効果の一つを含んでいるシーンのエンコードを、分割されたシーンを並列してエンコードするのに先立って開始する手段を有する
    置。
JP2010512130A 2007-06-14 2007-06-14 時間最適化されたエンコードのためのシステムおよび方法 Active JP5095819B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2007/014015 WO2008153525A1 (en) 2007-06-14 2007-06-14 A system and method for time optimized encoding

Publications (2)

Publication Number Publication Date
JP2010529809A JP2010529809A (ja) 2010-08-26
JP5095819B2 true JP5095819B2 (ja) 2012-12-12

Family

ID=39148619

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010512130A Active JP5095819B2 (ja) 2007-06-14 2007-06-14 時間最適化されたエンコードのためのシステムおよび方法

Country Status (6)

Country Link
US (1) US8189657B2 (ja)
EP (1) EP2163100A1 (ja)
JP (1) JP5095819B2 (ja)
CN (1) CN101682761B (ja)
CA (1) CA2689441C (ja)
WO (1) WO2008153525A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9712835B2 (en) * 2011-03-29 2017-07-18 Lyrical Labs LLC Video encoding system and method
US20150271492A1 (en) * 2014-03-20 2015-09-24 Panopto, Inc. Systems and Methods for Group of Pictures Encoding
WO2018049335A1 (en) * 2016-09-09 2018-03-15 Dolby Laboratories Licensing Corporation Coding of high dynamic range video using segment-based reshaping
EP3510772B1 (en) 2016-09-09 2020-12-09 Dolby Laboratories Licensing Corporation Coding of high dynamic range video using segment-based reshaping
US10887609B2 (en) * 2017-12-13 2021-01-05 Netflix, Inc. Techniques for optimizing encoding tasks
EP3970380A4 (en) * 2019-05-16 2023-04-05 Nokia Technologies Oy APPARATUS, METHOD AND COMPUTER PROGRAM FOR HANDLING RANDOM ACCESS IMAGES IN VIDEO ENCODING
CN112087631A (zh) * 2020-08-10 2020-12-15 翟文国 基于gpu同步并行视频编解码与流媒体传输系统及方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7457415B2 (en) * 1998-08-20 2008-11-25 Akikaze Technologies, Llc Secure information distribution system utilizing information segment scrambling
WO2000045604A1 (en) * 1999-01-29 2000-08-03 Sony Corporation Signal processing method and video/voice processing device
US6522693B1 (en) * 2000-02-23 2003-02-18 International Business Machines Corporation System and method for reencoding segments of buffer constrained video streams
JP2002199392A (ja) * 2000-10-19 2002-07-12 Matsushita Electric Ind Co Ltd 映像符号化方法および装置
US20020057739A1 (en) * 2000-10-19 2002-05-16 Takumi Hasebe Method and apparatus for encoding video
US6721361B1 (en) * 2001-02-23 2004-04-13 Yesvideo.Com Video processing system including advanced scene break detection methods for fades, dissolves and flashes
US7072393B2 (en) * 2001-06-25 2006-07-04 International Business Machines Corporation Multiple parallel encoders and statistical analysis thereof for encoding a video sequence
JP4335516B2 (ja) * 2001-12-04 2009-09-30 パナソニック株式会社 複数のプロセッサを用いた動画像符号化装置およびその方法
US7593580B2 (en) * 2003-07-14 2009-09-22 Texas Instruments Incorporated Video encoding using parallel processors
JP4285287B2 (ja) * 2004-03-17 2009-06-24 セイコーエプソン株式会社 画像処理装置、画像処理方法およびそのプログラム、記録媒体
EP1578131A1 (en) * 2004-03-18 2005-09-21 STMicroelectronics S.r.l. Encoding/decoding methods and systems, computer program products therefor
US20060114995A1 (en) * 2004-12-01 2006-06-01 Joshua Robey Method and system for high speed video encoding using parallel encoders
US7920633B2 (en) * 2005-04-22 2011-04-05 Broadcom Corporation Method and system for parallel processing video data
CN101253777A (zh) * 2005-07-01 2008-08-27 极速决件公司 用于在多媒体信号编码中使用的方法、装置和系统
JP4358215B2 (ja) * 2006-09-27 2009-11-04 株式会社東芝 動画像符号化装置及びその方法

Also Published As

Publication number Publication date
US8189657B2 (en) 2012-05-29
EP2163100A1 (en) 2010-03-17
JP2010529809A (ja) 2010-08-26
CA2689441A1 (en) 2008-12-18
WO2008153525A1 (en) 2008-12-18
CA2689441C (en) 2015-11-24
CN101682761B (zh) 2013-03-20
CN101682761A (zh) 2010-03-24
US20100172405A1 (en) 2010-07-08

Similar Documents

Publication Publication Date Title
JP5095819B2 (ja) 時間最適化されたエンコードのためのシステムおよび方法
US10110911B2 (en) Parallel media encoding
US9635334B2 (en) Audio and video management for parallel transcoding
US9560393B2 (en) Media processing node
US20170359580A1 (en) Content Adaptation for Streaming
US9609338B2 (en) Layered video encoding and decoding
US9769234B2 (en) Algorithmic transcoding
US8891020B2 (en) Method and apparatus for automatically categorizing potential shot and scene detection information
US20220377339A1 (en) Video signal processor for block-based picture processing
KR102190878B1 (ko) 장면 분류를 위한 시스템 및 방법
US10264273B2 (en) Computed information for metadata extraction applied to transcoding
Jeong et al. A fast intra mode decision based on accuracy of rate distortion model for AV1 intra encoding
US20060061497A1 (en) Bit rate conversion apparatus and method
US20190313103A1 (en) Systems and methods for compressing video
CN102833620B (zh) 进行时间最优化编码的系统和方法
US20210289206A1 (en) Block-based spatial activity measures for pictures
US9253484B2 (en) Key frame aligned transcoding using statistics file
US20160117796A1 (en) Content Adaptive Decoder Quality Management
WO2024027639A1 (zh) 图片组长度确定方法、装置、计算机设备及可读介质
CN117218578A (zh) 视频相似度确定方法、装置、计算机设备及存储介质
Bhandarkar et al. Parallel parsing of MPEG video on a shared-memory symmetric multiprocessor
US9854260B2 (en) Key frame aligned transcoding using key frame list file
JP2006229995A (ja) ストリーム任意領域抽出方式及び装置及びそのプログラム及びそれを記録した記録媒体
JP2003304540A (ja) 動画像データ符号化装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120720

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: 20120904

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120919

R150 Certificate of patent or registration of utility model

Ref document number: 5095819

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150928

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250