Top Banner
© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties. last update: <Date of last Document Revision dd-mmm-yyyy> GENIVI Audio Manager: Generic Controller Plug-in AGL All Member Meeting Winter 2016 Toshiaki Isogai, Senior Engineer Advanced Driver Information Technology Corporation ADIT is joint venture company of DENSO Corporation and Robert Bosch GmbH/Robert Bosch Car Multimedia
24

GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

Jul 31, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

last update: <Date of last Document Revision dd-mmm-yyyy>

GENIVI Audio Manager: Generic Controller Plug-in

AGL All Member Meeting Winter 2016

Toshiaki Isogai, Senior Engineer

Advanced Driver Information Technology Corporation

ADIT is joint venture company of DENSO Corporation and Robert Bosch GmbH/Robert Bosch Car Multimedia

Page 2: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 2 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

IVI Audio Management Scope Policy Management - Use Cases Routing - System Topology

GENIVI Audio Manager Overview Policy Management – Business logic handling Routing - Domain Abstraction

Generic Controller Plug-in Overview Motivation Configuration

Question and Answer

Agenda

Page 3: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 3 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

IVI Audio Management Scope Policy Management - Use Cases Routing - System Topology

GENIVI Audio Manager Overview Policy Management – Business logic handling Routing - Domain Abstraction

Generic Controller Plug-in Overview Motivation Configuration

Question and Answer

Page 4: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 4 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Policy Management Active Source Change Last Audio (Persistency) Mixing & Volume Attenuation

Routing Several software/hardware routing mechanism Inter-connection between multiple H/W (ECU)

Processing Equalizing Volume Normalization

Early Audio Startup sound Back guide monitor/Parking distance control

Multi User User dedicated setting

IVI Audio Management Scope

Audio managem

ent

Early / Late

Audio

Equalizing

Multi User

Interconnection

Mixing& Source Change

Priority Handling

Page 5: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 5 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Policy Management Active Source Change Last Audio (Persistency) Mixing & Volume Attenuation

Routing Several software/hardware routing mechanism Inter-connection between multiple H/W (ECU)

Processing Equalizing Volume Normalization

Early Audio Startup sound Back guide monitor/Parking distance control

Multi User User dedicated setting

IVI Audio Management Scope

Audio managem

ent

Early / Late

Audio

Equalizing

Multi User

Interconnection

Mixing& Source Change

Priority Handling

Page 6: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 6 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Example Use Cases for Policy Management Active Source Change

1. Driver is listening to Radio in the car. 2. Driver push the button to change audio source to USB Audio. 3. IVI system automatically stop playing Radio, and then play USB Audio.

Last Audio (Persistence)

1. Driver is listening to Radio in the car. 2. Driver turns off/on the engine. 3. IVI system automatically start playing Radio.

Mixing & Volume Attenuation

1. Driver is listening to Radio in the car. 2. Car close to cross road. 3. IVI system attenuate the volume level of Radio, and then start playing

Navigation Guidance. 4. After Navigation Guidance is completed, IVI system recover the volume

level of Radio and play again.

IVI Audio Management Policy Management – Use Cases

Page 7: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 7 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Desktop system In most cases sound devices are

connected to desktop directly. Audio application can gather the audio

streaming data from source device, and deliver to sink device.

If more than one device are audible, they are just mixed.

IVI system No standard system topology. Several devices (ECUs) which become

audio source integrated Independent sound device e.g. ICS /

PDC. Audio streaming data might not be

processed directly from only one ECU.

IVI Audio Management Routing – System Topology

ICS / PDC

Page 8: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 8 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Policy Management Audio source/sink in IVI system shall be managed in one place. Active source shall be remembered. Implicit/automatic behavior shall be configurable due to product specific.

Routing Different software/hardware routing mechanism shall be supported. Inter-connection handling between ECUs shall be supported.

Early / Late Audio Sound device which is started earlier than application processor shall be

