音声編集のコマンドツールsoxでフェードアウトさせたら、便利だったお話。
【結論】
soxで60秒目から5秒間フェードアウトして終了してmp3で保存
sox original.wav fadeout.mp3 fade t 0 65 5
【くわしく】
ラストログのBGMを収録して、配信するために、
全曲、1ループくらいで5秒フェードアウトさせたmp3を作るのが目的。
ラストログのBGMを1曲ずつ、2ループ分くらいのwavを作る。
この辺はBGMをそのまま収録した音声から編集ソフトで切り出し。
ってなってるところで、soxくんの登場!
1曲ずつ、フェードアウトさせたい秒数は調べておいて、コマンドを実行。
sox 【元音声ファイル.wav】 【作る音声ファイル.mp3】 fade t 0 【フェード開始時間+5】 5
曲のリストと、フェード開始時間をまとめた設定ファイルを作っておいて、
ぐるぐるループさせてコマンドを順次実行するようにさくっとphpを書いて、、、
ディレクトリ内のファイルを一括変換!やった!
ついでに曲順とか曲名とかも設定ファイルで設定しといてファイル名に。
普通のソフトを使って、フェード開始位置にカーソル合わせて、
キッチリ5秒間選択して、フェード実行、その先を削除してmp3で保存。
これを、全部やらないといけない、、って思うと、ラクチンチン!
ちなみに、fadeのあとのtは、フェードのタイプで、直線的にフェード。
そのあとの0は、フェードインの設定。今回はしないから0。
ちなみに、soxはbrewコマンドでインストール。
この辺はまたあとで書いてみよう。