macOS fork of Squeezeplay
This fork of Squeezeplay is focused on bug fixes and usability enhancements for the macOS build.
The three primary areas of focus are:
- multimedia key support
- cooperative device management with other programs like VLC
- proper handling of high VBR FLAC files
It's a laboratory for me to learn Core Audio, PortAudio, and Objective-C.
I'm happy to fold this back upstream when it is sufficiently stable.
- clean compilation on x86_64 and M1 with arbitrary SDK versions
- version number from git instead of svn in About as well as Settings -> Advanced -> About
- ⌘-H and ⌘-Q hide and quit, respectively
- multimedia key support (next/prev/play/pause) in conjunction with noTunes
- multimedia key support (next/prev/play/pause) without requiring noTunes
- handle runtime changes in default output device like unplugging headphone jack, pairing Bluetooth headphones, changing MIDI Sound Output, etc.
- double click NowPlaying applet to rotate skin instead of single click
- memory leak fix in Quartz redraw
-
move volume slider quickly by clicking in the grey empty space area - don't clobber VLC's output device on startup
- tray icon menu items for controlling playback
- downsample high VBR FLAC streams to Bluetooth devices
- Install XCode command line tools, if not already installed:
xcode-select --install
- Copy (or symlink) either Makefile.osx-x86_64 or Makefile.osx-M1 to a file called
Makefile
, depending on your architecture. This is really for convenience; that way, you don't have to keep passing the-f
flag tomake
every time. - Perform the steps listed at the top of the Makefile entitled, "user specific stuff", like cloning and patching portaudio_v19.
- Build with
make