トップページ⇒linux
984コメント395KB

【視聴・録画】Linuxでテレビ総合3【デジタル/アナログ】

■ このスレッドは過去ログ倉庫に格納されています
0001login:Penguin2010/03/31(水) 10:44:36ID:4aqu6AiD
Linuxでテレビ視聴・録画に関する話題を、デジタル/アナログ問わず扱うスレッド

【関連スレ】
Linux でビデオ録画【六枚目】
http://pc11.2ch.net/test/read.cgi/linux/1193058543/
【自家製】MythTV Part.3【HDDビデオ】
http://pc11.2ch.net/test/read.cgi/linux/1223721998/
【BT878】Linuxでのキャプチャを語るスレ
http://pc11.2ch.net/test/read.cgi/linux/1017186805/
Linuxでfriio
http://pc11.2ch.net/test/read.cgi/linux/1213378360/

【前スレ】
【視聴・録画】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/
0508login:Penguin2010/10/02(土) 13:10:35ID:9IaNRhc4
DVDレコで録画したCPRM解除済みMPEG-TSを編集するのに使ってる。
その時、コンテナはmkvを選んでおくと便利だね。Iフレームでカット編集する必要があるが。
mkvならTS動画もAC3音声もそのままコピーで出力できる。このmkv形式でならそのまま
Youtubeにもアップロードできるし。ただ音声がズレるので-200ms設定してるが。

あとはiPhone用にする時だけmp4にエンコードしてるかな。
0509login:Penguin2010/10/03(日) 08:00:13ID:8Q7SzCFb
recpt1でSID2064指定して録画したら100Mぐらいのファイルになるので該当番組をfullで録画してから
ffmpeg -i で解析したら以下のとおりになった。
Program 2064 ???KhF|J|Aw
Stream #0.2[0x111]: Video: mpeg2video, yuv420p, 1440x1080 [PAR 4:3 DAR 16:9], 20000 kb/s, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.3[0x112]: Audio: aac, 48000 Hz, stereo, s16, 188 kb/s
Program 2065 ヘツモKhF|J|Awイ
Stream #0.2[0x111]: Video: mpeg2video, yuv420p, 1440x1080 [PAR 4:3 DAR 16:9], 20000 kb/s, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.3[0x112]: Audio: aac, 48000 Hz, stereo, s16, 188 kb/s
Program 2066 ヘツモKhF|J|Awウ
Stream #0.2[0x111]: Video: mpeg2video, yuv420p, 1440x1080 [PAR 4:3 DAR 16:9], 20000 kb/s, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.3[0x112]: Audio: aac, 48000 Hz, stereo, s16, 188 kb/s
Program 2448 ヘツモKhF|J|Aw7HBS
Stream #0.0[0x281]: Video: h264, yuv420p, 320x180, 14.99 tbr, 90k tbn, 29.97 tbc
Stream #0.1[0x283]: Audio: aac, 24000 Hz, stereo, s16, 45 kb/s
Program 2199 ヌャ、ノ
At least one output file must be specified
なぜ、ちゃんと録画出来ないんだろう?他の番組は出来るんだけど・・・
05104432010/10/03(日) 11:40:53ID:2Mcpm+qq
ttp://hg.honeyplanet.jp/pt1.oyama/rev/e413158cae13

大変申し訳ないです。hg commitミスしてました。
uShareのファイルを追加していなかったので、コンパイル出来ない代物でした。
また、http_close()を綺麗に実装したので、接続後、再接続。
という、「出来て当たり前」の事もできるようになりました。
後は、シグナルを綺麗にまとめるのと、ビットレート*残り録画時間でファイルサイズ取得機能かな
#相変わらず「死なない」ので、最後にSEGVで死にますw
0511login:Penguin2010/10/03(日) 20:01:07ID:1o5MXmXd
>>496
> つかCMカットなんかしないでいいじゃん

昔ビデオに撮った番組のCM カットをして保存したことで、
今となっては当時の貴重なCM を失ったことを後悔している、と
言ったのは中森明夫だったか、宅八郎だったか。
05124432010/10/03(日) 22:03:48ID:2Mcpm+qq
recpt1 DLNAサーバ対応改造進捗報告

ttp://hg.honeyplanet.jp/pt1.oyama/rev/5dcaf3785ebe

プロセス終了時に core 吐く問題を解決。
(これで普通にプロセスが終了出来ます)
ビットレートを「決め打ち」した上で、Content-Lengthヘッダを録画時間から算出
#MPEGのビットレートって、avformatからとってくるのが正解なんだろうけど、
#ストリームなので、どうやろうかなぁ…

これでとりあえず使い物になる様になったかなぁといったところです。
実行時に INFO レベルのログをテキストで大量に吐いているのだけど、
出さない方法を調べること>自分

試してもらえる方がいて、動いたよー。って報告もらえるとうれしいです。
0513login:Penguin2010/10/03(日) 23:11:25ID:WTnAhw8M
>>511
伊集院光だったかな
05144432010/10/05(火) 01:44:54ID:Sxqi+xi6
http://hg.honeyplanet.jp/pt1.oyama/rev/5a380559a61e

実測値からビットレートを計算する方式に修正
INFOログが大量に出る件、INTELの libupnp の仕様っぽい。
もう少し調べてみます。
05154432010/10/05(火) 01:57:05ID:Sxqi+xi6
http://hg.honeyplanet.jp/pt1.oyama/rev/3a7d8d2f0585

configure に追加するべき -lrt を忘れてました
これでコンパイル出来ます
0516recpt1 httpサーバーの人2010/10/05(火) 02:55:39ID:0XVCXWbu
>>492

http://2sen.dip.jp/cgi-bin/pt1up/source/up0298.gz

>>459のパッチを当てました。

それと、パスで/channle/allと指定したときの動作を変えました。

関西でもMBSなどで、たまにsidで分離できないことがあること
に気づいたので、allの時は何もしないという風にしました。

以上二点ですがよろしくお願いします
0517recpt1 httpサーバーの人2010/10/05(火) 02:56:59ID:0XVCXWbu
使い方は例によって

./autogen.sh
./configure --enable-b25
make

でお願いします。
0518login:Penguin2010/10/05(火) 20:57:23ID:HhYKRhkB
>>516
ありがとうございます。大切に使わせていただきます。
0519login:Penguin2010/10/06(水) 18:37:27ID:yIUvX3ut
>>516
早速使わせていただきました。
> 関西でもMBSなどで、たまにsidで分離できないことがあること
> に気づいたので、allの時は何もしないという風にしました。
RC3を入れて--sid指定にしてから、MBSの録りミスが増えたのですが、同じ現象でしょうか…
とりあえず新バージョンで様子見です。
0520recpt1 httpサーバーの人2010/10/06(水) 21:59:34ID:ddDxlfQ3
>>519

URLとしてsidにallを与えたときの動作を変えただけなので
ファイルに録画するときの動作はRC3と同じだと思います。
MBSはsidオプションを付けずに録画してみてはどうでしょうか?
0521login:Penguin2010/10/06(水) 22:09:28ID:CoVDo+1R
http://www.bestgate.net/capture_earthsoft_pt2.html
05225192010/10/07(木) 00:54:06ID:A/3ZfXk5
>>520
わかりました、MBSに関しては後でtssplitterに通すことにします。
ありがとうございました。
0523login:Penguin2010/10/07(木) 17:50:56ID:65oVpW6I
途中でアナログのCMが入ることが多い、とかあんじゃないの?
0524login:Penguin2010/10/07(木) 21:04:42ID:o69MKDuZ
アナログじゃなくてSDだな
05254432010/10/08(金) 01:13:36ID:Cb3EHpcO
hg に push はまだしてませんが、recpt1 DLNAサーバ版で、
複数の http セッションを同時に張れるようになりました。
DLNAサーバと言っても、httpプロトコルが骨格ですので、
httpd版とうまいことマージ出来ないか、考えて見ませんかね?
(ソースコードをもう少し細かく分けて管理する等)
複数セッション対応にかんしては、今週末あたりに出せそうな感じです。

libupnpをrecpt1内部に取り込む形になるのでまたコードが肥大化していく…

あと、妄想なのですが、recpt1の tssplitter_lite なコードは引っこ抜いてしまって、
SIDな挙動はffmpegのライブラリベースにしてしまうのってどうだろうなぁ?
ffmpeg の ProgramID 指定っていい感じですかね?
open、close、read、write、seekの callback さえ作り込めば対応出来そうな雰囲気なので、
実装は可能である気がしています。やってみないと分からないですが…

それとも、チマチマと tssplitter_lite.c の修正と、
TSの解析を進めていくのがいいのであるか?
個人的にはTSの解析は興味が無いところなので、
自分がやるなら ffmpeg のライブラリを利用する方向に倒してしまうと思います。
#ストリーミングMPEG4 AVC変換等に発展させられるし

自分の時間がどれだけ作れるか?ってところもあるので
この妄想の対応を本当にするかもまだ未定ですけど。
0526login:Penguin2010/10/08(金) 01:21:16ID:XYad9hzb
乙です!
0527recpt1 httpサーバーの人2010/10/08(金) 12:35:41ID:siKO1am/
>>525

マルチセッション対応いいですね。
こちらの成果は実際たいしたことないと思いますが、
マージして単一バージョンにしたほうが便利だと思います。(ユーザーからすると)

現在私のほうは忙しいため主導的にやっていただけると助かります。
(私が書いた分の権利がなんとかとかは言いませんので)

時間をみつければ協力していきたいと思いますのでよろしくお願いします
0528login:Penguin2010/10/09(土) 01:09:10ID:ks9RJoKd
地デジ放送は解像度は1440x1080、16:9になるよう横に引き伸ばしている。
とアチコチで見かけますが、どうも全ての局がこうなっているわけじゃないんですね。

KBSは1920x1080になってました。
# 録画した番組だけタマタマなんだろうか…まさか放送中に切り替え可能…とか、ないですよね?
0529login:Penguin2010/10/09(土) 01:17:48ID:M38x5VX+
>>528
切り替え可能に決まってるだろ
0530login:Penguin2010/10/10(日) 14:52:15ID:WAqLX94H
>>528,>>529
横から失礼。
おおっ、私も勝手に1440x1080だと思ってた。wikipediaを見たら規格として1920x1080も入ってるだね。
なんで他局は1440x1080なんだろう?機材の問題?圧縮率の問題?
0531login:Penguin2010/10/10(日) 15:00:08ID:EN87RsJ0
地デジは帯域が狭いからフルHDにするとたいていの場合は逆に画質が落ちる
0532login:Penguin2010/10/10(日) 15:30:48ID:evHSOe97
>>529
トン。って…マジですか。そういう録画データにはあたったことがないけど
そのまま再生/再圧縮するとトラブルになりそうな予感が。
05334432010/10/10(日) 15:51:47ID:gBCtbn9h
http://hg.honeyplanet.jp/pt1.oyama/rev/4f6d9621ee00

DLNA改造版、マルチセッション対応&必要なライブラリ同梱版を hg に push しました。
ただし、libavformatとlibavcodecに関しては含めていないので、
コンパイル時にはffmpeg-devel的なライブラリを入れておいてください。

$ ./configure --prefix=/tmp/hage --enable-b25 --with-b25-dir=DIR
$ make
configureでコケた場合(ffmpegのヘッダの位置が想定と違う)には、
ソースと configure の両方を *適切* に修正してしまってください。

再生出来た機械
・SONY BRAVIA KDL-32J5
・VLC( /w Intel UPnP モジュール)
・VLC(httpストリーム再生)

注意事項
・DLNAでの動作を強要します。オプション化はまだやってません
・libupnpとlibdlnaのコンパイルはかなりダサいことやっているので、気づいても見なかったことにしてください

PS3とかXbox360とかでも動作するハズなので、確認報告してくれるとうれしいです…
05344432010/10/10(日) 22:49:22ID:gBCtbn9h
ttp://hg.honeyplanet.jp/pt1.oyama/rev/cc3e3f370aec

ビットレートが短時間に上昇した後、再生がおかしくなる問題に対処する為、
ストリーミングのキューサイズの増加してみました。
これで3時間ほど再生してみましたが、問題は無い感じです。
キューはコード上はタダのポインタなので、
8倍としてもメモリサイズ的には64KByte増加(?)程度なので気にしない方向で。
0535login:Penguin2010/10/11(月) 12:09:40ID:L0k5S7Ln
>>534
ありがとうございます。 試してみたところ、

Warninig: can't parse file "/tmp/hage/etc/ushare.conf".
Interface eth0 is down.
Recheck uShare's configuration and try again !

とでます。 --prefix の指定がいけないのでしょうか?
ちなみに、録画はちゃんとできますし、 eth0 も生きています。
05365352010/10/11(月) 12:50:15ID:L0k5S7Ln
失礼。 ushare をinstall したらうまくいきました!
0537login:Penguin2010/10/11(月) 15:38:31ID:UhyQqMEb
>>535
そのメッセージ自体は無視して問題ないです
uShareのコードそのままパクってる箇所で、
設定ファイルみつからないんだけど?ってエラーが出てるのですが、
設定値はプログラム内部埋め込みにしているので設定ファイルは不要なのです。
Warning自体は出ていても、問題なく動きます。とりあえず無視してしまってください

こういった改善箇所はまだ色々あるので、生温かく見守ってください
05385352010/10/11(月) 16:15:19ID:L0k5S7Ln
>>537
エラーメッセージは無視して良い旨了解です。
で、その後エラーメッセージは出なくなったのはいいのですが、
肝心の表示がうまくいきません。

Link Station (DLNA Client) では、 サーバー名 ushare:1 、File名(?) stream
というのは出るのですが、クリックしても表示できず、サーバー側でエラーが出ます。
VNCのStream表示でも上手く表示できませんでした。

もしかして基本的な使い方が判っていないのかもしれないのですが、

./recpt1 --b25 --strip 27 - /dev/null

とかして、DLNA Client で見る・・・というので良いのですよね?
(Servier環境は、Ubuntu Server 10.04 です)
05395352010/10/11(月) 16:16:43ID:L0k5S7Ln
↑ 間違えた
Link Station ⇒ Link Theater
05404432010/10/11(月) 16:48:51ID:UhyQqMEb
>>538
基本的にその理解であっています

再生しようとしているストリームを、TSファイルとしてDLNAで流し込んだとき、
再生できる機械ですかね?
もっと言うと、SIDでのふるい分けしていないストリームを問題なく食べられる機械ですか?
SIDでのふるい分けは出来ればやっておいた方が食べる側のクライアントにやさしいと思います。

> VNCのStream表示でも上手く表示できませんでした。
VNC?VLCでなく?
http://recpt1動作ホストのIPアドレス:49152/web/100000.ts
をストリーム再生出来ます?(HTTPストリームでこれでイケるハズです)
ポート番号は libupnp が動的に決めるので、確定ではないので LISTEN しているポート調べてください。(ログ、netstat -an 等)

HTTPでの再生が出来るモノだったら大体コレでイケるハズです
(DLNAはこれにカワを被せた程度のモノなので)
0541login:Penguin2010/10/11(月) 23:51:26ID:j55hklFc
>>443
>>498
私も、この連休で--esオプション有りのrecpt1を使ってみました。
(使ったのはDLNA版ではなく、4009737ea899版です)
こちらでも生成されるm2vがおかしなことになっていました(BS high録画にて)。
調べてみたところ、tssplitter.hで定義されている。splitpesbuf_t.bufferが偶にあふれているようでした。
対処療法として、u_char buffer[3*1024*1024];としたところ、m2vが正しくなったようです。
私は、Mpeg2システムには詳しくないので、正しい修正かは分かりません。

この修正と、a tiny patch for recpt1/tssplitter_lite.cの該当部分の修正で
使っていますが、今のところ問題はおきてません。
tssplitter_lite.cを使えば、TSファイルを読み込ませて、映像、音声を同期させて、
ESダンプするツールなんかも出来そうですね・・・。
とはいえ、--esオプション有りのrecpt1が動けば使わないか・・・。

05425352010/10/11(月) 23:54:07ID:L0k5S7Ln
>>540
すみません。 VNC ではなく、 VLC でした・・・
VLCで ネットーワークストリームを開く -> http://hoge:4915x/web/100000.ts
とすると、サーバー側に

http_get_info, filename : /web/100000.ts
Looking for entry id 100000
Found at 0x9ce540
http_get_info, entry found.
Looking for entry id 100000
Found at 0x9ce540
Fullpath : /web/stream.ts
get_file_stream(): finish.

とメッセージが表示されますが、VLC側には何も出ません。
ファイルに落とす録画はできているのでコンパイルは上手くいっていると思うの
ですが、何か確認すべきところなどアドバイスがあればお願いします。
0543login:Penguin2010/10/12(火) 03:59:25ID:BuE1QNM0
>>541
情報ありがとうございます。
u_char splitpesbuf_t.buffer[3*1024*1024]
としたら壊れなくなりましたか。
了解です。コミットした場合の影響度等もうちょっと調べてから取り入れさせてもらいます。

>>542
お手を患わせて申し訳ないです。
ファイル直打ちの get_file_stream(): finish までいけてるので、
TSデータが送信されてそうな感じですねぇ。
念のため確認ですが、b25オプションつけてます?

