01-09-2025, 03:49 PM
(This post was last modified: 01-09-2025, 04:40 PM by TheOldPresbyope.
Edit Reason: fix typo; add PS; add PPS; add PPPS
)
[This is a generalization of a quickie question I incorrectly posted to a different thread]
The open-source moOde audio player derives strength from a number of other open-source projects. These include the core Music Player Daemon (MPD), Sound eXchange (SoX), and a number of alternative renderers.
Among the configuration options for many of these components is a choice of PCM bit depth, grossly: 16 bit, 24 bit, and 32 bit. It's reasonably well known to most end users that 1) greater bit depth means greater dynamic range and 2) there may need to be manipulation of the bit depth of the audio before it's passed to the DAC, depending on its capability.
Once we get into choosing between an integer bit depth (S32, say) and a floating-point bit depth (F32) or between big-endian integers (S24_3BE, say) and little-endian (S24_3LE), there's no useful guidance.
Is there a need to provide some explanation of these choices and if so, where should it go? As a sticky note in the Forum? In the Setup Guide? In moOde's Quick Help? With the specific configuration options of the various components?
My original question was triggered by the introduction of the Deezer renderer, whose configuration options include a choice of S32 or F32 bit depth. I wondered if there was a practical difference to end users.
Regards,
Kent
PS - yes, I know that most of us take the scientific approach (see XKCD), e.g., "I wonder what will happen when I choose this option", but that's not a very efficient way to figure out what's going on.
PPS - I know it's offered by librespot, but the F64 bit depth option for the Spotify renderer is almost incomprehensible to me and my aging ears!
PPPS - To be pendantic about it, the "S" in the integer choices means "signed" (as opposed to unsigned "U") and an unadorned Sxx implies native-endian, e.g., whatever is native to the processor.
The open-source moOde audio player derives strength from a number of other open-source projects. These include the core Music Player Daemon (MPD), Sound eXchange (SoX), and a number of alternative renderers.
Among the configuration options for many of these components is a choice of PCM bit depth, grossly: 16 bit, 24 bit, and 32 bit. It's reasonably well known to most end users that 1) greater bit depth means greater dynamic range and 2) there may need to be manipulation of the bit depth of the audio before it's passed to the DAC, depending on its capability.
Once we get into choosing between an integer bit depth (S32, say) and a floating-point bit depth (F32) or between big-endian integers (S24_3BE, say) and little-endian (S24_3LE), there's no useful guidance.
Is there a need to provide some explanation of these choices and if so, where should it go? As a sticky note in the Forum? In the Setup Guide? In moOde's Quick Help? With the specific configuration options of the various components?
My original question was triggered by the introduction of the Deezer renderer, whose configuration options include a choice of S32 or F32 bit depth. I wondered if there was a practical difference to end users.
Regards,
Kent
PS - yes, I know that most of us take the scientific approach (see XKCD), e.g., "I wonder what will happen when I choose this option", but that's not a very efficient way to figure out what's going on.
PPS - I know it's offered by librespot, but the F64 bit depth option for the Spotify renderer is almost incomprehensible to me and my aging ears!
PPPS - To be pendantic about it, the "S" in the integer choices means "signed" (as opposed to unsigned "U") and an unadorned Sxx implies native-endian, e.g., whatever is native to the processor.