Mercurial > code > home > repos > light9
annotate bin/wavecurve @ 517:f15ffbfc5cd6
speed up curvecalc tk update to 10ms (since we recently sped up the recalcs)
Ignore-this: 6acdb9b5aab226565d61116c93118b12
author | drewp@bigasterisk.com |
---|---|
date | Mon, 29 Jun 2009 04:08:43 +0000 |
parents | 5a83935377f9 |
children | 94039df5cdd9 |
rev | line source |
---|---|
221
4a51d4eefa95
add wavecurve from semprini with new cmdline ui
drewp@bigasterisk.com
parents:
diff
changeset
|
1 #!/usr/bin/env python |
4a51d4eefa95
add wavecurve from semprini with new cmdline ui
drewp@bigasterisk.com
parents:
diff
changeset
|
2 import os, sys, optparse |
4a51d4eefa95
add wavecurve from semprini with new cmdline ui
drewp@bigasterisk.com
parents:
diff
changeset
|
3 import run_local |
4a51d4eefa95
add wavecurve from semprini with new cmdline ui
drewp@bigasterisk.com
parents:
diff
changeset
|
4 from light9.wavepoints import simp |
4a51d4eefa95
add wavecurve from semprini with new cmdline ui
drewp@bigasterisk.com
parents:
diff
changeset
|
5 |
357
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
6 |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
7 def createCurve(inpath, outpath, t): |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
8 print "reading %s, writing %s" % (inpath, outpath) |
436 | 9 points = simp(inpath.replace('.ogg', '.wav'), seconds_per_average=t) |
357
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
10 |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
11 f = file(outpath, 'w') |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
12 for time_val in points: |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
13 print >>f, "%s %s" % time_val |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
14 |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
15 |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
16 |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
17 parser = optparse.OptionParser(usage="""%prog inputSong.wav outputCurve |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
18 |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
19 You probably just want -a |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
20 |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
21 """) |
221
4a51d4eefa95
add wavecurve from semprini with new cmdline ui
drewp@bigasterisk.com
parents:
diff
changeset
|
22 parser.add_option("-t",type="float",default=.01, |
4a51d4eefa95
add wavecurve from semprini with new cmdline ui
drewp@bigasterisk.com
parents:
diff
changeset
|
23 help="seconds per sample (default .01, .07 is smooth)") |
357
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
24 parser.add_option("-a", action="store_true", |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
25 help="make standard curves for all songs") |
221
4a51d4eefa95
add wavecurve from semprini with new cmdline ui
drewp@bigasterisk.com
parents:
diff
changeset
|
26 options,args = parser.parse_args() |
4a51d4eefa95
add wavecurve from semprini with new cmdline ui
drewp@bigasterisk.com
parents:
diff
changeset
|
27 |
4a51d4eefa95
add wavecurve from semprini with new cmdline ui
drewp@bigasterisk.com
parents:
diff
changeset
|
28 |
357
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
29 if options.a: |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
30 from light9 import showconfig |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
31 from light9.namespaces import L9 |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
32 from rdflib import RDF |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
33 graph = showconfig.getGraph() |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
34 for song in graph.subjects(RDF.type, L9['Song']): |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
35 inpath = showconfig.songOnDisk(song) |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
36 for curveName, t in [('music', .01), |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
37 ('smooth_music', .07)]: |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
38 outpath = showconfig.curvesDir() + "/%s-%s" % ( |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
39 showconfig.songFilenameFromURI(song), curveName) |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
40 createCurve(inpath, outpath, t) |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
41 else: |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
42 inpath,outpath = args |
7771f37252da
curvecalc persistence, wavecurve -a option
Drew Perttula <drewp@bigasterisk.com>
parents:
224
diff
changeset
|
43 createCurve(inpath, outpath, options.t) |