$ rpm -tb --define region=tokyo tvrecord-*.tar.gz( RedHat Linux 8など一部のシステムでは $ rpmbuild -tb tvrec-*.tar.gz) tokyoとあるところは使用する地域により、次の中から選んでください。 aomori iwate miyagi akita yamagata fukushima ibaraki tochigi gnma saitama chiba tokyo kanagawa niigata toyama ishikawa fukui yamanashi nagano gifu shizuoka aichi mie shiga kyoto osaka hyogo nara wakayama tottori shimane okayama hiroshima yamaguchi tokushima kagawa ehime kochi fukuoka saga nagasaki kumamoto oita miyazaki kagoshima okinawa 一部のシステムではroot権限でないとRPMが作成できないかもしれません。たくさんメッセージが流れたあと、最後のほうに
書き込み中: /usr/src/redhat/rpm/RPMS/noarch/tvrecord-0.*.noarch.rpmというのを見付けてnosrc.rpmが作られたディレクトリを知ります。
# rpm -Uvh tvrecord-0.*.noarch.rpm
$ tar xzf tvrecord-*.tar.gz $ cd tvrecord-*
$ make region=tokyotokyoとあるところは使用する地域により、次の中から選んでください。 aomori iwate miyagi akita yamagata fukushima ibaraki tochigi gnma saitama chiba tokyo kanagawa niigata toyama ishikawa fukui yamanashi nagano gifu shizuoka aichi mie shiga kyoto osaka hyogo nara wakayama tottori shimane okayama hiroshima yamaguchi tokushima kagawa ehime kochi fukuoka saga nagasaki kumamoto oita miyazaki kagoshima okinawa
# make install
システム設定ファイルは /home/video/tvrec.conf です。デフォルト・ユーザおよび他の設定をしてください。 "="の前後には空白などを入れないでください。 詳細はtvrec.confによる tvrecordの設定
ファイル /home/viideo/channels.conf にあなたの地域のテレビ・チャンネルを設定してください。 channels のサンプルは channel_map ディレクトリーにあります。項目間のセパレーターはスペースではなくTabなので注意してください。
デフォルトでは ffmpeg で MPEG-1 あるいは MPEG-4で録画する設定になっています。 /home/video/modes.confファイルで設定します。 recording_modes/modes.conf.* の見本を参考にしてください。最初の1行のコメント行は変更してはいけません。
インストールすると/home/video/.xawtv が作られます。 デフォルトでは freqtab = japan-bcast となっていますが、ケーブルの場合はfreqtab = japan-cable と変更してください。 ケーブルTVを使っている場合でも freqtab = japan-bcast が適当な場合もあります。
インストールすると/home/video/.ivtvrc が作られます。 ivtv(record-v4l2.pl)を使わない場合は関係ありません。 デフォルトでは freqtab = ntsc-bcast-jp となっていますが、状況に応じ freqtab = ntsc-cable-jp などに変更してください。
場合によっては特定のキャプチャー・プログラムを動かすために /home/video/tvrec_capture ファイルを修正しなければならないかもしれません。
このファイルは録画されたビデオファイルが作られるディレクトリ(/var/video/aaaa など)に置きます。
MAXTURN=2
上記のような内容を limit.conf というファイル名で置いておくと、 毎週録画などの場合そのディレクトリ内で2回分のみ保存され、古いものから自動的に削除されます。 ファイルの新旧はそのファイル名の日付と時刻の部分で判断されます。録画ファイル名は通常次のように付けられます。
aaaaMMDDHHMMx.exp
したがって日付時刻部分を除いたファイル名などに変更しておくと自動的に削除されることはありません。
録画終了後に実行する bash スクリプト。/home/video/bin ディレクトリに置いておく。 またシステム設定ファイル /home/video/video.conf 内で
AFTERWORK=afterworkと、そのファイル名を指定しておく。 デフォルトではコメントアウトされている。
録画開始時の警告音として適当な音源ファイルを /home/video/notice.wav として置いてください。無くても警告音が出ないだけで録画動作には支障ありません。 またシステム設定ファイル /home/video/video.conf 内で
NOTICE=/home/video/notice.wavとしてフルパスで指定する。 デフォルトではコメントアウト。
インストールすれば /home/video/.forward がセットされます。 Vine Linux の postfix ではこれだけで動きますが、メールサーバーによってはセキュリティ上 .forwardによるコマンド起動を禁止している場合があります。 その場合の対処はここでは触れませんので、調べてください。
インターネット上から録画予約できるようにした場合はセキュリティのため使用者のメール・アドレスを録画ホストの /home/video/mail.allowに列挙しておくとよいでしょう。アドレスがここに書かれていないと予約を受付けません。 /home/video/mail.allowが存在しないかアドレスが書かれていないときは制限なく予約を受け付けます。
録画ホスト上とリモートホスト上の2つのコントロール・テーブルtvrectabを同期させるために、録画ホスト上でftpクライアントを使用し、リモート・ホストへtvrectabを転送します。ビデオホスト上で/home/video/.netrcファイルの中にリモート・ホストの ftpアカウントおよびパスワードを書いておかねばなりません。次のようなサンプルがdot.netrcにあります。また manページ「man netrc」を参照してください。 /home/video/.netrc のパーミッションは 600 でなければなりません。
machine webhost login account password xxxxxxxx
システムはコマンドのやり取りの多くをメールを経由して行います。たとえばWebインターフェースから録画を依頼するさい、 CGIからvideo@videohost宛てにメールが送られるので、 CGI(ユーザーapacheなど)からのメール発信が許可されねばなりませんし、メールがvideohostのユーザーvideoに届けられる経路が必要です。また録画依頼の受付確認や録画完了報告などがシステムから依頼者に返されます。 videohostのユーザーvideoからメールが発信できること、また依頼者のメールアドレスがインターネット上の場合、videohostのユーザーvideoからインターネットへメールが発信できるようになっていなければなりません。
Webインターフェースを利用するには apache などの httpサーバーを適切に設定、起動しておかねばなりません。 CGIを許可する設定が必要です。またCGIからメールを発信できなければなりません。 この設定は /etc/http.d/conf.d/video.conf によってなされるはずですが、 httpサーバーのインストール位置が違うなど 問題ある場合は apacheのオンライン・マニュアルなどを参考にして設定してください。
VIDEODIRを変更した場合は、
/home/video/public_html/contents.cgi の
第80行目あたりの VIDEODIR=/var/video とあるところ、
また、 /etc/http.d/conf.d/video.conf 中の次の行を見付け、
/var/video のところを
変更後の VIDEODIR が示すディレクトリに書換え、 httpd をリスタートしてください。
Alias /video /var/video
(Vine Linux 3.2 では次項はデフォルトで設定済みのはず)
たとえば Vine Linux の apache では CGI はユーザー名apacheの権限で実行されます。
ここでエラーがあるとapacheへエラー・リターンがあるのですが、
Vine 3.1 のデフォルト状態ではユーザーapacheへのメールの経路が設定されていません
/etc/aliases に次のような記述があるか確認し、無ければ追加し、newaliasesを実行しておきましょう。
tako のところは管理者のユーザー名に置き換えて読んでください。
試しに ローカルで apache宛にメールを出して確認するとよいでしょう。
apache: root # Person who should get root's mail root: tako
インターネット上から予約できるためには、メールで送られてくる予約コマンドが録画ホストのtvrecシステムに届くようになっていなければなりません。
video@mydomain.net宛のメールをユーザーvideoが直接受けるなら、余分な設定は不要です。 また myaccount2@provider.jp のような予約コマンド専用のメール・アカウントが用意できるなら、 ここに届くメールを VIDEOHOST のユーザーvideoに転送するように設定するだけです。
常用のインターネット・メール・アカウントが1つしかない場合は procmail により Subject (表題もしくは件名)によって予約コマンドを振り分けることができます。
tako@provider.jp 宛てのメールをユーザーtakoが fetchmailなどで受けて、videoに転送する場合の procmailレシピ
(/home/tako/.procmailrc)
# A sample of procmail recipe for TV recording system # keyword is 'yoyaku' #MAILDIR = "$HOME/Mail" TVR=video@videohost.mydomain ### TV recording system :0 * ^from:.*(tv.recording.system|$TVR) inbox/. :0 * ^(to|subject):[ ]*yoyaku ! $TVR :0 # JIS encoded * ^subject:.*=.iso-2022-jp.B.(WU9ZQUtV|eW95YWt1|GyRCI1kjTyNZI0EjSyNVGyhC|GyRCI3kjbyN5I2EjayN1GyhC) ! $TVR ### Default :0 inbox/.
video@mydomain.net宛のメールをユーザーvideoが直接受ける場合はprocmailは必要ありません。
以下はユーザーvideoが受けたメールのうち録画コマンド以外をユーザーtakoに転送する procmailレシピ
(/home/video/.procmailrc)
# keyword is 'yoyaku' :0 * ^(to|subject):[ ]*yoyaku | /home/video/mailcommand >> /home/video/mailcommand.log 2>&1 :0 # JIS encoded * ^subject:.*=.iso-2022-jp.B.(WU9ZQUtV|eW95YWt1|GyRCI1kjTyNZI0EjSyNVGyhC|GyRCI3kjbyN5I2EjayN1GyhC) | /home/video/mailcommand >> /home/video/mailcommand.log 2>&1 ### Default :0 ! tako
procmailが思うように振り分けできていないと思われるときは、procmail_logや /home/video/mailcommand.logを見てレシピに誤りがないか検討してください。
$ su (rootのパスワードを入力) # su - videoこのあと、ユーザー videoになったまま以下のコマンドを順次テストしてみます。
$ ./tvrec -v -Vバージョンの表示のほか、さまざまな情報が出力されます。
$ ./tvrec -v +2 1010は受信できるチャンネルを記入のこと。 うまくいけば
tvrec: wrote: /var/video/movie.mpgのようなメッセージが出て録画ファイルが作られるはずです。
no entry in the control table.というよな warningが出ますが、これは無視してください。
$ ./yoyaku -v -t +2 10特に文句を言われないようなら次に進みます。
$ ./yoyaku -v +2 10録画スクリプトはバッチモードで動きます。
$ atqとすれば
xx 2003-xx-xx xx:xx = videoなどと録画スクリプトvideoがバックグラウンドで動いていることが分かります。 when the batch recording completed. 約2分ほどで録画スクリプトが終了すると tvrec.conf内で設定されている DEFAULT_USER宛てに次のようなメールが届きます。
Subject: Output from your job xx Date: xxxxxxxx tvrec: wrote: /var/video/moviexxxxxx.mpg
$ mail -s 'yoyaku -v -q' video < /dev/null 過去の文書で'>'となっていたところ、'<'が正しい。11 Aug 2005 訂正tako宛てに返事のメールが届けばOK。 LAN内の別のホストから送ってみたり、 ユーザー video がインターネットからメールを送受信できるよう設定している場合はインターネット経由もテストしてみてください。 様子がおかしければ /home/video/mailcommand.log の中身を覗いてください。
録画ホストの http://localhost/~video/ にブラウザでアクセスしてください。 あるいは http://localhost/~video/index.html です。 http://localhost/~video/debug.html にアクセスするといろいろな情報が得られます。
録画を実行するホストとは別に、たとえばインターネット上に公開されたホスト上でリモートwebインターフェースを使用することができます。 tvrecがインストールされた(録画)ホスト上にはwebインターフェースが既にあるので、 リモートwebインターフェースは不可欠ではありません。 リモートwebインターフェースをインストールしようとする(リモート)ホストの状況によって 以下のA、B)あるいはC)のうちから選んでください。
$ rpm -tb --define web:1 --define region=tokyo tvrecord-*.tar.gz
Written: ............./RPMS/noarch/tvrecord-web-*.noarch.rpmとあるメッセージからnosrc.rpmが作られたディレクトリを知ります。そのディレクトリに入ってroot権限で次のコマンドでインストールします。
# rpm -Uvh tvrecord-web-.*.noarch.rpm
$ tar xzf tvrecord-*.tar.gz $ cd tvrecord-*root権限で
# make install-web
$ tar xzf tvrecord-*.tar.gz $ cd tvrecord-* $ ./makewebいくつかの問いに答えると ./web/html ディレクトリが、また場合により./web/cgi ディレクトリもできます。
machine webhost login account password xxxxxxxx
分からないことがあればtvrecordのページを覗いてください。 質問はLinux BBSに書き込んでおくと誰かが回答してくれるかもしれません(笑)。