AudioFlinger: Keep track of music effect thread when primary output is unavailable
Bug: 307216402
Test: make
Audio Policy Manager may temporary run without primary output.
If music effects are instantiated, APM will lose track of music
output (may point to invalid io handle of primary output).
AF will save these effects on first playback thread.
Thus, these music effects become impossible to be moved back to
music playback thread.
This CL fixes this by:
-using chain parking mecanism in audio flinger when output
hosting session mix is closed
-fixing session mix creation if APM has temporarily no output:
in this case, AudioFlinger will use the first available output to host
output mix effect
-enhancing moveEffect function to check in the orphan chains if
the source output is not found
-enhancing moveEffect function to check among other outputs
when source is not found to find the output mix session.
Signed-off-by: Francois Gaffie <francois.gaffie@renault.com>
Change-Id: I7690aab62d6dabc6351e7b283810bdcaf92bb3de
Loading
Please register or sign in to comment