echo-cancel: Support old webrtc-audio-processing library

PulseAudio requires webrtc-audio-processing-1 >= 1.0 since v17.0, but
Debian hasn't managed to package that version yet. The dependency is
only used for the echo-cancel module, and the API exposed by the webrtc
component doesn't appear to be changed.

It looks like we can revert the changes to allow building with an older
version, but it would be better to have the code support both versions
to make it easier to transition from early library versions to later
versions. As a step towards that, check in an older copy of the webrtc
component from commit b16b107171, and build with that when we have the
old library version.

Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
This commit is contained in:
Alper Nebi Yasak 2024-10-25 02:45:32 +03:00
parent 3e2bb8a1ec
commit 681ab57f17
3 changed files with 610 additions and 4 deletions

View file

@ -726,9 +726,15 @@ if get_option('daemon')
cdata.set('HAVE_SOXR', 1)
endif
webrtc_dep = dependency('webrtc-audio-processing-1', version : '>= 1.0', required : get_option('webrtc-aec'))
webrtc_dep = dependency('webrtc-audio-processing-1', version : '>= 1.0', required : false)
if webrtc_dep.found()
cdata.set('HAVE_WEBRTC', 1)
cdata.set('HAVE_WEBRTC1', 1)
else
webrtc_dep = dependency('webrtc-audio-processing', version : ['>= 0.2', '< 1.0'], required : get_option('webrtc-aec'))
if webrtc_dep.found()
cdata.set('HAVE_WEBRTC', 1)
endif
endif
systemd_dep = dependency('systemd', required : get_option('systemd'))