我正在寻找一种方法来获取和设置VB.NET中的输入卷。我一开始看着NAudio看起来很好,同时从Mic插孔中捕获音频,但是一旦我开始使用Line In插孔就没那么多了(除非我做了一些完全错误的事情)。
所以现在我正在使用CoreAudioApi.dll,但没有任何运气来获得当前的音量水平。我只能找到“后蓝色”的设备,这与后面的插孔中的蓝线相对应。
有没有人对我的下一步应该有什么建议?
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
On Error Resume Next
Dim enmDevice As New MMDeviceEnumerator
Dim devDevice As MMDeviceCollection = enmDevice.EnumerateAudioEndPoints(EDataFlow.eAll, EDeviceState.DEVICE_STATEMASK_ALL)
Dim intLineIn As Int32 = -1
For i As Int32 = 0 To devDevice.Count - 1
If devDevice.Item(i).FriendlyName = "Rear Blue In" Then
intLineIn = i
Exit For
End If
Next
If intLineIn = -1 Then Exit Sub
Dim devLineIn As MMDevice = devDevice.Item(intLineIn)
MessageBox.Show(devLineIn.AudioEndpointVolume.MasterVolumeLevel)
MessageBox.Show(devLineIn.AudioEndpointVolume.MasterVolumeLevelScalar)
MessageBox.Show(devLineIn.AudioEndpointVolume.VolumeRange.MindB)
MessageBox.Show(devLineIn.AudioEndpointVolume.VolumeRange.MaxdB)
MessageBox.Show(devLineIn.AudioEndpointVolume.VolumeRange.IncrementdB)
End Sub