GNOME Bugzilla – Bug 656034
gstvorbistag: map ENCODER Vorbis comment to application-name
Last modified: 2011-08-10 10:09:28 UTC
What GStreamer calls encoder ("encoder used to encode this stream") is stored in the vendor string in Vorbis/Theora/Kate and possibly others. The Vorbis comment packet used in those streams uses ENCODER as the name of the encoding program, which GStreamer calls application-name.
Created attachment 193318 [details] [review] gstvorbistag: map ENCODER Vorbis comment to application-name
Looks good: gst-launch audiotestsrc num-buffers=10 ! vorbisenc ! oggmux ! filesink location=test.ogg gst-launch -t playbin2 uri=file://$PWD/test.ogg Setting pipeline to PAUSED ... Pipeline is PREROLLING ... FOUND TAG : found by element "oggdemux0". container format: Ogg FOUND TAG : found by element "oggdemux0". description: audiotest wave encoder: Xiph.Org libVorbis I 20090709 encoder version: 0 nominal bitrate: 80000 bitrate: 80000 FOUND TAG : found by element "vorbisdec0". description: audiotest wave encoder: Xiph.Org libVorbis I 20090709 encoder version: 0 audio codec: Vorbis nominal bitrate: 80000 bitrate: 80000
Not sure I understand this fix. I mean the Encoder in the Vorbis stream should be the GST_TAG_ENCODER with the encoder version being GST_TAG_ENCODER_VERSION. GST_TAG_APPLICATION_NAME should be the high level application creating the file, ie. Transmageddon, Arista, mencoder and so on. I don't know if this GStreamer tag got an equivalent in the Ogg world.
GST_TAG_APPLICATION_NAME is what Ogg usually uses ENCODER for. As you can see on http://wiki.xiph.org/VorbisComment#ENCODER: > The idea of ENCODER is to store the name of the user-visible application, for example ffmpeg2theora. The vendor tag (description of the library used by (eg) ffmpeg2theora) is what GStreamer calls 'encoder'. Maybe the version isn't properly filled out as the example above says 0, but that's independant of what I changed there.
Ah ok, so GST_TAG_APPLICATION_NAME should be mapped to ENCODER and GST_TAG_ENCODER is mapped to VENDOR?
Correct.