Releases: EveryVoiceTTS/EveryVoice
Releases · EveryVoiceTTS/EveryVoice
v0.3.0
This release fundamentally changes the way punctuation is handled in phone and phonological feature based models. We have tried to make this backward compatible with previous models, but if you have trained a model using <0.3.0 you might have to pip install everyvoice<0.3.0 in order for it to work.
✨ New Features
24a10f7- text: upgrade phonological feature encoding (commit by @roedoejet)3684860- expand punctuation beyond small and big breaks (commit by @roedoejet)
🐛 Bug Fixes
a96c2f8- remove unused preprocessor kwarg (commit by @roedoejet)76821fc- tests: fix text processing tests (commit by @roedoejet)34d5161- fix typo (commit by @roedoejet)ccb20d9- update tests for new checkpoint loading behaviour (commit by @roedoejet)
♻️ Refactors
9b873b5- move check_data from the preprocessor into a cli command (commit by @roedoejet)2193281- remove tone features (commit by @roedoejet)c26b96e- remove unused normalize and denormalize methods (commit by @roedoejet)c0451e5- pin panphon to 0.20.0 (commit by @roedoejet)ef49509- move punctuation hash to default constant (commit by @roedoejet)16a05af- move symbol sorter to utils (commit by @roedoejet)
🔧 Chores
050cc7a- update submodule (commit by @roedoejet)483f1ba- fix typo (commit by @roedoejet)98e3156- update submodule (commit by @roedoejet)f55d10a- update submodule (commit by @roedoejet)0bc0177- bump version to 0.3.0 (commit by @roedoejet)e286445- remove alpha messaging as we are now in beta (commit by @roedoejet)75cf5fe- remove version pinning in readme (commit by @roedoejet)
v0.2.0
💥 BREAKING CHANGES
-
due to
43f8610- update submodules to change specs to mel-band oriented tensors (commit by @joanise):update submodules to change specs to mel-band oriented tensors
✨ New Features
e82fbf8- add --quiet option to run_tests.py and refactor the runner (commit by @joanise)45d0685- update fs2 submodule to add .readalong synthesis output (commit by @joanise)288979d- update submodule to get Offline RAS synth output format (PR #608 by @joanise)a018e64- add dropdown options for downloading other formats other than wav in the demo (commit by @roedoejet)63ce1a2- write a regression test suite that can be sbatch submitted (commit by @joanise)cdc7cd2- added missing dependency on coverage (commit by @SamuelLarkin)5651ada- Samuel's PR suggestion (commit by @SamuelLarkin)76391f0- add support for Python 3.12 (commit by @joanise)5a6a5cb- better wizard resume message for various sw and versions (PR #629 by @joanise)15fe978- handling uv when invoking --diagnostic (commit by @SamuelLarkin)4280bce- support uv in make-everyvoice-env (commit by @joanise)552f7b6- script to take a subset of a dataset (commit by @jordanxlau)d348a07- bump the default Python version to 3.12 in make-everyvoice-env (PR #663 by @joanise)ba1d483- enhanced test cases with subsampled datasets (PR #662 by @jordanxlau)cb47697- provide a --cuda system option to build torch against the system CUDA (commit by @joanise)
🐛 Bug Fixes
110810e- build: the last ev install in make-env has to be editable (PR #603 by @joanise)ff7fdc3- tests: make "everyvoice test" use the same suite list as run_tests (commit by @joanise)a55044a- demo: fix demo by passing gradio an int16 array instead of a float32 tensor (commit by @roedoejet)29b0d79- move torch forward to 2.3.1 (PR #622 by @joanise)↘️ fixes issue #558 opened by @roedoejet
76fec7c- make torch.load safer with weights_only=True everywhere possible (PR #624 by @joanise)↘️ fixes issue #621 opened by @roedoejet
dccad14- update submodules for torch.load(weights_only=True) fixes (PR #624 by @joanise)↘️ fixes issue #621 opened by @roedoejet
d0f4bf1- demo: return filepath audio (commit by @roedoejet)86f6d19- only include the style reference input if the model supports it (commit by @roedoejet)09a0ef7- ci: fix mypy reference (commit by @roedoejet)ee455b3- tests: allow model to be 1.0 or 1.1 (commit by @roedoejet)8f9a7e3- multiple issues with regression test suite (commit by @joanise)e08bb59- tests: clean up temporary file created by unit tests (commit by @joanise)4f79cca- demo: the demo was broken due to a mismatch between outputs and gradio output widgets (commit by @roedoejet)7c3bc2a- typo, DeepForcedAligner takes a "d" (commit by @joanise)5f517ab- tests: do not assume TMPDIR is an absolute path (commit by @joanise)9edbcad- pin click to < 8.2.0 (commit by @roedoejet)49d9c8b- tests: stabilize running the "all" test suite (commit by @joanise)3e49bda- clean up the coverage reports from regression (commit by @joanise)1d85103- silence all the pointless githook warnings and logs in make-env (commit by @joanise)0522d38- on MacOS, CUDA is not supported so don't try to install with it (commit by @joanise)bd89d4e- test: use a more reliable recent past version for testing (commit by @joanise)
⚡ Performance Improvements
3a74d7c- refactor wizard to avoid expensive imports at CLI startup (PR #615 by @joanise)dc34c31- install pyworld-prebuilt for speed and robustness (commit by @joanise)
♻️ Refactors
155b7cc- tests: silence test_preprocessing and processed_audio_fixture (commit by @joanise)787033d- tests: silence test_cli/configs/model/dataloader/utils/text/wizard (commit by @joanise)3580e13- tests: move all doctest execution to one place (commit by @joanise)43f8610- update submodules to change specs to mel-band oriented tensors (commit by @joanise)62520e1- demo app to use callbacks maximally, making code DRYer (commit by @joanise)f84e604- early testing for outputs errors in create_demo_app (commit by @joanise)
✅ Tests
4a0a7bf- minimal unit testing for everyvoice demo CLI errors (commit by @joanise)a6829b4- enforce keeping submodule major.minor in sync (commit by @joanise)efbbda1- factor out cluster specific config in regression testing9f325e9- add diff-cover output and version info to regression logs (commit by @joanise)e8d1cdb- start mix data regression test case (commit by @joanise)fe3052b- test data for regress-mix (commit by @joanise)7342359- add playwright demo app tests to regress...
v0.2.0a1
✨ New Features
b40375a- demo: adds an option to hide languages and speakers in demo (commit by @wiitt)11fdbfb- preprocessor: add auto evaluation to check-data (commit by @roedoejet)3e6a819- added pre-commit.ci (commit by @SamuelLarkin)7f96d07- add model validator for text (commit by @roedoejet)3830a83- ci: Merged pre-commit into test workflow (PR #529 by @SamuelLarkin)4c8bf94- exit early from demo if ffmpeg is not installed (commit by @joanise)1482aec- add everyvoice evaluate cli (commit by @roedoejet)099f226- add mean and standard deviation to evaluation results (commit by @roedoejet)0cc2c70- minimal stub so the wizard can run on Windows (commit by @joanise)c9d8e96- cli: add export option to remove discriminators in hifigan (commit by @roedoejet)a70b017- hidden --trace option to new-project (commit by @joanise)7fe14a1- add hidden --debug-state option new new-project wizard (commit by @joanise)0aa4e86- wizard with Ctrl-C menu to go back, and more (commit by @joanise)db79b10- wizard can now save progress and resume from saved progress (commit by @joanise)371680d- implement undo() for (almost) all wizard steps (commit by @joanise)19cfa35- add a welcome panel when the wizard starts (commit by @joanise)26e06b2- added unittest for wrong model used (commit by @SamuelLarkin)f436203- catch loading the wrong model type (commit by @SamuelLarkin)6c9b23a- display a spinner while importing expensive things (commit by @joanise)a72d598- add everyvoice segment extractor (commit by @roedoejet)59ff083- demo: add allowlist and denylist options to demo (commit by @roedoejet)2258fa0- demo: add more robust text normalization (commit by @roedoejet)49de253- add --version and --diagnostic top-level options (PR #571 by @joanise)↘️ addresses issue #549 opened by @SamuelLarkin
50c907f- added unittest for wrong model used (commit by @SamuelLarkin)0be4cc1- added unittest for FastSpeech2Config's version (commit by @SamuelLarkin)ecf3163- testing multiple model types (commit by @SamuelLarkin)840e71a- bumped up the schema version (commit by @SamuelLarkin)3c350e3- using subTest() for unittest with a for loop (commit by @SamuelLarkin)81e67bd- added TestVersion (commit by @SamuelLarkin)c30bd64- converted setup.{py,cfg} into pyproject.toml (commit by @SamuelLarkin)19625b9- updated make-everyvoice-env to use new pyproject.toml (commit by @SamuelLarkin)7ac1f70- updated github workflows to use hatch and pyproject.toml (commit by @SamuelLarkin)a33445b- switching to using pyproject.toml (commit by @SamuelLarkin)28912ba- updated setuptools vulnerable to Command Injection via package URL (commit by @SamuelLarkin)7b68fac- auto fixing from black (commit by @SamuelLarkin)3d80e17- using hatch in CI to build our sdist and wheel (commit by @SamuelLarkin)f171c81- making cleaner sdist & wheel (commit by @SamuelLarkin)02eaf1b- code review with Eric (commit by @SamuelLarkin)
🐛 Bug Fixes
bb7d6b7- wizard: fixes non-updating keyword of text in data dictionary (commit by @wiitt)571891c- update check-data (commit by @roedoejet)2f9b75d- the mypy type for None is simply None (commit by @joanise)110d718- tests: removes blocking of reaching children steps (commit by @wiitt)ab60932- wizard: fixes multilingual/multispeaker config in new projects (commit by @wiitt)e371e96- wizard: change wording of speaker prompt (commit by @roedoejet)66774c3- demo: locks dropdown lists when only one option is available (commit by @wiitt)189e338- better handling of empty filelist (commit by @MENGZHEGENG)83742ff- add unit test for handling empty filelist (commit by @MENGZHEGENG)87ceba1- change shape of filelist list data instead of re-reading it (commit by @roedoejet)1c81f94- remove all punctuation characters from symbol set by default (commit by @roedoejet)9004aad- remove unnecessary loading of filelist (commit by @roedoejet)c6a6da8- add whitespace collapsing and text stripping by default (commit by @roedoejet)7c8e533- check if data is tabular or not before applying text processing (commit by @roedoejet)9ab79eb- ci: ignore type errors from e2e config (commit by @roedoejet)00b07a5- ci: replaced trilom/file-changes-action with tj-actions/changed-files since it is not maintained (commit by @SamuelLarkin)e3f2a6b- deps: bump nltk to 3.9.1 to fi...
v0.1.0a3
🐛 Bug Fixes
ab84f56- docs: small typos (commit by @roedoejet)460c6d6- deps: lock pydantic <2.8 until we fix bug #498 (commit by @joanise)
♻️ Refactors
b94c61b- schemas: rename schemas to conform to schemastore standards (commit by @roedoejet)
🔧 Chores
v0.1.0a2
What's Changed
- ci: fail CI if everyvoice -h imports shared_types, that is slow by @joanise in #369
- docs: minor typo correction in Contributing.md by @MENGZHEGENG in #378
- Improve handling of inputs by @roedoejet in #348
- Better handle universal_checkpoint and Everyvoice vocoder by @SamuelLarkin in #373
- chore: submodule udpate by @SamuelLarkin in #390
- feat: getting rid of all intermediate logs_and_checkpoints/ & preprocessed/ during unittests by @SamuelLarkin in #380
- feat: clean up cached preprocessed audio after unittests by @SamuelLarkin in #386
- Change long tensors to integer tensors where possible by @roedoejet in #383
- fix: our test*.py are not executable, let's not pretend they are by @joanise in #393
- chore: submodule update by @SamuelLarkin in #394
- docs: add a PR template by @joanise in #391
- ci: validate that schemas are up to date by @joanise in #389
- chore: update submodule wav2vec2aligner by @joanise in #397
- chore: submodule update by @SamuelLarkin in #398
- fix(ci): update pip before installing dependencies by @joanise in #399
- fix: save processed audio in wav instead of pt by @MENGZHEGENG in #382
- fix: make-everyvoice-env warns on CUDA mismatch but continue by @joanise in #403
- ci: fix and revamp how we publish documentation with mike by @joanise in #402
- chore: submodule update by @SamuelLarkin in #405
- feat(text): apply global cleaners to symbol sets by @roedoejet in #408
- docs: recommendations for doing multi-repo PRs by @joanise in #410
- fix: lock protobuf to a version compatible with tensorboard by @joanise in #423
- feat!: when preprocessing, everyvoice forces equal length time and f… by @roedoejet in #421
- Remove old HiFiGAN code by @roedoejet in #426
- docs: update submodules to add the PR template there too by @joanise in #428
- perf: Optimize the CLI by completely avoiding Pydantic imports from
everyvoice -h. by @joanise in #429 - Refactor functions only required by config/utils under config by @joanise in #432
- chore: update submodule by @roedoejet in #431
- test: make sure a ckpt has no objects, only basic structures by @joanise in #434
- Vocoder matching by @roedoejet in #427
- Add Praat TextGrid as possible synthesis output by @roedoejet in #436
- Dev.ap/demo gradio by @roedoejet in #442
- chore: update submodule by @roedoejet in #445
- Dev.ap/update reqs by @roedoejet in #447
- feat: save and check a config lock for everyvoice preprocess by @joanise in #440
- remove resampling question from wizard by @joanise in #459
- Wizard checks if wav files are found, warns, and gives recovery option by @joanise in #454
- Fixes vocoder step bug in demo by @wiitt in #458
- feat: allow validation after N training steps by @SamuelLarkin in #461
- perf: speed up g2p processing by caching the results by @joanise in #464
- Add a data permission question to the new-project wizard by @joanise in #462
- Dev.ej/466 sample wavs by @joanise in #471
- feat: help smooth out losses' value on resume by @SamuelLarkin in #473
- Dev.vg/448 demo lang speak opt by @wiitt in #475
- Fix(CI): updated WizardTest to handle new email-validator error message by @SamuelLarkin in #480
- Fixing everyvoice.tests.test_utls by @SamuelLarkin in #479
- Add data attestation as a requirement by @roedoejet in #481
- fix: test_no_permissions() should leave a logs_and_checkpoints/ by @SamuelLarkin in #487
- docs: add ethics section, remove poorly rendered documentation sections by @roedoejet in #486
New Contributors
Full Changelog: v0.1.0a0.dev0...v0.1.0a2
v0.1.0a0.dev0
✨ New Features
a205bc5- Making the configs' properties relative paths. (commit by @SamuelLarkin)ded2b14- move to torch 2.0 (commit by @roedoejet)717fed0- New assertions when loading configs. (commit by @SamuelLarkin)aaed3d5- make installation more robust with fallbacks for compiled modules (commit by @joanise)e828331- add ctc segmentation tool to everyvoice (commit by @roedoejet)fd1940e- replace repeated prepro warnings by a summary of missing symbols (commit by @joanise)b924bf7- support cpu-only env in make-fresh-env.sh (commit by @joanise)dad4e48- revamped make-everyvoice-env script (commit by @joanise)4b756da- CLI: Creating a new CLI to view checkpoint's info. (commit by @SamuelLarkin)8908fac- Record the model's architecture and configuration in logs (commit by @SamuelLarkin)fc5cac5- fs2: add attention binarization loss (commit by @roedoejet)4aad942- gracefully handle an input filelist without a header line (commit by @joanise)10558d2- parameterize the Python version in make-everyvoice-env (commit by @joanise)85a9a8a- Added lookuptables_from_config() (commit by @SamuelLarkin)56e870d- Added model_kwargs to train_base_command() (commit by @SamuelLarkin)44c88a1- renamed lookuptables testcase (commit by @SamuelLarkin)55b7865- add ability to set validation interval (commit by @roedoejet)a8d9001- quick hacky way to run fs2's unittests (commit by @SamuelLarkin)969e02a- adding fs2's unittests (commit by @SamuelLarkin)b4fbace- added a typte to SUITE (commit by @SamuelLarkin)d5a4710- added stubs for matplotlib & tqdm (commit by @SamuelLarkin)c0dce38- python-3.10 type notation (commit by @SamuelLarkin)d08808e- using annotated to validate PossiblyRelativePath (commit by @SamuelLarkin)d7c7f44- add contact information requirement (commit by @roedoejet)e3dd343- Display an error message when the user provides the wrong config file (commit by @SamuelLarkin)2681f40- trimming white spaces in answers (PR #344 by @SamuelLarkin)5bc4b87- added unittest if the user provides invalid enum values (commit by @SamuelLarkin)2b66c49- ci to publish to pypi (commit by @SamuelLarkin)84f19ac- create necessary changes for alpha release (commit by @roedoejet)1a3221b- publish to pypi (commit by @SamuelLarkin)
🐛 Bug Fixes
6e9dde1- docs: fix macro (commit by @roedoejet)7dd78f5- Changing path to absolute for missing members (commit by @SamuelLarkin)4c429c9- don't duplicate the CSV header line, and warn when it's not there (commit by @joanise)5cfbd53- skip short audios at the start to avoid errors with loudness (commit by @davidguzmanr)4f751cb- change number of nodes to int (commit by @roedoejet)c2decdd- automatically remove a .wav extension from filenames (commit by @marctessier)a009014- Relative paths for wavs issue #127 (commit by @SamuelLarkin)3709e46- tests: add other configs to e2e config to fix logger save dir bug (commit by @roedoejet)4c5063d- Removed index.md from navigation (commit by @SamuelLarkin)a035dbb- reqs: bump to cuda 11.8 (commit by @roedoejet)e402b83- remove kaldi pitch detection (commit by @roedoejet)631e77b- add sox to install for github actions (commit by @roedoejet)416a9b5- only load audio as a string not path (commit by @roedoejet)5763ee2- remove MMS model due to privacy concerns (commit by @roedoejet)39980b8- add fix for hyphen and pipe in text (commit by @roedoejet)2004a45- remove trailing and leading silence (commit by @roedoejet)2356b83- make 'no' the default option in wizard (commit by @roedoejet)c9758f8- add training loss back to progress bar (commit by @roedoejet)bc45a59- fix tests for wizard (commit by @roedoejet)8763bca- fp: fix feature prediction scheduler (commit by @roedoejet)a86a6b2- docs: add index file again (commit by @roedoejet)34d985e- if cuda 11.8 is now required, make that the fresh env default (commit by @joanise)70994a1- reqs: pin g2p to 2.0 dev version until release (commit by @roedoejet)cf99430- fix memory pinning bug (commit by @roedoejet)493bb6b- add missing fields in config files and fix synthesis on CPU (commit by @davidguzmanr)230c6bf- speed up everyvoice -h by updating wav2vec2aligner submodule (commit by @joanise)28f5c33- previously processed files are skipped but not ignored (commit by @joanise)0492207- exit e...