1 from test
.test_support
import verbose
, findfile
, TestFailed
, TestSkipped
13 SND_FORMAT_MULAW_8
= 1
15 def play_sound_file(path
):
17 size
, enc
, rate
, nchannels
, extra
= sunaudio
.gethdr(fp
)
21 if enc
!= SND_FORMAT_MULAW_8
:
22 print "Expect .au file with 8-bit mu-law samples"
26 a
= linuxaudiodev
.open('w')
27 except linuxaudiodev
.error
, msg
:
28 if msg
[0] in (errno
.EACCES
, errno
.ENODEV
, errno
.EBUSY
):
29 raise TestSkipped
, msg
32 # convert the data to 16-bit signed
33 data
= audioop
.ulaw2lin(data
, 2)
36 if sys
.byteorder
== 'little':
37 fmt
= linuxaudiodev
.AFMT_S16_LE
39 fmt
= linuxaudiodev
.AFMT_S16_BE
41 # at least check that these methods can be invoked
48 # set parameters based on .au file headers
49 a
.setparameters(rate
, 16, nchannels
, fmt
)
55 a
= linuxaudiodev
.open("w")
57 fmt
= linuxaudiodev
.AFMT_U8
61 a
.setparameters(-1, size
, nchannels
, fmt
)
62 except ValueError, msg
:
65 a
.setparameters(rate
, -2, nchannels
, fmt
)
66 except ValueError, msg
:
69 a
.setparameters(rate
, size
, 3, fmt
)
70 except ValueError, msg
:
73 a
.setparameters(rate
, size
, nchannels
, 177)
74 except ValueError, msg
:
77 a
.setparameters(rate
, size
, nchannels
, linuxaudiodev
.AFMT_U16_LE
)
78 except ValueError, msg
:
81 a
.setparameters(rate
, 16, nchannels
, fmt
)
82 except ValueError, msg
:
86 play_sound_file(findfile('audiotest.au'))