How to record voice from microphone?


In this article, you will know how to record voice from microphone? You can record voice by the use of Microsoft APIs to solve this issue

Learn how to record voice from microphone?


Do you want to record your voice from Microphone? If yes, you can use the Microsoft APIs to solve this issue. It's a very simple approach to record your voice from Mic. I provided C#.net code to solve this issue.



1. Open C#.net web applications. And added the blow namespace.

using Microsoft.VisualBasic.Devices;
using Microsoft.VisualBasic;
using System.Runtime.InteropServices;

2. Add the below API.
[DllImport("winmm.dll", EntryPoint = "mciSendStringA", CharSet = CharSet.Ansi, SetLastError = true, ExactSpelling = true)]
private static extern int mciSendString(string lpstrCommand, string lpstrReturnString, int uReturnLength, int hwndCallback);

3. Create three Buttons and given the below name and text for the buttons.

1. Record
2. SaveStop
3. Read

1. Under Record Button Click paste the below Code:

// record from microphone
mciSendString("open new Type waveaudio Alias recsound", "", 0, 0);
mciSendString("record recsound", "", 0, 0);

2. Under Save / Stop button Click,


// stop and save
mciSendString("save recsound c:\\record.wav", "", 0, 0);
mciSendString("close recsound ", "", 0, 0);
Computer c = new Computer();
c.Audio.Stop();

3. Under Read Button Click

Computer computer = new Computer();
computer.Audio.Play("c:\\record.wav", AudioPlayMode.Background);


Save and Execute it.




Comments

Author: Abhi04 Mar 2009 Member Level: Gold   Points : 1

http://vivekthangaswamy.blogspot.com/2006/11/using-cnet-play-multimedia-files-using.html

Author: Prashanthi23 Jul 2009 Member Level: Silver   Points : 1

HI RajaRaman,

I used your code in my asp.net application
It is working fine in local machine.

but I want to save the voice record file from the client system.
how can it is possible
if you know the solution plz.. give reply

Thanks & Regards
Prashanthi G.

Author: Prachi08 Oct 2009 Member Level: Gold   Points : 0

How to do this in VB.NET?

Author: max26 Feb 2010 Member Level: Bronze   Points : 1

Hi Prashanthi,

it didn't work for me. Can you paste your code sample here please ?

Author: Travis25 Jul 2010 Member Level: Bronze   Points : 1

I've checked a lot of posts for various ways to record sound from C# in a windows forms. This was the simplest by far.

The only additional thing I had to do was to Add Reference to Microsoft.VisualBasic so that it would recognize "Computer".

Author: Gururaj01 Feb 2011 Member Level: Gold   Points : 1

Hi Rajaraman,

I am facing issues compiling the code. Request your help here.

i. unable to find the dll - Reference using Microsoft.VisualBasic.Devices;

ii. Where is class 'Computer' ?

Regards
|Guru|

Author: Habeebur04 Nov 2011 Member Level: Bronze   Points : 0

im using VS2005, it working but.. its plays nothing... simply i getting usshhhhhhhhh sound......

Guest Author: Shruthi21 Apr 2012

it works in local properly!... but when uploaded in my Server.. it is not recording means i can see a file.. but when try to read i am not able to read this... recording.. saved..

Can u pls help?

Guest Author: Ashwin28 May 2012

Can any one tell me how to add an API ? I'm using Microsoft Visual Studio 2010.

Guest Author: manoj06 Sep 2012

Hi friends.

I want to get the audio from PC microphone and transmit the sound
to camera speakers.

In this article, How to add an API.

Guest Author: Nalina05 Nov 2012

Super ! it worked like a charm for me!

Guest Author: Chandu Puthra07 Feb 2013

Iam unable to use it...Not working in my local machine...
it is initiating that using Microsoft.VisualBasic.Devices;.

Devices does not exist in the namespace....

in this also below line also. at" extern int " im getting an error.
private static extern int mciSendString(string lpstrCommand, string lpstrReturnString, int uReturnLength, int hwndCallback);

Author: Rajendra Patel09 Apr 2013 Member Level: Bronze   Points : 0

please give me solution,Above code is working properly but i get disturbance in recorded voice. Is there any improvement in this code?

Guest Author: thilipan30 Apr 2013

Can I select audio input device? Please give me command for selecting audio input device

Guest Author: purvang oandya29 May 2013

I cannot add namespace using Microsoft.VisualBasic.Devices;
that Devices is not shown to smart help(ctrl+shift)

Author: Suneetha09 Dec 2015 Member Level: Bronze   Points : 0

Hi,

The code works fine on local system but when hosted on IIS it does'nt work. Can you please suggest.

Regards.

Author: Suneetha09 Dec 2015 Member Level: Bronze   Points : 0

Hi,

The code works fine on local system but when hosted on IIS it does'nt work. Can you please suggest.

Regards.