[FFmpeg-cvslog] icecast: Do not use chunked post
Mark McGough
git at videolan.org
Mon Oct 13 01:32:47 CEST 2014
ffmpeg | branch: master | Mark McGough <madmanmarkau at gmail.com> | Sun Oct 12 18:24:07 2014 +0800| [76c70e33d2244a688832f03b53862eb5d9ad3b01] | committer: Luca Barbato
icecast: Do not use chunked post
Icecast uses HTTP 1.0 while Libav uses HTTP 1.1 and enables by
default chunked post.
Icecast actually forwards the HTTP chunk headers to the listener
as part of the media stream (without the chunk encoding HTTP headers)
causing the players to lose sync.
Disabling the option is enough to feed icecast properly.
Signed-off-by: Luca Barbato <lu_zero at gentoo.org>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=76c70e33d2244a688832f03b53862eb5d9ad3b01
---
libavformat/icecast.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/libavformat/icecast.c b/libavformat/icecast.c
index b671d8c..155396f 100644
--- a/libavformat/icecast.c
+++ b/libavformat/icecast.c
@@ -126,6 +126,7 @@ static int icecast_open(URLContext *h, const char *uri, int flags)
av_dict_set(&opt_dict, "method", s->legacy_icecast ? "SOURCE" : "PUT", 0);
av_dict_set(&opt_dict, "auth_type", "basic", 0);
av_dict_set(&opt_dict, "headers", headers, 0);
+ av_dict_set(&opt_dict, "chunked_post", "0", 0);
if (NOT_EMPTY(s->content_type))
av_dict_set(&opt_dict, "content_type", s->content_type, 0);
if (NOT_EMPTY(s->user_agent))
More information about the ffmpeg-cvslog
mailing list