Audio output with Jetson Nano?

Hello there,

for my project, it’s important for my Jetson Nano to output audio (voice commands and such things), but don’t know how to build this feature into a portable system. So here are my main questions:

  1. How do I even implement playing of audio in my Python code? Are there any libraries which can help me? The only library I know for playing sounds is PyGame, but I don't want to use it since then the rest of the program must also be configured to work with PyGame.
  2. How do I achieve sound output in terms of hardware on the Jetson Nano? Since it doesn't have a 3.5mm audio jack, you need to go with something different. I had the idea to use the HDMI output with an VGA/Audio jack adapter, but with that, the sound output is only availible when a VGA cable is connected. This is a problem because in the robot I want this to impement in has no display. Has somebody got any ideas for this?

Thanks for your answers in advance!

1 Like

If you have a HDMI display that decodes the audio, that’s the easiest way.
If not, you’d want to buy a USB headphone adapter, and take the audio out of that.
Most USB audio adapters will work with the built-in USB Audio class drivers.

To play audio, you generally use a higher-level API like PulseAudio or gStreamer, you don’t talk to the device directly.
You could for example use “pulsesink” using a gstreamer pipeline:


If you decide on USB audio, the Behringer UMC series has served me well. Each model has its own personality (TRS vs XLR, MIDI Y or N, etc) and the UMC series stands up to much more costly devices - in my opinion.


Anyone have tried the I2S connection for audio output?


Yes, tried with adafruit bonnet. Does not boot. Came here looking for an alternative

Hi, I ended up using an external USB soundcard as originally suggested by @snarky. Works perfectly to this day!
You can use any type you want, for me this one worked well:

1 Like