Thank you for your kind guidance,
I have solved the problem about system not being able to find -lcuda. Then followed this guide for getting the USB camera on the WSL. After following the guide, I could see /dev/video0 through /dev/video5 listed after the command:
ls -l /dev/video*
After listing devices, I run the command:
v4l2-ctl -d /dev/video2 --list-formats-ext
I got the following output:
ioctl: VIDIOC_ENUM_FMT
Type: Video Capture
[0]: 'GREY' (8-bit Greyscale)
Size: Discrete 480x270
Interval: Discrete 0.017s (60.000 fps)
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 640x360
Interval: Discrete 0.033s (30.000 fps)
Size: Discrete 640x480
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 848x480
Interval: Discrete 0.100s (10.000 fps)
Interval: Discrete 0.125s (8.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 1280x720
Interval: Discrete 0.167s (6.000 fps)
[1]: 'UYVY' (UYVY 4:2:2)
Size: Discrete 480x270
Interval: Discrete 0.017s (60.000 fps)
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 640x360
Interval: Discrete 0.033s (30.000 fps)
Size: Discrete 640x480
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 848x480
Interval: Discrete 0.100s (10.000 fps)
Interval: Discrete 0.125s (8.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 1280x720
Interval: Discrete 0.167s (6.000 fps)
[2]: 'GREY' (8-bit Greyscale)
Size: Discrete 480x270
Interval: Discrete 0.017s (60.000 fps)
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 640x360
Interval: Discrete 0.033s (30.000 fps)
Size: Discrete 640x480
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 848x480
Interval: Discrete 0.100s (10.000 fps)
Interval: Discrete 0.125s (8.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 1280x720
Interval: Discrete 0.167s (6.000 fps)
[3]: 'Y8I ' (Interleaved 8-bit Greyscale)
Size: Discrete 480x270
Interval: Discrete 0.017s (60.000 fps)
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 640x360
Interval: Discrete 0.033s (30.000 fps)
Size: Discrete 640x480
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 848x480
Interval: Discrete 0.100s (10.000 fps)
Interval: Discrete 0.125s (8.000 fps)
Interval: Discrete 0.167s (6.000 fps)
Size: Discrete 1280x720
Interval: Discrete 0.167s (6.000 fps)
Then, I copied and pasted the deepstream-heartrate-app.cpp
code I have written previously to deepstream-tao-apps/apps/tao_others/deepstream-heartrate-app
and I run the code with the command:
GST_DEBUG=3 ./deepstream-heartrate-app 3 v4l2:///dev/video2 ./heartrate
I got the following output:
Request sink_0 pad from streammux
Failed to load config file: No such file or directory
** ERROR: <gst_nvinfer_parse_config_file:1308>: failed
Now playing: v4l2:///dev/video2
0:00:00.867667006 2315 0x55f18aa26a40 WARN v4l2 v4l2_calls.c:607:gst_v4l2_open:<camera> error: Cannot identify device '
'.
0:00:00.867706928 2315 0x55f18aa26a40 WARN v4l2 v4l2_calls.c:607:gst_v4l2_open:<camera> error: system error: No such file or directory
Running...
ERROR from element camera: Cannot identify device '
'.
Error details: v4l2_calls.c(607): gst_v4l2_open (): /GstPipeline:pipeline/GstBin:source-bin-00/GstV4l2Src:camera:
system error: No such file or directory
Returned, stopping playback
Average fps 0.000233
Totally 0 faces are inferred
Deleting pipeline
Segmentation fault
and then, I have tried this command:
GST_DEBUG=3 ./deepstream-heartrate-app 3 file:/opt/nvidia/deepstream/deepstream-6.3/samples/streams/sample_ride_bike.mov ./heartrate
I got the following output:
Request sink_0 pad from streammux
Failed to load config file: No such file or directory
** ERROR: <gst_nvinfer_parse_config_file:1308>: failed
Now playing: file:/opt/nvidia/deepstream/deepstream-6.3/samples/streams/sample_ride_bike.mov
0:00:00.928061235 2453 0x55928c67ef80 ERROR nvdsvideotemplate gstnvdsvideotemplate.cpp:576:gst_nvdsvideotemplate_start:<heartrate_infer> Runtime error: ./heartrateinfer_impl/libnvds_heartrateinfer.so: undefined symbol: cuGraphicsEGLRegisterImage
0:00:00.928116191 2453 0x55928c67ef80 WARN GST_PADS gstpad.c:1142:gst_pad_set_active:<heartrate_infer:sink> Failed to activate pad
Running...
ERROR from element heartrate_infer: Runtime error: ./heartrateinfer_impl/libnvds_heartrateinfer.so: undefined symbol: cuGraphicsEGLRegisterImage
Error details: Exception occurred
Returned, stopping playback
Average fps 0.000233
Totally 0 faces are inferred
Deleting pipeline
Segmentation fault
Could you offer your advice and guidance please?
Kindest regards.