PoC Milestones and Work Breakdown

List of prioritized topics for the Audio HAL

Multiple-zone audio management - System Level Audio

Next Meeting - Thursday 30 July - 11:30am CEST (AUDIO_HAL_CW31)

Webex link - meeting number 297 637 101 
passcode XCtdZmvs248
via phone pass is 92839687

Dial by your location: find your local number here

Agenda

Thursday 16 July - 11:30am CEST (AUDIO_HAL_CW30)

Participants

Philippe Robin Suhasini Raghuram Unknown User (wassim.filali) Unknown User (niskandar) Stephen Lawrence Piotr Krawczyk

Minutes

Going through the previous todo list:

Going through the Jira tickets (comment is in the tickets already)

Topic about connecting the emulator to a PC

Discussion about the emulator and abstraction

Gathered Todo's:

Thursday 16 July - 11:30am CEST (AUDIO_HAL_CW29)

Participants

Philippe Robin Gunnar Andersson Unknown User (bartoszbialek) Suhasini Raghuram Unknown User (wassim.filali) Unknown User (niskandar) Stephen Lawrence

Minutes

Alternative board for Suhasini, any upadte on that matter?

Main topic: Implementation, proof of concept and Demo going through the issues

Hardware discussion followed:

Discussion about the current emulator:

Hardware requirement discussion:

Demo Next week:

Gathered Todo's:

Thursday 25 June - 11:30am CEST (AUDIO_HAL_CW26)

Participants

Philippe Robin Gunnar Andersson Piotr Krawczyk Unknown User (bartoszbialek) Henric Carlsson Suhasini Raghuram Unknown User (wassim.filali) Unknown User (niskandar)

Minutes

Should the minutes be more like a transcript?

Going through the previous tasks

Going through a tutorial of Jira

Going through a few stories to add them to the current sprint

Setting up the environment

Gathered Todo's:

Thursday 18 June - 11:30am CEST (AUDIO_HAL_CW25)

Participants

Unknown User (niskandar) Gunnar Andersson Unknown User (zafirulhassan) Piotr Krawczyk Unknown User (bartoszbialek) Unknown User (zafirulhassan)

Minutes

Looking at the history, the best course of action here is to go through the Jira tickets and assign them to start working on them.

First Story

Going through other stories

Platforms to use: Android development platform. We can also use an emulator.

Gathered Todo's:

Thursday 04 June - 11:30am CEST (AUDIO_HAL_CW23)

Participants

Unknown User (wassim.filali) Philippe Robin Gunnar Andersson Piotr Krawczyk Unknown User (bartoszbialek) Henric Carlsson Stephen Lawrence Suhasini Raghuram Unknown User (niskandar)

Minutes

Let's start by going through the points that we have gathered last time in PoC Milestones and Work Breakdown.

Our task is about breaking down the topics that we discussed last week:

Going through the points to break them down here. Notes added directly in Description of work table

Gathered Todo's:

Wednesday 20 May - 11:30am CEST (AUDIO_HAL_CW22)

Participants

Unknown User (wassim.filali) Unknown User (niskandar) Philippe Robin Gunnar Andersson Piotr Krawczyk Unknown User (bartoszbialek) @Henric Unknown User (zafirulhassan)

Minutes

Introduction to members and new member Zafirul

Went through the minutes of last week and the gathered TODOs

Hardware clarification

Discussion of PoC Milestones and Work Breakdown

Gathered Todo's:

Wednesday 20 May - 11:30am CEST (AUDIO_HAL_CW21)

Participants

Suhasini Raghuram Unknown User (wassim.filali) Unknown User (niskandar) Philippe Robin Gunnar Andersson Piotr Krawczyk Unknown User (bartoszbialek) @Henric

Minutes

Debriefing of the virtual summit

Discussion about hardware

Gathered Todo's:

Thursday 14 May - 9am-12am CET - Virtual Technical Summit Workshop

Minutes

Thursday 7 May - 11:30am CET (AUDIO_HAL_CW19)

Participants

Suhasini Raghuram Unknown User (wassim.filali) Unknown User (niskandar) Philippe Robin Andrii Chepurnyi Harald Bartholomae Ruslan Shymkevych Gunnar Andersson Piotr Krawczyk @Henric

Minutes

Going through the presentation of Wassim

Summit next week discussion

Gathered Todo's:

Thursday 30 April - 11:30am CET (AUDIO_HAL_CW18)

Participants

Philippe RobinSuhasini Raghuram Unknown User (wassim.filali) @Henric Ruslan Shymkevych

