[FFmpeg-devel] [PATCH] avformat/hls: disable persistent HTTP connections by default w/ schannel
Josh de Kock
josh at itanimul.li
Wed Apr 29 14:25:22 EEST 2020
On 26/04/2020 20:43, Jan Ekström wrote:
> This TLS implementation has always had issues with the way that
> libavformat implemented persistency, yet nobody seemed to be able to
> figure out why. It currently can lead to completely stuck playback,
> so disable it by default.
>
> Additionally, update the documentation to match the new behavior.
> ---
> doc/demuxers.texi | 3 ++-
> libavformat/hls.c | 2 +-
> 2 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/doc/demuxers.texi b/doc/demuxers.texi
> index 3c15ab9eee..35920af32d 100644
> --- a/doc/demuxers.texi
> +++ b/doc/demuxers.texi
> @@ -337,7 +337,8 @@ Default value is 1000.
>
> @item http_persistent
> Use persistent HTTP connections. Applicable only for HTTP streams.
> -Enabled by default.
> +Enabled by default, except when the Windows schannel TLS implementation
> +is utilized.
>
> @item http_multiple
> Use multiple HTTP connections for downloading HTTP segments.
> diff --git a/libavformat/hls.c b/libavformat/hls.c
> index fc45719d1c..f709f0c890 100644
> --- a/libavformat/hls.c
> +++ b/libavformat/hls.c
> @@ -2343,7 +2343,7 @@ static const AVOption hls_options[] = {
> {"m3u8_hold_counters", "The maximum number of times to load m3u8 when it refreshes without new segments",
> OFFSET(m3u8_hold_counters), AV_OPT_TYPE_INT, {.i64 = 1000}, 0, INT_MAX, FLAGS},
> {"http_persistent", "Use persistent HTTP connections",
> - OFFSET(http_persistent), AV_OPT_TYPE_BOOL, {.i64 = 1}, 0, 1, FLAGS },
> + OFFSET(http_persistent), AV_OPT_TYPE_BOOL, {.i64 = !CONFIG_SCHANNEL}, 0, 1, FLAGS },
> {"http_multiple", "Use multiple HTTP connections for fetching segments",
> OFFSET(http_multiple), AV_OPT_TYPE_BOOL, {.i64 = -1}, -1, 1, FLAGS},
> {"http_seekable", "Use HTTP partial requests, 0 = disable, 1 = enable, -1 = auto",
>
Whilst I'm not against a stop-gap change for this, did you already open
a ticket for this? I think it would be good to track it.
--
Josh
More information about the ffmpeg-devel
mailing list