OSDN Git Service

add dist
[rec10/rec10-git.git] / dist / trunk / tstools / tunerec / README.ja
diff --git a/dist/trunk/tstools/tunerec/README.ja b/dist/trunk/tstools/tunerec/README.ja
new file mode 100755 (executable)
index 0000000..01b2426
--- /dev/null
@@ -0,0 +1,169 @@
+DVB PT1 ドライバ用tuneプログラム(rec10用改変版)
+
+2012-01-08版
+
+このプログラムはDVB PT1付属のtuneプログラムを、
+rec10にて使いやすいように改変を行った物です。
+
+変更点
+チャンネルリストを無効化、周波数およびtsIDの指定で動作するようにしました。
+
+使い方
+$ ./tune <DVBアダプタ番号> <周波数> [tsid(省略可)]
+
+ライセンス
+>7. 使用上の注意
+>
+>このソフトウェアは、 sourceforge.jp で開発されている独自仕様のドライバ
+>を改竄し v4l-dvb の仕様に合わせようとしているものです。これは単に AS
+>IS で提供しているもので、開発途上であり、完全に無保証です。テストプログ
+>ラムは MIT ライセンスで提供します。
+
+gn64_jp(gn64@rec10.org)
+
+DVB PT1 ドライバ
+
+2009-03-07 版
+
+1. このドキュメントについて
+
+このドキュメントは DVB ベース の PT1 ドライバのチェックアウト、コンパイ
+ル、インストールおよびテスト方法を説明するものです。
+
+
+2. ドライバのチェックアウト
+
+DVB ベースの PT1 ドライバのソースコードは現在 mercurial で管理されてい
+ます。開発マシンに mercurial をインストールした上で、次のコマンドでチェッ
+クアウトしてください。
+
+       $ hg clone http://bitbucket.org/hiranotaka/dvb-pt1/
+
+一度チェックアウトを行うと二度めからは dvb-pt1 ディレクトリにて次のコマ
+ンドを実行することで更新することができます。ただし次の更新は 3 月下旬以
+降の予定です。
+
+              $ hg pull && hg update
+
+詳しくは mercurial のマニュアルや bitbucket.org のマニュアルを参照して
+ください。
+
+
+3. ドライバのコンパイル
+
+ターゲットとなるカーネルと同じバージョンのカーネルヘッダまたはソースが
+必要です。 linux-headers-$(uname -r) パッケージなどで入手してください。
+準備ができたら、v4l ディレクトリ下に .config という名前のファイルを作成
+し、
+
+       CONFIG_DVB_CORE=m
+       CONFIG_DVB_PT1=m
+
+のように記述します。後は、 /lib/modules/$(uname -r)/source または
+/lib/modules/$(uname -r)/build にカーネルヘッダまたはソースが展開されて
+いる場合、同じ v4l ディレクトリにて、
+
+$ make
+
+するだけで OK です。うまくいけば dvb-core.ko と pt1_drv.ko という二つの
+モジュールができるはずです。
+
+なお、カーネルヘッダやソースが違うディレクトリに展開されている場合は、
+SRCDIR オプションが必要です。
+
+
+4. ドライバのロード
+
+コンパイルでできた 2 つのモジュールを順にロードします。
+
+       $ sudo insmod dvb-core.ko
+       $ sudo insmod pt1_drv.ko
+
+無事ロードされると次のようになるはずです。
+
+       $ dmesg
+       ...
+       DVB: registering new adapter (pt1-pci)
+       DVB: registering adapter 0 frontend 0 (VA1J5JF8007 ISDB-S)...
+       DVB: registering new adapter (pt1-pci)
+       DVB: registering adapter 1 frontend 0 (VA1J5JF8007 ISDB-T)...
+       DVB: registering new adapter (pt1-pci)
+       DVB: registering adapter 2 frontend 0 (VA1J5JF8007 ISDB-S)...
+       DVB: registering new adapter (pt1-pci)
+       DVB: registering adapter 3 frontend 0 (VA1J5JF8007 ISDB-T)...
+       pt1_thread run
+
+現在、一部のマシンで DMA 領域の確保に失敗する事象が確認されています。こ
+の場合、デバッグ用のスタックトレースなどとともに、次のように表示されま
+す。
+
+       $ dmesg
+       ...
+       PT1:DMA ALLOC ERROR
+       pt1-pci: probe of 0000:01:0a.0 failed with error -5
+
+これは特に 32 ビットマシンにおいて貴重な LOWMEM 領域(DMA 可能な領域で、
+最大でも 756 MB)にその 1/6 にあたる 128 MB もの巨大な領域を確保している
+ためと考えられます。うまい対処方法があれば教えて下さい。
+
+
+5. テストプログラムのビルド
+
+簡単なテストプログラムを用意しました。先ほどチェックアウトした dvb-pt1
+と同じ階層にこの README.ja を含むディレクトリを移動します。別の言い方を
+すると、このディレクトリから見てドライバが ../dvb-pt1 の位置に来るよう
+にします。その状態で
+
+       $ make
+
+してください。
+
+
+6. テストプログラムの実行
+
+チャンネルを設定するには、
+
+       $ ./tune <DVBアダプタ番号> <リモコンキーID>
+
+とします。設定がうまくいけば
+
+       Successfully tuned to NHK東京 総合 .
+
+などと表示されます。
+
+       Failed to tune to NHK BS-1 (status 03).
+
+などと表示された場合は、ステータスによって次の原因が考えられます。
+
+       00: PLL に問題がある
+       01: 指定された周波数に信号がない
+       03: 他の TS-ID の信号はあるが、指定された TS-ID のものはない
+
+DVB アダプタ番号は、他にアダプタが無い場合、チューナ 0 の ISDB-S が 0
+、チューナ 0 の ISDB-T が 1 、チューナ 1 の ISDB-S が 2 、チューナ 1 の
+ISDB-T が 3 になります。 アダプタが ISDB-T か ISDB-S かは自動判定され、
+ISDB-T であればリモコンキー ID は地上波のものと、 ISDB-S であれば衛星の
+ものと解釈されます。
+
+リモコンキー ID と周波数の対応表は、東京都のものになっています。東京都
+以外では、 tune.c の上部にある対応表の書き換えが必要になります。
+
+テストプログラムを実行したままの状態で、
+
+       $ cat /dev/dvb/adapter1/dvr > dump.ts
+
+などとすれば録画できます(例はアダプタ番号 1 の場合)。また同様に
+
+       $ b25 -v 0 /dev/dvb/adapter1/dvr /dev/stdout | \
+               mplayer -cache 8192 -
+
+とすればリアルタイムで視聴できると思います。ただしリアルタイム視聴には
+それなりの CPU 性能が求められます。
+
+
+7. 使用上の注意
+
+このソフトウェアは、 sourceforge.jp で開発されている独自仕様のドライバ
+を改竄し v4l-dvb の仕様に合わせようとしているものです。これは単に AS
+IS で提供しているもので、開発途上であり、完全に無保証です。テストプログ
+ラムは MIT ライセンスで提供します。