...
Multiple-zone audio management - System Level Audio
Next Meeting - Thursday
...
10 December 2020 - 11:30am CET (AUDIO_HAL
...
CW50)
Click to Join Webex meeting
...
- Meeting number (access code): 297 637 101
- Meeting password: XCtdZmvs248
Or join the meeting by phone with
- Access code: 297 637 101
- Meeting password: 92839687
Agenda
- Continuation of the Network Audio Synchronaztion session
Or join the meeting by phone with
- Access code: 297 637 101
- Meeting password: 92839687
Agenda
- Continuation with Network Audio Synchronization. Next steps.
Anchor | ||||
---|---|---|---|---|
|
Participants
Gunnar Andersson Philippe Robin Piotr Krawczyk Unknown User (wassim.filali) Suhasini Raghuram Stephen Lawrence Mohan Karthik Unknown User (niskandar)
Minutes
Continuing the session about Network Audio Synchronization and answering questions
- Question: is it possible to use AVB over standard Network adapter without HW support?
- No, not for high fidelity Audio automotive or pro equipment
- Question: what is the PTP precision?
- Theoratically it's 5ns but 5ns is not needed
- in 48 kHz sample, we would need a sample every 21us → to be out of sync we would consider 1-2 sample misses → 50us difference is then out of sync for 48 kHz sample.
- so if we can achieve a PTP precision of 5us then it's already very good.
- Question: do we need actually the 5ns?
- let's say we work with a packet of 6 samples, each sample is 21us → time of each packet is ~125us
- 5us is around 3% of overall observation so there will be jitter
- and we can calculate a tradeoff
- Question: Dilemma Latency vs Accuracy
- For example: user clicks on button, beep sound should be heard.
- but between interrupt and packet sending, the OS would add more delay (becaues the interrupts cannot send packets directly)
- so to reach the amplifier, the packet needs 3 ms to arrive
- But it can be that the amplifier is still processing another packet because the other packet is big → this creates latency
- but sending big packets also means that we can pack many samples in the packet and this would bring us more accuracy because the samples in the packet would have correct timing
- so it's a tradeoff between packet size and latency
- This is a big problem for Real Time systems such as:
- AEC - ENC (voice cancellation, noise reduction)
- What Latency would we need?
- for instrument 2ms
- smartphone playing 10ms
- streaming 1s
- phase manipluation of the speakers in different audio zones 1ms
- Lip sync? is the latency here not needed?
- here we divide the problem into two parts:
- 1: start of the video after user clicks: 500ms → this is enough time for the SW to synchronize video and audio
- 2: during the video and audio playing and user plays forwards or backwards
- 3: Humans to notice the audio, video difference: 20-40ms
- Question what is the top latency we can achieve in Android?
- 10ms in considered very good
- Latency is latency of transmitter + latency of network + latency of receiver
- For Example a class A limitation is 2ms P2P assuming a maximum of 7 network hubs
- But this is done with ovservation test so no real processing done in transmitter or receiver
- Question: PTP precision again
- software can be delayed regarless of the clock. so the bigger problems are not in the PTP precision:
- HW support: jitter of 5ns
- SW layer support (protocols on top of PTP: us jitter
- OS support: ms jitter
- Question: next steps? what would be the next steps regarding the SW? what to chose for the prototype?
- A good starting point is Open Avenue
- Linux AVB online documents can be found here (https://tsn.readthedocs.io/avb.html)
- Linux ptp stack (https://github.com/openil/linuxptp)
Anchor | ||||
---|---|---|---|---|
|
Participants
Gunnar Andersson Philippe Robin Piotr Krawczyk Unknown User (wassim.filali) Johan Suhasini Raghuram Stephen Lawrence Mohan Karthik Chris Simmonds Unknown User (niskandar)
Minutes
Wassim giving a session about Network Audio Synchronization (many additional information came from Mohan Karthik)
...
- By implementing the PTP protocol (Precision Time Protocol) we could synchronize the clocks inside the audio system.
- for example Tutorial on Time-Synchronization for AAA2C based onIEEE Std 802.1AS™-2011 is more explained.
- The main idea is
- the sender and receiver should know what is the delta time between them
- This will allow them to synchronize the packages sent
- The PTP would allow the calculation of the delta time by sending specific values within the packages for the sender and receiver to use
- PTP however does not:
- prevent problems with Latency
- prevent problems caused by Jitter
provide a unified clock for the whole network. Stephen Lawrence : thank you for linking the correction: PTP master/slave clock sync with redundancy
- So another solution on top of PTP needs to be added to solve the other issues.
...
- Clock Recovery
- If I just sync my clock, I would lose the samples that were supposed to be playing now (already passed) → leads to cut in the sound
- Solution: Clock recovery not clock sync
- This means that we slow down or make the receiver's clock faster in progressively in order not to loose the samples, until the clocks are synchronized.
- Here we talk about a Skew in the clocks
- Resampling
- What if the clocks cannot be synchronized?
- Then we can do a resampling which will take the sample from the sender and resample it to the resceiver's clock
- This is however a very hard subject and there is currently a quest for the perfectest resampler
- This is caused by the new harmonies created by the resampling or in general the distortion of the original signal
- It also needs a lot of CPU power to be done
- Q&A: Why do I need to resample for example in the case of an amplifier, why can't I just make the playrate slower or faster?
- There is no market solution (cheap and easy) to change the frequency of the amplifier because of the complixty of the problem
- Usually all amplifiers are set at a certain frequency and there is no dynamic or adaptable playing rate
- Jitter as explained in Wikipedia
- So PTP does not solve the jitter problem, how can we solve it then?
- When we say jitter in this context we mean clock differences below 5ns.
- So PTP synchonizes the clocks up to 5ns, any difference below that is jitter.
- Actually the receiver would recover the clock by using the "presentation timestamp or PTS"
- In automotive domain, we mostly use a second layer on top of PTP → IEEE 1722-2016 - IEEE Standard for a Transport Protocol for Time-Sensitive Applications in Bridged Local Area Networks
- And we also use Qab Qav to restrict the emission (Mohan Karthik , Unknown User (wassim.filali): Can you please expand this point, I didn't record it correctly. And please add a link about the Qab )
- a real dilemma is the accuracy vs latency problem (Unknown User (wassim.filali) : could you please expand this point?)
Side discussion: AVB (Audio Video Bridging)
...
Anchor | ||||
---|---|---|---|---|
|
Participants
Gunnar Andersson Philippe Robin Piotr Krawczyk Unknown User (wassim.filali) Unknown User (niskandar)
Minutes
Going through the list of prioritized topics:
...
Thursday - 5 November - 11:30am CET
Participants
Gunnar Andersson Philippe Robin Stephen Lawrence Suhasini Raghuram, Unknown User (wassim.filali), Chris Simmonds
Minutes
Review of the list of prioritarized topics
...
Thursday - 1 October - 11:30am CEST
Participants
Gunnar Andersson Philippe Robin Stephen Lawrence Suhasini Raghuram Henric Carlsson
apologies: Unknown User (wassim.filali) Unknown User (niskandar)
Minutes
Review the work breakdown structure and update it to get a shared knowledge of the project status before preparing the agenda of the AHAL working session at the tech summit
...
Anchor | ||||
---|---|---|---|---|
|
Participants
Gunnar Andersson Philippe Robin Stephen Lawrence Unknown User (wassim.filali) Suhasini Raghuram Henric Carlsson Unknown User (niskandar)
Minutes
Updates from last meeting:
...
Thursday 17 September - 11:30am CEST
Participants
Gunnar Andersson Stephen Lawrence Henric Carlsson Piotr Krawczyk Unknown User (wassim.filali)
Minutes
Discussion on demo implementation status
Thursday 10 September - 11:30am CEST
Participants
Gunnar Andersson Stephen Lawrence Henric Carlsson Piotr Krawczyk Unknown User (wassim.filali) Philippe Robin
Minutes
Discussion on configuration & demo building & integration of the emulator project, followed by Jira review
Anchor | ||||
---|---|---|---|---|
|
Participants
Gunnar Andersson Stephen Lawrence Henric Carlsson Piotr Krawczyk
Minutes
Discussion on feature content for MS3 demo (MS3 = virtual tech summit scheduled on October 26-30) Gunnar Andersson can you add the notes you took during the call ? thanks
...
Anchor | ||||
---|---|---|---|---|
|
Participants
Gunnar Andersson Stephen Lawrence Henric Carlsson Piotr Krawczyk Unknown User (niskandar)
Minutes
Going through the previous minutes of the meeting.
...
Anchor | ||||
---|---|---|---|---|
|
Participants
Suhasini Raghuram Gunnar Andersson Stephen Lawrence Unknown User (niskandar)
Minutes
Going through the previous minutes of the meeting.
...
Anchor | ||||
---|---|---|---|---|
|
Participants
Philippe Robin Suhasini Raghuram Unknown User (wassim.filali) Unknown User (niskandar) Stephen Lawrence Piotr Krawczyk
Minutes
Going through the previous todo list:
...
Anchor | ||||
---|---|---|---|---|
|
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?
...
Anchor | ||||
---|---|---|---|---|
|
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?
...
Anchor | ||||
---|---|---|---|---|
|
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.
...
Anchor | ||||
---|---|---|---|---|
|
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.
...
Anchor | ||||
---|---|---|---|---|
|
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
...
Anchor | ||||
---|---|---|---|---|
|
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
...
Anchor | ||||
---|---|---|---|---|
|
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
...
AnchorAUDIO_HAL_CW18 AUDIO_HAL_CW18
Thursday 30 April - 11:30am CET (AUDIO_HAL_CW18)
AUDIO_HAL_CW18 | |
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
...
AnchorAUDIO_HAL_CW17 AUDIO_HAL_CW17
Thursday 23 April - 11:30am CET (AUDIO_HAL_CW17)
AUDIO_HAL_CW17 | |
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
...
AnchorAUDIO_HAL_CW16 AUDIO_HAL_CW16
Thursday 16 April - 11:30am CET (AUDIO_HAL_CW16)
AUDIO_HAL_CW16 | |
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
...
- Discuss the gathered topics, who can work on which topics and which strategy
- Status update on the "access raw streams"
Minutes
Changes done in this page Android and System Level Audio:
...
AnchorAUDIO_HAL_CW15 AUDIO_HAL_CW15
Thursday 09 April - 11:30am CET (AUDIO_HAL_CW15)
AUDIO_HAL_CW15 | |
AUDIO_HAL_CW15 |
Participants
Philippe Robin Gunnar Andersson Piotr Krawczyk Unknown User (bartoszbialek)Andrii Chepurnyi@Henric Suhasini Raghuram Stephen Lawrence
...
- from last week's minutes
- Discuss the gathered topics, who can work on which topics and which strategy
- Status update on the "access raw streams"
- AOB
- abstract of the GENIVI virtual tech summit AASIG Audio HAL workshop
Minutes
list of gathered topics on multi-zone audio management
...
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
...
- Slides from Wassim about the two models inside and outside of AA
- discussion of the cases/features that we are trying to solve
- checking the Audio Manager to decide whether or not it needs an update
Minutes
- 2 strategies or options:
- android provides sources and sinks
- Android controls the complete systems
- We will not discuss the need to have such options
- Basically some functions cannot be integrated to AA
- Audio sources coming from android or from external (android not aware of them)
- Each strategy has limitations and can be criticized
- Idea is to get each model and apply to it questions/cases
- Questions like safety sources, raw streams, etc.
...