Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

convert images to sound waves

Project description

pumila is an image-to-sound converter. It transforms variations in color, brightness, saturation and opacity into different sounds.


pumila is free software under the terms of the GNU Affero General Public License version 3 (or any later version). This is version 0.1.0 of the program.


The author of pumila is Niels Serup. Bug reports and suggestions should be sent to for the time being.


Way #1

Get the newest version of pumila at or at

Extract pumila from the downloaded file, cd into it and run this in a terminal:

# python3 install

Examples are available in the examples directory.

Way #2

Just run this:

# pip-3.1 install pumila

Note that this will not make any examples available.


Python 3.1+

  • For DEB-based distros (Trisquel, Debian, etc.): run apt-get install python3
  • For RPM-based distros: run yum install python3
  • For other distros: do something similar or get it at


Under normal circumstances, you would do something like this:

  • For DEB-based distros: run apt-get install python-pygame
  • For RPM-based distros: run yum install pygame
  • For other distros: do something similar or get it at

However, the PyGame 1.9.1 release doesn’t work perfectly with Python 3, which means you’ll have to compile PyGame from svn yourself, see


It’s best to get the newest version from — pumila works with v0.15, but earlier versions haven’t been tested very much.


What affects what:

       bottom <-- frequency --> top
       bright <-- amplitude --> dark
no saturation <-- amplitude --> full saturation
  transparent <-- amplitude --> opaque

Wave types:

hue 0 to 90,        red to ······ chartreuse: sine to triangle
hue 90 to 180,      chartreuse to cyan:       triangle to square
hue 180 to 270,     cyan to ····· purple:     square to sawtooth
hue 270 to 360 (0), purple to ··· red:        sawtooth to sine


As a command-line tool

Run pumila to use it. Run pumila --help to see how to use it.

As a module

To find out how to use it, run:

$ pydoc3 pumila

And also:

$ pydoc3 pumila.core
$ pydoc3 pumila.primitives

And so on.


There are a few examples in the examples directory. All example images are available under the Creative Commons Zero 1.0 license.


pumila uses Git for code management. The newest (and sometimes unstable) code is available at:

$ git clone git://

This document

Copyright (C) 2011 Niels Serup

Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.

Project details

Release history Release notifications

This version
History Node


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
pumila-0.1.0.tar.gz (685.0 kB) Copy SHA256 hash SHA256 Source None Aug 12, 2011

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page