Arch + PT2 で地デジ視聴、再び。
pacman -Syu で kernel2.6.35 になったお陰で
http://hg.honeyplanet.jp/pt1 のドライバが使えなくなった。
なんでも、DVBドライバがカーネルに標準で乗るようになったらしく、
それらと上記ドライバがバッティングしたのが原因だそうだ。
今回は標準で乗ったDVBドライバを使って地デジを見れる環境を作ります。
以下の記事を参考にさせて頂きました。
http://www.fedorax.info/1943.html
ありがとうございます!
前回の導入方法から
pcsclite、ccid、pcscd、pcsc-tools は変わらず入れ、
B-CASを読めるようにしておいてください。
あと視聴時に必要になるので、b25だけは
http://hg.honeyplanet.jp/pt1 から取ってきて
コンパイルしておいてください。
以降新規作業内容。
まずPT2を認識できてるか確認。
$ dmesg | grep DVB DVB: registering new adapter (earth-pt1) DVB: registering new adapter (earth-pt1) DVB: registering new adapter (earth-pt1) DVB: registering new adapter (earth-pt1) DVB: registering adapter 0 frontend 0 (VA1J5JF8007/VA1J5JF8011 ISDB-S)... DVB: registering adapter 1 frontend 0 (VA1J5JF8007/VA1J5JF8011 ISDB-T)... DVB: registering adapter 2 frontend 0 (VA1J5JF8007/VA1J5JF8011 ISDB-S)... DVB: registering adapter 3 frontend 0 (VA1J5JF8007/VA1J5JF8011 ISDB-T)...
こんなんが表示されればOK。
/dev/dvb/adapterN(N=0,1,2,3)
も同時に出来てる筈。
adapter0,2 は BS/CS用
adapter1,3 が 地デジ用
僕の環境では adapter1 を使っていきますが、
そこは各々の環境に合わせて読み替えて下さい。
DVB用アプリケーションセット(s2scan)を入れる
http://2sen.dip.jp/cgi-bin/dtvup/source/up0355.zip を落とす。
$ unzip up0355.zip $ cd dvb_apps_0.8.1/cmds $ make clean $ make
ここまで準備できたら、受信できるチャンネル一覧を作る。
$ ./s2scan -a 1 > channels.txt //この1は adapter1 を使うって意味 ... テレビ東京:DTV_DELIVERY_SYSTEM=8|DTV_FREQUENCY=503142857:1072 テレビ東京:DTV_DELIVERY_SYSTEM=8|DTV_FREQUENCY=503142857:1073 テレビ東京:DTV_DELIVERY_SYSTEM=8|DTV_FREQUENCY=503142857:1074 ...
こんなんが表示されればOK。
権限周りで上手くいかない事があるらしいが、
僕は遭遇しなかったので其処の所はスルー。
チューナー(tune)を入れる
http://2sen.dip.jp/cgi-bin/pt1up/source/up0219.gz を落とす
(因みにこの.gz、うちのgzipじゃ文字コード周り?が原因で解凍出来なかった)
$ tar -zxvf up0219.gz $ cd dvb-pt1-test
ここで tune.c を修正。
Line:99 -- prop[1].cmd = DTV_ISDB_TS_ID; ++ prop[1].cmd = DTV_ISDBS_TS_ID;
それと、
Line:20 static struct channel isdbt_channels[] = {
の番組一覧を、先ほどs2scanを使って出力した channels.txt の中身を見て
DTV_FREQUENCY の値をそれぞれ書き換え。
ちなみに我が家はこんな感じ↓
static struct channel isdbt_channels[] = { { 1, "NHK東京 総合", 677142857 }, { 3, "NHK東京 教育", 629142857 }, { 4, "日本テレビ", 599142857 }, { 6, "TBS", 485142857 }, { 8, "フジテレビ", 605142857 }, { 10, "テレビ朝日", 497142857 }, { 12, "テレビ東京", 503142857 }, };
上記修正を済ませたら、
$ rm ./tune $ make
ここまで出来たら視聴してみる。
$ tune 1 3 & // 1=adapter 3=channel
この tune を走らせた状態から
ワンセグ画質で視聴
$ mplayer -cache 8192 /dev/dvb/adapter1/dvr0
録画
$ cat /dev/dvb/adapter1/dvr0 > hoge.ts
地デジ画質でリアルタイム視聴
$ b25 -v 0 /dev/dvb/adapter1/dvr0 /dev/stdout | mplayer -cache 8192 -
adapterN と b25 を上手く使えば、ちょっとしたスクリプトで
簡単な視聴環境くらいは整えられそう。
とりあえずまた地デジ見れるようになって一安心でしたわ…。
ここまで走り書きだったので、気が付いた点などありましたら
ご指摘頂けると嬉しいです。
2010/9/11 修正
fuse_b25、pacman に入ってなかった。
というかこのやり方だと全く役に立ってなかった。
よって削除。