Dengan menggunakan visual basic kita bisa memainkan sebuah file suara dalam kasus ini saya akan memainkan sebuah file dengan extensi (*.wav).
Disini saya tidak menggunakan komponen Microsoft MultiMedia Control (MMC) ataupun Windows Media Player (WMP) melainkan menggunakan fungsi windows api yang bernama sndPlaySound.
Parameter-parameter dari fungsi windows api sndPlaySound diantaranya yaitu :
- lpszSoundName --> nama file audio .wav atau yang lainnya untuk dijalankan
- uFlags --> nilai spesifikasi flag bagaimana file audio tersebut dijalankan diantaranya :
1. SND_ALIAS=&H10000
menjalankan default windows sound (termasuk SystemStart, Asterisk, dll)
2. SND_ASYNC=&H1
melanjutkan eksekusi program setelah memulai menjalankan sound
3. SND_FILENAME=&H20000
menjalankan sesuai dengan nama file yang dispesifikasikan
4. SND_LOOP=&H8
mengulang menjalankan file audio sampai fungsi sndPlaySound dipanggil kembali
dengan parameter lpszSoundName diisi dengan kosong (""). SND_ASYNC
juga harus diset ulang
5. SND_NODEFAULT=&H2
tidak menjalankan sound windows default jika file yang dispesifikasikan tidak
ditemukan
6. SND_NOSTOP=&H10
menjalankan file audio sampai akhir dari file
7. SND_NOWAIT=&H2000
tidak menunggu jika driver sound sedang sibuk
8. SND_SYNC=&H0
menunggu sampai file audio selesai dijalankan sebelum melanjutkan
perintah berikutnya
Cukup dengan parameternya kita beralih ke projectnya.
siapkan sebuah form yang didalamnya terdapat sebuah Command Button dan juga siapkan sebuah module.
Disini kita akan mencoba memainkan sebuah file wav yang letaknya di folder c:\windows\media
Ketikan listing berikut pada module dan simpan dengan nama mdlsndparam :
Public Const SND_ALIAS = &H10000Kemudian pada object Command Button di form ketikan listing berikut :
Public Const SND_ASYNC = &H1
Public Const SND_FILENAME = &H20000
Public Const SND_LOOP = &H8
Public Const SND_NODEFAULT = &H2
Public Const SND_NOSTOP = &H10
Public Const SND_NOWAIT = &H2000
Public Const SND_SYNC = &H0
Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Private Sub Command1_Click()Silahkan kembangkan sendiri listing diatas sesuai kebutuhan anda.
Dim x As Byte
x = sndPlaySound("c:\windows\media\ding.wav", SND_ALIAS or SND_SYNC)
If x = 0 Then
MsgBox "Error : Sound tidak bisa dijalankan..."
End If
End Sub
Semoga membantu.
1 comments:
tx a lot :)
Post a Comment