I am trying to execute mp4 / video in the python GAE development environment (using dev_appserver.py), but so far I have not been able to play it in my browser.
Since the "Broken Pipe" error occurred on the development server and I was able to reproduce it in the production environment (google server), the problem may be caused by parallel browser requests. (If my understanding is correct, dev_appserver.py is single-threaded and cannot handle concurrent requests.)
I tried --disable-preconnect in Chrome, but this did not solve the problem.
Are there any workarounds? Your advice is really appreciated.
Edit: the movie file is stored as a static resource, and I tried to access it directly (did not use the video tag).
[Version Information]
- OS: Ubuntu 12.04 LTE
- Browser: Chrome 19.0.1084.46, Firefox 12.0
- GAE: Python - 1.6.5,
- Python: 2.7.3
[Error log]
INFO 2012-05-21 07:35:04,575 dev_appserver.py:2891] "GET /static/test.mp4 HTTP/1.1" 200 -
Exception happened during processing of request from ('127.0.0.1', 36240)
Traceback (most recent call last):
File "/usr/lib/python2.7/SocketServer.py", line 284, in _handle_request_noblock
self.process_request(request, client_address)
File "/usr/lib/python2.7/SocketServer.py", line 310, in process_request
self.finish_request(request, client_address)
File "/usr/lib/python2.7/SocketServer.py", line 323, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/home/chikashi/Development/google_appengine/google/appengine/tools/dev_appserver.py", line 2579, in __init__
BaseHTTPServer.BaseHTTPRequestHandler.__init__(self, *args, **kwargs)
File "/usr/lib/python2.7/SocketServer.py", line 640, in __init__
self.finish()
File "/usr/lib/python2.7/SocketServer.py", line 693, in finish
self.wfile.flush()
File "/usr/lib/python2.7/socket.py", line 303, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 32] Broken pipe