apologies: Piotr Krawczyk Unknown User (bartoszbialek)

Minutes

Review of Ruslan's email of 23 April - archive

Dynamic routing

Proof-of-concept code

Virtual technical summit preparation

Gathered Todo's:

Thursday 23 April - 11:30am CET (AUDIO_HAL_CW17)

Participants

Philippe Robin Piotr Krawczyk Unknown User (bartoszbialek) Suhasini Raghuram Unknown User (niskandar) Unknown User (wassim.filali) @Henric

Minutes

Updates of the tasks done from last week: Wassim, Piotr, Nadim

Project proposal Henric: User Input Distribution and Coordination, if it's needed maybe we can add it to the list of prioritized topics.

Philippe two more points:

Gathered Todo's:

Thursday 16 April - 11:30am CET (AUDIO_HAL_CW16)

Participants

Philippe Robin Gunnar Andersson Piotr Krawczyk Unknown User (bartoszbialek) Suhasini Raghuram Ruslan Murtazin Unknown User (niskandar) Unknown User (wassim.filali) Andrii Chepurnyi @Henric

Agenda
Minutes

Changes done in this page Android and System Level Audio:

Raw Streams discussion started

Input streams

Presentation on the status of the POC from Piotr (presentation is attached and will be updated)

Gathered Todo's:

Thursday 09 April - 11:30am CET (AUDIO_HAL_CW15)

Participants

Philippe Robin Gunnar Andersson Piotr Krawczyk Unknown User (bartoszbialek)Andrii Chepurnyi@Henric Suhasini Raghuram Stephen Lawrence

apologies: Wassim, Nadim

Agenda
Minutes

list of gathered topics on multi-zone audio management

abstract of the GENIVI virtual tech summit AASIG Audio HAL workshop

"AASIG AAL abstract Audio management is one important aspect and constraint for the utilization of Android Automotive for the IVI unit. During Q1, 2020, the AASIG AUDIO HAL project team has finalized the list and priorities of audio management related topics. The team has decided to investigate the software architectural design for audio multi-zone management. The following design options are investigated, (a) all audio management is inside Android Automotive, and AA manages all sinks & sources and (b) all audio management is outside Android Automotive. The team is implementing proof-of-concepts to experiment the design options. The AASIG AUDIO HAL project team will present a status report of the proof-of-concept implementation and explain the design choices made. The following next steps will be then comprehensively debated:

Thursday 02 April - 11:30am CET (AUDIO_HAL_CW14)

Participants

Philippe Robin Gunnar Andersson Piotr Krawczyk Unknown User (bartoszbialek) Unknown User (wassim.filali) Andrii Chepurnyi Unknown User (niskandar) @Henric Suhasini Raghuram

Agenda
Minutes

Slides of Wassim

Piotr: what do you mean by vendor partition

Piotr: audio sink with headphones, what did you mean?

Piotr: this is actually something we can work on (refering to the BT case)

Wassim: we can also think about it that: what questions should be done where

Discussion about the page followed to define the new page in the wiki

Piotr: Major problem for common HAL is how to we get raw streams

Nadim: What about the point Audio manager update?

Decisions
To proceed in our project of Android and System Level Audio we need several steps:
  1. Gather topics or questions or features that we would like to check whether they fit in the two strategies
  2. Analyze the topics in both strategies to see if they are feasible, if they are easy to implement, etc.
  3. Conclude GENIVI recommendation from the POCs made: form a hybrid solution.
Starting point would be to check if we can access the raw streams from AA
Next Agenda (for AUDIO_HAL_CW15)

Thursday 26 March - 11:30am CET

Participants

Agenda

Minutes of AUDIO_HAL_CW13

how to control multizone from the system service

GENIVI Spring Virtual Technical Summit

Decisions taken in AUDIO_HAL_CW13

Thursday 19 March - 11:30am CET

Participants

Agenda

Minutes

GENIVI Audio Manager Q&A

Thursday 12 March - 11:30am CET

Participants

Agenda

Minutes

GENIVI Audio Manager

PoC design

Project workplan

Thursday 5 March - 11:30am CET

Participants

Agenda

Minutes

Roundtable

GENIVI Audio Manager

Discussion on the Audio HAL project workplan

Thursday 27 February - 11:30am CET

Participants

Agenda

Minutes

Networked audio devices

Gunnar: Le'ts start with the networked audio devices overview.  It can be good input information before discussing PoC details
Suhasini presents her slide deck (link)