wget等で直指定してファイルが落ちてくるか確認出来ませんか?
で、その wget で落としたファイルを、ローカルファイルとして再生できるか?
出来ない場合、recpt1 DLNA版が壊していることになります…orz...
05444432010/10/12(火) 05:27:52ID:BuE1QNM0
>>543
PESの仕様を再確認してみました。
ISO-13818-1 2.4.3.6 PES packet
Table 2-17 - PES packet
PES_packet_length 16 uimsbuf

なので、最大値は 65535 です。

128*1024 で収まるハズです。が、収まっていないと。
demuxのコードが変な事している気もしますが、
PES毎に alloc しているので 3MByte x PES の分メモリ食いになるのが微妙です。
富豪的に大きいことはいいことだ。で行っちゃうのも手ですけどカッコ悪いです。

コード読み直す元気がある時に、demuxのコードは何とかすると言うことにして、
3MByteで行っちゃいますか…カッコ悪いけど、とりあえず動く方が大事ということで…
05454432010/10/12(火) 05:59:38ID:BuE1QNM0
http://hg.honeyplanet.jp/pt1.oyama/rev/20442921bff5
PES bufを3MByteに拡張。
uShareの名前を表に出さないように修正。
UUIDの計算を、PID+MACアドレスとしたので、複数 recpt1 が同時起動可能。
DLNAの表示名を recpt1 に変更(デバイスファイル名含めたいなぁ…)

といった修正を行っています。
05465352010/10/12(火) 07:10:22ID:pl/6i4bg
>>543
>念のため確認ですが、b25オプションつけてます?
はい、サーバーを ./recpt1 --b25 --strip 27 - /dev/null として待機させています。
因みに、 /dev/null を test.ts とすると、このファイルは後から VLC で視聴可能です。

>wget等で直指定してファイルが落ちてくるか確認出来ませんか?
これは .../web/100000.ts を wget するということですか?
(Linux環境がServer以外に無いのですが、自分自身でwgetすればいい?)
やりかた自信は無いですが、頑張ってみます。
05475352010/10/12(火) 19:59:48ID:pl/6i4bg
>wget等で直指定してファイルが落ちてくるか確認出来ませんか?
確認してみました。 コマンド端末を2つ上げて、

端末1: ./recpt1 --b25 --strip 27 - /dev/null
として待機。 その後

端末2: wget http://localhost:49152/web/100000.ts
とすると、端末2で、

localhost|127.0.0.1|:49152 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 0 [video/mpeg:DLNA.ORG_PS=1]
`100000.ts' に保存中
[ <=> ] 0 --.-K/s 時間 0s
2010-10-12 19:45:01 (0.00 B/s) - `100000.ts' へ保存完了 [0/0]

というように、ファイルの長さが0になってしまっています。
アドバイスがあればよろしくお願いいたします。
0548login:Penguin2010/10/13(水) 01:41:29ID:J17hPGOZ
>>547
ご協力ありがとうございます。
該当箇所分かりました。
録画時間がコード上で「0」になる指定方法していますか。
内部値としては最大とする方が良いですねぇ…
だけど、本気の最大値にすると
CONTENT-LENGTH: 9223372036854775807
になるから、マトモに扱えるプレイヤが存在するか?

1日垂れ流しをすることを想定して、100GByte固定でどうかな?
とりあえずこれで実験してみてください。
うまく行かない場合には、
http.c の L606 を *適切* に書き換えてみてください。

http://hg.honeyplanet.jp/pt1.oyama/rev/7b663556757f
05495352010/10/13(水) 06:54:43ID:4wMT3vu4
>>548
ぉお、ありがとうございました。 VLC でストリーム再生できました。
でも、残念ながら毎回10秒もしないで

http_seek
Attempting to seek by 0 from 0 in /web/stream.ts
/web/stream.ts: cannot seek: STREAM
Segmentation fault

を出して、Server 側が落ちてしまいます。 これって、

>http.c の L606 を *適切* に書き換えてみてください。
で直る話なのでしょうか? アドバイスをよろしくお願いします。
05505352010/10/13(水) 07:36:12ID:4wMT3vu4
↑
L606を変えて、 10MB まで変化させて見ましたが、
Segmentation fault で落ちる状況に変わりませんでした。
確認すべきことがあればアドバイスください。
05515352010/10/13(水) 07:48:32ID:4wMT3vu4
因みに、wget してみたところ、

localhost|127.0.0.1|:49152 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 500 Internal Server Error
2010-10-13 07:45:15 エラー 500: Internal Server Error

となります @ うゎ、会社に遅れる!
05524432010/10/13(水) 21:49:13ID:J17hPGOZ
>>449
Segmentation faultですか…
http.c の L606 を変更してもいいことは起こらないパターンだと思われます。
こちらでも色々やってみましたが、再現しませんでした。

seekのメッセージは再生初めてから一度きり?それとも何度か出ます?
再生機で再生を始めてから、ボタン等何か押しました?
再生機が実は裏で何かやっている気がすることとかありません?

wgetで500 Internal Server Error は、パス間違えてると思います。
0の数とか正しいですか?404に落とした方が人に優しい気もしますねぇ…
気が向いたら対応するかも。

$ wget http://192.168.1.34:49153/XXXXXX/100000.ts
wget http://192.168.1.34:49153/XXXXXX/100000.ts
--2010-10-13 21:45:28-- http://192.168.1.34:49153/XXXXXX/100000.ts
Connecting to 192.168.1.34:49153... connected.
HTTP request sent, awaiting response... 500 Internal Server Error
2010-10-13 21:45:28 ERROR 500: Internal Server Error.
05534432010/10/13(水) 22:27:04ID:J17hPGOZ
http://hg.honeyplanet.jp/pt1.oyama/rev/20442921bff5
から
http://hg.honeyplanet.jp/pt1.oyama/rev/7b663556757f
に関してですが、UUIDが起動毎に異なる(PIDを含めたので)ため、
braviaの画面メニューがエライ事になることが判明しました。
(recpt1のアイコンで画面が爆発します...orz...)

