Hello Josh.
Tested here with fpc 3.2.2 and 3.2.4 on Windows and Linux and SimplePlayer compiles ok.
So I suppose that you are using fpc 3.3.1.
What OS are you using?
What error message at compilation?
AACI.
lwDataLen and AACI.
BitsPerSample are declared as longword (so unsigned 32 bit).
Data.
outframes is declared cint32 on 32 bit OS and cint64 on 64 bit OS.
Maybe there is something to adapt for last trunk fpc 3.3.1.
If i explicitly cast to int64 it works again, does this break anything else?
in uos.pas around line 11076
Hum, at first look I dont think it could be problems, maybe the code must be adapted for 64 bit or 32 bit OS.
Advises are welcome.
[EDIT] So, to resume, if I understood ok, this does not compiles on fpc trunk:
if StreamIn[x].AACI.lwDataLen > (StreamIn[x].AACI.BitsPerSample div 8) then
StreamIn[x].Data.outframes := trunc (StreamIn[x].AACI.lwDataLen Div (StreamIn[x].AACI.
BitsPerSample Div 8))
but this yes:
if StreamIn[x].AACI.lwDataLen > (StreamIn[x].AACI.BitsPerSample div 8) then
StreamIn[x].Data.outframes := trunc (int64(StreamIn[x].AACI.lwDataLen) Div (int64(StreamIn[x].AACI.
BitsPerSample) Div 8))
[EDIT2] With this code, does it compile? (if yes I will commit it):
if StreamIn[x].AACI.lwDataLen > (StreamIn[x].AACI.BitsPerSample div 8) then
StreamIn[x].Data.outframes := trunc(StreamIn[x].AACI.lwDataLen / (StreamIn[x].AACI.
BitsPerSample / 8))