This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description
Windows build Mac OS X build


pyrilla is a self-contained statically linked binding to gorilla-audio library - “an attempt to make a free, straightforward, cross-platform, high-level software audio mixer that supports playback of both static and streaming sounds”. Like the original it is intended for video game development.

pyrilla’s goal is to provide a python audio package that can be installed without any external dependencies with single pip install pyrilla command. It is built with cython and its API is inspired by part of great but unmantained bacon game engine.

It works without any problems under Mac OS X and Windows. Linux support is planned in a near future.

pyrilla on PyPI

Pyrilla is wrapper on Gorilla Audio C library that is statically linked during installation. For developers convenience it is distributed on PyPI as binary wheels for Windows and Mac OS X. On Windows and Mac OS X it can be easily instaled with pip:

pip install pyrilla

Most up-to-date list of provided distributions is available on pyrilla’s project page on PyPI. Depending on target platform the underlying Gorilla Audio library is compiled with slightly different settings:

Target platform Available Python versions Audio backend Arch
Windows py27, py33, py34, py35 XAudio2 32bit
Mac OS X py27 OpenAL 32bit

64 bit builds for x64 Python versions are not supported yet because I did not manage to compile libvorbis version bundled with Gorilla Audio under x64 compiler yet.

If you really need support for other platform (64bit, Linux, whatever) or more Python versions then fill issue on GitHub repository for this project so I can prioritize my work. I don’t want to spent my time on providing more distributions not knwowing if anyone really needs them.

Note that there is no way to provide binary wheels for Linux platform at the moment and pyrilla source distribution (sdist) available on PyPI is still bit broken. Generally it is not supposed to compile on Linux. This is going to change in future. If you want to use pyrilla on Linux you need to build it by yourself on your platform. The process is preety straightforward and described in building section of this README.

Last but not least, there is also some support for cygwin. Unfortunately there is no binary wheel on PyPI for this environment yet. If you want to use pyrilla under cygwin then you need to compile it manually.


The easiest way to play single sound is to use Sound class:

from pyrilla import core

def finished(sound):
    print("sound %s finished playing" % sound)

# note: sound file extension must be explicitely provided
sound = core.Sound("soundfile.ogg", "ogg")
# optional callback will be called when sound finishes to play

while True:
    # update internal state of default audio manager and mixer
    # this mixes all currently played sounds, pushes buffers etc.

To play looped audio you need to use Voice instance that can be created from existing sound.

from pyrilla import core

sound = core.Sound("soundfile.ogg", "ogg")
voice = core.Voice(sound, loop=True)

while True:

For more features like custom managers/mixers, voice control (pitch, gain, pan) or stop/play see code samples in examples directory of this repo.


Building pyrilla prerequisites:

  • cython
  • cmake
  • make

If you are going to build this package then remeber that Gorilla Audio is bundled with this repository as Git submodule from my unofficial fork on GitHub (under gorilla-audio directory). You need to eaither clone this repository with --recursive Git flag or init submodules manually:

git submodule update --init --recursive

Use cmake to build build gorilla-audio

cmake gorilla-audio/build
cmake --build . --config Release
python build

For windows (also on cygwin):

cmake --config Release --build .

Then build and install the python extension:

python build
python install

Note that building for Windows may be bit trickier. If your personal environment is broken and compilation step for Gorilla Audio does not find the correct path for DirectX SDK and/or XAudio2 lib file. If you have same problems as I have then you probably need to provide this path manually to first cmake call:

Release History

Release History


This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
pyrilla-0.0.1-cp27-cp27m-macosx_10_9_intel.whl (194.5 kB) Copy SHA256 Checksum SHA256 cp27 Wheel Mar 24, 2016
pyrilla-0.0.1-cp27-cp27m-win32.whl (116.4 kB) Copy SHA256 Checksum SHA256 cp27 Wheel Mar 24, 2016
pyrilla-0.0.1-cp27-none-macosx_10_10_intel.whl (203.6 kB) Copy SHA256 Checksum SHA256 2.7 Wheel Sep 4, 2015
pyrilla-0.0.1-cp27-none-win32.whl (110.5 kB) Copy SHA256 Checksum SHA256 2.7 Wheel Oct 20, 2015
pyrilla-0.0.1-cp33-cp33m-macosx_10_9_x86_64.whl (174.9 kB) Copy SHA256 Checksum SHA256 cp33 Wheel Mar 24, 2016
pyrilla-0.0.1-cp33-none-win32.whl (116.6 kB) Copy SHA256 Checksum SHA256 cp33 Wheel Mar 24, 2016
pyrilla-0.0.1-cp34-cp34m-macosx_10_9_x86_64.whl (175.0 kB) Copy SHA256 Checksum SHA256 cp34 Wheel Mar 24, 2016
pyrilla-0.0.1-cp34-cp34m-win32.whl (116.6 kB) Copy SHA256 Checksum SHA256 cp34 Wheel Mar 24, 2016
pyrilla-0.0.1-cp35-cp35m-macosx_10_9_x86_64.whl (175.0 kB) Copy SHA256 Checksum SHA256 cp35 Wheel Mar 24, 2016
pyrilla-0.0.1-cp35-cp35m-win32.whl (113.2 kB) Copy SHA256 Checksum SHA256 cp35 Wheel Mar 24, 2016 (110.0 kB) Copy SHA256 Checksum SHA256 2.7 Dumb Binary Oct 20, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting