资源优化(非可视化的SDK)
📎 原始文档:https://www.kdocs.cn/l/curhyyhoWtZn 资源优化(非可视化的SDK)
打印:ASSERT: Rom No enough physics memory,实际是表示RAM不够
ROM不够的话在下载固件的时候就会报错了。
AD697
- [省ROM]删除AEC代码(4K byte) 注:AEC的代码占用资源大概为4Kbyte的ROM,不管配置工具上面是否打开AEC,AEC的代码都会被编译
修改方式:

int AptFilt_QueryBufSize(int M, int B)
{
}
int AptFilt_QueryTempBufSize(int M, int B)
{
}
void AptFilt_Init(void *AptFilRunBuffer,
int M,
int B,
float ConverThr,
float RefEngThr,
float DT_AggressiveFactor) //DT = Double Talk; Bigger to trace better,but will be unstable,range = 1 ~ 5
{
}
void AptFilt_Process(void *AptFilRunBuffer,
void *AptFilTempBuffer,
short *far,
short *near,
short *output,
int npoint) //npoint must be multiply of 64
{
}
void AptFilt_Config(void *AptFilRunBuffer, int ConfigType, int *ConfigData)
{
}
- [省ROM][RAM]关闭动态加载(4K byte) 注释:关闭动态加载,会影响一点点距离,一般不明显,以实测为准
修改方式:
把动态加载关了之后,提高一下通话时钟
- [省ROM]替换rypto_toolbox_Osize.a(4K byte) 注释:默认SDK使用的是rypto_toolbox_Ospeed.a,替换rypto_toolbox_Osize.a后可以省4K的ROM

【金山文档】 crypto_toolbox_Osize
https://kdocs.cn/l/csLemjeFAKwq
4. [省ROM]关闭一些提示音解码
| 解码格式 | ROM |
|---|---|
| wtgv2 | 12K |
| mp3 | 28K |
| wma | 32K |
| wav | 8K |
注:有一些提示音,如果不需要叠加播放,可以关掉wtgv2,将提示音格式改用AAC或者msbc;
5. [省RAM]通话公共代码放FLASH
6. [省RAM]关闭部分动态加载的代码
7. [省ROM]双备份的提示音改成单备份 [省ROM]双备份升级单备分提示音.pdf
需要替换system.a
【金山文档】 system_AC897_240_20231030_SDFILE支持二级目录
https://kdocs.cn/l/cbTWWtDquSxz
AC700
- [省ROM]删除AEC代码(4K byte) https://kdocs.cn/l/curhyyhoWtZn?linkname=Y4NCSUoZvf
- [省ROM][RAM]关闭动态加载

- [省ROM]双备份的提示音改成单备份 [省ROM]双备份升级单备分提示音.pdf
- [省ROM][RAM]关闭BLE主机和加密

- [省ROM]关闭一些提示音解码 https://kdocs.cn/l/curhyyhoWtZn?linkname=ltTjNVcbjz
- [省ROM]替换rypto_toolbox_Osize.a(4K byte)
【金山文档】 crypto_toolbox_Osize.a
https://kdocs.cn/l/cqewRij0tM8r - [省ROM]删除部份RCSP的代码(8K byte) 注释:部分方案需要对接客制化APP的流程,需要使用杰理OTA的流程,需要使能RCSP_ADV_EN,但是又不需要使用杰理之家APP,可以删除部分代码以达到节省ROM的目的。
- 部分修改如下:



- apps\earphone\rcsp\rcsp_adv.c文件修改内容较多,请查看文件 【金山文档】 [省ROM]删除部分RCSP代码-只需要OTA功能
https://kdocs.cn/l/cvh4EKd8HBiX - [省RAM]修改ESCO音频时间戳的延时时间 注释:部分客户的方案,在资源使用已经比较极限的情况下,可能会遇到唤醒Siri会爆RAM,但是打电话又不会爆RAM的问题,原因是打电话的延时时间比较小,改小Siri的延时时间可以解决该问题,但是改小延时时间可能会导致Siri自带的唤醒提示音播不出来。
- 代码修改如下:

- [省RAM]修改通话代码不放RAM 修改此项需要根据实际情况提高系统时钟
135及以前的版本可以参考136版本宏的做法去修改 - [省RAM]修改AAC代码不放RAM 修改此项需要根据实际情况提高系统时钟
先转移部分代码测试
不行再关掉下面的宏
- [省RAM]单声道应用不要用右声道(硬件接芯片的左声道,软件也配置为左声道输出)
- 双备份空间优化 见:手机APP的简介和开发流程.otl
JL701N
- 开放更多RAM
// 低功耗掉电ram大小,单位:128K,可设置值:0、2、3,设置为0时可使用全部640K ram,但功耗会增加
#define TCFG_LOWPOWER_RAM_SIZE 0