Apple Music from a game controller
The Apple Music layout is built into InputConfig, free on the Mac App Store. You don't have to make an account, there are no subscriptions, and nothing is locked. Optimized for Apple silicon.
On a Mac: The Music app reads its shortcuts only while it is in front. The System Function media outputs work from any app, and macOS routes them to Music.
Yes, a game controller works as a remote for Apple Music on a Mac: play on the big button, skip on the two next to it, volume on the bumpers, and a stick for the library. Switch the play and skip rows to the media outputs and the same buttons control whatever is playing from whatever app is in front.
The layout, control by control
How the layout thinks
- Play and skip. Play and pause (Space) on the bottom face button. Next and previous on the right and left, sent as Right Arrow and Left Arrow, and again on the D-pad.
- Volume. Command Up and Command Down Arrow on the bumpers.
- Browse. The left stick is a pointer, the right stick scrolls, and the right trigger clicks.
The Music app reads these keys only while it is in front. As shipped, it is a remote for Music while Music is in front, and the media outputs make it work everywhere.
If a skip press moves the selection instead
Apple lists Command Right Arrow and Command Left Arrow as Music's next and previous song keys. A plain arrow press can move the selection in a song list instead of skipping. Climb this ladder, smallest step first:
- Add Command. Change the skip rows to Command Right Arrow and Command Left Arrow.
- Use the media keys. Change them to the System Function Next Track and Previous Track, which work from any app.
The second rung is the one I would pick, because it also works with Music in the background. Media keys skip from any app, with no list to get in the way.
Tune it for listening
- Media keys. System Function Play / Pause, Next Track and Previous Track work from any app, the way the keyboard's media keys do.
- Mac volume. System Function Volume Up and Volume Down change the Mac's own volume, which is usually what you want on speakers.
- Search. Press Command F, then dictate.
- Love a song. Music has no default key for it. Click the star or heart with the pointer.
The built-in Media Controller preset is already built on media keys. Media keys and Mac volume make one remote for Music, Spotify and the rest.
Get it in two clicks
- Get InputConfig free on the Mac App Store, open it, and click Smart Preset Maker on the welcome screen.
- Search for Apple Music and pick it. The layout is created as a preset in your sidebar, named and ready.
- Press Activate. Every row can be changed afterwards: the editor's Scan button rebinds any control the moment you touch it.
Every binding, as a table

| Controller | Sends | What it does |
|---|---|---|
| A / Cross | Space | Play / Pause (Space) |
| B / Circle | Right | Next track |
| X / Square | Left | Previous track |
| LB / L1 | Command (Left), Up | Volume up |
| RB / R1 | Command (Left), Down | Volume down |
| D-pad right | Right | Next track |
| D-pad left | Left | Previous track |
| Left stick left | Mouse motion left (speed 16) | Cursor left |
| Left stick right | Mouse motion right (speed 16) | Cursor right |
| Left stick up | Mouse motion up (speed 16) | Cursor up |
| Left stick down | Mouse motion down (speed 16) | Cursor down |
| Right stick down | Scroll down | Scroll down |
| Right stick up | Scroll up | Scroll up |
| Right trigger | Left click | Click |
Button names follow the Xbox / PlayStation pair shown in the editor, so A / Cross is the bottom face button on either pad. On a Switch Pro Controller the bottom button is labeled B; the mapping still fires on position.
Questions
Why do the buttons only work when Music is in front?
Because they are the app's own keys. Use the System Function media outputs to control playback from anywhere.
Does it work with Spotify?
Spotify has its own entry, and the media-key version works for both.
Related
Completely free. You don't have to make an account, there are no subscriptions, and nothing is locked. Optimized for Apple silicon. Open source on GitHub.
Updated