- 2004年5月15日 14:41
- Flash
FLASHを作る際、1秒間に再生するフレームの数を指定できるのですが、IE6を通して貼り付けられたFLASHを再生すると、指定したフレームレートより遅く再生されます。最初は自分のPCの処理速度が関係しているのかと思いましたが、他のブラウザーで同じFLASHを見ると正常なフレームレートで再生されていたので、どうやらIE6だけがこの現象になるようです。
どんなに処理の軽いFLASHを作ったとしても、IE6では指定したフレームレートより遅く再生されてしまうので、スピード感を強調させたいFLASHムービーやゲーム系FLASHなどでは問題ですね。
解決策
<param name="wmode" value="opaque" / >の1行を加えるだけで、この問題は解決されます。
swfを貼り付けるソースコード
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="100" height="100">
<param name="movie" value="hogehoge.swf" />
<param name="quality" value="high" />
<param name="wmode" value="opaque" />
<embed src="hogehoge.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="100" height="100"></embed>
</object>
param name="wmode"は、FLASHの背景を透明化(又は不透明化)するためのパラメーターですが、透明化(値:transparent)がIEにしか有効でないためあまり使用されません。valueは透明化するtransparentでも不透明化するopaqueでもどちらでもいいようです。何故これで解決するのかは良くわかりません・・。
再生速度の違いを確認してみる
IE6での問題なので、IE6で確認してください。
普通に貼り付けたSWF
例のパラメータを付け加えたSWF
FPS数値は1秒間に再生されたフレームの数を表しています。
追記:param name="wmode を使用した時に発生する不具合 (2006年4月18日)
でwmode使用時の不具合などが纏められています。
結局,
- wmode指定なし
- 再生速度がやや遅くなるが,ホイール操作,キー入力,日本語入力等スムーズに行える.
- wmode指定あり
- ホイール操作,キー入力,日本語入力が使えないが再生速度が通常になる.
こんな感じですかね...
- Newer: Moho
- Older: MT:見出し問題解決。
Comments:7
- wu 2004年6月 1日 21:18
補足。
これはWin IE6で起こるフレームレートの最大値削りをなくすものです。IE6で、指定したフレームレートより鈍くなっている動きを正常に戻すということで、結果的にIE6では高速化するということですね。なので指定したフレームレートより高速になるわけではありません。
それと、もともとPCの処理が追いついていない場合のフレームの間引きを回避するものではありません。この1行を加えて処理が軽くなるわけじゃないです。- wu 2004年6月 1日 21:30
比較しているflASHにFPS表示を付けました。
- シュン 2004年10月10日 08:16
お初です。
ちょうど同じ問題に直面していたので非常に助かりました!本文では「IE6だけ」とありますが、WindowsのFirefoxでも効果があります。パラメータ無しだと5~7FPSほど遅いです。
- wu 2004年10月11日 11:54
おぉ、ほんとですね。ありがとうございます。
Firefoxでも効果ある!ドーン!
- 通りすがり 2004年12月23日 05:10
結構前に同じ問題で悩んで、試行錯誤した結果、無音でもなんでもいいので音声をストリーム再生させると正しい fps になるようでした。なので世にある多くの swf は多分正常な fps で動いてると思います (間違ってたらごめんなさい) 。
wmode よりださくて面倒な解決ですが、どうしても swf に直リンクで動作させたい場合 (?) などには有効かも知れません。参考まで。- 別の通りすがり 2007年5月29日 12:28
IE7でも効果ありです
- また別の通りすがり 2007年6月21日 20:54
外部jsファイルにソースを記述する場合はIE6で見るとvalue="opaque"を記述しても速度は変わりません。firefoxでは効果ありました。
Trackbacks:8
- TrackBack URL for this entry
- http://3ping.org/mt2/mt-tb.cgi/25
- Listed below are links to weblogs that reference
- FLASHのFPSを正常に from 3.5ping.org
- FLASHのFPSを正常に from blog.tokyoace4.com 2004-05-31 (月) 23:06
- Ozacc : FLASHのFPSを正常に経由、 Bazooka : FLASHのFPSを正常に行き。 IE6で10%ほど高速化されるとのこと。 まじですか。試してみた。15fpsのムービーで15frame目の経過秒数を計測。 対応版: 非対応版:......
- wmode from apeirophobia 2004-06-01 (火) 08:30
- IE6でFlashの再生がちょっと遅くなったんじゃないか?とかいう話は前々からありましたが、それの関連でメモ。 Bazooka: "FLASHのFPSを正常に" <param name="wmode" value="transparent" /> 背景透明化(IE6だけ)のパラメーターを設定すればいいそうです。......
- FlashのFPSがおかしい? from blog.grayash.com 2004-10-10 (日) 23:14
- 仕事で作ったFlashの動作がどうもニブいような気がする。 スピード感を出したいんだけど、ブラウザ上で見るとなんとなく遅い・・・ような気がする。 気のせいかな〓と思いつつ、フレームレートを調べて見ると何故かブラウザ上で表示させたものはFlashPlayerで見るものより...
- WIN IE6 でのFPSの正常化 from @mono ~ネットプラシーボ~ 2005-04-10 (日) 02:26
- いまやシェア率ダントツTOPのIE6なわけですが、バグなのか使用なのか再生速度が...
- フレームレート from Crimson Library 2005-07-20 (水) 21:23
- FLASHは、1秒間に何回画面を更新するかという設定ができます。 フレームレート...
- FlashのFPSを正常に from TRICK7 blog 2005-10-12 (水) 13:49
- winのIE6等ではflashのFPSが落ちるらしいのですが、 param na...
- ストリーミング from フラッシュWiki (PukiWiki/TrackBack 0.3) 2005-12-31 (土) 05:57
- ストリーミング 音声と画像の同期を計る。 再エンコードする必要があるため音声が劣化する畏れがある。 またエンコードするためにパブリッシュの時間もかかる...
- Win環境でのFlashフレームレート from Hybrid Style Design. BLOG 2006-03-08 (水) 09:25
- ここのところ、仕事もないしFlash Mailer miniのデザインは浮かばな...
