# Overview

Source: [https://docs.qualcomm.com/doc/80-70014-51/topic/introduction.html](https://docs.qualcomm.com/doc/80-70014-51/topic/introduction.html)

The Qualcomm Intelligent Multimedia Product (QIMP) SDK provides a unified environment
        for developing AI and multimedia use cases at the Edge on the Qualcomm^®^ Linux
        platforms. The QIMP SDK is based on the [GStreamer](https://gstreamer.freedesktop.org/documentation/application-development/introduction/gstreamer.html?gi-language=c), which is an open-source multimedia
        framework. It provides a modular, scalable, and customizable environment to develop
        Intelligent Multimedia applications such as Edge AI boxes, Cameras, Robots, and
        Drones.

This document explains how to:
- Create applications using the QIMP SDK workflow.
- Customize the QIMP SDK by adding new plugins.
- Compile the [Extensible SDK (eSDK)](https://wiki.yoctoproject.org/wiki/Extensible_SDK#:~:text=The%20Yocto%20Project%20Extensible%20SDK,changes%20on%20the%20target%20hardware.) from
                    source.
- Upgrade functional SDKs.

Figure : QIMP SDK workflow
            
            <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by Microsoft Visio, SVG Export get-started.svg Page-4 -->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events" width="11.7192in" height="3.06101in" viewbox="0 0 843.779 220.392" xml:space="preserve" color-interpolation-filters="sRGB" class="st15"><style>.svg-1 .st1 { fill: #ffffff; stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.24 }
.svg-1 .st2 { fill: #3253dc; stroke: #0000ff; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.24 }
.svg-1 .st3 { fill: #ffffff; font-family: Arial; font-size: 1.00001em }
.svg-1 .st4 { font-size: 1em }
.svg-1 .st5 { fill: #ffffff; font-family: Arial; font-size: 0.916672em }
.svg-1 .st6 { marker-end: url("#mrkr2-35"); stroke: #000000; stroke-linecap: butt; stroke-width: 1 }
.svg-1 .st7 { fill: #000000; fill-opacity: 1; stroke: #000000; stroke-opacity: 1; stroke-width: 0.28409090909091 }
.svg-1 .st8 { stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1 }
.svg-1 .st9 { fill: none; stroke: #3253dc; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-1 .st10 { fill: #000000; font-family: Calibri; font-size: 1.00001em }
.svg-1 .st11 { marker-end: url("#mrkr4-58"); stroke: #000000; stroke-dasharray: 1, 2; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1 }
.svg-1 .st12 { fill: #000000; fill-opacity: 1; stroke: #000000; stroke-opacity: 1; stroke-width: 0.35714285714286 }
.svg-1 .st13 { fill: none; stroke: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-1 .st14 { fill: #000000; font-family: Arial; font-size: 1.00001em }
.svg-1 .st15 { fill: none; fill-rule: evenodd; font-size: 12px; overflow: visible; stroke-linecap: square; stroke-miterlimit: 3 }</style>
<defs id="Markers">	<g id="lend2">		<path d="M 1 1 L 0 0 L 1 -1 L 1 1 " style="stroke:none"></path>	</g>	<marker id="mrkr2-35" class="st7" refx="-3.52" orient="auto" markerunits="strokeWidth" overflow="visible">		<use xlink:href="#lend2" transform="scale(-3.52,-3.52) "></use>	</marker>	<g id="lend4">		<path d="M 2 1 L 0 0 L 2 -1 L 2 1 " style="stroke:none"></path>	</g>	<marker id="mrkr4-58" class="st12" refx="-5.6" orient="auto" markerunits="strokeWidth" overflow="visible">		<use xlink:href="#lend4" transform="scale(-2.8,-2.8) "></use>	</marker></defs><g>	<title>Page-4</title>	<g id="shape1-1" transform="translate(18.12,-18.12)">		<title>Process</title>		<rect x="0" y="36.24" width="807.539" height="184.152" class="st1"></rect>	</g>	<a xlink:href="https://docs.qualcomm.com/bundle/publicresource/topics/80-70014-253/ubuntu_host.html#sub$qsg_update_software" xlink:title="Set up reference device">		<g id="shape2-3" transform="translate(42.4572,-90.1097)">			<title>Set up the reference device</title>			<desc>Set up reference device</desc>			<rect x="0" y="180.71" width="119.892" height="39.6827" class="st2"></rect>			<text x="15.58" y="196.95" class="st3">Set up reference <tspan x="42.6" dy="1.2em" class="st4">device</tspan></text>			</g>	</a>	<a xlink:href="https://docs.qualcomm.com/bundle/publicresource/topics/80-70014-254/how_to.html#how-to-ssh-" xlink:title="Enable SSH">		<g id="shape3-7" transform="translate(208.461,-90.1097)">			<title>Enable SSH</title>			<desc>Enable SSH</desc>			<rect x="0" y="180.71" width="119.892" height="39.6827" class="st2"></rect>			<text x="27.26" y="204.15" class="st3">Enable SSH</text>			</g>	</a>	<g id="shape4-10" transform="translate(374.465,-90.1097)">		<title>Configure and connect display</title>		<desc>Configure and connect display</desc>		<rect x="0" y="180.71" width="119.892" height="39.6827" class="st2"></rect>		<text x="22.25" y="196.95" class="st3">Configure and <tspan x="18.59" dy="1.2em" class="st4">connect display</tspan></text>		</g>	<a xlink:href="https://docs.qualcomm.com/bundle/publicresource/topics/80-70014-50/example-applications.html" xlink:title="Explore sample applications">		<g id="shape5-14" transform="translate(531.246,-149.634)">			<title>Explore sample applications</title>			<desc>Sample applications</desc>			<rect x="0" y="180.71" width="119.892" height="39.6827" class="st2"></rect>			<text x="6.25" y="204.15" class="st3">Sample applications</text>			</g>	</a>	<a xlink:href="https://docs.qualcomm.com/bundle/publicresource/topics/80-70014-50/gstreamer-application-use-cases.html" xlink:title="Run GStreamer command-line use cases">		<g id="shape6-17" transform="translate(678.805,-149.634)">			<title>Explore GST command-line use cases</title>			<desc>GStreamer command-line use cases</desc>			<rect x="0" y="180.71" width="131.195" height="39.6827" class="st2"></rect>			<text x="38.7" y="190.65" class="st5">GStreamer <tspan x="31.06" dy="1.2em" class="st4">command</tspan>-line  <tspan x="40.83" dy="1.2em" class="st4">use cases</tspan></text>			</g>	</a>	<a xlink:href="https://docs.qualcomm.com/bundle/publicresource/topics/80-70014-51/install-sdk.html#download-platform-esdk" xlink:title="Install extensible SDK">		<g id="shape7-22" transform="translate(531.246,-34.554)">			<title>Install eSDK</title>			<desc>Install eSDK (on host machine)</desc>			<rect x="0" y="180.71" width="119.892" height="39.6827" class="st2"></rect>			<text x="8.28" y="197.25" class="st5">Install eSDK (on host <tspan x="37.33" dy="1.2em" class="st4">machine)</tspan></text>			</g>	</a>	<a xlink:href="https://docs.qualcomm.com/bundle/publicresource/topics/80-70014-51/content-develop-your-first-application.html" xlink:title="Develop your first application">		<g id="shape8-26" transform="translate(678.805,-34.554)">			<title>Develop your first application</title>			<desc>Develop your first application</desc>			<rect x="0" y="180.71" width="131.195" height="39.6827" class="st2"></rect>			<text x="18.91" y="196.95" class="st3">Develop your first <tspan x="36.91" dy="1.2em" class="st4">application</tspan></text>			</g>	</a>	<g id="shape9-30" transform="translate(162.349,-109.951)">		<title>Pull arrow 1</title>		<path d="M0 220.39 L42.59 220.39" class="st6"></path>	</g>	<g id="shape10-36" transform="translate(328.353,-109.951)">		<title>Pull arrow 1.20</title>		<path d="M0 220.39 L42.59 220.39" class="st6"></path>	</g>	<g id="shape11-41" transform="translate(651.138,-54.3953)">		<title>Pull arrow 1.24</title>		<path d="M0 220.39 L24.15 220.39" class="st6"></path>	</g>	<g id="shape12-46" transform="translate(651.138,-160.475)">		<title>Dynamic connector.25</title>		<path d="M0 211.39 L27.67 211.39" class="st8"></path>	</g>	<g id="shape13-49" transform="translate(42.1086,-36.0001)">		<title>eSDK is downloaded</title>		<desc>Extensible SDK (eSDK) is downloaded</desc>		<rect x="0" y="185.67" width="119.892" height="34.7223" class="st9"></rect>		<text x="6.56" y="199.43" class="st10">Extensible SDK (eSDK) <tspan x="24.4" dy="1.2em" class="st4">is downloaded</tspan></text>		</g>	<g id="shape14-53" transform="translate(323.164,130.283) rotate(90)">		<title>Additional arrow</title>		<path d="M0 220.39 L15.23 220.39" class="st11"></path>	</g>	<g id="shape15-59" transform="translate(494.356,-109.951)">		<title>Pull arrow 2.63</title>		<path d="M0 220.39 L14.2 220.39 L14.2 160.87 L33.37 160.87" class="st6"></path>	</g>	<g id="shape16-64" transform="translate(494.356,330.834) scale(1,-1)">		<title>Pull arrow 2.64</title>		<path d="M0 220.39 L14.2 220.39 L14.2 164.84 L33.37 164.84" class="st6"></path>	</g>	<g id="shape17-69" transform="translate(450.919,-158.942)">		<title>Sheet.17</title>		<desc>Explore</desc>		<rect x="0" y="200.39" width="55.3346" height="20.0025" class="st13"></rect>		<text x="7.32" y="213.99" class="st14">Explore</text>		</g>	<g id="shape18-72" transform="translate(448.613,-59.9419)">		<title>Sheet.18</title>		<desc>Develop</desc>		<rect x="0" y="200.39" width="55.3346" height="20.0025" class="st13"></rect>		<text x="5.65" y="213.99" class="st14">Develop</text>		</g></g>
</svg>

The table provides the sequence for the QIMP SDK workflow.| Set up the reference device | <ul class="ul"><br>                                <li class="li">Set up the host machine and the device for application<br>                                    development.</li><br><br>                                <li class="li">The eSDK is downloaded as part of this step.</li><br><br>                            </ul> |
| --- | --- |
| Enable SSH | Enable SSH in Permissive mode to securely access your host<br>                            device. |
| Configure and connect display | Configure the display to see the output from the applicable sample<br>                                applications. Run the following<br>                                command:<br><br>    export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_DISPLAY=wayland-1Copy to clipboard |
| <ul class="ul"><br>                                <li class="li">Explore sample applications</li><br><br>                                <li class="li">Develop applications</li><br><br>                            </ul> | <ul class="ul"><br>                                <li class="li">Experience the features of the Qualcomm<sup class="ph sup">®</sup> RB3 Gen 2<br>                                    device. The sample applications serve as a reference for<br>                                    realizing custom use cases on the platform.</li><br><br>                                <li class="li">Create an application using eSDK.</li><br><br>                            </ul> |

Note: The Qualcomm Linux platform allows you to develop applications for QCS6490 and
            QCS5430.

Last Published: Nov 05, 2025

[Next Topic
Getting started](https://docs.qualcomm.com/bundle/publicresource/80-70014-51/topics/install-sdk.md)