considered.

IVI Audio Management Requirements

Page 9: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 9 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

IVI Audio Management Scope Policy Management - Use Cases Routing - System Architecture

GENIVI Audio Manager Overview Policy Management – Business logic handling Routing - Domain Abstraction

Generic Controller Plug-in Overview Motivation Configuration

Question and Answer

Page 10: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 10 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

What is GENIVI Audio Manager ? is framework for managing audio in

IVI context. is maintained by GENIVI as OSS

project since 2013. http://projects.genivi.org/audio-

manager/home consists of central daemon and

three plug-ins around. provides HMI application common

interface to setup route, change volume by Command Plug-in.

provides abstraction to support different hardware/software routing mechanism by Routing Plug-in.

provides possibility to implement different logic for different projects by Controller Plug-in.

GENIVI Audio Manager - Overview

cmp AudioManager

GENIVI Audio Manager

Audio Manager Daemon

Command Plug-in

Controller Plug-in

Routing Plug-in

ALSA Domain DSP Domain Proprietary Routing Domain

HMI Application

Page 11: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

cmp Ov erView

Audio Manager Daemon

Command Plug-in

Controller Plug-in

Routing Plug-in

Slide 11 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

GENIVI Audio Manager applies “Business logic” to routing/volume request from Application.

Business Logic can be separately implemented by Controller Plug-in

GENIVI Audio Management – Policy Management

Application request routing/volume control via Command Plug-in

Decision of policy is applied by Controller Plug-in

Actual audio routing/processing request is issued to Audio Domain via Routing Plug-in

Page 12: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 12 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Example IVI system architecture There are three

separated H/W

Application Processor directly handle Mass Storage Device and Bluetooth Device.

Radio Tuner and CD Player are controlled by Heard Unit.

DSP mixes audio input from Application Processor, Radio Tuner and CD Player.

GENIVI Audio Management Routing – System Architecture

deployment Deployment

Audio Board

« executionEnviron...Application Processor

« devic...Mass Storage

Device

« device»Bluetooth

Device

CD PlayerRadio Tuner

« executionEnviron...Audio Processor

DSP

Amplifier

Bluetooth

I2S

I2S

Control

Control

Control

I2S

Control

I2S

USB

Page 13: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 13 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Abstraction by Audio Domain Different

hardware/software routing mechanism can be abstracted as an Audio Domain.

Audio Manager control each Audio Domain via Routing Adapter which control routing/volume in particular way.

Inter-connection between two different Audio Domains is done by gateway.

GENIVI Audio Management Routing – Audio Domain Abstraction

cmp DomainAbstraction

ALSA Domain DSP Domain

HeadUnit Domain

GENIVI Audio Manager

Routing Adapter

ALSA

Routing Adapter DSP

Routing Adapter

Head Unit

HMI Application

MediaPlayer

Bluetooth

RadioTuner CDPlayer

Amplifier

I2S_IN

I2S_INI2S_OUT

I2S_OUT

source

sink

Legend

Routing/Volume Control Request

Gateway

«flow»

Gateway

Page 14: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 14 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Early Domain Handling and Migration

GENIVI Audio Management Early Audio – Independent start up

Early Domain started independently before Audio Manager is launched.

Audio Manager is launched and starts observing Early Domain via Routing Adapter.

Audio Manager takes over control right from Routing Adapter and migrates to usual sequence.

Page 15: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 15 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

IVI Audio Management Scope Policy Management - Use Cases Routing - System Architecture

GENIVI Audio Manager Overview Policy Management – Business logic handling Routing - Domain Abstraction

Generic Controller Plug-in Overview Motivation Configuration

Question and Answer

Page 16: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 16 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Motivation To reduce the development effort for different project/product To ease the design of routing/volume control policies To contribute working/product ready set as OSS

Generic Controller Motivation

Page 17: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 17 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Component Generic Controller Plug-in for Audio Manager

License MPL 2.0

