-->

Simple Audio Recording dengan C#


Simple Audio Recording dengan C# - Selamat sore para sahabat blogger semuanya, berjumpa lagi dengan saya guzko di blog tutorial sederhana ini. Semoga kunjungan sahabat blogger ke blog saya ini, bisa memberikan sahabat manfaat dan inpirasi.

Seperti judul saya diatas yaitu Simple Audio Recording dengan C#, hari ini saya akan membagikan tutorial simple ini. Dimana kita kali ini akan menggunakan file .dll bawaan dari microsoft windowsnya. Penasaran bagaimana cara membuatnya? ikuti langkah-langkah dibawah ini :

Buka Visual Studio
Buka visual studio sahabat dan buat sebuah project C# baru. Jika sudah kemudian design tampilan aplikasinya seperti gambar dibawah ini :


bagiamana? sudah selesai mendesainnya? Jika sudah mari sekarang kita lanjutkan ke bagian peng-codingan .

berikut komponen yang saya gunakan pada aplikasi ini :

Komponen Propery Name Keterangan
Button btnRecording Untuk merekam suara yang masuk melalui microphone
btnStop Untuk menghentikan proses recoding dan menyimpan file tersebut
btnPlay Untuk memutar file audio rekaman yang dibuat tadi
Textbox txtlinkFile Untuk menampilkan lokasi file tersimpan
Label lblRecording Untuk menampilkan status recording dengan tulisan warna-warni
lblSize Untuk menampilkan ukuran file hasil recoding (dalam bytes)
Timer Timer1 Digunakan untuk melakukan proses perubahan warna label saat proses recording

Tahap Peng-codingan
Pertama import reference dulu seperti ini, karena pada aplikasi ini kita membutuhkan reference ini :
using System.Runtime.InteropServices;
using System.IO;

kemudian sekarang kita buat kode untuk import file dll windows serta membuat sebuah fungsi untuk record. letakkan kode ini pada bagian modulnya dibawah class form :
//membuat fungsi untuk record yang akan memanggil file winmm.dll pada windows
        [DllImport("winmm.dll", EntryPoint = "mciSendStringA", ExactSpelling = true, CharSet = CharSet.Ansi, SetLastError = true)]
        private static extern int record(string lpstrCommand, string lpstrReturnString, int uReturnLength, int hwndCallback);


lanjutkan klik 2x pada form load dan inputkan kode berikut ini :
            btnStop.Visible = false;
            btnPlay.Visible = true; 

Klik 2x pada button recording dan inputkan kode dibawah ini :
            btnRecording.Enabled = false;
            btnStop.Visible = true;
            btnPlay.Visible = false;

            //kode untuk melakukan recording
            record("open new type waveaudio alias recsound","", 0, 0);
            record("record recsound", "", 0, 0);

            timer1.Enabled = true;
            lblRecording.Text = "Recording";

jika sudah, sekarang kita lanjutkan dengan klik 2x pada button stop dan inputkan kode dibawah ini. Pada kode dibawah ini juga disertakan dengan kode untuk mendapatkan file size dari sebuah file.
            btnRecording.Enabled = true;
            btnStop.Visible = false;
            btnPlay.Visible = true;

            //kode untuk stop dan menyimpan file audio recording
            record("save recsound D:\\mic.wav", "", 0, 0);
            record("close recsound", "", 0, 0);

            timer1.Enabled = false;
            lblRecording.Text = "Recoding Stop";
            lblRecording.ForeColor = Color.Black;
            txtlinkFile.Text = "D:\\mic.wav";

            //kode untuk mendapatkan ukuran file
            const string fileName = "D:\\mic.wav";
            FileInfo f = new FileInfo(fileName);
            long s1 = f.Length;
            lblSize.Text = f.Length.ToString();

Klik 2x pada button play dan inputkan kode dibawah ini untuk memutar file audio atau hasil rekaman.
            try
            {
                (new Microsoft.VisualBasic.Devices.Audio()).Play("D:\\mic.wav");
            }
            catch
            {
                MessageBox.Show("File tidak ditemukan. Pastikan file terdapat pada directory");
            }

kemudian kode dibawah ini untuk membuat tulisan warna-warni saat button recording ditekan. Isikan internval dari timer ini 1000. Dan kodenya seperti berikut ini :
            Random rand = new Random();
            for (int i = 0; i < 255; i++)
            {
                int A = rand.Next(i);
                int R = rand.Next(i);
                int G = rand.Next(i);
                int B = rand.Next(i);
                lblRecording.ForeColor = Color.FromArgb(A, R, G, B);
            }
oke selesai deh sahabat blogger. Bagiamana? gampang kan kodenya. Demikianlah tutorial tentang Simple Audio Recording dengan C#. Semoga tutorial yang saya bagikan ini bisa memberikan manfaat dan inspirasi bagi sahabat blogger semuanya. Barangkali setelah melihat tutorial ini, sahabat blogger mempunyai ide untuk membuat aplikasi yang lebih canggih lagi..hehe.. Sekian dulu dari saya, bagi teman-teman yang ingin mendownload kode lengkap dari aplikasi ini, bisa melalui link yang sudah saya sertakan dibawah. Jika ada sahabat blogger yang ingin bertanya, silahkan jangan segan-segan untuk meninggalkan komentar dibawah. Kita jumpa lagi dilain waktu dengan tutorial yang berbeda....seeee...uuuuu


1 komentar:

avatar

itu ada dua button, tapi di program kayaknya butuh 3 button. caranya gimana ya min?
terima kasih sebelumnya

Click to comment