This website requires JavaScript.
7d4937e8b8
fix(ditto): v1.9.56 - Restore Blink Indices but Attenuate Squint (0.2) + Boost Anti-Tilt (0.3)
Hawk Lee
2026-01-23 00:35:40 +08:00
78f1fdd87d
fix(ditto): v1.9.55 - Revert to Legacy Blink Function (Original Code Logic) while keeping safe [11,13] mask
Hawk Lee
2026-01-23 00:24:00 +08:00
49cb9afcb9
feat(ditto): v1.9.54 - Add [Ditto Tilt Diag] logging needed for diagnosis
Hawk Lee
2026-01-23 00:22:12 +08:00
c678a2b665
fix(ditto): v1.9.53 - Fix Blink Twitch by removing squint indices; Keep Anti-Tilt
Hawk Lee
2026-01-23 00:19:17 +08:00
688d92fe52
feat(ditto): v1.9.52 - Add specialized Auto-Centering for Roll Drift
Hawk Lee
2026-01-23 00:11:45 +08:00
7133328f54
feat(ditto): v1.9.51 - Stronger Gravity (0.2) & Louder Sway (2.5deg)
Hawk Lee
2026-01-22 23:49:33 +08:00
a7a1ece946
feat(ditto): v1.9.50 - Fix Head Drift (Gravity Well) & Boost Idle Sway
Hawk Lee
2026-01-22 23:36:24 +08:00
403fcb4d26
feat(ditto): Positive-Only Mouth Breathing (v1.9.49) to fix Pursed Lips
Hawk Lee
2026-01-22 23:14:13 +08:00
9d44acce11
feat(ditto): Implement Mouth Micro-Motion (Breathing) during silence v1.9.48
Hawk Lee
2026-01-22 23:00:07 +08:00
17acb10e47
fix(ditto): Prevent UnboundLocalError for dataset_alpha when relax_on_silence=False v1.9.47
Hawk Lee
2026-01-22 22:41:50 +08:00
c936887aed
fix(ditto): Restore EMA Logic! Wire mouth_smoothing to MotionStitch instead of Audio2Motion v1.9.46
Hawk Lee
2026-01-22 22:28:08 +08:00
d937f688e3
feat(ditto): Add 'Custom (Manual)' option to resolve conflict with smo_k_d input v1.9.45
Hawk Lee
2026-01-22 22:18:05 +08:00
4125bbce45
feat(ditto): Upgrade mouth_smoothing to Float Blend (0.0/0.3/0.5/0.7) v1.9.44
Hawk Lee
2026-01-22 22:12:56 +08:00
aeb2ad027a
fix(ditto): Wire up mouth_smoothing parameter (was ignored) v1.9.43
Hawk Lee
2026-01-22 22:08:32 +08:00
d4d8103f9f
feat(ditto): Implement Auto-Disk Mode (Graph-Aware) v1.9.42; Clean up pose_stabilization
Hawk Lee
2026-01-22 21:58:56 +08:00
eb2dfb065c
fix(ditto): Rollback to v1.9.31 + Add Vitality Noise Injection (v1.9.41)
Hawk Lee
2026-01-22 21:32:11 +08:00
db6efd07c9
fix(video): Resolve UnboundLocalError and document zero-perf-loss Disk Mode
Hawk Lee
2026-01-22 19:35:28 +08:00
e7054c2476
fix: Robust filename pattern detection & logging for VideoCombine v1.9.30
Hawk Lee
2026-01-22 19:18:36 +08:00
b0a2bf38fa
fix: VideoCombine auto-detects filename pattern (fixes %06d vs %08d mismatch)
Hawk Lee
2026-01-22 19:11:37 +08:00
b3313cdade
perf: Maximize I/O with PNG Level 0 (No Compression)
Hawk Lee
2026-01-22 19:01:38 +08:00
f51c0f5e5b
fix: Set default filename_pattern to %08d for seamless Disk Mode integration
Hawk Lee
2026-01-22 18:53:01 +08:00
5b0a766908
perf: Optimize Disk Mode speed (Parallel I/O + Fast PNG Compression)
Hawk Lee
2026-01-22 18:51:42 +08:00
25557db8e0
fix: Define logger in aiia_ditto_nodes.py to prevent NameError
Hawk Lee
2026-01-22 18:39:12 +08:00
5d0ddb56eb
docs: Update BodySway documentation with frames_directory input and OOM-Safe workflow
Hawk Lee
2026-01-22 18:31:24 +08:00
5e5f7635c0
feat: Add frames_directory input/output to BodySway for OOM-safe disk mode
Hawk Lee
2026-01-22 18:30:18 +08:00
391b7967ae
docs: Add save_to_disk parameter and frames_dir output documentation
Hawk Lee
2026-01-22 18:21:39 +08:00
f22abda3b1
feat: Add save_to_disk mode for Ditto to prevent OOM on large frame counts
Hawk Lee
2026-01-22 18:19:30 +08:00
e6f97e233e
perf: Optimize Ditto frame→tensor conversion to avoid memory doubling
Hawk Lee
2026-01-22 18:13:00 +08:00
731779be36
perf: True incremental frame release in VideoCombine by converting tensor to list
Hawk Lee
2026-01-22 16:21:01 +08:00
b9fef53fbb
docs: Update README to reflect v1.9.21+ in-memory batch processing optimizations
Hawk Lee
2026-01-22 15:58:37 +08:00
e0569820ed
perf: Optimize AIIA_VideoCombine memory with incremental frame release
Hawk Lee
2026-01-22 15:51:27 +08:00
8207326979
perf: Aggressive BodySway memory optimization - smaller batches, explicit del, cuda.empty_cache
Hawk Lee
2026-01-22 15:40:37 +08:00
b505b521d7
perf: Optimize BodySway memory usage with pre-allocation and batch processing
Hawk Lee
2026-01-22 15:10:36 +08:00
2dd439b8e0
fix: Remove EMA reset on speech onset for smooth mouth opening transition
Hawk Lee
2026-01-22 14:24:25 +08:00
a1ab20588d
feat: BodySway v2 - Perlin noise, no Y translation, improved defaults (reduces dizziness)
Hawk Lee
2026-01-22 13:51:07 +08:00
cbad609b5e
fix: Limit BodySway seed to 32-bit for numpy compatibility
Hawk Lee
2026-01-22 12:54:44 +08:00
1188bd20e1
refactor: Use global valid region for consistent sway range across all frames
Hawk Lee
2026-01-22 12:50:41 +08:00
8c72c6d0c0
feat: Add per-frame runtime boundary check in BodySway to guarantee no black pixels
Hawk Lee
2026-01-22 12:48:10 +08:00
3294f2bbd6
fix: Account for rotation margin in BodySway to prevent black corners
Hawk Lee
2026-01-22 12:43:44 +08:00
09aa490f00
refactor: Simplify BodySway to use single crop_ratio parameter (auto-calc sway amplitude)
Hawk Lee
2026-01-22 12:41:37 +08:00
d25026b78e
docs: Add section 2.6 Body Sway Post-Processing documentation
Hawk Lee
2026-01-22 12:34:27 +08:00
0306b7abdc
feat: Add AIIA_BodySway node for simulating subtle body movement via crop/rotation
Hawk Lee
2026-01-22 12:29:37 +08:00
9bc12c460c
style: Use align attribute for better vertical alignment on GitHub
Hawk Lee
2026-01-22 12:16:24 +08:00
7f8d06e1cc
style: Combine logo and title on same line using HTML h1
Hawk Lee
2026-01-22 12:05:48 +08:00
c5874fa056
feat: Add 48x48 small logo for README header
Hawk Lee
2026-01-22 12:04:45 +08:00
8d9fdbd8a0
fix: Use absolute URL for logo in title for better compatibility
Hawk Lee
2026-01-22 11:11:49 +08:00
bb51d1af9a
style: Add scaled logo to README title
Hawk Lee
2026-01-22 11:10:46 +08:00
80317d47ae
chore: Update icon to use assets/logo.png, fix README formatting
Hawk Lee
2026-01-22 09:57:58 +08:00
81872d74e7
chore: Bump version to 1.9.10 (Soft Reset + mouth_smoothing docs)
Hawk Lee
2026-01-22 09:52:23 +08:00
aecda21338
docs: Add mouth_smoothing docs, remove duplicate mouth_amp entry
Hawk Lee
2026-01-22 09:51:19 +08:00
9778d2c654
refactor: Implement Soft Reset - only reset seed, let model continue from idle naturally
Hawk Lee
2026-01-22 09:33:40 +08:00
d6a4182edd
fix: Apply warping at correct frame offset (fuse_r2_s) instead of index 0
Hawk Lee
2026-01-22 01:37:24 +08:00
27800ce3f1
fix: Expand Prediction Warping to ALL kp dimensions (incl. expression) to prevent full reset snap
Hawk Lee
2026-01-22 01:16:07 +08:00
eb3227a78b
fix: Reset EMA on speech onset to prevent stale closed-mouth bleed
Hawk Lee
2026-01-22 01:11:43 +08:00
eff970828f
feat: Expose mouth_smoothing parameter (None/Light/Normal/Heavy)
Hawk Lee
2026-01-22 01:06:44 +08:00
50c628f3d6
feat: Add Expression Temporal Smoothing (EMA) to prevent inhumanly fast mouth movements
Hawk Lee
2026-01-22 01:02:28 +08:00
0cea1ba9d6
chore: Bump version to 1.9.3 (fix silence_release NameError)
Hawk Lee
2026-01-22 00:48:54 +08:00
cf3e706dbe
fix: NameError - use silence_release arg directly instead of kwargs
Hawk Lee
2026-01-22 00:46:40 +08:00
175288f6e9
chore: Bump version to 1.9.2; update description with Ditto performance claims
Hawk Lee
2026-01-22 00:45:37 +08:00
c1a70dee57
docs: Clarify crop_scale parameter behavior (FOV vs Detail tradeoff)
Hawk Lee
2026-01-22 00:37:43 +08:00
6246bac125
docs: Update Ditto Sampler docs with new silence_release and mouth_amp parameters
Hawk Lee
2026-01-22 00:36:11 +08:00
7eb6096c4e
feat: Add 'silence_release' parameter (Natural/Fast/Deep) to control VAD release speed
Hawk Lee
2026-01-22 00:33:34 +08:00
b03e838851
style: Tune VAD Release/Silence threshold to 0.8s (Natural Speed)
Hawk Lee
2026-01-22 00:26:26 +08:00
8cc1d5fcce
feat: Predictive VAD - Only trigger slow release for long silences (>1.4s) to ensure animation completion
Hawk Lee
2026-01-22 00:08:11 +08:00
436166b8c2
fix: Bridge short silence gaps (<0.32s) in VAD to prevent premature mouth closing
Hawk Lee
2026-01-22 00:02:40 +08:00
832c42c325
fix: Buffer expression history to prevent capturing closed mouth, force full attack strength
Hawk Lee
2026-01-21 23:45:19 +08:00
66c021e65f
style: Speed up VAD Attack (0.4s -> 0.08s) to fix onset delay, keep Release slow
Hawk Lee
2026-01-21 23:31:54 +08:00
1030be5086
fix: Robust handling of speech re-entry (Attack Phase) in MotionStitch
Hawk Lee
2026-01-21 22:50:38 +08:00
041fd03036
fix: Prevent instant mouth snap by freezing last speaking frame during VAD release
Hawk Lee
2026-01-21 22:44:37 +08:00
0bdd1c165c
style: Smooth out VAD envelope (slower attack/release) to prevent mouth snapping
Hawk Lee
2026-01-21 22:42:01 +08:00
a803a2d9ec
revert: Disable Head Pose Relaxation to restore natural drift/vitality
Hawk Lee
2026-01-21 22:38:31 +08:00
038a10125a
feat: Enable Full Head Pose Relaxation (Expressions + Pose) on Silence
Hawk Lee
2026-01-21 22:29:29 +08:00
c1cb479775
fix: Replace Smooth Reset with Pre-Fuse Warping (fixes NameError)
Hawk Lee
2026-01-21 22:13:00 +08:00
0e5e6e8324
fix: Correct Smooth Reset start index to cover fuse overlap and use Cubic interpolation
Hawk Lee
2026-01-21 21:49:45 +08:00
e13e9568ea
chore: Add debug logging to Audio2Motion to trace Smooth Reset logic
Hawk Lee
2026-01-21 21:43:54 +08:00
3a5bf1a1d5
fix: Correct order of setup call in generate to fix UnboundLocalError and ensure blink_amp is passed
Hawk Lee
2026-01-21 21:31:48 +08:00
88be1ba587
fix: Remove duplicate argument in MotionStitch.setup causing SyntaxError
Hawk Lee
2026-01-21 21:26:58 +08:00
b1df5fcd5b
fix: Add DITTO_AVAILABLE check to load_model to handle import failures gracefully
Hawk Lee
2026-01-21 21:23:42 +08:00
a35a069261
feat: Implement Smooth Reset (Pose Blending) to fix head snap at speech onset
Hawk Lee
2026-01-21 21:20:00 +08:00
b773ee0169
docs: Update README with accurate blink frequency (90-150f) and double-blink status
Hawk Lee
2026-01-21 21:17:54 +08:00
04538bebe1
feat: Add blink_amp parameter to control eye closure intensity
Hawk Lee
2026-01-21 21:16:14 +08:00
73244a7336
fix: Revert Partial Reset to recover lip sync accuracy (sacrificing smooth head motion)
Hawk Lee
2026-01-21 20:51:26 +08:00
12c56c0754
fix: Implement Partial Reset (preserve Pose, reset Exp/Seed) to prevent head snap at speech onset
Hawk Lee
2026-01-21 20:40:46 +08:00
7f0ac8e6a8
feat: Tune blink rates to slower human average (10-20bpm / 4-6s interval)
Hawk Lee
2026-01-21 18:12:49 +08:00
b7da1a19cd
fix: Set blink hold duration to fixed 1 frame
Hawk Lee
2026-01-21 17:57:05 +08:00
cb413354ed
feat: Disable Double Blink by default and confirm blink hold duration
Hawk Lee
2026-01-21 17:55:37 +08:00
eb96aaa966
style: Reduce blink hold duration to 1-3 frames for sharper blink
Hawk Lee
2026-01-21 17:47:34 +08:00
0f75bdde56
feat: Implement Blink Hold logic to extend closed-eye duration for more natural realism
Hawk Lee
2026-01-21 17:24:30 +08:00
ae30694c74
style: Refine blink parameters (lower double blink prob, increase gap) for smoother look
Hawk Lee
2026-01-21 17:21:25 +08:00
a6faa43b3a
feat: Implement Dynamic Blink Rate based on VAD (Fast during speech, Slow during silence)
Hawk Lee
2026-01-21 17:16:55 +08:00
5aaf9d8bb0
feat: Tune Normal Blink rate to 50-85 frames (~23bpm) to better match human speaking frequency
Hawk Lee
2026-01-21 17:14:06 +08:00
75ef9cb90c
docs: Update Ditto Sampler docs with Seed, Double Blink, and Exact Onset Alignment details
Hawk Lee
2026-01-21 17:09:53 +08:00
a751dd3ac6
feat: Implement Double Blink logic with randomized interval for natural eye motion
Hawk Lee
2026-01-21 17:08:31 +08:00
773477d768
fix: Initialize self.seed in ComfyStreamSDK.setup explicitly to avoid AttributeError
Hawk Lee
2026-01-21 16:55:30 +08:00
7dfd9197cb
fix: Add seed input to AIIA_DittoSampler node definition to resolve NameError
Hawk Lee
2026-01-21 16:51:39 +08:00
5320d5048b
fix: Implement RNG Seed Reset on Speech Onset to ensure diffusion noise consistency and lip sync accuracy
Hawk Lee
2026-01-21 16:44:50 +08:00
bf2958b021
fix: Initialize do_reset default value to prevent UnboundLocalError
Hawk Lee
2026-01-21 16:19:36 +08:00
aeb28f246d
fix: Implement Exact Onset Alignment via Variable Step Length to perfectly mimic Clean Start conditions and eliminate jitter
Hawk Lee
2026-01-21 16:03:07 +08:00
a607adaca0
fix: Reset clip_idx to 0 on onset reset to enforce exact First Segment conditions
Hawk Lee
2026-01-21 15:29:26 +08:00
407ae60571
fix: Implement Duration-Based Onset Reset (min 15 frames) to avoid over-resetting on breaths
Hawk Lee
2026-01-21 14:49:07 +08:00