audio: move google components to a subfolder

just some minor house cleaning

Signed-off-by: Curtis Malainey <cujomalainey@chromium.org>
This commit is contained in:
Curtis Malainey 2022-12-12 13:53:17 -08:00 committed by Curtis Malainey
parent 0664718a58
commit 73f6171bb3
9 changed files with 154 additions and 140 deletions

View File

@ -68,55 +68,6 @@ if(NOT CONFIG_LIBRARY)
kpb.c
)
endif()
if(CONFIG_COMP_GOOGLE_HOTWORD_DETECT)
add_local_sources(sof
google_hotword_detect.c
)
target_link_libraries(sof PRIVATE libhifi3_google_hotword_dsp_api.a)
target_link_libraries(sof PRIVATE c)
target_link_libraries(sof PRIVATE m)
endif()
if(CONFIG_COMP_GOOGLE_RTC_AUDIO_PROCESSING)
target_include_directories(sof PRIVATE ${CMAKE_SOURCE_DIR}/third_party/include)
add_local_sources(sof
google_rtc_audio_processing.c
)
if(CONFIG_GOOGLE_RTC_AUDIO_PROCESSING_MOCK)
add_local_sources(sof
google_rtc_audio_processing_mock.c
)
else()
message(INFO "Link with google_rtc_audio_processing")
target_link_directories(sof PRIVATE ${CMAKE_SOURCE_DIR}/third_party/lib)
target_link_libraries(sof PRIVATE google_rtc_audio_processing)
target_link_libraries(sof PRIVATE c++)
target_link_libraries(sof PRIVATE c++abi)
target_link_libraries(sof PRIVATE m)
target_link_libraries(sof PRIVATE c)
endif()
endif()
if(CONFIG_COMP_GOOGLE_AUDIO_POST_PROCESSING)
target_include_directories(sof PRIVATE ${CMAKE_SOURCE_DIR}/third_party/include)
add_local_sources(sof
google_audio_post_processing.c
)
if(CONFIG_GOOGLE_AUDIO_POST_PROCESSING_MOCK)
add_local_sources(sof
google_audio_post_processing_mock.c
)
else()
message(INFO "Link with google_audio_post_processing")
target_link_directories(sof PRIVATE ${CMAKE_SOURCE_DIR}/third_party/lib)
target_link_libraries(sof PRIVATE google_audio_post_processing)
target_link_libraries(sof PRIVATE c++)
target_link_libraries(sof PRIVATE c++abi)
target_link_libraries(sof PRIVATE m)
target_link_libraries(sof PRIVATE c)
endif()
endif()
if(CONFIG_COMP_SEL)
add_subdirectory(selector)
endif()
@ -155,6 +106,7 @@ if(NOT CONFIG_LIBRARY)
add_subdirectory(mfcc)
endif()
subdirs(pipeline)
add_subdirectory(google)
return()
endif()

View File

@ -179,97 +179,7 @@ config KPB_FORCE_COPY_TYPE_NORMAL
endif # COMP_KPB
config COMP_GOOGLE_HOTWORD_DETECT
bool "Google hotword detector component"
select COMP_BLOB
default n
help
Select for Google hotword detector component. It uses the Google
hotword library to do keyword detection. A language model needs to
be set using the byte control 'Hotword Model' before running the
detector.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING
bool "Google Real Time Communication Audio processing"
select COMP_BLOB
default n
help
Select for Google real-time communication audio processing. It
uses the Google real-time audio processing library to perform
echo-cancelling and other processing.
This component takes raw microphones input and playback reference
and outputs an echo-free microphone signal.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_SAMPLE_RATE_HZ
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Sample rate for Google Real Time Communication Audio processing"
default 48000
help
Sets the sample rate for the memory buffer for the Google real-time
communication audio processing.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_NUM_CHANNELS
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Number of channels to process for Google Real Time Communication Audio processing"
default 1
help
Sets the number of channels to process in the Google real-time
communication audio processing.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_NUM_AEC_REFERENCE_CHANNELS
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Number of AEC reference channels for Google Real Time Communication Audio processing"
default 2
help
Sets the number AEC reference channels in the Google real-time
communication audio processing.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_MEMORY_BUFFER_SIZE_BYTES
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Memory buffer size for Google Real Time Communication Audio processing"
default 200000
help
Sets the size of the memory buffer for the Google real-time
communication audio processing.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_ECHO_PATH_DELAY_MS
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Echo path delay for Google Real Time Communication Audio processing"
default 44
help
Sets the echo path delay to use for the Google real-time communication
audio processing.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_MIC_HEADROOM_LINEAR
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Microphone headroom for Google Real Time Communication Audio processing"
default 4
help
Sets the microphone headroom for the Google real-time communication audio
processing.
config GOOGLE_RTC_AUDIO_PROCESSING_MOCK
bool "Google Real Time Communication Audio processing mock"
default n
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
help
Mock Google real-time communication audio processing.
It allows for compilation check and basic audio flow checking.
config COMP_GOOGLE_AUDIO_POST_PROCESSING
bool "Google playback audio post processing"
default n
help
Select for Google playback audio post processing. It uses the Google
audio post-processing library to apply EQ and other processing.
config GOOGLE_AUDIO_POST_PROCESSING_MOCK
bool "Google playback audio post processing mock"
default n
depends on COMP_GOOGLE_AUDIO_POST_PROCESSING
help
Mock Google playback audio post processing.
It allows for compilation check and basic audio flow check.
rsource "google/Kconfig"
config COMP_SEL
bool "Channel selector component"

