EAGLE 雑記 このページをアンテナに追加 RSSフィード

Mon March 28, 2011

[] recpt1ctl --channel に対する recpt1 の動作を改良

してみた.

http://d.hatena.ne.jp/eagletmt/20110307/1299492620 で recpt1 が死んでいたのは,/dev/pt1video* を close(2) した直後に open(2) すると,終了処理に時間がかかっているのかそのデバイスが使用中のときと同じように EIO で失敗するのが原因だった.それに加えてデバイスファイルから read(2) できなかった場合に,確保したバッファの解放を忘れているためにメモリを食い潰して殺される,というかんじだったようだ.

いろいろ試してみると close(2) せずに SET_CHANNEL してもチャンネルを変えられるっぽかったので,デバイスファイルを使い回せる,つまり地デジ同士か衛星放送同士のチャンネルの切り替えなら SET_CHANNEL するようにした.ただし残念なことに自分は衛星放送を視聴できる環境にないので,これで本当に問題が無いのか検証できていない.

https://gist.github.com/890635

hoho 2012/05/14 23:33 はじめまして。衛星放送で試してみましたが、問題なさそうでした。チャンネルの変更が安定して、快適です。
どうもありがとうございます。本家に送ってみてはいかがでしょうか。

トラックバック - http://d.hatena.ne.jp/eagletmt/20110328/1301326078