Search
Module:
Directory

   Desktop Functions:

   Smart Device Functions:


Show Recent Changes
Subscribe (RSS)
Misc. Pages
Comments
FAQ
Helpful Tools
Playground
Suggested Reading
Website TODO List
Download Visual Studio Add-In

Search Results for "MIXER" in [All]

Constants

.

    public static Guid KSCATEGORY_MIXER = new Guid("AD809C00-7B88-11D0-A5D6-28DB04C10000");

.

private const UInt32 MIXER_OBJECTF_HANDLE                    = 0x80000000;

.

private const UInt32 MIXER_OBJECTF_MIXER                    = 0x00000000;

.

private const UInt32 MIXER_OBJECTF_HMIXER                    = MIXER_OBJECTF_HANDLE | MIXER_OBJECTF_MIXER;

.

private const UInt32 MIXERCONTROL_CT_CLASS_FADER            = 0x50000000;

.

private const UInt32 MIXERCONTROL_CT_UNITS_UNSIGNED            = 0x00030000;

.

private const UInt32 MIXERCONTROL_CONTROLTYPE_FADER            = MIXERCONTROL_CT_CLASS_FADER | MIXERCONTROL_CT_UNITS_UNSIGNED;

.

private const UInt32 MIXERCONTROL_CONTROLTYPE_VOLUME        = MIXERCONTROL_CONTROLTYPE_FADER + 1;

.

private const UInt32 MIXER_GETLINEINFOF_COMPONENTTYPE        = 0x00000003;

.

private const UInt32 MIXER_GETLINECONTROLSF_ONEBYTYPE        = 0x00000002;

.

private const UInt32 MIXER_GETCONTROLDETAILSF_VALUE            = 0x00000000;

.

private const Int32 MIXER_SHORT_NAME_CHARS                    = 16;

.

private const Int32 MIXER_LONG_NAME_CHARS                    = 64;

.

private const UInt32 MIXERLINE_COMPONENTTYPE_DST_FIRST        = 0x00000000;

.

private const UInt32 MIXERLINE_COMPONENTTYPE_DST_SPEAKERS    = MIXERLINE_COMPONENTTYPE_DST_FIRST + 4;

.

private const UInt32 MIXER_SETCONTROLDETAILSF_VALUE            = 0x00000000;

Structures

.
Summary
.

  MIXERLINE_LINEF_ACTIVE = 1

.

  MIXERLINE_LINEF_DISCONNECTED = &H8000

.

  MIXERLINE_LINEF_SOURCE = &H80000000

.
Documentation
[MIXERLINE] on MSDN
.
Summary
.

  MIXERLINE_TARGETTYPE_UNDEFINED = 0

.

  MIXERLINE_TARGETTYPE_WAVEOUT = 1

.

  MIXERLINE_TARGETTYPE_WAVEIN = 2

.

  MIXERLINE_TARGETTYPE_MIDIOUT = 3

.

  MIXERLINE_TARGETTYPE_MIDIIN = 4

.

  MIXERLINE_TARGETTYPE_AUX = 5

.
Documentation
[MIXERLINE] on MSDN
.
Summary
The MIXERCAPS structure describes the capabilities of a mixer device.
.

   struct MixerCaps

.

   Private Structure MixerCaps

.

Used in mixerGetDevCaps (winmm)

.
Documentation
[MIXERCAPS] on MSDN
.
Summary
The MIXERCONTROLDETAILS_UNSIGNED structure retrieves and sets unsigned type control properties for an audio mixer control.
.

public struct MIXERCONTROLDETAILS_UNSIGNED

.

Structure MIXERCONTROLDETAILS_UNSIGNED

.
Documentation
[MIXERCONTROLDETAILS_UNSIGNED] on MSDN
.

public struct MIXERCONTROLDETAILS_UNSIGNED

.

Structure MIXERCONTROLDETAILS_UNSIGNED

.
Documentation
[MIXERCONTROLDETAILS_UNSIGNED] on MSDN
.
Summary
The MIXERCONTROLDETAILS_BOOLEAN structure retrieves and sets Boolean control properties for an audio mixer control.
.

  public struct MIXERCONTROLDETAILS_BOOLEAN

