QuartzTypeLib Filter Pin Properties + GraphEdit

element

Active member
Joined
Oct 29, 2003
Messages
26
Location
Portsmouth, UK
OK, tough one:

I am in some ways responding to my own question I posted a few days ago... But with no reply...

This code returns the Filters and related Pins from a rendered AVI file Graph (like using GraphEdit).

Code:
        Dont forget to register Interop.QuartzTypeLib.dll
        Dim s As String
        Dim fileManager As New QuartzTypeLib.FilgraphManagerClass
        Dim filterInfo As QuartzTypeLib.IFilterInfo
        Dim pin As QuartzTypeLib.IPinInfo
        Dim iM As QuartzTypeLib.IMediaTypeInfo

        fileManager.RenderFile("C:\Documents and Settings\My Full Name!\My Documents\test.avi")

        For Each filterInfo In fileManager.FilterCollection
            s += "Filter Name: " & filterInfo.Name & vbNewLine
            For Each pin In filterInfo.Pins
                s += vbTab & pin.Name & vbNewLine
                If pin.Name.StartsWith("Stream 00") = True Then
                    iM = pin.ConnectionMediaType()
                    Now what?
                End If
            Next
        Next

        MsgBox(s)

So you see it just lists filters and pins. Now GraphEdit allows you to right click on a single Pin off the AVI Splitter (I want pin "Stream 00") and view its properties.

It shows a GUID which correctly corresponds to the iM.Subtype Property, and then gives info on its FOURCC and decompressor codec (which is DIV3).

My question (finally) is how do I get that info? I can email/upload screenshots if it may help.

Thank you for any help, Tom
 
Back
Top