From 86df1062354993919f6aa8ce51a602a08a5302b5 Mon Sep 17 00:00:00 2001 From: David Trattnig <david@subsquare.at> Date: Thu, 8 Aug 2024 15:15:13 +0200 Subject: [PATCH] docs: update todos --- src/aura_engine/events.py | 10 +++++----- src/aura_engine/scheduling/api.py | 6 +++--- src/aura_engine/scheduling/domain.py | 8 ++++---- src/aura_engine/scheduling/scheduler.py | 3 ++- 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/src/aura_engine/events.py b/src/aura_engine/events.py index f3c9f9c2..a7d840df 100644 --- a/src/aura_engine/events.py +++ b/src/aura_engine/events.py @@ -243,11 +243,11 @@ class EngineEventDispatcher: Call when a fallback is activated. Fallback means the station fallback audio source is played when: - 1. no timeslot is available. - 2. the current timefrome of the active timeslot provides no audio source/playlists. - - TODO In the future case (1) should technically not happen, as "Virtual Timeslots" ensure - there is always some timeslot available, even without any playlists/media sources assigned. + 1. No timeslot is available. Due to "virtual timeslots" this case can actually never + happen. + 2. The current timeframe of the active timeslot provides no audio source/playlists. + This is always the case with virtual timeslots, but can also happen with ordinary + timeslots. Args: timeslot (Timeslot): The active timeslot, if available. Can be `None`. diff --git a/src/aura_engine/scheduling/api.py b/src/aura_engine/scheduling/api.py index 3aec77a2..80e87826 100644 --- a/src/aura_engine/scheduling/api.py +++ b/src/aura_engine/scheduling/api.py @@ -255,9 +255,9 @@ class ApiFetcher(threading.Thread): item = PlaylistItem(entry.uri, entry.duration, 100, metadata) - # "Hidden Functionality" to feed engine with M3U playlists - # via Tank's "Stream" playlist item type - # See https://gitlab.servus.at/aura/engine/-/issues/53 + # Medida sources with the scheme `m3u://...` point to M3U playlists provided by the + # Audio Store. We need to extract the actual playlist items and feed them like any + # other audio file playlist to Engine Core. # # TODO In the future this is to be replaced by a generic music pool feature. items = self.m3u_processor.spread(item) diff --git a/src/aura_engine/scheduling/domain.py b/src/aura_engine/scheduling/domain.py index f3e61bd4..99f352b7 100644 --- a/src/aura_engine/scheduling/domain.py +++ b/src/aura_engine/scheduling/domain.py @@ -465,11 +465,11 @@ class Timeslot: """ - # TODO In case of virtual timeslot, do nothing. There is some timeout until the silence - # detector kicks in. We need to assess leads to issues. To improve the fallback program - # can be actively scheduled in the future. + # In case of virtual timeslot, do nothing. There is some timeout until the silence + # detector kicks in. # - # @see aura#392 + # TODO We need to assess leads to issues. To improve the fallback program + # can be actively scheduled in the future. @see aura#392 if self.is_virtual(): return None diff --git a/src/aura_engine/scheduling/scheduler.py b/src/aura_engine/scheduling/scheduler.py index a000ed66..4a46b220 100644 --- a/src/aura_engine/scheduling/scheduler.py +++ b/src/aura_engine/scheduling/scheduler.py @@ -378,7 +378,8 @@ class AuraScheduler(threading.Thread): AuraScheduler.PlayCommandClass(self.engine, [active_item]) # Fast-forward to the scheduled position - # TODO The roll should happen before the channel is active + # TODO The roll should happen before the channel is active, avoiding the roll being + # audible. if seconds_to_roll > 0: # Without plenty of timeout (10s) the roll doesn't work # TODO Check if this is still the case with Liquidsoap 2 -- GitLab