Skip to content
  • Sanchayan Maity's avatar
    bluetooth: Introduce a can_be_supported API for A2DP codecs · d6149364
    Sanchayan Maity authored
    This API internally checks if a requested codec can be supported on the
    system. This is especially required for codecs supported via GStreamer
    where the availability of a plugin decides if the said codec can be
    supported.
    
    This will be used to prevent registration of a codec which the remote
    endpoint device might be able to support, but, PulseAudio can't as the
    codec is not available on the system due to the absence of a plugin.
    We can also prevent listing or switching to an unavailable codec.
    
    Note that the codec negotiation happens with the bluez stack even before
    a device is connected. Because of this, we need to make sure that gst_init
    is called before checking for the availability of a plugin. Since
    module-bluez5-device gets loaded only after a connection to the device
    has been established, doing the gst_init in that or one of the bluetooth
    modules is not feasible.
    
    Part-of: <!440>
    d6149364