recpt1用スクリプトを作る(その1)

| No Comments | No TrackBacks
さて、Ubuntu機にPT2を設定すると以下のようにして録画できるようになる。

/usr/local/bin/recpt1 --b25 チャンネル番号 録画秒数 ファイル名

もちろんこのまま使ってもいいのだが、チャンネル番号は例えばNHKだと27など
となっていていちいち覚えていられない。また、録画も秒数で指定するのはい
ちいち計算しなければならないので面倒である。面倒なことはコンピュータにやらせるに限る。

というわけで以下のように使うrectv.shというスクリプトを書いてみた。

./rectv.sh 番組名 チャンネル名 開始時 開始分 終了時 終了分

例えば、19時のNHKニュースならば以下のようにする。

./rectv.sh nhknews nhk 19 0 19 30

ロジックは至ってシンプル。

まず、チャンネルだが、以下のようにして変換した。

case $2 in
mx) ch=20 ;;
fuji) ch=21 ;;
tbs) ch=22 ;;
tokyo) ch=23 ;;
asahi) ch=24 ;;
ntv) ch=25 ;;
edu) ch=26 ;;
nhk) ch=27 ;;
univ) ch=28 ;;
bs1) ch=101 ;;
bs2) ch=102 ;;
bshi) ch=103 ;;
bsntv) ch=141 ;;
bsasahi) ch=151 ;;
bstbs) ch=161 ;;
bsjapan) ch=171 ;;
bsfuji) ch=181 ;;
bs11) ch=211 ;;
twellv) ch=222 ;;
wowwow) ch=191 ;;
esac

録画秒数は以下のように計算する。

sec=`expr \( $5 \* 60 + $6 - $3 \* 60 - $4 \) \* 60`

日をまたがることは考えていないので、例えば、23時から1時までだったら、終
了時間を25時としないとおかしくなるのはご愛嬌。

ファイル名は番組名の後ろに日付をつけると便利なので以下のようにした。

TDAY=`date +%Y%m%d`
filename=$1$TDAY

後は、recpt1を呼び出す。

/usr/local/bin/recpt1 --b25 $ch $sec $filename.ts

全体だと以下のようになる。

#!/bin/sh

TDAY=`date +%Y%m%d`
filename=$1$TDAY

sec=`expr \( $5 \* 60 + $6 - $3 \* 60 - $4 \) \* 60`

case $2 in
mx) ch=20 ;;
fuji) ch=21 ;;
tbs) ch=22 ;;
tokyo) ch=23 ;;
asahi) ch=24 ;;
ntv) ch=25 ;;
edu) ch=26 ;;
nhk) ch=27 ;;
univ) ch=28 ;;
bs1) ch=101 ;;
bs2) ch=102 ;;
bshi) ch=103 ;;
bsntv) ch=141 ;;
bsasahi) ch=151 ;;
bstbs) ch=161 ;;
bsjapan) ch=171 ;;
bsfuji) ch=181 ;;
bs11) ch=211 ;;
twellv) ch=222 ;;
wowwow) ch=191 ;;
esac

/usr/local/bin/recpt1 --b25 $ch $sec $filename.ts

しかし、このままだと巨大なtsファイルができるのでiPhone用に変換しなけれ
ばならない。次回そのロジックを組み込みます。(最終的には外してしまった
のだが)

No TrackBacks

TrackBack URL: http://systems-power.com/home/mt-tb.cgi/369

Leave a comment

Powered by Movable Type 5.02
Follow systems_power on Twitter