diff --git a/voicevox-remotion-template/src/data/pizza-oven-project-01/script.ts b/voicevox-remotion-template/src/data/pizza-oven-project-01/script.ts index ac1b665..ec10e00 100644 --- a/voicevox-remotion-template/src/data/pizza-oven-project-01/script.ts +++ b/voicevox-remotion-template/src/data/pizza-oven-project-01/script.ts @@ -1,5 +1,5 @@ import {getStandeeSet, type AvatarDefinition} from "../../standee-sets"; -import type {VQStillEvent} from "../../lib/VQRemotionLib"; +import type {VQStillEvent, VQWaitEvent} from "../../lib/VQRemotionLib"; export type VoicevoxVoice = Readonly<{ speakerName: string; @@ -47,8 +47,9 @@ }>; export type StillEvent = VQStillEvent; +export type WaitEvent = VQWaitEvent; -export type TimelineEvent = SpeechEvent | StillEvent; +export type TimelineEvent = SpeechEvent | StillEvent | WaitEvent; export const say = ( id: string, @@ -74,6 +75,12 @@ ...options, }); +export const wait = (id: string, durationSeconds: number): WaitEvent => ({ + type: "wait", + id, + durationSeconds, +}); + export const timeline = [ say("pizza-oven-project-01-sayo-001", "sayo", "こんにちは。小夜です。"), say("pizza-oven-project-01-sayo-002", "sayo", "ピザって美味しいじゃないですか。"), @@ -86,9 +93,8 @@ fit: "cover", } ), - say("pizza-oven-project-01-sayo-004", "sayo", "ピザ窯を。", { - durationSeconds: 3, - }), + say("pizza-oven-project-01-sayo-004", "sayo", "ピザ窯を。"), + wait("pizza-oven-project-01-wait-001", 1), say("pizza-oven-project-01-sayo-005", "sayo", "まずはblender上で、耐熱レンガの寸法を元に積み方を設計することにしました。"), ] satisfies TimelineEvent[]; diff --git a/voicevox-remotion-template/src/lib/VQRemotionLib/types.ts b/voicevox-remotion-template/src/lib/VQRemotionLib/types.ts index a14d475..99ad2df 100644 --- a/voicevox-remotion-template/src/lib/VQRemotionLib/types.ts +++ b/voicevox-remotion-template/src/lib/VQRemotionLib/types.ts @@ -72,6 +72,12 @@ opacity?: number; }>; +export type VQWaitEvent = Readonly<{ + type: "wait"; + id: string; + durationSeconds: number; +}>; + export type VQMouthResolverContext = Readonly<{ characterId: CharacterId; diff --git a/voicevox-remotion-template/src/pizzaOvenProject01.ts b/voicevox-remotion-template/src/pizzaOvenProject01.ts index fe5b375..4651533 100644 --- a/voicevox-remotion-template/src/pizzaOvenProject01.ts +++ b/voicevox-remotion-template/src/pizzaOvenProject01.ts @@ -82,7 +82,7 @@ const TimelineOverlay: React.FC> = ({ event, }) => { - if (event.type === "still") { + if (event.type !== "say") { return null; }