AudioHardwareInterface serves as the glue between proprietary audio drivers and the Android AudioFlinger service, the core audio service that handles all audio-related requests from applications.
Building an Audio Library
To implement an audio driver, create a shared library that implements the interface defined in AudioHardwareInterface.h
. You must name your shared library libaudio.so
so that it will get loaded from /system/lib
at runtime. Place libaudio sources and Android.mk
in vendor/acme/chipset_or_board/libaudio/
.
The following stub Android.mk
file ensures that libaudio
compiles and links to the appropriate libraries:
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := libaudio LOCAL_SHARED_LIBRARIES := \ libcutils \ libutils \ libmedia \ libhardware LOCAL_SRC_FILES += MyAudioHardware.cpp LOCAL_CFLAGS += LOCAL_C_INCLUDES += LOCAL_STATIC_LIBRARIES += libaudiointerface include $(BUILD_SHARED_LIBRARY)
Interface
Note: This document relies on some Doxygen-generated content that appears in an iFrame below. To return to the Doxygen default content for this page, click here.
AudioHardwareInterface.h File Reference
Go to the source code of this file.