Exemplo n.º 1
0
def waveform(data):
    req = AudioServerRequest.decode(data)
    req.validate(WaveformSettings)
    w = WavFile(req.filePath, req.headerSpec)
    fp = StringIO(w.header + w.data)

    # translate colour setting
    settings = copy.deepcopy(req.settings)
    try:
        colour = settings["colour"]
    except KeyError:
        pass
    else:
        settings.update(WaveformSettings.translateColours(colour))
        del settings["colour"]

    waveformGenerator = WaveformGenerator(**settings)
    waveform = waveformGenerator(fp)
    return send_file(StringIO(waveform), mimetype="image/png")
Exemplo n.º 2
0
def ogg(data):
    req = AudioServerRequest.decode(data)
    req.validate(OggSettings)
    encoder = OggEncoder()
    ogg = encoder(req.filePath, req.headerSpec, **req.settings)
    return send_file(StringIO(ogg), mimetype="audio/ogg")
Exemplo n.º 3
0
def mp3(data):
    req = AudioServerRequest.decode(data)
    req.validate(MP3Settings)
    encoder = MP3Encoder()
    mp3 = encoder(req.filePath, req.headerSpec, **req.settings)
    return send_file(StringIO(mp3), mimetype="audio/mpeg3")