سلام بر برنامه نویسان عزیز با یه کد سی شارپ دیگه در خدمتتون هستم.امیدوارم که از این استفاده کافی رو ببرید.با استفاده از این کد و با یک میکروفون می تونید برنامه ضبط صدا رو بنویسین.
using Microsoft.VisualBasic.Devices;
using Microsoft.VisualBasic;
using System.Runtime.InteropServices;
using Microsoft.VisualBasic;
using System.Runtime.InteropServices;
این تابع 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);
CharSet = CharSet.Ansi, SetLastError = true, ExactSpelling = true)]
private static extern int mciSendString(string lpstrCommand,
string lpstrReturnString, int uReturnLength, int hwndCallback);
سپس دکمه هایی با اسم های زیر بسازین :
Record
Read
SaveStop
Read
SaveStop
در رویداد کلیک دکمه Record هم کد زیر رو بنویسین :
// record from microphone
mciSendString("open new Type waveaudio Alias recsound", "", 0, 0);
mciSendString("record recsound", "", 0, 0);
mciSendString("open new Type waveaudio Alias recsound", "", 0, 0);
mciSendString("record recsound", "", 0, 0);
در رویداد کلیک دکمه SaveStop هم کد زیر رو بنویسین:
// stop and save
mciSendString("save recsound c:\\record.wav", "", 0, 0);
mciSendString("close recsound ", "", 0, 0);
Computer c = new Computer();
c.Audio.Stop();
mciSendString("save recsound c:\\record.wav", "", 0, 0);
mciSendString("close recsound ", "", 0, 0);
Computer c = new Computer();
c.Audio.Stop();
برای دکمه Read هم کد زیر رو بنویسید:
Computer computer = new Computer();
computer.Audio.Play("c:\\record.wav", AudioPlayMode.Background);
computer.Audio.Play("c:\\record.wav", AudioPlayMode.Background);
همچنین شما می تونین ویدئو زیر رو که فیلم آموزش ضبط صدا در سی شارپ هست رو تماشا کنین.
مشاهده فیلم آموزش ضبط صدا در سی شارپ C#.NET :