Multimedia Delphi

Bir cok program kucuk wave dosyalarini dagitmaktansa dogrudan programin icinden
calmaktadir. Bu islemi Delphi'den yapmak icin:
1. Project|Resources komutu verin.
2. Gelen pencerede sag tiklayip New|User Data komutu verin.
3. Resource Type olarak "WAVE" girin.
4. Istediginiz wav uzantili dosyayi secin.
5. Delphi varsayilan olarak WAVE_1 ismini verecektir. Bunu herhangi bir sayiyla
degistirin. (Uzerinde sag tiklaip ReName komutu vererek) Örnegin: 1
Asagida benim kullandigim procedure'lari veriyorum:
**************************************************************************
function PlayWavFromResource(ResID: Integer): Boolean;
begin
Result := PlaySound(PChar('#' + IntToStr(ResID)), HInstance, SND_RESOURCE or SND_ASYNC);
end;
function PlayWavFile(const FileName: string): Boolean;
begin
Result := PlaySound(PChar(FileName), 0, SND_ASYNC);
end;
procedure StopWav;
var buffer: array[0..2] of char;
begin
buffer[0] := #0;
PlaySound(Buffer, 0, SND_PURGE);
end;
**************************************************************************
PlayWavFromResource procedure'i programin icerisinde gomulu olan wave dosyasini
calacaktir. Parametre olarak gonderdiginiz deger yukarıda ismini degistirdiginiz
(WAVE_1 -> 1) degerdir.
Örnegin:
procedure TForm1.Button1Click(Sender: TObject);
begin
StopWav;
PlayWavFromResource(1);
end;
**************************************************************************
Notlar:
- Resource Type olarak sadece WAVE girmeniz gereklidir.
- Cok buyuk Wave dosyalarini exe'nin icine gommek yerine ayri dosya olarak dagitin.
Disardaki bir wave dosyasini calmak icin PlayWavFile isimli procedure'i
kullanabilirsiniz.
- StopWav isimli procedure o anda sistemde calinan bir ses dosyasi varsa calmayi
durduracaktir.
- PlayWavFromResource ve PlayWavFile isimli procedure'lar calma islemini arka
planda yapacaktir. Yani programiniz ses dosyasi calarken calismaya devam
edebilir.