I am having an accuracy problem with some mp3 and mp2 files. When I call FMOD_Channel_SetPosition with a position near the end of the file I get a positioning error about 300 ms (the file is about 4:25 minutes length).
I am opening the files without FMOD_ACCURATETIME flag because I need to open and play it fast and the files are in a server into the local network. If I open it with the FMOD_ACCURATETIME flag the FMOD_Channel_SetPosition works fine but it takes a lot of time to open.
All the files are CBR. I tested it with MPEG 1 Layer III 44.1KHz 128Kbps and with MPEG 1 Layer II 48KHz 256Kbps and it is pretty the same.
It seems to be a frame length error calculation (maybe you are forgetting the padding bit?) because the error increases along the file: for greater values of SetPosition the positioning error is greater.
With the FMOD_ACCURATETIME flag, the FMOD_Sound_GetLength give me a length of 26535, without the flag it give me a length of 265377 ms that is really close to the correct one.
Some time ago I read a post were Brett wrote that this is a known problem with VBR files, but here we are talking about CBR files.
I uploaded one of the files so you could see the error. In this case, open the file with and without the FMOD_ACCURATETIME flag and go to the position 264712 ms and you will hear the difference:
I am using the 4.34.2 dll version.
Best regards, Lucio.
- luciocorral asked 5 years ago
- You must login to post comments