When “Prefer internal decoder” and “Skip silence (All)” are enabled, songs sound a bit garbled or seem to stutter, and beats get obviously audibly missed. Turning off “Prefer internal decoder” solves the problem for me (although it makes seeking take a long time). Turning off “Skip silence (All)” also solves the problem for me. Most of my music is “lame -V2” (~190 kbps VBR) encoded.
My uploaded debug log corresponds to (if I’m remembering right):
With both “Skip silence (All)” and “Prefer internal decoder” on, I played the first 10 seconds of the song, “No Workin”, by Alific, which I’m providing along with the log. I heard it skip multiple beats.
I tried all other combinations in some order I don’t now remember, of “Skip silence (All)” on, “Prefer internal decoder” off, of “Skip silence (All)” off, “Prefer internal decoder” on, and I think of “Skip silence (All)” off, “Prefer internal decoder” off. Each time I seek back to the beginning of the song by dragging, I listened to the first 10 seconds, and it sounded fine.
I did some more testing (all via playback through Navidrome, all skipping silence and using internal decoder):
If I decode the original test MP3 file to WAV via ffmpeg, and then encode it to FLAC, it sounds fine in Symfonium.
If I decode that resulting FLAC file to WAV, and then encode it with LAME 3.100 via “lame -V2 song.wav” (so MP3 to FLAC to MP3), it sounds fine in Symfonium.
The original file continues to skip beats. Its encoder was “LAME3.98r”, and its encoding settings were “-m j -V 0 -q 0 -lowpass 19.5 --vbr-new -b 32”, according to MediaInfo, so presumably it was just “lame -V0 song.wav” originally, on LAME 3.98r.
I’ll do a bit more experimenting to see if this affects all of my LAME 3.98r VBR music specifically.
Ah, alright. I thought it was like gapless playback, lol. Does Symfonium support gapless playback? It’s also odd that it works fine with the same exact songs, decoded and then re-encoded, which leads me to believe the low-pass filter is not the specific issue.
I take mild offense to your saying “LAME -V2” is low-quality. It was the scene standard for a long time. It’s literally a synonym for the old " --alt-preset standard" LAME preset. Hydrogenaudio calls even “-V3” “very high quality” and says they “normally produce transparent results”. LAME has been encoding things as gapless by default for eternity, also.
To each their own, but 320 CBR is not strictly “better” than LAME -V2 VBR; it just wastes more bits.
“-V3” by itself is not 128. It’s ~175 kbps. I don’t go below “-V2” (~190 kbps), though. I do happen to have some stray ancient 128 kbps files around, though.
If you’re hearing the difference between FLAC 44,100 16-bit and LAME -V0, or even between FLAC 44,100 16-bit and LAME -V2, then you have superpowers.
Either way, LAME records gapless information, so your player should ideally support it, but I haven’t tested that angle specifically; I did notice there seemed to be gaps until I started using “Skip silence”. I’ll investigate that issue separately, as it is indeed separate from this.
FWIW, gapless playback works perfectly, even with my older, LAME 3.99r -V2 MP3 files. I sometimes mix gapless up with skipping leading/trailing silence, but those are not the same thing.
When used with variable bitrate encodings (VBR), -b specifies the
minimum bitrate to use. This is useful only if you need to circumvent
a buggy hardware device with strange bitrate constrains.
and also
Constant Bit Rate (CBR)
-b n [meaning] set bitrate
…
–preset cbr number [meaning] -b number
That the sole -b 128, which should result in a CBR file is translated into -V 4 ... -b 128 then seems curious.