phoonnx 0.1.0a3__py3-none-any.whl → 0.1.1a1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
phoonnx/config.py CHANGED
@@ -48,6 +48,8 @@ class PhonemeType(str, Enum):
48
48
  EPITRAN = "epitran"
49
49
  BYT5 = "byt5"
50
50
  CHARSIU = "charsiu" # technically same as byt5, but needs special handling for whitespace
51
+ TRANSPHONE = "transphone"
52
+ MIRANDESE = "mwl_phonemizer"
51
53
 
52
54
  DEEPPHONEMIZER = "deepphonemizer" # en
53
55
  OPENPHONEMIZER = "openphonemizer" # en
@@ -392,6 +394,7 @@ def get_phonemizer(phoneme_type: PhonemeType,
392
394
  from phoonnx.phonemizers import (EpitranPhonemizer, EspeakPhonemizer, OpenPhonemizer, OpenJTaklPhonemizer,
393
395
  ByT5Phonemizer, CharsiuPhonemizer, DeepPhonemizer, PersianPhonemizer,
394
396
  G2pCPhonemizer, G2pMPhonemizer, G2PKPhonemizer, G2PEnPhonemizer,
397
+ TransphonePhonemizer, MirandesePhonemizer,
395
398
  GruutPhonemizer, GraphemePhonemizer, MantoqPhonemizer, MisakiPhonemizer,
396
399
  KoG2PPhonemizer, PypinyinPhonemizer, PyKakasiPhonemizer, CotoviaPhonemizer,
397
400
  CutletPhonemizer, PhonikudPhonemizer, VIPhonemePhonemizer, XpinyinPhonemizer,
@@ -408,6 +411,10 @@ def get_phonemizer(phoneme_type: PhonemeType,
408
411
  phonemizer = EpitranPhonemizer()
409
412
  elif phoneme_type == PhonemeType.MISAKI:
410
413
  phonemizer = MisakiPhonemizer()
414
+ elif phoneme_type == PhonemeType.TRANSPHONE:
415
+ phonemizer = TransphonePhonemizer()
416
+ elif phoneme_type == PhonemeType.MIRANDESE:
417
+ phonemizer = MirandesePhonemizer()
411
418
  elif phoneme_type == PhonemeType.DEEPPHONEMIZER:
412
419
  phonemizer = DeepPhonemizer(model)
413
420
  elif phoneme_type == PhonemeType.OPENPHONEMIZER:
@@ -12,7 +12,8 @@ from phoonnx.phonemizers.ko import KoG2PPhonemizer, G2PKPhonemizer
12
12
  from phoonnx.phonemizers.zh import (G2pCPhonemizer, G2pMPhonemizer, PypinyinPhonemizer,
13
13
  XpinyinPhonemizer, JiebaPhonemizer)
14
14
  from phoonnx.phonemizers.mul import (EspeakPhonemizer, EpitranPhonemizer, MisakiPhonemizer,
15
- GruutPhonemizer, ByT5Phonemizer, CharsiuPhonemizer)
15
+ GruutPhonemizer, ByT5Phonemizer, CharsiuPhonemizer, TransphonePhonemizer)
16
+ from phoonnx.phonemizers.mwl import MirandesePhonemizer
16
17
 
17
18
  Phonemizer = Union[
18
19
  MisakiPhonemizer,
@@ -22,6 +23,8 @@ Phonemizer = Union[
22
23
  EspeakPhonemizer,
23
24
  GruutPhonemizer,
24
25
  EpitranPhonemizer,
26
+ TransphonePhonemizer,
27
+ MirandesePhonemizer,
25
28
  OpenJTaklPhonemizer,
26
29
  CutletPhonemizer,
27
30
  PyKakasiPhonemizer,
@@ -0,0 +1,36 @@
1
+ from phoonnx.phonemizers.base import BasePhonemizer, Alphabet
2
+ from mwl_phonemizer import CRFOrthoCorrector
3
+
4
+
5
+ class MirandesePhonemizer(BasePhonemizer):
6
+ _LANGS = ["mwl"]
7
+
8
+ def __init__(self):
9
+ super().__init__(Alphabet.IPA)
10
+ self.pho = CRFOrthoCorrector()
11
+
12
+ @classmethod
13
+ def get_lang(cls, target_lang: str) -> str:
14
+ """
15
+ Validates and returns the closest supported language code.
16
+
17
+ Args:
18
+ target_lang (str): The language code to validate.
19
+
20
+ Returns:
21
+ str: The validated language code.
22
+
23
+ Raises:
24
+ ValueError: If the language code is unsupported.
25
+ """
26
+ return cls.match_lang(target_lang, cls._LANGS)
27
+
28
+ def phonemize_string(self, text: str, lang: str) -> str:
29
+ # Validate language is supported
30
+ lang = self.get_lang(lang)
31
+ return self.pho.phonemize_sentence(text)
32
+
33
+
34
+ if __name__ == "__main__":
35
+ pho = MirandesePhonemizer()
36
+ print(pho.phonemize_string("ls", "mwl"))
phoonnx/version.py CHANGED
@@ -1,10 +1,10 @@
1
1
  # START_VERSION_BLOCK
2
2
  VERSION_MAJOR = 0
3
3
  VERSION_MINOR = 1
4
- VERSION_BUILD = 0
5
- VERSION_ALPHA = 3
4
+ VERSION_BUILD = 1
5
+ VERSION_ALPHA = 1
6
6
  # END_VERSION_BLOCK
7
7
 
8
8
  VERSION_STR = f"{VERSION_MAJOR}.{VERSION_MINOR}.{VERSION_BUILD}"
9
9
  if VERSION_ALPHA:
10
- VERSION_STR += f"a{VERSION_ALPHA}"
10
+ VERSION_STR += f"a{VERSION_ALPHA}"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: phoonnx
3
- Version: 0.1.0a3
3
+ Version: 0.1.1a1
4
4
  Home-page: https://github.com/TigreGotico/phoonnx
5
5
  Author: JarbasAi
6
6
  Author-email: jarbasai@mailfence.com
@@ -150,6 +150,8 @@ Provides-Extra: ms
150
150
  Requires-Dist: epitran; extra == "ms"
151
151
  Provides-Extra: mt
152
152
  Requires-Dist: epitran; extra == "mt"
153
+ Provides-Extra: mwl
154
+ Requires-Dist: mwl-phonemizer; extra == "mwl"
153
155
  Provides-Extra: my
154
156
  Requires-Dist: epitran; extra == "my"
155
157
  Provides-Extra: nan
@@ -1,14 +1,14 @@
1
1
  phoonnx/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- phoonnx/config.py,sha256=IYhC-kYjLgYmBroId6YeOE2Vp7SMNGtiGqIIe_09NJk,19531
2
+ phoonnx/config.py,sha256=aGX7PWq3_nLdn3zCp0orMsdNQaiBfjZZmvGWd_VU2KQ,19858
3
3
  phoonnx/phoneme_ids.py,sha256=FiNgZwV6naEsBh6XwFLh3_FyOgPiCsK9qo7S0v-CmI4,13667
4
4
  phoonnx/util.py,sha256=XSjFEoqSFcujFTHxednacgC9GrSYyF-Il5L6Utmxmu4,25909
5
- phoonnx/version.py,sha256=WnY5J2wtSTore9QbKwfk04gQhBsYq4HVmV5CBjEhGnk,236
5
+ phoonnx/version.py,sha256=Ll52GTfYXTiW5lVvWRVNSo3-ay5hISE7zYWp2aFzXvQ,237
6
6
  phoonnx/voice.py,sha256=JXjmbrhJd4mmTiLgz4O_Pa5_rKGUC9xzuBfqxYDw3Mg,19420
7
7
  phoonnx/locale/ca/phonetic_spellings.txt,sha256=igv3t7jxLSRE5GHsdn57HOpxiWNcEmECPql6m02wbO0,47
8
8
  phoonnx/locale/en/phonetic_spellings.txt,sha256=xGQlWOABLzbttpQvopl9CU-NnwEJRqKx8iuylsdUoQA,27
9
9
  phoonnx/locale/gl/phonetic_spellings.txt,sha256=igv3t7jxLSRE5GHsdn57HOpxiWNcEmECPql6m02wbO0,47
10
10
  phoonnx/locale/pt/phonetic_spellings.txt,sha256=KntS8QMynEJ5A3Clvcjq4qlmL-ThSbhfD6v0nKSrlqs,49
11
- phoonnx/phonemizers/__init__.py,sha256=QGBZk0QUgJdg2MwUWY9Kpk6ucwrEJYtHb07YcNvXCV4,1647
11
+ phoonnx/phonemizers/__init__.py,sha256=NcI_iwtWBD2hIFTfEzLo-XOhVvmZpwAVFC3sqIFS1MY,1776
12
12
  phoonnx/phonemizers/ar.py,sha256=xxILq5iyH0kcI-NqFfRK4abGtpdUbykBjt_dZmPuO2w,3216
13
13
  phoonnx/phonemizers/base.py,sha256=FHvAsvSjAl_oSa1GoeEi96CQ_JO_xkKXWq0ukuMxiuo,8660
14
14
  phoonnx/phonemizers/en.py,sha256=N2SVoVhplQao7Ej5TXbxJU-YkAgkY0Fr9iYBFnsjFSE,9271
@@ -18,6 +18,7 @@ phoonnx/phonemizers/he.py,sha256=49OFS34wSFvvR9B3z2bGSzSLmlIvnn2HtkHBOkHS9Ns,138
18
18
  phoonnx/phonemizers/ja.py,sha256=Xojsrt715ihnIiEk9K6giYqDo9Iykw-SHfIidrHtHSU,3834
19
19
  phoonnx/phonemizers/ko.py,sha256=kwWoOFqanCB8kv2JRx17A0hP78P1wbXlX6e8VBn1ezQ,2989
20
20
  phoonnx/phonemizers/mul.py,sha256=-h6uN_laUD-unNRGThzjyiOZpN6pSl4uinCndg5-0TA,94184
21
+ phoonnx/phonemizers/mwl.py,sha256=9bwKmKQ-fXQQKK04fmKbT9QiraD0r3rKdNFZkWZP-eI,999
21
22
  phoonnx/phonemizers/vi.py,sha256=_XJc-Xeawr1Lxr7o8mE_hJao1aGcj4g01XYAOxC_Scg,1311
22
23
  phoonnx/phonemizers/zh.py,sha256=88Ywq8h9LDanlyz8RHjRSCY_PRK_Dq808tBADyrgaP8,9657
23
24
  phoonnx/thirdparty/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -82,7 +83,7 @@ phoonnx_train/vits/utils.py,sha256=exiyrtPHbnnGvcHWSbaH9-gR6srH5ZPHlKiqV2IHUrQ,4
82
83
  phoonnx_train/vits/wavfile.py,sha256=oQZiTIrdw0oLTbcVwKfGXye1WtKte6qK_52qVwiMvfc,26396
83
84
  phoonnx_train/vits/monotonic_align/__init__.py,sha256=5IdAOD1Z7UloMb6d_9NRFsXoNIjEQ3h9mvOSh_AtO3k,636
84
85
  phoonnx_train/vits/monotonic_align/setup.py,sha256=0K5iJJ2mKIklx6ncEfCQS34skm5hHPiz9vRlQEvevvY,266
85
- phoonnx-0.1.0a3.dist-info/METADATA,sha256=3U1Ea0g2HxtWPsIs7NCxzPdo7ZTr4s_lRs9gIOC6MWY,8184
86
- phoonnx-0.1.0a3.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
87
- phoonnx-0.1.0a3.dist-info/top_level.txt,sha256=ZrnHXe-4HqbOSX6fbdY-JiP7YEu2Bok9T0ji351MrmM,22
88
- phoonnx-0.1.0a3.dist-info/RECORD,,
86
+ phoonnx-0.1.1a1.dist-info/METADATA,sha256=HkE1TTQPlxfTGOzlG55_lO4BH_4mjNlhL7vr_UrAwyI,8250
87
+ phoonnx-0.1.1a1.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
88
+ phoonnx-0.1.1a1.dist-info/top_level.txt,sha256=ZrnHXe-4HqbOSX6fbdY-JiP7YEu2Bok9T0ji351MrmM,22
89
+ phoonnx-0.1.1a1.dist-info/RECORD,,