# Audio use cases

Source: [https://docs.qualcomm.com/doc/80-70022-50/topic/audio-use-cases.html](https://docs.qualcomm.com/doc/80-70022-50/topic/audio-use-cases.html)

The audio GStreamer use cases show capture of audio from a file source and playback
        of the audio stream on a speaker.

Before you run the use cases, ensure that you complete the preconditions mentioned in
                [GStreamer command-line use cases](https://docs.qualcomm.com/doc/80-70022-50/topic/gstreamer-application-use-cases.html).

## Audio (only) capture

Source: [https://docs.qualcomm.com/doc/80-70022-50/topic/audio-use-cases.html](https://docs.qualcomm.com/doc/80-70022-50/topic/audio-use-cases.html)

The use cases show how to capture the PCM audio streams and store them in a
        file.

- Run all the commands in the SSH shell of the target device.
- To stop the use case, use CTRL + C.

### Single PCM capture

    gst-launch-1.0 -v pulsesrc volume=10 ! audioconvert ! wavenc ! filesink location=/opt/<Audio_PCM>.wavCopy to clipboard

Figure : Pipeline for audio capture with PCM encode
                
                <?xml version="1.0" encoding="UTF-8"?>
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" width="755" height="146.266002655029297" viewbox="0 0 755 146.266002655029297">
  <g>
    <rect x=".5" y=".499904632568359" width="754" height="145.26611328125" rx="7.499999999999948" ry="7.499999999999948" style="fill: #fafafa;"></rect>
    <path d="M747,1c3.85980224609375,0,7,3.14019775390625,7,7v130.266002655029297c0,3.85980224609375-3.14019775390625,7-7,7H8c-3.85980224609375,0-7-3.14019775390625-7-7V8c0-3.85980224609375,3.14019775390625-7,7-7h739M747,0H8C3.581695556640625,0,0,3.581699371337891,0,8v130.266002655029297c0,4.418289184570312,3.581695556640625,8,8,8h739c4.41827392578125,0,8-3.581710815429688,8-8V8c0-4.418300628662109-3.58172607421875-8-8-8h0Z" style="fill: #d2d7e1;"></path>
  </g>
  <g>
    <text transform="translate(656.5096435546875 126.693538665771484)" style="font-family: Roboto-Regular, Roboto; font-size: 14px;"><tspan x="0" y="0">Open source</tspan></text>
    <rect x="636.25858739359137" y="114.60202980041413" width="16" height="16" rx="2" ry="2" style="fill: #007884;"></rect>
  </g>
  <text transform="translate(347.10546875 32.657400131225586)" style="font-family: Roboto-Bold, Roboto; font-size: 16px; font-weight: 700;"><tspan x="0" y="0">GST BIN</tspan></text>
  <g>
    <g>
      <rect x="20" y="50.877201080322266" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(69.777385711669922 79.3839111328125)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">pulsesrc</tspan></text>
    </g>
    <g>
      <line x1="180" y1="75.877201080322266" x2="199.976654052734375" y2="75.877201080322266" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="198.955352783203125 79.367633819580078 205 75.877201080322266 198.955352783203125 72.386768341064453 198.955352783203125 79.367633819580078"></polygon>
    </g>
    <g>
      <rect x="205" y="50.877201080322266" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(238.625030517578125 79.3839111328125)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">audioconvert</tspan></text>
    </g>
    <g>
      <line x1="365" y1="75.877201080322266" x2="384.97662353515625" y2="75.877201080322266" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="383.955322265625 79.367633819580078 390 75.877201080322266 383.955322265625 72.386768341064453 383.955322265625 79.367633819580078"></polygon>
    </g>
    <g>
      <rect x="390" y="50.877201080322266" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(442.921905517578125 79.3839111328125)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">wavenc</tspan></text>
    </g>
    <g>
      <line x1="550" y1="75.877201080322266" x2="569.97662353515625" y2="75.877201080322266" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="568.955322265625 79.367633819580078 575 75.877201080322266 568.955322265625 72.386768341064453 568.955322265625 79.367633819580078"></polygon>
    </g>
    <g>
      <rect x="575" y="50.877201080322266" width="160" height="50" rx="4.000000000000019" ry="4.000000000000019" style="fill: #007884;"></rect>
      <text transform="translate(629.56646728515625 79.3839111328125)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">filesink</tspan></text>
    </g>
  </g>
</svg>

### Single FLAC capture

    gst-launch-1.0 -v pulsesrc volume=10 ! audioconvert ! flacenc ! filesink location=/opt/<flac_file>.flacCopy to clipboard

Figure : Pipeline for the audio capture with FLAC encode
                
                <?xml version="1.0" encoding="UTF-8"?>
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" width="755" height="146.265995025634766" viewbox="0 0 755 146.265995025634766">
  <g>
    <rect x=".5" y=".499897003173828" width="754" height="145.26611328125" rx="7.499999999999948" ry="7.499999999999948" style="fill: #fafafa;"></rect>
    <path d="M747,1c3.85980224609375,0,7,3.14019775390625,7,7v130.265995025634766c0,3.85980224609375-3.14019775390625,7-7,7H8c-3.85980224609375,0-7-3.14019775390625-7-7V8c0-3.85980224609375,3.14019775390625-7,7-7h739M747,0H8C3.581695556640625,0,0,3.581699371337891,0,8v130.265995025634766c0,4.418304443359375,3.581695556640625,8,8,8h739c4.41827392578125,0,8-3.581695556640625,8-8V8c0-4.418300628662109-3.58172607421875-8-8-8h0Z" style="fill: #d2d7e1;"></path>
  </g>
  <g>
    <text transform="translate(656.5096435546875 126.693531036376953)" style="font-family: Roboto-Regular, Roboto; font-size: 14px;"><tspan x="0" y="0">Open source</tspan></text>
    <rect x="636.25858739359137" y="114.602031707762762" width="16" height="16" rx="2" ry="2" style="fill: #007884;"></rect>
  </g>
  <text transform="translate(347.10546875 32.657392501831055)" style="font-family: Roboto-Bold, Roboto; font-size: 16px; font-weight: 700;"><tspan x="0" y="0">GST BIN</tspan></text>
  <g>
    <g>
      <rect x="20" y="50.877193450927734" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(69.777385711669922 79.383903503417969)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">pulsesrc</tspan></text>
    </g>
    <g>
      <line x1="180" y1="75.877193450927734" x2="199.976654052734375" y2="75.877193450927734" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="198.955352783203125 79.367626190185547 205 75.877193450927734 198.955352783203125 72.386760711669922 198.955352783203125 79.367626190185547"></polygon>
    </g>
    <g>
      <rect x="205" y="50.877193450927734" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(238.625030517578125 79.383903503417969)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">audioconvert</tspan></text>
    </g>
    <g>
      <line x1="365" y1="75.877193450927734" x2="384.97662353515625" y2="75.877193450927734" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="383.955322265625 79.367626190185547 390 75.877193450927734 383.955322265625 72.386760711669922 383.955322265625 79.367626190185547"></polygon>
    </g>
    <g>
      <rect x="390" y="50.877193450927734" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(443.902374267578125 79.383903503417969)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">flacenc</tspan></text>
    </g>
    <g>
      <line x1="550" y1="75.877193450927734" x2="569.97662353515625" y2="75.877193450927734" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="568.955322265625 79.367626190185547 575 75.877193450927734 568.955322265625 72.386760711669922 568.955322265625 79.367626190185547"></polygon>
    </g>
    <g>
      <rect x="575" y="50.877193450927734" width="160" height="50" rx="4.000000000000019" ry="4.000000000000019" style="fill: #007884;"></rect>
      <text transform="translate(629.56646728515625 79.383903503417969)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">filesink</tspan></text>
    </g>
  </g>
</svg>

## Audio (only) playback

Source: [https://docs.qualcomm.com/doc/80-70022-50/topic/audio-use-cases.html](https://docs.qualcomm.com/doc/80-70022-50/topic/audio-use-cases.html)

The pipelines show the use cases for playback of single audio streams on a
        speaker.

- Run all the commands in the SSH shell of the target device.
- To stop the use case, use CTRL + C.

### Single PCM playback

    gst-launch-1.0 -e filesrc location=/opt/<wav_file>.wav ! wavparse ! audioconvert ! pulsesink volume=10Copy to clipboard

The pipeline shows a single WAV stream taken from a file source and played on a
                speaker.

Figure : Pipeline for WAV stream playback
                
                <?xml version="1.0" encoding="UTF-8"?>
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" width="755" height="146.265995025634766" viewbox="0 0 755 146.265995025634766">
  <g>
    <rect x=".5" y=".499897003173828" width="754" height="145.26611328125" rx="7.499999999999948" ry="7.499999999999948" style="fill: #fafafa;"></rect>
    <path d="M747,1c3.85980224609375,0,7,3.14019775390625,7,7v130.265995025634766c0,3.85980224609375-3.14019775390625,7-7,7H8c-3.85980224609375,0-7-3.14019775390625-7-7V8c0-3.85980224609375,3.14019775390625-7,7-7h739M747,0H8C3.581695556640625,0,0,3.581699371337891,0,8v130.265995025634766c0,4.418304443359375,3.581695556640625,8,8,8h739c4.41827392578125,0,8-3.581695556640625,8-8V8c0-4.418300628662109-3.58172607421875-8-8-8h0Z" style="fill: #d2d7e1;"></path>
  </g>
  <g>
    <text transform="translate(656.5096435546875 126.693531036376953)" style="font-family: Roboto-Regular, Roboto; font-size: 14px;"><tspan x="0" y="0">Open source</tspan></text>
    <rect x="636.25858739359137" y="114.602031707762762" width="16" height="16" rx="2" ry="2" style="fill: #007884;"></rect>
  </g>
  <text transform="translate(347.10546875 32.657392501831055)" style="font-family: Roboto-Bold, Roboto; font-size: 16px; font-weight: 700;"><tspan x="0" y="0">GST BIN</tspan></text>
  <g>
    <g>
      <rect x="20" y="50.877193450927734" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(78.082073211669922 79.383903503417969)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">filesrc</tspan></text>
    </g>
    <g>
      <line x1="180" y1="75.877193450927734" x2="199.976654052734375" y2="75.877193450927734" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="198.955352783203125 79.367626190185547 205 75.877193450927734 198.955352783203125 72.386760711669922 198.955352783203125 79.367626190185547"></polygon>
    </g>
    <g>
      <rect x="205" y="50.877193450927734" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(250.851593017578125 79.383903503417969)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">wavparse</tspan></text>
    </g>
    <g>
      <line x1="365" y1="75.877193450927734" x2="384.97662353515625" y2="75.877193450927734" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="383.955322265625 79.367626190185547 390 75.877193450927734 383.955322265625 72.386760711669922 383.955322265625 79.367626190185547"></polygon>
    </g>
    <g>
      <rect x="390" y="50.877193450927734" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(423.625030517578125 79.383903503417969)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">audioconvert</tspan></text>
    </g>
    <g>
      <line x1="550" y1="75.877193450927734" x2="569.97662353515625" y2="75.877193450927734" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="568.955322265625 79.367626190185547 575 75.877193450927734 568.955322265625 72.386760711669922 568.955322265625 79.367626190185547"></polygon>
    </g>
    <g>
      <rect x="575" y="50.877193450927734" width="160" height="50" rx="4.000000000000019" ry="4.000000000000019" style="fill: #007884;"></rect>
      <text transform="translate(621.26177978515625 79.383903503417969)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">pulsesink</tspan></text>
    </g>
  </g>
</svg>

### Single MP2/MP3 playback

- MP2

        gst-launch-1.0 -e filesrc location=/opt/<mp2_file>.mp2 ! mpegaudioparse ! mpg123audiodec ! pulsesink volume=10Copy to clipboard
- MP3

        gst-launch-1.0 -e filesrc location=/opt/<mp3_file>.mp3 ! mpegaudioparse ! mpg123audiodec ! pulsesink volume=10Copy to clipboard

The pipeline shows a single MP2 stream taken from a file source and played on a
                speaker.

Figure : Pipeline for MP2/MP3 stream playback
                
                <?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="755" height="146.266002655029297" viewbox="0 0 755 146.266002655029297">
  <g id="Layer_1" data-name="Layer 1">
    <g>
      <rect x=".50006103515625" y=".499767303466797" width="754" height="145.26611328125" rx="7.499999999999948" ry="7.499999999999948" style="fill: #fafafa;"></rect>
      <path d="M747,1c3.85980224609375,0,7,3.14019775390625,7,7v130.266002655029297c0,3.85980224609375-3.14019775390625,7-7,7H8c-3.85980224609375,0-7-3.14019775390625-7-7V8c0-3.85980224609375,3.14019775390625-7,7-7h739M747,0H8C3.581695556640625,0,0,3.581699371337891,0,8v130.266002655029297c0,4.418289184570312,3.581695556640625,8,8,8h739c4.41827392578125,0,8-3.581710815429688,8-8V8c0-4.418300628662109-3.58172607421875-8-8-8h0Z" style="fill: #d2d7e1;"></path>
    </g>
    <g>
      <text transform="translate(656.5096435546875 126.693553924560547)" style="font-family: Roboto-Regular, Roboto; font-size: 14px;"><tspan x="0" y="0">Open source</tspan></text>
      <rect x="636.258602652380432" y="114.60202980041413" width="16" height="16" rx="2" ry="2" style="fill: #007884;"></rect>
    </g>
  </g>
  <g id="Layer_2" data-name="Layer 2">
    <text transform="translate(347.10552978515625 31.536169052124023)" style="font-family: Roboto-Bold, Roboto; font-size: 16px; font-weight: 700;"><tspan x="0" y="0">GST BIN</tspan></text>
    <g>
      <g>
        <rect x="20.00006103515625" y="49.755970001220703" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
        <text transform="translate(78.082134246826172 78.262680053710938)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">filesrc</tspan></text>
      </g>
      <g>
        <line x1="180.00006103515625" y1="74.755970001220703" x2="199.976715087890625" y2="74.755970001220703" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="198.955413818359375 78.246402740478516 205.00006103515625 74.755970001220703 198.955413818359375 71.265537261962891 198.955413818359375 78.246402740478516"></polygon>
      </g>
      <g>
        <rect x="205.00006103515625" y="49.755970001220703" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
        <text transform="translate(225.086029052734375 78.262680053710938)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">mpegaudioparse</tspan></text>
      </g>
      <g>
        <line x1="365.00006103515625" y1="74.755970001220703" x2="384.9766845703125" y2="74.755970001220703" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="383.95538330078125 78.246402740478516 390.00006103515625 74.755970001220703 383.95538330078125 71.265537261962891 383.95538330078125 78.246402740478516"></polygon>
      </g>
      <g>
        <rect x="390.00006103515625" y="49.755970001220703" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
        <text transform="translate(407.820404052734375 78.262680053710938)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">mpg123audiodec</tspan></text>
      </g>
      <g>
        <line x1="550.00006103515625" y1="74.755970001220703" x2="569.9766845703125" y2="74.755970001220703" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="568.95538330078125 78.246402740478516 575.00006103515625 74.755970001220703 568.95538330078125 71.265537261962891 568.95538330078125 78.246402740478516"></polygon>
      </g>
      <g>
        <rect x="575.00006103515625" y="49.755970001220703" width="160" height="50" rx="4.000000000000019" ry="4.000000000000019" style="fill: #007884;"></rect>
        <text transform="translate(621.2618408203125 78.262680053710938)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">pulsesink</tspan></text>
      </g>
    </g>
  </g>
</svg>

### Single FLAC playback

    gst-launch-1.0 -e filesrc location=/opt/<flac_file>.flac ! flacparse ! flacdec ! pulsesink volume=10Copy to clipboard

The pipeline shows a single FLAC stream taken from a file source and played on a
                speaker.

Figure : Pipeline for FLAC stream playback
                
                <?xml version="1.0" encoding="UTF-8"?>
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" width="755" height="146.266002655029297" viewbox="0 0 755 146.266002655029297">
  <g>
    <rect x=".5" y=".499767303466797" width="754" height="145.26611328125" rx="7.499999999999948" ry="7.499999999999948" style="fill: #fafafa;"></rect>
    <path d="M747,1c3.85980224609375,0,7,3.14019775390625,7,7v130.266002655029297c0,3.85980224609375-3.14019775390625,7-7,7H8c-3.85980224609375,0-7-3.14019775390625-7-7V8c0-3.85980224609375,3.14019775390625-7,7-7h739M747,0H8C3.581695556640625,0,0,3.581699371337891,0,8v130.266002655029297c0,4.418289184570312,3.581695556640625,8,8,8h739c4.41827392578125,0,8-3.581710815429688,8-8V8c0-4.418300628662109-3.58172607421875-8-8-8h0Z" style="fill: #d2d7e1;"></path>
  </g>
  <g>
    <text transform="translate(656.5096435546875 126.693553924560547)" style="font-family: Roboto-Regular, Roboto; font-size: 14px;"><tspan x="0" y="0">Open source</tspan></text>
    <rect x="636.25858739359137" y="114.60202980041413" width="16" height="16" rx="2" ry="2" style="fill: #007884;"></rect>
  </g>
  <text transform="translate(347.10546875 31.536169052124023)" style="font-family: Roboto-Bold, Roboto; font-size: 16px; font-weight: 700;"><tspan x="0" y="0">GST BIN</tspan></text>
  <g>
    <g>
      <rect x="20" y="49.755970001220703" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(78.082073211669922 78.262680053710938)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">filesrc</tspan></text>
    </g>
    <g>
      <line x1="180" y1="74.755970001220703" x2="199.976654052734375" y2="74.755970001220703" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="198.955352783203125 78.246402740478516 205 74.755970001220703 198.955352783203125 71.265537261962891 198.955352783203125 78.246402740478516"></polygon>
    </g>
    <g>
      <rect x="205" y="49.755970001220703" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(251.832061767578125 78.262680053710938)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">flacparse</tspan></text>
    </g>
    <g>
      <line x1="365" y1="74.755970001220703" x2="384.97662353515625" y2="74.755970001220703" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="383.955322265625 78.246402740478516 390 74.755970001220703 383.955322265625 71.265537261962891 383.955322265625 78.246402740478516"></polygon>
    </g>
    <g>
      <rect x="390" y="49.755970001220703" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(443.804718017578125 78.262680053710938)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">flacdec</tspan></text>
    </g>
    <g>
      <line x1="550" y1="74.755970001220703" x2="569.97662353515625" y2="74.755970001220703" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="568.955322265625 78.246402740478516 575 74.755970001220703 568.955322265625 71.265537261962891 568.955322265625 78.246402740478516"></polygon>
    </g>
    <g>
      <rect x="575" y="49.755970001220703" width="160" height="50" rx="4.000000000000019" ry="4.000000000000019" style="fill: #007884;"></rect>
      <text transform="translate(621.26177978515625 78.262680053710938)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">pulsesink</tspan></text>
    </g>
  </g>
</svg>

### Single OGG playback

    gst-launch-1.0 -e filesrc location=/opt/<ogg_file>.ogg ! oggdemux ! vorbisdec ! audioconvert ! pulsesink volume=10Copy to clipboard

The pipeline shows a single OGG stream taken from a file source and played on a
                speaker.

Figure : Pipeline for OGG stream playback
                
                <?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="940" height="146.266122817993164" viewbox="0 0 940 146.266122817993164">
  <g id="Layer_1" data-name="Layer 1">
    <g>
      <rect x=".5" y=".499887466430664" width="939" height="145.26611328125" rx="7.5" ry="7.5" style="fill: #fafafa;"></rect>
      <path d="M932,1c3.8597412109375,0,7,3.140233993530273,7,6.999998092651367v130.266124725341797c0,3.859756469726562-3.1402587890625,7-7,7H8c-3.859771728515625,0-7-3.140243530273438-7-7V7.999998092651367c0-3.859764099121094,3.140228271484375-6.999998092651367,7-6.999998092651367h924M932,0H8C3.581771850585938,0,0,3.581766128540039,0,7.999998092651367v130.266124725341797c0,4.418228149414062,3.581771850585938,8,8,8h924c4.4183349609375,0,8-3.581771850585938,8-8V7.999998092651367c0-4.418231964111328-3.5816650390625-7.999998092651367-8-7.999998092651367h0Z" style="fill: #d2d7e1;"></path>
    </g>
    <g>
      <text transform="translate(841.5096435546875 126.693582534790039)" style="font-family: Roboto-Regular, Roboto; font-size: 14px;"><tspan x="0" y="0">Open source</tspan></text>
      <rect x="821.25858739359137" y="114.602087020874023" width="16" height="16" rx="2" ry="2" style="fill: #007884;"></rect>
    </g>
  </g>
  <g id="Layer_2" data-name="Layer 2">
    <text transform="translate(439.60546875 32.657382965087891)" style="font-family: Roboto-Bold, Roboto; font-size: 16px; font-weight: 700;"><tspan x="0" y="0">GST BIN</tspan></text>
    <g>
      <g>
        <rect x="20" y="50.87718391418457" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
        <text transform="translate(78.082061767578125 79.383893966674805)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">filesrc</tspan></text>
      </g>
      <g>
        <line x1="180" y1="75.87718391418457" x2="199.976654052734375" y2="75.87718391418457" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="198.955352783203125 79.367616653442383 205 75.87718391418457 198.955352783203125 72.386751174926758 198.955352783203125 79.367616653442383"></polygon>
      </g>
      <g>
        <rect x="205" y="50.87718391418457" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
        <text transform="translate(247.324260711669922 79.383893966674805)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">oggdemux</tspan></text>
      </g>
      <g>
        <line x1="365" y1="75.87718391418457" x2="384.97662353515625" y2="75.87718391418457" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="383.955322265625 79.367616653442383 390 75.87718391418457 383.955322265625 72.386751174926758 383.955322265625 79.367616653442383"></polygon>
      </g>
      <g>
        <rect x="390" y="50.87718391418457" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
        <text transform="translate(435.363311767578125 79.383893966674805)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">vorbisdec</tspan></text>
      </g>
      <g>
        <line x1="550" y1="75.87718391418457" x2="569.97662353515625" y2="75.87718391418457" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="568.955322265625 79.367616653442383 575 75.87718391418457 568.955322265625 72.386751174926758 568.955322265625 79.367616653442383"></polygon>
      </g>
      <g>
        <rect x="575" y="50.87718391418457" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
        <text transform="translate(608.625030517578125 79.383893966674805)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">audioconvert</tspan></text>
      </g>
      <g>
        <line x1="735" y1="75.87718391418457" x2="754.97662353515625" y2="75.87718391418457" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="753.955322265625 79.367616653442383 760 75.87718391418457 753.955322265625 72.386751174926758 753.955322265625 79.367616653442383"></polygon>
      </g>
      <g>
        <rect x="760" y="50.87718391418457" width="160" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
        <text transform="translate(806.26177978515625 79.383893966674805)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">pulsesink</tspan></text>
      </g>
    </g>
  </g>
</svg>

### Related information

- [Audio playback](https://docs.qualcomm.com/doc/80-70022-50/topic/gst-audio-decode-sample.html)
- [Audio recording](https://docs.qualcomm.com/doc/80-70022-50/topic/gst-audio-encode-example-without-flac.html)

Last Published: Feb 20, 2026

[Previous Topic
Video playback use cases](https://docs.qualcomm.com/bundle/publicresource/80-70022-50/topics/video-playback-use-cases.md) [Next Topic
Audio-video use cases](https://docs.qualcomm.com/bundle/publicresource/80-70022-50/topics/audio-video-use-cases.md)