# Qualcomm IM SDK environment overview

Source: [https://docs.qualcomm.com/doc/80-70023-50/topic/overview.html](https://docs.qualcomm.com/doc/80-70023-50/topic/overview.html)

The Qualcomm IM SDK provides the development environment with upstream and Qualcomm
                    [GStreamer](https://gstreamer.freedesktop.org/) plugins as APIs. You can use these APIs to develop and
                optimize applications, create pipelines, and customize plugins.

The following figure shows a high-level overview of the Qualcomm IM SDK
                environment:

Figure : Qualcomm IM SDK environment
                
                <?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="771.999877929685681" height="438.543624877929688" viewbox="0 0 771.999877929685681 438.543624877929688">
  <defs>
    <style>.svg-1 .cls-1 { fill: #8d8df7 }
.svg-1 .cls-2 { fill: #fff }
.svg-1 .cls-2,.svg-1 .cls-3 { font-size: 16px }
.svg-1 .cls-2,.svg-1 .cls-4 { font-family: Roboto-Regular, Roboto }
.svg-1 .cls-5,.svg-1 .cls-6 { fill: #fafbfc }
.svg-1 .cls-7 { fill: #007884 }
.svg-1 .cls-3 { font-family: Roboto-SemiBold, Roboto; font-weight: 600 }
.svg-1 .cls-8 { fill: #2a2aea }
.svg-1 .cls-4 { font-size: 14px }
.svg-1 .cls-9 { fill: none; stroke: #505050 }
.svg-1 .cls-9,.svg-1 .cls-6 { stroke-miterlimit: 10 }
.svg-1 .cls-6 { stroke: #007884; stroke-width: 2px }
.svg-1 .cls-10 { fill: #dcddde }</style>
  </defs>
  <g id="BG">
    <g>
      <rect class="cls-5" x=".500244140625" y=".50030517578125" width="771" height="437.54296875" rx="7.500000000000004" ry="7.500000000000004"></rect>
      <path class="cls-10" d="M763.999877929685681,1c3.859741210939319,0,7,3.14019775390625,7,7v422.543624877929688c0,3.85980224609375-3.140258789060681,7-7,7H8c-3.85980224609375,0-7-3.14019775390625-7-7V8c0-3.85980224609375,3.14019775390625-7,7-7h755.999877929685681M763.999877929685681,0H8C3.5816650390625,0,0,3.58184814453125,0,8v422.543624877929688c0,4.418197631835938,3.5816650390625,8,8,8h755.999877929685681c4.418334960939319,0,8-3.581802368164062,8-8V8c0-4.41815185546875-3.581665039060681-8-8-8h0Z"></path>
    </g>
  </g>
  <g id="Shapes">
    <g>
      <line class="cls-9" x1="384.999931632988591" y1="207.428672079222451" x2="384.999931628657578" y2="303.885853779154786"></line>
      <rect class="cls-6" x="19.999931630823994" y="92.228672080411343" width="730" height="115.200000000000728" rx="8" ry="8"></rect>
      <rect class="cls-8" x="19.999931630823994" y="20.000081231635704" width="732" height="54" rx="4" ry="4"></rect>
      <text class="cls-2" transform="translate(210.566340446472168 51.675867080688477)"><tspan x="0" y="0">Multimedia and Al/ML development environment </tspan></text>
      <text class="cls-3" transform="translate(299.024658203125 121.186099529266357)"><tspan x="0" y="0">GStreamer Framework </tspan></text>
      <line class="cls-9" x1="292.499931630823994" y1="321.72081623077429" x2="292.499931630823994" y2="303.885853780344405"></line>
      <line class="cls-9" x1="477.499931630823994" y1="321.72081623077429" x2="477.499931630823994" y2="303.885853780344405"></line>
      <polyline class="cls-9" points="662.499931630365609 321.720816240900604 662.499931631165964 303.885853790470719 107.499931630823994 303.885853780344405 107.499931630823994 321.72081623077429"></polyline>
      <g>
        <rect class="cls-7" x="204.999931630823994" y="318.72081623077429" width="175" height="60" rx="3.999999999998181" ry="3.999999999998181"></rect>
        <text class="cls-2" transform="translate(258.819836616516113 343.796548843383789)"><tspan x="0" y="0">Optimize </tspan><tspan x="-11.70703125" y="19.2001953125">applications </tspan></text>
      </g>
      <g>
        <rect class="cls-7" x="389.999931630823994" y="318.72081623077429" width="175" height="60" rx="4" ry="4"></rect>
        <text class="cls-2" transform="translate(418.366811752319336 353.396157026290894)"><tspan x="0" y="0">Create pipelines </tspan></text>
      </g>
      <g>
        <rect class="cls-7" x="574.999931630823994" y="318.72081623077429" width="175" height="60" rx="4" ry="4"></rect>
        <text class="cls-2" transform="translate(594.656494140625 352.928287029266357)"><tspan x="0" y="0">Customize plugins </tspan></text>
      </g>
      <g>
        <rect class="cls-7" x="19.999931630823994" y="318.72081623077429" width="175" height="60" rx="4" ry="4"></rect>
        <text class="cls-2" transform="translate(36.909784317016602 343.796548843383789)"><tspan x="0" y="0">Develop C/C++ and </tspan><tspan x="-1.60546875" y="19.2001953125">Python applications </tspan></text>
      </g>
      <g>
        <g>
          <rect class="cls-8" x="274.999931630823994" y="136.258112726562103" width="220" height="53.999998635845259" rx="3.999999898949682" ry="3.999999898949682"></rect>
          <text class="cls-2" transform="translate(316.254150390625 167.466372966766357)"><tspan x="0" y="0">Qualcomm plugins </tspan></text>
        </g>
        <g>
          <rect class="cls-8" x="511.563522861115416" y="136.258068847657341" width="220" height="54" rx="4" ry="4"></rect>
          <text class="cls-2" transform="translate(562.450553894042969 167.466372966766357)"><tspan x="0" y="0">Python bindings </tspan></text>
        </g>
        <g>
          <rect class="cls-1" x="38.436340400528934" y="136.258068847657341" width="220" height="54" rx="4" ry="4"></rect>
          <text class="cls-2" transform="translate(83.944036483764648 167.933609485626221)"><tspan x="0" y="0">Upstream plugins </tspan></text>
        </g>
      </g>
      <g>
        <text class="cls-4" transform="translate(669.215782165527344 415.397648572921753)"><tspan x="0" y="0">Open source</tspan></text>
        <g>
          <rect class="cls-5" x="649.595947265625" y="403.54327392578125" width="14" height="14" rx="1" ry="1"></rect>
          <path class="cls-7" d="M662.595458984375,404.54351806640625v12h-12v-12h12M662.595458984375,402.54351806640625h-12c-1.104614257810681,0-2,.895431518554688-2,2v12c0,1.104568481445312.895385742189319,2,2,2h12c1.104614257810681,0,2-.895431518554688,2-2v-12c0-1.104568481445312-.895385742189319-2-2-2h0Z"></path>
        </g>
      </g>
      <g>
        <rect class="cls-7" x="297.499931630823994" y="225.657262929187709" width="175.000000000001762" height="60" rx="3.999999999999902" ry="3.999999999999902"></rect>
        <text class="cls-2" transform="translate(366.454345703125 260.053242206573486)"><tspan x="0" y="0">APIs </tspan></text>
      </g>
    </g>
    <text class="cls-4" transform="translate(546.10396820306778 415.397648572921753)"><tspan x="0" y="0">Upstream</tspan></text>
    <rect class="cls-1" x="525.48367708839578" y="402.543518066413526" width="15.999999999989086" height="15.999999999987267" rx="1.999999999998408" ry="1.999999999998408"></rect>
    <rect class="cls-7" x="626.382658459615413" y="402.54351806640625" width="16" height="16.000000000001819" rx="1.999999999999773" ry="1.999999999999773"></rect>
    <g>
      <text class="cls-4" transform="translate(437.859931945800781 415.397648572921753)"><tspan x="0" y="0">Qualcomm </tspan></text>
      <rect class="cls-8" x="417.23963692001962" y="402.543518066413526" width="15.999999999987267" height="15.999999999987267" rx="1.999999999998181" ry="1.999999999998181"></rect>
    </g>
  </g>
</svg>

## Next steps

- [Qualcomm Intelligent Multimedia SDK (IM SDK)
                            quickstart guide](https://docs.qualcomm.com/bundle/publicresource/topics/80-70023-51/qmi-sdk-qsg-landing-page.html)
- [SDK overview](https://docs.qualcomm.com/bundle/publicresource/topics/80-70023-115/sdks.html)

Last Published: Mar 27, 2026

[Previous Topic
Qualcomm IM SDK documentation](https://docs.qualcomm.com/bundle/publicresource/80-70023-50/topics/qimsdk_landing_page.md) [Next Topic
Sample applications](https://docs.qualcomm.com/bundle/publicresource/80-70023-50/topics/example-applications.md)