Pixelated Android stream
maxime.guisset at atos.net
Mon Jul 22 15:04:52 UTC 2019
I have some trouble getting a smooth stream from GStreamer-Android between 2
android devices communicating together in UDP :
Here's the following pipeline for the Android emitter :
ahcsrc > tee
queue1 > glimagesink
queue2 > capsfilter (640*480) > videoflip > videoconvert > vp8enc >
rtpvp8pay > udpsink1
openslessrc > queue > opusenc > rtpopuspay > udpsink
And for the Android receiver :
udpsrc > queue > application/x-rtp, media=video, encoding-name=VP8 >
rtpjitterbuffer > rtpvp8depay > vp8dec > autovideosink
udpsrc > queue > application/x-rtp, media=audio, encoding-name=OPUS,
payload=127 > rtpopusdepay > opusdec > autoaudiosink
Emitter communicates to receiver through a VPN over a 4G connection.
Using this pipeline, most of the time (not everytime though), the receiver
displays a super *pixelated environment* (we cannot see anything basically)
on the TextureView.
After that, the receiver gets back on track for a few seconds and displays a
good quality video.
Few seconds after, looks like it desyncs again and that occurs once more.
And that goes on and on during the whole streaming experience.
I tried the same pipeline on a local network in Wifi and that works much
better but once in a while, i have this pixelated environment on the
receiver end for a few seconds again.
Do you have any idea about how I could resolve this issue or do something to
"buffer" the packets to avoid showing pixelated video on the received-end ?
Maybe it's a gstreamer behavior to show pixelated env when out of sync ?
Btw, I tried to pimp most of the gstelements (vp8enc with threads=4,
deadline=1 etc...) with their properties, to decrease the resolution... but
none of them show me good improvements.
Some friends told me about EncodeBin and DecodeBin to take advantages of the
hardware features but couldn't get it working and I am not even sure that
would help to resolve the issue.
Would greatly appreciate help,
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
More information about the gstreamer-devel