Home > Flash > FLASHのFPSを正常に

FLASHのFPSを正常に

  • Posted by: wu
  • 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

処理が追いついていたとしても、IE6だと指定フレームレートの30より遅いはずです。

例のパラメータを付け加えたSWF

処理が追いついているならば、指定フレームレート30で再生されています。

FPS数値は1秒間に再生されたフレームの数を表しています。

追記:param name="wmode を使用した時に発生する不具合 (2006年4月18日)

でwmode使用時の不具合などが纏められています。

結局,

wmode指定なし
再生速度がやや遅くなるが,ホイール操作,キー入力,日本語入力等スムーズに行える.
wmode指定あり
ホイール操作,キー入力,日本語入力が使えないが再生速度が通常になる.

こんな感じですかね...

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では効果ありました。

Comment Form

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のデザインは浮かばな...

Home > Flash > FLASHのFPSを正常に

Book

実践 Web Standards Design

「実践 Web Standards Design」ではXHTMLやCSSの仕様からマークアップの手法・考え方をはじめ、レイアウトや実践的なWebサイト構築のワークフロー、そしてCSSを利用したさまざまな技術的Tipsを解説しています。

Products
Search
Feeds

Return to page top