英語学習者あるあるだと思うが、ナチュラルスピードの音源が早すぎて、心が折れるという現象が、まあ、よくあると思う。
そこでスロースピードとベーススピードを交互に再生させようと思うと、スマホアプリのRepete plusなどを使うと、かなり細かな設定ができて便利………なので、使っていたのだが、最近、私の設定のせいなのか、Repete plusとDropbox等の連携がうまくいかず、iphoneにうまくデータ移行ができずに困っていたのだけど、
「どうせだったら、もう、Windows上で、再生速度をスローにしたデータぐらいだったら、すぐ作れるんじゃね?」
と思い、やってみました、という話。
やり方:ffmpegとpowershellを使う。
1.ffmpegをインストールする
(環境設定とかを自分でやる必要があるので、若干インストールがめんどい)
2.powershell を開き、目的のmp3ファイルがあるディレクトリにcdで、移動
3.下記のコマンドをpowershellに打ち込む
(mp3ファイルの場合)
Get-ChildItem .\*.mp3 | ForEach-Object {
$newName = $_.BaseName + "_slow.mp3"
ffmpeg -i $_.Name -filter:a "atempo=0.8" $newName
}
(m4aファイルの場合)
Get-ChildItem .\*.m4a | ForEach-Object {
$newName = $_.BaseName + "_slow.m4a"
ffmpeg -i $_.Name -filter:a "atempo=0.8" $newName
}
うまくいけば、下記のような感じになる。(下記はALL IN ONEの音声教材CDを対象にしている)
4.必要があれば音声ファイルを一つに統合
このファイルのまま、iphone等にもっていくのならこのままでもいいし、統合する必要があれば、ファイルの統合もpowershellから行うことができる。
ファイルの統合の仕方は、下記を参照
音声ファイル(mp3, m4aなど)をコマンドラインで統合/変換する方法。 - ゲーム以外の雑記(井上明人)
この方法の利点と限界
- 利点
- 早い:少なくともDTWとかでファイルを一つ一つ処理するよりは早い。(バッチ処理できるやつとかだとあまり変わらんけど)
- やすい
- 限界
- 細かな調整に限界あり。