過去にWindowsを使って録音をした時の音声データが出てきた. 今はMacで音楽管理をしているのでMP3のようなMacで扱いやすいファイル形式へ変換したい. 音声ファイルの変換にはXLDをよく使っていたがWMAは未対応だった. なかなか良いソフトが見当たらなかったが,VLCメディアプレイヤーで開けることに気づく. そう言えばVLCにはファイル形式を変換する機能がある. だが,GUIインターフェースでは1曲づつしか変換出来ず,大変効率が悪かった. そこでCLIでバッチ処理することにした.
わたしの環境
- macOS Mojave 10.14.2
- VLC media player 3.0.6
- シェルはBashを使用
メモ ターミナルの扱い方が分からない場合やシェルが苦手な方などは本ページ下部へコメントを残していただければ,私から参考になるサイトや情報を可能な限り返信します. 本題に興味のある方はぜひ諦めずにシェルと友達になって,WMAファイルの変換を実現させてみてください. 応援しております.
1. VLCのインストール
VLCのインストールがまだ済んでいない場合は公式サイトからBMGファイルをダウンロードし,インストールする.
Official download of VLC media player...
BMGファイルをダブルクリックでマウントしたら,VLC.appをアプリケーションフォルダへドラッグ’nドロップするだけ. これでインストールは完了.
2. シェルの準備
ターミナル(Terminal.app)を立ち上げる. VLCがアプリケーションフォルダにインストールされているならば/Applications/VLC.app/Contents/MacOS/VLCと入力しEnterすればVLCが立ち上がるのだが,いちいちこんなパス指定するのは面倒なのでaliasを設定する.
~/.bash_profile
alias vlc="/Applications/VLC.app/Contents/MacOS/VLC"
これでターミナルを再起動すればvlcと入力するだけでVLCが立ち上がるようになる.
3. まずはひとつのファイルをCLIで変換
次のコマンドでMP3へ変換出来る.
vlc -I dummy -vvv ファイル名.wma --sout "#transcode{vcodec=none,acodec=mp3,ab=256,channels=2,samplerate=44100}:file{dst=ファイル名.mp3}" vlc://quit
acodec=に続いて変換先のフォーマットであるmp3を指定. ab=はAudio Bitrate. 128やら192やら256やら320などの数値を入れると良い. 数字が大きいほど音質は保たれるが結果としてファイルサイズが大きくなる. channels=はステレオ(左右2チャンネル)なので2. samplerate=は44100と,一般的なCDと同じ数値にすれば問題なし. dst=に続けて出力(変換)後のファイル名を入力. ちなみに,-I dummyでVLCのGUIが立ち上がらないようにしている. -vvvとすることで詳細なメッセージが変換中に表示され,最後のvlc://quitで変換終了と同時にVLCも終了させている. これでうまいことWMAファイルがMP3ファイルへ変換されたので,次は複数のWMAファイルをさばけるようにシェルスクリプトを組む.4. 複数のWMAをCLIで一気に変換!
ここからが本題. シェルスクリプトの名前はwma2mp3.shとした.
wma2mp3.sh | GitHub.com
以下,コードを載せる.
wma2mp3.sh
#!/bin/bash
bitrate=256
samplerate=44100
alias vlc="/Applications/VLC.app/Contents/MacOS/VLC"
for file in *.wma
do
echo $file
out="$(tr -d '\(.wma)$\i' <<< ${file})"
vlc -I dummy "${file}" --sout "#transcode{vcodec=none,acodec=mp3,ab=$bitrate,channels=2,samplerate=$samplerate}:file{dst=${out}.mp3}" vlc://quit
done
bitrate(ビットレート)とsamplerate(サンプルレート)は変数にすることで後から変更し易くした. 今回はビットレート256kbps,サンプルレート44.1kHzで.
chmod +x wma2mp3.sh
上記コマンドでwma2mp3.shに実行権限を与える. 後は同じフォルダ内に複数のWMAファイルとwma2mp3.shを入れて,そのフォルダ上でシェルスクリプトを実行すれば良い.
sh wma2mp3.sh
これでフォルダ内のWMAファイルが同名のMP3ファイルへと変換される. やったね!
XLDがWMA形式に非対応だったのには驚いた. 万能ツールだとばかり思っていたものだから... しかしVLCのようなフリーソフトがあって助かった. オンラインコンバーターの使用は極力さけたい人間なので,今回のシェルスクリプトは非常に重宝. 以上,macOSでWMAの扱いに困っている方などの参考になれば嬉しい.
参考サイト
2983533625688155834
https://www.storange.jp/2019/02/vlcwmamp3.html
https://www.storange.jp/2019/02/vlcwmamp3.html
VLCを使ってWMAファイルをMP3へ変換する方法
2019-02-03T20:05:00+09:00
https://www.storange.jp/2019/02/vlcwmamp3.html
Hideyuki Tabata
Hideyuki Tabata
200
200
72
72