Skip to main content
Files added late

2 files were added to this release more than 14 days after its initial publication. Inspect the release files before installing.

Pre-release

This release is a pre-release and may not be stable for production use.

pyopenjtalk

PyPI Python package Build Status License DOI

A python wrapper for OpenJTalk.

The package consists of two core components:

  • Text processing frontend based on OpenJTalk
  • Speech synthesis backend using HTSEngine

Notice

  • The package is built with the modified version of OpenJTalk. The modified version provides the same functionality with some improvements (e.g., cmake support) but is technically different from the one from HTS working group.
  • The package also uses the modified version of hts_engine_API. The same applies as above.

Before using the pyopenjtalk package, please have a look at the LICENSE for the two software.

Build requirements

The python package relies on cython to make python bindings for open_jtalk and hts_engine_API. You must need the following tools to build and install pyopenjtalk:

  • C/C++ compilers (to build C/C++ extentions)
  • cmake
  • cython

Supported platforms

  • Linux
  • Mac OSX
  • Windows (MSVC) (see this PR)

Installation

pip install pyopenjtalk

Development

To build the package locally, you will need to make sure to clone open_jtalk and hts_engine_API.

git submodule update --recursive --init

and then run

pip install -e .

Quick demo

Please check the notebook version here (nbviewer).

TTS

In [1]: import pyopenjtalk

In [2]: from scipy.io import wavfile

In [3]: x, sr = pyopenjtalk.tts("おめでとうございます")

In [4]: wavfile.write("test.wav", sr, x.astype(np.int16))

Run text processing frontend only

In [1]: import pyopenjtalk

In [2]: pyopenjtalk.extract_fullcontext("こんにちは")
Out[2]:
['xx^xx-sil+k=o/A:xx+xx+xx/B:xx-xx_xx/C:xx_xx+xx/D:xx+xx_xx/E:xx_xx!xx_xx-xx/F:xx_xx#xx_xx@xx_xx|xx_xx/G:5_5%0_xx_xx/H:xx_xx/I:xx-xx@xx+xx&xx-xx|xx+xx/J:1_5/K:1+1-5',
'xx^sil-k+o=N/A:-4+1+5/B:xx-xx_xx/C:09_xx+xx/D:xx+xx_xx/E:xx_xx!xx_xx-xx/F:5_5#0_xx@1_1|1_5/G:xx_xx%xx_xx_xx/H:xx_xx/I:1-5@1+1&1-1|1+5/J:xx_xx/K:1+1-5',
'sil^k-o+N=n/A:-4+1+5/B:xx-xx_xx/C:09_xx+xx/D:xx+xx_xx/E:xx_xx!xx_xx-xx/F:5_5#0_xx@1_1|1_5/G:xx_xx%xx_xx_xx/H:xx_xx/I:1-5@1+1&1-1|1+5/J:xx_xx/K:1+1-5',
'k^o-N+n=i/A:-3+2+4/B:xx-xx_xx/C:09_xx+xx/D:xx+xx_xx/E:xx_xx!xx_xx-xx/F:5_5#0_xx@1_1|1_5/G:xx_xx%xx_xx_xx/H:xx_xx/I:1-5@1+1&1-1|1+5/J:xx_xx/K:1+1-5',
'o^N-n+i=ch/A:-2+3+3/B:xx-xx_xx/C:09_xx+xx/D:xx+xx_xx/E:xx_xx!xx_xx-xx/F:5_5#0_xx@1_1|1_5/G:xx_xx%xx_xx_xx/H:xx_xx/I:1-5@1+1&1-1|1+5/J:xx_xx/K:1+1-5',
'N^n-i+ch=i/A:-2+3+3/B:xx-xx_xx/C:09_xx+xx/D:xx+xx_xx/E:xx_xx!xx_xx-xx/F:5_5#0_xx@1_1|1_5/G:xx_xx%xx_xx_xx/H:xx_xx/I:1-5@1+1&1-1|1+5/J:xx_xx/K:1+1-5',
'n^i-ch+i=w/A:-1+4+2/B:xx-xx_xx/C:09_xx+xx/D:xx+xx_xx/E:xx_xx!xx_xx-xx/F:5_5#0_xx@1_1|1_5/G:xx_xx%xx_xx_xx/H:xx_xx/I:1-5@1+1&1-1|1+5/J:xx_xx/K:1+1-5',
'i^ch-i+w=a/A:-1+4+2/B:xx-xx_xx/C:09_xx+xx/D:xx+xx_xx/E:xx_xx!xx_xx-xx/F:5_5#0_xx@1_1|1_5/G:xx_xx%xx_xx_xx/H:xx_xx/I:1-5@1+1&1-1|1+5/J:xx_xx/K:1+1-5',
'ch^i-w+a=sil/A:0+5+1/B:xx-xx_xx/C:09_xx+xx/D:xx+xx_xx/E:xx_xx!xx_xx-xx/F:5_5#0_xx@1_1|1_5/G:xx_xx%xx_xx_xx/H:xx_xx/I:1-5@1+1&1-1|1+5/J:xx_xx/K:1+1-5',
'i^w-a+sil=xx/A:0+5+1/B:xx-xx_xx/C:09_xx+xx/D:xx+xx_xx/E:xx_xx!xx_xx-xx/F:5_5#0_xx@1_1|1_5/G:xx_xx%xx_xx_xx/H:xx_xx/I:1-5@1+1&1-1|1+5/J:xx_xx/K:1+1-5',
'w^a-sil+xx=xx/A:xx+xx+xx/B:xx-xx_xx/C:xx_xx+xx/D:xx+xx_xx/E:5_5!0_xx-xx/F:xx_xx#xx_xx@xx_xx|xx_xx/G:xx_xx%xx_xx_xx/H:1_5/I:xx-xx@xx+xx&xx-xx|xx+xx/J:xx_xx/K:1+1-5']

