On Mon, 15 May 2023 at 02:06, Michael Niedermayer
<[email protected]> wrote:
>
> This is not well tested and can likely be improved, just a
> hotfix for hls probe failures since 6b1f68ccb04d791f0250e05687c346a99ff47ea1
>
> Should fix Ticket10353 (please test and report cases that still fail)
>
> Signed-off-by: Michael Niedermayer <[email protected]>
> ---
>  libavformat/hls.c | 11 ++++++++++-
>  1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/libavformat/hls.c b/libavformat/hls.c
> index df2442c376..790ae7a96a 100644
> --- a/libavformat/hls.c
> +++ b/libavformat/hls.c
> @@ -2534,7 +2534,16 @@ static int hls_probe(const AVProbeData *p)
>          strstr(p->buf, "#EXT-X-TARGETDURATION:") ||
>          strstr(p->buf, "#EXT-X-MEDIA-SEQUENCE:")) {
>
> -        if (!av_match_ext(p->filename, "m3u8,hls,m3u")) {
> +        int mime_ok = p->mime_type && !(
> +            av_strcasecmp(p->mime_type, "application/vnd.apple.mpegurl") &&
> +            av_strcasecmp(p->mime_type, "audio/mpegurl") &&
> +            av_strcasecmp(p->mime_type, "audio/x-mpegurl") &&
> +            av_strcasecmp(p->mime_type, "application/x-mpegurl")

How about we AV_LOG_WARNING when non-standard/deprecated mime type is
used? If we want to be strict about rfc8216 only two first should be
supported. Of course for compatibility reasons likely we need to
support all of them, but warn about it would be nice touch.

> +            );
> +
> +        if (!av_match_ext    (p->filename, "m3u8,hls,m3u") &&
> +             ff_match_url_ext(p->filename, "m3u8,hls,m3u") <= 0 &&

Where '.hls' came from? I don't think those are in fact used in the
wild? Maybe we can be strict and use only "m3u8,m3u"?

> +            !mime_ok) {
>              av_log(NULL, AV_LOG_ERROR, "Not detecting m3u8/hls with non 
> standard extension\n");

This log wording is little bit off now, when there is no extension and
only mime matching.

>              return 0;
>          }
> --
> 2.17.1
>
> _______________________________________________
> ffmpeg-devel mailing list
> [email protected]
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> [email protected] with subject "unsubscribe".

Minor remarks, but funcionally the patch resolves the issue. Thanks.

- Kacper
_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".

Reply via email to