From cf5da04f54040182c61cc06b98304a90a6d8b69f Mon Sep 17 00:00:00 2001
From: Sebastian Krzyszkowiak <dos@dosowisko.net>
Date: Wed, 18 Oct 2023 14:05:52 +0200
Subject: [PATCH] st3m: media: Don't count the seeking time to next think's
 delta

---
 components/st3m/st3m_media.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/components/st3m/st3m_media.c b/components/st3m/st3m_media.c
index dc2fe68269..93aaf50352 100644
--- a/components/st3m/st3m_media.c
+++ b/components/st3m/st3m_media.c
@@ -31,10 +31,15 @@ static void st3m_media_task(void *_arg) {
         vTaskDelayUntil(&wake_time, 20 / portTICK_PERIOD_MS);
         if (media_item->think) {
             if (xSemaphoreTake(media_lock, portMAX_DELAY)) {
+                bool seeking = media_item->seek != -1;
                 ticks = xTaskGetTickCount();
                 media_item->think(media_item,
                                   (ticks - last_think) * portTICK_PERIOD_MS);
                 last_think = ticks;
+                if (seeking && media_item->seek == -1) {
+                    // don't count seeking time into delta
+                    last_think = xTaskGetTickCount();
+                }
                 xSemaphoreGive(media_lock);
             }
         }
-- 
GitLab