今回は録画を簡単に行うというところまで。
途中、LAMPの構築が入っちゃってやたら長い記事に…
設定から録画テストまではこちらの記事を参照。
- epgdumpのインストール
- epgdumpをsourceforgeから持ってくる。
# wget http://iij.dl.sourceforge.jp/epgrec/53385/epgdumpr2_20111001.tar.gz
- 解凍。
# tar -zxvf epgdumpr2_20111001.tar.gz
- epgdumpr2ディレクトリに移動してmakeしたいのだけど、
# cd epgdumpr2 # make make: `all' に対して行うべき事はありません.
と言われてしまう。
ので、# touch * # make clean rm -f core epgdump *.o # make
のように、touch と make clean を挟んでからmakeする。
- 出来上がったepgdumpを/usr/local/bin/にコピーする。
# cp epgdump /usr/local/bin/
- コピーしたepgdumpが正常に動作するか確認。
# epgdump test /tmp/test_video.ts - <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE tv SYSTEM "xmltv.dtd"> <tv generator-info-name="tsEPG2xml" generator-info-url="http://localhost/"> …………………… …………………… </tv>
と、番組情報がダーっと出てくれば動作している事になる。
- epgdumpをsourceforgeから持ってくる。
- epgrecで必要になるものを事前にインストール
epgrecはPHPで書かれているので、事前にPHPが動作するWebサーバ(Apacheでもnginxでも)が必要。
ついでにMySQLも利用するので、これも必要。
要するにLAMP環境が必要。- Apache をインストール
# yum install httpd
以上。
- Apache の設定
- httpd.conf を編集
# vi /etc/httpd/conf/httpd.conf
で、
292行目辺りのDocumentRoot "/var/www/html"
317行目辺りの
<Directory "/var/www/html">
を好きなディレクトリに変更する。
- httpd.conf を編集
- PHP のインストール
# yum install php?php-cli php-mysql?php-mbstring php-xml
ぐらい?
あとで、あれこれ足りないと言われるのが面倒なら、少々乱暴だが# yum install php*
で、PHPと名のつくものが全部入る。
まともにサーバ作るならこんな事してちゃダメ。
ちゃんと必要な物を考えて入れましょう。 - PHPの設定
- php.ini を編集
# vi /etc/php.ini
で、
946行目辺りの;date.timezone =
のコメントアウトを外して、
date.timezone = Asia/Tokyo
としておく。
- php.conf の存在確認
/etc/httpd/conf.d/ 配下に php.conf が存在することを確認しておく。
- php.ini を編集
- MySQLをインストール
# yum install mysql-server mysql
で、バージョン5.1 辺りを入れてくれると思う。
もうちょっと新しいものを入れたいなら、MySQLのリポジトリを導入して、# yum --enablerepo=mysql-community install mysql-server mysql
でもいい。
- MySQLの設定
- MySQLにログイン
# mysql -u root -p Enter password:
一番初めはパスワードは無いので、そのままReturnで入れる。
- まずはrootのパスワードを設定。
> grant all privileges on *.* to root@localhost identified by 'rootのPW' with grant option;
設定したら一度ログアウトして、
- パスワードが正しく設定されていること
- パスワード無しではログイン出来ないこと
を確認しておく。
- epgrec 用のデータベースの作成
> create database データベース名;
で、データベースを作成しておく。データベース名は epgrec_database でもなんでもいいので、わかりやすく好きなものを。 - epgrec 用のMySQLユーザの作成
別に root でもいいけど、epgrec で使用するMySQLユーザを作成しておく。> grant all privileges on epgrec_database.* to epgrec用のID@localhost identified by 'epgrec用のPW' with grant option;
- ここまで出来たら、MySQL ログアウト。
- MySQLにログイン
- chkconfig の変更
# chkconfig httpd on # chkconfig mysqld on
で、Apache と MySQL が自動的に起動するようにしておく。
- Apache をインストール
- epgrecのインストール
- epgrecをsourceforgeから持ってくる。
# wget http://iij.dl.sourceforge.jp/epgrec/53387/epgrec_20111001.tar.gz
- 解凍。
# tar -zxvf?epgrec_20111001.tar.gz
- 出来上がった epgrec ディレクトリを Apache の公開ディレクトリ配下にコピーする。
# cp -r /tmp/epgrec /var/www/html/epgrec
- コピー先のディレクトリに移動して、config ファイルを作成・編集する。
# cd /var/www/html/epgrec # cp config.php.sample config.php # vi config.php $GR_CHANNEL_MAP = array( "GR27" => "27", // NHK "GR26" => "26", // Eテレ "GR25" => "25", // NTV "GR22" => "22", // TBS "GR21" => "21", // フジ "GR24" => "24", // TV朝日 "GR23" => "23", // TV東京 "GR28" => "28", // 放送大学 "GR18" => "18", // TVK "GR20" => "20", // 東京MX "GR30" => "30", // 千葉テレ "GR32" => "32", // テレ玉 "GR19" => "19", // YOUプレミアム "GR53" => "53", // YOUテレビ );
うちで見ることができるリストはこんなカンジに。
各地域のチャンネルリストはマスプロ電工のページにある。 - 録画用のshファイルもサンプルから作成しておく。
cp do-record.sh.pt1 do-record.sh
- いくつかのディレクトリのパーミッションを777に変更しなくてはならない。
# chmod 777 templates_c/ # chmod 777 video/ # chmod 777 thumbs/ # chmod 777 settings/ # chmod 777 cache/
- この段階までやってからブラウザで
http://[SERVER_ADDR]/epgrec/index.php
にアクセス。
インストール状態をチェックしてくれる。- ディレクトリとファイルのパーミッションチェック
地上デジタルのチャンネル設定チェック - MySQL設定
インストール関連設定 - デジタルチューナー設定
録画関連設定
録画ファイル名の形式は[ %CH%_%ST%_%TITLE% ]に変更。
すべて記入したら「EPGの初回受信」リンクを押す。
50分ぐらいかかるかもという記述があったが、自分の環境では10分ちょっとで終わった。 - ディレクトリとファイルのパーミッションチェック
- インストール最終ステップのページに
「/etc/cron.d/以下にcronによるEPG受信の自動実行を設定する必要があります」
との記述があるので、これを設定する。
CentOSなので、ubuntu用の設定は使えない。
けど「要はgetepg.phpを走らせれば良い」ということなので、# crontab -e 30 10 * * * php -f /var/www/html/epgrec/getepg.php
で走らせることにする。
該当チャンネルが放送時間帯でなければいけないので、放送大学の放送がない深夜帯には設定できなかった。
- epgrecをsourceforgeから持ってくる。
- epgrec で録画テスト
-
- epgrec の画面が出たら予約してみる。
「custom job番号の取得に失敗」というエラーが出たらatコマンドがインストールされていない。# yum install at
でインストールする。
- 録画先がepgrecディレクトリ内のvideoディレクトリなので、これを変更しておく。
- epgrec の画面が出たら予約してみる。