Linuxでテレビ総合スレ 避難所 2
■ このスレッドは過去ログ倉庫に格納されています
>>154
ringbufferが怪しいという前提で修正をしてみました
もし別の箇所に問題があるとすると全く意味がないかもしれませんが
ログですが、up.mapopi.comかpastebinあたりにアップしていただけるとありがだいです >>131
このパッチを入れた ffmpeg で mpv を build してみたけど vaapi 使うとダメだな
やっぱり >>132 じゃない? >>156
ありがとうございます
拝見しましたが、こちらは /var/log/debug の内容をそのまま貼り付けたものということで間違いないでしょうか
どうやらログの一部か欠けているようで、正常な動作であるかの判断ができなかったので一応確認させてください >>158
/var/log/debugそのままです >>159
ですよね…
ハングアップした際にログがおかしくなることも考えられなくはないと思うこととします
本来であれば起動からシャットダウンまで異常が無い状態で録画した場合のログと比較するべきなのでしょうけれど
修正版で問題なく動作するようであればその必要はなさそうです このスレで聞いて良いのかわからんけど、NHK BS1のBS世界のドキュメンタリーで
最近ARIB字幕が2つ(VLCで見ると2つとも言語はJapaneseになってる)ついている
回が何回かあったんですが、うちだけの環境ですか?
chinachuのスクリプトでarib2ass(https://github.com/Piro77/arib2ass)
で字幕をつけてエンコードしてるんですが、2つ字幕があるとエラーがでてしまうようで
エンコードまでいってくれないんです。回によってはarib字幕が一つしかない回もあって、
その時はうまくエンコードできるんですが、どういった意図で字幕2つ(2つとも同じものです)
つけてるんでしょうか? 映画なんかじゃ普通にあるんじゃない?普通の字幕の他に、
吹き替え時用に画面内の文字や外国語音声の字幕を使う場合と 最近良く、fuse_b25が飛ぶので原因調べてみたらストリーム読んでる時にEOVERFLOW起こしてるのでパッチ作ってみた。
https://pastebin.com/uBwcAenH
本当に実用に耐えるか自信がないけどできる人試してほしいのです。 ごめんなさい、diffのとり方間違えてた。
こちらが正しいです。gitになってる非公式版からのdiff。
https://pastebin.com/22DnGRF9 >>164のパッチは、DVBデバイスからストリームデータ(と言うかパケット?)を読みすぎて、バッファオーバーフローエラーになった時に、
そのパケットを棄ててしまうと言う乱暴な「対策」です。
もう少しいい方法が絶対にあるけど、試してみてくださいませ。 >>152
ご回答ありがとうございます。
試しに Q3PE4 でドライバロードしてみたところ8チューナ認識できました。
先に試してみればよかったですね。
px4video[0-7] まで一通り recpt1 でチューナオープンもできましたので、
しばらく動作させてみます。
px4_drv: px4_drv version 0.1.0
px4_drv: IR mode: 5
px4_drv: tsdev 0: px4video0
px4_drv: tsdev 1: px4video1
px4_drv: tsdev 2: px4video2
px4_drv: tsdev 3: px4video3
px4_drv: IR mode: 5
px4_drv: tsdev 0: px4video4
px4_drv: tsdev 1: px4video5
px4_drv: tsdev 2: px4video6
px4_drv: tsdev 3: px4video7
usbcore: registered new interface driver px4_drv PT3の中古相場が3万円を超える中、Linux使いにも希望の光が 仕様が公開されてないデバイスのドライバとか書ける人マジで尊敬する。
こういう下層の実装って仕様書が手元にあっても記述の不備とか想定外の動作で苦しむのにどうやって作ってるんだろう?
ioctl()の監視とかするのかな。
俺のレベルが低すぎて想像がつかないや。 そいや無知で恐縮なんだが、PT3のubutu標準ドライバやプレクスの公式ドライバはどこがダメなのかよくわからない。
ついでにrecpt1とドライバも半公式?とstz版とm-tsubo版の違いがよくわからない。
何を基準に選定すりゃいいんですか・・・ pt3のはlinuxカーネル取り込まれたdvb版のことかな。
別に特に悪いところはない。カーネルに取り込まれているからpt3を刺すだけで動いて楽
強いて言うなら、m-tsudo版のcdevドライバに比べたら重いくらい
プレ糞のドライバはソースがないので、なにかバグがあってもユーザーで修正できない点が糞
この間のBS再編成みたいなときに対応できない。
(最近になってやっと修正したドライバが出たが、おっせーんだよカスが)
使用できるカーネルのバージョンが固定されいるので使用できるディストリが固定される & カーネルのセキュリティアップデートができない。
なによりプレ糞がサポート投げたら使用不可になるので、PX-W3PEのようにただのゴミになる
アーキテクチャもamd64でしか使えないのため、raspberry piとかで使用不可
recpt1は知らねえ >>172
おまえ、えらい口が悪いな、最近出所したばかりのチンピラか? >>174
えらく顔が悪い出没したてのオークみたいな俺よりマシ
>>172
サンクス >>160
最新版でもハングしました。ubuntu16.04、eprecunaで録画予約して実験しました。ふたつ目の録画が始まる直前にハングしてます。ログありますけど、要りますか? >>160
>>159までの一連の報告をしてた者です
>>175の方とは別です
うちはraspberry pi3ですが修正版でもハングします
チューナーが実運用中なのと多忙のためなかなか報告できずすみません
なおうちのテストは単にrecpt1に&付けて4並列実行x20秒を繰り返すだけです 要りますか?とか毎回作者に返事要求せずにさっさと上げればいいじゃん
わざわざ聞く意味わかんねぇわ >>177
いかにも、5ちゃんねるっぽさが垣間見えるレスだな px4_drvの作者です(3)
>>166
おー動きますか
動作報告ありがとうございます
>>175
>>176
チューナーの使用開始の処理の怪しそうなところを直してみました
お試しください
>>175
ログですがお願いします >>180
176の報告者です
最新版で、ハングアップしなくなりました
4並列x20秒テストをそれなりの回数やって一度もないのでうちの環境では大丈夫と判断します
あとdropについてはrecpt1の出力tsにはやはり数件ありますが、mirakurin+録画ソフト(うちはEPGStation)を経由した出力には全くありません
コマンドの録画開始時か終了時に少し出るのでは、という以前の仮説通りに見えます
とにかくうちの使用条件は無事クリアしたのでこれから運用環境に組み込みます
ありがとうございました >>182
ありがとうございます
確認いたしましたが内容は概ね予想通りでした 恐らく昨日の修正版でハングすることなく動作するようになると思います
ただ1つ気になった箇所がありましたのでお尋ねします
ログにpx4_drvが解釈できないioctlが投げられた記録があるのですが (unknown ioctl 80088d81)、
recpt1はどちらのものを使用されたか教えていただけないでしょうか
>>183
ハングアップしなくなりましたか 良かったです
どうやら今回の問題は録画開始/終了毎にメモリの確保/解放を行っていたことと、メモリ確保時のフラグの指定がよくなかったことが重なって起きたようです
録画終了時に解放済みの領域にアクセスしてしまうというのは見当違いだったのかもしれません
ですが、ringbuffer周りのコードを見直す良い機会となりました
dropについてはおっしゃる通りであると私も認識しております
px4_drvの不具合修正へのご協力ありがとうございました
また何かございましたらご遠慮なくどうぞ >>184
183です
運用環境でも問題なく動いていますが、今後何か発生したらgithubの方で報告します。
w3u4発売から約一年半、やっとやりたいことができた思いです。偉業と称えさせて下さい。
なおうちの運用環境はProxmoxVE(仮想ホスト)上のlxcコンテナです
ホスト側にドライバ入れて/dev/px4video0等ができれば、それをコンテナ側と共有することでコンテナ側に録画サーバを構築でき、kvmより軽量でシンプルになるので重宝しています
ProxmoxはDebian9+ほぼ最新のカーネルがベースなのでPlex版ではlxc化は不可能でした PT1、PT3ドライバと並ぶLinux3大偉業やで
お節介だけどGitHubのリポジトリにはライセンスも追記した方がよいかも
あえてライセンス無しとしてるならスルーで >>185
これまで物理以外だと適合OSのVMに対してUSBパススルーしかなかったから、
選択肢が広がるよね >>187
そう、まさにそれ
しかもkvmのUSBパススルーだと原因不明の大量dropするので、ホストにUSB RedirectorというUSBデバイスサーバを入れてゲストから共有する方法で回避してた(なぜかこれだとdropしない謎)
lxcで使えるのはマジ便利 >>184
175です。最新版でハングせず動作してます。ありがとう。
recpt1はPLEX配布のLinuxドライバに同梱されてたやつです。 >>183
>>184
ドロップに関してですが、ドロップした位置の情報を出力するように修正した
tsselect にかけた結果を貼っときます。
ttps://pastebin.com/RQnrEth3
・最後のドロップ位置は 256432
・ファイルサイズは 21475428
・offset=0:0:0 (0) は TDT/TOT (5秒程度の間隔) が一回も来ていない
ということで先頭付近ですね。一応、10秒程度録画、tsselect 実行を何回か
繰り返してみましたが全て同様に先頭付近でした。
filename : bsa.ts
filesize : 21475428
drop pid=0x0140, d= 1, offset=148332, offset=0:0:0 (0)
...
drop pid=0x0000, d= 1, offset=256432, offset=0:0:0 (0)
pid=0x0000, total= 99, d= 1, e= 0, scrambling=0, offset=118440
...
pid=0x0140, total= 92157, d= 2, e= 0, scrambling=92157, offset=4700
pid=0x0141, total= 1308, d= 1, e= 0, scrambling=1308, offset=164500
... >>191
乙
mirakurunを経由すればほぼdropしないことが実証されて安心 >>191
>ドロップに関してですが、ドロップした位置の情報を出力するように修正した
>tsselect
これ気になる >>184
すごいことになってますね!!!
Linuxカーネルにマージされる(≒今後第三者からもメンテナンスされ続ける)方向を考えると、できるだけ作者名を明示してGPLv2であると宣言しておいたほうがいいですよ。 px4_drvの作者です(4)
ご報告ありがとうございます
どうやら最新版で特に問題なく動作するようですね
よかったです
>>185
偉業だなんてとんでもないです…
大体は公式のドライバがやっていることを真似してるだけです
>>190
PLEX版recpt1ですね
確認したところ、>>184でのioctlはPLEX版recpt1がASICENなデバイス向けに発行するもののようでした
U4とPE4はこのioctlの機能とは関係ありませんので特に問題なさそうです
>>186
>>194
MODULE_LICENCEはGPL v2としていますので後日ライセンスを追記しておきます
ですがこのドライバはdvbではないのでLinuxカーネルへとマージされることはないでしょう
作者名ですか… 一応ただの名無しですし… >>191
わざわざありがとうございます
どうやら先頭の1500パケットほどの中にドロップが含まれる傾向にあるようですね
px4_drv側で先頭のパケットを捨てるようにすればdropは出なくなりそうですが、
そのままでもやはり実運用上は問題なさそうです 最初のコミットが1月だから地道な活動乙や
定価で買えるダブルチューナー機をLinuxの好きなディストロで使えるのはかなり大きい
もう転売屋からPT3を買う必要もないんや >>196
うちの環境だとPT2でも同じ感じ
charadevで運用しているがDVBの試用でdropを見つけるまで気付かんかった
自分はrecpt1のtsspliterにエラーチェックを追加してして先頭付近でエラーが
出たら捨てるようにして対処した px4_drv で Q3PE4 を使ってる者です。
あれからずっと録画していますが、幸い自分の環境ではハング等は発生せず快適に使えていました。
せっかくなので本日ドライバは最新にアップデートしました。
Q3PE4 で使っていて1点だけ気になるメッセージがあるのですが、recpt1 で録画をすると
LNB のオプションの数値にかかわらず以下のメッセージが表示されるようです。
Power on LNB failed: /dev/px4video0
また syslog には
px4_drv: LNB power supply is disabled.
が記録されます。
実害は無いのですが毎回出力されるので syslog や dmesg がこのメッセージで埋まってしまうのが気になってます。 私もpx4_drvを使わせていただきました。すごいですね。
ubuntu-18.04(x64)+Q3U4で使っています。8チャンネル認識しているようです。
tsvファイルはW3U4の情報をもとにしてファームウェアを抽出しました。
まだ数秒程度のテストのみですが、recpt1でT/Sともに録画できました。
Q3PE4のかたと同様、LNBのメッセージがでますが、録画はできているように見えます。
予約録画環境が整ったら、実践的なのを試してみます。 px4_drv 凄いね
usb接続だから録画中にエンコとかで負荷が高くなるとdropしそうなイメージなんだけど実際はどんな感じ? まさかPX-W3U4がLinuxの鉄板チューナーになる日が来るとはね・・・
予備に一つ買っておこう アキバのBuymoreでPLEXの
w3pe4 1人2限 9980円
q3pe4 1人2限 18980円
q3u4 1人2限 18980円
でうってる、まだ在庫はあるもよう >>550
1万切ってるのか安いなw
中でUSB接続してる変態仕様め PLEXの本スレとどっちに書くか迷ったけど
px4_drvもあるから今ならこっちかなと 初心者でよくわからんけど、
どっかのすごい人がPLEXのドライバ作ったってこと? raspi3で4ch同時は安定してます?
安定してるならwin10+PT3から乗り換えようかな 本運用前のテストをラズパイ3でやったけど、ハングやdropの問題はない
ただrecpt1叩いてから実際に録画始まるまでがちょっと長い気はした
20秒指定でrecpt1叩いたら終了時にRecorded 40secとか出たり(これはたぶんコマンド実行時間で、実際に録画されたtsは20秒)
録画ソフトの設定にもよるけど、時間きっちりに始まる番組だと頭切れたりするかも
ただうちは録画保存先がNASなのでそれが影響してるかもしれん >>209
ありがとう
T1→T0でドロップは結構激しいの?
回避策はありますか? >>212
T1→T0は普通にドロップする
上でドライバ作者の人が書いてるがおそらく機器レベルの問題で、ドライバでは回避できない
うちはmirakurunなので根本的には対策なし
地上波あまり録画しないからT1殺してる まあ地デジチューナーは他にもドロップしないのあるやろし… >>213
T1→T0ってどういう意味?
地上波向けのデバイス1から地上波向けのでばいす >>215
しまった途中で送ってしまった。
この表記ってチューナーからチューナーにデータが流れることがあって、その場合にドロップするってこと?
いまいち状況が飲み込めん。 PLEXの現行チューナーのQ/W3PE4とQ/W3U4で出る、T1→T0の順番でチューナー開くとT1にドロップが出る症状の事 >>215
T1を先にオープンしちゃうとT0初回オープン時にドロップが出るってやつっしょ
だからT0をはじめに開けばその問題は回避できる 番組時間に差がある場合
例えば時系列で
T0録画開始
T1録画開始
T0録画終了
T0録画開始
となったらdropするのかな
「両方停止状態→T1→T0のとき限定」だったら該当しないが >>218
>>217
あー、そういうことか。
コマンド単体じゃなくてmirakurunみたいなデーモン使えば運用でなんとかなりそうな気がするな。簡単なパッチは必要そうだが。 mirakurunはチューナーに利用優先度設定ないから順序制御できない
それに自身のEPG更新のために空きチューナー使うからさらに複雑になる
録画コマンドをさらにラッピングして「T0T1が両方未使用なら必ずT0から使うシェル」でも自作すればいけるかな T0T1が両方とも未使用の状態からT1を開いて次にT0開くとT1がドロップする
未使用の状態からってのがポイントで一度でもT0とT1が同時に起動した状態があれば
以降はT1側を開きっぱなしでT0を開閉してもT1はdropしない 起動時にスクリプトでT0とT1を同時に録画すればいいのか? 間違い。T1を録画して直ぐにT0を録画すればいいの? >>224
先にT0を開いてある時だけT1を開くみたいな運用で回避 >>224
常にT0から開けばOk
なので >>221 さんの方法が取れれば解決する、つかPLEXファーム修正しろ チューナー大量に買ってそれぞれのT0だけ使えばいいじゃん わざわざ1→0で運用する意味が分からん
見つけたのはえらいと思うけど mirakurunもチューナーのプライオリティとかEPG取得専用チューナーとかそういうの設定できたらなぁ。
まぁそんな複雑になりそうなことやらないほうが保守性高くなるから自分から書きたい・保守したいってやついないだろうけど >>230
mirakurun作者の同人誌でpt2ドライバのバグに対応しました的な話があったような気がする(ぱらぱらみただけなので見間違いだったらスマソ)。
下層の不具合も全無視ってことはないかもなぁ。
ただ、Linux周辺ではプレクチューナはマイナーなので可能性は低そうだが... >>221的なものを作る場合の注意点
mirakurunはtuner.ymlに書かれたコマンドを録画開始時に起動し、録画終了時には「mirakurinが呼び出したプロセスだけ」をkillする
ので、シェル等を被せる場合はシグナルをtrapして、シェルから呼び出したrecpt1を終わらせる必要がある >>204
> q3u4 1人2限 18980円
これは地雷だぜ?仕方ないならQ3PE4にしとけ
ま、PCIe給電と、小型FANの有無以外、Q3PE4もQ3U4もそれ程差はないけどな >>233
地雷の理由って排熱?
raspiで使いたいんだけどpe4に
無理やり3.3v給電した方が良いのかな? 利用時にドライバーでT0 T1両方を常時開けっ放しにすればいいんじゃねえの
上層でハードのバグ対応なんてばかばかしいと思うんだが
>>231
×pt2ドライバのバグに対応しました
○pt2ドライバのバグを修正しました >>234
Q3U4が地雷というのは吸排熱関連とFANの性能不足。
そもそも狭小窒息ケースのなかに40x40x10mmなFANを常備させてるだけで
熱問題を解消できると勘違いしているPLEXが残念ってことだわな
FANが回転を始めるとしばらくして録画TSにdropが加算していくことを見てもヤバイ。
改造してもいい人なら、狭小ケースの左右の柵っぽいやつを全撤去して外気を流せるようにすれば
多少改善するかもしれないが・・・いっそ基盤むき出しでPCケースへ収納してもよさそう。
オクで処分して、W3U4を2台とW分波器を1個、買ったほうがまだいいかもな。 >>236
ファンが回転するとドロップするってLinuxでも再現すんの?
PE4と同じでWindowsだと出るけどLinuxだと出ないとか言うのはこのケースだと無し? q3pe4はファンの有無関係なしにD0とD1のチューナーを同時に使用するとドロップするって聞くし、避けられるなら避けたほうがいいでしょ
linuxで人柱になるぜっていうなら止めはしないが
あとラズパイのusbで8tsって処理できんのか?
帯域足りなくなりそう recpt1 は pt1_dev.h の isdb_t_dev[NUM_ISDB_T_DEV] に定義されている順番に空いているものが使われるんじゃないのかな?
px4video* 定義して recpt1 にデバイス選択まかせておけば未使用の状態から T1 が先にオープンされる可能性は低そうだけど。
Mirakurun も推奨設定?ではないだろうけど --device で指定するのやめて recpt1 にデバイス選択まかせちゃえば。 やっぱゴチャゴチャやるよりチューナー数で殴るのが早そう >>239
recpt1リビルドしてみたが、録画時にどのチューナー選んだか表示されないのな
でも基本的にこの方針で行けそうな気はする レス下さった方ありがとうございます
raspiで8tsは無理だと思いますが
2チューナーと値段的に大差ないのでどうせならという感じでした
おとなしくw3u4にします chinachuで録画したファイルが消えてる
一ヶ月以上前は軒並み消えてるな……なんだこれ >>243
デフォルトだと空き容量がなくなってくると自動削除みたいですが
設定は確認済ですか?
"storageLowSpaceThresholdMB": 3000,
"storageLowSpaceAction": "remove", >>244
3TBに設定してて空きまくりなのですわ chinachuはよくわからんが
空きを3TB確保する設定だったりして 空き容量のしきい値なので、このパラメータを3TBで設定してしまうと
空き容量が3TBを下回ると削除されてしまうと思いますがどうでしょうか。 構築するだけして全然録画してなかったんで気付きもせんかった…… 今Windowsでpt3+spinel+EDCBで録画兼ファイル鯖として使ってるんだけど、イマイチLinuxに踏み切れない…
Linux派の諸兄は最初からLinux使うてたんですか?
もしWindowsから移行してきた人いたらどこら辺で移行に踏み切ったか教えて欲しい… windows updateゴミやん?
つーかそんなこと知ってもなんの役にも立たないぞw ■ このスレッドは過去ログ倉庫に格納されています