skillfed

phonemizer

Simple text to phones converter for multiple languages

phonemizer v3.4.0 431.8K downloads/30d#6,714 on PyPI1,567
Copyleft license GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> Everyone is permitted to copy and distribute verbatim copies of this license… (full text in the JSON record) Active released

What it is and what it does

Phonemizer is a Python wrapper around multiple text-to-speech and phoneme-extraction backends that converts written words and sentences into their phonetic representations. It supports four backends—espeak-ng (IPA output, 100+ languages), espeak-mbrola (SAMPA, 35 languages), festival (US English, syllable-level tokenization), and segments (user-defined grapheme-to-phoneme mappings)—each with different speed, language coverage, and output format trade-offs. You choose which backend to use based on your language, required phoneme alphabet, and whether you need syllable-level or word-level boundaries.

The package provides both a command-line tool (`phonemize`) and a Python API (`phonemizer.phonemize`). It is actively maintained, has low install friction (pure Python with minimal dependencies), and is published under GPLv3+. The main constraint is that it requires at least one external backend system library to be installed separately; the package itself is a Python interface to those tools.

Use it for:

  • Generate IPA transcriptions for linguistic research or speech corpus annotation across many languages.
  • Prepare phonetic training data for automatic speech recognition (ASR) or text-to-speech (TTS) systems.
  • Extract syllable-level phonetic boundaries for prosody analysis or speech synthesis in festival-supported contexts.
  • Build custom phonemization pipelines using user-defined grapheme-to-phoneme mappings via the segments backend.
  • Batch-process large text corpora into phonetic form for phonological or acoustic studies.
  • Integrate phonetic transcription into NLP pipelines for multilingual phonetic feature extraction.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Phonemizer converts written text into phonetic representations (IPA, SAMPA, or custom phoneme sets) across many languages using pluggable backends like espeak, festival, and segments.

Yes. Phonemizer is a well-maintained, actively developed tool with low install friction and no known vulnerabilities. It fills a clear niche in phonetic text processing across many languages. The GPLv3+ license is a constraint only if you need to build proprietary closed-source software; for research, open-source, and academic use, it is unencumbered. The main gotcha is that you must install one of the external backends separately, but that is by design and well-documented.

Install

phonemizer on PyPI

pip

pip install phonemizer

uv

uv add phonemizer

poetry

poetry add phonemizer

Installing phonemizer

Before you install

Low install friction: pure Python wheel with four lightweight runtime dependencies (joblib, attrs, dlinfo, typing-extensions). Active maintenance with a release 14 days ago and 1567 repository stars.

License in practice

GPLv3+ copyleft license requires that any derivative work or distribution must also be licensed under GPLv3 or later. Suitable for open-source projects but incompatible with proprietary closed-source applications.

Quickstart

pip install phonemizer
from phonemizer.phonemize import phonemize
result = phonemize('hello', language='en-us', backend='espeak')

Requires one of the external TTS/phonemization backends (espeak-ng, festival, or segments) to be installed on the system; the Python package alone is a wrapper.

Verify before relying

  • Whether backend installation (espeak-ng, festival, segments) is automatic or requires manual system setup on each platform.
  • Performance characteristics and memory usage for large-scale batch phonemization tasks.
  • Accuracy and coverage differences between the four backends for specific language pairs.

Package facts

License GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> Everyone is permitted to copy and distribute verbatim copies of this license… (full text in the JSON record) (copyleft)
Python support supports the current Python release (>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies 4 — joblib, attrs, dlinfo, typing-extensions
Maintenance actively maintained — 14 days since the last release
Last repo commit
First released
Downloads 431,810/month — #6,714 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: phonemizer-3.4.0-py3-none-any.whl

Keywords: linguistics, G2P, phone, espeak, festival, TTS

License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)Operating System :: OS IndependentProgramming Language :: Python :: 3

Tags

text to phonemes conversionIPA phonetic transcriptiongrapheme to phoneme g2pmultilingual phonemizationespeak python wrapperspeech phoneme extractionlinguistic text processing
phoneticsmultilingualspeech-processing

More Linguistic packages