Files
@ b76300a0229a
Branch filter:
Location: light9/bin/wavecurve - annotation
b76300a0229a
1.4 KiB
text/plain
megaflash strobe
Ignore-this: bb96664ba93cd2885f0e99815a2d2e9
Ignore-this: bb96664ba93cd2885f0e99815a2d2e9
d8202a0a7fd5 46d319974176 3c523c71da29 4a51d4eefa95 4a51d4eefa95 7772cc48e016 7771f37252da f066d6e874db 5a83935377f9 7771f37252da 3c523c71da29 7771f37252da f066d6e874db 3c523c71da29 7772cc48e016 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7771f37252da 7772cc48e016 7772cc48e016 7772cc48e016 4a51d4eefa95 7772cc48e016 7772cc48e016 7772cc48e016 7771f37252da 7772cc48e016 4a51d4eefa95 94039df5cdd9 7771f37252da 9071cd1bb29c 7771f37252da 94039df5cdd9 94039df5cdd9 9071cd1bb29c d8202a0a7fd5 7772cc48e016 7771f37252da 7771f37252da 7771f37252da 7771f37252da 94039df5cdd9 7771f37252da | #!bin/python
import optparse
from run_local import log
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 = open(outpath, 'w')
for time_val in points:
print("%s %s" % time_val, file=f)
log.info(r'Wrote {outpath}')
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.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)
|