genivi-audio-manager@lists.genivi.org

development list for the AudioManager

View all threads

GenIVI AM - new pull requests #58 (AM) and #32 (Plugins) for early audio implementation

MK
Martin Koch
Thu, Jul 9, 2020 11:38 AM

Hello all,

I have implemented the functionality for early connection announcement as well as late connection transfer to routing-side applications.

This is in order to allow establishing audio connections from routing side before the AudioManager (or even the entire lLinux sub-system) has started. Once the AM is up, such connections need to be announced to it, so it can synchronize its internal database. On the other hand, some stream might be required to survive AM shutdown. Therefore the responsibility for it can be transferred to the routing-side application.

Changes can be found in below pull requests

  • https://github.com/GENIVI/AudioManager/pull/58

  • https://github.com/GENIVI/AudioManagerPlugins/pull/32
    Changes comprise:

  • Routing-side interfaces IAmRoutingSend and IAmRoutingReceive

  • Control-side interfaces IAmControlSend and IAmControlReceive

  • AudioManager daemons core and database implementation

  • Registration and transparent pass-through functions in PluginRoutingInterfaceDBus

  • Proper handling in generic controller (PluginControlInterfaceGeneric)

  • Documentation update in both AudioManager and Generic Controller to cover new features

  • Unit-tests (google-test) for daemon and generic controller to validate the new features

For the unit test of the generic controller I borrowed some infrastructure from the still not merged branch GC_unit_tests.

Additionally, an introduction page to the generic controller is added, which is pretty-printed in the repositories browser view.

Your comments on the new functionality as well as its implementation are appreciated.

Martin Koch
Sr. Software Developer

ESE Engineering und Software-Entwicklung GmbH
Am Alten Bahnhof 16
D - 38122 Braunschweig

tel: +49 (0)531 23 880-30
fax: +49 (0)531 23 880-33
Geschäftsführer: Klaus Janz, Clemens Seifert, Lars Schnieder
Handelsregister Braunschweig HRB 5288

Hello all, I have implemented the functionality for early connection announcement as well as late connection transfer to routing-side applications. This is in order to allow establishing audio connections from routing side before the AudioManager (or even the entire lLinux sub-system) has started. Once the AM is up, such connections need to be announced to it, so it can synchronize its internal database. On the other hand, some stream might be required to survive AM shutdown. Therefore the responsibility for it can be transferred to the routing-side application. Changes can be found in below pull requests * https://github.com/GENIVI/AudioManager/pull/58 * https://github.com/GENIVI/AudioManagerPlugins/pull/32 Changes comprise: * Routing-side interfaces IAmRoutingSend and IAmRoutingReceive * Control-side interfaces IAmControlSend and IAmControlReceive * AudioManager daemons core and database implementation * Registration and transparent pass-through functions in PluginRoutingInterfaceDBus * Proper handling in generic controller (PluginControlInterfaceGeneric) * Documentation update in both AudioManager and Generic Controller to cover new features * Unit-tests (google-test) for daemon and generic controller to validate the new features For the unit test of the generic controller I borrowed some infrastructure from the still not merged branch GC_unit_tests. Additionally, an introduction page to the generic controller is added, which is pretty-printed in the repositories browser view. Your comments on the new functionality as well as its implementation are appreciated. Martin Koch Sr. Software Developer ESE Engineering und Software-Entwicklung GmbH Am Alten Bahnhof 16 D - 38122 Braunschweig tel: +49 (0)531 23 880-30 fax: +49 (0)531 23 880-33 Geschäftsführer: Klaus Janz, Clemens Seifert, Lars Schnieder Handelsregister Braunschweig HRB 5288