[gst-devel] tags

Benjamin Otte in7y118 at public.uni-hamburg.de
Sat Dec 27 02:43:03 CET 2003


This is a writedown of my general thoughts. The issue is that current tag
reading provides no way to get "length" and similar properties which
aren't saved as tags but are part of the data out of the pipeline.

I think we definitely want to support "unchangable" tags. But if we want
to read them out we cannot use the current application/x-gst-tags
mimetype, because that relies on the fact that one element (the one
exporting x-gst-tags) provides these tags.
I propose to drop it completely.

The correct solution for me seems to be plugging the complete pipeline as
you'd plug it on playback since that's the only way you can be sure to get
all the tags. (You want to replace the audiosink with a fake sink though -
but keep the caps.) This even works without decoding - or with very little
decoding - because tag parsing/event sending are supposed to happen before
data passing. So if you just wait for the first data to arrive and stop
the pipeline when that happens, you should be pretty much set.

This even tells you if the current file that you are testing is an audio
file and if you should add it to your music library.
Which brings us to the crux of the issue. If the current file your testing
is not an audio file, spider might play back the whole file trying to plug
it. Which needs a lot of time for big files...

Other than spider needs to be fixed, does that sound sane?

Benjamin





More information about the gstreamer-devel mailing list