-
Notifications
You must be signed in to change notification settings - Fork 394
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
Licensing issue #40
Comments
Only if the phonemizer library would be changed it needs to be done with GPL, and even in that case only the new library and not the entire project would be GPL licensed. |
Hi, unfortunately GPL requires all software that links to it to be also licensed under GPL. It would be amazing to keep this software MIT-licensed, so that's why I suggest switching to deep_phonemizer. |
wow what a nightmare, I forgot about that change. |
I took it from VITS, which is also MIT and uses phonemizer. I didn't know it was actually GPL. How does VITS stay MIT while using phonemizer then? |
Here an example from multi billion USD company: https://github.com/mozilla/TTS It's unpleasant to have such legal quirks lingering but if it ever becomes an issue I'm quite sure there are many ways to work around that.
Of course, if that could be avoided without much work, even better. |
I have searched the whole repository, the For GPL we can use it as binary such as gcc, and not to link lib or import. Someone can call espeak-ng binary command to get G2P function, or use The conclusion is StyleTTS2 use MIT license is totally OK. |
@clcarwin Thanks for your help, I can mark this as solved now. |
Yes, thanks for the clarification!! |
In case anyone's interested, here's a MIT licensed python package of StyleTTS2 (just inference) that uses Gruut as the phoneme converter -- it's still not as good as phonemizers built on espeak but I found it was the best alternative that was MIT licensed. |
@fakerybakery @clcarwin @cmp-nct @yl4579 Yes, it's true that the phonemizer is directly imported in the demo notebooks (Demo/.ipynb and Colab/.ipynb). However, it's important to note that when anyone uses this code in a practical setting, they are likely to create .py files for all the preprocessing steps, including converting text to phonemes. In such a scenario, the phonemizer would inevitably be used in the .py files, which could introduce GPL-related concerns into the project. Regarding the second point, can I use a separate subprocess to call espeak-ng instead? Here's an example implementation I'm considering:
Would this approach be acceptable for avoiding GPL issues, as it uses espeak-ng as a standalone binary via subprocess? My concern is ensuring this solution aligns with license compliance while still providing the necessary functionality for phoneme conversion. Any insights or suggestions would be greatly appreciated. Thanks in advance for your help! |
Hi,
This package uses the
phonemizer
library which is GPL licensed (because it depends on espeak-ng by Jonathan Duddington and nothing's been heard of him for years). That means all software that uses it must also be GPL licensed. Might it be possible to switch to an alternate library (preferablydeep_phonemizer
org2p_en
)? Thanks!The text was updated successfully, but these errors were encountered: