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

Steven Liu lingjiujianke at gmail.com
Wed Oct 11 04:50:18 EEST 2023


Léon Spaans <leons at gridpoint.nl> 于2023年10月7日周六 05:41写道:
>
> 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 | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c
> index 08f3746ce7..8f7eee202e 100644
> --- a/libavformat/hlsenc.c
> +++ b/libavformat/hlsenc.c
> @@ -1580,7 +1580,9 @@ static int hls_window(AVFormatContext *s, int last, VariantStream *vs)
>
>     set_http_options(s, &options, hls);
>     snprintf(temp_filename, sizeof(temp_filename), use_temp_file ? "%s.tmp" : "%s", vs->m3u8_name);
> -    if ((ret = hlsenc_io_open(s, byterange_mode ? &hls->m3u8_out : &vs->out, temp_filename, &options)) < 0) {
> +    ret = hlsenc_io_open(s, byterange_mode ? &hls->m3u8_out : &vs->out, temp_filename, &options);
> +    av_dict_free(&options);
> +    if (ret < 0) {
>         if (hls->ignore_io_errors)
>             ret = 0;
>         goto fail;
> @@ -1635,8 +1637,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->vtt_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