Capturing Window's audio in C#

后端 未结 3 836
無奈伤痛
無奈伤痛 2020-12-15 00:19

Is it possible to record Window\'s output sounds programmatically in C#? A bit like recording something from the \"what you hear\" or \"stereo output\" feature (without havi

相关标签:
3条回答
  • 2020-12-15 01:05

    This is called loopback recording, and it is possible in Windows. If you have a soundcard that supports loopback (I just checked on my low-end Toshiba laptop, and it doesn't) you can record straight from the loopback device using the waveInOpen etc. API, which is easy to use in C#. Note: recording audio in this way necessarily entails a reduction in quality, since the audio signal is converted to analog for output and then re-digitized to support the loopback interface.

    If you don't have a soundcard, WASAPI will let you do this. I suppose WASAPI can be used with C#, but it looks painful.

    0 讨论(0)
  • 2020-12-15 01:15

    I'm a bit tardy to the party, but CSCore has a pretty great library for managing windows audio events in C#.

    This in particular looks like what you're wanting. http://filoe.github.io/cscore/sharpDox/1.2.0-release/#type/WasapiLoopbackCapture

    0 讨论(0)
  • 2020-12-15 01:25

    Also checkout the NAudio library.

    PS. C++ but relevant http://blogs.msdn.com/b/matthew_van_eerde/archive/2008/12/16/sample-wasapi-loopback-capture-record-what-you-hear.aspx?PageIndex=2

    0 讨论(0)
提交回复
热议问题