Skip to content

Named Shmdata for quiddity

Nicolas Bouillot requested to merge named-shm into develop

Provide a mechanism that allows quiddities to connect a specific shmdata to an other specific shmdata of an other quiddity. This is particularly required for quiddity with multiple reader shmdata, pr multiple writer shmdata. Currently, the connection method does not allow that and some quiddity internally implement complex mechanism in order to select which shmdata to connect to which internal thing. For instance, the RTMP quiddity take 1 audio input and 1 video input and select connection using caps, but it can be worst with quiddity that requires read of multiple shmdata of the same type, as it was the case with the posture quiddity that required to simultanously read two video streams, "texture" and "point cloud".

The purpose of this refactoring is to add name & id to shmdata writer and reader in quiddities, and use them in the connection API in order to simplify the writing quiddity with multiple shmdata. In turn, it is expected to provide a more powerfull quiddity API.

The timing (now) is motivated by the following:

  • scenic 4 has just been released, and new version will rely python wrapper, as well as the haptic floor project. It seems preferable to apply breaking changes before these actions
  • The switcher documentation, with the objective to build a better process for use and contribution, should follow the documentation of shmdata. Again these breaking changes should happen before this.

This Merge request implement the following RFC https://gitlab.com/sat-metalab/switcher/-/issues/10

Edited by Nicolas Bouillot

Merge request reports