[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 238
  • Last Modified:

Question for Chensu

Hi Chensu!
I'd like to ask in continue of my previous question.
In mixer WaveInput/MixerList there are a few items.
The function mixerGetControlDetails() returns or its values
or its text descriptions.
How I can know what item is the "microphone select".
To use text descriptions is not safe because I think
text descriptions can be or non-standard or not in English.
Thanks, Vladimir_12345
 
0
vladimir_12345
Asked:
vladimir_12345
  • 3
  • 2
1 Solution
 
chensuCommented:
When you use mixerGetControlDetails to get the text labels with the MIXER_GETCONTROLDETAILSF_LISTTEXT flag, the MIXERCONTROLDETAILS_LISTTEXT structure returns not only the text but also the dwLineID (the dwParam1 member) which the control is for. Use this dwLineID to compare with the dwLineID you get from mixerGetLineInfo (MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE).
0
 
vladimir_12345Author Commented:
Hi Chensu, thanks for your idea.
But it need in more accurate definition.
mixerGetLineInfo (MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE) returns
microphone line id for DST Speakers.
But mixerGetControlDetails (MIXERCONTROLDETAILS_LISTTEXT) returns
line ids for DST WaveInput.
If call mixerGetLineInfo() for every line ids from
mixerGetControlDetails (MIXERCONTROLDETAILS_LISTTEXT)
and to compare dwComponentType with MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE
it is possible to find "microphone select".
Chensu, from where you know so many about sound cards?
My e-mail: vladimir@comfy.co.il
Thanks again, Vladimir_12345

0
 
chensuCommented:
Yes, you are right. Thank you for correcting me. Let me refine it.

There are normally two (or more) MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE source audio lines. One is for MIXERLINE_COMPONENTTYPE_DST_SPEAKERS destination audio line and another is for MIXERLINE_COMPONENTTYPE_DST_WAVEIN destination audio line. mixerGetLineInfo(MIXER_GETLINEINFOF_COMPONENTTYPE, MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE) only returns the information about the first audio line of the type MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE. So, call mixerGetLineInfo(MIXER_GETLINEINFOF_LINEID, dwLineID) to get the dwComponentType and compare it with MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE. The dwLineID is obtained from the dwParam1 member returned by mixerGetControlDetails (MIXERCONTROLDETAILS_LISTTEXT).

My knowledge about sound cards is just average. I am just interested in it.
0
 
vladimir_12345Author Commented:
Hi Chensu! To finish with the mixer discussion what do you
think: first audio line MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE
is always in MIXERLINE_COMPONENTTYPE_DST_SPEAKERS (if it's present)or not? It is impossible to say that there is too many mixer info in help.



0
 
chensuCommented:
I think it depends on the device driver. It is not compulsory although most of the device drivers do so.
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now