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.
Solid elements represent Android blocks and dashed elements represent partner-specific blocks.
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
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)
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.