Hal audio
-
第一步AudioFlinger
eg: AudioFlinger::PatchPanel::createAudioPatch
frameworks/av/services/audioflinger/PatchPanel.cpp
/system/lib/ibaudioflinger.so -
第二步libaudiohal
eg: DeviceHalHidl::createAudioPatch
Android P:
frameworks/av/media/libaudiohal/4.0/DeviceHalHidl.cpp
/system/lib/[email protected]
Android Q:
frameworks/av/media/libaudiohal/impl/DeviceHalHidl.cpp
/system/lib/[email protected] -
第三步impl
eg: Device::createAudioPatch
Android P:
hardware/interfaces/audio/core/all-versions/default/include/core/all-versions/default/Device.impl.h
/vendor/lib/hw/[email protected]
Android Q:
hardware/interfaces/audio/core/all-versions/default/Device.cpp
/vendor/lib/hw/[email protected] -
第四步 audio hal
eg: audio_hw.c create_audio_patch
/vendor/lib/hw/audio.primary.xxx.so