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 745089 - qtdemux: gets stuck if file only has a moof and no moov
qtdemux: gets stuck if file only has a moof and no moov
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other All
: Normal normal
: 1.5.90
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-02-24 14:19 UTC by Thiago Sousa Santos
Modified: 2015-08-16 13:38 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
File to reproduce the issue (from dash bbb fragments) (65.58 KB, image/x-tga)
2015-02-24 14:19 UTC, Thiago Sousa Santos
  Details
qtdemux: avoid looping reading the 'moof' atom forever (1003 bytes, patch)
2015-02-24 14:20 UTC, Thiago Sousa Santos
committed Details | Review

Description Thiago Sousa Santos 2015-02-24 14:19:49 UTC
Created attachment 297766 [details]
File to reproduce the issue (from dash bbb fragments)

In pull mode, qtdemux keeps infinitely pulling the same moof atom if the file has no mfro, mfra or moov, causing a livelock.
Comment 1 Thiago Sousa Santos 2015-02-24 14:20:16 UTC
Created attachment 297767 [details] [review]
qtdemux: avoid looping reading the 'moof' atom forever

It gets stuck if it only finds a moof and no mfra/mfro or moov
atoms. Skip the moof to continue the parsing to have it either
play or error out.
Comment 2 Thiago Sousa Santos 2015-02-24 14:20:56 UTC
If you have fragmented samples that have moof and moov or mfra/mfro please test this patch.

Thanks
Comment 3 Thiago Sousa Santos 2015-07-06 14:02:22 UTC
commit f40c1f8b09f11dfe597b134af2162c1049563733
Author: Thiago Santos <thiagoss@osg.samsung.com>
Date:   Tue Feb 24 10:50:52 2015 -0300

    qtdemux: avoid looping reading the 'moof' atom forever
    
    It gets stuck if it only finds a moof and no mfra/mfro or moov
    atoms. Skip the moof to continue the parsing to have it either
    play or error out.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=745089