# deempstream-app ## 环境配置 ### 1. pull image ``` docker pull image.sourcefind.cn:5000/dcu/admin/base/custom:deepstream-gstreamer1.24.0-ubuntu22.04-dtk25.04.02 ``` ### 2. clone code ``` git clone https://developer.sourcefind.cn/codes/modelzoo/deempstream-app.git/ ``` ### 3. prepare environment ``` docker run -d -t -v $PWD/deepstream:/home/deepstream -v /public/opendas/DL_DATA/:/dataset:ro -v /opt/hyhal:/opt/hyhal:ro -v /public:/public:ro --privileged --shm-size=64g --device=/dev/kfd --device=/dev/dri/ --network=host --group-add video --name deepstream-app image.sourcefind.cn:5000/dcu/admin/base/custom:deepstream-gstreamer1.24.0-ubuntu22.04-dtk25.04.02 docker exec -it deepstream-app /bin/bash source /opt/deepstream/env.sh ``` ## 运行 ``` cd /home/deepstream gst-launch-1.0 filesrc location=./streams/cr7_1920x1080.h264 ! h264parse ! hyh264dec ! queue name=q1 ! mux.sink_0 nvstreammux name=mux batch-size=1 ! queue name=q2 ! nvinferserver config-file-path=./sugon_apps/sample_apps/deepstream_detection_test/detection_nvinferserver_config.txt ! queue name=q3 ! nvdsosd display-bbox=1 ! queue name=q4 ! hycudah264enc bitrate=4000 ! queue name=q5 ! h264parse ! matroskamux ! filesink location=./streams/deepstream-detection-output.mkv gst-launch-1.0 filesrc location=./streams/cr7_1920x1080.h264 ! h264parse ! hyh264dec ! queue name=q1 ! mux.sink_0 nvstreammux name=mux batch-size=1 ! queue name=q2 ! nvinferserver config-file-path=./sugon_apps/sample_apps/deepstream_classification_test/classification_nvinferserver_config.txt ! queue name=q3 ! nvdsosd display-text=1 ! queue name=q4 ! hycudah264enc bitrate=4000 ! queue name=q5 ! h264parse ! matroskamux ! filesink location=./streams/deepstream-classification-output.mkv gst-launch-1.0 filesrc location=./streams/cr7_1920x1080.h264 ! h264parse ! hyh264dec ! queue name=q1 ! mux.sink_0 nvstreammux name=mux batch-size=1 ! queue name=q2 ! nvinferserver config-file-path=./sugon_apps/sample_apps/deepstream_segmentation_test/segmentation_nvinferserver_config.txt ! queue name=q3 ! nvdsosd display-mask=1 ! queue name=q4 ! hycudah264enc bitrate=4000 ! queue name=q5 ! h264parse ! matroskamux ! filesink location=./streams/deepstream-segmentation-output.mkv gst-launch-1.0 filesrc location=/workspace/shared_docker/video/cr7_1920x1080.h264 ! h264parse ! hyh264dec ! queue name=q1 ! mux.sink_0 nvstreammux name=mux batch-size=1 ! queue name=q2 ! nvinferserver config-file-path=./sugon_apps/sample_apps/deepstream_yolov5_FP16_test/yolov5_nvinferserver_config.txt ! queue name=q3 ! nvdsosd display-bbox=1 ! queue name=q4 ! hycudah264enc bitrate=4000 ! queue name=q5 ! h264parse ! matroskamux ! filesink location=./streams/deepstream-yolov5-FP16-output.mkv gst-launch-1.0 filesrc location=/workspace/shared_docker/video/cr7_1920x1080.h264 ! h264parse ! hyh264dec ! queue name=q1 ! mux.sink_0 nvstreammux name=mux batch-size=1 ! queue name=q2 ! nvinferserver config-file-path=./sugon_apps/sample_apps/deepstream_yolov5_FP32_test/yolov5_nvinferserver_config.txt ! queue name=q3 ! nvdsosd display-bbox=1 ! queue name=q4 ! hycudah264enc bitrate=4000 ! queue name=q5 ! h264parse ! matroskamux ! filesink location=./streams/deepstream-yolov5-FP32-output.mkv ``` ## 运行结果 推理结果保存在`/home/deepstream/streams/`目录下 ## 备注 1. deepstream仅限于BW环境中运行