feat(player): add ASR/YOLO overlays, zoom, and text rendering

- Add TTF text rendering for subtitles and YOLO labels
- Implement ASR subtitle display with background
- Add YOLO bbox rendering with class labels
- Add zoom in/out (+/-) and reset (Backquote)
- Add frame/time info display
- Fix YOLO metadata parsing for actual file format
- Add Shift+Arrow for 1-second seek
This commit is contained in:
accusys
2026-03-19 01:33:46 +08:00
parent 0b75987fd0
commit 5587e6a67a
5272 changed files with 103480 additions and 45 deletions

View File

@@ -0,0 +1,20 @@
/Users/accusys/momentry_playground/target/release/deps/zopfli-403706526885f4b3.d: /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/lib.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/blocksplitter.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/cache.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/deflate.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/gzip.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/hash.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/iter.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/katajainen.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/lz77.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/squeeze.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/symbols.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/tree.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/util.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/zlib.rs
/Users/accusys/momentry_playground/target/release/deps/libzopfli-403706526885f4b3.rlib: /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/lib.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/blocksplitter.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/cache.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/deflate.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/gzip.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/hash.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/iter.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/katajainen.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/lz77.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/squeeze.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/symbols.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/tree.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/util.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/zlib.rs
/Users/accusys/momentry_playground/target/release/deps/libzopfli-403706526885f4b3.rmeta: /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/lib.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/blocksplitter.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/cache.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/deflate.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/gzip.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/hash.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/iter.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/katajainen.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/lz77.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/squeeze.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/symbols.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/tree.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/util.rs /Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/zlib.rs
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/lib.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/blocksplitter.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/cache.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/deflate.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/gzip.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/hash.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/iter.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/katajainen.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/lz77.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/squeeze.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/symbols.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/tree.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/util.rs:
/Users/accusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zopfli-0.8.3/src/zlib.rs: