public static void Main(string[] args)
{
try
{
//Console.Clear();
Console.SetWindowSize(120, 40);
AudioEndpointManager manager = new AudioEndpointManager();
if (args == null || args.Length == 0)
{
displayDevices(manager);
return;
}
switch (args[0]) {
case "/list":
displayDevices(manager);
break;
case "/?":
case "/help":
displayHelpMessage();
break;
case "/cro":
Console.Write(string.Format("{0} {1} {2}", manager.DefaultOutputDevice.Id, manager.DefaultOutputDevice.Name, manager.DefaultOutputDevice.Bus));
break;
case "/cri":
Console.Write(string.Format("{0} {1} {2}", manager.DefaultInputDevice.Id, manager.DefaultInputDevice.Name, manager.DefaultInputDevice.Bus));
break;
case "/so":
if (args.Length == 2)
manager.SetDefaultOutputDevice(args[1]);
if (args.Length == 3)
manager.SetDefaultOutputDevice(args[1], args[2]);
if (args.Length > 4)
manager.SetNextDefaultOutputDevice(args, 1);
break;
case "/si":
if (args.Length == 2)
manager.SetDefaultInputDevice(args[1]);
if (args.Length == 3)
manager.SetDefaultInputDevice(args[1], args[2]);
if (args.Length > 4)
manager.SetNextDefaultInputDevice(args, 1);
break;
default:
break;
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
/*
AudioEndpoint audio = new AudioEndpoint();
try
{
audio.GetAudioInputDevices();
} catch (Exception e) {
Console.WriteLine(e.ToString());
}
try
{
audio.GetAudioOutputDevices();
} catch (Exception e) {
Console.WriteLine(e.ToString());
}
Console.WriteLine("Output devices...");
foreach (KeyValuePair<String, String> device in audio.OutputDevicesPeriheral)
Console.WriteLine(device.Key + " (" + device.Value + ") " + audio.OutputDevices[device.Key]);
Console.WriteLine();
Console.WriteLine("Input devices...");
foreach (KeyValuePair<String, String> device in audio.InputDevicesPeriheral)
Console.WriteLine(device.Key + " (" + device.Value + ") " + audio.InputDevices[device.Key]);
Console.WriteLine();
Console.WriteLine("Default output device: " + audio.DefaultOutputDevice);
Console.WriteLine("Default input device: " + audio.DefaultInputDevice);
*/
/*
Console.WriteLine();
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
*/
}