Deepstream smart record feature not working

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU) : GPU
• DeepStream Version. : 7.0
• JetPack Version (valid for Jetson only)
• TensorRT Version
• NVIDIA GPU Driver Version (valid for GPU only) :
• Issue Type( questions, new requirements, bugs) : bug
• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)
• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)

I am running nvida deepstream with an camera RTSP, I am trying to use the deepstream smart record feature, I have configured this as per the docuemntation. when I am running this, I am geeting below error:

root@Server1:/opt/nvidia/deepstream/deepstream-7.0/dumpster/config# deepstream-test5-app -c main_infer_peoplenet_gpu1_smart_record_teju.txt
Civetweb version: v1.16
Server running at port: 9005
nvmultiurisrcbin ERROR from element dsnvurisrcbin0: Invalid path specified for smart-rec-dir-path 
nvmultiurisrcbin ERROR from element dsnvurisrcbin0: Invalid path specified for smart-rec-dir-path 
nvmultiurisrcbin ERROR from element dsnvurisrcbin0: Invalid path specified for smart-rec-dir-path 
** ERROR: <main:1539>: Failed to set pipeline to PAUSED
Quitting
ERROR from dsnvurisrcbin0: Invalid path specified for smart-rec-dir-path 
Debug info: gstdsnvurisrcbin.cpp(2073): populate_rtsp_bin (): /GstPipeline:pipeline/GstBin:multiuri_src_bin/GstDsNvMultiUriBin:src_nvmultiurisrcbin/GstBin:src_nvmultiurisrcbin_creator/GstDsNvUriSrcBin:dsnvurisrcbin0
ERROR from dsnvurisrcbin0: Invalid path specified for smart-rec-dir-path 
Debug info: gstdsnvurisrcbin.cpp(2073): populate_rtsp_bin (): /GstPipeline:pipeline/GstBin:multiuri_src_bin/GstDsNvMultiUriBin:src_nvmultiurisrcbin/GstBin:src_nvmultiurisrcbin_creator/GstDsNvUriSrcBin:dsnvurisrcbin0
ERROR from dsnvurisrcbin0: Invalid path specified for smart-rec-dir-path 
Debug info: gstdsnvurisrcbin.cpp(2073): populate_rtsp_bin (): /GstPipeline:pipeline/GstBin:multiuri_src_bin/GstDsNvMultiUriBin:src_nvmultiurisrcbin/GstBin:src_nvmultiurisrcbin_creator/GstDsNvUriSrcBin:dsnvurisrcbin0
App run failed

Below is my main config file her for reference:

[application]
enable-perf-measurement=1
perf-measurement-interval-sec=1

# Sources
[source-list]
num-source-bins=1
list=rtsp://admin:Abc!2345@4.4.47.182:17554/onvif-media/media.amp?profile=profile_1_h264&sessiontimeout=60&streamtype=unicast
sensor-id-list=ffmpeg_test_cam1
sensor-name-list=ffmpeg_test_cam1
use-nvmultiurisrcbin=1
stream-name-display=1
max-batch-size=1
http-ip=localhost
http-port=9005

[source-attr-all]
enable=1
type=4
num-sources=1
gpu-id=1
cudadec-memtype=1
latency=100
rtsp-reconnect-interval-sec=10
rtsp-reconnect-attempts=-1
select-rtp-protocol=0
udp-buffer-size=2000000
smart-record=2
smart-rec-dir-path=/opt/nvidia/deepstream/deepstream-7.0/dumpster/config/data/smart_recordings/
smart-rec-file-prefix=cam1
smart-rec-cache=20
smart-rec-container=0
smart-rec-start-time=5
smart-rec-default-duration=10
smart-rec-duration=10
smart-rec-interval=10

[sink0]
enable=1
type=1
sync=1
source-id=0
gpu-id=1
nvbuf-memory-type=1

[sink1]
enable=0
type=6
msg-conv-config=dstest5_msgconv_sample_config.yml
msg-conv-payload-type=1
msg-conv-msg2p-new-api=1
msg-conv-frame-interval=1
msg-broker-proto-lib=/opt/nvidia/deepstream/deepstream/lib/libnvds_kafka_proto.so
msg-broker-conn-str=localhost;9092;dumpster_topic_people

[sink2]
enable=0
type=3
container=1
codec=1
sync=1
bitrate=2000000
output-file=/opt/nvidia/deepstream/deepstream-7.0/dumpster/config/data/smart_recordings/out_test_dumpster.mp4
source-id=0


[osd]
enable=1
gpu-id=1
border-width=1
text-size=15
text-color=1;1;1;1;
text-bg-color=0.3;0.3;0.3;1
font=Arial
show-clock=0
clock-x-offset=800
clock-y-offset=820
clock-text-size=12
clock-color=1;0;0;0
nvbuf-memory-type=1

[streammux]
gpu-id=1
live-source=0
batch-size=1
batched-push-timeout=40000
width=960
height=544
enable-padding=1
nvbuf-memory-type=1
attach-sys-ts-as-ntp=1
drop-pipeline-eos=1

[primary-gie]
enable=1
gpu-id=1
batch-size=1
bbox-border-color0=1;0;0;1
bbox-border-color1=0;1;1;1
bbox-border-color2=0;1;1;1
bbox-border-color3=0;1;0;1
interval=0
nvbuf-memory-type=1
config-file=pgie_peoplenet_tao_config_gpu1.txt

[tracker]
enable=0
tracker-width=960
tracker-height=544
gpu-id=1
ll-lib-file=/opt/nvidia/deepstream/deepstream/lib/libnvds_nvmultiobjecttracker.so
ll-config-file=/opt/nvidia/deepstream/deepstream-7.0/samples/configs/deepstream-app/config_tracker_NvSORT.yml
display-tracking-id=1

[tests]
file-loop=0

I tried changing the paths also for smart record, but it didnt worked.
Is there any reference config file available for enabling deesptream smart record feature.

thanks.

I am checking. will get back to you ASAP.

Here is a workaround. In set_properties_nvuribin of \opt\nvidia\deepstream\deepstream\sources\apps\apps-common\src\deepstream_source_bin.c, add the following code by referring to add “smart-record”.

  if (config->dir_path)
    g_object_set (element_, "smart-rec-dir-path", config->dir_path, NULL);

then rebuild test5.

Thanks for the reply, I tried this, made the code change and rebuilt test5, Also I had to change to simple source with all the attributes under the source group rader bifurcated.

Now this is working as expected.

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