T25d Generative: sound and motion

AudioGenerationPlayer shows a generated sound's prompt, model and
length, a bar while it is made, then chat::AudioMessage to play it;
Regenerate and Download wait for it. TTSVoicePicker lists voices with a
sample to play, the chosen one washed with a check, tags dropping below
when narrow. VideoGenerationTimeline lays shots along their time under
a ruler, with posters, placeholders, a playhead and Extend.

AudioMessage's waveform is one Tab stop where Left and Right seek, and
it gives way at 280px. debug::ruler serves the timeline's ruler. A mask
shown to read no longer follows the pointer.
This commit is contained in:
ZacharyZhang-NY committed 2026-09-26 13:16:42 -04:00
1 parent 6bfd53baee
commit 2266b4e367
16 files changed
+1198 -19

No files matched your search

+1
View File
@@ -5,6 +5,7 @@ use crate::{forms, primitives::FocusNext, theme::Theme};
mod canvas;
mod results;
mod settings;
mod sound;
fn settle(cx: &mut VisualTestContext) {
cx.run_until_parked();