2022-08-15 04:20:27 -05:00
|
|
|
/***************************************************************************
|
|
|
|
*
|
|
|
|
* Copyright 2015-2019 BES.
|
|
|
|
* All rights reserved. All unpublished rights reserved.
|
|
|
|
*
|
|
|
|
* No part of this work may be used or reproduced in any form or by any
|
|
|
|
* means, or stored in a database or retrieval system, without prior written
|
|
|
|
* permission of BES.
|
|
|
|
*
|
|
|
|
* Use of this work is governed by a license granted by BES.
|
|
|
|
* This work contains confidential and proprietary information of
|
|
|
|
* BES. which is protected by copyright, trade secret,
|
|
|
|
* trademark and other intellectual property rights.
|
|
|
|
*
|
|
|
|
****************************************************************************/
|
|
|
|
|
|
|
|
#include "cmsis_os.h"
|
2023-02-01 14:52:54 -06:00
|
|
|
#include "stdio.h"
|
2022-08-15 04:20:27 -05:00
|
|
|
#include "string.h"
|
|
|
|
|
|
|
|
#include "hal_timer.h"
|
|
|
|
#include "hal_trace.h"
|
|
|
|
|
|
|
|
#include "crc32.h"
|
|
|
|
#include "resources.h"
|
|
|
|
|
|
|
|
#ifdef MEDIA_PLAYER_SUPPORT
|
|
|
|
|
|
|
|
typedef struct {
|
2023-02-01 14:52:54 -06:00
|
|
|
UINT32 MARK;
|
|
|
|
UINT16 ID; // resource id
|
|
|
|
UINT16 count; // count of resource
|
|
|
|
UINT32 total_size; // size include resource header, header list and data
|
2022-08-15 04:20:27 -05:00
|
|
|
} ResourceHeader_t;
|
|
|
|
|
|
|
|
typedef struct {
|
2023-02-01 14:52:54 -06:00
|
|
|
UINT16 audio_id; // audio id
|
|
|
|
UINT16 type;
|
|
|
|
UINT32 size;
|
|
|
|
UINT32 offset;
|
2022-08-15 04:20:27 -05:00
|
|
|
} AudioHeader_t;
|
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
typedef struct _AUDIO_List {
|
|
|
|
struct _AUDIO_List *next;
|
|
|
|
AudioHeader_t record;
|
2022-08-15 04:20:27 -05:00
|
|
|
} AUDIO_List;
|
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
#define AUDIO_TOOL_VERSION 0x6001
|
|
|
|
#define MAGIC_NUMBER 0xC0BA
|
2022-08-15 04:20:27 -05:00
|
|
|
#define AUDIO_TOOL_RES_MARK 0xDDCCBBAA
|
|
|
|
|
|
|
|
UINT16 gVersionNO = 0;
|
|
|
|
UINT32 gReserver1 = 0;
|
|
|
|
UINT32 gReserver2 = 0;
|
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
ResourceHeader_t *gpResourceBase =
|
|
|
|
NULL; // base address of resource data, will be set by boot monitor
|
2022-08-15 04:20:27 -05:00
|
|
|
|
|
|
|
AUDIO_List *gpAudioList = NULL;
|
|
|
|
AUDIO_List *gpAudioList_CN = NULL;
|
|
|
|
|
|
|
|
uint8_t *gpAudioDataBase = NULL;
|
|
|
|
uint8_t *gpAudioDataBase_CN = NULL;
|
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
// uint8_t os_pool_audio_List[sizeof(AUDIO_List)*MAX_RECORD_NUM ]
|
|
|
|
// __attribute__((section(".audioList")));
|
|
|
|
AUDIO_List os_pool_audio_List
|
|
|
|
[MAX_RECORD_NUM]; //__attribute__((section(".audioList")));
|
|
|
|
// osPoolDef_t os_pool_def_audio_List = { MAX_RECORD_NUM, sizeof(AUDIO_List),
|
|
|
|
// os_pool_audio_List };//osPoolDef(name, no, type) osPoolId AUDIO_ListPool_Id;
|
2022-08-15 04:20:27 -05:00
|
|
|
|
|
|
|
AUDIO_List os_pool_audio_List_CN[MAX_RECORD_NUM];
|
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
UINT8 *aud_get_reouce(AUD_ID_ENUM id, UINT32 *leng, UINT16 *type) {
|
|
|
|
AUDIO_List *list = gpAudioList;
|
|
|
|
|
|
|
|
*leng = 0, *type = 0;
|
|
|
|
|
|
|
|
while (list) {
|
|
|
|
if (list->record.audio_id == id) {
|
|
|
|
*leng = list->record.size;
|
|
|
|
*type = list->record.type;
|
|
|
|
return (UINT8 *)(gpAudioDataBase + list->record.offset);
|
|
|
|
}
|
|
|
|
list = list->next;
|
|
|
|
}
|
|
|
|
|
|
|
|
return 0;
|
2022-08-15 04:20:27 -05:00
|
|
|
}
|
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
UINT8 *aud_get_reouce_chinese(AUD_ID_ENUM id, UINT32 *leng, UINT16 *type) {
|
|
|
|
AUDIO_List *list = gpAudioList_CN;
|
|
|
|
|
|
|
|
*leng = 0, *type = 0;
|
|
|
|
|
|
|
|
while (list) {
|
|
|
|
if (list->record.audio_id == id) {
|
|
|
|
*leng = list->record.size;
|
|
|
|
*type = list->record.type;
|
|
|
|
return (UINT8 *)(gpAudioDataBase_CN + list->record.offset);
|
|
|
|
}
|
|
|
|
list = list->next;
|
|
|
|
}
|
|
|
|
|
|
|
|
return 0;
|
2022-08-15 04:20:27 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
--1.Version No&Magic No.<4>
|
|
|
|
--2.CRC <4>
|
|
|
|
--3.Reserver1 <4> total length = 5+6+7+...
|
|
|
|
--4.Reserver2 <4>
|
|
|
|
--5.ResourceHeader_t <8>
|
|
|
|
--6.AUDIO_HEAD_LIST X count <16 x count>
|
|
|
|
--7.file.. gpAudioDataBase.. offset
|
|
|
|
--.... another resource
|
|
|
|
*/
|
2023-02-01 14:52:54 -06:00
|
|
|
void init_audio_resource(void *gResource) {
|
|
|
|
uint32_t crc;
|
|
|
|
uint32_t *pcrc;
|
|
|
|
uint32_t data;
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
UINT32 res_addr;
|
|
|
|
ResourceHeader_t *pRes;
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
data = *((UINT32 *)gResource);
|
|
|
|
gVersionNO = 0xFFFF & (data >> 16);
|
|
|
|
gReserver1 = *((UINT32 *)((uint32_t)gResource + 2 * sizeof(UINT32)));
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
pcrc = (uint32_t *)((uint32_t)gResource + sizeof(UINT32)); /*crc*/
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
gpResourceBase =
|
|
|
|
(ResourceHeader_t *)((uint32_t)gResource + 4 * sizeof(uint32_t));
|
|
|
|
/********************************************************/
|
|
|
|
crc = crc32(0, (uint8_t *)((uint32_t)gpResourceBase), gReserver1);
|
|
|
|
TRACE(3, "%s, *pcrc: %x , crc: %x", __func__, *pcrc, crc);
|
|
|
|
if (*pcrc != crc)
|
|
|
|
return;
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
res_addr = (uint32_t)gpResourceBase;
|
|
|
|
pRes = (ResourceHeader_t *)gpResourceBase;
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
while ((UINT32)pRes < (UINT32)gpResourceBase + gReserver1 &&
|
|
|
|
pRes->MARK == AUDIO_TOOL_RES_MARK) {
|
|
|
|
if (pRes->ID == RES_ENGLISH_ID) {
|
|
|
|
AUDIO_List *list;
|
|
|
|
memset(os_pool_audio_List, 0, sizeof(AUDIO_List) * MAX_RECORD_NUM);
|
|
|
|
memcpy((uint8_t *)os_pool_audio_List,
|
|
|
|
(uint8_t *)((uint32_t)pRes + sizeof(ResourceHeader_t)),
|
|
|
|
sizeof(AUDIO_List) * pRes->count);
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
gpAudioList = (AUDIO_List *)os_pool_audio_List;
|
|
|
|
list = gpAudioList;
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
gpAudioDataBase = (uint8_t *)pRes + sizeof(ResourceHeader_t) +
|
|
|
|
sizeof(AUDIO_List) * pRes->count;
|
|
|
|
TRACE(3, "%s, english count: %d, leng: %d", __func__, pRes->count,
|
|
|
|
pRes->total_size);
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
for (int i = 1; i < pRes->count; i++) {
|
|
|
|
list->next = &os_pool_audio_List[i];
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
list = list->next;
|
|
|
|
}
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
TRACE(2, "%s, english list: %p", __func__, list);
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
} else if (pRes->ID == RES_CHINESE_ID) {
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
AUDIO_List *list;
|
|
|
|
TRACE(2, "%s, AUDIO_TOOL_RES_MARK: %d", __func__, pRes->count);
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
memset(os_pool_audio_List_CN, 0, sizeof(AUDIO_List) * MAX_RECORD_NUM);
|
|
|
|
memcpy((uint8_t *)os_pool_audio_List_CN,
|
|
|
|
(uint8_t *)((uint32_t)pRes + sizeof(ResourceHeader_t)),
|
|
|
|
sizeof(AUDIO_List) * pRes->count);
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
gpAudioList_CN = (AUDIO_List *)os_pool_audio_List_CN;
|
|
|
|
list = gpAudioList_CN;
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
gpAudioDataBase_CN = (uint8_t *)pRes + sizeof(ResourceHeader_t) +
|
|
|
|
sizeof(AUDIO_List) * pRes->count;
|
|
|
|
TRACE(3, "%s, chinese count: %d, leng: %d", __func__, pRes->count,
|
|
|
|
pRes->total_size);
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
for (int i = 1; i < pRes->count; i++) {
|
|
|
|
list->next = &os_pool_audio_List_CN[i];
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
list = list->next;
|
|
|
|
}
|
|
|
|
}
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
TRACE(3, "%s, %x, pRes->total_size: %x", __func__, res_addr,
|
|
|
|
pRes->total_size);
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
res_addr += pRes->total_size;
|
|
|
|
pRes = (ResourceHeader_t *)(res_addr);
|
|
|
|
}
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
TRACE(2, "%s, pRes add: %p", __func__, pRes);
|
2022-08-15 04:20:27 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
#if 0
|
|
|
|
UINT8 BIN_FILE[] =
|
|
|
|
{
|
|
|
|
0xba,0xc0,0x01,0x60,0x18,0x17,0x81,0x7a,0x90,0x05,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0xaa,0xbb,0xcc,0xdd,0x00,0xff,0x1c,0x00,0xc8,0x02,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x00,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x01,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x02,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x12,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x03,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x1b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x04,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x05,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x2d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x06,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x07,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x08,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x09,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x51,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x0a,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x5a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x0b,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x0c,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x6c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x0d,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x75,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x0e,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x7e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x0f,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x87,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x10,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x11,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0x99,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x12,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0xa2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x13,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0xab,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x14,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0xb4,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x15,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0xbd,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x16,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0xc6,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x17,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x18,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0xd8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x19,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0xe1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x1a,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0xea,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
|
|
|
0x1b,0x00,0x04,0x00,0x09,0x00,0x00,0x00,0xf3,0x00,0x00,0x00,0x34,0x34,0x34,0x35,
|
|
|
|
0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,
|
|
|
|
0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,
|
|
|
|
0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,
|
|
|
|
0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,
|
|
|
|
0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,
|
|
|
|
0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,
|
|
|
|
0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,
|
|
|
|
0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,
|
|
|
|
0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,
|
|
|
|
0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,
|
|
|
|
0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,
|
|
|
|
0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,
|
|
|
|
0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,
|
|
|
|
0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,
|
|
|
|
0x35,0x35,0x35,0x36,0x36,0x36,0x34,0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0x34,
|
|
|
|
0x34,0x34,0x35,0x35,0x35,0x36,0x36,0x36,0xaa,0xbb,0xcc,0xdd,0x01,0xff,0x1c,0x00,
|
|
|
|
0xc8,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x12,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x1b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x05,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x2d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x09,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x51,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0a,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x5a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0b,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0c,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x6c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0d,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x75,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0e,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x7e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x87,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x11,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0x99,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0xa2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x13,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0xab,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0xb4,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x15,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0xbd,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x16,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0xc6,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x17,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0xd8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0xe1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1a,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0xea,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1b,0x00,0x04,0x00,0x09,0x00,0x00,0x00,
|
|
|
|
0xf3,0x00,0x00,0x00,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,
|
|
|
|
0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,
|
|
|
|
0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,
|
|
|
|
0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,
|
|
|
|
0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,
|
|
|
|
0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,
|
|
|
|
0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,
|
|
|
|
0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,
|
|
|
|
0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,
|
|
|
|
0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,
|
|
|
|
0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,
|
|
|
|
0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,
|
|
|
|
0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,
|
|
|
|
0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,
|
|
|
|
0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,
|
|
|
|
0x31,0x32,0x32,0x32,0x33,0x33,0x33,0x31,0x31,0x31,0x32,0x32,0x32,0x33,0x33,0x33,
|
|
|
|
|
|
|
|
};
|
|
|
|
void test_resource_load()
|
|
|
|
{
|
|
|
|
UINT32 leng;
|
|
|
|
UINT16 type;
|
|
|
|
UINT8* data;
|
|
|
|
|
|
|
|
init_audio_resource(BIN_FILE);
|
|
|
|
|
|
|
|
data = aud_get_reouce(AUD_ID_BT_CALL_REFUSE, &leng, &type);
|
|
|
|
|
|
|
|
TRACE(6,"====english_audio, leng = %d, type = %d, data[0] = %x, data[1]= %x, data[2]= %x, data[3]= %x", leng, type, data[0], data[1], data[2], data[3]);
|
|
|
|
|
|
|
|
data = aud_get_reouce_chinese(AUD_ID_BT_CLEAR_SUCCESS, &leng, &type);
|
|
|
|
|
|
|
|
TRACE(6,"====chinese_audio, leng = %d, type = %d, data[0] = %x, data[1]= %x, data[2]= %x, data[3]= %x", leng,type, data[0], data[1], data[2], data[3]);
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
const char *aud_id_str[] = {
|
2022-08-15 04:20:27 -05:00
|
|
|
"[POWER_ON]",
|
|
|
|
"[POWER_OFF]",
|
|
|
|
"[LANGUAGE_SWITCH]",
|
|
|
|
|
|
|
|
"[NUM_0]",
|
|
|
|
"[NUM_1]",
|
|
|
|
"[NUM_2]",
|
|
|
|
"[NUM_3]",
|
|
|
|
"[NUM_4]",
|
|
|
|
"[NUM_5]",
|
|
|
|
"[NUM_6]",
|
|
|
|
"[NUM_7]",
|
|
|
|
"[NUM_8]",
|
|
|
|
"[NUM_9]",
|
|
|
|
|
|
|
|
"[BT_PAIR_ENABLE]",
|
|
|
|
"[BT_PAIRING]",
|
|
|
|
"[BT_PAIRING_SUC]",
|
|
|
|
"[BT_PAIRING_FAIL]",
|
|
|
|
"[BT_CALL_REFUSE]",
|
|
|
|
"[BT_CALL_OVER]",
|
|
|
|
"[BT_CALL_ANSWER]",
|
|
|
|
"[BT_CALL_HUNG_UP]",
|
|
|
|
"[BT_CALL_INCOMING_CALL]",
|
|
|
|
"[BT_CALL_INCOMING_NUMBER]",
|
|
|
|
"[BT_CHARGE_PLEASE]",
|
|
|
|
"[BT_CHARGE_FINISH]",
|
|
|
|
"[BT_CLEAR_SUCCESS]",
|
|
|
|
"[BT_CLEAR_FAIL]",
|
|
|
|
"[BT_CONNECTED]",
|
|
|
|
"[BT_DIS_CONNECT]",
|
|
|
|
"[BT_WARNING]",
|
|
|
|
"[BT_ALEXA_START]",
|
|
|
|
"[FIND_MY_BUDS]",
|
|
|
|
"[TILE FIND]",
|
|
|
|
"[BT_ALEXA_STOP]",
|
|
|
|
"[BT_GSOUND_MIC_OPEN]",
|
|
|
|
"[BT_GSOUND_MIC_CLOSE]",
|
|
|
|
"[BT_GSOUND_NC]",
|
|
|
|
"[BT_MUTE]",
|
|
|
|
"[RING_WARNING]",
|
|
|
|
#ifdef __INTERACTION__
|
|
|
|
"[BT_FINDME]",
|
|
|
|
#endif
|
|
|
|
};
|
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
const char *aud_id2str(UINT16 aud_id) {
|
|
|
|
const char *str = NULL;
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
if (aud_id >= 0 && aud_id < MAX_RECORD_NUM) {
|
|
|
|
str = aud_id_str[aud_id];
|
|
|
|
} else {
|
|
|
|
str = "[UNKNOWN]";
|
|
|
|
}
|
2022-08-15 04:20:27 -05:00
|
|
|
|
2023-02-01 14:52:54 -06:00
|
|
|
return str;
|
2022-08-15 04:20:27 -05:00
|
|
|
}
|