Thank you for your donation!


Cloudsmith graciously provides open-source package management and distribution for our project.


Idea: Add option to select SBC XQ/XQ+ encoding quality for bluetooth transmission
#9
A fallback is implemented and appears to work (see https://github.com/arkq/bluez-alsa/blob/...-sbc.c#L60):
Code:
    if (quality == SBC_QUALITY_XQ ||
            quality == SBC_QUALITY_XQPLUS) {
        /* Check whether XQ/XQ+ is possible. If not,
         * downgrade to high quality. */
        if (conf->frequency == SBC_SAMPLING_FREQ_44100 &&
                conf->channel_mode == SBC_CHANNEL_MODE_DUAL_CHANNEL &&
                conf->block_length == SBC_BLOCK_LENGTH_16 &&
                conf->subbands == SBC_SUBBANDS_8 &&
                conf->allocation_method == SBC_ALLOCATION_LOUDNESS)
            bitpool = quality == SBC_QUALITY_XQ ? 38 : 47;
        else {
            warn("Unable to use SBC %s, downgrading to high quality",
                    quality == SBC_QUALITY_XQ ? "XQ" : "XQ+");
            quality = SBC_QUALITY_HIGH;
        }
    }

and a few lines later

Code:
    /* Clamp selected bit-pool value to supported range. */
    return MIN(MAX(conf->min_bitpool, bitpool), conf->max_bitpool);

My bluetooth speaker JBL Flip 6 (in fact a mono device) does not seem to support XQ/XQ+ mode and falls back to joint stereo (i.e. high quality).

Best regards
Jens
Reply


Messages In This Thread
RE: Add option to select SBC XQ/XQ+ encoding quality for bluetooth transmission - by jenzd - 07-03-2023, 10:39 PM

Forum Jump: