I encountered a really odd behaviour with my Raspberry Pi B+, running a slightly modified version of Raspbian with a PiTFT screen from Adafruit. Because the screen cannot access the GPU I dialed down the GPU memory as low as it would go during installation (4 MB I think?).

I wanted to use the system as a portable music player, but I found the audio playback was extremely poor (constant skipping). I tried changing the GPU memory split to 32 MB, and all of a sudden the playback was completely smooth.

I thought that the GPU was primarily used for handling calculations performed while rendering 3D graphics. Why would it affect audio playback this noticeably?

  • What audio player did you use? – goobering Mar 27 '16 at 22:15
  • cmus, moc, and a few others, but the behaviour was consistent across different programs. – BruceJohnJennerLawso Mar 27 '16 at 22:17
  • Did you try omxplayer? – Android Dev Mar 28 '16 at 0:39
  • With mpg321 and my GPU memory set to 0 I have perfect playback. – Patrick Cook Mar 28 '16 at 1:31
  • The last I read the minimum settable GPU memory was 16MB - I think if you set it lower than that it's still rounded up to 16MB. – goobering Mar 28 '16 at 8:07

The Raspberry Pi sound system is controlled by the GPU, both for HDMI and analog audio output. An interesting detail are the noise shaping algorithms running on the GPU for analog output. Quite a bit of engineering went into them, seeing that the analog audio hardware itself is quite poor.


"Analogue Audio testing" raspberrypi.org
"Analogue Audio redux" raspberrypi.org

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.