Sesuai dengan
judulnya, aplikasi ini berfungsi untuk merekam suara yang berasal dari audio
input device seperti microphone atau semacamnya yang nantinya akan direkam dan
disimpan menjadi file audio berekstensikan .wav. Saat pembuatan aplikasi ini,
digunakan library NAudio yang difungsikan sebagai pengolah data mulai dari
mendeteksi microphone sampai proses penyimpanan file hasil rekaman.
Dibawah ini
adalah langkah-langkah dalam membuat aplikasi audio recording ini.
1. Buka Microsoft visual
C# 2010 express, kemudian buat project baru
dengan memilih windows form
application kemudian beri nama “Audio Recording”, lalu klik OK.
2. Pada jendela
design, tambahkan 2 buah button. Untuk button1 ganti properties name nya dengan
“btnRecord” dan properties text nya menjadi “Record”. Untuk button2, ganti properties name nya menjadi
“btnStop”, dan properties text nya menjadi “Stop”.
3.
Setelah itu, klik
2 kali pada form1 hingga nanti muncul jendela source code dimana kita membuat
program untuk aplikasi audio recording dan kursor akan berada didalam fungsi
form1_Load.
4. Sebelum membuat
program, sebaiknya kita menambahkan dahulu beberapa referensi dan library yang
kita butuhkan, disini kita membutuhkan 3 file yaitu NAudio.dll, NAudioBufferReverse.cs
dan NAudioSample.cs. Bagi yang belum memiliki ketiga file tersebut dapat langsung mendownload di sini.
5. Cara menambahkan NAudio.dll adalah dengan cara klik kanan pada “Reference” yang ada di Solution Explorer atau dengan cara memilih “Project >> Add reference…”.
5. Cara menambahkan NAudio.dll adalah dengan cara klik kanan pada “Reference” yang ada di Solution Explorer atau dengan cara memilih “Project >> Add reference…”.
Kemudian pada jendela Add Reference pilih tab
browse, dan carilah lokasi dimana anda menyimpan file NAudio.dll, setelah
ketemu pilih filenya kemudian klik OK.
6. Setelah menambahkan NAudio.dll, sekarang tambahkan lagi file NAudioBufferReverse.cs dan NAudioSample.cs, dengan cara memilih “Project >> Add Existing Item…”.
Cari lokasi dimana anda menyimpan file tersebut,
kemudian pilih dan tekan OK.
7. Langkah
selanjutnya, mulai membuat program untuk aplikasi dengan mengkoneksikan library yang kita tambahkan tadi dengan aplikasi yang akan kita buat dengan cara :
using NAudio.Wave;
using AudioInterface;
mendeklarasikan
beberapa variable yang nantinya dibutuhkan. Variable-variabel tersebut antara
lain sebagai berikut (didalam kotak merah pada gambar) :
//Declarations required for audio out and mixing
private IWavePlayer waveOutDevice;
private WaveMixerStream32 mixer;
// The Sample array we will load our Audio Samples in to
private AudioSample Sample;
// WaveIn Streams for recording
WaveIn waveInStream;
WaveFileWriter writer;
string outputFilename;
8. Buka jendela design (Form1.cs[Design]),
kemudian klik 2 kali pada tombol Record. Setelah itu kita akan berpindah
kembali pada jendela source code. Didalam fungsi private
void btnRecord_Click(object
sender, EventArgs e) ini nantinya kita akan
membuat program untuk merekam suara. Program untuk merekam suara seperti yang
ada digambar dibawah ini :
private void btnRecord_Click(object sender, EventArgs e)
{
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Title = "Select output file:";
saveFileDialog.Filter = "WAV Files (*.wav)|*.wav";
saveFileDialog.FileName = outputFilename;
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
outputFilename = saveFileDialog.FileName;
waveInStream = new WaveIn(44100, 2);
writer = new WaveFileWriter(outputFilename, waveInStream.WaveFormat);
waveInStream.DataAvailable += new EventHandler<WaveInEventArgs>(waveInStream_DataAvailable);
waveInStream.StartRecording();
// Just controling the objects on the screen.
btnRecord.Enabled = false;
btnStop.Enabled = true;
}
}
9. Tambahkan juga fungsi waveInStream_DataAvailable,
yang digunakan untuk mengambil data suara yang berasal dari microphone.
void waveInStream_DataAvailable(object sender, WaveInEventArgs e)
{
writer.WriteData(e.Buffer, 0, e.BytesRecorded);
int secondsRecorded = (int)(writer.Length / writer.WaveFormat.AverageBytesPerSecond);
}
10. Kembali lagi ke jendela design, klik 2 kali
pada tombol Stop. Setelah itu pada fungsi btnStop_Click, tambahkan program
dibawah ini.
private void btnStop_Click(object sender, EventArgs e)
{
waveInStream.StopRecording();
waveInStream.Dispose();
waveInStream = null;
writer.Close();
writer = null;
btnRecord.Enabled = true;
btnStop.Enabled = false;
}
11. Setelah selesai membuat program, sekarang
waktunya untuk menguji apakah aplikasi tersebut berhasil atau tidak. Jalankan program
tersebut dengan menekan tombol “start debugging” atau bisa dengan menekan
tombol F5 pada keyboard.
Setelah itu tekan
tombol “Record”, maka akan muncul saveFileDialog yang mana kita diminta untuk
menentukan lokasi dimana kita ingin menyimpan hasil rekaman suara tersebut. Setelah
kita tentukan lokasi dan nama filenya, klik Save, maka secara otomatis proses
perekaman dimulai. Jika kita ingin mengakhiri proses perekaman, tekan tombol “Stop”
pada aplikasi.
12. Setelah kita menekan tombol Stop, kita dapat
memutar file hasil rekaman yang kita buat tadi dengan cara, cari lokasi file
sesuai dengan tempat dimana kita menyimpan file tadi, kemudian putar/buka file
tersebut dengan software pemutar file audio.
Jika file hasil rekaman sesuai dengan apa yang
kita rekam tadi, berarti aplikasi audio recording berjalan sesuai dengan
fungsinya.
0 komentar:
Posting Komentar