从wsgi app返回mp4

时间:2015-10-18 23:34:36

标签: uwsgi

我想从wsgi应用程序返回mp4。我没有使用Django或其他框架。 mp4函数返回parseParams

def parseParams(params):
    // cmd invokes ffmpeg, which writes output to pipe:1 (stdout)
    return [ call(cmd) ]

form = "<html>...</html>"

def application(environ, start_response):
    x = handle_post(environ)
    if (isinstance(x, dict)):
        start_response('200 OK', [('Content-Type','video/mp4')])
        return parseParams(x)
    else:
        start_response('200 OK', [('Content-Type','text/html')])
        return [form]

日志中充满了二进制数据,可能是ffmpeg的输出,并且没有任何内容返回给浏览器,尽管我可以看到mime类型标头已正确设置。我错过了什么?

1 个答案:

答案 0 :(得分:1)

当然,我刚发布一个问题,而不是让它发挥作用。我发现this post并修改parseParams以这种方式结束:

 proc = Popen(cmd, stdout=PIPE)
 out, err = proc.communicate()
 return [ out ]

完美无缺!