After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 656034 - gstvorbistag: map ENCODER Vorbis comment to application-name
gstvorbistag: map ENCODER Vorbis comment to application-name
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
unspecified
Other All
: Normal normal
: 0.10.36
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-08-05 16:00 UTC by Vincent Penquerc'h
Modified: 2011-08-10 10:09 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
gstvorbistag: map ENCODER Vorbis comment to application-name (1.39 KB, patch)
2011-08-05 16:00 UTC, Vincent Penquerc'h
committed Details | Review

Description Vincent Penquerc'h 2011-08-05 16:00:47 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.
Comment 1 Vincent Penquerc'h 2011-08-05 16:00:50 UTC
Created attachment 193318 [details] [review]
gstvorbistag: map ENCODER Vorbis comment to application-name
Comment 2 Stefan Sauer (gstreamer, gtkdoc dev) 2011-08-06 16:47:12 UTC
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
Comment 3 Christian Fredrik Kalager Schaller 2011-08-09 15:46:20 UTC
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.
Comment 4 Vincent Penquerc'h 2011-08-10 09:03:30 UTC
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.
Comment 5 Christian Fredrik Kalager Schaller 2011-08-10 09:30:44 UTC
Ah ok, so GST_TAG_APPLICATION_NAME should be mapped to ENCODER and GST_TAG_ENCODER is mapped to VENDOR?
Comment 6 Vincent Penquerc'h 2011-08-10 10:09:28 UTC
Correct.