Transcoding one input stream into multiple file and formats


everything is in the title, i’m reading the “Accelerated_GStreamer_User_Guide.pdf” and i wanted to know if it 'll be possible to take one file input from HW Decoding to Multiple output formats at the same time? (one decode with data reused for 3 parallel encoding)

As i’m writing thoses lines, i’m realizing that there is no information about parallel processing like we can do with NVEnc (2 parallel encoding on Geforce, unlimited on Quadro)

Thank you by advance for every details you have about this topic

You can utilize ‘tee’

$ gst-launch-1.0 uridecodebin uri=file:///home/nvidia/jellyfish-10-mbps-hd-hevc-10bit.mkv ! nvvidconv ! 'video/x-raw(memory:NVMM)' ! tee name=t ! nvv4l2h264enc ! h264parse ! qtmux ! filesink location=a.mp4 t. ! queue ! nvv4l2h265enc ! h265parse ! matroskamux ! filesink location=a.mkv

thank you for your quick answer, but i don’t see any info about “tee” in docs.

Looking more deeply at the gst-launcher doc and i’m understanding better your pipeline synthax (except tee)

ps: sorry for my english, it’s been a long time i haven’t worte such a lenghty text in sheakespear’s language


We develop NVIDIA plugins to work with gstreamer plugins. For gstreamer plugins, you may go to the website for more information. Also may post questions on

I would like to thank you for these ressources, realy helpfull, cumulated to the links below, i figured out better the “tee” and “queue” mechanism to handle gsreamer MT. I’ll continue to read the API user’s guide to master everything

Thank you once again