IEのFlash Playerが遅い件と、wmodeとの悩ましい関係
- 2008-05-02
- flash
Flashの変な仕様シリーズ第2弾。
「WindowsIEのFlash Playerの再生速度が遅いのは、wmodeを設定すると回避できるけど」という有名なやつを取り上げます。
このことについてはいろんなブログやらなんやらで解説されていますが、以下の記事がわかりやすくまとめられています。
↑の記事が書かれたのは4年前。その間にIEは6から7になり、FlashもCS3までバージョンアップしましたが、この仕様は未だに直っていません。
CS3で作ってみた参考Flash(フレームレート50で作成)
wmode設定なし | wmode設定あり |
「wmode」はFlashの背景を透過させるかどうか設定するパラメータです。値は「opaque(不透明表示)」と「transparent(透明表示)」の二つがありますが、どっちを設定しても、WindowsIEの再生スピードを正常にすることができます。なぜなのかは全くわかりません。回避できる以上、プレイヤーの処理スピードが追いつかないで起こっている現象じゃないと思うので直せそうなのになぜ直さないんでしょうか。
でもまあwmodeを設定すれば回避できるんだから解決解決、めでたしめでたし。
というわけにいかないのがFlashの悩ましいところです。wmodeにはこれまたたくさんのバグというか変な仕様があるのです。
[wmodeのバグについての参考ページ]
不健康ノート - wmodeは鬼門
graffiti-blog - wmodeのクセ
wmodeを使うことで起こる、以下の二つのバグは深刻です
・日本語入力がうまくいかなくなる
・キー入力、マウスホイール操作がうまくいかなくなる
キー入力がうまくいかなくなる参考Flash
wmode設定なし | wmode設定あり |
上の二つのFlashは十字キーでMCを移動させるFlashです。左のwmodeを設定していないFlashは普通に動作します。右のFlashは左のFlashと全く同じものをwmode=opaqueで貼り付けたものですが、クリックしてスタートした後、上下のキーを押すと、WindowsIEの場合はキーフォーカスがうまく効かず、ブラウザがスクロールしてしまいます。FireFoxだとキー入力を全く受け付けなくなることもあります。
インタラクティブ性の高いFlashや、ゲーム的なFlashで、操作性の部分で不具合が出てしまってはお話になりません。その場合はwmodeの設定は外して、WindowsIEの再生スピードが遅くなるのを諦めるほかないでしょう。涙。
wmodeの設定なんかつけなくても、WindowsIEでFlashが正常なスピードで再生される。そんな日が早く来たらいいのになー。
[追記]
どうしてもフレームレートどおり表示させたいときは、無音の音をストリーミングで流して強引に合わすという方法があります。
Flashゲーム講座&ASサンプル集 - 音に合せて映像の同期を取る
[追記] 2008/11/02
Flash Player10より、wmodeを設定しなくても正常なスピードで再生されるようになりました。
firefoxで再生速度が遅い
6 月 6th, 2012 at 11:18:52Operaでは早い
IEが一番普通でした
これって環境に左右されるんじゃないでしょうか
Bardzo ciekawy blog i fantastyczne zdjęcia. Szkida, że przestałeś pisać. Czekam na kolejne wpisy.
9 月 14th, 2023 at 17:51:38Pozdrawiam.
Bardzo dobrze napisany blog i świetne zdjęcia. Czekam na dalsze informacje i posty.
9 月 14th, 2023 at 17:53:31Pozdrawiam