gemian / pulseaudio-modules-droid-hidl

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PulseAudio Droid HIDL module

About the name

Even though the name has "hidl" in it, this module actually nowadays doesn't directly have anything to do with HIDL or Binder for that matter. All the Binder related implementation is in audiosystem-passthrough. This module merely provides access to HAL set_parameters() and get_parameters() calls from outside PulseAudio.

module-droid-hidl

The purpose of this module is to forward calls made to HIDL API or AudioFlinger service to active hw module. This means that the module cannot be loaded independently, it needs to have module-droid-card or module-droid-{sink,source} or whatever module loaded beforehand that parses droid configuration and loads the hw module to PulseAudio global object.

Helper binary is separated to its own package, audiosystem-passthrough. When using the helper from PulseAudio if the defaults are not suitable add configuration to PulseAudio sysconfig file. Available options are

AUDIOSYSTEM_PASSTHROUGH_TYPE={qti,af}
AUDIOSYSTEM_PASSTHROUGH_IDX={17,18} # only applicable to af type

Normally just compiling the package against your adaptation should provide working module, but for testing one can also run the helper binary by hand.

In pa configuration disable helper binary for the module,

load-module module-droid-hidl helper=false

Run the helper in standalone mode (type can be either qti or af),

/usr/libexec/audiosystem-passthrough/audiosystem-passthrough -v -a unix:path=.../pulse/dbus-socket -t <type>

About

License:GNU Lesser General Public License v2.1


Languages

Language:M4 51.2%Language:C 44.6%Language:Makefile 2.5%Language:Shell 1.6%