[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 06/11 05:26 / Filesize : 109 KB / Number-of Response : 378
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

DirectShowと戦うスレ Part 4



1 名前:デフォルトの名無しさん [2008/06/22(日) 18:38:21 ]
DirectShowプログラマーのみなさん。
メソッドのデッドロックとか、わけわからん現象多くないすか。
このスレに怒りやテクをぶつけましょう。

関連スレ
Win32API質問箱 Build67
pc11.2ch.net/test/read.cgi/tech/1212931246/
くだすれDirectX(超初心者用) part.3
pc11.2ch.net/test/read.cgi/tech/1193605500/
【C++】 DirectX初心者質問スレ Part17 【C】
pc11.2ch.net/test/read.cgi/tech/1207702556/
DirectX総合スレ (Part8)
pc11.2ch.net/test/read.cgi/gamedev/1205306118/
【PureVideo】DirectX Video Acceleration【AVIVO】
pc11.2ch.net/test/read.cgi/tech/1178285897/

328 名前:デフォルトの名無しさん [2009/02/24(火) 12:05:30 ]
ISampleGrabbberCBコールバックのBufferCBで受け取るDIBデータを
指定したサイズで受け取るにはどうしたらいいですか?

329 名前:328 [2009/02/24(火) 15:01:36 ]
現状では動画のオリジナルサイズになっているのですが
これをVideoWindowで再生させてるウィンドウサイズと同じ大きさにしたいです

330 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 16:02:56 ]
リサイズ機能なんてねーよw
普通はレンダーが勝手に表示サイズ合わせるだろ

331 名前:328 mailto:sage [2009/02/24(火) 16:08:50 ]
そうですか。やっぱり無いですか・・・

332 名前:デフォルトの名無しさん [2009/02/24(火) 22:55:54 ]
すみません。最近ARIBの仕様書がWebで閲覧できることをしったので、
地デジチューナーからSI情報を取得して、中身をさわってみたいと
思いました。
DirectShowでそんなかんじのことができるのでしょうか?
(SIのパースまで、という意味ではなく、データセクションが
抜ければ十分うれしいです)

参考になるURLなどございましたらご教授の程お願いできますでしょうか?
よろしくお願いいたします。

333 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 23:33:05 ]
>328
質問の内容を十分理解せず、脊髄反射的回答しちゃうけど、
動画のリサイズはDESでできた気がするデス。

334 名前:328 mailto:sage [2009/02/25(水) 10:01:30 ]
>>333
あ、すみません。
DESってどんなのでしょうか?
何か参考になるサイトとかあったら教えてください><

335 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 00:27:55 ]
Directshow Editing Servicesの略DES。
この辺を参考にすると良いDES。
ttp://msdn.microsoft.com/ja-jp/library/ms867700.aspx
ttp://msdn.microsoft.com/ja-jp/library/dd148668.aspx

ほとんど329しか読まずに応えてしまったけど、
・ソースそのものが変化してしまう
・再生中にサイズを変えるとかは不可能
なんで要注意。

336 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 01:13:01 ]
質問失礼します。
4chの音声を同期を取りながら再生する方法を一週間ほど考えているのですが、やり方が全くわかりません。
2つのオーディオチャンネルを結合して、ステレオにするフィルタはCodeZineで見つけたので作ってみました。
ただ、これだと(当然ですが)LとRから再生されてしまうので・・・。
単純にLとL、RとRを加算して一つのステレオとして出したいのですが、どうすれば良いのでしょうか?
お知恵を貸して下さい、よろしくお願いします。



337 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 02:20:38 ]
意味がわからん

338 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 08:40:43 ]
Codezineのサンプルソースをベースに、そういうフィルタをつくればいいじゃん。

339 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 10:39:12 ]
ミキシングしたいとか?

340 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 15:19:59 ]
最終的に何がしたいのだろうね?
自分でMTRつくりたいのか?w

341 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 15:27:11 ]
>>340
お前みたいなクズはレスするな。

342 名前:デフォルトの名無しさん [2009/03/18(水) 03:08:51 ]
あげ
ミキシングしたいのかな?質問が意味不明

343 名前:デフォルトの名無しさん [2009/03/18(水) 14:10:56 ]
有識者の皆様に質問です。

