¿Hay algún tutorial o ejemplo sobre cómo reproducir archivos WAV en Mac desde la aplicación creada por Delphi XE2 FireMonkey?¿Hay alguna reproducción de sonido WAV en Mac desde Delphi XE2?
Lo digo porque el código no funciona:
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;
Estoy cargando encabezado del archivo WAV y datos de la memoria y juega bien con OpenAL. Entonces, el problema está en algún lugar de mi uso de NSSound. ¿Podría alguien proporcionar ejemplos de funcionamiento de la reproducción de sonido Delphi XE2 en Mac?
Supongo que el formato de un registro fwaves no coincide exactamente con el formato de un archivo WAV real. Intente usar los bytes sin procesar del archivo. –
Probé eso, también probé initFromFile (path_to_aiff) .. Nada ayudó. Así que finalmente cambié a OpenAL. – Kromster