[FFmpeg-devel] Propose add 'Content-Length header to libavformat/http.c:http_connect
Fri Feb 13 06:55:47 CET 2009
I wonder what opinions will be had regarding adding a content-length
(with fake value, say 2^63) value to http_connect for POST operations;
if not set by default, then by a command line arg.
The reason of course is that the absence of a Content-Length or
Transfer-Encoding request-header is illegal to http 1.1 servers, so they
instantly drop the request; however it is desirable to POST (or PUT or
PATCH) data to a server from a live or transcode source (for types that
support unbounded packetized stream, e.g MPEGTS and FLV/AVI to an extent).
The ideal solution would be to POST with a Transfer-Encoding set to
'chunked', although this is a) slightly more complex, and; b) would
break compat with ffserver..
So, since the current request is already not http1.1 compliant, and b)
adding the content length header should not harm ffserver, I would like
to propose this change, or find one that has a similar effect.
Technically a declared length request will be considered in valid by
most servers if the entire byte-range is not rcvd -- but API side code
can still consume most or all of the input stream.
If another solution (similar to chunked encoding but without breaking
ffserv) has been conceived, please let me know.
More information about the ffmpeg-devel