GNOME Bugzilla – Bug 644875
[matroskademux] can't read the ARTIST tag in a Matroska file
Last modified: 2011-06-04 20:56:12 UTC
Hi, I'm using gstreamer on Debian GNU/Linux unstable. I noticed gstreamer (matroskademux) can't read the ARTIST tag in a Matroska file. I made a Matroska file with some tags using mkvmerge. mkvinfo shown all the tags I added to the file. But gst-launch could not find the ARTIST tag while other tags could be found properly. How to reproduce the problem: 1) Here is a xml file to describe the tags. % cat tags.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Tags SYSTEM "matroskatags.dtd"> <Tags> <Tag> <Simple> <Name>ARTIST</Name> <String>ARTIST string</String> </Simple> <Simple> <Name>GENRE</Name> <String>GENRE string</String> </Simple> <Simple> <Name>TITLE</Name> <String>TITLE string</String> </Simple> <Simple> <Name>ALBUM</Name> <String>ALBUM string</String> </Simple> </Tag> </Tags> 2) Then I made a file "test.mkv" with tags.xml as following: % mkvmerge -o test.mkv --tags 0:tags.xml /usr/share/sounds/startup3.wav mkvmerge v4.6.0 ('Still Crazy After All These Years') built on Mar 11 2011 08:54:33 '/usr/share/sounds/startup3.wav': Using the WAV demultiplexer. '/usr/share/sounds/startup3.wav' track 0: Using the PCM output module. The file 'test.mkv' has been opened for writing. Progress: 100% The cue entries (the index) are being written... Muxing took 0 seconds. 3) The tags ARTIST, GENRE, TITLE and ALBUM are correctly added to the file test.mkv. % mkvinfo -t test.mkv + EBML head |+ EBML version: 1 |+ EBML read version: 1 |+ EBML maximum ID length: 4 |+ EBML maximum size length: 8 |+ Doc type: matroska |+ Doc type version: 2 |+ Doc type read version: 2 ...snip... |+ Tags | + Tag | + Simple | + Name: ARTIST | + String: ARTIST string | + TagLanguage: und | + DefaultLanguage: 1 | + Simple | + Name: GENRE | + String: GENRE string | + TagLanguage: und | + DefaultLanguage: 1 | + Simple | + Name: TITLE | + String: TITLE string | + TagLanguage: und | + DefaultLanguage: 1 | + Simple | + Name: ALBUM | + String: ALBUM string | + TagLanguage: und | + DefaultLanguage: 1 | + Targets | + TrackUID: 3391929919 | + TargetTypeValue: 50 Statistics for track number 1: number of blocks: 26; size in bytes: 1768432; duration in seconds: 5.2; approximate bitrate in bits/second: 2720667 4) However, gst-launch found the tags GENRE, TITLE and ALBUM only. It seems that matroskademux could not find the ARTIST tag. % gst-launch -t filesrc location=./test.mkv ! matroskademux ! fakesink Setting pipeline to PAUSED ... Pipeline is PREROLLING ... FOUND TAG : found by element "matroskademux0". audio codec: Raw 16-bit PCM audio language code: und FOUND TAG : found by element "matroskademux0". genre: GENRE string title: TITLE string album: ALBUM string container format: Matroska Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: GstSystemClock Got EOS from element "pipeline0". Execution ended after 5711643 ns. Setting pipeline to PAUSED ... Setting pipeline to READY ... Setting pipeline to NULL ... Freeing pipeline ... According to the Matroska Tag Specifications[1], ARTIST tag is listed in the Official tags category. It would be nice if matroskademux can read the ARTIST tag. [1] Tag Specifications | Matroska http://www.matroska.org/technical/specs/tagging/index.html I also tested with gstreamer 0.10.32, but the problem seems not be fixed. Regards,
commit 7db758164dade4d906754d5b750450769d59427b Author: Sebastian Dröge <sebastian.droege@collabora.co.uk> Date: Wed Mar 16 09:37:58 2011 +0100 matroskamux: Use ARTIST instead of AUTHOR for GST_TAG_ARTIST commit 52aa27f997f117c0e456596df96713e9901eb959 Author: Sebastian Dröge <sebastian.droege@collabora.co.uk> Date: Wed Mar 16 09:35:50 2011 +0100 matroskademux: Use ARTIST Matroska tag instead of AUTHOR for GST_TAG_ARTIST AUTHOR only existed in an old version of the spec and ARTIST is the new replacement for this. We are still reading both to still be compatible with old files. Fixes bug #644875.
Created attachment 189232 [details] [review] matroskaparse: Use ARTIST tag instead of AUTHOR for GST_TAG_ARTIST
pushed.