tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re: USBカメラの解像度の切り替え
投稿日: 2007/02/18(Sun) 10:47
投稿者K.J.K.
> そのサンプルコードは具体的にどんな感じになるのでしょう?

具体的に、といっても、元になるインターフェースなどをどのように
定義してあるのか、にもよりますよね。

Dim CameraFilter As IBaseFilter
Dim EnumPins As IEnumPins
Dim BasePin As IPin
Dim StreamConfig As IAMStreamConfig
Dim MediaType As AM_MEDIA_TYPE
Dim MediaTypeCount As Integer
Dim LoopCounter As Integer
Dim BufferSize As Integer
Dim Buffer() As Byte

とでもしてあり、
「CameraFilterが該当するフィルタを指している」
のならば、例外処理やCOMの参照カウント関連の処理などを省略すると、だいたい、

    EnumPins = CameraFilter.EnumPins()
    Do While (1 = EnumPins.Next(1, BasePin))
        ' ここで該当するピンを特定する処理
    Loop

    ' 以降、BasePinには特定されたピンが入っているとする。
    StreamConfig = BasePin
    Call StreamConfig.GetNumberOfCapabilities(MediaTypeCount, BufferSize)
    For LoopCounter = 0 To MediaTypeCount - 1
        Call StreamConfig.GetStreamCaps(LoopCounter, MediaType, Buffer)
        ' ここで該当するMediaTypeを探すなり、配列などにキャッシュ
        ' しておくものとする。
    Next LoopCounter

    ' 以降、MediaTypeには特定された望ましいものが入っているとする。
    Call StreamConfig.SetFormat(MediaType)

というような手順になるのでは。まぁインターフェースの定義しだいでは
全く異なる書き方になるでしょうけど、そこはいろいろ自分で試してみて
ください。
    
> SDKのドキュメントを見ていてもC++でVB.NETでどう表現するのか
> さっぱりわかりません。

ならば、諦めるとか。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。