Thanks for that.
I have it working now - pretty impressive although a bit buggy for me.
As a test I checked an HD service with the PASS profile and it averaged around 10Mb/s.
Using the spawn process the same service averaged around 0.8Mb/s.
This was using the CMD given earlier in the thread:
gst-launch-1.0 fdsrc fd=0 ! decodebin name=decoder decoder. ! queue ! avenc_ac3 ! mpegtsmux name=mux ! fdsink fd=1 decoder. ! omxh264enc ! mux.
I noticed sometimes it doesn't always play but VLC still shows an input bitrate of around 0.6Mb/s. Not sure why that is yet. I am playing with the settings and adjusting the timeouts to see if I can improve the reliability.
Also, the transcoded bitrate is a bit low for me - I think the sweet spot will be around 2.5-3Mb/s (if the rpi can do it).