Start/end the album art zoom fully zoomed out, not zoomed in
Swapped the keyframes so scale=1.0 (full frame) is the loop's start/end state and the zoom-in happens at the midpoint, matching how it's meant to read: settle on the full picture, breathe in, breathe back out.
This commit is contained in:
1 parent
dc0c5019ca
commit
67c20e20e9
1 file changed
+8
-7
@@ -86,10 +86,11 @@ def main(config):
|
||||
|
||||
return render.Root(child = content)
|
||||
|
||||
# Album art gets a slow "Ken Burns" breathing effect: eases from the full
|
||||
# frame in to a zoomed-in crop, then back out, on a continuous loop -- not
|
||||
# a one-shot reveal. A one-shot version (start zoomed in, end on the full
|
||||
# frame, then hold) looked jumpy: since the app re-renders on NOWPLAYING_TTL
|
||||
# Album art gets a slow "Ken Burns" breathing effect: starts and ends on
|
||||
# the full frame, easing in to a zoomed-in crop at the midpoint, on a
|
||||
# continuous loop -- not a one-shot reveal. A one-shot version (start
|
||||
# zoomed in, end on the full frame, then hold) looked jumpy: since the app
|
||||
# re-renders on NOWPLAYING_TTL
|
||||
# and each fresh render restarts its own animation from tick 0, whatever the
|
||||
# *previous* pushed image happened to be showing at that moment gets
|
||||
# abruptly replaced by a fresh zoomed-in frame. The back-and-forth loop
|
||||
@@ -129,16 +130,16 @@ def _art_widget(art_bytes):
|
||||
keyframes = [
|
||||
animation.Keyframe(
|
||||
percentage = 0.0,
|
||||
transforms = [animation.Scale(ART_ZOOM_SCALE, ART_ZOOM_SCALE)],
|
||||
transforms = [animation.Scale(1.0, 1.0)],
|
||||
),
|
||||
animation.Keyframe(
|
||||
percentage = 0.5,
|
||||
transforms = [animation.Scale(1.0, 1.0)],
|
||||
transforms = [animation.Scale(ART_ZOOM_SCALE, ART_ZOOM_SCALE)],
|
||||
curve = "ease_in_out",
|
||||
),
|
||||
animation.Keyframe(
|
||||
percentage = 1.0,
|
||||
transforms = [animation.Scale(ART_ZOOM_SCALE, ART_ZOOM_SCALE)],
|
||||
transforms = [animation.Scale(1.0, 1.0)],
|
||||
curve = "ease_in_out",
|
||||
),
|
||||
],
|
||||
|
||||