.

  Structure MIXERCONTROLDETAILS_BOOLEAN

.
Documentation
[MIXERCONTROLDETAILS_BOOLEAN] on MSDN
.
Summary
The MIXERCONTROLDETAILS_LISTTEXT structure retrieves list text, label text, and/or band-range information for multiple-item controls. This structure is used when the MIXER_GETCONTROLDETAILSF_LISTTEXT flag is specified in the mixerGetControlDetails function.
.

  public const int MIXER_LONG_NAME_CHARS = 64;

.

  public struct MIXERCONTROLDETAILS_LISTTEXT

.

    [MarshalAs(UnmanagedType.ByValTStr, SizeConst = MIXER_LONG_NAME_CHARS)]

.

  Public Const MIXER_LONG_NAME_CHARS As Integer = 64

.

  Public Structure MIXERCONTROLDETAILS_LISTTEXT

.
Documentation
[MIXERCONTROLDETAILS_LISTTEXT] on MSDN
.
Summary
The MIXERCONTROLDETAILS_SIGNED structure retrieves and sets signed type control properties for an audio mixer control.
.

  public struct MIXERCONTROLDETAILS_SIGNED

.

  Public Structure MIXERCONTROLDETAILS_SIGNED

.
Documentation
[MIXERCONTROLDETAILS_SIGNED] on MSDN
.

struct MIXERCONTROLDETAILS_UNSIGNED

.

Structure MIXERCONTROLDETAILS_UNSIGNED

.
Documentation
[MIXERCONTROLDETAILS_UNSIGNED] on MSDN
.

public struct MIXERLINETARGET

.

     [MarshalAs(UnmanagedType.ByValTStr, SizeConst = MixerXPNative.MAXPNAMELEN)]

.

     /// <summary>MIXERLINE_TARGETTYPE_xxxx</summary>

.

     public MIXERLINE_TARGETTYPE Type

.

        get { return (MIXERLINE_TARGETTYPE)this.dwType; }

.

Structure MIXERLINETARGET

.

public enum MIXERLINE_TARGETTYPE : uint

.

public enum MIXERLINE_LINEF : uint

.

public enum MIXERLINE_COMPONENTTYPE : uint

.
Documentation
[MIXERLINE] on MSDN
.
Summary
.

struct MixerLineComponentType {

.

Enum MixerLineComponentType As UInteger

.

  MIXERLINE_COMPONENTTYPE_DST_UNDEFINED = &H0

.

  MIXERLINE_COMPONENTTYPE_DST_DIGITAL = &H1

.

  MIXERLINE_COMPONENTTYPE_DST_LINE = &H2

.

  MIXERLINE_COMPONENTTYPE_DST_MONITOR = &H3

.

  MIXERLINE_COMPONENTTYPE_DST_SPEAKERS = &H4

.

  MIXERLINE_COMPONENTTYPE_DST_HEADPHONES = &H5

.

  MIXERLINE_COMPONENTTYPE_DST_TELEPHONE = &H6

.

  MIXERLINE_COMPONENTTYPE_DST_WAVEIN = &H7

.

  MIXERLINE_COMPONENTTYPE_DST_VOICEIN = &H8

.

  MIXERLINE_COMPONENTTYPE_SRC_UNDEFINED = &H1000

.

  MIXERLINE_COMPONENTTYPE_SRC_DIGITAL = &H1001

.

  MIXERLINE_COMPONENTTYPE_SRC_LINE = &H1002

.

  MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE = &H1003

.

  MIXERLINE_COMPONENTTYPE_SRC_SYNTHESIZER = &H1004

.

  MIXERLINE_COMPONENTTYPE_SRC_COMPACTDISC = &H1005

.

  MIXERLINE_COMPONENTTYPE_SRC_TELEPHONE = &H1006

.

  MIXERLINE_COMPONENTTYPE_SRC_PCSPEAKER = &H1007

.

  MIXERLINE_COMPONENTTYPE_SRC_WAVEOUT = &H1008

.

  MIXERLINE_COMPONENTTYPE_SRC_AUXILIARY = &H1009

.

  MIXERLINE_COMPONENTTYPE_SRC_ANALOG = &H100A

.
Documentation
[MIXERLINE] on MSDN.
.

public struct MIXERLINECONTROLS

.

     private UInt32 cbStruct;       /* size in bytes of MIXERLINECONTROLS */

.

     private UInt32 dwLineID;       /* line id (from MIXERLINE.dwLineID) */

.

     private UInt32 dwControlID;    /* MIXER_GETLINECONTROLSF_ONEBYID */

.

//    private UInt32 dwControlType;  //UNIONED with dwControlID /* MIXER_GETLINECONTROLSF_ONEBYTYPE */

.

     private UInt32 cbmxctrl;       /* size in bytes of _one_ MIXERCONTROL */

.

     private IntPtr pamxctrl;       /* pointer to first MIXERCONTROL array */

.

     /// <summary>size in bytes of MIXERLINECONTROLS</summary>

.

     /// <summary>line id (from MIXERLINE.dwLineID)</summary>

.

     /// <summary>MIXER_GETLINECONTROLSF_ONEBYID</summary>

.

     /// <summary>MIXER_GETLINECONTROLSF_ONEBYTYPE</summary>

.

     public MIXERCONTROL_CONTROLTYPE ControlType

.

        get { return (MIXERCONTROL_CONTROLTYPE)this.dwControlID; }

.

     /// <summary>size in bytes of _one_ MIXERCONTROL</summary>

.

     public UInt32 MixerControlItemSize

.

     /// <summary>pointer to first MIXERCONTROL array</summary>

.

     public IntPtr MixerControlArray

.

THIS IS MY CONVERSION FROM THE C# ABOVE. I have used an UInt32 instead of the MIXERCONTROL_CONTROLTYPE enum as I didn't bother converting it. Also I set dwLineID as an Integer as I was getting a negative number come back from the APIs.

.

    Public Structure MIXERLINECONTROLS

.

    Private cbStruct As UInt32       '/* size in bytes of MIXERLINECONTROLS */

.

    Private dwLineID As Integer       '/* line id (from MIXERLINE.dwLineID) */

.

    Private dwControlID As UInt32     '/* MIXER_GETLINECONTROLSF_ONEBYID */

.

    'private UInt32 dwControlType;  //UNIONED with dwControlID /* MIXER_GETLINECONTROLSF_ONEBYTYPE */

.

    Private cbmxctrl As UInt32       '/* size in bytes of _one_ MIXERCONTROL */

.

    Private pamxctrl As IntPtr       '/* pointer to first MIXERCONTROL array */

.

    '/// <summary>size in bytes of MIXERLINECONTROLS</summary>

.

    '/// <summary>line id (from MIXERLINE.dwLineID)</summary>

.

    '/// <summary>MIXER_GETLINECONTROLSF_ONEBYID</summary>

.

    '/// <summary>MIXER_GETLINECONTROLSF_ONEBYTYPE</summary>

.

    '/// <summary>size in bytes of _one_ MIXERCONTROL</summary>

.

    Public Property MixerControlItemSize As UInt32

.

    '/// <summary>pointer to first MIXERCONTROL array</summary>

.

    Public Property MixerControlArray As IntPtr

.

private const uint MIXERCONTROL_CT_CLASS_MASK   = 0xF0000000u;

.

private const uint MIXERCONTROL_CT_CLASS_CUSTOM = 0x00000000u;

.

private const uint MIXERCONTROL_CT_CLASS_METER  = 0x10000000u;

.

private const uint MIXERCONTROL_CT_CLASS_SWITCH = 0x20000000u;

.

private const uint MIXERCONTROL_CT_CLASS_NUMBER = 0x30000000u;

.

private const uint MIXERCONTROL_CT_CLASS_SLIDER = 0x40000000u;

.

private const uint MIXERCONTROL_CT_CLASS_FADER  = 0x50000000u;

.

private const uint MIXERCONTROL_CT_CLASS_TIME   = 0x60000000u;

.

private const uint MIXERCONTROL_CT_CLASS_LIST   = 0x70000000u;

.

private const uint MIXERCONTROL_CT_SUBCLASS_MASK = 0x0F000000u;

.

private const uint MIXERCONTROL_CT_SC_SWITCH_BOOLEAN = 0x00000000u;

.

private const uint MIXERCONTROL_CT_SC_SWITCH_BUTTON  = 0x01000000u;

.

private const uint MIXERCONTROL_CT_SC_METER_POLLED = 0x00000000u;

.

private const uint MIXERCONTROL_CT_SC_TIME_MICROSECS = 0x00000000u;

.

private const uint MIXERCONTROL_CT_SC_TIME_MILLISECS = 0x01000000u;

.

private const uint MIXERCONTROL_CT_SC_LIST_SINGLE   = 0x00000000u;

.

private const uint MIXERCONTROL_CT_SC_LIST_MULTIPLE = 0x01000000u;

.

private const uint MIXERCONTROL_CT_UNITS_MASK     = 0x00FF0000u;

.

private const uint MIXERCONTROL_CT_UNITS_CUSTOM   = 0x00000000u;

.

private const uint MIXERCONTROL_CT_UNITS_BOOLEAN  = 0x00010000u;

.

private const uint MIXERCONTROL_CT_UNITS_SIGNED   = 0x00020000u;

.

private const uint MIXERCONTROL_CT_UNITS_UNSIGNED = 0x00030000u;

.

private const uint MIXERCONTROL_CT_UNITS_DECIBELS = 0x00040000u; /* in 10ths */

.

private const uint MIXERCONTROL_CT_UNITS_PERCENT  = 0x00050000u; /* in 10ths */

.

/// <summary>Commonly used control types for specifying MIXERCONTROL.dwControlType</summary>

.

public enum MIXERCONTROL_CONTROLTYPE : uint

.

     CUSTOM     =(MIXERCONTROL_CT_CLASS_CUSTOM | MIXERCONTROL_CT_UNITS_CUSTOM),

.

     BOOLEANMETER   =(MIXERCONTROL_CT_CLASS_METER | MIXERCONTROL_CT_SC_METER_POLLED | MIXERCONTROL_CT_UNITS_BOOLEAN),

.

     SIGNEDMETER    =(MIXERCONTROL_CT_CLASS_METER | MIXERCONTROL_CT_SC_METER_POLLED | MIXERCONTROL_CT_UNITS_SIGNED),

.

     UNSIGNEDMETER  =(MIXERCONTROL_CT_CLASS_METER | MIXERCONTROL_CT_SC_METER_POLLED | MIXERCONTROL_CT_UNITS_UNSIGNED),

.

     BOOLEAN    =(MIXERCONTROL_CT_CLASS_SWITCH | MIXERCONTROL_CT_SC_SWITCH_BOOLEAN | MIXERCONTROL_CT_UNITS_BOOLEAN),

.

     BUTTON     =(MIXERCONTROL_CT_CLASS_SWITCH | MIXERCONTROL_CT_SC_SWITCH_BUTTON | MIXERCONTROL_CT_UNITS_BOOLEAN),

.

     DECIBELS       =(MIXERCONTROL_CT_CLASS_NUMBER | MIXERCONTROL_CT_UNITS_DECIBELS),

.

     SIGNED     =(MIXERCONTROL_CT_CLASS_NUMBER | MIXERCONTROL_CT_UNITS_SIGNED),

.

     UNSIGNED       =(MIXERCONTROL_CT_CLASS_NUMBER | MIXERCONTROL_CT_UNITS_UNSIGNED),

.

     PERCENT    =(MIXERCONTROL_CT_CLASS_NUMBER | MIXERCONTROL_CT_UNITS_PERCENT),

.

     SLIDER     =(MIXERCONTROL_CT_CLASS_SLIDER | MIXERCONTROL_CT_UNITS_SIGNED),

.

