jupyter notebookでサンプルwavのフーリエ変換を行う中、『N』と『span』の意味が分かりません。
『N』はデータ数と理解してますが、『span』は周波数間隔というものでしょうか。
また、各数を変更するとエラーになったりならなかったりするのはなぜでしょうか。
※N=22050,span=4
とすると、エラーなく実行できました。
該当のソースコード
import wave import struct from scipy import fromstring, int32 import numpy as np from pylab import * %matplotlib inline wavfile = '440Hz.wav' #サンプルwavファイル wr = wave.open(wavfile, "rb") ch = wr.getnchannels() width = wr.getsampwidth() fr = wr.getframerate() fn = wr.getnframes() N = 22050 span = 4 print('チャンネル', ch) print('総フレーム数', fn) print('サンプル時間', 1.0 * N * span / fr, '秒') origin = wr.readframes(wr.getnframes()) data = origin[:N * span * ch * width] wr.close() print('現配列長', len(origin)) print('サンプル配列長: ', len(data))
補足情報(FW/ツールのバージョンなど)
python3.7.4
回答1件
あなたの回答
tips
プレビュー