From 137dc80cde77b679fe2e2695f02c21137b475fc8 Mon Sep 17 00:00:00 2001 From: dillonj Date: Mon, 4 May 2026 19:01:11 -0600 Subject: [PATCH] features update --- .github/copilot-instructions.md | 7 +++++++ FEATURES.md | 6 +++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 9dd8d78..e96803a 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -54,6 +54,9 @@ Use project virtualenvs where available (`.venv312`, `.venv`, or `venv`) for bac - Startup/rendering on Linux WebKit can regress when reintroducing remote fonts/CSP allowances; prefer local font assets. - Media URL handling between project load paths should remain consistent to avoid format-specific regressions (especially WAV/MP3 behavior). - Export pipeline changes must preserve caption modes (`none`, `sidecar`, `burn-in`) and audio enhancement behavior. +- WAV export uses `pcm_s16le` codec — only available for audio-only inputs (no video stream). Format selector conditionally shows WAV based on input file extension. +- `` elements in ExportDialog use `[color-scheme:dark]` to ensure readable native dropdown popups on Linux WebKit. ## Update Rules (Important) diff --git a/FEATURES.md b/FEATURES.md index be04e03..c373473 100644 --- a/FEATURES.md +++ b/FEATURES.md @@ -12,11 +12,11 @@ Features are grouped by priority. Check off items as they are implemented. - [x] [#012] **Low-confidence word highlighting** — words with `confidence < 0.6` (configurable in Settings) get an orange dotted underline. Hover shows exact confidence %. (2026-05-04) -- [x] [#018] **Audio normalization / loudness targeting** — "Normalize" button in Export panel with LUFS target selector (-14 YouTube, -16 Spotify, -23 Broadcast). Backend: FFmpeg two-pass `loudnorm`. (2026-05-04) +- [x] [#018] **Audio normalization / loudness targeting** — Integrated checkbox in Export panel with LUFS target selector (-14 YouTube, -16 Spotify, -23 Broadcast). Applied during export via FFmpeg `loudnorm` in the audio filter chain. No intermediate files. (2026-05-04) - [ ] [#024] **Export to transcript text / SRT only** — some users just want a clean `.txt` or `.srt` of the edited transcript without rendering video. -- [ ] [#023] **Batch silence removal** — full-file scan + remove all pauses above threshold in one click. Distinct from the manual trimmer above; this is a "fix the whole file" operation. +- [x] [#023] **Batch silence removal** — full-file scan + remove all pauses above threshold in one click. Implemented by `SilenceTrimmerPanel` + `POST /audio/detect-silence` (FFmpeg silencedetect). --- @@ -80,7 +80,7 @@ These aren't features to build — they're things to make more visible in the UI - [#029] AI filler word detection and removal (Ollama / OpenAI / Claude) - [#030] AI clip suggestions for social media - [#031] Noise reduction (DeepFilterNet or FFmpeg ANLMDN) -- [#032] Export: fast stream-copy or full reencode (MP4/MOV/WebM, 720p/1080p/4K) +- [#032] Export: fast stream-copy or full reencode (MP4/MOV/WebM/WAV, 720p/1080p/4K). WAV available for audio-only inputs. - [#033] Captions: SRT, VTT, ASS burn-in with font/color/position options - [#034] Speaker diarization - [#035] Project save / load (.aive JSON format)