Plexamp has no music controls (MacOS 10.13.2)

When I start playing a track using Plexamp 1.0.0 on MacOS 10.13.2 I see no music controls, nor info about what’s playing. No back/next. No Play/pause. No track/album/artist info. No buttons to switch to Lyrics or Visualizer. Only the Visualizer itself, which would appear behind it all anyway.

It’s almost like the whole UI layer just…doesn’t exist in the “Now Playing” view. I can search and select songs just fine.

The logs themselves don’t appear to show much, but when I run it from the CLI, I see this in stdout on startup:

error: Unhandled Rejection! false == true
error: AssertionError: false == true
    at n.sendCommand (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1585526)
    at n (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:959794)
    at n.ret [as sendCommandAsync] (eval at l (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:940530), <anonymous>:13:39)
    at e.exports.setReplayGain (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:666172)
    at /Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:666321
    at Generator.next (<anonymous>)
    at n (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:661337)
    at /Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:661477
    at n.e._execute (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:893031)
    at n._resolveFromExecutor (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:927719)
    at new n (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:919474)
    at /Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:661287
    at e.exports.setShuffled (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:666535)
    at /Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:691906
    at Generator.next (<anonymous>)
    at n (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:685789)
    at /Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:685935
    at Promise (<anonymous>)
    at /Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:685733
    at e.setAudioParameters (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:691952)
    at /Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:692561
    at Generator.next (<anonymous>)
2017-12-21 15:32:25.359 Plexamp[2117:132014] *** WARNING: Textured window <AtomNSWindow: 0x7fa3c3a22bf0> is getting an implicitly transparent titlebar. This will break when linking against newer SDKs. Use NSWindow's -titlebarAppearsTransparent=YES instead.

And then whenever I try to use the space bar to pause; a similar, but different error:

error: AssertionError: false == true
    at n.sendCommand (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1585526)
    at n (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:959794)
    at n.ret [as sendCommandAsync] (eval at l (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:940530), <anonymous>:13:39)
    at e.exports.pause (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:665120)
    at /Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:668844
    at Generator.next (<anonymous>)
    at n (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:668053)
    at /Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:668199
    at Promise (<anonymous>)
    at a (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:667997)
    at e.exports.process (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:669554)
    at e.get (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:676280)
    at n.handle_request (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1049399)
    at n (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1050847)
    at n.dispatch (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1051006)
    at n.handle_request (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1049399)
    at /Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1045652
    at a (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1047113)
    at a (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1047307)
    at Function.h.process_params (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1047530)
    at n (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1045596)
    at Function.h.handle (/Applications/Plexamp.app/Contents/Resources/app.asar/server.prod.js:1:1047031)

Similar problem here. I can log into my Plex server and it can see my songs, playlists and radio stations, but nothing plays and I’m stuck on a blank screen once I’ve clicked the play button. Here are a few screenshots to demonstrate the screen before I click on the play icon:

And then after I click on the play icon:

(Latest CentOS server, latest MacOS for PlexAmp)

I was at least expecting to see some WinAmp controls. But there’s not even a way to do system things, like adjust volume, move the window, or kill the window.

I had to start it up several times, getting the message “Music Server Not Found” or some such, and finding the only way to kill the window, even now, is with the Activity Monitor.

@rowahuda - on the macOS player, there’s a controller in the menubar that allows you to resize the window, close it or sign out.

I’m having the same problem as the original post, but I’m using Windows 10. I exited and started the program up again, and have the same issue. I can see some of the visualizations as the song plays (but not all of them), but no track information nor controls of any sort. I do get a little icon opposite the magnifying glass at the bottom of the player (unlike the second poster, I also hear the music unlike him), a few horizontal lines and an arrow partway down indenting a few of them. Clicking the icon will turn it orange or white, but doesn’t appear to do anything. I tried the keybinding for showing visualizations, just in case that as it, and turned them off with it, but wasn’t able to get album artwork or media controls when I did. I also tried the lyrics keybinding, and nothing appeared.

@tylerversion2 said:
error: Unhandled Rejection! false == true
error: AssertionError: false == true

That seems to imply that MPD is not starting, or is crashing on start.

@elan said:

@tylerversion2 said:
error: Unhandled Rejection! false == true
error: AssertionError: false == true

That seems to imply that MPD is not starting, or is crashing on start.

How can I help debug that? Where are MPD’s logs / can I start it on its own?

Look in /tmp/mpd.log for logs.

You can try starting with:

$ /path/to/mpd --no-daemon --stderr /path/to/mpd.conf

@elan said:
Look in /tmp/mpd.log for logs.

You can try starting with:

$ /path/to/mpd --no-daemon --stderr /path/to/mpd.conf

