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 725140 - hlsdemux: fails to correctly parse CODECS and RESOLUTION
hlsdemux: fails to correctly parse CODECS and RESOLUTION
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other All
: Normal normal
: 1.2.4
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2014-02-25 12:46 UTC by A Ashley
Modified: 2014-02-28 08:38 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
fix parsing of CODECS and RESOLUTION (2.12 KB, patch)
2014-02-25 12:53 UTC, A Ashley
committed Details | Review

Description A Ashley 2014-02-25 12:46:13 UTC
hlsdemux does not check for the '"' character in #EXT-X-STREAM-INF
attributes. The CODECS parameter is an example of an attribute
that might use the '"' symbol and might contain a ',' character
inside this quoted string.

For example: CODECS="avc1.77.30, mp4a.40.2"

hlsdemux does not correctly parse the RESOLUTION attribute, it
assumes that an '=' character is used to delineate the width
and height values, but the HLS RFC states that a 'x' character
must be used as the delimiter between width and height.
Comment 1 A Ashley 2014-02-25 12:53:21 UTC
Created attachment 270265 [details] [review]
fix parsing of CODECS and RESOLUTION

An example of an m3u8 that fails to parse without this patch:
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1588000,CODECS="avc1.77.30, mp4a.40.2",RESOLUTION=704x396
index_0_av.m3u8?e=b471643725c47acd
Comment 2 Sebastian Dröge (slomo) 2014-02-26 08:23:55 UTC
commit 161254d7c0cd2866b05d35d4aa1eed7e876779fc
Author: Alex Ashley <bugzilla@ashley-family.net>
Date:   Fri Feb 21 09:36:51 2014 +0000

    hlsdemux: Fix parsing of CODECS and RESOLUTION
    
    hlsdemux does not check for the '"' character in #EXT-X-STREAM-INF
    attributes. The CODECS parameter is an example of an attribute
    that might use the '"' symbol and might contain a ',' character
    inside this quoted string.
    
    For example: CODECS="avc1.77.30, mp4a.40.2"
    
    hlsdemux does not correctly parse the RESOLUTION attribute, it
    assumes that an '=' character is used to delineate the width
    and height values, but the HLS RFC states that a 'x' character
    must be used as the delimiter between width and height.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=725140