Wassim: When you say streams, (and the red lines in the picture), what does it mean?
Suhasini: It represents a network connection of some type (any type).  Streams, I mean an audio stream logically from one device to another here.  On the next slide there is a mapping shown.

... mapping slide
... Automotive Audio Bus (A2B) slide.
A2B is an example of single master, multiple slaves setup.
It is routed according to your configuration.
You can for example configure that mic input must go to head unit.  Protocol takes care of it according to configuration.
Problem: Physically speaking the head unit is connected to only one device.  The system views it as a single device.
On the logical picture, one stream is connecting to more than one receiver.  Viewing as a separate device is useful but...

Android 10 features has Audio Device Out but, but it's not clear if we can address (receiving nodes) as we want.

Wassim: One device visible but many logical channels...

Suhasini: Problem 2 could be diagnostics support.  Checking if the node is in an OK state...

Control path should be able to support more than volume.  E.g. a series of diagnostic routines that can be initiated.
ALSA has minimal support also for this.

Wassim: ALSA supports well the (audio) data flow but not control.  GENIVI audio manager has the primary purpose to define such interfaces.  (It is not handling the audio stream directly).

The drivers (from silicon vendor) might still be implement the control function itself.

Wassim: The vendor needs to provide a HAL for those control functions.  If Android defined the interface, this might be implemented.

Summary:  View each device stream separately inside Android.

Discussion yields that we should perhaps handle each stream  separately, in addition to devices.  (sink and source abstraction)
Agree that each single stream could have types (mono, stereo, multi-channel) but we don't expect to need to handle reconfigure channels.

Gunnar: In addition to differentiating the individual receiving devices I expect we need to consider that one or several streams per device?

... how to implement additional features ...

Wassim: GAM for example has a generic support for "Properties" from user to sink, and "Notifications" from sink to user. 

Gunnar: Note: "user" here means the controlling software, either the application or the main system HMI that is defining the behavior we want to have from the audio system. 
Wassim agrees.

Discussion on other needed control interfaces... example:  firmware update?

More discussion..,

Suhasini:  In order to transfer a certain stream e.g. phone input to some output, this in the end needs to be configured in hardware...
Initial configuration will be created by the vendor, but some kind of interaction with the driver is needed.

Wassim: Look at open documentation to AudioManager.  The routing plugin abstracts the logic of this.  The implementation is doing the connection between hardware specifics and the generic interface.
I have seen that Android also allows some kind of custom bus implementation, but have not yet seen if this solves it.
Bartosz (Harman) - short introduction.  Android engineer, not specifically focused on audio however.  Based in Poland.

Action (all):  Read up on the architecture and interfaces of the GENIVI Audio Manager, since it was designed to make a framework for exactly this.  Docs: https://genivi.github.io/AudioManager/
The ideas / design / APIs should be reusable.  Possibly some code also, eventually.

Stephen: Are those docs also covering plugins?

Gunnar: To further understand plugins, try looking at code of the plugins: https://github.com/GENIVI/AudioManagerPlugins   (The code of the AM daemon is at https://github.com/GENIVI/AudioManager/
)

Stephen finds another slide deck describing routing-adapter.

PoC planning

We had 2 main topics: Global Effects API and more flexible audio channel routing.
Gunnar: OK so the discussion we had before led forward in the audio channel routing topic.  What about Global Effects?

Bartosz (Tieto) reports that the plans for the next Android version include new interfaces that seem likely to solve the global-effects problem. 
It is possible therefore that we do not need to work out solutions for global effects: LINK 1
, LINK 2, LINK 3

Adjourned at 12:25.

Thursday 13 February - 11:30am CET

Participants

Agenda

Minutes

Overview of last week's F2F outcome

Call for participation

Audi HAL call schedule

Audio HAL F2F Meeting 4-5 February

Minutes&Participants

F2F meeting organization

23 January 2020

Participants

Minutes

upcoming F2F meeting

AOB

19 December 2019

Participants

Minutes

upcoming F2F meeting for the Vehicle HAL project

Review of the list of prioritarized topics (continuation)

list of prioritarized topics

Next call

12 December 2019

Participants

Minutes

Roundtable

Review of the list of prioritarized topics

F2F opportunity in early Q1/2020

Next call

4 December 2019

Participants

Minutes

Introduction

Configuration & Common Audio HAL

Next call

F2F meeting opportunity

21 November 2019 - Project Scoping  - Second Call

Participants

Minutes

Introduction

Introduction to Audio HAL

Gathering of list of topics for the Audio HAL project

Adjourned: 18:20 CET

7 November 2019 - Project Scoping  - First Call

Participants

Minutes

Next steps

Next call