【C++】 DirectX初心者質問スレ Part37 【C】at TECH
【C++】 DirectX初心者質問スレ Part37 【C】 - 暇つぶし2ch554:553
13/01/19 23:38:16.36
(続き)
SDKのソースコードを見たところ、PC版と異なりCEでは
動的再接続をサポートしていないように感じています。

しかし、PCと組込でのサポートの差や
そこらへんの具体的な情報がネットを調べてもなかなか出てこず、
一体どうなっているのか分かりません。

情報をお持ちの方は、教えて頂けないでしょうか。
よろしくお願いします。

555:553
13/01/20 07:34:12.76
あと、残念ながらCEで動的再接続をサポートしていない場合、
どのような開発をすれば対応可能なのかについても情報を求めています。

ご存知の方はよろしくお願いします。

556:デフォルトの名無しさん
13/01/20 14:05:56.63
まずスレ違い

557:デフォルトの名無しさん
13/01/20 14:10:10.69
こちらはヘッポコなんで教えられないけどポイントはこの辺かも?

URLリンク(blog.firefly-vj.net)

558:553
13/01/20 19:15:12.33
>>556
スレ違いの件申し訳ないです。
プログラマの板を板違いで追い出されて来ました。
そして、プログラムの板では自由にスレを立てられないようでしたので、
仕方なく、ここに来ました。

DirectXだと、DirectShowとは完全に無関係ではないと思いますので、
識者がいらっしゃるかと期待して、書き込みました。

559:デフォルトの名無しさん
13/01/20 19:43:21.57
Directがついてるものの、DirectXは独自的な発展を遂げて、もはや別物といえるほど差ができている。
DirectShowもDirectXSDKから追い出された経緯があるしね。

しかし、ただでさえ茨の道のDirectShowをWindowsCEで使おうとは、勇敢なお方だ。

昔、世話になった「DirectShowと戦うスレ」は、もうないな。
と思いきや、どうもおまいさんが立てたらしきスレがあるなw

どうしてもDirectShowを使わにゃならんのかえ?
Windows7系なんだし、MediaFoundationのほうが適している、ということはないかな?

どうしてもDirectShow、な場合だけど、
「動的」というのは、フィルタグラフの再生を停止せずともフィルタのピン接続を替えたいということになるのかな?
ここんとこ詳しくおせーて。

560:553
13/01/20 20:45:41.43
>>557
書き込みありがとうございます。
DShowフィルタをCEに移植する際のビルド設定等の解説サイトのようですね。
ここらへんの話は心得ています。
気にしているのは、SDK自体の機能のPCとCEとの差です。

561:553
13/01/20 20:59:44.78
>>559
そうかもしれません。今後そうなっていくでしょう。
しかし今の私の仕事では、顧客の希望でDShowが要求仕様になっています。

動的再接続は、ご指摘のとおり、フィルタグラフを止めずに、
ピンを繋ぎ変えることです。詳細は下記URLにあります。

//msdn.microsoft.com/ja-jp/library/cc354335.aspx
//blog.firefly-vj.net/2008/12/blog-post.html

562:デフォルトの名無しさん
13/01/20 21:05:07.99
>>561
ほんとに動的じゃないとダメ?
「停止」→「ピンの接続変更」→「再生」
ってやっても、画面では一瞬プツッってなるか、ほとんど分からないくらいだと思うよ。

563:デフォルトの名無しさん
13/01/20 21:07:21.74
デベロッパならMSの技術サポート使え
ネットで探し当てられない情報ならそれは金が必要な情報だってことだ

564:553
13/01/21 01:00:32.18
>>562
動的再接続を使って設計してから、
どうもMSDNライブラリの記載内容とCE版SDKの中身が違うらしいことに気付いて、
ガーン||||||||||凹[◎凸◎;]凹||||||||||というのが今の状況です。

選択肢はいくつかあります。
(1)SDKソースコードに手を加えず、若干の設計変更とピン改造で動的再接続に対応する。
(2)SDKソースコードに手を加えて動的再接続に対応する。
(3)動的再接続を使わない別の方法を検討する。

565:553
13/01/21 01:02:50.25
(続き)
確かに、動的再接続を使わない手(3)も考えられます。
それでも、レンダラフィルタを止めることはできません。
レンダラフィルタを止めずに、ピンを接続しなおすフィルタだけを
止めるようなやり方をして、うまくいくかどうか。
試してみる価値はあると思います。

566:553
13/01/21 01:15:39.60
(続き)
でも、できれば(1)で、それがダメなら(2)でやりたいと思っています。
そこらへんに詳しい方は、いらっしゃらないでしょうか。

今回の場合、ポイントはピンです。
DirectShowのCBasePinクラスを継承して特殊なピンを作ったり、
CBasePinクラスを書き換えてSDKを組みなおしたりしたことのある方は、
いらっしゃいませんか。

567:デフォルトの名無しさん
13/01/21 04:52:59.65
どうみても(1)

568:デフォルトの名無しさん
13/01/21 22:55:36.37
とりあえずWindowsCE3.0のドキュメントは見つけたので
参考になるか分からないけれど載せときます(英語のみ)

URLリンク(msdn.microsoft.com)

569:553
13/01/22 01:22:06.15
>>563
確かにそうですね。でもうちは弱小なのでとても。

570:デフォルトの名無しさん
13/01/23 00:13:36.89
やべーPSSetShaderResources()とOMSetRenderTargets()の順序で詰むところだった。
読み込み元にも書き込み先にもなるテクスチャを扱うときに、
設定中に一時的にでもRW両方になっちゃうようにSetしてしまうと無効になるから
その後Draw系関数が実行される時点でRWが分離されてても、っていうかされてるように見えてもダメなんだ。

面倒だったらとりあえずダミーのR用テクスチャとW用テクスチャを用意して、
毎回一旦それにSetしておくみたいな逃げでいいのかな。
速度は求めていないからこそできるのかもしれないけど。

上記のどっちの関数のリファレンスにも書かれていて気づいきました。人間真面目が一番ですね…。
ID3D11DeviceContext::PSSetShaderResources
URLリンク(msdn.microsoft.com)(v=vs.85).aspx

571:デフォルトの名無しさん
13/01/23 16:37:29.56
unityじゃなくて直にdirectxを触る意味ってなにかありますか?

572:デフォルトの名無しさん
13/01/23 17:05:59.32
Unityみたいなのが作れる

573:デフォルトの名無しさん
13/01/23 17:07:03.29
diretcShowで動画キャプチャーする時にaviじゃなくてwmv形式で保存する方法教えてください
それと音声だけをwavでキャプチャーする方法も教えてください

574:デフォルトの名無しさん
13/01/24 00:08:16.81
>>549を書いた者ですがこのサンプルは>>245(のリンク先)でとっくに既出でした失礼しました。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch