MIXERLINEA structure (mmeapi.h)
The MIXERLINE structure describes the state and metrics of an audio line.
Syntax
typedef struct tagMIXERLINEA {
DWORD cbStruct;
DWORD dwDestination;
DWORD dwSource;
DWORD dwLineID;
DWORD fdwLine;
DWORD_PTR dwUser;
DWORD dwComponentType;
DWORD cChannels;
DWORD cConnections;
DWORD cControls;
CHAR szShortName[MIXER_SHORT_NAME_CHARS];
CHAR szName[MIXER_LONG_NAME_CHARS];
struct {
DWORD dwType;
DWORD dwDeviceID;
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[MAXPNAMELEN];
} Target;
} MIXERLINEA, *PMIXERLINEA, *LPMIXERLINEA;
Members
cbStruct
Size, in bytes, of the MIXERLINE structure. This member must be initialized before calling the mixerGetLineInfo function. The size specified in this member must be large enough to contain the MIXERLINE structure. When mixerGetLineInfo returns, this member contains the actual size of the information returned. The returned information will not exceed the requested size.
dwDestination
Destination line index. This member ranges from zero to one less than the value specified in the cDestinations member of the MIXERCAPS structure retrieved by the mixerGetDevCaps function. When the mixerGetLineInfo function is called with the MIXER_GETLINEINFOF_DESTINATION flag, properties for the destination line are returned. (The dwSource member must be set to zero in this case.) When called with the MIXER_GETLINEINFOF_SOURCE flag, the properties for the source given by the dwSource member that is associated with the dwDestination member are returned.
dwSource
Index for the audio source line associated with the dwDestination member. That is, this member specifies the nth audio source line associated with the specified audio destination line. This member is not used for destination lines and must be set to zero when MIXER_GETLINEINFOF_DESTINATION is specified in the mixerGetLineInfo function. When the MIXER_GETLINEINFOF_SOURCE flag is specified, this member ranges from zero to one less than the value specified in the cConnections member for the audio destination line given in the dwDestination member.
dwLineID
An identifier defined by the mixer device that uniquely refers to the audio line described by the MIXERLINE structure. This identifier is unique for each mixer device and can be in any format. An application should use this identifier only as an abstract handle.
fdwLine
Status and support flags for the audio line. This member is always returned to the application and requires no initialization.
If an application is not using a waveform-audio output device, the audio line associated with that device would not be active (that is, the MIXERLINE_LINEF_ACTIVE flag would not be set).
If the waveform-audio output device is opened, then the audio line is considered active and the MIXERLINE_LINEF_ACTIVE flag will be set.
A paused or starved waveform-audio output device is still considered active. In other words, if the waveform-audio output device is opened by an application regardless of whether data is being played, the associated audio line is considered active.
If a line cannot be strictly defined as active, the mixer device will always set the MIXERLINE_LINEF_ACTIVE flag.
dwUser
Instance data defined by the audio device for the line. This member is intended for custom mixer applications designed specifically for the mixer device returning this information. Other applications should ignore this data.
dwComponentType
Component type for this audio line. An application can use this information to display tailored graphics or to search for a particular component. If an application does not use component types, this member should be ignored. This member can be one of the following values:
cChannels
Maximum number of separate channels that can be manipulated independently for the audio line. The minimum value for this field is 1 because a line must have at least one channel.
Most modern audio cards for personal computers are stereo devices; for them, the value of this member is 2.
Channel 1 is assumed to be the left channel; channel 2 is assumed to be the right channel.
A multichannel line might have one or more uniform controls (controls that affect all channels of a line uniformly) associated with it.
cConnections
Number of connections that are associated with the audio line. This member is used only for audio destination lines and specifies the number of audio source lines that are associated with it. This member is always zero for source lines and for destination lines that do not have any audio source lines associated with them.
cControls
Number of controls associated with the audio line. This value can be zero. If no controls are associated with the line, the line is likely to be a source that might be selected in a MIXERCONTROL_CONTROLTYPE_MUX or MIXERCONTROL_CONTROLTYPE_MIXER but allows no manipulation of the signal.
szShortName[MIXER_SHORT_NAME_CHARS]
Short string that describes the audio mixer line specified in the dwLineID member. This description should be appropriate as a concise label for the line.
szName[MIXER_LONG_NAME_CHARS]
String that describes the audio mixer line specified in the dwLineID member. This description should be appropriate as a complete description for the line.
Target
Target media information.
Target.dwType
Target media device type associated with the audio line described in the MIXERLINE structure. An application must ignore target information for media device types it does not use. The following values are defined:
Name | Description |
---|---|
|
The audio line described by the MIXERLINE structure is strictly bound to the auxiliary device detailed in the remaining members of the Target structure member of the MIXERLINE structure. |
|
The audio line described by the MIXERLINE structure is strictly bound to the MIDI input device detailed in the remaining members of the Target structure member of the MIXERLINE structure. |
|
The audio line described by the MIXERLINE structure is strictly bound to the MIDI output device detailed in the remaining members of the Target structure member of the MIXERLINE structure. |
|
The audio line described by the MIXERLINE structure is not strictly bound to a defined media type. All remaining Target structure members of the MIXERLINE structure should be ignored. An application cannot use the MIXERLINE_TARGETTYPE_UNDEFINED target type when calling the mixerGetLineInfo function with the MIXER_GETLINEINFOF_TARGETTYPE flag. |
|
The audio line described by the MIXERLINE structure is strictly bound to the waveform-audio input device detailed in the remaining members of the Target structure member of the MIXERLINE structure. |
|
The audio line described by the MIXERLINE structure is strictly bound to the waveform-audio output device detailed in the remaining members of the Target structure member of the MIXERLINE structure. |
Target.dwDeviceID
Current device identifier of the target media device when the dwType member is a target type other than MIXERLINE_TARGETTYPE_UNDEFINED. This identifier is identical to the current media device index of the associated media device. When calling the mixerGetLineInfo function with the MIXER_GETLINEINFOF_TARGETTYPE flag, this member is ignored on input and will be returned to the caller by the audio mixer manager.
Target.wMid
Manufacturer identifier of the target media device when the dwType member is a target type other than MIXERLINE_TARGETTYPE_UNDEFINED. This identifier is identical to the wMid member of the device-capabilities structure for the associated media. Manufacturer identifiers are defined in Manufacturer and Product Identifiers.
Target.wPid
Product identifier of the target media device when the dwType member is a target type other than MIXERLINE_TARGETTYPE_UNDEFINED. This identifier is identical to the wPid member of the device-capabilities structure for the associated media. Product identifiers are defined in Manufacturer and Product Identifiers.
Target.vDriverVersion
Driver version of the target media device when the dwType member is a target type other than MIXERLINE_TARGETTYPE_UNDEFINED. This version is identical to the vDriverVersion member of the device-capabilities structure for the associated media.
Target.szPname[MAXPNAMELEN]
Product name of the target media device when the dwType member is a target type other than MIXERLINE_TARGETTYPE_UNDEFINED. This name is identical to the szPname member of the device-capabilities structure for the associated media.
Remarks
Note
The mmeapi.h header defines MIXERLINE as an alias that automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that is not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 2000 Professional [desktop apps only] |
Minimum supported server | Windows 2000 Server [desktop apps only] |
Header | mmeapi.h |
See also
Audio Mixers