1audiopy - a program to control the Solaris audio device. 2 3Contact: Barry Warsaw 4Email: bwarsaw@python.org 5Version: 1.1 6 7Introduction 8 9 Audiopy is a program to control the Solaris audio device, allowing 10 you to choose both the input and output devices, and to set the 11 output volume. It can be run either as a standalone command-line 12 script, or as a Tkinter based GUI application. 13 14 Note that your version of Python must have been built with the 15 sunaudiodev module enabled. It is not enabled by default however! 16 You will need to edit your Modules/Setup file, uncomment the 17 sunaudiodev module spec line and rebuild Python. 18 19 Using audiopy, you can select one of three possible input devices: 20 the microphone, the line-in jack, or the CD in. These choices are 21 mutually exclusive; you can only have one active input device at 22 any one time (this is enforced by the underlying device). Some 23 input devices may not be supported on all Solaris machines. 24 25 You can also choose to enable any of the three possible output 26 devices: the headphone jack, the speakers, or the line-out jack. 27 You can enable any combination of these three devices. 28 29 You can also set the output gain (volume) level. 30 31Running as a GUI 32 33 Simply start audiopy with no arguments to start it as a Tkinter 34 based GUI application. It will pop up a window with two sections: 35 the top portion contains three radio buttons indicating your 36 selected input device; the middle portion contains three 37 checkboxes indicating your selected output devices; the bottom 38 portion contains a slider that changes the output gain. 39 40 Note the underlined characters in the button labels. These 41 indicate keyboard accelerators so that pressing Alt+character you 42 can select that device. For example, Alt-s toggles the Speaker 43 device. The Alt accelerators are the same as those you'd use in 44 as the short-form command line switches (see below). 45 46 Alt-q is also an accelerator for selecting Quit from the File 47 menu. 48 49 Unsupported devices will appear dimmed out in the GUI. When run 50 as a GUI, audiopy monitors the audio device and automatically 51 updates its display if the state of the device is changed by some 52 other means. With Python versions before 1.5.2 this is done by 53 occasionally polling the device, but in Python 1.5.2 no polling is 54 necessary (you don't really need to know this, but I thought I'd 55 plug 1.5.2 :-). 56 57Running as a Command Line Program 58 59 You can run audiopy from the command line to select any 60 combination of input or output device, by using the command line 61 options. Actually, any option forces audiopy to run as a command 62 line program and not display its GUI. 63 64 Options have the general form 65 66 --device[={0,1}] 67 -d[-{0,1}] 68 69 meaning there is both a long-form and short-form of the switch, 70 where `device' or `d' is one of the following: 71 72 (input) 73 microphone -- m 74 linein -- i 75 cd -- c 76 77 (output) 78 headphones -- p 79 speaker -- s 80 lineout -- o 81 82 When no value is given, the switch just toggles the specified 83 device. With a value, 0 turns the device off and 1 turns the 84 device on. Any other value is an error. 85 86 For example, to turn the speakers off, turn the headphones on, and 87 toggle the cd input device, run audiopy from the command line like 88 so: 89 90 % ./audiopy -s=0 -p=1 -c 91 92 Audiopy understands these other command line options: 93 94 --gain volume 95 -g volume 96 Sets the output volume to the specified gain level. This must 97 be an integer between MIN_GAIN and MAX_GAIN (usually [0..255], 98 but use the -h option to find the exact values). 99 100 --version 101 -v 102 Print the version number and exit 103 104 --help 105 -h 106 Print a help message and exit 107 108 109 110Local Variables: 111indent-tabs-mode: nil 112End: 113