Skip to content

API to list TTS voices #11604

Description

@pinage404

Is your feature request related to a problem? Please describe.

With TTS models, i would like to know which languages / voices / gender i can use with each model, without digging the whole documentation and sometimes don't find the answer

Describe the solution you'd like

I would like to have an API endpoints that request at least for a specified model, ideally for all installed models, which languages, voices and gender are available

Maybe something like this (i don't really care about the format) :

{
	[model]: {
		[language]: [
			[voice_name, gender]
		]
	}
}

Example for pocket-tts :

{
	"pocket-tts": {
        "de_DE": [
            [
                "MALE",
                "juergen"
            ]
        ],
        "en_US": [
            [
                "MALE",
                "alba"
            ],
            [
                "MALE",
                "bill_boerst"
            ],
            [
                "MALE",
                "charles"
            ],
            [
                "MALE",
                "george"
            ],
            [
                "MALE",
                "javert"
            ],
            [
                "MALE",
                "jean"
            ],
            [
                "MALE",
                "marius"
            ],
            [
                "MALE",
                "michael"
            ],
            [
                "MALE",
                "paul"
            ],
            [
                "MALE",
                "peter_yearsley"
            ],
            [
                "MALE",
                "stuart_bell"
            ],
            [
                "FEMALE",
                "anna"
            ],
            [
                "FEMALE",
                "azelma"
            ],
            [
                "FEMALE",
                "caro_davy"
            ],
            [
                "FEMALE",
                "cosette"
            ],
            [
                "FEMALE",
                "eponine"
            ],
            [
                "FEMALE",
                "eve"
            ],
            [
                "FEMALE",
                "fantine"
            ],
            [
                "FEMALE",
                "jane"
            ],
            [
                "FEMALE",
                "mary"
            ],
            [
                "FEMALE",
                "vera"
            ]
        ],
        "es_ES": [
            [
                "FEMALE",
                "lola"
            ]
        ],
        "fr_FR": [
            [
                "FEMALE",
                "estelle"
            ]
        ],
        "it_IT": [
            [
                "MALE",
                "giovanni"
            ]
        ],
        "pt_PT": [
            [
                "MALE",
                "rafael"
            ]
        ]
    }
}

Describe alternatives you've considered

Manually digging the documentation for each model and try to find the answer

Additional context

Related to this question #11600

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions