2009年5月19日火曜日

バッチファイルへD&D

私は昔からのPCユーザなので、ちょっとした処理はコマンドプロンプトからバッチファイルを使って処理することも多いです。

しかし、つい最近まで、バッチファイルに対してD&Dをしてみる発想がなく、実際どうなっているのかよく知りませんでした。

ふと、FLVファイルからMP3ファイルを作る必要があり、FFMPEG+バッチファイルで処理していたのですが、いろいろ面倒だなぁと感じていたところ、バッチファイルにもD&Dができるって事を知って、目からうろこでした。
便利になったもんだぁ、WindowsXP....

「コマンドプロンプトを使ってみよう! -バッチファイルとは?」
http://ykr414.com/dos/bat.html

D&Dの際の引数
%0実行ファイル
%1D&Dされたファイル

この状態では、それぞれフルパスで値が入ります。
昔はこれだけだったはずなんだけどな・・・・

%と1の間に、"~"をつけて、下記のコマンド?を入れることで引数に対していろいろ加工ができます。
dドライブレター
pパス名
nファイル名
x拡張子


たとえば、"%~n1"とすれば、パス名は無視してファイル名(拡張子なし)だけが取得できます。その辺を活用したのが、下記の例です。flvファイルと同名のmp3が簡単に作れるわけですね。

これらを用いて、ちょっと書いてみます。
%~d0
cd %~dp0
ffmpeg -i "%~n1.flv" -vn -acodec copy "%~n1.mp3" -title "%~n1"


%~d0
cd %~dp0
ffmpeg" -i "%~n1.mp4" -vn -ab 192k -acodec mp3 "%~n1.mp3" -title "%~n1"

適当な名前でバッチファイルとして保存しておくと、D&Dだけで音声ファイルにできます。
レートとかは、雰囲気でどうすればどうなるかはおわかり頂けるかと。

※ffpmegは自分でなんとかしてください。

0 件のコメント:

コメントを投稿