After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 744689 - hlssink: EXT-X-VERSION set to 6 while not using any features > 3
hlssink: EXT-X-VERSION set to 6 while not using any features > 3
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
unspecified
Other Linux
: Normal minor
: 1.5.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-02-18 08:15 UTC by guillaume
Modified: 2015-08-08 11:51 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Proposed change (805 bytes, patch)
2015-02-19 13:31 UTC, guillaume
needs-work Details | Review
New version of the patch (1.01 KB, patch)
2015-02-19 14:14 UTC, guillaume
committed Details | Review

Description guillaume 2015-02-18 08:15:35 UTC
The EXT-X-VERSION set in the playlists produced by hlssink is hardcoded to 6 [1], while as far as I can tell no feature for versions greater than 3 are in use [2,3].

VLC 2.1 only seems to support HLS up to version 3, and as per the spec [2] refuses to process playlists from an unsupported version, while it seems it supports all the features used by hlssink.

Would it be possible to reduce the version to 3, at least until features from the newer versions are used ?

Thanks for the great piece of software !

[1] http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/ext/hls/gsthlssink.c?id=00bdac51a30e35d9c77d8d9d0d915f282771036f#n208
[2] https://tools.ietf.org/html/draft-pantos-http-live-streaming-14#section-7
[3] http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/ext/hls/gstm3u8playlist.c?id=00bdac51a30e35d9c77d8d9d0d915f282771036f#n29
Comment 1 Sebastian Dröge (slomo) 2015-02-18 08:17:26 UTC
Yes, I think the version can indeed be 3 at this point.
Comment 2 Thiago Sousa Santos 2015-02-19 13:25:09 UTC
agreed. Could you provide a patch in git format-patch format?
Comment 3 guillaume 2015-02-19 13:31:21 UTC
Created attachment 297265 [details] [review]
Proposed change

Here's the proposed change. Maybe would it be cleaner to factor out the version in a #define ?
Comment 4 Thiago Sousa Santos 2015-02-19 14:10:37 UTC
Review of attachment 297265 [details] [review]:

Yes, please put it in a define to make clearer what the parameter is.
Comment 5 guillaume 2015-02-19 14:14:21 UTC
Created attachment 297273 [details] [review]
New version of the patch

Here it is. Not sure on the Gstreamer naming conventions though, and if placement is optimal (wondering if it should go to the gstm3u8playlist.h/c instead, and even if we shouldn't make that version field local to gstm3u8playlist.h/c at all (since the required version is entirely defined by the code of these files, I think)
Comment 6 Thiago Sousa Santos 2015-02-19 14:52:16 UTC
Review of attachment 297273 [details] [review]:

Thanks for the update, looks good.
Comment 7 Thiago Sousa Santos 2015-02-19 15:19:21 UTC
Thanks for the update, it was pushed to master.

For future patches, please add a commit message, even if minimum explaining the change. Also have indent installed on your system so that our git commit hooks detect if your code follows our coding style guidelines.

commit b75f64d72ed5f07ab9e105ff6102e89513d9cb30
Author: Guillaume Seguin <guillaume@segu.in>
Date:   Thu Feb 19 14:34:23 2015 +0100

    hlssink: reduce playlist's EXT-X-VERSION to 3
    
    We are not using any features greater than the 3rd version,
    so reduce to what we actually use to make it compatible with
    more players
    
    https://bugzilla.gnome.org/show_bug.cgi?id=744689
Comment 8 guillaume 2015-02-19 15:23:27 UTC
Thanks, and thanks for the hints, I'll sure do so next time.
Comment 9 minfrin 2015-07-31 10:32:50 UTC
Would it be possible to backport this to previous branches where the version was upped to 6?

The current git master has too many regressions to work practically, and so we are forced to use older branches of gstreamer.
Comment 10 Sebastian Dröge (slomo) 2015-08-07 11:20:32 UTC
What are the regressions in GIT master you're struggling with? Please report them so we can get them fixed.
Comment 11 minfrin 2015-08-08 09:45:45 UTC
Ive switched from v1.2 to 1.4, then master, than back to v1.4 in an effort to find a stable combination, and am still struggling. Once I get v1.4 to work I'll switch back to master and try that again.
Comment 12 Sebastian Dröge (slomo) 2015-08-08 11:51:58 UTC
Ok, please file bugs about anything broken you notice. 1.6 is planned to be released really soon now and it would be good to fix any regressions before that :)