Mercurial > code > home > repos > light9
view bin/wavecurve @ 1859:f066d6e874db
2to3 with these fixers: all idioms set_literal
Ignore-this: cbd28518218c2f0ddce8c4f92d3b8b33
author | drewp@bigasterisk.com |
---|---|
date | Wed, 22 May 2019 00:08:22 +0000 |
parents | 7772cc48e016 |
children | 3c523c71da29 |
line wrap: on
line source
#!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("%s %s" % time_val, file=f) 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)