MCP tool for noise detection and OTIO timeline annotation generation. Measures noise floor with ffmpeg astats and writes denoise instructions to timeline.otio.
Project description
clipwright-noise
MCP tool for noise detection and OTIO timeline annotation generation.
Overview
Measures audio noise floor using ffmpeg astats filter,
writes denoise instructions (backend, parameters) to timeline-level metadata["clipwright"]["denoise"].
Performs detection only (OTIO annotation); realization (ffmpeg filter application) is done once by clipwright-render
(design M3: separation of detection and application).
Initial render support:
afftdnbackend: render application supported (clipwright-renderinjects afftdn filter).deepfilternetbackend: annotation only. render application not yet supported (planned in future version).
Prerequisites
- Python 3.11 or later
- ffmpeg / ffprobe must exist on PATH or full paths set in environment variables
CLIPWRIGHT_FFMPEG/CLIPWRIGHT_FFPROBE.
Add ffmpeg to PATH directly or specify via environment variables:
export CLIPWRIGHT_FFMPEG=/path/to/ffmpeg
export CLIPWRIGHT_FFPROBE=/path/to/ffprobe
MCP Tool
clipwright_detect_noise
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
media |
string |
required | Input media file path (video + audio required) |
output |
string |
required | Output OTIO timeline path (.otio, same directory as media) |
options.backend |
"afftdn" | "deepfilternet" |
"afftdn" |
denoise backend |
options.strength |
"light" | "medium" | "strong" |
"medium" |
afftdn nr mapping (light=6/medium=12/strong=24 dB) |
timeline |
string | null |
null |
Existing OTIO timeline path (if specified, append to it) |
Dependencies
| Package | Purpose |
|---|---|
clipwright |
Shared types, envelope, errors, process.run |
mcp[cli] |
MCP server |
pydantic |
Parameter validation |
ffmpeg / ffprobe are invoked as separate processes (via PATH or environment variables) for license independence. DeepFilterNet binary is not bundled in initial version; render-side dependency planned.
Installation and Startup
Within a uv workspace:
uv run --package clipwright-noise clipwright-noise
Or install directly:
uv add clipwright-noise
clipwright-noise
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file clipwright_noise-0.1.1.tar.gz.
File metadata
- Download URL: clipwright_noise-0.1.1.tar.gz
- Upload date:
- Size: 9.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7980607b23129cf55276acba7a2a4e75bbdfd3abd95af4428170f07e6fc322ae
|
|
| MD5 |
c56d7487c3992f7c9d445427c6c7a40b
|
|
| BLAKE2b-256 |
b6784c36485a5bb0094d04b81e687df2ac81b8960bb9d8c9b16da01e74df34c4
|
File details
Details for the file clipwright_noise-0.1.1-py3-none-any.whl.
File metadata
- Download URL: clipwright_noise-0.1.1-py3-none-any.whl
- Upload date:
- Size: 11.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7c9b2e8a95f091035d5c3f10e33a3c852f15b9cafd0e81579e4fdd32755a170e
|
|
| MD5 |
baf7e60b2d153bf9baaec7890e50dcd9
|
|
| BLAKE2b-256 |
9c14fb19c1c4a80b68e4cb6f708e5bc15b33c5b24565b39034b87da71cd8c6d1
|