ffmpegで動画を携帯(810T)で再生可能な動画ファイル形式に変換する場合、以下のオプションで可能であった。
ffmpeg -y -i 動画ソースファイル -t 20 -vcodec mpeg4 -b 64k -r 15 -s 176x144 -acodec aac -ar 16000 -ab 12.2k -ac 1 -flags bitexact 変換後ファイル
毎回オプションを記述するのは面倒なので、以下シェルスクリプトを書いた。
FileName:/usr/local/bin/movie
#!/bin/sh
OPTION="-y -t 20 -vcodec mpeg4 -b 64k -r 15 -s 176x144 -acodec aac -ar 16000 -ab 12.2k -ac 1 -flags bitexact"
filename(){
awk '
BEGIN{
op="'$1'";
for(i=length(op);i>=0;i--){
if(substr(op,i,1)==".")break;
}
i--;
if(i<0 br=""> i=length(op);
}
print substr(op,0,i);
}'
}
for i in $*
do
echo $i
echo /usr/bin/ffmpeg $OPTION -i $i `filename $i` .3g2
/usr/bin/ffmpeg $OPTION -i $i `filename $i`.3g2
done
このシェルスクリプトの使い方は次のとおりで、変換結果はソースファイル名の拡張子を3g2に変更したファイル名のものに出力される。
movie 動画ソースファイル名0>
2008/08/05