Commit Graph

55 Commits

Author SHA1 Message Date
Juha Jeronen
d51e4667a1 render time now excludes postprocessing time, reported separately
Total render time per frame = reported render time + reported postproc time
2024-01-20 02:44:24 +02:00
Juha Jeronen
f66aff2e4a wording 2024-01-18 23:07:39 +02:00
Juha Jeronen
e69f8c46d5 variable naming 2024-01-18 22:04:02 +02:00
Juha Jeronen
1b4badf5c6 support talkinghead/animator.json at the server side
Tested and working. Still need to update the docs.
2024-01-18 20:07:26 +02:00
Juha Jeronen
c15df0c43f we don't really need normpath here 2024-01-18 20:07:15 +02:00
Juha Jeronen
29d1fc330c add a simple crop filter (after posing since THA3 needs 512x512) 2024-01-18 16:42:26 +02:00
Juha Jeronen
500f4348af terminology: "fictitious frame" -> "normalized frame" 2024-01-18 02:46:01 +02:00
Juha Jeronen
4ccbda900c rate-limit microsway to 25 FPS 2024-01-17 14:53:02 +02:00
Juha Jeronen
cf2bb14dec reorganize comments 2024-01-17 14:52:51 +02:00
Juha Jeronen
5a513f18eb improve comments 2024-01-10 16:56:12 +02:00
Juha Jeronen
fea385475a warn about unknown user-provided settings (forward compat) 2024-01-10 16:55:54 +02:00
Juha Jeronen
8f14a1422b improve docstrings 2024-01-10 16:55:48 +02:00
Juha Jeronen
69054bce10 improve comment 2024-01-10 16:13:06 +02:00
Juha Jeronen
b08c5e24fa move animator defaults to beginning of file (easier to notice) 2024-01-10 16:11:08 +02:00
Juha Jeronen
c529f439aa refactor backend settings to allow making them customizable 2024-01-09 23:57:38 +02:00
Juha Jeronen
990c5b1205 add info message at launch 2024-01-09 23:57:04 +02:00
Juha Jeronen
51eac8afe2 target_fps will be modifiable, so rename it as lowercase 2024-01-09 22:32:33 +02:00
Juha Jeronen
54fad16a16 remove commented-out old blink probability check 2024-01-09 22:31:44 +02:00
Juha Jeronen
244c1a1675 debug, not info 2024-01-09 17:01:29 +02:00
Juha Jeronen
1cb650de07 make blink animation FPS-independent, too
Forgot the per-frame probability trigger. Now that's scaled appropriately, too.
2024-01-09 16:59:45 +02:00
Juha Jeronen
11ff18e52e Decouple animation speed (w.r.t. walltime) from render FPS
We only needed to add nonlinear step scaling to the pose interpolator; all other
animation drivers (blinking, talking, breathing) were already defined in terms
of wall time.
2024-01-09 10:09:42 +02:00
Juha Jeronen
e086bd53ac slightly improve end of talking animation 2024-01-09 00:11:29 +02:00
Juha Jeronen
afd8635d73 improve comments 2024-01-09 00:11:21 +02:00
Juha Jeronen
e94521251f API cleanliness 2024-01-08 14:46:09 +02:00
Juha Jeronen
5ea734b5a5 improve talking animation 2024-01-08 14:07:36 +02:00
Juha Jeronen
c215cef908 improve comments 2024-01-08 14:07:28 +02:00
Juha Jeronen
387553d2c4 remove outdated comment
As of
https://github.com/SillyTavern/SillyTavern/pull/1639
2024-01-06 03:52:09 +02:00
Juha Jeronen
35b9e14d99 change some log levels 2024-01-02 02:27:10 +02:00
Juha Jeronen
f9804dc30c add support for "/emote xxx" in talkinghead 2024-01-02 02:26:51 +02:00
Juha Jeronen
0b6c42a72c improve explanation 2023-12-31 03:08:22 +02:00
Juha Jeronen
e8dfc754ff target FPS: 25 2023-12-31 03:08:14 +02:00
Juha Jeronen
1b0746f327 first working frame sync that saves compute at low target FPS 2023-12-31 02:20:23 +02:00
Juha Jeronen
f134b5e448 wording 2023-12-31 01:49:58 +02:00
Juha Jeronen
5d5ccf14ef wording once more 2023-12-31 01:45:55 +02:00
Juha Jeronen
82115f60b5 use smallest possible critical section; wording 2023-12-31 01:41:35 +02:00
Juha Jeronen
4fc42fc899 improve per-frame time reporting; outline new strategy 2023-12-31 01:19:24 +02:00
Juha Jeronen
27e7133e18 much better frame timing
Render, encode, send in separate threads.
2023-12-30 03:13:17 +02:00
Juha Jeronen
f8ae43934e clarify 2023-12-29 00:17:22 +02:00
Juha Jeronen
5b852f785e refactor postprocessor into new module 2023-12-29 00:13:05 +02:00
Juha Jeronen
162d27ede6 overboard with postproc filters, vol. 2
Maybe that's all for now - next up, refactoring the postprocessor.
2023-12-28 04:13:23 +02:00
Juha Jeronen
bb6b424b13 go completely overboard with postproc filters, vol. 1 2023-12-27 03:33:08 +02:00
Juha Jeronen
f73fe3586f fix badvhs noise
Everything else in Torch takes (height, width); GaussianBlur takes (x, y).
2023-12-27 01:19:49 +02:00
Juha Jeronen
9201782f8a adjust badvhs settings 2023-12-27 01:19:40 +02:00
Juha Jeronen
b598bd668e add low-res analog video filter, update postproc TODO 2023-12-26 13:20:08 +02:00
Juha Jeronen
0710a6d669 improve postproc: add a bad VHS effect 2023-12-26 01:55:30 +02:00
Juha Jeronen
956e833e30 add some more postprocs for an even lofier look 2023-12-26 01:16:26 +02:00
Juha Jeronen
51077b51d3 comment accuracy 2023-12-26 01:16:14 +02:00
Juha Jeronen
6558edb97f Squashed commit of the following:
- Add experimental visual postproc chain (lo-fi scifi hologram)
  - TODO: not configurable yet, it's always on until I fix this
- Improve emotion preset loading logic
  - Even if an emotion preset JSON is missing, load the emotion from _defaults.json.
- Add blunder recovery (emotion preset factory reset) options to manual poser
- Fix factory-default preset name angry -> anger
- Manual poser: return nonzero exit code on init error
- Manual poser too now auto-installs THA3 models if needed
- Move TODO list into its own file, dump everything there
- Add a README for the new revised talkinghead
2023-12-25 02:08:10 +02:00
Juha Jeronen
b1489ae668 merge TODO lists into the one in app.py, remove done TODO item. 2023-12-22 11:45:51 +02:00
Juha Jeronen
ebbdc6cc88 talkinghead-next new features
- Rewrite sway animation (much more natural now)
 - History-free, rate-based formulation
 - Use all non-morph axes: head, neck, body
 - Every few seconds, randomize a new deviation from the target pose for all sway axes.
 - Assign this as the target pose, and let the pose interpolator perform the actual animation.
 - Micro-sway: add small dynamic noise (re-generated every frame) on top of sway target pose.
   - This makes the motion look more natural, especially once we are near the target pose.
- Add breathing animation
- When entering "confusion" emotion, allow blinking quickly in succession
- Add framerate limiter, currently hardcoded to send ~24 FPS
  - Reduces average GPU usage if the GPU renders faster than this.
2023-12-22 10:59:04 +02:00