I'm trying to compose two videos and stream it to my PC over ethernet. Streams to be composed are:
- A GUI created with Qt
- A videotestsrc sink (which will eventually be a live camera stream)
When video 1 and video 2 streamed over ethernet separately, output on my PC seems OK. But when I use imxg2dcompositor element to compose them, I see regular framedrops on output stream. Here is the pipeline I use :
imxg2dcompositor name=d \
sink_1::ypos=0 sink_1::alpha=0.99 ! \
imxipuvideotransform ! queue ! imxvpuenc_h264 ! rtph264pay ! udpsink host=192.168.1.92 port=5003 \
videotestsrc ! "video/x-raw,format=I420,width=1024,height=768,framerate=25/1" ! d.sink_0 \
multifilesrc location=/dev/fb1 ! "video/x-raw,format=RGBX,width=1024,height=768,framerate=25/1" ! videoparse format=12 width=1024 height=768 framerate=25/1 ! alpha method=custom target-r=0 target-g=1 target-b=1 black-sensitivity=128 white-sensitivity=0 ! videoconvert ! d.sink_1
I thought the alpha element in the pipeline may be causing this, but eliminating it changed nothing. Also, after this issue, I tried the compositor element with two videotestsrc elements, and the same framedrop problem occured. Can anyone help me to find out what is wrong with this? Is my pipeline wrong or uneffective? Or is it a hardware issue?
Thanks in advance.