はじめに †
transcode のインストール †
transcode の使い方 †
- 通常の使い方
transcode -i /srv/ftp/Video/in.mpg -Z 640x480 -y xvid -o /srv/ftp/Video/out.mpg
Option | 指定内容 |
i | 変換元ファイル。解像度やフォーマットは自動認識でOK |
o | 変換先ファイル |
y | 変換先エンコード。現バージョン(1.0.3)ではdivx4やdivx5は非推奨になっており、xvidと指定する |
Z | 変換先解像度。640x480が無難(ファイル容量半分)。320x240にするとファイル容量は1/8程になるが画像が少しぼやける |
- 2pass encoding
transcode -i /srv/ftp/Video/in.mpg -Z 640x480 -y xvid -o /dev/null -R 1,/tmp/divx.log
transcode -i /srv/ftp/Video/in.mpg -Z 640x480 -y xvid -o /srv/ftp/Video/out.mpg -R 2,/tmp/divx.log
最初に変換元ファイルを仮エンコーディングし、再度場面場面に
あったビットレートでエンコーディングするようにすることも出来る。
単純に2倍時間がかかるけど
自動実行 †
- /etc/cron.daily/convert に、HDDレコーダから動画を移す
ディレクトリにある mpg ファイルをdivx にエンコーディング
するスクリプトを書いた。
- HDDレコーダから動画を移しておけば、しばらくすれば自動的
に divx になる仕組み。
- 二重起動しないように lock ファイルを作るようにしたけど、crond って
前の JOBが終わっていないと二重起動しないようになっているようなので、
この仕組みは必要なかったかも
#!/bin/bash
VIDEO_HOME="/srv/ftp/Video"
if [ -f "$VIDEO_HOME/lock" ]
then
date=`date`
echo $date "Predecessor was working, this process is abort." >> /var/log/conv.log
exit 0
fi
touch $VIDEO_HOME/lock
ls $VIDEO_HOME | grep mpg | while read file
do
if [ -f "$VIDEO_HOME/$file" ]
then
date=`date`
echo $date "start $VIDEO_HOME/$file" >> /var/log/conv.log
rm /tmp/divx.log
transcode -i "$VIDEO_HOME/$file" -Z 640x480 -y xvid -o /dev/null -R 1,/tmp/divx.log
transcode -i "$VIDEO_HOME/$file" -Z 640x480 -y xvid -o "$VIDEO_HOME/${file%%.mpg}.avi" -R 2,/tmp/divx.log
date=`date`
echo $date "end $VIDEO_HOME/$file" >> /var/log/conv.log
mv "$VIDEO_HOME/$file" "$VIDEO_HOME/bkup/"
fi
done
rm $VIDEO_HOME/lock
実行結果 †
kagyuu@grape:~> cat /var/log/conv.log
Wed Nov 28 13:00:01 JST 2007 start /srv/ftp/Video/地獄少女 #1.mpg
Wed Nov 28 18:23:28 JST 2007 end /srv/ftp/Video/地獄少女 #1.mpg
Wed Nov 28 18:23:28 JST 2007 start /srv/ftp/Video/地獄少女 #2.mpg
Wed Nov 28 23:47:05 JST 2007 end /srv/ftp/Video/地獄少女 #2.mpg
Wed Nov 28 23:47:05 JST 2007 start /srv/ftp/Video/攻殻機動隊STAND ALONE COMPLEX #1,2.mpg
Thu Nov 29 10:21:34 JST 2007 end /srv/ftp/Video/攻殻機動隊STAND ALONE COMPLEX #1,2.mpg
Thu Nov 29 10:21:34 JST 2007 start /srv/ftp/Video/攻殻機動隊STAND ALONE COMPLEX #3,4.mpg
Thu Nov 29 20:58:09 JST 2007 end /srv/ftp/Video/攻殻機動隊STAND ALONE COMPLEX #3,4.mpg
Thu Nov 29 20:58:09 JST 2007 start /srv/ftp/Video/攻殻機動隊STAND ALONE COMPLEX #5,6.mpg
- 30分のアニメのエンコーディングに 5時間、60分だと 10時間近くかかっている
- どうせこのサーバには、これといって他に仕事がないからOK
(一応 Web,Mail,SMB,NTP,Proxy,... サーバだけど、家庭内LANサーバなんでほとんど負荷はない)
- ちなみにこのサーバのスペックは
CPU | Geode NX 1500 @ 6W (=低電圧版AthlonXP 1GHz) |
MEM | 1GB |
- CPU負荷のグラフを見てみると・・・
はっはっはぁ、働け働け!
16:9の動画の解像度 †
transcode -i xyz.mpg -Z 800x450 -y xvid -o xyz.avi
なんで、16:9 のソースがあるのかは・・・
Suse 10 Server