I am new to FMOD, and want to use it to make a device that does realtime voice effects. I fired up the recorder sample on windows laptop (2019 dell xps) has very noticeable latency (~500ms) between my speaking and hearing my voice. I set the LATENCY_MS value to 10ms, and while the latency reported in realtime by the recorder sample is about 10ms, when I speak into the laptop microphone my voice is clearly delayed when I hear it on the laptop speaker.
I actually expected there to be latency since I was skeptical that a windows laptop would not introduce a significant delay, but I was hopeful. What I didnt expect is for the recorder sample to report 10ms latency but then to hear a big latency. Where do you think the latency is, and is there any hope of getting it to be as small as 10ms on a modern windows laptop? My laptop is a pretty fast one, a dell xps 15 9575, 8th gen core i7.
Doing this on the laptop is just to prototype it. The finished product will be a vocoder to do realtime voice effects. If the finished product has the processing power of a high end cell phone, would the recorder sample likely perform with 10ms latency or less?
thank you for any insight - Mark
It sounds like it could be an issue with the audio driver, could you try making the LATENCY_MS larger (eg. 100ms, 150ms, etc.) and see if that makes a difference?
Thank you for your response! I have increased the latency to 150 and it made the latency higher.
I then tried the recorder sample on my desktop computer, which is a Microsoft Surface Studio 2.
The latency is less but there is still a very noticeable delay from clapping my hands to hearing the clap (about a quarter of a second i.e. 250ms).
Maybe this much latency in a windows pc is normal? On second thought, I guess not, because people are using FMOD for video games. My end goal is to have this code in an embedded system, probably something as powerful as a modern smartphone. Do you think I will experience more than 50 seconds of latency in that situation using the recorder sample? The product will be for modifying a human voice in real time, with no noticeable delay, so I think anything more than 50 milliseconds would make it annoying.
thank you - Mark
You shouldn’t be experiencing high latency without some reason. What version of FMOD are you using?
Are you able to try updating the audio driver and/or reinstalling the audio driver to see if that helps. Also check the console logs while using the FMOD logging libraries to see if there are any warnings or errors.