- Timestamp:
- Feb 12, 2013, 8:08:51 PM (12 years ago)
- Branches:
- feature/autosink, feature/cnn, feature/cnn_org, feature/constantq, feature/crepe, feature/crepe_org, feature/pitchshift, feature/pydocstrings, feature/timestretch, fix/ffmpeg5, master, pitchshift, sampler, timestretch, yinfft+
- Children:
- deb3d65
- Parents:
- ae81726
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
python/demos/demo_onset_file.py
rae81726 rf36277c 20 20 o = onset("default", win_s, hop_s) 21 21 22 desc = [] 23 tdesc = [] 24 22 25 block_read = 0 23 26 allsamples_max = zeros(0,) … … 27 30 allsamples_max = hstack([allsamples_max, new_maxes]) 28 31 isbeat = o(samples) 32 desc.append(o.get_descriptor()) 33 tdesc.append(o.get_thresholded_descriptor()) 29 34 if isbeat: 30 35 thisbeat = (block_read - 4. + isbeat[0]) * hop_s / samplerate … … 36 41 # do plotting 37 42 from numpy import arange 38 from pylab import plot, show, xlabel, ylabel, legend, ylim, subplot, axis 43 import matplotlib.pyplot as plt 39 44 allsamples_max = (allsamples_max > 0) * allsamples_max 40 45 allsamples_max_times = [ float(t) * hop_s / downsample / samplerate for t in range(len(allsamples_max)) ] 41 plot(allsamples_max_times, allsamples_max, '-b') 42 plot(allsamples_max_times, -allsamples_max, '-b') 43 axis(xmin = 0., xmax = max(allsamples_max_times) ) 44 for stamp in onsets: plot([stamp, stamp], [-1., 1.], '.-r') 45 xlabel('time (s)') 46 ylabel('amplitude') 47 show() 48 46 plt1 = plt.axes([0.1, 0.75, 0.8, 0.19]) 47 plt2 = plt.axes([0.1, 0.1, 0.8, 0.65], sharex = plt1) 48 plt.rc('lines',linewidth='.8') 49 plt1.plot(allsamples_max_times, allsamples_max, '-b') 50 plt1.plot(allsamples_max_times, -allsamples_max, '-b') 51 for stamp in onsets: plt1.plot([stamp, stamp], [-1., 1.], '-r') 52 plt1.axis(xmin = 0., xmax = max(allsamples_max_times) ) 53 plt1.xaxis.set_visible(False) 54 desc_times = [ float(t) * hop_s / samplerate for t in range(len(desc)) ] 55 desc_plot = [d / max(desc) for d in desc] 56 plt2.plot(desc_times, desc_plot, '-g') 57 tdesc_plot = [d / max(desc) for d in tdesc] 58 for stamp in onsets: plt2.plot([stamp, stamp], [min(tdesc_plot), max(desc_plot)], '-r') 59 plt2.plot(desc_times, tdesc_plot, '-y') 60 plt2.axis(ymin = min(tdesc_plot), ymax = max(desc_plot)) 61 plt.xlabel('time (s)') 62 #plt.savefig('/tmp/t.png', dpi=200) 63 plt.show()
Note: See TracChangeset
for help on using the changeset viewer.