βš™
R-Flow app

Workflow & Safety

Auto-saves, presets, batch runs, smart matching, and instant undo β€” your show, protected.

R-Flow β€” Workflow & Safety
Workflow & Safety inside R-Flow

What it does

The Workflow & Safety suite is five small apps that wrap a safety net around your Resolume workflow. Auto Save keeps your composition saved on a timer so a crash never eats an hour of work. Presets store your whole R-Flow setup under a name you choose, Batch Processing reorders many compositions against one setlist in a single run, Advanced Matching gives you fine-grained control over how track names are matched to columns, and Undo/Redo keeps timestamped backups of your compositions so any change can be rolled back.


Key features

Why it earns its place in your booth

1

Auto Save: hands-free composition saving on a timer

Set an interval in minutes and R-Flow automatically triggers a save in Resolume β€” either by sending an OSC save message or by finding the Resolume window and simulating Ctrl+S with layered automation fallbacks. It even watches Resolume's title bar (the unsaved-changes asterisk) to confirm the save actually landed, and reports a timestamped status after every save.

2

Auto Save: OSC or keyboard β€” your choice

Prefer a cleaner path than simulated keystrokes? Tick "Enable OSC Save" and R-Flow sends a network save message straight to Resolume instead (default: 127.0.0.1, port 7000, address /composition/save, with a configurable payload type). A "Test OSC" button confirms the message goes out before you rely on it mid-show.

3

Presets: your entire setup, saved under one name

Type a name (e.g. "My Festival Setlist"), hit "Save Preset", and R-Flow stores your core reorder setup β€” file paths, match mode, deck/group names, run options, and Auto Save/OSC settings β€” as a named preset. Every saved preset appears in a clickable "Available Presets" list; click one to select it, then Load or Delete it with one more click. Presets live in your user folder under .resolume_reorder/presets.

4

Advanced Matching: tame messy track names

When setlist names and column names don't line up perfectly, this app gives you the tools: regular-expression matching (e.g. "Track (\d+)" matches "Track 1", "Track 2"), case-sensitive matching on/off, and accent removal so "cafΓ©" matches "cafe". Marked experimental in the app, so test before showtime.

5

Advanced Matching: stopwords and custom text mappings

List words to ignore during matching (remix, edit, feat, the...) as a comma-separated stopword list, and define custom text replacements β€” like turning every "feat." into "ft." β€” so your setlist and your composition finally speak the same language.

6

Advanced Matching: dry-run your rules with Test Match

Enter a sample track name and a list of column names, hit "Test Match", and see exactly which columns match after your mappings, accent removal, and case rules are applied β€” before you touch a real composition.

7

Batch Processing: one setlist, every composition

Point at a setlist, add as many .avc/.comp composition files as you like, and run them all through the reorder engine in one pass. Choose exact, substring, or fuzzy matching, target a specific group and deck by name, optionally keep unmatched columns, and get a per-file success/failure report with a progress bar as it works.

8

Batch Processing: dry run before you commit

The "Dry run (show mapping only)" option previews what would be reordered without writing anything, and an optional output directory keeps your originals untouched β€” leave it empty only when you deliberately want in-place edits.

9

Undo/Redo: automatic backups before every change

R-Flow creates a backup of your composition before making changes, keeps a timestamped history (grouped per original file), and lets you restore any version with "Undo Last Change" β€” you pick where the restored file is written, so nothing gets silently overwritten. A per-file backup cap (default 5) plus a "Cleanup Old" button stops the backup folder from growing forever.


Documentation

