uri-asset: Properly handle images and do not duplicate the TrackType

This commit is contained in:
Thibault Saunier 2013-03-19 21:07:58 -03:00
parent 855270566c
commit 9a751269bb

View file

@ -73,7 +73,6 @@ struct _GESUriSourceAssetPrivate
GESUriClipAsset *parent_asset; GESUriClipAsset *parent_asset;
const gchar *uri; const gchar *uri;
GESTrackType type;
}; };
@ -541,9 +540,16 @@ _extract (GESAsset * asset, GError ** error)
return NULL; return NULL;
} }
trackelement = if (GST_IS_DISCOVERER_VIDEO_INFO (priv->sinfo) &&
GES_TRACK_ELEMENT (ges_track_filesource_new (g_strdup (priv->uri))); gst_discoverer_video_info_is_image ((GstDiscovererVideoInfo *)
ges_track_element_set_track_type (trackelement, priv->type); priv->sinfo))
trackelement =
GES_TRACK_ELEMENT (ges_image_source_new (g_strdup (priv->uri)));
else
trackelement =
GES_TRACK_ELEMENT (ges_track_filesource_new (g_strdup (priv->uri)));
ges_track_element_set_track_type (trackelement,
ges_track_element_asset_get_track_type (GES_TRACK_ELEMENT_ASSET (asset)));
return GES_EXTRACTABLE (trackelement); return GES_EXTRACTABLE (trackelement);
} }
@ -567,8 +573,6 @@ ges_uri_source_asset_init (GESUriSourceAsset * self)
priv->sinfo = NULL; priv->sinfo = NULL;
priv->parent_asset = NULL; priv->parent_asset = NULL;
priv->uri = NULL; priv->uri = NULL;
priv->type = GES_TRACK_TYPE_UNKNOWN;
} }
/** /**