structured-interface: Avoid setting invalid clip duration
authorThibault Saunier <tsaunier@igalia.com>
Wed, 31 Jul 2019 01:22:18 +0000 (18:22 -0700)
committerTim-Philipp Müller <tim@centricular.com>
Wed, 1 Jan 2020 15:08:41 +0000 (15:08 +0000)
ges/ges-structured-interface.c

index cf1de50..157d88c 100644 (file)
@@ -407,6 +407,11 @@ _ges_add_clip_from_struct (GESTimeline * timeline, GstStructure * structure,
     goto beach;
   }
 
+  if (GES_IS_URI_CLIP_ASSET (asset) && !GST_CLOCK_TIME_IS_VALID (duration)) {
+    duration = GST_CLOCK_DIFF (inpoint,
+        ges_uri_clip_asset_get_duration (GES_URI_CLIP_ASSET (asset)));
+  }
+
   clip = ges_layer_add_asset (layer, asset, start, inpoint, duration,
       GES_TRACK_TYPE_UNKNOWN);