DirectShowサンプル「StillCap」について

解決


山岡  2005-02-08 05:52:38  No: 56302

いつもお世話になっております。
DirectShowのサンプル「StillCap」を
もとにオリジナルのアプリケーションを作成しております。
「StillCap」で出力されるビットマップファイルの解像度は
常に320*240で出力されますが、
変更する方法はあるのでしょうか。
ご存知の方は何卒ご教授下さい。
よろしくお願い致します。


ボコノン教徒  2005-02-08 18:39:12  No: 56303

WDMビデオキャプチャフィルタがソースであれば、
その出力ピンからIAMStreamConfig インターフェイスをとりだして、
出力フォーマットを設定する。  
詳細は、DirectXの日本語ヘルプを見てください。


山岡  2005-02-08 23:30:58  No: 56304

hr=ICaptureGraphBuilder2->FindInterface(&PIN_CATEGORY_PREVIEW, 
                                          &MEDIATYPE_Video,pCap,
                        IID_IAMStreamConfig, (void **)&pVSC);

上記のようにしてIAMStreamConfig インターフェイスを取り出し、

AM_MEDIA_TYPE *pmt = NULL;
hr=pVSC->GetFormat(&pmt);
VIDEOINFOHEADER * vh = (VIDEOINFOHEADER*) pmt->pbFormat;
vh->bmiHeader.biWidth =640;
vh->bmiHeader.biHeight=480; 

としたところ、出力される静止画の大きさは640*480になりました。
しかし、解像度自体は変化がないようで

vh->bmiHeader.biSize =640*480*3;
vh->bmiHeader.biSizeImage =  640*480*3;

としても変化がありません。今後いろいろ試してみようと
考えています。
お忙しい所有難うございました。


ボコノン教徒  2005-02-09 02:45:29  No: 56305

IAMStreamConfig::GetStreamCaps()で取得した値をそのまま
使った方がいいと思います。


ダン  2006-11-03 03:16:12  No: 56306

お世話になります。

StillCap.exeのサンプルコードが見たくて、このページにたどり付きました。
最新のSDK(October 2006)をダウンロードして見ましたが、DirectShowの
フォルダがありません。
どこかでDirectShow、あるいは、StillCap.exeのSampleコードがダウロード
できますでしょうか?

よろしくお願い致します。


ダンです。  2006-11-04 01:44:51  No: 56307

ダンです。

StillCap.exe  のサンプルコードは以下の雑誌を購入したら
付属していたCD(DirectX 9.0b SDK)に入っていました。

但し、別の質問です。

XPに入れたVisual6.0(SP5)で以下のエラーがになってしまいます。

LINK : fatal error LNK1104: ファイル "mfc42ud.lib" を開けません。
link.exe の実行エラー

但し、Win2000Serverに入れたVisual6.0(SP5)では、StillCap.exeが
生成され動作も正常です。

XPとWin2000Severの違いでしょうか?
よろしくお願い致します。


ダン  2006-11-04 01:57:45  No: 56308

ダンです。

度々すみません。

mfc42ud.libがBisualStudioのLIBにありませんでした。
同じVisualStadio6.0(SP6)を入れた積りですが。

Win2000Serverからこれを持ってきてリンクエラーを無くしても、
実行時にmfc42ud.dllも無いから実行もできないと言われます。

少々混乱しております。
XPとWin2000Serverの違いでしょうか?

よろしくお願い致します。


774  2006-11-04 21:17:09  No: 56309

古いスレをあげないで新規質問するべし

MFC Unicode Library がインストールされていないんだよ
VisualStudio6.0 のインストーラで追加インストールするべし
追加インストール後はSP6を当てなおすべし


Ban  2006-11-05 22:17:35  No: 56310

774さんに同意。新規に聞くべし。

VC6はカスタムで明示的にいれないとudは入らないはず。

インストール時に設定をいじってるか、
誰かが何かの際に入れたか、
UNICODE/DEBUGを使わない設定(マルチバイトかリリース)か、
多分そんなところ。

デバッグ版を無理矢理コピーとかしない方がいいので、
まずそれは消してください。


ダン  2006-11-06 23:06:36  No: 56311

恐縮です。

次回からは、スレッドを新たにし質問します。

MFC Unicode Library をいれます。

ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加