{"id":953,"date":"2026-10-01T11:34:39","date_gmt":"2026-10-01T09:34:39","guid":{"rendered":"https:\/\/callerscaddy.de\/?p=953"},"modified":"2026-10-01T11:52:12","modified_gmt":"2026-10-01T09:52:12","slug":"lyrics-feature-tree","status":"publish","type":"post","link":"https:\/\/callerscaddy.de\/en\/lyrics-feature-tree\/","title":{"rendered":"Lyrics-Feature-Tree"},"content":{"rendered":"<p class=\"wp-block-paragraph\">For a few weeks now, it's just the two of us. Thomas Franzek has joined the development team. Since then, we've been even more diligent. And even more thorough.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This has consequences. New features are coming in faster than I can write them down. To be honest: With such a feature explosion, even I sometimes lose track. How are you supposed to keep up?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That's why I took the lyrics and went through them calmly. What came out is a feature tree. It works like the skill trees you might know from building games. First, you unlock \u201eReading\u201c, then comes \u201eUniversity\u201c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It's the same in Callers Caddy. Many features build on each other. On the left are the basics. Everything that becomes possible through them comes to the right. Far right waits the goal: Hands-free Singing.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The solid arrows mean \u201erequires\u201c. The dashed ones mean \u201eimproves with\u201c. I'm going to walk you through the tree from left to right now. Each explanation builds on the previous one.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6acde3dceb28e&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6acde3dceb28e\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"749\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg\" alt=\"\" class=\"wp-image-954\" srcset=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg 1024w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-300x220.jpg 300w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-768x562.jpg 768w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-16x12.jpg 16w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree.jpg 1466w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Level 1: The Basics<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Lyrics Display (Lyric Display)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This is where it all starts. Callers Caddy shows you the cue sheet for the song in the lyric window. It doesn't matter if the file is in HTML, RTF, TXT, <a href=\"https:\/\/callerscaddy.de\/en\/lyrics-docx-pdf-viewer\/\" target=\"_blank\" rel=\"noopener\">Word document, or PDF<\/a> format. Without this display, there wouldn't be a single other feature in this tree.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">BPM Detection (Tempo Detection)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">BPM stands for \u201eBeats per Minute\u201c. Callers Caddy listens to your music and <a href=\"https:\/\/callerscaddy.de\/en\/die-bpm-des-square-dance-liedes-ermitteln\/\" target=\"_blank\" rel=\"noopener\">measures the tempo itself<\/a>. It calculates within the typical Square Dance range of about 100 to 150 BPM. This way, it doesn't accidentally land at double or half tempo. The measured tempo is the metronome for many features further right.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Song Start (Song Start)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The song start is the moment when you begin to sing. So, the beginning of the opener, after the intro. Callers Caddy remembers this point separately for each music variant. A vocal version can therefore have a different start than the instrumental version.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Singing Sequences (Singing Sequences from the Database)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This is your own <a href=\"https:\/\/callerscaddy.de\/en\/the-magic-behind-your-sequences\/\" target=\"_blank\" rel=\"noopener\">collection of choreo sequences<\/a>. It's stored in the database and appears in the sequences window. There you can search, filter, and edit them. By itself, that's already practical. But it gets really exciting further right in the tree.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6acde3dceb7c0&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6acde3dceb7c0\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"749\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg\" alt=\"\" class=\"wp-image-954\" srcset=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg 1024w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-300x220.jpg 300w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-768x562.jpg 768w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-16x12.jpg 16w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree.jpg 1466w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Level 2: First Responders<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Auto-Scroll<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The lyrics scroll automatically. Callers Caddy simply calculates how far the song has progressed. At the halfway point of the song, the text is also at the halfway point. If you want to scroll manually for a moment, your hand takes priority. After that, Auto-Scroll takes over again.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Reading Band<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The reading band is a colored strip above the line that is currently active. This way, your eyes immediately find the right spot. You can set its height in the window, how tall and how bold it is. It even works when Auto-Scroll is turned off.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Start Countdown<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Just before you need to start, <a href=\"https:\/\/callerscaddy.de\/en\/start-right-on-cue\/\" target=\"_blank\" rel=\"noopener\">a large number appears on the screen<\/a>. It counts down in beats, not in seconds. For this, it needs two things: the tempo from the BPM Detection and the song start. If you adjust the tempo, the countdown will match accordingly. The last two beats remain intentionally silent so you can start freely.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Singing Body Detection<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A Singing Call consists of seven parts, each with 64 beats. That's a total of 448 beats. Callers Caddy looks for exactly this block in the music. It analyzes sound and volume and uses the measured tempo as a guide. In the end, it knows where your singing begins and where it ends.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Section Detection<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Now Callers Caddy reads the cuesheet itself. It recognizes the headings for Opener, the four Figures, Middle Break, and Closer. It also identifies unusual spellings of these headings. This way, the program knows which lines belong to which of the seven parts.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Invert Heads \/ Sides<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Callers Caddy can rewrite a sequence for the other side. Heads become Sides and vice versa. The couple numbers shift accordingly. The spelling remains intact, and call names like \u201eCross Head Tie\u201c remain untouched.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6acde3dcebd15&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6acde3dcebd15\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"749\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg\" alt=\"\" class=\"wp-image-954\" srcset=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg 1024w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-300x220.jpg 300w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-768x562.jpg 768w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-16x12.jpg 16w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree.jpg 1466w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Level 3: Fine Tuning<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Sync Points<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Auto-Scroll calculates evenly. However, real songs are not evenly distributed. This is where Sync Points come into play. A Sync Point <a href=\"https:\/\/callerscaddy.de\/en\/sync-point-for-smooth-auto-scroll\/\" target=\"_blank\" rel=\"noopener\">firmly connects a line of text with a specific moment in the music<\/a>. Between two Sync Points, the text scrolls smoothly. Remember the reading band? With Sync Points, it also sits exactly on the line you are currently singing.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Auto Song Start (automatic song start detection)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The song start <a href=\"https:\/\/callerscaddy.de\/en\/never-search-for-the-song-start-again\/\" target=\"_blank\" rel=\"noopener\">you no longer have to search for yourself<\/a>. The Singing Body Detection finds it for you. In the <a href=\"https:\/\/callerscaddy.de\/en\/clean-up-your-song-database\/\" target=\"_blank\" rel=\"noopener\">Potential window<\/a> you can even analyze all Singing Calls at once. If the program is unsure, the song gets the genre \u201eCHECK: START\u201c. Once you confirm the start, the marking disappears again. And the start countdown from stage 2 immediately has a starting point, without you having to do anything.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Section Overlay (section display)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The seven parts from the Section Detection become visible. Each part gets its own color in the lyric window. This way, you can see at a glance where the opener ends and Figure 1 begins. If a boundary is incorrect, you can simply drag it to the right place with your mouse.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Figure Separator (separator in the figure)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Each figure has two parts. First come your calls, then a few sung lines from the song. The separator marks exactly this boundary. Callers Caddy usually sets it automatically. However, you can also place it yourself with a right-click.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Asymmetry Detection (asymmetry detection)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Some sequences cannot simply be mirrored. For example, when \u201eCouples 1 &amp; 2\u201c are mentioned together or \u201eYour Couple Number\u201c comes up. Callers Caddy recognizes such sequences. It leaves them completely unchanged instead of swapping them incorrectly.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6acde3dcec1e7&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6acde3dcec1e7\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"749\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg\" alt=\"\" class=\"wp-image-954\" srcset=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg 1024w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-300x220.jpg 300w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-768x562.jpg 768w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-16x12.jpg 16w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree.jpg 1466w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Stage 4: Everything interlocks<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Anchor Coupling (coupled song start)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The first SyncPoint and the song start belong together. Both mark the beginning of the opener. If you move the first SyncPoint, the song start automatically moves with it. This way, the start countdown is always correct, without you having to correct it twice.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Text Jump &amp; Swap Timing (text jump earlier)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">At the end of a part, the text jumps to the next section. Right at the moment of the switch, it is often too late to read. With this setting, the text jumps a little earlier, I recommend two seconds. This way, you have the next line in sight before you need it. This also applies to the text swap with Dynamic Lyrics, which I will explain shortly.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Auto Sync (automatic synchronization)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Here, several features come together. You click once when the opener begins. Callers Caddy knows the tempo and that the singing part is 448 beats long. From this, it calculates the end and all seven sections. <a href=\"https:\/\/callerscaddy.de\/en\/your-lyrics-synced-automatically\/\" target=\"_blank\" rel=\"noopener\">The SyncPoints for the entire song are thus set<\/a>. Without BPM, you need a second click at the end. And if Auto Song Start has already found the beginning, the first click is even prepared.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Dynamic Lyrics<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This is my favorite feature. The cuesheet specifies a figure provided by the manufacturer. With Dynamic Lyrics, you see instead <a href=\"https:\/\/callerscaddy.de\/en\/dynamic-lyrics-on-the-fly-choreo-injection\/\" target=\"_blank\" rel=\"noopener\">your own sequence from the Sequences window<\/a>. Callers Caddy only swaps <a href=\"https:\/\/callerscaddy.de\/en\/deep-dive-syncpoints-dynamic-lyrics\/\" target=\"_blank\" rel=\"noopener\">the text in the Lyric window<\/a>. Your file remains untouched. For this, it requires the SyncPoints, the recognized sections, and the Figure Separator.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6acde3dcec648&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6acde3dcec648\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"749\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg\" alt=\"\" class=\"wp-image-954\" srcset=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg 1024w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-300x220.jpg 300w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-768x562.jpg 768w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-16x12.jpg 16w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree.jpg 1466w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Level 5: The Master Features<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Keep Closing Lyrics<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">At the end of each figure, you usually sing a few lines from the song. The dancers promenade home during this. Dynamic Lyrics only swaps the calls up to the last promenade. The sung lines afterwards remain. The timing does not change either.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Live Figure Advance<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">You can use the same sequence in all four figures. Or you let Callers Caddy turn the pages. Then the next sequence from your list comes into each figure. The switch happens live, in sync with the music. This way, you call four different figures without taking your hands off the music.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Inversion per Figure<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Now Dynamic Lyrics connects with the Heads\/Sides swap from Level 2. You choose a pattern, for example HHSS. Then in Figure 1 and 2, the Heads dance, and in Figure 3 and 4, the Sides. The patterns HSSH and HSHS are also available. Callers Caddy writes the sequence for each figure accordingly. And the Asymmetry Detection ensures that nothing breaks.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6acde3dceca37&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6acde3dceca37\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"749\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg\" alt=\"\" class=\"wp-image-954\" srcset=\"https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-1024x749.jpg 1024w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-300x220.jpg 300w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-768x562.jpg 768w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree-16x12.jpg 16w, https:\/\/callerscaddy.de\/wp-content\/uploads\/2026\/10\/lyrics-feature-tree.jpg 1466w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">The goal: Hands-free Singing<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Here, all arrows converge. You load a song, and everything is ready. The countdown tells you when to start. The text runs in time, and the reading bar shows you the correct line. Your own sequences are in the figures, Heads and Sides switch according to your pattern. The lines at the end of each figure remain as they are.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And you? You just sing. And look into the faces of your dancers instead of at the screen.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Try it out yourself<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You get the entire feature tree for free. Callers Caddy is <a href=\"https:\/\/callerscaddy.de\/en\/open-source-gnu-gpl\/\">Open Source<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Simple and fast: \u2460 Download \u2461 UnZIP \u2462 Start<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/callerscaddy.de\/en\/download\/\">Download Callers Caddy now<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Start with a Singing Call that you know well. Set the song to Start, turn on the reading bar, and see how far you get in the tree. I'm curious to see which feature will become your favorite.<\/p>","protected":false},"excerpt":{"rendered":"<p>For a few weeks now, it's just the two of us. Thomas Franzek has joined the development team. Since then, we've been working even harder. And even more thoroughly. This has its consequences. New features are coming in faster than I can write them down. To be honest: With such a feature explosion, even I sometimes lose track. How are you supposed to keep up? \u2026 <a title=\"Lyrics-Feature-Tree\" class=\"read-more\" href=\"https:\/\/callerscaddy.de\/en\/lyrics-feature-tree\/\" aria-label=\"Read more about Lyrics-Feature-Tree\">Read more<\/a><\/p>","protected":false},"author":1,"featured_media":954,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-953","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-funktionen"],"_links":{"self":[{"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/posts\/953","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/comments?post=953"}],"version-history":[{"count":2,"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/posts\/953\/revisions"}],"predecessor-version":[{"id":957,"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/posts\/953\/revisions\/957"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/media\/954"}],"wp:attachment":[{"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/media?parent=953"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/categories?post=953"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/callerscaddy.de\/en\/wp-json\/wp\/v2\/tags?post=953"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}