summaryrefslogtreecommitdiffstats
path: root/demux/demux_lavf.c
diff options
context:
space:
mode:
authorKacper Michajłow <kasper93@gmail.com>2023-05-16 00:33:21 +0200
committerLeo Izen <leo.izen@gmail.com>2023-05-16 10:46:35 -0400
commitfe4f03f42c8513ff312b1e62259438de98583fce (patch)
tree62925a58e586802a736f9f1e96599da191164282 /demux/demux_lavf.c
parent1a649df00ac167aec4cc8ce2f140ab22710f468a (diff)
downloadmpv-fe4f03f42c8513ff312b1e62259438de98583fce.tar.bz2
mpv-fe4f03f42c8513ff312b1e62259438de98583fce.tar.xz
demux/demux_lavf: pass-through filename for HLS
Fixes local HLS playback. After FFmpeg@6b1f68c commit HLS is only processed if file extension matches RFC8216 requirement.
Diffstat (limited to 'demux/demux_lavf.c')
-rw-r--r--demux/demux_lavf.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/demux/demux_lavf.c b/demux/demux_lavf.c
index ee08b4df6c..b151bd6ab7 100644
--- a/demux/demux_lavf.c
+++ b/demux/demux_lavf.c
@@ -467,8 +467,9 @@ static int lavf_check_file(demuxer_t *demuxer, enum demux_check check)
}
AVProbeData avpd = {
- // Disable file-extension matching with normal checks
- .filename = check <= DEMUX_CHECK_REQUEST ? priv->filename : "",
+ // Disable file-extension matching with normal checks, except for HLS
+ .filename = av_match_ext(priv->filename, "m3u8,m3u") ||
+ check <= DEMUX_CHECK_REQUEST ? priv->filename : "",
.buf_size = 0,
.buf = av_mallocz(PROBE_BUF_SIZE + AV_INPUT_BUFFER_PADDING_SIZE),
};