audio: select the pipewire backend explicitly and ban the pulse one
Full-system audit findings: without an explicit provider selection the image installed real PulseAudio (Plasma Mobile hard-path), which claims the card and ships a wireplumber fragment disabling hardware.audio - zero sinks forever. Mirror the dev phone's world: pipewire backend meta + pipewire-pulse + echo-cancel in extra_packages, pulse meta banned via apk conflict in fp6-device-tweaks. The two hand-made /etc audio fragments (wireplumber no-ACP rule, AEC pair for VoLTE speakerphone) move into soc-fairphone-fp6-audio. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
ff69f4d913
commit
30f2778fc4
5 changed files with 58 additions and 3 deletions
30
aports/device/soc-fairphone-fp6-audio/50-echo-cancel.conf
Normal file
30
aports/device/soc-fairphone-fp6-audio/50-echo-cancel.conf
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# Acoustic echo cancellation for VoLTE speakerphone calls (journal/ims.md s43).
|
||||
# Creates a virtual pair: ec_sink (play here; forwarded to the speakers and
|
||||
# used as the AEC reference) and ec_source (mic with the speaker signal
|
||||
# subtracted, WebRTC AEC). capture/playback are pinned to the hardware nodes
|
||||
# so making ec_* the defaults cannot loop the module into itself.
|
||||
context.modules = [
|
||||
{ name = libpipewire-module-echo-cancel
|
||||
args = {
|
||||
library.name = aec/libspa-aec-webrtc
|
||||
source.props = {
|
||||
node.name = "ec_source"
|
||||
node.description = "Echo-cancelled microphone"
|
||||
}
|
||||
sink.props = {
|
||||
node.name = "ec_sink"
|
||||
node.description = "Echo-cancelled speakers"
|
||||
}
|
||||
capture.props = {
|
||||
node.name = "ec_capture"
|
||||
target.object = "alsa_input.platform-sound.capture.1.0"
|
||||
node.passive = true
|
||||
}
|
||||
playback.props = {
|
||||
node.name = "ec_playback"
|
||||
target.object = "alsa_output.platform-sound.playback.0.0"
|
||||
node.passive = true
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
Loading…
Reference in a new issue