まず、ハードウェアは以下のとおりです:
ベアボーン:AOPEN EZ945-P Intel945G+ICH7
CPU: Core2Duo 1.8GHz; メモリ: 2GB
チューナキャプチャカード:玄人志向 CX23416GYC-STVLP
マシン再構築の手順としては:
(1) ハードディスクの交換
(2) Debian lennyのインストール
(3) チューナキャプチャカードのドライバのインストール
(4) チューナキャプチャカードのファームウェアのインストール
(5) 録画用コマンドの準備
というような流れになります。
(1) ハードディスクの交換
今まではOS+データに500GBのものを使っていました。現在では1TBや1.5TBのものがありますが、ディスククラッシュを経験した直後とあっては、容量が大きいほどデータ消失のショックも大きいので、なかなか大容量のHDDに手を出す気が起きません。結局従来と同じ500GBのものを入手することにしました。秋葉原のショップ「フェイス」で、5000円を切るものがあるのを見つけ、さっそくネットで購入、3日ほどで届きました。メモリもそうですが、HDDもかなり安くなりましたね。

(2) Debian lennyのインストール
Debianのサイトから、インストール用のCDイメージをダウンロードしてCDに焼き、これでPCを起動してDebian/GNU Linux 5.0 (lenny)をインストールします。このインストーライメージは200MB弱と小さく、インストールはほとんどがネットを通じて行われます。インストール項目としては、デスクトップ環境とファイルサーバを指定しました。
実は、いつものことですが、インストールについては問題がいくつか発生し、未だに解決できていないこともあるのですが、それについては別途述べます。
(3) チューナキャプチャカードのドライバのインストール
Debianがインストールできた時点で、dmesgでログを見てみると、CX23416GYC-STVLPを使用する上で懸案だったドライバsaa717xが自動的に読み込まれています。以前はこれを自らインストールして設定しなおす必要があったのですが、Debian lennyではその必要がなくなったようです。
もともと、チューナキャプチャカードのドライバとしてはivtvというものがあるのですが、日本で多く出回っていたカードはサポートされていませんでした。玄人志向のCX23416GYC-STVLPやIO-DATAのGP-MVPといったカードでは、MPEG-IIエンコーダとしてConexant社のCX23416が、ビデオエンコーダとしてPhilips社のSAA7173が使われていました。これらの解析およびドライバ作成が、「linuxwiki@ぱ研」というサイトに集った有志たちによって2003年ごろから開始されました。そこでの成果はivtvプロジェクトへ反映され、それはそのままLinuxカーネルのメインラインに採用されました。
前回のDebian Etchでは、ivtvのバージョンは0.2ぐらいだったと記憶していますが、今回のDebian lennyでは、カーネル2.6.26、ivtv1.3が採用されています。ivtv1.3で初めてsaa717xが正式に採用され、カーネル2.6.26で初めてivtv1.3が採用されたようです。かくして、「linuxwiki@ぱ研」の有志の皆さんの長年の努力がLinuxカーネルのメインラインに反映されたということで、とても喜ばしいことです。
(4) チューナキャプチャカードのファームウェアのインストール
ドライバについては自動的にインストールされましたが、ファームウェアについては、dmesgのログで「ファームウェアありませんよ」というメッセージが出ており、自分でインストールする必要があります。
今回注意すべき点としては2点あります:
− ファームウェアのバージョンがサイズでチェックされていること
− ファームウェアのインストール先が /usr/lib/hotplug/firmware に変更されていること(以前は /lib/modules)
以前のivtvバージョンでは、Win用ファームウェアアーカイブからファームウェアを取り出し/lib/modulesにコピーするスクリプトがあったのですが、ファームウェアのバージョンも格納場所も変わってしまったので、端的には以下のことをやればOKです:
HcwFalcn.romという376836バイトのファームウェアを、
/usr/lib/hotplug/firmwareに、
v4l-cx2341x-enc.fwという名前でコピーする
この後マシンを再起動して、dmesgでファームウェアが読み込まれていることを確認したら、
cat /dev/video > test.mpg
として数秒録画してcontrol+cで終了させ、できたtest.mpgを見てみます。砂嵐のような画像であれば一安心です。
(5) 録画用コマンドの準備
録画用コマンドには、「linuxwiki@ぱ研」がリリースしていた、record-v4l2_v060406.plというperlスクリプトを使用していました。そこで今回もそれを「linuxwiki@ぱ研」から入手し、使ってみます。
このスクリプトは、Video/Frequencies、Video/IVTV、Config/Inifilesという3つのperlモジュールを必要とします。後の2つはDebian lennyの公式パッケージがあるので簡単にインストールできますが、Video/Frequenciesモジュールは公式パッケージがないようです。非公式パッケージを探すか、perlモジュールそのものをインストールする必要があります。
ここでrecord-v4l2コマンドを実行すると、さらにエラーが出て録画できません。そのエラーメッセージを調べると、同じく「ぱ研」さんで、「エラーを出すところ3行をコメントアウト」というアドバイスが出ていました。これを試すと、無事録画することができました。
私は、録画ソースとしてカードのチューナは使っておらず、全てケーブルテレビのセットトップボックスの出力をS-Videoから入力したものを録画しています。したがって、record-v4l2コマンドはこんな感じになります:
./record-v4l2_v060406.pl --inputname "S-Video 1" -t 3600 --directory-format "" --output test.mpg
これをファイルに書いて、atコマンドで時間指定すれば、その時間から3600秒間録画されることになります。
以上、3日間ぐらい試行錯誤した内容を踏まえて、結果的にこうしたらよいということをまとめました。このあと、録画した動画を編集したり視聴したりするのに、さらにツール等の整備が必要ですが、それについては別途書くことにします。