From 76c70e33d2244a688832f03b53862eb5d9ad3b01 Mon Sep 17 00:00:00 2001 From: Mark McGough Date: Sun, 12 Oct 2014 18:24:07 +0800 Subject: [PATCH] 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 --- libavformat/icecast.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavformat/icecast.c b/libavformat/icecast.c index b671d8ced9..155396fcc4 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))