デバッグビルド時にフィルタグラフをROTに登録しています。
ttp://msdn.microsoft.com/ja-jp/library/cc370087.aspx

以前は普通に GraphEdit から "Connect to Remote Graph" で接続できていたのですが、
今日久しぶりに当該コードをメンテナンスしようとしたら接続できなくなっていました。

[症状]
 - "Connect to Remote Graph" でリストには表示される。
 - 選択してOKをクリックしても、何もグラフ上に表示されず。
 - 再度 "Connect to Remote Graph" でリストを表示すると、見えなくなっている。
 - デバッグ実行でも、コマンドラインからの実行でも症状変わらず。

この問題について、何か心当たりのある方はいらっしゃいますか?

344 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 15:17:56 ]
>>343
Vista で実行して困っているのなら
msdn.microsoft.com/en-us/library/ms787252.aspx

345 名前:343 mailto:sage [2009/03/18(水) 16:45:18 ]
>>344
ありがとうございます。
環境書いてませんでした。OSはXP(32bit)です。
念のためこの環境でも proppage.dll を登録してみましたが、やはり変わりませんでした。

なお、ひとつ間違いがありました。
pROT->Register() の第1引数になぜか 0 を指定してました。
ROTFLAGS_REGISTRATIONKEEPSALIVE に変更することで、何度 "Connect to Remote Graph" を
選択してもリストに "pid 0xXXX(ddd) IFilterGraph = XXXXXXXX" が出てくるようにはなりました。
ただ、やはり選択→OKしてもフィルタ構成は表示されません。うーむ・・・。

ちなみに、Windows SDK 6.0A/6.1 に含まれる GraphEdt ではリストにすら
表示されませんでした。
指定すべきモニカの文字列フォーマットが変わってたりするのでしょうか・・・。

346 名前:343 mailto:sage [2009/03/18(水) 17:07:55 ]
解決しました。
きっかけはこちら。
ttp://questionbox.jp.msn.com/qa1612988.html

quartz.dll を登録したら治りました。
ええー、quartz.dll ってデフォルトで登録されてませんでしたっけ?って感じですが・・・。

なお、この状態なら Windows SDK 6.0A/6.1 に含まれる GraphEdt でも接続できました。
でもタイミングによってなぜか Runtime Error が出ます。


どうもお騒がせしました。



347 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 17:11:09 ]
>>345
regsvr32 "C:\WINDOWS\system32\quartz.dll"

348 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 17:11:39 ]
orz

349 名前:デフォルトの名無しさん [2009/03/19(木) 02:31:25 ]
347
明日はいいことあるさ

350 名前:デフォルトの名無しさん [2009/03/23(月) 11:02:01 ]
RenderFileの戻りが遅いのですがこれを早くする方法を教えてください

351 名前:デフォルトの名無しさん [2009/03/23(月) 11:53:31 ]
なぜ遅いか考えたことある?



352 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 12:24:34 ]
俺のRenderFileは早いよ

353 名前:デフォルトの名無しさん [2009/03/23(月) 13:13:05 ]
早くする方法があったら教えてください

354 名前:デフォルトの名無しさん [2009/03/23(月) 13:17:47 ]
お前、馬鹿だろ



355 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 15:05:10 ]
「RenderFileの戻りが遅い」と判断する根拠がよく分からないよ。
サンプルプログラムやWMPに比べて異常に遅いと体感できる、
もしくは実測してこうだった、などの比較はできてますか?


とりあえずエスパーで二つほど。

 ・インストールされているコーデック(パック)を片っ端からアンインストールする
 ・予め使うことが予定されているフィルタをフィルタグラフに登録しておく

あとはもう少し詳しい状況を教えてもらえれば、他にも何か言えることがあるかも。

356 名前:デフォルトの名無しさん [2009/03/23(月) 15:23:29 ]
RenderFile関数から抜けてくるまで2秒くらいかかります。
早くする方法があったら教えてください



357 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 15:25:57 ]
速くするためには、まず何の理由で遅いのかを調べようぜ

358 名前:デフォルトの名無しさん [2009/03/23(月) 17:56:43 ]
RenderFileの戻りが遅い理由って舞い糞ソフトに聞けばいいんですかね?
関数の内部事情なんて僕には検討もつきませんが。
っていうか、知らない人はレスしないで下さい。ウザイだけですよっと。

