Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for "audio patch" - when a devicePort connects to another devicePort #118

Open
peat-psuwit opened this issue Dec 8, 2022 · 2 comments

Comments

@peat-psuwit
Copy link

Devices such as Volla Phone 22 seems to have an audio policy config, in which routes do connect a devicePort to another devicePort e.g. from Voice Call In to Earpiece. This seems to make droid-util.c conclude that Internal data structures are confused, thus crashing itself [1].

This, however, seems to be something Android support. I see a method called supportsPatch() [2] which seems to check if 2 ports are connected in a route. This then is called by a method called createAudioPatchInternal() [3], which leads me to believe that this is called "audio patch".

I have a patch which currently just skip (with warning) any such route, but I'm not sure what are plan for developers here. Thus, this issue.

The device's audio_policy_configuration.xml is attached.

[1] https://github.com/mer-hybris/pulseaudio-modules-droid/blob/master/src/common/droid-util.c#L277
[2] https://cs.android.com/android/platform/superproject/+/master:frameworks/av/services/audiopolicy/common/managerdefinitions/src/HwModule.cpp;l=242;drc=a9c339200bd4e6a81cacbaf63d59a9221de47dbb
[3] https://cs.android.com/android/platform/superproject/+/master:frameworks/av/services/audiopolicy/managerdefault/AudioPolicyManager.cpp;l=4349;drc=a9c339200bd4e6a81cacbaf63d59a9221de47dbb

@peat-psuwit
Copy link
Author

@piggz
Copy link

piggz commented May 23, 2023

This also affects the Volla X23
ping @jusa

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants