Hi,
in my app I use a pipeline like this one:
nvstreammux ! nvinfer ! nvtracker ! nvvideoconvert ! video/x-raw,format=RGBA ! videoconvert ! video/x-raw,format=RGB ! appsink
nvstreammux
is dynamically linked with live sources (rtsp or http).
These source bins are added/deleted dynamically.
I need to convert the frame to RGB for postprocessing-
The app generally works fine but, randomically, after adding/deleting source bins several times, the inference (nvinfer) continues to work but the image conversion fails:
- reading NvDsFrameMeta I can see the correct detections
- the image I get on appsink is the same for all the source bins and it doesn’t change (the overlay date/time on the image does not change)
When this error happens the application prints logs such as these ones:
NvRmChannelSubmit: NvError_IoctlFailed with error code 22
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 22, SyncPointValue = 0)
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 22, SyncPointValue = 0)
NvRmChannelSubmit: NvError_IoctlFailed with error code 22
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 16, SyncPointValue = 0)
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 16, SyncPointValue = 0)
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 16, SyncPointValue = 0)
I can also replicate the same error using the reference app here:
I did some minor modifications to this reference app to use the same pipeline as the one in my app and to cycle forever. Please find attached the modified source code (with .log extension added since I’m not allowed to upload files with c or zip extensions).
I started the modified app this way:
./deepstream-test-rt-src-add-del "rtsp://root:password@192.168.3.172/axis-media/media.amp?resolution=800x600"
after about 100-150 iterations the issue happened, for example:
decodebin child added decodebin226
decodebin child added rtph264depay113
decodebin child added h264parse113
decodebin child added capsfilter113
decodebin child added nvv4l2decoder113
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
decodebin child added decodebin227
decodebin child added rtpmp4gdepay113
decodebin child added aacparse113
decodebin child added avdec_aac113
decodebin new pad audio/x-raw
decodebin new pad video/x-raw
Decodebin linked to pipeline
KLT Tracker Init
NvRmChannelSubmit: NvError_IoctlFailed with error code 22
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 22, SyncPointValue = 0)
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 22, SyncPointValue = 0)
NvRmChannelSubmit: NvError_IoctlFailed with error code 22
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 16, SyncPointValue = 0)
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 16, SyncPointValue = 0)
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 16, SyncPointValue = 0)
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 22, SyncPointValue = 0)
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 16, SyncPointValue = 0)
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 16, SyncPointValue = 0)
NvRmChannelSubmit: NvError_IoctlFailed with error code 22
so you need to let the app run for a while to replicate the issue.
In my real app the issue happen more frequently than inside the reference app but this probably is due to the fact that my app do more things (and it handles more than 2 streams at the same time) and so the load of the jetson is higher.
I tryed to use nvvidconv
instead of nvvideoconvert
but nothing changes.
So basically this seems a bug in deepstream sdk or I’m doing something wrong in the same way as the reference app.
I tested the modified reference app on a jetson nano but in my real app I get the same error on both nano and xavier. Can you please confirm and fix or suggest a workaround? Thanks!
deepstream_test_rt_src_add_del.c.log (22.6 KB)