使用C#,我试图捕获PC播放的音频,而不使用WASAPI和回送,因为我的声卡似乎不支持它。像TeamViewer这样的程序是如何做到的?当人们使用我的PC时,他们可以听到它们的声音。
最佳答案
您可以尝试使用Expression Encoder SDK:http://www.microsoft.com/de-de/download/details.aspx?id=18974我不确定是否允许您重新分发它,并且可能需要将其安装在目标计算机上。但是您可以非常轻松地使用它来从桌面录制音频和视频:
var j = new Microsoft.Expression.Encoder.ScreenCapture.ScreenCaptureJob();
j.OutputScreenCaptureFileName = @"C:\Users\Dominik\Desktop\test.wmv";
//j.AddAudioDeviceSource(Microsoft.Expression.Encoder.Devices.EncoderDevices.FindDevices(Microsoft.Expression.Encoder.Devices.EncoderDeviceType.Audio);
var audioDevices = Microsoft.Expression.Encoder.Devices.EncoderDevices.FindDevices(Microsoft.Expression.Encoder.Devices.EncoderDeviceType.Audio);
var videoDevices = Microsoft.Expression.Encoder.Devices.EncoderDevices.FindDevices(Microsoft.Expression.Encoder.Devices.EncoderDeviceType.Video);
j.AddAudioDeviceSource(audioDevices.ElementAt(1));
j.Start();
您需要在C:\ Program Files(x86)\ Microsoft Expression \ Encoder 4 \ SDK中添加对.dll文件的引用,才能使用Encoder SDK。
关于c# - 捕捉电脑声音,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17394204/