<div dir="auto">Hi,<div dir="auto">Could you try to add a queue after the decoder? </div><div dir="auto"><br></div><div dir="auto">My suspect it is a slow down in the pipeline that could lead to some data be discarded by the decoder.</div><div dir="auto"><br></div><div dir="auto">Best</div><div dir="auto">Matteo</div></div><br><div class="gmail_quote"><div dir="ltr">On Wed, Sep 26, 2018, 10:44 Nicolas <<a href="mailto:nicolas@ubble.ai">nicolas@ubble.ai</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<br>
<br>
We have started playing with GStreamer recently, and it works very nicely !<br>
<br>
Our use case is video only. We stream in webRTC from browsers to Janus<br>
Gateway, which itself forwards an RTP stream to our backend (using Janus<br>
Video Room plugin). Janus is also recording the video in a file.<br>
<br>
Browser ---------> Janus -----------> Gstreamer<br>
             WebRTC                RTP<br>
<br>
In our backend, the RTP stream is decoded with Gstreamer, to be analyzed<br>
with computer vision algorithms.<br>
The whole pipeline works nicely, but we observed a weird behavior. We<br>
compared the frames decoded by GStreamer, and the video recorded by Janus.<br>
We realized that frames read by GStreamer are sometimes corrupted, while the<br>
video file never have issues. This corruption starts low, and amplifies<br>
until frames get totally unreadable. After a few seconds, the stream comes<br>
back to normal. (Attached some examples)<br>
<br>
The Gstreamer pipeline we use, that provided the best results so far is: <br>
```udpsrc port=17004 ! application/x-rtp,clock-rate=90000,payload=96 ! queue<br>
!  rtph264depay ! h264parse ! avdec_h264 ! videoconvert ! app```<br>
<br>
We've tried using a rtpjitterbuffer, which did not solve the issue.<br>
<br>
<br>
I'd be glad to hear suggestions on where to look at next, and even experts<br>
that could help pipoint the issue !<br>
Best,<br>
nicolas<br>
<br>
<<a href="http://gstreamer-devel.966125.n4.nabble.com/file/t378556/9d800b06-f62f-4a29-983c-c34490f56287-0-1537968887013-NO_ALGO.png" rel="noreferrer noreferrer" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/file/t378556/9d800b06-f62f-4a29-983c-c34490f56287-0-1537968887013-NO_ALGO.png</a>> <br>
<br>
<<a href="http://gstreamer-devel.966125.n4.nabble.com/file/t378556/9d800b06-f62f-4a29-983c-c34490f56287-0-1537968887320-NO_ALGO.png" rel="noreferrer noreferrer" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/file/t378556/9d800b06-f62f-4a29-983c-c34490f56287-0-1537968887320-NO_ALGO.png</a>> <br>
<br>
<<a href="http://gstreamer-devel.966125.n4.nabble.com/file/t378556/9d800b06-f62f-4a29-983c-c34490f56287-0-1537968889714-NO_ALGO.png" rel="noreferrer noreferrer" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/file/t378556/9d800b06-f62f-4a29-983c-c34490f56287-0-1537968889714-NO_ALGO.png</a>> <br>
<br>
<<a href="http://gstreamer-devel.966125.n4.nabble.com/file/t378556/9d800b06-f62f-4a29-983c-c34490f56287-0-1537968897195-NO_ALGO.png" rel="noreferrer noreferrer" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/file/t378556/9d800b06-f62f-4a29-983c-c34490f56287-0-1537968897195-NO_ALGO.png</a>> <br>
<br>
<br>
<br>
--<br>
Sent from: <a href="http://gstreamer-devel.966125.n4.nabble.com/" rel="noreferrer noreferrer" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/</a><br>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank" rel="noreferrer">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</blockquote></div>