Dependency Automotive DLT, libxml2

Supported Features Routing/Volume policies can be configured by XML Routing Policy

Preferred/restricted route detection by System Topology Confliction management based on priority, or requested order

Volume Policy Volume adjustment in case of multiple routes Volume conversion between user request and low level dB

Static registration (Sources, Sinks, Gateways etc…) for early start-up Classification of sources/sinks for ease policy configuration Automatic reverting to previous state when error happen.

Generic Controller Overview

cmp Ov erView

Audio Manager Daemon

Command Plug-in

Controller Plug-in

Routing Plug-in

Page 18: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 20 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

A Policy is defined by following three data Trigger - When Policy needs to be applied Condition(s) - In which conditions Policy can start execution Action(s) – How Policy realize expected behavior

Generic Controller Policy Management

Page 19: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 21 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Example Policy <policy>

<name> Example Policy </name> <trigger> USER_REQUEST_CONNECTION </trigger> <process>

<condition> name(SOURCE, REQUESTING) EQ “MediaPlayer” </condition> <action>

<type> ACTION_DISCONNECT </type> <param>

<sourceName> ”RadioTuner” </sourceName> </param>

</action> <action>

<type> ACTION_CONNECT </type> <param>

<sourceName> ”MediaPlayer” </sourceName> <sinkName> ”Amplifier” </sinkName>

</param> </action>

</process> </policy>

Generic Controller Policy Description

Page 20: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 22 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Trigger Trigger is Input event for starting evaluation of Condition(s), and execution of

Action(s) Generic Controller can treat both user request from application and event from

routing domain as Trigger. If there are more than two Policies with same Trigger, Generic Controller

evaluate all of them by appeared order in configuration

Format of description <trigger> Trigger Name </trigger>

Example <trigger> USER_REQUEST_CONNECTION </trigger> <trigger> USER_SET_SINK_VOLUME_CHANGE </trigger>

Generic Controller Policy Description

Page 21: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 23 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Condition Mathematical expression to evaluate input parameter, current status, etc …

Format of description <condition> [LHS] [OPERATOR] [RHS] </condition>

Example Check whether volume level of Amplifier is less than 30 decibel.

<condition> volume(SINK, “Amp”) LT “30” </condition>

Check whether source requested by user is media player. <condition> name(SOURCE, REQUESTED) EQ ”MediaPlayer” </condition>

Generic Controller Policy Description

Page 22: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 24 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Action An Action consists of its name, target and parameters Target of Action is MainConnection indicated by source/sink, or class Action(s) are sequentially executed by listed order

Format <action>

<type> Action Name </type> <param>

… </param>

Example <action>

<type> ACTION_MUTE </type> <param>

<sinkName> ”Amp” </sinkName> </param>

</action>

Generic Controller Policy Description

Page 23: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 25 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Pre-defined Actions Pre-defined Action can be used by Policy New Action can be defined by combination of pre-defined Action(s)

Generic Controller Policy Description

Action Name Description

CONNECT Start connecting route from source to sink.

DISCONNECT Disconnect existing route and remove it from DB completely

PUSH Disconnect route temporary and remember it

POP Reconnect remembered route

MUTE Request muting the volume of route.

UNMUTE Recover the volume level before muting

LIMIT Change volume to fixed level. In case of multiple limit lowest level is chosen.

UNLIMIT Recover volume level before limiting

SETPROPERTY Direct request with property type/value to source/sin

Page 24: GENIVI Audio Manager plug-in contribution · 2017-12-14 · IVI system automatically start playing Radio. Mixing & Volume Attenuation 1. Driver is listening to Radio in the car. 2.

© Advanced Driver Information Technology Corporation reserves all rights, including rights of disposal such as copying and passing on to third parties.

Slide 29 <Date of last Document Revision dd-mmm-yyyy> · <Document Title> Use menu "View - Header and Footer..." to modify

Questions?

Questions and Answers