私はオーディオの再生速度を遅くするVLCオプションが好きです。
これで、mp3ファイルをポータブルプレーヤーに転送して再生したいと思います。残念ながら、プレイヤーにはスピードダウンオプションはありません。
VLCを使用してmp3をゆっくり再生したように聞こえるように変換する方法は?
私はコマンドラインツールを好みますが、GNU / Linux用の他のフリーソフトウェアツールも受け入れます。
答え1
使用することをお勧めしますソックスこのように:
sox <input> <output> tempo 0.5
これにより、速度が2倍ほど遅くなり、<input>
結果が<output>
。
--show-progress
関連情報と進行状況を表示するオプションを追加できます。
SoX は、<input>
isnormal.wav
と<output>
is の場合、half-tempo.ogg
独自にさまざまなオーディオエンコーディングを検出します(該当するセクションの詳細な制御については、以下を参照してくださいman sox
)。
このアルゴリズムはVLCモジュールと同様の結果をtempo
提供する必要があります。scaletempo
しかし、代替stretch
アルゴリズムを試してみることができます。
sox <input> <output> stretch 2
結果がより包括的であると予想し(man sox
詳細についてはもう一度お読みください)、パラメータが指定されたパラメータの逆数であることに注意してくださいtempo
(この例では2
ありません)。0.5
SoXは、オプションでより多くの時間操作性を提供し、簡単にナビゲートすることができspeed
ますpitch
。bend
SoXをインストールするには、以下を使用してくださいapt-get
。
sudo apt-get install sox
追加のコーデック(MP3を含む)を有効にするには、次のライブラリを追加します。
sudo apt-get install libsox-fmt-all
最後に、次のようにコマンドラインでファイルの再生速度を遅くすることができるので、VLCに戻ります。
cvlc --rate 0.5 <input>
したがって、VLCに結果を一部のファイルに保存するように要求するか、オーディオをJACKに出力してからJACK互換レコーダーを使用する方法があります。
答え2
次のスクリプトはffmpegを使用してこれを行います。
#!/bin/sh
# Usage:
# slow_down.sh infile.mp3 outfile.mp3 0.75
# Can't slow down more than by a factor of 0.5 (limitation of ffmpeg).
if [ $# -lt 3 ]; then
echo 1>&2 "$0: not enough arguments"
exit 2
fi
rm -f $2 temp.mp4
ffmpeg -i $1 -filter_complex "[0:a]atempo=$3[a]" -map "[a]" -c:a aac temp.mp4
ffmpeg -i temp.mp4 -ar 48000 $2
rm -f temp.mp4
これはおそらく単純化されますが、2つのffmpegコマンドを1つにまとめる方法はわかりません。
私はこの方法の出力がsoxによって提供された2つのアルゴリズムの結果よりはるかに優れていることを知りました。私にとって、これはYouTubeのインターフェースでオーディオの速度を遅くするのと同じくらい良いようです。
答え3
ffmpeg -i "audio.mp3" -filter:a "atempo=0.5" "output_audio.mp3"
for %f in (*.mp3) do ffmpeg -i "%f" -filter:a "atempo=0.5" "output\slow_%f"