mirror of
https://github.com/larsimmisch/pyalsaaudio.git
synced 2026-04-16 08:05:30 +00:00
r1585 | casper | 2005-07-09 23:26:15 +0200 (Sat, 09 Jul 2005) | 3 lines Last checkin before version 0.2 git-svn-id: svn://svn.code.sf.net/p/pyalsaaudio/code/trunk@12 ec2f30ec-7544-0410-870e-f70ca00c83f0
37 lines
1.0 KiB
Python
37 lines
1.0 KiB
Python
## recordtest.py
|
|
##
|
|
## This is an example of a simple sound playback script.
|
|
##
|
|
## The script opens an ALSA pcm for sound playback. Set
|
|
## various attributes of the device. It then reads data
|
|
## from stdin and writes it to the device.
|
|
##
|
|
## To test it out do the following:
|
|
## python recordtest.py > out.raw # talk to the microphone
|
|
## python playbacktest.py < out.raw
|
|
##
|
|
## If you have Gnome, you could also just test by doing something like:
|
|
## python playbacktest.py < /usr/share/sounds/gnibbles/laughter.wav
|
|
import alsaaudio
|
|
import sys
|
|
import time
|
|
|
|
# Open the device in playback mode.
|
|
out = alsaaudio.PCM(alsaaudio.PCM_PLAYBACK)
|
|
|
|
# Set attributes: Mono, 8000 Hz, 16 bit little endian frames
|
|
out.setchannels(1)
|
|
out.setrate(8000)
|
|
out.setformat(alsaaudio.PCM_FORMAT_S16_LE)
|
|
|
|
# The period size controls the internal number of frames per period.
|
|
# The significance of this parameter is documented in the ALSA api.
|
|
out.setperiodsize(160)
|
|
|
|
loops = 10000
|
|
while loops > 0:
|
|
loops -= 1
|
|
# Read data from stdin
|
|
data = sys.stdin.read(320)
|
|
out.write(data)
|