Cannot use the Talkie library with ESP32 board

This involves using the ESP32 for voice synthesis. I installed ESP32 in ArduinoIDE and the Talkie library, which is supposed to support the ESP32.
However, when I try to run the samples from the Talkie github page, I get the following error:

/Users/username/Documents/Arduino/libraries/Talkie/src/Talkie.cpp: In member function 'void Talkie::initializeHardware()':
/Users/username/Documents/Arduino/libraries/Talkie/src/Talkie.cpp:326:44: error: too many arguments to function 'hw_timer_t* timerBegin(uint32_t)'
  326 |         sTalkieSampleRateTimer = timerBegin(1, APB_FREQUENCY_DIVIDER, true);
      |                                  ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /Users/username/Library/Arduino15/packages/esp32/hardware/esp32/3.0.2/cores/esp32/esp32-hal.h:84,
                 from /Users/username/Library/Arduino15/packages/esp32/hardware/esp32/3.0.2/cores/esp32/Arduino.h:36,
                 from /Users/username/Documents/Arduino/libraries/Talkie/src/Talkie.cpp:78:
/Users/username/Library/Arduino15/packages/esp32/hardware/esp32/3.0.2/cores/esp32/esp32-hal-timer.h:35:13: note: declared here
   35 | hw_timer_t *timerBegin(uint32_t frequency);
      |             ^~~~~~~~~~
/Users/username/Documents/Arduino/libraries/Talkie/src/Talkie.cpp:327:29: error: too many arguments to function 'void timerAttachInterrupt(hw_timer_t*, void (*)())'
  327 |         timerAttachInterrupt(sTalkieSampleRateTimer, timerInterrupt, true);
      |         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/username/Library/Arduino15/packages/esp32/hardware/esp32/3.0.2/cores/esp32/esp32-hal-timer.h:50:6: note: declared here
   50 | void timerAttachInterrupt(hw_timer_t *timer, void (*userFunc)(void));
      |      ^~~~~~~~~~~~~~~~~~~~
/Users/username/Documents/Arduino/libraries/Talkie/src/Talkie.cpp:328:9: error: 'timerAlarmWrite' was not declared in this scope; did you mean 'timerWrite'?
  328 |         timerAlarmWrite(sTalkieSampleRateTimer, (getApbFrequency() / APB_FREQUENCY_DIVIDER) / SAMPLE_RATE, true);
      |         ^~~~~~~~~~~~~~~
      |         timerWrite
/Users/username/Documents/Arduino/libraries/Talkie/src/Talkie.cpp:330:5: error: 'timerAlarmEnable' was not declared in this scope; did you mean 'timerAlarm'?
  330 |     timerAlarmEnable(sTalkieSampleRateTimer);
      |     ^~~~~~~~~~~~~~~~
      |     timerAlarm
/Users/username/Documents/Arduino/libraries/Talkie/src/Talkie.cpp: In member function 'void Talkie::terminateHardware()':
/Users/username/Documents/Arduino/libraries/Talkie/src/Talkie.cpp:449:9: error: 'timerAlarmDisable' was not declared in this scope
  449 |         timerAlarmDisable(sTalkieSampleRateTimer);
      |         ^~~~~~~~~~~~~~~~~

exit status 1

Compilation error: exit status 1

It seems several function calls are non existent or have different signatures.
Thanks in advance.

It seems likely that the ESP32 timer library, or something in the board definitions has been changed since the Talkie version was implemented. Others have encountered similar problems with recent ESP32 releases.

@jremington thanks for the quick reply. It makes sense and I was wondering if this could be solved by using older libraries of either ESP32 or Talkie. Have you seen others solve this issue?
I've seen some youtube tutorials where the library worked successfully.

If you can find the older version of the timer library or ESP core that work, you should be fine, although newer ESP32 code might be not work.

To see whether others have encountered this problem, my approach is to use a unique part of the error message as a search phrase.

Example: this phrase: "talkie esp32 too many arguments to function timerAttachInterrupt"

turned up this hit, which is related to your problem, and updating the library solved it.

@jremington Thanks so much for your kind support. That was the key, I did that right away and the sketch is now running successfully.

I will keep it that way, as this is somewhat a key feature of the project. I hope I won't be missing much of the newer ESP core API, but only time will tell.