     FADER      =(MIXERCONTROL_CT_CLASS_FADER | MIXERCONTROL_CT_UNITS_UNSIGNED),

.

     SINGLESELECT   =(MIXERCONTROL_CT_CLASS_LIST | MIXERCONTROL_CT_SC_LIST_SINGLE | MIXERCONTROL_CT_UNITS_BOOLEAN),

.

     MULTIPLESELECT =(MIXERCONTROL_CT_CLASS_LIST | MIXERCONTROL_CT_SC_LIST_MULTIPLE | MIXERCONTROL_CT_UNITS_BOOLEAN),

.

     MIXER      =(MULTIPLESELECT + 1),

.

     MICROTIME      =(MIXERCONTROL_CT_CLASS_TIME | MIXERCONTROL_CT_SC_TIME_MICROSECS | MIXERCONTROL_CT_UNITS_UNSIGNED),

.

     MILLITIME      =(MIXERCONTROL_CT_CLASS_TIME | MIXERCONTROL_CT_SC_TIME_MILLISECS | MIXERCONTROL_CT_UNITS_UNSIGNED),

.
Documentation
[MIXERLINECONTROLS] on MSDN
.

public struct MIXERLINETARGET

.

     [MarshalAs(UnmanagedType.ByValTStr, SizeConst = MixerXPNative.MAXPNAMELEN)]

.

     /// <summary>MIXERLINE_TARGETTYPE_xxxx</summary>

.

     public MIXERLINE_TARGETTYPE Type

.

        get { return (MIXERLINE_TARGETTYPE)this.dwType; }

.

Structure MIXERLINETARGET

.
Documentation
[MIXERLINE] on MSDN

winmm

.

static extern Int32 mixerClose(IntPtr hmx);

.

Declare Function mixerClose Lib "winmm.dll" (ByVal hmx As IntPtr) As Integer

.

The ManagedWindowsApi project (http://mwinapi.sourceforge.net) provides a Mixer control.

.
Documentation
[mixerClose] on MSDN
.
Summary
Flags for mixer... functions.
.

    public enum MIXER_FLAGS

.

      MIXER_OBJECTF_HANDLE = unchecked((int)0x80000000),

.

      MIXER_OBJECTF_MIXER = 0,

.

      MIXER_OBJECTF_HMIXER = MIXER_OBJECTF_MIXER | MIXER_OBJECTF_HANDLE,

.

      MIXER_OBJECTF_WAVEOUT = 0x10000000,

.

      MIXER_OBJECTF_HWAVEOUT = MIXER_OBJECTF_WAVEOUT | MIXER_OBJECTF_HANDLE,

.

      MIXER_OBJECTF_WAVEIN = 0x20000000,

.

      MIXER_OBJECTF_HWAVEIN = MIXER_OBJECTF_WAVEIN | MIXER_OBJECTF_HANDLE,

.

      MIXER_OBJECTF_MIDIOUT = 0x30000000,

.

      MIXER_OBJECTF_HMIDIOUT = MIXER_OBJECTF_MIDIOUT | MIXER_OBJECTF_HANDLE,

.

      MIXER_OBJECTF_MIDIIN = 0x40000000,

.

      MIXER_OBJECTF_HMIDIIN = MIXER_OBJECTF_MIDIIN | MIXER_OBJECTF_HANDLE,

.

      MIXER_OBJECTF_AUX = 0x50000000,

.

      MIXER_GETCONTROLDETAILSF_VALUE = 0,

.

      MIXER_SETCONTROLDETAILSF_VALUE = 0,

.

      MIXER_GETCONTROLDETAILSF_LISTTEXT = 1,

.

      MIXER_SETCONTROLDETAILSF_LISTTEXT = 1,

.

      MIXER_GETCONTROLDETAILSF_QUERYMASK = 0xF,

.

      MIXER_SETCONTROLDETAILSF_QUERYMASK = 0xF,

.

      MIXER_GETLINECONTROLSF_QUERYMASK = 0xF,

.

      MIXER_GETLINECONTROLSF_ALL = 0,

.

      MIXER_GETLINECONTROLSF_ONEBYID = 1,

.

      MIXER_GETLINECONTROLSF_ONEBYTYPE = 2,

.

      MIXER_GETLINEINFOF_DESTINATION = 0,

.

      MIXER_GETLINEINFOF_SOURCE = 1,

.

      MIXER_GETLINEINFOF_LINEID = 2,

.

      MIXER_GETLINEINFOF_COMPONENTTYPE = 3,

.

      MIXER_GETLINEINFOF_TARGETTYPE = 4,

.

      MIXER_GETLINEINFOF_QUERYMASK = 0xF,

.

Enum MixerFlags

.

  MIXER_GETLINEINFOF_DESTINATION = 0

.

  MIXER_GETLINEINFOF_SOURCE = 1

.

  MIXER_GETLINEINFOF_LINEID = 2

.

  MIXER_GETLINEINFOF_COMPONENTTYPE = 3

.

  MIXER_GETLINEINFOF_TARGETTYPE = 4

.

  MIXER_OBJECTF_MIXER = &H0

.

  MIXER_OBJECTF_HMIXER = &H80000000

.

  MIXER_OBJECTF_WAVEOUT = &H10000000

.

  MIXER_OBJECTF_HWAVEOUT = &H90000000

.

  MIXER_OBJECTF_WAVEIN = &H20000000

.

  MIXER_OBJECTF_HWAVEIN = &HA0000000

.

  MIXER_OBJECTF_MIDIOUT = &H30000000

.

  MIXER_OBJECTF_HMIDIOUT = &HB0000000

.

  MIXER_OBJECTF_MIDIIN = &H40000000

.

  MIXER_OBJECTF_HMIDIIN = &HC0000000

.

  MIXER_OBJECTF_AUX = &H50000000

.
Documentation
[MixerFlags] on MSDN
.

static extern Int32 mixerGetControlDetails(IntPtr hmxobj,

.

   ref MixerControlDetails pmxcd, UInt32 fdwDetailsmixer);

.

Declare Function mixerGetControlDetails Lib "winmm.dll" (<MarshalAs(UnmanagedType.I4)> ByVal hmxobj As Integer, ByRef pmxcd As MIXERCONTROLDETAILS, ByVal fdwDetails As Integer) As Integer

.

public struct MIXERCONTROLDETAILS

.

     /// <summary>size in bytes of MIXERCONTROLDETAILS</summary>

.

     /// <summary>for MIXER_SETCONTROLDETAILSF_CUSTOM</summary>

.

The fdwDetailsmixer parameter can be composed constants from two distinct enumerations, one of which is used frequently in the winmm library, and the other constant is only used with this method. Consequently, you should wrap up the method definition so that it is easier to use, and more consistent. In the following example, the actual extern is private, while the public static method lists both enums to callers.

.

private static extern Int32 mixerGetControlDetails(IntPtr hmxobj, ref MIXERCONTROLDETAILS pmxcd, uint fdwDetails);

.

public static Int32 mixerGetControlDetails(IntPtr hmxobj, ref MIXERCONTROLDETAILS pmxcd, MIXER_OBJECTF fdwDetails, MIXER_GETCONTROLDETAILSF getControlDetails)

.

     return mixerGetControlDetails(hmxobj, ref pmxcd, flags);

.

public enum MIXER_OBJECTF : uint

.

     MIXER    = 0x00000000u,

.

     HMIXER   = (HANDLE | MIXER),

.

public enum MIXER_GETCONTROLDETAILSF : uint

.

The ManagedWindowsApi project (http://mwinapi.sourceforge.net) provides a Mixer control.

.
Documentation
[mixerGetControlDetails] on MSDN
.
Summary
The mixerGetDevCaps function queries a specified mixer device to determine its capabilities.
.

   [DllImport("winmm.dll", EntryPoint="mixerGetDevCaps", SetLastError=true)]

.

   private static extern uint MixerGetDevCaps(int mixerId, ref MixerCaps mixerCaps, int mixerCapsSize);

.

   <DllImport("winmm.dll", EntryPoint:="mixerGetDevCaps", SetLastError:=True)> _

.

   Private Shared Function MixerGetDevCaps(ByVal mixerId As Integer, ByRef mixerCaps As MixerCaps, ByVal mixerCapsSize As Integer) As UInteger

.

MixerCaps is in Structures.MIXERCAPS

.

       [DllImport("winmm.dll", EntryPoint = "mixerGetNumDevs")]

.

       private static extern uint MixerGetNumDevs();

.

       [DllImport("winmm.dll", EntryPoint = "mixerGetDevCaps", SetLastError = true)]

.

       private static extern uint MixerGetDevCaps(int mixerId, ref MixerCaps mixerCaps, int mixerCapsSize);

.

       struct MixerCaps

.

           uint numDevs = MixerGetNumDevs();            

.

           for (int mixerId = 0; mixerId < numDevs; mixerId++)

.

           MixerCaps caps = new MixerCaps();

.

           uint result = MixerGetDevCaps(mixerId, ref caps, Marshal.SizeOf(caps));

.
Documentation
[mixerGetDevCaps] on MSDN
.
Summary
The mixerGetID function retrieves the device identifier for a mixer device associated with a specified device handle.
.

static extern TODO mixerGetID(TODO);

.

Shared Function mixerGetID(<MarshalAs(UnmanagedType.I4)> ByVal hmxobj As Integer, ByRef puMxId As UInteger, ByVal fdwId As MixerFlags) As MMRESULT

.

MixerFlags

.
Documentation
[mixerGetID] on MSDN
.

static extern Int32 mixerGetLineControls(IntPtr hmxobj,

.

   ref MIXERLINECONTROLS pmxlc, UInt32 fdwControls);

.

Declare Function mixerGetLineControls Lib "winmm.dll" (hmxobj As IntPtr, _

.

   ByRef pmxlc As MIXERLINECONTROLS, fdwControls As Integer) As Integer

.

MIXERLINECONTROLS

.

private static extern Int32 mixerGetLineControls(IntPtr hmxobj, ref MIXERLINECONTROLS pmxlc, uint fdwControls);

.

public static Int32 mixerGetLineControls(IntPtr hmxobj, ref MIXERLINECONTROLS pmxlc, MIXER_OBJECTF mixerFlags, MIXER_GETLINECONTROLSF controlsFlags)

.

     uint flags = ((uint)mixerFlags | (uint)controlsFlags);

.

     return mixerGetLineControls(hmxobj, ref pmxlc, flags);

.

public enum MIXER_OBJECTF : uint

.

     MIXER    = 0x00000000u,

.

     HMIXER   = (HANDLE | MIXER),

.

public enum MIXER_GETLINECONTROLSF : uint

.

The ManagedWindowsApi project (http://mwinapi.sourceforge.net) provides a Mixer control.

.
Documentation
[mixerGetLineControls] on MSDN
.

static extern Int32 mixerGetLineInfo(IntPtr hmxobj,

.

   ref MIXERLINE pmxl, UInt32 fdwInfo);

.

Shared Function mixerGetLineInfo(<MarshalAs(UnmanagedType.I4)> ByVal hmxobj As Integer, ByRef pmxl As MIXERLINE, ByVal fdwInfo As MixerFlags) As MMRESULT

.

MIXERLINE

.

MixerFlags

.

private static extern Int32 mixerGetLineInfo(IntPtr hmxobj, ref MIXERLINE pmxl, uint fdwInfo);

.

public static Int32 mixerGetLineInfo(IntPtr hmxobj, ref MIXERLINE pmxl, MIXER_OBJECTF fdwInfo, MIXER_GETLINEINFOF fieldToFollow)

.

     return mixerGetLineInfo(hmxobj, ref pmxl, flags);

.

public enum MIXER_OBJECTF : uint

.

     MIXER    = 0x00000000u,

.

     HMIXER   = (HANDLE | MIXER),

.

public enum MIXER_GETLINEINFOF : uint

.

The ManagedWindowsApi project (http://mwinapi.sourceforge.net) provides a Mixer control.

.
Documentation
[mixerGetLineInfo] on MSDN
.
Summary
Returns the number of mixer devices present.
.

static extern uint mixerGetNumDevs ();

.

Declare Function mixerGetNumDevs Lib "winmm.dll" () As UInt32

.

  Console.WriteLine("Number of mixers present: {0}", mixerGetNumDevs());

.
Documentation
mixerGetNumDevs @msdn on MSDN
.
Summary
Returns the number of mixer devices present.
.

static extern uint mixerGetNumDevs();

.

Public Declare Function mixerGetNumDevs Lib "winmm.dll" () As Integer

.

Dim a as integer = mixerGetNumDevs()

.

The ManagedWindowsApi project (http://mwinapi.sourceforge.net) provides a Mixer control.

.
Documentation
[mixerGetNumDevs] on MSDN
.

static extern Int32 mixerOpen(ref IntPtr phmx, uint pMxId,

.

Declare Function mixerOpen Lib "winmm.dll" (ByRef phmx As IntPtr, ByVal pMxId As UInteger, ByVal dwCallback As IntPtr, ByVal dwInstance As IntPtr, ByVal fdwOpen As UInteger) As Integer

.

The ManagedWindowsApi project (http://mwinapi.sourceforge.net) provides a Mixer control.

.
Documentation
[mixerOpen] on MSDN
.

static extern Int32 mixerSetControlDetails(IntPtr hmxobj,

.

   ref MixerControlDetails pmxcd, UInt32 fdwDetails);

.

Declare Function mixerSetControlDetails Lib "winmm.dll" (ByVal hmxobj As IntPtr, ByVal pmxcd As MIXERCONTROLDETAILS, ByVal fdwDetails As Integer) As Integer

.

public struct MIXERCONTROL

.

     [MarshalAs(UnmanagedType.ByValTStr, SizeConst = MixerXPNative.MIXER_SHORT_NAME_CHARS)]

.

     [MarshalAs(UnmanagedType.ByValTStr, SizeConst = MixerXPNative.MIXER_LONG_NAME_CHARS)]

.

     public MIXERCONTROL_BOUNDS Bounds;

.

     public MIXERCONTROL_METRICS Metrics;

.

     /// <summary>size in bytes of <see cref="MIXERCONTROL">MIXERCONTROL</see></summary>

.

     /// <summary>MIXERCONTROL_CONTROLTYPE_xxx</summary>

.

     public MIXERCONTROL_CONTROLTYPE ControlType

.

        get { return (MIXERCONTROL_CONTROLTYPE)this.dwControlType; }

.

     /// <summary>MIXERCONTROL_CONTROLF_xxx</summary>

.

     public MIXERCONTROL_CONTROLF Control

.

        get { return (MIXERCONTROL_CONTROLF)this.fdwControl; }

.

     /// <summary>if MIXERCONTROL_CONTROLF_MULTIPLE set</summary>

.

public struct MIXERCONTROL_BOUNDS

.

public struct MIXERCONTROL_METRICS

.

Structure MIXERCONTROLDETAILS

.

private static extern Int32 mixerSetControlDetails(IntPtr hmxobj, ref MIXERCONTROLDETAILS pmxcd, uint fdwDetails);

.

public static Int32 mixerSetControlDetails(IntPtr hmxobj, ref MIXERCONTROLDETAILS pmxcd, MIXER_OBJECTF fdwDetails, MIXER_SETCONTROLDETAILSF setControlDetails)

.

     return mixerSetControlDetails(hmxobj, ref pmxcd, flags);

.

public enum MIXER_OBJECTF : uint

.

     MIXER    = 0x00000000u,

.

     HMIXER   = (HANDLE | MIXER),

.

public enum MIXER_SETCONTROLDETAILSF : uint

.

The ManagedWindowsApi project (http://mwinapi.sourceforge.net) provides a Mixer control.

.
Documentation
[mixerSetControlDetails] on MSDN

 
Access PInvoke.net directly from VS: