rmdemux looses tags...

Tim-Philipp Müller t.i.m at zen.co.uk
Fri Sep 2 16:16:10 PDT 2011


On Fri, 2011-09-02 at 21:40 +0200, andrea wrote:

Hi,

> I'm trying to convert RealAudio streams to MP3, using a gst-launch
> command line like the following one:
> 
> $ gst-launch -t filesrc location=ra/ilgattopardo/ilgattopardo1.ra \
> ! decodebin2 ! lamemp3enc ! id3v2mux \
> ! filesink location=ilgattopardo1.mp3
> 
> It works perfectly, except for the tags, which I told are found by
> rmdemux, but are not passed over to id3v2mux. Actually, look at the
> following command line and its output:
> 
> $ gst-launch -t filesrc location=ra/ilgattopardo/ilgattopardo1.ra \
> ! decodebin2 ! fakesink
> Setting pipeline to PAUSED ...
> Pipeline is PREROLLING ...
> FOUND TAG      : found by element "rmdemux0".
>            title: Il Gattopardo  -  1 p.ta
>           artist: Terzo Anello  -  Ad alta voce
>        copyright: Copyright © 1997 2000 Netia Digital Audio
> <more output...>
> 
> Title and artist are found, but no way to have them in the MP3 file.
> 
> Note that if the source is already an MP3 file, the original tags are
> copied over even if the file is resampled or such.
> 
> This is quite annoying, since I have tons of such files, and many more I
> have to download: many have rather useless names, whilst the tags are
> much more useful.

File a bug in bugzilla please.

The important thing for transcoding is that the tags also get sent
downstream as a tag *event* (the tag message posted on the bus is only
for the app, not downstream elements). However, the code seems to use
the right API (gst_element_found_tags*()), so this should happen
already. Check with gst-launch -v if the tag event makes it to fakesink.

Cheers
 -Tim




More information about the gstreamer-devel mailing list