| audiopy - a program to control the Solaris audio device. | |
| Contact: Barry Warsaw | |
| Email: bwarsaw@python.org | |
| Version: 1.1 | |
| Introduction | |
| Audiopy is a program to control the Solaris audio device, allowing | |
| you to choose both the input and output devices, and to set the | |
| output volume. It can be run either as a standalone command-line | |
| script, or as a Tkinter based GUI application. | |
| Note that your version of Python must have been built with the | |
| sunaudiodev module enabled. It is not enabled by default however! | |
| You will need to edit your Modules/Setup file, uncomment the | |
| sunaudiodev module spec line and rebuild Python. | |
| Using audiopy, you can select one of three possible input devices: | |
| the microphone, the line-in jack, or the CD in. These choices are | |
| mutually exclusive; you can only have one active input device at | |
| any one time (this is enforced by the underlying device). Some | |
| input devices may not be supported on all Solaris machines. | |
| You can also choose to enable any of the three possible output | |
| devices: the headphone jack, the speakers, or the line-out jack. | |
| You can enable any combination of these three devices. | |
| You can also set the output gain (volume) level. | |
| Running as a GUI | |
| Simply start audiopy with no arguments to start it as a Tkinter | |
| based GUI application. It will pop up a window with two sections: | |
| the top portion contains three radio buttons indicating your | |
| selected input device; the middle portion contains three | |
| checkboxes indicating your selected output devices; the bottom | |
| portion contains a slider that changes the output gain. | |
| Note the underlined characters in the button labels. These | |
| indicate keyboard accelerators so that pressing Alt+character you | |
| can select that device. For example, Alt-s toggles the Speaker | |
| device. The Alt accelerators are the same as those you'd use in | |
| as the short-form command line switches (see below). | |
| Alt-q is also an accelerator for selecting Quit from the File | |
| menu. | |
| Unsupported devices will appear dimmed out in the GUI. When run | |
| as a GUI, audiopy monitors the audio device and automatically | |
| updates its display if the state of the device is changed by some | |
| other means. With Python versions before 1.5.2 this is done by | |
| occasionally polling the device, but in Python 1.5.2 no polling is | |
| necessary (you don't really need to know this, but I thought I'd | |
| plug 1.5.2 :-). | |
| Running as a Command Line Program | |
| You can run audiopy from the command line to select any | |
| combination of input or output device, by using the command line | |
| options. Actually, any option forces audiopy to run as a command | |
| line program and not display its GUI. | |
| Options have the general form | |
| --device[={0,1}] | |
| -d[-{0,1}] | |
| meaning there is both a long-form and short-form of the switch, | |
| where `device' or `d' is one of the following: | |
| (input) | |
| microphone -- m | |
| linein -- i | |
| cd -- c | |
| (output) | |
| headphones -- p | |
| speaker -- s | |
| lineout -- o | |
| When no value is given, the switch just toggles the specified | |
| device. With a value, 0 turns the device off and 1 turns the | |
| device on. Any other value is an error. | |
| For example, to turn the speakers off, turn the headphones on, and | |
| toggle the cd input device, run audiopy from the command line like | |
| so: | |
| % ./audiopy -s=0 -p=1 -c | |
| Audiopy understands these other command line options: | |
| --gain volume | |
| -g volume | |
| Sets the output volume to the specified gain level. This must | |
| be an integer between MIN_GAIN and MAX_GAIN (usually [0..255], | |
| but use the -h option to find the exact values). | |
| --version | |
| -v | |
| Print the version number and exit | |
| --help | |
| -h | |
| Print a help message and exit | |
| Local Variables: | |
| indent-tabs-mode: nil | |
| End: |