Files
@ c0742e710eeb
Branch filter:
Location: light9/bin/wavecurve - annotation
c0742e710eeb
1.4 KiB
text/plain
refactor collector json parsing
Ignore-this: ae540a86d86ff9a45e5b2b66ee5f82d4
Ignore-this: ae540a86d86ff9a45e5b2b66ee5f82d4
d8202a0a7fd5 46d319974176 4a51d4eefa95 4a51d4eefa95 4a51d4eefa95 7771f37252da 7771f37252da 5a83935377f9 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7771f37252da 94039df5cdd9 4a51d4eefa95 94039df5cdd9 7771f37252da 4a51d4eefa95 4a51d4eefa95 94039df5cdd9 7771f37252da 7771f37252da 7771f37252da 9071cd1bb29c 7771f37252da 94039df5cdd9 94039df5cdd9 9071cd1bb29c d8202a0a7fd5 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7771f37252da 94039df5cdd9 7771f37252da | #!bin/python
import optparse
import run_local
from light9.wavepoints import simp
def createCurve(inpath, outpath, t):
print "reading %s, writing %s" % (inpath, outpath)
points = simp(inpath.replace('.ogg', '.wav'), seconds_per_average=t)
f = file(outpath, 'w')
for time_val in points:
print >>f, "%s %s" % time_val
parser = optparse.OptionParser(usage="""%prog inputSong.wav outputCurve
You probably just want -a
""")
parser.add_option("-t", type="float", default=.01,
help="seconds per sample (default .01, .07 is smooth)")
parser.add_option("-a", "--all", action="store_true",
help="make standard curves for all songs")
options,args = parser.parse_args()
if options.all:
from light9 import showconfig
from light9.namespaces import L9
from rdflib import RDF
from light9.ascoltami.playlist import Playlist
graph = showconfig.getGraph()
playlist = Playlist.fromShow(showconfig.getGraph(), showconfig.showUri())
for song in playlist.allSongs():
inpath = showconfig.songOnDisk(song)
for curveName, t in [('music', .01),
('smooth_music', .07)]:
outpath = showconfig.curvesDir() + "/%s-%s" % (
showconfig.songFilenameFromURI(song), curveName)
createCurve(inpath, outpath, t)
else:
inpath, outpath = args
createCurve(inpath, outpath, options.t)
|