2013-09-15 1 views
16

Я хочу записать аудио с моей звуковой карты (выход). Я нашел CSCore on codeplex, но я не нашел примеров. Кто-нибудь знает, как использовать библиотеку для записи звука с моей звуковой карты и записать данные записи на жесткий диск? Или кто-нибудь знает несколько учебников по этой библиотеке?C# запись аудио из звуковая карта

ответ

31

Посмотрите на CSCore.SoundIn namespace. Класс WasapiLoopbackCapture способен записывать непосредственно с любого устройства вывода. Но имейте в виду, что WasapiLoopbackCapture доступен только с Windows Vista.

EDIT: Этот код должен работать на вас.

using CSCore; 
using CSCore.SoundIn; 
using CSCore.Codecs.WAV; 

... 

using (WasapiCapture capture = new WasapiLoopbackCapture()) 
{ 
    //if nessesary, you can choose a device here 
    //to do so, simply set the device property of the capture to any MMDevice 
    //to choose a device, take a look at the sample here: http://cscore.codeplex.com/ 

    //initialize the selected device for recording 
    capture.Initialize(); 

    //create a wavewriter to write the data to 
    using (WaveWriter w = new WaveWriter("dump.wav", capture.WaveFormat)) 
    { 
     //setup an eventhandler to receive the recorded data 
     capture.DataAvailable += (s, e) => 
      { 
       //save the recorded audio 
       w.Write(e.Data, e.Offset, e.ByteCount); 
      }; 

     //start recording 
     capture.Start(); 

     Console.ReadKey(); 

     //stop recording 
     capture.Stop(); 
    } 
} 
+0

в этом коде, где сохраняется аудиофайл результата? Я имею в виду, что я не понял путь, в котором хранится звук. – abidinberkay

+1

@abidinberkay, вы можете изменить '' dump.wav '' на '@" C: \ Users \ youruser \ folder \ filename.wav "' – John

+0

Флориан может решить мою проблему http://stackoverflow.com/questions/38240612/how-transfer-system-mic-audio-stream-to-attach-device-mic-audio-stream? noredirect = 1 # comment63908020_38240612, используя ваш ответ. –

Смежные вопросы