JP5525175B2 - 複数のハードウェア・ドメイン、データ・タイプ、およびフォーマットの処理を統合し抽象化するフレームワーク - Google Patents
複数のハードウェア・ドメイン、データ・タイプ、およびフォーマットの処理を統合し抽象化するフレームワーク Download PDFInfo
- Publication number
- JP5525175B2 JP5525175B2 JP2009093554A JP2009093554A JP5525175B2 JP 5525175 B2 JP5525175 B2 JP 5525175B2 JP 2009093554 A JP2009093554 A JP 2009093554A JP 2009093554 A JP2009093554 A JP 2009093554A JP 5525175 B2 JP5525175 B2 JP 5525175B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- media
- processing
- processing unit
- image processing
- 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
Links
- 238000012545 processing Methods 0.000 title claims description 340
- 230000006870 function Effects 0.000 claims description 124
- 239000000872 buffer Substances 0.000 claims description 66
- 238000009877 rendering Methods 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 30
- 230000000694 effects Effects 0.000 claims description 25
- 238000003672 processing method Methods 0.000 claims description 25
- 238000012856 packing Methods 0.000 claims description 11
- 238000004064 recycling Methods 0.000 claims description 8
- 238000012937 correction Methods 0.000 claims description 4
- 238000003780 insertion Methods 0.000 claims description 4
- 230000037431 insertion Effects 0.000 claims description 4
- 230000003190 augmentative effect Effects 0.000 claims description 3
- 238000012546 transfer Methods 0.000 description 25
- 238000011161 development Methods 0.000 description 14
- 230000000873 masking effect Effects 0.000 description 14
- 238000006243 chemical reaction Methods 0.000 description 13
- 239000008186 active pharmaceutical agent Substances 0.000 description 9
- 230000008901 benefit Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 230000000903 blocking effect Effects 0.000 description 6
- 238000003860 storage Methods 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000013467 fragmentation Methods 0.000 description 2
- 238000006062 fragmentation reaction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 241001025261 Neoraja caerulea Species 0.000 description 1
- 101100285899 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SSE2 gene Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008275 binding mechanism Effects 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
Description
本願は、2008年4月8日に出願した仮出願第61/123,463号および61/123,549号の、35U.S.C.§199(e)に基づく優先権およびその恩恵を主張する。
変換は、特殊な外部PUの集合として実施する。これらは、1つのCData属性から他の何らかのCData属性に変換するために用いられる内部PU集合を結束する。変換は、変換する対象を用いて外部処理ユニットをコールすることによって、明示的に呼び出すことができ、または予期しなかった属性のCDataが外部PUに入力として与えられたときには暗示的に呼び出すことができる。不一致があったときはいつでも、CPLフレームワーク・コアによる要求に応じて、自動変換を行い、与えられたパラメータを常にPUが理解できることを保証する(要求駆動型実行)。
Claims (52)
- メディア処理システムであって、
ホスト中央処理ユニット(CPU)と、
複数の実行ドメインと、
メモリと
を備えており、前記メモリは前記ホスト中央処理ユニットによって読み取り可能な命令を含み、前記ホスト中央処理ユニットによって前記命令が実行されると、前記ホスト中央処理ユニットにメディア処理ユニットを実現させ、該メディア処理ユニットが、
インターフェースであって、
メディア処理機能を実行するための命令を受け、
前記メディア処理機能が実行されるべき対象のメディア・オブジェクトの記述を受け、前記メディア・オブジェクトの前記記述は、該メディア・オブジェクトのタイプ、該メディア・オブジェクトのフォーマット、および該メディア・オブジェクトの位置を指定する、
ためのクライアント・メディア処理アプリケーションを備えたインターフェースと、
下位の命令の複数のライブラリを備えた複数のインターフェースであって、下位の命令の前記複数のライブラリの各々が、前記複数の実行ドメインの内の対応する1つによって実行可能である、複数のインターフェースと、
を含み、
前記メディア処理ユニットは、前記クライアント・メディア処理アプリケーションを備えたインターフェースを介して、前記メディア処理機能を実行する命令とメディア・オブジェクトの記述とを受けたとき、前記複数の実行ドメインの内の選択された少なくとも1つの実行ドメインに、前記選択された少なくとも1つの実行ドメインに対応する前記下位の命令の複数のライブラリの内の少なくとも1つのライブラリから下位の命令を呼び出すことによって、前記メディア・オブジェクトに対し前記メディア処理機能を実行させ、前記メディア処理機能を実行する前記命令は、前記複数の実行ドメインには依存しない形態で表現される、
メディア処理システム。 - 請求項1記載のメディア処理システムにおいて、前記メディア処理機能を実行する前記命令は、前記メディア・オブジェクト・タイプには依存しない形態で表現される、メディア処理システム。
- 請求項1記載のメディア処理システムにおいて、前記メディア処理機能を実行する前記命令は、前記メディア・オブジェクト・フォーマットには依存しない形態で表現される、メディア処理システム。
- 請求項1記載のメディア処理システムにおいて、前記複数の実行ドメインは、中央処理ユニット(CPU)と、グラフィックス処理ユニット(GPU)とを含む、メディア処理システム。
- 請求項1記載のメディア処理システムにおいて、前記メディア処理機能は、画像効果であり、前記メディア・オブジェクトの前記タイプはラスタ画像である、メディア処理システム。
- 請求項5記載のメディア処理システムにおいて、前記画像効果は、ディゾルブ、色補正、テキスト挿入、および動き効果のうち1つを含む、メディア処理システム。
- 請求項1記載のメディア処理システムにおいて、前記メディア処理機能は画像効果であり、前記メディア・オブジェクト・タイプはグラフィックス・オブジェクトである、メディア処理システム。
- 請求項1記載のメディア処理システムにおいて、前記実行ドメインの1つと関連付けられた下位ライブラリの命令の少なくとも部分集合が、前記複数の実行ドメインの別の1つと関連付けられた下位ライブラリの対応する命令の部分集合と互換性がない、メディア処理システム。
- 請求項1記載のメディア処理システムであって、更に命令を含み、該命令は、前記ホスト中央処理ユニットによって実行されると、前記メディア処理ユニットに、
前記メディア処理機能と、前記メディア・オブジェクト・タイプ、メディア・オブジェクト・フォーマット、およびメディア・オブジェクトの位置のうちの少なくとも1つとの間における不一致を識別させ、
前記メディア・オブジェクトの前記タイプを別のタイプに変換すること、または前記メディア・オブジェクトの前記フォーマットを別のフォーマットに変換すること、または前記メディア・オブジェクトの別の位置と関連付けることのいずれかによって、前記識別した不一致を解消させる、
ことができるようにする、メディア処理システム。 - 請求項1記載のメディア処理システムにおいて、前記メディア・オブジェクトの前記記述は、既存の記述の集合の中の1つであり、前記既存の記述の集合は、新たなメディア・オブジェクト・タイプ、新たなメディア・オブジェクト・フォーマット、および新たな位置のうち少なくとも1つを有する新たな記述を含むように増強することができ、前記メディア処理機能を実行する前記命令は、該命令を書き直し又はコンパイルし直す必要なく、前記新しい記述を有するメディア・オブジェクトに対し前記メディア処理機能を実行させることができる、メディア処理システム。
- 請求項1記載のメディア処理システムであって、更に命令を含み、該命令が、前記ホスト中央処理ユニットによって実行されると、前記メディア処理ユニットに、前記メディア・オブジェクトを複数の部分に分割させ、第1実行ドメインを第2実行ドメインに接続するデータ・バスを通じて前記部分を順次送出させ、一度に前記部分の1つに前記メディア処理機能を実行させる、メディア処理システム。
- 請求項1記載のメディア処理システムにおいて、前記メディア処理機能を実行する前記命令は複数の処理ユニットを備えており、前記メディア処理機能は、前記複数の処理ユニットのうち少なくとも1つの第1処理ユニットを実行することによって遂行され、前記複数の処理ユニットのうち前記少なくとも1つの第1処理ユニットは、前記複数の実行ドメインのうち第1実行ドメイン上で実行されると、前記複数の処理ユニットのうち第2処理ユニットをコールする、メディア処理システム。
- 請求項1記載のメディア処理システムにおいて、前記メディア処理機能を実行する前記命令は複数の処理ユニットを備えており、前記メディア処理機能の遂行は、前記複数の処理ユニットの1つをコールし、コールされた処理ユニットからスレッドを生成することを含み、前記コールされた処理ユニットが前記メディア・オブジェクトに対して前記メディア処理機能を実行し続けている間、前記スレッドが非同期で実行される、メディア処理システム。
- メディア・オブジェクトを処理するメディア・オブジェクト処理方法であって、
前記メディア・オブジェクトに対しメディア処理機能を実行するための命令をクライアント・アプリケーションから受け入れるステップと、
前記メディア・オブジェクトの記述を受け入れるステップであって、前記メディア・オブジェクトの前記記述は、前記メディア・オブジェクトのタイプ、前記メディア・オブジェクトのフォーマット、および前記メディア・オブジェクト位置を指定する、ステップと、
前記複数の実行ドメインの選択された少なくとも1つに、前記メディア処理機能を前記メディア・オブジェクトに対し、前記複数の実行ドメインの内の前記選択された1つに関連した下位の命令を呼び出すことによって実行させるステップであって、前記クライアント・アプリケーションからの前記命令は、複数の実行ドメインには依存しない形態で表現される、ステップと、
を含む、メディア・オブジェクト処理方法。 - 請求項14記載の方法において、メディア処理機能を実行する前記クライアント・アプリケーションからの前記命令は、前記メディア・オブジェクト・タイプには依存しない形態で表現される、方法。
- 請求項14記載の方法において、メディア処理機能を実行する前記クライアント・アプリケーションからの前記命令は、前記メディア・オブジェクト・フォーマットには依存しない形態で表現される、方法。
- 請求項14記載の方法において、前記複数の実行ドメインは、中央処理ユニット(CPU)と、グラフィックス処理ユニット(GPU)とを含む、方法。
- 請求項14記載の方法において、前記メディア処理機能は、画像効果であり、前記メディア・オブジェクトの前記タイプはラスタ画像である、方法。
- 請求項18記載の方法において、前記画像効果は、ディゾルブ、色補正、テキスト挿入、および動き効果のうちの1つを含む、方法。
- 請求項14記載の方法において、前記メディア処理機能は画像効果であり、前記メディア・オブジェクト・タイプはグラフィックス・オブジェクトである、方法。
- 請求項14記載の方法において、前記複数の実行ドメインの各々は、下位命令ライブラリと関連付けられており、前記実行ドメインの1つと関連付けられた下位ライブラリの命令の少なくとも部分集合が、前記複数の実行ドメインの別の1つと関連付けられた下位ライブラリの命令の対応する部分集合と互換性がない、方法。
- 請求項14記載の方法であって、更に、
前記メディア処理機能と、前記メディア・オブジェクト・タイプ、メディア・オブジェクト・フォーマット、およびメディア・オブジェクトの位置のうちの少なくとも1つとの間における不一致を識別するステップと、
前記メディア・オブジェクトの前記タイプを別のタイプに変換すること、または前記メディア・オブジェクトの前記フォーマットを別のフォーマットに変換すること、または別の位置を前記メディア・オブジェクトと関連付けることのいずれかによって、前記識別した不一致を解消するステップと、
を含む、方法。 - 請求項14記載の方法において、前記メディア・オブジェクトの前記記述は、既存の記述の集合の中の1つであり、前記既存の記述の集合は、既存の記述の前記集合の内の1つでない新たな記述を含むように増強され、前記メディア処理機能を実行する前記命令は、前記命令を書き直し又はコンパイルし直す必要なく、前記新たな記述を有するメディア・オブジェクトに対し前記メディア処理機能を実行させることができる、方法。
- 請求項14記載の方法であって、更に、
前記メディア・オブジェクトを複数の部分に分割するステップと、
前記第1実行ドメインを第2実行ドメインに接続するデータ・バスを通じて前記部分を順次送出するステップと、
一度に前記部分の1つに前記メディア処理機能を実行するステップと、
を含む、方法。 - 請求項14記載の方法において、前記クライアント・アプリケーションからの前記命令は複数の処理ユニットのうち第1処理ユニットに対するコールを含み、前記複数の処理ユニットの各々は、対応するメディア処理機能を実行することと関連付けられた命令の集合であり、前記複数の処理ユニットのうち前記第1処理ユニットは、前記複数の処理ユニットのうち第2処理ユニットをコールする、方法。
- 画像処理システムであって、
ホスト中央処理ユニット(CPU)と、
メディア処理中央処理ユニットと、
グラフィックス処理ユニット(GPU)と、
メモリと、
を含み、
該メモリは前記ホスト中央処理ユニットによって読み取り可能な命令を含み、該命令は、前記ホスト中央処理ユニットによって実行されると、該ホスト中央処理ユニットにメディア処理ユニットを実現させ、該メディア処理ユニットが、
インターフェースであって、
画像処理機能を実行する命令を受け、
前記画像処理機能が実行されるべき対象の画像の記述を受け、前記画像の前記記述は、該画像のフォーマットおよび該画像の位置を指定する、
ためのクライアント・メディア処理アプリケーションを備えたインターフェースと、
下位の命令の複数のライブラリを備えた複数のインターフェースであって、前記下位の命令の複数のライブラリが、メディア処理中央処理ユニットおよびグラフィックス処理ユニットの内の対応する1つによって実行可能である、複数のインターフェースと、
を含み、
前記メディア処理ユニットは、前記クライアント・メディア処理アプリケーションを備えたインターフェースを介して、前記メディア処理機能を実行する命令とメディア・オブジェクトの記述とを受けたとき、前記メディア処理中央処理ユニットおよび前記グラフィックス処理ユニットの内の選択された少なくとも1つに、前記メディア処理中央処理ユニットおよび前記グラフィックス処理ユニットの内の前記選択された少なくとも1つに対応する前記下位の命令の複数のライブラリの内の少なくとも1つのライブラリから下位の命令を呼び出すことによって、前記画像に対し前記画像処理機能を実行させ、前記画像処理機能を実行する命令は、前記メディア処理中央処理ユニットおよび前記グラフィックス処理ユニットには依存しない形態で表現される、画像処理システム。 - 請求項26記載の画像処理システムにおいて、前記グラフィックス処理ユニットは、関連するシェーダ言語を有し、前記画像処理機能を実行する命令は、前記シェーダ言語には依存しない形態で表現される、画像処理システム。
- 請求項26記載の画像処理システムにおいて、メディア処理機能を実行する前記命令の実行は、前記ホスト中央処理ユニット上で走るオペレーティング・システムによって制御され、前記画像処理機能を実行する命令は、前記オペレーティング・システムには依存しない形態で表現される、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記グラフィックス処理ユニットは、画像レンダリング・データ・バッファを含み、該画像レンダリング・データ・バッファは、テクスチャ、フレーム・バッファ・オブジェクト、マルチ・サンプル・レンダ・バッファ、リード専用画素バッファ・オブジェクト、ライト専用画素バッファ・オブジェクト、およびリード−ライト画素バッファ・オブジェクトのうち少なくとも1つを含み、前記画像は、前記画像レンダリング・バッファには依存しない形態で表現される、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記グラフィックス処理ユニットは、画像レンダリング・テクスチャ・パラメータを含み、該画像レンダリング・テクスチャ・パラメータは、色空間、画素深さおよび画素範囲のうち少なくとも1つを含み、前記画像は、前記画像レンダリング・テクスチャ・パラメータには依存しない形態で表現される、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記グラフィックス処理ユニットに前記画像上において前記画像処理機能を実行させることは、多重パス実行と、前記ホスト中央処理ユニット上に適時にコンパイルしたマルチパス画素プログラムをキャッシュすること、前記画素プログラムを部分的にコンパイルすること、ならびに前記部分的にコンパイルされた画素プログラムをキャッシュし取り出すことを含む、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記ホスト中央処理ユニットは、前記メモリの一部を、画像データを格納するために割り当て、前記グラフィックス処理ユニットに前記画像に前記画像処理機能を実行させることは、前記メモリの新たな部分を前記画像を格納するために割り当てずに、前記メモリの割り当てた部分をリサイクルすることを含む、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記画像は、8ビットRGB色空間画像として表され、前記ホスト中央処理ユニットに前記画像に前記画像処理機能を実行させることは、前記画像をBGRAテクスチャにパックすることを含む、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記画像は、8ビットYCC色空間画像として表され、前記ホスト中央処理ユニットに前記画像上において前記画像処理機能を実行させることは、前記画像をBGRAテクスチャにパックすることを含む、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記画像は、別個のアルファ・チャネルを有する8ビットYCC色空間画像(YCCA)として表され、前記グラフィックス処理ユニットに前記画像に前記画像処理機能を実行させることは、前記画像をBGRAテクスチャにパックすることを含む、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記画像処理機能を実行する前記命令は、前記画像を表すために用いられる色空間には依存しない形態で表現される、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記画像処理機能を実行する前記命令は、前記画像を表現するために用いられる画素深さには依存しない形態で表現される、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記画像処理機能を実行する前記命令は、前記画像を表現するために用いられる画素範囲には依存しない形態で表現される、画像処理システム。
- 請求項26記載の画像処理システムにおいて、前記画像処理機能を実行する命令は、前記画像を格納するために用いられるメモリ・レイアウトおよびパッキングには依存しない形態で表現される、画像処理システム。
- 画像処理方法であって、
第1のCPU上で走るクライアント・アプリケーションから、画像処理機能を実行する命令を受け入れるステップと、
前記クライアント・アプリケーションから、前記画像処理機能と関連付けられる画像の指示を受け入れるステップであって、前記画像が、前記画像のフォーマットおよび前記画像の位置を指定する属性に関連付けられた、ステップと、
第2のCPUとGPUのうちの選択された1つに、前記第2のCPUと前記GPUのうちの前記選択された1つと関連した命令を呼び出すことによって、前記画像に対し前記画像処理機能を実行させるステップであって、前記クライアント・アプリケーションからの前記命令は、前記第2のCPUと前記GPUには依存しない形態で表現される、ステップと、
を含む、画像処理方法。 - 請求項40記載の画像処理方法において、前記GPUは、関連するシェーダ言語を有し、前記画像処理機能を実行する前記命令は、前記シェーダ言語には依存しない形態で表現される、画像処理方法。
- 請求項40記載の画像処理方法において、前記命令の実行は、前記第1のCPU上で走るオペレーティング・システムによって制御され、前記画像処理機能を実行する前記命令は、前記オペレーティング・システムには依存しない形態で表現される、画像処理方法。
- 請求項40記載の画像処理方法において、前記GPUは、画像レンダリング・データ・バッファを含み、該画像レンダリング・データ・バッファのタイプは、テクスチャ、フレーム・バッファ・オブジェクト、マルチ・サンプル・レンダ・バッファ、リード専用画素バッファ・オブジェクト、ライト専用画素バッファ・オブジェクト、およびリード−ライト画素バッファ・オブジェクトのうちの1つであり、前記画像は、前記画像レンダリング・バッファの前記タイプには依存しない形態で表現される、画像処理方法。
- 請求項40記載の画像処理方法において、前記GPUは、画像レンダリング・テクスチャ・パラメータを含み、該画像レンダリング・テクスチャ・パラメータは、色空間、画素深さおよび画素範囲のうち少なくとも1つを備えており、前記画像は、前記画像レンダリング・テクスチャ・パラメータには依存しない形態で表現される、画像処理方法。
- 請求項40記載の画像処理方法において、前記GPUに前記画像に前記画像処理機能を実行させることは、多重パス実行と、前記CPU上に適時にコンパイルしたマルチパス画素プログラムをキャッシュすること、前記画素プログラムを部分的にコンパイルすること、ならびに前記部分的にコンパイルされた画素プログラムをキャッシュし取り出すことを含む、画像処理方法。
- 請求項40記載の画像処理方法において、前記第1のCPUは、メモリと関連付けられており、前記第1のCPUは、前記メモリの一部を、画像データを格納するために割り当て、前記GPUに前記画像に前記画像処理機能を実行させることは、前記メモリの新たな部分を前記画像を格納するために割り当てずに、前記メモリの割り当てた部分をリサイクルすることを含む、画像処理方法。
- 請求項40記載の画像処理方法において、前記画像は、8ビットRGB色空間画像、8ビットYCC色空間画像、および別個のアルファ・チャネルを有する8ビットYCC色空間画像のうちの1つとして表され、前記GPUに前記画像に前記画像処理機能を実行させることは、前記画像をBGRAテクスチャにパックすることを含む、画像処理方法。
- 請求項40記載の画像処理方法において、前記画像処理機能を実行する前記命令は、前記画像を表すために用いられる色空間には依存しない形態で表現される、画像処理方法。
- 請求項40記載の画像処理方法において、前記画像処理機能を実行する前記命令は、前記画像を表現するために用いられる画素深さには依存しない形態で表現される、画像処理方法。
- 請求項40記載の画像処理方法において、前記画像処理機能を実行する前記命令は、前記画像を表現するために用いられる画素範囲には依存しない形態で表現される、画像処理方法。
- 請求項40記載の画像処理方法において、前記画像処理機能を実行する前記命令は、前記画像を格納するために用いられるメモリ・レイアウトおよびパッキングには依存しない形態で表現される、画像処理方法。
- 請求項40記載の画像処理方法において、前記GPUに前記画像に前記画像処理機能を実行させることは、前記GPU上における処理スレッドの非同期の実行を含む、画像処理方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12346308P | 2008-04-08 | 2008-04-08 | |
US12354908P | 2008-04-08 | 2008-04-08 | |
US61/123,549 | 2008-04-08 | ||
US61/123,463 | 2008-04-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010020755A JP2010020755A (ja) | 2010-01-28 |
JP5525175B2 true JP5525175B2 (ja) | 2014-06-18 |
Family
ID=40887920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009093554A Active JP5525175B2 (ja) | 2008-04-08 | 2009-04-08 | 複数のハードウェア・ドメイン、データ・タイプ、およびフォーマットの処理を統合し抽象化するフレームワーク |
Country Status (3)
Country | Link |
---|---|
US (2) | US8358313B2 (ja) |
EP (1) | EP2141651B1 (ja) |
JP (1) | JP5525175B2 (ja) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9849372B2 (en) * | 2012-09-28 | 2017-12-26 | Sony Interactive Entertainment Inc. | Method and apparatus for improving efficiency without increasing latency in emulation of a legacy application title |
US8358313B2 (en) | 2008-04-08 | 2013-01-22 | Avid Technology, Inc. | Framework to integrate and abstract processing of multiple hardware domains, data types and format |
US8910083B2 (en) * | 2009-11-10 | 2014-12-09 | Blackberry Limited | Multi-source picture viewer for portable electronic device |
US9323438B2 (en) | 2010-07-15 | 2016-04-26 | Apple Inc. | Media-editing application with live dragging and live editing capabilities |
US9645866B2 (en) * | 2010-09-20 | 2017-05-09 | Qualcomm Incorporated | Inter-processor communication techniques in a multiple-processor computing platform |
CN102754070A (zh) * | 2010-09-26 | 2012-10-24 | 联发科技(新加坡)私人有限公司 | 基于多个命令执行视频处理的方法及相关视频处理电路 |
US9099161B2 (en) | 2011-01-28 | 2015-08-04 | Apple Inc. | Media-editing application with multiple resolution modes |
US11747972B2 (en) | 2011-02-16 | 2023-09-05 | Apple Inc. | Media-editing application with novel editing tools |
US9997196B2 (en) | 2011-02-16 | 2018-06-12 | Apple Inc. | Retiming media presentations |
US9195501B2 (en) | 2011-07-12 | 2015-11-24 | Qualcomm Incorporated | Instruction culling in graphics processing unit |
US20130107289A1 (en) * | 2011-10-28 | 2013-05-02 | Microsoft Corporation | Rasterization of printing data |
JP5331192B2 (ja) * | 2011-11-07 | 2013-10-30 | 株式会社スクウェア・エニックス・ホールディングス | 描画サーバ、センタサーバ、符号化装置、制御方法、符号化方法、プログラム、及び記録媒体 |
US9542168B2 (en) | 2011-11-10 | 2017-01-10 | Microsoft Technology Licensing Llc | Hostable compiler utilizing type information from a host application |
US8941670B2 (en) * | 2012-01-17 | 2015-01-27 | Microsoft Corporation | Para-virtualized high-performance computing and GDI acceleration |
US11013993B2 (en) | 2012-09-28 | 2021-05-25 | Sony Interactive Entertainment Inc. | Pre-loading translated code in cloud based emulated applications |
US20140268240A1 (en) * | 2013-03-13 | 2014-09-18 | Rampage Systems Inc. | System And Method For The Accelerated Screening Of Digital Images |
CN104392408B (zh) * | 2014-10-20 | 2019-04-16 | 贵阳语玩科技有限公司 | 一种展现图像的系统及方法 |
US9161006B1 (en) * | 2014-12-05 | 2015-10-13 | Kamcord, Inc. | Systems and methods for efficient screen capture |
US9792663B2 (en) | 2014-12-15 | 2017-10-17 | Microsoft Technology Licensing, Llc | User-defined command buffer formats supporting data-parallel translation |
US10719303B2 (en) | 2015-06-07 | 2020-07-21 | Apple Inc. | Graphics engine and environment for encapsulating graphics libraries and hardware |
US9779468B2 (en) * | 2015-08-03 | 2017-10-03 | Apple Inc. | Method for chaining media processing |
US10515430B2 (en) | 2015-11-03 | 2019-12-24 | International Business Machines Corporation | Allocating device buffer on GPGPU for an object with metadata using access boundary alignment |
US10628296B1 (en) | 2016-04-04 | 2020-04-21 | Omni Ai, Inc. | Data composite for efficient memory transfer in a behavorial recognition system |
CN107818069B (zh) * | 2016-09-12 | 2021-10-01 | 阿里巴巴集团控股有限公司 | 数据处理方法及系统 |
US10564715B2 (en) | 2016-11-14 | 2020-02-18 | Google Llc | Dual-path foveated graphics pipeline |
US10262387B2 (en) * | 2016-11-14 | 2019-04-16 | Google Llc | Early sub-pixel rendering |
US10489877B2 (en) * | 2017-04-24 | 2019-11-26 | Intel Corporation | Compute optimization mechanism |
CN108965364B (zh) * | 2017-05-22 | 2021-06-11 | 杭州海康威视数字技术股份有限公司 | 资源配置方法、装置及系统 |
CN110163790A (zh) * | 2018-06-11 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、系统、存储介质和计算机设备 |
US10635439B2 (en) * | 2018-06-13 | 2020-04-28 | Samsung Electronics Co., Ltd. | Efficient interface and transport mechanism for binding bindless shader programs to run-time specified graphics pipeline configurations and objects |
US11119771B2 (en) | 2018-09-28 | 2021-09-14 | University Of South Florida | Computing 2-body statistics on graphics processing units (GPUs) |
US11029915B1 (en) | 2019-12-30 | 2021-06-08 | Avid Technology, Inc. | Optimizing audio signal networks using partitioning and mixer processing graph recomposition |
US20220147320A1 (en) * | 2020-11-09 | 2022-05-12 | Vizzio Technologies Pte Ltd | Highly parallel processing system |
US20230082839A1 (en) * | 2021-09-10 | 2023-03-16 | Adobe Inc. | Rendering scalable raster content |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2312818B (en) * | 1994-12-22 | 1999-11-03 | Apple Computer | Three-dimensional graphics rendering system |
US5774126A (en) * | 1995-11-27 | 1998-06-30 | Microsoft Corporation | Method and apparatus for dynamically changing the color depth of objects displayed in a computer system |
KR100920320B1 (ko) * | 2000-02-19 | 2009-10-07 | 디지맥 코포레이션 | 워터마크 인코더 및 디코더를 작동시키는 소프트웨어 |
AU2001247457A1 (en) * | 2000-03-18 | 2001-10-03 | Digimarc Corporation | Transmarking, watermark embedding functions as rendering commands, and feature-based watermarking of multimedia signals |
US20020184401A1 (en) * | 2000-10-20 | 2002-12-05 | Kadel Richard William | Extensible information system |
EP1359773B1 (en) * | 2002-04-15 | 2016-08-24 | Microsoft Technology Licensing, LLC | Facilitating interaction between video renderers and graphics device drivers |
US20050140672A1 (en) * | 2003-02-18 | 2005-06-30 | Jeremy Hubbell | Shader editor and compiler |
US7885469B2 (en) * | 2006-05-22 | 2011-02-08 | Microsoft Corporation | Encoded high dynamic range textures |
US8860752B2 (en) * | 2006-07-13 | 2014-10-14 | Apple Inc. | Multimedia scripting |
JP4257925B2 (ja) * | 2006-08-24 | 2009-04-30 | シャープ株式会社 | 画像処理方法、画像処理装置、原稿読取装置、画像形成装置、コンピュータプログラム及び記録媒体 |
US8358313B2 (en) | 2008-04-08 | 2013-01-22 | Avid Technology, Inc. | Framework to integrate and abstract processing of multiple hardware domains, data types and format |
-
2009
- 2009-04-08 US US12/420,371 patent/US8358313B2/en active Active
- 2009-04-08 JP JP2009093554A patent/JP5525175B2/ja active Active
- 2009-04-08 EP EP09157660.3A patent/EP2141651B1/en active Active
-
2013
- 2013-01-17 US US13/743,499 patent/US8982138B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP2141651A2 (en) | 2010-01-06 |
US8982138B2 (en) | 2015-03-17 |
US20090251475A1 (en) | 2009-10-08 |
US8358313B2 (en) | 2013-01-22 |
EP2141651A3 (en) | 2012-03-28 |
US20130127883A1 (en) | 2013-05-23 |
EP2141651B1 (en) | 2018-06-13 |
JP2010020755A (ja) | 2010-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5525175B2 (ja) | 複数のハードウェア・ドメイン、データ・タイプ、およびフォーマットの処理を統合し抽象化するフレームワーク | |
US10949177B2 (en) | Method and system of a command buffer between a CPU and GPU | |
US7750913B1 (en) | System and method for implementing graphics processing unit shader programs using snippets | |
JP5043921B2 (ja) | グラフィックオペレーションのための高レベルプログラムインターフェース | |
US20100214301A1 (en) | VGPU: A real time GPU emulator | |
KR101732288B1 (ko) | 스프라이트 그래픽 렌더링 시스템 | |
JP5242771B2 (ja) | 混合精度命令実行を伴うプログラマブルストリーミングプロセッサ | |
US8797336B2 (en) | Multi-platform image processing framework | |
KR101130407B1 (ko) | 향상된 그래픽 파이프라인을 제공하는 시스템 및 방법 | |
US8339404B2 (en) | System for improving utilization of GPU resources | |
CN108701368B (zh) | 用于经实施例化的几何结构的更有效的光线跟踪方法和装置 | |
US11227425B2 (en) | Emulation of geometry shaders and stream output using compute shaders | |
US20140354658A1 (en) | Shader Function Linking Graph | |
TW201719571A (zh) | 經由渲染命令串流器之僅關於位置的著色器背景提交 | |
CN111408138A (zh) | 基于游戏引擎的渲染方法、装置及电子设备 | |
TW201724010A (zh) | 對於具有較寬單指令多資料(simd)執行寬度之3d管線增加執行緒酬載的技術 | |
Tolo | Multi-gpu rendering with vulkan api | |
CN111796812A (zh) | 图像渲染的方法、装置、电子设备及计算机可读存储介质 | |
CN114827186A (zh) | 云应用处理方法和系统 | |
US7444583B2 (en) | Standard graphics specification and data binding | |
Browning et al. | 3D Graphics Programming | |
Bleiweiss | Shading Compilers | |
Sutherland et al. | Chapter 14: 3D Graphics Programming | |
Angel et al. | Modern OpenGL programming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120405 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130813 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130822 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20131122 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20131127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140221 |
|
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: 20140314 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140411 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5525175 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 |
|
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 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |