coqui-tts/TTS/tts/utils
Martin Weinelt 994be163e1
Use packaging.version for version comparisons (#2310)
* Use packaging.version for version comparisons

The distutils package is deprecated¹ and relies on PEP 386² version
comparisons, which have been superseded by PEP 440³ which is implemented
through the packaging module.

With more recent distutils versions, provided through setuptools
vendoring, we are seeing the following exception during version
comparisons:

> TypeError: '<' not supported between instances of 'str' and 'int'

This is fixed by this migration.

[1] https://docs.python.org/3/library/distutils.html
[2] https://peps.python.org/pep-0386/
[3] https://peps.python.org/pep-0440/

* Improve espeak version detection robustness

On many modern systems espeak is just a symlink to espeak-ng. In that
case looking for the 3rd word in the version output will break the
version comparison, when it finds `text-to-speech:`, instead of a proper
version.

This will not break during runtime, where espeak-ng would be
prioritized, but the phonemizer and tokenizer tests force the backend
to `espeak`, which exhibits this breakage.

This improves the version detection by simply looking for the version
after the "text-to-speech:" token.

* Replace distuils.copy_tree with shutil.copytree

The distutils module is deprecated and slated for removal in Python
3.12. Its usage should be replaced, in this case by a compatible method
from shutil.
2023-01-29 23:47:00 +01:00
..
monotonic_align Fix import statements 2021-10-25 19:29:16 +02:00
text Use packaging.version for version comparisons (#2310) 2023-01-29 23:47:00 +01:00
__init__.py rename the project to old TTS 2020-09-09 12:27:23 +02:00
data.py Add audio length sampler balancer (#1561) 2022-05-12 19:59:19 +02:00
helpers.py Fix rand_segment edge case (input_len == seg_len - 1) 2022-08-01 11:37:45 +02:00
languages.py d-vector handling (#1945) 2022-09-13 14:10:33 +02:00
managers.py Cache speaker encoder model (#2284) 2023-01-23 11:49:51 +01:00
measures.py Format style of the recipes 2021-09-06 15:16:58 +00:00
speakers.py Fixed bug related to yourtts speaker embeddings issue (#2234) 2023-01-02 14:20:02 +01:00
ssim.py Implement VitsAudioConfig (#1556) 2022-07-12 18:49:58 +02:00
synthesis.py Multilingual tokenizer (#2229) 2023-01-02 10:03:19 +01:00
visual.py Fastspeech2 (#2073) 2023-01-15 22:39:22 +01:00