1、添加virfat备份与恢复;

2、修复sensorhub低功耗越界问题;
3、修复rcsp传输相关问题;
4、更新flash_params_v3.bin;
5、修复摄像头、科大讯飞相关问题;
This commit is contained in:
huxi
2025-12-26 15:26:30 +08:00
parent 48416abdf1
commit dc11ee3fc4
78 changed files with 3688 additions and 3538 deletions
+1 -1
View File
@@ -70,7 +70,7 @@ const int UI_RES_FLASH_TAB_OFFSET = 0x0;
const int config_jpeg_isr_delay_us = 50; //参考值100,最小50
const int JLJPEG_STREAM_ENABLE = 1;
#if TCFG_HOST_UVC_ENABLE
const int config_jpeg_sync_wait_in_irq = 1; //在中断同步等待,效率低
const int config_jpeg_sync_wait_in_irq = 0; //在中断同步等待,效率低
const int config_jpeg_ff_rst_enable = 1; //支持带DRI标志的图片,部分摄像头只输出这种类型的图片
#else
const int config_jpeg_sync_wait_in_irq = 0; //在中断同步等待
+146 -48
View File
@@ -23,16 +23,18 @@ const int CONFIG_LWIP_NET_ENABLE = 1;
set 0-----use ram mem
*/
#define LWIP_MEM_USE_PSRAM 1 //lwip内存分配
#define HTTP_MEM_USE_PSRAM 1 //http内存分配
#define HTTPS_MEM_USE_PSRAM 1 //https内存分配
#define NET_AUDIO_MEM_USE_PSRAM 1 //net_audio内存分配
#define MBEDTLS_MEM_USE_PSRAM 1 //mbedtls库内存分配
#define WEBSOCKET_API_USE_PSRAM 1 //websocket使用psram
/*注意:libmpeg、net_audio、net_down的分配介质需保持一致*/
#define JL_LWIP_USE_PSRAM 0 //lwip使用psram
#define JL_HTTP_USE_PSRAM 0 //http使用psram
#define JL_HTTPS_USE_PSRAM 0 //https使用psram
#define JL_NET_AUDIO_USE_PSRAM 0 //net_audio使用psram
#define JL_MBEDTLS_USE_PSRAM 0 //mbedtls库使用psram
#define JL_WEBSOCKET_USE_PSRAM 0 //websocket使用psram
#define JL_MPEG_USE_PSRAM 0 //libmpeg使用psram
#define JL_NET_DOWN_USE_PSRAM 0 //net_download使用psram
extern void *realloc_psram(void *pv, size_t size);
#if LWIP_MEM_USE_PSRAM
#if JL_LWIP_USE_PSRAM
#define LWIP_ALLOC(size) malloc_psram(size)
#define LWIP_FREE(ptr) free_psram(ptr)
#else
@@ -63,9 +65,7 @@ void lwip_free(void *pv)
}
#if HTTP_MEM_USE_PSRAM
#if JL_HTTP_USE_PSRAM
#define HTTP_MALLOC(size) malloc_psram(size)
#define HTTP_REALLOC(ptr,size) realloc_psram(ptr,size)
#define HTTP_FREE(ptr) free_psram(ptr)
@@ -75,17 +75,17 @@ void lwip_free(void *pv)
#define HTTP_FREE(ptr) free(ptr)
#endif
void *http_malloc(size_t size)
void *jl_http_malloc(size_t size)
{
return HTTP_MALLOC(size);
}
void *http_realloc(void *ptr, size_t size)
void *jl_http_realloc(void *ptr, size_t size)
{
return HTTP_REALLOC(ptr, size);
}
void http_free(void *pv)
void jl_http_free(void *pv)
{
if (pv != NULL) {
HTTP_FREE(pv);
@@ -93,11 +93,7 @@ void http_free(void *pv)
}
#if HTTPS_MEM_USE_PSRAM
#if JL_HTTPS_USE_PSRAM
#define HTTPS_ALLOC(size) malloc_psram(size)
#define HTTPS_FREE(ptr) free_psram(ptr)
#else
@@ -106,12 +102,12 @@ void http_free(void *pv)
#endif
void *https_malloc(size_t size)
void *jl_https_malloc(size_t size)
{
return HTTPS_ALLOC(size);
}
void *https_calloc(unsigned long count, unsigned long size)
void *jl_https_calloc(unsigned long count, unsigned long size)
{
size_t total_size = count * size;
void *p = HTTPS_ALLOC(total_size);
@@ -122,7 +118,7 @@ void *https_calloc(unsigned long count, unsigned long size)
}
void https_free(void *pv)
void jl_https_free(void *pv)
{
if (pv != NULL) {
HTTPS_FREE(pv);
@@ -132,8 +128,7 @@ void https_free(void *pv)
#if NET_AUDIO_MEM_USE_PSRAM
#if JL_NET_AUDIO_USE_PSRAM
#define NET_AUDIO_ALLOC(size) malloc_psram(size)
#define NET_AUDIO_FREE(ptr) free_psram(ptr)
#else
@@ -142,21 +137,24 @@ void https_free(void *pv)
#endif
void *net_audio_malloc(size_t size)
void *jl_net_audio_malloc(size_t size)
{
printf(">>>zwz info: %s %d %s\n", __FUNCTION__, __LINE__, __FILE__);
void *p = NET_AUDIO_ALLOC(size);
return p;
}
void net_audio_free(void *pv)
void jl_net_audio_free(void *pv)
{
printf(">>>zwz info: %s %d %s\n", __FUNCTION__, __LINE__, __FILE__);
if (pv != NULL) {
NET_AUDIO_FREE(pv);
}
}
void *net_audio_calloc(unsigned long count, unsigned long size)
void *jl_net_audio_calloc(unsigned long count, unsigned long size)
{
printf(">>>zwz info: %s %d %s\n", __FUNCTION__, __LINE__, __FILE__);
size_t total = count * size;
void *p = NET_AUDIO_ALLOC(total);
if (p) {
@@ -165,7 +163,11 @@ void *net_audio_calloc(unsigned long count, unsigned long size)
return p;
}
#if MBEDTLS_MEM_USE_PSRAM
#if JL_MBEDTLS_USE_PSRAM
#define MBEDTLS_MALLOC(size) malloc_psram(size)
#define MBEDTLS_FREE(ptr) free_psram(ptr)
#else
@@ -191,44 +193,33 @@ void *jl_mbedtls_calloc(unsigned long count, unsigned long size)
return p;
}
#if WEBSOCKET_API_USE_PSRAM
#if JL_WEBSOCKET_USE_PSRAM
#define WEBSOCKET_API_MALLOC(size) malloc_psram(size)
#define WEBSOCKET_API_REALLOC(ptr, size) realloc_psram(ptr, size)
#define WEBSOCKET_API_REALLOC(ptr,size) realloc_psram(ptr,size)
#define WEBSOCKET_API_FREE(ptr) free_psram(ptr)
#else
#define WEBSOCKET_API_MALLOC(size) malloc(size)
#define WEBSOCKET_API_REALLOC(ptr, size) realloc(ptr, size)
#define WEBSOCKET_API_REALLOC(ptr,size) realloc(ptr,size)
#define WEBSOCKET_API_FREE(ptr) free(ptr)
#endif
void websocket_api_free(void *pv)
{
if (pv != NULL) {
WEBSOCKET_API_FREE(pv);
}
}
void *websocket_api_malloc(size_t size)
{
void *p = WEBSOCKET_API_MALLOC(size);
if (p) {
memset(p, 0, size);
}
return p;
}
void jl_websocket_api_free(void *pv)
{
if (pv != NULL) {
WEBSOCKET_API_FREE(pv);
pv = NULL;
}
}
void *jl_websocket_api_malloc(size_t size)
{
void *p = WEBSOCKET_API_MALLOC(size);
if (p) {
memset(p, 0, size);
}
return p;
}
@@ -245,6 +236,113 @@ void *jl_websocket_api_realloc(void *ptr, size_t size)
{
return WEBSOCKET_API_REALLOC(ptr, size);
}
#if JL_MPEG_USE_PSRAM
#define MPEG_API_MALLOC(size) malloc_psram(size)
#define MPEG_API_REALLOC(ptr,size) realloc_psram(ptr,size)
#define MPEG_API_FREE(ptr) free_psram(ptr)
#else
#define MPEG_API_MALLOC(size) malloc(size)
#define MPEG_API_REALLOC(ptr,size) realloc(ptr,size)
#define MPEG_API_FREE(ptr) free(ptr)
#endif
void jl_mpeg_free(void *pv)
{
if (pv != NULL) {
MPEG_API_FREE(pv);
}
}
void *jl_mpeg_malloc(size_t size)
{
return MPEG_API_MALLOC(size);
}
void *jl_mpeg_calloc(unsigned long count, unsigned long size)
{
size_t total = count * size;
void *p = MPEG_API_MALLOC(total);
if (p) {
memset(p, 0, total);
}
return p;
}
void *jl_mpeg_realloc(void *ptr, size_t size)
{
return MPEG_API_REALLOC(ptr, size);
}
void *jl_mpeg_zalloc(size_t size)
{
void *ptr = MPEG_API_MALLOC(size);
if (ptr != NULL) {
memset(ptr, 0, size);
}
return ptr;
}
#if JL_NET_DOWN_USE_PSRAM
#define NET_DOWN_MALLOC(size) malloc_psram(size)
#define NET_DOWN_REALLOC(ptr,size) realloc_psram(ptr,size)
#define NET_DOWN_FREE(ptr) free_psram(ptr)
#else
#define NET_DOWN_MALLOC(size) malloc(size)
#define NET_DOWN_REALLOC(ptr,size) realloc(ptr,size)
#define NET_DOWN_FREE(ptr) free(ptr)
#endif
void *jl_net_down_malloc(size_t size)
{
return NET_DOWN_MALLOC(size);
}
void *jl_net_down_calloc(unsigned long count, unsigned long size)
{
size_t total_size = count * size;
void *p = NET_DOWN_MALLOC(total_size);
if (p) {
memset(p, 0, count * size);
}
return p;
}
void *jl_net_down_zalloc(size_t size)
{
void *ptr = NET_DOWN_MALLOC(size);
if (ptr) {
memset(ptr, 0, size);
}
return ptr;
}
void *jl_net_down_realloc(void *ptr, size_t size)
{
return NET_DOWN_REALLOC(ptr, size);
}
void jl_net_down_free(void *pv)
{
if (pv != NULL) {
NET_DOWN_FREE(pv);
}
}
#else
const int CONFIG_LWIP_NET_ENABLE = 0;
#endif
@@ -161,6 +161,8 @@ const int FATFS_SUPPORT_DEV_READ_SUCCESSION = 0; //是否保存非对齐读时
const int SDFILE_STORAGE_ENABLE = 1; //sdfile做设备接入VFS,扫描功能使能
const int FATFS_BACKUP_ENABLE = 0; //文件系统安全备份功能使能
const int VIRFAT_FLASH_ENABLE = 0; //精简jifat代码,不使用。