[pulseaudio-discuss] [PATCH v8 03/12] bluetooth: Modular API for A2DP codecs

Pali Rohár pali.rohar at gmail.com
Fri Apr 12 12:29:14 UTC 2019


On Friday 12 April 2019 15:22:20 Tanu Kaskinen wrote:
> On Sat, 2019-04-06 at 11:15 +0200, Pali Rohár wrote:
> > This patch introduce new modular API for bluetooth A2DP codecs. Its
> > benefits are:
> > 
> > * bluez5-util and module-bluez5-device does not contain any codec specific
> >   code, they are codec independent.
> > 
> > * For adding new A2DP codec it is needed just to adjust one table in
> >   a2dp-codec-util.c file. All codec specific functions are in separate
> >   codec file.
> > 
> > * Support for backchannel (microphone voice). Some A2DP codecs (like
> >   FastStream or aptX Low Latency) are bi-directional and can be used for
> >   both music playback and audio call.
> > 
> > * Support for more configurations per codec. This allows to implement low
> >   quality mode of some codec together with high quality.
> > 
> > Current SBC codec implementation was moved from bluez5-util and
> > module-bluez5-device to its own file and converted to this new A2DP API.
> > ---
> >  src/Makefile.am                              |  12 +-
> >  src/modules/bluetooth/a2dp-codec-api.h       |  95 ++++
> >  src/modules/bluetooth/a2dp-codec-sbc.c       | 638 +++++++++++++++++++++++++++
> >  src/modules/bluetooth/a2dp-codec-util.c      |  56 +++
> >  src/modules/bluetooth/a2dp-codec-util.h      |  34 ++
> >  src/modules/bluetooth/bluez5-util.c          | 347 +++++----------
> >  src/modules/bluetooth/bluez5-util.h          |   5 +
> >  src/modules/bluetooth/module-bluez5-device.c | 562 ++++++++---------------
> >  8 files changed, 1127 insertions(+), 622 deletions(-)
> >  create mode 100644 src/modules/bluetooth/a2dp-codec-api.h
> >  create mode 100644 src/modules/bluetooth/a2dp-codec-sbc.c
> >  create mode 100644 src/modules/bluetooth/a2dp-codec-util.c
> >  create mode 100644 src/modules/bluetooth/a2dp-codec-util.h
> 
> Looks good! Just one small thing: there are still a couple of places in
> a2dp-codec-sbc.c where 254 is used instead of MAX_A2DP_CAPS_SIZE. No
> need to resubmit just because of that, I can fix that up myself.

Ok.

> I pushed the first 6 patches now, I'll continue reviewing the rest next
> week.

Thank you!

-- 
Pali Rohár
pali.rohar at gmail.com


More information about the pulseaudio-discuss mailing list