> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 使用 QDemo 应用运行

> 在 Qualcomm Dragonwing IQ-8275 评估套件上使用预装的 Qdemo GUI 运行示例应用程序。

Qualcomm® Qdemo 应用提供了一个图形化界面，用于探索由 Qualcomm 智能多媒体产品 (QIMP) SDK 驱动的多媒体和 AI 示例应用程序。Qdemo 专为在基于 Ubuntu 的 Dragonwing 开发板上工作的开发人员而设计，使他们无需手动编写 GStreamer 代码即可快速评估 AI 流水线和多媒体功能。得益于 QIMP 的零拷贝架构，这些应用程序通过利用 GPU 和 NPU 加速展示了实时性能。QIMP SDK 处理视频采集、缩放、裁剪、推理和渲染等任务，所有这些都通过 GStreamer 插件进行编排，例如：

* `qtivtransform`：在 GPU 上加速色彩转换、裁剪和缩放。
* `qtimltflite`：在 NPU 上执行 TensorFlow Lite 模型。

这种设置使开发人员能够专注于评估性能和功能，而不是底层实现。

下表列出了可以使用 Qdemo 运行的示例应用程序。有关可用应用程序的完整列表，请参见 [Sample applications](https://imsdkdocs.qualcomm.com/sample-application/ai-sample-applications)。

**表：Qdemo 支持的应用程序列表**

| 应用程序               | 说明                                                                        |
| ------------------ | ------------------------------------------------------------------------- |
| **多媒体应用程序**        |                                                                           |
| DashCamera         | 同时从两个摄像头传感器进行流传输，并在屏幕上并排显示画面。此应用适用于行车记录仪或立体摄像头用例，这些用例需要从多个摄像头采集视频以供查看或存档。 |
| Record live video  | 录制摄像头画面并保存最长 30 秒的视频。此应用使用单个摄像头，支持预览和编码等输出。                               |
| VideoWall          | 并发播放 MP4 AVC (H.264) 视频并将它们合成到视频墙显示器上。在运行此应用之前，请确保你已录制视频或使用评估套件录制一个。      |
| **AI 应用程序**        |                                                                           |
| Daisychain Pose    | 对从摄像头流传输的图像执行级联对象检测和分类。                                                   |
| FaceDetection      | 处理来自摄像头的输入，并使用 Qualcomm<sup>®</sup> AI Hub 检测模型生成预览。                      |
| Multistream        | 在来自摄像头或文件的输入流上显示 AI 推理（对象检测）。                                             |
| ObjectDetection    | 检测摄像头流中的对象。                                                               |
| Parallel-AI-Fusion | 从摄像头输入流中检测和分类对象、检测姿势并分割图像。                                                |

要开始在你的 Dragonwing 设备上探索 Qdemo，请按照以下分步说明安装所需的依赖项、配置系统并启动图形界面。

## 前提条件

* **Qualcomm Ubuntu 镜像**：设备必须已刷入预构建的 Qualcomm Ubuntu 镜像。
* **HDMI 显示器**：连接到设备以查看 Qdemo 输出。
* **鼠标和键盘**：与 Weston 桌面和 Qdemo 应用程序交互所必需的。
* **Wi-Fi 连接**：AI 示例应用程序需要 Wi-Fi 连接以从 GitHub 下载模型和标签。多媒体应用程序不需要。
* **USB 摄像头（可选）**：基于摄像头的示例应用程序需要。如果已连接，请从 Qdemo 中的 `Source` 列表中选择它。

  要使用摄像头，请在目标设备上运行以下命令以启用 `camx`：

  ```shell theme={null}
  echo -n "camx" > /var/data
  efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -w -f /var/data
  efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -p
  sync
  reboot
  ```

## 使用 Qdemo 运行示例应用程序

要使用 Qdemo 运行示例应用程序，请执行以下操作：

### 安装所需软件包

要安装所需的预构建软件包，请参考 [**🔗安装所需软件包**](../devices/iq8275-evk/Install_required_software_packages) 部分并运行提供的 "Install PPA Packages" 脚本。

### 安装依赖项

打开终端，安装 QDemo 所需的以下软件包：

```shell theme={null}
sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-libav gstreamer1.0-alsa gstreamer1.0-gtk3
sudo apt-get install -y python3-gi-cairo gir1.2-gtk-3.0
```

### 创建必要的文件夹并下载工件

```shell theme={null}
sudo mkdir -p /etc/media /etc/labels /etc/models /etc/data
sudo chown -R ubuntu:ubuntu /etc/media/ /etc/labels/ /etc/models/ ubuntu:ubuntu /etc/data/
```

### 从 SBC 终端启动 GUI

```shell# theme={null}
gst-gui-launcher-app.py
```

<img src="https://mintlify.s3.us-west-1.amazonaws.com/qualcomm-prod/zh/Ubuntu/images/run-sample-applications/QDemo.jpg" alt="" />

### 运行示例应用程序

从 Experience Application Demo 窗口运行示例应用程序。

<Steps>
  <Step title="连接 Wi-Fi">
    通过选择 **Wi-Fi** 连接到 Wi-Fi 网络。

    <Note>
      仅运行 AI 示例应用程序时才需要 Wi-Fi 连接。如果你要运行多媒体应用程序，请跳过此步骤。
    </Note>
  </Step>

  <Step title="选择摄像头源">
    在 **Source** 下拉列表中，选择所需的摄像头。

    Dragonwing IQ-8275 设备没有内置摄像头，并非所有应用程序都需要摄像头。如果你已将外部摄像头连接到设备，请从 **Source** 下拉列表中选择它。默认情况下，选中 **On-Device-Camera** 选项。
  </Step>

  <Step title="选择并启动应用程序">
    在 **Applications** 下拉列表中，选择一个应用程序并选择 **Start**。

    所选应用程序开始运行，并弹出窗口在屏幕上显示输出。

    首次运行示例应用程序时，可能需要一分钟或更长时间才能运行，因为设备会从 GitHub 下载 AI 模型和标签。

    下图显示了 Object Detection 应用程序的示例输出，识别出两个对象，包括一个人和一只狗。

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/qualcomm-prod/zh/Ubuntu/images/run-sample-applications/IQ-9075_object_detection.png" alt="Object Detection 应用程序的示例输出" />
    </Frame>
  </Step>

  <Step title="停止应用程序">
    通过关闭输出窗口来停止示例应用程序。
  </Step>
</Steps>

### 运行 Multistream Qdemo 支持的示例应用程序

以下截图显示了 Multistream Qdemo 示例应用程序运行八路流（一路实时流和七路视频流）的输出：

<img src="https://mintlify.s3.us-west-1.amazonaws.com/qualcomm-prod/zh/Ubuntu/images/run-sample-applications/Qdemo_multistream.jpg" alt="" />

<Note>
  **注意：** 在 Wayland 输出上，拉伸 Gtk+ Cairo 渲染器以确保正确显示示例应用程序的输出。
</Note>
