What this RPP dependency auditor checks
REAPER project files are readable text trees. This parser validates the block structure, inventories supported SOURCE/FILE and plug-in blocks, groups repeated references, labels nested RPP projects, and identifies Windows, UNC, POSIX, home-variable and escaping relative paths that can make a handoff nonportable. It also detects archive destination collisions before exporting a CSV audit or JSON manifest.
How selected-file checking works
Choose loose companion files or a project folder. The auditor first compares normalized relative paths, then permits a unique case-insensitive basename match when browsers hide the original folder context. Multiple basename matches are ambiguous. A file absent from the supplied selection may still exist elsewhere, so the result says “not in selection,” never that deletion or loss has been proven.
Comparing project versions
An optional earlier RPP produces added, removed and unchanged dependency rows plus track and item deltas. Matching uses normalized media reference text and plug-in format/module identifiers. It is not an audio diff: moved items, automation, routing, envelopes, parameter state, rendered output and semantic mix changes are outside this comparison.
Validation boundary
This is a read-only, bounded preflight—not REAPER. Cockos does not publish a complete formal grammar for every project-state chunk, and extensions can store additional state. The auditor preserves structural visibility but interprets only the documented/common dependency constructs listed above. It does not decode opaque plug-in state, open media, load plug-ins, recurse into nested RPPs, copy files, rewrite the project, validate licenses, or prove that a project will play or render correctly. Keep the original project and use REAPER's save/copy workflow for the actual archive.
Frequently asked questions
Why is a referenced file “unchecked”?
No companion inventory was supplied. Web pages cannot silently search your disk. Select the session folder or relevant files to perform a local name/path comparison.
Does a listed plug-in mean it is installed?
No. It means the RPP contains a supported plug-in block. Only REAPER on the target system can resolve and load that plug-in and its saved state.
Can I use the manifest as a finished archive?
No. It is a review and copying plan. Resolve collisions and nonportable paths, create the archive in REAPER or your file manager, then reopen and test the copied project independently.
Authoritative references
The official REAPER User Guide describes RPP project files, backups, subprojects and project-media copying options. Cockos' ReaScript API reference documents project-state chunks and project paths. The ReaScript introduction also notes that extensions can store state in the RPP, which is why unknown blocks are not treated as invalid solely for being unfamiliar.
Browse music-production tools · Audit BWF/RF64 delivery files