recpt1:X (Xはデバイスファイルの末尾の数字)と画面表示するように改造。
UUIDもPIDではなくデバイスファイル名からと
するように早急に改造しますので少々お待ちください。
0554login:Penguin2010/10/13(水) 23:07:48ID:tVJKTFuI
そんな機能より映像ファイルと音声ファイルが破損してたりしたら補完するような機能が欲しい。
ffmpegで時々エラーになったり、音ズレがテラウザス。
05555352010/10/13(水) 23:53:12ID:4wMT3vu4
すみません。 Wget できました。 アドレス間違えてみたいです。
で、wget でも

Found 1 files and subdirectories. <− ここで待機
http_get_info, filename : /web/100000.ts
Looking for entry id 100000
Found at 0x1ecc130
http_get_info, entry found.
Looking for entry id 100000
Found at 0x1ecc130
Fullpath : /web/stream.ts
get_file_stream(): finish.
Segmentation fault

といっておちてしまいます。

05565352010/10/13(水) 23:54:00ID:4wMT3vu4
(続き)
因みに、短いファイル(10MB位)で転送がたまたま上手くいった場合には,
そのファイルはちゃんと視聴可能です。 (壊れていません)

VLCでのStream視聴の場合には

Found 1 files and subdirectories. <− ここで待機
http_get_info, filename : /web/100000.ts <−視聴開始
Looking for entry id 100000
Found at 0x1da6210
http_get_info, entry found.
Looking for entry id 100000
Found at 0x1da6210
Fullpath : /web/stream.ts
get_file_stream(): finish.
http_seek
Attempting to seek by 0 from 0 in /web/stream.ts
/web/stream.ts: cannot seek: STREAM
Segmentation fault

となります。 なお、いわゆる再生機(Link Theater)では試していません
05574432010/10/14(木) 00:10:37ID:9XjstHBy
http://hg.honeyplanet.jp/pt1.oyama/rev/0db6ccf0fe31
DLNAの表示名に devN を使用していると出す修正と、
UUIDにデバイスIDを含める(半固定とする)ように修正しました

>>555
何故SEGVしてしまうのか予想が付かないです
うちでは全く再現しません。
まさかの初期化漏れでもあるのかなぁ…
週末にでもコードを見直してみます。
0558login:Penguin2010/10/14(木) 06:00:47ID:gPEZmaJ3
>>554
TS録画して再生するだけで音ズレすることある?
05595352010/10/14(木) 06:08:43ID:4dZfvV60
>>557
再生機(LinkTheater)でTV番組をRealTimeに見たいな、とずっと思っていたので
今回の機能はまさに欲しかった機能です。 ホントに期待しています。
0560login:Penguin2010/10/14(木) 14:29:36ID:d3rf9Rwp
HTTTPならチャックにして返せば事前にファイルサイズを返さなくてもいいんじゃね?
DLNAはよく知らないからクライアント側が対応できるか解らないけど。
0561login:Penguin2010/10/14(木) 16:49:28ID:bEcXXEgr
NNTPと書いたら、Nが多いと指摘されたことがある。
0562login:Penguin2010/10/14(木) 17:05:45ID:d3rf9Rwp
ごめんtypoした… 許してください…
05634432010/10/15(金) 01:38:08ID:yJ+ZIb2a
>>559
早期解決のため、できればこちらで再現させて core から解析してみたいと思います。
以下の情報の採取と調査をお願い出来ませんか?

(1) CPUの種類(i386(32bit) or AMD64)
(2) recpt1 利用時のコマンドラインオプション
(3) recpt1 を動作させているディストリビューションの詳細情報
(4) recpt1 を動作させているホスト上での uname -a の実行結果
(5) SEGVしてしまう番組を TS に保存した場合の ffmpeg -i TSFILE の実行結果(番組、放送局に関係なく発生するか?)
(6) DLNA機能統合前の revision(esオプション実装後) のコードに於いて、同様の障害が発生するか否か?

お願いばかりで申し訳ありませんが、ご協力いただければと思います。
05644432010/10/15(金) 01:51:09ID:yJ+ZIb2a
>>563
すいません。以下も追加でお願いします。
(7) recpt1を起動させてhttpでのアクセスを行わない場合には、SEGVするか?
(8) (7)でSEGVしない場合、httpでアクセスしはじめてSEGVするまでのおよその時間(1-2秒程度?)
0565login:Penguin2010/10/15(金) 15:03:39ID:21pCYcJ2
SID指定でCSを録画したのだが、日本語音声と英語音声が一つになってしまった・・・
なんとか分離出来ないんですかね?
0566login:Penguin2010/10/15(金) 19:01:39ID:p4Qb1ugE
一つになったってのがよくわからん。
左と右で日本語と英語が出てくるのか、それとも両方から日本語と英語が出てくるのか
左と右で日本語と英語が出てくるなら、再生ソフトで片方のチャンネルだけに絞ることができるかもしれない。
両方から日本語と英語が混ざって出てくるならこれを分離するのは至難。

大抵は再生ソフトで切り替えができるもんだが。
0567login:Penguin2010/10/15(金) 19:30:40ID:6Ye/ZsCq
成果物が散乱しすぎ
0568login:Penguin2010/10/15(金) 20:13:07ID:Nyus/GJV
>>565
ffmpeg -i "TSファイル"の実行結果は?
普通の2ヶ国語放送だったら↓のようになるはず

Stream #0.0[0x100]: Video: mpeg2video, yuv420p, 1440x1080 [PAR 4:3 DAR 16:9], 24000 kb/s, 33.57 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.1[0x110]: Audio: aac, 48000 Hz, 5.1, s16, 396 kb/s
Stream #0.2[0x111]: Audio: aac, 0 channels, s16

