問題タブ [directshow]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
com - COM: IMoniker::BindToObject の IBindCtx* パラメータを NULL にすることはできますか?
IMoniker::BindToObject 関数を使用しており、MSDN の記事を読みました。
この記事では、最初のパラメーターを NULL にできるとは述べていませんが、次のページのサンプル コードでは引数として NULL を使用しています。
http://msdn.microsoft.com/en-us/library/dd407292%28VS.85%29.aspx
このパラメーターの使用法がよくわからず、関数によって返される追加のバインディング情報は必要ないため、
「引数をNULLにできますか?」と聞きたいです。
前もって感謝します。
c# - Directshow & .Net - ビットマップは画像の左側に右からストライプを表示しますか?
サンプル画像:
DirectShow.net を使用して、Web カメラの映像をプログラムに取り込みます。これを達成するために、ソース カメラと VideoMixingRenderer9 をグラフに追加しています。
その部分はすべて問題なく動作していますが、GetCurrentImage(out lpDib) を使用してフレームを抽出する部分には、奇妙な問題としか言いようのないものがあります。
私がやっていることは、Marshal.PtrToSTructure を使用して lpDib から BitmapInfoHeader を作成し、幅/高さ/ストライド/& ピクセル形式を計算することです。
問題は、ビットマップに保存されている画像を見ると発生します-実際には右側から来た左側に幅10ピクセルの線があります!
GetCurrentImage 呼び出しから取得したデータが実際には上下逆になっていることに注意してください。Cap.RotateFlip の呼び出しに注意してください。
私はここで完全に迷っています。ある種のオフセットの問題のように思えます。ストライドを少し調整してみましたが、役に立ちませんでした (奇妙な斜めの外観を作成するだけです)。
directshow - DirectShowフィルターをMediaFoundationMFTに移行する簡単な方法
私はいくつかのカスタムDirectShowフィルターを持っています(エンコード/デコンディング/ Mux / Demux用)。
そして、MediaFoundationでMFTとして使用したいと思います。
私は何人かの人々が言うのを聞いた:
「Microsoftは、すべてのDirectShowフィルターがMFTに移行するためにいくつかのコードを追加するだけでよいと主張しています」
実際には、私は迅速な方法があるとは思えません。メソッド、DShowとMediaFoundationの間のAPIが異なるためです。
しかし、誰かが私にこの情報を教えてくれたので、私は尋ねたいと思います:
「これは本当ですか?そしてどうすれば迅速な移行を行うことができますか?」
前もって感謝します。
c# - DirectShow.Net で IOverlay インターフェイスを使用できますか
私は DirectShow にかなり慣れていないので、今のところ自分のやり方を感じているところです。Directshow グラフの directshow レンダラー ウィンドウを WPF アプリ内でホストしたいと考えており、現在 HwndHost クラスを使用してこれを実現しようとしています。HwndHost に必要なのは、ビデオをレンダリングしているウィンドウへのハンドルです。GetWindowHandle メソッドを使用してハンドルを取得できるように、IVideoWindow インターフェイスのピンを列挙し、IOverlay を照会してハンドルを取得する例を見つけました。
問題は、IOverlay が DirectShow.Net で利用できないように見えることです。DirectShow.Netについてのページを読むと、IOverlay は、「これらのインターフェイスはソース コードにありますが、推奨されておらず、文書化されておらず、Ole Automation を対象としているか、テストできないため、テストされておらず、テストされないことを意味する」という見出しが付いた表にリストされています。 " .
では、この定義にアクセスするにはどうすればよいのでしょうか? ライブラリとして配布されているビルドから除外されているので、自分でソースからライブラリをビルドする必要がありますか?
または、私がやろうとしていることを行うためのより良い方法はありますか? 私がこのすべてのものに慣れていないと言ったように、どんな助けも感謝します。
前もって感謝します。
編集: 多くの DirectShow 開発者はいないのですか? それとも、これはばかげた質問ですか?
flash - 「偽の」DirectShow ビデオ キャプチャ デバイス
これは、私が尋ねた最後のいくつかの質問に接しています。
IP ウェブカメラ (SNC-RZ25N) から Flash Media Server にビデオを取得する必要があります。Windows を使用する必要はありませんが、作業が簡単になる場合は使用します。(Flash Media Live Encoder は Windows 専用のプログラムです。)
ポイント A からポイント B へのさまざまなルートを検討しましたが、Flash Media Live Encoder を使用して Flash Media Server にパブリッシュするのが最も簡単なようです。次に、ブリッジしなければならない唯一のギャップは、Flash Media Live Encoder で読み取り可能なビデオ ソースを取得することです。
もちろん、ソースはネットワーク上にあり、FMLE は「Microsoft DirectShow 互換のビデオ キャプチャ デバイス」を探します。フリーではない SDK ( http://www.e2esoft.cn/vcam/vcamsdk.asp ) を見つけたので、そのようなデバイスを偽装して、できればカメラ ストリームを FMS に送信できます。
私が使用すべき別のプログラムまたはSDKを知っている人はいますか? 必要以上に物事を複雑にしていませんか?
c++ - WMAsfWriter を使用してカメラとオーディオ ソースをリアルタイムでエンコード - ジッターの問題
ビデオ キャプチャ フィルタ (画面をつかむ)、スプリッターを介して WM Asf Writter 出力フィルターと VMR9 レンダラーに接続された既定のオーディオ入力フィルターで構成される DirectShow グラフを作成します。これは、プレビューと一緒にディスクにリアルタイムのオーディオ/ビデオ エンコーディングが必要であることを意味します。問題は、選択した WM プロファイル (非常に低い解像度のプロファイルであっても) に関係なく、出力ビデオ ファイルが常に「ジッター」になることです。数フレームごとに遅延が発生します。オーディオは問題ありません - オーディオにジッターはありません。CPU 使用率は 10% 未満と低いため、これは CPU リソースの不足の問題ではないと考えています。フレームに正しくタイムスタンプを付けていると思います。その理由は何ですか?
以下は、問題を説明するレコーダー ビデオへのリンクです。
http://www.youtube.com/watch?v=b71iK-wG0zU
ありがとうドミニク・トムザック
c# - ソースグラフを探すときのGMFBridgeの問題
GMFBridgeを使用して複数のストリームバッファグラフを切り替えようとしていますが、2つの問題があるようです。
グラフの図は次のとおりです。http://massivefailure.net/dshowgraphsalt.jpg
ブリッジレンダリンググラフに接続されているブリッジソースグラフのVMRは非常に不安定で、4〜5秒ごとに新しいフレームが表示されます。
ブリッジレンダリンググラフに接続されているブリッジソースグラフを探すと、すべての出力(接続されているブリッジソースとレンダリンググラフのVMR、および外部レンダラーの出力)が約1分間停止します。問題#1からの途切れが再開されると、なくなります。
シークする前にブリッジレンダリンググラフを切断して停止し、シーク後に再接続して実行しようとしましたが、フリーズするか、接続されたブリッジソースグラフのVMRに約10秒ごとにフレームが表示されるという問題があります。
ある種の重要でない問題:
私は、VMRがプレビューピンに接続された無限のTシャツがあるスマートTシャツを持っていましたが、シークした後、ライブストリームに追いつくまで、通常の1.5〜2倍の速度で再生しました。スマートティーに戻ることができるようにそれを修正するための正しい方法はありますか?
visual-c++ - DirectShow: ieee1394id <- USB デバイスについても説明していますか?
DirectShow ライブラリの実装を理解しようとしています。
DirectShow 用語で IEEE1394-id とは何ですか?
IEEE1394 はファイヤーワイヤーです。
通常、USB デバイスの ID も記載されていますか?
IAMExtDevice::get_ExternalDeviceID() によって取得されます