liuchen and Claude Sonnet 4.6
a1eb5bb28e
Fix watermark detection + S3 upload + NVENC color + task download on S3 failure
...
Docker Build and Push / check-secrets (push) Successful in 11s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- smart_detect.py: rewrite detect_static_regions using saturation-signature method
(high-sat logo frames vs no-logo frames diff) to handle animated/periodic watermarks
that break temporal-std approach; merge top-region boxes; add print debugging
- web_app.py: fix S3 upload (async chunked streaming, error visible in task log);
s3_failed flag keeps task downloadable even when S3 upload fails; add s3_failed
column to DB; download/stream endpoints allow s3_failed tasks
- web/index.html: show play/download buttons for s3_failed tasks; task sort by
created_at desc; watermark mode label update; isLocalDone() helper
- video_io.py: add -vf format=yuv420p before h264_nvenc to fix green video
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com >
2026-06-28 00:20:44 +08:00
liuchen and Claude Opus 4.8
c65ec20119
Rework watermark detection + remove STTN modes
...
Docker Build and Push / check-secrets (push) Successful in 5s
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Detection (smart_detect.py) — two complementary paths, both feed per-frame masks:
1. Faint/semi-transparent & scrolling text (e.g. "sjhs.pw"):
- per-frame white top-hat extracts thin bright strokes (OCR can't see these)
- connected-component count (>=3) keeps text, rejects solid bright objects
- track-linking across frames keeps stable-width persistent tracks,
drops erratic body/skin highlights
2. Colorful opaque logos (e.g. "黑料网 heiliao.com"):
- high-saturation (>150) AND low temporal-variance → static logo,
rejects moving skin and muted background art
- corner-snapping extends box to frame edge for full logo coverage
Key fixes:
- per-frame dict uses 1-based frame numbers to match the inpaint pipeline
(was 0-based → masks never applied → nothing removed)
- persistent watermarks require LaMa spatial inpaint; STTN temporal inpaint
has the watermark in its own reference frames so it can't remove them
Remove STTN modes entirely:
- INPAINT_MODE_MAP drops sttn-auto/sttn-det; unknown modes fall back to LaMa
- frontend algorithm selector: LaMa (default) / ProPainter / OpenCV
- platform-task & TaskCreate default inpaint_mode = lama
Validated: both "sjhs.pw" (scrolling text) and "黑料网" (color logo)
fully removed on preview with LaMa, no content damage.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-27 17:59:41 +08:00
liuchen and Claude Haiku 4.5
fabde9cf83
Fix S3 streaming upload + detect white/gray watermarks
...
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / check-secrets (push) Successful in 4s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Build Windows CPU / build (push) Has been cancelled
S3 upload:
- Replace read_bytes() (loads entire file into memory) with streaming SHA256
computation (8MB chunks) + httpx streaming PUT with Content-Length header
- Add detailed logging for each upload step to diagnose future failures
Watermark detection (smart_detect.py):
- Add Path B: brightness-diff detection for low-saturation watermarks like
white/gray text (e.g. 'sjhs.pw'). Compares mean brightness in first 10s
vs the rest of the video. Regions that are brighter in early frames AND
located in frame corners (top-left, top-right, etc.) are flagged.
- Merge Path A (saturation-based) + Path B (brightness-diff) results
- Fall back to global std method only if both paths find nothing
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 17:06:18 +08:00
liuchen and Claude Haiku 4.5
8b583a4b0e
Fix smart_detect: correct pos index, remove O(n²) loop, clean up
...
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / check-secrets (push) Successful in 5s
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- actual_pos_s[] tracks real timestamps per frame (was using positions[i]
which breaks when frames fail to read)
- Replace O(n²) np.array_equal logo frame matching with simple bool list
- Remove unused pos_set variable
- Fix docstring still mentioning '8s tail' after removing it
- All variables consistent: logo_gray_frames replaces logo_frames_gray
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 16:16:48 +08:00
liuchen and Claude Haiku 4.5
5cdc727207
SAM2: sample every second for the entire video, no exceptions
...
Docker Build and Push / check-secrets (push) Successful in 9s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
User requirement: correctness first, slow is acceptable.
- Remove the 120s dense + 8s tail split
- Full video sampled at 1 frame/second uniformly
- Analysis still uses 1/4 resolution for speed
- Coordinate scale restored to original resolution at the end
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 16:14:53 +08:00
liuchen and Claude Haiku 4.5
9094b3c888
Fix SAM2 missing early watermarks: always sample first 15 seconds
...
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / check-secrets (push) Failing after 3s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
For long videos (e.g. 1100s), uniform sampling started at ~23s, completely
missing watermarks that appear at 1s, 2s, 4s. Fix: always include dense
samples at 0.5, 1, 1.5, 2, 3, 4, 5, 7, 10, 15 seconds before the uniform
distribution, then deduplicate. Watermarks in the first 15s are now caught.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 16:11:29 +08:00
liuchen and Claude Haiku 4.5
b772ab3def
Add HH:MM:SS timestamp to each log line in detail and log modals
...
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / check-secrets (push) Successful in 4s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:54:32 +08:00
liuchen and Claude Haiku 4.5
f21f844f0f
Fix NVENC transcode: use system ffmpeg instead of bundled one
...
Docker Build and Push / check-secrets (push) Successful in 4s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Bundled ffmpeg at backend/ffmpeg/linux_x64/ffmpeg has no NVENC support.
System /usr/bin/ffmpeg does. Switch _ensure_h264 to use shutil.which('ffmpeg')
which resolves to /usr/bin/ffmpeg. Also log the actual NVENC error message
so future failures are visible in the task logs.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:52:21 +08:00
liuchen and Claude Haiku 4.5
0b2a3ec6e3
Auto-transcode AV1/HEVC videos to H.264 before processing
...
Docker Build and Push / check-secrets (push) Successful in 5s
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Root cause: FramePrefetcher._read_loop exits after cap.read() returns False
(AV1 decode failure), putting only one (False, None) sentinel in the queue.
If the caller reads past that, queue.get() blocks forever → deadlock.
Fix: _ensure_h264() checks if OpenCV can read the first frame. If not,
runs FFmpeg to transcode to H.264 NVENC (falls back to libx264 if NVENC
fails). Uses cached converted file on repeated attempts. Processing then
runs on the H.264 version which OpenCV can decode normally.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:48:12 +08:00
liuchen and Claude Haiku 4.5
8dc1276a7c
Show animated pulse bar when processing but progress still 0%
...
Docker Build and Push / check-secrets (push) Successful in 4s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
For large videos (e.g. 27508 frames), the first 275 frames only amount
to ~1% which rounds to 0 in integer percentage — so detect_pct stays 0
for a while even though the task is actively running. Instead of showing
static zero bars, display a pulsing indeterminate bar with an explanation
message so the user knows the task is alive.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:42:20 +08:00
liuchen and Claude Haiku 4.5
b4b9837dde
Fix platform worker task not appearing in list
...
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / check-secrets (push) Successful in 5s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Two root causes:
1. Task was created in memory but not broadcast to frontend until the first
update_task() call. If an exception happened before that, the task was
invisible forever. Fix: broadcast immediately after task creation.
2. run_in_executor had no try/except — any exception was silently swallowed
by asyncio.create_task with no log. Fix: wrap in try/except/finally,
log exception via logger.exception, mark task as error.
Also: get_event_loop() → get_running_loop() (correct API for async context).
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:30:52 +08:00
liuchen and Claude Haiku 4.5
b81f6afd0f
Fix detail modal progress bars not updating
...
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / check-secrets (push) Successful in 4s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Split openDetail (full render once) from renderDetail (partial update only).
- openDetail: renders static content + placeholder divs, loads logs once
- renderDetail (called on task_update): only patches status badge, phase bars,
duration, error, action buttons — does NOT replace innerHTML or reload logs
This eliminates the flickering and actually makes progress bars respond to
WebSocket updates.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:21:35 +08:00
liuchen and Claude Haiku 4.5
da119826f5
Reduce sidebar width by 25% (264px → 198px)
...
Docker Build and Push / check-secrets (push) Failing after 3s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:13:54 +08:00
liuchen and Claude Haiku 4.5
ea1784a10f
Fix detail modal: live progress + logs from DB
...
Docker Build and Push / check-secrets (push) Failing after 4s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- Track S.detailTaskId; on task_update via WebSocket, re-render detail
content if that task's modal is open (progress bars now update live)
- Detail logs: async load from DB via /api/tasks/{id}/logs, then append
real-time WebSocket logs on top (de-duplicated)
- Remove log button from task list (logs now in detail modal)
- Clear S.detailTaskId on modal close
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:12:56 +08:00
liuchen and Claude Haiku 4.5
27b4a2c1bf
Fix stuck 'processing' tasks after restart
...
Docker Build and Push / check-secrets (push) Failing after 4s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
On startup, tasks in downloading/processing state are interrupted (not
completed). Previously they were re-queued, causing the same task to be
processed multiple times after each restart.
Now: interrupted tasks are immediately marked as error with message
'服务重启,任务中断'. Only 'pending' tasks are re-queued.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:10:07 +08:00
liuchen and Claude Haiku 4.5
4d2fee2b1b
Remove download button from task list (moved to detail modal)
...
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / check-secrets (push) Successful in 5s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:05:03 +08:00
liuchen and Claude Haiku 4.5
50c6cf92ba
Show full datetime (Y-M-D H:M:S) in task list and detail
...
Docker Build and Push / check-secrets (push) Failing after 4s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 15:00:36 +08:00
Claude and Claude Sonnet 4.6
073a2a4fba
fix: worker 对接平台 watermark-task API
...
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / check-secrets (push) Failing after 4s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- claim/progress/result 路径改为 /openapi/watermark-task/*
- 认领字段 video_url → media_url(兼容旧字段)
- result status: passed→done,字段 output_path→output_url,error→error_message
- 新增 _upload_result_video:处理完后上传结果到平台(no_transcode 直传),获取 play_url 回传
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com >
2026-06-26 23:55:56 -07:00
liuchen and Claude Haiku 4.5
76f5d1c857
Fix timestamps missing after restart + align detail modal
...
Docker Build and Push / check-secrets (push) Successful in 6s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- Add started_at / completed_at columns to tasks table (were missing)
- Migration adds columns to existing DB without data loss
- _save_task_to_db now persists created_at / started_at / completed_at
- _load_tasks_from_db restores all three timestamp fields on startup
- Detail modal shows same created/started/elapsed layout as table row
with identical fmtTime / fmtDur helpers, live elapsed for in-progress tasks
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 14:48:58 +08:00
liuchen and Claude Haiku 4.5
d5468ec958
Set smart/watermark mode as default detection mode
...
Docker Build and Push / check-secrets (push) Failing after 3s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 14:42:34 +08:00
liuchen and Claude Haiku 4.5
a56a861d57
Add original video playback in task detail modal
...
Docker Build and Push / check-secrets (push) Failing after 3s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- New API endpoint GET /api/tasks/{id}/source-stream to stream cached source file
- Detail modal shows '▶ 原视频' button (always, when cache exists) and
'▶ 处理结果' button (only when done)
- playVideo() accepts type param ('source'|'output'), sets title and hides
download button for source files
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 14:37:27 +08:00
liuchen and Claude Haiku 4.5
abd5d0ce47
Fix worker logs not appearing + align settings form
...
Docker Build and Push / check-secrets (push) Successful in 5s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- Add _WorkerLogHandler that bridges Python logging → WorkerLogBuffer
(previously only StreamHandler was used, logs went to stdout but not
the buffer the frontend polls)
- Rewrite settings form: proper form-grid layout, form submit handler,
App Secret show/hide toggle, hints below number fields, footer save button
- workerStatus shows configured/unconfigured text instead of badge
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 14:34:07 +08:00
liuchen and Claude Haiku 4.5
e512a842e4
Align Worker logs page with df-autotest design
...
Docker Build and Push / check-secrets (push) Successful in 22s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- Extract Worker logs as separate nav page (page-worker-logs)
- Dark terminal style (#0b1320 bg, level-based colors: DEBUG/INFO/WARN/ERROR)
- Auto-poll every 2s via setInterval, starts on page enter, stops on leave
- Pause/Resume and Clear buttons, live line count
- Auto-scroll only when already at bottom
- Remove old embedded log panel from Settings page
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 14:29:39 +08:00
liuchen and Claude Haiku 4.5
273f03ee9f
Fix modal close buttons and add task duration column
...
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Docker Build and Push / check-secrets (push) Successful in 9s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- Fix JS crash: remove stale consoleBody scroll listener (element removed)
This was causing all nav/modal event bindings to silently fail
- Replace all data-close delegation with direct onclick handlers
- Add 耗时 column to task list (shows elapsed time, live for in-progress tasks)
- Persist task logs to SQLite task_logs table; add GET /api/tasks/{id}/logs
- Load .env via python-dotenv; remove platform env var fallbacks (UI-only)
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 14:16:29 +08:00
liuchen and Claude Haiku 4.5
b2dfbce962
Refactor VSR web: align UI with df-autotest, add auth and platform worker
...
Docker Build and Push / check-secrets (push) Failing after 4s
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- Redesign web/index.html to match df-autotest light theme (sidebar layout,
same token system, badges, panels, modals, toast notifications)
- Add simple cookie-based auth (ADMIN_PASSWORD env via .env)
- Add platform Worker (poll external platform for VSR tasks, sign requests
with HMAC same as df-autotest)
- Add Settings page for platform connection config (DB-stored, no env vars)
- Add worker log API with incremental polling
- Remove bottom console strip; add per-task log modal with SQLite persistence
- Task table: add created_at / started_at columns, move progress to detail modal
- Fix modal close buttons (direct onclick, remove unreliable data-close delegation)
- Load .env via python-dotenv on startup
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 14:03:50 +08:00
liuchen and Claude Haiku 4.5
693d394f55
Add GPU support and multi-threaded subtitle detection
...
Docker Build and Push / check-secrets (push) Successful in 30s
Docker Build and Push / build-and-push (cuda, 12.6) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 12.8) (push) Has been skipped
Docker Build and Push / build-and-push (directml, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cpu, latest) (push) Has been skipped
Docker Build and Push / build-and-push (cuda, 11.8) (push) Has been skipped
Build Windows CPU / build (push) Has been cancelled
Build Windows CUDA 11.8 / build (push) Has been cancelled
Build Windows CUDA 12.6 / build (push) Has been cancelled
Build Windows CUDA 12.8 / build (push) Has been cancelled
Build Windows DirectML / build (push) Has been cancelled
- Add gpu_id parameter to SubtitleDetect for GPU acceleration
- Implement multi-threaded frame scanning with thread-safe CUDA context
- Add smart_detect module and web application components
- Update .gitignore to exclude web cache
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-27 13:27:26 +08:00
天涯古巷
5b780e3186
Document solution for Mac 'bad CPU type' error
...
Added solution for Mac version error related to CPU type.
2026-04-11 20:18:49 +08:00
天涯古巷
577b64adad
Add Trendshift badge to README
...
Added a badge linking to the Trendshift repository.
2026-04-10 23:30:45 +08:00
天涯古巷
c63f6b52da
Update README.md
2026-04-10 23:30:00 +08:00
天涯古巷
b6644f3374
Add Trendshift badge to README
2026-04-10 23:12:45 +08:00
天涯古巷
c189f8368e
Add subtitle extraction feature and documentation link
...
Added a feature to extract original subtitles and link to video-subtitle-extractor.
2026-04-09 23:26:58 +08:00
天涯古巷
3f3b061a53
修复拖动进度条时偶现闪退:video_cap线程安全保护
...
修复拖动进度条时偶现闪退:video_cap线程安全保护
1.4.0
2026-04-09 07:20:00 +08:00
flavioy and Claude Opus 4.6
bdf333c510
修复拖动进度条时偶现闪退:video_cap线程安全保护
...
UI线程slider_changed与后台线程video_cap.release()并发访问
导致FFmpeg上下文use-after-free(SIGSEGV),添加互斥锁保护
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-09 07:18:35 +08:00
flavioy and Claude Opus 4.6
0bae013097
优化字幕检测算法、添加多语言翻译支持
...
- 自适应采样间隔:根据视频帧率调整(60fps+→4, 30fps+→3, 低帧率→2)
- filter_and_merge_intervals 复杂度从 O(n²) 优化为 O(n log n)
- detect_subtitle 区域过滤:单区域快速路径,多区域匹配即停
- 插值逻辑改用 zip 预计算 max_gap,更高效
- SubtitleDetectMode 枚举值改为英文key,通过翻译系统显示本地化名称
- 7种语言文件添加 SubtitleDetectMode 翻译(中/繁/英/日/韩/越/西)
- 旧配置值自动迁移兼容
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-09 00:17:01 +08:00
flavioy and Claude Opus 4.6
93d822d067
修复LAMA模式100%卡死:帧区间扩展超出视频总帧数导致FramePrefetcher死锁
...
- 限制字幕区间end不超过frame_count,防止内循环消费哨兵后外层永久阻塞
- LAMA批量推理改为mini-batch(4帧),避免GPU OOM
- 各inpaint模型空inpaint_area时返回原始帧
- FFmpeg子进程添加600s超时保护
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-08 23:34:53 +08:00
flavioy and Claude Opus 4.6
99788e875b
图片模式锁定LAMA算法、未选区时全屏处理
...
- 加载图片时自动锁定 inpaint 模式为 LAMA 并禁用下拉框
- 加载视频时恢复用户原始的 inpaint 模式选择
- 未选择字幕区域时自动使用全屏区域,不再报错失败
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-08 21:54:24 +08:00
flavioy and Claude Opus 4.6
9a2f3cc743
支持图片文件打开与处理、修复图片加载溢出问题
...
- 文件对话框添加图片格式过滤(jpg/png/bmp/webp/tiff等)
- 修复 cv2.VideoCapture 打开图片时 FRAME_COUNT 返回 INT64_MIN
导致 QSlider.setMaximum 溢出的问题,图片直接走 load_as_picture
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-08 21:41:08 +08:00
flavioy and Claude Opus 4.6
e801d58e80
GPU加速和批处理优化、更新README
...
- STTN Auto/Det: 统一 torch.no_grad 包裹,减少重复上下文切换开销
- STTN Auto: 添加 FramePrefetcher 帧预读取,根据 GPU 显存动态调整 batch size
- Lama Inpaint: 新增 _inpaint_batch 批量推理,多帧合并一次 GPU 推理
- ProPainter: copy.deepcopy 替换为浅拷贝,每个区域处理后 gc.collect
- HardwareAccelerator: 新增 get_available_vram_mb 显存查询方法
- README: 添加应用 Logo,同步英文版 README_en.md
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-08 00:17:50 +08:00
flavioy
8aac76030d
更新readme
2026-04-07 23:58:57 +08:00
flavioy
1c0e396801
更新demo
2026-04-07 23:54:16 +08:00
flavioy and Claude Opus 4.6
dbb7911b33
更新演示截图
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-07 23:30:10 +08:00
flavioy and Claude Opus 4.6
1ab2eb96cf
美化控制台输出:时间戳、颜色标签、线程安全优化
...
- PlainTextEdit 替换为 TextEdit 支持 HTML 富文本
- 每条日志添加 [HH:MM:SS] 时间戳
- 根据消息类型自动着色(错误红/成功绿/警告橙/信息蓝)
- 修复字幕检测模型无 ONNX providers 时输出空括号的问题
- HTML 特殊字符转义防止注入
- 清理 gui.py closeEvent 中多余的注释代码
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-07 23:29:16 +08:00
flavioy and Claude Opus 4.6
6c61ddc6b0
性能优化:帧采样、FFmpeg编码、帧预读取、消除冗余拷贝
...
- 字幕检测:每3帧采样一次OCR,中间帧插值填充,检测速度提升约3倍
- 视频编码:cv2.VideoWriter(mp4v) 替换为 FFmpeg libx264 管道编码,画质更好、体积更小
- 帧预读取:后台线程预解码视频帧,I/O 与模型推理重叠
- 消除 deepcopy:numpy 数组改用 .copy() 替代 copy.deepcopy,降低内存开销
- 清理冗余颜色空间转换中的 np.array() 包装
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-07 22:58:52 +08:00
flavioy and Claude Opus 4.6
70e669e9d4
升级 PaddleOCR 至 3.4.0,移除 PP-OCRv4 模型
...
- PaddleOCR 2.10.0 升级至 3.4.0,使用新的 TextDetection API 替代旧版 TextDetector
- V5 模型替换为 PaddleX 格式(inference.pdiparams + inference.yml)
- 移除 PP-OCRv4 模型(backend/models/V4),仅保留 PP-OCRv5
- 字幕检测选项重命名为"快速"和"精准"
- 清理 requirements.txt,移除 11 个未使用的依赖,补充缺失的依赖
- 更新设计素材
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-07 22:34:36 +08:00
flavioy and Claude Opus 4.6
d023ca775c
Merge eritpchy/dev: update Docker instructions to v1.4.0
...
Resolve README.md conflict by adopting dev branch's updated
Docker commands (v1.4.0 with python backend/main.py args).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-05 22:18:27 +08:00
天涯古巷
a577efd3e1
Update README.md
2025-12-03 08:40:41 +08:00
方耀
2bb2d54314
ganxie lyons
2025-06-26 14:43:41 +08:00
Jason
7025d3234b
升级版本号至1.4.0
2025-05-22 19:52:37 +08:00
Jason
21b0c31638
CPU版本硬件加速给予友好提示
2025-05-22 19:52:37 +08:00
Jason
50c89c1217
同时支持PP-OCRv4 PP-OCRv5模型
2025-05-22 19:52:36 +08:00