normalize_track
Adjust track volume to achieve target loudness by measuring LUFS and applying gain, supporting streaming, broadcast, and podcast standards.
Instructions
Normalize a track to a target integrated loudness by measuring its current LUFS via a non-destructive dry-run render, then adjusting the track fader.
target_lufs: desired integrated loudness in LUFS (default -14.0, streaming standard). Use -23.0 for EBU R128 broadcast, -16.0 for podcast. Returns measured_lufs_i, gain_applied_db, and old/new fader volumes. The change is registered in REAPER's undo history.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| track_index | Yes | ||
| start_time | Yes | ||
| end_time | Yes | ||
| target_lufs | No |
Implementation Reference
- src/reaper_mcp/server.py:748-768 (handler)The MCP tool registration and entry point for 'normalize_track'. It wraps the adapter call.
@mcp.tool() def normalize_track( track_index: int, start_time: float, end_time: float, target_lufs: float = -14.0, ) -> dict[str, Any]: """ Normalize a track to a target integrated loudness by measuring its current LUFS via a non-destructive dry-run render, then adjusting the track fader. - target_lufs: desired integrated loudness in LUFS (default -14.0, streaming standard). Use -23.0 for EBU R128 broadcast, -16.0 for podcast. Returns measured_lufs_i, gain_applied_db, and old/new fader volumes. The change is registered in REAPER's undo history. """ try: return _wrap( adapter.normalize_track( track_index=track_index, start_time=start_time, end_time=end_time, - src/reaper_mcp/reaper_adapter.py:418-431 (handler)The implementation of the adapter method 'normalize_track', which invokes the remote client call.
def normalize_track( self, track_index: int, start_time: float, end_time: float, target_lufs: float = -14.0, ) -> dict[str, Any]: return self._client.call( "normalize_track", track_index=track_index, start_time=start_time, end_time=end_time, target_lufs=target_lufs, )