Dozingfiretruck před 2 roky
rodič
revize
4a3419900c

+ 1 - 0
components/multimedia/luat_lib_multimedia_audio.c

@@ -374,6 +374,7 @@ static int l_audio_set_output_bus(lua_State *L) {
     luat_audio_conf_t* audio_conf = luat_audio_get_config(id);
     int tp = luaL_checkinteger(L, 2);
     if (audio_conf!=NULL && lua_istable(L,3) && tp==MULTIMEDIA_AUDIO_BUS_I2S){
+        audio_conf->codec_conf.multimedia_id = id;
         audio_conf->bus_type = MULTIMEDIA_AUDIO_BUS_I2S;
 		lua_pushstring(L, "chip");
 		if (LUA_TSTRING == lua_gettable(L, 3)) {

+ 1 - 0
components/multimedia/luat_multimedia_audio.c

@@ -157,6 +157,7 @@ LUAT_WEAK int luat_audio_set_bus_type(uint8_t multimedia_id,uint8_t bus_type){
     luat_audio_conf_t* audio_conf = luat_audio_get_config(multimedia_id);
     if (audio_conf){
         if (bus_type == MULTIMEDIA_AUDIO_BUS_I2S){
+            audio_conf->codec_conf.multimedia_id = multimedia_id;
             audio_conf->bus_type = MULTIMEDIA_AUDIO_BUS_I2S;
             if (audio_conf->codec_conf.codec_opts->init(&audio_conf->codec_conf,LUAT_CODEC_MODE_SLAVE)){
                 LLOGE("no codec %s",audio_conf->codec_conf.codec_opts->name);

+ 2 - 1
luat/include/luat_audio_codec.h

@@ -20,7 +20,7 @@ typedef enum {
     LUAT_CODEC_MODE_NORMAL,
     LUAT_CODEC_MODE_STANDBY,
     LUAT_CODEC_MODE_PWRDOWN,
-    LUAT_CODEC_PA_NONE  = 255,
+    LUAT_CODEC_PA_NONE  = 255,      //无pa控制引脚
 } luat_audio_codec_ctl_t;
 
 typedef enum {
@@ -47,6 +47,7 @@ typedef struct luat_audio_codec_conf {
     uint32_t after_sleep_ready_time;                                    // pa使能前延迟时间
     uint32_t pa_delay_time;                                             // pa使能后延迟时间
     struct luat_audio_codec_opts* codec_opts;
+    uint8_t multimedia_id;                                              // 多媒体id
     uint8_t pa_pin;                                                     // pa pin
 	uint8_t pa_on_level;                                                // pa 使能电平
 	uint8_t power_pin;													// 电源控制