Command working on Jetson Xavier NX but not on Jetson Nano

Hi, I’m recording a rtsp stream on my Jetson Xavier NX everything is working. The command :
gst-launch-1.0 nvcompositor -e background-w=2560 background-h=1440 name=mix \ sink_0::xpos=0 sink_0::ypos=0 sink_0::width=$3 sink_0::height=$4 \ sink_1::xpos=$3 sink_1::ypos=0 sink_1::width=$3 sink_1::height=$4 \ sink_2::xpos=0 sink_2::ypos=$4 sink_2::width=$3 sink_2::height=$4 \ sink_3::xpos=$3 sink_3::ypos=$4 sink_3::width=$3 sink_3::height=$4 \ ! "video/x-raw(memory:NVMM),format=RGBA,width=$(($3*2)),height=$(($4*2))" ! nvvidconv ! "video/x-raw(memory:NVMM),format=NV12" ! nvv4l2h264enc insert-vui=1 profile=2 \ ! h264parse ! video/x-h264,width=$(($3*2)),height=$(($4*2)),framerate=$5/1 ! matroskamux ! filesink location=$6$1.mp4 sync=false \ rtspsrc location=rtsp://192.168.2.18:554/1/h264major ! application/x-rtp,media=video,encoding-name=H264 ! rtph264depay ! h264parse ! nvv4l2decoder ! nvvidconv ! "video/x-raw(memory:NVMM),format=NV12,width=$3,height=$4,pixel-aspect-ratio=1/1" ! queue ! mix.sink_0 \ rtspsrc location=rtsp://192.168.2.19:554/1/h264major ! application/x-rtp,media=video,encoding-name=H264 ! rtph264depay ! h264parse ! nvv4l2decoder ! nvvidconv ! "video/x-raw(memory:NVMM),format=NV12,width=$3,height=$4,pixel-aspect-ratio=1/1" ! queue ! mix.sink_1 \ rtspsrc location=rtsp://192.168.2.20:554/1/h264major ! application/x-rtp,media=video,encoding-name=H264 ! rtph264depay ! h264parse ! nvv4l2decoder ! nvvidconv ! "video/x-raw(memory:NVMM),format=NV12,width=$3,height=$4,pixel-aspect-ratio=1/1" ! queue ! mix.sink_2 \ rtspsrc location=rtsp://192.168.2.21:554/1/h264major ! application/x-rtp,media=video,encoding-name=H264 ! rtph264depay ! h264parse ! nvv4l2decoder ! nvvidconv ! "video/x-raw(memory:NVMM),format=NV12,width=$3,height=$4,pixel-aspect-ratio=1/1" ! queue ! mix.sink_3

But when I run the same command on my Jetson nano with the same camera I get an error :

Setting pipeline to PAUSED …
Opening in BLOCKING MODE
Opening in BLOCKING MODE
Opening in BLOCKING MODE
Opening in BLOCKING MODE
Opening in BLOCKING MODE
Pipeline is live and does not need PREROLL …
Progress: (open) Opening Stream
Progress: (open) Opening Stream
Progress: (open) Opening Stream
Progress: (open) Opening Stream
Progress: (connect) Connecting to rtsp://192.168.2.21:554/1/h264major
Progress: (connect) Connecting to rtsp://192.168.2.19:554/1/h264major
Progress: (connect) Connecting to rtsp://192.168.2.18:554/1/h264major
Progress: (connect) Connecting to rtsp://192.168.2.20:554/1/h264major
Progress: (open) Retrieving server options
Progress: (open) Retrieving server options
Progress: (open) Retrieving server options
Progress: (open) Retrieving server options
Progress: (open) Retrieving media info
Progress: (open) Retrieving media info
Progress: (open) Retrieving media info
Progress: (open) Retrieving media info
Progress: (request) SETUP stream 0
Progress: (request) SETUP stream 0
Progress: (request) SETUP stream 0
Progress: (request) SETUP stream 0
Progress: (open) Opened Stream
Setting pipeline to PLAYING …
New clock: GstSystemClock
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (request) SETUP stream 1
Progress: (request) SETUP stream 1
Progress: (request) Sending PLAY request
Progress: (request) SETUP stream 1
Progress: (request) Sent PLAY request
Progress: (open) Opened Stream
Progress: (open) Opened Stream
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (open) Opened Stream
Progress: (request) Sending PLAY request
Progress: (request) Sent PLAY request
Progress: (request) Sent PLAY request
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
Progress: (request) Sent PLAY request
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
Redistribute latency…
NvMMLiteOpen : Block : BlockType = 4
===== NVMEDIA: NVENC =====
NvMMLiteBlockCreate : Block : BlockType = 4
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
Redistribute latency…
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteOpen : Block : BlockType = 261
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteBlockCreate : Block : BlockType = 261
H264: Profile = 77, Level = 0
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
pixel_format must be RGBA for blending operation
nvbuffer_composite Failed
Got EOS from element “pipeline0”.
Execution ended after 0:00:02.442519218
Setting pipeline to PAUSED …
Setting pipeline to READY …
Setting pipeline to NULL …
Freeing pipeline …

Can it come from the Jetpack version ?
Xavier is on 4.5.1 and Nano on 4.6

Hi,
Please confirm if you rebuild/replace nvcompositor on Jetson Nano. Would need this patch for adding properties background-w/background-h:
Gst for merging 4 webcams sometimes works, and sometimes it doesn't - #5 by DaneLLL

Thanks but where do you put this lib ?

Hi,
The lib is at

/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvcompositor.so

Please clean gstreamer cache after the replacement.

$ rm .cache/gstreamer-1.0/registry.aarch64.bin
1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.