DiUS / esp-picotts

PicoTTS Text-to-Speech engine component for Espressif IDF
13 stars 5 forks source link

Memory consumption vs. press release announcement in 2008 #5

Open klaus-liebler opened 1 month ago

klaus-liebler commented 1 month ago

Dear Jade,

thank you for this wonderful library. I successfully ported it to my https://github.com/klaus-liebler/labathome project with a NAU88C22 codec.

When I compare your statement regarding RAM usage ("the engine uses just over 1.1MB of RAM while initialised") with the press release in https://www.pressebox.com/pressrelease/svox-ag/SVOX-releases-Pico-highest-quality-sub-1-MB-Text-to-Speech-system-available/boxid/217338 ("To run SVOX Pico, a device needs less than 250 KB RAM [on ARM9]") there is a significant discrepancy. Is there a good explanation for that? Is ARM9 really that memory efficient compared to Xtensa?

Background: I use the ESP32-S3N8R2 with 2MB of RAM and there are plenty of other processes on my CPU that need lot of memory as well.

Thank you!

Regards, Klaus Liebler

jmattsson commented 1 week ago

Hello Klaus,

That is an excellent question, and I don't currently have a good answer. PicoTTS fails if given a too small memory arena, and 1.1MB was empirically found to be the magic value that could handle all the languages. Do feel free to play with the value of PICO_MEM_SIZE in esp_picotts.c and see if you can narrow down why it's insisting on so much more memory than that advertised 250KB. If I find time, I may try to do this too, but currently I'm very oversubscribed 😔