No description
  • C 98%
  • Makefile 2%
Find a file
2026-05-03 13:57:22 +02:00
.gitignore Add memblockq buffering and absolute timer for smooth playback 2026-04-06 09:29:08 +00:00
libdroid-aidl-audio.h input support 2026-04-06 13:42:14 +00:00
Makefile Initial module-droid-aidl implementation 2026-04-05 17:14:45 +00:00
module-droid-aidl.c input support 2026-04-06 13:42:14 +00:00
README.md AI disclaimer 2026-05-03 13:57:22 +02:00

module-droid-aidl

Disclaimer: AI generated. Probably low quality and potentially with lurking issues.

PulseAudio sink module that routes audio through the Android AIDL Audio HAL via libdroid-aidl-audio.so.

Built for the Halium 16 / Ubuntu Touch port (Pixel 9a / tegu).

How it works

The module dlopen's libdroid-aidl-audio.so at load time, connects to the AIDL HAL, opens the primary output stream, and creates a PA sink matching the HAL's native sample format. An I/O thread renders audio from PulseAudio and writes it to the HAL.

Building

Requires an aarch64 cross-compiler and PulseAudio 16.1 headers (included in pulseaudio-headers/).

make CC=aarch64-linux-gnu-gcc

Installing

make install   # scp's to phone and copies into PA modules dir

Or manually:

scp module-droid-aidl.so phone:/tmp/
ssh phone "sudo cp /tmp/module-droid-aidl.so /usr/lib/pulse-16.1+dfsg1/modules/"

Then load: pactl load-module module-droid-aidl