Cannot link mpeg2 encoder to mpeg program stream muxer when using splitmuxsink

Hi,

I’ve been trying to split and save MPEG-2 Program stream after decoding and deinterlacing. I have had success without splitting when I directly use a filesink.
For Ex:
… encoder → mpegpsmux → filesink

However when I use splitmuxsink I get a linking error.
The pipeline is as below.

gst-launch-1.0 udpsrc address=239.202.0.1  port=6310 caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)MP2P,payload=(int)96" ! rtpbin name=recv_rtp  ! rtpmp2pdepay  ! mpegpsdemux name=d d.video_e0 ! mpegvideoparse ! decodebin ! videoconvert ! deinterlace ! videoconvert ! avenc_mpeg2video ! video/mpeg,mpegversion=2 ! queue name=Q1 ! splitmuxsink name=mux location=/root/PS_%d.mpg max-size-time=10000000000 muxer-factory=mpegpsmux async-finalize=true
WARNING: erroneous pipeline: could not link Q1 to mux

Anything I can set in between to accept the caps?