- 1 名前:login:Penguin [2008/06/14(土) 02:32:40 ID:Ru/elGDS]
- Linuxでfriioを使う事に関して話し合うスレッドです。
Friio - 地上デジタルハイビジョンテレビアダプター 「フリーオ」 ttp://www.friio.com/ ttp://www.friio.net/ ttp://www.friio.com/press/ フリーオの場合、受信したデジタル放送の暗号化(MULTI2暗号)を解くと同時に、 MPEG2TSフォーマットのファイルとして、そのままHDDに保存されます。 うpろだ ttp://2sen.dip.jp/friio/fromup.html
- 415 名前:login:Penguin mailto:sage [2008/10/31(金) 23:53:08 ID:RLE/axFx]
- 白friio付属のカードリーダで、エラーに悩まされているから、カードリーダだけ取り替えようと思います。
ググってみましたが、どのカードリーダが適しているのか分かりません。 どなたか、よろしければ、使っているカードリーダを教えてください。
- 416 名前:login:Penguin mailto:sage [2008/11/01(土) 00:21:49 ID:LmXM0VMZ]
- >>415
日立、NTT-Comの2択だから好きな方を買え。 64bit、Linux対応してるのはNTT-Comの奴。
- 417 名前:415 mailto:sage [2008/11/01(土) 00:30:53 ID:JysaIrMk]
- >>416
ありがとうございます。NTT-COMの方を買おうと思います。 非接触型の SCR3310-NTTCom を注文しました。
- 418 名前:login:Penguin mailto:sage [2008/11/01(土) 00:43:53 ID:2wQi17/r]
- 接触型やん
- 419 名前:417 mailto:sage [2008/11/01(土) 00:55:25 ID:JysaIrMk]
- あ、勘違いしていました。
SCR3310は接触型ですね。 B-CASカードみたら、端子が金色の端子が付いているから、接触型でいいんですよね?
- 420 名前:login:Penguin [2008/11/01(土) 12:20:09 ID:jPiRqT4J]
- >>415
デバイスが認識されないというエラーなら ehci_hcd モジュールをmodprobe -r, modprobeで インストールし直せば認識されるよ 電源ON/スタンバイ復帰から初期化にかかる時間がかかるみたい 似たようなデバイスで カーネルソースのdriver/usb/core/hub.c のGET_DESCRIPTOR_TRIES を増やせばOKという報告もあったような
- 421 名前:417 mailto:sage [2008/11/04(火) 21:36:12 ID:Kvawi5DS]
- >>420
ありがとうございます。 実は、まだWINDOWSでしか使っていません。 今回、ファイルサーバ(Fedora Core9)をatom CPUで組んだので それに取り付けようかと考えていたところです。 ただ、カードエラーはH/W的な問題なので、OSは関係無いだろうと思いまして・・・
- 422 名前:417 mailto:sage [2008/11/04(火) 21:39:24 ID:Kvawi5DS]
- ところで、結局カードリーダは購入してません。(注文したけど払い込んでいない)
もしかすると、USBのバスパワーがきついだけなのかと思い、 思い切って、Friioを分解しました。 そして、USBバスパワーのラインをパターンカット。 直接、ATX電源から5Vを供給してみました。 結果はビンゴ!! 日曜日から断続的に長時間録画していますが、カードエラーは 起こらず、ずっと正常動作しています。 ちなみに、電流計で計ったら、470mA流れています。 USB バスパワーがきつかっただけなのか。俺のFriio。 カードリーダはとりあえず、キャンセルです。
- 423 名前:login:Penguin mailto:sage [2008/11/06(木) 23:47:27 ID:nRO/y3vD]
- >>422
470mAであることまで調べたのはGJ ちなみにUSBの定格は500mAなので、突入も考慮すると ノートとかでは特に厳しい気がする
- 424 名前:422 mailto:sage [2008/11/08(土) 01:25:50 ID:k7X1fRxF]
- 電源はUSBの規格ギリギリだって聞いてたけど、本当にギリギリだったw
470mAになるのは、LEDが最大輝度で点灯しているときね。 あんまり光っていないときは、460mAくらいかな。 明日は仕事休みなので、いよいよLinuxで使うことに挑戦してみる。 以前、アナログキャプチャボードでMythTV使ってたけど、 あれはとても便利だった。Friioでもできるのかな?
- 425 名前:login:Penguin mailto:sage [2008/11/08(土) 01:38:09 ID:4QzfNPz1]
- まだ試せてないんだけど、FriioのV4L2用ドライバを作ってくれた
人が居るからMythTVでも使えるんじゃないかな。 Linux でビデオ録画【六枚目】 pc11.2ch.net/test/read.cgi/linux/1193058543/
- 426 名前:login:Penguin mailto:sage [2008/11/08(土) 11:30:11 ID:LVmMKDWq]
- recfriio とかいうコマンドがあるお。
- 427 名前:login:Penguin mailto:sage [2008/11/08(土) 11:54:27 ID:o4V2MbF6]
- B-CAS無しでB25はずせないかな?
Windowsのアプリだと出来るけど Linuxだとまだ無理? カードリーダ調子悪いんだよなぁ・・・
- 428 名前:login:Penguin mailto:sage [2008/11/08(土) 12:07:33 ID:OU8GHSsC]
- Friioの中の人がB-CAS鯖の詳細を公開してくれるか
誰か解析しないとB-CAS無しは無理だろな。 あまり興味がないから調べてないが、鯖への接続に認証が 必要なら、ますます無理だってことになる。 まあ、それにB-CAS鯖の信頼性(たまに止めてるようだし) から考えると、鯖が使えたとしてもB-CASカードとの併用が 現実的じゃねえかな。
- 429 名前:login:Penguin mailto:sage [2008/11/08(土) 12:20:41 ID:o4V2MbF6]
- うーんそうか。ありがと。
素直にNTT-COMの奴を買うかな
- 430 名前:login:Penguin mailto:sage [2008/11/08(土) 12:38:12 ID:OU8GHSsC]
- ああ、そうだ。
MPEG-2 TSの定型的なフレーズから推測できる範囲で 総当りすることで解けるんじゃないか ってなことを、まるもさんだったか誰だったかが前に書いてたな〜 いまだと速度的に無理っぽいけど8コア3GHzのCPUが普通に使える ようになると現実的になるかもしれないね
- 431 名前:login:Penguin [2008/11/08(土) 12:40:19 ID:QWlNEK5w]
- >>427
白のBCASって電源まわりの問題が多いみたいだから >>422 のように電源を確保するか Y字ケーブルを使えばいいんではないかな それにしてもfriioの仕様によると2.1Wのはずなのに 470mAも流れるってことは仕様は嘘? LEDいらないからもぎ取っちゃっても大丈夫なのかな
- 432 名前:login:Penguin mailto:sage [2008/11/08(土) 12:46:32 ID:o4V2MbF6]
- >>430
その頃には地デジはB-CAS必要なさそうじゃないか?w >>431 やっぱり電源なのかな。 Windows機につないだときはちゃんと内蔵カードリーダが使えるんだけど Linux機につなぐと調子悪いんだよね。 電気工作系は苦手なのでUSBのHUBでも買うかなぁ・・・。
- 433 名前:login:Penguin [2008/11/08(土) 12:59:21 ID:QWlNEK5w]
- どう調子悪いのかわからないけど >>420も参考に
- 434 名前:login:Penguin mailto:sage [2008/11/08(土) 13:09:13 ID:mZ30B6Uf]
- >>431
5V*0.47A=2.35W つう事でまあ誤差じゃないかい。
- 435 名前:login:Penguin mailto:sage [2008/11/08(土) 13:19:50 ID:QWlNEK5w]
- あげてしまった(^_^;)
10数%も違うって抵抗あるなぁ 黒も絶対2.5W以上なんだろうね
- 436 名前:login:Penguin mailto:sage [2008/11/08(土) 13:20:14 ID:o4V2MbF6]
- >>433
付き合ってくれてありがと。 カードリーダの認識自体はしてるみたいなんだよね。 lsusbすると表示もされるし。 ML115 + CentOS5.2 + Friio x 2 で実験してます。 ただ、b25を通そうとすると error - failed on B_CAS_CARD::init() : code=-4 となっちゃう。 ML115じゃ無いマシンだったら使えていたんだけど。
- 437 名前:login:Penguin mailto:sage [2008/11/08(土) 13:34:10 ID:QWlNEK5w]
- カードへの接続に失敗しているみたい
たぶん pcsc_scan でもうまくカードが表示されてないよね >>420の方法で認識しなおさせてもダメなのかな
- 438 名前:login:Penguin mailto:sage [2008/11/08(土) 13:57:03 ID:o4V2MbF6]
- >>437
pcsc_scanというコマンドがまず無い・・・。 yumとか一通り調べたんだけど見あたらない>_< >>420の方法をやってみても 駄目でしたorz
- 439 名前:login:Penguin mailto:sage [2008/11/08(土) 14:10:50 ID:4QzfNPz1]
- >>430
暗号化されてるのはMPEG2-TSパケットのペイロード部分のみ。
- 440 名前:login:Penguin mailto:sage [2008/11/08(土) 14:12:45 ID:QWlNEK5w]
- やっぱり電源不足なんですかね
Y字ケーブルが手に入れば工作不要で一番楽だと思いますが 安いのだとフリーオのサポートページにもリンクがある秋月のが\200であるけど 逆流防止とかのついたもう少しちゃんとした奴は2000円弱もするんだよね ちなみにpcsc-scanは pcsc-tools というパッケージに含まれてます
- 441 名前:424 mailto:sage [2008/11/08(土) 14:35:27 ID:k7X1fRxF]
- >>431 >>434
電流測定は、KENWOODの実験用電源に付属の電流系で見ただけだから、 多少は誤差があると思います。 それでも、450mAは超えていると思いますが。 今、基板を裸で動かしていますが、暑くなるのは、銀色のメッキ板で シールドされた受信ユニットです。 おそらく、これが電流を食っているんだと思います。 黒い樹脂で固められた部分は全然暑くなりません。
- 442 名前:424 mailto:sage [2008/11/08(土) 14:41:01 ID:k7X1fRxF]
- >>440
わたしも逆流が気になってY字ケーブルは使いませんでした。 たぶん、大丈夫だとは思いますが・・・ ところで、多少の工作が許されるのであれば、USBケーブルを 加工する方法でもいいと思います。 バス電源のラインを途中でカットして、そこから5Vを供給すればいいです。 これが一番安上がりです。必要なら、USBケーブルのピンアサインをアップします。 (Y字ケーブルの方が、ケーブル加工によるデータラインのインピーダンスを 乱すことを軽減できる可能性があります。ただ、USBのデータラインは作動で 送られているので、そのツイストケーブルを解かなければ大丈夫だとは思いますが。)
- 443 名前:442 mailto:sage [2008/11/08(土) 14:43:20 ID:k7X1fRxF]
- 慌てて書いたら、>>441 >>442の書き込みは漢字をたくさん間違えてしまいました。
ごめんなさい。
- 444 名前:login:Penguin mailto:sage [2008/11/08(土) 15:41:48 ID:LVmMKDWq]
- > その頃には地デジはB-CAS必要なさそうじゃないか?w
B-CAS 廃止じゃなくて、機器組み込みになって抜きにくくなるだけじゃないのか?
- 445 名前:424 mailto:sage [2008/11/10(月) 01:00:09 ID:Kl7HUzoc]
- 今日、Linuxでフリーオ使ってみました。
recfriioの出来がいいからだと思いますが、あっけなく動きました。 次は、どうやって便利に録画できるようにするかをやってみるつもりです。
- 446 名前:login:Penguin mailto:sage [2008/11/10(月) 19:15:05 ID:TIR90l+C]
- マルチキャストにして宅内LANならどこでもテレビを見れるようにするとか
- 447 名前:login:Penguin mailto:sage [2008/11/12(水) 01:37:47 ID:fhxQUXEC]
- 地デジの生データは、番組情報とか、いろんなデータが重畳されているんだよねえ?
それを外して録画することってできないかなあ? 少しでもHDDの使用量を削減するために。
- 448 名前:login:Penguin mailto:sage [2008/11/12(水) 01:39:49 ID:FsPK2ehi]
- つtsselect, TSsplitter
- 449 名前:login:Penguin mailto:sage [2008/11/12(水) 01:43:57 ID:FN93dJQm]
- 編集しないなら、いっそatdとかで再圧縮処理させちゃうとか。
- 450 名前:login:Penguin mailto:sage [2008/11/12(水) 02:19:30 ID:p/A9MgjK]
- VLCでmp4に変換してからx264とか考えた場合
微妙にVFRってたり、24fpsのが混じってたりするから放送波は恐ろしい。 信じられんのだが、mp4infoがそう答えるんだ。33fpsとか…。 …結果考えるのをやめた。
- 451 名前:447 mailto:sage [2008/11/13(木) 00:03:45 ID:hUHAO+jM]
- TSsplitter使ってみた。
577MByteのファイルからフルセグだけを取り出したら502MByteになった。 まあ、こんなもんなのかな。 ただ、これってWINDOWSでしか使えない・・・orz
- 452 名前:login:Penguin mailto:sage [2008/11/13(木) 00:11:00 ID:ijd92HZ3]
- つwine
- 453 名前:login:Penguin mailto:sage [2008/11/13(木) 13:47:20 ID:hUHAO+jM]
- 処理が重くなるのが嫌。だからwineはヤダ
でも、食わず嫌いなのかな?もしかしてwineってそんなに重くないのか?
- 454 名前:login:Penguin mailto:sage [2008/11/13(木) 13:51:02 ID:Hju9YE1k]
- recfx2y に ts2pts のルーチンくっつけてチャンネル選択機能持たせてみたけど、
雨降りの BS, CS 撮ると、seg るんだよなぁ。
- 455 名前:login:Penguin mailto:sage [2008/11/13(木) 16:03:12 ID:LAdziec4]
- >>453
wineを勘違いしている。エミュレータじゃないよ。
- 456 名前:login:Penguin mailto:sage [2008/11/13(木) 19:48:11 ID:W5XuN7Wr]
- >>453
/usr/bin/wine ./TsSplitter.exe hogehoge.ts これでさくっと処理終わるよ? GUIなくても平気だし。 楽々。一度やってみ。
- 457 名前:login:Penguin mailto:sage [2008/11/13(木) 22:01:54 ID:B8Ot8GAz]
- ____
/ミ彡彡彡\ /ミミ彡/丶ノ川\ //ヽvvノ |ノ川川丶 V ――ニ 丶リ川川| |-==イヾ===- \リ川| Wine使ったこと無いの? |∠Oノ)i`ーOヽ_ |/)) もったいない・・・ iー"/ `ー レ / | (oo) -< 丶 r==、丶 川 丶 i ̄ii L/ iヾニソ / \___/\ / |/L∧/| 丶 | 丶||/<~ /| |i V/=/ |
- 458 名前:login:Penguin mailto:sage [2008/11/13(木) 22:02:43 ID:83p7eaHV]
- >>455
wineはエミュレータだろ
- 459 名前:login:Penguin mailto:sage [2008/11/13(木) 22:11:14 ID:ijd92HZ3]
- >>458
wineがエミュレータとなるのは、非x86環境でqemu使ってwinアプリを動かすときだけ。 x86環境ではAPIラッパーでしかない。
- 460 名前:453 mailto:sage [2008/11/14(金) 00:09:15 ID:U296LK7Z]
- どうやら、食わず嫌いだったようだな。
今から入れてみる。 調べたら、Wineがエミュレートするのは、WINDOWSのAPIとか、 メッセージ、ハンドル、タスクスケジューリング等々らしい。 WINDOWのDLLとかも普通に呼び出していいわけね。(Wineが解決してくれるってこと)
- 461 名前:login:Penguin mailto:sage [2008/11/14(金) 00:13:58 ID:OGXCntIi]
- wine = wine is not emulator
- 462 名前:453 mailto:sage [2008/11/14(金) 01:08:46 ID:U296LK7Z]
- すげー
wine使えるやん。 X86用のプログラム事態は、エミュレートじゃなくて直接CPUが実行している わけだから、はえー これで、TsSplitter使えるようになりました。 WINDOWS用に作ったソケット使うソフトとか、COMポート使うソフトとかも動くのかな。 週末にいろいろ試してみよう。
- 463 名前:login:Penguin mailto:sage [2008/11/14(金) 01:13:56 ID:uTNuYbCL]
- 今後の報告は個人ブログでお願いします。
- 464 名前:login:Penguin mailto:sage [2008/11/14(金) 01:27:20 ID:hEkcKRqh]
- >>463
wineスレあるからそっちでやってもらえばい。 今夜も Wine で乾杯! - 14本目 pc11.2ch.net/test/read.cgi/linux/1221235506/
- 465 名前:login:Penguin mailto:sage [2008/11/14(金) 22:17:55 ID:U296LK7Z]
- スレ違いなのでwineの話はしません。
ところで、recfriioで予約録画する方法をググったら、 cronでやっている人が多いみたいね。 それ以外の方法ってないのかな? MythWebみたいに、うちのオカンでも操作できそうなやつ。
- 466 名前:login:Penguin mailto:sage [2008/11/14(金) 23:04:47 ID:ujI5nvkE]
- おかんにcrontabの使い方教えてあげるしかない。
- 467 名前:login:Penguin mailto:sage [2008/11/14(金) 23:29:35 ID:yoJlqArz]
- おらphpからatにぶっ込んでる
- 468 名前:login:Penguin mailto:sage [2008/11/15(土) 02:35:04 ID:sJupkIZS]
- >>465
perl、php辺りでできるようにすればいいじゃん。 EPG解析してEPGから番組表作れるようにしてもいいしな。 番組延長対策が大変だけどさ。
- 469 名前:465 mailto:sage [2008/11/15(土) 09:54:50 ID:sqsW67TT]
- おかんにcrontab教えるのは容易ではないな。
以前、WinXPのOutLookの使い方教えるのも大変だったくらいだから。 phpからatにセットする方法をとりあえず試してみる。 余力があれば、番組表対応もやってみる。 今日はこれから仕事行くから、やるのは明日。
- 470 名前:login:Penguin mailto:sage [2008/11/15(土) 10:33:41 ID:4DzIRf7x]
- vrs使えば?
対応版作ってる人もいるみたいだし。 ttp://labo.kokodayo.com/wiki/Linux/Friio.html
- 471 名前:login:Penguin mailto:sage [2008/11/15(土) 10:58:45 ID:HL1wHwYe]
- MythTVじゃいかんの?
- 472 名前:login:Penguin mailto:sage [2008/11/15(土) 11:57:48 ID:PQHMgEA+]
- ん?
>>470のdo-record.sh( 録画時に呼ばれるスクリプト )みたけど nice -n 19で録画走らせているけどこれって正しいの? CPU負荷とか上がったら処理オチしない?
- 473 名前:login:Penguin mailto:sage [2008/11/15(土) 13:18:11 ID:4DzIRf7x]
- >>472
19は優先度最低だから大丈夫じゃね? ttp://www.linux.or.jp/JM/html/GNU_sh-utils/man1/nice.1.html
- 474 名前:login:Penguin mailto:sage [2008/11/15(土) 13:35:11 ID:4DzIRf7x]
- ごめん、説明が足りなかったかも。
録画は普通の優先度だよね? > $RECFRIIO -b25 $CHANNEL $DURATION $OUTDIR/$OUTNAME.ts > /dev/null で、tsspliterだけがnice -n 19だからいいんじゃないかな? > nice -n 19 $WINE $TSSPLITTER -SD -1SEG $OUTDIR/$OUTNAME.ts > /dev/null これは録画コマンドじゃないし
- 475 名前:login:Penguin mailto:sage [2008/11/15(土) 16:05:20 ID:PQHMgEA+]
- あ、ホントだ。勘違いスマン。
- 476 名前: ◆N/E9PqspSk mailto:sage [2008/11/16(日) 07:10:48 ID:qGQr/wKL]
- >>465
MythTVのスケジュールに合わせてrecfriioを起動するPerlスクリプトがLinux関係詰め合せに入っていたりするのだが、 設定項目多すぎで自分以外だれも使ってない予感。 >>468 TSからEPG取る場合はSolaris用録画プログラムに入ってるepgdumpを修正してcsvに変換するとやりやすい。 だが、TV局が送ってくるジャンル情報が適当すぎるのでTV王国の情報を見たほうが良いのかもしれない。 どちらもタイトルとサブタイトルの分割が適当なので、延長を気にしなければOnTV Japan最高に戻る。
- 477 名前:login:Penguin [2008/11/16(日) 13:58:50 ID:mjIeLBf7]
- ubuntu8.10+recfriior4 で録画しようとするとうまくいかない。
メッセージはこんな感じ。 Search friios from dir: /dev/bus/usb 1 friios found: /dev/bus/usb/004/009 is Friio(Black) skipped. no friio can be used. can't open tuner. 原因とか対策分かる人いたらお願いします。 ちなみに同じPC&黒凡で ubuntu8.04+recfriiobsr1 のときは録画できていました。 ubuntu8.10にしてから、recfriiobsr1 も同じメッセージで録画ができません。 お助けを
- 478 名前:login:Penguin mailto:sage [2008/11/16(日) 15:09:50 ID:/evG6hgi]
- >>476
FriioのV4L用ドライバがあるので、それを使ったら簡単に MythTVで使えるようになるんじゃないでしょうか。 試してませんが。
- 479 名前:login:Penguin mailto:sage [2008/11/16(日) 16:21:05 ID:x+/hztDq]
- >>477
AbstractFriio.cppの299行辺りの種別判定で引っかかってるっぽいね。 io_ctrl()でUSBDEVFS_CONTROLを上手く取得できなくて白凡と判定されてるっぽい。 ubuntu8.10のバグなのかもね。
- 480 名前: ◆N/E9PqspSk mailto:sage [2008/11/17(月) 04:50:46 ID:UnPAyewA]
- >>478
多分できるはず。英語のドキュメント読むのが面倒なのと、既にrecfriioベースで環境作ってしまったので私も試してませんが。 >>477 recfriio.r4から白黒共通になっている影響でBSのチャンネル番号が13〜23からB1〜B11に変更になっているので、B1等で試してみて下さい。 /dev/bus/usb/004/009 is Friio(Black) skipped. が表示されてることから黒凡とは判定されているように見えます。 recfriiobsr1でも同じメッセージが出るのは妙で、良く分かりません。
- 481 名前:login:Penguin [2008/11/17(月) 22:28:36 ID:q2SKKxQV]
- >>480
情報ありがとうございます。 チャンネル番号をB3にすると録画できました。 readme.txtの確認不足でした。 ちなみにrecfriiobsr1のメッセージは Search friios from dir: /dev/bus/usb devices file: /proc/bus/usb/devices /dev/bus/usb/004/008 is Friio(Unknown). skipped. recfriiobs: no friio found. で微妙に違ってました。
- 482 名前:login:Penguin mailto:sage [2008/11/20(木) 10:39:19 ID:OY90Lpdd]
- >>430
64bitの幅のデータを入力して出てくるのが64bit。 つまり64bit * 2^64 = 2^67 Byte = 128 EB(TBの二つ上) のストレージがあればすべて保存出来るね? つまりアルゴリズムを逆算するための資料集め自体が事実上無理
- 483 名前:login:Penguin mailto:sage [2008/11/20(木) 10:44:57 ID:OY90Lpdd]
- >>430
64bitの幅のデータを入力して出てくるのが64bit。 つまり64bit * 2^64 = 2^67 Byte = 128 EB(TBの二つ上) のストレージがあればすべて保存出来るね? つまりアルゴリズムを逆算するための資料集め自体が事実上無理
- 484 名前:login:Penguin mailto:sage [2008/11/20(木) 11:14:54 ID:yJ0svzUL]
- >>482
もちろん圧縮する。何か問題があったらしく進展はないが。 ttp://www.marumo.ne.jp/db2007_c.htm#15
- 485 名前:login:Penguin mailto:sage [2008/11/20(木) 13:04:38 ID:WHAWweKQ]
- >>484
おまいさんが閲覧したときには、その問題について書かれてなかったの?
- 486 名前:login:Penguin mailto:sage [2008/11/20(木) 13:38:36 ID:hyA3vIzW]
- 実際のところ、入力はECM本体だから最低30バイトほどになるよ。
ECM本体自体が暗号化されているからこれ自体をメモリのアドレスに割り振らないとね・・・・
- 487 名前:login:Penguin mailto:sage [2008/11/22(土) 08:14:00 ID:GhGlu9LO]
- PT1発売後にこんなこといっても需要なさそうだけど、
玄箱ProでB25が認証エラーする問題の解決法が見つかったらしい。 pcsc-lite-1.4.102のソースを入手して./configureが終了後、Makefileの85行目を CFLAGS = -Wall -fno-strict-aliasing -g -O2に変更してコンパイルすれば通るらしい。
- 488 名前:login:Penguin mailto:sage [2008/11/22(土) 18:34:20 ID:eQKAaNGp]
- らしい。
- 489 名前:login:Penguin mailto:sage [2008/11/22(土) 19:32:23 ID:L45qcRWf]
- すごくや>>488
- 490 名前:login:Penguin mailto:sage [2008/11/22(土) 19:34:59 ID:3C6u9IAt]
- 既出 pc11.2ch.net/test/read.cgi/linux/1193058543/699
- 491 名前:login:Penguin mailto:sage [2008/11/22(土) 22:10:02 ID:sLpMuuvO]
- recfriio を少しいじってみた。
シグナルを送るとチャンネルを変更できるようにしたつもりなんだが、、、 diff -uNr recfriior4/recfriio.cpp /home/xxxxxx/src/recfriior4/recfriior4/recfriio.cpp --- recfriior4/recfriio.cpp 2008-09-20 00:04:04.000000000 +0900 +++ /home/xxxxxx/src/recfriior4/recfriior4/recfriio.cpp 2008-11-22 20:27:46.000000000 +0900 @@ -202,6 +202,14 @@ caughtSignal = true; } +static Recordable* tuner; + +void sighup_handler(int signo) { + int ch = system("friio-ch-get"); + ch = WEXITSTATUS(ch); + tuner->setChannel(BAND_UHF, ch); +} +
- 492 名前:491 mailto:sage [2008/11/22(土) 22:10:50 ID:sLpMuuvO]
- /** main */
int main(int argc, char *argv[]) @@ -268,7 +276,8 @@ #endif /* defined(B25) */ // Tuner取得 - boost::scoped_ptr<Recordable> tuner(createRecordable(args.type)); + //boost::scoped_ptr<Recordable> tuner(createRecordable(args.type)); + tuner = createRecordable(args.type); // ログ出力先設定 tuner->setLog(&log); // ロックファイル設定 @@ -334,6 +343,8 @@ std::cerr << "gettimeofday failed." << std::endl; exit(1); } + +signal(SIGUSR1, sighup_handler); // SIGINT/SIGTERMキャッチ struct sigaction sa;
- 493 名前:491 mailto:sage [2008/11/22(土) 22:11:50 ID:sLpMuuvO]
- $ recfriio --b25 20 - - | vlc /dev/stdin & # <- 画面が表示される
$ echo 'exit 15' > friio-ch-get $ pkill -USR1 recfriio # <- チャンネルが変わる $ echo 'exit 20' > friio-ch-get $ pkill -USR1 recfriio # <- もう一回変えようとする とすると、 interrupted. done. Rec time: 92.598358 sec. Signal level: 25.9549 と出て、recfriio が終了してしまう。 やりたいことは VLC でfriioの出力をudpで送信して mythtv で受信させる、 mythtv の外部チューナーのチャンネル変更機能と上のような手順を組み合わせて チャンネル変更。 一応うまくいってるのだが、チャンネルを2回変更するとrecfriioが終了してしまい、 はまっています。 環境: Mythbuntu 8.10、白friio、カードリーダSCR3310-NTTCom ご助言いただければ幸いです。
- 494 名前: ◆N/E9PqspSk mailto:sage [2008/11/22(土) 23:21:48 ID:m621f6Uy]
- signalをキャッチした時にシグナルハンドラがデフォルト状態にリセットされるので、
シグナルハンドラの先頭で再度シグナルハンドラを設定しないといけないです。 または、signal(SIGUSR1, sighup_handler); のかわりに、 他のシグナルと同じように struct sigaction usr1sa; memset(&usr1sa, 0, sizeof(struct sigaction)); usr1sa.sa_handler = sighup_handler; usr1sa.sa_flags = SA_RESTART; sigaction(SIGUSR1, &usr1sa, NULL); とすれば良いはずです。試してないのでバグってたらすまん。 scoped_ptrを使わないと終了時にdeleteされない気がしますが実害は多分ないので無視。
- 495 名前:491 mailto:sage [2008/11/23(日) 16:09:09 ID:01Mj8kbh]
- ありがとうございます。
とりあえず前者の方法を試したところ、シグナルで落ちることはなくなりました。 が、強引にチャンネルを変えているせいか、recfriio と vlc をパイプでつなぐと segmentation faultが出てしまい実用できない、、、 あと mythtv との連携のためなら、recfriio実行中にシグナルでチャンネルを変えなくても、 $ cat friio-ch-set pkill -9 recfriio recfriio --b25 $1 - - | cvlc /dev/stdin --sout udp://localhost:1234 & みたいなスクリプトをmythtvの外部チューナのチャンネル変更プログラムに設定してやれば やりたいことはできてしまった、、、 この方法での現状の問題点は 音声が出ない 不安定(チャンネルをかえていると灰色の画面や、エラーになってしまうことがある) というところ。 何かわかる人がいたら、よろしくお願いします。(板ちがいだったらすいません。)
- 496 名前:login:Penguin mailto:sage [2008/11/23(日) 23:19:28 ID:01Mj8kbh]
- 音が出ない件はmythtvの問題のようなので
そちらのスレッドで聞いてみます。 スレッドを汚して申し訳ないです。
- 497 名前:login:Penguin mailto:sage [2008/11/24(月) 04:30:18 ID:3lWNi8GL]
- >>495
シグナルハンドラの中でsystemは止めた方がいいと思う。
- 498 名前:491 mailto:sage [2008/11/28(金) 00:55:33 ID:LkOtIY/V]
- 時間が取れたので少しいじってみました。
やったこと: シグナルハンドラではフラグを立てるだけ。(メインの処理中にフラグを見てチャンネルを変える。) vlc とはパイプでつながず、recfriio のファイル出力(途中でチャンネルを変える)を読ませる。 結果: recfriio は安定して動作する。 途中でチャンネルを変えたTSファイルを読ませると、チャンネルを変えたあたりでvlcがsegmentation faultを起こす。 mplayerでは再生できた。 やっぱり強引にチャンネルを変えるのは無理があるのか。チャンネルが変わったことを知らせるTSパケットとかあればいいのだが。
- 499 名前:login:Penguin mailto:sage [2008/11/28(金) 01:04:16 ID:9kLS9/Us]
- >>498
パケットが途中で崩れるからジャね? 188バイト間隔で47が来なくなるとか。
- 500 名前:491 mailto:sage [2008/11/28(金) 04:09:19 ID:LkOtIY/V]
- いや、ファイル長が188の倍数なんで多分大丈夫でははいかと。
というか、シグナル関係なくて recfrrio --b25 20 5 /tmp/a.ts recfrrio --b25 17 5 /tmp/b.ts cat /tmp/a.ts /tmp/b.ts > /tmp/c.ts vlc /tmp.c.ts とかやっても落ちる、、、
- 501 名前:login:Penguin mailto:sage [2008/11/28(金) 05:04:57 ID:9kLS9/Us]
- チャンネルによって、PMTやPCRやビデオのPIDが変わるからじゃないかな。
vlcが最初の方でそれらのPIDを覚えて、 途中から変わってもわざわざPAT見直さないとか。 別の時間に録画した同じチャンネルのTSを結合して、再生してみて。
- 502 名前:491 mailto:sage [2008/11/28(金) 05:27:44 ID:LkOtIY/V]
- 同じチャンネルだと再生できました。
1時間ほど間隔があるもの同士(多分同じ番組)です。 $ ls -l /tmp/*.ts -rw-r--r-- 1 xxxxxx xxxxxx 9863044 Nov 28 04:07 /tmp/a.ts -rw-r--r-- 1 xxxxxx xxxxxx 7487288 Nov 28 05:15 /tmp/aa.ts 何かわかりましたら、よろしくお願いします。
- 503 名前:login:Penguin mailto:sage [2008/11/28(金) 05:43:24 ID:9kLS9/Us]
- じゃあやっぱりVLCがPIDの変化に気づいていないのが原因だと思う。
PartialTSだと「ここでチャンネル変わりますよ」的なパケットがあって、 境目でそれを挿入するとプレイヤーが反応する。 という仕組みがあるんだけど、そこまでVLCが対応しているかは不明。 あとは、VLCを改造するかストリームを改造するかですね。 VLCを改造するなら、PATとPMTを監視して変更があったら 再生ルーチンを初期化しなおすような改造がたぶん必要。 ストリームを書き換えるなら、対象となるパケット(PMTとか)の PIDを無理矢理置き換えるソフトを作ればいいのかも。 PIDを置き換える場合は、PATやPMTの中に書かれてるPIDも 書き換えないといけないし、そこを書き換えたらCRC32も 計算し直さないといけない。結構面倒。
- 504 名前:login:Penguin mailto:sage [2008/11/29(土) 22:37:43 ID:jjnb1cUP]
- vlc は、音声が切り替わっても落ちるよね。
- 505 名前:login:Penguin mailto:sage [2008/12/06(土) 11:45:51 ID:eOcd2Mcn]
- 未確認だが最新のVLCでは修正されているとか何とか
- 506 名前:login:Penguin mailto:sage [2008/12/06(土) 12:10:02 ID:n1x2fSiH]
- >>505
情報のソースは脳内とかそんなレベルの発言?
- 507 名前:login:Penguin mailto:sage [2008/12/07(日) 01:03:03 ID:0eYacv2V]
- 初めて録画中にこんなことが起きました。
B25Decoder initialized. Search friios from dir: /dev/bus/usb 1 friios found: /dev/bus/usb/001/004: use this friio. device: /dev/bus/usb/001/004 Signal level: 9.68276 Signal level: 1.81452 Output ts file. B25 Error: b25->put failed. code=-5 Continue recording without B25. この機能の依頼主でありながら、今まで起こったことがないエラー なのでビックリした。故障の予兆でなければいいが。。
- 508 名前:login:Penguin mailto:sage [2008/12/07(日) 02:13:27 ID:0eYacv2V]
- >>507についてですが、B25でエラーが発生したら
自動で再開するのはいいのですが、B25エラー発生前の データが上書きされて消えてしまうようです。 たとえば4時間録画セットして、3時間録画が終わったところで B25エラーが発生して、残りの1時間を録画し終えたら、 1時間分のデータしか残りません。
- 509 名前: ◆N/E9PqspSk mailto:sage [2008/12/07(日) 03:34:50 ID:UeXDm2VJ]
- >>507
code=-5 は ARIB_STD_B25_ERROR_NO_PMT_IN_HEAD_32M ですね。(arib_std_b25_error_code.h参照) 放送局が送ってきたTSをb25がうまく解釈できなかった場合に起こるエラーです。ハード的な問題ではないはずです。 で、このエラーが起こる場合(-4,-5,-6が該当)、b25はまだ復号の準備ができていない為に、 それまでに入力したデータは全てb25の内部にバッファされていて1バイトも出力されてない状態です。 recfriioに実装したエラー回避は、今までb25に入力したデータは既に復号されて出力されていることを前提としている為、 b25内部にデータが溜まっている今回のような場合にまずいことになります。 一応、被害に遭う可能性があるデータは_IN_HEAD_32Mが表わす通り先頭32MB分です。 回避するにはb25内のデータを吐き出させるか、先頭32MB分をrecfriio側でバックアップするかなのですが、なかなか面倒です。 さらに回避させた場合、出力されたデータをb25しなおすと同じエラーで落ちるという問題もあります。
- 510 名前:login:Penguin mailto:sage [2008/12/07(日) 04:20:46 ID:0eYacv2V]
- >>509
深夜に回答ありがとうございます。 先頭32MBを調べてもPMTが見つからないというのは、 そもそもFriioが受信したデータに問題があるのか 放送局側のトラブルだと思うので、無理して吐きだしても あまり意味が無さそうですね。了解しました。
- 511 名前:login:Penguin mailto:sage [2008/12/09(火) 20:17:11 ID:kXs5IRjc]
- 玄箱HG(U-Boot化、lenny)で、READMEファイルとマイコムの記事を参考に
b25とrecfriio r4のコンパイルを行い録画までできました。 しかし、録画ファイルのファイル情報がPowerDVDの表示では、なぜか MPEG2TSではなくMPEG4AVCになっておりサンプリングレートも低い値となっています。 見ていただければわかりますが、画質は悪いです。 2sen.dip.jp/cgi-bin/friioup/source/up0857.ts(録画サンプル) b25とrecfriior4はそのままmakeしただけです。 なにか必要なオプション設定もしくは他のパッケージファイル等が必要だったのでしょうか? 上の方で玄箱の話が少しだけでていましたが、PPCな玄箱でMPEG2TSの高画質なファイルで 録画できた人はいますか?なにか設定のポイントなどあったら教えてください。 なかなかWEB上には、NASでfriioを使った情報が少ないので、、、、 ARM箱(玄箱pro、QnapTS10x)で使っている人は、ドロップなしで録画できていますか?
- 512 名前:login:Penguin mailto:sage [2008/12/09(火) 20:25:20 ID:jCF0FlFp]
- 見ないで言うが、それはワンセグの映像だよ。
- 513 名前:511 mailto:sage [2008/12/09(火) 20:57:09 ID:kXs5IRjc]
- >>512
なるほど、ワンセグの存在を忘れてましたorz ということは、カードリーダーの認識がうまくいってなかったか、 b25まわりで問題があったということですかね? カードリーダーが正しく認識されているかは、どこを見ればいいのでしょうか? recfriioを実行した際に、最初にurbナントカ -70みたいなエラーが出ていたのと関連があるんでしょうか?
- 514 名前:login:Penguin mailto:sage [2008/12/09(火) 21:03:35 ID:QvRr4Q0Y]
- >>511
逆にどうすれば、ワンセグなんか取れるのかと聞きたいくらい。 間違ったチャンネルを指定してるとか? 以下、うちの環境。 数ヶ月前、玄箱proで試したがドロップしすぎて速攻諦めた。 今は、玄箱HG(debian 4.0)で録ってます(余計なコンパイルオプションとかなし)。 ただし、b25は別に実行するなど、録画中に余計なプロセスが走らないようにしてます。 ドロップはかなり少ないと思います。CMからの切り替わりでドロップすることがあるくらい。 (BonsTsDemuxでAACの処理してるので、この程度のドロップは適当に処理される)
- 515 名前:511 mailto:sage [2008/12/09(火) 21:53:10 ID:kXs5IRjc]
- 録画したファイルをウィンドウズ上でb25通すと、正常に複合化されHDで見れるので
問題点は、やはりカードリーダーかb25まわりで間違いなさそうです。 もうちょっと見直して、いろいろやってみようと思います。 >数ヶ月前、玄箱proで試したがドロップしすぎて速攻諦めた。 HDDのことなども考えて、玄箱proの購入も考えていたんですが ソフトウェアの改良で解決できるのか、それともハードウェアの限界 なのかわかりませんが、少し待ったほうが良さそうですね。
|

|