Sample Rate Following on 3.7.0 not tracking after first track

First off, hats off to @elan and the Plexamp crew for the new Sample Rate Following feature on macOS. Much appreciated and thankful that it finally came.

A few notes from my testing with it on Day 1 and there appears to be a bug with it. Some background:

  • MacOS Catalina 10.15.7
  • RME ADI-2 DAC FS (Latest firmware on DAC and FPGA)
  • Plexamp 3.7.0
  • Audio Midi Settings @ 44.1KHz / 2ch 32-bit Integer

Upon playing a new track [clicking a track name and playing it[, the DAC will indeed switch to the relevant sample rate. However, if further tracks are added to the queue (i.e., if the next track is a different sample rate), the DAC will remain locked at its initial sample rate. The SR will not track any other subsequent tracks unless playback is restarted outside of the existing queue.

For example, my first track was a 96/24 track and the DAC was locked at:

Screen Shot 2021-09-07 at 9.39.12 PM

The next track in the queue was 48/24 and the DAC still only showed 96KHz, both on the Plexamp output device side and the DAC onboard:

Screen Shot 2021-09-07 at 9.39.17 PM

The same behavior is present when switching up [48->96] and down [96->48]. It takes a brand new “play” event to actually switch the rate, and it won’t switch if the playback just transitions organically to the next file.

Also attaching the relevant logs.
Plexamp.log (640.9 KB)

3 Likes

Note the sample rate switching mode is listed as “smart”. It only changes sample rates opportunistically as to not interfere with sweet fades, cause undo clicking, etc.

1 Like

Any insight into the heuristics it uses to determine when it’s “appropriate” to change sample rates? Seems like a good setting to have to let it change at every track. Otherwise, personally, seems to defeat the purpose of the feature entirely [maintaining Bitperfect where possible].

Didn’t catch that “Smart” referred to when, thought just changing the rates was the smart part.

5 Likes

Right now it’s on start, and after idle (so if you pause for a little while and resume, it’ll switch if needed).

I think it’s a reasonable first step towards bit-perfect, because I think most people play an album and want that to switch to whatever the sample rate is, or play a playlist with mostly homogenous sample rates. I doubt people would commonly want their DAC to switch between tracks because of the pause, throwing off Sweet Fades, etc.

So it seemed like a decent first step for those who both (a) care about their DACs lighting up the right color and (b) enjoy Sweet Fades and stations.

Am I understanding you correctly that you’d like to play a station or playlist and between every single track, if the sample rate changes, go to silence, switch rates, and continue?

3 Likes

Am I understanding you correctly that you’d like to play a station or playlist and between every single track, if the sample rate changes, go to silence, switch rates, and continue?

While this might not be the preferred behavior for some, that’s seems like it would make the most sense with the “Sonically Similar” stations and whatnot, since those often have non-homogenous sample rates, if the library has mixed content. Most cases, the sample rate change shouldn’t take that long.

I mean, it’s playlists, all the different radios, artist shuffle, pretty much everything but straight album playback :sweat_smile:

I will say we left the option open in the settings to allow for a third style beyond “smart”…

Noticed it wasn’t a toggle, hope y’all could slot in the “every track” option. :blush:

2 Likes

macOS user here with external USB DAC. Very glad to see the rate matching option, and being able to select the output device. My listening pattern consists of mixing and matching albums, artists, and tracks, which can all have different sample rates. So I would much prefer the option to “force” sample rate changes for each track, and if needed, give up sweet fades. I almost never listen to a whole album, as I rate each track and only play tracks that I like.

2 Likes

Is the right “opportunity” when the player stops or just when there’s silence? If the latter, would toggling Sweet Fades “off” effectively force sample rate matching always? If so, Id be happy with that trade off (sample rate matching = forced if sweet fades = off, else sample rate matching = smart/opportunistic).

Generally, I think “opportunistic” (ie opaque) functionality is going to get pushback from most of the typical users of this product. in cases like this, you might consider adding an explanation on the opportunistic logic in the UI. (just to satiate the control freaks)

2 Likes

To quote Elan from above:

Right now it’s on start, and after idle (so if you pause for a little while and resume, it’ll switch if needed).

I agree, the opportunistic method just isn’t doing it for me, I did notice sample rate changes when pausing and resuming too now, but doing this after every track and having to keep mental tabs on it just doesn’t work out. I would rather give up the sweet fades feature, which, if you’re using sample rate tracking for bitperfect, you probably don’t use anyways.

2 Likes

I’m having the same issue on iOS

If I clear the cache then I can get it to switch on the next song. I’ve tried to set the cache on WiFi to one song but that didn’t help, it stays locked to the sample rate of the first song until I reset the cache.

You don’t need to reset the cache, that has nothing to do with it. We change sample rates:

  • When starting playback.
  • Opportunistically, like when paused.

My situation is the same, I’m mostly 96 ALAC but sometimes 44.1k FLAC’s are in my playlist or 48k MP3’s

Another idea would be for us to set it to a preferred rate — which would work for my case, I’d just set and forget to 96. That would be fine for 48k material, not ideal for 44.1 but at least I’d be sure my 96 material is always running at 96.

Just an idea

Ideally I would also live without sweet fades, etc — I just want to play my music back at the highest quality I can which is either the source sample rate or an even multiple of it.

I see — maybe I’m paused when going through those motions to reset the cache and it seemed to me that this did the trick.

Would it be possible to show somewhere what sample rate is playing? I can see on my Dragonfly what’s going on but I can’t see when using using CarPlay for example

So just generally you have loudness leveling and sweet fades disabled?

I’m trying to get a sense of the use cases here :sweat_smile:

At some point, possibly. Note that CarPlay is probably constrained by something like AirPlay-like limitations and we can’t really see what’s going on at that layer.

I’ll pop my head in as one of those that has literally all the Plexamp DSP features disabled: EQ, Fades, Leveling, etc…, more just using Plexamp as a “dumb” player endpoint for Plex. Leaving any of the DSP off to external hardware designed for that.

1 Like

First of all, thanks so much for adding the source matching feature! I do appreciate it. To answer your questions:

Yes, I turn off all that fancy stuff as a general rule. Sweet fades I’m agnostic about. If I knew they came at the cost of quality playback I would certainly turn them off.

EQ I never use. I just found over the years that playing the music the way it was originally mixed is generally best unless one has to compensate from a shortfall in equipment, and if so, other downstream devices might be a better place to adjust EQ where possible. My headphones are JH 13v2, known to be flat — I guess I just trust the audio engineers more than most people and let them do their job. It took me many many years to get to this realization , the sound is spectacular when you simplify and play back the original as close as possible (flat).

Loudness leveling I don’t use except for the rare case where several different people are sharing one Spotify at a party or something, and music from different decades needs to be leveled. In a party situation I’m not fickle about music quality either. Priorities shift from quality to avoiding jarring volume shifts.

I play CDs and LPs that I rip and manage with Plex so there’s some leveling I’m doing in the ripping process.

I realize I’m not the normal case but maybe there’s a bunch of us “no frills” folks out there.

I love Plex because I can manage and playback LP and CD rips at really high quality.

Plexamp seems like a promising place to sync certain music and play it back in my car (CarPlay) and on my iPhone.

Regarding CarPlay , from what I’ve read it supports hi resolution — anecdotally I’ve played the same song via mp3 and hi res via Apple Music player and the difference was obvious when turned up. The mp3 gets “shakey” “fizzy” and “floppy” in the bass in comparison , so I’m confident that CarPlay is capable of at least exceeding standard mp3 quality.

I currently use the Apple Music player on CarPlay because it does a nice job of allowing navigation of downloaded material but Plexamp would be more convenient (less copying from Plex over to Apple Music) so I’m hoping the ability to navigate downloaded material and source matching get there on Plexamp.

Looks like a good step in the right direction to me on source matching.

I’m actually a simple use case — no frills — just looking to play back the file as purely as possible and to also have navigation (artists, albums, playlists) of downloaded material when using Plexamp on CarPlay.

If you are on a Mac, then at the system level you can fix the USB DAC at your preferred sample rate. You can do that through the MIDI setup, or with something like Soundsource. Until Plexamp allows per track sample rate matching, I have my USB DAC fixed at 192 KHz. I don’t care about sweet fades; I just want the best possible sound reproduction.

I’m also popping my head in to say the same. I don’t require any of that stuff… I just want to listen to my music as originally intended, thank you :grinning:

Thanks, I’m mainly playing via iPhone to Dragonfly DAC and CarPlay to Burmester DAC. The iPhone doesn’t seem to have that lock setting.

I also sometimes play Plex on my
Mac using the Dragonfly, I use regular Plex when on my Mac though — I’ll try Plexamp there soon too, but I assumed it had no benefits for my “no frills” use case when on Mac

I’m drawn to Plexamp due to CarPlay support which is not available with Plex

I have a great car audio system (Burmester, acoustic glass, etc) so I’m trying to get the most out of CarPlay as possible and it’s working sonically very nicely with Apple Music, it’s just a pain to maintain, I have to manually move music from Plex to Apple Music to get my downloads on the phone.

So I’m running PlexAmp as well, alongside Apple Music, to monitor progress on the app in the hopes to switch in the long run.

Navigation of downloads when using CarPlay and source matching and the download limitation (24 hours) are the only issues before I would ideally fully switch from Apple Music to Plexamp — feels like it’s getting closer each release for me

The download limitation will ultimately be an. issue for me but I’m hoping that limitation is lifted at some point — many others have similar use cases of wanting to just sync large libraries at home and then have that music available remotely.

I like the music first attitude of the Plexamp development and the overall open attitude to make it a great app and Plex is my hub and storage center for all my music.

1 Like