4

2 年半前、Adobe は FlashPlayer 10 が色補正をサポートすると発表しました。確かに、すべてのコンテンツが sRGB でエンコードされていると常に想定し、そのコンテンツをシステムで使用されている現在のディスプレイ プロファイルに変換するため、実装は非常に基本的なものでした。これは、John Nack による紹介ブログ投稿でした。

この機能を有効にするために必要な AS3 は次のとおりです。

stage.colorCorrection = ColorCorrection.ON;

...そして、はい、これを機能させるにはステージ アクセスが必要ですが、それは問題ではありません。

そのため、私は Internet Explorer と Chrome で画像を表示するための小さなラッパーを作成して、色域が拡張されたディスプレイを使用している人々に正しくレンダリングされるようにし、同じ目的で Flash ベースのビデオ プレーヤーでもこれを使用しました。今日のいずれかを再訪すると、私が知っていることが機能していないことがわかりました。その間に変更されたのは、FlashPlayer のバージョンであり、おそらくブラウザのバージョンも同様です。OS X、Win 7、Win XP、icc v2、icc v4 ディスプレイ プロファイルをこれらすべて、さまざまなブラウザ バージョン、Flash Player バージョンで試しましたが、役に立ちませんでした。あなたは私が何か間違ったことをしたにちがいないと言うでしょうが、アドビがしばらくして公開した例のページは、確かに機能したと私は知っていますが、今日も失敗しています. Flash アプレットを見ると、次のように書かれていることがわかります。

stage.colorCorrectionSupport: unsupported

お使いのシステムでサポートされている場合は、OS、ブラウザとバージョン、および FlashPlayer のバージョンをコメントしてください。そうでなければ、この機能に何が起こったのかの手がかりを探しています。

少なくとも、ボードに参加しているアドビのスタッフは無知のようです。引用:この機能は、ほとんどの主要なブラウザーでデフォルトで無効になっているように見えるため、実験的な Web 標準の提案が終了したか何かだと考えています。ここでは多くのことを行っているわけではありません。ブラウザが正しいデータを渡し、正しい色変換計算を行っているかどうかに大きく依存しています。私たちは一連の出来事のかなり下にいます。

私は、これが FlashPlayer の進化のある時点で機能したという事実を知っています。したがって、次のことが何が起こっているのかを解決するのに役立つ場合があります。

  • アドビの例は、気になる人にとってまだ機能しますか?
  • これが非推奨のブラウザー機能に関するものである場合、なぜ古いブラウザーでは動作しないのでしょうか?
  • 特定の FlashPlayer で動作しなくなりましたか? (色々試しましたが出来ませんでした)

ノート:

  • 何らかの理由でwmode transparentで色補正が機能しませんでした(ただし、不透明は問題ありませんでした)
  • アルファ ブリーディング トランジションを使用すると、色補正が失敗することもありました

更新: wmode が "window" に設定されている場合でも、この機能は機能するようです。もちろん、それは非常に制限的です。ページにライトボックスなどがある場合、Flash コンテンツは常にその上に表示されます。これは問題です。wmode="window" を使用すると、この例は OSX 10.6 (これまでにテストしたバージョンのみ) および Win XP 32 ビットでも機能しました。私が試したすべてのwin 64ビットバージョンでまだ失敗しましたが、これらのシステムには複数の画面があるため、以下の最初のコメントがWin 7 64で機能したことを示唆しているため、単一の画面で再試行する必要があるかもしれません.これが機能したシステムでFirefoxを試しました、Safari、Internet Explorer、および Chrome。stage.colorCorrectionSupport: unsupportedChromeを使用する場合、組み込みのFPを無効にしてシステムを使用しているときに組み込みのFlashプレーヤーが常に提供されることを除いて、すべて同じように機能しました。

したがって、上記の質問は、他の wmode、特に「不透明」でこれが機能しなくなった理由に絞り込むことができます。これは以前は機能していましたが、Adobe がオンライン バージョンのサンプル ファイルで使用しているものです...

更新 2: Flash Player の新しい wmodes "gpu" および "direct" は、wmode "window" が機能する上記のシステム/ブラウザーで機能を失敗させます。

更新 3: wmode = "window" 角度を見つけた後、最初に引用した Adob​​e フォーラムにフォローアップを投稿することにしました。これにより、この問題全体が Flash Player のバグとして認識されるようになりました: https://bugbase.adobe.com/index.cfm?event=bug&id=3596843たまたまstage.colorCorrectionが発生しましたが、うまくいけばうまくいくでしょう。

更新 4:わかりました、これは必須の愚かさです...私がエラーを起こす前に wmode "opaque" が機能していたことを思い出したと言ったとき。これをさらに調べてみると、ずっと前にwmode="normal"JSファイルの1つを入れていたことがわかりましたnormal.Flash Playerの古いバージョンが存在しないため、標準のwmodeを使用してwindowいたため、当時は機能していました. 最近の Flash Player には、他のデフォルトがあります。たとえばdirect、カラー マネージメントが失敗するため、失敗しました。したがって、これは「window」以外の wmode では機能しなかったと思いますが、これに将来何がもたらされるのか興味があります...

4

1 に答える 1

1

(ええ、これは古い質問ですが、私は Flash Player 10 のプロダクト マネージャーだったので、答えようと思いました)

Flash Player はブラウザーで四角形を取得し、レンダリング スタックをほぼ完全に制御し、色の状態がわからないアイテムの合成を処理する必要がないため、ウィンドウ モードで動作します。

wmode transparent のようなものに切り替えると、その上下のレンダリングされた要素を合成する非常にクレイジーな前後のプロセスに入ります。wmode GPU に移行すると、レンダリング スタックの大部分が GPU に渡されます (当然のことですが)。どちらの場合も、Flash Player はレンダリング スタックの一部を制御できなくなり、その時点で色補正などを行うことができなくなります。

Flash Player 10 のこの機能の主な理由は、Flash Player でのインタラクティブな電子パブリッシング (inDesign SWF エクスポートなど) と、印刷指向のツール チェーンに役立つアプリケーションのサポートを可能にすることでした。

于 2014-08-10T22:16:49.570 に答える