How to correctly filter video streams (and pads) when using uridecodebin3

I’m developing a Gstreamer pipeline that receives MPEGTS streams in many protocols(hls,udp,srt, etc…) and convert them to a audio stream that then is processed by my company proprietary plugin.

To receive and process the streams I’m using uridecodebin3 and so far I was achieving what I was looking for by connecting to “autoplug-continue” and “autoplug-factories” parsebin signals ( created by decodebin3) but this changed with the introduction of hlsdemux2 ( I’m using version 1.24 ). Now hlsdemux2 create it’s own parsebin and then decodebin creates 2 more ( 1 for video and audio in my case), I would like to have a proper way to prevent this video stream to be decoded, which is costly, I’m suffering to adapt the existing code.

I went as far as described in the image below, but the parsebin is complaning about missing h264 plugins(because autoplug-factories is reporting an empty list )

The pipeline is created but it goes to paused after the parsebin complaint.

I’ve already tried using the Stream Selection API but it’s does not seem to work, even if I only select and audio stream the video will be decoded

Thanks for your help! :slight_smile: