attenuate_noises
Automatically lowers short loud non-speech events instead of cutting them, using transcript word gaps to ensure speech is never attenuated. Writes a derived copy; original remains untouched.
Instructions
Pull down short loud non-speech events instead of cutting them out.
An event only qualifies automatically when it is both short
(max_event_seconds) and sitting in a word-map gap narrow enough to prove
the map is dense around it (max_gap_seconds) — a wide gap disqualifies
even a very short event, which is the false-positive class this exists
to prevent (speech sitting in a hole the transcript never wrote down).
Qualifying events are pulled down db via one ffmpeg pass, never cut,
and written as a new derived copy that media_path() picks up
automatically everywhere downstream; the original is always what a
re-run reads from, so repeated calls never compound gain.
Unlike cut_by_transcript/cut_by_time, nothing here ever raises on what
the scan finds — this is an automatic multi-candidate scan, not a
handful of explicit ranges, so withholding is done per event rather than
refusing the whole call. suspect_neighbours (a bounding word itself
has a suspect duration — withheld unless confirm_suspect=True or
plan=True) and disqualified (too long, or too wide a gap — never
written, no override) are always reported in full, not only under
plan=True.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| db | No | How far to pull each qualifying event down, in dB. Negative is quieter. | |
| pad | No | Seconds added either side of each event before it is pulled down. | |
| path | No | The project directory to act on. Omit it — the usual case — when this server is bound to a project (started as `proofcut -C DIR mcp`, or inside a project; `ping` says which): it then resolves to that one bound project, a relative path resolves against it, and a path outside it is refused by name. Unbound, `path` is the whole address and omitting it refuses rather than guessing. | |
| plan | No | Resolve the whole call and report what it would do, writing nothing. Prefer it over doing the thing and undoing it. | |
| clip_id | Yes | The clip to scan. It always reads that clip's **original** media, never a previous attenuated copy, so repeated calls never compound gain. | |
| confirm_suspect | No | Go ahead even though a boundary word claims a suspect duration. Read the echoed words first — a suspect duration usually means whisper hid a retake inside that word, so the edge is not where it reads. | |
| max_gap_seconds | No | How wide the word-map gap around an event may be. A wide gap disqualifies even a very short event — that is the false-positive class this exists to prevent, speech sitting in a hole the transcript never wrote down. | |
| max_event_seconds | No | Longest an event may run and still qualify automatically. Anything longer is reported as `disqualified` and never written. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||