Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Autoscroll: Difference between revisions

From JustChords Wiki
Created page with "= Autoscroll = The '''Autoscroll''' feature in JustChords automatically scrolls a song's chords and lyrics from top to bottom while you play, so you can keep your hands on your instrument instead of on the screen. == How it works == Autoscroll is available in '''Scrolling''' view mode. When activated, the song content moves at a constant speed from the start of the song to the end. The scroll is driven by a '''duration''' value (in seconds) — JustChords spreads the..."
 
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 5: Line 5:
== How it works ==
== How it works ==


Autoscroll is available in '''Scrolling''' view mode. When activated, the song content moves at a constant speed from the start of the song to the end. The scroll is driven by a '''duration''' value (in seconds) — JustChords spreads the entire song's content evenly across that duration using a linear animation.
Autoscroll is available in '''Scrolling''' view mode (Song / Settings / Layout / Mode). When activated, the song content moves at a constant speed from the start of the song to the end. The scroll is driven by a '''duration''' value (in seconds) — JustChords spreads the entire song's content evenly across that duration using a linear animation.


You start and stop autoscroll from the floating menu in the song viewer using the chevron-down button. While autoscroll is running, you can fine-tune the speed in real time:
You can start and stop autoscroll from the floating menu in the song viewer using the chevron-down button. While autoscroll is running, you can fine-tune the speed in real time:


* '''+''' button — slow down (adds 10 seconds to the remaining duration)
* '''+''' button — slow down (adds 10 seconds to the remaining duration)
Line 29: Line 29:


* On song appear, with a configurable delay (1–10 seconds)
* On song appear, with a configurable delay (1–10 seconds)
* When audio or the metronome starts playing
* When audio or the metronome starts playing (in JC standalone)


You can also enable '''Center Autoscroll''' to keep the currently scrolling region vertically centered on screen.
You can also enable '''Center Autoscroll''' to keep the currently scrolling region vertically centered on screen.


== ScrollByBeats override ==
== Chord Beats scrolling ==


When '''chord beats''' are enabled and visible in the song, and the MIDI transport is running, the timed Autoscroll is '''overridden by ScrollByBeats''' behavior. In this mode the Autoscroll button is hidden — scrolling is no longer driven by a duration, but by the actual beats coming from MIDI.
When [[Chord Beats]] are enabled and visible in the song, and the MIDI transport is running, the timed Autoscroll is '''overridden by Scroll-by-beats''' behavior. In this mode the Autoscroll button is hidden — scrolling is no longer driven by a duration, but by the actual beats coming from MIDI.


ScrollByBeats activates when '''all''' of these are true:
Scroll-by-beats activates when '''all''' of these are true:


* MIDI is enabled in Settings
* MIDI is enabled in Settings
Line 45: Line 45:
=== Why beat-based scrolling is more accurate ===
=== Why beat-based scrolling is more accurate ===


Timed Autoscroll is an '''approximation''': it assumes the song is played at a steady pace matching the configured duration. If you slow down, speed up, repeat a section, or pause, the scroll position will drift from where you actually are in the song.
Timed Autoscroll is an '''approximation''': it assumes the song is played at a steady pace matching the configured duration. Scroll-by-beats is '''event-driven'''. Each MIDI beat advances the current section/part, so the view always reflects exactly where the song is right now, synchronized to the MIDI clock or host transport.
 
ScrollByBeats is '''event-driven'''. Each MIDI beat advances the current section/part, so the view always reflects exactly where the song is right now, synchronized to the MIDI clock or host transport. It even jumps ahead to the next section a couple of beats before the current one ends, or loops the current section when appropriate.
 
Because it follows the real musical timeline rather than wall-clock time, ScrollByBeats stays in sync regardless of tempo changes, repeats, or pauses — which is why JustChords prefers it whenever chord beats are available.


== Summary ==
== Summary ==


* '''Timed Autoscroll''' — linear scroll across the song's duration, or the global default if none is set. Adjustable in real time with +/− buttons.
* '''Timed Autoscroll''' — linear scroll across the song's duration, or the global default if none is set. Adjustable in real time with +/− buttons.
* '''ScrollByBeats''' — replaces timed Autoscroll whenever MIDI chord beats are enabled, running, and visible. Advances the view beat-by-beat for accurate synchronization with the actual performance.
* '''Scroll-by-beats''' — replaces timed Autoscroll whenever MIDI chord beats are enabled, running, and visible. Advances the view beat-by-beat for accurate synchronization with the actual performance.

Latest revision as of 11:25, 16 June 2026

Autoscroll

The Autoscroll feature in JustChords automatically scrolls a song's chords and lyrics from top to bottom while you play, so you can keep your hands on your instrument instead of on the screen.

How it works

Autoscroll is available in Scrolling view mode (Song / Settings / Layout / Mode). When activated, the song content moves at a constant speed from the start of the song to the end. The scroll is driven by a duration value (in seconds) — JustChords spreads the entire song's content evenly across that duration using a linear animation.

You can start and stop autoscroll from the floating menu in the song viewer using the chevron-down button. While autoscroll is running, you can fine-tune the speed in real time:

  • + button — slow down (adds 10 seconds to the remaining duration)
  • button — speed up (subtracts 10 seconds from the remaining duration)
  • Long-press either button for continuous adjustment

Any changes made while scrolling are saved back to the song's duration when you exit the song.

Duration: song-specific vs. global

JustChords resolves which duration to use in this order:

  1. Song duration — if the song has its own duration set (for example, the actual song length in seconds), that value is used.
  2. Global default duration — if the song has no duration set (or it is 0), Autoscroll falls back to the Default song duration configured in Settings → Autoscroll.

This means you can configure a reasonable default for all your songs once, and only override it on individual songs that need a different pace.

Trigger options

In Settings → Autoscroll you can configure when Autoscroll should start automatically:

  • On song appear, with a configurable delay (1–10 seconds)
  • When audio or the metronome starts playing (in JC standalone)

You can also enable Center Autoscroll to keep the currently scrolling region vertically centered on screen.

Chord Beats scrolling

When Chord Beats are enabled and visible in the song, and the MIDI transport is running, the timed Autoscroll is overridden by Scroll-by-beats behavior. In this mode the Autoscroll button is hidden — scrolling is no longer driven by a duration, but by the actual beats coming from MIDI.

Scroll-by-beats activates when all of these are true:

  • MIDI is enabled in Settings
  • The MIDI transport is currently running
  • Chord beats are shown in the song (not hidden)

Why beat-based scrolling is more accurate

Timed Autoscroll is an approximation: it assumes the song is played at a steady pace matching the configured duration. Scroll-by-beats is event-driven. Each MIDI beat advances the current section/part, so the view always reflects exactly where the song is right now, synchronized to the MIDI clock or host transport.

Summary

  • Timed Autoscroll — linear scroll across the song's duration, or the global default if none is set. Adjustable in real time with +/− buttons.
  • Scroll-by-beats — replaces timed Autoscroll whenever MIDI chord beats are enabled, running, and visible. Advances the view beat-by-beat for accurate synchronization with the actual performance.