2つあるAudioのうち、Stream #0.1が日本語、Stream#0.2が英語音声
これだったら>>414-417
05695352010/10/15(金) 21:50:09ID:iluF0v6L
>>563
(1) CPUの種類(i386(32bit) or AMD64)
-> Celeron G1101 (NEC Express5800/GT110b)
(2) recpt1 利用時のコマンドラインオプション
-> ./recpt1 --b25 --strip 27 - /dev/null
(3) recpt1 を動作させているディストリビューションの詳細情報
-> Ubuntu 10.04LTS 64bit Server version
(4) recpt1 を動作させているホスト上での uname -a の実行結果
-> Linux peach 2.6.32-25-server #44-Ubuntu SMP Fri Sep 17 21:13:39 UTC 2010 x86_64 GNU/Linux
(5) -> 長いので次レスへ
(6) DLNA機能統合前の revision(esオプション実装後) のコードに於いて、同様の障害が発生するか否か?
-> すみません。 具体的にどのバージョンで試すべきか教えてください。
(7) recpt1を起動させてhttpでのアクセスを行わない場合には、SEGVするか?
-> しない (10分以上放置しても大丈夫)
(8) (7)でSEGVしない場合、httpでアクセスしはじめてSEGVするまでのおよその時間(1-2秒程度?)
-> 早ければ2-3秒、長くもつ場合は30秒程度
05705352010/10/15(金) 21:50:55ID:iluF0v6L
(続き)
(5) SEGVしてしまう番組を TS に保存した場合の ffmpeg -i TSFILE の実行結果(番組、放送局に関係なく発生するか?)
-> 色々なパターンがありますが、長いのでとりあえず最後の部分だけ
Seems stream 0 codec frame rate differs from container frame rate: 59.94 (60000/1001) -> 29.97 (30000/1001)
Input #0, mpegts, from '100000.ts':
Duration: 00:00:04.26, start: 65600.125833, bitrate: 12874 kb/s
Program 1024 NHKAm9g15~
Stream #0.0[0x100]: Video: mpeg2video, yuv420p, 1440x1080 [PAR 4:3 DAR 16:9], 24000 kb/s, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.1[0x110]: Audio: aac, 64000 Hz, mono, s16, 176 kb/s
Program 1025 NHKAm9g25~
Stream #0.0[0x100]: Video: mpeg2video, yuv420p, 1440x1080 [PAR 4:3 DAR 16:9], 24000 kb/s, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.1[0x110]: Audio: aac, 64000 Hz, mono, s16, 176 kb/s
Program 1408 NHK7HBSG5~
Stream #0.2[0x581]: Video: h264, yuv420p, 320x180, 14.99 tbr, 90k tbn, 14.99 tbc
Stream #0.3[0x583]: Audio: aac, 0 channels, s16
Program 65520
At least one output file must be specified

よろしくお願いします。
0571login:Penguin2010/10/15(金) 21:58:17ID:21pCYcJ2
>>568
Duration: 01:00:29.04, start: 88332.307956, bitrate: 4925 kb/s
Program 340
Stream #0.0[0x1001]: Video: mpeg2video, yuv420p, 720x480 [PAR 8:9 DAR 4:3], 2000 kb/s, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.1[0x1041]: Audio: aac, 48000 Hz, stereo, s16, 144 kb/s

0.2がないぽいorz
これだと無理?
05725352010/10/15(金) 22:02:43ID:iluF0v6L
> ffmpeg -i TSFILE
以下のようなエラーが出ていることが多い・・・という情報のほうが有意義ですかね。
でも、すべてにこれが出ているわけではありません。
[NULL @ 0x661670]non-existing PPS referenced
[h264 @ 0x661670]non-existing PPS referenced
[h264 @ 0x661670]decode_slice_header error
[h264 @ 0x661670]no frame!
[h264 @ 0x661670]non-existing PPS referenced
Last message repeated 1 times
0573login:Penguin2010/10/15(金) 23:31:47ID:Nyus/GJV
>>571
それで2ヶ国語なのか
じゃあ後は>>566と同じだ
0574login:Penguin2010/10/16(土) 10:01:56ID:JErjZUme
>>569
大変ありがとうございます。
(6)はこの辺のコードで試してくださいというところです。
http://hg.honeyplanet.jp/pt1.oyama/rev/4009737ea899
んー。やっぱり64bitかぁ。。。
0575login:Penguin2010/10/16(土) 10:11:21ID:2qUZh00r
>>573
CSなせいかも?
0576login:Penguin2010/10/18(月) 00:49:32ID:+H9K4Ue0
前スレか前々スレであがっていたと思うんですが、
REGZAの「〜」などの文字を変換するためのEPGRECで使う
CP932.phpをどなたか再うpしていただけますでしょうか?
05774432010/10/18(月) 04:10:40ID:sPYjPF4y
http://hg.honeyplanet.jp/pt1.oyama/rev/c4e0a5777363
recpt1に --dlna オプションを与えることで、DMSとしての動作を選択する事ができるようにしてみました。
dlna(ESもこっそり)時にはTSの出力を行わない事も選択可能としています。

キューが空に近い場合に、800msec(値は適当)待つようにさせてみました。
再生が一時、止まってしまった後のプレイヤ側の復帰がものすごく悪いように感じたので。
多少バッファリングさせてから送信を再開した方がプレイヤに優しいかなと考えましたので修正してます。
とりあえずこれで様子見です。

残念ながら >>535 向けの修正は入ってません。
再現しないんですよねぇ…libdlna辺りにポインタ=4byte決め打ちのコードが入ってるのかなぁ…
minidlnaにはそういうコードが入ってたという実績(?)はあるのですけれど…
libupnpは多くの人に見られているし、mediatombに取り込まれている実績があるので大丈夫だと思うのですけれど…
05785352010/10/18(月) 07:03:09ID:uNtAQAHv
>>577
夜中までお疲れ様です。

