Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoInstallSign in
Socket

spaudio

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

spaudio - npm Package Compare versions

Comparing version
0.7.14.post1
to
0.7.15
+5
docs/_templates/footer.html
{% extends "!footer.html" %}
{% block extrafooter %}
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
{{ super() }}
{% endblock %}
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import os
import sys
import argparse
import wave
import spaudio
def rectowav2(filename, samprate, nchannels, sampwidth, duration):
with wave.open(filename, 'wb') as wf:
nframes = round(duration * samprate)
print('nchannels = %d, samprate = %d, sampwidth = %d, nframes = %d'
% (nchannels, samprate, sampwidth, nframes))
with spaudio.open('ro', nchannels=nchannels, samprate=samprate, sampbit=(8 * sampwidth)) as a:
b = a.createrawarray(nframes * nchannels)
nread = a.readraw(b)
print('nread = %d' % nread)
paramstuple = a.getparamstuple(True, nframes)
wf.setparams(paramstuple)
wf.writeframes(b)
print('output file: %s' % filename, file=sys.stderr)
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Record to wave file')
parser.add_argument('filename', help='name of output wave file')
parser.add_argument('-f', '--samprate', type=int,
default=8000, help='sampling rate [Hz]')
parser.add_argument('-c', '--nchannels', type=int,
default=1, help='number of channels')
parser.add_argument('-w', '--sampwidth', type=int,
default=2, help='sample width [byte]')
parser.add_argument('-d', '--duration', type=float,
default=2.0, help='recording duration [s]')
args = parser.parse_args()
rectowav2(args.filename, args.samprate, args.nchannels,
args.sampwidth, args.duration)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
import sys
import wave
import spaudio
def myaudiocb(audio, cbtype, cbdata, args):
if cbtype == spaudio.OUTPUT_POSITION_CALLBACK:
position = cbdata
samprate = args[0]
nframes = args[1]
position_s = float(position) / float(samprate)
total_s = float(nframes) / float(samprate)
sys.stdout.write('Time: %.3f / %.3f\r' % (position_s, total_s))
elif cbtype == spaudio.OUTPUT_BUFFER_CALLBACK:
buf = cbdata
# print('OUTPUT_BUFFER_CALLBACK: buffer type = %s, size = %d' % (type(buf), len(buf)))
return True
def playfromwav2(filename):
with wave.open(filename, 'rb') as wf:
paramstuple = wf.getparams()
print('nchannels = %d, samprate = %d, sampwidth = %d, nframes = %d'
% (paramstuple.nchannels, paramstuple.framerate,
paramstuple.sampwidth, paramstuple.nframes))
with spaudio.open('wo', params=paramstuple, buffersize=1024,
callback=(spaudio.OUTPUT_POSITION_CALLBACK | spaudio.OUTPUT_BUFFER_CALLBACK,
myaudiocb, paramstuple.framerate, paramstuple.nframes)) as a:
b = wf.readframes(paramstuple.nframes)
nwrite = a.writeraw(b)
if __name__ == '__main__':
if len(sys.argv) <= 1:
print('usage: %s filename'
% os.path.basename(sys.argv[0]), file=sys.stderr)
quit()
playfromwav2(sys.argv[1])
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
import sys
import aifc
import wave
import sunau
import spplugin
def writefrombyplugin(inputfile, outputfile):
ifilebody, ifileext = os.path.splitext(inputfile)
if ifileext == '.wav' or ifileext == '.wave':
sndlib = wave
decodebytes = True
ibigendian_or_signed8bit = False
elif ifileext == '.au':
sndlib = sunau
decodebytes = True
ibigendian_or_signed8bit = True
elif (ifileext == '.aif' or ifileext == '.aiff' or
ifileext == '.aifc' or ifileext == '.afc'):
sndlib = aifc
decodebytes = False
ibigendian_or_signed8bit = True
else:
raise RuntimeError('input file format is not supported')
with sndlib.open(inputfile, 'rb') as sf:
params = sf.getparams()
print('nchannels = %d, framerate = %d, sampwidth = %d, nframes = %d'
% (params.nchannels, params.framerate, params.sampwidth, params.nframes))
if params.comptype:
print('comptype = %s %s'
% (params.comptype, '(' + params.compname +
')' if params.compname else ''))
y = sf.readframes(params.nframes)
with spplugin.open(outputfile, 'w', params=params) as pf:
print('output plugin: %s (%s)' % (pf.getpluginid(), pf.getplugindesc()))
print('plugin version: %d.%d' % pf.getpluginversion())
b = pf.copyraw2array(y, params.sampwidth, bigendian_or_signed8bit=ibigendian_or_signed8bit)
nwrite = pf.writeraw(b)
print('nwrite = %d' % nwrite)
print('output file: %s' % outputfile, file=sys.stderr)
if __name__ == '__main__':
if len(sys.argv) <= 2:
print('usage: %s inputfile outputfile'
% os.path.basename(sys.argv[0]), file=sys.stderr)
quit()
writefrombyplugin(sys.argv[1], sys.argv[2])
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import spaudio
with spaudio.open('rw', nchannels=2, samprate=44100, buffersize=2048) as a:
nloop = 500
b = bytearray(4096)
for i in range(nloop):
a.readraw(b)
a.writeraw(b)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import os
import sys
import spplugin
import spaudio
def playfilebyplugin(filename):
with spplugin.open(filename, 'r') as pf:
print('input plugin: %s (%s)' % (pf.getpluginid(), pf.getplugindesc()))
print('plugin version: %d.%d' % pf.getpluginversion())
nchannels = pf.getnchannels()
samprate = pf.getsamprate()
sampbit = pf.getsampbit()
nframes = pf.getnframes()
print('nchannels = %d, samprate = %d, sampbit = %d, nframes = %d'
% (nchannels, samprate, sampbit, nframes))
filetype = pf.getfiletype()
filedesc = pf.getfiledesc()
filefilter = pf.getfilefilter()
if filetype:
print('filetype = %s %s'
% (filetype, '(' + filedesc +
('; ' + filefilter if filefilter else '') + ')' if filedesc else ''))
songinfo = pf.getsonginfo()
if songinfo:
print('songinfo = ' + str(songinfo))
with spaudio.open('wo', nchannels=nchannels, samprate=samprate,
sampbit=sampbit) as a:
b = a.createarray(nframes, True)
nread = pf.read(b)
print('nread = %d' % nread)
nwrite = a.write(b)
print('nwrite = %d' % nwrite)
if __name__ == '__main__':
if len(sys.argv) <= 1:
print('usage: %s filename'
% os.path.basename(sys.argv[0]), file=sys.stderr)
quit()
playfilebyplugin(sys.argv[1])
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
import sys
import argparse
import wave
import spaudio
def rectowav(filename, samprate, nchannels, sampwidth, duration):
with wave.open(filename, 'wb') as wf:
nframes = round(duration * samprate)
print('nchannels = %d, samprate = %d, sampwidth = %d, nframes = %d'
% (nchannels, samprate, sampwidth, nframes))
a = spaudio.SpAudio()
a.setnchannels(nchannels)
a.setsamprate(samprate)
a.setsampwidth(sampwidth)
a.open('ro')
b = a.createrawarray(nframes * nchannels)
nread = a.readraw(b)
print('nread = %d' % nread)
a.close()
wf.setnchannels(nchannels)
wf.setframerate(samprate)
wf.setsampwidth(sampwidth)
wf.setnframes(nframes)
wf.writeframes(b)
print('output file: %s' % filename, file=sys.stderr)
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Record to wave file')
parser.add_argument('filename', help='name of output wave file')
parser.add_argument('-f', '--samprate', type=int,
default=8000, help='sampling rate [Hz]')
parser.add_argument('-c', '--nchannels', type=int,
default=1, help='number of channels')
parser.add_argument('-w', '--sampwidth', type=int,
default=2, help='sample width [byte]')
parser.add_argument('-d', '--duration', type=float,
default=2.0, help='recording duration [s]')
args = parser.parse_args()
rectowav(args.filename, args.samprate, args.nchannels,
args.sampwidth, args.duration)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import os
import sys
import wave
import spaudio
def playfromwav2(filename):
with wave.open(filename, 'rb') as wf:
paramstuple = wf.getparams()
print('nchannels = %d, framerate = %d, sampwidth = %d, nframes = %d'
% (paramstuple.nchannels, paramstuple.framerate,
paramstuple.sampwidth, paramstuple.nframes))
with spaudio.open('wo', params=paramstuple) as a:
b = wf.readframes(paramstuple.nframes)
nwrite = a.writeraw(b)
print('nwrite = %d' % nwrite)
if __name__ == '__main__':
if len(sys.argv) <= 1:
print('usage: %s filename'
% os.path.basename(sys.argv[0]), file=sys.stderr)
quit()
playfromwav2(sys.argv[1])
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import os
import sys
import argparse
import wave
import spaudio
def rectowav2(filename, samprate, nchannels, sampwidth, duration):
with wave.open(filename, 'wb') as wf:
nframes = round(duration * samprate)
print('nchannels = %d, samprate = %d, sampwidth = %d, nframes = %d'
% (nchannels, samprate, sampwidth, nframes))
with spaudio.open('ro', nchannels=nchannels, samprate=samprate, sampbit=(8 * sampwidth)) as a:
b = a.createrawarray(nframes * nchannels)
nread = a.readraw(b)
print('nread = %d' % nread)
paramstuple = a.getparamstuple(True, nframes)
wf.setparams(paramstuple)
wf.writeframes(b)
print('output file: %s' % filename, file=sys.stderr)
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Record to wave file')
parser.add_argument('filename', help='name of output wave file')
parser.add_argument('-f', '--samprate', type=int,
default=8000, help='sampling rate [Hz]')
parser.add_argument('-c', '--nchannels', type=int,
default=1, help='number of channels')
parser.add_argument('-w', '--sampwidth', type=int,
default=2, help='sample width [byte]')
parser.add_argument('-d', '--duration', type=float,
default=2.0, help='recording duration [s]')
args = parser.parse_args()
rectowav2(args.filename, args.samprate, args.nchannels,
args.sampwidth, args.duration)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
import sys
import wave
import spaudio
def myaudiocb(audio, cbtype, cbdata, args):
if cbtype == spaudio.OUTPUT_POSITION_CALLBACK:
position = cbdata
samprate = args[0]
nframes = args[1]
position_s = float(position) / float(samprate)
total_s = float(nframes) / float(samprate)
sys.stdout.write('Time: %.3f / %.3f\r' % (position_s, total_s))
elif cbtype == spaudio.OUTPUT_BUFFER_CALLBACK:
buf = cbdata
# print('OUTPUT_BUFFER_CALLBACK: buffer type = %s, size = %d' % (type(buf), len(buf)))
return True
def playfromwav2(filename):
with wave.open(filename, 'rb') as wf:
paramstuple = wf.getparams()
print('nchannels = %d, samprate = %d, sampwidth = %d, nframes = %d'
% (paramstuple.nchannels, paramstuple.framerate,
paramstuple.sampwidth, paramstuple.nframes))
with spaudio.open('wo', params=paramstuple, buffersize=1024,
callback=(spaudio.OUTPUT_POSITION_CALLBACK | spaudio.OUTPUT_BUFFER_CALLBACK,
myaudiocb, paramstuple.framerate, paramstuple.nframes)) as a:
b = wf.readframes(paramstuple.nframes)
nwrite = a.writeraw(b)
if __name__ == '__main__':
if len(sys.argv) <= 1:
print('usage: %s filename'
% os.path.basename(sys.argv[0]), file=sys.stderr)
quit()
playfromwav2(sys.argv[1])
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
import sys
import aifc
import wave
import sunau
import spplugin
def writefrombyplugin(inputfile, outputfile):
ifilebody, ifileext = os.path.splitext(inputfile)
if ifileext == '.wav' or ifileext == '.wave':
sndlib = wave
decodebytes = True
ibigendian_or_signed8bit = False
elif ifileext == '.au':
sndlib = sunau
decodebytes = True
ibigendian_or_signed8bit = True
elif (ifileext == '.aif' or ifileext == '.aiff' or
ifileext == '.aifc' or ifileext == '.afc'):
sndlib = aifc
decodebytes = False
ibigendian_or_signed8bit = True
else:
raise RuntimeError('input file format is not supported')
with sndlib.open(inputfile, 'rb') as sf:
params = sf.getparams()
print('nchannels = %d, framerate = %d, sampwidth = %d, nframes = %d'
% (params.nchannels, params.framerate, params.sampwidth, params.nframes))
if params.comptype:
print('comptype = %s %s'
% (params.comptype, '(' + params.compname +
')' if params.compname else ''))
y = sf.readframes(params.nframes)
with spplugin.open(outputfile, 'w', params=params) as pf:
print('output plugin: %s (%s)' % (pf.getpluginid(), pf.getplugindesc()))
print('plugin version: %d.%d' % pf.getpluginversion())
b = pf.copyraw2array(y, params.sampwidth, bigendian_or_signed8bit=ibigendian_or_signed8bit)
nwrite = pf.writeraw(b)
print('nwrite = %d' % nwrite)
print('output file: %s' % outputfile, file=sys.stderr)
if __name__ == '__main__':
if len(sys.argv) <= 2:
print('usage: %s inputfile outputfile'
% os.path.basename(sys.argv[0]), file=sys.stderr)
quit()
writefrombyplugin(sys.argv[1], sys.argv[2])
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import spaudio
with spaudio.open('rw', nchannels=2, samprate=44100, buffersize=2048) as a:
nloop = 500
b = bytearray(4096)
for i in range(nloop):
a.readraw(b)
a.writeraw(b)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import os
import sys
import spplugin
import spaudio
def playfilebyplugin(filename):
with spplugin.open(filename, 'r') as pf:
print('input plugin: %s (%s)' % (pf.getpluginid(), pf.getplugindesc()))
print('plugin version: %d.%d' % pf.getpluginversion())
nchannels = pf.getnchannels()
samprate = pf.getsamprate()
sampbit = pf.getsampbit()
nframes = pf.getnframes()
print('nchannels = %d, samprate = %d, sampbit = %d, nframes = %d'
% (nchannels, samprate, sampbit, nframes))
filetype = pf.getfiletype()
filedesc = pf.getfiledesc()
filefilter = pf.getfilefilter()
if filetype:
print('filetype = %s %s'
% (filetype, '(' + filedesc +
('; ' + filefilter if filefilter else '') + ')' if filedesc else ''))
songinfo = pf.getsonginfo()
if songinfo:
print('songinfo = ' + str(songinfo))
with spaudio.open('wo', nchannels=nchannels, samprate=samprate,
sampbit=sampbit) as a:
b = a.createarray(nframes, True)
nread = pf.read(b)
print('nread = %d' % nread)
nwrite = a.write(b)
print('nwrite = %d' % nwrite)
if __name__ == '__main__':
if len(sys.argv) <= 1:
print('usage: %s filename'
% os.path.basename(sys.argv[0]), file=sys.stderr)
quit()
playfilebyplugin(sys.argv[1])
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
import sys
import argparse
import wave
import spaudio
def rectowav(filename, samprate, nchannels, sampwidth, duration):
with wave.open(filename, 'wb') as wf:
nframes = round(duration * samprate)
print('nchannels = %d, samprate = %d, sampwidth = %d, nframes = %d'
% (nchannels, samprate, sampwidth, nframes))
a = spaudio.SpAudio()
a.setnchannels(nchannels)
a.setsamprate(samprate)
a.setsampwidth(sampwidth)
a.open('ro')
b = a.createrawarray(nframes * nchannels)
nread = a.readraw(b)
print('nread = %d' % nread)
a.close()
wf.setnchannels(nchannels)
wf.setframerate(samprate)
wf.setsampwidth(sampwidth)
wf.setnframes(nframes)
wf.writeframes(b)
print('output file: %s' % filename, file=sys.stderr)
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Record to wave file')
parser.add_argument('filename', help='name of output wave file')
parser.add_argument('-f', '--samprate', type=int,
default=8000, help='sampling rate [Hz]')
parser.add_argument('-c', '--nchannels', type=int,
default=1, help='number of channels')
parser.add_argument('-w', '--sampwidth', type=int,
default=2, help='sample width [byte]')
parser.add_argument('-d', '--duration', type=float,
default=2.0, help='recording duration [s]')
args = parser.parse_args()
rectowav(args.filename, args.samprate, args.nchannels,
args.sampwidth, args.duration)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import os
import sys
import wave
import spaudio
def playfromwav2(filename):
with wave.open(filename, 'rb') as wf:
paramstuple = wf.getparams()
print('nchannels = %d, framerate = %d, sampwidth = %d, nframes = %d'
% (paramstuple.nchannels, paramstuple.framerate,
paramstuple.sampwidth, paramstuple.nframes))
with spaudio.open('wo', params=paramstuple) as a:
b = wf.readframes(paramstuple.nframes)
nwrite = a.writeraw(b)
print('nwrite = %d' % nwrite)
if __name__ == '__main__':
if len(sys.argv) <= 1:
print('usage: %s filename'
% os.path.basename(sys.argv[0]), file=sys.stderr)
quit()
playfromwav2(sys.argv[1])
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import spaudio
with spaudio.open('rw', nchannels=2, samprate=44100, buffersize=2048) as a:
nloop = 500
b = bytearray(4096)
for i in range(nloop):
a.readraw(b)
a.writeraw(b)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import os
import sys
import wave
import spaudio
def playfromwav2(filename):
with wave.open(filename, 'rb') as wf:
paramstuple = wf.getparams()
print('nchannels = %d, framerate = %d, sampwidth = %d, nframes = %d'
% (paramstuple.nchannels, paramstuple.framerate,
paramstuple.sampwidth, paramstuple.nframes))
with spaudio.open('wo', params=paramstuple) as a:
b = wf.readframes(paramstuple.nframes)
nwrite = a.writeraw(b)
print('nwrite = %d' % nwrite)
if __name__ == '__main__':
if len(sys.argv) <= 1:
print('usage: %s filename'
% os.path.basename(sys.argv[0]), file=sys.stderr)
quit()
playfromwav2(sys.argv[1])
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
import sys
import wave
import spaudio
def myaudiocb(audio, cbtype, cbdata, args):
if cbtype == spaudio.OUTPUT_POSITION_CALLBACK:
position = cbdata
samprate = args[0]
nframes = args[1]
position_s = float(position) / float(samprate)
total_s = float(nframes) / float(samprate)
sys.stdout.write('Time: %.3f / %.3f\r' % (position_s, total_s))
elif cbtype == spaudio.OUTPUT_BUFFER_CALLBACK:
buf = cbdata
# print('OUTPUT_BUFFER_CALLBACK: buffer type = %s, size = %d' % (type(buf), len(buf)))
return True
def playfromwav2(filename):
with wave.open(filename, 'rb') as wf:
paramstuple = wf.getparams()
print('nchannels = %d, samprate = %d, sampwidth = %d, nframes = %d'
% (paramstuple.nchannels, paramstuple.framerate,
paramstuple.sampwidth, paramstuple.nframes))
with spaudio.open('wo', params=paramstuple, buffersize=1024,
callback=(spaudio.OUTPUT_POSITION_CALLBACK | spaudio.OUTPUT_BUFFER_CALLBACK,
myaudiocb, paramstuple.framerate, paramstuple.nframes)) as a:
b = wf.readframes(paramstuple.nframes)
nwrite = a.writeraw(b)
if __name__ == '__main__':
if len(sys.argv) <= 1:
print('usage: %s filename'
% os.path.basename(sys.argv[0]), file=sys.stderr)
quit()
playfromwav2(sys.argv[1])
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.
import os
import sys
import argparse
import wave
import spaudio
def rectowav2(filename, samprate, nchannels, sampwidth, duration):
with wave.open(filename, 'wb') as wf:
nframes = round(duration * samprate)
print('nchannels = %d, samprate = %d, sampwidth = %d, nframes = %d'
% (nchannels, samprate, sampwidth, nframes))
with spaudio.open('ro', nchannels=nchannels, samprate=samprate, sampbit=(8 * sampwidth)) as a:
b = a.createrawarray(nframes * nchannels)
nread = a.readraw(b)
print('nread = %d' % nread)
paramstuple = a.getparamstuple(True, nframes)
wf.setparams(paramstuple)
wf.writeframes(b)
print('output file: %s' % filename, file=sys.stderr)
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Record to wave file')
parser.add_argument('filename', help='name of output wave file')
parser.add_argument('-f', '--samprate', type=int,
default=8000, help='sampling rate [Hz]')
parser.add_argument('-c', '--nchannels', type=int,
default=1, help='number of channels')
parser.add_argument('-w', '--sampwidth', type=int,
default=2, help='sample width [byte]')
parser.add_argument('-d', '--duration', type=float,
default=2.0, help='recording duration [s]')
args = parser.parse_args()
rectowav2(args.filename, args.samprate, args.nchannels,
args.sampwidth, args.duration)
+52
-4

@@ -88,10 +88,58 @@ #include <Python.h>

long spReadAudioDoubleBufferWeighted_(spAudio audio, char *buffer, long buf_size, double weight)
long spReadAudioBuffer_(spAudio audio, char *buffer, long buf_size, long offset_byte, long length_byte)
{
return spReadAudioDoubleWeighted(audio, (double *)buffer, buf_size / sizeof(double), weight);
if (length_byte <= 0) {
length_byte = buf_size - offset_byte;
} else {
length_byte = MIN(length_byte, buf_size - offset_byte);
}
return spReadAudioBuffer(audio, buffer + offset_byte, length_byte);
}
long spWriteAudioDoubleBufferWeighted_(spAudio audio, char *buffer, long buf_size, double weight)
long spWriteAudioBuffer_(spAudio audio, char *buffer, long buf_size, long offset_byte, long length_byte)
{
return spWriteAudioDoubleWeighted(audio, (double *)buffer, buf_size / sizeof(double), weight);
if (length_byte <= 0) {
length_byte = buf_size - offset_byte;
} else {
length_byte = MIN(length_byte, buf_size - offset_byte);
}
return spWriteAudioBuffer(audio, buffer + offset_byte, length_byte);
}
long spReadAudioDoubleBufferWeighted_(spAudio audio, char *buffer, long buf_size, double weight,
long offset, long length)
{
long buf_length;
long offset_byte;
buf_length = buf_size / sizeof(double);
offset_byte = offset * sizeof(double);
if (length <= 0) {
length = (buf_length - offset);
} else {
length = MIN(length, buf_length - offset);
}
return spReadAudioDoubleWeighted(audio, (double *)(buffer + offset_byte), length, weight);
}
long spWriteAudioDoubleBufferWeighted_(spAudio audio, char *buffer, long buf_size, double weight,
long offset, long length)
{
long buf_length;
long offset_byte;
buf_length = buf_size / sizeof(double);
offset_byte = offset * sizeof(double);
if (length <= 0) {
length = (buf_length - offset);
} else {
length = MIN(length, buf_length - offset);
}
return spWriteAudioDoubleWeighted(audio, (double *)(buffer + offset_byte), length, weight);
}
+7
-2
extern int spSetAudioCallbackFunc_(spAudio audio, spAudioCallbackType call_type, PyObject *obj);
extern long spReadAudioDoubleBufferWeighted_(spAudio audio, char *buffer, long buf_size, double weight);
extern long spReadAudioBuffer_(spAudio audio, char *buffer, long buf_size, long offset_byte, long length_byte);
extern long spWriteAudioBuffer_(spAudio audio, char *buffer, long buf_size, long offset_byte, long length_byte);
extern long spWriteAudioDoubleBufferWeighted_(spAudio audio, char *buffer, long buf_size, double weight);
extern long spReadAudioDoubleBufferWeighted_(spAudio audio, char *buffer, long buf_size, double weight,
long offset, long length);
extern long spWriteAudioDoubleBufferWeighted_(spAudio audio, char *buffer, long buf_size, double weight,
long offset, long length);
# This file was automatically generated by SWIG (http://www.swig.org).
# Version 3.0.12
# Version 3.0.10
#

@@ -7,2 +7,6 @@ # Do not make changes to this file unless you know what you are doing--modify

from sys import version_info as _swig_python_version_info

@@ -30,8 +34,8 @@ if _swig_python_version_info >= (2, 7, 0):

return _spaudio_c
try:
_mod = imp.load_module('_spaudio_c', fp, pathname, description)
finally:
if fp is not None:
if fp is not None:
try:
_mod = imp.load_module('_spaudio_c', fp, pathname, description)
finally:
fp.close()
return _mod
return _mod
_spaudio_c = swig_import_helper()

@@ -42,3 +46,2 @@ del swig_import_helper

del _swig_python_version_info
try:

@@ -211,16 +214,16 @@ _swig_property = property

def spWriteAudioBuffer(audio, buffer):
return _spaudio_c.spWriteAudioBuffer(audio, buffer)
spWriteAudioBuffer = _spaudio_c.spWriteAudioBuffer
def spWriteAudioBuffer_(audio, buffer, offset_byte, length_byte):
return _spaudio_c.spWriteAudioBuffer_(audio, buffer, offset_byte, length_byte)
spWriteAudioBuffer_ = _spaudio_c.spWriteAudioBuffer_
def spWriteAudioDoubleBufferWeighted_(audio, buffer, weight):
return _spaudio_c.spWriteAudioDoubleBufferWeighted_(audio, buffer, weight)
def spWriteAudioDoubleBufferWeighted_(audio, buffer, weight, offset, length):
return _spaudio_c.spWriteAudioDoubleBufferWeighted_(audio, buffer, weight, offset, length)
spWriteAudioDoubleBufferWeighted_ = _spaudio_c.spWriteAudioDoubleBufferWeighted_
def spReadAudioBuffer(audio, buffer):
return _spaudio_c.spReadAudioBuffer(audio, buffer)
spReadAudioBuffer = _spaudio_c.spReadAudioBuffer
def spReadAudioBuffer_(audio, buffer, offset_byte, length_byte):
return _spaudio_c.spReadAudioBuffer_(audio, buffer, offset_byte, length_byte)
spReadAudioBuffer_ = _spaudio_c.spReadAudioBuffer_
def spReadAudioDoubleBufferWeighted_(audio, buffer, weight):
return _spaudio_c.spReadAudioDoubleBufferWeighted_(audio, buffer, weight)
def spReadAudioDoubleBufferWeighted_(audio, buffer, weight, offset, length):
return _spaudio_c.spReadAudioDoubleBufferWeighted_(audio, buffer, weight, offset, length)
spReadAudioDoubleBufferWeighted_ = _spaudio_c.spReadAudioDoubleBufferWeighted_

@@ -227,0 +230,0 @@

@@ -244,20 +244,58 @@ #include <Python.h>

long spReadPluginInByte_(spPlugin *plugin, char *buffer, long buf_size)
long spReadPluginInByte_(spPlugin *plugin, char *buffer, long buf_size, long offset_byte, long length_byte)
{
return spReadPluginInByte(plugin, buffer, buf_size);
if (length_byte <= 0) {
length_byte = buf_size - offset_byte;
} else {
length_byte = MIN(length_byte, buf_size - offset_byte);
}
return spReadPluginInByte(plugin, buffer + offset_byte, length_byte);
}
long spReadPluginDoubleWeighted_(spPlugin *plugin, char *buffer, long buf_size, double weight)
long spReadPluginDoubleWeighted_(spPlugin *plugin, char *buffer, long buf_size, double weight,
long offset, long length)
{
return spReadPluginDoubleWeighted(plugin, (double *)buffer, buf_size / sizeof(double), weight);
long buf_length;
long offset_byte;
buf_length = buf_size / sizeof(double);
offset_byte = offset * sizeof(double);
if (length <= 0) {
length = (buf_length - offset);
} else {
length = MIN(length, buf_length - offset);
}
return spReadPluginDoubleWeighted(plugin, (double *)(buffer + offset_byte), length, weight);
}
long spWritePluginInByte_(spPlugin *plugin, char *buffer, long buf_size)
long spWritePluginInByte_(spPlugin *plugin, char *buffer, long buf_size, long offset_byte, long length_byte)
{
return spWritePluginInByte(plugin, buffer, buf_size);
if (length_byte <= 0) {
length_byte = buf_size - offset_byte;
} else {
length_byte = MIN(length_byte, buf_size - offset_byte);
}
return spWritePluginInByte(plugin, buffer + offset_byte, length_byte);
}
long spWritePluginDoubleWeighted_(spPlugin *plugin, char *buffer, long buf_size, double weight)
long spWritePluginDoubleWeighted_(spPlugin *plugin, char *buffer, long buf_size, double weight,
long offset, long length)
{
return spWritePluginDoubleWeighted(plugin, (double *)buffer, buf_size / sizeof(double), weight);
long buf_length;
long offset_byte;
buf_length = buf_size / sizeof(double);
offset_byte = offset * sizeof(double);
if (length <= 0) {
length = (buf_length - offset);
} else {
length = MIN(length, buf_length - offset);
}
return spWritePluginDoubleWeighted(plugin, (double *)(buffer + offset_byte), length, weight);
}

@@ -264,0 +302,0 @@

@@ -14,6 +14,8 @@ extern spBool spIsSongInfoNumberFieldKey_(char *key);

extern long spReadPluginInByte_(spPlugin *plugin, char *buffer, long buf_size);
extern long spReadPluginDoubleWeighted_(spPlugin *plugin, char *buffer, long buf_size, double weight);
extern long spWritePluginInByte_(spPlugin *plugin, char *buffer, long buf_size);
extern long spWritePluginDoubleWeighted_(spPlugin *plugin, char *buffer, long buf_size, double weight);
extern long spReadPluginInByte_(spPlugin *plugin, char *buffer, long buf_size, long offset_byte, long length_byte);
extern long spReadPluginDoubleWeighted_(spPlugin *plugin, char *buffer, long buf_size, double weight,
long offset, long length);
extern long spWritePluginInByte_(spPlugin *plugin, char *buffer, long buf_size, long offset_byte, long length_byte);
extern long spWritePluginDoubleWeighted_(spPlugin *plugin, char *buffer, long buf_size, double weight,
long offset, long length);

@@ -20,0 +22,0 @@ extern

@@ -258,16 +258,16 @@ # This file was automatically generated by SWIG (http://www.swig.org).

def spWritePluginInByte_(plugin, buffer):
return _spplugin_c.spWritePluginInByte_(plugin, buffer)
def spWritePluginInByte_(plugin, buffer, offset_byte, length_byte):
return _spplugin_c.spWritePluginInByte_(plugin, buffer, offset_byte, length_byte)
spWritePluginInByte_ = _spplugin_c.spWritePluginInByte_
def spWritePluginDoubleWeighted_(plugin, buffer, weight):
return _spplugin_c.spWritePluginDoubleWeighted_(plugin, buffer, weight)
def spWritePluginDoubleWeighted_(plugin, buffer, weight, offset, length):
return _spplugin_c.spWritePluginDoubleWeighted_(plugin, buffer, weight, offset, length)
spWritePluginDoubleWeighted_ = _spplugin_c.spWritePluginDoubleWeighted_
def spReadPluginInByte_(plugin, buffer):
return _spplugin_c.spReadPluginInByte_(plugin, buffer)
def spReadPluginInByte_(plugin, buffer, offset_byte, length_byte):
return _spplugin_c.spReadPluginInByte_(plugin, buffer, offset_byte, length_byte)
spReadPluginInByte_ = _spplugin_c.spReadPluginInByte_
def spReadPluginDoubleWeighted_(plugin, buffer, weight):
return _spplugin_c.spReadPluginDoubleWeighted_(plugin, buffer, weight)
def spReadPluginDoubleWeighted_(plugin, buffer, weight, offset, length):
return _spplugin_c.spReadPluginDoubleWeighted_(plugin, buffer, weight, offset, length)
spReadPluginDoubleWeighted_ = _spplugin_c.spReadPluginDoubleWeighted_

