使用C#,我试图捕获PC正在播放的音频,而不使用WASAPI和环回,因为看起来我的声卡不支持它。 TeamViewer等程序如何做到这一点?当我使用它时,人们可以从我的电脑上听到音频。
答案 0 :(得分:3)
您可以尝试使用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文件的引用,以使用编码器SDK。