I wonder if it is actually taglib that's causing the problems.
MPEG::Header::parse() -- Invalid sample rate. is a common problem with taglib. Taglib does not support all VBR headers.
You can try to remove/edit/regenerate the id3 tags.
For gstreamer you need some extra plugins. SlackBuilds.org has them (bad, ugly)
Code:
$ gst-inspect mad
Factory Details:
Long name: mad mp3 decoder
Class: Codec/Decoder/Audio
Description: Uses mad code to decode mp3 streams
Author(s): Wim Taymans <wim@fluendo.com>
Rank: secondary (128)
Plugin Details:
Name: mad
Description: mp3 decoding based on the mad library
Filename: /usr/lib64/gstreamer-0.10/libgstmad.so
Version: 0.10.14
License: GPL
Source module: gst-plugins-ugly
Binary package: GStreamer Ugly Plug-ins source release