@@ -274,0 +274,0 @@

@@ -115,3 +115,6 @@ #!/usr/bin/env python3

html_copy_source = False
html_last_updated_fmt = '%Y-%m-%d %X'
# -- Options for HTMLHelp output ------------------------------------------

@@ -118,0 +121,0 @@

@@ -21,2 +21,10 @@ Examples

Fullduplex I/O (using ``with`` statement; version 0.7.15+)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:download:`iotestwith.py <../examples/iotestwith.py>`
.. literalinclude:: ../examples/iotestwith.py
Read and plot (Python array version)

@@ -62,2 +70,10 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Play a Wav file (using ``with`` statement; version 0.7.15+)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:download:`playfromwav2.py <../examples/playfromwav2.py>`
.. literalinclude:: ../examples/playfromwav2.py
Play a Wav file with callback

@@ -71,2 +87,26 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Play a Wav file with callback (using ``with`` statement; version 0.7.15+)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:download:`playfromwavcb2.py <../examples/playfromwavcb2.py>`
.. literalinclude:: ../examples/playfromwavcb2.py
Record to a Wav file
^^^^^^^^^^^^^^^^^^^^
:download:`rectowav.py <../examples/rectowav.py>`
.. literalinclude:: ../examples/rectowav.py
Record to a Wav file (using ``with`` statement; version 0.7.15+)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:download:`rectowav2.py <../examples/rectowav2.py>`
.. literalinclude:: ../examples/rectowav2.py
.. _sppluginExamples:

@@ -84,2 +124,9 @@

Play an Audio File Contents by Plugin
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:download:`playfilebyplugin.py <../examples/playfilebyplugin.py>`
.. literalinclude:: ../examples/playfilebyplugin.py
Read an Audio File by Plugin and Write it

@@ -92,2 +139,9 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Read an Audio File and Write it by Plugin
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:download:`writetobyplugin.py <../examples/writetobyplugin.py>`
.. literalinclude:: ../examples/writetobyplugin.py
Convert an Audio File by Plugin

@@ -94,0 +148,0 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

@@ -6,5 +6,2 @@ #!/usr/bin/env python3

import sys
import aifc
import wave
import sunau
import spplugin

@@ -11,0 +8,0 @@

@@ -96,4 +96,5 @@

<li class="toctree-l1"><a class="reference internal" href="../examples.html">Examples</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="../examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#fullduplex-i-o">Fullduplex I/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">Fullduplex I/O (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#read-and-plot-python-array-version">Read and plot (Python array version)</a></li>

@@ -104,8 +105,14 @@ <li class="toctree-l3"><a class="reference internal" href="../examples.html#read-and-plot-raw-data-version">Read and plot (raw data version)</a></li>

<li class="toctree-l3"><a class="reference internal" href="../examples.html#play-a-wav-file">Play a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Play a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#play-a-wav-file-with-callback">Play a Wav file with callback</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Play a Wav file with callback (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#record-to-a-wav-file">Record to a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Record to a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="../examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#plot-an-audio-file-contents-by-plugin">Plot an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#play-an-audio-file-contents-by-plugin">Play an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#read-an-audio-file-by-plugin-and-write-it">Read an Audio File by Plugin and Write it</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#read-an-audio-file-and-write-it-by-plugin">Read an Audio File and Write it by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#convert-an-audio-file-by-plugin">Convert an Audio File by Plugin</a></li>

@@ -192,7 +199,13 @@ </ul>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
Last updated on 2019-04-28 6:19:23 PM.
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -199,0 +212,0 @@

@@ -33,22 +33,22 @@ Introduction

* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_i386.deb
* Ubuntu 16
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_i386.deb
* Ubuntu 14
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_i386.deb
* CentOS 7
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-5.x86_64.rpm
* CentOS 6
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-5.x86_64.rpm

@@ -63,2 +63,7 @@ If you want to use ``apt`` (Ubuntu) or ``yum`` (CentOS),

- Version 0.7.15
* Added spaudio.open function to spaudio module.
* Added support for open call of spaudio module with keyword arguments.
- Version 0.7.14

@@ -65,0 +70,0 @@

@@ -234,2 +234,12 @@ /*

a.brackets:before,
span.brackets > a:before{
content: "[";
}
a.brackets:after,
span.brackets > a:after {
content: "]";
}
h1:hover > a.headerlink,

@@ -395,2 +405,12 @@ h2:hover > a.headerlink,

th > p:first-child,
td > p:first-child {
margin-top: 0px;
}
th > p:last-child,
td > p:last-child {
margin-bottom: 0px;
}
/* -- figures --------------------------------------------------------------- */

@@ -465,2 +485,48 @@

