Decoding frames is slow if telemetry options are explicitly set to 0
GStreamer's "theoradec" element exposes libtheoradec telemetry options to the user, but if none are set it still calls th_decode_ctl(), setting the relevant options to 0. This causes the "telemetry" path to be enabled, such that we still create a Cairo image and perform YUV/RGB translation, which is very slow.
I'm not sure this is a bug per se, but it seems like an optimization worth performing to only create a Cairo image if any telemetry options are actually enabled (i.e. nonzero).
The following patch resolves this issue. I would submit it as a merge request, but I seem to be unable to create a fork of this repository.
0001-Avoid-creating-a-Cairo-buffer-if-all-telemetry-optio.patch