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 754991 - ges-base-xml-formatter: Incorrect handling of asset / clip mismatch
ges-base-xml-formatter: Incorrect handling of asset / clip mismatch
Status: RESOLVED INCOMPLETE
Product: GStreamer
Classification: Platform
Component: gst-editing-services
git master
Other All
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-09-14 10:56 UTC by Kyrylo V. Polezhaiev
Modified: 2018-05-06 12:18 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Kyrylo V. Polezhaiev 2015-09-14 10:56:14 UTC
In case we have GESUriClip with wrong asset-id, ged-base-xml-formatter will never call _loading_done:

    convert -size 640x480 xc:white /tmp/asset-1.png
    cat <<EOF > p1.xges
<ges version='0.1'>
    <project properties='properties;' metadatas='metadatas;'>
        <ressources>
            <asset id="file:///tmp/asset-1.png" extractable-type-name="GESUriClip" properties="properties, supported-formats=(int)4;" metadatas="metadatas;" />
        </ressources>
        <timeline properties='properties, auto-transition=(boolean)true, snapping-distance=(guint64)0;' metadatas='metadatas, duration=(guint64)3000000000;'>
            <track caps="video/x-raw" track-type="4" track-id="0" properties="properties, async-handling=(boolean)false, message-forward=(boolean)false, caps=(string)video/x-raw, restriction-caps=(string)&quot;video/x-raw\,\ width\=\(int\)640\,\ height\=\(int\)480\,\ framerate\=\(fraction\)30/1&quot;;" metadatas="metadatas;" />
            <layer priority="0" properties="properties, auto-transition=(boolean)true;" metadatas="metadatas, volume=(float)1;">
                <clip id="1" asset-id="file:///tmp/asset-2.png" type-name="GESUriClip" layer-priority="0" track-types="4" start="0" duration="3000000000" inpoint="0" rate="0" properties="properties, name=(string)uriclip0, mute=(boolean)false, is-image=(boolean)true;"/>
            </layer>
        </timeline>
    </project>
</ges>
EOF

So, neither error nor "loaded" signal will be sent to GESPipeline's subscriber. Тext command will either never return or will fail with GstDiscoverer timeout:

    ges-launch-1.0 -l p1.xges -z p1.ogg

Obviously, we should show warning about unused asset and "unknown asset identifier" error.
Comment 1 Thibault Saunier 2016-05-15 02:56:55 UTC
You have the `GESProject::missing-uri` to signal that, it also alows you to return the new URI of that asset.

Anything not handled with that?
Comment 2 Vivia Nikolaidou 2018-05-06 12:18:37 UTC
Closing this bug report as no further information has been provided. Please feel free to reopen this bug report if you can provide the information that was asked for in a previous comment.
Thanks!