More verbose error output on ReplayGain failures when using gstreamer as backend
- Dominant language
- Python
- Stars
- 15.7k
- Forks
- 2.1k
- Avg merge
- 4d 21h
- Merged PRs (30d)
- 31
Description
According to #gstreamer on FreeNode, errors associated with a missing plugin, such as
`beetsplug.replaygain.ReplayGainError: Error Your GStreamer installation is missing a plug-in. - gstdecodebin2.c(3928): gboolean gst_decode_bin_expose(GstDecodeBin *) (): /GstPipeline:pipeline0/GstDecodeBin:decbin:`
Are preceded by more specific messages on the bus, like:
`missing-plugin, type=(string)decoder, detail=(GstCaps)audio/x-alac, samplesize=(int)16, name=(string)"Apple\ Lossless\ Audio\ \(ALAC\)\ decoder";`
(the above generated by `gst-launch-1.0 filesrc location=foo.m4a ! decodebin ! fakesink -m -v` where foo.m4a is a currently unsupported file)
Further reference: http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstpbutilsmissingplugins.html#gst-missing-plugin-message-get-description (should be available in the Python API as well)
Printing exactly which plugin is missing in the error output could save certain person(s) a lot of time in addressing questions posed in the #beets channel ;)
Contributor guide
Assessment
This issue has not been assessed yet.