# Audio playback
Source: [https://docs.qualcomm.com/doc/80-70020-50/topic/gst-audio-decode-sample.html](https://docs.qualcomm.com/doc/80-70020-50/topic/gst-audio-decode-sample.html)
The **gst-audio-decode-example** application demonstrates the playback of audio
files in WAV, MP3, and FLAC formats. Separate pipelines for each audio format ensure
efficient processing and compatibility.
This sample application provides a basic template that can be extended and adapted.
The following figure shows the pipeline, which reads and parses the audio file, and then
decodes and plays the audio. For information about the plugins used in the pipeline, see
[Pipeline flow](https://docs.qualcomm.com/doc/80-70020-50/topic/gst-audio-decode-sample.html#gst-audio-decode-sample__section_ovq_ywt_4bc).
Figure : gst-audio-decode-example pipeline
## Prerequisites
- [Get started with the Qualcomm IM SDK](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-51/install-sdk.html)
for your Qualcomm Linux 1.5 or Ubuntu Server.
- Activate SSH on your Qualcomm Linux or Ubuntu to sign in with SSH and connect to
the target device. For instructions see:
- [Sign in using SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-254/how_to.html#use-ssh) for Qualcomm
Linux
- [Sign in using SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-90441-1/Use_Ubuntu_on_RB3_Gen2_3.html#sign-in-to-the-rb3-gen-2-console-using-ssh) for Ubuntu
Server
Note: If SSH is already set up and Wi-Fi is
connected, skip this step.
- Use the HDMI port to connect the display to the device. For instructions, see
[Set up HDMI display](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-18/samples.html).
- Sign in to the target device using SSH.
- In the terminal of the target device, run the following commands from the SSH
shell of the target device to activate the display on the host computer:
- For
Linux:
export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_DISPLAY=wayland-1Copy to clipboard
- For Ubuntu Server:
export XDG_RUNTIME_DIR=/run/user/$(id -u ubuntu)/ && export WAYLAND_DISPLAY=wayland-1 Copy to clipboard
- Connect the speaker to activate the audio on the target device. For
instructions, see [Set up audio hardware](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-16/enable-audio.html).
If you face
issues in recording the audio, run the following command in the terminal of
the target
device:
pactl set-default-source pal_source_speaker_micCopy to clipboard
- If you face issues with the camera or display, see [Camera troubleshooting](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-17/troubleshooting.html) and [Display troubleshooting](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-18/debug.html).
## Run the application
1. Ensure that you input at least one of the `.mp3`,
`.WAV`, or `.FLAC`
audio files on the target device.
2. In the terminal of the target device, use the following command to run the
application for different audio formats:
gst-audio-decode-example -i /etc/media/ --audio_format=Copy to clipboard
The following table provides a description of the command-line
parameters: | Command-line parameter | Description |
| --- | --- |
| `-i` | Specifies the absolute path to the input audio file to decode |
| `--audio_format` | Specifies the format of the audio file:
1 = MP3
2 = WAV
3 = FLAC
|
For example, use the following commands to run the application for
MP3, WAV, or FLAC audio formats:
- Decode
MP3:
gst-audio-decode-example -i /etc/media/.mp3 --audio_format=1Copy to clipboard
- Decode
WAV:
gst-audio-decode-example -i /etc/media/.wav --audio_format=2 Copy to clipboard
- Decode
FLAC:
gst-audio-decode-example -i /etc/media/.flac --audio_format=3Copy to clipboard
3. To stop the use case, use CTRL +
C.
4. In the terminal of the target device, run the following command in the SSH shell
to display the available help
options:
gst-audio-decode-example --helpCopy to clipboard
## Expected output
Based on the format (MP3, WAV, FLAC), the decoded audio file is played back.
## Pipeline flow
The following table lists the plugins used to run the audio playback
pipeline:| Plugin | Description |
| --- | --- |
| filesrc | Reads the audio files. |
|
mpegaudioparse
wavparse
flacparse
| Parses the MPEG, WAV, and FLAC audio files respectively. |
|
mpg123audiodec
flacdec
| Decodes the MP3 and FLAC files respectively. |
| [pulsesink](https://docs.qualcomm.com/doc/80-70020-50/topic/pulsesink.html) | Plays the decoded audio. |
## Related information
[Audio use cases](https://docs.qualcomm.com/doc/80-70020-50/topic/audio-use-cases.html)
**Parent Topic:** [Run sample applications for video and audio](https://docs.qualcomm.com/doc/80-70020-50/topic/audio-sample-applications.html)
Last Published: Jan 30, 2026
[Previous Topic
Audio and video encode](https://docs.qualcomm.com/bundle/publicresource/80-70020-50/topics/gst-audio-video-encode.md) [Next Topic
Audio recording](https://docs.qualcomm.com/bundle/publicresource/80-70020-50/topics/gst-audio-encode-example-without-flac.md)