# Run sample applications using a host computer You can run the sample application on the Qualcomm Dragonwing^™^ RB3 Gen 2 Development Kit using a host computer with Windows, Ubuntu, or mac operating system. ## Prerequisites Before running any application, ensure to [Set up the device](https://docs.qualcomm.com/doc/80-70020-251/topic/set_up_the_device.html#set-up-the-device). Note To enable audio, see the [Qualcomm Linux Audio Guide](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-16/enable-audio.html). ## Run multimedia sample applications The multimedia sample applications show use cases for camera, display, and video streams on the device. ### Multicamera streaming or encoding (Dash cam) The **gst-multi-camera-example** command-line application shows simultaneous streaming from two camera sensors on the Dragonwing RB3 Gen 2 device. The application composes the camera feeds side-by-side to display on a screen or encodes and stores the video streams to files. Camera 0 Composition Composer Display Camera 1 Camera 0 Encoding H.264 encoder Write to file H.264 encoder Camera 1 Write to file **Figure: Dash cam application workflow**
Last Published: Dec 30, 2025
**Video: Multicamera application** **Example usage** To start the application, run the following use cases from the SSH terminal: 1. To view the sample application on the HDMI display, run the following export command: export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_DISPLAY=wayland-1 Copy to clipboard 2. To view the `waylandsink` output, run the following command: gst-multi-camera-example -o 0 Copy to clipboard 3. To store the encoder output, do the following: 1. Run the following command: gst-multi-camera-example -o 1 Copy to clipboard The device stores the encoded files at `/opt/cam1_vid.mp4` and `/opt/cam2_vid.mp4` for camera 1 and camera 2, respectively. 2. To pull the files from the host computer, run the following command: scp root@:/opt/cam1_vid.mp4 Copy to clipboard Note When prompted for a password, enter `oelinux123`. 3. To play the encoder output, you can use any media player that supports MP4 files. - To stop the use case, select Ctrl + C. - To display the available help options, run the following command: gst-multi-camera-example --help Copy to clipboard - The `GST_DEBUG` environment variable controls the GStreamer debug output. Set the required level to allow logging. For example, to log all warnings, run the following command: export GST_DEBUG=2 Copy to clipboard ### Multichannel video decode and compose (Video wall) The **gst-concurrent-videoplay-composition** command-line application allows concurrent video decoding and playback for AVC-coded videos and composes them on a display for video wall applications. The application requires at least one input video file, which should be an MP4 file with the AVC codec. Read from file H.264 encoder Composer Display H.264 encoder Read from file H.264 encoder Read from file H.264 encoder Read from file **Figure: Video wall application workflow**
Last Published: Dec 30, 2025
**Video: Multichannel decode and display application** **Example usage** 1. To transfer prerecorded or test videos that are in the AVC-encoded MP4 (H.264) format (with the filename as ``) to your device, run the following command on the host computer: scp root@[DEVICE IP-ADDR]:/opt/ Copy to clipboard Note When prompted for a password, enter `oelinux123`. 2. To view the sample application on the HDMI display, run the following export command from the SSH terminal: export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_DISPLAY=wayland-1 Copy to clipboard > > > 3. To start concurrent playback for four channels, run the following command: gst-concurrent-videoplay-composition -c 4 -i /opt/.mp4 -i /opt/.mp4 -i /opt/.mp4 -i /opt/.mp4 Copy to clipboard Note - `-c`: specifies the number of streams to be decoded for composition. 2, 4, or 8 streams can be decoded. - `-i`: specifies the absolute path to the input video file. - To stop the use case, select CTRL + C. - To display the available help options, run the following command: gst-concurrent-videoplay-composition --help Copy to clipboard - The `GST_DEBUG` environment variable controls the GStreamer debug output. Set the required level to allow logging. For example, to log all warnings, run the following command: export GST_DEBUG=2 Copy to clipboard ## Run AI sample applications AI sample applications show use cases for object detection and parallel inferencing on input streams from a camera, video file, or Real-Time Streaming Protocol (RTSP) stream on the Dragonwing RB3 Gen 2 device. To run these sample applications, you must obtain AI models from [Qualcomm® AI Hub](https://aihub.qualcomm.com/iot/models) and labels from GitHub. The procedure involves downloading the models and labels, transferring them to the Dragonwing RB3 Gen 2 device, and running the sample applications. > > > > > > > > > > > > Downloadmodels and labels > > > > Transfer downloadedfiles to the device > > > > Runsample apps > > > > > > > > > > > > > > **Figure: Workflow for running AI sample applications** **Prerequisite** AI sample applications require model and label files on the device to run the application. **Procedure** 1. You require the following models for the AI sample applications: | Sample application | Models required | | --- | --- | | AI object detection | [yolox_quantized.tflite](https://aihub.qualcomm.com/iot/models/yolox?searchTerm=yolo) | |
Parallel AI inference | [yolox_quantized.tflite](https://aihub.qualcomm.com/iot/models/yolox?searchTerm=yolo) | |
Parallel AI inference | [Inception-v3](https://aihub.qualcomm.com/iot/models/inception_v3) | |
Parallel AI inference | [HRNetPose](https://aihub.qualcomm.com/iot/models/hrnet_pose) | |
Parallel AI inference | [DeepLabV3-Plus-MobileNet](https://aihub.qualcomm.com/iot/models/deeplabv3_plus_mobilenet) | | | | | | | | | | 2. Download and run the automated script to get the model and label files on the device: cd /tmp/ Copy to clipboard curl -L -O https://raw.githubusercontent.com/quic/sample-apps-for-qualcomm-linux/refs/heads/main/qualcomm-linux/scripts/download_artifacts.sh Copy to clipboard chmod +x download_artifacts.sh Copy to clipboard ./download_artifacts.sh Copy to clipboard ### AI object detection The **gst-ai-object-detection** sample application shows the hardware capability to detect objects on input streams from a camera, video file, or RTSP stream. The pipeline receives the input stream, preprocesses it, runs inferences on AI hardware, and displays the results on the screen. **Figure: Object detection application workflow**
Last Published: Dec 30, 2025
**Video: Object detection application** **Example usage** It’s mandatory to push the model and label files to the device to run the sample application. For details, see [Procedure](https://docs.qualcomm.com/doc/80-70020-251/topic/run-apps-manually-on-host.html#procedure-ai). 1. Begin a new SSH session and start the HDMI display monitor if you haven’t already: ssh root@ Copy to clipboard 2. To view the sample application on the HDMI display, run the following export command from the SSH terminal: export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_ DISPLAY=wayland-1 Copy to clipboard 3. Edit the `/etc/configs/config_detection.json` file on your device. { "file-path": "/etc/media/video.mp4", "ml-framework": "tflite", "yolo-model-type": "yolox", "model": "/etc/models/yolox_quantized.tflite", "labels": "/etc/labels/yolox.labels", "constants": "Yolox,q-offsets=<38.0, 0.0, 0.0>,q-scales=<3.6124823093414307, 0.003626860911026597, 1.0>;", "threshold": 40, "runtime": "dsp" } Copy to clipboard | Field | Values/description | | --- | --- | |
**ml-framework** |
**ml-framework** | | `snpe` | Uses the Qualcomm^®^ Neural Processing SDK models | | `tflite` | Uses the LiteRT models | | `qnn` | Uses the Qualcomm^®^ AI Engine direct models | |
**yolo-model-type** |
**yolo-model-type** | | `yolov5`
`yolov8`
`yolox`
`yolonas` | Runs the YOLOv5, YOLOv8, YOLOx and YOLO-NAS models, respectively. See [Sample model and label files](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-50/gst-ai-object-detection.html#gst-ai-object-detection__section_hds_vxp_mdc). | |
**runtime** |
**runtime** | | `cpu` | Runs on the CPU | | `gpu` | Runs on the GPU | | `dsp` | Runs on the digital signal processor (DSP) | |
**Input source** |
**Input source** | | `camera` |

  • 0: Primary camera


  • 1: Secondary camera


| | `file-path` | Directory path to the video file | | `rtsp-ip-port` | Address of the RTSP stream in `rtsp://:/` format | 4. To start the application, run the following command: gst-ai-object-detection Copy to clipboard - To stop the use case, select Ctrl + C. - To display the available help options, run the following command: gst-ai-object-detection -h Copy to clipboard - The `GST_DEBUG` environment variable controls the GStreamer debug output. Set the required level to allow logging. For example, to log all warnings, run the following command: export GST_DEBUG=2 Copy to clipboard ### Parallel AI inference The **gst-ai-parallel-inference** command-line application shows the hardware capability to perform four parallel AI inferences on input streams from a camera, video file, or RTSP stream. The pipeline detects objects, classifies objects, detects poses, and segments images on the input stream. The screen displays the results side-by-side. **Figure: Parallel inference application workflow**
Last Published: Dec 30, 2025
**Video: Parallel inferencing application** **Example usage** It’s mandatory to push the model and label files to the device to run the sample application. For details, see [Procedure](https://docs.qualcomm.com/doc/80-70020-251/topic/run-apps-manually-on-host.html#procedure-ai). 1. Begin a new SSH session and start the HDMI display monitor if you haven’t already: ssh root@ Copy to clipboard 2. To view the sample application on the HDMI display, run the following export command from the SSH terminal: export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_ DISPLAY=wayland-1 Copy to clipboard 3. Edit the `/etc/configs/config-parallel-inference.json` file on your device. { "file-path": "/etc/media/video.mp4", "detection-model": "/etc/models/yolox_quantized.tflite", "detection-labels": "/etc/labels/yolox.labels", "detection-constants": "Yolox,q-offsets=<38.0, 0.0, 0.0>,q-scales=<3.6124823093414307, 0.003626860911026597, 1.0>;", "pose-model": "/etc/models/hrnet_pose_quantized.tflite", "pose-labels": "/etc/labels/hrnet_pose.labels", "pose-constants" : "Posenet,q-offsets=<8.0>,q-scales=<0.0040499246679246426>;", "segmentation-model": "/etc/models/deeplabv3_plus_mobilenet_quantized.tflite", "segmentation-labels": "/etc/labels/deeplabv3_resnet50.labels", "segmentation-constants": "deeplab,q-offsets=<0.0>,q-scales=<1.0>;", "classification-model": "/etc/models/inception_v3_quantized.tflite", "classification-labels": "/etc/labels/classification.labels", "classification-constants": "Inceptionv3,q-offsets=<38.0>,q-scales=<0.17039915919303894>;" } Copy to clipboard The following table describes the config file fields to configure the input source for the sample application. | **Field** | **Values/description** | | --- | --- | |
**Input source** |
**Input source** | | camera |

  • 0: Primary camera


  • 1: Secondary camera


| | file-path | Directory path to the video file | | rtsp-ip-port | Address of the RTSP stream in `rtsp://:/` format | 4. To start the application, run the following command: gst-ai-parallel-inference Copy to clipboard - To stop the use case, select Ctrl + C. - To display the available help options, run the following command: gst-ai-parallel-inference -h Copy to clipboard Qualcomm AI Hub often updates models with the latest SDK versions. Using wrong model constants may lead to inaccurate results. If you face such issues, update the model constants in the config file. - The `GST_DEBUG` environment variable controls the GStreamer debug output. Set the required level to allow logging. For example, to log all warnings, run the following command: export GST_DEBUG=2 Copy to clipboard **Known issue** In pose detection, the model detects only one person, even if many people are present in the frame. Note Image classification using the Inception v3 model trains on the ImageNet data set. As a result, the model can’t detect a person because this class isn’t included in the data set. Last Published: Dec 30, 2025 [Previous Topic Use the Qualcomm Visual Studio Code Extension](https://docs.qualcomm.com/bundle/publicresource/80-70020-251/topics/run-apps-using-ide.md) [Next Topic Develop an application](https://docs.qualcomm.com/bundle/publicresource/80-70020-251/topics/develop_application.md) Source: [https://docs.qualcomm.com/doc/80-70020-251/topic/run-apps-manually-on-host.html](https://docs.qualcomm.com/doc/80-70020-251/topic/run-apps-manually-on-host.html)