def exec_3(): '''################### Build wavefile : source #####################''' freqList = [262, 294, 330, 349, 392, 440, 494, 523] # ドレミファソラシド timelabel = get_TimeLabel_Now() """振幅A、基本周波数f0、サンプリング周波数 fs、 長さlength秒の正弦波を作成して返す""" #createSineWave (A, f0, fs, length) A = 1.0 f0 = freqList[0] fs = 8000.0 length = 1.0 (analogdata, bindata) = createSineWave_2(A, f0, fs, length) # (analogdata, bindata) = createSineWave_2(1.0, f[0], 8000.0, 1.0) dpath = "audio" fname = "test_2.sinewave-%d.%s.wav" % (f0, timelabel) fpath = "%s/%s" % (dpath, fname) wf = wl.WaveFile(fname) wf.nchannels = 1 wf.samplewidth = fs # wf.framerate=framerate # wf.nframes=nframes # wf.comptype = wavefile_src.comptype # wf.compname = wavefile_src.compname wf.analogdata = analogdata wf.bindata = bindata print "[%s:%d] wf =>" % (thisfile(), linenum()) for i in range(0, 10) : print "analogdata[%d] = %f" % (i, analogdata[i]) '''################### copy #####################''' wf_2 = wl.copy_WaveFile(wf) # wf_2 = wablibs.copy_WaveFile(wf) ### report for i in range(0, 10) : print "wf_2.analogdata[%d] = %f" % (i, wf_2.analogdata[i])
def exec_1(): freqList = [262, 294, 330, 349, 392, 440, 494, 523] # ドレミファソラシド wflist = [] timelabel = get_TimeLabel_Now() for f in freqList: """ 振幅A、基本周波数f0、サンプリング周波数 fs、 長さlength秒の正弦波を作成して返す createSineWave (A, f0, fs, length) """ (analogdata, bindata) = createSineWave_2(1.0, f, 8000.0, 1.0) # data = createSineWave(1.0, f, 8000.0, 1.0) fname = "test_2.sinewave-%d.%s.wav" % (f, timelabel) # fname = "test_2.sinewave-%d.%s.wav" % (f, get_TimeLabel_Now()) wf = wl.WaveFile(fname) wf.samplewidth = 8000 wf.binwave = bindata wf.analogdata = analogdata wflist.append(wf) for wf in wflist : print "[%s:%d] fname => '%s' (nchannels = %d / samplewidth = %f)" \ % (thisfile(), linenum(), wf.fname,\ wf.nchannels, wf.samplewidth) print "[%s:%d] data => " % (thisfile(), linenum()) print wf.binwave[0:10] print wf.analogdata[0:10]
def exec_2(): freqList = [262, 294, 330, 349, 392, 440, 494, 523] # ドレミファソラシド timelabel = get_TimeLabel_Now() """振幅A、基本周波数f0、サンプリング周波数 fs、 長さlength秒の正弦波を作成して返す""" #createSineWave (A, f0, fs, length) A = 1.0 f0 = freqList[0] fs = 8000.0 length = 1.0 (analogdata, bindata) = createSineWave_2(A, f0, fs, length) # (analogdata, bindata) = createSineWave_2(1.0, f[0], 8000.0, 1.0) dpath = "audio" fname = "test_2.sinewave-%d.%s.wav" % (f0, timelabel) fpath = "%s/%s" % (dpath, fname) wf = wl.WaveFile(fname) wf.nchannels = 1 wf.samplewidth = fs # wf.framerate=framerate # wf.nframes=nframes # wf.comptype = wavefile_src.comptype # wf.compname = wavefile_src.compname wf.analogdata = analogdata wf.bindata = bindata for i in range(0, 10) : print "analogdata[%d] = %f" % (i, analogdata[i])
def data_Absolutize(wavefile, generate_new = False, fname = '') : # def data_Absolutize(wavefile, generate_new = True, fname = '') : ################### # init : wf ##################### wf = None if generate_new == True : wf = wl.WaveFile() else : wf = wavefile ################### # absolutize : analog ##################### print "[%s:%d] len(wf.analogdata) => %d" % (thisfile(), linenum(), len(wf.analogdata)) length = len(wf.analogdata) wf.analogdata = [math.fabs(wf.analogdata[i]) for i in range(len(wf.analogdata))] # wf.analogdata = [math.fabs(wf.analogdata[i]) for i in wf.analogdata] # for i in range(length) : # # wf.analogdata[i] = math.fabs(wf.analogdata[i]) ################### # absolutize : binary ##################### wf.bindata = [int(x * 32767.0) for x in wf.analogdata] wf.bindata = struct.pack("h" * len(wf.bindata), *wf.bindata) '''################### return ###################''' return wf
def exec_2(options): '''################### Build wavefile : source #####################''' freqList = [262, 294, 330, 349, 392, 440, 494, 523] # ドレミファソラシド timelabel = get_TimeLabel_Now() """振幅A、基本周波数f0、サンプリング周波数 fs、 長さlength秒の正弦波を作成して返す""" #createSineWave (A, f0, fs, length) A = 1.0 f0 = freqList[0] # fs = 16000.0 # fs = 44100.0 fs = 8000.0 length = 2.0 # length = 1.0 (analogdata, bindata, radians) = wl.createSineWave(A, f0, fs, length) # (analogdata, bindata) = createSineWave_2(A, f0, fs, length) # (analogdata, bindata) = createSineWave_2(1.0, f[0], 8000.0, 1.0) dpath = "audio" fname = "test_1.sine-%d.%s.wav" % (f0, timelabel) fpath = "%s/%s" % (dpath, fname) wf = wl.WaveFile(fname) wf.nchannels = 1 wf.samplewidth = fs # wf.framerate=framerate # wf.nframes=nframes # wf.comptype = wavefile_src.comptype # wf.compname = wavefile_src.compname wf.analogdata = analogdata wf.bindata = bindata wf.radians = radians print "[%s:%d] wf =>" % (thisfile(), linenum()) for i in range(100, 110) : # for i in range(0, 10) : print "wf.analogdata[%d] = %f (radian = %f)" % (i, wf.analogdata[i], wf.radians[i]) # print "wf.analogdata[%d] = %f" % (i, wf.analogdata[i]) # print "analogdata[%d] = %f" % (i, analogdata[i]) '''################### save file : wf #####################''' dpath_dst = "audio" wl.save_WaveFile__Class(wf, dpath_dst=dpath_dst) '''################### Amplitude down ###################''' ### set value val = None # print "[%s:%d] len(result) => %d" % (thisfile(), linenum(), len(result)) # print "[%s:%d] options =>" % (thisfile(), linenum()) # print options for pair in options : # for pair in result : if pair[0] == '-v' : val = int(pair[1]) if val == None : val = 200 # default value # val = 200 # 600/1000 # val = 600 # 600/1000 amplitude_Down(wf, val) print "[%s:%d] absolutize => processed" % (thisfile(), linenum()) # for i in range(100, 110) : # # for i in range(0, 10) : # # print "wf.analogdata[%d] = %f" % (i, wf.analogdata[i]) # # print "analogdata[%d] = %f" % (i, analogdata[i]) '''################### save file : wf #####################''' dpath_dst = "audio" fname_trunk, fname_ext = os.path.splitext(wf.fname) description = "Amplitude-down" wf.fname = "%s_%s_val-%d%s" % (fname_trunk, description, val, fname_ext) wl.save_WaveFile__Class(wf, dpath_dst=dpath_dst) print "[%s:%d] file saved => '%s'" % (thisfile(), linenum(), wf.fname)
def exec_1(): '''################### Build wavefile : source #####################''' freqList = [262, 294, 330, 349, 392, 440, 494, 523] # ドレミファソラシド timelabel = get_TimeLabel_Now() """振幅A、基本周波数f0、サンプリング周波数 fs、 長さlength秒の正弦波を作成して返す""" #createSineWave (A, f0, fs, length) A = 1.0 f0 = freqList[0] fs = 16000.0 # fs = 44100.0 # fs = 8000.0 length = 2.0 # length = 1.0 (analogdata, bindata) = createSineWave_2(A, f0, fs, length) # (analogdata, bindata) = createSineWave_2(1.0, f[0], 8000.0, 1.0) dpath = "audio" fname = "test_1.sine-%d.%s.wav" % (f0, timelabel) fpath = "%s/%s" % (dpath, fname) wf = wl.WaveFile(fname) wf.nchannels = 1 wf.samplewidth = fs # wf.framerate=framerate # wf.nframes=nframes # wf.comptype = wavefile_src.comptype # wf.compname = wavefile_src.compname wf.analogdata = analogdata wf.bindata = bindata print "[%s:%d] wf =>" % (thisfile(), linenum()) for i in range(100, 110) : # for i in range(0, 10) : print "wf.analogdata[%d] = %f" % (i, wf.analogdata[i]) # print "analogdata[%d] = %f" % (i, analogdata[i]) '''################### save file : wf #####################''' dpath_dst = "audio" wl.save_WaveFile__Class(wf, dpath_dst=dpath_dst) '''################### abosolutize ###################''' data_Absolutize(wf) print "[%s:%d] absolutize => processed" % (thisfile(), linenum()) for i in range(100, 110) : # for i in range(0, 10) : print "wf.analogdata[%d] = %f" % (i, wf.analogdata[i]) # print "analogdata[%d] = %f" % (i, analogdata[i]) '''################### save file : wf #####################''' dpath_dst = "audio" fname_trunk, fname_ext = os.path.splitext(wf.fname) wf.fname = "%s_Absolute%s" % (fname_trunk, fname_ext) wl.save_WaveFile__Class(wf, dpath_dst=dpath_dst) print "[%s:%d] file saved => '%s'" % (thisfile(), linenum(), wf.fname)
timelabel = lib.get_TimeLabel_Now() for f in freqList: """ 振幅A、基本周波数f0、サンプリング周波数 fs、 長さlength秒の正弦波を作成して返す createSineWave (A, f0, fs, length) """ (analogdata, bindata) = createSineWave_2(1.0, f, 8000.0, 1.0) # data = createSineWave(1.0, f, 8000.0, 1.0) fname = "test_2.sinewave-%d.%s.wav" % (f, timelabel) # fname = "test_2.sinewave-%d.%s.wav" % (f, lib.get_TimeLabel_Now()) wf = wl.WaveFile(fname) wf.samplewidth = 8000 wf.bindata = bindata wf.analogdata = analogdata # wf.binwave = data # print "[%s:%d] fname => '%s' (nchannels = %d / samplewidth = %f)" \ # % (lib.thisfile(), lib.linenum(), wf.fname,\ # wf.nchannels, wf.samplewidth) wflist.append(wf) # wl.save_WaveFile(fname, data)