You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 17 Next »

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)
#Component - main topicsOwnersJIRA sub-itemsImplementation details
raw streams

Raw Stream Extraction

(multizone audio, etc.)

todo: detail it + use case

AASIG-70 - Getting issue details... STATUS

  • Overview picture with SW components
  • Audio HAL (open point: keep modified  or rewrite it)
  • Config for multizone
  • Separate contexts for audio input PCM streams (open point: separation concept to be defined)


Input and Control of external streams

(microphone, or external player)

todo: detail it + use case

todo: be more explicit and clear about for example what is "external"

AASIG-75 - Getting issue details... STATUS

  • Design Overview (pointing to the actual sw comp)
  • getting stream from Microphone (line in)
    • config in AOSP
    • AASIG-77 - Getting issue details... STATUS
  • external player or other device (BT or other)

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.


AASIG-79 - Getting issue details... STATUS

  • Overview design
  • Usage of a bluetooth headset with Android BT stack only
  • Microphone from Headset, audio on External Loudspeakers
  • No Bluetooth, both Microphone and Loudspeakers are used for telephony example such as skype or any other
  • forward audio stream from external source (to connected BT device (speaker/headphone) via Android Audio subsystem

08

Ensure measurability of full audio path latency

As a user I would not want my audio connection to be delayed.

Each delay measure will be split in modules, which module brings which delay, eg (Bluetooth delay, mixing delay, routing delay,...)


AASIG-86 - Getting issue details... STATUS

  • Overview design
    • components and APIs involved in the Audio path
    • anti-jitter buffers configurations
    • AASIG-87 - Getting issue details... STATUS
  • Total delay for Telephony on external speakers use case
  • Total delay for Video streaming where audio plays on an external speaker
  • add latency measurements means to quick audio solutions (AAudio)*
  • investigate PCM transport impact on latency, check alternatives (currently named sockets are being used, alternative shared memory or pipes)


Offloading to external speakers or loopback to Android.

(offloading examples, codecs MPEG,MP3, DSPs, transport e.g. AVB)

AASIG-92 - Getting issue details... STATUS

  • Design Overview (pointing to the actual sw comp)
  • Offloading part-1 (overview on concept, which APIs)
  • Offloading part-2 (usage)
  • Offloading with loopback to Android

09

Offloading use case : Forwarding Multi-Channel audio

efficiency by keeping

AASIG-93 - Getting issue details... STATUS


  • PCM 5.1 sample audio
  • Guidelines for specific policy config to prevent downmixing
  • Example implementation
  • playing multichannels 5.1 audio from Netflix (any DRM issues)

Milestones

#SummaryDue DateContent Work PackagesDetails Comments
1running demo on real HW

  • compiling android-external-audio-mixing repository for selected target HW (Renesas-H3)
  • optional support for 2nd HW (Low cost HiKey)
  • TODO define functions to be included (input streams)
  • At this stage, the function selection for Milestone 3 should be agreed upon
2Full Audio Path on real HW

  • support of full audio path
    • Raw streams extraction
    • input external streams
    • control of an external stream
    • demo should showcase at least one function
3Selected Functions partitioned on HW

  • All selected and prioritized functions running on the main target HW








  • No labels