diff --git a/AndroidProducts.mk b/AndroidProducts.mk
index b3478a03..26eba2b5 100644
--- a/AndroidProducts.mk
+++ b/AndroidProducts.mk
@@ -16,9 +16,11 @@
PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/aosp_caiman.mk \
+ $(LOCAL_DIR)/aosp_caiman_16k.mk \
$(LOCAL_DIR)/aosp_caiman_fullmte.mk \
$(LOCAL_DIR)/factory_caiman.mk \
$(LOCAL_DIR)/aosp_komodo.mk \
+ $(LOCAL_DIR)/aosp_komodo_16k.mk \
$(LOCAL_DIR)/aosp_komodo_fullmte.mk \
$(LOCAL_DIR)/factory_komodo.mk \
$(LOCAL_DIR)/aosp_ripcurrentpro.mk \
@@ -28,6 +30,7 @@ PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/aosp_ripcurrent24_fullmte.mk \
$(LOCAL_DIR)/factory_ripcurrent24.mk \
$(LOCAL_DIR)/aosp_tokay.mk \
+ $(LOCAL_DIR)/aosp_tokay_16k.mk \
$(LOCAL_DIR)/aosp_tokay_fullmte.mk \
$(LOCAL_DIR)/factory_tokay.mk \
$(LOCAL_DIR)/lineage_caiman.mk \
diff --git a/OWNERS b/OWNERS
index 4cfcd6d5..909c332f 100644
--- a/OWNERS
+++ b/OWNERS
@@ -1,4 +1,4 @@
per-file perf/*,thermal/*= jenhaochen@google.com,wvw@google.com,joaodias@google.com,rsubr@google.com,sayanna@google.com,liumartin@google.com,kamewang@google.com
# per-file for Pixel device makefiles, see go/pixel-device-mk-owner-checklist for details.
-per-file *.mk,*/BoardConfig.mk=file:device/google/gs-common:main:/MK_OWNERS
+per-file *.mk,*/BoardConfig.mk,{**/,}Android.bp=file:device/google/gs-common:main:/MK_OWNERS
diff --git a/aosp_caiman_16k.mk b/aosp_caiman_16k.mk
new file mode 100644
index 00000000..f61ed9d5
--- /dev/null
+++ b/aosp_caiman_16k.mk
@@ -0,0 +1,6 @@
+$(call inherit-product, device/google/caimito/aosp_caiman.mk)
+
+PRODUCT_NAME := aosp_caiman_16k
+
+TARGET_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
+TARGET_BOOTS_16K := true
diff --git a/aosp_komodo_16k.mk b/aosp_komodo_16k.mk
new file mode 100644
index 00000000..25f73fd1
--- /dev/null
+++ b/aosp_komodo_16k.mk
@@ -0,0 +1,6 @@
+$(call inherit-product, device/google/caimito/aosp_komodo.mk)
+
+PRODUCT_NAME := aosp_komodo_16k
+
+TARGET_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
+TARGET_BOOTS_16K := true
diff --git a/aosp_tokay_16k.mk b/aosp_tokay_16k.mk
new file mode 100644
index 00000000..d1da5ecb
--- /dev/null
+++ b/aosp_tokay_16k.mk
@@ -0,0 +1,6 @@
+$(call inherit-product, device/google/caimito/aosp_tokay.mk)
+
+PRODUCT_NAME := aosp_tokay_16k
+
+TARGET_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
+TARGET_BOOTS_16K := true
diff --git a/audio/caiman/aidl_config/audio_platform_configuration.xml b/audio/caiman/aidl_config/audio_platform_configuration.xml
index 3b7e9709..3d89b971 100644
--- a/audio/caiman/aidl_config/audio_platform_configuration.xml
+++ b/audio/caiman/aidl_config/audio_platform_configuration.xml
@@ -68,7 +68,7 @@
-
+
diff --git a/audio/caiman/aidl_config/mixer_paths_aidl.xml b/audio/caiman/aidl_config/mixer_paths_aidl.xml
index d7dc1bc6..b2c458c1 100644
--- a/audio/caiman/aidl_config/mixer_paths_aidl.xml
+++ b/audio/caiman/aidl_config/mixer_paths_aidl.xml
@@ -318,6 +318,7 @@
+
@@ -423,6 +424,10 @@
+
+
+
+
@@ -495,6 +500,10 @@
+
+
+
+
@@ -567,6 +576,10 @@
+
+
+
+
@@ -644,6 +657,10 @@
+
+
+
+
@@ -716,6 +733,10 @@
+
+
+
+
@@ -800,6 +821,10 @@
+
+
+
+
@@ -860,6 +885,10 @@
+
+
+
+
@@ -924,6 +953,10 @@
+
+
+
+
@@ -994,6 +1027,10 @@
+
+
+
+
@@ -1068,6 +1105,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1171,6 +1241,10 @@
+
+
+
+
diff --git a/audio/caiman/audio-tables.mk b/audio/caiman/audio-tables.mk
index 1fc6d648..82df9925 100644
--- a/audio/caiman/audio-tables.mk
+++ b/audio/caiman/audio-tables.mk
@@ -62,7 +62,25 @@ PRODUCT_PACKAGES += \
waves_preset.mps \
compens_spk_l.conf \
compens_spk_r.conf \
- default_mic_compensation.bin
+ default_mic_compensation.bin \
+ downlink_bluetooth_headset_config.pb \
+ downlink_dock_config.pb \
+ downlink_external_speaker_config.pb \
+ downlink_handset_config.pb \
+ downlink_speaker_config.pb \
+ downlink_wired_headset_config.pb \
+ uplink_bluetooth_headset_aec_off_config.pb \
+ uplink_bluetooth_headset_aec_on_config.pb \
+ uplink_dock_aec_off_config.pb \
+ uplink_dock_aec_on_config.pb \
+ uplink_external_speaker_aec_off_config.pb \
+ uplink_external_speaker_aec_on_config.pb \
+ uplink_handset_aec_off_config.pb \
+ uplink_handset_aec_on_config.pb \
+ uplink_speaker_aec_off_config.pb \
+ uplink_speaker_aec_on_config.pb \
+ uplink_wired_headset_aec_off_config.pb \
+ uplink_wired_headset_aec_on_config.pb
# eng specific
PRODUCT_PACKAGES_ENG += \
diff --git a/audio/caiman/prebuilt/libspeechenhancer/Android.bp b/audio/caiman/prebuilt/libspeechenhancer/Android.bp
index 5b4b8ae8..9d4a2327 100644
--- a/audio/caiman/prebuilt/libspeechenhancer/Android.bp
+++ b/audio/caiman/prebuilt/libspeechenhancer/Android.bp
@@ -34,7 +34,9 @@ cc_prebuilt_library_shared {
"libcutils",
"libEGL",
"libGLESv2",
+ "libbinder_ndk",
"liblog",
+ "libsync",
"libz",
"libnativewindow",
],
diff --git a/audio/caiman/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so b/audio/caiman/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so
index b9f43a79..6bb4b108 100644
Binary files a/audio/caiman/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so and b/audio/caiman/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so differ
diff --git a/audio/caiman/tuning/Android.bp b/audio/caiman/tuning/Android.bp
index e81b4e94..6218306c 100644
--- a/audio/caiman/tuning/Android.bp
+++ b/audio/caiman/tuning/Android.bp
@@ -35,16 +35,19 @@ prebuilt_etc {
src: "bluenote/recording.gatf",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "smartfeature.gstf",
src: "bluenote/smartfeature.gstf",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "template.xml",
src: "bluenote/template.xml",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "tuning_constraints_combination.xml",
src: "bluenote/tuning_constraints_combination.xml",
@@ -56,6 +59,7 @@ prebuilt_etc {
src: "compensation/compens_spk_l.conf",
soc_specific: true,
}
+
prebuilt_etc {
name: "compens_spk_r.conf",
src: "compensation/compens_spk_r.conf",
@@ -67,62 +71,181 @@ prebuilt_etc {
src: "fortemedia/BLUETOOTH.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "BLUETOOTH.mods",
src: "fortemedia/BLUETOOTH.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSFREE.dat",
src: "fortemedia/HANDSFREE.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSFREE.mods",
src: "fortemedia/HANDSFREE.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSET.dat",
src: "fortemedia/HANDSET.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSET.mods",
src: "fortemedia/HANDSET.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HEADSET.dat",
src: "fortemedia/HEADSET.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HEADSET.mods",
src: "fortemedia/HEADSET.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "mcps.dat",
src: "fortemedia/mcps.dat",
defaults: ["aoc_defaults"],
}
+prebuilt_etc {
+ name: "downlink_bluetooth_headset_config.pb",
+ src: "apmg3/downlink_bluetooth_headset_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_dock_config.pb",
+ src: "apmg3/downlink_dock_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_external_speaker_config.pb",
+ src: "apmg3/downlink_external_speaker_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_handset_config.pb",
+ src: "apmg3/downlink_handset_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_speaker_config.pb",
+ src: "apmg3/downlink_speaker_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_wired_headset_config.pb",
+ src: "apmg3/downlink_wired_headset_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_bluetooth_headset_aec_off_config.pb",
+ src: "apmg3/uplink_bluetooth_headset_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_bluetooth_headset_aec_on_config.pb",
+ src: "apmg3/uplink_bluetooth_headset_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_dock_aec_off_config.pb",
+ src: "apmg3/uplink_dock_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_dock_aec_on_config.pb",
+ src: "apmg3/uplink_dock_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_external_speaker_aec_off_config.pb",
+ src: "apmg3/uplink_external_speaker_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_external_speaker_aec_on_config.pb",
+ src: "apmg3/uplink_external_speaker_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_handset_aec_off_config.pb",
+ src: "apmg3/uplink_handset_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_handset_aec_on_config.pb",
+ src: "apmg3/uplink_handset_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_speaker_aec_off_config.pb",
+ src: "apmg3/uplink_speaker_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_speaker_aec_on_config.pb",
+ src: "apmg3/uplink_speaker_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_wired_headset_aec_off_config.pb",
+ src: "apmg3/uplink_wired_headset_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_wired_headset_aec_on_config.pb",
+ src: "apmg3/uplink_wired_headset_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
prebuilt_etc {
name: "waves_config.ini",
src: "waves/waves_config.ini",
soc_specific: true,
}
+
prebuilt_etc {
name: "waves_preset.mps",
src: "waves/waves_preset.mps",
soc_specific: true,
}
+
prebuilt_etc {
name: "test_config.ini",
src: "waves/tests/test_config.ini",
soc_specific: true,
}
+
prebuilt_etc {
name: "test_preset.mps",
src: "waves/tests/test_preset.mps",
diff --git a/audio/caiman/tuning/apmg3/downlink_bluetooth_headset_config.pb b/audio/caiman/tuning/apmg3/downlink_bluetooth_headset_config.pb
new file mode 100644
index 00000000..4d26cce5
Binary files /dev/null and b/audio/caiman/tuning/apmg3/downlink_bluetooth_headset_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/downlink_dock_config.pb b/audio/caiman/tuning/apmg3/downlink_dock_config.pb
new file mode 100644
index 00000000..854a48d3
Binary files /dev/null and b/audio/caiman/tuning/apmg3/downlink_dock_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/downlink_external_speaker_config.pb b/audio/caiman/tuning/apmg3/downlink_external_speaker_config.pb
new file mode 100644
index 00000000..f501ab82
Binary files /dev/null and b/audio/caiman/tuning/apmg3/downlink_external_speaker_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/downlink_handset_config.pb b/audio/caiman/tuning/apmg3/downlink_handset_config.pb
new file mode 100644
index 00000000..59cfa128
Binary files /dev/null and b/audio/caiman/tuning/apmg3/downlink_handset_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/downlink_speaker_config.pb b/audio/caiman/tuning/apmg3/downlink_speaker_config.pb
new file mode 100644
index 00000000..bec8c9ab
Binary files /dev/null and b/audio/caiman/tuning/apmg3/downlink_speaker_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/downlink_wired_headset_config.pb b/audio/caiman/tuning/apmg3/downlink_wired_headset_config.pb
new file mode 100644
index 00000000..0f98f657
Binary files /dev/null and b/audio/caiman/tuning/apmg3/downlink_wired_headset_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_bluetooth_headset_aec_off_config.pb b/audio/caiman/tuning/apmg3/uplink_bluetooth_headset_aec_off_config.pb
new file mode 100644
index 00000000..a6dfdce9
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_bluetooth_headset_aec_off_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_bluetooth_headset_aec_on_config.pb b/audio/caiman/tuning/apmg3/uplink_bluetooth_headset_aec_on_config.pb
new file mode 100644
index 00000000..58ac211e
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_bluetooth_headset_aec_on_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_dock_aec_off_config.pb b/audio/caiman/tuning/apmg3/uplink_dock_aec_off_config.pb
new file mode 100644
index 00000000..06e4ef57
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_dock_aec_off_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_dock_aec_on_config.pb b/audio/caiman/tuning/apmg3/uplink_dock_aec_on_config.pb
new file mode 100644
index 00000000..979a200c
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_dock_aec_on_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_external_speaker_aec_off_config.pb b/audio/caiman/tuning/apmg3/uplink_external_speaker_aec_off_config.pb
new file mode 100644
index 00000000..71038798
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_external_speaker_aec_off_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_external_speaker_aec_on_config.pb b/audio/caiman/tuning/apmg3/uplink_external_speaker_aec_on_config.pb
new file mode 100644
index 00000000..d747bc2e
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_external_speaker_aec_on_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_handset_aec_off_config.pb b/audio/caiman/tuning/apmg3/uplink_handset_aec_off_config.pb
new file mode 100644
index 00000000..93519453
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_handset_aec_off_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_handset_aec_on_config.pb b/audio/caiman/tuning/apmg3/uplink_handset_aec_on_config.pb
new file mode 100644
index 00000000..58dc380a
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_handset_aec_on_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_speaker_aec_off_config.pb b/audio/caiman/tuning/apmg3/uplink_speaker_aec_off_config.pb
new file mode 100644
index 00000000..02348b94
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_speaker_aec_off_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_speaker_aec_on_config.pb b/audio/caiman/tuning/apmg3/uplink_speaker_aec_on_config.pb
new file mode 100644
index 00000000..e9bf30df
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_speaker_aec_on_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_wired_headset_aec_off_config.pb b/audio/caiman/tuning/apmg3/uplink_wired_headset_aec_off_config.pb
new file mode 100644
index 00000000..679aa66f
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_wired_headset_aec_off_config.pb differ
diff --git a/audio/caiman/tuning/apmg3/uplink_wired_headset_aec_on_config.pb b/audio/caiman/tuning/apmg3/uplink_wired_headset_aec_on_config.pb
new file mode 100644
index 00000000..fec3962d
Binary files /dev/null and b/audio/caiman/tuning/apmg3/uplink_wired_headset_aec_on_config.pb differ
diff --git a/audio/caiman/tuning/fortemedia/BLUETOOTH.dat b/audio/caiman/tuning/fortemedia/BLUETOOTH.dat
index 64ad94cf..fb015419 100644
Binary files a/audio/caiman/tuning/fortemedia/BLUETOOTH.dat and b/audio/caiman/tuning/fortemedia/BLUETOOTH.dat differ
diff --git a/audio/caiman/tuning/fortemedia/BLUETOOTH.mods b/audio/caiman/tuning/fortemedia/BLUETOOTH.mods
index 68155e28..ff86e942 100644
--- a/audio/caiman/tuning/fortemedia/BLUETOOTH.mods
+++ b/audio/caiman/tuning/fortemedia/BLUETOOTH.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG BLUETOOTH
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:12:26
+#SAVE_TIME 2024-07-23 15:16:17
#CASE_NAME BLUETOOTH-BT_HAC-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -2708,7 +2708,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x003B //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -3101,7 +3101,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x1FFF //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -5403,7 +5403,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -5796,7 +5796,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -10793,7 +10793,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -11186,7 +11186,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
diff --git a/audio/caiman/tuning/fortemedia/HANDSET.dat b/audio/caiman/tuning/fortemedia/HANDSET.dat
index f6eadd2f..c77e3f12 100644
Binary files a/audio/caiman/tuning/fortemedia/HANDSET.dat and b/audio/caiman/tuning/fortemedia/HANDSET.dat differ
diff --git a/audio/caiman/tuning/fortemedia/HANDSET.mods b/audio/caiman/tuning/fortemedia/HANDSET.mods
index 5b51a9bb..638d3379 100644
--- a/audio/caiman/tuning/fortemedia/HANDSET.mods
+++ b/audio/caiman/tuning/fortemedia/HANDSET.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HANDSET
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:12:00
+#SAVE_TIME 2024-07-23 15:15:40
#CASE_NAME HANDSET-HANDSET-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -3228,10 +3228,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -3972,7 +3972,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x02B9 //RX_TDDRC_DRC_GAIN
+124 0x02FC //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x5454 //RX_FDEQ_GAIN_1
@@ -4071,7 +4071,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x029A //RX_TDDRC_DRC_GAIN
+124 0x02EB //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x5454 //RX_FDEQ_GAIN_1
@@ -4170,7 +4170,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x03FB //RX_TDDRC_DRC_GAIN
+124 0x0317 //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x4A54 //RX_FDEQ_GAIN_1
@@ -4269,7 +4269,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x026D //RX_TDDRC_DRC_GAIN
+124 0x02F4 //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x5454 //RX_FDEQ_GAIN_1
@@ -4368,7 +4368,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x025F //RX_TDDRC_DRC_GAIN
+124 0x02D2 //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x5454 //RX_FDEQ_GAIN_1
@@ -4467,7 +4467,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x023D //RX_TDDRC_DRC_GAIN
+124 0x0274 //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x5454 //RX_FDEQ_GAIN_1
@@ -5318,7 +5318,7 @@
278 0x199A //RX_TDDRC_HMNC_GAIN
279 0x0001 //RX_TDDRC_SMT_FLAG
280 0x0CCD //RX_TDDRC_SMT_W
-281 0x029A //RX_TDDRC_DRC_GAIN
+281 0x0274 //RX_TDDRC_DRC_GAIN
195 0x001C //RX_FDEQ_SUBNUM
196 0x5C54 //RX_FDEQ_GAIN_0
197 0x5454 //RX_FDEQ_GAIN_1
@@ -5923,10 +5923,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -14008,10 +14008,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -14752,7 +14752,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x02B9 //RX_TDDRC_DRC_GAIN
+124 0x02FC //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x5454 //RX_FDEQ_GAIN_1
@@ -14851,7 +14851,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x029A //RX_TDDRC_DRC_GAIN
+124 0x02EB //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x5454 //RX_FDEQ_GAIN_1
@@ -14950,7 +14950,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x03FB //RX_TDDRC_DRC_GAIN
+124 0x0317 //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x4A54 //RX_FDEQ_GAIN_1
@@ -15049,7 +15049,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x026D //RX_TDDRC_DRC_GAIN
+124 0x02F4 //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x5454 //RX_FDEQ_GAIN_1
@@ -15148,7 +15148,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x025F //RX_TDDRC_DRC_GAIN
+124 0x02D2 //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x5454 //RX_FDEQ_GAIN_1
@@ -15247,7 +15247,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x023D //RX_TDDRC_DRC_GAIN
+124 0x0274 //RX_TDDRC_DRC_GAIN
38 0x001C //RX_FDEQ_SUBNUM
39 0x5C54 //RX_FDEQ_GAIN_0
40 0x5454 //RX_FDEQ_GAIN_1
@@ -16098,7 +16098,7 @@
278 0x199A //RX_TDDRC_HMNC_GAIN
279 0x0001 //RX_TDDRC_SMT_FLAG
280 0x0CCD //RX_TDDRC_SMT_W
-281 0x029A //RX_TDDRC_DRC_GAIN
+281 0x0274 //RX_TDDRC_DRC_GAIN
195 0x001C //RX_FDEQ_SUBNUM
196 0x5C54 //RX_FDEQ_GAIN_0
197 0x5454 //RX_FDEQ_GAIN_1
@@ -16703,10 +16703,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -22093,10 +22093,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -27483,10 +27483,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -32873,10 +32873,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -38263,10 +38263,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -43653,10 +43653,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -46348,10 +46348,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -54433,10 +54433,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -57128,10 +57128,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -62518,10 +62518,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
diff --git a/audio/caiman/tuning/fortemedia/HANDSFREE.dat b/audio/caiman/tuning/fortemedia/HANDSFREE.dat
index 243ad082..32e7bc6d 100644
Binary files a/audio/caiman/tuning/fortemedia/HANDSFREE.dat and b/audio/caiman/tuning/fortemedia/HANDSFREE.dat differ
diff --git a/audio/caiman/tuning/fortemedia/HANDSFREE.mods b/audio/caiman/tuning/fortemedia/HANDSFREE.mods
index 56ed0215..b3849813 100644
--- a/audio/caiman/tuning/fortemedia/HANDSFREE.mods
+++ b/audio/caiman/tuning/fortemedia/HANDSFREE.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HANDSFREE
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:11:36
+#SAVE_TIME 2024-07-23 15:15:11
#CASE_NAME HANDSFREE-HANDSFREE-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -2708,7 +2708,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x003B //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -3101,7 +3101,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x1FFF //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -5403,7 +5403,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -5796,7 +5796,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -10793,7 +10793,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F74 //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -11186,7 +11186,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -16183,7 +16183,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -16576,7 +16576,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -21573,7 +21573,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F54 //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -21966,7 +21966,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -26963,7 +26963,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -27356,7 +27356,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -28128,7 +28128,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x0024 //RX_TDDRC_DRC_GAIN
+124 0x0020 //RX_TDDRC_DRC_GAIN
38 0x0020 //RX_FDEQ_SUBNUM
39 0x4848 //RX_FDEQ_GAIN_0
40 0x4848 //RX_FDEQ_GAIN_1
@@ -28227,7 +28227,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x0040 //RX_TDDRC_DRC_GAIN
+124 0x0039 //RX_TDDRC_DRC_GAIN
38 0x0020 //RX_FDEQ_SUBNUM
39 0x4848 //RX_FDEQ_GAIN_0
40 0x4848 //RX_FDEQ_GAIN_1
@@ -28326,7 +28326,7 @@
121 0x199A //RX_TDDRC_HMNC_GAIN
122 0x0001 //RX_TDDRC_SMT_FLAG
123 0x0CCD //RX_TDDRC_SMT_W
-124 0x0072 //RX_TDDRC_DRC_GAIN
+124 0x0066 //RX_TDDRC_DRC_GAIN
38 0x0020 //RX_FDEQ_SUBNUM
39 0x4848 //RX_FDEQ_GAIN_0
40 0x4848 //RX_FDEQ_GAIN_1
@@ -28979,7 +28979,7 @@
278 0x199A //RX_TDDRC_HMNC_GAIN
279 0x0001 //RX_TDDRC_SMT_FLAG
280 0x0CCD //RX_TDDRC_SMT_W
-281 0x0024 //RX_TDDRC_DRC_GAIN
+281 0x0020 //RX_TDDRC_DRC_GAIN
195 0x0020 //RX_FDEQ_SUBNUM
196 0x4848 //RX_FDEQ_GAIN_0
197 0x4848 //RX_FDEQ_GAIN_1
@@ -29078,7 +29078,7 @@
278 0x199A //RX_TDDRC_HMNC_GAIN
279 0x0001 //RX_TDDRC_SMT_FLAG
280 0x0CCD //RX_TDDRC_SMT_W
-281 0x0040 //RX_TDDRC_DRC_GAIN
+281 0x0039 //RX_TDDRC_DRC_GAIN
195 0x0020 //RX_FDEQ_SUBNUM
196 0x4848 //RX_FDEQ_GAIN_0
197 0x4848 //RX_FDEQ_GAIN_1
@@ -29177,7 +29177,7 @@
278 0x199A //RX_TDDRC_HMNC_GAIN
279 0x0001 //RX_TDDRC_SMT_FLAG
280 0x0CCD //RX_TDDRC_SMT_W
-281 0x0072 //RX_TDDRC_DRC_GAIN
+281 0x0066 //RX_TDDRC_DRC_GAIN
195 0x0020 //RX_FDEQ_SUBNUM
196 0x4848 //RX_FDEQ_GAIN_0
197 0x4848 //RX_FDEQ_GAIN_1
diff --git a/audio/caiman/tuning/fortemedia/HEADSET.dat b/audio/caiman/tuning/fortemedia/HEADSET.dat
index b0d4f7f1..362cabb2 100644
Binary files a/audio/caiman/tuning/fortemedia/HEADSET.dat and b/audio/caiman/tuning/fortemedia/HEADSET.dat differ
diff --git a/audio/caiman/tuning/fortemedia/HEADSET.mods b/audio/caiman/tuning/fortemedia/HEADSET.mods
index 5ddd6edb..62b2d69b 100644
--- a/audio/caiman/tuning/fortemedia/HEADSET.mods
+++ b/audio/caiman/tuning/fortemedia/HEADSET.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HEADSET
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:11:05
+#SAVE_TIME 2024-07-23 15:14:44
#CASE_NAME HEADSET-USB_BLACKBIRD-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -29658,7 +29658,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x003B //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -30051,7 +30051,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x1FFF //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -32353,7 +32353,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -32746,7 +32746,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -37743,7 +37743,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -38136,7 +38136,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -70083,7 +70083,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x003B //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -70476,7 +70476,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x1FFF //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -72778,7 +72778,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -73171,7 +73171,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -78168,7 +78168,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -78561,7 +78561,7 @@
394 0x4000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
diff --git a/audio/caiman/tuning/spatializer/base b/audio/caiman/tuning/spatializer/base
index 38cc646e..42b4329e 100644
Binary files a/audio/caiman/tuning/spatializer/base and b/audio/caiman/tuning/spatializer/base differ
diff --git a/audio/caiman/tuning/spatializer/mode_2_ch b/audio/caiman/tuning/spatializer/mode_2_ch
index 470c56cf..2610b2d9 100644
Binary files a/audio/caiman/tuning/spatializer/mode_2_ch and b/audio/caiman/tuning/spatializer/mode_2_ch differ
diff --git a/audio/caiman/tuning/spatializer/mode_6_ch b/audio/caiman/tuning/spatializer/mode_6_ch
index 94ec6356..0f432fa3 100644
Binary files a/audio/caiman/tuning/spatializer/mode_6_ch and b/audio/caiman/tuning/spatializer/mode_6_ch differ
diff --git a/audio/caiman/tuning/spatializer/mode_xaural b/audio/caiman/tuning/spatializer/mode_xaural
index b3a3a962..619e215f 100644
Binary files a/audio/caiman/tuning/spatializer/mode_xaural and b/audio/caiman/tuning/spatializer/mode_xaural differ
diff --git a/audio/komodo/aidl_config/audio_platform_configuration.xml b/audio/komodo/aidl_config/audio_platform_configuration.xml
index 3b7e9709..3d89b971 100644
--- a/audio/komodo/aidl_config/audio_platform_configuration.xml
+++ b/audio/komodo/aidl_config/audio_platform_configuration.xml
@@ -68,7 +68,7 @@
-
+
diff --git a/audio/komodo/aidl_config/mixer_paths_aidl.xml b/audio/komodo/aidl_config/mixer_paths_aidl.xml
index d7dc1bc6..b2c458c1 100644
--- a/audio/komodo/aidl_config/mixer_paths_aidl.xml
+++ b/audio/komodo/aidl_config/mixer_paths_aidl.xml
@@ -318,6 +318,7 @@
+
@@ -423,6 +424,10 @@
+
+
+
+
@@ -495,6 +500,10 @@
+
+
+
+
@@ -567,6 +576,10 @@
+
+
+
+
@@ -644,6 +657,10 @@
+
+
+
+
@@ -716,6 +733,10 @@
+
+
+
+
@@ -800,6 +821,10 @@
+
+
+
+
@@ -860,6 +885,10 @@
+
+
+
+
@@ -924,6 +953,10 @@
+
+
+
+
@@ -994,6 +1027,10 @@
+
+
+
+
@@ -1068,6 +1105,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1171,6 +1241,10 @@
+
+
+
+
diff --git a/audio/komodo/audio-tables.mk b/audio/komodo/audio-tables.mk
index 212c7643..9ee86dff 100644
--- a/audio/komodo/audio-tables.mk
+++ b/audio/komodo/audio-tables.mk
@@ -62,7 +62,25 @@ PRODUCT_PACKAGES += \
waves_preset.mps \
compens_spk_l.conf \
compens_spk_r.conf \
- default_mic_compensation.bin
+ default_mic_compensation.bin \
+ downlink_bluetooth_headset_config.pb \
+ downlink_dock_config.pb \
+ downlink_external_speaker_config.pb \
+ downlink_handset_config.pb \
+ downlink_speaker_config.pb \
+ downlink_wired_headset_config.pb \
+ uplink_bluetooth_headset_aec_off_config.pb \
+ uplink_bluetooth_headset_aec_on_config.pb \
+ uplink_dock_aec_off_config.pb \
+ uplink_dock_aec_on_config.pb \
+ uplink_external_speaker_aec_off_config.pb \
+ uplink_external_speaker_aec_on_config.pb \
+ uplink_handset_aec_off_config.pb \
+ uplink_handset_aec_on_config.pb \
+ uplink_speaker_aec_off_config.pb \
+ uplink_speaker_aec_on_config.pb \
+ uplink_wired_headset_aec_off_config.pb \
+ uplink_wired_headset_aec_on_config.pb
# eng specific
PRODUCT_PACKAGES_ENG += \
diff --git a/audio/komodo/prebuilt/libspeechenhancer/Android.bp b/audio/komodo/prebuilt/libspeechenhancer/Android.bp
index 5b4b8ae8..9d4a2327 100644
--- a/audio/komodo/prebuilt/libspeechenhancer/Android.bp
+++ b/audio/komodo/prebuilt/libspeechenhancer/Android.bp
@@ -34,7 +34,9 @@ cc_prebuilt_library_shared {
"libcutils",
"libEGL",
"libGLESv2",
+ "libbinder_ndk",
"liblog",
+ "libsync",
"libz",
"libnativewindow",
],
diff --git a/audio/komodo/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so b/audio/komodo/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so
index b9f43a79..6bb4b108 100644
Binary files a/audio/komodo/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so and b/audio/komodo/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so differ
diff --git a/audio/komodo/tuning/Android.bp b/audio/komodo/tuning/Android.bp
index e81b4e94..6218306c 100644
--- a/audio/komodo/tuning/Android.bp
+++ b/audio/komodo/tuning/Android.bp
@@ -35,16 +35,19 @@ prebuilt_etc {
src: "bluenote/recording.gatf",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "smartfeature.gstf",
src: "bluenote/smartfeature.gstf",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "template.xml",
src: "bluenote/template.xml",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "tuning_constraints_combination.xml",
src: "bluenote/tuning_constraints_combination.xml",
@@ -56,6 +59,7 @@ prebuilt_etc {
src: "compensation/compens_spk_l.conf",
soc_specific: true,
}
+
prebuilt_etc {
name: "compens_spk_r.conf",
src: "compensation/compens_spk_r.conf",
@@ -67,62 +71,181 @@ prebuilt_etc {
src: "fortemedia/BLUETOOTH.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "BLUETOOTH.mods",
src: "fortemedia/BLUETOOTH.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSFREE.dat",
src: "fortemedia/HANDSFREE.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSFREE.mods",
src: "fortemedia/HANDSFREE.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSET.dat",
src: "fortemedia/HANDSET.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSET.mods",
src: "fortemedia/HANDSET.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HEADSET.dat",
src: "fortemedia/HEADSET.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HEADSET.mods",
src: "fortemedia/HEADSET.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "mcps.dat",
src: "fortemedia/mcps.dat",
defaults: ["aoc_defaults"],
}
+prebuilt_etc {
+ name: "downlink_bluetooth_headset_config.pb",
+ src: "apmg3/downlink_bluetooth_headset_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_dock_config.pb",
+ src: "apmg3/downlink_dock_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_external_speaker_config.pb",
+ src: "apmg3/downlink_external_speaker_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_handset_config.pb",
+ src: "apmg3/downlink_handset_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_speaker_config.pb",
+ src: "apmg3/downlink_speaker_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_wired_headset_config.pb",
+ src: "apmg3/downlink_wired_headset_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_bluetooth_headset_aec_off_config.pb",
+ src: "apmg3/uplink_bluetooth_headset_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_bluetooth_headset_aec_on_config.pb",
+ src: "apmg3/uplink_bluetooth_headset_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_dock_aec_off_config.pb",
+ src: "apmg3/uplink_dock_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_dock_aec_on_config.pb",
+ src: "apmg3/uplink_dock_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_external_speaker_aec_off_config.pb",
+ src: "apmg3/uplink_external_speaker_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_external_speaker_aec_on_config.pb",
+ src: "apmg3/uplink_external_speaker_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_handset_aec_off_config.pb",
+ src: "apmg3/uplink_handset_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_handset_aec_on_config.pb",
+ src: "apmg3/uplink_handset_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_speaker_aec_off_config.pb",
+ src: "apmg3/uplink_speaker_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_speaker_aec_on_config.pb",
+ src: "apmg3/uplink_speaker_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_wired_headset_aec_off_config.pb",
+ src: "apmg3/uplink_wired_headset_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_wired_headset_aec_on_config.pb",
+ src: "apmg3/uplink_wired_headset_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
prebuilt_etc {
name: "waves_config.ini",
src: "waves/waves_config.ini",
soc_specific: true,
}
+
prebuilt_etc {
name: "waves_preset.mps",
src: "waves/waves_preset.mps",
soc_specific: true,
}
+
prebuilt_etc {
name: "test_config.ini",
src: "waves/tests/test_config.ini",
soc_specific: true,
}
+
prebuilt_etc {
name: "test_preset.mps",
src: "waves/tests/test_preset.mps",
diff --git a/audio/komodo/tuning/apmg3/downlink_bluetooth_headset_config.pb b/audio/komodo/tuning/apmg3/downlink_bluetooth_headset_config.pb
new file mode 100644
index 00000000..4d26cce5
Binary files /dev/null and b/audio/komodo/tuning/apmg3/downlink_bluetooth_headset_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/downlink_dock_config.pb b/audio/komodo/tuning/apmg3/downlink_dock_config.pb
new file mode 100644
index 00000000..854a48d3
Binary files /dev/null and b/audio/komodo/tuning/apmg3/downlink_dock_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/downlink_external_speaker_config.pb b/audio/komodo/tuning/apmg3/downlink_external_speaker_config.pb
new file mode 100644
index 00000000..f501ab82
Binary files /dev/null and b/audio/komodo/tuning/apmg3/downlink_external_speaker_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/downlink_handset_config.pb b/audio/komodo/tuning/apmg3/downlink_handset_config.pb
new file mode 100644
index 00000000..ecdef83f
Binary files /dev/null and b/audio/komodo/tuning/apmg3/downlink_handset_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/downlink_speaker_config.pb b/audio/komodo/tuning/apmg3/downlink_speaker_config.pb
new file mode 100644
index 00000000..71c7f080
Binary files /dev/null and b/audio/komodo/tuning/apmg3/downlink_speaker_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/downlink_wired_headset_config.pb b/audio/komodo/tuning/apmg3/downlink_wired_headset_config.pb
new file mode 100644
index 00000000..0f98f657
Binary files /dev/null and b/audio/komodo/tuning/apmg3/downlink_wired_headset_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_bluetooth_headset_aec_off_config.pb b/audio/komodo/tuning/apmg3/uplink_bluetooth_headset_aec_off_config.pb
new file mode 100644
index 00000000..a6dfdce9
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_bluetooth_headset_aec_off_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_bluetooth_headset_aec_on_config.pb b/audio/komodo/tuning/apmg3/uplink_bluetooth_headset_aec_on_config.pb
new file mode 100644
index 00000000..58ac211e
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_bluetooth_headset_aec_on_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_dock_aec_off_config.pb b/audio/komodo/tuning/apmg3/uplink_dock_aec_off_config.pb
new file mode 100644
index 00000000..06e4ef57
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_dock_aec_off_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_dock_aec_on_config.pb b/audio/komodo/tuning/apmg3/uplink_dock_aec_on_config.pb
new file mode 100644
index 00000000..979a200c
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_dock_aec_on_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_external_speaker_aec_off_config.pb b/audio/komodo/tuning/apmg3/uplink_external_speaker_aec_off_config.pb
new file mode 100644
index 00000000..71038798
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_external_speaker_aec_off_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_external_speaker_aec_on_config.pb b/audio/komodo/tuning/apmg3/uplink_external_speaker_aec_on_config.pb
new file mode 100644
index 00000000..d747bc2e
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_external_speaker_aec_on_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_handset_aec_off_config.pb b/audio/komodo/tuning/apmg3/uplink_handset_aec_off_config.pb
new file mode 100644
index 00000000..93519453
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_handset_aec_off_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_handset_aec_on_config.pb b/audio/komodo/tuning/apmg3/uplink_handset_aec_on_config.pb
new file mode 100644
index 00000000..58dc380a
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_handset_aec_on_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_speaker_aec_off_config.pb b/audio/komodo/tuning/apmg3/uplink_speaker_aec_off_config.pb
new file mode 100644
index 00000000..02348b94
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_speaker_aec_off_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_speaker_aec_on_config.pb b/audio/komodo/tuning/apmg3/uplink_speaker_aec_on_config.pb
new file mode 100644
index 00000000..95c66596
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_speaker_aec_on_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_wired_headset_aec_off_config.pb b/audio/komodo/tuning/apmg3/uplink_wired_headset_aec_off_config.pb
new file mode 100644
index 00000000..679aa66f
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_wired_headset_aec_off_config.pb differ
diff --git a/audio/komodo/tuning/apmg3/uplink_wired_headset_aec_on_config.pb b/audio/komodo/tuning/apmg3/uplink_wired_headset_aec_on_config.pb
new file mode 100644
index 00000000..fec3962d
Binary files /dev/null and b/audio/komodo/tuning/apmg3/uplink_wired_headset_aec_on_config.pb differ
diff --git a/audio/komodo/tuning/fortemedia/BLUETOOTH.dat b/audio/komodo/tuning/fortemedia/BLUETOOTH.dat
index a36f7534..babe0c30 100644
Binary files a/audio/komodo/tuning/fortemedia/BLUETOOTH.dat and b/audio/komodo/tuning/fortemedia/BLUETOOTH.dat differ
diff --git a/audio/komodo/tuning/fortemedia/BLUETOOTH.mods b/audio/komodo/tuning/fortemedia/BLUETOOTH.mods
index 1366e7d2..06578dd7 100644
--- a/audio/komodo/tuning/fortemedia/BLUETOOTH.mods
+++ b/audio/komodo/tuning/fortemedia/BLUETOOTH.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG BLUETOOTH
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:28:27
+#SAVE_TIME 2024-07-19 14:39:26
#CASE_NAME BLUETOOTH-BT_HAC-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -2708,7 +2708,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x003B //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -3101,7 +3101,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -5403,7 +5403,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -5564,9 +5564,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -5625,15 +5625,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -5691,7 +5691,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -5796,7 +5796,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -6348,7 +6348,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -6378,10 +6378,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
@@ -10793,7 +10793,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -10954,9 +10954,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -11015,15 +11015,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -11081,7 +11081,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -11186,7 +11186,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -11738,7 +11738,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -11768,10 +11768,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
diff --git a/audio/komodo/tuning/fortemedia/HANDSET.dat b/audio/komodo/tuning/fortemedia/HANDSET.dat
index 58fd5a9e..fff39a90 100644
Binary files a/audio/komodo/tuning/fortemedia/HANDSET.dat and b/audio/komodo/tuning/fortemedia/HANDSET.dat differ
diff --git a/audio/komodo/tuning/fortemedia/HANDSET.mods b/audio/komodo/tuning/fortemedia/HANDSET.mods
index 7547ee77..3fdb716a 100644
--- a/audio/komodo/tuning/fortemedia/HANDSET.mods
+++ b/audio/komodo/tuning/fortemedia/HANDSET.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HANDSET
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:28:25
+#SAVE_TIME 2024-07-19 14:39:24
#CASE_NAME HANDSET-HANDSET-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -3228,10 +3228,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -5923,10 +5923,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -14008,10 +14008,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -16703,10 +16703,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -22093,10 +22093,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -27483,10 +27483,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -32873,10 +32873,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -38263,10 +38263,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -43653,10 +43653,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -46348,10 +46348,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -54433,10 +54433,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -57128,10 +57128,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -62518,10 +62518,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
diff --git a/audio/komodo/tuning/fortemedia/HANDSFREE.dat b/audio/komodo/tuning/fortemedia/HANDSFREE.dat
index 46917dc6..50b7b0c5 100644
Binary files a/audio/komodo/tuning/fortemedia/HANDSFREE.dat and b/audio/komodo/tuning/fortemedia/HANDSFREE.dat differ
diff --git a/audio/komodo/tuning/fortemedia/HANDSFREE.mods b/audio/komodo/tuning/fortemedia/HANDSFREE.mods
index 29b9b27a..26029c9f 100644
--- a/audio/komodo/tuning/fortemedia/HANDSFREE.mods
+++ b/audio/komodo/tuning/fortemedia/HANDSFREE.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HANDSFREE
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:28:24
+#SAVE_TIME 2024-07-19 14:44:35
#CASE_NAME HANDSFREE-HANDSFREE-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -2708,7 +2708,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x003B //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -3101,7 +3101,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -5403,7 +5403,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -5564,9 +5564,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -5625,15 +5625,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -5691,7 +5691,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -5796,7 +5796,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -6348,7 +6348,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -6378,10 +6378,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
@@ -10793,7 +10793,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F75 //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -10954,9 +10954,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -11015,15 +11015,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -11081,7 +11081,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -11186,7 +11186,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -11738,7 +11738,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -11768,10 +11768,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
@@ -16183,7 +16183,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -16344,9 +16344,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -16405,15 +16405,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -16471,7 +16471,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -16576,7 +16576,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -17128,7 +17128,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -17158,10 +17158,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
@@ -21573,7 +21573,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F55 //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -21734,9 +21734,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -21795,15 +21795,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -21861,7 +21861,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -21966,7 +21966,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -22518,7 +22518,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -22548,10 +22548,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
@@ -26963,7 +26963,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -27124,9 +27124,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -27185,15 +27185,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -27251,7 +27251,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -27356,7 +27356,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -27908,7 +27908,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -27938,10 +27938,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
diff --git a/audio/komodo/tuning/fortemedia/HEADSET.dat b/audio/komodo/tuning/fortemedia/HEADSET.dat
index b962e774..8090185a 100644
Binary files a/audio/komodo/tuning/fortemedia/HEADSET.dat and b/audio/komodo/tuning/fortemedia/HEADSET.dat differ
diff --git a/audio/komodo/tuning/fortemedia/HEADSET.mods b/audio/komodo/tuning/fortemedia/HEADSET.mods
index f49b1df0..2e9575a3 100644
--- a/audio/komodo/tuning/fortemedia/HEADSET.mods
+++ b/audio/komodo/tuning/fortemedia/HEADSET.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HEADSET
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:28:21
+#SAVE_TIME 2024-07-19 14:39:20
#CASE_NAME HEADSET-USB_BLACKBIRD-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -29658,7 +29658,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x003B //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -30051,7 +30051,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -32353,7 +32353,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -32514,9 +32514,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -32575,15 +32575,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -32641,7 +32641,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -32746,7 +32746,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -33298,7 +33298,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -33328,10 +33328,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
@@ -37743,7 +37743,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -37904,9 +37904,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -37965,15 +37965,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -38031,7 +38031,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -38136,7 +38136,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -38688,7 +38688,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -38718,10 +38718,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
@@ -70083,7 +70083,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x003B //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -70476,7 +70476,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -72778,7 +72778,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -72939,9 +72939,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -73000,15 +73000,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -73066,7 +73066,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -73171,7 +73171,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -73723,7 +73723,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -73753,10 +73753,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
@@ -78168,7 +78168,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -78329,9 +78329,9 @@
162 0x7800 //TX_MIN_EQ_RE_EST_10
163 0x7800 //TX_MIN_EQ_RE_EST_11
164 0x7800 //TX_MIN_EQ_RE_EST_12
-165 0x1000 //TX_LAMBDA_RE_EST
+165 0x8000 //TX_LAMBDA_RE_EST
166 0x3000 //TX_LAMBDA_CB_NLE
-167 0x0000 //TX_C_POST_FLT
+167 0x4000 //TX_C_POST_FLT
168 0x4000 //TX_GAIN_NP
169 0x0270 //TX_SE_HOLD_N
170 0x00C8 //TX_DT_HOLD_N
@@ -78390,15 +78390,15 @@
223 0x0001 //TX_RATIO_DT_L_TH_LOW
224 0x3A98 //TX_RATIO_DT_H_TH_LOW
225 0x3E80 //TX_RATIO_DT_L_TH_HIGH
-226 0x6590 //TX_RATIO_DT_H_TH_HIGH
+226 0x4E20 //TX_RATIO_DT_H_TH_HIGH
227 0x0001 //TX_RATIO_DT_L0_TH
-228 0x7FFF //TX_B_POST_FILT_ECHO_L
+228 0x2000 //TX_B_POST_FILT_ECHO_L
229 0x7FFF //TX_B_POST_FILT_ECHO_H
230 0x0200 //TX_MIN_G_CTRL_ECHO
231 0x1000 //TX_B_LESSCUT_RTO_ECHO
232 0x0000 //TX_EPD_OFFSET_00
233 0x0000 //TX_EPD_OFFST_01
-234 0x0FA0 //TX_RATIO_DT_L0_TH_HIGH
+234 0x2328 //TX_RATIO_DT_L0_TH_HIGH
235 0x7FFF //TX_RATIO_DT_H_TH_CUT
236 0x7FFF //TX_MIN_EQ_RE_EST_13
237 0x0000 //TX_DTD_THR1_7
@@ -78456,7 +78456,7 @@
289 0x0020 //TX_MIN_GAIN_S_0
290 0x0004 //TX_MIN_GAIN_S_1
291 0x0016 //TX_MIN_GAIN_S_2
-292 0x0020 //TX_MIN_GAIN_S_3
+292 0x0010 //TX_MIN_GAIN_S_3
293 0x0020 //TX_MIN_GAIN_S_4
294 0x0020 //TX_MIN_GAIN_S_5
295 0x0020 //TX_MIN_GAIN_S_6
@@ -78561,7 +78561,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -79113,7 +79113,7 @@
946 0x000A //TX_MUTE_REF_POW_TH
947 0x0014 //TX_MIC0_MUTE_INITECHO_CUT_LEN
948 0x0014 //TX_MIC1_MUTE_INITECHO_CUT_LEN
-949 0x4000 //TX_PRE_MASK_SUP
+949 0x6000 //TX_PRE_MASK_SUP
950 0x00C0 //TX_SDPCRN_GAIN
951 0x7333 //TX_EASSA_CUT_GAINTH
952 0x0002 //TX_DT_HARME_ENDF
@@ -79143,10 +79143,10 @@
976 0x00A0 //TX_EASSA_AEC_FEMALE_ECHO_TH
977 0x0032 //TX_EASSA_NONLECHO_TH
978 0x4E20 //TX_EASSA_NONLECHO_ECHOENTH
-979 0x0000 //TX_EASSA_NNG
-980 0x0800 //TX_EASSA_NONLHFG
+979 0x0400 //TX_EASSA_NNG
+980 0x2000 //TX_EASSA_NONLHFG
981 0x1000 //TX_EASSA_DT2000HZ_REFG
-982 0x0C00 //TX_EASSA_DT400HZ_MAING
+982 0x0200 //TX_EASSA_DT400HZ_MAING
983 0x3A98 //TX_EASSA_RATIODTH_THCUT_NSSA
984 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_0
985 0x0000 //TX_EASSA_AEC_NSSA_REFG_MAINBLK_1
diff --git a/audio/komodo/tuning/spatializer/base b/audio/komodo/tuning/spatializer/base
index 38cc646e..42b4329e 100644
Binary files a/audio/komodo/tuning/spatializer/base and b/audio/komodo/tuning/spatializer/base differ
diff --git a/audio/komodo/tuning/spatializer/mode_2_ch b/audio/komodo/tuning/spatializer/mode_2_ch
index 470c56cf..2610b2d9 100644
Binary files a/audio/komodo/tuning/spatializer/mode_2_ch and b/audio/komodo/tuning/spatializer/mode_2_ch differ
diff --git a/audio/komodo/tuning/spatializer/mode_6_ch b/audio/komodo/tuning/spatializer/mode_6_ch
index 94ec6356..0f432fa3 100644
Binary files a/audio/komodo/tuning/spatializer/mode_6_ch and b/audio/komodo/tuning/spatializer/mode_6_ch differ
diff --git a/audio/komodo/tuning/spatializer/mode_xaural b/audio/komodo/tuning/spatializer/mode_xaural
index b3a3a962..619e215f 100644
Binary files a/audio/komodo/tuning/spatializer/mode_xaural and b/audio/komodo/tuning/spatializer/mode_xaural differ
diff --git a/audio/tokay/aidl_config/audio_platform_configuration.xml b/audio/tokay/aidl_config/audio_platform_configuration.xml
index 3b7e9709..3d89b971 100644
--- a/audio/tokay/aidl_config/audio_platform_configuration.xml
+++ b/audio/tokay/aidl_config/audio_platform_configuration.xml
@@ -68,7 +68,7 @@
-
+
diff --git a/audio/tokay/aidl_config/mixer_paths_aidl.xml b/audio/tokay/aidl_config/mixer_paths_aidl.xml
index d7dc1bc6..b2c458c1 100644
--- a/audio/tokay/aidl_config/mixer_paths_aidl.xml
+++ b/audio/tokay/aidl_config/mixer_paths_aidl.xml
@@ -318,6 +318,7 @@
+
@@ -423,6 +424,10 @@
+
+
+
+
@@ -495,6 +500,10 @@
+
+
+
+
@@ -567,6 +576,10 @@
+
+
+
+
@@ -644,6 +657,10 @@
+
+
+
+
@@ -716,6 +733,10 @@
+
+
+
+
@@ -800,6 +821,10 @@
+
+
+
+
@@ -860,6 +885,10 @@
+
+
+
+
@@ -924,6 +953,10 @@
+
+
+
+
@@ -994,6 +1027,10 @@
+
+
+
+
@@ -1068,6 +1105,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1171,6 +1241,10 @@
+
+
+
+
diff --git a/audio/tokay/audio-tables.mk b/audio/tokay/audio-tables.mk
index 42890ddb..84577f79 100644
--- a/audio/tokay/audio-tables.mk
+++ b/audio/tokay/audio-tables.mk
@@ -62,7 +62,25 @@ PRODUCT_PACKAGES += \
waves_preset.mps \
compens_spk_l.conf \
compens_spk_r.conf \
- default_mic_compensation.bin
+ default_mic_compensation.bin \
+ downlink_bluetooth_headset_config.pb \
+ downlink_dock_config.pb \
+ downlink_external_speaker_config.pb \
+ downlink_handset_config.pb \
+ downlink_speaker_config.pb \
+ downlink_wired_headset_config.pb \
+ uplink_bluetooth_headset_aec_off_config.pb \
+ uplink_bluetooth_headset_aec_on_config.pb \
+ uplink_dock_aec_off_config.pb \
+ uplink_dock_aec_on_config.pb \
+ uplink_external_speaker_aec_off_config.pb \
+ uplink_external_speaker_aec_on_config.pb \
+ uplink_handset_aec_off_config.pb \
+ uplink_handset_aec_on_config.pb \
+ uplink_speaker_aec_off_config.pb \
+ uplink_speaker_aec_on_config.pb \
+ uplink_wired_headset_aec_off_config.pb \
+ uplink_wired_headset_aec_on_config.pb
# eng specific
PRODUCT_PACKAGES_ENG += \
@@ -73,7 +91,8 @@ PRODUCT_PACKAGES_ENG += \
template.xml \
tuning_constraints_combination.xml \
test_config.ini \
- test_preset.mps
+ test_preset.mps \
+ speaker_post_processing_volume_spec.xml
ifneq (,$(filter eng, $(TARGET_BUILD_VARIANT)))
# Mixer Path Configuration for Audio Speaker Calibration Tool crus_sp_cal
diff --git a/audio/tokay/prebuilt/libspeechenhancer/Android.bp b/audio/tokay/prebuilt/libspeechenhancer/Android.bp
index 5b4b8ae8..9d4a2327 100644
--- a/audio/tokay/prebuilt/libspeechenhancer/Android.bp
+++ b/audio/tokay/prebuilt/libspeechenhancer/Android.bp
@@ -34,7 +34,9 @@ cc_prebuilt_library_shared {
"libcutils",
"libEGL",
"libGLESv2",
+ "libbinder_ndk",
"liblog",
+ "libsync",
"libz",
"libnativewindow",
],
diff --git a/audio/tokay/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so b/audio/tokay/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so
index b9f43a79..6bb4b108 100644
Binary files a/audio/tokay/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so and b/audio/tokay/prebuilt/libspeechenhancer/arm64/libspeechenhancer.so differ
diff --git a/audio/tokay/tuning/Android.bp b/audio/tokay/tuning/Android.bp
index e81b4e94..10125af2 100644
--- a/audio/tokay/tuning/Android.bp
+++ b/audio/tokay/tuning/Android.bp
@@ -35,16 +35,19 @@ prebuilt_etc {
src: "bluenote/recording.gatf",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "smartfeature.gstf",
src: "bluenote/smartfeature.gstf",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "template.xml",
src: "bluenote/template.xml",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "tuning_constraints_combination.xml",
src: "bluenote/tuning_constraints_combination.xml",
@@ -56,6 +59,7 @@ prebuilt_etc {
src: "compensation/compens_spk_l.conf",
soc_specific: true,
}
+
prebuilt_etc {
name: "compens_spk_r.conf",
src: "compensation/compens_spk_r.conf",
@@ -67,62 +71,187 @@ prebuilt_etc {
src: "fortemedia/BLUETOOTH.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "BLUETOOTH.mods",
src: "fortemedia/BLUETOOTH.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSFREE.dat",
src: "fortemedia/HANDSFREE.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSFREE.mods",
src: "fortemedia/HANDSFREE.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSET.dat",
src: "fortemedia/HANDSET.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HANDSET.mods",
src: "fortemedia/HANDSET.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HEADSET.dat",
src: "fortemedia/HEADSET.dat",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "HEADSET.mods",
src: "fortemedia/HEADSET.mods",
defaults: ["aoc_defaults"],
}
+
prebuilt_etc {
name: "mcps.dat",
src: "fortemedia/mcps.dat",
defaults: ["aoc_defaults"],
}
+prebuilt_etc {
+ name: "downlink_bluetooth_headset_config.pb",
+ src: "apmg3/downlink_bluetooth_headset_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_dock_config.pb",
+ src: "apmg3/downlink_dock_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_external_speaker_config.pb",
+ src: "apmg3/downlink_external_speaker_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_handset_config.pb",
+ src: "apmg3/downlink_handset_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_speaker_config.pb",
+ src: "apmg3/downlink_speaker_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "downlink_wired_headset_config.pb",
+ src: "apmg3/downlink_wired_headset_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_bluetooth_headset_aec_off_config.pb",
+ src: "apmg3/uplink_bluetooth_headset_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_bluetooth_headset_aec_on_config.pb",
+ src: "apmg3/uplink_bluetooth_headset_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_dock_aec_off_config.pb",
+ src: "apmg3/uplink_dock_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_dock_aec_on_config.pb",
+ src: "apmg3/uplink_dock_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_external_speaker_aec_off_config.pb",
+ src: "apmg3/uplink_external_speaker_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_external_speaker_aec_on_config.pb",
+ src: "apmg3/uplink_external_speaker_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_handset_aec_off_config.pb",
+ src: "apmg3/uplink_handset_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_handset_aec_on_config.pb",
+ src: "apmg3/uplink_handset_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_speaker_aec_off_config.pb",
+ src: "apmg3/uplink_speaker_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_speaker_aec_on_config.pb",
+ src: "apmg3/uplink_speaker_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_wired_headset_aec_off_config.pb",
+ src: "apmg3/uplink_wired_headset_aec_off_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
+prebuilt_etc {
+ name: "uplink_wired_headset_aec_on_config.pb",
+ src: "apmg3/uplink_wired_headset_aec_on_config.pb",
+ defaults: ["aoc_defaults"],
+}
+
prebuilt_etc {
name: "waves_config.ini",
src: "waves/waves_config.ini",
soc_specific: true,
}
+
prebuilt_etc {
name: "waves_preset.mps",
src: "waves/waves_preset.mps",
soc_specific: true,
}
+
+prebuilt_etc {
+ name: "speaker_post_processing_volume_spec.xml",
+ src: "pts/speaker_post_processing_volume_spec.xml",
+ defaults: ["aoc_defaults"],
+}
+
prebuilt_etc {
name: "test_config.ini",
src: "waves/tests/test_config.ini",
soc_specific: true,
}
+
prebuilt_etc {
name: "test_preset.mps",
src: "waves/tests/test_preset.mps",
diff --git a/audio/tokay/tuning/apmg3/downlink_bluetooth_headset_config.pb b/audio/tokay/tuning/apmg3/downlink_bluetooth_headset_config.pb
new file mode 100644
index 00000000..4d26cce5
Binary files /dev/null and b/audio/tokay/tuning/apmg3/downlink_bluetooth_headset_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/downlink_dock_config.pb b/audio/tokay/tuning/apmg3/downlink_dock_config.pb
new file mode 100644
index 00000000..854a48d3
Binary files /dev/null and b/audio/tokay/tuning/apmg3/downlink_dock_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/downlink_external_speaker_config.pb b/audio/tokay/tuning/apmg3/downlink_external_speaker_config.pb
new file mode 100644
index 00000000..f501ab82
Binary files /dev/null and b/audio/tokay/tuning/apmg3/downlink_external_speaker_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/downlink_handset_config.pb b/audio/tokay/tuning/apmg3/downlink_handset_config.pb
new file mode 100644
index 00000000..7129053f
Binary files /dev/null and b/audio/tokay/tuning/apmg3/downlink_handset_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/downlink_speaker_config.pb b/audio/tokay/tuning/apmg3/downlink_speaker_config.pb
new file mode 100644
index 00000000..cd25bc7b
Binary files /dev/null and b/audio/tokay/tuning/apmg3/downlink_speaker_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/downlink_wired_headset_config.pb b/audio/tokay/tuning/apmg3/downlink_wired_headset_config.pb
new file mode 100644
index 00000000..0f98f657
Binary files /dev/null and b/audio/tokay/tuning/apmg3/downlink_wired_headset_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_bluetooth_headset_aec_off_config.pb b/audio/tokay/tuning/apmg3/uplink_bluetooth_headset_aec_off_config.pb
new file mode 100644
index 00000000..a6dfdce9
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_bluetooth_headset_aec_off_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_bluetooth_headset_aec_on_config.pb b/audio/tokay/tuning/apmg3/uplink_bluetooth_headset_aec_on_config.pb
new file mode 100644
index 00000000..58ac211e
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_bluetooth_headset_aec_on_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_dock_aec_off_config.pb b/audio/tokay/tuning/apmg3/uplink_dock_aec_off_config.pb
new file mode 100644
index 00000000..06e4ef57
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_dock_aec_off_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_dock_aec_on_config.pb b/audio/tokay/tuning/apmg3/uplink_dock_aec_on_config.pb
new file mode 100644
index 00000000..979a200c
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_dock_aec_on_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_external_speaker_aec_off_config.pb b/audio/tokay/tuning/apmg3/uplink_external_speaker_aec_off_config.pb
new file mode 100644
index 00000000..71038798
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_external_speaker_aec_off_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_external_speaker_aec_on_config.pb b/audio/tokay/tuning/apmg3/uplink_external_speaker_aec_on_config.pb
new file mode 100644
index 00000000..d747bc2e
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_external_speaker_aec_on_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_handset_aec_off_config.pb b/audio/tokay/tuning/apmg3/uplink_handset_aec_off_config.pb
new file mode 100644
index 00000000..93519453
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_handset_aec_off_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_handset_aec_on_config.pb b/audio/tokay/tuning/apmg3/uplink_handset_aec_on_config.pb
new file mode 100644
index 00000000..58dc380a
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_handset_aec_on_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_speaker_aec_off_config.pb b/audio/tokay/tuning/apmg3/uplink_speaker_aec_off_config.pb
new file mode 100644
index 00000000..02348b94
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_speaker_aec_off_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_speaker_aec_on_config.pb b/audio/tokay/tuning/apmg3/uplink_speaker_aec_on_config.pb
new file mode 100644
index 00000000..10f1ed7a
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_speaker_aec_on_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_wired_headset_aec_off_config.pb b/audio/tokay/tuning/apmg3/uplink_wired_headset_aec_off_config.pb
new file mode 100644
index 00000000..679aa66f
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_wired_headset_aec_off_config.pb differ
diff --git a/audio/tokay/tuning/apmg3/uplink_wired_headset_aec_on_config.pb b/audio/tokay/tuning/apmg3/uplink_wired_headset_aec_on_config.pb
new file mode 100644
index 00000000..fec3962d
Binary files /dev/null and b/audio/tokay/tuning/apmg3/uplink_wired_headset_aec_on_config.pb differ
diff --git a/audio/tokay/tuning/fortemedia/BLUETOOTH.dat b/audio/tokay/tuning/fortemedia/BLUETOOTH.dat
index dde49984..3a067102 100644
Binary files a/audio/tokay/tuning/fortemedia/BLUETOOTH.dat and b/audio/tokay/tuning/fortemedia/BLUETOOTH.dat differ
diff --git a/audio/tokay/tuning/fortemedia/BLUETOOTH.mods b/audio/tokay/tuning/fortemedia/BLUETOOTH.mods
index ca001c6b..66d607b6 100644
--- a/audio/tokay/tuning/fortemedia/BLUETOOTH.mods
+++ b/audio/tokay/tuning/fortemedia/BLUETOOTH.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG BLUETOOTH
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:50:42
+#SAVE_TIME 2024-07-19 19:22:42
#CASE_NAME BLUETOOTH-BT_HAC-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -2708,7 +2708,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -3101,7 +3101,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x3000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -5403,7 +5403,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -5796,7 +5796,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -10793,7 +10793,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -11186,7 +11186,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
diff --git a/audio/tokay/tuning/fortemedia/HANDSET.dat b/audio/tokay/tuning/fortemedia/HANDSET.dat
index bddf5ead..186d79c7 100644
Binary files a/audio/tokay/tuning/fortemedia/HANDSET.dat and b/audio/tokay/tuning/fortemedia/HANDSET.dat differ
diff --git a/audio/tokay/tuning/fortemedia/HANDSET.mods b/audio/tokay/tuning/fortemedia/HANDSET.mods
index 573d6d44..9177ce56 100644
--- a/audio/tokay/tuning/fortemedia/HANDSET.mods
+++ b/audio/tokay/tuning/fortemedia/HANDSET.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HANDSET
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:50:41
+#SAVE_TIME 2024-07-19 19:22:41
#CASE_NAME HANDSET-HANDSET-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -3228,10 +3228,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -5923,10 +5923,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -14008,10 +14008,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -16703,10 +16703,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -22093,10 +22093,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -27483,10 +27483,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -32873,10 +32873,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -38263,10 +38263,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -43653,10 +43653,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -46348,10 +46348,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -54433,10 +54433,10 @@
521 0x0000 //TX_GSC_RTOL_TH
522 0x0000 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -57128,10 +57128,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
@@ -62518,10 +62518,10 @@
521 0x3A98 //TX_GSC_RTOL_TH
522 0x3A98 //TX_GSC_RTOH_TH
523 0x7E2C //TX_WIDE2_MEANHTH
-524 0x0000 //TX_KIDDET_NTH
-525 0x0000 //TX_B_POST_FLT_KID
-526 0x122E //TX_T0_NE_TH
-527 0x1100 //TX_T0_NE_3_TH
+524 0x0003 //TX_KIDDET_NTH
+525 0x1000 //TX_B_POST_FLT_KID
+526 0x0DAC //TX_T0_NE_TH
+527 0x0FA0 //TX_T0_NE_3_TH
528 0x1333 //TX_WIND_MARK_TH
529 0x399A //TX_CORR_THR
530 0x0004 //TX_SNR_THR
diff --git a/audio/tokay/tuning/fortemedia/HANDSFREE.dat b/audio/tokay/tuning/fortemedia/HANDSFREE.dat
index 246cbe2b..55f4e3ee 100644
Binary files a/audio/tokay/tuning/fortemedia/HANDSFREE.dat and b/audio/tokay/tuning/fortemedia/HANDSFREE.dat differ
diff --git a/audio/tokay/tuning/fortemedia/HANDSFREE.mods b/audio/tokay/tuning/fortemedia/HANDSFREE.mods
index b4a80f31..e31f8d4c 100644
--- a/audio/tokay/tuning/fortemedia/HANDSFREE.mods
+++ b/audio/tokay/tuning/fortemedia/HANDSFREE.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HANDSFREE
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:50:40
+#SAVE_TIME 2024-07-19 19:22:40
#CASE_NAME HANDSFREE-HANDSFREE-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -2708,7 +2708,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -3101,7 +3101,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x3000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -5403,7 +5403,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -5796,7 +5796,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -10793,7 +10793,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F75 //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -11186,7 +11186,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -16183,7 +16183,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -16576,7 +16576,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -21573,7 +21573,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F55 //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -21966,7 +21966,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -26963,7 +26963,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -27356,7 +27356,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
diff --git a/audio/tokay/tuning/fortemedia/HEADSET.dat b/audio/tokay/tuning/fortemedia/HEADSET.dat
index 6bd18513..913c5bbe 100644
Binary files a/audio/tokay/tuning/fortemedia/HEADSET.dat and b/audio/tokay/tuning/fortemedia/HEADSET.dat differ
diff --git a/audio/tokay/tuning/fortemedia/HEADSET.mods b/audio/tokay/tuning/fortemedia/HEADSET.mods
index 69c2b421..548cd37a 100644
--- a/audio/tokay/tuning/fortemedia/HEADSET.mods
+++ b/audio/tokay/tuning/fortemedia/HEADSET.mods
@@ -3,7 +3,7 @@
#EXPORT_FLAG HEADSET
#PARAM_MODE FULL
#SAVE_MODE 3
-#SAVE_TIME 2024-06-06 17:50:38
+#SAVE_TIME 2024-07-19 19:22:38
#CASE_NAME HEADSET-USB_BLACKBIRD-VOICE_GENERIC-NB
#PARAM_TYPE TX+2RX
@@ -29658,7 +29658,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -30051,7 +30051,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x3000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -32353,7 +32353,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -32746,7 +32746,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -37743,7 +37743,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -38136,7 +38136,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -70083,7 +70083,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0001 //TX_SAMPLINGFREQ_SIG
7 0x0001 //TX_SAMPLINGFREQ_PROC
@@ -70476,7 +70476,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x3000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x4000 //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -72778,7 +72778,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -73171,7 +73171,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
@@ -78168,7 +78168,7 @@
1 0x0001 //TX_OPERATION_MODE_1
2 0x00BB //TX_PATCH_REG
3 0x6F7D //TX_SENDFUNC_MODE_0
-4 0x0080 //TX_SENDFUNC_MODE_1
+4 0x0000 //TX_SENDFUNC_MODE_1
5 0x0003 //TX_NUM_MIC
6 0x0003 //TX_SAMPLINGFREQ_SIG
7 0x0003 //TX_SAMPLINGFREQ_PROC
@@ -78561,7 +78561,7 @@
394 0x0000 //TX_MEL_G_R
395 0x0080 //TX_SUPHIGH_TH
396 0x0000 //TX_MASK_G_R
-397 0x0082 //TX_LOGSNR_THR
+397 0x8001 //TX_LOGSNR_THR
398 0x0000 //TX_C_POST_FLT_MASK
399 0x7FFF //TX_A_POST_FLT_WNS
400 0x0148 //TX_MIN_G_LOW300HZ
diff --git a/audio/tokay/tuning/pts/speaker_post_processing_volume_spec.xml b/audio/tokay/tuning/pts/speaker_post_processing_volume_spec.xml
new file mode 100644
index 00000000..969fd435
--- /dev/null
+++ b/audio/tokay/tuning/pts/speaker_post_processing_volume_spec.xml
@@ -0,0 +1,31 @@
+
+
+
+ -55.633537,-57.12799
+ -52.74118,-54.248005
+ -49.229015,-50.760155
+ -46.39415,-47.93267
+ -42.696896,-44.252502
+ -39.243034,-40.831715
+ -36.365067,-37.983456
+ -33.502815,-35.130657
+ -31.668825,-33.308605
+ -29.462334,-31.116865
+ -26.979172,-28.646566
+ -24.473492,-26.155708
+ -22.479034,-24.18116
+ -20.641127,-22.376537
+ -18.619516,-20.410694
+ -17.039654,-18.978006
+ -15.964582,-18.063643
+ -14.847198,-17.068687
+ -13.786341,-16.13179
+ -12.377989,-14.879541
+ -11.468842,-14.155666
+ -10.673872,-13.19977
+ -9.866504,-12.5231495
+ -9.465342,-12.234019
+ -9.418919,-12.183332
+
+
+
diff --git a/audio/tokay/tuning/spatializer/base b/audio/tokay/tuning/spatializer/base
index 38cc646e..42b4329e 100644
Binary files a/audio/tokay/tuning/spatializer/base and b/audio/tokay/tuning/spatializer/base differ
diff --git a/audio/tokay/tuning/spatializer/mode_2_ch b/audio/tokay/tuning/spatializer/mode_2_ch
index 470c56cf..2610b2d9 100644
Binary files a/audio/tokay/tuning/spatializer/mode_2_ch and b/audio/tokay/tuning/spatializer/mode_2_ch differ
diff --git a/audio/tokay/tuning/spatializer/mode_6_ch b/audio/tokay/tuning/spatializer/mode_6_ch
index 94ec6356..0f432fa3 100644
Binary files a/audio/tokay/tuning/spatializer/mode_6_ch and b/audio/tokay/tuning/spatializer/mode_6_ch differ
diff --git a/audio/tokay/tuning/spatializer/mode_xaural b/audio/tokay/tuning/spatializer/mode_xaural
index b3a3a962..619e215f 100644
Binary files a/audio/tokay/tuning/spatializer/mode_xaural and b/audio/tokay/tuning/spatializer/mode_xaural differ
diff --git a/bluetooth/audio_set_configurations.json b/bluetooth/audio_set_configurations.json
new file mode 100644
index 00000000..6a03f6bb
--- /dev/null
+++ b/bluetooth/audio_set_configurations.json
@@ -0,0 +1,7492 @@
+{
+ "_comments_": [
+ " == Audio Set Configurations == ",
+ " Contains: ",
+ " 1. configurations : ",
+ " Maps configuration name with codec and qos config to be used",
+ " 2. codec_configurations : ",
+ " Array of codec specific configurations",
+ " 3. qos_configurations : ",
+ " Array of QoS specific configurations",
+ " QoS configuration values are as per BAP spec 1.0",
+ " Example values which can be used as 'codec_configuration.type'",
+ " Codec Configuration parameter types:",
+ " SUPPORTED_SAMPLING_FREQUENCY = 1",
+ " SUPPORTED_FRAME_DURATION = 2",
+ " SUPPORTED_OCTETS_PER_CODEC_FRAME = 4",
+ " SUPPORTED_CODEC_FRAME_BLOCKS_PER_SDU = 5",
+ " Example values which can be used as 'codec_configuration.compound_value'",
+ " Codec Coding formats:",
+ " LC3 = 6",
+ " Sampling Frequencies: ",
+ " 8000Hz = 1",
+ " 11025Hz = 2",
+ " 16000Hz = 3",
+ " 22050Hz = 4",
+ " 24000Hz = 5",
+ " 32000Hz = 6",
+ " 44100Hz = 7",
+ " 48000Hz = 8",
+ " 88200Hz = 9",
+ " 96000Hz = 10",
+ " 176400Hz = 11",
+ " 192000Hz = 12",
+ " 384000Hz = 13",
+ " Frame Durations:",
+ " 7500us = 0",
+ " 10000us = 1"
+ ],
+ "configurations": [
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1_Balanced_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1_1",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_1"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2_1",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_1"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_2"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_1_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_32_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_1_1",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_32_1",
+ "qos_config_name": [
+ "QoS_Config_32_1_1"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_1_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_32_1",
+ "qos_config_name": [
+ "QoS_Config_32_1_2"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_2_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_2_1",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_32_2_1"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_2_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_32_2_2"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_1_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_1_1",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_1"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_1_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_2_1",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_1"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_2_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2_1",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_32_2_1"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_1",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_1"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_1",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_1"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_1"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_1"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_2"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_48_4_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SrcAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_48_3_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SrcAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_48_2_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SrcAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_48_1_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SrcAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_32_1_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SrcAse-Lc3_32_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SrcAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_24_1_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SrcAse-Lc3_24_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_16_1_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "qos_config_name": [
+ "QoS_Config_16_1_2"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_1"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_16_2_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_24_1_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_24_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_24_1_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_24_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_24_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_24_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_24_2_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_24_2_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_24_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_24_2_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_24_2_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_24_2_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_24_2_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_24_2_2"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_24_2_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_24_2_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_32_2_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_32_2_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_1_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_32_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_32_1_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_32_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_1_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_32_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_32_2_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_32_2_1"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_32_2_1"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_32_2_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4_High_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_48_4_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_48_4_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_3_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_3_High_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_3_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_48_3_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_2_High_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_2_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_48_2_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_1_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_1_High_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_1_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_48_1_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4_High_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4_1",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_48_4_1"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_48_4_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_3_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_3_High_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_3_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_48_3_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_2_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_2_High_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_2_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_48_2_2"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_1_Low_Latency",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_1_High_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_1_2",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_48_1_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4_High_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4_1",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_48_4_1"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_48_4_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_3_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_3_High_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_3_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_48_3_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_2_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_2_High_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_2_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_48_2_2"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_1_Low_Latency",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_1_High_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_1_2",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_48_1_2"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_4_High_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_4_1",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_48_4_1"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_4_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_4",
+ "qos_config_name": [
+ "QoS_Config_48_4_2"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_3_High_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_3_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_3",
+ "qos_config_name": [
+ "QoS_Config_48_3_2"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_2_High_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_2_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_48_2_2"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_1_High_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_1_2",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_48_1_2"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_OneChanStereoSrc_32khz_60octs_Low_Latency_1",
+ "codec_config_name": "VND_SingleDev_TwoChanStereoSnk_OneChanStereoSrc_32khz_60octs_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_OneChanStereoSrc_32khz_60oct_R3_L22_1",
+ "codec_config_name": "VND_SingleDev_TwoChanStereoSnk_OneChanStereoSrc_32khz_60octs_1",
+ "qos_config_name": [
+ "VND_QoS_Config_R3_L22"
+ ]
+ },
+ {
+ "name": "VND_DualDev_OneChanStereoSnk_48khz_100octs_High_Reliability_1",
+ "codec_config_name": "VND_DualDev_OneChanStereoSnk_48khz_100octs_1",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "VND_DualDev_OneChanStereoSnk_48khz_100octs_R15_L70_1",
+ "codec_config_name": "VND_DualDev_OneChanStereoSnk_48khz_100octs_1",
+ "qos_config_name": [
+ "VND_QoS_Config_R15_L70"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_OneChanStereoSnk_48khz_100octs_High_Reliability_1",
+ "codec_config_name": "VND_SingleDev_OneChanStereoSnk_48khz_100octs_1",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_OneChanStereoSnk_48khz_100octs_R15_L70_1",
+ "codec_config_name": "VND_SingleDev_OneChanStereoSnk_48khz_100octs_1",
+ "qos_config_name": [
+ "VND_QoS_Config_R15_L70"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_48khz_100octs_High_Reliability_1",
+ "codec_config_name": "VND_SingleDev_TwoChanStereoSnk_48khz_100octs_1",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_48khz_100octs_R15_L70_1",
+ "codec_config_name": "VND_SingleDev_TwoChanStereoSnk_48khz_100octs_1",
+ "qos_config_name": [
+ "VND_QoS_Config_R15_L70"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_High_Reliability_1",
+ "codec_config_name": "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_1",
+ "qos_config_name": [
+ "QoS_Config_High_Reliability"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_R5_L12_1",
+ "codec_config_name": "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_1",
+ "qos_config_name": [
+ "VND_QoS_Config_R5_L12"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "codec_config_name": "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-TwoChan-SnkAse-Lc3_48_1-Two-TwoChan-SrcAse-Lc3_48_1_Low_Latency",
+ "codec_config_name": "Two-TwoChan-SnkAse-Lc3_48_1-Two-TwoChan-SrcAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-TwoChan-SnkAse-Lc3_48_1-Two-TwoChan-SrcAse-Lc3_48_1_Balanced_Reliability",
+ "codec_config_name": "Two-TwoChan-SnkAse-Lc3_48_1-Two-TwoChan-SrcAse-Lc3_48_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Two-TwoChan-SnkAse-Lc3_48_2-Two-TwoChan-SrcAse-Lc3_48_2_Low_Latency",
+ "codec_config_name": "Two-TwoChan-SnkAse-Lc3_48_2-Two-TwoChan-SrcAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_Low_Latency"
+ ]
+ },
+ {
+ "name": "Two-TwoChan-SnkAse-Lc3_48_2-Two-TwoChan-SrcAse-Lc3_48_2_Balanced_Reliability",
+ "codec_config_name": "Two-TwoChan-SnkAse-Lc3_48_2-Two-TwoChan-SrcAse-Lc3_48_2",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSrc_48khz_100octs_Balanced_Reliability_1",
+ "codec_config_name": "VND_SingleDev_TwoChanStereoSrc_48khz_100octs_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSrc_48khz_100octs_R11_L40_1",
+ "codec_config_name": "VND_SingleDev_TwoChanStereoSrc_48khz_100octs_1",
+ "qos_config_name": [
+ "VND_QoS_Config_R11_L40"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_R5_L12_TwoChanStereoSrc_16khz_30octs_R3_L12_1",
+ "codec_config_name": "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_TwoChanStereoSrc_16khz_30octs_1",
+ "qos_config_name": [
+ "VND_QoS_Config_R5_L12",
+ "VND_QoS_Config_R3_L12"
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_TwoChanStereoSrc_16khz_30octs_Balanced_Reliability_1",
+ "codec_config_name": "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_TwoChanStereoSrc_16khz_30octs_1",
+ "qos_config_name": [
+ "QoS_Config_Balanced_Reliability"
+ ]
+ }
+ ],
+ "codec_configurations": [
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_24_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 2,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 2,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_48_4",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_48_3",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 90,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_48_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 100,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_48_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 75,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_32_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_24_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 45,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SrcAse-Lc3_16_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_3",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 90,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 100,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 75,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_3",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 90,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 100,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 75,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_4",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_3",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 90,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 100,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 75,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_48khz_100octs_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 100,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "VND_DualDev_OneChanStereoSnk_48khz_100octs_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 100,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "VND_SingleDev_OneChanStereoSnk_48khz_100octs_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 100,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 75,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 2,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_24_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 2,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 2,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_24_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 120,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 40,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-TwoChan-SnkAse-Lc3_48_1-Two-TwoChan-SrcAse-Lc3_48_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 75,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 75,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "Two-TwoChan-SnkAse-Lc3_48_2-Two-TwoChan-SrcAse-Lc3_48_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 100,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 100,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSrc_48khz_100octs_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 100,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_OneChanStereoSrc_32khz_60octs_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_TwoChanStereoSrc_16khz_30octs_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 8
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 75,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 3
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 30,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_24_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_24_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 45,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_24_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_24_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 45,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_24_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 5
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 2,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 2,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ },
+ {
+ "ase_cnt": 1,
+ "direction": "SOURCE",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 1
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_32_2",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 80,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ },
+ {
+ "name": "One-TwoChan-SnkAse-Lc3_32_1",
+ "subconfigurations": [
+ {
+ "ase_cnt": 1,
+ "direction": "SINK",
+ "codec_id": {
+ "coding_format": 6,
+ "vendor_company_id": 0,
+ "vendor_codec_id": 0
+ },
+ "codec_configuration": [
+ {
+ "name": "sampling_frequency",
+ "type": 1,
+ "compound_value": {
+ "value": [
+ 6
+ ]
+ }
+ },
+ {
+ "name": "frame_duration",
+ "type": 2,
+ "compound_value": {
+ "value": [
+ 0
+ ]
+ }
+ },
+ {
+ "name": "octets_per_codec_frame",
+ "type": 4,
+ "compound_value": {
+ "value": [
+ 60,
+ 0
+ ]
+ }
+ },
+ {
+ "name": "codec_frame_blocks_per_sdu",
+ "type": 5,
+ "compound_value": {
+ "value": [
+ 1
+ ]
+ }
+ }
+ ],
+ "ase_channel_cnt": 2
+ }
+ ]
+ }
+ ],
+ "qos_configurations": [
+ {
+ "name": "QoS_Config_16_1_1",
+ "retransmission_number": 2,
+ "max_transport_latency": 8
+ },
+ {
+ "name": "QoS_Config_16_1_2",
+ "retransmission_number": 13,
+ "max_transport_latency": 75
+ },
+ {
+ "name": "QoS_Config_16_2_1",
+ "retransmission_number": 2,
+ "max_transport_latency": 10
+ },
+ {
+ "name": "QoS_Config_16_2_2",
+ "retransmission_number": 13,
+ "max_transport_latency": 95
+ },
+ {
+ "name": "QoS_Config_24_1_1",
+ "retransmission_number": 2,
+ "max_transport_latency": 8
+ },
+ {
+ "name": "QoS_Config_24_1_2",
+ "retransmission_number": 13,
+ "max_transport_latency": 75
+ },
+ {
+ "name": "QoS_Config_24_2_1",
+ "retransmission_number": 2,
+ "max_transport_latency": 10
+ },
+ {
+ "name": "QoS_Config_24_2_2",
+ "retransmission_number": 13,
+ "max_transport_latency": 95
+ },
+ {
+ "name": "QoS_Config_32_1_1",
+ "retransmission_number": 2,
+ "max_transport_latency": 8
+ },
+ {
+ "name": "QoS_Config_32_1_2",
+ "retransmission_number": 13,
+ "max_transport_latency": 75
+ },
+ {
+ "name": "QoS_Config_32_2_1",
+ "retransmission_number": 2,
+ "max_transport_latency": 10
+ },
+ {
+ "name": "QoS_Config_32_2_2",
+ "retransmission_number": 13,
+ "max_transport_latency": 95
+ },
+ {
+ "name": "QoS_Config_48_1_2",
+ "retransmission_number": 13,
+ "max_transport_latency": 75
+ },
+ {
+ "name": "QoS_Config_48_2_2",
+ "retransmission_number": 13,
+ "max_transport_latency": 95
+ },
+ {
+ "name": "QoS_Config_48_3_2",
+ "retransmission_number": 13,
+ "max_transport_latency": 75
+ },
+ {
+ "name": "QoS_Config_48_4_1",
+ "retransmission_number": 5,
+ "max_transport_latency": 20
+ },
+ {
+ "name": "QoS_Config_48_4_2",
+ "retransmission_number": 13,
+ "max_transport_latency": 100
+ },
+ {
+ "name": "VND_QoS_Config_R3_L22",
+ "retransmission_number": 3,
+ "max_transport_latency": 22
+ },
+ {
+ "name": "VND_QoS_Config_R15_L70",
+ "retransmission_number": 15,
+ "max_transport_latency": 70
+ },
+ {
+ "name": "VND_QoS_Config_R5_L12",
+ "retransmission_number": 5,
+ "max_transport_latency": 12
+ },
+ {
+ "name": "VND_QoS_Config_R11_L40",
+ "retransmission_number": 11,
+ "max_transport_latency": 40
+ },
+ {
+ "name": "VND_QoS_Config_R3_L12",
+ "retransmission_number": 3,
+ "max_transport_latency": 12
+ },
+ {
+ "name": "QoS_Config_Low_Latency",
+ "target_latency": "LOW",
+ "retransmission_number": 0,
+ "max_transport_latency": 0
+ },
+ {
+ "name": "QoS_Config_Balanced_Reliability",
+ "target_latency": "BALANCED_RELIABILITY",
+ "retransmission_number": 0,
+ "max_transport_latency": 0
+ },
+ {
+ "name": "QoS_Config_High_Reliability",
+ "target_latency": "HIGH_RELIABILITY",
+ "retransmission_number": 0,
+ "max_transport_latency": 0
+ }
+ ]
+}
diff --git a/bluetooth/audio_set_scenarios.json b/bluetooth/audio_set_scenarios.json
new file mode 100644
index 00000000..ec36d87c
--- /dev/null
+++ b/bluetooth/audio_set_scenarios.json
@@ -0,0 +1,259 @@
+{
+ "_comments_": [
+ "== Audio Set Scenarios ==",
+ " Each defined scenario references externally defined audio set",
+ " configurations, listed in the order of priority."
+ ],
+ "scenarios": [
+ {
+ "name": "Conversational",
+ "configurations": [
+ "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2_1",
+ "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_1",
+ "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_2",
+ "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_1",
+ "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_2",
+ "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_2",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_1",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_2",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "Two-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_48_4_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_48_2_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_48_3_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_48_1_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_32_1_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_24_1_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_16_1_Balanced_Reliability",
+ "VND_SingleDev_TwoChanStereoSnk_OneChanStereoSrc_32khz_60oct_R3_L22_1",
+ "Two-OneChan-SnkAse-Lc3_16_2_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_16_2_Balanced_Reliability",
+ "One-OneChan-SnkAse-Lc3_16_2_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Media",
+ "configurations": [
+ "Two-OneChan-SnkAse-Lc3_48_4_High_Reliability",
+ "Two-OneChan-SnkAse-Lc3_48_4_2",
+ "Two-OneChan-SnkAse-Lc3_48_2_High_Reliability",
+ "Two-OneChan-SnkAse-Lc3_48_2_2",
+ "Two-OneChan-SnkAse-Lc3_48_3_High_Reliability",
+ "Two-OneChan-SnkAse-Lc3_48_3_2",
+ "Two-OneChan-SnkAse-Lc3_48_1_High_Reliability",
+ "Two-OneChan-SnkAse-Lc3_48_1_2",
+ "Two-OneChan-SnkAse-Lc3_24_2_Balanced_Reliability",
+ "Two-OneChan-SnkAse-Lc3_24_2_2",
+ "Two-OneChan-SnkAse-Lc3_16_2_Balanced_Reliability",
+ "Two-OneChan-SnkAse-Lc3_16_2_2",
+ "Two-OneChan-SnkAse-Lc3_16_1_Balanced_Reliability",
+ "Two-OneChan-SnkAse-Lc3_16_1_2",
+ "One-TwoChan-SnkAse-Lc3_48_4_High_Reliability",
+ "One-TwoChan-SnkAse-Lc3_48_4_2",
+ "One-TwoChan-SnkAse-Lc3_48_2_High_Reliability",
+ "One-TwoChan-SnkAse-Lc3_48_2_2",
+ "One-TwoChan-SnkAse-Lc3_48_3_High_Reliability",
+ "One-TwoChan-SnkAse-Lc3_48_3_2",
+ "One-TwoChan-SnkAse-Lc3_48_1_High_Reliability",
+ "One-TwoChan-SnkAse-Lc3_48_1_2",
+ "One-TwoChan-SnkAse-Lc3_24_2_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_24_2_2",
+ "One-TwoChan-SnkAse-Lc3_16_2_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_16_2_2",
+ "One-TwoChan-SnkAse-Lc3_16_1_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_16_1_2",
+ "One-OneChan-SnkAse-Lc3_48_4_High_Reliability",
+ "One-OneChan-SnkAse-Lc3_48_4_2",
+ "One-OneChan-SnkAse-Lc3_48_2_High_Reliability",
+ "One-OneChan-SnkAse-Lc3_48_2_2",
+ "One-OneChan-SnkAse-Lc3_48_3_High_Reliability",
+ "One-OneChan-SnkAse-Lc3_48_3_2",
+ "One-OneChan-SnkAse-Lc3_48_1_High_Reliability",
+ "One-OneChan-SnkAse-Lc3_48_1_2",
+ "One-OneChan-SnkAse-Lc3_32_2_Balanced_Reliability",
+ "One-OneChan-SnkAse-Lc3_32_2_2",
+ "One-OneChan-SnkAse-Lc3_32_1_Balanced_Reliability",
+ "One-OneChan-SnkAse-Lc3_32_1_2",
+ "One-OneChan-SnkAse-Lc3_24_2_Balanced_Reliability",
+ "One-OneChan-SnkAse-Lc3_24_2_2",
+ "One-OneChan-SnkAse-Lc3_16_2_Balanced_Reliability",
+ "One-OneChan-SnkAse-Lc3_16_2_2",
+ "One-OneChan-SnkAse-Lc3_16_1_Balanced_Reliability",
+ "One-OneChan-SnkAse-Lc3_16_1_2",
+ "VND_DualDev_OneChanStereoSnk_48khz_100octs_High_Reliability_1",
+ "VND_DualDev_OneChanStereoSnk_48khz_100octs_R15_L70_1",
+ "VND_SingleDev_TwoChanStereoSnk_48khz_100octs_High_Reliability_1",
+ "VND_SingleDev_TwoChanStereoSnk_48khz_100octs_R15_L70_1",
+ "VND_SingleDev_OneChanStereoSnk_48khz_100octs_High_Reliability_1",
+ "VND_SingleDev_OneChanStereoSnk_48khz_100octs_R15_L70_1",
+ "Two-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Game",
+ "configurations": [
+ "One-TwoChan-SnkAse-Lc3_48_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_48_3_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_48_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_32_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_32_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_24_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_24_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_1_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2_1",
+ "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "Two-TwoChan-SnkAse-Lc3_48_2-Two-TwoChan-SrcAse-Lc3_48_2_Low_Latency",
+ "Two-TwoChan-SnkAse-Lc3_48_1-Two-TwoChan-SrcAse-Lc3_48_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_TwoChanStereoSrc_16khz_30octs_Balanced_Reliability_1",
+ "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_R5_L12_TwoChanStereoSrc_16khz_30octs_R3_L12_1",
+ "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_High_Reliability_1",
+ "VND_SingleDev_TwoChanStereoSnk_48khz_75octs_R5_L12_1",
+ "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_48_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_48_3_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_48_1_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_32_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_32_1_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_24_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_24_1_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_1_Low_Latency"
+ ]
+ },
+ {
+ "name": "VoiceAssistants",
+ "configurations": [
+ "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2_1",
+ "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_1",
+ "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_1",
+ "Two-TwoChan-SnkAse-Lc3_48_2-Two-TwoChan-SrcAse-Lc3_48_2_Balanced_Reliability",
+ "Two-TwoChan-SnkAse-Lc3_48_1-Two-TwoChan-SrcAse-Lc3_48_1_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_1",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "Two-OneChan-SnkAse-Lc3_48_4-Two-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "Two-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_48_4-One-TwoChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_24_2_Balanced_Reliability",
+ "One-OneChan-SnkAse-Lc3_48_4-One-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability"
+ ]
+ },
+ {
+ "name": "Live",
+ "configurations": [
+ "VND_SingleDev_TwoChanStereoSrc_48khz_100octs_Balanced_Reliability_1",
+ "VND_SingleDev_TwoChanStereoSrc_48khz_100octs_R11_L40_1",
+ "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2_1",
+ "Two-OneChan-SnkAse-Lc3_32_2-Two-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-Two-OneChan-SrcAse-Lc3_16_2_1",
+ "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_1-Two-OneChan-SrcAse-Lc3_16_1_1",
+ "Two-TwoChan-SnkAse-Lc3_48_2-Two-TwoChan-SrcAse-Lc3_48_2_Balanced_Reliability",
+ "Two-TwoChan-SnkAse-Lc3_48_1-Two-TwoChan-SrcAse-Lc3_48_1_Balanced_Reliability",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-TwoChan-SrcAse-Lc3_32_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-TwoChan-SrcAse-Lc3_16_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-TwoChan-SrcAse-Lc3_16_1_1",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-TwoChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "Two-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "Two-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_32_2-One-OneChan-SrcAse-Lc3_32_2_1",
+ "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_16_2-One-OneChan-SrcAse-Lc3_16_2_1",
+ "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_Low_Latency",
+ "One-OneChan-SnkAse-Lc3_16_1-One-OneChan-SrcAse-Lc3_16_1_1",
+ "One-OneChan-SrcAse-Lc3_48_2_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_48_1_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_32_2_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_32_1_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_16_2_Balanced_Reliability",
+ "One-OneChan-SrcAse-Lc3_16_1_Balanced_Reliability"
+ ]
+ }
+ ]
+}
diff --git a/bluetooth/bt_vendor_overlay_caiman.conf b/bluetooth/bt_vendor_overlay_caiman.conf
index c784f0ed..6f6100f0 100644
--- a/bluetooth/bt_vendor_overlay_caiman.conf
+++ b/bluetooth/bt_vendor_overlay_caiman.conf
@@ -40,3 +40,9 @@ BtHalBqrEnable = false
HwStageWithOldChipFwNoLongerSupport = EVT1.0-PROTO1.0-PROTO1.1
ThreadDispatcherEnabled = true
+
+# A2DP_LDAC_QUALITY_HIGH 0 // Equal to 990/909(kbps)
+# A2DP_LDAC_QUALITY_MID 1 // Equal to 660/606(kbps)
+# A2DP_LDAC_QUALITY_LOW 2 // Equal to 330/303(kbps)
+# A2DP_LDAC_QUALITY_ABR 3 // ABR mode, range: 990,660,492,396,330(kbps)
+LdacDefaultQualityMode = 1
diff --git a/bluetooth/bt_vendor_overlay_komodo.conf b/bluetooth/bt_vendor_overlay_komodo.conf
index c784f0ed..6f6100f0 100644
--- a/bluetooth/bt_vendor_overlay_komodo.conf
+++ b/bluetooth/bt_vendor_overlay_komodo.conf
@@ -40,3 +40,9 @@ BtHalBqrEnable = false
HwStageWithOldChipFwNoLongerSupport = EVT1.0-PROTO1.0-PROTO1.1
ThreadDispatcherEnabled = true
+
+# A2DP_LDAC_QUALITY_HIGH 0 // Equal to 990/909(kbps)
+# A2DP_LDAC_QUALITY_MID 1 // Equal to 660/606(kbps)
+# A2DP_LDAC_QUALITY_LOW 2 // Equal to 330/303(kbps)
+# A2DP_LDAC_QUALITY_ABR 3 // ABR mode, range: 990,660,492,396,330(kbps)
+LdacDefaultQualityMode = 1
diff --git a/bluetooth/bt_vendor_overlay_tokay.conf b/bluetooth/bt_vendor_overlay_tokay.conf
index c784f0ed..6f6100f0 100644
--- a/bluetooth/bt_vendor_overlay_tokay.conf
+++ b/bluetooth/bt_vendor_overlay_tokay.conf
@@ -40,3 +40,9 @@ BtHalBqrEnable = false
HwStageWithOldChipFwNoLongerSupport = EVT1.0-PROTO1.0-PROTO1.1
ThreadDispatcherEnabled = true
+
+# A2DP_LDAC_QUALITY_HIGH 0 // Equal to 990/909(kbps)
+# A2DP_LDAC_QUALITY_MID 1 // Equal to 660/606(kbps)
+# A2DP_LDAC_QUALITY_LOW 2 // Equal to 330/303(kbps)
+# A2DP_LDAC_QUALITY_ABR 3 // ABR mode, range: 990,660,492,396,330(kbps)
+LdacDefaultQualityMode = 1
diff --git a/caiman/BoardConfig.mk b/caiman/BoardConfig.mk
index c90eeea7..9d597124 100644
--- a/caiman/BoardConfig.mk
+++ b/caiman/BoardConfig.mk
@@ -20,10 +20,15 @@ TARGET_SCREEN_DENSITY := 480
BOARD_USES_GENERIC_AUDIO := true
USES_DEVICE_GOOGLE_CAIMITO := true
+RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_CAIMAN_RADIO_DIR)
+RELEASE_GOOGLE_PRODUCT_RADIOCFG_DIR := $(RELEASE_GOOGLE_CAIMAN_RADIOCFG_DIR)
+RELEASE_GOOGLE_PRODUCT_NTNRADIO_DIR := $(RELEASE_GOOGLE_CAIMAN_NTNRADIO_DIR)
+
include device/google/caimito/device-caimito-common.mk
include device/google/zumapro/BoardConfig-common.mk
-include vendor/google_devices/zumapro/prebuilts/BoardConfigVendor.mk
+include device/google/gs-common/check_current_prebuilt/check_current_prebuilt.mk
-include vendor/google_devices/caiman/proprietary/BoardConfigVendor.mk
include device/google/caimito/sepolicy/caiman-sepolicy.mk
include device/google/caimito/wifi/BoardConfig-wifi.mk
diff --git a/caiman/overlay/frameworks/base/core/res/res/values/config.xml b/caiman/overlay/frameworks/base/core/res/res/values/config.xml
index 024b6c4b..ada5548d 100644
--- a/caiman/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/caiman/overlay/frameworks/base/core/res/res/values/config.xml
@@ -54,6 +54,10 @@
- 0.067451923
+
+ 105%
+
0
@@ -173,9 +177,12 @@
- 0.335
- 52dp
- 52dp
- 52dp
+
+ 68dp
+
+ 24dp
- m 586,0 h 108.5 v 155.5 H 586 Z
+ m 586,0 h 108.5 v 204 H 586 Z
@left
- - 79
+ - 31
- - 118
+ - 39
- - 331
+ - 540
- - 3700
+ - 3850
diff --git a/caiman/overlay/frameworks/base/packages/SystemUI/res/values/config.xml b/caiman/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
index 116b0df5..2e6af64a 100644
--- a/caiman/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
+++ b/caiman/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
@@ -39,16 +39,6 @@
always-on display) -->
com.google.sensor.binned_brightness
-
-
- - -1
- - 1
- - 2
- - 7
- - 7
-
-
+
+
+
+
+
diff --git a/caiman/rro_overlays/UwbOverlay/OWNERS b/caiman/rro_overlays/UwbOverlay/OWNERS
new file mode 100644
index 00000000..2395d7f0
--- /dev/null
+++ b/caiman/rro_overlays/UwbOverlay/OWNERS
@@ -0,0 +1,3 @@
+# People who can approve changes for submission
+include platform/packages/modules/Uwb:/OWNERS
+victorliu@google.com
diff --git a/caiman/rro_overlays/UwbOverlay/res/values/config.xml b/caiman/rro_overlays/UwbOverlay/res/values/config.xml
new file mode 100644
index 00000000..2e9b3222
--- /dev/null
+++ b/caiman/rro_overlays/UwbOverlay/res/values/config.xml
@@ -0,0 +1,41 @@
+
+
+
+
+ true
+
+
+ true
+
+
+ true
+
+
+ true
+
+
+ true
+
diff --git a/caiman/uwb/Android.bp b/caiman/uwb/Android.bp
index de2da1f5..3b575b16 100644
--- a/caiman/uwb/Android.bp
+++ b/caiman/uwb/Android.bp
@@ -69,3 +69,9 @@ prebuilt_etc {
defaults: ["conf_defaults"],
}
+prebuilt_etc {
+ name: "capabilities.conf",
+ src: "capabilities.conf",
+ defaults: ["conf_defaults"],
+}
+
diff --git a/caiman/uwb/capabilities.conf b/caiman/uwb/capabilities.conf
new file mode 100644
index 00000000..792aff16
--- /dev/null
+++ b/caiman/uwb/capabilities.conf
@@ -0,0 +1,8 @@
+# Tag 0x13
+# Length 1
+# b0 : Azimuth AoA -90° to 90°
+# b1 : Azimuth AoA -180° to 180°
+# b2 : Elevation AoA
+# b3 : AoA FoM
+# b7-b4 : RFU
+AOA_SUPPORT=0x0B
diff --git a/caiman/uwb/uwb_calibration.mk b/caiman/uwb/uwb_calibration.mk
index 09c4f13b..7dc89a9c 100644
--- a/caiman/uwb/uwb_calibration.mk
+++ b/caiman/uwb/uwb_calibration.mk
@@ -21,4 +21,5 @@ PRODUCT_PACKAGES += \
calibration-FCC.conf \
calibration-JP.conf \
calibration-TW.conf \
- calibration-RESTRICTED.conf
+ calibration-RESTRICTED.conf \
+ capabilities.conf
diff --git a/conf/init.caiman.rc b/conf/init.caiman.rc
index 215e60d2..08989841 100644
--- a/conf/init.caiman.rc
+++ b/conf/init.caiman.rc
@@ -10,6 +10,7 @@ on init && property:ro.boot.hardware.platform=zuma
on init
# eSE streset tool name
setprop persist.vendor.se.streset libstreset24
+ setprop persist.vendor.nfc.streset libstreset24
# No se_chip_en for P1.0
on late-init && property:ro.boot.hardware.revision=PROTO1.0
setprop persist.vendor.se.reset.chip_en false
diff --git a/conf/init.komodo.rc b/conf/init.komodo.rc
index 97a6e229..e118f360 100644
--- a/conf/init.komodo.rc
+++ b/conf/init.komodo.rc
@@ -10,6 +10,7 @@ on init && property:ro.boot.hardware.platform=zuma
on init
# eSE streset tool name
setprop persist.vendor.se.streset libstreset24
+ setprop persist.vendor.nfc.streset libstreset24
# No se_chip_en for P1.0
on late-init && property:ro.boot.hardware.revision=PROTO1.0
setprop persist.vendor.se.reset.chip_en false
diff --git a/conf/init.tokay.rc b/conf/init.tokay.rc
index 99963f92..17e5c795 100644
--- a/conf/init.tokay.rc
+++ b/conf/init.tokay.rc
@@ -10,6 +10,7 @@ on init && property:ro.boot.hardware.platform=zuma
on init
# eSE streset tool name
setprop persist.vendor.se.streset libstreset24
+ setprop persist.vendor.nfc.streset libstreset24
# No se_chip_en for P1.0
on late-init && property:ro.boot.hardware.revision=PROTO1.0
setprop persist.vendor.se.reset.chip_en false
diff --git a/device-caiman.mk b/device-caiman.mk
index 858d150d..5dd453f8 100644
--- a/device-caiman.mk
+++ b/device-caiman.mk
@@ -14,22 +14,27 @@
# limitations under the License.
#
+SHIPPING_API_LEVEL := 34
+
ifdef RELEASE_GOOGLE_CAIMAN_RADIO_DIR
RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_CAIMAN_RADIO_DIR)
endif
ifdef RELEASE_GOOGLE_CAIMAN_RADIOCFG_DIR
RELEASE_GOOGLE_PRODUCT_RADIOCFG_DIR := $(RELEASE_GOOGLE_CAIMAN_RADIOCFG_DIR)
endif
-RELEASE_GOOGLE_BOOTLOADER_CAIMAN_DIR ?= 24Q3-12386881# Keep this for pdk TODO: b/327119000
+RELEASE_GOOGLE_BOOTLOADER_CAIMAN_DIR ?= 24D1# Keep this for pdk TODO: b/327119000
RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/$(RELEASE_GOOGLE_BOOTLOADER_CAIMAN_DIR)
$(call soong_config_set,caimito_bootloader,prebuilt_dir,$(RELEASE_GOOGLE_BOOTLOADER_CAIMAN_DIR))
ifdef RELEASE_KERNEL_CAIMAN_DIR
TARGET_KERNEL_DIR ?= $(RELEASE_KERNEL_CAIMAN_DIR)
TARGET_BOARD_KERNEL_HEADERS ?= $(RELEASE_KERNEL_CAIMAN_DIR)/kernel-headers
+
+include device/google/caimito/device-caimito-16k-common.mk
+
else
-TARGET_KERNEL_DIR ?= device/google/caimito-kernels/6.1/24Q3-12386881
-TARGET_BOARD_KERNEL_HEADERS ?= device/google/caimito-kernels/6.1/24Q3-12386881/kernel-headers
+TARGET_KERNEL_DIR ?= device/google/caimito-kernels/6.1/24D1
+TARGET_BOARD_KERNEL_HEADERS ?= device/google/caimito-kernels/6.1/24D1/kernel-headers
endif
LOCAL_PATH := device/google/caimito
@@ -66,6 +71,7 @@ include device/google/gs-common/bcmbt/bluetooth.mk
include device/google/gs-common/touch/gti/predump_gti.mk
include device/google/caimito/fingerprint/ultrasonic_udfps.mk
include device/google/gs-common/modem/radio_ext/radio_ext.mk
+include device/google/gs-common/gril/hidl/1.7/gril_hidl.mk
# Increment the SVN for any official public releases
ifdef RELEASE_SVN_CAIMAN
@@ -78,6 +84,25 @@ endif
PRODUCT_VENDOR_PROPERTIES += \
ro.vendor.build.svn=$(TARGET_SVN)
+# Set device family property for SMR
+PRODUCT_PROPERTY_OVERRIDES += \
+ ro.build.device_family=CM4KM4TK4TG4
+
+# Set build properties for SMR builds
+ifeq ($(RELEASE_IS_SMR), true)
+ ifneq (,$(RELEASE_BASE_OS_CAIMAN))
+ PRODUCT_BASE_OS := $(RELEASE_BASE_OS_CAIMAN)
+ endif
+endif
+
+# Set build properties for EMR builds
+ifeq ($(RELEASE_IS_EMR), true)
+ ifneq (,$(RELEASE_BASE_OS_CAIMAN))
+ PRODUCT_PROPERTY_OVERRIDES += \
+ ro.build.version.emergency_base_os=$(RELEASE_BASE_OS_CAIMAN)
+ endif
+endif
+
# go/lyric-soong-variables
$(call soong_config_set,lyric,camera_hardware,caiman)
$(call soong_config_set,lyric,tuning_product,caiman)
@@ -265,6 +290,10 @@ PRODUCT_PACKAGES += \
PRODUCT_SOONG_NAMESPACES += \
device/google/caimito/powerstats/caiman
+# UWB Overlay
+PRODUCT_PACKAGES += \
+ UwbOverlayCM4
+
# WiFi Overlay
PRODUCT_PACKAGES += \
WifiOverlay2024
@@ -334,6 +363,11 @@ ifeq ($(filter factory_caiman, $(TARGET_PRODUCT)),)
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.vendor.primarydisplay.vrr.expected_present.timeout_ns=500000000
endif
+# Display OP HZ Config
+PRODUCT_VENDOR_PROPERTIES += \
+ vendor.primarydisplay.op.hs_hz=120 \
+ vendor.primarydisplay.op.ns_hz=120
+
# Display fixed TE2
PRODUCT_VENDOR_PROPERTIES += vendor.primarydisplay.fixed_te2.default_rate_hz=120
@@ -352,6 +386,10 @@ PRODUCT_VENDOR_PROPERTIES += \
persist.vendor.vibrator.hal.context.settlingtime=5000 \
ro.vendor.vibrator.hal.pm.activetimeout=5
+# Override Output Distortion Gain
+PRODUCT_VENDOR_PROPERTIES += \
+ vendor.audio.hapticgenerator.distortion.output.gain=0.48
+
# PKVM Memory Reclaim
PRODUCT_VENDOR_PROPERTIES += \
hypervisor.memory_reclaim.supported=1
@@ -403,7 +441,7 @@ PRODUCT_PRODUCT_PROPERTIES += \
# LE Audio Unicast Allowlist
PRODUCT_PRODUCT_PROPERTIES += \
- persist.bluetooth.leaudio.allow_list=SM-R510
+ persist.bluetooth.leaudio.allow_list=SM-R510,WF-1000XM5
# Support LE & Classic concurrent encryption (b/330704060)
PRODUCT_PRODUCT_PROPERTIES += \
@@ -430,13 +468,30 @@ PRODUCT_PRODUCT_PROPERTIES += \
# Window Extensions
$(call inherit-product, $(SRC_TARGET_DIR)/product/window_extensions.mk)
-# Connectivity Resources Overlay
+# Connectivity Resources Overlay for Thread host settings
PRODUCT_PACKAGES += \
ConnectivityResourcesOverlayCaimitoOverride
+# Thread Dispatcher enablement in Bluetooth HAL
+PRODUCT_PRODUCT_PROPERTIES += \
+ persist.bluetooth.thread_dispatcher.enabled=false
+
#Component Override for Pixel Troubleshooting App
PRODUCT_COPY_FILES += \
device/google/caimito/caiman/caiman-component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/caiman-component-overrides.xml
+# Bluetooth device id
+# Caiman: 0x4110
PRODUCT_PRODUCT_PROPERTIES += \
- persist.bluetooth.thread_dispatcher.enabled=true
+ bluetooth.device_id.product_id=16656
+
+# Set support for LEA multicodec
+PRODUCT_PRODUCT_PROPERTIES += \
+ bluetooth.core.le_audio.codec_extension_aidl.enabled=true
+
+# LE Audio configuration scenarios
+PRODUCT_COPY_FILES += \
+ device/google/caimito/bluetooth/audio_set_scenarios.json:$(TARGET_COPY_OUT_VENDOR)/etc/aidl/le_audio/aidl_audio_set_scenarios.json
+
+PRODUCT_COPY_FILES += \
+ device/google/caimito/bluetooth/audio_set_configurations.json:$(TARGET_COPY_OUT_VENDOR)/etc/aidl/le_audio/aidl_audio_set_configurations.json
diff --git a/device-caimito-16k-common.mk b/device-caimito-16k-common.mk
new file mode 100644
index 00000000..b969354a
--- /dev/null
+++ b/device-caimito-16k-common.mk
@@ -0,0 +1,20 @@
+#
+# Copyright (C) 2024 The Android Open-Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+ifeq ($(TARGET_BOOTS_16K),true)
+# Configures the 16kb kernel directory.
+TARGET_KERNEL_DIR := $(TARGET_KERNEL_DIR)/16kb
+endif
diff --git a/device-komodo.mk b/device-komodo.mk
index a2ba7228..eee3de81 100644
--- a/device-komodo.mk
+++ b/device-komodo.mk
@@ -14,22 +14,27 @@
# limitations under the License.
#
+SHIPPING_API_LEVEL := 34
+
ifdef RELEASE_GOOGLE_KOMODO_RADIO_DIR
RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_KOMODO_RADIO_DIR)
endif
ifdef RELEASE_GOOGLE_KOMODO_RADIOCFG_DIR
RELEASE_GOOGLE_PRODUCT_RADIOCFG_DIR := $(RELEASE_GOOGLE_KOMODO_RADIOCFG_DIR)
endif
-RELEASE_GOOGLE_BOOTLOADER_KOMODO_DIR ?= 24Q3-12386881# Keep this for pdk TODO: b/327119000
+RELEASE_GOOGLE_BOOTLOADER_KOMODO_DIR ?= 24D1# Keep this for pdk TODO: b/327119000
RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/$(RELEASE_GOOGLE_BOOTLOADER_KOMODO_DIR)
$(call soong_config_set,caimito_bootloader,prebuilt_dir,$(RELEASE_GOOGLE_BOOTLOADER_KOMODO_DIR))
ifdef RELEASE_KERNEL_KOMODO_DIR
TARGET_KERNEL_DIR ?= $(RELEASE_KERNEL_KOMODO_DIR)
TARGET_BOARD_KERNEL_HEADERS ?= $(RELEASE_KERNEL_KOMODO_DIR)/kernel-headers
+
+include device/google/caimito/device-caimito-16k-common.mk
+
else
-TARGET_KERNEL_DIR ?= device/google/caimito-kernels/6.1/24Q3-12386881
-TARGET_BOARD_KERNEL_HEADERS ?= device/google/caimito-kernels/6.1/24Q3-12386881/kernel-headers
+TARGET_KERNEL_DIR ?= device/google/caimito-kernels/6.1/24D1
+TARGET_BOARD_KERNEL_HEADERS ?= device/google/caimito-kernels/6.1/24D1/kernel-headers
endif
LOCAL_PATH := device/google/caimito
@@ -66,6 +71,7 @@ include device/google/gs-common/bcmbt/bluetooth.mk
include device/google/gs-common/touch/gti/predump_gti.mk
include device/google/caimito/fingerprint/ultrasonic_udfps.mk
include device/google/gs-common/modem/radio_ext/radio_ext.mk
+include device/google/gs-common/gril/hidl/1.7/gril_hidl.mk
# Increment the SVN for any official public releases
ifdef RELEASE_SVN_KOMODO
@@ -78,6 +84,25 @@ endif
PRODUCT_VENDOR_PROPERTIES += \
ro.vendor.build.svn=$(TARGET_SVN)
+# Set device family property for SMR
+PRODUCT_PROPERTY_OVERRIDES += \
+ ro.build.device_family=CM4KM4TK4TG4
+
+# Set build properties for SMR builds
+ifeq ($(RELEASE_IS_SMR), true)
+ ifneq (,$(RELEASE_BASE_OS_KOMODO))
+ PRODUCT_BASE_OS := $(RELEASE_BASE_OS_KOMODO)
+ endif
+endif
+
+# Set build properties for EMR builds
+ifeq ($(RELEASE_IS_EMR), true)
+ ifneq (,$(RELEASE_BASE_OS_KOMODO))
+ PRODUCT_PROPERTY_OVERRIDES += \
+ ro.build.version.emergency_base_os=$(RELEASE_BASE_OS_KOMODO)
+ endif
+endif
+
# go/lyric-soong-variables
$(call soong_config_set,lyric,camera_hardware,komodo)
$(call soong_config_set,lyric,tuning_product,komodo)
@@ -96,6 +121,11 @@ endif
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.ignore_hdr_camera_layers=true
+# Display OP HZ Config
+PRODUCT_VENDOR_PROPERTIES += \
+ vendor.primarydisplay.op.hs_hz=120 \
+ vendor.primarydisplay.op.ns_hz=120
+
# Display fixed TE2
PRODUCT_VENDOR_PROPERTIES += vendor.primarydisplay.fixed_te2.default_rate_hz=120
@@ -280,6 +310,10 @@ PRODUCT_PACKAGES += \
PRODUCT_SOONG_NAMESPACES += \
device/google/caimito/powerstats/komodo
+# UWB Overlay
+PRODUCT_PACKAGES += \
+ UwbOverlayKM4
+
# WiFi Overlay
PRODUCT_PACKAGES += \
WifiOverlay2024
@@ -353,6 +387,10 @@ PRODUCT_VENDOR_PROPERTIES += \
persist.vendor.vibrator.hal.context.settlingtime=5000 \
ro.vendor.vibrator.hal.pm.activetimeout=5
+# Override Output Distortion Gain
+PRODUCT_VENDOR_PROPERTIES += \
+ vendor.audio.hapticgenerator.distortion.output.gain=0.48
+
# PKVM Memory Reclaim
PRODUCT_VENDOR_PROPERTIES += \
hypervisor.memory_reclaim.supported=1
@@ -400,7 +438,7 @@ PRODUCT_PRODUCT_PROPERTIES += \
# LE Audio Unicast Allowlist
PRODUCT_PRODUCT_PROPERTIES += \
- persist.bluetooth.leaudio.allow_list=SM-R510
+ persist.bluetooth.leaudio.allow_list=SM-R510,WF-1000XM5
# Support LE & Classic concurrent encryption (b/330704060)
PRODUCT_PRODUCT_PROPERTIES += \
@@ -431,13 +469,30 @@ ifneq (,$(filter eng, $(TARGET_BUILD_VARIANT)))
$(call inherit-product-if-exists, device/google/common/etm/device-userdebug-modules.mk)
endif
-# Connectivity Resources Overlay
+# Connectivity Resources Overlay for Thread host settings
PRODUCT_PACKAGES += \
ConnectivityResourcesOverlayCaimitoOverride
+# Thread Dispatcher enablement in Bluetooth HAL
+PRODUCT_PRODUCT_PROPERTIES += \
+ persist.bluetooth.thread_dispatcher.enabled=false
+
#Component Override for Pixel Troubleshooting App
PRODUCT_COPY_FILES += \
device/google/caimito/komodo/komodo-component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/komodo-component-overrides.xml
+# Bluetooth device id
+# Komodo: 0x4111
PRODUCT_PRODUCT_PROPERTIES += \
- persist.bluetooth.thread_dispatcher.enabled=true
+ bluetooth.device_id.product_id=16657
+
+# Set support for LEA multicodec
+PRODUCT_PRODUCT_PROPERTIES += \
+ bluetooth.core.le_audio.codec_extension_aidl.enabled=true
+
+# LE Audio configuration scenarios
+PRODUCT_COPY_FILES += \
+ device/google/caimito/bluetooth/audio_set_scenarios.json:$(TARGET_COPY_OUT_VENDOR)/etc/aidl/le_audio/aidl_audio_set_scenarios.json
+
+PRODUCT_COPY_FILES += \
+ device/google/caimito/bluetooth/audio_set_configurations.json:$(TARGET_COPY_OUT_VENDOR)/etc/aidl/le_audio/aidl_audio_set_configurations.json
diff --git a/device-ripcurrent24.mk b/device-ripcurrent24.mk
index 062f26d3..0711143b 100644
--- a/device-ripcurrent24.mk
+++ b/device-ripcurrent24.mk
@@ -14,6 +14,8 @@
# limitations under the License.
#
+SHIPPING_API_LEVEL := 34
+
ifdef RELEASE_GOOGLE_RIPCURRENT24_RADIO_DIR
RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_RIPCURRENT24_RADIO_DIR)
endif
@@ -44,6 +46,7 @@ include hardware/google/pixel/vibrator/cs40l26/device-stereo.mk
include device/google/gs-common/bcmbt/bluetooth.mk
include device/google/gs-common/touch/stm/stm20.mk
include device/google/caimito/fingerprint/ultrasonic_udfps.mk
+include device/google/gs-common/gril/hidl/1.7/gril_hidl.mk
# go/lyric-soong-variables
# Set to 'ripcurrent' as ripcurrent camera service is compatible with ripcurrent24.
diff --git a/device-ripcurrentpro.mk b/device-ripcurrentpro.mk
index c02b7190..29f52b67 100644
--- a/device-ripcurrentpro.mk
+++ b/device-ripcurrentpro.mk
@@ -14,6 +14,8 @@
# limitations under the License.
#
+SHIPPING_API_LEVEL := 34
+
ifdef RELEASE_GOOGLE_RIPCURRENTPRO_RADIO_DIR
RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_RIPCURRENTPRO_RADIO_DIR)
endif
@@ -47,6 +49,7 @@ include hardware/google/pixel/vibrator/cs40l26/device-stereo.mk
include device/google/gs-common/bcmbt/bluetooth.mk
include device/google/gs-common/touch/stm/stm20.mk
include device/google/caimito/fingerprint/ultrasonic_udfps.mk
+include device/google/gs-common/gril/hidl/1.7/gril_hidl.mk
# go/lyric-soong-variables
$(call soong_config_set,lyric,camera_hardware,ripcurrentpro)
@@ -243,3 +246,7 @@ PRODUCT_VENDOR_PROPERTIES += \
# PKVM Memory Reclaim
PRODUCT_VENDOR_PROPERTIES += \
hypervisor.memory_reclaim.supported=1
+
+# Thread HAL
+PRODUCT_PACKAGES += \
+ com.google.caimito.hardware.threadnetwork
diff --git a/device-tokay.mk b/device-tokay.mk
index d004d867..aaf7cca9 100644
--- a/device-tokay.mk
+++ b/device-tokay.mk
@@ -14,22 +14,27 @@
# limitations under the License.
#
+SHIPPING_API_LEVEL := 34
+
ifdef RELEASE_GOOGLE_TOKAY_RADIO_DIR
RELEASE_GOOGLE_PRODUCT_RADIO_DIR ?= $(RELEASE_GOOGLE_TOKAY_RADIO_DIR)
endif
ifdef RELEASE_GOOGLE_TOKAY_RADIOCFG_DIR
RELEASE_GOOGLE_PRODUCT_RADIOCFG_DIR ?= $(RELEASE_GOOGLE_TOKAY_RADIOCFG_DIR)
endif
-RELEASE_GOOGLE_BOOTLOADER_TOKAY_DIR ?= 24Q3-12386881# Keep this for pdk TODO: b/327119000
+RELEASE_GOOGLE_BOOTLOADER_TOKAY_DIR ?= 24D1# Keep this for pdk TODO: b/327119000
RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/$(RELEASE_GOOGLE_BOOTLOADER_TOKAY_DIR)
$(call soong_config_set,caimito_bootloader,prebuilt_dir,$(RELEASE_GOOGLE_BOOTLOADER_TOKAY_DIR))
ifdef RELEASE_KERNEL_TOKAY_DIR
TARGET_KERNEL_DIR ?= $(RELEASE_KERNEL_TOKAY_DIR)
TARGET_BOARD_KERNEL_HEADERS ?= $(RELEASE_KERNEL_TOKAY_DIR)/kernel-headers
+
+include device/google/caimito/device-caimito-16k-common.mk
+
else
-TARGET_KERNEL_DIR ?= device/google/caimito-kernels/6.1/24Q3-12386881
-TARGET_BOARD_KERNEL_HEADERS ?= device/google/caimito-kernels/6.1/24Q3-12386881/kernel-headers
+TARGET_KERNEL_DIR ?= device/google/caimito-kernels/6.1/24D1
+TARGET_BOARD_KERNEL_HEADERS ?= device/google/caimito-kernels/6.1/24D1/kernel-headers
endif
$(call inherit-product-if-exists, vendor/google_devices/caimito/prebuilts/device-vendor-tokay.mk)
@@ -56,6 +61,7 @@ include device/google/gs-common/bcmbt/bluetooth.mk
include device/google/gs-common/touch/gti/predump_gti.mk
include device/google/caimito/fingerprint/ultrasonic_udfps.mk
include device/google/gs-common/modem/radio_ext/radio_ext.mk
+include device/google/gs-common/gril/hidl/1.7/gril_hidl.mk
# Increment the SVN for any official public releases
ifdef RELEASE_SVN_TOKAY
@@ -68,6 +74,25 @@ endif
PRODUCT_VENDOR_PROPERTIES += \
ro.vendor.build.svn=$(TARGET_SVN)
+# Set device family property for SMR
+PRODUCT_PROPERTY_OVERRIDES += \
+ ro.build.device_family=CM4KM4TK4TG4
+
+# Set build properties for SMR builds
+ifeq ($(RELEASE_IS_SMR), true)
+ ifneq (,$(RELEASE_BASE_OS_TOKAY))
+ PRODUCT_BASE_OS := $(RELEASE_BASE_OS_TOKAY)
+ endif
+endif
+
+# Set build properties for EMR builds
+ifeq ($(RELEASE_IS_EMR), true)
+ ifneq (,$(RELEASE_BASE_OS_TOKAY))
+ PRODUCT_PROPERTY_OVERRIDES += \
+ ro.build.version.emergency_base_os=$(RELEASE_BASE_OS_TOKAY)
+ endif
+endif
+
# go/lyric-soong-variables
$(call soong_config_set,lyric,camera_hardware,tokay)
$(call soong_config_set,lyric,tuning_product,tokay)
@@ -276,8 +301,11 @@ PRODUCT_PACKAGES += gps.cfg
# For GPS property
PRODUCT_VENDOR_PROPERTIES += ro.vendor.gps.pps.enabled=true
-# Display LBE
-PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.lbe.supported=1
+# Display function property settings
+PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
+ vendor.display.lbe.supported=1 \
+ ro.vendor.primarydisplay.google-tk4c.temperature_path=/dev/thermal/tz-by-name/disp_therm/temp \
+ ro.vendor.display.read_temp_interval=30
#Thermal VT estimator
PRODUCT_PACKAGES += \
@@ -324,6 +352,10 @@ PRODUCT_VENDOR_PROPERTIES += \
persist.vendor.vibrator.hal.context.settlingtime=5000 \
ro.vendor.vibrator.hal.pm.activetimeout=5
+# Override Output Distortion Gain
+PRODUCT_VENDOR_PROPERTIES += \
+ vendor.audio.hapticgenerator.distortion.output.gain=0.48
+
# PKVM Memory Reclaim
PRODUCT_VENDOR_PROPERTIES += \
hypervisor.memory_reclaim.supported=1
@@ -375,7 +407,7 @@ PRODUCT_PRODUCT_PROPERTIES += \
# LE Audio Unicast Allowlist
PRODUCT_PRODUCT_PROPERTIES += \
- persist.bluetooth.leaudio.allow_list=SM-R510
+ persist.bluetooth.leaudio.allow_list=SM-R510,WF-1000XM5
# Support LE & Classic concurrent encryption (b/330704060)
PRODUCT_PRODUCT_PROPERTIES += \
@@ -402,17 +434,34 @@ ifneq (,$(filter eng, $(TARGET_BUILD_VARIANT)))
$(call inherit-product-if-exists, device/google/common/etm/device-userdebug-modules.mk)
endif
-# Connectivity Resources Overlay
+# Connectivity Resources Overlay for Thread host settings
PRODUCT_PACKAGES += \
ConnectivityResourcesOverlayCaimitoOverride
+# Thread Dispatcher enablement in Bluetooth HAL
+PRODUCT_PRODUCT_PROPERTIES += \
+ persist.bluetooth.thread_dispatcher.enabled=false
+
#Component Override for Pixel Troubleshooting App
PRODUCT_COPY_FILES += \
device/google/caimito/tokay/tokay-component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/tokay-component-overrides.xml
+# Bluetooth device id
+# Tokay: 0x4112
PRODUCT_PRODUCT_PROPERTIES += \
- persist.bluetooth.thread_dispatcher.enabled=true
+ bluetooth.device_id.product_id=16658
+
+# Set support for LEA multicodec
+PRODUCT_PRODUCT_PROPERTIES += \
+ bluetooth.core.le_audio.codec_extension_aidl.enabled=true
# Reduce lmkd aggressiveness
PRODUCT_PROPERTY_OVERRIDES += \
ro.lmk.swap_free_low_percentage=7
+
+# LE Audio configuration scenarios
+PRODUCT_COPY_FILES += \
+ device/google/caimito/bluetooth/audio_set_scenarios.json:$(TARGET_COPY_OUT_VENDOR)/etc/aidl/le_audio/aidl_audio_set_scenarios.json
+
+PRODUCT_COPY_FILES += \
+ device/google/caimito/bluetooth/audio_set_configurations.json:$(TARGET_COPY_OUT_VENDOR)/etc/aidl/le_audio/aidl_audio_set_configurations.json
diff --git a/komodo/BoardConfig.mk b/komodo/BoardConfig.mk
index 9b42dd77..243d2bed 100644
--- a/komodo/BoardConfig.mk
+++ b/komodo/BoardConfig.mk
@@ -20,10 +20,15 @@ TARGET_SCREEN_DENSITY := 480
BOARD_USES_GENERIC_AUDIO := true
USES_DEVICE_GOOGLE_CAIMITO := true
+RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_KOMODO_RADIO_DIR)
+RELEASE_GOOGLE_PRODUCT_RADIOCFG_DIR := $(RELEASE_GOOGLE_KOMODO_RADIOCFG_DIR)
+RELEASE_GOOGLE_PRODUCT_NTNRADIO_DIR := $(RELEASE_GOOGLE_KOMODO_NTNRADIO_DIR)
+
include device/google/caimito/device-caimito-common.mk
include device/google/zumapro/BoardConfig-common.mk
-include vendor/google_devices/zumapro/prebuilts/BoardConfigVendor.mk
+include device/google/gs-common/check_current_prebuilt/check_current_prebuilt.mk
-include vendor/google_devices/komodo/proprietary/BoardConfigVendor.mk
include device/google/caimito/sepolicy/komodo-sepolicy.mk
include device/google/caimito/wifi/BoardConfig-wifi.mk
diff --git a/komodo/overlay/frameworks/base/core/res/res/values/config.xml b/komodo/overlay/frameworks/base/core/res/res/values/config.xml
index 157f42c8..5910fc63 100644
--- a/komodo/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/komodo/overlay/frameworks/base/core/res/res/values/config.xml
@@ -54,6 +54,10 @@
- 0.067451923
+
+ 105%
+
0
@@ -173,9 +177,12 @@
- 0.335
- 52dp
- 52dp
- 52dp
+
+ 66dp
+
+ 24dp
- m 614.53715,0 h 115 v 158.5 h -115 z
+ m 614.53715,0 h 115 v 199 h -115 z
@left
- - 79
+ - 31
- - 118
+ - 39
- - 331
+ - 540
- - 3700
+ - 3850
diff --git a/komodo/overlay/frameworks/base/packages/SystemUI/res/values/config.xml b/komodo/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
index 7b3e4c74..c8756fa8 100644
--- a/komodo/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
+++ b/komodo/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
@@ -39,16 +39,6 @@
always-on display) -->
com.google.sensor.binned_brightness
-
-
- - -1
- - 1
- - 2
- - 7
- - 7
-
-
true
+
+
+ true
+
+
+ true
diff --git a/komodo/uwb/Android.bp b/komodo/uwb/Android.bp
index de2da1f5..3b575b16 100644
--- a/komodo/uwb/Android.bp
+++ b/komodo/uwb/Android.bp
@@ -69,3 +69,9 @@ prebuilt_etc {
defaults: ["conf_defaults"],
}
+prebuilt_etc {
+ name: "capabilities.conf",
+ src: "capabilities.conf",
+ defaults: ["conf_defaults"],
+}
+
diff --git a/komodo/uwb/capabilities.conf b/komodo/uwb/capabilities.conf
new file mode 100644
index 00000000..792aff16
--- /dev/null
+++ b/komodo/uwb/capabilities.conf
@@ -0,0 +1,8 @@
+# Tag 0x13
+# Length 1
+# b0 : Azimuth AoA -90° to 90°
+# b1 : Azimuth AoA -180° to 180°
+# b2 : Elevation AoA
+# b3 : AoA FoM
+# b7-b4 : RFU
+AOA_SUPPORT=0x0B
diff --git a/komodo/uwb/uwb_calibration.mk b/komodo/uwb/uwb_calibration.mk
index 09c4f13b..7dc89a9c 100644
--- a/komodo/uwb/uwb_calibration.mk
+++ b/komodo/uwb/uwb_calibration.mk
@@ -21,4 +21,5 @@ PRODUCT_PACKAGES += \
calibration-FCC.conf \
calibration-JP.conf \
calibration-TW.conf \
- calibration-RESTRICTED.conf
+ calibration-RESTRICTED.conf \
+ capabilities.conf
diff --git a/location/caiman/user/gps.cfg b/location/caiman/user/gps.cfg
index 8c6515aa..d329a77b 100644
--- a/location/caiman/user/gps.cfg
+++ b/location/caiman/user/gps.cfg
@@ -18,6 +18,7 @@ gnss_device_data_port_chpp_spi_device=/dev/gnss_ipc
gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
+ChipCfg_Timemark_Option=1
ChipCfg_VDR_high_end_Distance = 200
ChipCfg_VDR_low_end_Distance = 200
ChipCfg_VDR_high_end_Time = 20
@@ -28,6 +29,7 @@ Chip_Configuration_DCXO_CrystalType=0x11
Chip_Configuration_GNSSConstConstraintDef = 0x60FF
LocTech_Constraints = 0x60FF
Chip_Configuration_RfMiscCtrl = 0x80008001
+Chip_Configuration_ntn_option=2
bdsUsedInUSPolicy=2
sbasUsedInUSPolicy=2
qzssUsedInUSPolicy=2
@@ -54,6 +56,12 @@ GlueLayer_IsRilCIDReqEnable=0
GlueLayer_IsMemsEnable=1
GlueLayer_MeasCorrCap=7
Chip_Configuration_mems_data_Configuration=0x25
+AccelSamplingPeriodUs=10000
+MagnSamplingPeriodUs=10000
+GyroSamplingPeriodUs=10000
+PressSamplingPeriodUs=50000
+OrientationSamplingPeriodUs=10000
+StepCounterSamplingPeriodUs=1000000
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
@@ -72,6 +80,10 @@ SingleBandNmTrkPower=20
MultiBandNmTrkPower=28
SingleBandUdTrkPower=14
MultiBandUdTrkPower=18
+path_delay_glo_12fx_cm = -5076,-5076,-5064,-5022,-4982,-4916,-4879,-4800,-4704,-4647,-4628,-4573,-4522,-4493
+path_delay_gps_2fx_cm = 12371
+path_delay_bds_4fx_cm = 123
+path_delay_l5_20fx_cm = 105888
RfPathLossDb_Ap=3210
RfPathLossDb_Cp=3210
RfPathLossDb_L5_Ap=4450
@@ -110,12 +122,16 @@ ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
+ENABLE_NLP_ALONG_WITH_UBP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
+CP_LOCTECH_CONSTRAINTS=1
+UP_LOCTECH_CONSTRAINTS=1
GNSS_CARRIER_ID=1
+CP_LOCTECH_CONSTRAINTS=5
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
@@ -125,7 +141,6 @@ ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
GNSS_CARRIER_ID=3
-ENABLE_CAPS_OTDOA=0
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
diff --git a/location/caiman/userdebug/gps.cfg b/location/caiman/userdebug/gps.cfg
index 9276d626..61c7f3ed 100644
--- a/location/caiman/userdebug/gps.cfg
+++ b/location/caiman/userdebug/gps.cfg
@@ -53,6 +53,9 @@ gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
+# 1pps timemark output: 0: disable 1: enable
+ChipCfg_Timemark_Option=1
+
# VDR End condition (meter, meter, sec, sec)
ChipCfg_VDR_high_end_Distance = 200
ChipCfg_VDR_low_end_Distance = 200
@@ -112,6 +115,11 @@ Chip_Configuration_RfMiscCtrl = 0x80008001
#Chip_Configuration_RfMiscCtrl=0x8001
#Chip_Configuration_IspTestConfig=0x22242822
+#Chip_Configuration_ntn_option=0 means no NTN blackout IPC handling
+#Chip_Configuration_ntn_option=1 means L1 blanking during NTN blackout period.
+#Chip_Configuration_ntn_option=2 means turning GNSS off during NTN blackout period.
+Chip_Configuration_ntn_option=2
+
# Disable BDS in the U.S.
# 0-enabled (default), 1-disabled, 2-auto(disabled in US)
#gloUsedInUSPolicy=2
@@ -189,6 +197,12 @@ GlueLayer_MeasCorrCap=7
# 0x0010: CHIP_CONFIG_MEMS_ORIENTATION_AVAILABLE
# 0x0020: CHIP_CONFIG_MEMS_STEPCOUNTER_AVAILABLE
Chip_Configuration_mems_data_Configuration=0x25
+AccelSamplingPeriodUs=10000
+MagnSamplingPeriodUs=10000
+GyroSamplingPeriodUs=10000
+PressSamplingPeriodUs=50000
+OrientationSamplingPeriodUs=10000
+StepCounterSamplingPeriodUs=1000000
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
@@ -210,6 +224,11 @@ MultiBandNmTrkPower=28
SingleBandUdTrkPower=14
MultiBandUdTrkPower=18
+path_delay_glo_12fx_cm = -5076,-5076,-5064,-5022,-4982,-4916,-4879,-4800,-4704,-4647,-4628,-4573,-4522,-4493
+path_delay_gps_2fx_cm = 12371
+path_delay_bds_4fx_cm = 123
+path_delay_l5_20fx_cm = 105888
+
RfPathLossDb_Ap=3210
RfPathLossDb_Cp=3210
RfPathLossDb_L5_Ap=4450
@@ -266,12 +285,16 @@ ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
+ENABLE_NLP_ALONG_WITH_UBP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
+CP_LOCTECH_CONSTRAINTS=1
+UP_LOCTECH_CONSTRAINTS=1
# ATT
GNSS_CARRIER_ID=1
+CP_LOCTECH_CONSTRAINTS=5
# TMO
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
@@ -281,7 +304,6 @@ ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
# VZW
GNSS_CARRIER_ID=3
-ENABLE_CAPS_OTDOA=0
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
diff --git a/location/komodo/user/gps.cfg b/location/komodo/user/gps.cfg
index fcbf35cf..f9e6e7c6 100644
--- a/location/komodo/user/gps.cfg
+++ b/location/komodo/user/gps.cfg
@@ -18,6 +18,7 @@ gnss_device_data_port_chpp_spi_device=/dev/gnss_ipc
gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
+ChipCfg_Timemark_Option=1
ChipCfg_VDR_high_end_Distance = 200
ChipCfg_VDR_low_end_Distance = 200
ChipCfg_VDR_high_end_Time = 20
@@ -28,6 +29,7 @@ Chip_Configuration_DCXO_CrystalType=0x11
Chip_Configuration_GNSSConstConstraintDef = 0x60FF
LocTech_Constraints = 0x60FF
Chip_Configuration_RfMiscCtrl = 0x80008001
+Chip_Configuration_ntn_option=2
bdsUsedInUSPolicy=2
sbasUsedInUSPolicy=2
qzssUsedInUSPolicy=2
@@ -54,6 +56,12 @@ GlueLayer_IsRilCIDReqEnable=0
GlueLayer_IsMemsEnable=1
GlueLayer_MeasCorrCap=7
Chip_Configuration_mems_data_Configuration=0x25
+AccelSamplingPeriodUs=10000
+MagnSamplingPeriodUs=10000
+GyroSamplingPeriodUs=10000
+PressSamplingPeriodUs=50000
+OrientationSamplingPeriodUs=10000
+StepCounterSamplingPeriodUs=1000000
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
@@ -72,6 +80,10 @@ SingleBandNmTrkPower=20
MultiBandNmTrkPower=28
SingleBandUdTrkPower=14
MultiBandUdTrkPower=18
+path_delay_glo_12fx_cm = -5185,-5158,-5112,-5111,-5031,-4972,-4900,-4823,-4765,-4714,-4625,-4613,-4553,-4553
+path_delay_gps_2fx_cm = 12378
+path_delay_bds_4fx_cm = 168
+path_delay_l5_20fx_cm = 105902
RfPathLossDb_Ap=3520
RfPathLossDb_Cp=3520
RfPathLossDb_L5_Ap=3700
@@ -110,12 +122,16 @@ ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
+ENABLE_NLP_ALONG_WITH_UBP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
+CP_LOCTECH_CONSTRAINTS=1
+UP_LOCTECH_CONSTRAINTS=1
GNSS_CARRIER_ID=1
+CP_LOCTECH_CONSTRAINTS=5
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
@@ -125,7 +141,6 @@ ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
GNSS_CARRIER_ID=3
-ENABLE_CAPS_OTDOA=0
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
diff --git a/location/komodo/userdebug/gps.cfg b/location/komodo/userdebug/gps.cfg
index f7005830..3aae35e8 100644
--- a/location/komodo/userdebug/gps.cfg
+++ b/location/komodo/userdebug/gps.cfg
@@ -53,6 +53,9 @@ gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
+# 1pps timemark output: 0: disable 1: enable
+ChipCfg_Timemark_Option=1
+
# VDR End condition (meter, meter, sec, sec)
ChipCfg_VDR_high_end_Distance = 200
ChipCfg_VDR_low_end_Distance = 200
@@ -112,6 +115,11 @@ Chip_Configuration_RfMiscCtrl = 0x80008001
#Chip_Configuration_RfMiscCtrl=0x8001
#Chip_Configuration_IspTestConfig=0x22242822
+#Chip_Configuration_ntn_option=0 means no NTN blackout IPC handling
+#Chip_Configuration_ntn_option=1 means L1 blanking during NTN blackout period.
+#Chip_Configuration_ntn_option=2 means turning GNSS off during NTN blackout period.
+Chip_Configuration_ntn_option=2
+
# Disable BDS in the U.S.
# 0-enabled (default), 1-disabled, 2-auto(disabled in US)
#gloUsedInUSPolicy=2
@@ -189,6 +197,12 @@ GlueLayer_MeasCorrCap=7
# 0x0010: CHIP_CONFIG_MEMS_ORIENTATION_AVAILABLE
# 0x0020: CHIP_CONFIG_MEMS_STEPCOUNTER_AVAILABLE
Chip_Configuration_mems_data_Configuration=0x25
+AccelSamplingPeriodUs=10000
+MagnSamplingPeriodUs=10000
+GyroSamplingPeriodUs=10000
+PressSamplingPeriodUs=50000
+OrientationSamplingPeriodUs=10000
+StepCounterSamplingPeriodUs=1000000
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
@@ -210,6 +224,11 @@ MultiBandNmTrkPower=28
SingleBandUdTrkPower=14
MultiBandUdTrkPower=18
+path_delay_glo_12fx_cm = -5185,-5158,-5112,-5111,-5031,-4972,-4900,-4823,-4765,-4714,-4625,-4613,-4553,-4553
+path_delay_gps_2fx_cm = 12378
+path_delay_bds_4fx_cm = 168
+path_delay_l5_20fx_cm = 105902
+
RfPathLossDb_Ap=3520
RfPathLossDb_Cp=3520
RfPathLossDb_L5_Ap=3700
@@ -266,12 +285,16 @@ ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
+ENABLE_NLP_ALONG_WITH_UBP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
+CP_LOCTECH_CONSTRAINTS=1
+UP_LOCTECH_CONSTRAINTS=1
# ATT
GNSS_CARRIER_ID=1
+CP_LOCTECH_CONSTRAINTS=5
# TMO
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
@@ -281,7 +304,6 @@ ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
# VZW
GNSS_CARRIER_ID=3
-ENABLE_CAPS_OTDOA=0
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
diff --git a/location/ripcurrent24/user/gps.cfg b/location/ripcurrent24/user/gps.cfg
index 337e44bc..bd26a81f 100644
--- a/location/ripcurrent24/user/gps.cfg
+++ b/location/ripcurrent24/user/gps.cfg
@@ -18,6 +18,7 @@ gnss_device_data_port_chpp_spi_device=/dev/gnss_ipc
gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
+ChipCfg_Timemark_Option=1
ChipCfg_VDR_high_end_Distance = 200
ChipCfg_VDR_low_end_Distance = 200
ChipCfg_VDR_high_end_Time = 20
@@ -28,6 +29,7 @@ Chip_Configuration_DCXO_CrystalType=0x11
Chip_Configuration_GNSSConstConstraintDef = 0x60FF
LocTech_Constraints = 0x60FF
Chip_Configuration_RfMiscCtrl = 0x80008001
+Chip_Configuration_ntn_option=2
bdsUsedInUSPolicy=2
sbasUsedInUSPolicy=2
qzssUsedInUSPolicy=2
@@ -54,6 +56,12 @@ GlueLayer_IsRilCIDReqEnable=0
GlueLayer_IsMemsEnable=1
GlueLayer_MeasCorrCap=7
Chip_Configuration_mems_data_Configuration=0x25
+AccelSamplingPeriodUs=10000
+MagnSamplingPeriodUs=10000
+GyroSamplingPeriodUs=10000
+PressSamplingPeriodUs=50000
+OrientationSamplingPeriodUs=10000
+StepCounterSamplingPeriodUs=1000000
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
@@ -106,12 +114,16 @@ ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
+ENABLE_NLP_ALONG_WITH_UBP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
+CP_LOCTECH_CONSTRAINTS=1
+UP_LOCTECH_CONSTRAINTS=1
GNSS_CARRIER_ID=1
+CP_LOCTECH_CONSTRAINTS=5
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
@@ -121,7 +133,6 @@ ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
GNSS_CARRIER_ID=3
-ENABLE_CAPS_OTDOA=0
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
diff --git a/location/ripcurrent24/userdebug/gps.cfg b/location/ripcurrent24/userdebug/gps.cfg
index 418045c1..f6ff481f 100644
--- a/location/ripcurrent24/userdebug/gps.cfg
+++ b/location/ripcurrent24/userdebug/gps.cfg
@@ -53,6 +53,9 @@ gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
+# 1pps timemark output: 0: disable 1: enable
+ChipCfg_Timemark_Option=1
+
# VDR End condition (meter, meter, sec, sec)
ChipCfg_VDR_high_end_Distance = 200
ChipCfg_VDR_low_end_Distance = 200
@@ -112,6 +115,11 @@ Chip_Configuration_RfMiscCtrl = 0x80008001
#Chip_Configuration_RfMiscCtrl=0x8001
#Chip_Configuration_IspTestConfig=0x22242822
+#Chip_Configuration_ntn_option=0 means no NTN blackout IPC handling
+#Chip_Configuration_ntn_option=1 means L1 blanking during NTN blackout period.
+#Chip_Configuration_ntn_option=2 means turning GNSS off during NTN blackout period.
+Chip_Configuration_ntn_option=2
+
# Disable BDS in the U.S.
# 0-enabled (default), 1-disabled, 2-auto(disabled in US)
#gloUsedInUSPolicy=2
@@ -189,6 +197,12 @@ GlueLayer_MeasCorrCap=7
# 0x0010: CHIP_CONFIG_MEMS_ORIENTATION_AVAILABLE
# 0x0020: CHIP_CONFIG_MEMS_STEPCOUNTER_AVAILABLE
Chip_Configuration_mems_data_Configuration=0x25
+AccelSamplingPeriodUs=10000
+MagnSamplingPeriodUs=10000
+GyroSamplingPeriodUs=10000
+PressSamplingPeriodUs=50000
+OrientationSamplingPeriodUs=10000
+StepCounterSamplingPeriodUs=1000000
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
@@ -262,12 +276,16 @@ ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
+ENABLE_NLP_ALONG_WITH_UBP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
+CP_LOCTECH_CONSTRAINTS=1
+UP_LOCTECH_CONSTRAINTS=1
# ATT
GNSS_CARRIER_ID=1
+CP_LOCTECH_CONSTRAINTS=5
# TMO
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
@@ -277,7 +295,6 @@ ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
# VZW
GNSS_CARRIER_ID=3
-ENABLE_CAPS_OTDOA=0
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
diff --git a/location/ripcurrentpro/user/gps.cfg b/location/ripcurrentpro/user/gps.cfg
index 337e44bc..bd26a81f 100644
--- a/location/ripcurrentpro/user/gps.cfg
+++ b/location/ripcurrentpro/user/gps.cfg
@@ -18,6 +18,7 @@ gnss_device_data_port_chpp_spi_device=/dev/gnss_ipc
gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
+ChipCfg_Timemark_Option=1
ChipCfg_VDR_high_end_Distance = 200
ChipCfg_VDR_low_end_Distance = 200
ChipCfg_VDR_high_end_Time = 20
@@ -28,6 +29,7 @@ Chip_Configuration_DCXO_CrystalType=0x11
Chip_Configuration_GNSSConstConstraintDef = 0x60FF
LocTech_Constraints = 0x60FF
Chip_Configuration_RfMiscCtrl = 0x80008001
+Chip_Configuration_ntn_option=2
bdsUsedInUSPolicy=2
sbasUsedInUSPolicy=2
qzssUsedInUSPolicy=2
@@ -54,6 +56,12 @@ GlueLayer_IsRilCIDReqEnable=0
GlueLayer_IsMemsEnable=1
GlueLayer_MeasCorrCap=7
Chip_Configuration_mems_data_Configuration=0x25
+AccelSamplingPeriodUs=10000
+MagnSamplingPeriodUs=10000
+GyroSamplingPeriodUs=10000
+PressSamplingPeriodUs=50000
+OrientationSamplingPeriodUs=10000
+StepCounterSamplingPeriodUs=1000000
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
@@ -106,12 +114,16 @@ ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
+ENABLE_NLP_ALONG_WITH_UBP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
+CP_LOCTECH_CONSTRAINTS=1
+UP_LOCTECH_CONSTRAINTS=1
GNSS_CARRIER_ID=1
+CP_LOCTECH_CONSTRAINTS=5
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
@@ -121,7 +133,6 @@ ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
GNSS_CARRIER_ID=3
-ENABLE_CAPS_OTDOA=0
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
diff --git a/location/ripcurrentpro/userdebug/gps.cfg b/location/ripcurrentpro/userdebug/gps.cfg
index 418045c1..f6ff481f 100644
--- a/location/ripcurrentpro/userdebug/gps.cfg
+++ b/location/ripcurrentpro/userdebug/gps.cfg
@@ -53,6 +53,9 @@ gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
+# 1pps timemark output: 0: disable 1: enable
+ChipCfg_Timemark_Option=1
+
# VDR End condition (meter, meter, sec, sec)
ChipCfg_VDR_high_end_Distance = 200
ChipCfg_VDR_low_end_Distance = 200
@@ -112,6 +115,11 @@ Chip_Configuration_RfMiscCtrl = 0x80008001
#Chip_Configuration_RfMiscCtrl=0x8001
#Chip_Configuration_IspTestConfig=0x22242822
+#Chip_Configuration_ntn_option=0 means no NTN blackout IPC handling
+#Chip_Configuration_ntn_option=1 means L1 blanking during NTN blackout period.
+#Chip_Configuration_ntn_option=2 means turning GNSS off during NTN blackout period.
+Chip_Configuration_ntn_option=2
+
# Disable BDS in the U.S.
# 0-enabled (default), 1-disabled, 2-auto(disabled in US)
#gloUsedInUSPolicy=2
@@ -189,6 +197,12 @@ GlueLayer_MeasCorrCap=7
# 0x0010: CHIP_CONFIG_MEMS_ORIENTATION_AVAILABLE
# 0x0020: CHIP_CONFIG_MEMS_STEPCOUNTER_AVAILABLE
Chip_Configuration_mems_data_Configuration=0x25
+AccelSamplingPeriodUs=10000
+MagnSamplingPeriodUs=10000
+GyroSamplingPeriodUs=10000
+PressSamplingPeriodUs=50000
+OrientationSamplingPeriodUs=10000
+StepCounterSamplingPeriodUs=1000000
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
@@ -262,12 +276,16 @@ ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
+ENABLE_NLP_ALONG_WITH_UBP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
+CP_LOCTECH_CONSTRAINTS=1
+UP_LOCTECH_CONSTRAINTS=1
# ATT
GNSS_CARRIER_ID=1
+CP_LOCTECH_CONSTRAINTS=5
# TMO
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
@@ -277,7 +295,6 @@ ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
# VZW
GNSS_CARRIER_ID=3
-ENABLE_CAPS_OTDOA=0
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
diff --git a/location/tokay/user/gps.cfg b/location/tokay/user/gps.cfg
index 6a6f63df..cf7ed87e 100644
--- a/location/tokay/user/gps.cfg
+++ b/location/tokay/user/gps.cfg
@@ -18,6 +18,7 @@ gnss_device_data_port_chpp_spi_device=/dev/gnss_ipc
gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
+ChipCfg_Timemark_Option=1
ChipCfg_VDR_high_end_Distance = 200
ChipCfg_VDR_low_end_Distance = 200
ChipCfg_VDR_high_end_Time = 20
@@ -28,6 +29,7 @@ Chip_Configuration_DCXO_CrystalType=0x11
Chip_Configuration_GNSSConstConstraintDef = 0x60FF
LocTech_Constraints = 0x60FF
Chip_Configuration_RfMiscCtrl = 0x80008001
+Chip_Configuration_ntn_option=2
bdsUsedInUSPolicy=2
sbasUsedInUSPolicy=2
qzssUsedInUSPolicy=2
@@ -54,6 +56,12 @@ GlueLayer_IsRilCIDReqEnable=0
GlueLayer_IsMemsEnable=1
GlueLayer_MeasCorrCap=7
Chip_Configuration_mems_data_Configuration=0x25
+AccelSamplingPeriodUs=10000
+MagnSamplingPeriodUs=10000
+GyroSamplingPeriodUs=10000
+PressSamplingPeriodUs=50000
+OrientationSamplingPeriodUs=10000
+StepCounterSamplingPeriodUs=1000000
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
@@ -72,6 +80,10 @@ SingleBandNmTrkPower=20
MultiBandNmTrkPower=28
SingleBandUdTrkPower=14
MultiBandUdTrkPower=18
+path_delay_glo_12fx_cm = -5166,-5149,-5097,-5104,-5021,-4992,-4936,-4854,-4776,-4719,-4656,-4619,-4581,-4544
+path_delay_gps_2fx_cm = 12368
+path_delay_bds_4fx_cm = 164
+path_delay_l5_20fx_cm = 105888
RfPathLossDb_Ap=3550
RfPathLossDb_Cp=3550
RfPathLossDb_L5_Ap=3870
@@ -110,12 +122,16 @@ ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
+ENABLE_NLP_ALONG_WITH_UBP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
+CP_LOCTECH_CONSTRAINTS=1
+UP_LOCTECH_CONSTRAINTS=1
GNSS_CARRIER_ID=1
+CP_LOCTECH_CONSTRAINTS=5
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
@@ -125,7 +141,6 @@ ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
GNSS_CARRIER_ID=3
-ENABLE_CAPS_OTDOA=0
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
diff --git a/location/tokay/userdebug/gps.cfg b/location/tokay/userdebug/gps.cfg
index 74f52461..1389d995 100644
--- a/location/tokay/userdebug/gps.cfg
+++ b/location/tokay/userdebug/gps.cfg
@@ -53,6 +53,9 @@ gnss_device_data_port_chpp_present=1
GlueLayer_YearOfHW=2023
scheduling_enabled=1
+# 1pps timemark output: 0: disable 1: enable
+ChipCfg_Timemark_Option=1
+
# VDR End condition (meter, meter, sec, sec)
ChipCfg_VDR_high_end_Distance = 200
ChipCfg_VDR_low_end_Distance = 200
@@ -112,6 +115,11 @@ Chip_Configuration_RfMiscCtrl = 0x80008001
#Chip_Configuration_RfMiscCtrl=0x8001
#Chip_Configuration_IspTestConfig=0x22242822
+#Chip_Configuration_ntn_option=0 means no NTN blackout IPC handling
+#Chip_Configuration_ntn_option=1 means L1 blanking during NTN blackout period.
+#Chip_Configuration_ntn_option=2 means turning GNSS off during NTN blackout period.
+Chip_Configuration_ntn_option=2
+
# Disable BDS in the U.S.
# 0-enabled (default), 1-disabled, 2-auto(disabled in US)
#gloUsedInUSPolicy=2
@@ -189,6 +197,12 @@ GlueLayer_MeasCorrCap=7
# 0x0010: CHIP_CONFIG_MEMS_ORIENTATION_AVAILABLE
# 0x0020: CHIP_CONFIG_MEMS_STEPCOUNTER_AVAILABLE
Chip_Configuration_mems_data_Configuration=0x25
+AccelSamplingPeriodUs=10000
+MagnSamplingPeriodUs=10000
+GyroSamplingPeriodUs=10000
+PressSamplingPeriodUs=50000
+OrientationSamplingPeriodUs=10000
+StepCounterSamplingPeriodUs=1000000
Chip_Configuration_FeatureCfg_ANDRD_MEAS_CORR_ENABLE=1
CP_LocTech_PrimaryConst=0
CP_LocTech_Constraints=1
@@ -210,6 +224,11 @@ MultiBandNmTrkPower=28
SingleBandUdTrkPower=14
MultiBandUdTrkPower=18
+path_delay_glo_12fx_cm = -5166,-5149,-5097,-5104,-5021,-4992,-4936,-4854,-4776,-4719,-4656,-4619,-4581,-4544
+path_delay_gps_2fx_cm = 12368
+path_delay_bds_4fx_cm = 164
+path_delay_l5_20fx_cm = 105888
+
RfPathLossDb_Ap=3550
RfPathLossDb_Cp=3550
RfPathLossDb_L5_Ap=3870
@@ -266,12 +285,16 @@ ENABLE_LPP_CP=1
ENABLE_LPP_UP=0
ENABLE_LPPE_CP=3
ENABLE_LPPE_UP=0
+ENABLE_NLP_ALONG_WITH_UBP=0
ENABLE_NLP_IN_LPPE=1
ENABLE_NLP_IN_AGNSS=0
ENABLE_LPP_HA_GAD_SHAPE=0
USE_EMER_PDN_FOR_EMER_SUPL=1
+CP_LOCTECH_CONSTRAINTS=1
+UP_LOCTECH_CONSTRAINTS=1
# ATT
GNSS_CARRIER_ID=1
+CP_LOCTECH_CONSTRAINTS=5
# TMO
GNSS_CARRIER_ID=2
ENABLE_3G_CP_CAPS_MSA=0
@@ -281,7 +304,6 @@ ENABLE_NLP_IN_AGNSS=1
ENABLE_LPP_HA_GAD_SHAPE=1
# VZW
GNSS_CARRIER_ID=3
-ENABLE_CAPS_OTDOA=0
ENABLE_LPP_UP=1
ENABLE_LPPE_UP=3
SUPL_SSL_METHOD=TLSv1_2
diff --git a/manifest.xml b/manifest.xml
index e01d156c..18109c63 100644
--- a/manifest.xml
+++ b/manifest.xml
@@ -48,15 +48,6 @@
default
-
- android.hardware.graphics.mapper
- passthrough
- 4.0
-
- IMapper
- default
-
-
android.hardware.graphics.composer
hwbinder
diff --git a/perf/powerhint-caiman.json b/perf/powerhint-caiman.json
index 8b42d97e..ebe5dfdd 100644
--- a/perf/powerhint-caiman.json
+++ b/perf/powerhint-caiman.json
@@ -46,7 +46,7 @@
"9999999",
"1425000",
"1197000",
- "0"
+ "820000"
],
"ResetOnInit": true
},
@@ -56,6 +56,7 @@
"Values": [
"5000",
"2000",
+ "1000",
"500"
],
"DefaultIndex": 0,
@@ -94,6 +95,7 @@
"Path": "/sys/devices/system/cpu/cpu4/cpufreq/sched_pixel/down_rate_limit_us",
"Values": [
"20000",
+ "5000",
"3000",
"2000",
"500"
@@ -168,7 +170,6 @@
"0",
"1"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -295,7 +296,6 @@
"0x0",
"0x80"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -338,6 +338,42 @@
],
"ResetOnInit": true
},
+ {
+ "Name": "TAUclampMinOnNiceEnable",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_enable",
+ "Values": [
+ "1",
+ "0"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceMidValue",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_mid_value",
+ "Values": [
+ "600",
+ "0"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceHighPrio",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_high_prio",
+ "Values": [
+ "119",
+ "120"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceMidPrio",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_mid_prio",
+ "Values": [
+ "128",
+ "130"
+ ],
+ "ResetOnInit": true
+ },
{
"Name": "FGUClampBoost",
"Path": "/proc/vendor_sched/groups/fg/uclamp_min",
@@ -446,7 +482,6 @@
"1",
"0"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -454,6 +489,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_high",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -463,6 +499,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_mid",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -472,6 +509,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_low",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -483,7 +521,6 @@
"1",
"0"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -893,6 +930,34 @@
"67000"
],
"ResetOnInit": true
+ },
+ {
+ "Name": "PA_KILL",
+ "Path": "/sys/kernel/vendor_mm/pa_kill/reclaim_kb",
+ "Values": [
+ "102400",
+ "0"
+ ],
+ "ResetOnInit": false
+ },
+ {
+ "Name": "KswapdUclaimMin",
+ "Path": "/sys/kernel/vendor_mm/kswapd_uclamp_min",
+ "Values": [
+ "0",
+ "200"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "MaxLoadBalanceInterval",
+ "Path": "/proc/vendor_sched/max_load_balance_interval",
+ "Values": [
+ "1",
+ "4"
+ ],
+ "DefaultIndex": 0,
+ "ResetOnInit": true
}
],
"Actions": [
@@ -1353,18 +1418,24 @@
"Duration": 0,
"Value": "0"
},
- {
- "PowerHint": "DISPLAY_INACTIVE",
- "Node": "SysGroupCfsSkipMask",
- "Duration": 0,
- "Value": "0x80"
- },
{
"PowerHint": "DISPLAY_INACTIVE",
"Node": "PerTaskMaxIowaitBoost",
"Duration": 0,
"Value": "0"
},
+ {
+ "PowerHint": "DISPLAY_INACTIVE",
+ "Node": "KswapdUclaimMin",
+ "Duration": 0,
+ "Value": "0"
+ },
+ {
+ "PowerHint": "CAMERA_PA_KILL_BOOST",
+ "Node": "PA_KILL",
+ "Duration": 0,
+ "Value": "102400"
+ },
{
"PowerHint": "CAMERA_LAUNCH",
"Node": "CPUSkipMask",
@@ -1553,9 +1624,57 @@
},
{
"PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
- "Node": "TAUClampBoost",
+ "Node": "ReducePreferIdle",
"Duration": 3000,
- "Value": "600"
+ "Value": "0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskHigh",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskMid",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskLow",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceEnable",
+ "Duration": 3000,
+ "Value": "1"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceMidValue",
+ "Duration": 3000,
+ "Value": "600"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceHighPrio",
+ "Duration": 3000,
+ "Value": "119"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceMidPrio",
+ "Duration": 3000,
+ "Value": "128"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferIdle",
+ "Duration": 3000,
+ "Value": "1"
},
{
"PowerHint": "CAMERA_THERMAL_SEVERE_BOOST",
@@ -1909,13 +2028,13 @@
"PowerHint": "CAMERA_STREAMING_EXTREME",
"Node": "CPULittleClusterDownRateLimitUs",
"Duration": 0,
- "Value": "5000"
+ "Value": "1000"
},
{
"PowerHint": "CAMERA_STREAMING_EXTREME",
"Node": "CPUMidClusterDownRateLimitUs",
"Duration": 0,
- "Value": "20000"
+ "Value": "5000"
},
{
"PowerHint": "CAMERA_STREAMING_EXTREME",
@@ -2001,6 +2120,12 @@
"Duration": 0,
"Value": "0x0"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_EXTREME",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PowerHALCameraRunning",
@@ -2083,13 +2208,13 @@
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "CPULittleClusterDownRateLimitUs",
"Duration": 0,
- "Value": "5000"
+ "Value": "1000"
},
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "CPUMidClusterDownRateLimitUs",
"Duration": 0,
- "Value": "20000"
+ "Value": "5000"
},
{
"PowerHint": "CAMERA_STREAMING_HIGH",
@@ -2193,6 +2318,12 @@
"Duration": 0,
"Value": "0x80"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_HIGH",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "AutoPreferIdle",
@@ -2281,13 +2412,13 @@
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "CPULittleClusterDownRateLimitUs",
"Duration": 0,
- "Value": "5000"
+ "Value": "1000"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "CPUMidClusterDownRateLimitUs",
"Duration": 0,
- "Value": "20000"
+ "Value": "5000"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
@@ -2367,6 +2498,12 @@
"Duration": 0,
"Value": "0x80"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_STANDARD",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_LOW",
"Node": "AutoPreferIdle",
@@ -2950,18 +3087,6 @@
"Duration": 50,
"Value": "1"
},
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_CRITICAL",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "100"
- },
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_NONE",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "1500"
- },
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "PowerHALRenderingState",
@@ -3140,7 +3265,7 @@
"PowerHint": "GAME",
"Node": "AutoPreferIdle",
"Duration": 0,
- "Value": "0"
+ "Value": "1"
},
{
"PowerHint": "GAME",
@@ -3471,11 +3596,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.3,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300,
@@ -3508,11 +3634,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.35,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300,
@@ -3545,11 +3672,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.25,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300,
diff --git a/perf/powerhint-komodo.json b/perf/powerhint-komodo.json
index 644f2b2a..19f55f00 100644
--- a/perf/powerhint-komodo.json
+++ b/perf/powerhint-komodo.json
@@ -46,7 +46,7 @@
"9999999",
"1425000",
"1197000",
- "0"
+ "820000"
],
"ResetOnInit": true
},
@@ -56,6 +56,7 @@
"Values": [
"5000",
"2000",
+ "1000",
"500"
],
"DefaultIndex": 0,
@@ -94,6 +95,7 @@
"Path": "/sys/devices/system/cpu/cpu4/cpufreq/sched_pixel/down_rate_limit_us",
"Values": [
"20000",
+ "5000",
"3000",
"2000",
"500"
@@ -168,7 +170,6 @@
"0",
"1"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -295,7 +296,6 @@
"0x0",
"0x80"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -338,6 +338,42 @@
],
"ResetOnInit": true
},
+ {
+ "Name": "TAUclampMinOnNiceEnable",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_enable",
+ "Values": [
+ "1",
+ "0"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceMidValue",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_mid_value",
+ "Values": [
+ "600",
+ "0"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceHighPrio",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_high_prio",
+ "Values": [
+ "119",
+ "120"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceMidPrio",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_mid_prio",
+ "Values": [
+ "128",
+ "130"
+ ],
+ "ResetOnInit": true
+ },
{
"Name": "FGUClampBoost",
"Path": "/proc/vendor_sched/groups/fg/uclamp_min",
@@ -446,7 +482,6 @@
"1",
"0"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -454,6 +489,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_high",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -463,6 +499,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_mid",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -472,6 +509,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_low",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -483,7 +521,6 @@
"1",
"0"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -893,6 +930,34 @@
"67000"
],
"ResetOnInit": true
+ },
+ {
+ "Name": "PA_KILL",
+ "Path": "/sys/kernel/vendor_mm/pa_kill/reclaim_kb",
+ "Values": [
+ "102400",
+ "0"
+ ],
+ "ResetOnInit": false
+ },
+ {
+ "Name": "KswapdUclaimMin",
+ "Path": "/sys/kernel/vendor_mm/kswapd_uclamp_min",
+ "Values": [
+ "0",
+ "200"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "MaxLoadBalanceInterval",
+ "Path": "/proc/vendor_sched/max_load_balance_interval",
+ "Values": [
+ "1",
+ "4"
+ ],
+ "DefaultIndex": 0,
+ "ResetOnInit": true
}
],
"Actions": [
@@ -1353,18 +1418,24 @@
"Duration": 0,
"Value": "0"
},
- {
- "PowerHint": "DISPLAY_INACTIVE",
- "Node": "SysGroupCfsSkipMask",
- "Duration": 0,
- "Value": "0x80"
- },
{
"PowerHint": "DISPLAY_INACTIVE",
"Node": "PerTaskMaxIowaitBoost",
"Duration": 0,
"Value": "0"
},
+ {
+ "PowerHint": "DISPLAY_INACTIVE",
+ "Node": "KswapdUclaimMin",
+ "Duration": 0,
+ "Value": "0"
+ },
+ {
+ "PowerHint": "CAMERA_PA_KILL_BOOST",
+ "Node": "PA_KILL",
+ "Duration": 0,
+ "Value": "102400"
+ },
{
"PowerHint": "CAMERA_LAUNCH",
"Node": "CPUSkipMask",
@@ -1551,12 +1622,60 @@
"Duration": 3000,
"Value": "0"
},
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "ReducePreferIdle",
+ "Duration": 3000,
+ "Value": "0"
+ },
{
"PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
- "Node": "TAUClampBoost",
+ "Node": "TAPreferredIdleMaskHigh",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskMid",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskLow",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceEnable",
+ "Duration": 3000,
+ "Value": "1"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceMidValue",
"Duration": 3000,
"Value": "600"
},
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceHighPrio",
+ "Duration": 3000,
+ "Value": "119"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceMidPrio",
+ "Duration": 3000,
+ "Value": "128"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferIdle",
+ "Duration": 3000,
+ "Value": "1"
+ },
{
"PowerHint": "CAMERA_THERMAL_SEVERE_BOOST",
"Node": "CDPreferHighCap",
@@ -1909,13 +2028,13 @@
"PowerHint": "CAMERA_STREAMING_EXTREME",
"Node": "CPULittleClusterDownRateLimitUs",
"Duration": 0,
- "Value": "5000"
+ "Value": "1000"
},
{
"PowerHint": "CAMERA_STREAMING_EXTREME",
"Node": "CPUMidClusterDownRateLimitUs",
"Duration": 0,
- "Value": "20000"
+ "Value": "5000"
},
{
"PowerHint": "CAMERA_STREAMING_EXTREME",
@@ -2001,6 +2120,12 @@
"Duration": 0,
"Value": "0x0"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_EXTREME",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PowerHALCameraRunning",
@@ -2083,13 +2208,13 @@
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "CPULittleClusterDownRateLimitUs",
"Duration": 0,
- "Value": "5000"
+ "Value": "1000"
},
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "CPUMidClusterDownRateLimitUs",
"Duration": 0,
- "Value": "20000"
+ "Value": "5000"
},
{
"PowerHint": "CAMERA_STREAMING_HIGH",
@@ -2193,6 +2318,12 @@
"Duration": 0,
"Value": "0x80"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_HIGH",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "AutoPreferIdle",
@@ -2281,13 +2412,13 @@
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "CPULittleClusterDownRateLimitUs",
"Duration": 0,
- "Value": "5000"
+ "Value": "1000"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "CPUMidClusterDownRateLimitUs",
"Duration": 0,
- "Value": "20000"
+ "Value": "5000"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
@@ -2367,6 +2498,12 @@
"Duration": 0,
"Value": "0x80"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_STANDARD",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_LOW",
"Node": "AutoPreferIdle",
@@ -2950,18 +3087,6 @@
"Duration": 50,
"Value": "1"
},
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_CRITICAL",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "100"
- },
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_NONE",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "1500"
- },
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "PowerHALRenderingState",
@@ -3140,7 +3265,7 @@
"PowerHint": "GAME",
"Node": "AutoPreferIdle",
"Duration": 0,
- "Value": "0"
+ "Value": "1"
},
{
"PowerHint": "GAME",
@@ -3471,11 +3596,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.3,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300,
@@ -3508,11 +3634,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.35,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300,
@@ -3545,11 +3672,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.25,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300,
diff --git a/perf/powerhint-ripcurrent24.json b/perf/powerhint-ripcurrent24.json
index 8d96044b..ccab4c15 100644
--- a/perf/powerhint-ripcurrent24.json
+++ b/perf/powerhint-ripcurrent24.json
@@ -337,6 +337,16 @@
"Type": "Property",
"ResetOnInit": true
},
+ {
+ "Name": "PowerHALLaunch",
+ "Path": "vendor.powerhal.is_launch",
+ "Values": [
+ "1",
+ "0"
+ ],
+ "Type": "Property",
+ "ResetOnInit": true
+ },
{
"Name": "INTCAMFreq",
"Path": "/sys/devices/platform/17000030.devfreq_intcam/devfreq/17000030.devfreq_intcam/min_freq",
@@ -594,6 +604,15 @@
"0,1,2,3,4,5,6,7,8"
],
"Type": "Property"
+ },
+ {
+ "Name": "PA_KILL",
+ "Path": "/sys/kernel/vendor_mm/pa_kill/reclaim_kb",
+ "Values": [
+ "102400",
+ "0"
+ ],
+ "ResetOnInit": false
}
],
"Actions": [
@@ -704,6 +723,12 @@
"EnableProperty": "vendor.powerhal.camerarunning",
"Value": "CDMIDHIGHCPUSETCPUS_RESTRICTED"
},
+ {
+ "PowerHint": "LAUNCH",
+ "Node": "PowerHALLaunch",
+ "Duration": 5000,
+ "Value": "1"
+ },
{
"PowerHint": "LAUNCH_PMU",
"Node": "PMU_POLL",
@@ -722,6 +747,13 @@
"Duration": 33,
"Value": "820000"
},
+ {
+ "PowerHint": "CAMERA_LAUNCH",
+ "Node": "PA_KILL",
+ "EnableProperty": "vendor.powerhal.is_launch",
+ "Duration": 0,
+ "Value": "102400"
+ },
{
"PowerHint": "CAMERA_LAUNCH",
"Node": "MemFreq",
@@ -1605,18 +1637,6 @@
"Duration": 50,
"Value": "1"
},
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_CRITICAL",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "100"
- },
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_NONE",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "1500"
- },
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "PowerHALRenderingState",
diff --git a/perf/powerhint-ripcurrentpro.json b/perf/powerhint-ripcurrentpro.json
index 3912d9ba..b74fd196 100644
--- a/perf/powerhint-ripcurrentpro.json
+++ b/perf/powerhint-ripcurrentpro.json
@@ -100,7 +100,7 @@
"9999999",
"1425000",
"1197000",
- "0"
+ "820000"
],
"ResetOnInit": true
},
@@ -222,7 +222,6 @@
"0",
"1"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -285,7 +284,6 @@
"0x0",
"0x80"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -328,6 +326,42 @@
],
"ResetOnInit": true
},
+ {
+ "Name": "TAUclampMinOnNiceEnable",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_enable",
+ "Values": [
+ "1",
+ "0"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceMidValue",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_mid_value",
+ "Values": [
+ "600",
+ "0"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceHighPrio",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_high_prio",
+ "Values": [
+ "119",
+ "120"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceMidPrio",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_mid_prio",
+ "Values": [
+ "128",
+ "130"
+ ],
+ "ResetOnInit": true
+ },
{
"Name": "FGUClampBoost",
"Path": "/proc/vendor_sched/groups/fg/uclamp_min",
@@ -436,7 +470,6 @@
"1",
"0"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -444,6 +477,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_high",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -453,6 +487,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_mid",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -462,6 +497,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_low",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -473,7 +509,6 @@
"1",
"0"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -819,6 +854,34 @@
"20 40"
],
"ResetOnInit": true
+ },
+ {
+ "Name": "PA_KILL",
+ "Path": "/sys/kernel/vendor_mm/pa_kill/reclaim_kb",
+ "Values": [
+ "102400",
+ "0"
+ ],
+ "ResetOnInit": false
+ },
+ {
+ "Name": "KswapdUclaimMin",
+ "Path": "/sys/kernel/vendor_mm/kswapd_uclamp_min",
+ "Values": [
+ "0",
+ "200"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "MaxLoadBalanceInterval",
+ "Path": "/proc/vendor_sched/max_load_balance_interval",
+ "Values": [
+ "1",
+ "4"
+ ],
+ "DefaultIndex": 0,
+ "ResetOnInit": true
}
],
"Actions": [
@@ -1281,9 +1344,15 @@
},
{
"PowerHint": "DISPLAY_INACTIVE",
- "Node": "SysGroupCfsSkipMask",
+ "Node": "KswapdUclaimMin",
"Duration": 0,
- "Value": "0x80"
+ "Value": "0"
+ },
+ {
+ "PowerHint": "CAMERA_PA_KILL_BOOST",
+ "Node": "PA_KILL",
+ "Duration": 0,
+ "Value": "102400"
},
{
"PowerHint": "CAMERA_LAUNCH",
@@ -1473,9 +1542,57 @@
},
{
"PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
- "Node": "TAUClampBoost",
+ "Node": "ReducePreferIdle",
"Duration": 3000,
- "Value": "600"
+ "Value": "0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskHigh",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskMid",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskLow",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceEnable",
+ "Duration": 3000,
+ "Value": "1"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceMidValue",
+ "Duration": 3000,
+ "Value": "600"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceHighPrio",
+ "Duration": 3000,
+ "Value": "119"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceMidPrio",
+ "Duration": 3000,
+ "Value": "128"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferIdle",
+ "Duration": 3000,
+ "Value": "1"
},
{
"PowerHint": "CAMERA_THERMAL_SEVERE_BOOST",
@@ -1885,6 +2002,12 @@
"Duration": 0,
"Value": "0x0"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_EXTREME",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PowerHALCameraRunning",
@@ -2041,6 +2164,12 @@
"Duration": 0,
"Value": "0x80"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_HIGH",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "AutoPreferIdle",
@@ -2179,6 +2308,12 @@
"Duration": 0,
"Value": "0x80"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_STANDARD",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_LOW",
"Node": "AutoPreferIdle",
@@ -2696,18 +2831,6 @@
"Duration": 50,
"Value": "1"
},
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_CRITICAL",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "100"
- },
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_NONE",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "1500"
- },
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "PowerHALRenderingState",
@@ -2994,7 +3117,7 @@
"PowerHint": "CAMERA_PROJECT11",
"Node": "PMU_BIG_SPC_THRESHOLD",
"Duration": 0,
- "Value": "50"
+ "Value": "20"
},
{
"PowerHint": "CAMERA_PROJECT11",
diff --git a/perf/powerhint-tokay.json b/perf/powerhint-tokay.json
index 8b42d97e..ebe5dfdd 100644
--- a/perf/powerhint-tokay.json
+++ b/perf/powerhint-tokay.json
@@ -46,7 +46,7 @@
"9999999",
"1425000",
"1197000",
- "0"
+ "820000"
],
"ResetOnInit": true
},
@@ -56,6 +56,7 @@
"Values": [
"5000",
"2000",
+ "1000",
"500"
],
"DefaultIndex": 0,
@@ -94,6 +95,7 @@
"Path": "/sys/devices/system/cpu/cpu4/cpufreq/sched_pixel/down_rate_limit_us",
"Values": [
"20000",
+ "5000",
"3000",
"2000",
"500"
@@ -168,7 +170,6 @@
"0",
"1"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -295,7 +296,6 @@
"0x0",
"0x80"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -338,6 +338,42 @@
],
"ResetOnInit": true
},
+ {
+ "Name": "TAUclampMinOnNiceEnable",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_enable",
+ "Values": [
+ "1",
+ "0"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceMidValue",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_mid_value",
+ "Values": [
+ "600",
+ "0"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceHighPrio",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_high_prio",
+ "Values": [
+ "119",
+ "120"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "TAUclampMinOnNiceMidPrio",
+ "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_mid_prio",
+ "Values": [
+ "128",
+ "130"
+ ],
+ "ResetOnInit": true
+ },
{
"Name": "FGUClampBoost",
"Path": "/proc/vendor_sched/groups/fg/uclamp_min",
@@ -446,7 +482,6 @@
"1",
"0"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -454,6 +489,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_high",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -463,6 +499,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_mid",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -472,6 +509,7 @@
"Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_low",
"Values": [
"0xff",
+ "0xf0",
"0x7f"
],
"ResetOnInit": true
@@ -483,7 +521,6 @@
"1",
"0"
],
- "DefaultIndex": 0,
"ResetOnInit": true
},
{
@@ -893,6 +930,34 @@
"67000"
],
"ResetOnInit": true
+ },
+ {
+ "Name": "PA_KILL",
+ "Path": "/sys/kernel/vendor_mm/pa_kill/reclaim_kb",
+ "Values": [
+ "102400",
+ "0"
+ ],
+ "ResetOnInit": false
+ },
+ {
+ "Name": "KswapdUclaimMin",
+ "Path": "/sys/kernel/vendor_mm/kswapd_uclamp_min",
+ "Values": [
+ "0",
+ "200"
+ ],
+ "ResetOnInit": true
+ },
+ {
+ "Name": "MaxLoadBalanceInterval",
+ "Path": "/proc/vendor_sched/max_load_balance_interval",
+ "Values": [
+ "1",
+ "4"
+ ],
+ "DefaultIndex": 0,
+ "ResetOnInit": true
}
],
"Actions": [
@@ -1353,18 +1418,24 @@
"Duration": 0,
"Value": "0"
},
- {
- "PowerHint": "DISPLAY_INACTIVE",
- "Node": "SysGroupCfsSkipMask",
- "Duration": 0,
- "Value": "0x80"
- },
{
"PowerHint": "DISPLAY_INACTIVE",
"Node": "PerTaskMaxIowaitBoost",
"Duration": 0,
"Value": "0"
},
+ {
+ "PowerHint": "DISPLAY_INACTIVE",
+ "Node": "KswapdUclaimMin",
+ "Duration": 0,
+ "Value": "0"
+ },
+ {
+ "PowerHint": "CAMERA_PA_KILL_BOOST",
+ "Node": "PA_KILL",
+ "Duration": 0,
+ "Value": "102400"
+ },
{
"PowerHint": "CAMERA_LAUNCH",
"Node": "CPUSkipMask",
@@ -1553,9 +1624,57 @@
},
{
"PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
- "Node": "TAUClampBoost",
+ "Node": "ReducePreferIdle",
"Duration": 3000,
- "Value": "600"
+ "Value": "0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskHigh",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskMid",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferredIdleMaskLow",
+ "Duration": 3000,
+ "Value": "0xf0"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceEnable",
+ "Duration": 3000,
+ "Value": "1"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceMidValue",
+ "Duration": 3000,
+ "Value": "600"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceHighPrio",
+ "Duration": 3000,
+ "Value": "119"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAUclampMinOnNiceMidPrio",
+ "Duration": 3000,
+ "Value": "128"
+ },
+ {
+ "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE",
+ "Node": "TAPreferIdle",
+ "Duration": 3000,
+ "Value": "1"
},
{
"PowerHint": "CAMERA_THERMAL_SEVERE_BOOST",
@@ -1909,13 +2028,13 @@
"PowerHint": "CAMERA_STREAMING_EXTREME",
"Node": "CPULittleClusterDownRateLimitUs",
"Duration": 0,
- "Value": "5000"
+ "Value": "1000"
},
{
"PowerHint": "CAMERA_STREAMING_EXTREME",
"Node": "CPUMidClusterDownRateLimitUs",
"Duration": 0,
- "Value": "20000"
+ "Value": "5000"
},
{
"PowerHint": "CAMERA_STREAMING_EXTREME",
@@ -2001,6 +2120,12 @@
"Duration": 0,
"Value": "0x0"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_EXTREME",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PowerHALCameraRunning",
@@ -2083,13 +2208,13 @@
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "CPULittleClusterDownRateLimitUs",
"Duration": 0,
- "Value": "5000"
+ "Value": "1000"
},
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "CPUMidClusterDownRateLimitUs",
"Duration": 0,
- "Value": "20000"
+ "Value": "5000"
},
{
"PowerHint": "CAMERA_STREAMING_HIGH",
@@ -2193,6 +2318,12 @@
"Duration": 0,
"Value": "0x80"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_HIGH",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "AutoPreferIdle",
@@ -2281,13 +2412,13 @@
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "CPULittleClusterDownRateLimitUs",
"Duration": 0,
- "Value": "5000"
+ "Value": "1000"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "CPUMidClusterDownRateLimitUs",
"Duration": 0,
- "Value": "20000"
+ "Value": "5000"
},
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
@@ -2367,6 +2498,12 @@
"Duration": 0,
"Value": "0x80"
},
+ {
+ "PowerHint": "CAMERA_STREAMING_STANDARD",
+ "Node": "MaxLoadBalanceInterval",
+ "Duration": 0,
+ "Value": "4"
+ },
{
"PowerHint": "CAMERA_STREAMING_LOW",
"Node": "AutoPreferIdle",
@@ -2950,18 +3087,6 @@
"Duration": 50,
"Value": "1"
},
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_CRITICAL",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "100"
- },
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_NONE",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "1500"
- },
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "PowerHALRenderingState",
@@ -3140,7 +3265,7 @@
"PowerHint": "GAME",
"Node": "AutoPreferIdle",
"Duration": 0,
- "Value": "0"
+ "Value": "1"
},
{
"PowerHint": "GAME",
@@ -3471,11 +3596,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.3,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300,
@@ -3508,11 +3634,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.35,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300,
@@ -3545,11 +3672,12 @@
"TargetTimeFactor": 1.0,
"StaleTimeFactor": 15.0,
"HeuristicBoost_On": true,
- "HBoostOnMissedCycles": 8,
- "HBoostOffMaxAvgRatio": 4.0,
- "HBoostOffMissedCycles": 5,
- "HBoostPidPuFactor": 0.5,
- "HBoostUclampMin": 722,
+ "HBoostModerateJankThreshold": 2,
+ "HBoostOffMaxAvgDurRatio": 4.0,
+ "HBoostSevereJankPidPu": 0.25,
+ "HBoostSevereJankThreshold": 8,
+ "HBoostUclampMinCeilingRange": [480, 722],
+ "HBoostUclampMinFloorRange": [230, 410],
"JankCheckTimeFactor": 1.2,
"LowFrameRateThreshold": 25,
"MaxRecordsNum": 300,
diff --git a/perf/powerhint-zuma.json b/perf/powerhint-zuma.json
index 84f89f21..996ecf97 100644
--- a/perf/powerhint-zuma.json
+++ b/perf/powerhint-zuma.json
@@ -485,6 +485,16 @@
"Type": "Property",
"ResetOnInit": true
},
+ {
+ "Name": "PowerHALLaunch",
+ "Path": "vendor.powerhal.is_launch",
+ "Values": [
+ "1",
+ "0"
+ ],
+ "Type": "Property",
+ "ResetOnInit": true
+ },
{
"Name": "INTCAMFreq",
"Path": "/sys/devices/platform/17000030.devfreq_intcam/devfreq/17000030.devfreq_intcam/min_freq",
@@ -778,6 +788,15 @@
"20 40"
],
"ResetOnInit": true
+ },
+ {
+ "Name": "PA_KILL",
+ "Path": "/sys/kernel/vendor_mm/pa_kill/reclaim_kb",
+ "Values": [
+ "102400",
+ "0"
+ ],
+ "ResetOnInit": false
}
],
"Actions": [
@@ -934,6 +953,12 @@
"Duration": 5000,
"Value": "1"
},
+ {
+ "PowerHint": "LAUNCH",
+ "Node": "PowerHALLaunch",
+ "Duration": 5000,
+ "Value": "1"
+ },
{
"PowerHint": "LAUNCH_EXTEND",
"Node": "CPUBigClusterMaxFreq",
@@ -1077,6 +1102,13 @@
"Duration": 0,
"Value": "0"
},
+ {
+ "PowerHint": "CAMERA_LAUNCH",
+ "Node": "PA_KILL",
+ "EnableProperty": "vendor.powerhal.is_launch",
+ "Duration": 0,
+ "Value": "102400"
+ },
{
"PowerHint": "CAMERA_LAUNCH",
"Node": "CPU_BIG_TSKIN_BYPASS",
@@ -2380,18 +2412,6 @@
"Duration": 50,
"Value": "1"
},
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_CRITICAL",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "100"
- },
- {
- "PowerHint": "THERMAL_FLASH_LED_REDUCE_NONE",
- "Node": "LimitFlashCurrent",
- "Duration": 0,
- "Value": "1500"
- },
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "PowerHALRenderingState",
diff --git a/ripcurrent24/BoardConfig.mk b/ripcurrent24/BoardConfig.mk
index 58b90fe7..e9121e90 100644
--- a/ripcurrent24/BoardConfig.mk
+++ b/ripcurrent24/BoardConfig.mk
@@ -24,5 +24,6 @@ include device/google/caimito/device-caimito-common.mk
include device/google/zumapro/BoardConfig-common.mk
-include vendor/google_devices/zumapro/prebuilts/BoardConfigVendor.mk
+include device/google/gs-common/check_current_prebuilt/check_current_prebuilt.mk
include device/google/caimito-sepolicy/ripcurrent24-sepolicy.mk
include device/google/caimito/wifi/BoardConfig-wifi.mk
diff --git a/ripcurrentpro/BoardConfig.mk b/ripcurrentpro/BoardConfig.mk
index ca496d0b..bc66ab01 100644
--- a/ripcurrentpro/BoardConfig.mk
+++ b/ripcurrentpro/BoardConfig.mk
@@ -24,5 +24,6 @@ include device/google/caimito/device-caimito-common.mk
include device/google/zumapro/BoardConfig-common.mk
-include vendor/google_devices/zumapro/prebuilts/BoardConfigVendor.mk
+include device/google/gs-common/check_current_prebuilt/check_current_prebuilt.mk
include device/google/caimito-sepolicy/ripcurrentpro-sepolicy.mk
include device/google/caimito/wifi/BoardConfig-wifi.mk
diff --git a/thermal/thermal_info_config_caiman.json b/thermal/thermal_info_config_caiman.json
index 03f0f21b..7eaed015 100644
--- a/thermal/thermal_info_config_caiman.json
+++ b/thermal/thermal_info_config_caiman.json
@@ -77,30 +77,6 @@
"PollingDelay":300000,
"PassiveDelay":7000
},
- {
- "Name":"battery_cycle",
- "Type":"BCL_VOLTAGE"
- },
- {
- "Name":"soc",
- "Type":"BCL_PERCENTAGE",
- "HotThreshold":["NAN", "NAN", 80, "NAN", "NAN", "NAN", "NAN"],
- "Multiplier":1
- },
- {
- "Name":"BCL_AUDIO_BAACL",
- "Type":"BCL_VOLTAGE",
- "VirtualSensor":true,
- "Formula":"COUNT_THRESHOLD",
- "TriggerSensor": "soc",
- "Combination":["battery", "soc"],
- "Coefficient":[-25000, 80],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
- "PollingDelay":0,
- "PassiveDelay":1000,
- "Multiplier":1,
- "SendCallback":true
- },
{
"Name":"VIRTUAL-BTS-WINDOW-PARTIAL",
"Type":"UNKNOWN",
diff --git a/thermal/thermal_info_config_komodo.json b/thermal/thermal_info_config_komodo.json
index 22db4453..c329b20b 100644
--- a/thermal/thermal_info_config_komodo.json
+++ b/thermal/thermal_info_config_komodo.json
@@ -77,30 +77,6 @@
"PollingDelay":300000,
"PassiveDelay":7000
},
- {
- "Name":"battery_cycle",
- "Type":"BCL_VOLTAGE"
- },
- {
- "Name":"soc",
- "Type":"BCL_PERCENTAGE",
- "HotThreshold":["NAN", "NAN", 80, "NAN", "NAN", "NAN", "NAN"],
- "Multiplier":1
- },
- {
- "Name":"BCL_AUDIO_BAACL",
- "Type":"BCL_VOLTAGE",
- "VirtualSensor":true,
- "Formula":"COUNT_THRESHOLD",
- "TriggerSensor": "soc",
- "Combination":["battery", "soc"],
- "Coefficient":[-25000, 80],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
- "PollingDelay":0,
- "PassiveDelay":1000,
- "Multiplier":1,
- "SendCallback":true
- },
{
"Name":"VIRTUAL-BTS-WINDOW-PARTIAL",
"Type":"UNKNOWN",
diff --git a/thermal/thermal_info_config_ripcurrent24.json b/thermal/thermal_info_config_ripcurrent24.json
index e8ba936c..f081771b 100644
--- a/thermal/thermal_info_config_ripcurrent24.json
+++ b/thermal/thermal_info_config_ripcurrent24.json
@@ -508,20 +508,17 @@
{
"Name":"thermal-cpufreq-0",
"Type":"CPU",
- "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote",
- "State2Power":["1100", "1050", "1000", "950", "900", "850", "800", "750", "700", "650", "600"]
+ "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote"
},
{
"Name":"thermal-cpufreq-1",
"Type":"CPU",
- "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote",
- "State2Power":["1400", "1350", "1300", "1250", "1200", "1150", "1100", "1050", "1000", "950", "900", "850", "800", "750"]
+ "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote"
},
{
"Name":"thermal-cpufreq-2",
"Type":"CPU",
- "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote",
- "State2Power":["1450", "1400", "1350", "1300", "1250", "1200", "1150", "1100", "1050", "1000", "950", "900", "850", "800", "750"]
+ "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote"
},
{
"Name":"thermal-gpufreq-0",
diff --git a/thermal/thermal_info_config_ripcurrentpro.json b/thermal/thermal_info_config_ripcurrentpro.json
index a40bd596..6d05ad76 100644
--- a/thermal/thermal_info_config_ripcurrentpro.json
+++ b/thermal/thermal_info_config_ripcurrentpro.json
@@ -80,20 +80,17 @@
{
"Name":"thermal-cpufreq-0",
"Type":"CPU",
- "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote",
- "State2Power":["1100", "1050", "1000", "950", "900", "850", "800", "750", "700", "650", "600"]
+ "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote"
},
{
"Name":"thermal-cpufreq-1",
"Type":"CPU",
- "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote",
- "State2Power":["1400", "1350", "1300", "1250", "1200", "1150", "1100", "1050", "1000", "950", "900", "850", "800", "750"]
+ "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote"
},
{
"Name":"thermal-cpufreq-2",
"Type":"CPU",
- "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote",
- "State2Power":["1450", "1400", "1350", "1300", "1250", "1200", "1150", "1100", "1050", "1000", "950", "900", "850", "800", "750"]
+ "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote"
},
{
"Name":"thermal-gpufreq-0",
diff --git a/thermal/thermal_info_config_tokay.json b/thermal/thermal_info_config_tokay.json
index e2c71651..25aa5e78 100644
--- a/thermal/thermal_info_config_tokay.json
+++ b/thermal/thermal_info_config_tokay.json
@@ -77,30 +77,6 @@
"PollingDelay":300000,
"PassiveDelay":7000
},
- {
- "Name":"battery_cycle",
- "Type":"BCL_VOLTAGE"
- },
- {
- "Name":"soc",
- "Type":"BCL_PERCENTAGE",
- "HotThreshold":["NAN", "NAN", 80, "NAN", "NAN", "NAN", "NAN"],
- "Multiplier":1
- },
- {
- "Name":"BCL_AUDIO_BAACL",
- "Type":"BCL_VOLTAGE",
- "VirtualSensor":true,
- "Formula":"COUNT_THRESHOLD",
- "TriggerSensor": "soc",
- "Combination":["battery", "soc"],
- "Coefficient":[-25000, 80],
- "HotThreshold":["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
- "PollingDelay":0,
- "PassiveDelay":1000,
- "Multiplier":1,
- "SendCallback":true
- },
{
"Name": "VIRTUAL-SKIN-SUB-0",
"Type": "UNKNOWN",
diff --git a/tokay/BoardConfig.mk b/tokay/BoardConfig.mk
index fff6eb73..3dcfb8df 100644
--- a/tokay/BoardConfig.mk
+++ b/tokay/BoardConfig.mk
@@ -20,10 +20,15 @@ TARGET_SCREEN_DENSITY := 420
BOARD_USES_GENERIC_AUDIO := true
USES_DEVICE_GOOGLE_CAIMITO := true
+RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_TOKAY_RADIO_DIR)
+RELEASE_GOOGLE_PRODUCT_RADIOCFG_DIR := $(RELEASE_GOOGLE_TOKAY_RADIOCFG_DIR)
+RELEASE_GOOGLE_PRODUCT_NTNRADIO_DIR := $(RELEASE_GOOGLE_TOKAY_NTNRADIO_DIR)
+
include device/google/caimito/device-caimito-common.mk
include device/google/zumapro/BoardConfig-common.mk
-include vendor/google_devices/zumapro/prebuilts/BoardConfigVendor.mk
+include device/google/gs-common/check_current_prebuilt/check_current_prebuilt.mk
-include vendor/google_devices/tokay/proprietary/BoardConfigVendor.mk
include device/google/caimito/sepolicy/tokay-sepolicy.mk
include device/google/caimito/wifi/BoardConfig-wifi.mk
diff --git a/tokay/overlay/frameworks/base/core/res/res/values/config.xml b/tokay/overlay/frameworks/base/core/res/res/values/config.xml
index c5dafeb4..0018e7cc 100644
--- a/tokay/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/tokay/overlay/frameworks/base/core/res/res/values/config.xml
@@ -54,6 +54,10 @@
- 0.077178631
+
+ 105%
+
0
@@ -173,9 +177,12 @@
- 0.335
- 52dp
- 52dp
- 52dp
+
+ 66dp
+
+ 24dp
- m 484.5,0 h 110 v 141.5 h -110 z
+ m 484.5,0 h 110 v 173 h -110 z
@left
- - 79
+ - 31
- - 118
+ - 39
- - 331
+ - 540
- - 3700
+ - 3850
diff --git a/tokay/overlay/frameworks/base/packages/SystemUI/res/values/config.xml b/tokay/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
index 6564d57a..27be1cd0 100644
--- a/tokay/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
+++ b/tokay/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
@@ -25,16 +25,6 @@
always-on display) -->
com.google.sensor.binned_brightness
-
-
- - -1
- - 1
- - 2
- - 8
- - 8
-
-