# Sample applications
Source: [https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html](https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html)
The Qualcomm Linux release includes various sample applications. Instructions for
running four of these sample applications have been provided for your quick reference. For
more information, see [Sample applications](https://docs.qualcomm.com/bundle/publicresource/topics/80-70014-50/example-applications.html). There are two main groups of
sample applications available, each suited for different use cases such as retail, Edge AI
box, and IP camera.
- **Multimedia applications**: These are related to camera, video, and audio
functionalities
- **Artificial intelligence (AI)/machine learning (ML) applications**: These focus
on AI and ML capabilities
Note:
- To view the display output, connect the HDMI display to the HDMI port of the RB3
Gen 2 device (see [Connect to HDMI display](https://docs.qualcomm.com/doc/80-70014-253/topic/ubuntu_host.html#concept_wc5_hcp_4bc)).
- If you want to run sample applications from the UART shell, ensure to run
applications in the Permissive mode by running the following commands. SSH
policies are not on par with ADB for the current release and would be resolved
by September
2024.
setenforce 0Copy to clipboard
mount -o rw,remount /Copy to clipboard
## Multimedia applications
Source: [https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html](https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html)
The multimedia sample applications demonstrate use cases for camera, display, and
video streams on the RB3 Gen 2 device.
### Multicamera streaming or encoding (Dash cam)
Source: [https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html](https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html)
The **gst-multi-camera-example** command-line application demonstrates
simultaneous streaming from two camera sensors on the 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.
Figure : Dash cam workflow

**Example usage**
To execute the application, run the following use cases in the SSH shell:
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-1Copy to clipboard
2. To view the waylandsink output, run the following
command:
gst-multi-camera-example -o 0Copy to clipboard
3. To store the encoder output, do the following:
1. Run the following
command:
gst-multi-camera-example -o 1Copy to clipboard
The
encoded files are stored 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 machine, run the following
command:
scp root@:/opt/ 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, press **CTRL + C**.
- To display the available help options, run the following
command:
gst-multi-camera-example --helpCopy to clipboard
- The GStreamer debug output is controlled by the `GST_DEBUG`
environment variable. Set the required level to enable logging. For example, to
log all warnings, run the following
command:
export GST_DEBUG=2Copy to clipboard
### Multichannel video decode and compose (Video wall)
Source: [https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html](https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html)
The **gst-concurrent-videoplay-composition** command-line application facilitates
concurrent video decode and playback for advanced video coding (AVC)-coded videos and
performs composition on a display for video wall application. The application requires at
least one input video file, which is expected to be an MP4 file with the AVC
codec.
Figure : Video wall workflow

**Example usage**
1. To transfer prerecorded or test videos that are in AVC-encoded MP4 (H.264) format
(with the filename as ``) to your device, run the
following command on the
host:
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
in the SSH
shell:
export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_DISPLAY=wayland-1Copy to clipboard
3. To experience 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/.mp4Copy to clipboard
Note:
- `-c`: specifies that the number of streams to be decoded for
composition can be either 2, 4, or 8.
- `-i`: specifies the absolute path to the input video file.
- To stop the use case, press **CTRL + C**.
- To display the available help options, run the following
command:
gst-concurrent-videoplay-composition --helpCopy to clipboard
- The GStreamer debug output is controlled by the `GST_DEBUG`
environment variable. Set the required level to enable logging. For example, to log
all warnings, run the following
command:
export GST_DEBUG=2Copy to clipboard
## AI applications
Source: [https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html](https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html)
AI sample applications demonstrate use cases for object detection and parallel
inferencing on a live camera stream on the RB3 Gen 2 device. To experience AI sample
applications, you must obtain AI models distributed separately on GitHub. The procedure to
do this includes downloading the models from GitHub, transferring these models to the RB3
Gen 2 device, and executing sample applications.
Figure : Workflow for running AI sample apps

**Prerequisite**
AI sample applications require model and label files on the device to run the
application.
To push the files to the device, run the following commands on the Linux host:
1. To download the model and label files, run the following
command:
wget https://github.com/quic/sample-apps-for-qualcomm-linux/releases/download/v0.1.0/v0.1.0.tar.gzCopy to clipboard
2. To extract the files, run the following
command:
tar -zxvf v0.1.0.tar.gzCopy to clipboard
3. To push the model and label files to the device using the SCP tool, run the
following
command:
scp v0.1.0/* root@:/opt/Copy to clipboard
Note: When prompted for a password, enter
`oelinux123`.
### AI object detection
Source: [https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html](https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html)
The **gst-ai-object-detection** sample application demonstrates the hardware
capability to perform object detection on a live camera stream. The pipeline receives the
live camera feed, performs preprocessing, runs inferences on AI hardware, and displays the
results on the screen.
Figure : Object detection workflow

Page-1Video: AI object detectionVideo: AI object detection
**Example usage**
It is mandatory to push the model and label files to the device to run the sample
application. For details, see [Prerequisite](https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html#concept_ept_xcd_p1c__p_pvb_wqz_sbc).
1. To view the sample application on the HDMI display, run the following export command
in the SSH
shell:
export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_DISPLAY=wayland-1Copy to clipboard
2. To execute the application, run the following
command:
gst-ai-object-detectionCopy to clipboard
Note: If no input is provided, the system executes YOLO-NAS by
default.
- To stop the use case, press **CTRL + C**.
- To display the available help options, run the following
command:
gst-ai-object-detection -hCopy to clipboard
- The GStreamer debug output is controlled by the `GST_DEBUG`
environment variable. Set the required level to enable logging. For example, to log
all warnings, run the following
command:
export GST_DEBUG=2Copy to clipboard
### Parallel AI fusion
Source: [https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html](https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html)
The **gst-ai-parallel-inference** command-line application demonstrates the
hardware capability to perform four parallel AI inferences on a live camera stream. The
pipeline performs object detection, object classification, pose detection, and image
segmentation on the live camera stream. The results are displayed side-by-side on the
screen.
Figure : Parallel inference workflow

Page-1Video: Parallel AI fusionVideo: Parallel AI fusion
**Example usage**
It is mandatory to push the model and label files to the device to run the sample
application. For details, see [Prerequisite](https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html#concept_ept_xcd_p1c__p_pvb_wqz_sbc).
1. To view the sample application on the HDMI display, run the following export command
in the SSH
shell:
export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_DISPLAY=wayland-1Copy to clipboard
2. To execute the application, run the following
command:
gst-ai-parallel-inferenceCopy to clipboard
- To stop the use case, press **CTRL + C**.
- To display the available help options, run the following
command:
gst-ai-parallel-inference -hCopy to clipboard
- The GStreamer debug output is controlled by the `GST_DEBUG`
environment variable. Set the required level to enable logging. For example, to log
all warnings, run the following
command:
export GST_DEBUG=2Copy to clipboard
**Known issue**
In pose detection, the model detects only one person, even if multiple people are present
in the frame.
Note: Image classification using the Inception v3 model is trained on
the ImageNet data set. Therefore, the model will not be able to detect a person because
this class is not available in the data set.
## More apps
Source: [https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html](https://docs.qualcomm.com/doc/80-70014-253/topic/demo_app.html)
The Qualcomm Linux release includes a wider variety of sample applications. To
explore and experience additional applications, see [More apps](https://docs.qualcomm.com/bundle/publicresource/topics/80-70014-50/example-applications.html).
Last Published: Oct 30, 2025
[Previous Topic
Set up the Mac host](https://docs.qualcomm.com/bundle/publicresource/80-70014-253/topics/setup_for_mac_host.md) [Next Topic
Additional setup](https://docs.qualcomm.com/bundle/publicresource/80-70014-253/topics/additional_setup.md)