mulmocast 2.0.8 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/actions/movie.d.ts +29 -2
- package/lib/actions/movie.js +243 -91
- package/lib/methods/mulmo_presentation_style.d.ts +4 -3
- package/lib/methods/mulmo_presentation_style.js +7 -1
- package/lib/types/schema.d.ts +202 -31
- package/lib/types/schema.js +27 -13
- package/lib/types/schema_video_filter.d.ts +423 -0
- package/lib/types/schema_video_filter.js +253 -0
- package/lib/types/type.d.ts +2 -1
- package/lib/utils/context.d.ts +11 -3
- package/lib/utils/ffmpeg_utils.js +2 -2
- package/lib/utils/provider2agent.d.ts +4 -0
- package/lib/utils/provider2agent.js +5 -0
- package/lib/utils/utils.js +24 -55
- package/lib/utils/video_filter.d.ts +7 -0
- package/lib/utils/video_filter.js +149 -0
- package/package.json +7 -7
- package/scripts/test/README.md +48 -48
- package/scripts/test/test_transition2.json +460 -0
- package/scripts/test/test_transition2.json~ +62 -0
- package/scripts/test/test_transition3.json +70 -0
- package/scripts/test/test_transition3.json~ +76 -0
- package/scripts/test/test_transition_no_audio.json +16 -0
- package/scripts/test/test_video_filters.json~ +227 -0
- package/scripts/test/test_wipe_simple.json +37 -0
- package/scripts/test/test_all_image.json~ +0 -45
- package/scripts/test/test_all_movie.json~ +0 -37
- package/scripts/test/test_all_tts.json~ +0 -83
- package/scripts/test/test_audio_gemini.json~ +0 -67
- package/scripts/test/test_genai2.json~ +0 -84
- package/scripts/test/test_genai_movie.json~ +0 -22
- package/scripts/test/test_kotodama.json~ +0 -0
- package/scripts/test/test_lipsync2.json~ +0 -24
- package/scripts/test/test_movie2.json~ +0 -40
- package/scripts/test/test_play_to_end.json~ +0 -65
package/lib/types/schema.d.ts
CHANGED
|
@@ -477,6 +477,62 @@ export declare const mulmoLipSyncParamsSchema: z.ZodObject<{
|
|
|
477
477
|
provider: z.ZodOptional<z.ZodString>;
|
|
478
478
|
model: z.ZodOptional<z.ZodString>;
|
|
479
479
|
}, z.core.$strip>;
|
|
480
|
+
export declare const mulmoTransitionSchema: z.ZodObject<{
|
|
481
|
+
type: z.ZodEnum<{
|
|
482
|
+
fade: "fade";
|
|
483
|
+
slideout_left: "slideout_left";
|
|
484
|
+
slideout_right: "slideout_right";
|
|
485
|
+
slideout_up: "slideout_up";
|
|
486
|
+
slideout_down: "slideout_down";
|
|
487
|
+
slidein_left: "slidein_left";
|
|
488
|
+
slidein_right: "slidein_right";
|
|
489
|
+
slidein_up: "slidein_up";
|
|
490
|
+
slidein_down: "slidein_down";
|
|
491
|
+
wipeleft: "wipeleft";
|
|
492
|
+
wiperight: "wiperight";
|
|
493
|
+
wipeup: "wipeup";
|
|
494
|
+
wipedown: "wipedown";
|
|
495
|
+
wipetl: "wipetl";
|
|
496
|
+
wipetr: "wipetr";
|
|
497
|
+
wipebl: "wipebl";
|
|
498
|
+
wipebr: "wipebr";
|
|
499
|
+
}>;
|
|
500
|
+
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
501
|
+
}, z.core.$strip>;
|
|
502
|
+
export declare const mulmoMovieParamsSchema: z.ZodObject<{
|
|
503
|
+
provider: z.ZodOptional<z.ZodEnum<{
|
|
504
|
+
[x: string]: string;
|
|
505
|
+
}>>;
|
|
506
|
+
model: z.ZodOptional<z.ZodString>;
|
|
507
|
+
fillOption: z.ZodOptional<z.ZodObject<{
|
|
508
|
+
style: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
509
|
+
aspectFit: "aspectFit";
|
|
510
|
+
aspectFill: "aspectFill";
|
|
511
|
+
}>>>;
|
|
512
|
+
}, z.core.$strip>>;
|
|
513
|
+
transition: z.ZodOptional<z.ZodObject<{
|
|
514
|
+
type: z.ZodEnum<{
|
|
515
|
+
fade: "fade";
|
|
516
|
+
slideout_left: "slideout_left";
|
|
517
|
+
slideout_right: "slideout_right";
|
|
518
|
+
slideout_up: "slideout_up";
|
|
519
|
+
slideout_down: "slideout_down";
|
|
520
|
+
slidein_left: "slidein_left";
|
|
521
|
+
slidein_right: "slidein_right";
|
|
522
|
+
slidein_up: "slidein_up";
|
|
523
|
+
slidein_down: "slidein_down";
|
|
524
|
+
wipeleft: "wipeleft";
|
|
525
|
+
wiperight: "wiperight";
|
|
526
|
+
wipeup: "wipeup";
|
|
527
|
+
wipedown: "wipedown";
|
|
528
|
+
wipetl: "wipetl";
|
|
529
|
+
wipetr: "wipetr";
|
|
530
|
+
wipebl: "wipebl";
|
|
531
|
+
wipebr: "wipebr";
|
|
532
|
+
}>;
|
|
533
|
+
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
534
|
+
}, z.core.$strip>>;
|
|
535
|
+
}, z.core.$strip>;
|
|
480
536
|
export declare const mulmoBeatSchema: z.ZodObject<{
|
|
481
537
|
speaker: z.ZodOptional<z.ZodString>;
|
|
482
538
|
text: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
@@ -619,6 +675,28 @@ export declare const mulmoBeatSchema: z.ZodObject<{
|
|
|
619
675
|
aspectFill: "aspectFill";
|
|
620
676
|
}>>>;
|
|
621
677
|
}, z.core.$strip>>;
|
|
678
|
+
transition: z.ZodOptional<z.ZodObject<{
|
|
679
|
+
type: z.ZodEnum<{
|
|
680
|
+
fade: "fade";
|
|
681
|
+
slideout_left: "slideout_left";
|
|
682
|
+
slideout_right: "slideout_right";
|
|
683
|
+
slideout_up: "slideout_up";
|
|
684
|
+
slideout_down: "slideout_down";
|
|
685
|
+
slidein_left: "slidein_left";
|
|
686
|
+
slidein_right: "slidein_right";
|
|
687
|
+
slidein_up: "slidein_up";
|
|
688
|
+
slidein_down: "slidein_down";
|
|
689
|
+
wipeleft: "wipeleft";
|
|
690
|
+
wiperight: "wiperight";
|
|
691
|
+
wipeup: "wipeup";
|
|
692
|
+
wipedown: "wipedown";
|
|
693
|
+
wipetl: "wipetl";
|
|
694
|
+
wipetr: "wipetr";
|
|
695
|
+
wipebl: "wipebl";
|
|
696
|
+
wipebr: "wipebr";
|
|
697
|
+
}>;
|
|
698
|
+
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
699
|
+
}, z.core.$strip>>;
|
|
622
700
|
speed: z.ZodOptional<z.ZodNumber>;
|
|
623
701
|
}, z.core.$strip>>;
|
|
624
702
|
soundEffectParams: z.ZodOptional<z.ZodObject<{
|
|
@@ -682,32 +760,6 @@ export declare const mulmoReplicateMovieModelSchema: z.ZodObject<{
|
|
|
682
760
|
[x: string]: string;
|
|
683
761
|
}>>;
|
|
684
762
|
}, z.core.$strict>;
|
|
685
|
-
export declare const mulmoTransitionSchema: z.ZodObject<{
|
|
686
|
-
type: z.ZodEnum<{
|
|
687
|
-
fade: "fade";
|
|
688
|
-
slideout_left: "slideout_left";
|
|
689
|
-
}>;
|
|
690
|
-
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
691
|
-
}, z.core.$strip>;
|
|
692
|
-
export declare const mulmoMovieParamsSchema: z.ZodObject<{
|
|
693
|
-
provider: z.ZodOptional<z.ZodEnum<{
|
|
694
|
-
[x: string]: string;
|
|
695
|
-
}>>;
|
|
696
|
-
model: z.ZodOptional<z.ZodString>;
|
|
697
|
-
fillOption: z.ZodOptional<z.ZodObject<{
|
|
698
|
-
style: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
699
|
-
aspectFit: "aspectFit";
|
|
700
|
-
aspectFill: "aspectFill";
|
|
701
|
-
}>>>;
|
|
702
|
-
}, z.core.$strip>>;
|
|
703
|
-
transition: z.ZodOptional<z.ZodObject<{
|
|
704
|
-
type: z.ZodEnum<{
|
|
705
|
-
fade: "fade";
|
|
706
|
-
slideout_left: "slideout_left";
|
|
707
|
-
}>;
|
|
708
|
-
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
709
|
-
}, z.core.$strip>>;
|
|
710
|
-
}, z.core.$strict>;
|
|
711
763
|
export declare const mulmoPresentationStyleSchema: z.ZodObject<{
|
|
712
764
|
$mulmocast: z.ZodObject<{
|
|
713
765
|
version: z.ZodLiteral<"1.1">;
|
|
@@ -787,10 +839,25 @@ export declare const mulmoPresentationStyleSchema: z.ZodObject<{
|
|
|
787
839
|
type: z.ZodEnum<{
|
|
788
840
|
fade: "fade";
|
|
789
841
|
slideout_left: "slideout_left";
|
|
842
|
+
slideout_right: "slideout_right";
|
|
843
|
+
slideout_up: "slideout_up";
|
|
844
|
+
slideout_down: "slideout_down";
|
|
845
|
+
slidein_left: "slidein_left";
|
|
846
|
+
slidein_right: "slidein_right";
|
|
847
|
+
slidein_up: "slidein_up";
|
|
848
|
+
slidein_down: "slidein_down";
|
|
849
|
+
wipeleft: "wipeleft";
|
|
850
|
+
wiperight: "wiperight";
|
|
851
|
+
wipeup: "wipeup";
|
|
852
|
+
wipedown: "wipedown";
|
|
853
|
+
wipetl: "wipetl";
|
|
854
|
+
wipetr: "wipetr";
|
|
855
|
+
wipebl: "wipebl";
|
|
856
|
+
wipebr: "wipebr";
|
|
790
857
|
}>;
|
|
791
858
|
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
792
859
|
}, z.core.$strip>>;
|
|
793
|
-
}, z.core.$
|
|
860
|
+
}, z.core.$strip>>>;
|
|
794
861
|
soundEffectParams: z.ZodDefault<z.ZodOptional<z.ZodObject<{
|
|
795
862
|
provider: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
796
863
|
[x: string]: string;
|
|
@@ -925,10 +992,25 @@ export declare const mulmoScriptSchema: z.ZodObject<{
|
|
|
925
992
|
type: z.ZodEnum<{
|
|
926
993
|
fade: "fade";
|
|
927
994
|
slideout_left: "slideout_left";
|
|
995
|
+
slideout_right: "slideout_right";
|
|
996
|
+
slideout_up: "slideout_up";
|
|
997
|
+
slideout_down: "slideout_down";
|
|
998
|
+
slidein_left: "slidein_left";
|
|
999
|
+
slidein_right: "slidein_right";
|
|
1000
|
+
slidein_up: "slidein_up";
|
|
1001
|
+
slidein_down: "slidein_down";
|
|
1002
|
+
wipeleft: "wipeleft";
|
|
1003
|
+
wiperight: "wiperight";
|
|
1004
|
+
wipeup: "wipeup";
|
|
1005
|
+
wipedown: "wipedown";
|
|
1006
|
+
wipetl: "wipetl";
|
|
1007
|
+
wipetr: "wipetr";
|
|
1008
|
+
wipebl: "wipebl";
|
|
1009
|
+
wipebr: "wipebr";
|
|
928
1010
|
}>;
|
|
929
1011
|
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
930
1012
|
}, z.core.$strip>>;
|
|
931
|
-
}, z.core.$
|
|
1013
|
+
}, z.core.$strip>>>;
|
|
932
1014
|
soundEffectParams: z.ZodDefault<z.ZodOptional<z.ZodObject<{
|
|
933
1015
|
provider: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
934
1016
|
[x: string]: string;
|
|
@@ -1128,6 +1210,28 @@ export declare const mulmoScriptSchema: z.ZodObject<{
|
|
|
1128
1210
|
aspectFill: "aspectFill";
|
|
1129
1211
|
}>>>;
|
|
1130
1212
|
}, z.core.$strip>>;
|
|
1213
|
+
transition: z.ZodOptional<z.ZodObject<{
|
|
1214
|
+
type: z.ZodEnum<{
|
|
1215
|
+
fade: "fade";
|
|
1216
|
+
slideout_left: "slideout_left";
|
|
1217
|
+
slideout_right: "slideout_right";
|
|
1218
|
+
slideout_up: "slideout_up";
|
|
1219
|
+
slideout_down: "slideout_down";
|
|
1220
|
+
slidein_left: "slidein_left";
|
|
1221
|
+
slidein_right: "slidein_right";
|
|
1222
|
+
slidein_up: "slidein_up";
|
|
1223
|
+
slidein_down: "slidein_down";
|
|
1224
|
+
wipeleft: "wipeleft";
|
|
1225
|
+
wiperight: "wiperight";
|
|
1226
|
+
wipeup: "wipeup";
|
|
1227
|
+
wipedown: "wipedown";
|
|
1228
|
+
wipetl: "wipetl";
|
|
1229
|
+
wipetr: "wipetr";
|
|
1230
|
+
wipebl: "wipebl";
|
|
1231
|
+
wipebr: "wipebr";
|
|
1232
|
+
}>;
|
|
1233
|
+
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1234
|
+
}, z.core.$strip>>;
|
|
1131
1235
|
speed: z.ZodOptional<z.ZodNumber>;
|
|
1132
1236
|
}, z.core.$strip>>;
|
|
1133
1237
|
soundEffectParams: z.ZodOptional<z.ZodObject<{
|
|
@@ -1340,10 +1444,25 @@ export declare const mulmoStudioSchema: z.ZodObject<{
|
|
|
1340
1444
|
type: z.ZodEnum<{
|
|
1341
1445
|
fade: "fade";
|
|
1342
1446
|
slideout_left: "slideout_left";
|
|
1447
|
+
slideout_right: "slideout_right";
|
|
1448
|
+
slideout_up: "slideout_up";
|
|
1449
|
+
slideout_down: "slideout_down";
|
|
1450
|
+
slidein_left: "slidein_left";
|
|
1451
|
+
slidein_right: "slidein_right";
|
|
1452
|
+
slidein_up: "slidein_up";
|
|
1453
|
+
slidein_down: "slidein_down";
|
|
1454
|
+
wipeleft: "wipeleft";
|
|
1455
|
+
wiperight: "wiperight";
|
|
1456
|
+
wipeup: "wipeup";
|
|
1457
|
+
wipedown: "wipedown";
|
|
1458
|
+
wipetl: "wipetl";
|
|
1459
|
+
wipetr: "wipetr";
|
|
1460
|
+
wipebl: "wipebl";
|
|
1461
|
+
wipebr: "wipebr";
|
|
1343
1462
|
}>;
|
|
1344
1463
|
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1345
1464
|
}, z.core.$strip>>;
|
|
1346
|
-
}, z.core.$
|
|
1465
|
+
}, z.core.$strip>>>;
|
|
1347
1466
|
soundEffectParams: z.ZodDefault<z.ZodOptional<z.ZodObject<{
|
|
1348
1467
|
provider: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
1349
1468
|
[x: string]: string;
|
|
@@ -1543,6 +1662,28 @@ export declare const mulmoStudioSchema: z.ZodObject<{
|
|
|
1543
1662
|
aspectFill: "aspectFill";
|
|
1544
1663
|
}>>>;
|
|
1545
1664
|
}, z.core.$strip>>;
|
|
1665
|
+
transition: z.ZodOptional<z.ZodObject<{
|
|
1666
|
+
type: z.ZodEnum<{
|
|
1667
|
+
fade: "fade";
|
|
1668
|
+
slideout_left: "slideout_left";
|
|
1669
|
+
slideout_right: "slideout_right";
|
|
1670
|
+
slideout_up: "slideout_up";
|
|
1671
|
+
slideout_down: "slideout_down";
|
|
1672
|
+
slidein_left: "slidein_left";
|
|
1673
|
+
slidein_right: "slidein_right";
|
|
1674
|
+
slidein_up: "slidein_up";
|
|
1675
|
+
slidein_down: "slidein_down";
|
|
1676
|
+
wipeleft: "wipeleft";
|
|
1677
|
+
wiperight: "wiperight";
|
|
1678
|
+
wipeup: "wipeup";
|
|
1679
|
+
wipedown: "wipedown";
|
|
1680
|
+
wipetl: "wipetl";
|
|
1681
|
+
wipetr: "wipetr";
|
|
1682
|
+
wipebl: "wipebl";
|
|
1683
|
+
wipebr: "wipebr";
|
|
1684
|
+
}>;
|
|
1685
|
+
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1686
|
+
}, z.core.$strip>>;
|
|
1546
1687
|
speed: z.ZodOptional<z.ZodNumber>;
|
|
1547
1688
|
}, z.core.$strip>>;
|
|
1548
1689
|
soundEffectParams: z.ZodOptional<z.ZodObject<{
|
|
@@ -1691,10 +1832,25 @@ export declare const mulmoPromptTemplateSchema: z.ZodObject<{
|
|
|
1691
1832
|
type: z.ZodEnum<{
|
|
1692
1833
|
fade: "fade";
|
|
1693
1834
|
slideout_left: "slideout_left";
|
|
1835
|
+
slideout_right: "slideout_right";
|
|
1836
|
+
slideout_up: "slideout_up";
|
|
1837
|
+
slideout_down: "slideout_down";
|
|
1838
|
+
slidein_left: "slidein_left";
|
|
1839
|
+
slidein_right: "slidein_right";
|
|
1840
|
+
slidein_up: "slidein_up";
|
|
1841
|
+
slidein_down: "slidein_down";
|
|
1842
|
+
wipeleft: "wipeleft";
|
|
1843
|
+
wiperight: "wiperight";
|
|
1844
|
+
wipeup: "wipeup";
|
|
1845
|
+
wipedown: "wipedown";
|
|
1846
|
+
wipetl: "wipetl";
|
|
1847
|
+
wipetr: "wipetr";
|
|
1848
|
+
wipebl: "wipebl";
|
|
1849
|
+
wipebr: "wipebr";
|
|
1694
1850
|
}>;
|
|
1695
1851
|
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1696
1852
|
}, z.core.$strip>>;
|
|
1697
|
-
}, z.core.$
|
|
1853
|
+
}, z.core.$strip>>>;
|
|
1698
1854
|
soundEffectParams: z.ZodDefault<z.ZodOptional<z.ZodObject<{
|
|
1699
1855
|
provider: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
1700
1856
|
[x: string]: string;
|
|
@@ -1823,10 +1979,25 @@ export declare const mulmoPromptTemplateFileSchema: z.ZodObject<{
|
|
|
1823
1979
|
type: z.ZodEnum<{
|
|
1824
1980
|
fade: "fade";
|
|
1825
1981
|
slideout_left: "slideout_left";
|
|
1982
|
+
slideout_right: "slideout_right";
|
|
1983
|
+
slideout_up: "slideout_up";
|
|
1984
|
+
slideout_down: "slideout_down";
|
|
1985
|
+
slidein_left: "slidein_left";
|
|
1986
|
+
slidein_right: "slidein_right";
|
|
1987
|
+
slidein_up: "slidein_up";
|
|
1988
|
+
slidein_down: "slidein_down";
|
|
1989
|
+
wipeleft: "wipeleft";
|
|
1990
|
+
wiperight: "wiperight";
|
|
1991
|
+
wipeup: "wipeup";
|
|
1992
|
+
wipedown: "wipedown";
|
|
1993
|
+
wipetl: "wipetl";
|
|
1994
|
+
wipetr: "wipetr";
|
|
1995
|
+
wipebl: "wipebl";
|
|
1996
|
+
wipebr: "wipebr";
|
|
1826
1997
|
}>;
|
|
1827
1998
|
duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
1828
1999
|
}, z.core.$strip>>;
|
|
1829
|
-
}, z.core.$
|
|
2000
|
+
}, z.core.$strip>>>;
|
|
1830
2001
|
soundEffectParams: z.ZodDefault<z.ZodOptional<z.ZodObject<{
|
|
1831
2002
|
provider: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
1832
2003
|
[x: string]: string;
|
package/lib/types/schema.js
CHANGED
|
@@ -279,10 +279,33 @@ export const mulmoLipSyncParamsSchema = z.object({
|
|
|
279
279
|
provider: z.string().optional(), // lip sync provider
|
|
280
280
|
model: z.string().optional(), // default: provider specific
|
|
281
281
|
});
|
|
282
|
-
const
|
|
282
|
+
export const mulmoTransitionSchema = z.object({
|
|
283
|
+
type: z.enum([
|
|
284
|
+
"fade",
|
|
285
|
+
"slideout_left",
|
|
286
|
+
"slideout_right",
|
|
287
|
+
"slideout_up",
|
|
288
|
+
"slideout_down",
|
|
289
|
+
"slidein_left",
|
|
290
|
+
"slidein_right",
|
|
291
|
+
"slidein_up",
|
|
292
|
+
"slidein_down",
|
|
293
|
+
"wipeleft",
|
|
294
|
+
"wiperight",
|
|
295
|
+
"wipeup",
|
|
296
|
+
"wipedown",
|
|
297
|
+
"wipetl",
|
|
298
|
+
"wipetr",
|
|
299
|
+
"wipebl",
|
|
300
|
+
"wipebr",
|
|
301
|
+
]),
|
|
302
|
+
duration: z.number().min(0).max(2).optional().default(0.3), // transition duration in seconds
|
|
303
|
+
});
|
|
304
|
+
export const mulmoMovieParamsSchema = z.object({
|
|
283
305
|
provider: text2MovieProviderSchema.optional(),
|
|
284
306
|
model: z.string().optional(),
|
|
285
307
|
fillOption: mulmoFillOptionSchema.optional(), // for movie.ts
|
|
308
|
+
transition: mulmoTransitionSchema.optional(), // for movie.ts
|
|
286
309
|
});
|
|
287
310
|
export const mulmoBeatSchema = z
|
|
288
311
|
.object({
|
|
@@ -295,7 +318,7 @@ export const mulmoBeatSchema = z
|
|
|
295
318
|
duration: z.number().optional().describe("Duration of the beat. Used only when the text is empty"),
|
|
296
319
|
imageParams: mulmoBeatImageParamsSchema.optional(), // beat specific parameters
|
|
297
320
|
audioParams: beatAudioParamsSchema.optional(), // beat specific parameters
|
|
298
|
-
movieParams:
|
|
321
|
+
movieParams: mulmoMovieParamsSchema
|
|
299
322
|
.extend({
|
|
300
323
|
speed: z.number().optional().describe("Speed of the video. 1.0 is normal speed. 0.5 is half speed. 2.0 is double speed."), // for movie.ts
|
|
301
324
|
})
|
|
@@ -329,29 +352,20 @@ export const mulmoCastCreditSchema = z
|
|
|
329
352
|
})
|
|
330
353
|
.strict();
|
|
331
354
|
export const text2HtmlImageProviderSchema = z.enum(htmlLLMProvider).default(defaultProviders.text2Html);
|
|
332
|
-
// NOTE: This is UI only. (until we figure out how to use it in
|
|
355
|
+
// NOTE: This is UI only. (until we figure out how to use it in movieParamsSchema)
|
|
333
356
|
export const mulmoGoogleMovieModelSchema = z
|
|
334
357
|
.object({
|
|
335
358
|
provider: z.literal("google"),
|
|
336
359
|
model: z.enum(provider2MovieAgent.google.models).optional(),
|
|
337
360
|
})
|
|
338
361
|
.strict();
|
|
339
|
-
// NOTE: This is UI only. (until we figure out how to use it in
|
|
362
|
+
// NOTE: This is UI only. (until we figure out how to use it in movieParamsSchema)
|
|
340
363
|
export const mulmoReplicateMovieModelSchema = z
|
|
341
364
|
.object({
|
|
342
365
|
provider: z.literal("replicate"),
|
|
343
366
|
model: z.enum(provider2MovieAgent.replicate.models).optional(),
|
|
344
367
|
})
|
|
345
368
|
.strict();
|
|
346
|
-
export const mulmoTransitionSchema = z.object({
|
|
347
|
-
type: z.enum(["fade", "slideout_left"]),
|
|
348
|
-
duration: z.number().min(0).max(2).optional().default(0.3), // transition duration in seconds
|
|
349
|
-
});
|
|
350
|
-
export const mulmoMovieParamsSchema = movieParamsSchema
|
|
351
|
-
.extend({
|
|
352
|
-
transition: mulmoTransitionSchema.optional(), // for movie.ts
|
|
353
|
-
})
|
|
354
|
-
.strict();
|
|
355
369
|
export const mulmoPresentationStyleSchema = z.object({
|
|
356
370
|
$mulmocast: mulmoCastCreditSchema,
|
|
357
371
|
canvasSize: mulmoCanvasDimensionSchema, // has default value
|