pyfmodex
Python bindings to the Fmod Ex library.
What it is and what it does
Pyfmodex is a ctypes-based Python wrapper around the FMOD Engine audio library, a cross-platform audio middleware used in games and interactive applications. It lets you load audio files (MP3, WAV, OGG, and others supported by FMOD), play them, and control playback programmatically—volume, pitch, effects, and more—from Python code.
The package requires you to download and install the FMOD Engine library separately from fmod.com (free but requires account registration), then point pyfmodex to it via environment variables or system paths. Once set up, you instantiate a System object, initialize it, create sounds from files, and play them on channels. It supports Windows, macOS, and Linux and declares support for Python 3.6 through 3.12.
Use it for:
- Build interactive audio applications or games in Python that need low-latency sound playback and real-time audio control.
- Prototype audio-driven tools or experiments that rely on FMOD's cross-platform audio engine.
- Add sound effects and music playback to Python desktop applications or game frameworks.
- Integrate FMOD's advanced audio features (effects, 3D positioning, streaming) into Python projects.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Pyfmodex provides Python bindings to the FMOD Engine audio library using ctypes, enabling you to load, play, and control audio programmatically from Python.
Yes, if you need FMOD Engine integration in Python and are comfortable managing the external FMOD library dependency. The package is stable (MIT licensed, no known vulnerabilities, supports modern Python versions), but dormant maintenance (889 days since last release) means you should verify compatibility with your FMOD version and Python environment before committing to it in production.
Install
pyfmodex on PyPI
pip
pip install pyfmodexuv
uv add pyfmodexpoetry
poetry add pyfmodexInstalling pyfmodex
Before you install
Installation requires the FMOD Engine library to be present on your system before installing pyfmodex itself. The package is dormant (last commit August 2024, no release for 889 days), but carries no runtime dependencies and installs as a pure Python wheel with low friction.
License in practice
MIT license is permissive; you may use, modify, and distribute this package freely in commercial or private projects with minimal restrictions.
Quickstart
import pyfmodex
system = pyfmodex.System()
system.init()
sound = system.create_sound("somefile.mp3")
channel = sound.play()
while channel.is_playing:
pass
The FMOD Engine library must be installed and discoverable on your system (via LD_LIBRARY_PATH on Linux, or set PYFMODEX_DLL_PATH / PYFMODEX_STUDIO_DLL_PATH environment variables). Requires Python 3.6 or later.
Verify before relying
- Whether the package works reliably with Python 3.10, 3.11, and 3.12 despite dormant maintenance status.
- Current compatibility with modern FMOD Engine versions and whether breaking changes have occurred.
- Whether the ctypes binding approach has known limitations or performance characteristics compared to alternatives.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.6,<4.0) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | dormant — 889 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 142,205/month — #11,222 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyfmodex-0.7.2-py3-none-any.whl
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
fmod-toolkitExtracts and exports audio from FMOD sound bank…
permissive · top 15,000 on PyPI
PyAudioPyAudio provides Python bindings for PortAudio…
permissive · top 5,000 on PyPI
playsoundPlays audio files (MP3, WAV) and URLs from…
permissive · top 15,000 on PyPI
python-vlcPython ctypes-based bindings to libvlc that let…
copyleft · top 15,000 on PyPI
miniaudioMiniaudio provides Python bindings for…
permissive · top 15,000 on PyPI
pycawPycaw provides programmatic control of Windows…
unclear · top 15,000 on PyPI
pydubPydub provides a high-level Python interface…
permissive · top 5,000 on PyPI
python-mpvPython ctypes-based interface to the mpv media…
copyleft · top 15,000 on PyPI
SoundCardSoundCard plays and records audio across Linux,…
permissive · top 15,000 on PyPI