Enumerate Recording Devices in NAudio

前端 未结 2 946
暖寄归人
暖寄归人 2021-02-06 00:02

How can you get a list of all the recording devices on a computer using NAudio? When you want to record, you have to give it the index of the device you want to use, but there\

2条回答
  •  忘掉有多难
    2021-02-06 00:30

    To get full device names, i use this...

    using NAudio.CoreAudioApi;
    using NAudio.Wave;
    

    For getting all recording devices:

    //create enumerator
    var enumerator = new MMDeviceEnumerator();
    //cycle through all audio devices
    for (int i = 0; i < WaveIn.DeviceCount; i++)
        Console.WriteLine(enumerator.EnumerateAudioEndPoints(DataFlow.Capture, DeviceState.Active)[i]);
    //clean up
    enumerator.Dispose();
    

    For getting all capture devices:

    //create enumerator
    var enumerator = new MMDeviceEnumerator();
    //cyckle trough all audio devices
    for (int i = 0; i < WaveOut.DeviceCount; i++)
        Console.WriteLine(enumerator.EnumerateAudioEndPoints(DataFlow.Render, DeviceState.Active)[i]);
    //clean up
    enumerator.Dispose();
    

提交回复
热议问题