Flashで動画を再生しよう!第 5 回 動画を公開!

No Photo

集中連載「Flashで動画を再生しよう!」の最終回です。
今回は SWFObject1.5 を使ったコンテンツの埋め込み方法を紹介したいと思います。
SWFObject とは JavaScript を用いて swf ファイルを埋め込むライブラリです。
現在 SWFObject を使って swf ファイル埋め込むのが主流になってきています。
SWFObject を使う利点は以下があげられます。

  • InternetExplorer の Active Content Update 問題に対応
  • Flash プラグインのバージョン検出ができる
  • Flash でパブリッシュ生成したタグよりシンプル

但し SWFObject を使う注意として、JavaScript をオフにしてるユーザーは見れないという点があります。
この場合は、代替表示で対応するようにします。

STEP1

SWFObject をサイトからダウンロードしてきます。

STEP2

実際に HTML にコード埋め込んでみましょう。

<head>~</head>内に以下を書き込む

<script type="text/javascript" src="swfobject.js"></script>

任意の場所に下記コードを書き込む

<div id="">
<p>実際に swf が表示される場所、代替の表示も可能です</p>
</div>

<script type="text/javascript">
var so = new SWFObject("swfファイルのパス", "swf名", "", "高さ", "Flashplayerのバージョン", "背景色"); //swfのソース情報
so.addParam("パラメータ", "値"); <!-- swf に設定可能なパラメータ -->
so.addVariable("変数名", "値"); <!-- 変数などを渡す場合 -->
so.write("div id名(★)");
</script>

STEP3

swf には以下のパラメータの設定ができます。

quality Flash コンテンツを再生するときの画質の設定です。何も指定しない場合のデフォルトは high です。
low 低画質、グラフィックスのアンチエイリアス処理、ビットマップのスムージング処理共に行われません。
medium 中画質、グラフィックスは2×2ピクセルグリッドを使ってアンチエイリアス処理されます。ビットマップはスムージングされません。
high 高画質、グラフィックスは4×4ピクセルグリッドを使ってアンチエイリアス処理されます。ビットマップはムービークリップが静的であればスムージングされます。
best 最高画質、グラフィックスは4×4ピクセルグリッドを使ってアンチエイリアス処理されます。ビットマップは常にスムージングされます。
scale swf のサイズの設定
default 指定した範囲内に swf ファイルが全体表示されます。 サイズ比率は維持されるため伸縮による歪みは生じません。
noorder 指定した範囲全体を埋めるように swf ファイルが伸縮されます。 サイズ比率は維持されるため伸縮による歪みは生じませんが、swf ファイルの一部が隠れることがあります。
exactfit 指定した範囲内に swf ファイルがぴったり収まった状態で表示されます。サイズ比率を考えて指定しないと歪みが生じます。
wmode swf ファイルの背景を透明化するかしないか設定できます。指定してある背景色は無視されます。
opaque 背景を不透明化する
transparent 背景を透明化する
align デフォルトは、ブラウザウィンドウの映画を中心表示になります。
L ブラウザの左端に表示します。表示中のブラウザより swf ファイルが大きい場合、上下と右側で隠れる部分が出ます。
R ブラウザの右端に表示します。表示中のブラウザより swf ファイルが大きい場合、上下と左側で隠れる部分が出ます。
T ブラウザの上端に表示します。表示中のブラウザより swf ファイルが大きい場合、左右と下側で隠れる部分が出ます。
B ブラウザの下端に表示します。表示中のブラウザより swf ファイルが大きい場合、左右と上側で隠れる部分が出ます。
salign 基本的には「align」とほぼ同じですが、より詳しく設定できます。
L 左に揃えた状態で表示します。表示中のブラウザより swf ファイルが大きい場合、上下と右側で隠れる部分が出ます。
R 右に揃えた状態で表示します。表示中のブラウザより swf ファイルが大きい場合、上下と左側で隠れる部分が出ます。
T 上に揃えた状態で表示します。表示中のブラウザより swf ファイルが大きい場合、左右と下側で隠れる部分が出ます。
B 下に揃えた状態で表示します。表示中のブラウザより swf ファイルが大きい場合、左右と上側で隠れる部分が出ます。
TL 左上に揃えた状態で表示します。表示中のブラウザより swf ファイルが大きい場合、右側と下側で隠れる部分が出ます。
TR 右上に揃えた状態で表示します。表示中のブラウザより swf ファイルが大きい場合、左側と下側で隠れる部分が出ます。
BL 左下に揃えた状態で表示します。表示中のブラウザより swf ファイルが大きい場合、右側と上側で隠れる部分が出ます。
BR 右下に揃えた状態で表示します。表示中のブラウザより swf ファイルが大きい場合、左側と上側で隠れる部分が出ます。
flashvars Object または Embed タグ内に記述することで、変数を swf ファイルに渡すことが可能になります。
menu 右クリックしたときにポップアップされるメニューをの属性です。通常のメニューには、ブラウザ内での表示方法や再生、拡大などを制御できるオプションがありますが、表示させたくないときは、この MENU 属性を使って、メニュー項目を制限できます。
play ブラウザで読み込んだときにプレーし始めるかどうか指定します。デフォルト値は true です。
loop 繰り返しの設定します。デフォルト値は true です。
allowscriptaccess JavaScript の実行を常に許可、または常に禁止します。
always allowScriptAccess パラメータが含まれる swf ファイルに対して JavaScript の実行を常に許可します。
samedomain swf ファイルが HTML ファイルと同一のドメイン上に存在する場合にのみ JavaScript の実行を許可します。
never allowScriptAccess パラメータが含まれる swf ファイルに対して JavaScript の実行を常に禁止します。

※WMODE の特性について

  • wmode を設定しない場合は FPS が若干遅くなる。
  • wmode を設定すると日本語入力がスムーズに行かなくなる。
  • wmode を設定するとホイールが効かなくなる。

集中連載企画 「Flashで動画を再生しよう!」も今回で最終回です。
ご愛顧を誠にありがとうございました。
今後とも現場で役に立つ情報をお送り差し上げていきますので、どうぞよろしくご期待ください!

  • このエントリーをはてなブックマークに追加

この記事を読んだ人にオススメ