Forward-port r65112 so that test_ossaudiodev uses sunau.

This commit is contained in:
Brett Cannon 2008-07-25 17:56:47 +00:00
parent d4d478d1c6
commit abd9a59763

View file

@ -6,7 +6,7 @@ from test.support import findfile, TestSkipped
import errno
import ossaudiodev
import sys
import sunaudio
import sunau
import time
import audioop
import unittest
@ -22,15 +22,16 @@ except ImportError:
AFMT_S16_NE = ossaudiodev.AFMT_S16_BE
SND_FORMAT_MULAW_8 = 1
def read_sound_file(path):
fp = open(path, 'rb')
size, enc, rate, nchannels, extra = sunaudio.gethdr(fp)
data = fp.read()
fp.close()
with open(path, 'rb') as fp:
au = sunau.open(fp)
rate = au.getframerate()
nchannels = au.getnchannels()
encoding = au._encoding
fp.seek(0)
data = fp.read()
if enc != SND_FORMAT_MULAW_8:
if encoding != sunau.AUDIO_FILE_ENCODING_MULAW_8:
raise RuntimeError("Expect .au file with 8-bit mu-law samples")
# Convert the data to 16-bit signed.