BGM再生開始画像の指定

2007.06.24
当フラッシュスライドショーサンプルはBGM(16秒,128KB)を再生します。スピーカーのボリュームにお気をつけ下さい。
8枚の画像がループ表示されます。4枚目の表示と同時にBGM再生が開始されるよう定義しています。8枚目の画像表示後は1枚目へ戻り、BGMはそのままループ再生されつづけます。任意の画像表示と同時にBGMを再生するにはエキスパートモードを利用します。
loop_noパラメータやloop属性を操作すること8枚目の画像で停止させたり、BGM再生を1回のみにする等も可能です。
定義ファイル(xml)作成時のポイントは以下です。
- エキスパートモードで定義する
- BGM再生を開始したい画像定義部にbgm_urlパラメータを指定する
- 画像の再生制御はloop_noパラメータで行なう
- BGMの再生制御はloop属性で行なう
- 読み込む画像サイズ、MP3のサイズに応じて遅延制御系パラメータでCPU負荷を調整した方が良いでしょう。
画像の上下動は別サンプル上下のパンニング(カメラ移動)のカスタムエフェクト定義を流用しています。前者は大きめな画像を扱ってますが、当サンプルは小さめの画像を上下にパンニングしています。
当サンプルの定義ファイル(???.xml)
<?xml version="1.0" encoding="UTF-8" ?> <pagedata> <common> <copyright>elz.jp</copyright> <!-- バナー表示位置指定 --> <banner_align>1</banner_align> <!-- エフェクト指定 --> <effect_time>30</effect_time> <stop_time>0</stop_time> <!-- 表示位置関係パラメータ指定 --> <align_mode>5</align_mode> <base_mode>5</base_mode> <zoom_mode>0</zoom_mode> <!-- ループ制御 最終画像表示後1番目の画像へ戻る --> <loop_no>1</loop_no> <!-- CPU負荷制御 --> <stream_buffer>0</stream_buffer> <start_delay>20</start_delay> <load_delay>5</load_delay> <!-- 任意のローディングマーク表示 --> <loading_mark_url>media/fpe/top/loading002.jpg</loading_mark_url> </common> <!-- 画像個別定義(エキスパートセクション) --> <expert> <image> <image_url effect_type="in001,out001" >media/fpe/top/a001.jpg</image_url> </image> <image> <image_url effect_type="in002,out002" >media/fpe/top/a002.jpg</image_url> </image> <image> <image_url effect_type="in001,out001" >media/fpe/top/a003.jpg</image_url> </image> <!-- 4枚目の画像にbgm_urlパラメータでMP3を指定 --> <image> <bgm_url loop="1" streaming="0">media/bgm/elz_bgm001.mp3</bgm_url> <image_url effect_type="in002,out002" >media/fpe/top/a004.jpg</image_url> </image> <image> <image_url effect_type="in001,out001" >media/fpe/top/a005.jpg</image_url> </image> <image> <image_url effect_type="in002,out002" >media/fpe/top/a006.jpg</image_url> </image> <image> <image_url effect_type="in001,out001" >media/fpe/top/a007.jpg</image_url> </image> <image> <image_url effect_type="in002,out002" >media/fpe/top/a008.jpg</image_url> </image> </expert> <!-- カスタムエフェクト定義 --> <effect> <!-- 上から下へパンニング --> <in001 x="0,320" y="1,100,0" alpha="111,100,0" /> <out001 y="1,200" alpha="211,0" /> <!-- 下から上へパンニング --> <in002 x="0,320" y="1,100,200" alpha="111,100,0" /> <out002 y="1,0" alpha="211,0" /> </effect> </pagedata>
