parser = argparse.ArgumentParser() parser.add_argument("-config", dest="CONFIG_FILE", default="config-sample.json", help="Config file") parser.add_argument("-dir", dest="AUDIO_DIR", default="audio/", help="Audio directory") parser.add_argument('-overwrite', dest="OVERWRITE", action="store_true", help="Overwrite existing audio?") a = parser.parse_args() config = io.readJSON(a.CONFIG_FILE) configSounds = config["sounds"] PRECISION = 5 OUTPUT_DIR = "apps/{appname}/".format(appname=config["name"]) OUTPUT_SOUND_DIR_REL = "data/sounds/" OUTPUT_SOUND_DIR = OUTPUT_DIR + OUTPUT_SOUND_DIR_REL CONFIG_FILE = OUTPUT_DIR + "js/config/config.sounds.js" # Make sure output dirs exist io.makeDirectories([OUTPUT_SOUND_DIR, CONFIG_FILE]) # Remove existing data io.removeFiles(OUTPUT_SOUND_DIR + "*.json") sets, items = tu.getItems(config)
import argparse import math import os from pprint import pprint import sys import lib.io_utils as io import lib.item_utils as tu import lib.list_utils as lu # input parser = argparse.ArgumentParser() parser.add_argument("-config", dest="CONFIG_FILE", default="config-sample.json", help="Config file") a = parser.parse_args() config = io.readJSON(a.CONFIG_FILE) configContent = config["content"] OUTPUT_DIR = "apps/{appname}/".format(appname=config["name"]) OUTPUT_SET_DIR_REL = "data/sets/" OUTPUT_SET_DIR = OUTPUT_DIR + OUTPUT_SET_DIR_REL CONFIG_FILE = OUTPUT_DIR + "js/config/config.sets.js" # Make sure output dirs exist io.makeDirectories([OUTPUT_SET_DIR, CONFIG_FILE]) sets, items = tu.getItems(config) # Remove existing data io.removeFiles(OUTPUT_SET_DIR + "*.json") jsonsets = {}
soundData = None audioFilename = dataFilename = spriteData = None isSprite = False # build sprites if necessary if "filenames" in soundOptions: isSprite = True filenames = [soundOptions["src"]+f for f in soundOptions["filenames"]] basename = a.AUDIO_DIR + soundKey quantities = soundOptions["quantities"] if "quantities" in soundOptions else None audioFilename = basename+".mp3" dataFilename = basename+".json" if not os.path.isfile(audioFilename) or not os.path.isfile(dataFilename) or a.OVERWRITE: spriteData = au.makeSpriteFile(audioFilename, dataFilename, filenames, soundOptions["spriteDuration"], soundOptions["db"], soundOptions["reverb"], quantities) else: spriteData = io.readJSON(dataFilename) print("Sprite file already created, skipping...") soundConfig["filename"] = os.path.basename(audioFilename) soundConfig["spriteFilename"] = os.path.basename(dataFilename) soundConfig.pop("filenames", None) layout = soundOptions["layout"] if layout == "years": _soundConfig, soundData = getYearSounds(spriteData) soundConfig.update(_soundConfig) else: print("Invalid layout: %s" % layout) continue # Write sound file