Mercurial > code > home > repos > light9
view bin/musicPad @ 1550:cbf4fc71d8d8
solve_test fixes
Ignore-this: be03d7b4d8601b5e65c1567e0345073d
author | Drew Perttula <drewp@bigasterisk.com> |
---|---|
date | Fri, 19 May 2017 07:54:20 +0000 |
parents | d8202a0a7fd5 |
children | 7772cc48e016 |
line wrap: on
line source
#!bin/python """ rewrite all the songs with silence at the start and end """ import sys, wave, logging, os sys.path.append(".") from light9 import showconfig from light9.namespaces import L9 from light9.ascoltami.playlist import Playlist logging.basicConfig(level=logging.INFO) log = logging.getLogger() introPad = 4 postPad = 9 # 5 + autostop + 4 playlist = Playlist.fromShow(showconfig.getGraph(), showconfig.showUri()) for p in playlist.allSongPaths(): log.info("read %s", p) inputWave = wave.open(p, 'r') outputDir = os.path.join(os.path.dirname(p), "pad") try: os.makedirs(outputDir) except OSError: pass # exists outputPath = os.path.join(outputDir, os.path.basename(p)) outputWave = wave.open(outputPath, 'w') outputWave.setparams(inputWave.getparams()) bytesPerSecond = (inputWave.getnchannels() * inputWave.getsampwidth() * inputWave.getframerate()) outputWave.writeframesraw("\x00" * (bytesPerSecond * introPad)) outputWave.writeframesraw(inputWave.readframes(inputWave.getnframes())) outputWave.writeframesraw("\x00" * (bytesPerSecond * postPad)) outputWave.close() log.info("wrote %s", outputPath)