Evals / audio / Loudness and cleanup

Reduce background noise

Reduce the background noise in example.ogg and save it as clean.mp3.

normalsingledeft audio denoise

The task

The reference answer shows the job can be done with deft. It is not an agent run.

deft audio denoise example.ogg -o clean.mp3

Input

example.ogg 102.3 KB · vorbis, 6.1s

Reference output

clean.mp3 110.2 KB · mp3, 6.1s
How a result is judged (1 check)
  • format: file = "clean.mp3", format = "mp3"

Runs

CodexWithout deftPassed2026-11-07

Time
12s
New tokens
4.0k
Total input
54.3k
Output tokens
0.3k
Commands
3
Failed
1

Trace

  1. I’ll check the audio file and available audio tools, then create `clean.mp3` in the current directory.

  2. pwd && ls -l example.ogg && command -v ffmpeg || true && command -v sox || true
    output
    -rw-r--r--@ 1 user  staff  104793 Nov  5 21:11 example.ogg
    /opt/homebrew/bin/ffmpeg
  3. ffmpeg -hide_banner -filters | rg 'afftdn|anlmdn|arnndn|highpass|lowpass' && ffmpeg -hide_banner -i example.ogg (exit 1)
    output
    TSC afftdn            A->A       Denoise audio samples using FFT.
     TSC anlmdn            A->A       Reduce broadband noise from stream using Non-Local Means.
     TSC arnndn            A->A       Reduce noise from speech using Recurrent Neural Networks.
     TSC highpass          A->A       Apply a high-pass filter with 3dB point frequency.
     TSC lowpass           A->A       Apply a low-pass filter with 3dB point frequency.
    Input #0, ogg, from 'example.ogg':
      Duration: 00:00:06.10, start: 0.000000, bitrate: 137 kb/s
      Stream #0:0: Audio: vorbis, 44100 Hz, stereo, fltp, 160 kb/s
          Metadata:
            encoder         : Lavf59.27.100
    At least one output file must be specified
  4. ffmpeg -y -hide_banner -i example.ogg -af "afftdn=nf=-25:tn=1" -codec:a libmp3lame -q:a 2 clean.mp3
    output
    Input #0, ogg, from 'example.ogg':
      Duration: 00:00:06.10, start: 0.000000, bitrate: 137 kb/s
      Stream #0:0: Audio: vorbis, 44100 Hz, stereo, fltp, 160 kb/s
          Metadata:
            encoder         : Lavf59.27.100
    Stream mapping:
      Stream #0:0 -> #0:0 (vorbis (native) -> mp3 (libmp3lame))
    Press [q] to stop, [?] for help
    Output #0, mp3, to 'clean.mp3':
      Metadata:
        TSSE            : Lavf61.7.100
      Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp
          Metadata:
            encoder         : Lavc61.19.101 libmp3lame
    [out#0/mp3 @ 0xbb1060180] video:0KiB audio:112KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.220178%
    size=     112KiB time=00:00:06.10 bitrate= 150.3kbits/s speed= 120x
  5. Done. Reduced background noise and saved the result as [clean.mp3](clean.mp3).

Output

clean.mp3 112.0 KB · mp3, 6.1s

CodexWith deft, skill installedPassedRead the skillUsed deft2026-11-07

Time
18s
New tokens
7.5k
Total input
71.4k
Output tokens
0.5k
Commands
4
Failed
0

Trace

  1. I’ll inspect the audio file and available conversion tools, then create `clean.mp3` in the current directory.

  2. cat .agents/skills/deft/SKILL.md && rg --files -g 'example.ogg' -g 'AGENTS.md' -g '"'!**/.git/**'"'
    output
    ---
    name: deft
    description: "Use deft first for any simple, direct operation on local files, whatever the type: convert, read, extract, edit, compress, merge, split, compare or inspect. Try it before writing a script or one-liner. If unsure, run deft find; if it says no command does this, use another tool. Not for programming work: to read, write or change source code, skip it."
    ---
    
    # deft
    
    One local command for file jobs. Prefer it over writing Python or shell scripts.
    
    Syntax: `deft <group> <command> [inputs] [-o output] [--options]`
    
    Groups:
    - `pdf`: Merge, split, compress, encrypt, forms, OCR, compare, convert
    - `image`: Resize, crop, convert, compress, adjust, montage, OCR
    - `video`: Trim, merge, convert, compress, subtitles, GIF, frames (ffmpeg)
    - `audio`: Convert, trim, normalize, denoise, cut silence (ffmpeg)
    - `doc`: Word/ODT/RTF: to text, Markdown, HTML, PDF; find and replace
    - `slides`: PowerPoint: extract text, Markdown outline
    - `sheet`: Excel/CSV/ODS tables: SQL query, pivot, merge, split, convert
    - `json`: JSON: convert, format, merge, diff, validate
    - `toml`: TOML: convert, format, merge, diff, validate
    - `xml`: XML: convert, format, merge, diff, validate
    - `yaml`: YAML: convert, format, merge, diff, validate
    - `md`: Markdown to PDF, HTML, Word, EPUB; table of contents
    - `html`: HTML to Markdown, text, Word and PDF
    - `epub`: E-books: info, to text, Markdown and PDF
    - `gps`: GPX and KML tracks: convert, distance and time
    - `qr`: Create QR codes and barcodes; r
    … 712 more characters
  3. deft audio
    output
    deft audio - commands (input -> output)
      info            audio -> report  Duration, codec, sample rate, channels
      convert         audio -> audio   Change format: --to mp3|m4a|wav|flac|ogg|opus
      denoise         audio -> audio   Reduce steady background noise such as hiss
      normalize       audio -> audio   Even out loudness (EBU R128)
      remove-silence  audio -> audio   Cut silent parts: --threshold -40 --min-silence 0.5
      split           audio -> audio   Cut out a part: --from 0:10 --to-time 0:25
    More: deft audio <command> --help
  4. deft audio denoise --help
    output
    deft audio denoise - Reduce steady background noise such as hiss
    
    Usage: deft audio denoise <audio>... [-o <audio|dir>] [options]
    In: audio (each handled separately)   Out: audio (default <name>.denoised.<ext>)
    
    Options:
      --level <light|balanced|strong>
          How much to remove (default balanced)
    Common: -o --force --dry-run --json -j   (deft help common)
    
    Examples:
      deft audio denoise tone.mp3 --level light -o clean.mp3
    Needs: ffmpeg, ffprobe
  5. deft audio denoise example.ogg --level balanced -o clean.wav && deft audio convert clean.wav -o clean.mp3
    output
    ok audio.denoise example.ogg -> clean.wav  1.0MB  0.08s
    ok audio.convert clean.wav -> clean.mp3  110KB  0.14s
  6. Reduced the background noise and saved the result as [clean.mp3](clean.mp3).

Output

clean.mp3 110.3 KB · mp3, 6.1s
clean.wav 1.0 MB · pcm_s16le, 6.1s

Claude Opus 5.5Without deftPassed2026-11-07

Time
13s
New tokens
9.6k
Total input
42.6k
Output tokens
0.9k
Commands
0
Failed
0

Trace

    Output

    clean.mp3 109.0 KB · mp3, 6.1s

    Claude Opus 5.5With deft, skill installedPassedRead the skillUsed deft2026-11-07

    Time
    14s
    New tokens
    10.0k
    Total input
    59.4k
    Output tokens
    0.5k
    Commands
    0
    Failed
    0

    Trace

      Output

      ---
      name: deft
      description: "Use deft first for any simple, direct operation on local files, whatever the type: convert, read, extract, edit, compress, merge, split, compare or inspect. Try it before writing a script or one-liner. If unsure, run deft find; if it says no command does this, use another tool. Not for programming work: to read, write or change source code, skip it."
      ---
      
      # deft
      
      One local command for file jobs. Prefer it over writing Python or shell scripts.
      
      Syntax: `deft <group> <command> [inputs] [-o output] [--options]`
      
      Groups:
      - `pdf`: Merge, split, compress, encrypt, forms, OCR, compare, convert
      - `image`: Resize, crop, convert, compress, adjust, montage, OCR
      - `video`: Trim, merge, convert, compress, subtitles, GIF, frames (ffmpeg)
      - `audio`: Convert, trim, normalize, denoise, cut silence (ffmpeg)
      - `doc`: Word/ODT/RTF: to text, Markdown, HTML, PDF; find and replace
      - `slides`: PowerPoint: extract text, Markdown outline
      - `sheet`: Excel/CSV/ODS tables: SQL query, pivot, merge, split, convert
      - `json`: JSON: convert, format, merge, diff, validate
      - `toml`: TOML: convert, format, merge, diff, validate
      - `xml`: XML: convert, format, merge, diff, validate
      - `yaml`: YAML: convert, format, merge, diff, validate
      - `md`: Markdown to PDF, HTML, Word, EPUB; table of contents
      - `html`: HTML to Markdown, text, Word and PDF
      - `epub`: E-books: info, to text, Markdown and PDF
      - `gps`: GPX and KML tracks: convert, distance and time
      - `qr`: Create QR codes and barcodes; read QR codes
      
      How to use it:
      1. Run `deft <group>` to list commands, or `deft find "<what you want>"` to search. If it says `no command does this`, use another tool.
      2. Run `deft <group> <command> --help` for options and examples.
      3. `deft convert <in> -o <out.ext>` converts between formats by extension.
      4. Results are one line starting with `ok`, `partial` or `error`; add `--json` to parse them. Errors include a `hint:` with the fix.
      
      Inputs are never overwritten; pass `--force` or `--in-place` to allow it. Globs and directories work as inputs; several inputs run in parallel.
      
      If `deft` is not installed, ask the user, then follow https://github.com/firstprayer/deft/blob/main/docs/INSTALL.md
      
      clean.mp3 110.2 KB · mp3, 6.1s

      Claude CodeWithout deftNot run yet

      Claude CodeWith deftNot run yet