scipyとか使ってみる
octaveからscipy/numpy/matplotlibに移行する事にした.
octaveも別に悪くはないんだけど,GUIとの連携が弱すぎた…
とりあえず,このサイトを参考にしてスペクトログラムを表示してみた.
spectrogram.py
#!/usr/bin/env python
import sys
import wave
import urllib2
import scipy as sp
import matplotlib.pyplot as plt
if __name__ == "__main__":
if len( sys.argv ) > 1:
wo = wave.open( sys.argv[1], 'rb' )
else:
url = 'http://www.it.ice.uec.ac.jp/SRV-DB/archive/HENSHU00_PF00/HENSHU00_PF00_0951.wav'
wo = wave.openfp( urllib2.urlopen( url ).fp, 'rb' )
chunk = 65536
data = sp.fromstring( wo.readframes( chunk ), sp.int16 )
srate = wo.getframerate()
nFFT = 1024
window = sp.hamming(nFFT)
Pxx, freq, bins, im = plt.specgram(
data,
NFFT=nFFT,
Fs=srate,
noverlap=512,
window=window)
plt.show()
Author And Source
この問題について(scipyとか使ってみる), 我々は、より多くの情報をここで見つけました https://qiita.com/ar90n@github/items/6a13e1043d4a5374292f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .