Skip to main content

Python bindings to the Fmod Ex library.

Project description

Pyfmodex

This is pyfmodex, an FMOD Engine Python binding using ctypes.

Installation

To install, first make sure that you have the FMOD Engine library for you platform somewhere in your path, so Python will be able to find it. On Linux, libraries are searched for in LD_LIBRARY_PATH. Alternatively, you can set PYFMODEX_DLL_PATH or PYFMODEX_STUDIO_DLL_PATH as an environment variable to specify the library path. This can also be done inside Python setting os.environ["PYFMODEX_DLL_PATH"] or os.environ["PYFMODEX_STUDIO_DLL_PATH"] before importing pyfmodex. To download the FMOD Engine library, visit http://www.fmod.org/download. The library is free to download, but requires a free account to be made first.

Then, install pyfmodex via pip, easy_install or the setup.py way. Note that the minimum supported Python version is Python 3.6.

Usage

To verify if everything works, open a Python REPL and try importing pyfmodex:

import pyfmodex

If there is no error: good, it worked. :-)

Playing a sound is a little bit more complicated than the import, but nothing horrible. Try the following simple script:

import pyfmodex

system = pyfmodex.System()
system.init()
sound = system.create_sound("somefile.mp3")
channel = sound.play()

while channel.is_playing:
    pass

Of course, somefile.mp3 must be replaced with something that actually exists. :-)

Note that the while loop is necessary (at least in this simple example) to keep the main thread alive long enough.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyfmodex-0.7.2.tar.gz (111.8 kB view hashes)

Uploaded Source

Built Distribution

pyfmodex-0.7.2-py3-none-any.whl (126.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page