Linuxでfriio
..
310:login:Penguin
08/09/06 14:45:56 /P40U+Ev
>>302
> 二人同時にアクセスすることはないので、問題ないと言うこと。
> 実際にしたら、どうなるかは分からない。
バグを産む思考ですね。わかります。
> 実際はudpで複数視聴可能にするのがよさげだけど、誰か考えてw
> udpの知識が皆無なもんで。
情報弱者乙。
vlc でも使ってろ。ぐぐれば腐るほど事例が出てくる。
311:login:Penguin
08/09/06 14:47:07 iu4h5/xF
>>310
しかしながら、許容できるリスクに時間と金をかけるのはバカだと思うぞ。
312:login:Penguin
08/09/06 14:53:04 /P40U+Ev
>>311
なんかムカついたから、粘着してるだけさ。
313:login:Penguin
08/09/06 15:10:30 Do70x2wE
気持ち悪い
314:login:Penguin
08/09/06 15:16:39 oKv9gIeQ
この程度のスクリプトで例外気にしだしたら切りがないだろ。
なんならID:/P40U+Evが書けば?
>>309のを実装してみた
friio.cgi
#!/bin/sh
cat << EOF
Content-type: video/vnd.dlna.mpeg-tts
EOF
mkfifo /tmp/fifo0 /tmp/fifo1 >/dev/null 2>&1
recfriio $QUERY_STRING 99999 /tmp/fifo0 >/tmp/frilog 2>&1 &
b25 -v 0 /tmp/fifo0 /tmp/fifo1 >/dev/null 2>&1 &
cat /tmp/fifo1
VLCからURLリンク(hogehoge)
で動く。
315:login:Penguin
08/09/06 15:20:29 iu4h5/xF
>>314
せっかくだからfifoのファイル名をランダムにすれば多重化できるぞ。
316:login:Penguin
08/09/06 15:37:05 oKv9gIeQ
こんな感じ? friio.cgi改良型
#!/bin/sh
KBC=31
ETV=22
NHK=28
RKB=30
FBS=32
TVQ=26
TNC=34
cat << EOF
Content-type: video/vnd.dlna.mpeg-tts
EOF
FIFO0=`mktemp -u`
FIFO1=`mktemp -u`
mkfifo $FIFO0 $FIFO1 >/dev/null 2>&1
recfriio $[$QUERY_STRING] 99999 $FIFO0 >/tmp/frilog 2>&1 &
b25 -v 0 $FIFO0 $FIFO1 >/dev/null 2>&1 &
cat $FIFO1
VLCからURLリンク(hogehoge)
でNHKが映るように。物理チャンネルの暗記が不要になった。
317:316
08/09/06 15:53:51 ujx95hij
cat $FIFO1の後にrm $FIFO0 $FIFO1を追加した方がいい。
318:login:Penguin
08/09/06 16:04:00 +oVHoliw
それなら、例外処理も加え
function StopRecording
{
[ -f $FIFO0 ] && rm $FIFO0
[ -f $FIFO1 ] && rm $FIFO1
}
trap "StopRecording; exit" INT
....
cat FIFO1
StopRecording()
319:303
08/09/06 16:11:30 Vps/Jomb
>>318
trap "StopRecording; exit" 0
でおk
>>305
動作未チェックなので、ジャンクスクリプトってことで、
何が起こっても免責でおながいします。
あと、試すときは、念のため、
> cd .. && rm -rf "${tmpdir}";
の部分を削除してから実行した方がいいかも。最終的には、
[ -n "${tmpdir}" ] && rm -f "${tmpdir}"/* && cd .. && rmdir "${tmpdir}";
とでもした方が、安全かな。実の所、rm -rf は怖いので、極力避けたい。
320:login:Penguin
08/09/06 16:11:47 oKv9gIeQ
>>316のままだと、Friio1台しかないときに2つめの接続を行うと
recfriioはすぐに死んで、b25とcatが永久に待ち続けてしまう。
321:303
08/09/06 18:05:48 Vps/Jomb
ついカッとなって、パッチをでっち上げて、あげておいた。
URLリンク(2sen.dip.jp)
動作確認よろ。
322:login:Penguin
08/09/06 18:15:44 Ph4tif2y
LinuxでIP CAS使えるようにならないかな?
Linuxというかb25の問題?
323:login:Penguin
08/09/06 18:17:37 iu4h5/xF
任意のfifoにマルチキャストできるようなデーモン書けば・・・夢広がるね。
324:303
08/09/06 18:38:15 Vps/Jomb
>>321
間違い発見したのでアップデートしました。一々報告するのも面倒なので、
「recfriio と b25 で - を認識させるパッチ」で見つけてください。
325:303
08/09/06 18:48:48 Vps/Jomb
>>323
recfriio ${channel} ${recsec} - | bc25 - - |
tee -a ${fifo0} | tee -a ${fifo1} ... > ${fifoN}
バッファリングされて駄目かねぇ…あと、パイプが詰まるかもw
326:login:Penguin
08/09/06 18:58:17 oKv9gIeQ
コマンドの組み合わせで乗り越えようとするから大変なのであって、
Cで書けば早い気がする。
327:login:Penguin
08/09/07 01:32:44 773feqmK
>>326
マダー
328:login:Penguin
08/09/07 09:23:57 f8OFj44E
>>325
アイデアはその通りで、動的に追加削除できないのが問題かなと。
UNIXドメインソケット経由でそれが出来るforkfifoをコツコツrubyで書き始めた。
329:303
08/09/07 18:42:27 tDxVskl4
動作確認する環境もないのに、ついカッとなって作っては見たものの、
一緒に踊ってくれる人がいない…(´・ω・`)
使えるかどうか分からない代物を、うpし続けるのも何だし、ひとまず
撤収します。つーか、俺、何かまずいものでも作っちまったかな。
330:login:Penguin
08/09/07 20:23:42 lIk/w1vV
ここでいいのか分からんけど、
friioで抜いたtsをb25にかけると、録画時間の7割くらい解除に掛かるんだけど
b25の高速化の方法って無い?
PCのスペック上げる以外で。
331:login:Penguin
08/09/07 20:31:37 SLeLDn9q
何が足を引っ張ってるかを調べないと。
俺はディスクアクセスだった。
332:login:Penguin
08/09/07 20:32:08 kr8LKWMM
そりゃ、b25を改良するか、HDD2台積んでいるなら入力と出力を別のHDDにするしかないのでは?
後は運用でカバー(開いている時間帯にバッチ処理)ぐらい。
333:login:Penguin
08/09/11 02:52:08 GK4FMVqL
>>330
b25が転んでも泣かないなら、FIFO経由で録画と同時に解除するとか…
334:login:Penguin
08/09/11 02:59:46 g9p3eR48
再試行できるくらいの余裕をもたせた容量のリングバッファ的な場所に突っ込んでから変換するようにすればよくね。
そしたら失敗してリトライしても泣くことは抑えれそう。
335:login:Penguin
08/09/11 17:43:12 41mlthlR
Windowsのフリーオのように、複合に失敗したら
それ以後は暗号化されたままスルー出力
するようにb25を改造したら安全だと思う。
今までに自分はb25が死ぬのを見たことないが、
Windowsでのエラー報告を聞いてると、
一度失敗したらハード的にリセットしないと
復帰しない場合があるし。
336:login:Penguin
08/09/11 19:11:39 iSdXZlrQ
いつもatで予約してfifo経由で同時解除してるけど、
3回ほど死んで録画が途中で終わってたことあるよ。
決まって録画してるのを忘れてて、他の重い処理させたからなんだけどね。
337:login:Penguin
08/09/18 23:23:26 rjmj/+bK
アク禁で乗り遅れorz
>>303氏頑張れage
338: ◆N/E9PqspSk
08/09/19 08:55:32 Ae+dCmMz
URLリンク(2sen.dip.jp)
recfriio r3 が出来ました。白凡黒凡共通です。
チャンネル指定方法が変わっています。13〜62 => UHF, B1〜B11 => BS, C1〜C12 => CS
白凡黒凡判別を修正して新しい白凡でも使えるようにしました。ロックファイル(/var/lock/friiodetect)を使います。要書き込み権限です。
録画ファイル名に'-'を指定することで標準出力にTSを吐くようになりました。
録画時間に'-'を指定するとCtrl-C等で中断するまで録画するようにしました。
b25とリンクしてMulti2デコードを行う機能を追加しました。--b25オプションを付けるとMulti2デコードを行います。
339: ◆N/E9PqspSk
08/09/19 09:16:34 Ae+dCmMz
boost_thread-mtの問題は相変わらずなおっていません。-mt付きでエラーになる場合はMakefile内の-lboost_threadに付いている-mtを外して下さい。
linux/usb/ch9.hも同様です。問題が起こった場合はusbops.hppのincludeをlinux/usb_ch9.hに変更して下さい。
udevがなくusbfsを使用する場合については対応できているはずですがあまり自信がありません。
340:login:Penguin
08/09/19 11:09:35 gFK9X2MP
超絶乙乙乙
341:login:Penguin
08/09/19 20:11:14 mE4oz/gi
激しく乙!!!
342:login:Penguin
08/09/19 22:09:00 0GWcNC6i
すげぇ!!! おつでした。
343:login:Penguin
08/09/19 22:14:29 30WLctB5
乙です!
344:login:Penguin
08/09/19 22:26:39 KjM2GdI2
recfriio --b25 B1 - - | mplayer -vo xv -
安定してます。最高です!!
345:login:Penguin
08/09/19 22:47:48 5tWUWlGA
◆N/E9PqspSk様
お疲れ様です。◆N/E9PqspSk様の行いはLinux録画環境の
革命だと思っています。
一つ質問なのですが、万が一録画中にb25に失敗した場合は
どうなってしまうのでしょうか。スクランブルされたまま
出力は続いていくのが理想なのですが。
346: ◆N/E9PqspSk
08/09/19 23:59:35 Ae+dCmMz
>>345
現状、
B25初期化時にエラーが発生した場合は、B25をかけずに暗号化されたまま出力。
初期化より後でエラーが発生した場合はそのまま終了。
になっています。
直せそうではあるので試してみます。
347: ◆N/E9PqspSk
08/09/20 01:05:26 7Lm+n7EZ
URLリンク(2sen.dip.jp)
recfriio r4
--b25で録画中、B25でエラーが発生した場合にB25処理なしで録画を継続するようにしました。
試しに録画中にB-CASを抜いてみましたが、後でb25をかければちゃんと見れるファイルになりました。
エラーによっては内容が欠けたり、欠けたことによって後でエラーが発生する可能性があると思われますが、
b25内のバッファの処理はきついので勘弁して下さい。
348:login:Penguin
08/09/20 05:59:07 +TRijabd
>>347
早業乙です!
ありがたく使わせていただきます。
349:login:Penguin
08/09/20 06:01:59 g26PTwd5
>>345
革命だとか、思ってもないこと言うなw
350:login:Penguin
08/09/20 06:20:25 +TRijabd
>>349
いや〜思ってますよ。
ivtvを正常に動作させるのに苦労したことを考えれば、
この簡単さと画質はまさに革命。
Friioが出るまでは実現するなんて思いもしなかったし。
351:login:Penguin
08/09/20 07:09:16 lZsRxm3T
なによりも「地デジにいったら壊滅確定」から「なんとかなりそう!」は非常に大きな差でしょう。
352:login:Penguin
08/09/20 09:33:40 g26PTwd5
>>350
> ivtvを正常に動作させるのに苦労したことを考えれば、
それスキル不足とかそういう話?
353:login:Penguin
08/09/20 12:39:13 lZsRxm3T
>>352
いや、サポート状況の問題。ivtvドライバの初期〜中期は、
日本で売られている板はバージョンアップするたびに動いたり動かなかったりして苦労した。
ぱ研さんやtadachiさんがその度に修正パッチ出してくださったおかげで大分助かった。
354:login:Penguin
08/09/20 14:00:35 g26PTwd5
> バージョンアップするたびに動いたり動かなかったりして苦労した。
むやみやたらにバージョンを上げる必要あったのか?
355:login:Penguin
08/09/20 14:47:19 y4C6MP0n
>>354
あのー、あなたがすごく偉いということはみんなわかったようなので、
そろそろどこか行ってもらえますか?人がどう思おうと勝手なので。
356:login:Penguin
08/09/20 16:02:05 pNI9tTTV
ivtvを知らずにFriioを使える世代とは、ある意味幸せ者だな。
357:login:Penguin
08/09/20 21:11:27 /XYh8PHX
>>356
recfriio使う場合、ドライバいらずだからな。
USBのFriioとPCIの物比較してもしょうがない。
358:login:Penguin
08/09/20 22:14:41 pNI9tTTV
最近PCIでもユーザー空間から弄れるのがあるんじゃなかったっけ。
359:login:Penguin
08/09/21 05:47:15 OrbsJH6I
>>355
> そろそろどこか行ってもらえますか?人がどう思おうと勝手なので。
その理屈だと、誰がどこにいるのか勝手であるし、
誰が何を言おうか勝手なんだよね。
360:login:Penguin
08/09/21 10:00:06 YyXB0Evq
屁理屈の典型だな
それ言い出したら荒らし回るのも自由ってことになる
361:login:Penguin
08/09/21 10:12:43 uoCsoJc0
おい、馬鹿ども。喧嘩は他所でやれ。
362:login:Penguin
08/09/21 11:21:49 OrbsJH6I
> それ言い出したら荒らし回るのも自由ってことになる
そうなの?
詳しくww
363:login:Penguin
08/09/21 11:35:28 M+prCfkW
>>360
コモンセンスな倫理感を論点にしたいのだろうけど、
聖書にはレイプはあかんがレイプしたいと思うのはセーフという趣旨のことが書いてある
らしいので、執拗に行動に出さなければセーフなんじゃね?
364:login:Penguin
08/09/21 12:50:14 FUHLQH3M
おかしいな、キリスト教ってレイプしたいと思った時点でレイプしたやつと同罪だって感じだったと思うけど。
365:login:Penguin
08/09/21 13:20:45 Tx91lLDq
全く関係ないんだが、
罪無きもの石を投げよ
って逸話は後代の創作らしい
366:login:Penguin
08/09/21 23:05:14 M+prCfkW
>>364
それで、信心深い男が、「ウホ!良い女!」とか思ってる俺ダメじゃん!ってなって、原典を自分で翻訳したらしい。
そこには「思うのは良いけど、ずっとそう思ったり後つけたりしたらあかんぞ」的な話だったらしい。
367:login:Penguin
08/09/21 23:56:32 u5jpz76H
らしい
368:login:Penguin
08/09/22 00:01:20 /Pl6x1Zt
friio.cgiも新しくしました。
#!/bin/sh
KBC=31
ETV=22
NHK=28
RKB=30
FBS=32
TVQ=26
TNC=34
cat << EOF
Content-type: video/vnd.dlna.mpeg-tts
EOF
recfriio --b25 $[$QUERY_STRING] - - 2>/dev/null
/var/lock/friiodetectにhttpdから書き込みできるように
しておく必要があります。
369:login:Penguin
08/09/22 00:03:10 SJUyAAa9
>>368
Queryに;rm -rf /;とか入ってたら終わるから注意な。
370:login:Penguin
08/09/22 00:09:06 /Pl6x1Zt
>>369
何も起こりませんよ。
371:login:Penguin
08/09/22 07:23:01 myptJHQY
> この程度のスクリプトで例外気にしだしたら切りがないだろ。
ということらしいので、危なそうな穴見つけても放置しとけばいいと思う。
372:login:Penguin
08/09/22 10:22:00 /Pl6x1Zt
自分以外はアクセス不能にしているCGIなので、
完璧なセキュリティーを追求しているわけではありませんが、
任意のコマンドの実行はできないようにしたつもりです。
実際に;rm -rf /;を入力してもシェルがエラー吐くだけです。
373:login:Penguin
08/09/27 21:13:07 ampmZViZ
また怒られそうだけど新しいrecfriioコマンドだと
地上、BS、CSがひとつで間に合うようになったので
VRSの対応版をお願いしたいです。
374:login:Penguin
08/10/01 12:32:58 f2HV5ez1
Linuxでmakeしてb25を作りましたが、これはwindowsの方でも使うことできませんか?
b25.exeにリネームしていじってみたけどできませんでした。
375:login:Penguin
08/10/01 13:03:48 rOl/O97c
>>374
お前は何を言っているんだ?
376:login:Penguin
08/10/01 13:09:07 nwM51l9S
すいません質問なのですが
B-CASは複数スレッドで読み込み可能と聞いた事があるのですが
例えば、今Linux上でpcscd+白フリで動かしてる環境に
新たに黒フリ買って繋いで、白黒同時にfifo+B25使って録画したとして
正常に復号できる?それとも、もう一枚B-CAS必要?
B-CASは今白フリにささっています。
377:login:Penguin
08/10/01 17:40:10 1sRf2Idy
b25してないTSファイルを複数作って、
同時にb25掛けてみればいいじゃん。
378:login:Penguin
08/10/01 19:29:07 nZ7srNlr
>>374
最近はOSの違いすら知らずにlinux使う奴がいるのか。
つーか、windowsでb25コンパイルしなおせよ。
思いっきりソースファイルにVisual Studioのプロジェクト残ってるだろう。
379:login:Penguin
08/10/01 19:41:35 edV4ZFyW
line を今の cygwin 環境で動くように調整すれば linux のバイナリ動くんじゃねw
380:login:Penguin
08/10/01 20:04:57 WRmxpAKb
>>375
昔BOW (BSDonWINDOWS) というのがあったので
必ずしも変な質問というわけではない
381:login:Penguin
08/10/01 20:20:38 Q6e1X11c
>>374
日本語をローマ字で書けば、欧米人に通じるもんだと思ってた奴がいたのを思い出したぜ。
>>380
たまにはcoLinuxのことも思い出して(ry
382:login:Penguin
08/10/01 20:46:14 f2HV5ez1
>>379
それでどうにかなると思ったけれど無理でした。
/usr/local/bin/b25: /usr/local/bin/b25: cannot execute binary file
あきらめてVisualStudioインストールします。
383:login:Penguin
08/10/01 22:26:55 sH6f8f3H
動いたらWINE要らないな
384:login:Penguin
08/10/02 10:07:41 wGhmP+T9
wineは関係なくね?
385:376
08/10/02 13:30:55 Gzp5RTJp
昨日調べたら、およそ8スレッドまで対応しているらしい。
くだ質すまそ。
386:login:Penguin
08/10/02 19:05:40 kRFxOPzv
B-CAS自体のスペックはたしかに同時8ストリームくらいに対応
できると聞いたことがあるが、デコードソフトウェアが対応
できるかどうかは別の問題かもしれない…と思うがどうなの?
387:login:Penguin
08/10/02 21:37:08 ZyYSPuLL
それ以前にUSBだと5個くらいまでしか認識しないって話だったような。
HDUSがそうだっただけでfriioが同じかどうかはわからんけどね。
388:login:Penguin
08/10/03 12:29:10 MRo/dF3h
すいません。煮詰まって教えて貰いたいのですが、
recfriio4を別のユーザーで実行できるようにすればどうすればいいでしょうか?
-bash-3.2$ /usr/local/bin/recfriio 24 60 2008-10-03_11-25_0.ml2
Search friios from dir: /dev/bus/usb
1 friios found:
/dev/bus/usb/001/015: usb open failed: Permission denied
no friio can be used.
can't open tuner.
このエラーがでて困ってる。
rootでは動きます。
389:login:Penguin
08/10/03 12:34:16 gDMiS3LM
rootで
chmod 666 /dev/bus/usb/001/015
してから実行すれば?
390:login:Penguin
08/10/03 12:45:31 pgot6od8
chmod a+w /dev/bus/usb/*/*
なのだがudevが起動毎にファイルを作り直すので
使うユーザで書き込めるようにudevを設定する。
391:login:Penguin
08/10/03 14:12:11 MRo/dF3h
>>389
>>390
有難うございました。
やはりchmod なんですね。。
ただudevってのは知らなかったので調べて見ます。
392:login:Penguin
08/10/03 15:47:21 J8d0jRkG
今はudevがデフォだからchmodしても次に起動したときには
元に戻るから駄目。
/etc/udev/permission.rulesだけっかそのあたり
393:login:Penguin
08/10/03 16:13:27 MRo/dF3h
>>392
chmod a+w /dev/bus/usb/*/*
だけでとりあえず逃げました。
udev使わず・・・ってかまだよくわからない^^;
後日調べます。
とりあえず、ここの>>104さんと>>347さんのを
元に構築中。
vrsを文字コードUTF-8にして
予約画面のデザイン変更
携帯からアクセスした場合にも見やすい用に
変更した。
なんとか動くようになって携帯(softbank)からでも
登録できるようになりました。
・アーカイブからのファイル削除でtsファイルを消せるようにする
※r4なので同時--b25
・ffmpegで別ファイル保存用を作成
がんばってみたいと思います。
394:login:Penguin
08/10/03 19:01:58 J8d0jRkG
Friioの安売りやってるぞ、たって19800円(白黒とも)だが。
LinuxではPT1は当分の間、使えないし、持ってない奴は
この機会にFriioを買っておくのもいいんでないか。
395:login:Penguin
08/10/03 19:13:20 oWFVmOA6
1 年以内に壊れるゴミ買わせてどうするんだ?
396:login:Penguin
08/10/03 22:16:13 2hUREY8x
当分の間どころか永遠に使えない可能性のほうが高い
397:login:Penguin
08/10/03 22:23:19 HK2tCwyc
>>396
PT1はドライバ(windrvr6_EARTHSOFT_PT1.sys)のエントリポイントの説明はあっても
ドライバそれ自体のソースは (まだ) 無いので
リバースエンジニアリングしてまで解析するやつがいるかどうか
398:ABI
08/10/03 22:29:04 v02EdYM5
>>378
FreeBSDは違うOSだけどLinuxのバイナリ動くよな。
399:login:Penguin
08/10/04 12:26:49 +Xa2uH1a
>>397
_SDK/EARTH_PT.hに、SDKのクラスの説明はあるようだけど、
windrvr6*.sysのエントリポイントの説明って、ありましたっけ?
この続きは、Linuxでテレビスレの方が適切かな。
過疎ってたのに、この話題のお陰であがったみたいだしw
400:376
08/10/05 11:04:47 faMO1u71
チラ裏。
二重ではまだやってないけど、片方づつは動いた。
401:login:Penguin
08/10/07 20:48:07 ZvAilBxa
【速報】B-CAS事実上の廃止へ *ただし地デジのみ BS用にB-CASは残る。
スレリンク(news板)
402:login:Penguin
08/10/07 21:15:08 AS2q7ENt
スクランブルされてない地デジで friio 使えんのかな?
403:login:Penguin
08/10/07 22:13:46 hYM/ZkjT
なんで使えないと思うんだ?
404:login:Penguin
08/10/07 23:38:41 AS2q7ENt
URLリンク(www.marumo.ne.jp)
糠喜び
405:login:Penguin
08/10/08 12:00:29 fiX2vcTz
だいたい、「あの」池田信夫の記事なんだから100%フカし
と考えておくのが当然だろ。
406:login:Penguin
08/10/08 14:38:19 V4kquR68
ウソも100回言えば本当になる。
ということであと99回がんばってもらえばいいんでないかと。
407:login:Penguin
08/10/08 15:15:17 mCE8VkP3
ユーザの利便性に配慮した穏健派の権利者団体を作ろう!
そして、同意してくれるコンテンツプロバイダを巻き込んで、
頑固な権利者にはダビング10を、穏健な権利者にはダビング無限を
提供すればいい。
ユーザは、頑固な権利者がいいコンテンツを提供しても、
使い勝手が悪いなら、だんだん離れていくぞ。
だいたいダビング10とか、他の国でやってんのか?
408:login:Penguin
08/10/09 03:03:59 dVawFv+S
あのアメリカはどうなんだろうな?
鼠を守るために、法律変えるような国なのにな。
409:login:Penguin
08/10/09 04:19:35 7Qcz/RIn
アメリカはEPNでしょ。
私的利用のコピーは自由、ネット上に流した時点でアウト。
アメリカでは3k円程度でフルセグUSBチューナーが出回っているよ。
大きさもUSBメモリ程度と日本のそれとは全然違う。
410:login:Penguin
08/10/10 05:38:55 B8JW4ZPi
up0118.zip 旧基板を *BSD で動かすソース 6 KB 2008年10/10(金)02:25
使えた人いる???
411:login:Penguin
08/10/14 23:05:51 kjyHEEpm
recfriior4 を LDFLAGS=-static で make するとシンボル解決に失敗するので,リンクの順序をいじりました.
-static無しのときには影響しないはずなので,取り込んでいただけると嬉しいです.
> ◆N/E9PqspSk さん
diff -r recfriior4.orig/recfriior4/Makefile recfriior4/recfriior4/Makefile
22c22
< LIBS = -lpthread -lboost_thread-mt -lboost_filesystem `pkg-config --libs glib-2.0`
---
> LIBS = -lboost_thread-mt -lboost_filesystem `pkg-config --libs glib-2.0` -lpthread
36c36
< $(CXX) $(LDFLAGS) -o $(TARGET) $(OBJS) $(B25_OBJS_EXT) $(LIBS) $(B25_LIBS)
---
> $(CXX) $(LDFLAGS) -o $(TARGET) $(OBJS) $(B25_OBJS_EXT) $(B25_LIBS) $(LIBS)
412:login:Penguin
08/10/14 23:26:08 RdtbS+q5
>>411
横槍で申し訳ないが、パッチを上げるときは、diff に -u などのオプションを付けて、
unified形式あたりにでもした方が再利用し易いでっせ。
413:login:Penguin
08/10/15 01:16:31 surYGKEi
細かいことだけど、-lpthreadより-pthreadが推奨されてるんじゃなかったっけ。
414:411
08/10/16 02:58:16 AWH2swU7
>>412
普段何もなければ -u つけるけど、長くなるから掲示板向きじゃないし、
目で見て分かる程度の内容なので今回はやめといたよ。
>>413
それは知らんかったよ。さんくす。
久しくC/C++のコードを書いてないから、時代に取り残されてるな。
415:login:Penguin
08/10/31 23:53:08 RLE/axFx
白friio付属のカードリーダで、エラーに悩まされているから、カードリーダだけ取り替えようと思います。
ググってみましたが、どのカードリーダが適しているのか分かりません。
どなたか、よろしければ、使っているカードリーダを教えてください。
416:login:Penguin
08/11/01 00:21:49 LmXM0VMZ
>>415
日立、NTT-Comの2択だから好きな方を買え。
64bit、Linux対応してるのはNTT-Comの奴。
417:415
08/11/01 00:30:53 JysaIrMk
>>416
ありがとうございます。NTT-COMの方を買おうと思います。
非接触型の
SCR3310-NTTCom
を注文しました。
418:login:Penguin
08/11/01 00:43:53 2wQi17/r
接触型やん
419:417
08/11/01 00:55:25 JysaIrMk
あ、勘違いしていました。
SCR3310は接触型ですね。
B-CASカードみたら、端子が金色の端子が付いているから、接触型でいいんですよね?
420:login:Penguin
08/11/01 12:20:09 jPiRqT4J
>>415
デバイスが認識されないというエラーなら ehci_hcd モジュールをmodprobe -r, modprobeで
インストールし直せば認識されるよ
電源ON/スタンバイ復帰から初期化にかかる時間がかかるみたい
似たようなデバイスで
カーネルソースのdriver/usb/core/hub.c のGET_DESCRIPTOR_TRIES を増やせばOKという報告もあったような
421:417
08/11/04 21:36:12 Kvawi5DS
>>420
ありがとうございます。
実は、まだWINDOWSでしか使っていません。
今回、ファイルサーバ(Fedora Core9)をatom CPUで組んだので
それに取り付けようかと考えていたところです。
ただ、カードエラーはH/W的な問題なので、OSは関係無いだろうと思いまして・・・
422:417
08/11/04 21:39:24 Kvawi5DS
ところで、結局カードリーダは購入してません。(注文したけど払い込んでいない)
もしかすると、USBのバスパワーがきついだけなのかと思い、
思い切って、Friioを分解しました。
そして、USBバスパワーのラインをパターンカット。
直接、ATX電源から5Vを供給してみました。
結果はビンゴ!!
日曜日から断続的に長時間録画していますが、カードエラーは
起こらず、ずっと正常動作しています。
ちなみに、電流計で計ったら、470mA流れています。
USB バスパワーがきつかっただけなのか。俺のFriio。
カードリーダはとりあえず、キャンセルです。
423:login:Penguin
08/11/06 23:47:27 nRO/y3vD
>>422
470mAであることまで調べたのはGJ
ちなみにUSBの定格は500mAなので、突入も考慮すると
ノートとかでは特に厳しい気がする
424:422
08/11/08 01:25:50 k7X1fRxF
電源はUSBの規格ギリギリだって聞いてたけど、本当にギリギリだったw
470mAになるのは、LEDが最大輝度で点灯しているときね。
あんまり光っていないときは、460mAくらいかな。
明日は仕事休みなので、いよいよLinuxで使うことに挑戦してみる。
以前、アナログキャプチャボードでMythTV使ってたけど、
あれはとても便利だった。Friioでもできるのかな?
425:login:Penguin
08/11/08 01:38:09 4QzfNPz1
まだ試せてないんだけど、FriioのV4L2用ドライバを作ってくれた
人が居るからMythTVでも使えるんじゃないかな。
Linux でビデオ録画【六枚目】
スレリンク(linux板)
426:login:Penguin
08/11/08 11:30:11 LVmMKDWq
recfriio とかいうコマンドがあるお。
427:login:Penguin
08/11/08 11:54:27 o4V2MbF6
B-CAS無しでB25はずせないかな?
Windowsのアプリだと出来るけど
Linuxだとまだ無理?
カードリーダ調子悪いんだよなぁ・・・
428:login:Penguin
08/11/08 12:07:33 OU8GHSsC
Friioの中の人がB-CAS鯖の詳細を公開してくれるか
誰か解析しないとB-CAS無しは無理だろな。
あまり興味がないから調べてないが、鯖への接続に認証が
必要なら、ますます無理だってことになる。
まあ、それにB-CAS鯖の信頼性(たまに止めてるようだし)
から考えると、鯖が使えたとしてもB-CASカードとの併用が
現実的じゃねえかな。
429:login:Penguin
08/11/08 12:20:41 o4V2MbF6
うーんそうか。ありがと。
素直にNTT-COMの奴を買うかな
430:login:Penguin
08/11/08 12:38:12 OU8GHSsC
ああ、そうだ。
MPEG-2 TSの定型的なフレーズから推測できる範囲で
総当りすることで解けるんじゃないか
ってなことを、まるもさんだったか誰だったかが前に書いてたな〜
いまだと速度的に無理っぽいけど8コア3GHzのCPUが普通に使える
ようになると現実的になるかもしれないね
431:login:Penguin
08/11/08 12:40:19 QWlNEK5w
>>427
白のBCASって電源まわりの問題が多いみたいだから
>>422 のように電源を確保するか Y字ケーブルを使えばいいんではないかな
それにしてもfriioの仕様によると2.1Wのはずなのに 470mAも流れるってことは仕様は嘘?
LEDいらないからもぎ取っちゃっても大丈夫なのかな
432:login:Penguin
08/11/08 12:46:32 o4V2MbF6
>>430
その頃には地デジはB-CAS必要なさそうじゃないか?w
>>431
やっぱり電源なのかな。
Windows機につないだときはちゃんと内蔵カードリーダが使えるんだけど
Linux機につなぐと調子悪いんだよね。
電気工作系は苦手なのでUSBのHUBでも買うかなぁ・・・。
433:login:Penguin
08/11/08 12:59:21 QWlNEK5w
どう調子悪いのかわからないけど >>420も参考に
434:login:Penguin
08/11/08 13:09:13 mZ30B6Uf
>>431
5V*0.47A=2.35W
つう事でまあ誤差じゃないかい。
435:login:Penguin
08/11/08 13:19:50 QWlNEK5w
あげてしまった(^_^;)
10数%も違うって抵抗あるなぁ 黒も絶対2.5W以上なんだろうね
436:login:Penguin
08/11/08 13:20:14 o4V2MbF6
>>433
付き合ってくれてありがと。
カードリーダの認識自体はしてるみたいなんだよね。
lsusbすると表示もされるし。
ML115 + CentOS5.2 + Friio x 2 で実験してます。
ただ、b25を通そうとすると
error - failed on B_CAS_CARD::init() : code=-4
となっちゃう。
ML115じゃ無いマシンだったら使えていたんだけど。
437:login:Penguin
08/11/08 13:34:10 QWlNEK5w
カードへの接続に失敗しているみたい
たぶん pcsc_scan でもうまくカードが表示されてないよね
>>420の方法で認識しなおさせてもダメなのかな
438:login:Penguin
08/11/08 13:57:03 o4V2MbF6
>>437
pcsc_scanというコマンドがまず無い・・・。
yumとか一通り調べたんだけど見あたらない>_<
>>420の方法をやってみても
駄目でしたorz
439:login:Penguin
08/11/08 14:10:50 4QzfNPz1
>>430
暗号化されてるのはMPEG2-TSパケットのペイロード部分のみ。
440:login:Penguin
08/11/08 14:12:45 QWlNEK5w
やっぱり電源不足なんですかね
Y字ケーブルが手に入れば工作不要で一番楽だと思いますが
安いのだとフリーオのサポートページにもリンクがある秋月のが\200であるけど
逆流防止とかのついたもう少しちゃんとした奴は2000円弱もするんだよね
ちなみにpcsc-scanは pcsc-tools というパッケージに含まれてます
441:424
08/11/08 14:35:27 k7X1fRxF
>>431 >>434
電流測定は、KENWOODの実験用電源に付属の電流系で見ただけだから、
多少は誤差があると思います。
それでも、450mAは超えていると思いますが。
今、基板を裸で動かしていますが、暑くなるのは、銀色のメッキ板で
シールドされた受信ユニットです。
おそらく、これが電流を食っているんだと思います。
黒い樹脂で固められた部分は全然暑くなりません。
442:424
08/11/08 14:41:01 k7X1fRxF
>>440
わたしも逆流が気になってY字ケーブルは使いませんでした。
たぶん、大丈夫だとは思いますが・・・
ところで、多少の工作が許されるのであれば、USBケーブルを
加工する方法でもいいと思います。
バス電源のラインを途中でカットして、そこから5Vを供給すればいいです。
これが一番安上がりです。必要なら、USBケーブルのピンアサインをアップします。
(Y字ケーブルの方が、ケーブル加工によるデータラインのインピーダンスを
乱すことを軽減できる可能性があります。ただ、USBのデータラインは作動で
送られているので、そのツイストケーブルを解かなければ大丈夫だとは思いますが。)
443:442
08/11/08 14:43:20 k7X1fRxF
慌てて書いたら、>>441 >>442の書き込みは漢字をたくさん間違えてしまいました。
ごめんなさい。
444:login:Penguin
08/11/08 15:41:48 LVmMKDWq
> その頃には地デジはB-CAS必要なさそうじゃないか?w
B-CAS 廃止じゃなくて、機器組み込みになって抜きにくくなるだけじゃないのか?
445:424
08/11/10 01:00:09 Kl7HUzoc
今日、Linuxでフリーオ使ってみました。
recfriioの出来がいいからだと思いますが、あっけなく動きました。
次は、どうやって便利に録画できるようにするかをやってみるつもりです。
446:login:Penguin
08/11/10 19:15:05 TIR90l+C
マルチキャストにして宅内LANならどこでもテレビを見れるようにするとか
447:login:Penguin
08/11/12 01:37:47 fhxQUXEC
地デジの生データは、番組情報とか、いろんなデータが重畳されているんだよねえ?
それを外して録画することってできないかなあ?
少しでもHDDの使用量を削減するために。
448:login:Penguin
08/11/12 01:39:49 FsPK2ehi
つtsselect, TSsplitter
449:login:Penguin
08/11/12 01:43:57 FN93dJQm
編集しないなら、いっそatdとかで再圧縮処理させちゃうとか。
450:login:Penguin
08/11/12 02:19:30 p/A9MgjK
VLCでmp4に変換してからx264とか考えた場合
微妙にVFRってたり、24fpsのが混じってたりするから放送波は恐ろしい。
信じられんのだが、mp4infoがそう答えるんだ。33fpsとか…。
…結果考えるのをやめた。
451:447
08/11/13 00:03:45 hUHAO+jM
TSsplitter使ってみた。
577MByteのファイルからフルセグだけを取り出したら502MByteになった。
まあ、こんなもんなのかな。
ただ、これってWINDOWSでしか使えない・・・orz
452:login:Penguin
08/11/13 00:11:00 ijd92HZ3
つwine
453:login:Penguin
08/11/13 13:47:20 hUHAO+jM
処理が重くなるのが嫌。だからwineはヤダ
でも、食わず嫌いなのかな?もしかしてwineってそんなに重くないのか?
454:login:Penguin
08/11/13 13:51:02 Hju9YE1k
recfx2y に ts2pts のルーチンくっつけてチャンネル選択機能持たせてみたけど、
雨降りの BS, CS 撮ると、seg るんだよなぁ。
455:login:Penguin
08/11/13 16:03:12 LAdziec4
>>453
wineを勘違いしている。エミュレータじゃないよ。
456:login:Penguin
08/11/13 19:48:11 W5XuN7Wr
>>453
/usr/bin/wine ./TsSplitter.exe hogehoge.ts
これでさくっと処理終わるよ?
GUIなくても平気だし。
楽々。一度やってみ。
457:login:Penguin
08/11/13 22:01:54 B8Ot8GAz
____
/ミ彡彡彡\
/ミミ彡/丶ノ川\
//ヽvvノ |ノ川川丶
V ―ニ 丶リ川川|
|-==イヾ===- \リ川| Wine使ったこと無いの?
|∠Oノ)i`ーOヽ_ |/)) もったいない・・・
iー"/ `ー レ /
| (oo) -<
丶 r==、丶 川
丶 i ̄ii L/
iヾニソ /
\___/\
/ |/L∧/| 丶
| 丶||/<~ /|
|i V/=/ |
458:login:Penguin
08/11/13 22:02:43 83p7eaHV
>>455
wineはエミュレータだろ
459:login:Penguin
08/11/13 22:11:14 ijd92HZ3
>>458
wineがエミュレータとなるのは、非x86環境でqemu使ってwinアプリを動かすときだけ。
x86環境ではAPIラッパーでしかない。
460:453
08/11/14 00:09:15 U296LK7Z
どうやら、食わず嫌いだったようだな。
今から入れてみる。
調べたら、Wineがエミュレートするのは、WINDOWSのAPIとか、
メッセージ、ハンドル、タスクスケジューリング等々らしい。
WINDOWのDLLとかも普通に呼び出していいわけね。(Wineが解決してくれるってこと)
461:login:Penguin
08/11/14 00:13:58 OGXCntIi
wine = wine is not emulator
462:453
08/11/14 01:08:46 U296LK7Z
すげー
wine使えるやん。
X86用のプログラム事態は、エミュレートじゃなくて直接CPUが実行している
わけだから、はえー
これで、TsSplitter使えるようになりました。
WINDOWS用に作ったソケット使うソフトとか、COMポート使うソフトとかも動くのかな。
週末にいろいろ試してみよう。
463:login:Penguin
08/11/14 01:13:56 uTNuYbCL
今後の報告は個人ブログでお願いします。
464:login:Penguin
08/11/14 01:27:20 hEkcKRqh
>>463
wineスレあるからそっちでやってもらえばい。
今夜も Wine で乾杯! - 14本目
スレリンク(linux板)
465:login:Penguin
08/11/14 22:17:55 U296LK7Z
スレ違いなのでwineの話はしません。
ところで、recfriioで予約録画する方法をググったら、
cronでやっている人が多いみたいね。
それ以外の方法ってないのかな?
MythWebみたいに、うちのオカンでも操作できそうなやつ。
466:login:Penguin
08/11/14 23:04:47 ujI5nvkE
おかんにcrontabの使い方教えてあげるしかない。
467:login:Penguin
08/11/14 23:29:35 yoJlqArz
おらphpからatにぶっ込んでる
468:login:Penguin
08/11/15 02:35:04 sJupkIZS
>>465
perl、php辺りでできるようにすればいいじゃん。
EPG解析してEPGから番組表作れるようにしてもいいしな。
番組延長対策が大変だけどさ。
469:465
08/11/15 09:54:50 sqsW67TT
おかんにcrontab教えるのは容易ではないな。
以前、WinXPのOutLookの使い方教えるのも大変だったくらいだから。
phpからatにセットする方法をとりあえず試してみる。
余力があれば、番組表対応もやってみる。
今日はこれから仕事行くから、やるのは明日。
470:login:Penguin
08/11/15 10:33:41 4DzIRf7x
vrs使えば?
対応版作ってる人もいるみたいだし。
URLリンク(labo.kokodayo.com)
471:login:Penguin
08/11/15 10:58:45 HL1wHwYe
MythTVじゃいかんの?
472:login:Penguin
08/11/15 11:57:48 PQHMgEA+
ん?
>>470のdo-record.sh( 録画時に呼ばれるスクリプト )みたけど
nice -n 19で録画走らせているけどこれって正しいの?
CPU負荷とか上がったら処理オチしない?
473:login:Penguin
08/11/15 13:18:11 4DzIRf7x
>>472
19は優先度最低だから大丈夫じゃね?
URLリンク(www.linux.or.jp)
474:login:Penguin
08/11/15 13:35:11 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
08/11/15 16:05:20 PQHMgEA+
あ、ホントだ。勘違いスマン。
476: ◆N/E9PqspSk
08/11/16 07:10:48 qGQr/wKL
>>465
MythTVのスケジュールに合わせてrecfriioを起動するPerlスクリプトがLinux関係詰め合せに入っていたりするのだが、
設定項目多すぎで自分以外だれも使ってない予感。
>>468
TSからEPG取る場合はSolaris用録画プログラムに入ってるepgdumpを修正してcsvに変換するとやりやすい。
だが、TV局が送ってくるジャンル情報が適当すぎるのでTV王国の情報を見たほうが良いのかもしれない。
どちらもタイトルとサブタイトルの分割が適当なので、延長を気にしなければOnTV Japan最高に戻る。
477:login:Penguin
08/11/16 13:58:50 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
08/11/16 15:09:50 /evG6hgi
>>476
FriioのV4L用ドライバがあるので、それを使ったら簡単に
MythTVで使えるようになるんじゃないでしょうか。
試してませんが。
479:login:Penguin
08/11/16 16:21:05 x+/hztDq
>>477
AbstractFriio.cppの299行辺りの種別判定で引っかかってるっぽいね。
io_ctrl()でUSBDEVFS_CONTROLを上手く取得できなくて白凡と判定されてるっぽい。
ubuntu8.10のバグなのかもね。
480: ◆N/E9PqspSk
08/11/17 04:50:46 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
08/11/17 22:28:36 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
08/11/20 10:39:19 OY90Lpdd
>>430
64bitの幅のデータを入力して出てくるのが64bit。
つまり64bit * 2^64 = 2^67 Byte = 128 EB(TBの二つ上) のストレージがあればすべて保存出来るね?
つまりアルゴリズムを逆算するための資料集め自体が事実上無理
483:login:Penguin
08/11/20 10:44:57 OY90Lpdd
>>430
64bitの幅のデータを入力して出てくるのが64bit。
つまり64bit * 2^64 = 2^67 Byte = 128 EB(TBの二つ上) のストレージがあればすべて保存出来るね?
つまりアルゴリズムを逆算するための資料集め自体が事実上無理
484:login:Penguin
08/11/20 11:14:54 yJ0svzUL
>>482
もちろん圧縮する。何か問題があったらしく進展はないが。
URLリンク(www.marumo.ne.jp)
485:login:Penguin
08/11/20 13:04:38 WHAWweKQ
>>484
おまいさんが閲覧したときには、その問題について書かれてなかったの?
486:login:Penguin
08/11/20 13:38:36 hyA3vIzW
実際のところ、入力はECM本体だから最低30バイトほどになるよ。
ECM本体自体が暗号化されているからこれ自体をメモリのアドレスに割り振らないとね・・・・
487:login:Penguin
08/11/22 08:14:00 GhGlu9LO
PT1発売後にこんなこといっても需要なさそうだけど、
玄箱ProでB25が認証エラーする問題の解決法が見つかったらしい。
pcsc-lite-1.4.102のソースを入手して./configureが終了後、Makefileの85行目を
CFLAGS = -Wall -fno-strict-aliasing -g -O2に変更してコンパイルすれば通るらしい。
488:login:Penguin
08/11/22 18:34:20 eQKAaNGp
らしい。
489:login:Penguin
08/11/22 19:32:23 L45qcRWf
すごくや>>488
490:login:Penguin
08/11/22 19:34:59 3C6u9IAt
既出 スレリンク(linux板:699番)
491:login:Penguin
08/11/22 22:10:02 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
08/11/22 22:10:50 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
08/11/22 22:11:50 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
08/11/22 23:21:48 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
08/11/23 16:09:09 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
08/11/23 23:19:28 01Mj8kbh
音が出ない件はmythtvの問題のようなので
そちらのスレッドで聞いてみます。
スレッドを汚して申し訳ないです。
497:login:Penguin
08/11/24 04:30:18 3lWNi8GL
>>495
シグナルハンドラの中でsystemは止めた方がいいと思う。
498:491
08/11/28 00:55:33 LkOtIY/V
時間が取れたので少しいじってみました。
やったこと:
シグナルハンドラではフラグを立てるだけ。(メインの処理中にフラグを見てチャンネルを変える。)
vlc とはパイプでつながず、recfriio のファイル出力(途中でチャンネルを変える)を読ませる。
結果:
recfriio は安定して動作する。
途中でチャンネルを変えたTSファイルを読ませると、チャンネルを変えたあたりでvlcがsegmentation faultを起こす。
mplayerでは再生できた。
やっぱり強引にチャンネルを変えるのは無理があるのか。チャンネルが変わったことを知らせるTSパケットとかあればいいのだが。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5371日前に更新/234 KB
担当:undef