In tx2, I can run the below command to decode usb video.
gst-launch-1.0 v4l2src device="/dev/video0" ! video/x-raw,width=640,height=480 ! autovideosink
When I use the following command to check the available sink in gstreamer, I find that there is no rtspsink. Therefore, I can not generate rtsp stream with gstreamer commond.
gst-inspect-1.0 | grep sink
Here is my question. How can I encode usb video and generate the corresponding rtsp stream ? I notice that there is a gst-rtsp-server in gitlab. Is it help ?
Thanks in advance !
GStreamer doesn’t offer a “rtspsink” element, that can be used out of the box like the rtspsrc element for example. You can use the following example app they provide to generate a rtps stream and send it over the network:
An example based on your above GStreamer pipeline will be as follows:
./test-launch "v4l2src device="/dev/video0" ! video/x-raw,width=640,height=480 ! omxh265enc ! rtph265pay name=pay0 pt=96"
You may find interesting the following link about our GStreamer RTSPsink solution:
As a quick overview, RTSP Sink is a GStreamer element which permits high performance streaming to multiple computers using the RTSP / RTP protocols. The GstRtspSink element leverages previous logic from GStreamer’s RTSP server with extensions to create a GStreamer sink element providing benefits like greater flexibility, easy application integration and quick gst-launch prototyping.
I hope the above information helps you.