I solved it by using ffmpeg:

inputDeviceName := "Microphone (Realtek High Definition Audio)"
outputFile := "recording.mp3"

cmd := exec.Command("C:/Dev/ffmpeg/bin/ffmpeg.exe", "-f","dshow", 
"-i","audio=" + inputDeviceName, outputFile)

cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
cmd.Stdin = os.Stdin

err := cmd.Start()
if err != nil {
  println(err.Error())
}

err = cmd.Wait()
if err != nil {
  println(err.Error())
}

It works quite well. Also killing the process using cmd.Process.Kil() stops 
it successfully as the file will be written correctly.

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to