[pulseaudio-discuss] SBC XQ for PA 13.0
Andrey Semashev
andrey.semashev at gmail.com
Mon Dec 9 12:16:20 UTC 2019
On 2019-12-09 14:56, Pali Rohár wrote:
> On Monday 09 December 2019 14:47:26 Andrey Semashev wrote:
>> As a user, I don't know whether I can use SBC XQ. I don't know whether its
>> bitrate will fit in my radio conditions. If my device happens to support SBC
>> XQ, that is the codec that will get picked upon connection. Please, correct
>> me if I'm wrong, but I don't see a way to influence that.
>
> You can ask same question for aptX-HD codec. It has also fixed high
> bitrate.
If there is no way to switch between aptX-HD and aptX without device
reconnection then that's a limitation of this particular codec and
there's nothing we can do about it. This is not the case for SBC, if I
understand correctly.
>> SBC XQ is high quality and high bitrate, true, but PA should adapt to the
>> actual use conditions.
>
> SBC XQ is defined with usage of one specific bitpool value.
Correct me if I'm wrong, but regardless of the quality there is only one
codec defined by A2DP - SBC. A2DP also defines several bitpool values
that should be used for this codec, which are commonly called LQ, MQ and
HQ. XQ is not formally defined by A2DP, but is actually supported by
devices. If all this is correct, I don't see why PA couldn't switch
between XQ and HQ the same way it switches from HQ to MQ in automatic mode.
>> More so if it actually has the means to do so. If PA
>> detects that SBC XQ does not fit in BT bandwidth, it should gradually drop
>> quality.
>
> Maybe we can implement disconnecting SBC XQ profile when problem happen
> and connect again with SBC in Automatic quality.
I'm not sure I understand the technical details of this, but if it
happens transparently to the user then that would be fine.
> But there is another problem. People who chose high quality codec do not
> want to see that application itself without their instruction decide to
> change codec to low quality. This is reason why non-SBC codecs are used.
> Because they provide one fixed quality which is same whatever bluetooth
> adapter or headphone you will use. SBC is criticized for a long time
> because current implementations automatically choose some quality which
> is not under user control. So for these reasons there is SBC LQ, MQ, HQ
> and XQ. You can choose what you want to use. By default is automatic
> mode which decreasing quality.
I think the main criticism toward SBC is poor quality. A fair deal of
that criticism is misattributed to the codec itself and in fact is
caused by poor implementation in devices. But I can be reasonably sure
that for an average user signal stability always comes first, and
quality second.
I don't mind if there is a way to force a specific quality profile or
codec in PA. In fact, that would probably be useful for working around
various problems (e.g. when a device declares it supports XQ but
actually doesn't work). However, in the automatic mode, which should be
the default, XQ should be no different from the other profiles and
participate in quality adaptation.
More information about the pulseaudio-discuss
mailing list