[Bug 645167] [xmp] Add a new XmpConfig interface
bugzilla at gnome.org
Mon Mar 28 10:08:50 PDT 2011
GStreamer | gst-plugins-base | unspecified
--- Comment #5 from Thiago Sousa Santos <thiago.sousa.santos at collabora.co.uk> 2011-03-28 17:08:44 UTC ---
(In reply to comment #4)
> - not so keen on making libgstinterfaces depend on libgsttag. That
> kind of defeats the purpose of libgstinterfaces. Why not just add
> this to libgsttag directly? It's also more discoverable there with
> the rest of the XMP stuff, IMHO. We have interfaces in other
> libraries too (e.g. GstRtspExtension in libgstrtsp).
Agreed, moving there.
> - I'm not fully convinced that the hash table in GstXmpConfigData
> is the right data structure for the job, but since it's 100% internal
> it doesn't hurt, I guess
I can't think of something else now, but we can always change this later.
> - there's no interface vfunc to get a list of supported schemas for
> that particular object. Am I correct in assuming that's not needed
> because all XMP writers will always support all schemas supported
> by libgsttag? (ie. it's not that some schemas don't make sense for
> certain elements)
AFAIK there are no restrictions, the same schemas can be used for all formats.
We can add a new function in the future and default to all if it isn't
> - not sure what to think about the name (GstXmpConfig), if maybe
> GstTagXmpWriter or so wouldn't be nicer.
> - dislike the GList * argument in:
> gst_tag_list_to_xmp_buffer_full (const GstTagList * list,
> gboolean read_only, GList * schemas);
> why not a const gchar ** or even a simple const gchar *
> (e.g. comma-separated list of schemas to use)? (see below)
GList* is not binding friendly, right? I prefer the const gchar**, but a single
gchar* is good, too.
> - The config API per se looks ok, but I was wondering if it
> actually reflects the envisaged use cases. In case of an
> application using this interface to configure the xmp
> writer to only use certain schemas: does the app usually
> know in advance which schemas it wants (whitelist), or
> does it know which ones it wants to disable (blacklist),
> or does it just build things via add/remove from an empty
> slate or the default list? If it's the first, some simple
> set_schemas (writer, "schema1, schema2"); might
> almost be sufficient :)
The use case I have is to be able to disable some undesired schema, so the
blacklist mode makes sense to me. But then I don't know about all the possible
use cases, one might want only a specific schema.
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs