|
@@ -3383,6 +3383,50 @@ struct asm_celt_enc_cfg_t {
|
|
|
struct asm_celt_specific_enc_cfg_t celt_specific_config;
|
|
|
} __packed;
|
|
|
|
|
|
+#define ASM_MEDIA_FMT_LDAC 0x00013224
|
|
|
+struct asm_ldac_specific_enc_cfg_t {
|
|
|
+ /*
|
|
|
+ * This is used to calculate the encoder output
|
|
|
+ * bytes per frame (i.e. bytes per packet).
|
|
|
+ * Bit rate also configures the EQMID.
|
|
|
+ * The min bit rate 303000 bps is calculated for
|
|
|
+ * 44.1 kHz and 88.2 KHz sampling frequencies with
|
|
|
+ * Mobile use Quality.
|
|
|
+ * The max bit rate of 990000 bps is calculated for
|
|
|
+ * 96kHz and 48 KHz with High Quality
|
|
|
+ * @Range(in bits per second)
|
|
|
+ * 303000 for Mobile use Quality
|
|
|
+ * 606000 for standard Quality
|
|
|
+ * 909000 for High Quality
|
|
|
+ */
|
|
|
+ uint32_t bit_rate;
|
|
|
+ /*
|
|
|
+ * The channel setting information for LDAC specification
|
|
|
+ * of Bluetooth A2DP which is determined by SRC and SNK
|
|
|
+ * devices in Bluetooth transmission.
|
|
|
+ * @Range:
|
|
|
+ * 0 for native mode
|
|
|
+ * 4 for mono
|
|
|
+ * 2 for dual channel
|
|
|
+ * 1 for stereo
|
|
|
+ */
|
|
|
+ uint16_t channel_mode;
|
|
|
+ /*
|
|
|
+ * Maximum Transmission Unit (MTU).
|
|
|
+ * The minimum MTU that a L2CAP implementation for LDAC shall
|
|
|
+ * support is 679 bytes, because LDAC is optimized with 2-DH5
|
|
|
+ * packet as its target.
|
|
|
+ * @Range : 679
|
|
|
+ * @Default: 679 for LDACBT_MTU_2DH5
|
|
|
+ */
|
|
|
+ uint16_t mtu;
|
|
|
+} __packed;
|
|
|
+
|
|
|
+struct asm_ldac_enc_cfg_t {
|
|
|
+ struct asm_custom_enc_cfg_t custom_config;
|
|
|
+ struct asm_ldac_specific_enc_cfg_t ldac_specific_config;
|
|
|
+} __packed;
|
|
|
+
|
|
|
struct afe_enc_fmt_id_param_t {
|
|
|
/*
|
|
|
* Supported values:
|
|
@@ -3453,6 +3497,7 @@ union afe_enc_config_data {
|
|
|
struct asm_custom_enc_cfg_t custom_config;
|
|
|
struct asm_celt_enc_cfg_t celt_config;
|
|
|
struct asm_aptx_enc_cfg_t aptx_config;
|
|
|
+ struct asm_ldac_enc_cfg_t ldac_config;
|
|
|
};
|
|
|
|
|
|
struct afe_enc_config {
|