Stream latency issue
I have aPC application which receives Video stream using JPEG over RTP and also create webrtc audio call with Android application. All this media pipeline is implemented using gstreamer.
But there is a strange issue running the application: when I get only JPEG stream on PC using this pipeline,
Android: udpsrc port=49199 buffer-size=100000 ! queue ! jpegparse ! tee name=t ! queue ! jpegdec ! videoconvert ! queue ! glimagesink qos=false sync=false t. ! queue ! rtpjpegpay ! udpsink host=pc_ip port=5000 sync=false PC: udpsrc port=5000 ! rtpjitterbuffer ! rtpjpegdepay ! videoconvert ! queue ! autovideosink -v For Audio Call: Android : openslessrc ! queue ! audioconvert ! audioresample ! audiorate ! audio/x-raw,format=S16LE,channels=2,rate=48000 ! queue ! opusenc ! rtpopuspay ! queue ! wbebrtcbin, PC: autoaudiosrc ! queue ! audioconvert ! audioresample ! audiorate ! audio/x-raw,format=S16LE,channels=2,rate=48000 ! queue ! opusenc ! rtpopuspay ! queue ! wbebrtcbin,
Both pipelines are working fine when I run only one application - either video streaming or audio call. But when both run applications run together, I am receiving non consistent JPEG stream, and the stream is delayed version.
I have profiled application on both CPU and Android Side. At PC side the usage is 20% and Android Side 70%. Also I checked the network usage and it is spiking up. Am I missing something in running pipeline?
Do you have any idea what the issue can be?