li > p:first-child {
margin-top: 0px;
}
li > p:last-child {
margin-bottom: 0px;
}
dl.footnote > dt,
dl.citation > dt {
float: left;
}
dl.footnote > dd,
dl.citation > dd {
margin-bottom: 0em;
}
dl.footnote > dd:after,
dl.citation > dd:after {
content: "";
clear: both;
}
dl.field-list {
display: flex;
flex-wrap: wrap;
}
dl.field-list > dt {
flex-basis: 20%;
font-weight: bold;
word-break: break-word;
}
dl.field-list > dt:after {
content: ":";
}
dl.field-list > dd {
flex-basis: 70%;
padding-left: 1em;
margin-left: 0em;
margin-bottom: 0em;
}
dl {

@@ -470,3 +536,3 @@ margin-bottom: 15px;

dd p {
dd > p:first-child {
margin-top: 0px;

@@ -544,2 +610,8 @@ }

.classifier:before {
font-style: normal;
margin: 0.5em;
content: ":";
}
abbr, acronym {

@@ -546,0 +618,0 @@ border-bottom: dotted 1px;

@@ -90,5 +90,5 @@ /*

if (isInSVG) {
var bbox = span.getBBox();
var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
rect.x.baseVal.value = bbox.x;
var bbox = node.parentElement.getBBox();
rect.x.baseVal.value = bbox.x;
rect.y.baseVal.value = bbox.y;

@@ -98,3 +98,2 @@ rect.width.baseVal.value = bbox.width;

rect.setAttribute('class', className);
var parentOfText = node.parentNode.parentNode;
addItems.push({

@@ -101,0 +100,0 @@ "parent": node.parentNode,

@@ -7,5 +7,5 @@ var DOCUMENTATION_OPTIONS = {

FILE_SUFFIX: '.html',
HAS_SOURCE: true,
HAS_SOURCE: false,
SOURCELINK_SUFFIX: '.txt',
NAVIGATION_WITH_KEYS: false,
NAVIGATION_WITH_KEYS: false
};

@@ -39,4 +39,6 @@ /*

title: 15,
partialTitle: 7,
// query found in terms
term: 5
term: 5,
partialTerm: 2
};

@@ -60,2 +62,10 @@ }

htmlToText : function(htmlString) {
var htmlElement = document.createElement('span');
htmlElement.innerHTML = htmlString;
$(htmlElement).find('.headerlink').remove();
docContent = $(htmlElement).find('[role=main]')[0];
return docContent.textContent || docContent.innerText;
},
init : function() {

@@ -125,3 +135,3 @@ var params = $.getQueryParameters();

this.dots = $('<span></span>').appendTo(this.title);
this.status = $('<p style="display: none"></p>').appendTo(this.out);
this.status = $('<p class="search-summary">&nbsp;</p>').appendTo(this.out);
this.output = $('<ul class="search"/>').appendTo(this.out);

@@ -265,7 +275,3 @@

} else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) {
var suffix = DOCUMENTATION_OPTIONS.SOURCELINK_SUFFIX;
if (suffix === undefined) {
suffix = '.txt';
}
$.ajax({url: DOCUMENTATION_OPTIONS.URL_ROOT + '_sources/' + item[5] + (item[5].slice(-suffix.length) === suffix ? '' : suffix),
$.ajax({url: DOCUMENTATION_OPTIONS.URL_ROOT + item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX,
dataType: "text",

@@ -392,2 +398,15 @@ complete: function(jqxhr, textstatus) {

];
// add support for partial matches
if (word.length > 2) {
for (var w in terms) {
if (w.match(word) && !terms[word]) {
_o.push({files: terms[w], score: Scorer.partialTerm})
}
}
for (var w in titleterms) {
if (w.match(word) && !titleterms[word]) {
_o.push({files: titleterms[w], score: Scorer.partialTitle})
}
}
}

@@ -432,4 +451,8 @@ // no match but word was a required one

// check if all requirements are matched
if (fileMap[file].length != searchterms.length)
continue;
var filteredTermCount = // as search terms with length < 3 are discarded: ignore
searchterms.filter(function(term){return term.length > 2}).length
if (
fileMap[file].length != searchterms.length &&
fileMap[file].length != filteredTermCount
) continue;

@@ -465,3 +488,4 @@ // ensure that none of the excluded terms is in the search result

*/
makeSearchSummary : function(text, keywords, hlwords) {
makeSearchSummary : function(htmlText, keywords, hlwords) {
var text = Search.htmlToText(htmlText);
var textLower = text.toLowerCase();

@@ -468,0 +492,0 @@ var start = 0;

@@ -98,4 +98,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">Fullduplex I/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">Fullduplex I/O (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">Read and plot (Python array version)</a></li>

@@ -106,8 +107,13 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">Read and plot (raw data version)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Play a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Play a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Play a Wav file with callback</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Record to a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Record to a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">Plot an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">Play an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">Read an Audio File by Plugin and Write it</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">Read an Audio File and Write it by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">Convert an Audio File by Plugin</a></li>

@@ -169,4 +175,2 @@ </ul>

<a href="_sources/apidoc.rst.txt" rel="nofollow"> View page source</a>

@@ -214,7 +218,13 @@ </li>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
Last updated on 2019-04-28 6:14:38 PM.
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -221,0 +231,0 @@

@@ -97,4 +97,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">Fullduplex I/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">Fullduplex I/O (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">Read and plot (Python array version)</a></li>

@@ -105,8 +106,14 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">Read and plot (raw data version)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Play a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Play a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Play a Wav file with callback</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Play a Wav file with callback (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Record to a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Record to a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">Plot an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">Play an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">Read an Audio File by Plugin and Write it</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">Read an Audio File and Write it by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">Convert an Audio File by Plugin</a></li>

@@ -303,6 +310,14 @@ </ul>

</li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getcompname">getcompname() (spplugin.SpFilePlugin method)</a>
<li><a href="spaudio.html#spaudio.SpAudio.getcompname">getcompname() (spaudio.SpAudio method)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getcompname">(spplugin.SpFilePlugin method)</a>
</li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getcomptype">getcomptype() (spplugin.SpFilePlugin method)</a>
</ul></li>
<li><a href="spaudio.html#spaudio.SpAudio.getcomptype">getcomptype() (spaudio.SpAudio method)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getcomptype">(spplugin.SpFilePlugin method)</a>
</li>
</ul></li>
<li><a href="spaudio.html#spaudio.SpAudio.getdevicelist">getdevicelist() (spaudio.SpAudio method)</a>

@@ -360,6 +375,14 @@ </li>

</li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getparams">getparams() (spplugin.SpFilePlugin method)</a>
<li><a href="spaudio.html#spaudio.SpAudio.getparams">getparams() (spaudio.SpAudio method)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getparams">(spplugin.SpFilePlugin method)</a>
</li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getparamstuple">getparamstuple() (spplugin.SpFilePlugin method)</a>
</ul></li>
<li><a href="spaudio.html#spaudio.SpAudio.getparamstuple">getparamstuple() (spaudio.SpAudio method)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getparamstuple">(spplugin.SpFilePlugin method)</a>
</li>
</ul></li>
<li><a href="spplugin.html#spplugin.getplugindesc">getplugindesc() (in module spplugin)</a>

@@ -441,5 +464,7 @@

<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="spplugin.html#spplugin.open">open() (in module spplugin)</a>
<li><a href="spaudio.html#spaudio.open">open() (in module spaudio)</a>
<ul>
<li><a href="spplugin.html#spplugin.open">(in module spplugin)</a>
</li>
<li><a href="spaudio.html#spaudio.SpAudio.open">(spaudio.SpAudio method)</a>

@@ -492,4 +517,8 @@ </li>

</li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setcomptype">setcomptype() (spplugin.SpFilePlugin method)</a>
<li><a href="spaudio.html#spaudio.SpAudio.setcomptype">setcomptype() (spaudio.SpAudio method)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setcomptype">(spplugin.SpFilePlugin method)</a>
</li>
</ul></li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setfiletype">setfiletype() (spplugin.SpFilePlugin method)</a>

@@ -519,4 +548,8 @@ </li>

<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setparams">setparams() (spplugin.SpFilePlugin method)</a>
<li><a href="spaudio.html#spaudio.SpAudio.setparams">setparams() (spaudio.SpAudio method)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setparams">(spplugin.SpFilePlugin method)</a>
</li>
</ul></li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setpos">setpos() (spplugin.SpFilePlugin method)</a>

@@ -610,7 +643,13 @@ </li>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
Last updated on 2019-04-28 6:19:23 PM.
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -617,0 +656,0 @@

@@ -97,4 +97,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">Fullduplex I/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">Fullduplex I/O (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">Read and plot (Python array version)</a></li>

@@ -105,8 +106,14 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">Read and plot (raw data version)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Play a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Play a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Play a Wav file with callback</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Play a Wav file with callback (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Record to a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Record to a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">Plot an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">Play an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">Read an Audio File by Plugin and Write it</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">Read an Audio File and Write it by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">Convert an Audio File by Plugin</a></li>

@@ -168,4 +175,2 @@ </ul>

<a href="_sources/index.rst.txt" rel="nofollow"> View page source</a>

@@ -201,4 +206,5 @@ </li>

<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">Fullduplex I/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">Fullduplex I/O (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">Read and plot (Python array version)</a></li>

@@ -209,8 +215,14 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">Read and plot (raw data version)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Play a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Play a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Play a Wav file with callback</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Play a Wav file with callback (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Record to a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Record to a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">Plot an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">Play an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">Read an Audio File by Plugin and Write it</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">Read an Audio File and Write it by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">Convert an Audio File by Plugin</a></li>

@@ -227,4 +239,4 @@ </ul>

<ul class="simple">
<li><a class="reference internal" href="genindex.html"><span class="std std-ref">Index</span></a></li>
<li><a class="reference internal" href="py-modindex.html"><span class="std std-ref">Module Index</span></a></li>
<li><p><a class="reference internal" href="genindex.html"><span class="std std-ref">Index</span></a></p></li>
<li><p><a class="reference internal" href="py-modindex.html"><span class="std std-ref">Module Index</span></a></p></li>
</ul>

@@ -252,7 +264,13 @@ </div>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
Last updated on 2019-04-28 6:19:23 PM.
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -259,0 +277,0 @@

@@ -98,4 +98,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">Fullduplex I/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">Fullduplex I/O (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">Read and plot (Python array version)</a></li>

@@ -106,8 +107,13 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">Read and plot (raw data version)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Play a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Play a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Play a Wav file with callback</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Record to a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Record to a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">Plot an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">Play an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">Read an Audio File by Plugin and Write it</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">Read an Audio File and Write it by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">Convert an Audio File by Plugin</a></li>

@@ -169,4 +175,2 @@ </ul>

<a href="_sources/main.rst.txt" rel="nofollow"> View page source</a>

@@ -208,23 +212,28 @@ </li>

<ul class="simple">
<li>Ubuntu 18<ul>
<li>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_amd64.deb</a></li>
<li>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_i386.deb</a></li>
<li><p>Ubuntu 18</p>
<ul>
<li><p>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_amd64.deb</a></p></li>
<li><p>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_i386.deb</a></p></li>
</ul>
</li>
<li>Ubuntu 16<ul>
<li>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_amd64.deb</a></li>
<li>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_i386.deb</a></li>
<li><p>Ubuntu 16</p>
<ul>
<li><p>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_amd64.deb</a></p></li>
<li><p>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_i386.deb</a></p></li>
</ul>
</li>
<li>Ubuntu 14<ul>
<li>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_amd64.deb</a></li>
<li>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_i386.deb</a></li>
<li><p>Ubuntu 14</p>
<ul>
<li><p>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_amd64.deb</a></p></li>
<li><p>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_i386.deb</a></p></li>
</ul>
</li>
<li>CentOS 7<ul>
<li><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-4.x86_64.rpm">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-4.x86_64.rpm</a></li>
<li><p>CentOS 7</p>
<ul>
<li><p><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-5.x86_64.rpm">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-5.x86_64.rpm</a></p></li>
</ul>
</li>
<li>CentOS 6<ul>
<li><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-4.x86_64.rpm">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-4.x86_64.rpm</a></li>
<li><p>CentOS 6</p>
<ul>
<li><p><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-5.x86_64.rpm">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-5.x86_64.rpm</a></p></li>
</ul>

@@ -240,11 +249,19 @@ </li>

<ul class="simple">
<li>Version 0.7.14<ul>
<li>Added <a class="reference internal" href="spplugin.html"><span class="doc">spplugin</span></a> module which enables plugin-based audio file I/O.</li>
<li><p>Version 0.7.15</p>
<ul>
<li><p>Added spaudio.open function to spaudio module.</p></li>
<li><p>Added support for open call of spaudio module with keyword arguments.</p></li>
</ul>
</li>
<li>Version 0.7.13<ul>
<li>Initial public release.</li>
<li><p>Version 0.7.14</p>
<ul>
<li><p>Added <a class="reference internal" href="spplugin.html"><span class="doc">spplugin</span></a> module which enables plugin-based audio file I/O.</p></li>
</ul>
</li>
<li><p>Version 0.7.13</p>
<ul>
<li><p>Initial public release.</p></li>
</ul>
</li>
</ul>
</div>

@@ -255,4 +272,4 @@ <div class="section" id="build">

<ul class="simple">
<li><a class="reference external" href="http://www.swig.org/">SWIG</a></li>
<li><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/spLibs/index.html">spBase and spAudio</a></li>
<li><p><a class="reference external" href="http://www.swig.org/">SWIG</a></p></li>
<li><p><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/spLibs/index.html">spBase and spAudio</a></p></li>
</ul>

@@ -288,7 +305,13 @@ </div>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
Last updated on 2019-04-27 9:37:22 PM.
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -295,0 +318,0 @@

@@ -96,4 +96,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">Fullduplex I/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">Fullduplex I/O (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">Read and plot (Python array version)</a></li>

@@ -104,8 +105,13 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">Read and plot (raw data version)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Play a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Play a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Play a Wav file with callback</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Record to a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Record to a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">Plot an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">Play an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">Read an Audio File by Plugin and Write it</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">Read an Audio File and Write it by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">Convert an Audio File by Plugin</a></li>

@@ -167,4 +173,2 @@ </ul>

<a href="_sources/modules.rst.txt" rel="nofollow"> View page source</a>

@@ -203,7 +207,13 @@ </li>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
Last updated on 2019-04-28 6:14:38 PM.
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -210,0 +220,0 @@

@@ -103,4 +103,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">Fullduplex I/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">Fullduplex I/O (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">Read and plot (Python array version)</a></li>

@@ -111,8 +112,14 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">Read and plot (raw data version)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Play a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Play a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Play a Wav file with callback</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Play a Wav file with callback (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Record to a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Record to a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">Plot an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">Play an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">Read an Audio File by Plugin and Write it</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">Read an Audio File and Write it by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">Convert an Audio File by Plugin</a></li>

@@ -218,7 +225,13 @@ </ul>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
Last updated on 2019-04-28 6:19:23 PM.
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -225,0 +238,0 @@

@@ -97,4 +97,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">Fullduplex I/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">Fullduplex I/O (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">Read and plot (Python array version)</a></li>

@@ -105,8 +106,14 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">Read and plot (raw data version)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Play a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Play a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Play a Wav file with callback</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Play a Wav file with callback (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Record to a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Record to a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">Plot an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">Play an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">Read an Audio File by Plugin and Write it</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">Read an Audio File and Write it by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">Convert an Audio File by Plugin</a></li>

@@ -204,7 +211,13 @@ </ul>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
Last updated on 2019-04-28 6:19:23 PM.
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -211,0 +224,0 @@

@@ -1,1 +0,1 @@

Search.setIndex({docnames:["apidoc","examples","index","main","modules","spaudio","spplugin"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.todo":1,"sphinx.ext.viewcode":1,sphinx:55},filenames:["apidoc.rst","examples.rst","index.rst","main.rst","modules.rst","spaudio.rst","spplugin.rst"],objects:{"":{spaudio:[5,0,0,"-"],spplugin:[6,0,0,"-"]},"spaudio.SpAudio":{close:[5,3,1,""],createarray:[5,3,1,""],createndarray:[5,3,1,""],createrawarray:[5,3,1,""],createrawndarray:[5,3,1,""],getarraytypecode:[5,3,1,""],getblockingmode:[5,3,1,""],getbuffersize:[5,3,1,""],getdevicelist:[5,3,1,""],getdevicename:[5,3,1,""],getframerate:[5,3,1,""],getnbuffers:[5,3,1,""],getnchannels:[5,3,1,""],getndarraydtype:[5,3,1,""],getndevices:[5,3,1,""],getrawarraytypecode:[5,3,1,""],getrawndarraydtype:[5,3,1,""],getrawsampbit:[5,3,1,""],getrawsampwidth:[5,3,1,""],getsampbit:[5,3,1,""],getsamprate:[5,3,1,""],getsampwidth:[5,3,1,""],open:[5,3,1,""],read:[5,3,1,""],readraw:[5,3,1,""],reload:[5,3,1,""],selectdevice:[5,3,1,""],setblockingmode:[5,3,1,""],setbuffersize:[5,3,1,""],setcallback:[5,3,1,""],setframerate:[5,3,1,""],setnbuffers:[5,3,1,""],setnchannels:[5,3,1,""],setsampbit:[5,3,1,""],setsamprate:[5,3,1,""],setsampwidth:[5,3,1,""],stop:[5,3,1,""],sync:[5,3,1,""],terminate:[5,3,1,""],write:[5,3,1,""],writeraw:[5,3,1,""]},"spplugin.SpFilePlugin":{appendsonginfo:[6,3,1,""],close:[6,3,1,""],copyarray2raw:[6,3,1,""],copyraw2array:[6,3,1,""],createarray:[6,3,1,""],createndarray:[6,3,1,""],createrawarray:[6,3,1,""],createrawndarray:[6,3,1,""],getarraytypecode:[6,3,1,""],getcompname:[6,3,1,""],getcomptype:[6,3,1,""],getfiledesc:[6,3,1,""],getfilefilter:[6,3,1,""],getfiletype:[6,3,1,""],getframerate:[6,3,1,""],getlength:[6,3,1,""],getmark:[6,3,1,""],getmarkers:[6,3,1,""],getnchannels:[6,3,1,""],getndarraydtype:[6,3,1,""],getnframes:[6,3,1,""],getparams:[6,3,1,""],getparamstuple:[6,3,1,""],getplugindesc:[6,3,1,""],getpluginid:[6,3,1,""],getplugininfo:[6,3,1,""],getpluginname:[6,3,1,""],getpluginversion:[6,3,1,""],getrawarraytypecode:[6,3,1,""],getrawndarraydtype:[6,3,1,""],getrawsampbit:[6,3,1,""],getrawsampwidth:[6,3,1,""],getsampbit:[6,3,1,""],getsamprate:[6,3,1,""],getsampwidth:[6,3,1,""],getsonginfo:[6,3,1,""],open:[6,3,1,""],read:[6,3,1,""],readraw:[6,3,1,""],rewind:[6,3,1,""],setcomptype:[6,3,1,""],setfiletype:[6,3,1,""],setframerate:[6,3,1,""],setlength:[6,3,1,""],setmark:[6,3,1,""],setnchannels:[6,3,1,""],setnframes:[6,3,1,""],setparams:[6,3,1,""],setpos:[6,3,1,""],setsampbit:[6,3,1,""],setsamprate:[6,3,1,""],setsampwidth:[6,3,1,""],setsonginfo:[6,3,1,""],tell:[6,3,1,""],write:[6,3,1,""],writeraw:[6,3,1,""]},spaudio:{DeviceError:[5,1,1,""],DriverError:[5,1,1,""],Error:[5,1,1,""],SpAudio:[5,2,1,""],callbacksignature:[5,4,1,""],getdriverdevicename:[5,4,1,""],getdriverlist:[5,4,1,""],getdrivername:[5,4,1,""],getndriverdevices:[5,4,1,""],getndrivers:[5,4,1,""]},spplugin:{BogusFileError:[6,1,1,""],Error:[6,1,1,""],FileError:[6,1,1,""],FileTypeError:[6,1,1,""],NChannelsError:[6,1,1,""],SampleBitError:[6,1,1,""],SampleRateError:[6,1,1,""],SpFilePlugin:[6,2,1,""],SuitableNotFoundError:[6,1,1,""],TotalLengthRequiredError:[6,1,1,""],WrongPluginError:[6,1,1,""],getplugindesc:[6,4,1,""],getplugininfo:[6,4,1,""],open:[6,4,1,""]}},objnames:{"0":["py","module","Python module"],"1":["py","exception","Python exception"],"2":["py","class","Python class"],"3":["py","method","Python method"],"4":["py","function","Python function"]},objtypes:{"0":"py:module","1":"py:exception","2":"py:class","3":"py:method","4":"py:function"},terms:{"32bit":[5,6],"4_amd64":3,"4_i386":3,"byte":[5,6],"case":6,"char":[5,6],"class":[5,6],"default":5,"float":[1,5,6],"function":[5,6],"import":[1,5,6],"int":[5,6],"new":[5,6],"public":3,"return":[1,5,6],"short":6,"true":[1,5,6],"while":6,Added:3,The:[3,5,6],__main__:[1,6],__name__:[1,6],abov:6,accept:6,afc:1,after:[5,6],aif:1,aifc:[1,6],aiff:[1,3,6],alac:[3,6],all:6,also:[3,5,6],although:5,amd64:3,amplitud:[1,6],anaconda:3,anymor:5,api:2,append:6,appendsonginfo:6,apt:3,archiv:3,arg:[1,5],argument:[5,6],argv:[1,6],arrai:[2,5,6],associ:6,audio:[2,3,5,6],avail:3,bannohideki:3,base:[2,3,5,6],basenam:[1,6],becom:5,befor:[5,6],begin:6,benefit:5,big:6,bigendian_or_signed8bit:[1,6],bin:1,binari:3,bit:[5,6],block:5,bogu:6,bogusfileerror:6,bool:[5,6],buf:1,buffer:[1,5,6],buffers:5,build:2,bytearrai:[1,5,6],byteord:[],byteswap:[],call:6,callabl:5,callback:[2,5],callbacksignatur:5,calltyp:5,can:[3,6],cannot:6,cbdata:[1,5],cbtype:1,cento:3,chang:2,channel:[3,5,6],close:[1,5,6],code:[1,5,6],com:[],combin:5,command:3,compat:6,compnam:6,compress:6,comptyp:6,conda:3,contain:6,content:[2,6],convbyplugin:1,convert:[2,6],copi:6,copyarray2raw:[1,6],copyraw2arrai:6,creat:[5,6],createarrai:[1,5,6],createndarrai:[1,5,6],createrawarrai:[1,5,6],createrawndarrai:[1,5,6],current:[5,6],data:[2,5,6],deb:3,decod:6,decodebyt:[1,6],def:[1,6],depend:5,describ:6,descript:6,detail:6,devic:[3,5],deviceerror:5,deviceindex:5,dict:6,differ:6,distribut:[],doc:[],document:[2,5],doe:[5,6],doesn:3,don:5,doubl:[5,6],dpkg:3,driver:5,driver_nam:[],drivererror:5,drivernam:5,dtype:[5,6],durat:[1,6],el6:3,el7:3,elif:1,els:1,enabl:3,encodestr:6,endian:6,entri:6,env:1,environ:5,error:[5,6],exampl:2,except:[5,6],expect:6,factor:[5,6],fals:[1,5,6],faster:5,file:[2,3,6],filedesc:1,fileerror:6,filefilt:1,filenam:[1,6],filetyp:[1,6],filetypeerror:6,filter:6,find:6,fire:5,first:[5,6],flac:[3,6],floatflag:[5,6],follow:[3,5,6],format:[1,3,6],found:6,frame:[5,6],framer:6,from:[5,6],fullduplex:[2,3,5],func:5,gener:6,get:[5,6],getarraytypecod:[5,6],getblockingmod:5,getbuffers:5,getcompnam:6,getcomptyp:6,getdevicelist:5,getdevicenam:5,getdriverdevicenam:5,getdriverlist:5,getdrivernam:5,getfiledesc:6,getfilefilt:6,getfiletyp:6,getframer:[1,5,6],getlength:6,getmark:6,getnbuff:5,getnchannel:[1,5,6],getndarraydtyp:[5,6],getndevic:5,getndriv:5,getndriverdevic:5,getnfram:[1,6],getparam:[1,6],getparamstupl:[1,6],getplugindesc:[1,6],getpluginid:[1,6],getplugininfo:6,getpluginnam:6,getpluginvers:[1,6],getrawarraytypecod:[5,6],getrawndarraydtyp:[5,6],getrawsampbit:[5,6],getrawsampwidth:[5,6],getsampbit:[1,5,6],getsampr:[1,5,6],getsampwidth:[1,5,6],getsonginfo:6,has:[5,6],have:5,html:3,http:3,human:6,i386:3,ident:[5,6],ignor:6,inarrai:6,includ:[3,6],index:[2,3,5],inform:6,initi:[3,5],input:[1,6],inputfil:1,instal:2,instanc:[5,6],intern:6,introduct:2,iotest:1,japanes:3,kei:6,lab:3,latest:[],len:[1,6],length:[1,5,6],librari:[3,6],linspac:[1,6],linux:3,list:5,littl:[],log:2,make:[5,6],mani:3,matplotlib:[1,6],mean:[5,6],meijo:3,method:5,miniconda:3,mode:[5,6],modul:[0,2,3,4],more:[3,6],mp3:[3,6],multipli:[5,6],must:[5,6],myaudiocb:1,name:[5,6],namedtupl:6,nbuffer:5,nchannel:[1,5,6],nchannelserror:6,ndarrai:[2,5,6],needswap:[],nframe:[1,5,6],nframesflag:[5,6],nloop:[1,5],nonblock:5,none:[5,6],normal:[1,6],note:[3,5,6],noth:6,nread:[1,6],number:[5,6],numpi:[2,5,6],nwrite:1,obigendian_or_signed8bit:1,object:[5,6],obtain:6,offici:2,ofilebodi:1,ofileext:1,ogg:[3,6],one:[3,6],onli:5,open:[1,5,6],option:6,otherwis:[5,6],output:[1,6],output_buffer_callback:[1,5],output_position_callback:[1,5],outputfil:1,packag:[2,3],page:3,param:[1,6],paramet:[5,6],paramstupl:1,path:[1,6],pip:3,plai:2,playfromwav:1,playfromwavcb:1,plot:[2,6],plotfilebyplugin:[1,6],plt:[1,6],plugin:[2,3,6],pluginnam:6,pos:6,posit:[1,5,6],position_:1,prefix:5,print:[1,6],problem:[5,6],process:5,provid:[3,6],pulseaudio:3,pulsesimpl:3,pyplot:[1,6],python3:1,python:[3,5,6],quit:[1,6],rais:[1,5,6],rang:[1,5,6],rate:[5,6],raw:[2,3,5,6],rawdata:6,read:[2,5,6],readabl:6,readfram:1,readndarrai:1,readplot:1,readplotraw:1,readraw:[1,5,6],readrawndarrai:1,realiz:5,receiv:[5,6],reciev:5,releas:3,reload:5,requir:[3,5,6],resiz:[1,6],rewind:6,rj001:3,rpm:3,runtimeerror:1,sampbit:[1,5,6],sampl:[5,6],samplebiterror:6,samplerateerror:6,samprat:[1,5,6],sampwidth:[1,5,6],search:[],second:[5,6],see:3,seek:6,select:5,selectdevic:5,send:[5,6],set:[5,6],setblockingmod:5,setbuffers:[1,5],setcallback:[1,5],setcomptyp:6,setfiletyp:6,setframer:[5,6],setlength:6,setmark:6,setnbuff:5,setnchannel:[1,5,6],setnfram:6,setparam:[1,6],setpo:6,setsampbit:[5,6],setsampr:[1,5,6],setsampwidth:[1,5,6],setsonginfo:6,sever:6,show:[1,6],sign:6,signatur:5,similar:6,site:2,size:[1,5,6],sndlib:1,some:5,song:6,songinfo:[1,6],sound:[3,6],sourc:[5,6],spaudio:[0,3],spbase:3,specifi:[5,6],spfileplugin:6,splib:3,splitext:1,spplugin:[0,2,3,4],spplugin_0:3,standard:6,stderr:[1,6],stdout:1,stop:5,store:[5,6],str:[1,5,6],string:[5,6],success:[5,6],suitabl:6,suitablenotfounderror:6,sunau:[1,6],support:[1,3,5,6],swig:3,sync:5,synchron:5,sys:[1,6],tell:6,termin:5,thi:[3,5,6],time:[1,6],total:6,total_:1,totallengthrequirederror:6,treat:[5,6],type:[1,5,6],ubuntu14:3,ubuntu16:3,ubuntu18:3,ubuntu:3,usag:[1,6],use:[3,6],used:[3,6],using:[3,6],usr:1,utf:1,valid:5,variabl:5,version:[2,3,6],vorbi:[3,6],want:[3,5,6],wav:[2,3,6],wave:[1,6],waveform:6,web:3,weight:[5,6],when:6,which:[3,5,6],whose:6,write:[2,5,6],writefram:1,writefrombyplugin:1,writeraw:[1,5,6],written:[5,6],wrong:6,wrongpluginerror:6,www:3,x86_64:3,xlabel:[1,6],xlim:[1,6],ylabel:[1,6],you:[3,5,6],yum:3},titles:["API Documentation","Examples","spAudio for Python","Introduction","spAudio","spaudio module","spplugin module"],titleterms:{api:0,arrai:1,audio:1,build:3,callback:1,chang:3,content:1,convert:1,data:1,document:0,exampl:[1,5,6],file:1,fullduplex:1,indic:2,instal:3,introduct:3,log:3,modul:[5,6],ndarrai:1,numpi:1,offici:3,plai:1,plot:1,plugin:1,python:[1,2],raw:1,read:1,site:3,spaudio:[1,2,4,5],spplugin:[1,6],tabl:2,version:1,wav:1,write:1}})
Search.setIndex({docnames:["apidoc","examples","index","main","modules","spaudio","spplugin"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.todo":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["apidoc.rst","examples.rst","index.rst","main.rst","modules.rst","spaudio.rst","spplugin.rst"],objects:{"":{spaudio:[5,0,0,"-"],spplugin:[6,0,0,"-"]},"spaudio.SpAudio":{close:[5,3,1,""],createarray:[5,3,1,""],createndarray:[5,3,1,""],createrawarray:[5,3,1,""],createrawndarray:[5,3,1,""],getarraytypecode:[5,3,1,""],getblockingmode:[5,3,1,""],getbuffersize:[5,3,1,""],getcompname:[5,3,1,""],getcomptype:[5,3,1,""],getdevicelist:[5,3,1,""],getdevicename:[5,3,1,""],getframerate:[5,3,1,""],getnbuffers:[5,3,1,""],getnchannels:[5,3,1,""],getndarraydtype:[5,3,1,""],getndevices:[5,3,1,""],getparams:[5,3,1,""],getparamstuple:[5,3,1,""],getrawarraytypecode:[5,3,1,""],getrawndarraydtype:[5,3,1,""],getrawsampbit:[5,3,1,""],getrawsampwidth:[5,3,1,""],getsampbit:[5,3,1,""],getsamprate:[5,3,1,""],getsampwidth:[5,3,1,""],open:[5,3,1,""],read:[5,3,1,""],readraw:[5,3,1,""],reload:[5,3,1,""],selectdevice:[5,3,1,""],setblockingmode:[5,3,1,""],setbuffersize:[5,3,1,""],setcallback:[5,3,1,""],setcomptype:[5,3,1,""],setframerate:[5,3,1,""],setnbuffers:[5,3,1,""],setnchannels:[5,3,1,""],setparams:[5,3,1,""],setsampbit:[5,3,1,""],setsamprate:[5,3,1,""],setsampwidth:[5,3,1,""],stop:[5,3,1,""],sync:[5,3,1,""],terminate:[5,3,1,""],write:[5,3,1,""],writeraw:[5,3,1,""]},"spplugin.SpFilePlugin":{appendsonginfo:[6,3,1,""],close:[6,3,1,""],copyarray2raw:[6,3,1,""],copyraw2array:[6,3,1,""],createarray:[6,3,1,""],createndarray:[6,3,1,""],createrawarray:[6,3,1,""],createrawndarray:[6,3,1,""],getarraytypecode:[6,3,1,""],getcompname:[6,3,1,""],getcomptype:[6,3,1,""],getfiledesc:[6,3,1,""],getfilefilter:[6,3,1,""],getfiletype:[6,3,1,""],getframerate:[6,3,1,""],getlength:[6,3,1,""],getmark:[6,3,1,""],getmarkers:[6,3,1,""],getnchannels:[6,3,1,""],getndarraydtype:[6,3,1,""],getnframes:[6,3,1,""],getparams:[6,3,1,""],getparamstuple:[6,3,1,""],getplugindesc:[6,3,1,""],getpluginid:[6,3,1,""],getplugininfo:[6,3,1,""],getpluginname:[6,3,1,""],getpluginversion:[6,3,1,""],getrawarraytypecode:[6,3,1,""],getrawndarraydtype:[6,3,1,""],getrawsampbit:[6,3,1,""],getrawsampwidth:[6,3,1,""],getsampbit:[6,3,1,""],getsamprate:[6,3,1,""],getsampwidth:[6,3,1,""],getsonginfo:[6,3,1,""],open:[6,3,1,""],read:[6,3,1,""],readraw:[6,3,1,""],rewind:[6,3,1,""],setcomptype:[6,3,1,""],setfiletype:[6,3,1,""],setframerate:[6,3,1,""],setlength:[6,3,1,""],setmark:[6,3,1,""],setnchannels:[6,3,1,""],setnframes:[6,3,1,""],setparams:[6,3,1,""],setpos:[6,3,1,""],setsampbit:[6,3,1,""],setsamprate:[6,3,1,""],setsampwidth:[6,3,1,""],setsonginfo:[6,3,1,""],tell:[6,3,1,""],write:[6,3,1,""],writeraw:[6,3,1,""]},spaudio:{DeviceError:[5,1,1,""],DriverError:[5,1,1,""],Error:[5,1,1,""],SpAudio:[5,2,1,""],callbacksignature:[5,4,1,""],getdriverdevicename:[5,4,1,""],getdriverlist:[5,4,1,""],getdrivername:[5,4,1,""],getndriverdevices:[5,4,1,""],getndrivers:[5,4,1,""],open:[5,4,1,""]},spplugin:{BogusFileError:[6,1,1,""],Error:[6,1,1,""],FileError:[6,1,1,""],FileTypeError:[6,1,1,""],NChannelsError:[6,1,1,""],SampleBitError:[6,1,1,""],SampleRateError:[6,1,1,""],SpFilePlugin:[6,2,1,""],SuitableNotFoundError:[6,1,1,""],TotalLengthRequiredError:[6,1,1,""],WrongPluginError:[6,1,1,""],getplugindesc:[6,4,1,""],getplugininfo:[6,4,1,""],open:[6,4,1,""]}},objnames:{"0":["py","module","Python module"],"1":["py","exception","Python exception"],"2":["py","class","Python class"],"3":["py","method","Python method"],"4":["py","function","Python function"]},objtypes:{"0":"py:module","1":"py:exception","2":"py:class","3":"py:method","4":"py:function"},terms:{"32bit":[5,6],"4th":5,"5_amd64":3,"5_i386":3,"byte":[1,5,6],"case":6,"char":[5,6],"class":[5,6],"default":[1,5],"float":[1,5,6],"function":[3,5,6],"import":[1,5,6],"int":[1,5,6],"new":[5,6],"public":3,"return":[1,5,6],"short":6,"true":[1,5,6],"while":[5,6],Added:3,The:[3,5,6],__main__:[1,6],__name__:[1,6],abov:[5,6],accept:[5,6],add_argu:1,added:5,afc:1,after:[5,6],aif:1,aifc:[1,5,6],aiff:[1,3,6],alac:[3,6],all:[5,6],also:[3,5,6],although:5,amd64:3,amplitud:[1,6],anaconda:3,ani:5,anymor:5,api:2,append:6,appendsonginfo:6,apt:3,archiv:3,arg:[1,5],argpars:1,argument:[3,5,6],argumentpars:1,argv:[1,6],arrai:[2,5,6],associ:[5,6],audio:[2,3,5,6],avail:3,bannohideki:3,base:[2,3,5,6],basenam:[1,6],becom:5,befor:[5,6],begin:6,benefit:5,big:6,bigendian_or_signed8bit:[1,6],bin:1,binari:3,bit:[5,6],block:5,blockingmod:5,bogu:6,bogusfileerror:6,bool:[5,6],buf:1,buffer:[1,5,6],buffers:[1,5],build:2,bytearrai:[1,5,6],call:[3,6],callabl:5,callback:[2,5],callbacksignatur:5,calltyp:5,can:[3,5,6],cannot:[5,6],cbdata:[1,5],cbtype:1,cento:3,chang:2,channel:[1,3,5,6],close:[1,5,6],code:[1,5,6],combin:5,command:3,compat:[5,6],compnam:[1,5,6],compress:[5,6],comptyp:[1,5,6],conda:3,contain:[5,6],content:[2,6],convbyplugin:1,convert:[2,6],copi:6,copyarray2raw:[1,6],copyraw2arrai:[1,6],creat:[5,6],createarrai:[1,5,6],createndarrai:[1,5,6],createrawarrai:[1,5,6],createrawndarrai:[1,5,6],current:[5,6],data:[2,5,6],deb:3,decod:[5,6],decodebyt:[1,5,6],def:[1,6],depend:5,describ:[5,6],descript:[1,6],detail:6,devic:[3,5],deviceerror:5,deviceindex:5,dict:[5,6],differ:6,document:[2,5],doe:[5,6],doesn:3,don:5,doubl:[5,6],dpkg:3,driver:5,drivererror:5,drivernam:5,dtype:[5,6],durat:[1,6],el6:3,el7:3,element:5,elif:1,els:1,enabl:3,encodestr:[5,6],endian:6,entri:[5,6],env:1,environ:5,equal:5,error:[5,6],exampl:2,except:[5,6],expect:[5,6],factor:[5,6],fals:[1,5,6],faster:5,file:[2,3,5,6],filedesc:1,fileerror:6,filefilt:1,filenam:[1,6],filetyp:[1,6],filetypeerror:6,filter:6,find:6,fire:5,first:[5,6],flac:[3,6],floatflag:[5,6],follow:[3,5,6],format:[1,3,6],found:6,frame:[5,6],framer:[1,5,6],from:[5,6],fullduplex:[2,3,5],func:5,gener:[5,6],get:[5,6],getarraytypecod:[5,6],getblockingmod:5,getbuffers:5,getcompnam:[5,6],getcomptyp:[5,6],getdevicelist:5,getdevicenam:5,getdriverdevicenam:5,getdriverlist:5,getdrivernam:5,getfiledesc:[1,6],getfilefilt:[1,6],getfiletyp:[1,6],getframer:[1,5,6],getlength:6,getmark:6,getnbuff:5,getnchannel:[1,5,6],getndarraydtyp:[5,6],getndevic:5,getndriv:5,getndriverdevic:5,getnfram:[1,6],getparam:[1,5,6],getparamstupl:[1,5,6],getplugindesc:[1,6],getpluginid:[1,6],getplugininfo:6,getpluginnam:6,getpluginvers:[1,6],getrawarraytypecod:[5,6],getrawndarraydtyp:[5,6],getrawsampbit:[5,6],getrawsampwidth:[5,6],getsampbit:[1,5,6],getsampr:[1,5,6],getsampwidth:[1,5,6],getsonginfo:[1,6],greater:5,has:[5,6],have:5,help:1,html:3,http:3,human:[5,6],i386:3,ibigendian_or_signed8bit:1,ident:[5,6],ifilebodi:1,ifileext:1,ignor:[5,6],inarrai:6,includ:[3,5,6],index:[2,3,5],inform:6,initi:[3,5],input:[1,6],inputfil:1,instal:2,instanc:[5,6],intern:6,introduc:[5,6],introduct:2,iotest:1,iotestwith:1,japanes:3,kei:[5,6],keyword:[3,5,6],lab:3,len:[1,6],length:[1,5,6],librari:[3,5,6],linspac:[1,6],linux:3,list:5,locat:[5,6],log:2,mai:[5,6],make:[5,6],mani:3,matplotlib:[1,6],mean:[5,6],meijo:3,method:5,miniconda:3,mode:[5,6],modul:[0,2,3,4],more:[3,6],mp3:[3,6],multipli:[5,6],must:[5,6],myaudiocb:1,name:[1,5,6],namedtupl:[5,6],nbuffer:5,nchannel:[1,5,6],nchannelserror:6,ndarrai:[2,5,6],nframe:[1,5,6],nframesflag:[5,6],nloop:[1,5],nonblock:5,none:[5,6],normal:[1,6],note:[3,5,6],noth:6,nread:[1,6],number:[1,5,6],numpi:[2,5,6],nwrite:1,obigendian_or_signed8bit:1,object:[5,6],obtain:6,offici:2,offset:[5,6],ofilebodi:1,ofileext:1,ogg:[3,6],one:[3,6],onli:5,open:[1,3,5,6],option:[5,6],otherwis:[5,6],output:[1,5,6],output_buffer_callback:[1,5],output_position_callback:[1,5],outputfil:1,packag:[2,3],page:3,param:[1,5,6],paramet:[5,6],paramstupl:1,parse_arg:1,parser:1,path:[1,6],pip:3,plai:2,playfilebyplugin:1,playfromwav2:1,playfromwav:1,playfromwavcb2:1,playfromwavcb:1,plot:[2,6],plotfilebyplugin:[1,6],plt:[1,6],plugin:[2,3,6],pluginnam:6,pos:6,posit:[1,5,6],position_:1,prefix:5,print:[1,6],problem:[5,6],process:5,provid:[3,6],pulseaudio:3,pulsesimpl:3,pyplot:[1,6],python3:1,python:[3,5,6],quit:[1,6],rais:[1,5,6],rang:[1,5,6],rate:[1,5,6],raw:[2,3,5,6],rawdata:6,read:[2,5,6],readabl:[5,6],readfram:1,readndarrai:1,readplot:1,readplotraw:1,readraw:[1,5,6],readrawndarrai:1,realiz:5,receiv:[5,6],reciev:5,record:2,rectowav2:1,rectowav:1,releas:3,reload:5,requir:[1,3,5,6],resiz:[1,6],rewind:6,rj001:3,round:1,rpm:3,runtimeerror:1,sampbit:[1,5,6],sampl:[1,5,6],samplebiterror:6,samplerateerror:6,samprat:[1,5,6],sampwidth:[1,5,6],second:[5,6],see:3,seek:6,select:5,selectdevic:5,send:[5,6],set:[5,6],setblockingmod:5,setbuffers:[1,5],setcallback:[1,5],setcomptyp:[5,6],setfiletyp:6,setframer:[1,5,6],setlength:6,setmark:6,setnbuff:5,setnchannel:[1,5,6],setnfram:[1,6],setparam:[1,5,6],setpo:6,setsampbit:[5,6],setsampr:[1,5,6],setsampwidth:[1,5,6],setsonginfo:6,sever:6,show:[1,6],sign:6,signatur:5,similar:6,site:2,size:[1,5,6],sndlib:1,some:5,song:6,songinfo:[1,6],sound:[3,6],sourc:[5,6],spaudio:[0,3],spbase:3,specifi:[5,6],spfileplugin:6,splib:3,splitext:1,spplugin:[0,2,3,4],spplugin_0:3,standard:[5,6],statement:[2,5,6],stderr:[1,6],stdout:1,stop:5,store:[5,6],str:[1,5,6],string:[5,6],success:[5,6],suitabl:6,suitablenotfounderror:6,sunau:[1,5,6],support:[1,3,5,6],swig:3,sync:5,synchron:5,sys:[1,6],tell:6,termin:5,than:5,thi:[3,5,6],time:[1,6],total:6,total_:1,totallengthrequirederror:6,treat:[5,6],tupl:5,type:[1,5,6],ubuntu14:3,ubuntu16:3,ubuntu18:3,ubuntu:3,usag:[1,6],use:[3,6],used:[3,5,6],using:[2,3,6],usr:1,utf:1,valid:5,valueerror:5,variabl:5,version:[2,3,5,6],vorbi:[3,6],want:[3,5,6],wav:[2,3,6],wave:[1,5,6],waveform:6,web:3,weight:[5,6],were:[5,6],when:6,which:[3,5,6],whose:[5,6],width:1,write:[2,5,6],writefram:1,writefrombyplugin:1,writeraw:[1,5,6],writetobyplugin:1,written:[5,6],wrong:6,wrongpluginerror:6,www:3,x86_64:3,xlabel:[1,6],xlim:[1,6],ylabel:[1,6],you:[3,5,6],yum:3},titles:["API Documentation","Examples","spAudio for Python","Introduction","spAudio","spaudio module","spplugin module"],titleterms:{api:0,arrai:1,audio:1,build:3,callback:1,chang:3,content:1,convert:1,data:1,document:0,exampl:[1,5,6],file:1,fullduplex:1,indic:2,instal:3,introduct:3,log:3,modul:[5,6],ndarrai:1,numpi:1,offici:3,plai:1,plot:1,plugin:1,python:[1,2],raw:1,read:1,record:1,site:3,spaudio:[1,2,4,5],spplugin:[1,6],statement:1,tabl:2,using:1,version:1,wav:1,write:1}})

@@ -98,4 +98,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">Fullduplex I/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">Fullduplex I/O (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">Read and plot (Python array version)</a></li>

@@ -106,8 +107,13 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">Read and plot (raw data version)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Play a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Play a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Play a Wav file with callback</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Record to a Wav file</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Record to a Wav file (using <code class="docutils literal notranslate"><span class="pre">with</span></code> statement; version 0.7.15+)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">Plot an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">Play an Audio File Contents by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">Read an Audio File by Plugin and Write it</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">Read an Audio File and Write it by Plugin</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">Convert an Audio File by Plugin</a></li>

@@ -171,4 +177,2 @@ </ul>

<a href="_sources/spaudio.rst.txt" rel="nofollow"> View page source</a>

@@ -189,23 +193,13 @@ </li>

<div class="admonition-example admonition">
<p class="first admonition-title">Example</p>
<p>The following is the example to realize fullduplex audio I/O.</p>
<div class="last highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">spaudio</span>
<p class="admonition-title">Example</p>
<p>The following is the example to realize fullduplex audio I/O (version 0.7.5+).</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">spaudio</span>
<span class="n">a</span> <span class="o">=</span> <span class="n">spaudio</span><span class="o">.</span><span class="n">SpAudio</span><span class="p">()</span>
<span class="k">with</span> <span class="n">spaudio</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="s1">&#39;rw&#39;</span><span class="p">,</span> <span class="n">nchannels</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span> <span class="n">samprate</span><span class="o">=</span><span class="mi">44100</span><span class="p">,</span> <span class="n">buffersize</span><span class="o">=</span><span class="mi">2048</span><span class="p">)</span> <span class="k">as</span> <span class="n">a</span><span class="p">:</span>
<span class="n">nloop</span> <span class="o">=</span> <span class="mi">500</span>
<span class="n">b</span> <span class="o">=</span> <span class="nb">bytearray</span><span class="p">(</span><span class="mi">4096</span><span class="p">)</span>
<span class="n">a</span><span class="o">.</span><span class="n">setnchannels</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
<span class="n">a</span><span class="o">.</span><span class="n">setsamprate</span><span class="p">(</span><span class="mi">44100</span><span class="p">)</span>
<span class="n">a</span><span class="o">.</span><span class="n">setbuffersize</span><span class="p">(</span><span class="mi">2048</span><span class="p">)</span>
<span class="n">nloop</span> <span class="o">=</span> <span class="mi">500</span>
<span class="n">b</span> <span class="o">=</span> <span class="nb">bytearray</span><span class="p">(</span><span class="mi">4096</span><span class="p">)</span>
<span class="n">a</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="s1">&#39;r&#39;</span><span class="p">)</span>
<span class="n">a</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="s1">&#39;w&#39;</span><span class="p">)</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">nloop</span><span class="p">):</span>
<span class="n">a</span><span class="o">.</span><span class="n">readraw</span><span class="p">(</span><span class="n">b</span><span class="p">)</span>
<span class="n">a</span><span class="o">.</span><span class="n">writeraw</span><span class="p">(</span><span class="n">b</span><span class="p">)</span>
<span class="n">a</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">nloop</span><span class="p">):</span>
<span class="n">a</span><span class="o">.</span><span class="n">readraw</span><span class="p">(</span><span class="n">b</span><span class="p">)</span>
<span class="n">a</span><span class="o">.</span><span class="n">writeraw</span><span class="p">(</span><span class="n">b</span><span class="p">)</span>
</pre></div>

@@ -240,10 +234,7 @@ </div>

<p>A class for audio I/O.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>drivername</strong> (<em>str</em>) – the driver name to initialize.</td>
</tr>
</tbody>
</table>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>drivername</strong> (<em>str</em>) – the driver name to initialize.</p>
</dd>
</dl>
<dl class="method">

@@ -259,25 +250,21 @@ <dt id="spaudio.SpAudio.close">

<dd><p>Creates a double array for the current device settings.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>length</strong> – A length of the array. Note that this length is
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>length</strong> – A length of the array. Note that this length is
not identical to the number of frames
(length = nframes * nchannels).
If you want to specify the number of frames,
the second argument must be <code class="docutils literal notranslate"><span class="pre">True</span></code>.</li>
<li><strong>nframesflag</strong> – <code class="docutils literal notranslate"><span class="pre">True</span></code> makes the first argument be
treated as the number of frames.</li>
the second argument must be <code class="docutils literal notranslate"><span class="pre">True</span></code>.</p></li>
<li><p><strong>nframesflag</strong> (<em>bool</em>) – <code class="docutils literal notranslate"><span class="pre">True</span></code> makes the first argument be
treated as the number of frames.</p></li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">An array class object for the current device settings.</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">array.array</p>
</td>
</tr>
</tbody>
</table>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>An array class object for the current device settings.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>array.array</p>
</dd>
</dl>
</dd></dl>

@@ -289,25 +276,21 @@

<dd><p>Creates a numpy double array for the current device settings.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>length</strong> – A length of the array. Note that this length is
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>length</strong> – A length of the array. Note that this length is
not identical to the number of frames
(length = nframes * nchannels).
If you want to specify the number of frames,
the second argument must be <code class="docutils literal notranslate"><span class="pre">True</span></code>.</li>
<li><strong>nframesflag</strong> – <code class="docutils literal notranslate"><span class="pre">True</span></code> makes the first argument be
treated as the number of frames.</li>
the second argument must be <code class="docutils literal notranslate"><span class="pre">True</span></code>.</p></li>
<li><p><strong>nframesflag</strong> (<em>bool</em>) – <code class="docutils literal notranslate"><span class="pre">True</span></code> makes the first argument be
treated as the number of frames.</p></li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">An ndarray class object for the current device settings.</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">numpy.ndarray</p>
</td>
</tr>
</tbody>
</table>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>An ndarray class object for the current device settings.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

@@ -319,25 +302,21 @@

<dd><p>Creates a raw array for the current device settings.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>length</strong> – A length of the array. Note that this length is
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>length</strong> – A length of the array. Note that this length is
not identical to the number of frames
(length = nframes * nchannels).
If you want to specify the number of frames,
the second argument must be <code class="docutils literal notranslate"><span class="pre">True</span></code>.</li>
<li><strong>nframesflag</strong> – <code class="docutils literal notranslate"><span class="pre">True</span></code> makes the first argument be
treated as the number of frames.</li>
the second argument must be <code class="docutils literal notranslate"><span class="pre">True</span></code>.</p></li>
<li><p><strong>nframesflag</strong> (<em>bool</em>) – <code class="docutils literal notranslate"><span class="pre">True</span></code> makes the first argument be
treated as the number of frames.</p></li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">An array class object for the current device settings.</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">array.array</p>
</td>
</tr>
</tbody>
</table>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>An array class object for the current device settings.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>array.array</p>
</dd>
</dl>
</dd></dl>

@@ -349,25 +328,21 @@

<dd><p>Creates a raw numpy ndarray for the current device settings.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>length</strong> – A length of the array. Note that this length is
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>length</strong> – A length of the array. Note that this length is
not identical to the number of frames
(length = nframes * nchannels).
If you want to specify the number of frames,
the second argument must be <code class="docutils literal notranslate"><span class="pre">True</span></code>.</li>
<li><strong>nframesflag</strong> – <code class="docutils literal notranslate"><span class="pre">True</span></code> makes the first argument be
treated as the number of frames.</li>
the second argument must be <code class="docutils literal notranslate"><span class="pre">True</span></code>.</p></li>
<li><p><strong>nframesflag</strong> (<em>bool</em>) – <code class="docutils literal notranslate"><span class="pre">True</span></code> makes the first argument be
treated as the number of frames.</p></li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">An ndarray class object for the current device settings.</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">numpy.ndarray</p>
</td>
</tr>
</tbody>
</table>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>An ndarray class object for the current device settings.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>numpy.ndarray</p>
</dd>
</dl>
</dd></dl>

@@ -379,12 +354,10 @@

<dd><p>Gets the type code for python array to store double array.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">A type code of double array for the current settings.</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">char</td>
</tr>
</tbody>
</table>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>A type code of double array for the current settings.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>char</p>
</dd>
</dl>
</dd></dl>

@@ -396,12 +369,10 @@

<dd><p>Gets the blocking mode of the current device.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">0 = blocking mode (default), 1 = nonblocking mode.</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">int</td>
</tr>
</tbody>
</table>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>0 = blocking mode (default), 1 = nonblocking mode.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>int</p>
</dd>
</dl>
</dd></dl>

@@ -416,2 +387,17 @@

<dl class="method">
<dt id="spaudio.SpAudio.getcompname">
<code class="descname">getcompname</code><span class="sig-paren">(</span><em>decodebytes=False</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.getcompname"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.getcompname" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns human-readable name of compression type. Currently,
<code class="docutils literal notranslate"><span class="pre">'not</span> <span class="pre">compressed'</span></code> (decodebytes = <code class="docutils literal notranslate"><span class="pre">True</span></code>) or <code class="docutils literal notranslate"><span class="pre">b'not</span> <span class="pre">compressed'</span></code>
(decodebytes = <code class="docutils literal notranslate"><span class="pre">False</span></code>) will be returned.</p>
</dd></dl>
<dl class="method">
<dt id="spaudio.SpAudio.getcomptype">
<code class="descname">getcomptype</code><span class="sig-paren">(</span><em>decodebytes=False</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.getcomptype"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.getcomptype" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns compression type. Currently, <code class="docutils literal notranslate"><span class="pre">'NONE'</span></code> (decodebytes = <code class="docutils literal notranslate"><span class="pre">True</span></code>)
or <code class="docutils literal notranslate"><span class="pre">b'NONE'</span></code> (decodebytes = <code class="docutils literal notranslate"><span class="pre">False</span></code>) will be returned.</p>
</dd></dl>
<dl class="method">
<dt id="spaudio.SpAudio.getdevicelist">

@@ -450,12 +436,10 @@ <code class="descname">getdevicelist</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.getdevicelist"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.getdevicelist" title="Permalink to this definition">¶</a></dt>

<dd><p>Gets the dtype string for numpy ndarray to store double array.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">A dtype string for the current settings.</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">string</td>
</tr>
</tbody>
</table>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>A dtype string for the current settings.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>string</p>
</dd>
</dl>
</dd></dl>

@@ -470,15 +454,58 @@

<dl class="method">
<dt id="spaudio.SpAudio.getparams">
<code class="descname">getparams</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.getparams"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.getparams" title="Permalink to this definition">¶</a></dt>
<dd><p>Gets supported all parameters of the current device in dict object.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>A dict object including all parameters of the current device
whose keys are <code class="docutils literal notranslate"><span class="pre">'nchannels'</span></code>, <code class="docutils literal notranslate"><span class="pre">'sampbit'</span></code>, <code class="docutils literal notranslate"><span class="pre">'samprate'</span></code>,
<code class="docutils literal notranslate"><span class="pre">'blockingmode'</span></code>, <code class="docutils literal notranslate"><span class="pre">'buffersize'</span></code>, and <code class="docutils literal notranslate"><span class="pre">'nbuffers'</span></code>.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>dict</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="spaudio.SpAudio.getparamstuple">
<code class="descname">getparamstuple</code><span class="sig-paren">(</span><em>decodebytes=False</em>, <em>nframes=0</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.getparamstuple"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.getparamstuple" title="Permalink to this definition">¶</a></dt>
<dd><p>Gets supported all parameters of the current device in namedtuple object.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>decodebytes</strong> (<em>bool</em>) – <code class="docutils literal notranslate"><span class="pre">True</span></code> decodes bytes objects into string
objects for <code class="docutils literal notranslate"><span class="pre">'comptype'</span></code> and <code class="docutils literal notranslate"><span class="pre">'compname'</span></code>.
The standard libraries of wave and sunau expect a decoded
string object while the standard aifc library expects
a bytes object.</p></li>
<li><p><strong>nframes</strong> (<em>int</em>) – Specify the number of frames of an audio file,
otherwise 4th element of the output tuple will be 0.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>A namedtuple object including all parameters of
the current device whose entries are
<code class="docutils literal notranslate"><span class="pre">(nchannels,</span> <span class="pre">sampwidth,</span> <span class="pre">framerate,</span> <span class="pre">nframes,</span> <span class="pre">comptype,</span> <span class="pre">compname)</span></code> .
This object is compatible with the argument of <code class="docutils literal notranslate"><span class="pre">setparams()</span></code>
of standard libraries such as aifc, wave, or sunau.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>namedtuple</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="spaudio.SpAudio.getrawarraytypecode">
<code class="descname">getrawarraytypecode</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.getrawarraytypecode"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.getrawarraytypecode" title="Permalink to this definition">¶</a></dt>
<dd><p>Gets the type code for python array.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">A type code for the current settings.</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">char</td>
</tr>
</tbody>
</table>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>A type code for the current settings.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>char</p>
</dd>
</dl>
</dd></dl>

@@ -490,12 +517,10 @@

<dd><p>Gets the dtype string for numpy ndarray.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">A dtype string for the current settings.</td>
</tr>
<tr class="field-even field"><th class="field-name">Return type:</th><td class="field-body">string</td>
</tr>
</tbody>
</table>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>A dtype string for the current settings.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>string</p>
</dd>
</dl>
</dd></dl>

@@ -536,16 +561,30 @@

<dt id="spaudio.SpAudio.open">
<code class="descname">open</code><span class="sig-paren">(</span><em>mode</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.open"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.open" title="Permalink to this definition">¶</a></dt>
<code class="descname">open</code><span class="sig-paren">(</span><em>mode</em>, <em>*</em>, <em>callback=None</em>, <em>deviceindex=-1</em>, <em>samprate=0</em>, <em>sampbit=0</em>, <em>nchannels=0</em>, <em>blockingmode=-1</em>, <em>buffersize=0</em>, <em>nbuffers=0</em>, <em>params=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.open"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.open" title="Permalink to this definition">¶</a></dt>
<dd><p>Opens the current audio device.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>mode</strong> (<em>str</em>) – Device opening mode. <code class="docutils literal notranslate"><span class="pre">'r'</span></code> means read mode, <code class="docutils literal notranslate"><span class="pre">'w'</span></code> means
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mode</strong> (<em>str</em>) – Device opening mode. <code class="docutils literal notranslate"><span class="pre">'r'</span></code> means read mode, <code class="docutils literal notranslate"><span class="pre">'w'</span></code> means
write mode. <code class="docutils literal notranslate"><span class="pre">'ro'</span></code> and <code class="docutils literal notranslate"><span class="pre">'wo'</span></code> which mean read only and
write only modes are also supported. Although these modes
validate only the specified mode, some environments recieve
a benefit that the processing becomes faster.</td>
</tr>
</tbody>
</table>
a benefit that the processing becomes faster.</p></li>
<li><p><strong>callback</strong> (<em>tuple</em>) – The callback function included in tuple which contains
all arguments for <a class="reference internal" href="#spaudio.SpAudio.setcallback" title="spaudio.SpAudio.setcallback"><code class="xref py py-func docutils literal notranslate"><span class="pre">setcallback()</span></code></a> method.</p></li>
<li><p><strong>deviceindex</strong> (<em>int</em>) – The index of the audio device.</p></li>
<li><p><strong>samprate</strong> (<em>double</em>) – Sample rate of the device.</p></li>
<li><p><strong>sampbit</strong> (<em>int</em>) – Bits/sample of the device.</p></li>
<li><p><strong>nchannels</strong> (<em>int</em>) – The number of channels of the device.</p></li>
<li><p><strong>blockingmode</strong> (<em>int</em>) – 0 = blocking mode (default), 1 = nonblocking mode.</p></li>
<li><p><strong>buffersize</strong> (<em>int</em>) – The buffer size of the device.</p></li>
<li><p><strong>nbuffers</strong> (<em>int</em>) – The number of buffers of the device.</p></li>
<li><p><strong>params</strong> (<em>dict</em>) – A dict object which can contain any above parameters
from <cite>samprate</cite> to <cite>nbuffers</cite>.</p></li>
</ul>
</dd>
</dl>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>Support for the keyword arguments was added in Version 0.7.5.</p>
</div>
</dd></dl>

@@ -555,22 +594,25 @@

<dt id="spaudio.SpAudio.read">
<code class="descname">read</code><span class="sig-paren">(</span><em>data</em>, <em>weight=1.0</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.read"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.read" title="Permalink to this definition">¶</a></dt>
<code class="descname">read</code><span class="sig-paren">(</span><em>data</em>, <em>weight=1.0</em>, <em>offset=0</em>, <em>length=0</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.read"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.read" title="Permalink to this definition">¶</a></dt>
<dd><p>Reads data to double array from the audio device.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>data</strong> (<em>bytearray</em><em>, </em><em>array.array</em><em> or </em><em>numpy.ndarray</em>) – A buffer of double array to receive data from the audio device.</li>
<li><strong>weight</strong> (<em>double</em>) – A weighting factor multiplied to data after reading.</li>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<em>bytearray</em><em>, </em><em>array.array</em><em> or </em><em>numpy.ndarray</em>) – A buffer of double array to receive data from the audio device.</p></li>
<li><p><strong>weight</strong> (<em>double</em>) – A weighting factor multiplied to data after reading.</p></li>
<li><p><strong>offset</strong> (<em>int</em>) – Optional offset location for the buffer.</p></li>
<li><p><strong>length</strong> (<em>int</em>) – Optional read length for the buffer.</p></li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The read size if successful, -1 otherwise.</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">int</p>
</td>
</tr>
</tbody>
</table>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>The read size if successful, -1 otherwise.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>int</p>
</dd>
</dl>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>The keyword arguments of <cite>offset</cite> and <cite>length</cite> were
introduced in Version 0.7.5.</p>
</div>
</dd></dl>

@@ -580,16 +622,24 @@

<dt id="spaudio.SpAudio.readraw">
<code class="descname">readraw</code><span class="sig-paren">(</span><em>data</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.readraw"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.readraw" title="Permalink to this definition">¶</a></dt>
<code class="descname">readraw</code><span class="sig-paren">(</span><em>data</em>, <em>offset=0</em>, <em>length=0</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.readraw"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.readraw" title="Permalink to this definition">¶</a></dt>
<dd><p>Reads raw data from the audio device.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>data</strong> (<em>bytearray</em><em>, </em><em>array.array</em><em> or </em><em>numpy.ndarray</em>) – A buffer to receive raw data from the audio device.</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">The read size if successful, -1 otherwise.</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">int</td>
</tr>
</tbody>
</table>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<em>bytearray</em><em>, </em><em>array.array</em><em> or </em><em>numpy.ndarray</em>) – A buffer to receive raw data from the audio device.</p></li>
<li><p><strong>offset</strong> (<em>int</em>) – Optional offset location for the buffer.</p></li>
<li><p><strong>length</strong> (<em>int</em>) – Optional read length for the buffer.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>The read size if successful, -1 otherwise.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>int</p>
</dd>
</dl>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>The keyword arguments of <cite>offset</cite> and <cite>length</cite> were
introduced in Version 0.7.5.</p>
</div>
</dd></dl>

@@ -607,2 +657,14 @@

<dd><p>Selects an audio device which has the index specified.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>deviceindex</strong> (<em>int</em>) – The index associated with an audio device.</p>
</dd>
<dt class="field-even">Raises</dt>
<dd class="field-even"><ul class="simple">
<li><p><strong>ValueError</strong> – If <cite>deviceindex</cite> is greater than or equal to
the number of devices.</p></li>
<li><p><a class="reference internal" href="#spaudio.DriverError" title="spaudio.DriverError"><strong>DriverError</strong></a> – If the audio device cannot be selected.</p></li>
</ul>
</dd>
</dl>
</dd></dl>

@@ -614,10 +676,7 @@

<dd><p>Sets the blocking mode of the current device.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>mode</strong> (<em>int</em>) – 0 = blocking mode (default), 1 = nonblocking mode.</td>
</tr>
</tbody>
</table>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>mode</strong> (<em>int</em>) – 0 = blocking mode (default), 1 = nonblocking mode.</p>
</dd>
</dl>
</dd></dl>

@@ -635,21 +694,26 @@

<dd><p>Sets a callback function.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>calltype</strong> (<em>int</em>) – A combination of callback types.
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>calltype</strong> (<em>int</em>) – A combination of callback types.
<code class="docutils literal notranslate"><span class="pre">OUTPUT_POSITION_CALLBACK</span></code> and <code class="docutils literal notranslate"><span class="pre">OUTPUT_BUFFER_CALLBACK</span></code>
are supported currently.</li>
<li><strong>func</strong> (<em>callable</em>) – Callback function. The callback must have
a signature in the <a class="reference internal" href="#spaudio.callbacksignature" title="spaudio.callbacksignature"><code class="xref py py-func docutils literal notranslate"><span class="pre">callbacksignature()</span></code></a> document.</li>
<li><strong>*args</strong> – Variable length argument list.</li>
are supported currently.</p></li>
<li><p><strong>func</strong> (<em>callable</em>) – Callback function. The callback must have
a signature in the <a class="reference internal" href="#spaudio.callbacksignature" title="spaudio.callbacksignature"><code class="xref py py-func docutils literal notranslate"><span class="pre">callbacksignature()</span></code></a> document.</p></li>
<li><p><strong>*args</strong> – Variable length argument list.</p></li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd>
<dt class="field-even">Raises</dt>
<dd class="field-even"><p><a class="reference internal" href="#spaudio.DriverError" title="spaudio.DriverError"><strong>DriverError</strong></a> – If the callback function cannot be set.</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="spaudio.SpAudio.setcomptype">
<code class="descname">setcomptype</code><span class="sig-paren">(</span><em>encodestr=True</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.setcomptype"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.setcomptype" title="Permalink to this definition">¶</a></dt>
<dd><p>Sets compression type. This parameter is ignored.</p>
</dd></dl>
<dl class="method">
<dt id="spaudio.SpAudio.setframerate">

@@ -673,2 +737,18 @@ <code class="descname">setframerate</code><span class="sig-paren">(</span><em>samprate</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.setframerate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.setframerate" title="Permalink to this definition">¶</a></dt>

<dl class="method">
<dt id="spaudio.SpAudio.setparams">
<code class="descname">setparams</code><span class="sig-paren">(</span><em>params</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.setparams"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.setparams" title="Permalink to this definition">¶</a></dt>
<dd><p>Sets supported all parameters described in dict or
namedtuple object to the device.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>params</strong> (<em>dict</em>) – a dict object of parameters whose keys are
<code class="docutils literal notranslate"><span class="pre">'nchannels'</span></code>, <code class="docutils literal notranslate"><span class="pre">'sampbit'</span></code>, <code class="docutils literal notranslate"><span class="pre">'samprate'</span></code>,
<code class="docutils literal notranslate"><span class="pre">'blockingmode'</span></code>, <code class="docutils literal notranslate"><span class="pre">'buffersize'</span></code>, or <code class="docutils literal notranslate"><span class="pre">'nbuffers'</span></code>.
The namedtuple generated by standard libraries
such as aifc, wave, or sunau is also acceptable.</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="spaudio.SpAudio.setsampbit">

@@ -712,22 +792,25 @@ <code class="descname">setsampbit</code><span class="sig-paren">(</span><em>sampbit</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.setsampbit"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.setsampbit" title="Permalink to this definition">¶</a></dt>

<dt id="spaudio.SpAudio.write">
<code class="descname">write</code><span class="sig-paren">(</span><em>data</em>, <em>weight=1.0</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.write"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.write" title="Permalink to this definition">¶</a></dt>
<code class="descname">write</code><span class="sig-paren">(</span><em>data</em>, <em>weight=1.0</em>, <em>offset=0</em>, <em>length=0</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.write"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.write" title="Permalink to this definition">¶</a></dt>
<dd><p>Writes data of double array to the audio device.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>data</strong> (<em>bytearray</em><em>, </em><em>array.array</em><em> or </em><em>numpy.ndarray</em>) – A buffer of double array to send data to the audio device.</li>
<li><strong>weight</strong> (<em>double</em>) – A weighting factor multiplied to data before writing.</li>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<em>bytearray</em><em>, </em><em>array.array</em><em> or </em><em>numpy.ndarray</em>) – A buffer of double array to send data to the audio device.</p></li>
<li><p><strong>weight</strong> (<em>double</em>) – A weighting factor multiplied to data before writing.</p></li>
<li><p><strong>offset</strong> (<em>int</em>) – Optional offset location for the buffer.</p></li>
<li><p><strong>length</strong> (<em>int</em>) – Optional write length for the buffer.</p></li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The written size if successful, -1 otherwise.</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">int</p>
</td>
</tr>
</tbody>
</table>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>The written size if successful, -1 otherwise.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>int</p>
</dd>
</dl>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>The keyword arguments of <cite>offset</cite> and <cite>length</cite> were
introduced in Version 0.7.5.</p>
</div>
</dd></dl>

@@ -737,16 +820,24 @@

<dt id="spaudio.SpAudio.writeraw">
<code class="descname">writeraw</code><span class="sig-paren">(</span><em>data</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.writeraw"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.writeraw" title="Permalink to this definition">¶</a></dt>
<code class="descname">writeraw</code><span class="sig-paren">(</span><em>data</em>, <em>offset=0</em>, <em>length=0</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#SpAudio.writeraw"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.SpAudio.writeraw" title="Permalink to this definition">¶</a></dt>
<dd><p>Writes raw data to the audio device.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>data</strong> (<em>bytearray</em><em>, </em><em>array.array</em><em> or </em><em>numpy.ndarray</em>) – A buffer to send raw data to the audio device.</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">The written size if successful, -1 otherwise.</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body">int</td>
</tr>
</tbody>
</table>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<em>bytearray</em><em>, </em><em>array.array</em><em> or </em><em>numpy.ndarray</em>) – A buffer to send raw data to the audio device.</p></li>
<li><p><strong>offset</strong> (<em>int</em>) – Optional offset location for the buffer.</p></li>
<li><p><strong>length</strong> (<em>int</em>) – Optional write length for the buffer.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>The written size if successful, -1 otherwise.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>int</p>
</dd>
</dl>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>The keyword arguments of <cite>offset</cite> and <cite>length</cite> were
introduced in Version 0.7.5.</p>
</div>
</dd></dl>

@@ -760,25 +851,21 @@

<dd><p>Signature of the callback function for <a class="reference internal" href="#spaudio.SpAudio.setcallback" title="spaudio.SpAudio.setcallback"><code class="xref py py-func docutils literal notranslate"><span class="pre">setcallback()</span></code></a> method.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>audio</strong> (<a class="reference internal" href="#spaudio.SpAudio" title="spaudio.SpAudio"><em>SpAudio</em></a>) – An instance of <a class="reference internal" href="#spaudio.SpAudio" title="spaudio.SpAudio"><code class="xref py py-class docutils literal notranslate"><span class="pre">SpAudio</span></code></a> class.</li>
<li><strong>calltype</strong> (<em>int</em>) – The callback type. <code class="docutils literal notranslate"><span class="pre">OUTPUT_POSITION_CALLBACK</span></code> or
<code class="docutils literal notranslate"><span class="pre">OUTPUT_BUFFER_CALLBACK</span></code>.</li>
<li><strong>cbdata</strong> – Callback-depend data. A position (int) on <code class="docutils literal notranslate"><span class="pre">OUTPUT_POSITION_CALLBACK</span></code>
or a buffer (bytes) on <code class="docutils literal notranslate"><span class="pre">OUTPUT_BUFFER_CALLBACK</span></code>.</li>
<li><strong>args</strong> – Variable length argument list specified at <a class="reference internal" href="#spaudio.SpAudio.setcallback" title="spaudio.SpAudio.setcallback"><code class="xref py py-func docutils literal notranslate"><span class="pre">setcallback()</span></code></a>.
Note that this <code class="docutils literal notranslate"><span class="pre">args</span></code> variable does not require the prefix <code class="docutils literal notranslate"><span class="pre">*</span></code>.</li>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>audio</strong> (<a class="reference internal" href="#spaudio.SpAudio" title="spaudio.SpAudio"><em>SpAudio</em></a>) – An instance of <a class="reference internal" href="#spaudio.SpAudio" title="spaudio.SpAudio"><code class="xref py py-class docutils literal notranslate"><span class="pre">SpAudio</span></code></a> class.</p></li>
<li><p><strong>calltype</strong> (<em>int</em>) – The callback type. <code class="docutils literal notranslate"><span class="pre">OUTPUT_POSITION_CALLBACK</span></code> or
<code class="docutils literal notranslate"><span class="pre">OUTPUT_BUFFER_CALLBACK</span></code>.</p></li>
<li><p><strong>cbdata</strong> – Callback-depend data. A position (int) on <code class="docutils literal notranslate"><span class="pre">OUTPUT_POSITION_CALLBACK</span></code>
or a buffer (bytes) on <code class="docutils literal notranslate"><span class="pre">OUTPUT_BUFFER_CALLBACK</span></code>.</p></li>
<li><p><strong>args</strong> – Variable length argument list specified at <a class="reference internal" href="#spaudio.SpAudio.setcallback" title="spaudio.SpAudio.setcallback"><code class="xref py py-func docutils literal notranslate"><span class="pre">setcallback()</span></code></a>.
Note that this <cite>args</cite> variable does not require the prefix <code class="docutils literal notranslate"><span class="pre">*</span></code>.</p></li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first"><code class="docutils literal notranslate"><span class="pre">False</span></code> if you don’t want to fire callbacks anymore.</p>
</td>
</tr>
<tr class="field-odd field"><th class="field-name">Return type:</th><td class="field-body"><p class="first last">bool</p>
</td>
</tr>
</tbody>
</table>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p><code class="docutils literal notranslate"><span class="pre">False</span></code> if you don’t want to fire callbacks anymore.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>bool</p>
</dd>
</dl>
</dd></dl>

@@ -790,2 +877,20 @@

<dd><p>Gets the name of the device in the driver.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>index</strong> (<em>int</em>) – The index associated with the audio device.</p></li>
<li><p><strong>drivername</strong> (<em>str</em>) – Optional driver name.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>A string containing the device name.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>string</p>
</dd>
<dt class="field-even">Raises</dt>
<dd class="field-even"><p><strong>ValueError</strong> – If <cite>index</cite> is greater than or equal to
the number of devices.</p>
</dd>
</dl>
</dd></dl>

@@ -803,2 +908,17 @@

<dd><p>Gets the name of the driver which has the index specified.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>index</strong> (<em>int</em>) – The index associated with the audio driver.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>A string containing the driver name.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>string</p>
</dd>
<dt class="field-even">Raises</dt>
<dd class="field-even"><p><strong>ValueError</strong> – If <cite>index</cite> is greater than or equal to
the number of drivers.</p>
</dd>
</dl>
</dd></dl>

@@ -818,5 +938,46 @@

<dl class="function">
<dt id="spaudio.open">
<code class="descclassname">spaudio.</code><code class="descname">open</code><span class="sig-paren">(</span><em>mode</em>, <em>*</em>, <em>drivername=None</em>, <em>callback=None</em>, <em>deviceindex=-1</em>, <em>samprate=0</em>, <em>sampbit=0</em>, <em>nchannels=0</em>, <em>blockingmode=-1</em>, <em>buffersize=0</em>, <em>nbuffers=0</em>, <em>params=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/spaudio.html#open"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#spaudio.open" title="Permalink to this definition">¶</a></dt>
<dd><p>Opens an audio device. This function may be used in a <code class="docutils literal notranslate"><span class="pre">with</span></code> statement.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mode</strong> (<em>str</em>) – Device opening mode. <code class="docutils literal notranslate"><span class="pre">'r'</span></code> means read mode, <code class="docutils literal notranslate"><span class="pre">'w'</span></code> means
write mode. <code class="docutils literal notranslate"><span class="pre">'ro'</span></code> and <code class="docutils literal notranslate"><span class="pre">'wo'</span></code> which mean read only and
write only modes are also supported. Although these modes
validate only the specified mode, some environments recieve
a benefit that the processing becomes faster.
In this function, <code class="docutils literal notranslate"><span class="pre">'rw'</span></code> which means open with <code class="docutils literal notranslate"><span class="pre">'w'</span></code>
after <code class="docutils literal notranslate"><span class="pre">'r'</span></code> is also supported.</p></li>
<li><p><strong>drivername</strong> (<em>str</em>) – The driver name to initialize.</p></li>
<li><p><strong>callback</strong> (<em>tuple</em>) – The callback function included in tuple which contains
all arguments for <a class="reference internal" href="#spaudio.SpAudio.setcallback" title="spaudio.SpAudio.setcallback"><code class="xref py py-func docutils literal notranslate"><span class="pre">setcallback()</span></code></a> method.</p></li>
<li><p><strong>deviceindex</strong> (<em>int</em>) – The index of the audio device.</p></li>
<li><p><strong>samprate</strong> (<em>double</em>) – Sample rate of the device.</p></li>
<li><p><strong>sampbit</strong> (<em>int</em>) – Bits/sample of the device.</p></li>
<li><p><strong>nchannels</strong> (<em>int</em>) – The number of channels of the device.</p></li>
<li><p><strong>blockingmode</strong> (<em>int</em>) – 0 = blocking mode (default), 1 = nonblocking mode.</p></li>
<li><p><strong>buffersize</strong> (<em>int</em>) – The buffer size of the device.</p></li>
<li><p><strong>nbuffers</strong> (<em>int</em>) – The number of buffers of the device.</p></li>
<li><p><strong>params</strong> (<em>dict</em>) – A dict object which can contain any above parameters
from <cite>samprate</cite> to <cite>nbuffers</cite>.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>A new instance of <a class="reference internal" href="#spaudio.SpAudio" title="spaudio.SpAudio"><code class="xref py py-class docutils literal notranslate"><span class="pre">SpAudio</span></code></a> class.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p><a class="reference internal" href="#spaudio.SpAudio" title="spaudio.SpAudio">SpAudio</a></p>
</dd>
</dl>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>This function was introduced in Version 0.7.5.</p>
</div>
</dd></dl>
</div>
</div>

@@ -842,7 +1003,13 @@

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
Last updated on 2019-04-28 6:14:38 PM.
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -849,0 +1016,0 @@

@@ -6,5 +6,2 @@ #!/usr/bin/env python3

import sys
import aifc
import wave
import sunau
import spplugin

@@ -11,0 +8,0 @@

@@ -97,4 +97,5 @@

<li class="toctree-l1"><a class="reference internal" href="../examples.html">サンプルコード</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="../examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#fullduplex-i-o">フルデュプレックスI/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">フルデュプレックスI/O( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#read-and-plot-python-array-version">読み込みとプロット(Python配列バージョン)</a></li>

@@ -105,8 +106,14 @@ <li class="toctree-l3"><a class="reference internal" href="../examples.html#read-and-plot-raw-data-version">読み込みとプロット(生データバージョン)</a></li>

<li class="toctree-l3"><a class="reference internal" href="../examples.html#play-a-wav-file">Wavファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Wavファイルの再生( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#play-a-wav-file-with-callback">Wavファイルの再生(コールバックあり)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Wavファイルの再生(コールバックあり; <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#record-to-a-wav-file">Wavファイルへの録音</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Wavファイルへの録音( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="../examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#plot-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの読み込みと,その内容のプロット</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#play-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#read-an-audio-file-by-plugin-and-write-it">プラグインによる音声ファイルの読み込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#read-an-audio-file-and-write-it-by-plugin">プラグインによる音声ファイルの書き込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="../examples.html#convert-an-audio-file-by-plugin">プラグインによる音声ファイルの変換</a></li>

@@ -193,7 +200,13 @@ </ul>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
最終更新: 2019-04-28 18:20:55
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -200,0 +213,0 @@

@@ -33,22 +33,22 @@ Introduction

* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_i386.deb
* Ubuntu 16
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_i386.deb
* Ubuntu 14
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_i386.deb
* CentOS 7
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-5.x86_64.rpm
* CentOS 6
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-5.x86_64.rpm

@@ -63,2 +63,7 @@ If you want to use ``apt`` (Ubuntu) or ``yum`` (CentOS),

- Version 0.7.15
* Added spaudio.open function to spaudio module.
* Added support for open call of spaudio module with keyword arguments.
- Version 0.7.14

@@ -65,0 +70,0 @@

@@ -234,2 +234,12 @@ /*

a.brackets:before,
span.brackets > a:before{
content: "[";
}
a.brackets:after,
span.brackets > a:after {
content: "]";
}
h1:hover > a.headerlink,

@@ -395,2 +405,12 @@ h2:hover > a.headerlink,

th > p:first-child,
td > p:first-child {
margin-top: 0px;
}
th > p:last-child,
td > p:last-child {
margin-bottom: 0px;
}
/* -- figures --------------------------------------------------------------- */

@@ -465,2 +485,48 @@

li > p:first-child {
margin-top: 0px;
}
li > p:last-child {
margin-bottom: 0px;
}
dl.footnote > dt,
dl.citation > dt {
float: left;
}
dl.footnote > dd,
dl.citation > dd {
margin-bottom: 0em;
}
dl.footnote > dd:after,
dl.citation > dd:after {
content: "";
clear: both;
}
dl.field-list {
display: flex;
flex-wrap: wrap;
}
dl.field-list > dt {
flex-basis: 20%;
font-weight: bold;
word-break: break-word;
}
dl.field-list > dt:after {
content: ":";
}
dl.field-list > dd {
flex-basis: 70%;
padding-left: 1em;
margin-left: 0em;
margin-bottom: 0em;
}
dl {

@@ -470,3 +536,3 @@ margin-bottom: 15px;

dd p {
dd > p:first-child {
margin-top: 0px;

@@ -544,2 +610,8 @@ }

.classifier:before {
font-style: normal;
margin: 0.5em;
content: ":";
}
abbr, acronym {

@@ -546,0 +618,0 @@ border-bottom: dotted 1px;

@@ -90,5 +90,5 @@ /*

if (isInSVG) {
var bbox = span.getBBox();
var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
rect.x.baseVal.value = bbox.x;
var bbox = node.parentElement.getBBox();
rect.x.baseVal.value = bbox.x;
rect.y.baseVal.value = bbox.y;

@@ -98,3 +98,2 @@ rect.width.baseVal.value = bbox.width;

rect.setAttribute('class', className);
var parentOfText = node.parentNode.parentNode;
addItems.push({

@@ -101,0 +100,0 @@ "parent": node.parentNode,

@@ -7,5 +7,5 @@ var DOCUMENTATION_OPTIONS = {

FILE_SUFFIX: '.html',
HAS_SOURCE: true,
HAS_SOURCE: false,
SOURCELINK_SUFFIX: '.txt',
NAVIGATION_WITH_KEYS: false,
NAVIGATION_WITH_KEYS: false
};

@@ -39,4 +39,6 @@ /*

title: 15,
partialTitle: 7,
// query found in terms
term: 5
term: 5,
partialTerm: 2
};

@@ -60,2 +62,10 @@ }

htmlToText : function(htmlString) {
var htmlElement = document.createElement('span');
htmlElement.innerHTML = htmlString;
$(htmlElement).find('.headerlink').remove();
docContent = $(htmlElement).find('[role=main]')[0];
return docContent.textContent || docContent.innerText;
},
init : function() {

@@ -125,3 +135,3 @@ var params = $.getQueryParameters();

this.dots = $('<span></span>').appendTo(this.title);
this.status = $('<p style="display: none"></p>').appendTo(this.out);
this.status = $('<p class="search-summary">&nbsp;</p>').appendTo(this.out);
this.output = $('<ul class="search"/>').appendTo(this.out);

@@ -265,7 +275,3 @@

} else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) {
var suffix = DOCUMENTATION_OPTIONS.SOURCELINK_SUFFIX;
if (suffix === undefined) {
suffix = '.txt';
}
$.ajax({url: DOCUMENTATION_OPTIONS.URL_ROOT + '_sources/' + item[5] + (item[5].slice(-suffix.length) === suffix ? '' : suffix),
$.ajax({url: DOCUMENTATION_OPTIONS.URL_ROOT + item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX,
dataType: "text",

@@ -392,2 +398,15 @@ complete: function(jqxhr, textstatus) {

];
// add support for partial matches
if (word.length > 2) {
for (var w in terms) {
if (w.match(word) && !terms[word]) {
_o.push({files: terms[w], score: Scorer.partialTerm})
}
}
for (var w in titleterms) {
if (w.match(word) && !titleterms[word]) {
_o.push({files: titleterms[w], score: Scorer.partialTitle})
}
}
}

@@ -432,4 +451,8 @@ // no match but word was a required one

// check if all requirements are matched
if (fileMap[file].length != searchterms.length)
continue;
var filteredTermCount = // as search terms with length < 3 are discarded: ignore
searchterms.filter(function(term){return term.length > 2}).length
if (
fileMap[file].length != searchterms.length &&
fileMap[file].length != filteredTermCount
) continue;

@@ -465,3 +488,4 @@ // ensure that none of the excluded terms is in the search result

*/
makeSearchSummary : function(text, keywords, hlwords) {
makeSearchSummary : function(htmlText, keywords, hlwords) {
var text = Search.htmlToText(htmlText);
var textLower = text.toLowerCase();

@@ -468,0 +492,0 @@ var start = 0;

@@ -1,1 +0,1 @@

Documentation.addTranslations({"locale": "ja", "messages": {"%(filename)s &#8212; %(docstitle)s": "%(filename)s &#8212; %(docstitle)s", "&#169; <a href=\"%(path)s\">Copyright</a> %(copyright)s.": "&#169; <a href=\"%(path)s\">Copyright</a> %(copyright)s.", "&#169; Copyright %(copyright)s.": "&#169; Copyright %(copyright)s.", ", in ": ", in ", "About these documents": "\u3053\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306b\u3064\u3044\u3066", "Automatically generated list of changes in version %(version)s": "\u30d0\u30fc\u30b8\u30e7\u30f3 %(version)s \u306e\u5909\u66f4\u70b9\uff08\u3053\u306e\u30ea\u30b9\u30c8\u306f\u81ea\u52d5\u751f\u6210\u3055\u308c\u3066\u3044\u307e\u3059\uff09", "C API changes": "C API \u306b\u95a2\u3059\u308b\u5909\u66f4", "Changes in Version %(version)s &#8212; %(docstitle)s": "\u30d0\u30fc\u30b8\u30e7\u30f3 %(version)s \u306e\u5909\u66f4\u70b9 &#8212; %(docstitle)s", "Collapse sidebar": "\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u305f\u305f\u3080", "Complete Table of Contents": "\u7dcf\u5408\u76ee\u6b21", "Contents": "\u30b3\u30f3\u30c6\u30f3\u30c4", "Copyright": "\u8457\u4f5c\u6a29", "Created using <a href=\"http://sphinx-doc.org/\">Sphinx</a> %(sphinx_version)s.": "\u3053\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306f <a href=\"http://sphinx-doc.org/\">Sphinx</a> %(sphinx_version)s \u3067\u751f\u6210\u3057\u307e\u3057\u305f\u3002", "Expand sidebar": "\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u5c55\u958b", "From here you can search these documents. Enter your search\n words into the box below and click \"search\". Note that the search\n function will automatically search for all of the words. Pages\n containing fewer words won't appear in the result list.": "\u3053\u306e\u30da\u30fc\u30b8\u304b\u3089\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u691c\u7d22\u3067\u304d\u307e\u3059\u3002\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u4e0b\u306e\u30dc\u30c3\u30af\u30b9\u306b\u5165\u529b\u3057\u3066\u3001\u300c\u691c\u7d22\u300d\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u5165\u529b\u3055\u308c\u305f\u5168\u3066\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u542b\u3080\u30da\u30fc\u30b8\u304c\u691c\u7d22\u3055\u308c\u307e\u3059\u3002\u4e00\u90e8\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u3057\u304b\u542b\u307e\u306a\u3044\u30da\u30fc\u30b8\u306f\u691c\u7d22\u7d50\u679c\u306b\u8868\u793a\u3055\u308c\u306a\u3044\u306e\u3067\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002", "Full index on one page": "\u7dcf\u7d22\u5f15", "General Index": "\u7dcf\u5408\u7d22\u5f15", "Global Module Index": "\u30e2\u30b8\u30e5\u30fc\u30eb\u7dcf\u7d22\u5f15", "Go": "\u691c\u7d22", "Hide Search Matches": "\u691c\u7d22\u7d50\u679c\u3092\u96a0\u3059", "Index": "\u7d22\u5f15", "Index &ndash; %(key)s": "\u7d22\u5f15 &ndash; %(key)s", "Index pages by letter": "\u982d\u6587\u5b57\u5225\u7d22\u5f15", "Indices and tables:": "\u7d22\u5f15\u3068\u8868\u4e00\u89a7:", "Last updated on %(last_updated)s.": "\u6700\u7d42\u66f4\u65b0: %(last_updated)s", "Library changes": "\u30e9\u30a4\u30d6\u30e9\u30ea\u306b\u95a2\u3059\u308b\u5909\u66f4", "Navigation": "\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3", "Next topic": "\u6b21\u306e\u30c8\u30d4\u30c3\u30af\u3078", "Other changes": "\u305d\u306e\u4ed6\u306e\u5909\u66f4", "Overview": "\u6982\u8981", "Permalink to this definition": "\u3053\u306e\u5b9a\u7fa9\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af", "Permalink to this headline": "\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af", "Please activate JavaScript to enable the search\n functionality.": "\u691c\u7d22\u6a5f\u80fd\u3092\u4f7f\u3046\u306b\u306f JavaScript \u3092\u6709\u52b9\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002", "Preparing search...": "\u691c\u7d22\u3092\u6e96\u5099\u3057\u3066\u3044\u307e\u3059...", "Previous topic": "\u524d\u306e\u30c8\u30d4\u30c3\u30af\u3078", "Quick search": "\u30af\u30a4\u30c3\u30af\u691c\u7d22", "Search": "\u691c\u7d22", "Search Page": "\u691c\u7d22\u30da\u30fc\u30b8", "Search Results": "\u691c\u7d22\u7d50\u679c", "Search finished, found %s page(s) matching the search query.": "\u691c\u7d22\u304c\u5b8c\u4e86\u3057\u3001 %s \u30da\u30fc\u30b8\u898b\u3064\u3051\u307e\u3057\u305f\u3002", "Search within %(docstitle)s": "%(docstitle)s \u5185\u3092\u691c\u7d22", "Searching": "\u691c\u7d22\u4e2d", "Show Source": "\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u3092\u8868\u793a", "Table of Contents": "", "This Page": "\u3053\u306e\u30da\u30fc\u30b8", "Welcome! This is": "Welcome! This is", "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories.": "\u691c\u7d22\u3057\u305f\u6587\u5b57\u5217\u306f\u3069\u306e\u6587\u66f8\u306b\u3082\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3059\u3079\u3066\u306e\u5358\u8a9e\u304c\u6b63\u78ba\u306b\u8a18\u8ff0\u3055\u308c\u3066\u3044\u308b\u304b\u3001\u3042\u308b\u3044\u306f\u3001\u5341\u5206\u306a\u30ab\u30c6\u30b4\u30ea\u30fc\u304c\u9078\u629e\u3055\u308c\u3066\u3044\u308b\u304b\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002", "all functions, classes, terms": "\u95a2\u6570\u3001\u30af\u30e9\u30b9\u304a\u3088\u3073\u7528\u8a9e\u7dcf\u89a7", "can be huge": "\u5927\u304d\u3044\u5834\u5408\u304c\u3042\u308b\u306e\u3067\u6ce8\u610f", "last updated": "\u6700\u7d42\u66f4\u65b0", "lists all sections and subsections": "\u7ae0\uff0f\u7bc0\u4e00\u89a7", "next chapter": "\u6b21\u306e\u7ae0\u3078", "previous chapter": "\u524d\u306e\u7ae0\u3078", "quick access to all modules": "\u5168\u30e2\u30b8\u30e5\u30fc\u30eb\u65e9\u898b\u8868", "search": "\u691c\u7d22", "search this documentation": "\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u691c\u7d22", "the documentation for": "the documentation for"}, "plural_expr": "0"});
Documentation.addTranslations({"locale": "ja", "messages": {"%(filename)s &#8212; %(docstitle)s": "%(filename)s &#8212; %(docstitle)s", "&#169; <a href=\"%(path)s\">Copyright</a> %(copyright)s.": "&#169; <a href=\"%(path)s\">Copyright</a> %(copyright)s.", "&#169; Copyright %(copyright)s.": "&#169; Copyright %(copyright)s.", ", in ": ", in ", "About these documents": "\u3053\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306b\u3064\u3044\u3066", "Automatically generated list of changes in version %(version)s": "\u30d0\u30fc\u30b8\u30e7\u30f3 %(version)s \u306e\u5909\u66f4\u70b9\uff08\u3053\u306e\u30ea\u30b9\u30c8\u306f\u81ea\u52d5\u751f\u6210\u3055\u308c\u3066\u3044\u307e\u3059\uff09", "C API changes": "C API \u306b\u95a2\u3059\u308b\u5909\u66f4", "Changes in Version %(version)s &#8212; %(docstitle)s": "\u30d0\u30fc\u30b8\u30e7\u30f3 %(version)s \u306e\u5909\u66f4\u70b9 &#8212; %(docstitle)s", "Collapse sidebar": "\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u305f\u305f\u3080", "Complete Table of Contents": "\u7dcf\u5408\u76ee\u6b21", "Contents": "\u30b3\u30f3\u30c6\u30f3\u30c4", "Copyright": "\u8457\u4f5c\u6a29", "Created using <a href=\"http://sphinx-doc.org/\">Sphinx</a> %(sphinx_version)s.": "\u3053\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306f <a href=\"http://sphinx-doc.org/\">Sphinx</a> %(sphinx_version)s \u3067\u751f\u6210\u3057\u307e\u3057\u305f\u3002", "Expand sidebar": "\u30b5\u30a4\u30c9\u30d0\u30fc\u3092\u5c55\u958b", "From here you can search these documents. Enter your search\n words into the box below and click \"search\". Note that the search\n function will automatically search for all of the words. Pages\n containing fewer words won't appear in the result list.": "\u3053\u306e\u30da\u30fc\u30b8\u304b\u3089\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u691c\u7d22\u3067\u304d\u307e\u3059\u3002\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u4e0b\u306e\u30dc\u30c3\u30af\u30b9\u306b\u5165\u529b\u3057\u3066\u3001\u300c\u691c\u7d22\u300d\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u5165\u529b\u3055\u308c\u305f\u5168\u3066\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u542b\u3080\u30da\u30fc\u30b8\u304c\u691c\u7d22\u3055\u308c\u307e\u3059\u3002\u4e00\u90e8\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u3057\u304b\u542b\u307e\u306a\u3044\u30da\u30fc\u30b8\u306f\u691c\u7d22\u7d50\u679c\u306b\u8868\u793a\u3055\u308c\u306a\u3044\u306e\u3067\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002", "Full index on one page": "\u7dcf\u7d22\u5f15", "General Index": "\u7dcf\u5408\u7d22\u5f15", "Global Module Index": "\u30e2\u30b8\u30e5\u30fc\u30eb\u7dcf\u7d22\u5f15", "Go": "\u691c\u7d22", "Hide Search Matches": "\u691c\u7d22\u7d50\u679c\u3092\u96a0\u3059", "Index": "\u7d22\u5f15", "Index &ndash; %(key)s": "\u7d22\u5f15 &ndash; %(key)s", "Index pages by letter": "\u982d\u6587\u5b57\u5225\u7d22\u5f15", "Indices and tables:": "\u7d22\u5f15\u3068\u8868\u4e00\u89a7:", "Last updated on %(last_updated)s.": "\u6700\u7d42\u66f4\u65b0: %(last_updated)s", "Library changes": "\u30e9\u30a4\u30d6\u30e9\u30ea\u306b\u95a2\u3059\u308b\u5909\u66f4", "Navigation": "\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3", "Next topic": "\u6b21\u306e\u30c8\u30d4\u30c3\u30af\u3078", "Other changes": "\u305d\u306e\u4ed6\u306e\u5909\u66f4", "Overview": "\u6982\u8981", "Permalink to this definition": "\u3053\u306e\u5b9a\u7fa9\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af", "Permalink to this headline": "\u3053\u306e\u30d8\u30c3\u30c9\u30e9\u30a4\u30f3\u3078\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af", "Please activate JavaScript to enable the search\n functionality.": "\u691c\u7d22\u6a5f\u80fd\u3092\u4f7f\u3046\u306b\u306f JavaScript \u3092\u6709\u52b9\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002", "Preparing search...": "\u691c\u7d22\u3092\u6e96\u5099\u3057\u3066\u3044\u307e\u3059...", "Previous topic": "\u524d\u306e\u30c8\u30d4\u30c3\u30af\u3078", "Quick search": "\u30af\u30a4\u30c3\u30af\u691c\u7d22", "Search": "\u691c\u7d22", "Search Page": "\u691c\u7d22\u30da\u30fc\u30b8", "Search Results": "\u691c\u7d22\u7d50\u679c", "Search finished, found %s page(s) matching the search query.": "\u691c\u7d22\u304c\u5b8c\u4e86\u3057\u3001 %s \u30da\u30fc\u30b8\u898b\u3064\u3051\u307e\u3057\u305f\u3002", "Search within %(docstitle)s": "%(docstitle)s \u5185\u3092\u691c\u7d22", "Searching": "\u691c\u7d22\u4e2d", "Show Source": "\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u3092\u8868\u793a", "Table of Contents": "\u76ee\u6b21", "This Page": "\u3053\u306e\u30da\u30fc\u30b8", "Welcome! This is": "Welcome! This is", "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories.": "\u691c\u7d22\u3057\u305f\u6587\u5b57\u5217\u306f\u3069\u306e\u6587\u66f8\u306b\u3082\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3059\u3079\u3066\u306e\u5358\u8a9e\u304c\u6b63\u78ba\u306b\u8a18\u8ff0\u3055\u308c\u3066\u3044\u308b\u304b\u3001\u3042\u308b\u3044\u306f\u3001\u5341\u5206\u306a\u30ab\u30c6\u30b4\u30ea\u30fc\u304c\u9078\u629e\u3055\u308c\u3066\u3044\u308b\u304b\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002", "all functions, classes, terms": "\u95a2\u6570\u3001\u30af\u30e9\u30b9\u304a\u3088\u3073\u7528\u8a9e\u7dcf\u89a7", "can be huge": "\u5927\u304d\u3044\u5834\u5408\u304c\u3042\u308b\u306e\u3067\u6ce8\u610f", "last updated": "\u6700\u7d42\u66f4\u65b0", "lists all sections and subsections": "\u7ae0\uff0f\u7bc0\u4e00\u89a7", "next chapter": "\u6b21\u306e\u7ae0\u3078", "previous chapter": "\u524d\u306e\u7ae0\u3078", "quick access to all modules": "\u5168\u30e2\u30b8\u30e5\u30fc\u30eb\u65e9\u898b\u8868", "search": "\u691c\u7d22", "search this documentation": "\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u691c\u7d22", "the documentation for": "the documentation for"}, "plural_expr": "0"});

@@ -99,4 +99,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">サンプルコード</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">フルデュプレックスI/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">フルデュプレックスI/O( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">読み込みとプロット(Python配列バージョン)</a></li>

@@ -107,8 +108,13 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">読み込みとプロット(生データバージョン)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Wavファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Wavファイルの再生( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Wavファイルの再生(コールバックあり)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Wavファイルへの録音</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Wavファイルへの録音( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの読み込みと,その内容のプロット</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">プラグインによる音声ファイルの読み込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">プラグインによる音声ファイルの書き込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">プラグインによる音声ファイルの変換</a></li>

@@ -170,4 +176,2 @@ </ul>

<a href="_sources/apidoc.rst.txt" rel="nofollow"> View page source</a>

@@ -215,7 +219,13 @@ </li>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
最終更新: 2019-04-28 18:14:41
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -222,0 +232,0 @@

@@ -98,4 +98,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">サンプルコード</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">フルデュプレックスI/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">フルデュプレックスI/O( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">読み込みとプロット(Python配列バージョン)</a></li>

@@ -106,8 +107,14 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">読み込みとプロット(生データバージョン)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Wavファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Wavファイルの再生( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Wavファイルの再生(コールバックあり)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Wavファイルの再生(コールバックあり; <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Wavファイルへの録音</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Wavファイルへの録音( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの読み込みと,その内容のプロット</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">プラグインによる音声ファイルの読み込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">プラグインによる音声ファイルの書き込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">プラグインによる音声ファイルの変換</a></li>

@@ -304,6 +311,14 @@ </ul>

</li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getcompname">getcompname() (spplugin.SpFilePlugin のメソッド)</a>
<li><a href="spaudio.html#spaudio.SpAudio.getcompname">getcompname() (spaudio.SpAudio のメソッド)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getcompname">(spplugin.SpFilePlugin のメソッド)</a>
</li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getcomptype">getcomptype() (spplugin.SpFilePlugin のメソッド)</a>
</ul></li>
<li><a href="spaudio.html#spaudio.SpAudio.getcomptype">getcomptype() (spaudio.SpAudio のメソッド)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getcomptype">(spplugin.SpFilePlugin のメソッド)</a>
</li>
</ul></li>
<li><a href="spaudio.html#spaudio.SpAudio.getdevicelist">getdevicelist() (spaudio.SpAudio のメソッド)</a>

@@ -361,6 +376,14 @@ </li>

</li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getparams">getparams() (spplugin.SpFilePlugin のメソッド)</a>
<li><a href="spaudio.html#spaudio.SpAudio.getparams">getparams() (spaudio.SpAudio のメソッド)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getparams">(spplugin.SpFilePlugin のメソッド)</a>
</li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getparamstuple">getparamstuple() (spplugin.SpFilePlugin のメソッド)</a>
</ul></li>
<li><a href="spaudio.html#spaudio.SpAudio.getparamstuple">getparamstuple() (spaudio.SpAudio のメソッド)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.getparamstuple">(spplugin.SpFilePlugin のメソッド)</a>
</li>
</ul></li>
<li><a href="spplugin.html#spplugin.getplugindesc">getplugindesc() (spplugin モジュール)</a>

@@ -442,5 +465,7 @@

<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="spaudio.html#spaudio.SpAudio.open">open() (spaudio.SpAudio のメソッド)</a>
<li><a href="spaudio.html#spaudio.open">open() (spaudio モジュール)</a>
<ul>
<li><a href="spaudio.html#spaudio.SpAudio.open">(spaudio.SpAudio のメソッド)</a>
</li>
<li><a href="spplugin.html#spplugin.open">(spplugin モジュール)</a>

@@ -493,4 +518,8 @@ </li>

</li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setcomptype">setcomptype() (spplugin.SpFilePlugin のメソッド)</a>
<li><a href="spaudio.html#spaudio.SpAudio.setcomptype">setcomptype() (spaudio.SpAudio のメソッド)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setcomptype">(spplugin.SpFilePlugin のメソッド)</a>
</li>
</ul></li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setfiletype">setfiletype() (spplugin.SpFilePlugin のメソッド)</a>

@@ -520,4 +549,8 @@ </li>

<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setparams">setparams() (spplugin.SpFilePlugin のメソッド)</a>
<li><a href="spaudio.html#spaudio.SpAudio.setparams">setparams() (spaudio.SpAudio のメソッド)</a>
<ul>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setparams">(spplugin.SpFilePlugin のメソッド)</a>
</li>
</ul></li>
<li><a href="spplugin.html#spplugin.SpFilePlugin.setpos">setpos() (spplugin.SpFilePlugin のメソッド)</a>

@@ -611,7 +644,13 @@ </li>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
最終更新: 2019-04-28 18:20:55
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -618,0 +657,0 @@

@@ -98,4 +98,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">サンプルコード</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">フルデュプレックスI/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">フルデュプレックスI/O( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">読み込みとプロット(Python配列バージョン)</a></li>

@@ -106,8 +107,14 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">読み込みとプロット(生データバージョン)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Wavファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Wavファイルの再生( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Wavファイルの再生(コールバックあり)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Wavファイルの再生(コールバックあり; <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Wavファイルへの録音</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Wavファイルへの録音( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの読み込みと,その内容のプロット</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">プラグインによる音声ファイルの読み込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">プラグインによる音声ファイルの書き込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">プラグインによる音声ファイルの変換</a></li>

@@ -169,4 +176,2 @@ </ul>

<a href="_sources/index.rst.txt" rel="nofollow"> View page source</a>

@@ -202,4 +207,5 @@ </li>

<li class="toctree-l1"><a class="reference internal" href="examples.html">サンプルコード</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">フルデュプレックスI/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">フルデュプレックスI/O( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">読み込みとプロット(Python配列バージョン)</a></li>

@@ -210,8 +216,14 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">読み込みとプロット(生データバージョン)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Wavファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Wavファイルの再生( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Wavファイルの再生(コールバックあり)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Wavファイルの再生(コールバックあり; <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Wavファイルへの録音</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Wavファイルへの録音( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの読み込みと,その内容のプロット</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">プラグインによる音声ファイルの読み込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">プラグインによる音声ファイルの書き込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">プラグインによる音声ファイルの変換</a></li>

@@ -228,4 +240,4 @@ </ul>

<ul class="simple">
<li><a class="reference internal" href="genindex.html"><span class="std std-ref">索引</span></a></li>
<li><a class="reference internal" href="py-modindex.html"><span class="std std-ref">モジュール索引</span></a></li>
<li><p><a class="reference internal" href="genindex.html"><span class="std std-ref">索引</span></a></p></li>
<li><p><a class="reference internal" href="py-modindex.html"><span class="std std-ref">モジュール索引</span></a></p></li>
</ul>

@@ -253,7 +265,13 @@ </div>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
最終更新: 2019-04-28 18:20:55
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -260,0 +278,0 @@

@@ -99,4 +99,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">サンプルコード</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">フルデュプレックスI/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">フルデュプレックスI/O( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">読み込みとプロット(Python配列バージョン)</a></li>

@@ -107,8 +108,13 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">読み込みとプロット(生データバージョン)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Wavファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Wavファイルの再生( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Wavファイルの再生(コールバックあり)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Wavファイルへの録音</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Wavファイルへの録音( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの読み込みと,その内容のプロット</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">プラグインによる音声ファイルの読み込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">プラグインによる音声ファイルの書き込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">プラグインによる音声ファイルの変換</a></li>

@@ -170,4 +176,2 @@ </ul>

<a href="_sources/main.rst.txt" rel="nofollow"> View page source</a>

@@ -200,23 +204,28 @@ </li>

<ul class="simple">
<li>Ubuntu 18<ul>
<li>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_amd64.deb</a></li>
<li>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_i386.deb</a></li>
<li><p>Ubuntu 18</p>
<ul>
<li><p>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_amd64.deb</a></p></li>
<li><p>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_i386.deb</a></p></li>
</ul>
</li>
<li>Ubuntu 16<ul>
<li>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_amd64.deb</a></li>
<li>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_i386.deb</a></li>
<li><p>Ubuntu 16</p>
<ul>
<li><p>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_amd64.deb</a></p></li>
<li><p>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_i386.deb</a></p></li>
</ul>
</li>
<li>Ubuntu 14<ul>
<li>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_amd64.deb</a></li>
<li>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_i386.deb</a></li>
<li><p>Ubuntu 14</p>
<ul>
<li><p>amd64: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_amd64.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_amd64.deb</a></p></li>
<li><p>i386: <a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_i386.deb">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_i386.deb</a></p></li>
</ul>
</li>
<li>CentOS 7<ul>
<li><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-4.x86_64.rpm">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-4.x86_64.rpm</a></li>
<li><p>CentOS 7</p>
<ul>
<li><p><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-5.x86_64.rpm">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-5.x86_64.rpm</a></p></li>
</ul>
</li>
<li>CentOS 6<ul>
<li><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-4.x86_64.rpm">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-4.x86_64.rpm</a></li>
<li><p>CentOS 6</p>
<ul>
<li><p><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-5.x86_64.rpm">http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-5.x86_64.rpm</a></p></li>
</ul>

@@ -230,11 +239,19 @@ </li>

<ul class="simple">
<li>Version 0.7.14<ul>
<li>様々なファイル形式の読み書きをプラグインにより可能とする <a class="reference internal" href="spplugin.html"><span class="doc">spplugin</span></a> モジュールの追加.</li>
<li><p>Version 0.7.15</p>
<ul>
<li><p>spaudio モジュールにおける spaudio.open 関数の追加.</p></li>
<li><p>spaudio モジュールにおけるキーワード引数を用いたopen関数呼び出しのサポート.</p></li>
</ul>
</li>
<li>Version 0.7.13<ul>
<li>最初の公式リリース.</li>
<li><p>Version 0.7.14</p>
<ul>
<li><p>様々なファイル形式の読み書きをプラグインにより可能とする <a class="reference internal" href="spplugin.html"><span class="doc">spplugin</span></a> モジュールの追加.</p></li>
</ul>
</li>
<li><p>Version 0.7.13</p>
<ul>
<li><p>最初の公式リリース.</p></li>
</ul>
</li>
</ul>
</div>

@@ -245,4 +262,4 @@ <div class="section" id="build">

<ul class="simple">
<li><a class="reference external" href="http://www.swig.org/">SWIG</a></li>
<li><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/spLibs/index.html">spBase と spAudio</a></li>
<li><p><a class="reference external" href="http://www.swig.org/">SWIG</a></p></li>
<li><p><a class="reference external" href="http://www-ie.meijo-u.ac.jp/labs/rj001/spLibs/index.html">spBase と spAudio</a></p></li>
</ul>

@@ -278,7 +295,13 @@ </div>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
最終更新: 2019-04-27 21:37:24
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -285,0 +308,0 @@

@@ -97,4 +97,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">サンプルコード</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">フルデュプレックスI/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">フルデュプレックスI/O( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">読み込みとプロット(Python配列バージョン)</a></li>

@@ -105,8 +106,13 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">読み込みとプロット(生データバージョン)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Wavファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Wavファイルの再生( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Wavファイルの再生(コールバックあり)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Wavファイルへの録音</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Wavファイルへの録音( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの読み込みと,その内容のプロット</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">プラグインによる音声ファイルの読み込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">プラグインによる音声ファイルの書き込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">プラグインによる音声ファイルの変換</a></li>

@@ -168,4 +174,2 @@ </ul>

<a href="_sources/modules.rst.txt" rel="nofollow"> View page source</a>

@@ -204,7 +208,13 @@ </li>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
最終更新: 2019-04-28 18:14:41
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -211,0 +221,0 @@

@@ -104,4 +104,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">サンプルコード</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">フルデュプレックスI/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">フルデュプレックスI/O( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">読み込みとプロット(Python配列バージョン)</a></li>

@@ -112,8 +113,14 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">読み込みとプロット(生データバージョン)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Wavファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Wavファイルの再生( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Wavファイルの再生(コールバックあり)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Wavファイルの再生(コールバックあり; <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Wavファイルへの録音</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Wavファイルへの録音( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの読み込みと,その内容のプロット</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">プラグインによる音声ファイルの読み込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">プラグインによる音声ファイルの書き込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">プラグインによる音声ファイルの変換</a></li>

@@ -219,7 +226,13 @@ </ul>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
最終更新: 2019-04-28 18:20:55
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -226,0 +239,0 @@

@@ -98,4 +98,5 @@

<li class="toctree-l1"><a class="reference internal" href="examples.html">サンプルコード</a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><code class="docutils literal notranslate"><span class="pre">spaudio</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spaudio"><span class="xref std std-doc">spaudio</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o">フルデュプレックスI/O</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#fullduplex-i-o-using-with-statement-version-0-7-15">フルデュプレックスI/O( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-python-array-version">読み込みとプロット(Python配列バージョン)</a></li>

@@ -106,8 +107,14 @@ <li class="toctree-l3"><a class="reference internal" href="examples.html#read-and-plot-raw-data-version">読み込みとプロット(生データバージョン)</a></li>

<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file">Wavファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-using-with-statement-version-0-7-15">Wavファイルの再生( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback">Wavファイルの再生(コールバックあり)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-a-wav-file-with-callback-using-with-statement-version-0-7-15">Wavファイルの再生(コールバックあり; <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file">Wavファイルへの録音</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#record-to-a-wav-file-using-with-statement-version-0-7-15">Wavファイルへの録音( <code class="docutils literal notranslate"><span class="pre">with</span></code> 文を使用; バージョン0.7.15以降)</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><code class="docutils literal notranslate"><span class="pre">spplugin</span></code></a><ul>
<li class="toctree-l2"><a class="reference internal" href="examples.html#spplugin"><span class="xref std std-doc">spplugin</span></a><ul>
<li class="toctree-l3"><a class="reference internal" href="examples.html#plot-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの読み込みと,その内容のプロット</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#play-an-audio-file-contents-by-plugin">プラグインによる音声ファイルの再生</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-by-plugin-and-write-it">プラグインによる音声ファイルの読み込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#read-an-audio-file-and-write-it-by-plugin">プラグインによる音声ファイルの書き込み</a></li>
<li class="toctree-l3"><a class="reference internal" href="examples.html#convert-an-audio-file-by-plugin">プラグインによる音声ファイルの変換</a></li>

@@ -205,7 +212,13 @@ </ul>

&copy; Copyright 2017-2019 Hideki Banno
<span class="lastupdated">
最終更新: 2019-04-28 18:20:55
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
<p><img src="/cgi-bin/labs/rj001/counter/count.cgi?id=spAudio_python"></p>
</footer>

@@ -212,0 +225,0 @@

@@ -1,1 +0,1 @@

Search.setIndex({docnames:["apidoc","examples","index","main","modules","spaudio","spplugin"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.todo":1,"sphinx.ext.viewcode":1,sphinx:55},filenames:["apidoc.rst","examples.rst","index.rst","main.rst","modules.rst","spaudio.rst","spplugin.rst"],objects:{"":{spaudio:[5,0,0,"-"],spplugin:[6,0,0,"-"]},"spaudio.SpAudio":{close:[5,3,1,""],createarray:[5,3,1,""],createndarray:[5,3,1,""],createrawarray:[5,3,1,""],createrawndarray:[5,3,1,""],getarraytypecode:[5,3,1,""],getblockingmode:[5,3,1,""],getbuffersize:[5,3,1,""],getdevicelist:[5,3,1,""],getdevicename:[5,3,1,""],getframerate:[5,3,1,""],getnbuffers:[5,3,1,""],getnchannels:[5,3,1,""],getndarraydtype:[5,3,1,""],getndevices:[5,3,1,""],getrawarraytypecode:[5,3,1,""],getrawndarraydtype:[5,3,1,""],getrawsampbit:[5,3,1,""],getrawsampwidth:[5,3,1,""],getsampbit:[5,3,1,""],getsamprate:[5,3,1,""],getsampwidth:[5,3,1,""],open:[5,3,1,""],read:[5,3,1,""],readraw:[5,3,1,""],reload:[5,3,1,""],selectdevice:[5,3,1,""],setblockingmode:[5,3,1,""],setbuffersize:[5,3,1,""],setcallback:[5,3,1,""],setframerate:[5,3,1,""],setnbuffers:[5,3,1,""],setnchannels:[5,3,1,""],setsampbit:[5,3,1,""],setsamprate:[5,3,1,""],setsampwidth:[5,3,1,""],stop:[5,3,1,""],sync:[5,3,1,""],terminate:[5,3,1,""],write:[5,3,1,""],writeraw:[5,3,1,""]},"spplugin.SpFilePlugin":{appendsonginfo:[6,3,1,""],close:[6,3,1,""],copyarray2raw:[6,3,1,""],copyraw2array:[6,3,1,""],createarray:[6,3,1,""],createndarray:[6,3,1,""],createrawarray:[6,3,1,""],createrawndarray:[6,3,1,""],getarraytypecode:[6,3,1,""],getcompname:[6,3,1,""],getcomptype:[6,3,1,""],getfiledesc:[6,3,1,""],getfilefilter:[6,3,1,""],getfiletype:[6,3,1,""],getframerate:[6,3,1,""],getlength:[6,3,1,""],getmark:[6,3,1,""],getmarkers:[6,3,1,""],getnchannels:[6,3,1,""],getndarraydtype:[6,3,1,""],getnframes:[6,3,1,""],getparams:[6,3,1,""],getparamstuple:[6,3,1,""],getplugindesc:[6,3,1,""],getpluginid:[6,3,1,""],getplugininfo:[6,3,1,""],getpluginname:[6,3,1,""],getpluginversion:[6,3,1,""],getrawarraytypecode:[6,3,1,""],getrawndarraydtype:[6,3,1,""],getrawsampbit:[6,3,1,""],getrawsampwidth:[6,3,1,""],getsampbit:[6,3,1,""],getsamprate:[6,3,1,""],getsampwidth:[6,3,1,""],getsonginfo:[6,3,1,""],open:[6,3,1,""],read:[6,3,1,""],readraw:[6,3,1,""],rewind:[6,3,1,""],setcomptype:[6,3,1,""],setfiletype:[6,3,1,""],setframerate:[6,3,1,""],setlength:[6,3,1,""],setmark:[6,3,1,""],setnchannels:[6,3,1,""],setnframes:[6,3,1,""],setparams:[6,3,1,""],setpos:[6,3,1,""],setsampbit:[6,3,1,""],setsamprate:[6,3,1,""],setsampwidth:[6,3,1,""],setsonginfo:[6,3,1,""],tell:[6,3,1,""],write:[6,3,1,""],writeraw:[6,3,1,""]},spaudio:{DeviceError:[5,1,1,""],DriverError:[5,1,1,""],Error:[5,1,1,""],SpAudio:[5,2,1,""],callbacksignature:[5,4,1,""],getdriverdevicename:[5,4,1,""],getdriverlist:[5,4,1,""],getdrivername:[5,4,1,""],getndriverdevices:[5,4,1,""],getndrivers:[5,4,1,""]},spplugin:{BogusFileError:[6,1,1,""],Error:[6,1,1,""],FileError:[6,1,1,""],FileTypeError:[6,1,1,""],NChannelsError:[6,1,1,""],SampleBitError:[6,1,1,""],SampleRateError:[6,1,1,""],SpFilePlugin:[6,2,1,""],SuitableNotFoundError:[6,1,1,""],TotalLengthRequiredError:[6,1,1,""],WrongPluginError:[6,1,1,""],getplugindesc:[6,4,1,""],getplugininfo:[6,4,1,""],open:[6,4,1,""]}},objnames:{"0":["py","module","Python \u30e2\u30b8\u30e5\u30fc\u30eb"],"1":["py","exception","Python \u4f8b\u5916"],"2":["py","class","Python \u30af\u30e9\u30b9"],"3":["py","method","Python \u30e1\u30bd\u30c3\u30c9"],"4":["py","function","Python \u306e\u95a2\u6570"]},objtypes:{"0":"py:module","1":"py:exception","2":"py:class","3":"py:method","4":"py:function"},terms:{"!/":1,"% (":1,"%.":1,"%d":[1,6],"%s":1,"')":[1,5,6],"',":1,"'.":1,"':":[1,6],"']":1,"'__":[1,6],"'filetype":6,"'length":6,"'nchannels":6,"'none":6,"'not":6,"'r":[5,6],"'ro":5,"'sampbit":6,"'samprate":6,"'songinfo":6,"'w":[5,6],"'wo":5,"('":[1,5,6],"((":[1,6],"()":[1,5,6],"(audio":1,"(b":[1,5],"(buf":1,"(centos":3,"(decodebytes":[1,6],"(filename":[1,6],"(inputfile":1,"(nchannels":[1,6],"(nframes":[1,6],"(nloop":[1,5],"(outputfile":1,"(params":1,"(paramstuple":1,"(position":1,"(samprate":1,"(sampwidth":1,"(spaudio":1,"(sys":[1,6],"(ubuntu":3,"(x":[1,6],"(y":[1,6],")'":[1,6],"))":[1,6],"),":1,").":[],"):":[1,5,6],"*'":[],"*(":6,"*-":1,"*.":6,"*args":5,", '":1,", file":[1,6],", i":1,", params":1,", true":1,"--":[5,6],"-based":[],"-ie":3,"-readable":[],"-u":3,".%":1,".ac":3,".argv":[1,6],".array":[5,6],".basename":[1,6],".byteorder":[],".byteswap":[],".close":[1,5],".conda":[],".copyarray":1,".createarray":1,".createndarray":[1,6],".createrawarray":1,".createrawndarray":1,".error":[5,6],".g":[],".getframerate":1,".getnchannels":[1,6],".getnframes":[1,6],".getparams":1,".getparamstuple":1,".getplugindesc":1,".getpluginid":1,".getpluginversion":1,".getsampbit":[1,6],".getsamprate":[1,6],".getsampwidth":1,".html":3,".io":[],".jp":3,".linspace":[1,6],".meijo":3,".ndarray":[5,6],".open":[1,5,6],".output":1,".path":[1,6],".plot":[1,6],".py":1,".pyplot":[1,6],".read":[1,6],".readframes":1,".readraw":[1,5],".resize":[1,6],".sampwidth":1,".setbuffersize":[1,5],".setcallback":1,".setnchannels":[1,5],".setparams":1,".setsamprate":[1,5],".setsampwidth":1,".show":[1,6],".spaudio":[1,5],".spfileplugin":[],".splitext":1,".stderr":[1,6],".stdout":1,".write":1,".writeframes":1,".writeraw":[1,5],".xlabel":[1,6],".xlim":[1,6],".ylabel":[1,6],"/bin":1,"/deb":3,"/el6":3,"/el7":3,"/en":3,"/env":1,"/index":3,"/ja":3,"/labs":3,"/latest":[],"/miniconda":[],"/o":2,"/python":3,"/rj":3,"/rpm":3,"/sample":[],"/spaudio":3,"/ubuntu":3,"2array":6,"2f":1,"2raw":[1,6],"33":[5,6],"3f":1,"8bit":[1,6],":/":3,":doc":[],":func":[],"</":[],"<=":[1,6],"= '":[],"=false":[5,6],"=none":[5,6],"=obigendian":1,"=params":1,"=sys":[1,6],"=true":6,"['":1,"[:":[1,6],"\\r":1,"\u3042\u308a":[2,5],"\u3042\u308b":6,"\u3044\u308b":[3,6],"\u3044\u308f\u3086\u308b":[5,6],"\u304a\u3051\u308b":[5,6],"\u304a\u308a":[5,6],"\u304b\u3089":[5,6],"\u304c\u3042\u308a":[5,6],"\u304f\u3060":3,"\u3053\u3061\u3089":[3,6],"\u3053\u3068":[3,5,6],"\u3053\u306e":[3,5,6],"\u3053\u308c":[3,5],"\u3053\u308c\u3089":[5,6],"\u3055\u3044":3,"\u3059\u308b":[3,5,6],"\u305a\u308c":[3,5],"\u305d\u306e":2,"\u305f\u3044":[3,5,6],"\u305f\u304f":5,"\u305f\u3060\u3057":[],"\u305f\u3081":[5,6],"\u3060\u3055\u3044":[3,5,6],"\u3067\u304d":[3,6],"\u3067\u3057\u304b":5,"\u3067\u3059":[2,3,5,6],"\u3067\u3082":6,"\u3068\u3057\u3066":6,"\u3068\u3059":[],"\u306a\u3044":[3,5,6],"\u306a\u304a":3,"\u306a\u304b\u3063":6,"\u306a\u304f":5,"\u306a\u3063":6,"\u306a\u3069":[3,6],"\u306a\u308a":[3,5,6],"\u306a\u308b":[5,6],"\u306b\u3066":5,"\u306b\u3088\u3063\u3066":5,"\u306b\u3088\u308a":[3,6],"\u306b\u3088\u308b":[2,5],"\u306b\u5bfe\u5fdc\u4ed8\u3051":5,"\u306e\u3044":3,"\u306e\u3044\u305a\u308c\u304b":6,"\u306e\u3067":[3,5,6],"\u306e\u306b\u5bfe\u3057":6,"\u306e\u307f":6,"\u306f\u3044":5,"\u306f\u3058\u3081":2,"\u307e\u3059":[3,5,6],"\u307e\u305b":[5,6],"\u307e\u305f":[3,6],"\u3082\u3057":[3,6],"\u3082\u3057\u304f":6,"\u3088\u3046":6,"\u3089\u308c":[5,6],"\u3089\u308c\u308b":[5,6],"\u308c\u308b":[5,6],"\u30a1\u30a4\u30eb":[],"\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9":[5,6],"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb":2,"\u30a8\u30f3\u30c7\u30a3\u30a2\u30f3":6,"\u30aa\u30d5\u30a3\u30b7\u30e3\u30eb\u30b5\u30a4\u30c8":2,"\u30aa\u30d6\u30b8\u30a7\u30af\u30c8":6,"\u30aa\u30d7\u30b7\u30e7\u30f3":6,"\u30aa\u30fc\u30c7\u30a3\u30aa":[2,5],"\u30aa\u30fc\u30c7\u30a3\u30aa\u30c7\u30d0\u30a4\u30b9":[3,5],"\u30aa\u30fc\u30c7\u30a3\u30aa\u30c9\u30e9\u30a4\u30d0\u30fc":5,"\u30ad\u30fc":6,"\u30af\u30e9\u30b9":[5,6],"\u30b3\u30d4\u30fc":6,"\u30b3\u30de\u30f3\u30c9":3,"\u30b3\u30f3\u30d3\u30cd\u30fc\u30b7\u30e7\u30f3":5,"\u30b3\u30fc\u30c9":[5,6],"\u30b3\u30fc\u30eb\u30d0\u30c3\u30af":[2,5],"\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u30bf\u30a4\u30d7":5,"\u30b5\u30a4\u30ba":[5,6],"\u30b5\u30dd\u30fc\u30c8":[3,5,6],"\u30b5\u30f3\u30d7\u30eb":[5,6],"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9":2,"\u30b5\u30f3\u30d7\u30eb\u30ec\u30fc\u30c8":[5,6],"\u30b7\u30b0\u30cd\u30c1\u30e3":5,"\u30bd\u30f3\u30b0":6,"\u30bd\u30fc\u30b9":[5,6],"\u30c1\u30e3\u30cd\u30eb":[5,6],"\u30c1\u30e3\u30f3\u30cd\u30eb":3,"\u30c7\u30b3\u30fc\u30c9":6,"\u30c7\u30d0\u30a4\u30b9":5,"\u30c7\u30d5\u30a9\u30eb\u30c8":5,"\u30c7\u30fc\u30bf":[5,6],"\u30c7\u30fc\u30bf\u30d0\u30fc\u30b8\u30e7\u30f3":2,"\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8":2,"\u30c9\u30e9\u30a4\u30d0\u30fc":5,"\u30ce\u30f3\u30d6\u30ed\u30c3\u30ad\u30f3\u30b0\u30e2\u30fc\u30c9":5,"\u30d0\u30a4\u30c8":[5,6],"\u30d0\u30a4\u30ca\u30ea\u30fc\u30d1\u30c3\u30b1\u30fc\u30b8":3,"\u30d0\u30c3\u30d5\u30a1":[5,6],"\u30d0\u30c3\u30d5\u30a1\u30b5\u30a4\u30ba":5,"\u30d0\u30fc\u30b8\u30e7\u30f3":[2,3,6],"\u30d1\u30c3\u30b1\u30fc\u30b8":[2,3],"\u30d1\u30e9\u30e1\u30fc\u30bf":[5,6],"\u30d3\u30c3\u30b0\u30a8\u30f3\u30c7\u30a3\u30a2\u30f3":6,"\u30d3\u30c3\u30c8":[5,6],"\u30d3\u30c3\u30c8\u30c7\u30fc\u30bf":6,"\u30d3\u30eb\u30c9":2,"\u30d5\u30a1\u30a4\u30eb":[2,3,6],"\u30d5\u30a1\u30a4\u30eb\u30d5\u30a3\u30eb\u30bf\u30fc":6,"\u30d5\u30eb\u30c7\u30e5\u30d7\u30ec\u30c3\u30af\u30b9":3,"\u30d5\u30eb\u30c7\u30e5\u30d7\u30ec\u30c3\u30af\u30b9\u30aa\u30fc\u30c7\u30a3\u30aa":5,"\u30d5\u30eb\u30c7\u30e5\u30d7\u30ec\u30c3\u30af\u30b9i":2,"\u30d5\u30ec\u30fc\u30e0":[5,6],"\u30d6\u30ed\u30c3\u30ad\u30f3\u30b0\u30e2\u30fc\u30c9":5,"\u30d7\u30e9\u30b0\u30a4\u30f3":[2,3,6],"\u30d7\u30ed\u30c3\u30c8":[2,6],"\u30d9\u30fc\u30b9\u30af\u30e9\u30b9":[5,6],"\u30da\u30fc\u30b8":3,"\u30e2\u30b8\u30e5\u30fc\u30eb":[0,2,3,4],"\u30e2\u30fc\u30c9":[5,6],"\u30e9\u30a4\u30d6\u30e9\u30ea":[3,6],"\u30ea\u30b9\u30c8":5,"\u30ea\u30ea\u30fc\u30b9":3,"\u4e0a\u8a18":6,"\u4e0b\u8a18":[5,6],"\u4e0d\u9069\u5207":6,"\u4e0e\u3048\u308b":6,"\u4e57\u3058":[5,6],"\u4e92\u63db":6,"\u4ed8\u304d":6,"\u4ee5\u4e0a":5,"\u4ee5\u4e0b":3,"\u4f4d\u7f6e":[5,6],"\u4f5c\u6210":[5,6],"\u4f7f\u3044":3,"\u4f7f\u3046":3,"\u4f7f\u7528":[3,5,6],"\u4f8b\u3048":6,"\u4f8b\u5916":[5,6],"\u4f9d\u5b58":5,"\u4fc2\u6570":[5,6],"\u4fdd\u6301":[5,6],"\u505c\u6b62":5,"\u5148\u982d":6,"\u5165\u51fa":[2,3,5,6],"\u5165\u529b":6,"\u5168\u3066":6,"\u5168\u4f53":6,"\u516c\u5f0f":3,"\u5185\u5bb9":[2,6],"\u5185\u90e8":6,"\u518d\u751f":2,"\u518d\u8aad\u8fbc":5,"\u51e6\u7406":5,"\u51fa\u529b":6,"\u5229\u7528":3,"\u53ca\u3073":6,"\u53d6\u5f97":[5,6],"\u53ef\u5909":5,"\u53ef\u80fd":[3,6],"\u540c\u3058":6,"\u540c\u671f":5,"\u540d\u524d":[5,6],"\u542b\u3080":6,"\u547c\u3073\u51fa\u3057":5,"\u547c\u3073\u51fa\u3059":6,"\u554f\u984c":[5,6],"\u5727\u7e2e":6,"\u578b\u914d":[5,6],"\u57fa\u3065\u304f":[2,5,6],"\u57fa\u672c":[5,6],"\u5834\u5408":[3,5,6],"\u5909\u63db":[2,6],"\u5909\u6570":6,"\u5931\u6557":[5,6],"\u5b9f\u73fe":5,"\u5b9f\u884c":3,"\u5bfe\u5fdc":[5,6],"\u5c02\u7528":5,"\u5c65\u6b74":2,"\u5f15\u6570":[5,6],"\u5f62\u5f0f":[3,6],"\u5fc5\u8981":[3,5,6],"\u5fdc\u3058":[5,6],"\u60c5\u5831":6,"\u6210\u529f":[5,6],"\u623b\u308a\u5024":[5,6],"\u6301\u3064":[5,6],"\u6307\u5b9a":[3,5,6],"\u6319\u3052":6,"\u63a5\u982d":5,"\u63d0\u4f9b":[],"\u6587\u5b57":[5,6],"\u6587\u5b57\u5217":[5,6],"\u65b0\u305f":[],"\u65b0\u898f":6,"\u65e5\u672c\u8a9e":3,"\u6642\u9593":6,"\u66f4\u65b0":2,"\u66f8\u304d":3,"\u66f8\u304d\u8fbc\u307e":[5,6],"\u66f8\u304d\u8fbc\u307f":[5,6],"\u66f8\u304d\u8fbc\u3080":[5,6],"\u6700\u521d":3,"\u671f\u5316":5,"\u691c\u7d22":[],"\u69d8\u3005":[3,6],"\u6a19\u6e96":6,"\u6ce2\u5f62":6,"\u6ce8\u610f\u304f":[3,5,6],"\u6e21\u3059":5,"\u7121\u8996":6,"\u73fe\u5728":[5,6],"\u74b0\u5883":5,"\u751f\u30d0\u30c3\u30d5\u30a1":[5,6],"\u751fndarray":2,"\u7528\u3044":6,"\u7528\u3044\u308b":6,"\u7528\u610f":[3,5,6],"\u7570\u306a\u308a":[5,6],"\u7570\u5e38":6,"\u767a\u751f":6,"\u76ee\u6b21":2,"\u77ed\u3044":6,"\u79fb\u52d5":6,"\u79fb\u52d5\u5148":6,"\u7b26\u53f7":6,"\u7d42\u4e86":5,"\u8981\u6c42":6,"\u898b\u3064":6,"\u898b\u3066":3,"\u8a2d\u5b9a":[5,6],"\u8a73\u7d30":6,"\u8aac\u660e":[5,6],"\u8aad\u307f":3,"\u8aad\u307f\u8fbc\u307f":[2,5,6],"\u8aad\u307f\u8fbc\u3080":[5,6],"\u8efd\u304f":5,"\u8fd4\u3057":5,"\u8fd4\u308a":[5,6],"\u8ffd\u52a0":[3,6],"\u9069\u5207":6,"\u9078\u629e":5,"\u914d\u5217":[2,5,6],"\u91cd\u307f":[5,6],"\u9577\u3055":[5,6],"\u9589\u3058":[5,6],"\u958b\u304d":[5,6],"\u958b\u304f":6,"\u958b\u304f\u969b":[5,6],"\u958b\u3051":5,"\u95a2\u6570":[5,6],"\u97f3\u58f0":[2,6],"\uff08length":[5,6],"\uff09\uff0c":5,"\uff09\uff0e":[5,6],"\uff0c\"":3,"\uff0c\u65b0\u305f":6,"\uff0caifc":6,"\uff0caiff":[3,6],"\uff0calac":[3,6],"\uff0cdecodes":6,"\uff0cdpkg":[],"\uff0cflac":[3,6],"\uff0cmp3":[3,6],"\uff0cpcm":6,"\uff0cpip":[],"\uff0craw":[3,6],"\uff0csunau":6,"\uff0cwav":3,"\uff0cwave":6,"\uff0e\u307e\u305f":5,"\uff0eoutput":[],"\uff0esampbit":[5,6],"\uff0ewav":6,"]'":[1,6],"])":[1,6],"],":1,"`_":[],"`miniconda":[],"char":[5,6],"class":[5,6],"double":[5,6],"else":1,"false":[1,5,6],"float":[1,5,6],"for":[1,5,6],"function":[],"if":[1,6],"import":[1,5,6],"in":[1,5,6],"int":[5,6],"new":[],"return":1,"short":[],"this":[],"true":[1,5,6],"while":[],"with":[1,6],"~spplugin":[],__:[1,6],_buffer:[1,5],_callback:[1,5],_name:[],_or:[1,6],_position:[1,5],_s:1,_signed:[1,6],above:[],acceptable:[],accepted:[],afc:1,after:[],aif:1,aifc:[1,6],aiff:1,alac:[],all:[],also:[],amd:3,amplitude:[1,6],an:[],anaconda:3,and:[],api:2,appends:[],appendsonginfo:6,apt:3,archive:3,are:[],args:[1,5],arguments:[],array:[5,6],as:[1,6],associated:[],au:1,audio:5,bannohideki:3,base:[],based:[],be:[],before:[],beginning:[],big:[],bigendian:[1,6],bit:[],bits:[],bogus:[],bogusfileerror:6,bool:[5,6],buf:1,buffer:1,buffersize:5,by:6,bytearray:[1,5,6],bytes:[5,6],callable:5,callbacksignature:5,called:[],calltype:5,can:[],cannot:[],cbdata:[1,5],cbtype:1,centos:3,channels:[],close:[5,6],closes:[],code:[],coding:1,compatibility:[],compatible:[],compname:6,compressed:6,compression:[],comptype:6,conda:3,contains:[],contents:[],convbyplugin:1,convert:[],converted:[],copies:[],copyarray:6,copyraw:6,createarray:[5,6],createndarray:[5,6],createrawarray:[5,6],createrawndarray:[5,6],creates:[],current:[],currently:[],data:[5,6],deb:3,decodebytes:[1,6],decoded:[],decodes:[],def:[1,6],described:[],description:[],detailed:[],deviceerror:5,deviceindex:5,dict:6,difference:[],docs:[],does:[],dpkg:3,driver:[],drivererror:5,drivername:5,dtype:[5,6],duration:[1,6],elif:1,encodestr:6,entries:[],error:[5,6],exception:[5,6],expect:[],expects:[],factor:[],file:1,filedesc:1,fileerror:6,filefilter:1,filename:[1,6],filetype:[1,6],filetypeerror:6,filter:[],find:[],flac:[],floatflag:[5,6],following:[],format:1,formats:[],found:[],framerate:6,frames:[],from:[],func:5,functions:[],generated:[],getarraytypecode:[5,6],getblockingmode:5,getbuffersize:5,getcompname:6,getcomptype:6,getdevicelist:5,getdevicename:5,getdriverdevicename:5,getdriverlist:5,getdrivername:5,getfiledesc:6,getfilefilter:6,getfiletype:6,getframerate:[5,6],getlength:6,getmark:6,getmarkers:6,getnbuffers:5,getnchannels:[5,6],getndarraydtype:[5,6],getndevices:5,getndriverdevices:5,getndrivers:5,getnframes:6,getparams:6,getparamstuple:6,getplugindesc:6,getpluginid:6,getplugininfo:6,getpluginname:6,getpluginversion:6,getrawarraytypecode:[5,6],getrawndarraydtype:[5,6],getrawsampbit:[5,6],getrawsampwidth:[5,6],gets:[],getsampbit:[5,6],getsamprate:[5,6],getsampwidth:[5,6],getsonginfo:6,has:[],http:3,https:[],human:[],id:6,identical:[],ignored:[],important:[],inarray:6,including:[],index:5,information:[],input:1,inputfile:1,install:3,instance:[],internal:[],into:6,iotest:1,is:1,it:[],keys:[],len:[1,6],length:[1,5,6],libraries:[],library:[],linux:3,little:[],main:[1,6],matplotlib:[1,6],means:[],microsoft:6,miniconda:3,mode:[5,6],module:[],more:[],mp3:[],multiplied:[],must:[],myaudiocb:1,name:[1,6],namedtuple:6,nbuffers:5,nchannels:[1,5,6],nchannelserror:6,ndarray:[2,5,6],needswap:[],nframes:[1,5,6],nframesflag:[5,6],nloop:[1,5],no:[],normalized:[1,6],not:1,note:[],nothing:[],np:[1,6],nread:[1,6],number:[],numpy:[2,5,6],nwrite:1,obigendian:1,object:[5,6],objects:6,obtained:6,of:[],ofilebody:1,ofileext:1,ogg:[3,6],on:[],one:[],open:[5,6],opening:[],opens:[],optional:[],or:[1,5,6],os:[1,6],otherwise:[],output:[1,5],outputfile:1,parameter:[],parameters:[],params:[1,6],paramstuple:1,pcm:6,pf:[1,6],pip:3,playfromwav:1,playfromwavcb:1,plot:[],plotfilebyplugin:[1,6],plotting:[],plt:[1,6],plugin:1,pluginname:6,pos:6,position:1,print:[1,6],problems:[],provided:[],pulseaudio:3,pulsesimple:3,python:[3,5,6],quit:[1,6],raise:1,raised:[],range:[1,5,6],rate:[],raw:1,rawdata:6,rb:1,read:[5,6],reading:[],readndarray:1,readplot:1,readplotraw:1,readraw:[5,6],readrawndarray:1,reads:[],receive:[],reload:5,required:[],returned:[],returns:[],rewind:6,rewinds:[],ro:1,rpm:3,runtimeerror:1,sampbit:[1,5,6],sample:[],samplebiterror:6,samplerateerror:6,samprate:[1,5,6],sampwidth:[1,5,6],seek:[],seeks:[],selectdevice:5,send:[],set:6,setblockingmode:5,setbuffersize:5,setcallback:5,setcomptype:6,setfiletype:6,setframerate:[5,6],setlength:6,setmark:6,setnbuffers:5,setnchannels:[5,6],setnframes:6,setparams:6,setpos:6,sets:[],setsampbit:[5,6],setsamprate:[5,6],setsampwidth:[5,6],setsonginfo:6,settings:[],several:[],sf:1,similar:[],size:1,sndlib:1,song:[],songinfo:[1,6],sound:[],spaudio:[0,3],spbase:3,specified:[],spfileplugin:6,splibs:3,spplugin:[0,2,3,4],standard:[],stop:5,store:[],str:[1,5,6],string:[5,6],successful:[],such:[],suitable:[],suitablenotfounderror:6,sunau:1,supported:1,supports:[],swig:3,sync:5,sys:[1,6],tell:6,terminate:5,that:[],the:[],time:[1,6],to:[],total:1,totallengthrequirederror:6,type:1,ubuntu:3,usage:[1,6],use:[],used:[],using:[],usr:1,utf:1,version:[1,3],vorbis:[3,6],wav:[2,6],wave:[1,6],waveform:[],wb:1,weight:[5,6],weighting:[],wf:1,when:[],which:[],whose:[],will:[],wo:1,write:[5,6],writefrombyplugin:1,writeraw:[5,6],writes:[],writing:[],written:[],wrong:[],wrongpluginerror:6,www:3,you:[],yum:3},titles:["API\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8","\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9","spAudio for Python","\u306f\u3058\u3081\u306b","spAudio","spaudio\u30e2\u30b8\u30e5\u30fc\u30eb","spplugin\u30e2\u30b8\u30e5\u30fc\u30eb"],titleterms:{"/o":1,"\u3042\u308a":1,"\u305d\u306e":1,"\u306b\u3088\u308b":1,"\u306f\u3058\u3081":3,"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb":3,"\u30aa\u30d5\u30a3\u30b7\u30e3\u30eb\u30b5\u30a4\u30c8":3,"\u30b3\u30fc\u30eb\u30d0\u30c3\u30af":1,"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9":1,"\u30c7\u30fc\u30bf\u30d0\u30fc\u30b8\u30e7\u30f3":1,"\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8":0,"\u30d0\u30fc\u30b8\u30e7\u30f3":1,"\u30d3\u30eb\u30c9":3,"\u30d5\u30a1\u30a4\u30eb":1,"\u30d5\u30eb\u30c7\u30e5\u30d7\u30ec\u30c3\u30af\u30b9i":1,"\u30d7\u30e9\u30b0\u30a4\u30f3":1,"\u30d7\u30ed\u30c3\u30c8":1,"\u30e2\u30b8\u30e5\u30fc\u30eb":[5,6],"\u5185\u5bb9":1,"\u518d\u751f":1,"\u5909\u63db":1,"\u5c65\u6b74":3,"\u66f4\u65b0":3,"\u751fndarray":1,"\u7d22\u5f15":2,"\u8aad\u307f\u8fbc\u307f":1,"\u914d\u5217":1,"\u97f3\u58f0":1,"for":2,an:[],and:[],api:0,audio:[],by:[],contents:[],convert:[],example:[],file:[],it:[],module:[],ndarray:1,numpy:1,plot:[],plugin:[],python:[1,2],read:[],spaudio:[1,2,4,5],spplugin:[1,6],wav:1,write:[]}})
Search.setIndex({docnames:["apidoc","examples","index","main","modules","spaudio","spplugin"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.todo":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["apidoc.rst","examples.rst","index.rst","main.rst","modules.rst","spaudio.rst","spplugin.rst"],objects:{"":{spaudio:[5,0,0,"-"],spplugin:[6,0,0,"-"]},"spaudio.SpAudio":{close:[5,3,1,""],createarray:[5,3,1,""],createndarray:[5,3,1,""],createrawarray:[5,3,1,""],createrawndarray:[5,3,1,""],getarraytypecode:[5,3,1,""],getblockingmode:[5,3,1,""],getbuffersize:[5,3,1,""],getcompname:[5,3,1,""],getcomptype:[5,3,1,""],getdevicelist:[5,3,1,""],getdevicename:[5,3,1,""],getframerate:[5,3,1,""],getnbuffers:[5,3,1,""],getnchannels:[5,3,1,""],getndarraydtype:[5,3,1,""],getndevices:[5,3,1,""],getparams:[5,3,1,""],getparamstuple:[5,3,1,""],getrawarraytypecode:[5,3,1,""],getrawndarraydtype:[5,3,1,""],getrawsampbit:[5,3,1,""],getrawsampwidth:[5,3,1,""],getsampbit:[5,3,1,""],getsamprate:[5,3,1,""],getsampwidth:[5,3,1,""],open:[5,3,1,""],read:[5,3,1,""],readraw:[5,3,1,""],reload:[5,3,1,""],selectdevice:[5,3,1,""],setblockingmode:[5,3,1,""],setbuffersize:[5,3,1,""],setcallback:[5,3,1,""],setcomptype:[5,3,1,""],setframerate:[5,3,1,""],setnbuffers:[5,3,1,""],setnchannels:[5,3,1,""],setparams:[5,3,1,""],setsampbit:[5,3,1,""],setsamprate:[5,3,1,""],setsampwidth:[5,3,1,""],stop:[5,3,1,""],sync:[5,3,1,""],terminate:[5,3,1,""],write:[5,3,1,""],writeraw:[5,3,1,""]},"spplugin.SpFilePlugin":{appendsonginfo:[6,3,1,""],close:[6,3,1,""],copyarray2raw:[6,3,1,""],copyraw2array:[6,3,1,""],createarray:[6,3,1,""],createndarray:[6,3,1,""],createrawarray:[6,3,1,""],createrawndarray:[6,3,1,""],getarraytypecode:[6,3,1,""],getcompname:[6,3,1,""],getcomptype:[6,3,1,""],getfiledesc:[6,3,1,""],getfilefilter:[6,3,1,""],getfiletype:[6,3,1,""],getframerate:[6,3,1,""],getlength:[6,3,1,""],getmark:[6,3,1,""],getmarkers:[6,3,1,""],getnchannels:[6,3,1,""],getndarraydtype:[6,3,1,""],getnframes:[6,3,1,""],getparams:[6,3,1,""],getparamstuple:[6,3,1,""],getplugindesc:[6,3,1,""],getpluginid:[6,3,1,""],getplugininfo:[6,3,1,""],getpluginname:[6,3,1,""],getpluginversion:[6,3,1,""],getrawarraytypecode:[6,3,1,""],getrawndarraydtype:[6,3,1,""],getrawsampbit:[6,3,1,""],getrawsampwidth:[6,3,1,""],getsampbit:[6,3,1,""],getsamprate:[6,3,1,""],getsampwidth:[6,3,1,""],getsonginfo:[6,3,1,""],open:[6,3,1,""],read:[6,3,1,""],readraw:[6,3,1,""],rewind:[6,3,1,""],setcomptype:[6,3,1,""],setfiletype:[6,3,1,""],setframerate:[6,3,1,""],setlength:[6,3,1,""],setmark:[6,3,1,""],setnchannels:[6,3,1,""],setnframes:[6,3,1,""],setparams:[6,3,1,""],setpos:[6,3,1,""],setsampbit:[6,3,1,""],setsamprate:[6,3,1,""],setsampwidth:[6,3,1,""],setsonginfo:[6,3,1,""],tell:[6,3,1,""],write:[6,3,1,""],writeraw:[6,3,1,""]},spaudio:{DeviceError:[5,1,1,""],DriverError:[5,1,1,""],Error:[5,1,1,""],SpAudio:[5,2,1,""],callbacksignature:[5,4,1,""],getdriverdevicename:[5,4,1,""],getdriverlist:[5,4,1,""],getdrivername:[5,4,1,""],getndriverdevices:[5,4,1,""],getndrivers:[5,4,1,""],open:[5,4,1,""]},spplugin:{BogusFileError:[6,1,1,""],Error:[6,1,1,""],FileError:[6,1,1,""],FileTypeError:[6,1,1,""],NChannelsError:[6,1,1,""],SampleBitError:[6,1,1,""],SampleRateError:[6,1,1,""],SpFilePlugin:[6,2,1,""],SuitableNotFoundError:[6,1,1,""],TotalLengthRequiredError:[6,1,1,""],WrongPluginError:[6,1,1,""],getplugindesc:[6,4,1,""],getplugininfo:[6,4,1,""],open:[6,4,1,""]}},objnames:{"0":["py","module","Python \u30e2\u30b8\u30e5\u30fc\u30eb"],"1":["py","exception","Python \u4f8b\u5916"],"2":["py","class","Python \u30af\u30e9\u30b9"],"3":["py","method","Python \u30e1\u30bd\u30c3\u30c9"],"4":["py","function","Python \u306e\u95a2\u6570"]},objtypes:{"0":"py:module","1":"py:exception","2":"py:class","3":"py:method","4":"py:function"},terms:{"!/":1,"% (":1,"%.":1,"%d":[1,6],"%s":1,"'(":1,"')":[1,6],"',":[1,5],"'.":1,"':":[1,6],"']":1,"'__":[1,6],"'blockingmode":5,"'buffersize":5,"'compname":5,"'comptype":5,"'filetype":6,"'length":6,"'nbuffers":5,"'nchannels":[5,6],"'none":[5,6],"'not":[5,6],"'r":[5,6],"'ro":5,"'rw":5,"'sampbit":[5,6],"'samprate":[5,6],"'songinfo":6,"'w":[5,6],"'wo":5,"('":[1,5,6],"((":[1,6],"()":[1,5,6],"(args":1,"(audio":1,"(b":[1,5],"(buf":1,"(centos":3,"(decodebytes":[1,5,6],"(description":1,"(duration":1,"(filename":[1,6],"(inputfile":1,"(nchannels":[1,5,6],"(nframes":[1,6],"(nloop":[1,5],"(outputfile":1,"(params":1,"(paramstuple":1,"(position":1,"(samprate":1,"(sampwidth":1,"(songinfo":1,"(spaudio":1,"(sys":[1,6],"(true":1,"(ubuntu":3,"(x":[1,6],"(y":[1,6],")'":[1,6],"))":[1,6],"),":1,"):":[1,5,6],"*(":6,"*-":1,"*.":6,"*args":5,"+)":[],", '":1,", file":[1,6],", i":1,", params":1,", true":1,"--":[1,5,6],"-ie":3,"-readable":[],"-u":3,".%":1,".ac":3,".add":1,".argumentparser":1,".argv":[1,6],".array":[5,6],".basename":[1,6],".close":1,".compname":1,".comptype":1,".copyarray":1,".copyraw":1,".createarray":1,".createndarray":[1,6],".createrawarray":1,".createrawndarray":1,".duration":1,".error":[5,6],".filename":1,".framerate":1,".getfiledesc":1,".getfilefilter":1,".getfiletype":1,".getframerate":1,".getnchannels":[1,6],".getnframes":[1,6],".getparams":1,".getparamstuple":1,".getplugindesc":1,".getpluginid":1,".getpluginversion":1,".getsampbit":[1,6],".getsamprate":[1,6],".getsampwidth":1,".getsonginfo":1,".html":3,".jp":3,".linspace":[1,6],".meijo":3,".nchannels":1,".ndarray":[5,6],".nframes":1,".open":[1,3,5,6],".output":1,".parse":1,".path":[1,6],".plot":[1,6],".py":1,".pyplot":[1,6],".read":[1,6],".readframes":1,".readraw":[1,5],".resize":[1,6],".samprate":1,".sampwidth":1,".setbuffersize":1,".setcallback":1,".setframerate":1,".setnchannels":1,".setnframes":1,".setparams":1,".setsamprate":1,".setsampwidth":1,".show":[1,6],".spaudio":1,".splitext":1,".stderr":[1,6],".stdout":1,".write":1,".writeframes":1,".writeraw":[1,5],".xlabel":[1,6],".xlim":[1,6],".ylabel":[1,6],"/bin":1,"/deb":3,"/el6":3,"/el7":3,"/en":3,"/env":1,"/index":3,"/ja":3,"/labs":3,"/o":2,"/python":3,"/rj":3,"/rpm":3,"/sample":[],"/spaudio":3,"/ubuntu":3,"2array":[1,6],"2f":1,"2raw":[1,6],"33":[5,6],"3f":1,"4th":[],"8bit":[1,6],":/":3,"<=":[1,6],"='":1,"=(":1,"=-":5,"=false":[5,6],"=float":1,"=ibigendian":1,"=int":1,"=nchannels":1,"=none":[5,6],"=obigendian":1,"=params":1,"=paramstuple":1,"=sampbit":1,"=samprate":1,"=sys":[1,6],"=true":[5,6],"['":1,"[:":[1,6],"\\r":1,"\u3042\u308a":[2,5],"\u3042\u308b":6,"\u3044\u308b":[3,5,6],"\u3044\u308f\u3086\u308b":[5,6],"\u304a\u3051\u308b":[3,5,6],"\u304a\u308a":[5,6],"\u304b\u3089":[5,6],"\u304c\u3042\u308a":[5,6],"\u304f\u3060":3,"\u3053\u3061\u3089":[3,5,6],"\u3053\u3068":[3,5,6],"\u3053\u306e":[3,5,6],"\u3053\u308c":[3,5],"\u3053\u308c\u3089":[5,6],"\u3055\u3044":3,"\u3059\u3079":5,"\u3059\u308b":[3,5,6],"\u305a\u308c":[3,5],"\u305d\u306e":2,"\u305f\u3044":[3,5,6],"\u305f\u304f":5,"\u305f\u3081":[5,6],"\u3060\u3055\u3044":[3,5,6],"\u3067\u304d":[3,5,6],"\u3067\u3057\u304b":5,"\u3067\u3059":[2,3,5,6],"\u3067\u3082":6,"\u3068\u3057\u3066":[5,6],"\u306a\u3044":[3,5,6],"\u306a\u304a":3,"\u306a\u304b\u3063":[5,6],"\u306a\u304f":5,"\u306a\u3063":[5,6],"\u306a\u3069":[3,6],"\u306a\u308a":[3,5,6],"\u306a\u308b":[5,6],"\u306b\u3066":5,"\u306b\u3088\u3063\u3066":5,"\u306b\u3088\u308a":[3,6],"\u306b\u3088\u308b":[2,5],"\u306b\u5bfe\u3059\u308b":[5,6],"\u306b\u5bfe\u5fdc\u4ed8\u3051":[],"\u306e\u3044":3,"\u306e\u3044\u305a\u308c\u304b":[5,6],"\u306e\u3067":[3,5,6],"\u306e\u306b\u5bfe\u3057":[5,6],"\u306e\u307f":6,"\u306f\u3044":5,"\u306f\u3058\u3081":2,"\u307e\u3057":[5,6],"\u307e\u3059":[3,5,6],"\u307e\u305b":[5,6],"\u307e\u305f":[3,5,6],"\u307e\u3067":5,"\u3082\u3057":[3,6],"\u3082\u3057\u304f":[5,6],"\u3088\u3046":6,"\u3089\u308c":6,"\u3089\u308c\u308b":[5,6],"\u308c\u308b":[5,6],"\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9":[5,6],"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb":2,"\u30a4\u30f3\u30c7\u30c3\u30af\u30b9":5,"\u30a8\u30f3\u30c7\u30a3\u30a2\u30f3":6,"\u30aa\u30d5\u30a3\u30b7\u30e3\u30eb\u30b5\u30a4\u30c8":2,"\u30aa\u30d5\u30bb\u30c3\u30c8":[5,6],"\u30aa\u30d6\u30b8\u30a7\u30af\u30c8":[5,6],"\u30aa\u30d7\u30b7\u30e7\u30f3":[5,6],"\u30aa\u30fc\u30c7\u30a3\u30aa":[2,5],"\u30aa\u30fc\u30c7\u30a3\u30aa\u30c7\u30d0\u30a4\u30b9":[3,5],"\u30aa\u30fc\u30c7\u30a3\u30aa\u30c9\u30e9\u30a4\u30d0\u30fc":5,"\u30ad\u30fc":[5,6],"\u30ad\u30fc\u30ef\u30fc\u30c9":[3,5,6],"\u30af\u30e9\u30b9":[5,6],"\u30b3\u30d4\u30fc":6,"\u30b3\u30de\u30f3\u30c9":3,"\u30b3\u30f3\u30d3\u30cd\u30fc\u30b7\u30e7\u30f3":5,"\u30b3\u30fc\u30c9":[5,6],"\u30b3\u30fc\u30eb\u30d0\u30c3\u30af":[2,5],"\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u30bf\u30a4\u30d7":5,"\u30b5\u30a4\u30ba":[5,6],"\u30b5\u30dd\u30fc\u30c8":[3,5,6],"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9":2,"\u30b5\u30f3\u30d7\u30eb\u30ec\u30fc\u30c8":[5,6],"\u30b7\u30b0\u30cd\u30c1\u30e3":5,"\u30bd\u30f3\u30b0":6,"\u30bd\u30fc\u30b9":[5,6],"\u30c1\u30e3\u30cd\u30eb":[5,6],"\u30c1\u30e3\u30f3\u30cd\u30eb":3,"\u30c7\u30b3\u30fc\u30c9":[5,6],"\u30c7\u30d0\u30a4\u30b9":5,"\u30c7\u30d5\u30a9\u30eb\u30c8":5,"\u30c7\u30fc\u30bf":[5,6],"\u30c7\u30fc\u30bf\u30d0\u30fc\u30b8\u30e7\u30f3":2,"\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8":2,"\u30c9\u30e9\u30a4\u30d0\u30fc":5,"\u30ce\u30f3\u30d6\u30ed\u30c3\u30ad\u30f3\u30b0\u30e2\u30fc\u30c9":5,"\u30d0\u30a4\u30c8":[5,6],"\u30d0\u30a4\u30ca\u30ea\u30fc\u30d1\u30c3\u30b1\u30fc\u30b8":3,"\u30d0\u30c3\u30d5\u30a1":[5,6],"\u30d0\u30c3\u30d5\u30a1\u30b5\u30a4\u30ba":5,"\u30d0\u30fc\u30b8\u30e7\u30f3":[2,3,5,6],"\u30d1\u30c3\u30b1\u30fc\u30b8":[2,3],"\u30d1\u30e9\u30e1\u30fc\u30bf":[5,6],"\u30d3\u30c3\u30b0\u30a8\u30f3\u30c7\u30a3\u30a2\u30f3":6,"\u30d3\u30c3\u30c8":[5,6],"\u30d3\u30c3\u30c8\u30c7\u30fc\u30bf":6,"\u30d3\u30eb\u30c9":2,"\u30d5\u30a1\u30a4\u30eb":[2,3,5,6],"\u30d5\u30a1\u30a4\u30eb\u30d5\u30a3\u30eb\u30bf\u30fc":6,"\u30d5\u30eb\u30c7\u30e5\u30d7\u30ec\u30c3\u30af\u30b9":3,"\u30d5\u30eb\u30c7\u30e5\u30d7\u30ec\u30c3\u30af\u30b9\u30aa\u30fc\u30c7\u30a3\u30aa":5,"\u30d5\u30eb\u30c7\u30e5\u30d7\u30ec\u30c3\u30af\u30b9i":2,"\u30d5\u30ec\u30fc\u30e0":[5,6],"\u30d6\u30ed\u30c3\u30ad\u30f3\u30b0\u30e2\u30fc\u30c9":5,"\u30d7\u30e9\u30b0\u30a4\u30f3":[2,3,6],"\u30d7\u30ed\u30c3\u30c8":[2,6],"\u30d9\u30fc\u30b9\u30af\u30e9\u30b9":[5,6],"\u30da\u30fc\u30b8":3,"\u30e2\u30b8\u30e5\u30fc\u30eb":[0,2,3,4],"\u30e2\u30fc\u30c9":[5,6],"\u30e9\u30a4\u30d6\u30e9\u30ea":[3,5,6],"\u30ea\u30b9\u30c8":5,"\u30ea\u30ea\u30fc\u30b9":3,"\u4e0a\u8a18":[5,6],"\u4e0b\u8a18":[5,6],"\u4e0d\u9069\u5207":6,"\u4e0e\u3048\u308b":[5,6],"\u4e57\u3058":[5,6],"\u4e92\u63db":6,"\u4ed8\u304d":6,"\u4ee5\u4e0a":5,"\u4ee5\u4e0b":3,"\u4ee5\u964d":2,"\u4efb\u610f":5,"\u4f4d\u7f6e":[5,6],"\u4f5c\u6210":[5,6],"\u4f7f\u3044":3,"\u4f7f\u3046":[3,5,6],"\u4f7f\u7528":[2,3,5,6],"\u4f8b\u3048":6,"\u4f8b\u5916":[5,6],"\u4f9d\u5b58":5,"\u4fc2\u6570":[5,6],"\u4fdd\u6301":[5,6],"\u505c\u6b62":5,"\u5148\u982d":6,"\u5165\u51fa":[2,3,5,6],"\u5165\u529b":6,"\u5168\u3066":[5,6],"\u5168\u4f53":6,"\u516c\u5f0f":3,"\u5185\u5bb9":[2,5,6],"\u5185\u90e8":6,"\u518d\u751f":2,"\u518d\u8aad\u8fbc":5,"\u51e6\u7406":5,"\u51fa\u529b":[5,6],"\u5229\u7528":3,"\u53ca\u3073":[5,6],"\u53d6\u5f97":[5,6],"\u53ef\u5909":5,"\u53ef\u80fd":[3,5,6],"\u540c\u3058":6,"\u540c\u671f":5,"\u540d\u524d":[5,6],"\u542b\u307e\u308c":5,"\u542b\u307e\u308c\u308b":5,"\u542b\u3080":[5,6],"\u547c\u3073\u51fa\u3057":[3,5],"\u547c\u3073\u51fa\u3059":6,"\u554f\u984c":[5,6],"\u5727\u7e2e":[5,6],"\u578b\u914d":[5,6],"\u57fa\u3065\u304f":[2,5,6],"\u57fa\u672c":[5,6],"\u5834\u5408":[3,5,6],"\u5909\u63db":[2,6],"\u5909\u6570":6,"\u591a\u3044":[],"\u5931\u6557":[5,6],"\u5b9f\u73fe":5,"\u5b9f\u884c":3,"\u5bfe\u5fdc":[5,6],"\u5c02\u7528":5,"\u5c0e\u5165":[5,6],"\u5c65\u6b74":2,"\u5f15\u6570":[3,5,6],"\u5f62\u5f0f":[3,5,6],"\u5f97\u308b":5,"\u5fc5\u8981":[3,5,6],"\u5fdc\u3058":[5,6],"\u60c5\u5831":6,"\u60f3\u5b9a":[5,6],"\u6210\u529f":[5,6],"\u623b\u308a\u5024":[5,6],"\u6301\u3064":[5,6],"\u6307\u5b9a":[3,5,6],"\u6319\u3052":6,"\u63a5\u982d":5,"\u6570\u4ee5":[],"\u6587\u5b57":[5,6],"\u6587\u5b57\u5217":[5,6],"\u65b0\u898f":6,"\u65e5\u672c\u8a9e":3,"\u6642\u9593":6,"\u66f4\u65b0":2,"\u66f8\u304d":3,"\u66f8\u304d\u8fbc\u307e":[5,6],"\u66f8\u304d\u8fbc\u307f":[2,5,6],"\u66f8\u304d\u8fbc\u3080":[5,6],"\u6700\u521d":3,"\u671f\u5316":5,"\u69d8\u3005":[3,6],"\u6a19\u6e96":[5,6],"\u6ce2\u5f62":6,"\u6ce8\u610f\u304f":[3,5,6],"\u6e21\u3059":5,"\u7121\u8996":[5,6],"\u73fe\u5728":[5,6],"\u74b0\u5883":5,"\u751f\u30d0\u30c3\u30d5\u30a1":[5,6],"\u751fndarray":2,"\u7528\u3044":[3,5,6],"\u7528\u3044\u308b":6,"\u7528\u610f":[3,5,6],"\u7570\u306a\u308a":[5,6],"\u7570\u5e38":6,"\u767a\u751f":[5,6],"\u76ee\u6b21":2,"\u77ed\u3044":6,"\u79fb\u52d5":6,"\u79fb\u52d5\u5148":6,"\u7b26\u53f7":6,"\u7d42\u4e86":5,"\u8981\u6c42":[5,6],"\u8981\u7d20":5,"\u898b\u3064":6,"\u898b\u3066":3,"\u8a2d\u5b9a":[5,6],"\u8a73\u7d30":[5,6],"\u8aac\u660e":[5,6],"\u8aad\u307f":3,"\u8aad\u307f\u8fbc\u307f":[2,5,6],"\u8aad\u307f\u8fbc\u3080":[5,6],"\u8efd\u304f":5,"\u8fd4\u3057":5,"\u8fd4\u308a":[5,6],"\u8ffd\u52a0":[3,5,6],"\u9069\u5207":6,"\u9078\u629e":5,"\u914d\u5217":[2,5,6],"\u91cd\u307f":[5,6],"\u9332\u97f3":2,"\u9577\u3055":[5,6],"\u9589\u3058":[5,6],"\u958b\u304d":[5,6],"\u958b\u304f":[5,6],"\u958b\u304f\u969b":[5,6],"\u958b\u3051":5,"\u95a2\u6570":[3,5,6],"\u97f3\u58f0":[2,5,6],"\uff08length":[5,6],"\uff09\uff0c":5,"\uff09\uff0e":[5,6],"\uff0c\"":3,"\uff0c\u65b0\u305f":6,"\uff0caifc":[5,6],"\uff0caiff":[3,6],"\uff0calac":[3,6],"\uff0cdecodes":[],"\uff0cdict":5,"\uff0cflac":[3,6],"\uff0cmp3":[3,6],"\uff0cpcm":6,"\uff0craw":[3,6],"\uff0csunau":[5,6],"\uff0cwav":3,"\uff0cwave":[5,6],"\uff0e\u307e\u305f":5,"\uff0esampbit":[5,6],"\uff0ewav":6,"]'":[1,6],"])":[1,6],"],":1,"byte":1,"char":[5,6],"class":[5,6],"default":1,"double":[5,6],"else":1,"false":[1,5,6],"float":[1,5,6],"for":[1,5,6],"function":[],"if":[1,6],"import":[1,5,6],"in":[1,5,6],"int":[5,6],"new":[],"return":1,"this":[],"true":[1,5,6],"while":[],"with":[2,5,6],__:[1,6],_args:1,_argument:1,_buffer:[1,5],_callback:[1,5],_or:[1,6],_position:[1,5],_s:1,_signed:[1,6],above:[],acceptable:[],added:[],afc:1,after:[],aif:1,aifc:[1,5,6],aiff:1,all:[],also:[],although:[],amd:3,amplitude:[1,6],an:[],anaconda:3,and:[],api:2,appendsonginfo:6,apt:3,archive:3,are:[],argparse:1,args:[1,5],argument:[],arguments:[],array:[5,6],as:[1,5,6],associated:[],au:1,audio:5,bannohideki:3,be:[],becomes:[],benefit:[],bigendian:[1,6],bits:[],blockingmode:5,bogusfileerror:6,bool:[5,6],buf:1,buffer:1,buffers:[],buffersize:[1,5],by:[],bytearray:[1,5,6],bytes:[5,6],call:[],callable:5,callback:[1,5],callbacksignature:5,calltype:5,cannot:[],cbdata:[1,5],cbtype:1,centos:3,channels:1,close:[5,6],coding:1,compatible:[],compname:[5,6],compressed:[5,6],compression:[],comptype:[1,5,6],conda:3,containing:[],contains:[],contents:[],convbyplugin:1,copyarray:6,copyraw:6,createarray:[5,6],createndarray:[5,6],createrawarray:[5,6],createrawndarray:[5,6],current:[],currently:[],data:[5,6],deb:3,decodebytes:[1,5,6],decoded:[],decodes:[],def:[1,6],described:[],device:[],deviceerror:5,deviceindex:5,devices:[],dict:[5,6],dpkg:3,driver:[],drivererror:5,drivername:5,drivers:[],dtype:[5,6],duration:[1,6],element:[],elif:1,encodestr:[5,6],entries:[],environments:[],equal:[],error:[5,6],example:[],exception:[5,6],expect:[],expects:[],faster:[],file:1,filedesc:1,fileerror:6,filefilter:1,filename:[1,6],filetype:[1,6],filetypeerror:6,floatflag:[5,6],following:[],format:1,framerate:[1,5,6],frames:[],from:[],fullduplex:[],func:5,generated:[],getarraytypecode:[5,6],getblockingmode:5,getbuffersize:5,getcompname:[5,6],getcomptype:[5,6],getdevicelist:5,getdevicename:5,getdriverdevicename:5,getdriverlist:5,getdrivername:5,getfiledesc:6,getfilefilter:6,getfiletype:6,getframerate:[5,6],getlength:6,getmark:6,getmarkers:6,getnbuffers:5,getnchannels:[5,6],getndarraydtype:[5,6],getndevices:5,getndriverdevices:5,getndrivers:5,getnframes:6,getparams:[5,6],getparamstuple:[5,6],getplugindesc:6,getpluginid:6,getplugininfo:6,getpluginname:6,getpluginversion:6,getrawarraytypecode:[5,6],getrawndarraydtype:[5,6],getrawsampbit:[5,6],getrawsampwidth:[5,6],gets:[],getsampbit:[5,6],getsamprate:[5,6],getsampwidth:[5,6],getsonginfo:6,greater:[],help:1,http:3,human:[],hz:1,ibigendian:1,id:6,ifilebody:1,ifileext:1,ignored:[],inarray:6,included:[],including:[],index:5,initialize:[],input:1,inputfile:1,install:3,instance:[],into:[],introduced:[],iotest:1,iotestwith:1,is:1,it:[],keys:[],keyword:[],len:[1,6],length:[1,5,6],libraries:[],library:[],linux:3,location:[],main:[1,6],matplotlib:[1,6],may:[],mean:[],means:[],method:[],microsoft:6,miniconda:3,mode:[5,6],modes:[],module:[],myaudiocb:1,name:[1,6],namedtuple:[5,6],nbuffers:5,nchannels:[1,5,6],nchannelserror:6,ndarray:[2,5,6],nframes:[1,5,6],nframesflag:[5,6],nloop:[1,5],normalized:[1,6],not:1,np:[1,6],nread:[1,6],number:1,numpy:[2,5,6],nwrite:1,obigendian:1,object:[5,6],objects:[],obtained:[],of:1,offset:[5,6],ofilebody:1,ofileext:1,ogg:[3,6],only:[],open:[3,5,6],opening:[],opens:[],optional:[],or:[1,5,6],os:[1,6],otherwise:[],output:[1,5],outputfile:1,parameter:[],parameters:[],params:[1,5,6],paramstuple:1,parser:1,pcm:6,pf:[1,6],pip:3,play:[],playfilebyplugin:1,playfromwav:1,playfromwavcb:1,plotfilebyplugin:[1,6],plt:[1,6],plugin:1,pluginname:6,pos:6,position:1,print:[1,6],processing:[],pulseaudio:3,pulsesimple:3,py:1,python:[3,5,6],quit:[1,6],raise:1,range:[1,5,6],rate:1,raw:1,rawdata:6,rb:1,read:[5,6],readndarray:1,readplot:1,readplotraw:1,readraw:[5,6],readrawndarray:1,realize:[],recieve:[],record:1,recording:1,rectowav:1,reload:5,required:1,returned:[],returns:[],rewind:6,ro:1,round:1,rpm:3,runtimeerror:1,rw:[1,5],sampbit:[1,5,6],sample:1,samplebiterror:6,samplerateerror:6,sampling:1,samprate:[1,5,6],sampwidth:[1,5,6],selectdevice:5,selected:[],set:6,setblockingmode:5,setbuffersize:5,setcallback:5,setcomptype:[5,6],setfiletype:6,setframerate:[5,6],setlength:6,setmark:6,setnbuffers:5,setnchannels:[5,6],setnframes:6,setparams:[5,6],setpos:6,sets:[],setsampbit:[5,6],setsamprate:[5,6],setsampwidth:[5,6],setsonginfo:6,sf:1,size:1,sndlib:1,some:[],songinfo:[1,6],spaudio:[0,3],spbase:3,specified:[],specify:[],spfileplugin:6,splibs:3,spplugin:[0,2,3,4],standard:[],statement:[],stop:5,str:[1,5,6],string:[5,6],such:[],suitablenotfounderror:6,sunau:1,support:[],supported:1,swig:3,sync:5,sys:[1,6],tell:6,terminate:5,than:[],that:[],the:[],these:[],time:[1,6],to:1,total:1,totallengthrequirederror:6,tuple:5,type:1,ubuntu:3,usage:[1,6],used:[],using:[],usr:1,utf:1,validate:[],valueerror:5,version:[1,3],vorbis:[3,6],was:[],wav:[2,6],wave:[1,5,6],wb:1,weight:[5,6],were:[],wf:1,which:[],whose:[],width:1,will:[],wo:1,write:[5,6],writefrombyplugin:1,writeraw:[5,6],writetobyplugin:1,wrongpluginerror:6,www:3,yum:3},titles:["API\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8","\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9","spAudio for Python","\u306f\u3058\u3081\u306b","spAudio","spaudio\u30e2\u30b8\u30e5\u30fc\u30eb","spplugin\u30e2\u30b8\u30e5\u30fc\u30eb"],titleterms:{"+)":[],"/o":1,"\u3042\u308a":1,"\u305d\u306e":1,"\u306b\u3088\u308b":1,"\u306f\u3058\u3081":3,"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb":3,"\u30aa\u30d5\u30a3\u30b7\u30e3\u30eb\u30b5\u30a4\u30c8":3,"\u30b3\u30fc\u30eb\u30d0\u30c3\u30af":1,"\u30b5\u30f3\u30d7\u30eb":[5,6],"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9":1,"\u30c7\u30fc\u30bf\u30d0\u30fc\u30b8\u30e7\u30f3":1,"\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8":0,"\u30d0\u30fc\u30b8\u30e7\u30f3":1,"\u30d3\u30eb\u30c9":3,"\u30d5\u30a1\u30a4\u30eb":1,"\u30d5\u30eb\u30c7\u30e5\u30d7\u30ec\u30c3\u30af\u30b9i":1,"\u30d7\u30e9\u30b0\u30a4\u30f3":1,"\u30d7\u30ed\u30c3\u30c8":1,"\u30e2\u30b8\u30e5\u30fc\u30eb":[5,6],"\u4ee5\u964d":1,"\u4f7f\u7528":1,"\u5185\u5bb9":1,"\u518d\u751f":1,"\u5909\u63db":1,"\u5c65\u6b74":3,"\u66f4\u65b0":3,"\u66f8\u304d\u8fbc\u307f":1,"\u751fndarray":1,"\u7d22\u5f15":2,"\u8aad\u307f\u8fbc\u307f":1,"\u914d\u5217":1,"\u9332\u97f3":1,"\u97f3\u58f0":1,"for":2,"with":1,an:[],and:[],api:0,audio:[],by:[],callback:[],contents:[],file:[],fullduplex:[],it:[],ndarray:1,numpy:1,play:[],plugin:[],python:[1,2],read:[],record:[],spaudio:[1,2,4,5],spplugin:[1,6],statement:[],to:[],using:[],version:[],wav:1,write:[]}})

@@ -33,22 +33,22 @@ Introduction

* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_i386.deb
* Ubuntu 16
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_i386.deb
* Ubuntu 14
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_i386.deb
* CentOS 7
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-5.x86_64.rpm
* CentOS 6
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-5.x86_64.rpm

@@ -63,2 +63,7 @@ If you want to use ``apt`` (Ubuntu) or ``yum`` (CentOS),

- Version 0.7.15
* Added spaudio.open function to spaudio module.
* Added support for open call of spaudio module with keyword arguments.
- Version 0.7.14

@@ -65,0 +70,0 @@

@@ -6,5 +6,2 @@ #!/usr/bin/env python3

import sys
import aifc
import wave
import sunau
import spplugin

@@ -11,0 +8,0 @@

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Version 0.7.5+ required.

@@ -33,20 +34,12 @@ import os

a = spaudio.SpAudio()
with spaudio.open('wo', nchannels=nchannels, samprate=samprate,
sampbit=sampbit) as a:
b = a.createarray(nframes, True)
nread = pf.read(b)
print('nread = %d' % nread)
a.setnchannels(nchannels)
a.setsamprate(samprate)
a.setsampbit(sampbit)
nwrite = a.write(b)
print('nwrite = %d' % nwrite)
b = a.createarray(nframes, True)
nread = pf.read(b)
print('nread = %d' % nread)
a.open('wo')
nwrite = a.write(b)
print('nwrite = %d' % nwrite)
a.close()
if __name__ == '__main__':

@@ -53,0 +46,0 @@ if len(sys.argv) <= 1:

+20
-10
Metadata-Version: 2.1
Name: spaudio
Version: 0.7.14.post1
Version: 0.7.15
Summary: spAudio audio I/O library

@@ -43,22 +43,22 @@ Home-page: http://www-ie.meijo-u.ac.jp/labs/rj001/spLibs/python/spAudio/en/index.html

* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_i386.deb
* Ubuntu 16
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_i386.deb
* Ubuntu 14
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_i386.deb
* CentOS 7
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-5.x86_64.rpm
* CentOS 6
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-5.x86_64.rpm

@@ -73,2 +73,7 @@ If you want to use ``apt`` (Ubuntu) or ``yum`` (CentOS),

- Version 0.7.15
* Added spaudio.open function to spaudio module.
* Added support for open call of spaudio module with keyword arguments.
- Version 0.7.14

@@ -97,3 +102,3 @@

Keywords: audio,sound,play,record,I/O
Keywords: python,library,audio,sound,play,record,I/O,file,capture,wav,aiff,caf,ogg,mp3,flac,alac
Platform: posix

@@ -109,5 +114,10 @@ Platform: nt

Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Multimedia :: Sound/Audio
Classifier: Topic :: Multimedia :: Sound/Audio :: Analysis
Classifier: Topic :: Multimedia :: Sound/Audio :: Capture/Recording
Classifier: Topic :: Multimedia :: Sound/Audio :: Conversion
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/x-rst
Provides-Extra: numpy

@@ -35,22 +35,22 @@ Introduction

* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_i386.deb
* Ubuntu 16
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_i386.deb
* Ubuntu 14
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_i386.deb
* CentOS 7
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-5.x86_64.rpm
* CentOS 6
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-5.x86_64.rpm

@@ -65,2 +65,7 @@ If you want to use ``apt`` (Ubuntu) or ``yum`` (CentOS),

- Version 0.7.15
* Added spaudio.open function to spaudio module.
* Added support for open call of spaudio module with keyword arguments.
- Version 0.7.14

@@ -67,0 +72,0 @@

@@ -41,3 +41,4 @@ #!/usr/bin/env python3

else:
libpath = sptop + '/lib/x64/v141'
# libpath = sptop + '/lib/x64/v141'
libpath = sptop + '/lib/x64/v140'
sysdirname = 'win64'

@@ -49,3 +50,4 @@ else:

else:
libpath = sptop + '/lib/v141'
# libpath = sptop + '/lib/v141'
libpath = sptop + '/lib/v140_xp'
sysdirname = 'win32'

@@ -114,3 +116,3 @@ pluginfiles_list = ['*.dll']

name='spaudio',
version='0.7.14-1',
version='0.7.15',
description='spAudio audio I/O library',

@@ -120,3 +122,5 @@ long_description=readme,

url='http://www-ie.meijo-u.ac.jp/labs/rj001/spLibs/python/spAudio/en/index.html',
keywords=['audio', 'sound', 'play', 'record', 'I/O'],
keywords=['python', 'library', 'audio', 'sound', 'play', 'record',
'I/O', 'file', 'capture', 'wav', 'aiff', 'caf', 'ogg',
'mp3', 'flac', 'alac'],
ext_modules=[ext_spaudio, ext_spplugin],

@@ -141,5 +145,10 @@ py_modules=['spaudio', 'spplugin'],

'Operating System :: POSIX :: Linux',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Topic :: Multimedia :: Sound/Audio',
'Topic :: Multimedia :: Sound/Audio :: Analysis',
'Topic :: Multimedia :: Sound/Audio :: Capture/Recording',
'Topic :: Multimedia :: Sound/Audio :: Conversion',
'Topic :: Software Development :: Libraries :: Python Modules',
],
)
Metadata-Version: 2.1
Name: spaudio
Version: 0.7.14.post1
Version: 0.7.15
Summary: spAudio audio I/O library

@@ -43,22 +43,22 @@ Home-page: http://www-ie.meijo-u.ac.jp/labs/rj001/spLibs/python/spAudio/en/index.html

* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu18/spplugin_0.8.5-5_i386.deb
* Ubuntu 16
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu16/spplugin_0.8.5-5_i386.deb
* Ubuntu 14
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-4_i386.deb
* amd64: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_amd64.deb
* i386: http://www-ie.meijo-u.ac.jp/labs/rj001/archive/deb/ubuntu14/spplugin_0.8.5-5_i386.deb
* CentOS 7
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el7/x86_64/spPlugin-0.8.5-5.x86_64.rpm
* CentOS 6
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-4.x86_64.rpm
* http://www-ie.meijo-u.ac.jp/labs/rj001/archive/rpm/el6/x86_64/spPlugin-0.8.5-5.x86_64.rpm

@@ -73,2 +73,7 @@ If you want to use ``apt`` (Ubuntu) or ``yum`` (CentOS),

- Version 0.7.15
* Added spaudio.open function to spaudio module.
* Added support for open call of spaudio module with keyword arguments.
- Version 0.7.14

@@ -97,3 +102,3 @@

Keywords: audio,sound,play,record,I/O
Keywords: python,library,audio,sound,play,record,I/O,file,capture,wav,aiff,caf,ogg,mp3,flac,alac
Platform: posix

@@ -109,5 +114,10 @@ Platform: nt

Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Multimedia :: Sound/Audio
Classifier: Topic :: Multimedia :: Sound/Audio :: Analysis
Classifier: Topic :: Multimedia :: Sound/Audio :: Capture/Recording
Classifier: Topic :: Multimedia :: Sound/Audio :: Conversion
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/x-rst
Provides-Extra: numpy

@@ -168,2 +168,3 @@ LICENSE.txt

docs/_static/css/custom_theme.css
docs/_templates/footer.html
docs/html/apidoc.html

@@ -184,9 +185,16 @@ docs/html/examples.html

docs/html/_downloads/4e43be20a2a5dddee3bfa13cddbb8858/plotfilebyplugin.py
docs/html/_downloads/577d4b05734b780e2d1ffc19ae9817bd/rectowav2.py
docs/html/_downloads/64ccd00380d0206b2b6a1dce94ed2ddd/writefrombyplugin.py
docs/html/_downloads/6e64b02651b0109d48aae4b8605011f4/playfromwavcb2.py
docs/html/_downloads/715219b0bf1fed45311fc983f4fe3ceb/readrawndarray.py
docs/html/_downloads/795cc24d29b303df85dcb4e53c392b44/writetobyplugin.py
docs/html/_downloads/7cbab2428255f0c3e39993c3c3eb198c/readndarray.py
docs/html/_downloads/7d09ca8aca8d2ea1bbcfbcde20560a24/iotest.py
docs/html/_downloads/ac56e3248ac62c89617fb5736aca397c/iotestwith.py
docs/html/_downloads/bc59d40f4a30574cc80d229832fe5044/readplot.py
docs/html/_downloads/d46a70a7998d64493479af678a95ac81/playfilebyplugin.py
docs/html/_downloads/d9b3096a069446bfee28b8b2ef1b5a37/rectowav.py
docs/html/_downloads/e2c84785184759e884824c09f7e4e309/readplotraw.py
docs/html/_downloads/f7a412e10683e3f1ac170289e46102a8/playfromwavcb.py
docs/html/_downloads/fffc7713ad64d7817fe29355db58c23c/playfromwav2.py
docs/html/_modules/index.html

@@ -273,9 +281,16 @@ docs/html/_modules/spaudio.html

docs/ja/html/_downloads/4e43be20a2a5dddee3bfa13cddbb8858/plotfilebyplugin.py
docs/ja/html/_downloads/577d4b05734b780e2d1ffc19ae9817bd/rectowav2.py
docs/ja/html/_downloads/64ccd00380d0206b2b6a1dce94ed2ddd/writefrombyplugin.py
docs/ja/html/_downloads/6e64b02651b0109d48aae4b8605011f4/playfromwavcb2.py
docs/ja/html/_downloads/715219b0bf1fed45311fc983f4fe3ceb/readrawndarray.py
docs/ja/html/_downloads/795cc24d29b303df85dcb4e53c392b44/writetobyplugin.py
docs/ja/html/_downloads/7cbab2428255f0c3e39993c3c3eb198c/readndarray.py
docs/ja/html/_downloads/7d09ca8aca8d2ea1bbcfbcde20560a24/iotest.py
docs/ja/html/_downloads/ac56e3248ac62c89617fb5736aca397c/iotestwith.py
docs/ja/html/_downloads/bc59d40f4a30574cc80d229832fe5044/readplot.py
docs/ja/html/_downloads/d46a70a7998d64493479af678a95ac81/playfilebyplugin.py
docs/ja/html/_downloads/d9b3096a069446bfee28b8b2ef1b5a37/rectowav.py
docs/ja/html/_downloads/e2c84785184759e884824c09f7e4e309/readplotraw.py
docs/ja/html/_downloads/f7a412e10683e3f1ac170289e46102a8/playfromwavcb.py
docs/ja/html/_downloads/fffc7713ad64d7817fe29355db58c23c/playfromwav2.py
docs/ja/html/_modules/index.html

@@ -365,5 +380,8 @@ docs/ja/html/_modules/spaudio.html

examples/iotest.py
examples/iotestwith.py
examples/playfilebyplugin.py
examples/playfromwav.py
examples/playfromwav2.py
examples/playfromwavcb.py
examples/playfromwavcb2.py
examples/plotfilebyplugin.py

@@ -375,2 +393,3 @@ examples/readndarray.py

examples/rectowav.py
examples/rectowav2.py
examples/writefrombyplugin.py

@@ -377,0 +396,0 @@ examples/writetobyplugin.py

+342
-39

@@ -7,3 +7,3 @@ # -*- coding: utf-8 -*-

Example:
The following is the example to realize fullduplex audio I/O.
The following is the example to realize fullduplex audio I/O (version 0.7.5+).
::

@@ -13,19 +13,9 @@

a = spaudio.SpAudio()
with spaudio.open('rw', nchannels=2, samprate=44100, buffersize=2048) as a:
nloop = 500
b = bytearray(4096)
a.setnchannels(2)
a.setsamprate(44100)
a.setbuffersize(2048)
nloop = 500
b = bytearray(4096)
a.open('r')
a.open('w')
for i in range(nloop):
a.readraw(b)
a.writeraw(b)
a.close()
for i in range(nloop):
a.readraw(b)
a.writeraw(b)
"""

@@ -35,6 +25,7 @@

import array
from collections import namedtuple
from _spaudio import spaudio_c as _spaudio_c
__version__ = '0.7.14'
__version__ = '0.7.15'

@@ -53,2 +44,14 @@ OUTPUT_POSITION_CALLBACK = (1 << 0)

# https://stackoverflow.com/questions/2166818/how-to-check-if-an-object-is-an-instance-of-a-namedtuple
def _isnamedtupleinstance(x):
t = type(x)
b = t.__bases__
if len(b) != 1 or b[0] != tuple:
return False
f = getattr(t, '_fields', None)
if not isinstance(f, tuple):
return False
return all(type(n) == str for n in f)
class Error(Exception):

@@ -69,2 +72,12 @@ """Base exception class for spaudio."""

_standard_lib_params = namedtuple('_standard_lib_params',
'nchannels sampwidth framerate nframes comptype compname')
_standard_lib_keys = ['nchannels', 'sampwidth', 'framerate',
'nframes', 'comptype', 'compname']
params_keys = ['nchannels', 'sampbit', 'samprate',
'blockingmode', 'buffersize', 'nbuffers',
'sampwidth', 'framerate']
def callbacksignature(audio, calltype, cbdata, args):

@@ -80,3 +93,3 @@ """Signature of the callback function for :func:`~spaudio.SpAudio.setcallback` method.

args: Variable length argument list specified at :func:`~spaudio.SpAudio.setcallback`.
Note that this ``args`` variable does not require the prefix ``*``.
Note that this `args` variable does not require the prefix ``*``.

@@ -104,2 +117,8 @@ Returns:

def __enter__(self):
return self
def __exit__(self, *args):
self.terminate()
def reload(self, drivername=None):

@@ -112,2 +131,4 @@ """Reloads a new audio driver."""

"""Terminates the current audio driver."""
if self._read_mode[0] == 'r' or self._write_mode[0] == 'w':
self.close()
global _audio_global

@@ -175,3 +196,12 @@ if (self._audio is not None) and (self._audio is _audio_global):

def selectdevice(self, deviceindex):
"""Selects an audio device which has the index specified."""
"""Selects an audio device which has the index specified.
Args:
deviceindex (int): The index associated with an audio device.
Raises:
ValueError: If `deviceindex` is greater than or equal to
the number of devices.
DriverError: If the audio device cannot be selected.
"""
if self._audio is None:

@@ -196,2 +226,5 @@ raise RuntimeError('driver must be loaded')

*args: Variable length argument list.
Raises:
DriverError: If the callback function cannot be set.
"""

@@ -366,3 +399,107 @@ if self._audio is None:

def open(self, mode):
def getcomptype(self, decodebytes=False):
"""Returns compression type. Currently, ``'NONE'`` (decodebytes = ``True``)
or ``b'NONE'`` (decodebytes = ``False``) will be returned."""
if decodebytes:
return 'NONE'
else:
return b'NONE'
def getcompname(self, decodebytes=False):
"""Returns human-readable name of compression type. Currently,
``'not compressed'`` (decodebytes = ``True``) or ``b'not compressed'``
(decodebytes = ``False``) will be returned.
"""
if decodebytes:
return 'not compressed'
else:
return b'not compressed'
def setcomptype(self, encodestr=True):
"""Sets compression type. This parameter is ignored."""
pass
def setparams(self, params):
"""Sets supported all parameters described in dict or
namedtuple object to the device.
Args:
params (dict): a dict object of parameters whose keys are
``'nchannels'``, ``'sampbit'``, ``'samprate'``,
``'blockingmode'``, ``'buffersize'``, or ``'nbuffers'``.
The namedtuple generated by standard libraries
such as aifc, wave, or sunau is also acceptable.
"""
if self._audio is None:
raise RuntimeError('driver must be loaded')
# if isinstance(params, namedtuple):
if _isnamedtupleinstance(params):
# some versions of Python include _asdist() bug.
params = dict(zip(params._fields, params))
elif isinstance(params, tuple):
params = dict(zip(_standard_lib_keys, params))
sampbit = 0
for key, value in params.items():
if key == 'sampwidth':
if sampbit == 0:
sampbit = value * 8
elif key == 'sampbit':
sampbit = value
elif key == 'nchannels':
self.setnchannels(value)
elif key == 'samprate' or key == 'framerate':
self.setsamprate(value)
elif key == 'blockingmode':
self.setblockingmode(value)
elif key == 'buffersize':
self.setbuffersize(value)
elif key == 'nbuffers':
self.setnbuffers(value)
if sampbit > 0:
self.setsampbit(sampbit)
def getparams(self):
"""Gets supported all parameters of the current device in dict object.
Returns:
dict: A dict object including all parameters of the current device
whose keys are ``'nchannels'``, ``'sampbit'``, ``'samprate'``,
``'blockingmode'``, ``'buffersize'``, and ``'nbuffers'``.
"""
return dict(nchannels=self.getnchannels(), sampbit=self.getsampbit(),
samprate=self.getsamprate(), blockingmode=self.getblockingmode(),
buffersize=sefl.getbuffersize(), nbuffers=self.getnbuffers(),
sampwidth=self.getrawsampwidth(), framerate=self.getframerate())
def getparamstuple(self, decodebytes=False, nframes=0):
"""Gets supported all parameters of the current device in namedtuple object.
Args:
decodebytes (bool): ``True`` decodes bytes objects into string
objects for ``'comptype'`` and ``'compname'``.
The standard libraries of wave and sunau expect a decoded
string object while the standard aifc library expects
a bytes object.
nframes (int): Specify the number of frames of an audio file,
otherwise 4th element of the output tuple will be 0.
Returns:
namedtuple: A namedtuple object including all parameters of
the current device whose entries are
``(nchannels, sampwidth, framerate, nframes, comptype, compname)`` .
This object is compatible with the argument of ``setparams()``
of standard libraries such as aifc, wave, or sunau.
"""
return _standard_lib_params(self.getnchannels(), self.getsampwidth(),
self.getframerate(), nframes,
self.getcomptype(decodebytes),
self.getcompname(decodebytes))
def _checksecondopen(self, mode):
if (mode[0] == 'w' and self._read_mode[0] == 'r') \
or (mode[0] == 'r' and self._write_mode[0] == 'w'):
raise RuntimeError('cannot set parameters in 2nd open call')
def open(self, mode, *, callback=None, deviceindex=-1, samprate=0, sampbit=0,
nchannels=0, blockingmode=-1, buffersize=0, nbuffers=0, params=None):
"""Opens the current audio device.

@@ -376,5 +513,51 @@

a benefit that the processing becomes faster.
callback (tuple): The callback function included in tuple which contains
all arguments for :func:`~spaudio.SpAudio.setcallback` method.
deviceindex (int): The index of the audio device.
samprate (double): Sample rate of the device.
sampbit (int): Bits/sample of the device.
nchannels (int): The number of channels of the device.
blockingmode (int): 0 = blocking mode (default), 1 = nonblocking mode.
buffersize (int): The buffer size of the device.
nbuffers (int): The number of buffers of the device.
params (dict): A dict object which can contain any above parameters
from `samprate` to `nbuffers`.
Note:
Support for the keyword arguments was added in Version 0.7.5.
"""
if self._audio is None:
raise RuntimeError('driver must be loaded')
if callback is not None:
if isinstance(callback, tuple):
self.setcallback(*callback)
else:
self.setcallback(OUTPUT_POSITION_CALLBACK | OUTPUT_BUFFER_CALLBACK,
callback, None)
if params is not None:
self._checksecondopen(mode)
self.setparams(params)
if deviceindex != -1:
self._checksecondopen(mode)
self.selectdevice(deviceindex)
if samprate != 0:
self._checksecondopen(mode)
self.setsamprate(samprate)
if sampbit != 0:
self._checksecondopen(mode)
self.setsampbit(sampbit)
if nchannels != 0:
self._checksecondopen(mode)
self.setnchannels(nchannels)
if blockingmode != -1:
self._checksecondopen(mode)
self.setblockingmode(blockingmode)
if buffersize != 0:
self._checksecondopen(mode)
self.setbuffersize(buffersize)
if nbuffers != 0:
self._checksecondopen(mode)
self.setnbuffers(nbuffers)
if mode[0] == 'r':

@@ -394,2 +577,3 @@ if self._write_mode[-1] == 'o':

raise RuntimeError('unknown open mode: %s' % mode)
global _ischarbinary

@@ -456,4 +640,4 @@ if _ischarbinary:

the second argument must be ``True``.
nframesflag: ``True`` makes the first argument be
treated as the number of frames.
nframesflag (bool): ``True`` makes the first argument be
treated as the number of frames.

@@ -486,4 +670,4 @@ Returns:

the second argument must be ``True``.
nframesflag: ``True`` makes the first argument be
treated as the number of frames.
nframesflag (bool): ``True`` makes the first argument be
treated as the number of frames.

@@ -525,4 +709,4 @@ Returns:

the second argument must be ``True``.
nframesflag: ``True`` makes the first argument be
treated as the number of frames.
nframesflag (bool): ``True`` makes the first argument be
treated as the number of frames.

@@ -556,4 +740,4 @@ Returns:

the second argument must be ``True``.
nframesflag: ``True`` makes the first argument be
treated as the number of frames.
nframesflag (bool): ``True`` makes the first argument be
treated as the number of frames.

@@ -570,3 +754,3 @@ Returns:

def readraw(self, data):
def readraw(self, data, offset=0, length=0):
"""Reads raw data from the audio device.

@@ -577,5 +761,11 @@

A buffer to receive raw data from the audio device.
offset (int): Optional offset location for the buffer.
length (int): Optional read length for the buffer.
Returns:
int: The read size if successful, -1 otherwise.
Note:
The keyword arguments of `offset` and `length` were
introduced in Version 0.7.5.
"""

@@ -597,6 +787,10 @@ if self._audio is None:

raise RuntimeError('unsupported data type')
nread = _spaudio_c.spReadAudioBuffer(self._audio, buffer)
offsetbyte = int(offset) * self.getrawsampwidth() if offset > 0 else 0
lengthbyte = int(length) * self.getrawsampwidth() if length > 0 else 0
nread = _spaudio_c.spReadAudioBuffer_(self._audio, buffer, offsetbyte, lengthbyte)
return nread // self.getrawsampwidth() if nread > 0 else nread
def writeraw(self, data):
def writeraw(self, data, offset=0, length=0):
"""Writes raw data to the audio device.

@@ -607,5 +801,11 @@

A buffer to send raw data to the audio device.
offset (int): Optional offset location for the buffer.
length (int): Optional write length for the buffer.
Returns:
int: The written size if successful, -1 otherwise.
Note:
The keyword arguments of `offset` and `length` were
introduced in Version 0.7.5.
"""

@@ -627,6 +827,10 @@ if self._audio is None:

raise RuntimeError('unsupported data type')
nwrite = _spaudio_c.spWriteAudioBuffer(self._audio, buffer)
offsetbyte = int(offset) * self.getrawsampwidth() if offset > 0 else 0
lengthbyte = int(length) * self.getrawsampwidth() if length > 0 else 0
nwrite = _spaudio_c.spWriteAudioBuffer_(self._audio, buffer, offsetbyte, lengthbyte)
return nwrite // self.getrawsampwidth() if nwrite > 0 else nwrite
def read(self, data, weight=1.0):
def read(self, data, weight=1.0, offset=0, length=0):
"""Reads data to double array from the audio device.

@@ -638,5 +842,11 @@

weight (double): A weighting factor multiplied to data after reading.
offset (int): Optional offset location for the buffer.
length (int): Optional read length for the buffer.
Returns:
int: The read size if successful, -1 otherwise.
Note:
The keyword arguments of `offset` and `length` were
introduced in Version 0.7.5.
"""

@@ -662,5 +872,6 @@ if self._audio is None:

raise RuntimeError('unsupported data type')
return _spaudio_c.spReadAudioDoubleBufferWeighted_(self._audio, buffer, weight)
return _spaudio_c.spReadAudioDoubleBufferWeighted_(self._audio, buffer,
weight, offset, length)
def write(self, data, weight=1.0):
def write(self, data, weight=1.0, offset=0, length=0):
"""Writes data of double array to the audio device.

@@ -672,5 +883,11 @@

weight (double): A weighting factor multiplied to data before writing.
offset (int): Optional offset location for the buffer.
length (int): Optional write length for the buffer.
Returns:
int: The written size if successful, -1 otherwise.
Note:
The keyword arguments of `offset` and `length` were
introduced in Version 0.7.5.
"""

@@ -696,3 +913,4 @@ if self._audio is None:

raise RuntimeError('unsupported data type')
return _spaudio_c.spWriteAudioDoubleBufferWeighted_(self._audio, buffer, weight)
return _spaudio_c.spWriteAudioDoubleBufferWeighted_(self._audio, buffer, weight,
offset, length)

@@ -706,3 +924,14 @@

def getdrivername(index):
"""Gets the name of the driver which has the index specified."""
"""Gets the name of the driver which has the index specified.
Args:
index (int): The index associated with the audio driver.
Returns:
string: A string containing the driver name.
Raises:
ValueError: If `index` is greater than or equal to
the number of drivers.
"""
if index < 0 or index >= getndrivers():

@@ -744,3 +973,15 @@ raise ValueError('0 <= index < %d is required'

def getdriverdevicename(index, drivername=None):
"""Gets the name of the device in the driver."""
"""Gets the name of the device in the driver.
Args:
index (int): The index associated with the audio device.
drivername (str): Optional driver name.
Returns:
string: A string containing the device name.
Raises:
ValueError: If `index` is greater than or equal to
the number of devices.
"""
global _ischarbinary

@@ -767,2 +1008,64 @@ if index < 0 or index >= getndriverdevices(drivername):

def open(mode, *, drivername=None, callback=None, deviceindex=-1, samprate=0,
sampbit=0, nchannels=0, blockingmode=-1, buffersize=0, nbuffers=0,
params=None):
"""Opens an audio device. This function may be used in a ``with`` statement.
Args:
mode (str): Device opening mode. ``'r'`` means read mode, ``'w'`` means
write mode. ``'ro'`` and ``'wo'`` which mean read only and
write only modes are also supported. Although these modes
validate only the specified mode, some environments recieve
a benefit that the processing becomes faster.
In this function, ``'rw'`` which means open with ``'w'``
after ``'r'`` is also supported.
drivername (str): The driver name to initialize.
callback (tuple): The callback function included in tuple which contains
all arguments for :func:`~spaudio.SpAudio.setcallback` method.
deviceindex (int): The index of the audio device.
samprate (double): Sample rate of the device.
sampbit (int): Bits/sample of the device.
nchannels (int): The number of channels of the device.
blockingmode (int): 0 = blocking mode (default), 1 = nonblocking mode.
buffersize (int): The buffer size of the device.
nbuffers (int): The number of buffers of the device.
params (dict): A dict object which can contain any above parameters
from `samprate` to `nbuffers`.
Returns:
SpAudio: A new instance of :class:`~spaudio.SpAudio` class.
Note:
This function was introduced in Version 0.7.5.
"""
audio = SpAudio(drivername)
if mode[0] == 'r':
modefirst = 'ro' if mode[1] == 'o' else 'r'
elif mode[0] == 'w':
modefirst = 'wo' if mode[1] == 'o' else 'w'
else:
raise RuntimeError('unknown open mode: %s' % mode)
modesecond = None
if mode[0] == 'w':
if mode[1] == 'r':
modesecond = 'r'
elif mode[1] != 'o':
raise RuntimeError('unknown open mode: %s' % mode)
elif mode[0] == 'r':
if mode[1] == 'w':
modesecond = 'w'
elif mode[1] != 'o':
raise RuntimeError('unknown open mode: %s' % mode)
audio.open(modefirst, callback=callback, deviceindex=deviceindex, samprate=samprate,
sampbit=sampbit, nchannels=nchannels, blockingmode=blockingmode,
buffersize=buffersize, nbuffers=nbuffers, params=params)
if modesecond is not None:
audio.open(modesecond)
return audio
if __name__ == '__main__':

@@ -769,0 +1072,0 @@ driverlist = getdriverlist()

@@ -61,3 +61,3 @@ # -*- coding: utf-8 -*-

__version__ = '0.7.14'
__version__ = '0.7.15'

@@ -698,4 +698,4 @@

the second argument must be ``True``.
nframesflag: ``True`` makes the first argument be
treated as the number of frames.
nframesflag (bool): ``True`` makes the first argument be
treated as the number of frames.

@@ -728,4 +728,4 @@ Returns:

the second argument must be ``True``.
nframesflag: ``True`` makes the first argument be
treated as the number of frames.
nframesflag (bool): ``True`` makes the first argument be
treated as the number of frames.

@@ -767,4 +767,4 @@ Returns:

the second argument must be ``True``.
nframesflag: ``True`` makes the first argument be
treated as the number of frames.
nframesflag (bool): ``True`` makes the first argument be
treated as the number of frames.

@@ -798,4 +798,4 @@ Returns:

the second argument must be ``True``.
nframesflag: ``True`` makes the first argument be
treated as the number of frames.
nframesflag (bool): ``True`` makes the first argument be
treated as the number of frames.

@@ -856,7 +856,7 @@ Returns:

Args:
rawdata: Input bytes or bytearray object.
sampwidth: bytes/sample of rawdata
bigendian_or_signed8bit: Specify ``True`` if endianness of
rawdata is big endian (16- or 32-bit case) or
data type of rawdata (8-bit case) is signed 8-bit.
rawdata (bytes or bytearray): Input bytes or bytearray object.
sampwidth (int): bytes/sample of rawdata
bigendian_or_signed8bit (bool): Specify ``True`` if endianness
of rawdata is big endian (16- or 32-bit case) or data type
of rawdata (8-bit case) is signed 8-bit.

@@ -882,6 +882,6 @@ Returns:

Args:
inarray: Input bytearray object.
sampwidth: bytes/sample of output data.
bigendian_or_signed8bit: Specify ``True`` if endianness of
output data is big endian (16- or 32-bit case) or
inarray (array.array): Input array object.
sampwidth (int): bytes/sample of output data.
bigendian_or_signed8bit (bool): Specify ``True`` if endianness
of output data is big endian (16- or 32-bit case) or
data type of output data is signed 8-bit (8-bit case).

@@ -903,3 +903,3 @@

def readraw(self, data):
def readraw(self, data, offset=0, length=0):
"""Reads raw data from the audio file.

@@ -910,5 +910,11 @@

A buffer to receive raw data from the audio file.
offset (int): Optional offset location for the buffer.
length (int): Optional read length for the buffer.
Returns:
int: The read size if successful, -1 otherwise.
Note:
The keyword arguments of `offset` and `length` were
introduced in Version 0.7.5.
"""

@@ -930,3 +936,8 @@ if self._plugin is None:

raise RuntimeError('unsupported data type')
nread = _spplugin_c.spReadPluginInByte_(self._plugin, buffer)
offsetbyte = int(offset) * self.getrawsampwidth() if offset > 0 else 0
lengthbyte = int(length) * self.getrawsampwidth() if length > 0 else 0
nread = _spplugin_c.spReadPluginInByte_(self._plugin, buffer,
offsetbyte, lengthbyte)
nread2 = nread // self.getrawsampwidth() if nread > 0 else nread

@@ -937,3 +948,3 @@ if nread > 0:

def read(self, data, weight=1.0):
def read(self, data, weight=1.0, offset=0, length=0):
"""Reads data to double array from the audio file.

@@ -945,5 +956,11 @@

weight (double): A weighting factor multiplied to data after reading.
offset (int): Optional offset location for the buffer.
length (int): Optional read length for the buffer.
Returns:
int: The read size if successful, -1 otherwise.
Note:
The keyword arguments of `offset` and `length` were
introduced in Version 0.7.5.
"""

@@ -969,3 +986,4 @@ if self._plugin is None:

raise RuntimeError('unsupported data type')
nread = _spplugin_c.spReadPluginDoubleWeighted_(self._plugin, buffer, weight)
nread = _spplugin_c.spReadPluginDoubleWeighted_(self._plugin, buffer,
weight, offset, length)
if nread > 0:

@@ -975,3 +993,3 @@ self._currentpos += nread // self._waveinfo_c.num_channel

def writeraw(self, data):
def writeraw(self, data, offset=0, length=0):
"""Writes raw data to the audio file.

@@ -982,5 +1000,11 @@

A buffer to send raw data to the audio file.
offset (int): Optional offset location for the buffer.
length (int): Optional write length for the buffer.
Returns:
int: The written size if successful, -1 otherwise.
Note:
The keyword arguments of `offset` and `length` were
introduced in Version 0.7.5.
"""

@@ -1002,3 +1026,8 @@ if self._plugin is None:

raise RuntimeError('unsupported data type')
nwrite = _spplugin_c.spWritePluginInByte_(self._plugin, buffer)
offsetbyte = int(offset) * self.getrawsampwidth() if offset > 0 else 0
lengthbyte = int(length) * self.getrawsampwidth() if length > 0 else 0
nwrite = _spplugin_c.spWritePluginInByte_(self._plugin, buffer,
offsetbyte, lengthbyte)
nwrite2 = nwrite // self.getrawsampwidth() if nwrite > 0 else nwrite

@@ -1009,3 +1038,3 @@ if nwrite > 0:

def write(self, data, weight=1.0):
def write(self, data, weight=1.0, offset=0, length=0):
"""Writes data of double array to the audio file.

@@ -1017,5 +1046,11 @@

weight (double): A weighting factor multiplied to data before writing.
offset (int): Optional offset location for the buffer.
length (int): Optional write length for the buffer.
Returns:
int: The written size if successful, -1 otherwise.
Note:
The keyword arguments of `offset` and `length` were
introduced in Version 0.7.5.
"""

@@ -1041,3 +1076,4 @@ if self._plugin is None:

raise RuntimeError('unsupported data type')
nwrite = _spplugin_c.spWritePluginDoubleWeighted_(self._plugin, buffer, weight)
nwrite = _spplugin_c.spWritePluginDoubleWeighted_(self._plugin, buffer,
weight, offset, length)
if nwrite > 0:

@@ -1051,2 +1087,3 @@ self._currentpos += nwrite // self._waveinfo_c.num_channel

"""Opens the file associated with the filename by using a plugin.
This function may be used in a ``with`` statement.

@@ -1053,0 +1090,0 @@ Args:

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet