karashiiro / TextToTalk

Chat TTS plugin for Dalamud. Has support for triggers/exclusions, several TTS providers, and more!
MIT License
46 stars 30 forks source link

Support multiple voice presets per gender option #130

Closed spinda closed 1 year ago

spinda commented 1 year ago

Multiple voice presets can be selected for each gender option. They will be randomly assigned to characters, seeded by the hash of the character name, so that the same voices are consistently assigned to the same characters.

Resolves #53.

karashiiro commented 1 year ago

Thank you for implementing this! I'm out of town for the weekend, but I'll test this on either Sunday or Monday before likely merging it.

spinda commented 1 year ago

Awesome! One note for testing - inside VoicePresets.json, you'll need to manually rewrite

  "CurrentVoicePreset": {
    "System": 0,
    "AmazonPolly": 22,
    "Uberduck": 4,
    "Websocket": 7
  },
  "UngenderedVoicePresets": {
    "System": 0,
    "AmazonPolly": 1,
    "Uberduck": 4,
    "Websocket": 7
  },
  "MaleVoicePresets": {
    "System": 0,
    "AmazonPolly": 10,
    "Uberduck": 5,
    "Websocket": 8
  },
  "FemaleVoicePresets": {
    "System": 0,
    "AmazonPolly": 2,
    "Uberduck": 6,
    "Websocket": 9
  }

into

  "CurrentVoicePreset": {
    "System": 0,
    "AmazonPolly": 22,
    "Uberduck": 4,
    "Websocket": 7
  },
  "UngenderedVoicePresets": {
    "System": [0],
    "AmazonPolly": [1],
    "Uberduck": [4],
    "Websocket": [7]
  },
  "MaleVoicePresets": {
    "System": [0],
    "AmazonPolly": [10],
    "Uberduck": [5],
    "Websocket": [8]
  },
  "FemaleVoicePresets": {
    "System": [0],
    "AmazonPolly": [2],
    "Uberduck": [6],
    "Websocket": [9]
  }

I didn't add a migration because 1.17.0.0 hasn't released yet.

karashiiro commented 1 year ago

Sorry for the delay, been busy fixing Universalis. I'll merge this tonight and publish a new testing release that includes it.