[FFmpeg-trac] #9552(undetermined:new): Dropping query parameters of url in live m3u8
FFmpeg
trac at avcodec.org
Sun Dec 12 17:38:22 EET 2021
#9552: Dropping query parameters of url in live m3u8
-------------------------------------+-------------------------------------
Reporter: Amin Vakil | Type: defect
Status: new | Priority: important
Component: | Version: 4.4.1
undetermined |
Keywords: m3u8 | Blocked By:
streaming |
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Summary of the bug:
I have a m3u8 which includes (verified by curl)
{{{
...
stream-1019.ts?foo=bar
...
}}}
and server denies if the query parameter has not been set or set
incorrectly. Currently ffprobe does not append query parameters retrieved
from m3u8 to ts (and key) files and therefore stream cannot be viewed.
How to reproduce:
{{{
ffprobe -v debug -i "https://example.org/stream.m3u8?foo=bar"
ffprobe version n4.4.1 Copyright (c) 2007-2021 the FFmpeg developers
built with gcc 11.1.0 (GCC)
configuration: --prefix=/usr --disable-debug --disable-static --disable-
stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto
--enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-
ladspa --enable-libaom --enable-libass --enable-libbluray --enable-
libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi
--enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmfx
--enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb
--enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-
libpulse --enable-librav1e --enable-librsvg --enable-libsoxr --enable-
libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-
libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-
libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-
libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg
--enable-nvdec --enable-nvenc --enable-shared --enable-version3
libavutil 56. 70.100 / 56. 70.100
libavcodec 58.134.100 / 58.134.100
libavformat 58. 76.100 / 58. 76.100
libavdevice 58. 13.100 / 58. 13.100
libavfilter 7.110.100 / 7.110.100
libswscale 5. 9.100 / 5. 9.100
libswresample 3. 9.100 / 3. 9.100
libpostproc 55. 9.100 / 55. 9.100
[NULL @ 0x28258aee400] Opening 'https://example.org/stream.m3u8?foo=bar'
for reading
[https @ 0x28258aeec80] Setting default whitelist
'http,https,tls,rtp,tcp,udp,crypto,httpproxy'
[tcp @ 0x28258af2180] Original list of addresses:
[tcp @ 0x28258af2180] Address 1.1.1.1 port 443
[tcp @ 0x28258af2180] Interleaved list of addresses:
[tcp @ 0x28258af2180] Address 1.1.1.1 port 443
[tcp @ 0x28258af2180] Starting connection attempt to 1.1.1.1 port 443
[tcp @ 0x28258af2180] Successfully connected to 1.1.1.1 port 443
[https @ 0x28258aeec80] request: GET /stream.m3u8?foo=bar HTTP/1.1
User-Agent: Lavf/58.76.100
Accept: */*
Range: bytes=0-
Connection: close
Host: example.org
Icy-MetaData: 1
[hls @ 0x28258aee400] Format hls probed with size=2048 and score=100
[hls @ 0x28258aee400] Skip ('#EXT-X-VERSION:3')
[hls @ 0x28258aee400] HLS request for url
'https://example.org/stream-1033.ts', offset 0, playlist 0
[hls @ 0x28258aee400] Opening 'https://example.org/stream-1030.key' for
reading
[tcp @ 0x282590acac0] Original list of addresses:
[tcp @ 0x282590acac0] Address 1.1.1.1 port 443
[tcp @ 0x282590acac0] Interleaved list of addresses:
[tcp @ 0x282590acac0] Address 1.1.1.1 port 443
[tcp @ 0x282590acac0] Starting connection attempt to 1.1.1.1 port 443
[tcp @ 0x282590acac0] Successfully connected to 1.1.1.1 port 443
[https @ 0x282590abb80] request: GET /stream-1030.key HTTP/1.1
User-Agent: Lavf/58.76.100
Accept: */*
Range: bytes=0-
Connection: keep-alive
Host: example.org
Icy-MetaData: 1
[https @ 0x282590abb80] HTTP error 403 Forbidden
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/9552>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list