[FFmpeg-devel] [PATCH] libavformat/hlsenc: set HTTP options before writing WebVTT HLS playlists

Steven Liu lingjiujianke at gmail.com
Mon Oct 2 02:16:48 EEST 2023


Léon Spaans <leons at gridpoint.nl>于2023年10月1日 周日22:40写道:

> Fixes: Erroneous HTTP POST instead of HTTP PUT for WebVTT HLS variant
> playlists.
>
> Signed-off-by: Léon Spaans <leons at gridpoint.nl>
> ---
>   libavformat/hlsenc.c | 6 +++++-
>   1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c
> index 08f3746ce7..150320a880 100644
> --- a/libavformat/hlsenc.c
> +++ b/libavformat/hlsenc.c
> @@ -1585,6 +1585,7 @@ static int hls_window(AVFormatContext *s, int
> last, VariantStream *vs)
>               ret = 0;
>           goto fail;
>       }
> +    av_dict_free(&options);
>        for (en = vs->segments; en; en = en->next) {
>           if (target_duration <= en->duration)
> @@ -1635,8 +1636,11 @@ static int hls_window(AVFormatContext *s, int
> last, VariantStream *vs)
>           ff_hls_write_end_list(byterange_mode ? hls->m3u8_out : vs->out);
>        if (vs->vtt_m3u8_name) {
> +        set_http_options(vs->avf, &options, hls);
>           snprintf(temp_vtt_filename, sizeof(temp_vtt_filename),
> use_temp_file ? "%s.tmp" : "%s", vs->vtt_m3u8_name);
> -        if ((ret = hlsenc_io_open(s, &hls->sub_m3u8_out,
> temp_vtt_filename, &options)) < 0) {
> +        ret = hlsenc_io_open(s, &hls->sub_m3u8_out, temp_vtt_filename,
> &options);
> +        av_dict_free(&options);
> +        if (ret < 0) {
>               if (hls->ignore_io_errors)
>                   ret = 0;
>               goto fail;
> --
> 2.40.1
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>
LGTM


Thanks
Steven


More information about the ffmpeg-devel mailing list