RTSP-Streaming

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

RTSP-Streaming

Thornton, Keith

Hi,

when I stream with the following pipelines everything works as expected

 

Server

test-launch "( videotestsrc do-timestamp=true is-live=true pattern=smpte horizontal-speed=5 ! video/x-raw,width=1920,height=1080,framerate=60000/1001,format=NV12 ! queue name=encode-queue max-size-bytes=124416000 ! x264enc ! video/x-h264,stream-format=byte-stream ! h264parse ! rtph264pay name=pay0 config-interval=10 pt=96 )");

 

client

gst-launch-1.0 -v -e rtspsrc location=rtsp://192.168.0.5:8554/live ! rtph264depay ! h264parse ! capsfilter caps="video/x-h264,width=1920,height=1080,framerate=(fraction)60000/1001" ! avdec_h264 ! identity silent=false ! fpsdisplaysink sync=true

 

When I implement the server in my code using the test_appsrc.c as muster

The appsrc part of the pipeline is

“( appsrc name=MyHQSrc min-latency=500000000 format=3  rtph264pay name=pay0 config-interval=10 pt=96 )”

 

The buffers arrive at the client with different timestamps from those which my encoder sets which are monotonously incrementing DTS and PTS=GST_CLOCK_TIME_NONE.

Can it be that appsink / appsrc re-stamps the buffers with incrementing PTS timestamps.

 

The consequence is that the demuxer on the client side complains about decreasing timestamps every third or fourth buffer.

Grüße

 


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: RTSP-Streaming

Nicolas Dufresne-5
Le vendredi 29 septembre 2017 à 11:32 +0000, Thornton, Keith a écrit :

> Hi,
> when I stream with the following pipelines everything works as
> expected
>  
> Server
> test-launch "( videotestsrc do-timestamp=true is-live=true
> pattern=smpte horizontal-speed=5 ! video/x-
> raw,width=1920,height=1080,framerate=60000/1001,format=NV12 ! queue
> name=encode-queue max-size-bytes=124416000 ! x264enc ! video/x-
> h264,stream-format=byte-stream ! h264parse ! rtph264pay name=pay0
> config-interval=10 pt=96 )");
>  
> client
> gst-launch-1.0 -v -e rtspsrc location=rtsp://192.168.0.5:8554/live !
> rtph264depay ! h264parse ! capsfilter caps="video/x-
> h264,width=1920,height=1080,framerate=(fraction)60000/1001" !
> avdec_h264 ! identity silent=false ! fpsdisplaysink sync=true
>  
> When I implement the server in my code using the test_appsrc.c as
> muster
> The appsrc part of the pipeline is
> “( appsrc name=MyHQSrc min-latency=500000000 format=3  rtph264pay
> name=pay0 config-interval=10 pt=96 )”
>  
> The buffers arrive at the client with different timestamps from those
> which my encoder sets which are monotonously incrementing DTS and
> PTS=GST_CLOCK_TIME_NONE.
> Can it be that appsink / appsrc re-stamps the buffers with
> incrementing PTS timestamps.
The timestamp will be different, at least shifted forward a little,
unless you are using a very special setup.

>  
> The consequence is that the demuxer on the client side complains
> about decreasing timestamps every third or fourth buffer.

That's because RTP does not transport both PTS and DTS, and we don't
have any code in GStreamer to reconstruct one from another. Disable the
b-frames and the problem should go away. No more reordering.

  ... ! x264enc bframes=0 b-adapt=0 ! ...

> Grüße
>  
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (201 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: RTSP-Streaming

Christof
In reply to this post by Thornton, Keith
Hi Keith!

I found your post stating that you can run this queues:

Thornton, Keith wrote

> Server
> test-launch "( videotestsrc do-timestamp=true is-live=true pattern=smpte
> horizontal-speed=5 !
> video/x-raw,width=1920,height=1080,framerate=60000/1001,format=NV12 !
> queue name=encode-queue max-size-bytes=124416000 ! x264enc !
> video/x-h264,stream-format=byte-stream ! h264parse ! rtph264pay name=pay0
> config-interval=10 pt=96 )");
>
> client
> gst-launch-1.0 -v -e rtspsrc location=rtsp://192.168.0.5:8554/live !
> rtph264depay ! h264parse ! capsfilter
> caps="video/x-h264,width=1920,height=1080,framerate=(fraction)60000/1001"
> ! avdec_h264 ! identity silent=false ! fpsdisplaysink sync=true

As I described in
http://gstreamer-devel.966125.n4.nabble.com/cannot-build-source-in-gst-rtsp-server-1-11-2-td4682311.html
<http://gstreamer-devel.966125.n4.nabble.com/cannot-build-source-in-gst-rtsp-server-1-11-2-td4682311.html>  
I had problems compiling the latest version, I pulled from GIT (1.13.0.1).
What version are you using?

Many thanks for your short answer in advance,
Christof



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

AW: RTSP-Streaming

Thornton, Keith
I am running 1.12.2 on Windows 7 X64

-----Ursprüngliche Nachricht-----
Von: gstreamer-devel [mailto:[hidden email]] Im Auftrag von Christof
Gesendet: Montag, 2. Oktober 2017 09:57
An: [hidden email]
Betreff: Re: RTSP-Streaming

Hi Keith!

I found your post stating that you can run this queues:

Thornton, Keith wrote

> Server
> test-launch "( videotestsrc do-timestamp=true is-live=true
> pattern=smpte
> horizontal-speed=5 !
> video/x-raw,width=1920,height=1080,framerate=60000/1001,format=NV12 !
> queue name=encode-queue max-size-bytes=124416000 ! x264enc !
> video/x-h264,stream-format=byte-stream ! h264parse ! rtph264pay
> name=pay0
> config-interval=10 pt=96 )");
>
> client
> gst-launch-1.0 -v -e rtspsrc location=rtsp://192.168.0.5:8554/live !
> rtph264depay ! h264parse ! capsfilter
> caps="video/x-h264,width=1920,height=1080,framerate=(fraction)60000/1001"
> ! avdec_h264 ! identity silent=false ! fpsdisplaysink sync=true

As I described in
http://gstreamer-devel.966125.n4.nabble.com/cannot-build-source-in-gst-rtsp-server-1-11-2-td4682311.html
<http://gstreamer-devel.966125.n4.nabble.com/cannot-build-source-in-gst-rtsp-server-1-11-2-td4682311.html>
I had problems compiling the latest version, I pulled from GIT (1.13.0.1).
What version are you using?

Many thanks for your short answer in advance, Christof



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel