Girdi ve çıktı aygıtlarının kimliğine sahip olduğunuzu varsayarak, ilgili mikser kimliklerini almak için aşağıdaki gibi bir şey kullanabilirsiniz. Her ikisi de aynı ise, ikisi de aynı miksere ve muhtemelen aynı fiziksel donanımın bir parçasına eklenir. Yalnızca giriş cihazının adını varsa
/// <summary>
/// Get the ID of the mixer associated with the given input device ID
/// Returns -1 if no such mixer can be found
/// </summary>
static public int GetMixerIdInput(int inputId)
{
int mixerId = -1;
int result = MmeMixerApi.mixerGetID(inputId, ref mixerId, MIXER_OBJECTFLAG.WAVEIN);
if (((MMError)result != MMError.MMSYSERR_NOERROR) &&
((MMError)result != MMError.MMSYSERR_NODRIVER))
{
throw new MmeException((MMError)result);
}
return mixerId;
}
/// <summary>
/// Get the ID of the mixer associated with the given output device ID
/// Returns -1 if no such mixer can be found
/// </summary>
static public int GetMixerIdOutput(int outputId)
{
int mixerId = -1;
int result = MmeMixerApi.mixerGetID(outputId, ref mixerId, MIXER_OBJECTFLAG.WAVEOUT);
if (((MMError)result != MMError.MMSYSERR_NOERROR) &&
((MMError)result != MMError.MMSYSERR_NODRIVER))
{
throw new MmeException((MMError)result);
}
return mixerId;
}
, gibi bir şey kullanabilirsiniz cihaz kimliğini bulmak için aşağıdaki:
/// <summary>
/// Find the ID of the input device given a name
/// </summary>
static public int GetWaveInputId(string name)
{
int id = MmeWaveApi.WAVE_MAPPER;
int devCount = MmeWaveApi.waveInGetNumDevs();
WAVEINCAPS caps = new WAVEINCAPS();
for (int dev = 0; (dev < devCount) && (id == MmeWaveApi.WAVE_MAPPER); dev++)
{
int result = MmeWaveApi.waveInGetDevCaps(dev, ref caps, Marshal.SizeOf(caps));
if ((MMError)result == MMError.MMSYSERR_NOERROR)
{
if (string.Compare(name, 0, caps.szPname, 0, Math.Min(name.Length, caps.szPname.Length)) == 0)
{
id = dev;
}
}
}
return id;
}
Sorunuzun biraz daha açar mısınız? Bu aygıtların tutamaçlarının sahibi misiniz yoksa bunlar, kaynaklara sahip olmadığınız başka bir bileşenle mi aktarılıyor? Hoparlör ve mikrofon ile ne düşünüyorsunuz? Sadece ses kartı analog çıkışı ve girişi veya analog/dijital önemi var mı? – Manuel