>残念ながら >>535 向けの修正は入ってません。
ありがとうございました。ここまでくると私のコンパイルミスか何かかもしれません。
因みに、make するとこんな warning でているのに気がついたのですが、 SEGV に関係しますかね?
http.c:315: warning: assignment from incompatible pointer type
http.c:411: warning: comparison between signed and unsigned integer expressions
tssplitter_lite.c:493: warning: format ‘%llu’ expects type ‘long long unsigned int’, but argument 4 has type ‘int64_t’
tssplitter_lite.c:62: note: expected ‘unsigned char *’ but argument is of type ‘const uint8_t *’
tssplitter_lite.c:1136: warning: comparison between signed and unsigned integer expressions

cは殆どイジった事無いので、よく判っていません・・・
0579login:Penguin2010/10/18(月) 10:25:03ID:1xlliq2V
ほんと基本的な質問で申し訳ないんだけど
recpt1でDLNAが動くと、どういうメリットがあるの?
mediatombみたいにローカルのファイルを公開するんじゃなくて
放送波をストリームでDLNAに流せるってこと?
フツーにテレビを見るのと何が違うん…?
0580login:Penguin2010/10/18(月) 20:31:19ID:I28QUBhk
recpt1のUDP送信機能が正常に動いてる方いますか?
自分の環境だとUDP送信で、別のWindows上のTVTestで受信しても画面と音がすごく乱れます。
ファイルへの録画は正常にできて、HDP(recfriio)を使った場合はUDP送信もちゃんとうまくいきます。
使用してるドライバは、hg.honeyplanet.jp/pt1/の最新版です。
0581login:Penguin2010/10/18(月) 21:37:01ID:gmxZvlfn
VLCで受けてますが正常に動いてます。4チャンネル同時でも問題ないです。
0582login:Penguin2010/10/18(月) 21:59:11ID:I28QUBhk
>>581
なるほど、そうですか。
ありがとうございます。
自分で色々検証してみます。
0583login:Penguin2010/10/18(月) 22:21:56ID:5C6JQopi
>>579
TVチューナーがついてない端末でTVが見れるっしょ
つまりあんなところやこんなところで
05845802010/10/18(月) 22:29:29ID:I28QUBhk
VLCで受信したら見事綺麗に映りました。
MPC HCも試してみたんですがこっちは映像が乱れました。
うーん、結構相性が厳しいんですかねぇ...
0585login:Penguin2010/10/18(月) 22:50:22ID:5C6JQopi
あとはMPlayer系試してみたら?
05865802010/10/18(月) 23:07:25ID:I28QUBhk
>>585
SMPlayerで試してみましたが、音しか出ませんでした。
相性というよりSMPlayerのバグっぽい感じでしたけどね。
05874432010/10/19(火) 01:50:05ID:119XiGxS
>>578
自分的にあれは朝だったりしてます。それはおいておくとして。
warningに関してはコードの型とか厳密に区別して書きなさいよ。
ってレベルなので、SEGVが出てしまうとかいうのとは異なるものです。
きれいな方がいいのは言うまでもないですが。

コンパイルしている環境に関してですが、
以下のように確認お願いできませんか?
それと、出来れば重複するライブラリは削除出きるなら削除する方向で…

(1) /usr/include に upnp.h が存在しているか?
$ find /usr/include -name upnp.h
/usr/include/upnp/upnp.h (無ければ表示されません)

(2) upnp.h の持ち主のパッケージはどれか?
$ dpkg -S /usr/include/upnp/upnp.h ((1)が発見されたらこれも実施)
libupnp4-dev

(3) upnp/dlna関係のパッケージはどれがインストールされているか?
$ dpkg -l | grep -e libupnp -e libdlna

(4) upnp/dlna関係のパッケージは削除出来るか?
$ sudo aptitude purge libupnp4-dev (依存しているパッケージが存在しないなら消してしまう)
※後ろに -dev が付くものだけが対象で問題ないです※

この後、hg clone からやり直す勢いで、ダウンロードとコンパイルからやりなおしてみてください。
もしかすると /usr/include のヘッダを参照するんだけど、
recpt1 内部の libupnp.a をリンクしてしまっているという問題が起こっているかもしれません。
0588login:Penguin2010/10/19(火) 22:01:50ID:8oW/RB/Q
>>417
Ubuntu 10.04 Desktop 64bit + recpt1 + PT2
なんですが、wineでBonTsDemuxを実行すると、
mfc90u.dllとMSVCP90.dllが無いと怒られて実行できませんでした。
05895882010/10/19(火) 22:36:50ID:8oW/RB/Q
× Ubuntu 10.04 Desktop 64bit + recpt1 + PT2
○ Ubuntu 10.04 Desktop 64bit
(recpt1ドライバがインストールされているのは32bitでした)
05904172010/10/19(火) 23:06:45ID:Vq7Bpdy1
>>588
recpt1を実行するユーザーでWineが動くようにしてからWinetricksでいろいろインストールだ。
それでも足りないものは直接DLLを入れれば動くよ。
05915882010/10/19(火) 23:59:34ID:8oW/RB/Q
recpt1「ドライバ」って何だろう…。
(いかん。今日は、もう止めておきます)

NHKの二ヶ国語放送のニュース番組を観たいだけなんですけどねぇ。
(ivtvなら、録画する時点で選択できたのになぁ。アナログで十分な気がします)

>>417,590
ありがとうございます。近いうちに、再チャレンジしてみます。
Ubuntu 10.04 Desktop 32bitのPCでrecpt1プログラムを使って録画したものを
Ubuntu 10.04 Desktop 64bitのPCに移してから、ffmpegやwine+BonTsDemux等で編集しようと試みています。
0592login:Penguin2010/10/20(水) 00:24:43ID:0+tnTKZD
Webアプリを介して録画鯖のtsを遠隔でCMカット&エンコードしたいなら
新たにアプリ制作しないと駄目?
0593login:Penguin2010/10/20(水) 05:30:54ID:Sre79wrs
>>592
エンコードの自動化はできるが、CMカットの自動化は不完全だったり
0594login:Penguin2010/10/20(水) 12:40:34ID:aSv63iD6
上の方で話題になってる事と関係あるか分からないけど、俺も--esオプションで録画したm2vがおかしい。
ファイル自体は再生できるけど、
下半分位がブロックノイズと言うかデータが欠落した時みたいな感じになる。TS出力すると正常なんだが…
05955352010/10/20(水) 21:36:40ID:MVM5WXU+
>>587 フォローをありがとうございます。 さて、
(1) /usr/include に upnp.h が存在しているか?
-> ありませんでした
(2) upnp.h の持ち主のパッケージはどれか?
-> N/A
(3) upnp/dlna関係のパッケージはどれがインストールされているか?
$ dpkg -l | grep -e libupnp -e libdlna
-> libdlna-dev あり (libupnp-devは表示されず)
(4) upnp/dlna関係のパッケージは削除出来るか?
-> sudo aptitude purge libdlna-dev 後、(3)にて削除確認、
すべてを Clone、configure, make -> recpt1 --dlna --...
-> vlc で stream 視聴。。。 --> segmentation fault...
無念・・・
0596login:Penguin2010/10/20(水) 21:42:08ID:OfH7yM+U
Linux版Spinelマダー
0597login:Penguin2010/10/20(水) 22:08:16ID:E/oYKDQm
言い出しっぺの法則
0598login:Penguin2010/10/20(水) 22:11:33ID:hf/5pS81
実装するにしても、既存のSpinel/BonDriver_Spinelとの相互接続性は無視しないとつらいよね?
WCFってlinuxで使えるんだっけ?
05994432010/10/21(木) 01:04:48ID:DL1kFAAK
>>594
あー。やっぱりタマに発生してます?
自分の環境でもタマに発生していたのですが、
NFS書き込みが間に合わないのが原因か突き止めるの面倒で放置していたところでした。
pesbufを3MByteに増量したものでも同様に発生しますか?

http://hg.honeyplanet.jp/pt1.oyama/rev/c4e0a5777363
起動時に --dlna オプションを付けなければ、--es な版とほぼ同等な挙動になります

>>595
ご対応いただき、ありがとうございます。
ubuntu-10.04 64bit版を PT1 の刺さってないマシンにインストールして、
コードをちょっと改造して実験してみましたが、同様の症状が発生しました
core が取れたので週末辺りに解析してみたいと思います。
もうしばらくお待ちください。
06005942010/10/21(木) 21:57:26ID:qyrrgs9l
>>599
たまにというか、ほぼ確実にという感じでした。
c4e0a5777363版を使ってみたところ、とりあえず大丈夫そうです。
0601login:Penguin2010/10/22(金) 23:57:52ID:/PKhZsui
テレビ録画もののTSだと、MPC HCやWMP10はもちろん、VLCでも再生不能なものが
結構ある。でも、TvTest + BonDriver_Fileで再生不能だったものはない。

ってことで、再生確認はTvTest * BonDriver_Fileで行うべきだと思う。
0602login:Penguin2010/10/23(土) 06:20:45ID:EBejAJuj
それわかさトラップとかいうオチじゃ…
0603login:Penguin2010/10/23(土) 15:21:25ID:2y/MVPlF
たまに再生できない/再圧縮できないけど、全部どうにかできている。

自分のところで録画したファイルで起きた現象とその対処法は
・b25で処理しmplayerに食わせると開始数秒以降、大量のエラーがでて音が出ない。映像は正常
 →音がでなくなる箇所をddで切り捨てると治る
・b25で処理したものがmplayerで再生できない。即終了する。
 →ddで先頭を188x20000byteほど切ると治る。ダメなら切る量を調整。
・ffmpegに食わせPS変換すると100Mほど出力してSegV
 →ddで先頭を188x100000byteほど切ると治る。ダメなら切る量を調整。
・ffmpegに食わせPS変換するとアスペクト比が4:3になる
 →ffmpegにaspectを指定してもダメ。前の番組が4:3?。ddで先頭を切る。

困ったらddで切り貼りすれば全部直せそうな気がしてきたw
06044432010/10/24(日) 21:55:03ID:tf1asTaf
http://hg.honeyplanet.jp/pt1.oyama/rev/1d343a4eb657

原因は関数プロトタイプが書いてないため、
64bitなポインタが入るべき場所に32bit分のアドレスしか書き込まれないため、
参照してはならない箇所を参照するため、SEGVしてしまうというところでした。

これで多分64bit環境でも--dlnaオプションが利用可能になっていると思います。
0605login:Penguin2010/10/25(月) 15:19:05ID:k0HTY4NC
今更ながら、KTV-FSPCIE(1002/1004のバージョン)を使って
recfsusb2nでTS抜きできたよ。ヤフオクで売ってたB-CAS無し品。

改造方法は該当スレで情報は沢山あるし、簡単だし
(セロテープ&ニッパ&細い線をテープ・クリップで付ける)
最近はちょっと高くなってるみたいだけど
amazonで安かった時期もあるし、ソフマップでも時々4kぐらいで売る
こともあるらしいし。PT2が高いって人はやってみてね。
06065352010/10/25(月) 22:30:30ID:GH1FrVKY
>>604
ぉおお、dlna で動きました。 少なくとも5分以上VLCで連続視聴できました。
これで長年の野望が適いそうです。 ありがとうございました。
0607login:Penguin2010/10/27(水) 00:27:10ID:z0ngOTgq
>>605
ちょと本スレに来い
0608login:Penguin2010/10/29(金) 17:57:22ID:NastfyD2
PT2で地デジ見てるし
http://www16.atwiki.jp/pt2_wiki/
■ このスレッドは過去ログ倉庫に格納されています