---
title: "Local video filler word removal: declip"
description: "You can use declip to plan filler, silence, and retake cuts in local audio or video. Review the transcript and proposed cuts on a local browser page."
canonical: "https://scalewithsearch.com/code/declip"
date: "2026-10-06"
---
# Local video filler word removal: declip.

You can use declip to plan filler, silence, and retake cuts in local audio or video. Review the transcript and proposed cuts on a local browser page. Then render media or export files for your video editor. Your source stays unchanged.

[Source repository](https://github.com/b2bvic/declip)

## Team workflow

Plan the edits, accept or reject every proposed cut, then select **Finish review**. Render or export after review. Review is required for every run and equipment tier, including plans with no cuts. No flag, profile, or configuration setting bypasses this requirement.

## Quick start

Install uv, Python 3.11 or later, and ffmpeg with ffprobe. Version 0.5.1 installs from its Git tag. This version is unavailable on PyPI.

On macOS 14 or later with Apple silicon:

```sh
brew install ffmpeg
uv tool install "declip[mac] @ git+https://github.com/b2bvic/declip@v0.5.1"
declip doctor
declip plan clip.mp4
declip review clip.mp4
```

Accept or reject every proposal on the review page, then select **Finish review**. Render the reviewed plan:

```sh
declip render clip.mp4
```

On Linux with NVIDIA hardware, install ffmpeg with ffprobe and use the cuda extra. This hardware path is assumed, not verified.

```sh
uv tool install "declip[cuda] @ git+https://github.com/b2bvic/declip@v0.5.1"
```

For CPU transcription on macOS or Linux:

```sh
uv tool install "declip[cpu] @ git+https://github.com/b2bvic/declip@v0.5.1"
```

For review, render, or export without transcription libraries:

```sh
uv tool install "declip @ git+https://github.com/b2bvic/declip@v0.5.1"
```

If your shell cannot find declip, run `uv tool update-shell`. Use `declip doctor` to check tools and backends. Select CPU transcription with `--device cpu`; the older `--cpu` flag has no effect.

## How it works

Planning uses local Whisper transcription and cut heuristics, then writes `clip.declip.json`. The edit list binds the source hash, proposed cuts, and review decisions. Render and export refuse pending or stale review with exit code 3. A changed source requires a new plan and review.

On the review page, click a word to seek. Click a proposed cut to accept or reject it. Select a word range and press `c` to add a manual cut. Press `j` or `k` to move between cuts, `a` to accept, and `x` to reject. Press Space to play or pause. Press `p` to preview the current cut with accepted intervals skipped. Decisions save in the edit list.

Create an optional rig profile from a sample of at least ten seconds:

```sh
declip setup --name desk --sample sample.mp4
declip rig show desk
declip plan clip.mp4 --rig desk
```

Setup measures the sample and asks about your microphone, room, loudness, and destination. The first profile becomes the default. `--yes` accepts setup defaults only and cannot bypass review.

Render writes `clip_clean.mp4`, or `clip_clean.mov` for a MOV source. By default, it matches the source codec, dimensions, frame rate, and color tags. It preserves source audio channel count and sample rate. Additional audio tracks receive cuts without sound processing. Render copies global metadata and drops subtitle, data, attachment, and timecode streams. Existing outputs require `--overwrite`; source aliases are refused.

Without a rig or preset choice, raw applies loudness normalization only. Use `--preset` to choose voice, natural, podcast, or none. The none preset disables EQ and loudness.

### Export after review

```sh
declip export clip.mp4 --format edl
declip export clip.mp4 --format srt
declip export clip.mp4 --format markers
declip export clip.mp4 --format fcpxml
```

Exports use `clip.declip.edl`, `.srt`, `.markers.json`, and `.fcpxml`. SRT captions contain retained words on the output timeline. Exports never overwrite the edit list.

EDL is the pro-tier default for editor output. Basic and creator editor profiles also produce a processed PCM 24-bit sidecar WAV. Pro editor profiles preserve source media without audio processing or a sidecar. FCPXML requires an explicit format choice.

### Compatibility commands

`process` without `--execute` reports proposed cuts and writes nothing. `process --execute`, `clean --execute`, and the older `--export` option write the edit list and stop for review. Run review, then render or export. Whole-file `enhance --execute` uses a separate path without timeline cuts.

Version 0.5.1 keeps transcription diagnostics off stdout in JSON modes. It reports real-speech prompt probes as passed, failed, or inconclusive. A baseline with no fillers leaves the synthetic prompt-mode decision unchanged.

### Platform evidence

The README records verified MLX transcription and VideoToolbox rendering on macOS arm64. CPU transcription and software rendering have local macOS evidence. Linux CPU and NVIDIA paths remain assumed without a Linux hardware receipt. Hosted CI runs on macOS and Ubuntu without a GPU. Windows is planned for a later release and is untested.

## Limits

- Detection uses heuristics and can miss retakes. Use manual cuts for missed edits. Only English filler rules ship with this version.
- EDL and FCPXML require constant-frame-rate video at a standard rate. Conformed sources need a new plan and review. Editor import of FCPXML is unverified.
- Caption burn-in, LUT processing, forced 4K output, and ProRes output are outside this version. A 10-bit source requires `--allow-8bit` and a compatible codec choice to become 8-bit.

The synthetic filler-prompt probe was inconclusive on both backends. No real-speech receipt exists, and prompt persistence after thirty seconds remains unproven.

## Related repositories

- [owned-record](/code/owned-record): context and session history, including web2md.
- [ops-scripts](/code/ops-scripts): operator scripts, including the X bookmark import.
- [seo-checks](/code/seo-checks): SEO page checks from one command.

[Discuss a scoped build](/work).