How to use Workflow & Safety

  1. Auto Save: set your interval and test it

    Open your composition in Resolume, then in the Auto Save app enter a number in "Save Interval (minutes)" β€” e.g. 5 for every five minutes. Click "Test Save" first: R-Flow finds the Resolume window and sends the save β€” a green status means Resolume was found with unsaved changes and the save command was delivered; blue means no unsaved-changes marker was detected.

    Workflow & Safety β€” Auto Save: set your interval and test it
  2. Auto Save: start it and leave it running

    Click "Start Auto Save". The progress bar fills as the countdown runs, and after each save you get a timestamped status like "Auto-saved Resolume at 22:14:05". Click "Stop Auto Save" to end it. Keep the Resolume window visible and not minimized while it runs.

    Workflow & Safety β€” Auto Save: start it and leave it running
  3. Auto Save (optional): switch to OSC saving

    In the OSC Settings card, tick "Enable OSC Save" and check Host (127.0.0.1 for the same machine), Port (7000 by default), and OSC Address (/composition/save). Click "Test OSC" β€” you'll get a confirmation popup if the message was sent. When OSC is enabled, R-Flow uses it instead of simulating keystrokes.

    Workflow & Safety β€” Auto Save (optional): switch to OSC saving
  4. Presets: save your current setup

    Configure everything the way you like in the Reorder Deck app, then in the Presets app type a name into the "Name" field and click "Save Preset". It immediately appears in the "Available Presets" list.

    Workflow & Safety β€” Presets: save your current setup
  5. Presets: load or delete a saved setup

    Click a preset in the "Available Presets" list to select it (it fills the Name field), then click "Load Preset" to apply all its settings, or "Delete Preset" to remove it.

    Workflow & Safety β€” Presets: load or delete a saved setup
  6. Advanced Matching: dial in your matching rules

    Tick the options you need: "Use Regular Expressions" for pattern matching, "Case Sensitive Matching" if exact casing matters, "Remove Diacritics" to ignore accents. Add ignored words to the Stopwords box (comma-separated, e.g. remix, edit, feat) and text replacements to the Custom Mappings box as JSON, e.g. {"feat.": "ft."}.

    Workflow & Safety β€” Advanced Matching: dial in your matching rules
  7. Advanced Matching: verify with Test Match

    Type a sample name into "Test Track Name", paste your column names into "Available Columns" (one per line), and click "Test Match". A results popup shows the processed track name and every column that matched. "Clear Test" resets the fields. Once happy, these settings apply when you run reorders from the main app.

    Workflow & Safety β€” Advanced Matching: verify with Test Match
  8. Batch Processing: pick your files

    In the Batch Processing app, click "Browse" next to Setlist File to choose the setlist used for every composition, then click "Add Files" to select all the .avc/.comp files to process β€” they appear one per line and you can edit the list directly.

    Workflow & Safety β€” Batch Processing: pick your files
  9. Batch Processing: choose output and options

    Set an Output Directory with "Browse" to write processed copies there, or leave it empty to modify the originals in place. Pick a Match Mode (exact, substring, or fuzzy), optionally set Group Name and Deck Name, and decide on "Include unmatched columns" (warned in-app: may duplicate or move groups) and "Dry run (show mapping only)" for a no-write preview.

    Workflow & Safety β€” Batch Processing: choose output and options
  10. Batch Processing: run it

    Click "Run Batch Process". The status line shows progress file by file, and when it finishes you get a summary popup listing successes and failures with a per-file breakdown. "Clear All" empties the file list and output field for the next run.

    Workflow & Safety β€” Batch Processing: run it
  11. Undo/Redo: browse and restore backups

    Backups are created automatically before changes, so the Backup History list fills up on its own β€” each entry shows a date, time, and the original composition name. Click one to select it, then click "Undo Last Change"; a save dialog asks where to write the restored file. If you click "Undo Last Change" without selecting, the most recent backup is used.

    Workflow & Safety β€” Undo/Redo: browse and restore backups
  12. Undo/Redo: keep the backup folder tidy

    Set "Max backups per file" (default 5), then click "Cleanup Old" to delete anything beyond that limit for each composition β€” a popup confirms how many were removed. "Refresh List" re-scans the backup folder at any time.


Reference

Settings

