examples-camera icon indicating copy to clipboard operation
examples-camera copied to clipboard

Record 4 rtsp stream and concatenate them 1 file

Open constantinfite opened this issue 2 years ago • 0 comments

Description

Hi, I want to record into a single file the stream of 4 IP camera working in RTSP. I've already done it on a Jetson with this command gst-launch-1.0 -e nvcompositor name=mix background-w=2560 background-h=1440 \ sink_0::xpos=0 sink_0::ypos=0 sink_0::width=1280 sink_0::height=720 \ sink_1::xpos=1280 sink_1::ypos=0 sink_1::width=1280 sink_1::height=720 \ sink_2::xpos=0 sink_2::ypos=720 sink_2::width=1280 sink_2::height=720 \ sink_3::xpos=1280 sink_3::ypos=720 sink_3::width=1280 sink_3::height=720 \ ! "video/x-raw(memory:NVMM),format=RGBA" ! nvvidconv ! "video/x-raw(memory:NVMM),format=NV12" ! nvv4l2h264enc insert-vui=1 profile=2 ! h264parse ! matroskamux ! filesink location=$dir$1.mkv sync=false \ rtspsrc location=rtsp://192.168.1.21:554/1/h264major ! application/x-rtp,media=video,encoding-name=H264 ! rtph264depay ! h264parse ! nvv4l2decoder ! "video/x-raw(memory:NVMM),format=NV12" ! queue ! mix.sink_0 \ rtspsrc location=rtsp://192.168.1.20:554/1/h264major ! application/x-rtp,media=video,encoding-name=H264 ! rtph264depay ! h264parse ! nvv4l2decoder ! "video/x-raw(memory:NVMM),format=NV12" ! queue ! mix.sink_1 \ rtspsrc location=rtsp://192.168.1.19:554/1/h264major ! application/x-rtp,media=video,encoding-name=H264 ! rtph264depay ! h264parse ! nvv4l2decoder ! "video/x-raw(memory:NVMM),format=NV12" ! queue ! mix.sink_2 \ rtspsrc location=rtsp://192.168.1.18:554/1/h264major ! application/x-rtp,media=video,encoding-name=H264 ! rtph264depay ! h264parse ! nvv4l2decoder ! "video/x-raw(memory:NVMM),format=NV12" ! queue ! mix.sink_3 \

But now I try to do it on the Coral dev board. The module nvcompositor doesn't work on the coral. I try this command : gst-launch-1.0 -e rtspsrc location=rtsp://192.168.2.201:554/1/h264major ! rtph264depay ! h264parse ! decodebin ! videoconvert ! m.sink_0 \ rtspsrc location=rtsp://192.168.2.202:554/1/h264major ! rtph264depay ! h264parse ! decodebin ! videoconvert ! m.sink_1 \ compositor name=m sink_0::xpos=0 sink_1::xpos=1280 ! x264enc ! mp4mux ! filesink location=./out.mp4 sync=false

But the file created cannot be read. Is there a problem in my command ?

Click to expand!

Issue Type

Others

Operating System

Mendel Linux

Coral Device

Dev Board

Other Devices

No response

Programming Language

Python 3.8

Relevant Log Output

Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Progress: (open) Opening Stream
Progress: (open) Opening Stream
Progress: (connect) Connecting to rtsp://192.168.2.202:554/1/h264major
Progress: (connect) Connecting to rtsp://192.168.2.201:554/1/h264major
Progress: (open) Retrieving server options
Progress: (open) Retrieving server options
Progress: (open) Retrieving media info
Progress: (open) Retrieving media info
Progress: (request) SETUP stream 0
Progress: (request) SETUP stream 0
Progress: (request) SETUP stream 1
Progress: (request) SETUP stream 1
Progress: (open) Opened Stream
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (open) Opened Stream
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (request) Sent PLAY request
Progress: (request) Sent PLAY request
Redistribute latency...
Redistribute latency...
^Chandling interrupt.
Interrupt: Stopping pipeline ...
EOS on shutdown enabled -- Forcing EOS on the pipeline
Waiting for EOS...
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Interrupt while waiting for EOS - stopping pipeline...
Execution ended after 0:00:10.422027293
Setting pipeline to PAUSED ...
Setting pipeline to READY ...

constantinfite avatar May 04 '22 13:05 constantinfite