有名な話だと思いますが、最近知ったのでメモしておきます。

延々とループさせるBGM用としての音素材をFlash内で扱う場合、AIFFやWAV、MP3など各種ファイルフォーマットのデータをライブラリに追加して利用することができます。

しかし、良かれと思ってファイル容量の軽いMP3をライブラリ内に入れてループ再生すると、ちょうどループのつなぎ目部分に約0.5秒ほどの無音部分が入ってしまい、うまくループされません。厳密には素材の先頭部分にその無音部分が入ってしまうようです。


そこで、MP3ではなくWAVやAIFF形式の音素材をライブラリに追加し、書き出す段階でMP3に圧縮する設定に変更してみると、問題なくループ再生されました。

無音部分が入るのはMP3形式の仕様とのことですが、音素材を受け取った時点でiTunesに放り込み、MP3形式に変換してループ再生させてみても、この段階では気がつきません。iTunesは親切にも、この先頭の無音部分をカットしてリピート再生してくれるようなので。


バグにせよ今回の原因にせよ、自分が良かれと思ってやったことに対しては疑いの余地を持たないために原因に気がつかないケースが多い気がします。いわゆる思考停止状態ってやつですね。あぁ、こわいこわい。

HTML5飯