フラッシュは、データ量は少ないのですが、ベジェをつかっているためマシンパワーを使います。そのためクライアントの環境によってmovieの再生速度がだいぶ違ってきます。なので音とアニメの同期は結構難しいと思います。
BGMが繰り返しだと無理ですが、最初からBGMを加工してフェードアウトさせた音をflashに読み込むというのはどうでしょうか?
根本的な解決にはなりませんが。そのほうが無難な気がします。
あとは、実際のムービーのつくりを見れるとよいのですが、、、
あとは書き出すときに映像にしてしまうかですが、インタラクティブなものだったらだめですが。。。
ダミー:http://a.a
http://f-site.org/articles/2002/05/30000002.html
Flashでの画像の使用に関する記事です。
まず、ActionScriptを使用しているのであれば、swf以外のフォーマットでの再現は困難だと思われます。ActionScriptを用いずに、モーションガイドなどで動きを作り直す必要があるでしょう。もし、例えば乱数や時刻によって毎回違う動きをさせるといった処理が含まれている場合は、なんとかしてswfで解決しなければならないと考えます。
ご質問の内容ですが、ムービーを再生させるPCの環境によって、動画と音声とのタイミングが合わなくなるという意味で理解してよろしいでしょうか。だとするとこれは、サウンドの「ストリーミング」を使用することで解決する可能性があります。
以下のことをお試しください:
ご回答ありがとうございます。
やはり、action scriptを使用していると、swf以外の再現はできないのですね…。はっきりわかってよかったです。
使用している部分は、『円』がとても小さいものから大きく広がるというムービークリップを、サイズ違いで数種類作り、画面全体にちらして配置し、ムービーの場面を変えるというところです。
そのムービークリップを普通に数十個フレームで作り、配置すると動きが激しくにぶくなるので、このような形式にして作りました。最悪、そのようにしなければならなそうですね…。
質問の内容につきまして、言葉足らずで申し訳ございませんでした。回答1の返信に書かせていただいたような状態になっております。ストリーミング、ちょっと試してみます。ありがとうございました。
swfを再生しているウィンドウをキャプチャソフトで録画して、別形式の動画にする方法もあります。例えばWindowsの場合だと「劇場版ディスプレイキャプチャーあれ」というソフトがあります。このソフトを使って、aviやmpeg形式の動画を作成することができます(ただし上記ソフトでは音声は録音されないので、別途映像ファイルと音声ファイルを結合する必要がありますが)。
ご回答ありがとうございました。
すごい方法もあるのですね…!勉強になります。が、今回には間に合いそうにないので次回からの手段として覚えておきます。ありがとうございました。
ActionScriptの「setVolume()」を使えば音量を制御できます。
ムービーの最後のフレームに以下のようにスクリプトを書けばフェードアウトできるのではないでしょうか?
Soundはサウンドオブジェクトです。
Sound.onEnterFrame = function() {
V = mySound.getVolume();
mysound.setVolume(V-3);
if (V <= 0) {
mySound.stop();
}
}
最近、Flashを使っていないので、動くかどうかわかりませんが、getVolume()とsetVolume()を使えば、うまくフェードアウトすると思います。
参考にしたのは、http://oshiete1.goo.ne.jp/kotaeru.php3?q=1374890ですが、少し複雑に書いてありますので、必要なところだけかいつまんで使うとよさそうです。
再度ご回答いただきありがとうございます!
さっそく、教えていただいた通り、最後のフレームに書いていただいたスクリプトを書いてみました、が、動きませんでした…。
実は私は初心者向けくらいの簡単なaction scriptしかわからないので、どこがいけないのか、わかりませんでした。今日あと数時間内に仕上げなくてはいけないので、ヒントを元に頑張ってみますが…。
“Soundはサウンドオブジェクトです。”という意味すらわかりません。ごめんなさい。(なにか、どこかに名前をつけてSoundという箇所に名前を入れるのかと思ったのですが、やはり違いますか?)
参考のURLはもう全くわかりませんでした。無知ですみません…。
今後このようなことにならないように、参考本など揃えます。
ご回答ありがとうございます。
音とアニメの同期はやはり難しいのですね…。参考になりました。
音は200秒くらいある市販のBGM(wav)で、swfムービーの長さが100秒くらいで終わるのですが、クライアントの希望で最後をフェードアウトして欲しいということで、わたしがFLASH上で、読み込んだwavを編集しています。方法としてはムービーの終わる頃にタイミングを合わせて波形を動かし、フェードアウトになるよう修正しました。…これは、おっしゃっていただいたBGM加工と一緒の意味になるのかな、と思っているのですがどうでしょうか?
インタラクティブムービーではないので、できればおっしゃるような「映像」に変換をしたいと思うのですが…
実際のムービーは都合で、公開ができないものなのです。せっかくのお申し出、申し訳ございません。ありがとうございました。