Lameエンコーダー(lame.exe)を使用してwavファイルをmp3に変換したいと思います。 wavファイルは次の仕様に沿って記録されます。
ビットレート: 64kbps
オーディオサンプルサイズ: 8ビット
チャネル: 1 (mono)
オーディオサンプルレート: 8 kHz
オーディオ形式: CCITTA-Law
Lameを使用してこのようなwavファイルを変換しようとすると、次のエラーメッセージが表示されます。
Unsupported data format: 0x0006
誰かが私にこれらの種類のwavファイルを変換することを可能にするlame.exeを使用したコマンドライン文字列を提供できますか?
SoXを使用して、A-law入力データをLAMEが処理するためのより標準的なPCMデータに変換したいとします。
sox -A -c 1 -r 8000 input.8khz-mono-alaw.wav ouput.wav
これで、output.wavに標準のPCMWAVデータが含まれるはずです。これに対してLAMEコマンドを実行します(好きなオプションを追加します):
lame output.wav output.mp3
または、SoX出力をLAMEに直接パイプします。
sox -A -c 1 -r 8000 input.8khz-mono-alaw.wav - | lame - output.mp3
libsndfileをダウンロードしてコンパイルします。バージョン1.0.17を使用しました。lameのソースをダウンロードしてから、この構成設定を使用します。
./configure --with-fileio=sndfile
その後
make && make install
今それは動作します。
ここに 私のために働いた答え:
次のコマンドを使用してWAVファイルを変換しました。
sox file.wav file.cdr
sox -t cdr file.cdr -t wav- | lame -b 32 -m mono --file.mp3
これらのコマンドは、私のWAVファイルで32 kbit/s、22050HzモノラルフォーマットのMP3ファイルを生成します。 lameコマンドのパラメーターは、前の投稿で説明したコマンドによって生成されたファイルと同様のファイルを生成するようにカスタマイズされています。
sox file.wav file.mp3
私のマシンでは、コマンド:
sox file.wav file.mp3
23分でWAVファイルを変換して130MBのMP3ファイルを生成します。
およびコマンド:
sox file.wav file.cdr sox -t cdr file.cdr -t wav- | lame -b 32 -m mono --file.mp3
wAVファイルを39分で変換し、131MBのMP3ファイルを生成します。
最初の方法は高速ですが、パッチを適用したsoxが必要です。