diff --git a/hal/audio_hw.c b/hal/audio_hw.c index 48457663..053c98d9 100644 --- a/hal/audio_hw.c +++ b/hal/audio_hw.c @@ -1214,6 +1214,8 @@ static void *offload_thread_loop(void *context) ALOGE("%s: Next track returned error %d",__func__, ret); send_callback = true; event = STREAM_CBK_EVENT_DRAIN_READY; + /* Resend the metadata for next iteration */ + out->send_new_metadata = 1; break; case OFFLOAD_CMD_DRAIN: ALOGD("copl(%p):calling compress_drain", out); @@ -1230,6 +1232,7 @@ static void *offload_thread_loop(void *context) out->offload_thread_blocked = false; pthread_cond_signal(&out->cond); if (send_callback) { + ALOGVV("%s: sending offload_callback event %d", __func__, event); out->offload_callback(event, NULL, out->offload_cookie); } free(cmd);