* [FFmpeg-devel] [PATCH] Revert "avformat/hls: fail on probing non hls/m3u8 file extensions"
@ 2023-05-14 19:41 Anton Khirnov
2023-05-14 21:39 ` Michael Niedermayer
0 siblings, 1 reply; 7+ messages in thread
From: Anton Khirnov @ 2023-05-14 19:41 UTC (permalink / raw)
To: ffmpeg-devel
This reverts commit 6b1f68ccb04d791f0250e05687c346a99ff47ea1, which
broke many streams in the wild
Fixes #10353.
---
libavformat/hls.c | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/libavformat/hls.c b/libavformat/hls.c
index 11e345b280..8a96a37ff9 100644
--- a/libavformat/hls.c
+++ b/libavformat/hls.c
@@ -2532,15 +2532,8 @@ static int hls_probe(const AVProbeData *p)
if (strstr(p->buf, "#EXT-X-STREAM-INF:") ||
strstr(p->buf, "#EXT-X-TARGETDURATION:") ||
- strstr(p->buf, "#EXT-X-MEDIA-SEQUENCE:")) {
-
- if (!av_match_ext(p->filename, "m3u8,hls,m3u")) {
- av_log(NULL, AV_LOG_ERROR, "Not detecting m3u8/hls with non standard extension\n");
- return 0;
- }
-
+ strstr(p->buf, "#EXT-X-MEDIA-SEQUENCE:"))
return AVPROBE_SCORE_MAX;
- }
return 0;
}
--
2.39.2
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [FFmpeg-devel] [PATCH] Revert "avformat/hls: fail on probing non hls/m3u8 file extensions"
2023-05-14 19:41 [FFmpeg-devel] [PATCH] Revert "avformat/hls: fail on probing non hls/m3u8 file extensions" Anton Khirnov
@ 2023-05-14 21:39 ` Michael Niedermayer
2023-05-14 21:58 ` Leo Izen
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Michael Niedermayer @ 2023-05-14 21:39 UTC (permalink / raw)
To: FFmpeg development discussions and patches
[-- Attachment #1.1: Type: text/plain, Size: 1261 bytes --]
On Sun, May 14, 2023 at 09:41:29PM +0200, Anton Khirnov wrote:
> This reverts commit 6b1f68ccb04d791f0250e05687c346a99ff47ea1, which
> broke many streams in the wild
>
> Fixes #10353.
This change violates a SHOULD in rfc8216 4. Playlists
Each Playlist file MUST be identifiable either by the path component
of its URI or by HTTP Content-Type. In the first case, the path MUST
end with either .m3u8 or .m3u. In the second, the HTTP Content-Type
MUST be "application/vnd.apple.mpegurl" or "audio/mpegurl".
Clients SHOULD refuse to parse Playlists that are not so identified.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The commit message should mention the RFC and why it is not following the
recommandition of not parsing such Playlists
Also ive taken a very brief look at #10353 and the example there shown
seems to fail because of the "?..." stuff in the url, it seemed to be
.m3u8 files, only the leaves seemes .ts
I do not object to revert this as a temporary fix of course
thx
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
I do not agree with what you have to say, but I'll defend to the death your
right to say it. -- Voltaire
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
[-- Attachment #2: Type: text/plain, Size: 251 bytes --]
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [FFmpeg-devel] [PATCH] Revert "avformat/hls: fail on probing non hls/m3u8 file extensions"
2023-05-14 21:39 ` Michael Niedermayer
@ 2023-05-14 21:58 ` Leo Izen
2023-05-14 22:40 ` Kacper Michajlow
2023-05-16 14:01 ` Anton Khirnov
2 siblings, 0 replies; 7+ messages in thread
From: Leo Izen @ 2023-05-14 21:58 UTC (permalink / raw)
To: ffmpeg-devel
On 5/14/23 17:39, Michael Niedermayer wrote:
> On Sun, May 14, 2023 at 09:41:29PM +0200, Anton Khirnov wrote:
>> This reverts commit 6b1f68ccb04d791f0250e05687c346a99ff47ea1, which
>> broke many streams in the wild
>>
>> Fixes #10353.
>
> This change violates a SHOULD in rfc8216 4. Playlists
>
> Each Playlist file MUST be identifiable either by the path component
> of its URI or by HTTP Content-Type. In the first case, the path MUST
> end with either .m3u8 or .m3u. In the second, the HTTP Content-Type
> MUST be "application/vnd.apple.mpegurl" or "audio/mpegurl".
>
> Clients SHOULD refuse to parse Playlists that are not so identified.
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
Except that commit doesn't check the mimetype. Some CDNs such as Azure
Media Services, only use mimetype to identify HLS streams, and not file
extensions. See:
https://learn.microsoft.com/en-us/azure/media-services/latest/encode-dynamic-packaging-concept
This commit breaks more than it helps.
- Leo Izen (Traneptora / thebombzen)
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [FFmpeg-devel] [PATCH] Revert "avformat/hls: fail on probing non hls/m3u8 file extensions"
2023-05-14 21:39 ` Michael Niedermayer
2023-05-14 21:58 ` Leo Izen
@ 2023-05-14 22:40 ` Kacper Michajlow
2023-05-14 23:06 ` Michael Niedermayer
2023-05-16 14:01 ` Anton Khirnov
2 siblings, 1 reply; 7+ messages in thread
From: Kacper Michajlow @ 2023-05-14 22:40 UTC (permalink / raw)
To: FFmpeg development discussions and patches
On Sun, 14 May 2023 at 23:39, Michael Niedermayer
<michael@niedermayer.cc> wrote:
>
> On Sun, May 14, 2023 at 09:41:29PM +0200, Anton Khirnov wrote:
> > This reverts commit 6b1f68ccb04d791f0250e05687c346a99ff47ea1, which
> > broke many streams in the wild
> >
> > Fixes #10353.
>
> This change violates a SHOULD in rfc8216 4. Playlists
>
> Each Playlist file MUST be identifiable either by the path component
> of its URI or by HTTP Content-Type.
either/or
> In the first case, the path MUST
> end with either .m3u8 or .m3u.
First case, path component with valid extention.
> In the second, the HTTP Content-Type
> MUST be "application/vnd.apple.mpegurl" or "audio/mpegurl".
Second (OR) case for URI with Content-Type.
So current FFmpeg HEAD violate RFC, as it should allow URI with Content-Type.
- Kacper
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [FFmpeg-devel] [PATCH] Revert "avformat/hls: fail on probing non hls/m3u8 file extensions"
2023-05-14 22:40 ` Kacper Michajlow
@ 2023-05-14 23:06 ` Michael Niedermayer
2023-05-14 23:28 ` Kacper Michajlow
0 siblings, 1 reply; 7+ messages in thread
From: Michael Niedermayer @ 2023-05-14 23:06 UTC (permalink / raw)
To: FFmpeg development discussions and patches
[-- Attachment #1.1: Type: text/plain, Size: 1768 bytes --]
On Mon, May 15, 2023 at 12:40:50AM +0200, Kacper Michajlow wrote:
> On Sun, 14 May 2023 at 23:39, Michael Niedermayer
> <michael@niedermayer.cc> wrote:
> >
> > On Sun, May 14, 2023 at 09:41:29PM +0200, Anton Khirnov wrote:
> > > This reverts commit 6b1f68ccb04d791f0250e05687c346a99ff47ea1, which
> > > broke many streams in the wild
> > >
> > > Fixes #10353.
> >
> > This change violates a SHOULD in rfc8216 4. Playlists
> >
> > Each Playlist file MUST be identifiable either by the path component
> > of its URI or by HTTP Content-Type.
>
> either/or
>
> > In the first case, the path MUST
> > end with either .m3u8 or .m3u.
>
> First case, path component with valid extention.
>
> > In the second, the HTTP Content-Type
> > MUST be "application/vnd.apple.mpegurl" or "audio/mpegurl".
>
> Second (OR) case for URI with Content-Type.
>
> So current FFmpeg HEAD violate RFC, as it should allow URI with Content-Type.
yes, code is buggy, i didnt see teh report before today night,
and was doing too much non ffmpeg crap last 2-3 days so didnt see it before
everyone is upset, noone mailed me, noone posted a good fix, noone reverted
ill post something before going to sleep today probably but i likely
wont have the time to properly test it before bed
(testcases with ffmpeg / ffplay btw makes it easier to test than with
links to random webpages)
thx
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Old school: Use the lowest level language in which you can solve the problem
conveniently.
New school: Use the highest level language in which the latest supercomputer
can solve the problem without the user falling asleep waiting.
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]
[-- Attachment #2: Type: text/plain, Size: 251 bytes --]
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [FFmpeg-devel] [PATCH] Revert "avformat/hls: fail on probing non hls/m3u8 file extensions"
2023-05-14 23:06 ` Michael Niedermayer
@ 2023-05-14 23:28 ` Kacper Michajlow
0 siblings, 0 replies; 7+ messages in thread
From: Kacper Michajlow @ 2023-05-14 23:28 UTC (permalink / raw)
To: FFmpeg development discussions and patches
On Mon, 15 May 2023 at 01:06, Michael Niedermayer
<michael@niedermayer.cc> wrote:
>
> On Mon, May 15, 2023 at 12:40:50AM +0200, Kacper Michajlow wrote:
> > On Sun, 14 May 2023 at 23:39, Michael Niedermayer
> > <michael@niedermayer.cc> wrote:
> > >
> > > On Sun, May 14, 2023 at 09:41:29PM +0200, Anton Khirnov wrote:
> > > > This reverts commit 6b1f68ccb04d791f0250e05687c346a99ff47ea1, which
> > > > broke many streams in the wild
> > > >
> > > > Fixes #10353.
> > >
> > > This change violates a SHOULD in rfc8216 4. Playlists
> > >
> > > Each Playlist file MUST be identifiable either by the path component
> > > of its URI or by HTTP Content-Type.
> >
> > either/or
> >
> > > In the first case, the path MUST
> > > end with either .m3u8 or .m3u.
> >
> > First case, path component with valid extention.
> >
> > > In the second, the HTTP Content-Type
> > > MUST be "application/vnd.apple.mpegurl" or "audio/mpegurl".
> >
> > Second (OR) case for URI with Content-Type.
> >
> > So current FFmpeg HEAD violate RFC, as it should allow URI with Content-Type.
>
> yes, code is buggy, i didnt see teh report before today night,
> and was doing too much non ffmpeg crap last 2-3 days so didnt see it before
>
> everyone is upset, noone mailed me, noone posted a good fix, noone reverted
>
> ill post something before going to sleep today probably but i likely
> wont have the time to properly test it before bed
> (testcases with ffmpeg / ffplay btw makes it easier to test than with
> links to random webpages)
>
> thx
>
All good, take your time. I just wanted to clarify that current
implementation is too strict/buggy.
I think the upset comes from the fact that a lot of users started
flooding issue trackers with the complaints that their favorite live
stream doesn't work. And while the underlying issue is quite small
regression, there were uncertainty at first what is going on and a lot
of unnecessary comments and remarks were made.
- Kacper
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [FFmpeg-devel] [PATCH] Revert "avformat/hls: fail on probing non hls/m3u8 file extensions"
2023-05-14 21:39 ` Michael Niedermayer
2023-05-14 21:58 ` Leo Izen
2023-05-14 22:40 ` Kacper Michajlow
@ 2023-05-16 14:01 ` Anton Khirnov
2 siblings, 0 replies; 7+ messages in thread
From: Anton Khirnov @ 2023-05-16 14:01 UTC (permalink / raw)
To: FFmpeg development discussions and patches
Quoting Michael Niedermayer (2023-05-14 23:39:44)
> On Sun, May 14, 2023 at 09:41:29PM +0200, Anton Khirnov wrote:
> > This reverts commit 6b1f68ccb04d791f0250e05687c346a99ff47ea1, which
> > broke many streams in the wild
> >
> > Fixes #10353.
>
> This change violates a SHOULD in rfc8216 4. Playlists
>
> Each Playlist file MUST be identifiable either by the path component
> of its URI or by HTTP Content-Type. In the first case, the path MUST
> end with either .m3u8 or .m3u. In the second, the HTTP Content-Type
> MUST be "application/vnd.apple.mpegurl" or "audio/mpegurl".
>
> Clients SHOULD refuse to parse Playlists that are not so identified.
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> The commit message should mention the RFC and why it is not following the
> recommandition of not parsing such Playlists
It's been a longstanding project policy to try to process non-strictly
compliant files when possible.
And as I've said in the other thread (did not have time yet to reply
there, hopefully will soon), I don't think this is the place to enforce
such policies. The fact that you have to use NULL logging context is
by itself indicative of that.
--
Anton Khirnov
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2023-05-16 14:01 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-14 19:41 [FFmpeg-devel] [PATCH] Revert "avformat/hls: fail on probing non hls/m3u8 file extensions" Anton Khirnov
2023-05-14 21:39 ` Michael Niedermayer
2023-05-14 21:58 ` Leo Izen
2023-05-14 22:40 ` Kacper Michajlow
2023-05-14 23:06 ` Michael Niedermayer
2023-05-14 23:28 ` Kacper Michajlow
2023-05-16 14:01 ` Anton Khirnov
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git