3a7f0bf677
refactor: scope rehearser io
2026-09-04 12:30:13 +02:00
a202230654
refactor: scope rehearser playback
2026-09-04 12:29:19 +02:00
cc4fc4ae2e
refactor: scope audiobook state modules
2026-09-04 12:26:21 +02:00
302dbe1279
refactor: scope pure frontend leaves
2026-09-04 12:20:33 +02:00
d32985256d
docs: close incremental p1 audit
2026-09-04 12:14:47 +02:00
cefd4bd494
refactor: extract rehearser training mode
2026-09-04 12:12:11 +02:00
0c7cc04643
refactor: extract rehearser recording
2026-09-04 12:10:00 +02:00
ba7b3115b9
refactor: extract audiobook preview export
2026-09-04 12:05:50 +02:00
76421dfe88
refactor: extract audiobook casting pipeline
2026-09-04 12:04:05 +02:00
eaf2f29d62
refactor: extract rehearser io
2026-09-04 12:01:38 +02:00
f97fd60e43
refactor: extract rehearser playback
2026-09-04 11:59:09 +02:00
e096b3e529
refactor: wire audiobook namespace APIs
2026-09-04 11:54:56 +02:00
6f2c0b7b3d
refactor: extract audiobook cast view
2026-09-04 11:53:04 +02:00
262e37fffd
refactor: extract rehearser voice matching
2026-09-04 11:47:51 +02:00
4c8022e8aa
refactor: extract audiobook stylesheet
2026-09-04 11:44:55 +02:00
065445a20a
refactor: extract rehearser stylesheet
2026-09-04 11:42:43 +02:00
eb008475ed
refactor: extract rehearser cast renderer
2026-09-04 11:39:45 +02:00
ae9df4f7f0
feat: distinguish provider configuration and health
2026-09-04 11:35:52 +02:00
7c14f41cb9
refactor: extract audiobook speaker normalization
2026-09-04 11:32:20 +02:00
0d1299b19c
refactor: extract audiobook cast cleanup
2026-09-04 11:30:12 +02:00
1951ce0646
refactor: extract audiobook dialogue merging
2026-09-04 11:27:49 +02:00
41349867a1
refactor: extract audiobook cast normalization
2026-09-04 11:25:52 +02:00
0876527554
refactor: extract audiobook quote segmentation
2026-09-04 11:22:15 +02:00
2fde0a176d
refactor: extract rehearser voice design
2026-09-04 11:19:01 +02:00
d43959728d
refactor: split voice design styles
2026-09-04 11:16:05 +02:00
de099d30c5
refactor: split background job styles
2026-09-04 11:13:36 +02:00
8d9a172993
refactor: split resource diagnostics styles
2026-09-04 11:10:43 +02:00
c0ac5dd775
refactor: extract audiobook cast serialization
2026-09-04 11:08:49 +02:00
d3bc806f33
refactor: extract rehearser training comparison
2026-09-04 11:06:23 +02:00
d613591526
refactor: extract rehearser cast controls
2026-09-04 11:04:13 +02:00
ed3b2d42cd
refactor: publish feature APIs through TTVC
2026-09-04 11:00:22 +02:00
e2e20fa89f
feat: add request correlation diagnostics
2026-09-04 10:58:46 +02:00
66ebd1a8b8
refactor: extract audiobook parsing primitives
2026-09-04 10:56:31 +02:00
0bfb6d694b
refactor: extract rehearser voice picker
2026-09-04 10:54:21 +02:00
e98c5ffe33
refactor: extract rehearser stage controls
2026-09-04 10:52:05 +02:00
b1374c50a0
fix: synchronize frontend release cache version
2026-09-04 10:36:44 +02:00
fe807d1682
Release v1.22.2
2026-09-03 16:12:02 +02:00
2d5ecea53a
Release completed voice preview blob URLs
2026-08-19 22:05:31 +02:00
25264517a9
Clean up converted upload sources
2026-08-19 18:41:31 +02:00
e452b0f000
Write voice metadata atomically
2026-08-19 18:39:11 +02:00
d3fc2d44ae
Add configurable web container memory limits
2026-08-19 18:35:34 +02:00
fd8f545d16
Optimize offscreen character table rendering
2026-08-19 18:35:10 +02:00
08a6544661
Lazy load character artwork
2026-08-19 17:12:45 +02:00
aa15265021
Show generated voice file and preview in character profiles
2026-08-19 17:12:02 +02:00
8cc92ca02b
Add low-memory client concurrency guard
2026-08-19 17:01:06 +02:00
388fd601ab
Release v1.20.38
2026-08-19 16:36:26 +02:00
189ca51e47
Release v1.20.37
2026-08-19 16:04:30 +02:00
62274a17fc
Improve Studio casting and character voice design (v1.20.36)
2026-08-15 13:20:38 +02:00
35cb21ad70
Reject phantom speakers invented from German noun phrases (v1.20.35)
...
The caster emits fragments of noun phrases as characters — "in seinem Inneren"
-> Inneren, "die Hand" -> Hand, "mein Geliebter" -> Geliebten, "der Wind" ->
Wind. Each became a cast entry with its own voice while the real speaker's line
was lost to a phantom; measured against a hand-corrected book this was a large
part of why a fresh cast produced 73 speakers where the human had 62.
Such lines are now reset to Unknown — visibly unresolved and still recoverable
by the repair passes, rather than silently wrong. Applied to a real cast:
5 phantoms removed, 73 -> 68 speakers.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-12 16:52:27 +02:00
4d3e4f8e7c
Consolidate speaker labels after recast passes too, not only after casting (v1.20.34)
...
Consolidation ran only at cast completion, but recast/repair passes assign
speakers of their own and can re-introduce the variants just removed —
confirmed live: a freshly cast book gained "Alrik" alongside "Alrik von
Blautann" during auto-repair, splitting one character across two voices again.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-12 14:57:56 +02:00