2009-05-20 19 views
2

私は小さなレコードレーベルを運用しており、AmazonのS3には多数のオーディオファイルが保存されています。私たちは標準のビットレートでMP3に変換します。私はNYTimesについて、EC2を使ってすべてのPDFを変換しています。私は変わったウェブプログラマーなので、興味があります。すべてのファイルをダウンロードして手作業で変換するのではなく、EC2インスタンスをセットアップしてファイルを変換するために何が必要になるのだろうかと思います。私はPHPで私のWebサーバーからそれを制御できるようにしたい、仮想LAMPスタックを作成し、LAMEエンコーダをインストールする方法はありますか?Amazon EC2でのMP3変換

答えて

5

mp3にオーディオファイル(私はそれがかなり一般的なフォーマットのプリフォーマット変換であると仮定していると仮定しています)を変換したい場合、LAMEはソリッドエンコーダです。

LAMEを使用するには、完全なLAMPスタックは非常に不要です。単純なシェルスクリプトで十分です。

変換されたコピーがすでにインプレースに存在しない場合(LAMEは出力ファイルを壊さないように注意してください)、カレントディレクトリ内のすべての* .wavファイルを.mp3ファイルに変換します。

#!/bin/bash 
for file in *.wav; do 
    dest="${file%wav}mp3" 
    if [[ -e "$file" ]] && [[ ! -e "$dest" ]]; then 
    lame "$file" "$dest" 
    fi 
done 

あなたのVBR/CBR/ABR(変数、定数と平均ビットレート)が必要に固有の変換オプションのためman lameに目を通すことになるでしょう。

+0

DEST =「$ {ファイル%WAV} mp3」 はそれを書くためのクリーンな方法です:]その先端のための – rmmh

+0

おかげで、オーケースクリプト – JensenDied

+0

を更新し、これはそれほど大変な鳴り。私は掘り起こすだろう。 – user110218

0

既にローカルEC2にファイルがある場合は、上記の回答はうまくいくが、S3からEC2に変換するパイプまたは一時ファイルに各曲をフェッチする必要がありますS3にバックアップするか、または一時ファイルに保存してからEC2に送り返します。

実際にEC2を使用していないので、使用しているストレージの種類は不明ですが、1つの一時mp3を保存するには十分なスペースが必要です。

状況を追跡する方法をいくつか作成することもできます。おそらく、起動する前にバケットのリストを作成することによって可能性があります。

おそらく、S3モジュールを使用するperlスクリプトが適していますが、私はここにすべてを入力するのは面倒です:)。

+0

ありがとう、私はこれを念頭に置いておきます。 – user110218

0

これにはElastic MapReduceを使用できます。出力として別々のファイルを吐き出すために少しでも遊ばなければならないかもしれませんが。