doc: Bluetooth: Audio: Remake gaf.svg to graphviz
Remake the Generic audio framework (GAF) figure to a graphviz version. This makes it easier to modify it directly in the .rst file. This also adds the missing GMAP/GMAS. Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
This commit is contained in:
parent
0b4d7523fd
commit
05b11e58eb
2 changed files with 144 additions and 8 deletions
|
@ -48,11 +48,151 @@ audio streams or broadcast (unconnected) audio streams.
|
||||||
|
|
||||||
GAF mandates the use of the LC3 codec, but also supports other codecs.
|
GAF mandates the use of the LC3 codec, but also supports other codecs.
|
||||||
|
|
||||||
.. figure:: img/gaf.svg
|
.. graphviz::
|
||||||
:align: center
|
:caption: Generic Audio Framework (GAF)
|
||||||
:alt: Generic Audio Framework
|
|
||||||
|
|
||||||
Generic Audio Framework
|
digraph gaf {
|
||||||
|
node [shape=record];
|
||||||
|
edge [style=invis];
|
||||||
|
compound=true;
|
||||||
|
nodesep=0.1;
|
||||||
|
|
||||||
|
subgraph hap_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="HAP";
|
||||||
|
HAS;
|
||||||
|
BAS [style=dashed];
|
||||||
|
IAS [style=dashed];
|
||||||
|
}
|
||||||
|
|
||||||
|
subgraph pbp_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="PBP";
|
||||||
|
PBS[style=invis]; // Make it possible to treat PBP like the others
|
||||||
|
}
|
||||||
|
|
||||||
|
subgraph tmap_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="TMAP";
|
||||||
|
TMAS;
|
||||||
|
}
|
||||||
|
|
||||||
|
subgraph gmap_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="GMAP";
|
||||||
|
GMAS;
|
||||||
|
}
|
||||||
|
|
||||||
|
subgraph gaf_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="Generic Audio Framework";
|
||||||
|
|
||||||
|
subgraph transition_and_coordination_control_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="Transition and Coordination Control";
|
||||||
|
style=dashed;
|
||||||
|
|
||||||
|
subgraph cap_layer {
|
||||||
|
cluster=true;
|
||||||
|
style=solid;
|
||||||
|
label="CAP";
|
||||||
|
CAS;
|
||||||
|
}
|
||||||
|
|
||||||
|
subgraph csip_layer {
|
||||||
|
cluster=true;
|
||||||
|
style=solid;
|
||||||
|
label="CSIP";
|
||||||
|
CSIS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
subgraph stream_control_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="Stream Control";
|
||||||
|
style=dashed;
|
||||||
|
|
||||||
|
subgraph bap_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="BAP";
|
||||||
|
style=solid;
|
||||||
|
PACS [style=dashed];
|
||||||
|
ASCS [style=dashed];
|
||||||
|
BASS [style=dashed];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
subgraph content_control_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="Content Control";
|
||||||
|
style=dashed;
|
||||||
|
|
||||||
|
subgraph mcp_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="MCP";
|
||||||
|
style=solid;
|
||||||
|
MCS;
|
||||||
|
}
|
||||||
|
|
||||||
|
subgraph ccp_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="CCP";
|
||||||
|
style=solid;
|
||||||
|
TBS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
subgraph rendering_and_capture_control_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="Rendering and Capture Control";
|
||||||
|
style=dashed;
|
||||||
|
|
||||||
|
subgraph micp_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="MICP";
|
||||||
|
style=solid;
|
||||||
|
MICS;
|
||||||
|
MICP_AICS [style=dashed];
|
||||||
|
}
|
||||||
|
|
||||||
|
subgraph vcp_layer {
|
||||||
|
cluster=true;
|
||||||
|
label="VCP";
|
||||||
|
style=solid;
|
||||||
|
VCS;
|
||||||
|
VOCS [style=dashed];
|
||||||
|
VCP_AICS [style=dashed];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
HAS -> CAS;
|
||||||
|
PBS -> CAS;
|
||||||
|
TMAS -> CAS;
|
||||||
|
GMAS -> CAS;
|
||||||
|
|
||||||
|
CAS -> MCS;
|
||||||
|
CAS -> TBS;
|
||||||
|
CAS -> ASCS;
|
||||||
|
CAS -> PACS;
|
||||||
|
CAS -> BASS;
|
||||||
|
CAS -> MICS;
|
||||||
|
CAS -> MICP_AICS;
|
||||||
|
CAS -> VCS;
|
||||||
|
CAS -> VOCS;
|
||||||
|
CAS -> VCP_AICS;
|
||||||
|
|
||||||
|
CSIS -> MCS;
|
||||||
|
CSIS -> TBS;
|
||||||
|
CSIS -> ASCS;
|
||||||
|
CSIS -> PACS;
|
||||||
|
CSIS -> BASS;
|
||||||
|
CSIS -> MICS;
|
||||||
|
CSIS -> MICP_AICS;
|
||||||
|
CSIS -> VCS;
|
||||||
|
CSIS -> VOCS;
|
||||||
|
CSIS -> VCP_AICS;
|
||||||
|
}
|
||||||
|
|
||||||
The top-level profiles TMAP and HAP are not part of the GAF, but rather provide
|
The top-level profiles TMAP and HAP are not part of the GAF, but rather provide
|
||||||
top-level requirements for how to use the GAF.
|
top-level requirements for how to use the GAF.
|
||||||
|
|
4
doc/connectivity/bluetooth/api/audio/img/gaf.svg
generated
4
doc/connectivity/bluetooth/api/audio/img/gaf.svg
generated
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 33 KiB |
Loading…
Add table
Add a link
Reference in a new issue