From 43448f147c196603c5062c1a411efe40b9e7ef94 Mon Sep 17 00:00:00 2001 From: hackerman-kl Date: Sun, 7 Dec 2025 09:14:55 +0100 Subject: [PATCH] module-avb: descriptors: adding cluster descriptor for milan and legacy AVB --- src/modules/module-avb/aecp-aem-descriptors.h | 26 ++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/src/modules/module-avb/aecp-aem-descriptors.h b/src/modules/module-avb/aecp-aem-descriptors.h index 40a8b718a..354bbcab4 100644 --- a/src/modules/module-avb/aecp-aem-descriptors.h +++ b/src/modules/module-avb/aecp-aem-descriptors.h @@ -6,8 +6,11 @@ #ifndef AVB_AECP_AEM_DESCRIPTORS_H #define AVB_AECP_AEM_DESCRIPTORS_H -#include "internal.h" +#include +/* +* IEEE 1722.1-2021, Table 7-1 - Descriptor Types +*/ #define AVB_AEM_DESC_ENTITY 0x0000 #define AVB_AEM_DESC_CONFIGURATION 0x0001 #define AVB_AEM_DESC_AUDIO_UNIT 0x0002 @@ -130,6 +133,27 @@ struct avb_aem_desc_audio_unit { struct avb_aem_desc_sampling_rate sampling_rates[0]; } __attribute__ ((__packed__)); +/* IEEE 1722.1-2021, Table 7-28 - AUDIO_CLUSTER format values */ +#define AVB_AEM_AUDIO_CLUSTER_TYPE_IEC60958 0x00 +#define AVB_AEM_AUDIO_CLUSTER_TYPE_MBLA 0x40 +#define AVB_AEM_AUDIO_CLUSTER_TYPE_MIDI 0x80 +#define AVB_AEM_AUDIO_CLUSTER_TYPE_SMPTE 0x88 + +struct avb_aem_desc_audio_cluster { + char object_name[64]; + uint16_t localized_description; + + uint16_t signal_type; + uint16_t signal_index; + uint16_t signal_output; + uint32_t path_latency; + uint32_t block_latency; + uint16_t channel_count; + uint8_t format; + uint8_t aes3_data_type_ref; + uint16_t aes3_data_type; +} __attribute__ ((__packed__)); + #define AVB_AEM_DESC_STREAM_FLAG_SYNC_SOURCE (1u<<0) #define AVB_AEM_DESC_STREAM_FLAG_CLASS_A (1u<<1) #define AVB_AEM_DESC_STREAM_FLAG_CLASS_B (1u<<2)