359 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 18:11:52 ]
うちじゃ2秒もかからないからな。
お前のとこだけで遅いのに理由がわかるわけないだろう。

360 名前:デフォルトの名無しさん [2009/03/23(月) 18:16:06 ]
ごめん2秒じゃなかった1秒ちょいだった
ちなみにファイルサイズは4GBくらい
まあ、どうせお前らの持ってるエロ動画なんて100MB前後だろ?

361 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 18:35:09 ]
お前の持ってるちんこ同士がけこーんしてるような動画は1ビットも要りません

362 名前:デフォルトの名無しさん [2009/03/23(月) 18:51:50 ]
どうせDVDでも引っこ抜いて4GBなんだろ、



363 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 19:02:34 ]
しかたないなあ。
たまたまシンプルな再生プログラム書いてたのでテストしてみたよ。
6GB超のAVIファイルを RenderFile() に突っ込んで要した時間は 169[ms] でした。

はい、次の情報どうぞ。

364 名前:デフォルトの名無しさん [2009/03/23(月) 19:05:04 ]
すんませんでしたとしか言いようがありませんよ

んー、とりあえずお前らのソースみてやるからスレに貼ってください。

365 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 19:15:01 ]
HRESULT SimplePlay(LPCWSTR lpwstrFile)
{
CComPtr<IGraphBuilder> m_pGraph;
CComQIPtr<IMediaControl, &IID_IMediaControl> m_pControl;
CComQIPtr<IMediaEvent, &IID_IMediaEvent> m_pEvent;

HRESULT hr = CoInitialize(NULL);
if (FAILED(hr)) return hr;
hr = m_pGraph.CoCreateInstance(CLSID_FilterGraph);
if (FAILED(hr)) return hr;
hr = m_pGraph.QueryInterface(&m_pControl);
if (FAILED(hr)) return hr;
hr = m_pGraph.QueryInterface(&m_pEvent);
if (FAILED(hr)) return hr;

366 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 19:16:22 ]
DWORD tTmp = timeGetTime();
hr = m_pGraph->RenderFile(lpwstrFile, NULL);
tTmp = timeGetTime() - tTmp;
if (FAILED(hr)) return hr;

hr = m_pControl->Run();
if (FAILED(hr)) return hr;

for (;;) {
long code = 0;
hr = m_pEvent->WaitForCompletion(0, &code);
if ((FAILED(hr) && hr != E_ABORT) || code == EC_COMPLETE) {
break;
}
}



367 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 19:17:27 ]
CoUninitialize();
return S_OK;
}

>>365-367 まとめてみてください。
RenderFile()を抜けた後の tTmp の値を教えてね。
エラー処理に関するコメントは No thank you です。

368 名前:デフォルトの名無しさん [2009/03/23(月) 19:24:45 ]
>>365-367
ありがとうございます。
やってることはお前いや貴様と一緒ですね
やっぱその他の環境の問題なんですかねこれ。
あ、ちなみにOSはXP64ですよですよ。
もうちょい調べてみます。わざわざありがとうございました、

369 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 22:34:07 ]
EnumPins グラフ 構築
で検索

370 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 10:53:26 ]
つーか情報の小出しに付き合ってられんわ

371 名前:デフォルトの名無しさん [2009/03/24(火) 11:38:52 ]
>>370みたいな奴って知らないのにレスするタイプだよね

372 名前:デフォルトの名無しさん [2009/03/24(火) 11:47:37 ]
>>371みたいな奴って煽りのしかレスできないタイプだよね



373 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 11:50:58 ]
最初の情報は遅いってだけ
次に2秒かかると出て
次に4GBと出て
自分のソースは出さずに人に要求して
それからOSがXP64と出た

で、>>355のレスには何も反応していない。
これで原因分かるのに間抜けだよな。

374 名前:デフォルトの名無しさん [2009/03/24(火) 12:26:25 ]
単細胞って幸せだと思った

375 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 14:44:08 ]
最初の書き込みでゴミって判るのに、反応する奴がいるのが不思議

376 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 14:59:53 ]
過疎るくらいなら枯れ木も山の賑わいくらいに思ってた方がいいかな、と思って。
不快だったらゴメンね。



377 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 15:05:55 ]
ごめんねほんと






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<109KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef