問題タブ [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.
bitmap - DirectShowでムービーファイルをビットマップファイルに変換する
AVI、MOVなどのムービーファイルをビットマップに変換したい-JPEG、JPEG2000、TIFFなどのファイル。DirectX
/ DirectShowでそれを実現することは可能ですか?
ffmpegのAVCodecははるかに良い選択ですか?
それは十分に文書化されていますか?
この問題を実現する他の可能性はありますか(Qtでfe)?
video - DirectShowの逆再生
現在、正しく再生されるDirectShow.NETグラフがありますが、逆方向にも再生できるようにしたいと思います(最後から開始し、最初から逆方向に再生します)。
IMediaSeeking :: SetRate(double)メソッドを試してみましたが、これは正の値に対してのみ機能します。負の値で試してみるとクラッシュします。
ヘルプ!
私は.aviビデオファイルを使用していますが、それでうまくいく場合は、さまざまな形式を試してみることができます。
licensing - DirectShowとはどのようなライセンスであり、どのような入力と出力を処理できますか?
DirectShowを使用してプロジェクトを作成したい。DirectShowにはどのライセンスがありますか?そのまま使用できますか、それともsthを気にする必要がありますか?
DirectShowが処理できる入力コーデックと出力コーデックは何ですか?
video-streaming - DirectShow API を使用して HDV/HD ストリームをキャプチャすることは可能ですか?
現在、DirectShow API を使用して、標準解像度のビデオを Firewire 経由でアプリケーションにストリーミングしています。悲しいことに、このコードはほとんどがインターネット上のさまざまな場所から集められたものであり、暗号化されていると言うのは控えめな表現です。
ここで、同じ方法を使用して、firewire/usb 2.0 経由で HDV/HD ビデオをストリーミングできるようにしたいと考えています。DirectShowでこれを行うことは可能ですか? 適切な用語を使用していないことをお許しください。私自身は、そのプロセスを表面的にしか理解していません。不可能な場合、どのような側面が関係していますか。他に知っておく必要のあるテクノロジはありますか?
ありがとう!ダニエル
visual-c++ - DirectShowを使用してライブカメラフレームをRGBでキャプチャする方法
ライブ処理と表示のために、DirectShowを介してライブビデオキャプチャを実装しています。(拡張現実アプリ)。
ピクセルに簡単にアクセスできますが、SampleGrabberにRGBデータを提供させることができないようです。デバイス(iSight-VMWareでVC ++ Expressを実行)は、MEDIASUBTYPE_YUY2のみを報告します。
大規模なグーグルを行った後でも、DirectShowがこの種のものに組み込みの色空間変換を提供することになっているのかどうかはわかりません。YUV <-> RGB変換が組み込まれていないと報告しているサイトもあれば、RGBサブタイプを使用してISampleGrabberでSetMediaTypeを呼び出すだけでよいと報告しているサイトもあります。
どんなアドバイスも大歓迎です、私はこれに夢中になるでしょう。以下に提供されるコード。その点に注意してください
- RGBデータを提供しないことを除いて、コードは機能します
独自の変換フィルターを実装できることは承知していますが、考えられるすべてのデバイス形式を予測する必要があるため、これは実現可能ではありません。これは比較的小さなプロジェクトです。
/li>
c# - .NET での AVI ビデオの変換
私はC#.Netでプロジェクトをやっています。AVI ビデオのフレームを読み込んで編集し、新しい AVI ファイル (変換フィルターのようなもの) に書き込みたいと思っていました。
独自のダイレクト ショー トランスフォーム フィルタを作成できるプロセスは知っていますが、それは C++ で作成されるため、避けたかったのです。
とにかく.NETでこれを達成する方法はありますか?
delphi - DirectShow IVideoWindow とフルスクリーン -- D3D プライマリ サーフェスに書き込めますか?
ゲームを書いていて、途中でカットシーンが欲しいです。ウィンドウ モードでは、DirectShow クラスは完全に機能し、簡単に使用できます。しかし、ゲームがフルスクリーンの場合、DirectShow でフルスクリーンのカットシーンを表示できません。
基本的に、D3D デバイスを初期化すると、IVideoWindow.put_Fullscreen(true) でもビデオを表示できません。私は、DirectShow が D3D デバイスでフルスクリーンを実行できないと推測しています。
そこで、カットシーンの再生中に D3D デバイスを解放し、その後再度初期化してみました。これはうまく機能しているように見えますが、DirectShow がフルスクリーンで再生されると、アプリのメイン ウィンドウからフォーカスが奪われ、終了しても元に戻らないようです。その後、DirectInput はデバイスの取得に失敗します (「アクセスが拒否されました」というエラー コードが表示されます)。取得前に SetForegroundWindow() を試してみましたが、直らないので結局問題ないのかもしれません。
とにかく、要するに、私が欲しいのは、D3D アプリの途中でフルスクリーンのカットシーンだけです。これを達成するための好ましい方法はありますか?DirectShow を D3D プライマリ サーフェスに出力することで、それを行うことはできますか? それは私が抱えている問題を解決すると思います。
windows-mobile - カメラプレビュー時のフレームレートの問題
Windows Mobile プラットフォーム用のカメラ ドライバー ドライバーを作成しています。
プレビューを正しく表示するアプリケーションに問題がありますが、レートが非常に低くなります (おそらく 1 または 2 フレーム/秒)。
調査の結果、フレームがセンサーから (45 ミリ秒ごとに) 正常に送信されていることがわかりましたが、そのフレームを保存するためのハードウェア イベントが発生すると、使用可能なバッファーがなく、フレームがドロップされます。
この場合、バッファーは IOCTL_CS_BUFFERS/CS_ENQUEUE API を介してアプリケーションによって提供されます。問題は、バッファが非常に低いレートで提供されることであり、これがプレビューが正常に機能しない理由です。
問題は、PIN_IOControl が Directshow ファームウェアから呼び出されるため、この API がこのレートで提供される理由を調査できないことです。
以前に説明した問題は、テスト アプリケーションに関するものです。
Windows Mobile カメラ アプリケーションを使用している場合、プレビューは画像モード (約 15 フレーム/秒) で問題ありません。しかし、ビデオ モードをオンにすると、プレビューには 1 秒あたり約 2 フレームしか表示されません (使用しているテスト アプリケーションのように)。
これら 2 つのモードの唯一の違いは、ビデオ モードのプレビューでは QCIF 形式が使用されているのに対し、キャプチャ モード (画像) のプレビューでは QVGA 形式が使用されていることです。
お手伝いありがとう。
ファブリス。
c++ - Windows開発用のGStreamerまたはDirectShow?
私は地元の大学のために講義キャプチャプロジェクトを実施しています。複数のビデオストリームが1台のPCに到着します。プレゼンターのデスクトップスライド、プレゼンター自身のビデオカメラ画像、およびオプションでデジタルホワイトボードキャプチャです。これらの着信ストリームは、表示、トランスコード/ミックスし、最終的にディスクに保存するデスクトップアプリケーションによって管理されます。DVD上のFlashアプリケーション、オンラインFlashアプリケーション、またはWindows Media Playerのビデオオンデマンドストリームなど、さまざまな方法で資料を配布できるため、いくつかの構成オプションがあります。
このアプリケーションはWindowsで動作するはずです。オプションで他のプラットフォームをサポートできますが、優先度は高くないようです。
GStreamerとDirectShowはどちらも、基盤となるテクノロジーを提供できるようです。LinuxでのGStreamerの使用経験は少しありますが、そのデザインが気に入っているので、このプロジェクトで使用する傾向があります。ただし、Windowsでどれだけサポートされているかはわかりません。WindowsでGStreamerをビルドする方法に関する最近のドキュメントは見つかりませんでした。だから私はその過程のどこかで立ち往生するのではないかと心配しています。
DirectShowは、はるかに広く使用されており、インターネット上で利用できるドキュメントがはるかに多いため、より安全なオプションのようです。
ここの誰かがWindowsでGStreamerを使用した経験がありますか?それはうまくいきますか?知っておくべき問題はありますか?
編集私はGStreamerOSSBuildsWeb
サイト
を発見し、それを使用して単純なビデオプレーヤー(「playbin」要素に基づく)をすばやく実装することができました。ですから、GStreamerパスをもう少し追求すると思います。