是否有任何教程或例子如何播放WAV文件在Mac上從Delphi XE2 FireMonkey構建的應用程序?Delphi XE2在Mac上播放WAV聲音嗎?
我這麼問是因爲這個代碼不工作:
var
//fWaves head and data is initialized and plays properly on Win through OpenAL
fWaves: array of record
Head: TWAVHeaderEx;
Data: array of byte;
end;
D: NSData;
N: NSSound;
begin
D := TNSData.Wrap(TNSData.Create.initWithBytes(@fWaves[0].Head, SizeOf(fWaves[0].Head) + fWaves[0].Head.DataSize));
ShowMessage(IntToStr(D.length)); //--Length is correct
N := TNSSound.Wrap(TNSSound.Create.initWithData(D));
ShowMessage(FloatToStr(N.Duration)); //--Displays 0
if N.play then
ShowMessage('Yes')
else
ShowMessage('No'); //--Always returns NO
end;
我加載WAV文件頭和數據從內存和它起着罰款與OpenAL的。所以這個問題出現在我的NSSound使用中。任何人都可以提供一些在Mac上使用Delphi XE2聲音播放的例子嗎?
我猜fwaves記錄的格式並不完全匹配實際的WAV文件的格式。嘗試使用文件中的原始字節。 – 2012-02-16 18:41:10
試過了,以及嘗試initFromFile(path_to_aiff)..沒有什麼幫助。所以我終於切換到了OpenAL。 – Kromster 2012-02-16 18:59:41