From ab07ada908b82340e7acd899e85a9802cf8a9057 Mon Sep 17 00:00:00 2001
From: chenlh <2008get@163.com>
Date: 星期四, 18 九月 2025 14:09:22 +0800
Subject: [PATCH] 首轮测试版代码常规上传
---
src/tg/tg_param_convert.cpp | 76 +++++++++++++++++++++++--------------
1 files changed, 47 insertions(+), 29 deletions(-)
diff --git a/src/tg/tg_param_convert.cpp b/src/tg/tg_param_convert.cpp
index 4f3c400..26f9e16 100644
--- a/src/tg/tg_param_convert.cpp
+++ b/src/tg/tg_param_convert.cpp
@@ -57,19 +57,23 @@
u32 tg_param_convert::InputParamCtrl(IModule* m, void* handle, int &plen)
{
- enum GainID {
+ enum Input_ID{
GAIN = 0x1,
MUTE,
SENSI,
PHANTOM,
- PHASE = 9,
- STEP,//-500~+500
- };
+ TYPE,
+ FREQ,
+ LEVEL,
+ NAME,
+ PHASE,
+ STEP,
+ LINK,
+ CHANNEL_LEVEL,
- enum PitchID {
- PITCH_BYPASS = 0x1,//
- PITCH_SEMITONES,//
+ INPUT_MIN,
+ INPUT_MAX,
};
if(handle == NULL) return 1;
@@ -84,9 +88,14 @@
val[1] = RESSIGNBIT(pInput->input[i].gain); m->Ctrl(GAIN, val, 2);
val[1] = RESSIGNBIT(pInput->input[i].mute); m->Ctrl(MUTE, val, 2);
+ val[1] = RESSIGNBIT(pInput->input[i].level); m->Ctrl(LEVEL, val, 2);
val[1] = RESSIGNBIT(pInput->input[i].sensitivity); m->Ctrl(SENSI, val, 2);
val[1] = RESSIGNBIT(pInput->input[i].phant); m->Ctrl(PHANTOM, val, 2);
val[1] = RESSIGNBIT(pInput->input[i].phase); m->Ctrl(PHASE, val, 2);
+
+ val[1] = RESSIGNBIT(pInput->input[i].type); m->Ctrl(TYPE, val, 2);
+ val[1] = RESSIGNBIT(pInput->input[i].freq); m->Ctrl(FREQ, val, 2);
+ val[1] = RESSIGNBIT(pInput->input[i].level); m->Ctrl(LEVEL, val, 2);
}
return 0;
@@ -303,8 +312,9 @@
for(i=0 ;i < pmixer->output_num ;i ++) {
for(j =0 ;j < pmixer->input_num ;j++) {
- val[0] = j; val[1] = i ; val[2] = (pmixer->input_mask[i][j/15]>>(j&15))&0x1; m->Ctrl(MIXER_SWITCH, val, 3);
- val[0] = j; val[1] = i ; val[2] = RESSIGNBIT(pmixer->input_gain[i][j]); m->Ctrl(MIXER_GAIN, val, 3);
+ val[0] = j; val[1] = i; val[2] = (pmixer->input_mask[i][j/15]>>(j&15))&0x1; m->Ctrl(MIXER_SWITCH, val, 3);
+// printf("oich %d %d= %x %x %x\n", i,j, val[0],val[1],val[2]);
+ val[0] = j; val[1] = i; val[2] = RESSIGNBIT(pmixer->input_gain[i][j]); m->Ctrl(MIXER_GAIN, val, 3);
}
}
}
@@ -364,23 +374,6 @@
u32 tg_param_convert::FeedbackParamCtrl(IModule* m, void* handle, int &plen)
{
-// enum NHSID{
-// FB_BYPASS = 0x1,
-// FB_PANIC,
-// FB_THRS,
-// FB_FLT_DEPTH,
-// FB_STEP,
-// FB_FLT_Q,
-// FB_RECYCLETIME,
-//
-// FB_FLT_FREQ,
-// FB_FLT_GAIN,
-// FB_FLT_TYPE,
-//
-// FB_CLEAR, //
-// FB_CLEAR_DYNAMIC,//
-// };
-
enum NHSID{
FB_BYPASS= 0x1,
FB_FLT_FREQ,
@@ -502,12 +495,13 @@
if(handle == NULL) return 1;
- short val[4];
+ short val[4] = {0,0,0,0};
ptag_aec paec = (ptag_aec)handle;
plen = sizeof(tag_aec);
- val[0] = paec->bypass; m->Ctrl(BYPASS, val, 1);
- val[0] = paec->mode; m->Ctrl(NLPLEVEL, val, 1);
+ val[1] = paec->bypass; m->Ctrl(BYPASS, val, 2);
+ val[1] = paec->mode; m->Ctrl(NLPLEVEL, val, 2);
+ val[1] = 2; m->Ctrl(NSMODE, val, 2);
return 0;
}
@@ -848,6 +842,30 @@
return 0;
}
+u32 tg_param_convert::FirParamCtrl(IModule* m, void* handle, int &plen)
+{
+ enum FIRID {
+ FIR_BYPASS = 0x1, ////val[0]: 0-取消bypass, 1- 使能bypass
+ FIR_NAME, //无用
+ FIR_TAPS, //无用
+ FIR_COEFFS, //val: 分包,最大长度1024 float. 无转换直接拷贝float.
+ };
+ if(NULL == handle) return 1;
+
+ ptag_fir pfir = (ptag_fir)handle;
+
+ plen = sizeof(tag_fir);
+ short val[4] = {0};
+ val[0] = pfir->bypass;
+ int taps = pfir->taps;
+ const short *pcoeffs = (const short *)pfir->coeffs;
+
+ m->Ctrl(FIR_BYPASS, val, 1);
+ m->Ctrl(FIR_COEFFS, pcoeffs, taps * 2);
+
+ return 0;
+}
+
u32 tg_param_convert::EmptyParamCtrl(IModule* m, void* handle, int &plen)
{
if(handle == NULL) return 1;
--
Gitblit v1.9.3