Description Of Work
curation of topics from : List of prioritized topics for the Audio HAL
PoC github repo : android-external-audio-mixing repository
hint about progress steps
- define the related sw component affected by changes
- define the interfaces (details discussed between those who change the components)
- define which tasks require a real HW and which ones can be deployed on emulator (which part of the code is HW dependent)
Components overview
Host and emulator interactions
# | Component - main topics | Owners | JIRA sub-items | Implementation details |
---|---|---|---|---|
raw streams |
| |||
13 | Bluetooth Device Integration in Android System.As a user I have a BT headset (with speakers, microphone, control buttons, or even the car itself, etc.). I should be able to use it in an Android System. |
| ||
08 |
| |||
| ||||
09 |
|
Milestones
# | Summary | Due Date | Content Work Packages | Details Comments |
---|---|---|---|---|
1 |
| |||
2 |
| |||
3 |
|
Additional build and run info
This info is to be moved in the repo readme, the current readme is not at the root of the repo to avoid aosp directory pollution, therefore this info will move once a new structure of repo is created with manifest and new readme
|
repo init -u https://android.googlesource.com/platform/manifest -b android-10.0.0_r40 |
repo sync |
source build/envsetup.sh |
lunch |
m |
Brainstorming about breakdown rework
Topics and priorities
1 ) Networked audio devices - AVB
2 ) cross ECU interactions (remote control)
3 ) Audio effects
4) interactions with external server
Use cases
1) external Amplifier, controlled by Android only (cross ECU interface used by headunit only)
2) interact of an Android Audio ECU with the rest of the audio system other ECUs (e.g. remote control - e.g. non Android system)
3) interact with the Audio System from a server
Relations to existing work in other SIG
CVII : Common Vehicle Interface Initiative
VSS : Vehicle Signal specification
VSC : Vehicle Service Catalogue (list of interfaces)
Audio and VSS, data interfaces,...
common model for data (call functions with params, services, interfaces, franca,...)
-no dealing with streaming data, rather simply connection points urls exchange
-can we define similar things to audio e.g. currently played track, volume,... ?
-requests to add media in VSS
-standardized interface for audio/media streaming, renewed interest by Hyundai
- complex question, OEM => standardize / Netflix => App custom standard
- if possible to add info in VSS
- different scope from cross ECU interfaces
-prevent fragmentation by collecting a survey about state of the art
- MPRIS dbus standard
1) Bluetooth : the AVRCP allows to control
2) Project Mode : / Audroid Auto - has virtual key input generator (volume up/down,...)
3) the same infrastructure from Project mode : can be used to inject the same as if it was a projected mode
4) Automotive : specific vehicle HAL service vehicle bus and converts in Android key codes
Android input system
Q: if volume key up/down limited to current volume ?
A: in automotive concept of volume groups which has the focus
Q: If the same interface include the audio settings
A: no intended in that interface
A: done through the audio effects HAL which is manufacturer specific
_______________________________________________________
mention as info : MQTT Pub/Sub mechanism
Remote topic split in two :
- play pause,...
- effects, calibration,...
_______________________________________________________
Q: What to develop next in the project
- Organization of the Android build
=> scripting the build ongoing, testing,...
Q: interest in AVB networked devices ?
- control / routing
- available AVB in automotive / professional audio
- https://github.com/Avnu/OpenAvnu
- Android (no many echos about AOSP/AVB)
- NXP/Renesas/ : board has AVB support
- Hikey 960 does not support AVB
- HW mandatory, not only low cost but automotive HW
- Android 11 support for Dragonboard
=> TODO organise an AVB introduction next week 26/11/2020
(TSN wider scope : https://en.wikipedia.org/wiki/Time-Sensitive_Networking)
Q: Any close to Android transport protocol or if it's part of the applications
A: usually part of the applications
A: approach interfacing Android system from outside like any Android app would do
=> CVII common standard initiative