• Stars
    star
    1,190
  • Rank 39,309 (Top 0.8 %)
  • Language
    Python
  • License
    GNU General Publi...
  • Created over 8 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simple text to phones converter for multiple languages
Tests Linux MacOS Windows Codecov
Documentation Doc
Release GitHub release (latest SemVer) PyPI downloads
Citation status DOI

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.

  • 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 is a Text-to-Speech software supporting a lot of languages and IPA (International Phonetic Alphabet) output.

    • espeak-ng-mbrola uses the SAMPA phonetic alphabet instead of IPA but does not preserve word boundaries.

    • festival is another Tex-to-Speech engine. Its phonemizer backend currently supports only American English. It uses a custom phoneset, but it allows tokenization at the syllable level.

    • 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 user defined
    supported languages 100+ 35 US English user defined
    processing speed fast slow very slow fast
    phone tokens ✔️ ✔️ ✔️ ✔️
    syllable tokens ✔️
    word tokens ✔️ ✔️ ✔️
    punctuation preservation ✔️ ✔️ ✔️
    stressed phones ✔️
    tie ✔️

Citation

To refenrece the phonemizer in your own work, please cite the following JOSS paper.

@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/.

More Repositories

1

shennong

A Python toolbox for speech features extraction
Python
158
star
2

zerospeech2021_baseline

BERT and LSTM baseline models of the ZeroSpeech Challenge 2021
Python
51
star
3

pygamma-agreement

Gamma Agreement in Python
Jupyter Notebook
43
star
4

ABXpy

ABX discrimination task in python
Python
43
star
5

abkhazia

ABX and kaldi experiments on speech corpora made easy
Python
31
star
6

articulatory_inversion

Python
30
star
7

features_extraction

audio cfeatures extraction tool from wav to h5features format
MATLAB
19
star
8

wordseg

A Python toolbox for text based word segmentation
C++
16
star
9

seshat

The Seshat audio annotation management platform
Dockerfile
13
star
10

learnable-strf

Learnable STRF, from Riad et al. 2021 JASA
Python
13
star
11

zerospeech2020

Python package for the Zero Speech Challenge 2020
Python
13
star
12

sustained-phonation-features

Python package for the extraction of speech features for sustained phonation
Jupyter Notebook
12
star
13

abnet3

Siamese network for unsupervised speech representation learning
Python
11
star
14

pyrpde

A (fast) Python implementation of the Recurrence Period Density Entropy (RPDE)
Python
8
star
15

prosolia

speech features extraction pipeline for prosody analysis in Python
Python
8
star
16

zerospeech2021

Zerospeech Challenge 2021: validation and evaluation software
Python
8
star
17

intphys

Data generation for the Intuitive Physics Challenge
Python
6
star
18

tde

Term Discovery Evaluation tools.
Python
6
star
19

h5features

easy to use and efficient storage of large features data
Python
6
star
20

word-count-estimator

A reimplementation of the Aclew word count estimator in Python
Python
6
star
21

Zerospeech2015

Instructions for replicating the zerospeech 2015 challenge
5
star
22

crossitlearn

Cross-situational word learning from raw images and speech
Python
5
star
23

topography

Introducing topography in convolutional neural networks
Python
5
star
24

measuring-regularities-in-word-embeddings

Python
5
star
25

contrastive-symmetry

Study of geometric properties of naturally occurring inventories
R
4
star
26

paraphrases_do_not_explain_analogies

Jupyter Notebook
3
star
27

Interspeech-ZSChallenge-Frankenstein-Team-Paper

Frankenstein Paper
TeX
3
star
28

mdelta

Tools for computing M-delta as described in Tetsuji et al (2014) and undocumented extensions
Python
2
star
29

suprvenr

Tools for mapping continuous vectors to discrete feature systems
R
2
star
30

seshat-angular-client

The Angular Typescript client for the Seshat annotation management platform
TypeScript
2
star
31

seshat-restful-server

The RESTful API for the Seshat annotations manager
Python
2
star
32

ABX-accent

ABX_Accents : Tools and results used for AESRC dataset
Python
2
star
33

shennong-pykaldi

A Python wrapper for Kaldi (shennong dependency)
Python
2
star
34

abx_numpy

Small ABX evaluation
Python
2
star
35

Babylogger

babylogger device
C
1
star
36

pyannote-shennong-features

A feature extractor for Pyannote that is based on the Shennong library
Python
1
star
37

tdev2

TDE version 2.0
Python
1
star
38

FrontiersPsychLang---Feature-economy

TeX
1
star
39

phonrulemodel

Python
1
star
40

IS2015_STD-ABNET

PostScript
1
star
41

seshat-parser-template

A template repository for seshat parser exetensions
Python
1
star
42

XLingCorrelation

Correlation between word segmentation on child directed speech and reported infants' word understanding in several languages
HTML
1
star
43

abnet2

Implementation of abnet with lasagne
Python
1
star
44

char_rnn_lexical_decision

Exploring the lexical capacity of recurrent neural networks
Python
1
star
45

spokenlm-phoneme

Improving Spoken Language Modeling with Phoneme Classification: A Simple Fine-tuning Approach
Jupyter Notebook
1
star
46

seshat-sampa-parser

An example of a Seshat parser plugin, for parsing SAMPA strings in French, English and Spanish
Python
1
star