BonDriver共有ツール総合 [sc](★0)
-
- 815
- 2015/01/26(月) 23:11:08.22
-
>803
検証してみました。
起動順で終了させるとなりますが、起動順の逆だとなりません。
★異常終了したパターン
1.A記号
2.B起動
3.A終了
4.B終了
☆異常終了しなかったパターン
1.A記号
2.B起動
3.B終了
4.A終了
ちなみにPX-S1UDでも同じでした。
-
- 816
- 2015/01/27(火) 01:29:36.32
-
>810
がんばってb25を移植してみたのですが、どうもうまく行きません。
アドバイスを頂けませんでしょうか。
http://pastebin.com/VGGajnGe
ビルドは普通にできるのですが、TVTestを使ってテストしたところ
オリジナルのarib25のソースだと、スクランブルは0ですが、画面は真っ黒。
>602のリンクのものだとTVTestが異常終了してしまいます。
ちなみにBonDriver_Proxy.dllはオリジナルをそのまま使ってます。
-
- 817
- 2015/01/27(火) 06:39:52.66
-
>>816
2点だけ…
1つは、そのリンク先のdiffの行数での88,89行目の
---
delete[] ppv;
+ B25Decoder *b25 = static_cast<B25Decoder *>(ppv[5]);
---
は、順序を入れ替える必要がある事です
でないと解放後メモリにアクセスする事になるので、サーバプロセスが落ちる可能性があるでしょうね
もう1つは、g_b25_enableを非0にする手段が提供されていない事です
b25パッチはこの値が0でない場合のみb25デコードを行うようになりますので…
Init()の中などで、
---
g_b25_enable = GetPrivateProfileIntA("OPTION", "B25_DECODE", 0, szIniPath);
---
とでもやって、iniから設定できるようにすれば良いかと思います
これだけで恐らく機能するようになるんじゃないでしょうか
#細かい事を言えば、windows版は一応GUIアプリなので、fprintfは他の出力手段に置き換えるか削除した方が
#良いとか、delayedReset()を削るなら_put_bytes/_get_bytesも削れるよとかありますけども
TVTestが異常終了と言うのが何なのか若干気になるところではありますが…
-
- 818
- 2015/01/27(火) 09:15:17.36
-
>>817
ご返答ありがとうございます。
g_b25_enableについては、TVTestが落ちるので、とりあえずオフにして試してみた感じです。
しかし、オフでも落ちるので、まったく原因がわからないところでした。
ちなみに落ちるとは、TVTestを起動して、TVTestがBonDriverにアクセスし、チャンネルに行ったところで落ちる感じです。
ご指摘の箇所を修正して再度試してみたいと思います。
また、不要な変数等、細かいご指摘もありがとうございます。勉強になります。
-
- 819
- 2015/01/27(火) 10:00:08.52
-
>>818
完成したらパッチうpして欲しいww
-
- 820
- 2015/01/27(火) 13:00:49.18
-
>>819
そのつもりです。
よくわからない中で作ってるので、むしろバグとか指摘して頂けたらと思います。
-
- 821
- 2015/01/27(火) 20:34:16.88
-
TVTestとEDCBでチューナーを沢山使っていたらエラーが出たので報告
大量に使っていてTVTestを閉じると時々発生する症状です。
EDCBで落ちるかはわかりません。
-
- 822
- 2015/01/27(火) 20:35:01.68
-
問題の署名:
問題イベント名: APPCRASH
アプリケーション名: BonDriverProxyEx.exe
アプリケーションのバージョン: 1.1.4.8
アプリケーションのタイムスタンプ: 54c54f74
障害モジュールの名前: ntdll.dll
障害モジュールのバージョン: 6.1.7601.18247
障害モジュールのタイムスタンプ: 521ea8e7
例外コード: c0000005
例外オフセット: 00038e19
OS バージョン: 6.1.7601.2.1.0.256.1
ロケール ID: 1041
追加情報 1: 0a9e
追加情報 2: 0a9e372d3b4ad19135b953a78882e789
追加情報 3: 0a9e
追加情報 4: 0a9e372d3b4ad19135b953a78882e789
-
- 823
- 2015/01/27(火) 21:09:45.31
-
再現方法わかりました。TVTestで短時間に同じチャンネルを指定して複数起動させると、TVTest終了時にBonDriverProxyEx.exeが落ちます。
短期間に違うチャンネルを指定して複数起動させても落ちません。
落ちる
TVTestMulti.exe d BonDriver_Proxy_T.dll /rch 1
Sleep, 0
TVTestMulti.exe d BonDriver_Proxy_T.dll /rch 1
Sleep, 0
TVTestMulti.exe d BonDriver_Proxy_T.dll /rch 1
落ちない
TVTestMulti.exe d BonDriver_Proxy_T.dll /rch 1
Sleep, 0
TVTestMulti.exe d BonDriver_Proxy_T.dll /rch 2
Sleep, 0
TVTestMulti.exe d BonDriver_Proxy_T.dll /rch 3
-
- 824
- 2015/01/27(火) 21:24:02.31
-
>>602のリンク先のパッチをもうちょっと変更して、上に少し書いた192バイトTSでの問題への対応と、
ライブラリとして使用する際に、ごく小さなサイズでput()を繰り返されると、ユニットサイズの検出や
TS同期ができない問題に対応したバージョンにしておきました
ttp://pastebin.com/zV1WvNb8
実用上は殆ど変わりませんが、気になってたので一応…
あと、手元では>>816さんのパッチに>>817の修正をやって機能するのを確認できました
-
- 825
- 2015/01/27(火) 21:25:46.44
-
>>821-823
おお、詳細な報告ありがとうございます
ちょっと確認してみます
-
- 826
- 2015/01/28(水) 01:44:21.74
-
>824
ご苦労さまです。
ところでパッチの
@@ -539,6 +539,9 @@
if(r < 0){
return r;
}
+ if(prv->unit_size < 188){
+ return ARIB_STD_B25_ERROR_NON_TS_INPUT_STREAM;
+ }
のところですが、
if(prv->unit_size < 188){
はいらなくないですか?
そのすぐ上にあるので。
-
- 827
- 2015/01/28(水) 01:47:48.38
-
>826
あ、select_unit_sizeで、prv->unit_sizeの値が変わるから
その判定をしてたんですね。
-
- 828
- 2015/01/28(水) 02:07:18.05
-
要望なのですが、BonDriver_Proxy.iniに
BONDRIVER=PT-S
BONDRIVER=PT-T
のように2つ書いて、地デジ,BS,CS全部1つのドライバーで
扱えるようにしていただけると便利かと思います。
-
- 830
- 2015/01/28(水) 09:24:28.96
-
BonDriver_ProxyやExで現在どのチューナーが使われているのか確認する方法ありますか?
-
- 833
- 2015/01/28(水) 21:25:36.73
-
>>831
BonDriverProxy_current(20150128).zipを試してみました。
結果同じ症状でしたが、再現の詳細がわかりましたのでご報告します。
TVTest.exe d BonDriver_Proxy_T.dll /rch 1
Sleep, 0
TVTest..exe d BonDriver_Proxy_T.dll /rch 1
で、TVTest.を2つ起動させてWin7のタスクバーから同時に2つ終了すると、BonDriverProxyEx.exeが落ちる。
個別に1つずつ間隔をあけて終了すると落ちない。
(Sleep 0 だと100%落ちます。Sleep 3000 だと落ちません。 Sllp時間に比例して落ちにくくなる?)
TVTest.を3つ起動させて、1つも先に、2つをタスクバーから同時終了してもBonDriverProxyEx.が落ちます。
他、こちらから補足したほうがいい情報がありましたら教えてください。
-
- 834
- 2015/01/28(水) 21:26:37.76
-
問題の署名:
問題イベント名: APPCRASH
アプリケーション名: BonDriverProxyEx.exe
アプリケーションのバージョン: 1.1.4.9
アプリケーションのタイムスタンプ: 54c8b264
障害モジュールの名前: ntdll.dll
障害モジュールのバージョン: 6.1.7601.18247
障害モジュールのタイムスタンプ: 521ea8e7
例外コード: c0000005
例外オフセット: 00038e19
OS バージョン: 6.1.7601.2.1.0.256.1
ロケール ID: 1041
追加情報 1: 0a9e
追加情報 2: 0a9e372d3b4ad19135b953a78882e789
追加情報 3: 0a9e
追加情報 4: 0a9e372d3b4ad19135b953a78882e789
-
- 835
- 2015/01/28(水) 21:29:02.75
-
1度だけ落ちないで下記ウィンドウが表示されたので、関係ないかもしれませんがご報告しておきます。
∇ ウィンドウ タイトル ∇
BonDriverProxyEx.exe - アプリケーション エラー
∇ スタティックテキスト ∇
OK
0x778b43e0 の命令が 0x00000005 のメモリを参照しました。メモリが read になることはできませんでした。
プログラムを終了するには [OK] をクリックしてください
-
- 836
- 2015/01/28(水) 21:54:25.56
-
ごめんなさい。
再現方法凄く簡単でした。
同じjチャンネルを開いたままタスクトレイからTVTestを終了するだけで、BonDriverProxyEx.が落ちました。
1)TVTest.Aを起動
2)TVTest.Bを起動
3)同じチャンネルにする
4)タスクトレイから2つ同時に終了
5)BonDriverProxyEx.が落ちる
凄く複雑化させてしまいました。すみません。
-
- 837
- 2015/01/28(水) 21:58:43.98
-
タスクトレイじゃなくて、タスクバー
-
- 838
- 2015/01/28(水) 23:59:17.46
-
>>833-837
ありがとうございます、対応してみました
タスクバーからまとめて終了と言う再現方法を絞り込んで頂けたおかげで、
原因らしきモノの特定が非常に楽でしたヽ(;´ー`)ノ今度は大丈夫ではないかと…
-
- 839
- 2015/01/29(木) 00:11:16.67
-
バグレポはかくありたい
-
- 840
- 2015/01/29(木) 01:09:03.92
-
>>788 で BonDriverProxyEx の Linux版が欲しいと言った張本人です。
作者さん、ありがとう!!これで完全にWindowsサーバから脱却できる。
-
- 841
- 2015/01/29(木) 01:14:14.11
-
>>832
828です。ありがとうございます!
デバッグビルドはGoogleドライブにあるのでしょうか?
-
- 842
- 2015/01/29(木) 01:42:23.20
-
>>840
もとから Windows "Server" でなければならない理由は何一つないだろ
-
- 843
- 2015/01/29(木) 08:40:16.66
-
>>842
-
- 844
- 2015/01/29(木) 08:55:58.21
-
>>842
-
- 845
- 2015/01/29(木) 09:28:30.71
-
>>842
-
- 846
- 2015/01/29(木) 11:16:36.84
-
bondriverproxyexつけた状態で元のBondriver-T0.dllとかのドライバ読むと
PT3ctrl.exeが落ちるんスけど
-
- 850
- 2015/01/29(木) 21:29:21.89
-
PS2コントローラーの刑にしたいね
-
- 851
- 2015/01/29(木) 22:34:37.29
-
なんで俺の書き方が悪いことになってんのw
-
- 852
- 2015/01/29(木) 22:43:40.51
-
>>851
あんたが 838 なのであれば
例えば Windows 7 と Windows Server 2008 R2 をはっきりと区別していないじゃないの ?
> Windowsサーバから脱却できる
この言い方したら Win6.1 でも Windows 7 ではなく Windows Server 2008 R2 って事になる。
たんに Windows から脱却できると言えば問題はない。
-
- 853
- 2015/01/29(木) 22:50:42.11
-
文脈くらい見ろアホ
-
- 854
- 2015/01/29(木) 23:22:14.81
-
やっとある程度整理出来たので貼っておきます。
http://pastebin.com/B5H8DBR6
改良点などありましたら教えて下さい。
-
- 855
- 2015/01/30(金) 00:17:42.12
-
NULLパケットを削るstripとEMM処理の有無もiniで設定できるといいんじゃないでしょうか。
B25Decoder::strip = GetPrivateProfileIntA("OPTION", "B25_STRIP", 0, szIniPath);
B25Decoder::emm_proc = GetPrivateProfileIntA("OPTION", "B25_EMM_PROC", 0, szIniPath);
-
- 856
- 2015/01/30(金) 00:44:57.87
-
>>852
べつにどうでもいいんだけどさ…。
「Windowsサーバ」って、別に「Windows Server」を指してなくて、
ただ単に24時間起動させとくサーバとしてのWindowsは必要なくなった、
と言いたかっただけなんだけど。
アンタは「Linuxサーバ」って聞いて「そんなディストリビューションはない!」
とか言っちゃう人?
-
- 857
- 2015/01/30(金) 01:45:51.49
-
ほーむさーばー
-
- 859
- 2015/01/30(金) 02:09:49.68
-
>>856
Windows の場合、 Windows Server ってのが Worstation と区別して販売されている。
たぶん、あんたの場合は Workstation な Windows を Server のような用い方していただけなのだろう。
些細なことだが "Windowsサーバー" という表現が悪かっただけだよ。
Windows使いからすれば、サーバー版というだけで
お前 Server 使うだけの意味あるのか ?
と突っ込まれる。
-
- 861
- 2015/01/30(金) 03:21:34.12
-
ちょっとでも人の上に立ちたい奴なんだよ
話を聞く周りの人間の眉毛は八の字になってて孤立
口癖は多分「バカばっかだな」「俺の言ってること分かる?」
-
- 863
- 2015/01/30(金) 09:20:59.62
-
>>806
早速の対策ありがとうございます。
テストがおそくなり、申し訳ありません。
BonDriverProxy_current(20150126) を使用し、サーバ側 ini に SANDBOXED_RELEASE=1追加、
結果は、状況変わらずでした。
前回、報告漏れのイベントログがありました。
0xc0000005 の1〜2秒前に、0xc00001a5 が発生しています。
別チャンネルを同時視聴する場合は、問題が発生しないので、
同一チャンネルへのリクエストでも、オプション設定で、
別チューナを利用するような実装は困難でしょうか?
障害が発生しているアプリケーション名: BonDriverProxyEx.exe、バージョン: 1.1.4.8、タイム スタンプ: 0x54c54f74
障害が発生しているモジュール名: msvidctl.dll_unloaded、バージョン: 6.5.9600.16384、タイム スタンプ: 0x5215828a
例外コード: 0xc00001a5
障害オフセット: 0x00155430
障害が発生しているプロセス ID: 0x6dc
障害が発生しているモジュール パス: msvidctl.dll
レポート ID: f566afa5-a812-11e4-9745-0007e90e95ee
障害が発生しているアプリケーション名: BonDriverProxyEx.exe、バージョン: 1.1.4.8、タイム スタンプ: 0x54c54f74
障害が発生しているモジュール名: msvidctl.dll_unloaded、バージョン: 6.5.9600.16384、タイム スタンプ: 0x5215828a
例外コード: 0xc0000005
障害オフセット: 0x0008b880
障害が発生しているプロセス ID: 0x6dc
障害が発生しているモジュール パス: msvidctl.dll
レポート ID: f63a970a-a812-11e4-9745-0007e90e95ee
-
- 864
- 2015/01/30(金) 09:21:57.57
-
アスペの人は文脈が読めずに書いてある字面に引っ張られるからな。
それでもツッコみたいところはあるけど無意味なんでやめとく。
有益な話が出てくるわけでもなく無駄にスレを消費するだけなんで、触りなさんな。
このページを共有する
おすすめワード