1
私はforループでループするプログラムを用意しており、正弦波をwavファイルとして保存してキーボードの音域を作成しています。ループは-intから+ intに移動し、各繰り返しでこれらのWAVファイルを保存します。唯一の問題は、x = 2付近でファイルの順序が乱れていることです。なぜこのようなことが起こるのか、どうやって解決するのか分かりません。WAVファイルが間違った順序で保存されています
out_int = 0
for x in xrange(-43, 47, 1):
CFreq = CFreq * 2**(x/12.)
out_int += 1
.
.
.
wavdata = np.zeros(len(data), np.int16)
wavdata[:] = data/max(data) * 2**15
wavfile = wave.open("WavFiles/Modes_%02d_.wav" % (out_int), "wb")
は、私はそれがいくつかのメモを作成し、前のサンプルを保存する前にそれを保存するために時間がかかります推測している理由である、これらのファイルに入って大量のデータをtheresの。 各サンプルの出力周波数は正しいが、消灯します。
次のコードに進む前に、各ファイルの書き込みと保存を確実に行うための方法はありますか?私は、ループの順序を正の値から負の値に変更しようとしましたが、負の反復のサンプルが乱されていました。
私は私のファイルプレイヤーは、右のファイルを再生していなかったことに気づき、および順序は大丈夫でした! –