[gstreamer-bugs] [Bug 540890] Need generic way of handling multi-track/chapters files

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Sat Jul 17 06:53:44 PDT 2010


https://bugzilla.gnome.org/show_bug.cgi?id=540890
  GStreamer | gstreamer (core) | git

--- Comment #25 from Sebastian Dröge <slomo at circular-chaos.org> 2010-07-17 13:53:40 UTC ---
Patches claim to introduce API in 0.10.29 instead of 0.10.31.

Also some minor comments I've already sent you by mail:

- The GQuark registration. Use g_quark_from_static_string() instead of
g_quark_from_string() please.
- gst_toc_entry_new(): Add a g_return_val_if_fail (uid != NULL, NULL);
and g_return_val_if_fail (stop == -1 || start <= stop, NULL); to prevent
invalid values.
- gst_toc_entry_structure_new(): Set the type as enum but set the
format as uint and cast. Otherwise you can't support custom GstFormats.
The type setting is correct.
- gst_toc_entry_from_structure(): The same as above with the GstFormat
- gst_toc_entry_to_structure() and _gst_toc_to_structure(): Create the
GstArray a single time, append all list values and then set it in the
structure instead of creating a copy of the array every time, appending
a single entry to the copy and then replace the original with the
modified copy.
- Add to the docs, that the UID of an entry must be persistent for
updates and that it should be handled as "opaque" value without meaning
(e.g. apps shouldn't assume the /editionX/chapterY/chapter/Z structure,
other demuxers could do something else)


Other than that I really like the patches. Would be nice if someone else would
review them too and comment on them :)

This approach should support:
- Generic chapters/editions like in Matroska
- Cuesheets (FLAC, WAV)
- Playlists (You could write e.g. a m3ubin that uses this and internally
creates pipelines for the streams)

Is there anything else we would like to support?

-- 
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 mailing list