0

IAMVideoProcAmp(directshow.net C#)を使用して、Microsoftカメラ(lifecam studio)の明るさを設定しようとしています。ここから解決策を参照します。このソリューションでは、IAMVideoProcAmpを使用してカメラの明るさを設定します。呼び出してデバイスに接続した後

DsDevice.GetDevicesOfCat(FilterCategory.VideoInputDevice);

カメラの明るさを設定します。しかし、IAMVideoProcAmpのSet()関数を呼び出すと、機能しないようです。

int Set(
          VideoProcAmpProperty Property, // VideoProcAmpProperty
          int lValue,          // Value to set
          VideoProcAmpFlags Flags  // VideoProcAmp_Flags_* 
       );

この機能にさまざまな有効な値を設定しようとしましたが、カメラに影響はありません。関数によってカメラの明るさプロパティの最大/最小/デフォルト値を取得できます:

int GetRange(
            VideoProcAmpProperty Property,         // Which property to query
            out int pMin,          // Range minimum
            out int pMax,          // Range maxumum
            out int pSteppingDelta,// Step size
            out int pDefault,      // Default value
            out VideoProcAmpFlags pCapsFlags     // VideoProcAmpFlags
            );

そしてそれは私に最大=255、最小= 30、デフォルト= 133、pCapsFlags=手動を与えました。

また、Microsoft Lifecamソフトウェアを使用して明るさを調整すると、すぐにカメラに影響を与えます。しかし、明るさの最大/最小値は最大= 2.5、最小= -2.5です。カメラの明るさを設定する方法と、取得する最大/最小値がプロパティページの値と異なる理由を教えてください。

大いに感謝する。

4

1 に答える 1

1

ついに私IAMVideoProcAmp::Setは、Microsoftのlifecamソフトウェアのためにそれが機能しないことに気づきました。このソフトウェアは、カメラドライバのインストールと一緒にインストールされます。このソフトウェアのTrueColor機能がこの問題のポイントです。このソフトウェアからTrueColorをオンにIAMVideoProcAmp::Setすると、アプリの明るさを調整するために使用できなくなります。Microsoft Lifecamをアンインストールするだけで、私の望みどおりに機能します。この情報が誰かが私に同じ問題を起こすのを助けることを願っています。

于 2013-03-26T03:32:50.723 に答える