問題タブ [ms-media-foundation]
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.
video - メディアファンデーション。カスタムIMFMediaSourceを使用したビットマップからのビデオのエンコード
誰かが次の質問を明確にすることができますか?まともなソースコードスニペットまたは例は素晴らしいでしょう。私がこれまでに見つけた唯一の関連する例は、SDKのWavSourceです。
生のビットマップデータはどのようにエンコーダーに提示されますか?(A)RGB 32BPPまたは同様のものですか?
何かが入力ストリームでRequestSample()を呼び出すWavSourceサンプルに基づいて、これはデータ、再生時間、および期間を返します。それで、再生時間と持続時間が1秒の適切にフォーマットされたバッファーを返すのでしょうか?
ありがとう。
windows - 再生せずに DirectShow から生のビデオ フレームを取得できますか
Media Foundationを使用してメディアプレーヤーに取り組んでいます。VOB ファイルの再生をサポートしたい。ただし、Media Foundation は現在、VOB コンテナをサポートしていません。したがって、同じために DirectShow を使用したいと考えています。
ここでの私の考えは、DirectsShow グラフを使用して代替パスを取るのではなく、単にビデオ フレームを取得して、メディア ファンデーションの同じパイプラインに渡すことです。メディア ファンデーションには、ビデオ ファイルからフレームを読み取るだけの 'IMFSourceReader' があります。グラフを作成せずにフレームを取得し、再生サイクルを開始してから、レンダーピンからフレームを抽出しようとする、直接表示に相当するものはありますか? (より明確にするために、DirectsShow は、実際にビデオを再生しなくても生のフレームを提供できるアーキテクチャをサポートしていますか?)
ISampleGrabber について読んだことがありますが、非推奨であり、私のアーキテクチャには合わないと思います。私は以前に DirectShow に取り組んだことがありません。
ありがとう、モッツ
directshow - IMediaSample(DirectShow)からIDirect3DSurface9 / IMFSample(MediaFoundation)
私はカスタムビデオプレーヤーに取り組んでいます。私のアーキテクチャでは、DirectShow /MediaFoundationを組み合わせて使用しています。基本的に、私はDSを使用してVOBフレームを取得しています(MFではサポートされていません)。DirectShowからサンプルを取得することはできますが、レンダラーに渡すのに行き詰まります。MFでは、(IMFSampleから)Direct3DSurface9を取得し、IDirect3D9Deviceを使用してバックバッファーに表示します。
DirectShowを使用して、データバッファーオブジェクトとしてIMediaSampleを取得しています。これを変換してIMFSampleとして渡す方法がわかりません。他の人がサンプルからビットマップ情報を取得し、GDI+を使用してレンダリングしているのを見つけました。しかし、私のビデオデータには常にRGBデータが含まれているとは限りません。IMediaSampleからIDirect3DSurface9または多分IMFSampleを取得し、それをレンダリングに渡したいのですが、色空間の変換について気にする必要はありません。
私はこれに不慣れです。うまくいかない場合は訂正してください。ありがとう
rtsp - Media Foundation : GOV の長さが 1 より大きいと、カメラからの mpeg4 ストリームが歪む
クライアント側で Media Foundation を使用して、RTSP サーバーを介して AXIS カメラからのライブ mpeg4 ストリームを表示しています。
クライアント側のビデオは、GOV @ camera = 1 に設定すると、非常にうまく機能します。つまり、カメラは I フレームのみを送信します。しかし、GOV が増加し、カメラが P フレームも送信し始めると、私のビデオは定期的に突然歪んでしまいます。大量の帯域幅を消費するため、GOV = 1 を常に設定することはできません。
以下は、Media Foundation にサンプルを提供する RequestSample メソッドのコードです。
P フレームを処理するために属性を設定する必要がありますか??
どんな助けでも大歓迎です....
更新 (2012/02/22) :
いくつかの統計を実行したところ、I フレームがクライアントに到達しない場合があることがわかりました。つまり、GOV = 15 と仮定すると、15 番目のフレームごとに I フレームになるはずですが、(不規則な間隔で) 28 または 30 の後にクライアントが I フレームを受信することがあります。または 59 個の P フレーム。
ポインタはありますか??
ありがとう、
プラテック
directshow - カスタム仮想ビデオ キャプチャ デバイス
メディア ファンデーションと C++ は初めてです。しかし、Microsoft Expression Encoder で使用できる仮想ビデオ キャプチャ デバイスを作成したいと考えています。どの方向を見るべきか教えていただけますか?非同期で動作するもので、ソースはモバイル デバイスからのバイト ストリームになると思います。前もって感謝します。
ms-media-foundation - メディア ファンデーションで IMFMediaSample を再生するには?
readSample メソッドを使用して、ビデオからサンプルを抽出できます。これらのサンプルに含まれるデータを再生するにはどうすればよいでしょうか? または IMFSample の再生方法は?
windows-8 - Windows 8 グレースケール フィルターの例をデバッグまたは変更できない
Windows 8 (Metro) 向けに開発しています。Microsoft には素敵な MediaCapture サンプル プロジェクトがあります。ウェブカメラにグレースケール フィルターを適用できます。プロジェクトをビルドして実行しましたが、すべて問題ありません。それから、フィルターをいじり始め、独自のフィルターを作成しようとしました。修正したフィルタは正常にビルドされますが、アプリを実行すると元のフィルタが取得されるようです。元のバージョンがどこかにキャッシュされているようです。変更したフィルターにブレークポイントを設定しましたが、何も機能せず、dllmain() のブレークポイントでさえありません。私は何が欠けていますか?
ms-media-foundation - Windows Media PlayerがサードパーティのデコーダーMFTを呼び出す方法は?
Windows SDKのデコーダーのサンプルによると、私は自分自身がデコーダーMFTであることを認識していますが、サードパーティのMFTについて1つの質問があります。amrコーデックMFTを登録し、Windowsサンプルコードでデバッグします)、トポロジを手動で接続すると、正常に再生できます。しかし、Windows Media Playerを実行すると、amrコーデックを含むファイルが再生されません。
私は何をすべきか?Windows Media Playerは、コーデックMFTを自動的に呼び出すことができます。
他の質問は、directshowのようなMERITについてです。
visual-c++ - DirectShow & MediaFoundation プログラミングを基礎から学びたい。学習リソースに関する必要なヘルプ (Web サイトのリンクなど)
DirectShow & MediaFoundation プログラミングを基礎から学びたい。トレーニング リソース (Web サイト リンクなど) について必要なヘルプ。
DirectShow および MF プログラミングを開始するために必要なすべての前提条件。
これには、COM プログラミングの基礎が必要だと思います。私は DirectShow と MF をすぐに立ち上げる必要があるので、DShow と MF プログラミングを行うには、COM のどの部分を知っておくべきか教えていただけると非常に助かります。(時間があまりないので、DirectShow と MF を立ち上げる時間をもっと確保できるように、COM をすばやく処理する必要があります)。
COM のトレーニング リンクについて教えていただけると、とても助かります。
私は、COM、MFC、DirectShow、メディア ファンデーションなどの初心者です。
前もって感謝します。
visual-c++ - Microsoft Media Foundation Webcam インターフェイス
私は、Micrsoft Media Foundation を介してすべてのタイプの Web カメラから画像をキャプチャするための C++ インターフェイスに取り組んできました。いくつかのタイプの Web カメラに接続でき、さまざまな解像度と形式で画像をキャプチャできるコードが少しあります。
WinXP では、Direct Show ライブラリを使用して Web カメラのさまざまなパラメータ (ホワイト バランス、露出時間など) を変更できることを知っています。残念ながら、Web カメラから単一のフレームを簡単にキャプチャできる Direct Show ライブラリのインターフェイスは、Win7 の Direct Show から削除されています。Microsoft Media Foundation または Microsoft Media Foundation と組み合わせることができる他のライブラリを使用して、これらのパラメーターにアクセスする方法を知っている人はいますか?