I never had a problem playing music. It seems to play just fine. It’s merely the display of the controls.

Normal mpd.log:

$ cat /private/tmp/mpd.log 
Dec 28 14:14:14: client: [0] opened from 127.0.0.1:49451
Dec 28 14:15:02: player: Got device format: 44100:f:2
Dec 28 14:15:02: decoder_thread: setting replaygain track=-7.620000 album=-7.000000
Dec 28 14:15:02: decoder_thread: setting mixramp in=-12.76 0.00;-8.82 0.10;-5.30 0.20;1.15 6.10;4.11 6.20;6.07 9.10; out=-51.00 0.19;-24.34 0.29;-20.79 0.39;-17.60 0.69;-13.02 0.89;-11.63 0.99;-5.55 3.09;-1.25 3.29;0.46 3.49;3.11 6.39;6.01 6.99;
Dec 28 14:15:06: ffmpeg: codec 'mp3'
Dec 28 14:15:06: decoder: audio_format=44100:16:2, seekable=true
Dec 28 14:15:06: decoder: Shared device format set to 44100:f:2, will convert if required
Dec 28 14:15:06: decoder: converting to 44100:f:2
Dec 28 14:15:06: decoder: Enabling spectrum analyzer, format: 44100:f:2
Dec 28 14:15:06: ffmpeg/mp3: Could not update timestamps for skipped samples.
Dec 28 14:15:07: soundio_output: Device latency between 0.000317 sec and 0.092880 sec.
Dec 28 14:15:07: soundio_output: Current device latency is 0.011610 sec.
Dec 28 14:15:07: soundio_output: Requested 2 channels, and we're going to be using 2
Dec 28 14:15:07: soundio_output: Opened output stream, 44100 Hz Stereo float 32-bit LE latency 5.80 ms
Dec 28 14:15:07: soundio_output: Buffer size bytes per frame: 8, sample rate: 44100, buffer size: 70560
Dec 28 14:15:07: soundio_output: Opened device.
Dec 28 14:15:07: output: opened plugin=soundio name="Output" audio_format=44100:f:2
Dec 28 14:15:07: output: resetting output clock.
Dec 28 14:15:07: replay_gain: scale=0.415911
Dec 28 14:17:59: ffmpeg/mp3: Could not update timestamps for discarded samples.
Dec 28 14:17:59: player: Got device format: 44100:f:2
Dec 28 14:17:59: decoder_thread: setting replaygain track=-10.600000 album=-11.110000
Dec 28 14:17:59: decoder_thread: setting mixramp in=-51.00 0.00;-30.47 0.60;-23.95 0.70;-20.31 0.80;-16.10 0.90;-14.02 1.00;-11.26 1.20;-8.38 1.50;-5.96 1.70;-2.87 1.90;2.07 2.10;4.53 2.20;6.20 2.30; out=-51.00 0.14;-39.80 2.74;-28.33 4.14;-23.96 4.64;-19.18 5.24;-17.71 5.84;-13.58 6.44;-11.35 6.74;-8.22 7.64;-5.35 8.14;-2.64 9.64;0.36 10.84;3.25 12.24;6.05 14.64;
Dec 28 14:18:00: ffmpeg: codec 'mp3'
Dec 28 14:18:00: decoder: audio_format=44100:16:2, seekable=true
Dec 28 14:18:00: decoder: Shared device format set to 44100:f:2, will convert if required
Dec 28 14:18:00: decoder: converting to 44100:f:2
Dec 28 14:18:00: decoder: Enabling spectrum analyzer, format: 44100:f:2
Dec 28 14:18:00: cross_fade: will overlap 286 chunks, 3.330775s
Dec 28 14:18:00: ffmpeg/mp3: Could not update timestamps for skipped samples.

mpd alone; no music plays when I run mpd standalone before plexamp:

$ pwd
/Applications/Plexamp.app/Contents/Resources/helpers

