3
誰でもPython 2.7でノートとコードを生成するための良いライブラリを教えていただけますか?私はPythonInfoWikiを見てきましたが、PyAudioはちょうどクラッシュし、それ以外のものはトーンを生成しないようです。Pythonでノートやコードを生成するにはどうしたらいいですか?
誰でもPython 2.7でノートとコードを生成するための良いライブラリを教えていただけますか?私はPythonInfoWikiを見てきましたが、PyAudioはちょうどクラッシュし、それ以外のものはトーンを生成しないようです。Pythonでノートやコードを生成するにはどうしたらいいですか?
それが役立つかどうかは知りませんが、ここでは周波数と振幅を与えるに基づいて複雑な音をsynthetizesいくつかのコードです:私はノートや和音を生成するコード使用しています
import math
import wave
import struct
def synthComplex(freq=[440],coef=[1], datasize=10000, fname="test.wav"):
frate = 44100.00
amp=8000.0
sine_list=[]
for x in range(datasize):
samp = 0
for k in range(len(freq)):
samp = samp + coef[k] * math.sin(2*math.pi*freq[k]*(x/frate))
sine_list.append(samp)
wav_file=wave.open(fname,"w")
nchannels = 1
sampwidth = 2
framerate = int(frate)
nframes=datasize
comptype= "NONE"
compname= "not compressed"
wav_file.setparams((nchannels, sampwidth, framerate, nframes, comptype, compname))
for s in sine_list:
wav_file.writeframes(struct.pack('h', int(s*amp/2)))
wav_file.close()
synthComplex([440,880,1200], [0.4,0.3,0.1], 30000, "tone.wav")
Python。あなたは、最初のパラメータ、振幅リスト(最初のものと同じサイズ)、サンプル数、ファイル名の頻度リストを表示します。指定された組み合わせのwavファイルが生成されます。
最初の2つの引数を1組のタプルリストにしてみませんか? ([440、.4)、(880、.3)、(1200、.1)] ' – user470379
...そうです、それは良いアプローチです。この文脈で、はるかに理にかなっています、チップのおかげで! – Nemeth
このコードの開発をどこからでも追跡できますか(または1つでしたか?) - gplアプリケーションで使用するのは大丈夫ですか? – Sirex