【視聴・録画】Linuxでテレビ総合9【デジタル/アナログ】
■ このスレッドは過去ログ倉庫に格納されています
0001login:Penguin
2014/01/05(日) 14:43:09.35ID:Nliy8HmL【関連スレ】
【自家製】MythTV Part.3【HDDビデオ】
http://engawa.2ch.net/test/read.cgi/linux/1223721998/
【BT878】Linuxでのキャプチャを語るスレ
http://engawa.2ch.net/test/read.cgi/linux/1017186805/
【前スレ】
【視聴・録画】Linuxでテレビ総合8【デジタル/アナログ】
http://engawa.2ch.net/test/read.cgi/linux/1359268284/
【過去スレ】
【視聴・録画】Linuxでテレビ総合7【デジタル/アナログ】
http://engawa.2ch.net/test/read.cgi/linux/1342343650/
【視聴・録画】Linuxでテレビ総合6【デジタル/アナログ】
http://engawa.2ch.net/test/read.cgi/linux/1326804531/
【視聴・録画】Linuxでテレビ総合5【デジタル/アナログ】
http://engawa.2ch.net/test/read.cgi/linux/1309182037/
【視聴・録画】Linuxでテレビ総合4【デジタル/アナログ】
http://hibari.2ch.net/test/read.cgi/linux/1293388638/
【視聴・録画】Linuxでテレビ総合3【デジタル/アナログ】
http://hibari.2ch.net/test/read.cgi/linux/1269999876/
【視聴・録画】Linuxでテレビ総合2【デジタル/アナログ】
http://pc11.2ch.net/test/read.cgi/linux/1253880711/
【視聴・録画】Linuxでテレビ総合【デジタル/アナログ】
http://pc11.2ch.net/test/read.cgi/linux/1231189481/
Linuxでテレビを見る
http://pc11.2ch.net/test/read.cgi/linux/1013649811/
0685login:Penguin
2014/09/21(日) 08:15:08.73ID:gZdOl1Wshttps://github.com/u-n-k-n-o-w-n/BonDriverProxy_Linux/blob/develop/BonDriver_DVB.cpp#L395
https://github.com/u-n-k-n-o-w-n/BonDriverProxy_Linux/blob/develop/BonDriver_DVB.cpp#L755
自分がなぜそうしたのか記憶が曖昧なのですが…。
dvr0デバイスをオープンする際にはO_NONBLOCK をくっつけてたと思います。
dvr0 からデータが来なかった場合、readがブロックするからだったような
記憶があるのですが、今見ると正常ならlen=0とかなさそうなので意味不明な
ことを言ってるのかもしれません。
手元にPX-S1UD、Friio黒、MonsterTV HD もあるので動作確認できたら良いな
と思ってるのですが、カーネルモジュールのビルドが難儀ですね。Friio黒、
MonsterTV HDは2senのソースが古いので自分には無理だとしか思えないです。
PX-S1UDはカーネル3.15からデフォルトで有効の様ですが、ubuntu14.01の
3.13では再ビルドが必要ですね。考え方が安易過ぎますが、以前、IDだけの
変更なんだしバイナリ直接いじって既存の使わないデバイスID置き換えたら
良いよねとか思ってやってみたらどダメだったのですよね。
http://cgi20.plala.or.jp/~sat/?x=entry:entry131128-172807
http://lxr.free-electrons.com/source/drivers/media/usb/siano/smsusb.c?v=3.15#L656
Ubuntu14.01でPX-S1UD使えてる人っています?
0686login:Penguin
2014/09/21(日) 09:45:10.55ID:8glTzj28たしかに使う立場を考えるとそっちの方が便利ですね
confの#USEREADSNRで変更できるようにしました
>>685
O_NONBLOCKを付けてないのは、つくり的にブロックされても構わないようにしているので意図してそうしています
標準でサポートされてない場合は、モノを持っててもそれを試す環境づくりが結構面倒ですよね…
0688login:Penguin
2014/09/21(日) 11:32:44.72ID:gZdOl1WsFriio白で表示されました。
シグナルレベルも以下からダウンロードしたWindowsのBonDriver3.1と
ほぼ同じ値です。
http://www.friio.com/download/
作業しながら思ったことをだらだらと書いておきます。
Friio白の場合、DVBのシグナルレベルはFE_READ_SIGNAL_STRENGTHでのみ
取得可能ですので#USEREADSNR=0でOKです。FriioDVBドライバのソース眺
めましたがFE_READ_SIGNAL_STRENGTHで返しているのはハードウェアの生値
の様ですしチップも東芝でPTXと同じなのでCNRの計算式も共通なのかなという
印象です。
後、Linuxは関係ありませんが、#USESERVICEID=0の場合、#ISDB_TのVHF帯等の
チャンネル1-C63を削除して13-62を0からリナンバリングしないとTVTestで
チャンネルスキャンに失敗するのですが自分の環境特有の話でしょうか?
待ち時間を最大の10秒とかにしてもです。
チャンネル1-C63を削除したくなければ、TVTestのチャンネルファイルの方を
手動で作成すれば良いので特に困ってはいないのですが。
0689login:Penguin
2014/09/21(日) 12:58:05.39ID:bwPJwNB2DVB API v5では DVT_STAT_SIGNAL_STRENGTH DTV_STAT_CNRなどの測定値には
単位をつけるようになってる。 一般的なのは0.001dB(m) (FE_SCALE_DECIBEL)
PT1やFriioのDVBドライバは新しいのに対応して改修されていないけど
今レビュー中のPT3は対応してるよ (RSSIとCNR)
あとFriiioはRSSIでCNRを返してるという間違いがそのままになってる
0690login:Penguin
2014/09/21(日) 14:37:32.75ID:8glTzj28もう一回ちゃんとソース確認してみると、FE_READ_SNRでシグナルレベルを返してきてました(;´Д`)
> …が、その後もうちょっと調べてみたらその次のバージョンではFE_READ_SIGNAL_STRENGTHに対してCNRを計算して
> 返すようになり
は、デバッグログの出力時にそれやってるのの見間違いだった様です
しかし、
> 今のバージョンではFE_READ_SIGNAL_STRENGTHは削除されて、その処理はそのままFE_READ_SNRで
> 使用されるようになってますね…
はその通りなので、結果的にFE_READ_SNRでシグナルレベルを返すと言う状態になってる様です
つまり、>>680さんの書かれてた事がやっぱり正解でした
こうなるとおかしいのは明らかにpt3_dvb側なので、とりあえず、
ttps://github.com/knight-rider/ptx/blob/master/pt3_dvb/drivers/media/dvb-frontends/tc90522.c
の400行目辺りと509行目辺りに、
---
.read_signal_strength = tc90522_read_snr,
---
を追加して、シグナルレベルを取得できるようにして使う感じでしょうか
#関数名はread_snrですが、シグナルレベル取得の関数です…
0691login:Penguin
2014/09/21(日) 14:40:10.31ID:8glTzj28影響するようで、例えばadapter0とadapter2を両方使ってる時にadapter0のdemux0をclose()すると
adapter2側でドロップが発生する様です
これらの状況を考えると、PT3を使うなら少なくとも現状ではchardev版の方が良さそうな気はしますね
0692login:Penguin
2014/09/21(日) 14:55:16.35ID:bwPJwNB2http://www.spinics.net/lists/linux-media/msg80603.html (のフォローアップ)
のことです
FE_READ_SIGNTAL_STRENGTHのioctlを使うよりも DTV_GET_PROPERTYを使って DTV_STAT_SIGNAL_STRENGTH(かDTV_STAT_CNR)プロパティを読むようにするのがAPIv5のやり方 FE_READ_SIGNAL_STRENGTHの方は古いAPIなので
各ドライバ独自の形式で返してくる & 値がu16なので負値を返せない
(RSSI[dBm]は通常マイナスの値となるはず?) という問題があるよ
http://linuxtv.org/downloads/v4l-dvb-apis/FE_GET_SET_PROPERTY.html#frontend-stat-properties
0693login:Penguin
2014/09/21(日) 18:57:12.22ID:8glTzj28使えたようで良かったです
チャンネルスキャンの件に関しては、TVTest側でどう判定してるのか調べてみないとちょっとわからないですねー
>>689>>692
まだまだインタフェース固め自体が過渡期って感じなんでしょうか
linuxを普通にデスクトップマシンとして使ってる人やっぱり少ないでしょうし、
あんまりモンクが出てこなさそうなのも一因でしょうか…
>>692で教えていただいたパッチ当てて使ってみたら、>>691の問題は発生しませんでした
これはやはり、pt3_dvbの固有の問題みたいですね
DTV_STAT_CNRでちゃんとCNRが返って来るのもソース/実行結果両方から確認できました
あと、>>692の後者のリンクは読んでたんですが、DTV_STAT_CNRの項目に
---
FE_SCALE_DECIBEL - Signal/Noise ratio is in 0.0001 dB units.
---
てあるのは、やっぱり桁間違いですよね?
#DTV_STAT_CNRで返す場合は__s64なので1/10000でも表せる最大値の問題は無くなりますが…
0694login:Penguin
2014/09/21(日) 19:01:58.65ID:8glTzj28やはりまだ対応してないドライバが多いと言う事で、結局CNR取得方法の選択肢を増やしました(;´Д`)
confの設定名が、#GETCNRMODEに変わっています
0 : FE_READ_SIGNAL_STRENGTH / 1 : FE_READ_SNR / 2 : DTV_STAT_CNR
です
すみませんが、以前のconfの#USEREADSNRをこれに置き換えてください
0695login:Penguin
2014/09/21(日) 19:06:51.75ID:8glTzj28個人的にはPT3でDVBドライバ使うなら>>692のリンク先の物をお勧めします
#無事本家にマージされると良いのですが…
0696login:Penguin
2014/09/21(日) 20:16:44.50ID:bwPJwNB2statの報告については たしかに最近になって新インターフェースがv5に追加されてる
利用者がすくないせいで 最近になってアプリサイドから問題提起された感じじゃないのかな
だいたいlinuxのデスクトップ自体のシェアが1..2%で
その中でさらにDTVを見たい &ソース見て問題点を挙げる/改修する人の数は...
あとFE_SCALE_DECIBELの説明は桁間違いのはず;) 他のドライバも1/1000 dBで返してるので
0697login:Penguin
2014/09/21(日) 23:22:09.96ID:IdcCM2hP0698login:Penguin
2014/09/21(日) 23:22:23.11ID:1RikBqg5わざわざDBにアクセスせずとも、atq で次回録画時間がわかったので、
http://airwhite.net/?p=786
・・・を書き換えてみました。
http://pastebin.com/LjGPkeMc
foltia AL 4.0.2で一応動作確認
at キューに入ってる直近の日時まで75分以上差があればサスペンドします。
EPG更新を考慮して予定の1時間前には復帰します。
foltia ユーザでの実行を想定してます。
中でsudo しているので /etc/sudoers への NOPASSWD 設定が必要です。
このシェルをどのタイミングで起動するかが課題です。
流れ無視して申し訳ないです。
0699login:Penguin
2014/09/21(日) 23:59:17.48ID:gZdOl1WsBonDriverProxy + BonDriver_DVB.so + PX-S1UD が Ubuntu 14.01 で動きました。
http://blog.lwlv.net/archives/821
ドライバのビルドは上記の手順ほぼそのままでOKでした。
ただ、微妙に不安定な感じで、電源ON時にきちんと認識してくれないことが多いです。
ドライバ、PC、PX-S1UDどれの問題なのかは未確認です。
#GETCNRMODE=2でCNRが取れます。ドライバソース眺めても返している様ですし。
TVTestの表示が30dBぐらいで同じアンテナ線につないだBonDriver_LinuxPT(PT3)
でもそのぐらいです。WindowsのBonDriverは70-80とか表示するのですが何を
返しているのでしょうね?CNR*2だと合わないですが。
SetChannel() timeout: adapter4
PT3と比べるとチャンネル変更が遅く感じます。なにかもっさりした感じです。
チャンネル変更時にBonDriver_DVBがたまにtimeoutしたと上のエラーを表示します。
ただ、そういう場合でもTVTestのチャンネル変更は成功して映像は表示されます。
https://github.com/u-n-k-n-o-w-n/BonDriverProxy_Linux/blob/develop/BonDriver_DVB.cpp#L648
チャンネル変更が成功したかどうかを 250ms * 4 で最大1秒待っているのを * 8 の
2秒程度にするとtimeoutのエラーは表示されなくなりました。250ms * 4 は PT1DVB
の数値(tune.c)かな?と思いますがチューナーによってこの辺も微妙に違うのですね。
0700login:Penguin
2014/09/22(月) 03:35:08.27ID:RCw937p9(後でb25使おうにも使いようがない)っていう
去年くらいのfuse_b25のクソ仕様は継承されてるのですかね?
この問題が無ければ、挑戦してみたいんだけど。
recpt1でやってます。
0701login:Penguin
2014/09/22(月) 19:23:09.90ID:DJmrXEBdTVTestのチャンネルスキャンのタイムアウトは、TVTest内でのデッドロック由来みたいでした
TVTestはロックを取得してからイベントキューにチャンネル変更のリクエストを放り込みますが、
イベント処理スレッドでは、そのリクエストを処理する前に同じロックの取得待ちが発生する場合があります
こうなるとスキャンの待ち時間に関係なく必ずタイムアウトになるので、結果チャンネルスキャン失敗となるようです
TVTestのビルドスレは開発者の方も見てるみたいなので、報告しておきました
>>699
おお、よかった
チャンネル変更時の挙動は、チューナだけでなくドライバとかによっても異なりますね
PT3のchardev版では、受信できない周波数へのioctl(SET_CHANNEL)を行うと8秒ほど返って来なくなるので、
チャンネルスキャンにかなり時間がかかったりします
そう言う意味では、DVB版はチューナに合わせて調整しやすくて良いかもしれませんね
0702login:Penguin
2014/09/23(火) 21:08:12.24ID:4laAyCHMfoltia AL の予約時間はatq で、
録画有無はrecpt1プロセスの有無で、
変換有無はffmpegプロセスの有無で判定できる。
後の課題は映像配信中かどうかの判定。
これさえできればcronで定期的にこのスクリプトを走らせればsuspend運用が可能になるはず。
(必要なときの電源ONはWoLを想定)
DLNAで配信してるか否かは localhost:8200 にhttpアクセスすればわかるけど、
ApacheでWeb配信しているかどうかが判定できない・・・。
netstat で httpの ESTABLISH を見ればいいと思ったけど、
Webプレーヤーで視聴中でも表示されないですねぇ。。。
なんかいいアイデアありませんかね?
0703login:Penguin
2014/09/23(火) 22:12:40.53ID:Nn7+SBVJ一定時間sleepの前後で ifconfig eth0 の in と out を足して
一定以下なら rtcwake するのを動かしてる
再起動時には毎回手動だけど、vnc 上で
0704login:Penguin
2014/09/23(火) 22:21:28.22ID:4laAyCHM具体的にどんなコード書いてるか教えていただけないでしょうかm(__)m
再起動がVNCってのは intel vPro 付きのマシンでやってるってことですかね?
0705login:Penguin
2014/09/23(火) 23:30:54.94ID:Zj70CTberootじゃなくても良いし…
-r--r--r-- 1 root root 0 Sep 23 23:28 /proc/net/dev
grep eth0 /proc/net/dev | sed 's/ \+/\t/g' | cut -f11
0706login:Penguin
2014/09/24(水) 02:00:15.45ID:MOmElMpN0707login:Penguin
2014/09/24(水) 02:04:13.28ID:/s6jH7eY0708login:Penguin
2014/09/25(木) 09:03:47.25ID:vw+3DDLO>703
rtcwake は知らなかった。 元スクリプトもそうだけど、
sudo sh -c "echo〜 とやってて sh に対しての sudoers 設定が必要でした
sh を NOPASSWD実行させるのはセキュリティ的にアレと思ってたけど、これなら良いですね
>707
foltia AL の CentOS6.5のApache2.2 には標準で読み込まれてるので
ディレクティブ設定すればstatus取れました。
でも、tcpdump してみてわかったけど、Web Playerは常時ストリーミング転送するわけじゃなくて
一定期間ごとに直近映像ブロックをhttpで転送してコネクションを切っちゃうので
有意な値を取れませんでした。。。
>705,706
助言いただいたように、eth0 の L2レイヤのデータ転送量とディスク活動量をみて
「なんとなく判断する」のが当面の解決策ですね。ありがとうございます。
「使用中」と判断するしきい値をどうするかがtry&error ですね。
>703 の事例を是非参考にさせていただきたく。。。
0709login:Penguin
2014/09/28(日) 01:17:03.47ID:kGukxwImhttp://deepntechnical.blogspot.jp/2014/07/raspberry-pipx-s1ud.html?m=1
これを参考にドライバを入れました
そこにBondriver proxy_linuxを実行したところチャンネル指定時に
SetChannel() timeout: adapter0
と表示され映像が映りません。
何が原因かわかったら教えていただきたいです。
0710login:Penguin
2014/09/28(日) 02:42:54.45ID:UKXPJ+IBstraceやdmesgの結果くらいは出して欲しい。
0711login:Penguin
2014/09/28(日) 09:27:31.12ID:r3Z8zE+Xの構成で昨日から作業してやって今手元で動いてる。ほぼ同じ構成ってことで。
uname -a
Linux mysv504 3.12.28+ #709 PREEMPT Mon Sep 8 15:28:00 BST 2014 armv6l GNU/Linux
そのエラーはチェンネル変更に失敗したら出る。
自分がやったけどファームの入れ忘れでも出る。
もちろんチャンネル番号が間違ってても出る
dmes | grep firmware で以下のエラーが出ていたらファームの入れ忘れ。
[ 5.452979] smscore_load_firmware_from_file: line: 1168: failed to open firmware file "isdbt_rio.inp"
ファームを入れたら再起動する。
どこからダウンロードするかとかダウンロード時の注意(wgetで失敗する)とか
どこに入れるんだとかは>>699のURLか以下が参考になる。ファームは32,64bitの
両方のディレクトリに入っているけどどっちでも同じ。
http://gametricks.blog40.fc2.com/blog-entry-81.html
Raspbian(Debian)はDVB関係が古くて#GETCNRMODE=2でCNRは取得できない。
#GETCNRMODE=1でもほぼゼロしかならない。#GETCNRMODE=0は値が異常。
なので、CNRを取得する方法はなさそう。
というか Raspbian のカーネル3.12.28+で自分でビルドしたドライバをmodprobe
するとカーネルが落ちるんだけど問題ない?結局上のURLからたどれたsmsusb.koを
直接書き換える方法で使ってる。
http://anago.2ch.net/test/read.cgi/jisaku/1390977673/829
0712login:Penguin
2014/09/28(日) 09:50:14.80ID:r3Z8zE+Xdmesg | grep firmware
0713login:Penguin
2014/09/28(日) 12:29:54.62ID:smu24UAtファームの入れ忘れでした…
ありがとうございました!
0714login:Penguin
2014/09/28(日) 12:50:43.03ID:r3Z8zE+X> Raspbian(Debian)はDVB関係が古くて#GETCNRMODE=2でCNRは取得できない。
BonDriver_DVB.cpp のコンパイルエラーは /usr/include/linux/dvb/frontend.h が
Debianだと古くstruct dtv_property に struct dtv_fe_stats st メンバがないのが原因
なので、存在するファイル(例えば、Ubuntuとからファイルを持ってきて)を代わりに
includeすればコンパイル可能で値も取得できました。ただ、Ubuntuの場合と値が明らかに
違うので正しいかは不明です。
> #GETCNRMODE=1でもほぼゼロしかならない。
http://lxr.free-electrons.com/source/drivers/media/common/siano/smsdvb-main.c?v=3.12#L810
他のドライバでもこうなのかなあ?
https://github.com/u-n-k-n-o-w-n/BonDriverProxy_Linux/blob/develop/BonDriver_DVB.cpp#L759
1/1000をやめると確かに値は帰ってきますね。
>#GETCNRMODE=0は値が異常。
https://github.com/u-n-k-n-o-w-n/BonDriverProxy_Linux/blob/develop/BonDriver_DVB.cpp#L764
サポートされていないとsignal=0になるようなので
https://github.com/u-n-k-n-o-w-n/BonDriverProxy_Linux/blob/develop/BonDriver_DVB.cpp#L245
signal>0 のガードを入れておくのが良いかなあと。
0715login:Penguin
2014/09/28(日) 13:01:32.83ID:r3Z8zE+X日本語が意味不明ですね。ioctl<0にならなくてsignal=0で帰ってくる
場合がある様だということです。
0716login:Penguin
2014/09/28(日) 15:35:26.51ID:znqq1d0S録画時間を超えてもrecpt1が終了せずチューナーを占有されて一部録画に失敗しました。
終了しなかったrecpt1の出力ファイルの最終更新は予定の録画終了時刻だったので、
終了しようとした形跡はあるようです。
どなたか原因わかる方いらっしゃいませんか。
0717login:Penguin
2014/09/28(日) 23:56:34.27ID:Weh/2lnJ> #GETCNRMODE=1でもほぼゼロしかならない。
ちょうど先週話題になった件ですね
FE_READ_SNRで取得できる値はドライバ毎に好きにやってて、精度が統一されていないようです
http://lxr.free-electrons.com/source/drivers/media/common/siano/smsdvb-main.c?v=3.12#L800
では、0.1dBって書いてありますね
なので、BonDriver_DVB.cppで1000で割ってるのを10に変えるとそれなりの値になるかもしれません
現状では、#GETCNRMODEを2で使えるドライバでない限り、BonDriver_DVBが返す値は変な値になる
可能性がある、て事ですね
逆に、自分が使用しているチューナ用のドライバのソースから、返してきてる単位/精度がわかるなら、
BonDriver_DVB.cppの該当箇所をそれ用にいじって使うのが一番確実でしょうね
0718login:Penguin
2014/09/29(月) 07:09:29.84ID:DL/mCJ0i>なので、BonDriver_DVB.cppで1000で割ってるのを10に変えるとそれなりの値になるかもしれません
1/10で>>714で書いた#GETCNRMODE=2を有効にした場合と一致しました。
>ただ、Ubuntuの場合と値が明らかに違うので正しいかは不明です。
再確認したらそれなりに似た値でした。違うチャンネルで値を比較してそう思い込んでいました。
あまり電波状態の良くないアンテナ入力なのでチャンネル差が結構あるようです。
現時点のDebianでPX-S1UDを使う場合は、BonDriver_DVB.cppの以下を 1000 から 10 修正して
#GETCNRMODE=1 で使うのが良さそうですね。Ubuntuなら#GETCNRMODE=2でOKです。
自分で使うのは設定ファイルで倍率(1/10=0.1)みたいな感じで読むようにしとくかなあと思っています。
なんかいまいちな解決方法ですが
https://github.com/u-n-k-n-o-w-n/BonDriverProxy_Linux/blob/master/BonDriver_DVB.cpp#L728
0719login:Penguin
2014/09/29(月) 12:01:34.26ID:uB5gD6UGavconvが落ちて再生始まらないのはなんだろう?
SDは概ね再生出来るっぽくHD/FHDは大抵コケるっぽい(´・ω・`)
ちなみに録画したものは問題なく再生出来てる
0720login:Penguin
2014/09/29(月) 16:52:29.57ID:7oyx3tq2その番組の後の番組の時間変更(くり下げ、くり上げ)も対応してないのかな?
0721login:Penguin
2014/09/29(月) 17:53:07.86ID:kH+LeVtIここはchinachuのわりと致命的な欠点
0722login:Penguin
2014/09/29(月) 18:30:59.88ID:YY/0p21J0723login:Penguin
2014/09/29(月) 18:42:37.71ID:+otmu0ib0724login:Penguin
2014/09/29(月) 19:42:46.69ID:HBTrRVUB番組ごとに別ファイルで記録してくやつ
しょぼいスクリプトしか書けないが全録ソフトできたらプロジェクトの支援する
B25触らなければ純然たる合法ソフトだし(で、誰か、がコソーリ…w
0725login:Penguin
2014/09/29(月) 23:31:43.42ID:5wGIfjXB放送時間延長とかに対応するって見た覚えが・・・。
ライブ視聴も、現在の実装方法とは違う新たな方法で実現するらしい。
0726login:Penguin
2014/09/29(月) 23:38:58.07ID:8FKhSn8Oおかげで力士のケツを見なくて済んだw
あと MythTVもじゃないかな
他にも探せばあるんじゃないかな
0727login:Penguin
2014/09/30(火) 11:42:17.67ID:Xn4Wh5en0728login:Penguin
2014/09/30(火) 11:55:48.13ID:iwduFy7p0729login:Penguin
2014/10/01(水) 23:28:07.91ID:mSFbOiq9PX-W3U3はUSB接続の4チューナーモデルです。
$ cat /etc/redhat-release
CentOS release 6.5 (Final)
$ uname -a
Linux mysv502 2.6.32-431.29.2.el6.x86_64 #1 SMP
Tue Sep 9 21:36:05 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
・PX-W3U3に付属のACアダプタを接続しないとチューナーを半分しか
認識しません。まあこれはそういうものなのでしょうね。
・本家ドライバってどうやって使うのでしょうか?
http://www.plex-net.co.jp/product/pxw3u3_download.html
これに入っているas11usbdtv.koをinsmodすると/dev/as11usbdtv0
/dev/as11usbdtv1の2個しかデバイスファイルができません。
BonDriver_LinuxPTが想定しているデバイスファイル名とは違うので
修正が必要ですが修正して確認する気になれませんでしたので省略します。
以下、動作確認という名目でfoltiaからドライバファイル(pxw3u3.ko)を
借りてきて確認した結果です。
・デバイスファイルは/dev/pxw3u30-/dev/pxw3u33の4個作成されます。
・BonDriverProxy + TVTestでTVTest側でチャンネルを切り替えると
映像が表示される場合はあるのですが、フリーズする場合があります。
発生条件は明確ではないのですがチャンネル変更している内に突然という
感じです。1回目の変更でフリーズする場合もあります。フリーズすると
Pingにも応答しません。電源OFFするしかない状態です。何が原因かよく
分かりませんがうまく動作してくれないようです。
0730login:Penguin
2014/10/02(木) 01:55:32.81ID:cIllcodcLinuxじゃts抜きが出来るようなタイプじゃないと無理やろ
0731login:Penguin
2014/10/02(木) 02:27:28.79ID:oJZcKZhTついでにfoltiaのrecpt1で動作確認してみたら?
もしそれで大丈夫なら、ドライバの制限としてSTART_RECしてない時でないとSET_CHANNELできないとかの可能性はあるかもね
マニュアルある訳じゃないからいろいろ試さないと実際どうなのかはわからないだろうけど
ただ、できないだけならともかくOSごと固まるのは、どう考えてもクソドライバ乙じゃないかなぁ
0732login:Penguin
2014/10/03(金) 00:45:19.36ID:bJNcwhax> ついでにfoltiaのrecpt1で動作確認してみたら?
確かにそうですね。再確認してみました。
・foltiaのrecpt1での確認
foltiaのrecpt1を使ってチャンネル変更、30秒録画を繰り返す
スクリプトを書いて実行してみました。特に問題なく動作します。
もちろん、OSもフリーズしません。
# recpt1
pt1dev=/dev/pxw3u30
chnos="101 103 141 151 161 171 181"
sec=30
rec=pt1
for ch in ${chnos}
do
log=${rec}_${ch}.trace
ts=${rec}_${ch}.ts
strace -o ${log} recpt1 --device ${pt1dev} ${ch} ${sec} ${ts}
done
・BonDriverProxyのsampleでの確認
同様にsampleでもチャンネル変更、30秒録画を繰り返すスクリプトを
書いて実行してみましたがこちらも問題なく動作します。
> もしそれで大丈夫なら、ドライバの制限としてSTART_RECしてない時
> でないとSET_CHANNELできないとかの可能性はあるかもね
おお、まさにそういう感じがします。
0733login:Penguin
2014/10/03(金) 07:03:45.95ID:bJNcwhaxfprintfを追加しWindowsのTVTestからチャンネル変更して確認してみました。
fprintf(stderr, "ioctl(SET_CHANNEL) Start\n");
if (::ioctl(m_fd, SET_CHANNEL, &(g_stChannels[g_Type][dwChannel].freq)) < 0)
{
::fprintf(stderr, "SetChannel() ioctl(SET_CHANNEL) error: %s\n", g_Device);
goto err;
}
fprintf(stderr, "ioctl(SET_CHANNEL) End\n");
ioctl(SET_CHANNEL) Start
ioctl(SET_CHANNEL) End
ioctl(START_REC) Start
ioctl(START_REC) End
ioctl(SET_CHANNEL) Start
ここでフリーズ。
> もしそれで大丈夫なら、ドライバの制限としてSTART_RECしてない時
> でないとSET_CHANNELできないとかの可能性はあるかもね
これです…。
しかし>>729みたいな文章でこの原因を推測できたことが驚きです。
とりあえず、SET_CHANNEL前にSTOP_RECでも入れて状態を見てみれば
良いのかな。
0734login:Penguin
2014/10/03(金) 19:03:54.12ID:Q+yXHr/Nこんな感じでどうでしょう?
https://github.com/u-n-k-n-o-w-n/BonDriverProxy_Linux/commit/632043b252f069900ef615fab691e450cbdbdf11
0735login:Penguin
2014/10/05(日) 12:44:49.40ID:/R6zBrak修正を適用した所、快調に動作しています。
なるほど、TsReaderのスレッド止めてSTOP_RECするのが確実なのですね。
スレッドを止めずにSTOP_RECするだけの修正を自分なりに試していたの
ですがチャンネル変更後しばらくしたら突然フリーズしたりして不安定でした。
対応ありがとうございます。
後>>731の書き込みが非常に参考になりました感謝です。
0736login:Penguin
2014/10/05(日) 14:02:05.62ID:bjGIp0S3CPUの周波数はどれぐらいあればいいかな?
0737login:Penguin
2014/10/05(日) 14:33:07.43ID:vvB7mzx9ChinachuでH265にするメモサイトどこか忘れた
誰か知らない??
0738login:Penguin
2014/10/05(日) 21:02:00.04ID:k7rYE0OR毎回、NHKの番組が尻切れになってしまうので5秒ほど長くしたい
0739login:Penguin
2014/10/05(日) 21:16:00.57ID:YiWRrpw5エンコ時間にこだわりなけりゃCPUはなんでもOKとしか・・・
0740login:Penguin
2014/10/05(日) 22:12:28.78ID:R7okN6gm0741login:Penguin
2014/10/06(月) 03:15:35.28ID:B/4mJ+b9githubのwikiにconfig.jsonの仕様書が
あるので読もう
0742login:Penguin
2014/10/06(月) 07:13:23.72ID:HBWXiK3L0743login:Penguin
2014/10/06(月) 11:44:43.65ID:AQoSxgcQキュートじゃない…
0744login:Penguin
2014/10/06(月) 13:31:49.30ID:WxUDWqpOまだまだだね
PPA対応でないのも不便だし
0745login:Penguin
2014/10/06(月) 18:04:32.94ID:L+ondwPzと思って避けてたけど、試してみたら思いの外良かった
0746login:Penguin
2014/10/06(月) 19:18:06.00ID:lkHPONQc0747login:Penguin
2014/10/06(月) 22:36:03.46ID:ExHJ9qRs〉avplay version 0.8.16-4:0.8.16-0ubuntu0.12.04.1, Copyright (c) 2003-2014 the Libav developers
〉 built on Sep 16 2014 18:33:49 with gcc 4.6.3
〉【新】ガンダムGのレコンギスタ 初回1時間スペシャル #01,#02【字】_10040235_3630.ts: Invalid data found when processing input
というエラーが出るってことは、致命的に録画失敗しているよな?
これどういう状況なんだろう?
ほか、いくつか失敗しているけど10/4深夜以前には無かった。
少し前にB-CASカードリーダーのエラーでワンセグしか再生できなくて
アンテナ線は点検したつもり
今回のものはb25コマンドでも
processing: 0.21% error - failed on ARIB_STD_B25::put() : code=-4
と出るんだけど、それが意味するものはわかんないや。
0748login:Penguin
2014/10/06(月) 23:32:48.80ID:w9ms6akSウチも似た現象が最近起きている。
pcscd関連アプデしてからおかしくなったような。
0749login:Penguin
2014/10/06(月) 23:49:16.13ID:ecIyvYShb25_decode failedと言われるとき
code=-4の場合:データが壊れている(=信号が弱すぎ)ためにデコードできない可能性あり。
checksignalして23db程度しか出ていない場合、配線やアンテナを見直す。
ttp://archive.side2.net/wiki/index.php?Computer/Linux/PT2
0750login:Penguin
2014/10/07(火) 00:12:45.22ID:i6osU41flibarib25に>>649のパッチ当ててみては?
0751login:Penguin
2014/10/07(火) 00:15:55.86ID:DdqDG/NF0752747
2014/10/07(火) 12:10:19.46ID:rELLa1S82年くらいの間、普通に録画できていたんだけど
安アパートのアンテナ設備自体が老朽化しているみたいで
数値は忘れたけど、20db切っている。
結局前回のトラブルは、B-CASカードのほうで
シグナルは弱いまま、また2ヶ月くらい普通に動いていた。
libarib25のパッチは、PC組み直すつもりでいたから
2枚挿しにするつもりで買ってあったPT2で
新規組んでから検討してみます。
B-CASカード読めない状態で録画したtsを
Atom330でb25コマンドで処理すると、すげぇ時間かかんの (;_;)
最低J1900狙いで、秋葉原行ってくる
空きの多いアパートだから
大家もアンテナ改修とか渋るんだろうしなぁ…
0753login:Penguin
2014/10/07(火) 13:01:02.50ID:osxhI4Fg0754login:Penguin
2014/10/07(火) 15:25:49.53ID:WGAZdd+hそこで大家が渋るなら「こんな糞アパート出ていく」って言えば折れるよ
0755login:Penguin
2014/10/07(火) 16:21:17.98ID:7fUFFLhcって思ってるかも
0756login:Penguin
2014/10/07(火) 17:48:43.90ID:2Al9nOX/0757login:Penguin
2014/10/07(火) 21:02:59.66ID:2ls49AqYhttp://www.forest.impress.co.jp/docs/news/20130712_607519.html
ここ読むとGPUでのエンコードって可能なの??
0758login:Penguin
2014/10/08(水) 11:59:21.66ID:zlF5Ypkm0759login:Penguin
2014/10/08(水) 12:22:56.37ID:XhFwurATつか、使ってみりゃいいじゃん。フリーなんだし
0760login:Penguin
2014/10/08(水) 12:26:30.15ID:kPI/r1y4キーワード特化ならChinach>foltiaAL
番組表からならChinachu>=epgrec>foltiaAL
ってのが俺の独断と偏見
0761login:Penguin
2014/10/09(木) 17:33:06.62ID:d4GZg+goできないのと、作成したルールから予約リストへの反映がなんか直感的じゃ
ないのがイマイチ。
前者はともかくとして、後者は、結局作ったルールでどの番組にマッチして
どういうスケジュールで録画されるのかがすぐにわからなくて辛い。
それとも使い方が間違ってるんだろうか…?
0762login:Penguin
2014/10/09(木) 18:01:10.89ID:d4GZg+goできないのと、作成したルールから予約リストへの反映がなんか直感的じゃ
ないのがイマイチ。
前者はともかくとして、後者は、結局作ったルールでどの番組にマッチして
どういうスケジュールで録画されるのかがすぐにわからなくて辛い。
それとも使い方が間違ってるんだろうか…?
0763login:Penguin
2014/10/09(木) 19:00:21.53ID:NMWxAa6pルール関連で不満があるというのは伝わるけど、イマイチ具体的な不満点が分からん。俺の理解力が足りないんだと思うが
0764login:Penguin
2014/10/09(木) 19:33:00.58ID:UO1PUdqY「このルールで検索」ってのが有れば助かるんだけどな。
0765login:Penguin
2014/10/09(木) 19:41:20.32ID:NMWxAa6pんで気がつくとちゃんと予約されてるw
スケジューラー実行のタイミングとかはgithubにある公式のwiki見ればあるんじゃね
0766login:Penguin
2014/10/10(金) 13:10:44.63ID:GZeqRxe1なんかおかしいと思って調べてみたら、いつの間にかスケジューラのPIDファイルが
残ったままだった。そりゃ何回クリックしてもスケジューラは実行されないわなorz
ルール作成時のチャンネル名も、局名じゃなくてSIDベースになっててわかりにくい。
今はTvRockを家族と共用してるんだけど、なんとなくchinachuへ移行するのは
家族にとってハードル高そうな感じがするかな。
って、こんな所で文句言ってないで、コード書いてpull request投げろって
話なんだろうけど。
0767login:Penguin
2014/10/10(金) 20:16:36.96ID:aSbaMf5lなんかおかしいと思って調べてみたら、いつの間にかスケジューラのPIDファイルが
残ったままだった。そりゃ何回クリックしてもスケジューラは実行されないわなorz
ルール作成時のチャンネル名も、局名じゃなくてSIDベースになっててわかりにくい。
今はTvRockを家族と共用してるんだけど、なんとなくchinachuへ移行するのは
家族にとってハードル高そうな感じがするかな。
って、こんな所で文句言ってないで、コード書いてpull request投げろって
話なんだろうけど。
0768login:Penguin
2014/10/10(金) 20:37:37.73ID:Zg5iM30zこれは流行る悪寒
0769login:Penguin
2014/10/10(金) 20:38:22.41ID:Zg5iM30z0770login:Penguin
2014/10/12(日) 16:08:38.95ID:sZHmv5Uw挙動を調べたら、pcscdの起動が完了する前にB-CASカードを取ろうとしてlibarib25がこけて、生ストリーム吐くモードに移行してた。
しょうがないから、pcscd起動させてからカードが刺さってるかどうか調べるまで一秒待たせてみた。
パッチ↓
動作保証はしない(`・ω・´)
-------------
--- b_cas_card.c.orig 2014-10-12 15:46:34.290926326 +0900
+++ b_cas_card.c 2014-10-12 15:56:53.274764391 +0900
@@ -3,6 +3,7 @@
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include <math.h>
@@ -153,7 +154,8 @@
if(ret != SCARD_S_SUCCESS){
return B_CAS_CARD_ERROR_NO_SMART_CARD_READER;
}
-
+ sleep(1); // Dirty hack.
+
ret = SCardListReaders(prv->mng, NULL, NULL, &len);
if(ret != SCARD_S_SUCCESS){
return B_CAS_CARD_ERROR_NO_SMART_CARD_READER;
0771login:Penguin
2014/10/12(日) 23:17:41.47ID:O788uumeb25->put failed
b25_decode failed (code=-5). fall back to encrypted recording.
0772いぼっ
2014/10/13(月) 03:41:16.62ID:qKeJy4Y4http://wc2014.2ch.net/test/read.cgi/voice/1405767952/l50
お前らのんきにイベント行ってる場合じゃないぜ
身を守りたかったら99要チェック
あ?何だ109は?補足情報120 犯罪暴露か?131、132、135、136
こいつなんでこんなに書かれてるんだ?
160、161どうしたもんかね?本人じゃね? 34歳だと?236
おっと良妻賢母の学校か〜244 ,247そーなのか〜ほー
254このマットてのはグラウンドの住宅に面した金網に脈絡なく汚ねえ立てかけ方されてるやつじゃね?取りに来たやつ悪い奴ってことか。
256,304,326,339ほー 352,355,357マジかよ、こりゃ許せねーなー変○者?
371,373ストー○ーでもあるのか、ほー375,378,406,475ほー435,456,474人事の人大丈夫?
0773login:Penguin
2014/10/13(月) 12:32:50.11ID:/xMjmERjのスレの542さんに、ドライバモジュールのTsSplitterの問題点をレポートしていただきました
放送データの運用方法として、(おそらくレアではあるものの)仕様的には許されるパターンを見落としていたのが原因です
このパターンに遭遇すると、最悪ECM等を削除してしまう事になるので、コンテンツを復号できなくなったりします
(特に1サービス1チャンネルモードで使用している方は)お手数ですが更新お願いします(;´Д`)
https://github.com/u-n-k-n-o-w-n/BonDriverProxy_Linux/commit/ec4c912bffd9c1b3816f618758577c79bb28442d
0774login:Penguin
2014/10/13(月) 22:43:59.14ID:S3wvP1yLlibarib25に>>770のパッチを当ててビルドしなおして試してみて。
0775login:Penguin
2014/10/14(火) 02:10:35.90ID:+6XljqJ6どっちかと言うと>>750だと思う
0776login:Penguin
2014/10/14(火) 17:54:53.79ID:jI+B29yuちなみにUbuntu12.04です。
0777login:Penguin
2014/10/15(水) 01:03:12.49ID:N7PyqqvMと思ってる
0778login:Penguin
2014/10/19(日) 14:22:26.48ID:dpigh9zz0779login:Penguin
2014/10/20(月) 04:47:00.38ID:IIqY1fSI0780login:Penguin
2014/10/20(月) 15:07:06.52ID:dJcUh1zAスケジューラーって手動でポチポチしてやらないとなんだな
毎週ポチポチは面倒だしcronとかで何とかして世話してみよう
0781login:Penguin
2014/10/20(月) 15:11:33.24ID:IIqY1fSI0782login:Penguin
2014/10/20(月) 15:34:41.30ID:IiDJJ9DH・EPGドリブン ←
0783login:Penguin
2014/10/20(月) 15:38:59.37ID:dJcUh1zAなにか重大な勘違いをしていたな
0784login:Penguin
2014/10/20(月) 15:45:09.52ID:IIqY1fSI>>765
■ このスレッドは過去ログ倉庫に格納されています