Auto Save: Save Interval (minutes)How often to trigger a Resolume save. Minimum 1 minute; the field locks while auto save is running.
Auto Save: Enable OSC SaveSend a network save message to Resolume instead of simulating keystrokes.
Auto Save: Host / Port / OSC Address / OSC PayloadWhere the save message goes. Defaults: 127.0.0.1, port 7000, /composition/save; payload type selectable (int, float, string, bool, or none).
Presets: NameThe name your current settings are saved under; also filled in when you click a preset in the list.
Advanced Matching: Use Regular ExpressionsTreat setlist entries as regex patterns, e.g. "Track (\d+)" matches "Track 1" and "Track 2".
Advanced Matching: Case Sensitive MatchingRequire exact letter case β€” "Track A" won't match "track a".
Advanced Matching: Remove DiacriticsStrip accents so "cafΓ©" matches "cafe" and "naΓ―ve" matches "naive".
Advanced Matching: StopwordsComma-separated words to ignore during matching, e.g. love, remix, edit, feat, the.
Advanced Matching: Custom Mappings (JSON)Text replacements applied before matching, e.g. {"feat.": "ft.", "@": "at"}. Must be valid JSON.
Batch: Match ModeHow setlist names are matched to columns: exact, substring, or fuzzy.
Batch: Group Name / Deck NameTarget a specific group and deck inside each composition.
Batch: Include unmatched columnsKeep columns the setlist didn't match. In-app warning: may duplicate or move groups.
Batch: Dry run (show mapping only)Preview the reorder without writing any files.
Batch: Output DirectoryWhere processed copies are saved. Leave empty to modify the original files in place.
Undo/Redo: Max backups per fileHow many backup versions to keep per composition (default 5); "Cleanup Old" deletes the rest.

Pro tips

πŸ’‘ Run "Test Save" once at soundcheck, not during the set β€” you'll know immediately whether keyboard automation works on that machine or whether you should switch to OSC mode.
πŸ’‘ OSC mode is the show-safe choice: it saves without stealing focus or clicking the Resolume window, so your output never flinches mid-set.
πŸ’‘ Save a preset per venue or per tour β€” loading one restores your paths, match mode, and run options instead of re-entering them at load-in.
πŸ’‘ Before a big batch run, tick "Dry run (show mapping only)" and check the mapping, then run for real into a separate output folder so originals stay pristine.
πŸ’‘ Use the Advanced Matching stopword list for the usual suspects β€” remix, edit, mix, feat, the β€” so "Song (Club Remix)" still finds the "Song" column.
πŸ’‘ Keep "Max backups per file" at 5 or higher during rehearsal weeks when you're iterating fast, then "Cleanup Old" once the show file is locked.

Good to know

⚠️ Auto Save's keyboard mode needs the Resolume window visible and not minimized β€” the app briefly brings Resolume to the foreground and clicks it to deliver the keystroke, so expect a momentary focus switch at each interval.
⚠️ If the keyboard save fails, the app suggests running R-Flow as Administrator or running Resolume in windowed mode β€” elevated or exclusive-fullscreen Resolume can block simulated input.
⚠️ OSC saving requires Resolume to be listening for OSC on the configured port; the "Test OSC" button only confirms the message was sent, not that Resolume acted on it.
⚠️ Auto Save's minimum interval is 1 minute; save confirmation is inferred from the title-bar asterisk, so an orange "may have failed" status means check Resolume manually.
⚠️ Advanced Matching and Undo/Redo are both flagged EXPERIMENTAL in the app; the in-app note warns advanced options can slow processing on large compositions.
⚠️ The Advanced Matching "Test Match" preview applies custom mappings, accent removal, and case rules, but does not apply the stopword list β€” don't judge stopword behavior from the test popup.
⚠️ Custom Mappings must be valid JSON β€” a typo produces an "Invalid JSON" error and blocks the test; invalid regex patterns error out the same way.
⚠️ Batch Processing with an empty Output Directory edits your original composition files in place β€” use "Dry run" or an output folder first, and note the in-app advice that all compositions should share the same column structure.
⚠️ Undo restore always asks where to save the restored file (it defaults to the original name) β€” it does not automatically overwrite the live composition, and the history list shows only the 20 most recent backups.
⚠️ "Cleanup Old" permanently deletes backups beyond the per-file limit β€” there is no recycle bin for removed backups.

In action

Workflow & Safety in action
Workflow & Safety in action
Workflow & Safety in action
Workflow & Safety in action

Requirements

Windows (Auto Save relies on Windows-specific window and keyboard automation)Resolume Arena running with your composition open (for Auto Save)For OSC saving: OSC input enabled in Resolume's preferences on the matching port (default 7000)Local disk space for presets and composition backups (stored under .resolume_reorder in your user folder)

Plays well with

OSC over UDP to Resolume (default 127.0.0.1:7000, address /composition/save, configurable host/port/address/payload)Windows desktop automation: locates the Resolume Arena window and sends Ctrl+S via layered keyboard-simulation methodsReads Resolume's window title (unsaved-changes asterisk) to verify saves actually completedWorks directly on Resolume composition files (.avc, .comp, .xml) for batch reordering and backup/restore