Skip to content

TEENAGENT: Add text-to-speech (TTS) #6566

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Jun 4, 2025
Merged

Conversation

ellm135
Copy link
Contributor

@ellm135 ellm135 commented Apr 23, 2025

Adds a toggle for text-to-speech in the game options.
Adds text-to-speech for the following:

  • Object names
  • Inventory item names and descriptions
  • Object combinations
  • Credits
  • Dialogue
  • Cutscene text

Copy link
Member

@sev- sev- left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed, changes are required


#define GAMEOPTION_TTS GUIO_GAMEOPTIONS1

#endif // TEENAGENT_DETECTION_H
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

End line is missing

@bluegr bluegr added the GSoC Part of a Google Summer of Code project label Apr 25, 2025
Copy link
Member

@criezy criezy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have added two comments:

  • possible missing sanity check
  • check if it would be useful to add TTS in the versions that have speech for the non-voiced text (e.g.inventory items).

In addition to those, did you check if there is a way to know which character is speaking? That would allow to use a difference voice for each character. But this may not be possible.

@ellm135 ellm135 force-pushed the teen-tts branch 2 times, most recently from c884eae to d96bb65 Compare June 2, 2025 21:47
kEskimo = 18,
kMike = 19,
kMarkEnd = 20,
kCredits = 21
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please rename this kCredits to something else (for example kCreditsText) and update all the places where it is used. There is already a kCredits defined in scene.h and while it is restricted to the SceneEvent struct scope it still generates a warning currently in all the files that include both dialog.h and scene.h:

./engines/teenagent/scene.h:62:6: warning: declaration shadows a variable in namespace 'TeenAgent' [-Wshadow]
   62 |             kCredits,
      |             ^
./engines/teenagent/dialog.h:78:2: note: previous declaration is here
   78 |         kCredits = 21
      |         ^

ellm135 added 2 commits June 3, 2025 19:43
Currently, the Polish and Czech versions have all text in English.
Therefore, the TTS language for these versions should be English to
match the text. The Polish CD/Floppy versions also have no working
voiceover, so they need full TTS.
Copy link
Member

@criezy criezy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you. It looks all good now.

@criezy criezy merged commit 1674888 into scummvm:master Jun 4, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GSoC Part of a Google Summer of Code project
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants