summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--python-phonemizer.spec308
-rw-r--r--sources1
3 files changed, 310 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..6f4777f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/phonemizer-3.2.1.tar.gz
diff --git a/python-phonemizer.spec b/python-phonemizer.spec
new file mode 100644
index 0000000..310eecf
--- /dev/null
+++ b/python-phonemizer.spec
@@ -0,0 +1,308 @@
+%global _empty_manifest_terminate_build 0
+Name: python-phonemizer
+Version: 3.2.1
+Release: 1
+Summary: Simple text to phones converter for multiple languages
+License: GPL3
+URL: https://github.com/bootphon/phonemizer
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/2f/23/090873aa616dfaf9209dc319841204e0e85b3ff6ca6032551216e3dfe153/phonemizer-3.2.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-joblib
+Requires: python3-segments
+Requires: python3-attrs
+Requires: python3-dlinfo
+Requires: python3-typing-extensions
+Requires: python3-sphinx
+Requires: python3-sphinx-rtd-theme
+Requires: python3-pytest
+
+%description
+# Phonemizer -- *foʊnmaɪzɚ*
+* The phonemizer allows simple phonemization of words and texts in many languages.
+* Provides both the `phonemize` command-line tool and the Python function
+ `phonemizer.phonemize`. See [the package's documentation](https://bootphon.github.io/phonemizer/).
+* It is based on four backends: **espeak**, **espeak-mbrola**, **festival** and
+ **segments**. The backends have different properties and capabilities resumed
+ in table below. The backend choice is let to the user.
+ * [espeak-ng](https://github.com/espeak-ng/espeak-ng) is a Text-to-Speech
+ software supporting a lot of languages and IPA (International Phonetic
+ Alphabet) output.
+ * [espeak-ng-mbrola](https://github.com/espeak-ng/espeak-ng/blob/master/docs/mbrola.md)
+ uses the SAMPA phonetic alphabet instead of IPA but does not preserve word
+ boundaries.
+ * [festival](http://www.cstr.ed.ac.uk/projects/festival) is another
+ Tex-to-Speech engine. Its phonemizer backend currently supports only
+ American English. It uses a [custom phoneset][festival-phoneset], but it
+ allows tokenization at the syllable level.
+ * [segments](https://github.com/cldf/segments) is a Unicode tokenizer that
+ build a phonemization from a grapheme to phoneme mapping provided as a file
+ by the user.
+ | | espeak | espeak-mbrola | festival | segments |
+ | ---: | --- | --- | --- | --- |
+ | **phone set** | [IPA] | [SAMPA] | [custom][festival-phoneset] | user defined |
+ | **supported languages** | [100+][espeak-languages] | [35][mbrola-languages] | US English | user defined |
+ | **processing speed** | fast | slow | very slow | fast |
+ | **phone tokens** | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
+ | **syllable tokens** | :x: | :x: | :heavy_check_mark: | :x: |
+ | **word tokens** | :heavy_check_mark: | :x: | :heavy_check_mark: | :heavy_check_mark: |
+ | **punctuation preservation** | :heavy_check_mark: | :x: | :heavy_check_mark: | :heavy_check_mark: |
+ | **stressed phones** | :heavy_check_mark: | :x: | :x: | :x: |
+ | [**tie**][tie-IPA] | :heavy_check_mark: | :x: | :x: | :x: |
+## Citation
+To refenrece the `phonemizer` in your own work, please cite the following [JOSS
+paper](https://joss.theoj.org/papers/10.21105/joss.03958).
+```bibtex
+@article{Bernard2021,
+ doi = {10.21105/joss.03958},
+ url = {https://doi.org/10.21105/joss.03958},
+ year = {2021},
+ publisher = {The Open Journal},
+ volume = {6},
+ number = {68},
+ pages = {3958},
+ author = {Mathieu Bernard and Hadrien Titeux},
+ title = {Phonemizer: Text to Phones Transcription for Multiple Languages in Python},
+ journal = {Journal of Open Source Software}
+}
+```
+## Licence
+**Copyright 2015-2021 Mathieu Bernard**
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+[badge-test-linux]: https://github.com/bootphon/phonemizer/actions/workflows/linux.yaml/badge.svg?branch=master
+[badge-test-macos]: https://github.com/bootphon/phonemizer/actions/workflows/macos.yaml/badge.svg?branch=master
+[badge-test-windows]: https://github.com/bootphon/phonemizer/actions/workflows/windows.yaml/badge.svg?branch=master
+[badge-codecov]: https://img.shields.io/codecov/c/github/bootphon/phonemizer
+[badge-github-version]: https://img.shields.io/github/v/release/bootphon/phonemizer
+[badge-pypi-version]: https://img.shields.io/pypi/v/phonemizer
+[badge-pypi-downloads]: https://img.shields.io/pypi/dm/phonemizer
+[badge-joss]: https://joss.theoj.org/papers/08d1ffc14f233f56942f78f3742b266e/status.svg
+[badge-zenodo]: https://zenodo.org/badge/56728069.svg
+[phonemizer-1.0]: https://github.com/bootphon/phonemizer/releases/tag/v1.0
+[festival-phoneset]: http://www.festvox.org/bsv/c4711.html
+[IPA]: https://en.wikipedia.org/wiki/International_Phonetic_Alphabet
+[SAMPA]: https://en.wikipedia.org/wiki/SAMPA
+[phonemize-function]: https://github.com/bootphon/phonemizer/blob/c5e2f3878d6db391ec7253173f44e4a85cfe41e3/phonemizer/phonemize.py#L33-L156
+[tie-IPA]: https://en.wikipedia.org/wiki/Tie_(typography)#International_Phonetic_Alphabet
+[espeak-languages]: https://github.com/espeak-ng/espeak-ng/blob/master/docs/languages.md
+[mbrola-languages]: https://github.com/numediart/MBROLA-voices
+
+%package -n python3-phonemizer
+Summary: Simple text to phones converter for multiple languages
+Provides: python-phonemizer
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-phonemizer
+# Phonemizer -- *foʊnmaɪzɚ*
+* The phonemizer allows simple phonemization of words and texts in many languages.
+* Provides both the `phonemize` command-line tool and the Python function
+ `phonemizer.phonemize`. See [the package's documentation](https://bootphon.github.io/phonemizer/).
+* It is based on four backends: **espeak**, **espeak-mbrola**, **festival** and
+ **segments**. The backends have different properties and capabilities resumed
+ in table below. The backend choice is let to the user.
+ * [espeak-ng](https://github.com/espeak-ng/espeak-ng) is a Text-to-Speech
+ software supporting a lot of languages and IPA (International Phonetic
+ Alphabet) output.
+ * [espeak-ng-mbrola](https://github.com/espeak-ng/espeak-ng/blob/master/docs/mbrola.md)
+ uses the SAMPA phonetic alphabet instead of IPA but does not preserve word
+ boundaries.
+ * [festival](http://www.cstr.ed.ac.uk/projects/festival) is another
+ Tex-to-Speech engine. Its phonemizer backend currently supports only
+ American English. It uses a [custom phoneset][festival-phoneset], but it
+ allows tokenization at the syllable level.
+ * [segments](https://github.com/cldf/segments) is a Unicode tokenizer that
+ build a phonemization from a grapheme to phoneme mapping provided as a file
+ by the user.
+ | | espeak | espeak-mbrola | festival | segments |
+ | ---: | --- | --- | --- | --- |
+ | **phone set** | [IPA] | [SAMPA] | [custom][festival-phoneset] | user defined |
+ | **supported languages** | [100+][espeak-languages] | [35][mbrola-languages] | US English | user defined |
+ | **processing speed** | fast | slow | very slow | fast |
+ | **phone tokens** | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
+ | **syllable tokens** | :x: | :x: | :heavy_check_mark: | :x: |
+ | **word tokens** | :heavy_check_mark: | :x: | :heavy_check_mark: | :heavy_check_mark: |
+ | **punctuation preservation** | :heavy_check_mark: | :x: | :heavy_check_mark: | :heavy_check_mark: |
+ | **stressed phones** | :heavy_check_mark: | :x: | :x: | :x: |
+ | [**tie**][tie-IPA] | :heavy_check_mark: | :x: | :x: | :x: |
+## Citation
+To refenrece the `phonemizer` in your own work, please cite the following [JOSS
+paper](https://joss.theoj.org/papers/10.21105/joss.03958).
+```bibtex
+@article{Bernard2021,
+ doi = {10.21105/joss.03958},
+ url = {https://doi.org/10.21105/joss.03958},
+ year = {2021},
+ publisher = {The Open Journal},
+ volume = {6},
+ number = {68},
+ pages = {3958},
+ author = {Mathieu Bernard and Hadrien Titeux},
+ title = {Phonemizer: Text to Phones Transcription for Multiple Languages in Python},
+ journal = {Journal of Open Source Software}
+}
+```
+## Licence
+**Copyright 2015-2021 Mathieu Bernard**
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+[badge-test-linux]: https://github.com/bootphon/phonemizer/actions/workflows/linux.yaml/badge.svg?branch=master
+[badge-test-macos]: https://github.com/bootphon/phonemizer/actions/workflows/macos.yaml/badge.svg?branch=master
+[badge-test-windows]: https://github.com/bootphon/phonemizer/actions/workflows/windows.yaml/badge.svg?branch=master
+[badge-codecov]: https://img.shields.io/codecov/c/github/bootphon/phonemizer
+[badge-github-version]: https://img.shields.io/github/v/release/bootphon/phonemizer
+[badge-pypi-version]: https://img.shields.io/pypi/v/phonemizer
+[badge-pypi-downloads]: https://img.shields.io/pypi/dm/phonemizer
+[badge-joss]: https://joss.theoj.org/papers/08d1ffc14f233f56942f78f3742b266e/status.svg
+[badge-zenodo]: https://zenodo.org/badge/56728069.svg
+[phonemizer-1.0]: https://github.com/bootphon/phonemizer/releases/tag/v1.0
+[festival-phoneset]: http://www.festvox.org/bsv/c4711.html
+[IPA]: https://en.wikipedia.org/wiki/International_Phonetic_Alphabet
+[SAMPA]: https://en.wikipedia.org/wiki/SAMPA
+[phonemize-function]: https://github.com/bootphon/phonemizer/blob/c5e2f3878d6db391ec7253173f44e4a85cfe41e3/phonemizer/phonemize.py#L33-L156
+[tie-IPA]: https://en.wikipedia.org/wiki/Tie_(typography)#International_Phonetic_Alphabet
+[espeak-languages]: https://github.com/espeak-ng/espeak-ng/blob/master/docs/languages.md
+[mbrola-languages]: https://github.com/numediart/MBROLA-voices
+
+%package help
+Summary: Development documents and examples for phonemizer
+Provides: python3-phonemizer-doc
+%description help
+# Phonemizer -- *foʊnmaɪzɚ*
+* The phonemizer allows simple phonemization of words and texts in many languages.
+* Provides both the `phonemize` command-line tool and the Python function
+ `phonemizer.phonemize`. See [the package's documentation](https://bootphon.github.io/phonemizer/).
+* It is based on four backends: **espeak**, **espeak-mbrola**, **festival** and
+ **segments**. The backends have different properties and capabilities resumed
+ in table below. The backend choice is let to the user.
+ * [espeak-ng](https://github.com/espeak-ng/espeak-ng) is a Text-to-Speech
+ software supporting a lot of languages and IPA (International Phonetic
+ Alphabet) output.
+ * [espeak-ng-mbrola](https://github.com/espeak-ng/espeak-ng/blob/master/docs/mbrola.md)
+ uses the SAMPA phonetic alphabet instead of IPA but does not preserve word
+ boundaries.
+ * [festival](http://www.cstr.ed.ac.uk/projects/festival) is another
+ Tex-to-Speech engine. Its phonemizer backend currently supports only
+ American English. It uses a [custom phoneset][festival-phoneset], but it
+ allows tokenization at the syllable level.
+ * [segments](https://github.com/cldf/segments) is a Unicode tokenizer that
+ build a phonemization from a grapheme to phoneme mapping provided as a file
+ by the user.
+ | | espeak | espeak-mbrola | festival | segments |
+ | ---: | --- | --- | --- | --- |
+ | **phone set** | [IPA] | [SAMPA] | [custom][festival-phoneset] | user defined |
+ | **supported languages** | [100+][espeak-languages] | [35][mbrola-languages] | US English | user defined |
+ | **processing speed** | fast | slow | very slow | fast |
+ | **phone tokens** | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
+ | **syllable tokens** | :x: | :x: | :heavy_check_mark: | :x: |
+ | **word tokens** | :heavy_check_mark: | :x: | :heavy_check_mark: | :heavy_check_mark: |
+ | **punctuation preservation** | :heavy_check_mark: | :x: | :heavy_check_mark: | :heavy_check_mark: |
+ | **stressed phones** | :heavy_check_mark: | :x: | :x: | :x: |
+ | [**tie**][tie-IPA] | :heavy_check_mark: | :x: | :x: | :x: |
+## Citation
+To refenrece the `phonemizer` in your own work, please cite the following [JOSS
+paper](https://joss.theoj.org/papers/10.21105/joss.03958).
+```bibtex
+@article{Bernard2021,
+ doi = {10.21105/joss.03958},
+ url = {https://doi.org/10.21105/joss.03958},
+ year = {2021},
+ publisher = {The Open Journal},
+ volume = {6},
+ number = {68},
+ pages = {3958},
+ author = {Mathieu Bernard and Hadrien Titeux},
+ title = {Phonemizer: Text to Phones Transcription for Multiple Languages in Python},
+ journal = {Journal of Open Source Software}
+}
+```
+## Licence
+**Copyright 2015-2021 Mathieu Bernard**
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+[badge-test-linux]: https://github.com/bootphon/phonemizer/actions/workflows/linux.yaml/badge.svg?branch=master
+[badge-test-macos]: https://github.com/bootphon/phonemizer/actions/workflows/macos.yaml/badge.svg?branch=master
+[badge-test-windows]: https://github.com/bootphon/phonemizer/actions/workflows/windows.yaml/badge.svg?branch=master
+[badge-codecov]: https://img.shields.io/codecov/c/github/bootphon/phonemizer
+[badge-github-version]: https://img.shields.io/github/v/release/bootphon/phonemizer
+[badge-pypi-version]: https://img.shields.io/pypi/v/phonemizer
+[badge-pypi-downloads]: https://img.shields.io/pypi/dm/phonemizer
+[badge-joss]: https://joss.theoj.org/papers/08d1ffc14f233f56942f78f3742b266e/status.svg
+[badge-zenodo]: https://zenodo.org/badge/56728069.svg
+[phonemizer-1.0]: https://github.com/bootphon/phonemizer/releases/tag/v1.0
+[festival-phoneset]: http://www.festvox.org/bsv/c4711.html
+[IPA]: https://en.wikipedia.org/wiki/International_Phonetic_Alphabet
+[SAMPA]: https://en.wikipedia.org/wiki/SAMPA
+[phonemize-function]: https://github.com/bootphon/phonemizer/blob/c5e2f3878d6db391ec7253173f44e4a85cfe41e3/phonemizer/phonemize.py#L33-L156
+[tie-IPA]: https://en.wikipedia.org/wiki/Tie_(typography)#International_Phonetic_Alphabet
+[espeak-languages]: https://github.com/espeak-ng/espeak-ng/blob/master/docs/languages.md
+[mbrola-languages]: https://github.com/numediart/MBROLA-voices
+
+%prep
+%autosetup -n phonemizer-3.2.1
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-phonemizer -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 3.2.1-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..9778df5
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+e7686f26b9a41282370f45649936d56f phonemizer-3.2.1.tar.gz