$ ./mpd --no-daemon --stderr ./mpd.conf 
soundio_output: Created soundio object
soundio_output: Connected to soundio object
soundio_output: Flushed soundio events
soundio_output: Output device: Built-in Output
soundio_output: Current output stream format: 44100:f:2
udp_server: Created UDP server on 127.0.0.1:36601
udp_server: Started UDP server.
client: [0] opened from 127.0.0.1:49845
player: Got device format: 44100:f:2
decoder_thread: setting replaygain track=-7.620000 album=-7.000000
decoder_thread: setting mixramp in=-12.76 0.00;-8.82 0.10;-5.30 0.20;1.15 6.10;4.11 6.20;6.07 9.10; out=-51.00 0.19;-24.34 0.29;-20.79 0.39;-17.60 0.69;-13.02 0.89;-11.63 0.99;-5.55 3.09;-1.25 3.29;0.46 3.49;3.11 6.39;6.01 6.99;
ffmpeg: codec 'mp3'
ffmpeg: Unsupported audio codec
exception: Failed to decode http://127.0.0.1:20000/proxy?source=cc146722d5e70482931d71511ed69acc0f7e0e17&endpoint=%2Flibrary%2Fparts%2F665250%2F1491523519%2Ffile.mp3%3Fdownload%3D1%26X-Plex-Client-Identifier%3Db784fcfb-7514-4432-a591-a9c17a6af5b8%26X-Plex-Session-Identifier%3D5eadc3b7-9a90-461b-bb1f-5ee1408351ba
player: played "http://127.0.0.1:20000/proxy?source=cc146722d5e70482931d71511ed69acc0f7e0e17&endpoint=%2Flibrary%2Fparts%2F665250%2F1491523519%2Ffile.mp3%3Fdownload%3D1%26X-Plex-Client-Identifier%3Db784fcfb-7514-4432-a591-a9c17a6af5b8%26X-Plex-Session-Identifier%3D5eadc3b7-9a90-461b-bb1f-5ee1408351ba"
player: Got device format: 44100:f:2
decoder_thread: setting replaygain track=-7.000000 album=-8.910000
decoder_thread: setting mixramp in=-51.00 0.00;-3.05 0.30;-1.97 0.40;1.06 1.60;3.30 10.30;6.13 77.00; out=-51.00 0.11;-38.16 1.81;-29.89 2.11;-21.86 2.41;-18.63 2.51;-15.91 2.61;-13.29 2.71;-8.38 2.81;-1.52 2.91;2.51 3.01;5.02 3.11;6.38 3.31;
ffmpeg: codec 'mp3'
ffmpeg: Unsupported audio codec
exception: Failed to decode http://127.0.0.1:20000/proxy?source=cc146722d5e70482931d71511ed69acc0f7e0e17&endpoint=%2Flibrary%2Fparts%2F665215%2F1491523297%2Ffile.mp3%3Fdownload%3D1%26X-Plex-Client-Identifier%3Db784fcfb-7514-4432-a591-a9c17a6af5b8%26X-Plex-Session-Identifier%3D056381c1-8f39-4f0c-8757-72b5609b5e27
player: played "http://127.0.0.1:20000/proxy?source=cc146722d5e70482931d71511ed69acc0f7e0e17&endpoint=%2Flibrary%2Fparts%2F665215%2F1491523297%2Ffile.mp3%3Fdownload%3D1%26X-Plex-Client-Identifier%3Db784fcfb-7514-4432-a591-a9c17a6af5b8%26X-Plex-Session-Identifier%3D056381c1-8f39-4f0c-8757-72b5609b5e27"
player: Got device format: 44100:f:2
decoder_thread: setting replaygain track=-2.210000 album=-4.640000
decoder_thread: setting mixramp in=-51.00 0.00;-35.23 0.60;-29.21 0.80;-23.75 1.00;-7.71 1.20;-5.88 1.30;-2.69 20.60;0.26 20.90;3.35 40.50; out=-51.00 0.11;-38.47 3.21;-27.84 4.81;-23.95 4.91;-20.19 5.11;-17.15 6.01;-14.29 6.21;-11.47 8.01;-8.90 8.31;-5.93 11.31;-2.23 12.11;0.30 18.21;3.35 97.91;
ffmpeg: codec 'mp3'
ffmpeg: Unsupported audio codec
exception: Failed to decode http://127.0.0.1:20000/proxy?source=cc146722d5e70482931d71511ed69acc0f7e0e17&endpoint=%2Flibrary%2Fparts%2F73276%2F1327312146%2Ffile.mp3%3Fdownload%3D1%26X-Plex-Client-Identifier%3Db784fcfb-7514-4432-a591-a9c17a6af5b8%26X-Plex-Session-Identifier%3Df2027afe-2a4f-4d3b-a71c-4a7eebaa1697
player: played "http://127.0.0.1:20000/proxy?source=cc146722d5e70482931d71511ed69acc0f7e0e17&endpoint=%2Flibrary%2Fparts%2F73276%2F1327312146%2Ffile.mp3%3Fdownload%3D1%26X-Plex-Client-Identifier%3Db784fcfb-7514-4432-a591-a9c17a6af5b8%26X-Plex-Session-Identifier%3Df2027afe-2a4f-4d3b-a71c-4a7eebaa1697"
client: [0] closed

In order to start MPD standalone, you need to pass it a special environment variable called FFMPEG_EXTERNAL_LIBS and point it to e.g. /Users/elan/Library/Application\ Support/Plexamp/Codecs/6bd6751-1276-darwin-x86_64/ on my system (trailing slash required).

I never had a problem playing music. It seems to play just fine. It’s merely the display of the controls.

So just to be clear, they don’t show up at all when hovering? Or they don’t show playback progress?

(sorry for the questions, hard to keep track of all the different threads :sweat_smile:)

@elan said:
In order to start MPD standalone, you need to pass it a special environment variable called FFMPEG_EXTERNAL_LIBS and point it to e.g. /Users/elan/Library/Application\ Support/Plexamp/Codecs/6bd6751-1276-darwin-x86_64/ on my system (trailing slash required).

Ok! I’ll give that a try.

I never had a problem playing music. It seems to play just fine. It’s merely the display of the controls.

So just to be clear, they don’t show up at all when hovering? Or they don’t show playback progress?

It’s as if that layer doesn’t exist. Hovering doesn’t bring it up. There’s no playback progress. Even if I click where the controls should be, nothing happens.

(sorry for the questions, hard to keep track of all the different threads :sweat_smile:)

No worries. There are a lot of bugs flying around!

@tylerversion2 said:
It’s as if that layer doesn’t exist. Hovering doesn’t bring it up. There’s no playback progress. Even if I click where the controls should be, nothing happens.

And for sure you’ve tried de-focusing and re-focusing the app, and mousing over the lower third?

Looking back at your original logs, it does seem like the server process has trouble talking to MPD (which would result in the app not having any status about playback).

If you’re technical and know your Terminal, DM me and I’ll set up a Slack for us to chat in.

@elan said:

@tylerversion2 said:
It’s as if that layer doesn’t exist. Hovering doesn’t bring it up. There’s no playback progress. Even if I click where the controls should be, nothing happens.

And for sure you’ve tried de-focusing and re-focusing the app, and mousing over the lower third?

https://files.plexapp.com/elan/hover.mp4

Yes, I’ve definitely un-focused and re-focused. I’ve switched to other apps, desktops, clicked around like a madman…nothing :(. I don’t even have the “now playing” information like I see in your video. I don’t see the track or artist.

$ FFMPEG_EXTERNAL_LIBS=/Users/${my_username}/Library/Application\ Support/Plexamp/Codecs/6bd6751-1276-darwin-x86_64/ ./mpd --no-daemon --stderr ./mpd.conf 
soundio_output: Created soundio object
soundio_output: Connected to soundio object
soundio_output: Flushed soundio events
soundio_output: Output device: Built-in Output
soundio_output: Current output stream format: 44100:f:2
udp_server: Created UDP server on 127.0.0.1:36601
udp_server: Started UDP server.
client: [0] opened from 127.0.0.1:49378
player: Got device format: 44100:f:2
decoder_thread: setting replaygain track=-6.980000 album=-7.620000
decoder_thread: setting mixramp in=-34.31 0.00;-12.84 0.10;-11.32 0.20;-3.68 11.90;-1.05 12.00;0.51 12.10;3.34 57.40;6.10 123.30; out=-43.77 0.18;-37.88 0.38;-29.79 0.78;-18.97 1.08;-14.60 1.18;-10.13 1.38;-8.92 1.48;-5.62 1.88;-2.92 2.38;0.21 3.08;3.02 4.28;6.03 4.78;
ffmpeg: codec 'mp3'
decoder: audio_format=44100:16:2, seekable=true
decoder: Shared device format set to 44100:f:2, will convert if required
decoder: converting to 44100:f:2
decoder: Enabling spectrum analyzer, format: 44100:f:2
soundio_output: Device latency between 0.000317 sec and 0.092880 sec.
soundio_output: Current device latency is 0.011610 sec.
soundio_output: Requested 2 channels, and we're going to be using 2
soundio_output: Opened output stream, 44100 Hz Stereo float 32-bit LE latency 5.80 ms
soundio_output: Buffer size bytes per frame: 8, sample rate: 44100, buffer size: 70560
soundio_output: Opened device.
output: opened plugin=soundio name="Output" audio_format=44100:f:2
output: resetting output clock.
replay_gain: scale=0.447713
client: [0] closed
^Cplayer: played "http://127.0.0.1:20000/proxy?source=cc146722d5e70482931d71511ed69acc0f7e0e17&endpoint=%2Flibrary%2Fparts%2F677797%2F1497840301%2Ffile.mp3%3Fdownload%3D1%26X-Plex-Client-Identifier%3Db784fcfb-7514-4432-a591-a9c17a6af5b8%26X-Plex-Session-Identifier%3D91264205-zzzz-xxxx-yyyy-9b1c8cedad7d"