如何在http响应中使用Content_type,video / mp2t?

时间:2010-12-04 16:59:43

标签: python http http-headers mime-types

我正在准备响应发送视频和接收错误的http请求:Broken Pipe

 if self.path.endswith(".ts"):  
     f = open("filename.ts", 'r')
     self.send_response(200)
     self.send_header('Content-Type', "video/mp2t")
     self.end_headers()
     self.wfile.write(f.read())
     return

以下相同的响应正常。

 if self.path.endswith(".mov"):  
            f = open("filename.mov", 'r')
            self.send_response(200)
            self.send_header('Content-Type', "video/mpeg")
            self.end_headers()
            self.wfile.write(f.read())
            return

我怀疑它与mimetype问题有关。任何人都可以建议我如何使用video / mp2t与baseHttpServer ??

2 个答案:

答案 0 :(得分:1)

好的,我会试一试。服务器端的“断管”通常意味着客户端在服务器仍在发送数据时关闭连接。根据您之前的问题,我假设您的客户端是浏览器(使用<video>标记)。这很可能意味着浏览器不支持播放MPEG传输流。实际上我还没有听说任何支持它的浏览器。

也许您应该尝试流式传输Ogg Theora视频(MIME类型“video / theora”)进行测试 - Firefox 3.1+支持开箱即用。如果可行,那么您的服务器实现是正确的。

答案 1 :(得分:0)

在mpeg2ts的上下文中,客户端(浏览器中的Quicktime)请求多个GET请求中的特定字节范围。根据请求的字节范围准备响应修复了问题。