Files
@ 394146952d5b
Branch filter:
Location: light9/bin/musicPad - annotation
394146952d5b
1.4 KiB
text/plain
2010 URI
Ignore-this: ca0187166eae21695381b721e90ac75c
Ignore-this: ca0187166eae21695381b721e90ac75c
f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f 46d319974176 f5b01841587f 94039df5cdd9 f5b01841587f f5b01841587f f5b01841587f f5b01841587f 58e2e6ca1ff1 f5b01841587f 94039df5cdd9 f5b01841587f f5b01841587f f5b01841587f 94039df5cdd9 f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f f5b01841587f | #!/usr/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())
# instead of taking a show uri like it should, i just convert every
# path i find in the graph (hoping that you only loaded statements for
# the current show)
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)
|