What is [not] an audio endpoint?
Selectively quoting a blog piece entitled What's an audio endpoint by one of the chief architects of the post-XP Windows audio system:
Which sounds great. Except that on every desktop machine I have ever used in the past 15 years, there has been a microphone AND a line-in input jack, and they exist (at least in my mind) with equal status. As a user, I strongly relate to "pieces of plastic" I connect to the line-in jack. They certainly look very much like an audio endpoint to me. The trouble is:
IMMDeviceEnumerator
and IMMDeviceCollction
to discover the devices on my desktop machine, and use Microsoft's own example code to do so (eg the "CaptureSharedTimerDriven" audio sample in Microsoft's SDK) they only list the microphone as an endpoint. So if my line-in jack is NOT an audio endpoint, what is it, how do I access it, set the volume on it, and so on? How can I make an application use it (exclusively) even when a user has selected the microphone as the default endpoint?
Partial (and perplexing) answer: it is possible for a microphone to be listed as an audio endpoint even when there is nothing connected to the microphone jack, but a line-in input might only be listed and confirm itself as a legitimate audio endpoint when there is a device physically connected to the line-in jack. This makes no obvious sense, but is nonetheless the way things are... at least on my machine.
链接地址: http://www.djcxy.com/p/60186.html上一篇: 枚举HAL AudioID的CoreAudio不一致
下一篇: 什么是不是音频终端?