View File

@ -0,0 +1,55 @@
# SPDX-License-Identifier: BSD-3-Clause
if(NOT CONFIG_LIBRARY)
if(CONFIG_COMP_GOOGLE_HOTWORD_DETECT)
add_local_sources(sof
google_hotword_detect.c
)
target_link_libraries(sof PRIVATE libhifi3_google_hotword_dsp_api.a)
target_link_libraries(sof PRIVATE c)
target_link_libraries(sof PRIVATE m)
endif()
if(CONFIG_COMP_GOOGLE_RTC_AUDIO_PROCESSING)
target_include_directories(sof PRIVATE ${CMAKE_SOURCE_DIR}/third_party/include)
add_local_sources(sof
google_rtc_audio_processing.c
)
if(CONFIG_GOOGLE_RTC_AUDIO_PROCESSING_MOCK)
add_local_sources(sof
google_rtc_audio_processing_mock.c
)
else()
message(INFO "Link with google_rtc_audio_processing")
target_link_directories(sof PRIVATE ${CMAKE_SOURCE_DIR}/third_party/lib)
target_link_libraries(sof PRIVATE google_rtc_audio_processing)
target_link_libraries(sof PRIVATE c++)
target_link_libraries(sof PRIVATE c++abi)
target_link_libraries(sof PRIVATE m)
target_link_libraries(sof PRIVATE c)
endif()
endif()
if(CONFIG_COMP_GOOGLE_AUDIO_POST_PROCESSING)
target_include_directories(sof PRIVATE ${CMAKE_SOURCE_DIR}/third_party/include)
add_local_sources(sof
google_audio_post_processing.c
)
if(CONFIG_GOOGLE_AUDIO_POST_PROCESSING_MOCK)
add_local_sources(sof
google_audio_post_processing_mock.c
)
else()
message(INFO "Link with google_audio_post_processing")
target_link_directories(sof PRIVATE ${CMAKE_SOURCE_DIR}/third_party/lib)
target_link_libraries(sof PRIVATE google_audio_post_processing)
target_link_libraries(sof PRIVATE c++)
target_link_libraries(sof PRIVATE c++abi)
target_link_libraries(sof PRIVATE m)
target_link_libraries(sof PRIVATE c)
endif()
endif()
return()
endif()

97
src/audio/google/Kconfig Normal file
View File

@ -0,0 +1,97 @@
# SPDX-License-Identifier: BSD-3-Clause
menu "Google components"
config COMP_GOOGLE_HOTWORD_DETECT
bool "Google hotword detector component"
select COMP_BLOB
default n
help
Select for Google hotword detector component. It uses the Google
hotword library to do keyword detection. A language model needs to
be set using the byte control 'Hotword Model' before running the
detector.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING
bool "Google Real Time Communication Audio processing"
select COMP_BLOB
default n
help
Select for Google real-time communication audio processing. It
uses the Google real-time audio processing library to perform
echo-cancelling and other processing.
This component takes raw microphones input and playback reference
and outputs an echo-free microphone signal.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_SAMPLE_RATE_HZ
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Sample rate for Google Real Time Communication Audio processing"
default 48000
help
Sets the sample rate for the memory buffer for the Google real-time
communication audio processing.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_NUM_CHANNELS
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Number of channels to process for Google Real Time Communication Audio processing"
default 1
help
Sets the number of channels to process in the Google real-time
communication audio processing.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_NUM_AEC_REFERENCE_CHANNELS
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Number of AEC reference channels for Google Real Time Communication Audio processing"
default 2
help
Sets the number AEC reference channels in the Google real-time
communication audio processing.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_MEMORY_BUFFER_SIZE_BYTES
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Memory buffer size for Google Real Time Communication Audio processing"
default 200000
help
Sets the size of the memory buffer for the Google real-time
communication audio processing.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_ECHO_PATH_DELAY_MS
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Echo path delay for Google Real Time Communication Audio processing"
default 44
help
Sets the echo path delay to use for the Google real-time communication
audio processing.
config COMP_GOOGLE_RTC_AUDIO_PROCESSING_MIC_HEADROOM_LINEAR
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
int "Microphone headroom for Google Real Time Communication Audio processing"
default 4
help
Sets the microphone headroom for the Google real-time communication audio
processing.
config GOOGLE_RTC_AUDIO_PROCESSING_MOCK
bool "Google Real Time Communication Audio processing mock"
default n
depends on COMP_GOOGLE_RTC_AUDIO_PROCESSING
help
Mock Google real-time communication audio processing.
It allows for compilation check and basic audio flow checking.
config COMP_GOOGLE_AUDIO_POST_PROCESSING
bool "Google playback audio post processing"
default n
help
Select for Google playback audio post processing. It uses the Google
audio post-processing library to apply EQ and other processing.
config GOOGLE_AUDIO_POST_PROCESSING_MOCK
bool "Google playback audio post processing mock"
default n
depends on COMP_GOOGLE_AUDIO_POST_PROCESSING
help
Mock Google playback audio post processing.
It allows for compilation check and basic audio flow check.
endmenu