Please check lab_format.pdf in HTS-demo_NIT-ATR503-M001.tar.bz2 for more details about full-context labels.

Grapheme-to-phoeneme (G2P)

In [1]: import pyopenjtalk

In [2]: pyopenjtalk.g2p("こんにちは")
Out[2]: 'k o N n i ch i w a'

In [3]: pyopenjtalk.g2p("こんにちは", kana=True)
Out[3]: 'コンニチワ'

About run_marine option

After v0.3.0, the run_marine option has been available for estimating the Japanese accent with the DNN-based method (see marine). If you want to use the feature, please install pyopenjtalk as below;

pip install pyopenjtalk[marine]

And then, you can use the option as the following examples;

In [1]: import pyopenjtalk

In [2]: x, sr = pyopenjtalk.tts("おめでとうございます", run_marine=True) # for TTS

In [3]: label = pyopenjtalk.extract_fullcontext("こんにちは", run_marine=True) # for text processing frontend only

LICENSE

Acknowledgements

HTS Working Group for their dedicated efforts to develop and maintain Open JTalk.

Metadata

Release files for openjtalk 0.3.0.dev3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Files added late

2 files were uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release files before installing.

Source distribution (sdist)

Source distribution for openjtalk 0.3.0.dev3
File Size Uploaded
openjtalk-0.3.0.dev3.tar.gz 24.9 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for openjtalk 0.3.0.dev3
File
openjtalk-0.3.0.dev3-cp312-cp312-manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
openjtalk-0.3.0.dev3-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
openjtalk-0.3.0.dev3-cp311-cp311-manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
openjtalk-0.3.0.dev3-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
openjtalk-0.3.0.dev3-cp310-cp310-manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
openjtalk-0.3.0.dev3-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
openjtalk-0.3.0.dev3-cp39-cp39-manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
openjtalk-0.3.0.dev3-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
openjtalk-0.3.0.dev3-cp38-cp38-manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details
openjtalk-0.3.0.dev3-cp37-cp37m-manylinux2014_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64 Details

Total release size: 304.4 MB

Release files / openjtalk-0.3.0.dev3.tar.gz

Download URL openjtalk-0.3.0.dev3.tar.gz
Size 24.9 MB
Tags Source
SHA-256 checksum
How to use checksums
0f03a09ef6daa461aba469270b508c0a76a9dcdf3ede73949e538dc949c68a6c
BLAKE2b-256 checksum
How to use checksums
1515fb29ebea31d9b0fbe72b8547c9221dda17df8e23e3b4f2eb326eec07966a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.2

Release files / openjtalk-0.3.0.dev3-cp312-cp312-manylinux2014_x86_64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL openjtalk-0.3.0.dev3-cp312-cp312-manylinux2014_x86_64.whl
Size 30.3 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
16de222e7fd0e16e8a9f1cb228dcab7e8635927e51f2f31dfdcd34dd083fa391
BLAKE2b-256 checksum
How to use checksums
f0deeb70398883af9b07cfd3a906e0baec27a092b0d445f4243b0059719e0238
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.12.0

Release files / openjtalk-0.3.0.dev3-cp311-cp311-win_amd64.whl

Download URL openjtalk-0.3.0.dev3-cp311-cp311-win_amd64.whl
Size 24.6 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
f4bade3531e08cc4588ec1983f6bb6c3acf0260081e28b8c5663d9855c9a2a49
BLAKE2b-256 checksum
How to use checksums
9e561ba2b4abd6d63f32b85ba80e68caf1a8f52527adb6ca24ddb1a621a0c278
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.2

Release files / openjtalk-0.3.0.dev3-cp311-cp311-manylinux2014_x86_64.whl

Download URL openjtalk-0.3.0.dev3-cp311-cp311-manylinux2014_x86_64.whl
Size 30.2 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
f5508acb589b82a03db5a01a138031d5e8e2da87e862fbfc27c74bf541d26bf1
BLAKE2b-256 checksum
How to use checksums
207be4a6fd807a7fc47902911a135825dda170b8c3d9ebf754b6181ce5c1bc3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.2

Release files / openjtalk-0.3.0.dev3-cp310-cp310-win_amd64.whl

Download URL openjtalk-0.3.0.dev3-cp310-cp310-win_amd64.whl
Size 24.6 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
852609e579c379489a1239d81ad3690363337b077dd0c1dac644cfcb0fa1f949
BLAKE2b-256 checksum
How to use checksums
d4c0e25c93e0547c3d5db5e2a572a2955c6377f6d0a889ee3eeb697a91616444
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.10

Release files / openjtalk-0.3.0.dev3-cp310-cp310-manylinux2014_x86_64.whl

Download URL openjtalk-0.3.0.dev3-cp310-cp310-manylinux2014_x86_64.whl
Size 30.1 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
5cc67a123aed2ea25e4bd6e894fb4e73f47f7ca21ac2033d625b19029f583085
BLAKE2b-256 checksum
How to use checksums
6c7b412a634ba4bb81c0e963e832ba346f0915598ecf15a1790f4524e310cdb5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.10

Release files / openjtalk-0.3.0.dev3-cp39-cp39-win_amd64.whl

Download URL openjtalk-0.3.0.dev3-cp39-cp39-win_amd64.whl
Size 24.6 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
44698ad23c39d4f2efceacd86e10b00622c5872fa5a36e2bd3f0d48c77605961
BLAKE2b-256 checksum
How to use checksums
a49e47b829e7b7397a8227518e9e8ba4a249d8b70dfcac1308c6ef0df4ee2418
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.13

Release files / openjtalk-0.3.0.dev3-cp39-cp39-manylinux2014_x86_64.whl

Download URL openjtalk-0.3.0.dev3-cp39-cp39-manylinux2014_x86_64.whl
Size 30.1 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
9bf62a99bb069e658e49613159924e7463764ddc5cc0af754503f4aeeebd14ad
BLAKE2b-256 checksum
How to use checksums
688872050bac26b2bcc332fdbaf8fbec126e1f5651f5f4b7bf8eae10aa4e0e9b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.16

Release files / openjtalk-0.3.0.dev3-cp38-cp38-win_amd64.whl

Download URL openjtalk-0.3.0.dev3-cp38-cp38-win_amd64.whl
Size 24.6 MB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
4b57e80367a0dcfa25c3f0339cdf419158a211226b2bfa77cc8f44c25e63f729
BLAKE2b-256 checksum
How to use checksums
d479cdd62f570c8591dd5698d45f748a07afc523e6c4396e33dabdd853ae102d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.10

Release files / openjtalk-0.3.0.dev3-cp38-cp38-manylinux2014_x86_64.whl

Download URL openjtalk-0.3.0.dev3-cp38-cp38-manylinux2014_x86_64.whl
Size 30.2 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
18b824705aafb7ef3a67b9c897b5196b478789f87b6ec3dd5a7adf468fa23bcc
BLAKE2b-256 checksum
How to use checksums
9f29dbd37c038605f65e46541c2648d6dfe1a35e555efc8b9aff70fe200b2def
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.16

Release files / openjtalk-0.3.0.dev3-cp37-cp37m-manylinux2014_x86_64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL openjtalk-0.3.0.dev3-cp37-cp37m-manylinux2014_x86_64.whl
Size 30.2 MB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
d3ee9ef6df3c796797774451ddace99871727818c54e193d7cd8ef04fc89d787
BLAKE2b-256 checksum
How to use checksums
1ec27c0e7b56d262dd550695aad888e467a688cb6ef8221f49f1dcb9fd247100
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.7.17
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page