3.2 Analisis Sistem
Analisis sistem bertujuan untuk mengidentifikasi sistem yang akan dikembangkan. Analisis diperlukan sebagai dasar perancangan sistem. Pada analisis sistem yang akan
dibuat ini, akan dijelaskan flowchart dari sistem. Flowchart dari sistem menggambarkan tahapan-tahapan dari penyelesaian masalah sistem yang sedang
dirancang. Pada analisis sistem yang akan dibuat ini, akan dijelaskan flowchart dari
sistem. Flowchart dari sistem menggambarkan tahapan-tahapan dari penyelesaian masalah sistem yang sedang dirancang. Tahapan-tahapan yang terurai secara
terstruktur, tujuan utama flowchart adalah memberikan suatu gambaran untuk mempermudah pemahaman pengguna terhadap suatu sistem yang sedang dirancang.
Adapun tahapan dari proses visualisasi suara yang akan dibuat dalam penelitian ini yaitu:
1. Masukkan file rekaman suara pernafasan. 2. Sistem menjalankan class CheapSoundFile.java, dalam class ini dilakukan
pengecekan terhadap data audio yang diinput. Apabila file audio berkestensi .wav, maka sistem akan menjalankan sub-class cheapWAV.java. Apabila
file suara yang dimasukkan bukan file .wav, maka sistem akan berhenti dan tidak dapat membaca file.
3. Sistem menjalankan sub-class cheapWAV.java untuk membaca file audio apakah benar-benar file wav atau bukan. Saat pembacaan file wav tersebut
dilakukan beberapa pengecekan file wav, yaitu : • Pengecekan huruf “ R I F F W A V E” dalam ascii.
• Cek ukuran file filesize • Cek apakah terdapat huruf “f m t” dari file
• Ambil informasi channel dan sample rate dari file audio, apabila tidak ada maka file wav tersebut tidak sesuai unsupported WAV
file. • Lalu pengecekan “d a t a” dari file audio. Jika tidak ada maka file
wav tersebut kualitasnya buruk.
Universitas Sumatera Utara
• Cek data file bagian dari file wav yang mengandung audio, yaitu data yang sebenarnya akan diolah, data terpapar dalam bentuk byte.
4. Saat pembacaan file .wav tersebut, sistem mengambil informasi yang ada didalam file tersebut. Seperti :
• NumFrames • SamplePerFrame
• FrameGains • FileSizeByte
• AvgBitrateKbps • SampleRate
• FileType 5. Pada proses visualisasi dalam sistem ini, penggambaran grafik dilakukan
berdasarkan frameGain yang diperoleh dari tiap file. frameGain tersebut mengandung data yang menunjukkan kuat lemahnya suara dari suatu file
suara. 6. Data frameGain yang berbentuk byte tersebut dikonversi ke dalam bentuk
integer. Sehingga didapat nilai yang pasti, yaitu berbentuk bilangan bulat. 7. Setelah didapat data suara dalam bentuk integer int, maka otomatis
didapat koordinat yang diperlukan dalam pembentukan grafik. Dengan fungsi yang digunakan dalam sistem ini, yaitu :
protected void
drawWaveformLineCanvas canvas,
int
x,
int
y0,
int
y1, Paint paint {
canvas.drawLinex, y0, x, y1, paint; }
7. Sistem akan terus melakukan pengulangan gambar pada canvas android, hingga akhir file suara. Seperti ditunjukkan dalam potongan kode program
berikut :
for i = 0; i width; i++ { drawWaveformLine
canvas, i, ctr - AtThisZoomLevel[start + i],
ctr + 1 + AtThisZoomLevel[start + i], paint;
if i + start == mPlaybackPos { canvas.drawLinei, 0, i, measuredHeight,
mPlaybackLinePaint; }}
Universitas Sumatera Utara
mulai Input file suara
File = .wav Cek header file
database
cek huruf “ R I F F W A V E”
Bukan file wav
Ambil size file
Cek “ f m t”
File buruk Cek channel
sample rate
Cek “ d a t a”
Didapat raw data byte
Konversi byte ke integer
Didapat plot x,y, x1, y1
Cek: i=0; iwidth;
i++
Output garis stop
iwidth
T Y
T Y
T Y
T Y
Gambar 3.1 Flowchart visualisasi suara
Pada pembuatan sistem ini, banyak merujuk pada kode program suatu aplikasi android open source, yaitu RingDroid. Aplikasi tersebut hanya dijadikan rujukan dan
contoh untuk penyelesaian visualisasi suara yang dilakukan di sistem ini.
Universitas Sumatera Utara
3.2 Perancangan Sistem