GNOME Bugzilla – Bug 629839
[qtdemux] Update xmp tags parsing
Last modified: 2010-09-21 02:52:45 UTC
New adobe xmp specs have different placements for qt/mp4 variants. We are only handling the qt one. These 2 patches make it work for the mp4 one, too. The first patch is for pull mode and makes qtdemux parse all top-level atoms before start pushing the streams' data. This is because for mp4 the xmp is placed on a top-level uuid atom. The second one delays the tags posting to immediately before starting to push the streams' data. This is needed for merging xmp and native tags before posting them. Not sure how we can handle nicely this for push mode, maybe use best-effort and only parse it if we find it before we get a moov+mdat.
Created attachment 170408 [details] [review] qtdemux: Parse xmp packet in uuid atom xmp packet is placed into a top-level uuid atom for isom/mp4 variants. This patch makes qtdemux parse all top-level atoms in pull-mode before starting to push data, making it able to find those tags.
Created attachment 170409 [details] [review] qtdemux: Delay tags posting a little Delay tags posting until we've parsed all the headers so that the native and xmp tags get merged before posting
commit 52f5e95aee4aed3d077736860ebc65a0b1b04754 Author: Thiago Santos <thiago.sousa.santos@collabora.co.uk> Date: Mon Sep 20 23:17:35 2010 -0300 qtdemux: Parse uuid atoms in push mode Parses uuid atoms in push mode when they are found, they might contain xmp tags. Also does a minor refactoring to put the global tags posting into a single function instead of repeating it in 3 different places. Fixes #629839 commit 9227352e31d474920ffedc8cae77d221130d256b Author: Thiago Santos <thiago.sousa.santos@collabora.co.uk> Date: Thu Sep 16 08:04:02 2010 -0300 qtdemux: Delay tags posting a little Delay tags posting until we've parsed all the headers so that the native and xmp tags get merged before posting https://bugzilla.gnome.org/show_bug.cgi?id=629839 commit 52f5e95aee4aed3d077736860ebc65a0b1b04754 Author: Thiago Santos <thiago.sousa.santos@collabora.co.uk> Date: Mon Sep 20 23:17:35 2010 -0300 qtdemux: Parse uuid atoms in push mode Parses uuid atoms in push mode when they are found, they might contain xmp tags. Also does a minor refactoring to put the global tags posting into a single function instead of repeating it in 3 different places. Fixes #629839 commit 9227352e31d474920ffedc8cae77d221130d256b Author: Thiago Santos <thiago.sousa.santos@collabora.co.uk> Date: Thu Sep 16 08:04:02 2010 -0300 qtdemux: Delay tags posting a little Delay tags posting until we've parsed all the headers so that the native and xmp tags get merged before posting https://bugzilla.gnome.org/show_bug.cgi?id=629839