TuneStacker is the engine that turns format clocks and master logs into actual program logs — the files AutoCast reads to know what to play each day. Click Generate Logs and TuneStacker works through your scheduled date range, hour by hour, picking real songs from your library to fill every Random, Fill, and Rotate slot.
TuneStacker's selection engine is designed to sound like a skilled music director, not a random number generator. For every Random or Fill event, it:
This LRU approach means no artist repeats back-to-back, frequently aired artists wait their turn, and niche artists with small catalogs aren't buried by prolific ones.
Protection spans across the entire batch run — TuneStacker seeds its in-memory history from the on-disk playback history file at the start of each batch, so tracks aired recently in a previous run are also protected.
Auto mode is the normal daily workflow. TuneStacker matches each day in your date range to a master log by day name — Monday's log generates from the master log file named "Monday," Tuesday's from "Tuesday," and so on. This means your master logs must be named exactly after the days of the week for Auto mode to work.
| Control | What it does |
|---|---|
| Start Date | The first day to generate a program log for. Defaults to today. |
| End Date | The last day to generate a program log for. Defaults to one week from today. |
| Generate Logs | Starts generation for every day from Start to End (inclusive). |
Before generating, TuneStacker checks that all needed day-name master logs exist. If any are missing, an alert lists which ones you need to create in MasterBuilder before proceeding.
Output files are named by date in MMddyy format (e.g., 030825 for March 8, 2025) and written to the Program Logs folder.
Manual mode lets you pick a specific master log for each day, or generate day-named logs independent of a calendar date. Switch to Manual mode with the radio button, then choose a filename format:
| Sub-mode | Output filenames | What you set |
|---|---|---|
| Days | Day of week names: Monday, Tuesday, etc. |
A starting day of the week. Seven rows are always generated (Sun–Sat cycle). Each row auto-selects the matching day-name master log, but you can override any row. |
| Dates | Calendar dates: MMddyy format. |
A start date and a count (1–60 logs). Each row shows the date and lets you pick any master log. |
Each row has a popup listing all your master logs. You must assign a log to every row — any row left at "Select a master log" will block generation with an alert.
Days sub-mode is ideal for generating or regenerating a permanent set of seven day-named program logs that AutoCast cycles through. Dates sub-mode is ideal for generating a batch of dated logs for the coming week.
The right panel of TuneStacker shows the current contents of your Program Logs folder, with the newest log at the top. The list updates automatically when generation finishes — you don't need to refresh it manually. Click Open program logs folder to reveal the folder in Finder.
The ⚙ gear icon next to the library tally opens the Proximity Guard panel, which controls how aggressively TuneStacker protects against artist and title repetition.
Two sliders set the minimum number of picks that must occur before the same artist or the same title can play again. The badge next to each slider turns color to warn you when your settings are straining the library:
The panel also shows your library stats: total tracks, unique artists, and unique titles. This gives context for why a slider setting triggers a particular color.
Use safe defaults calculates recommended values from your current library (10% of unique artist count, 10% of unique title count) and applies them. This always lands in the green zone for a normally-sized library.
Proximity Guard settings are saved automatically and apply to every subsequent Generate Logs run.
When TuneStacker finishes, you'll see a success message in the status bar and a green flash on the speaker icon. The program log list refreshes automatically. If any errors occurred, they appear as red text in the status bar and are also written to the Logging tab (⌘L).