mulmocast 2.6.17 → 2.6.19

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.
Files changed (32) hide show
  1. package/lib/methods/mulmo_presentation_style.d.ts +18 -0
  2. package/lib/methods/mulmo_presentation_style.js +23 -0
  3. package/lib/types/schema.d.ts +4359 -49
  4. package/lib/utils/context.d.ts +600 -0
  5. package/lib/utils/image_plugins/slide.js +7 -4
  6. package/package.json +5 -5
  7. package/scripts/test/cinematic_showcase.json +0 -1356
  8. package/scripts/test/golden_age_of_discovery.json +0 -270
  9. package/scripts/test/image-2.png +0 -0
  10. package/scripts/test/img_detector.png +0 -0
  11. package/scripts/test/img_higgs.png +0 -0
  12. package/scripts/test/img_lhc.png +0 -0
  13. package/scripts/test/macoro_anime_proto.json +0 -120
  14. package/scripts/test/minimum_beats_completed.json +0 -45
  15. package/scripts/test/test_all_elevenlabs_tts_model.json +0 -111
  16. package/scripts/test/test_all_gemini_tts_model.json +0 -433
  17. package/scripts/test/test_all_image.json +0 -49
  18. package/scripts/test/test_all_movie.json +0 -33
  19. package/scripts/test/test_captions_2.json +0 -31
  20. package/scripts/test/test_genai2.json +0 -25
  21. package/scripts/test/test_lipsync5.json +0 -66
  22. package/scripts/test/test_reference.json +0 -0
  23. package/scripts/test/test_slide_image_ref_gemini_en.json +0 -289
  24. package/scripts/test/test_slide_showcase_corporate.json +0 -497
  25. package/scripts/test/test_slide_showcase_creative.json +0 -545
  26. package/scripts/test/test_slide_showcase_minimal.json +0 -501
  27. package/scripts/test/test_slide_showcase_pop.json +0 -547
  28. package/scripts/test/test_slide_showcase_warm.json +0 -486
  29. package/scripts/test/test_wipe_simple.json +0 -37
  30. package/scripts/test/zenn_combined_example.json +0 -39
  31. package/scripts/test/zenn_layout_samples.json +0 -92
  32. package/scripts/test/zenn_markdown_demo.json +0 -79
@@ -1,433 +0,0 @@
1
- {
2
- "$mulmocast": {
3
- "version": "1.1"
4
- },
5
- "lang": "ja",
6
- "title": "All Gemini TTS Voice Models Test",
7
- "speechParams": {
8
- "speakers": {
9
- "Zephyr": {
10
- "provider": "gemini",
11
- "voiceId": "Zephyr"
12
- },
13
- "Puck": {
14
- "provider": "gemini",
15
- "voiceId": "Puck"
16
- },
17
- "Charon": {
18
- "provider": "gemini",
19
- "voiceId": "Charon"
20
- },
21
- "Kore": {
22
- "provider": "gemini",
23
- "voiceId": "Kore"
24
- },
25
- "Fenrir": {
26
- "provider": "gemini",
27
- "voiceId": "Fenrir"
28
- },
29
- "Leda": {
30
- "provider": "gemini",
31
- "voiceId": "Leda"
32
- },
33
- "Orus": {
34
- "provider": "gemini",
35
- "voiceId": "Orus"
36
- },
37
- "Aoede": {
38
- "provider": "gemini",
39
- "voiceId": "Aoede"
40
- },
41
- "Callirrhoe": {
42
- "provider": "gemini",
43
- "voiceId": "Callirrhoe"
44
- },
45
- "Autonoe": {
46
- "provider": "gemini",
47
- "voiceId": "Autonoe"
48
- },
49
- "Enceladus": {
50
- "provider": "gemini",
51
- "voiceId": "Enceladus"
52
- },
53
- "Iapetus": {
54
- "provider": "gemini",
55
- "voiceId": "Iapetus"
56
- },
57
- "Umbriel": {
58
- "provider": "gemini",
59
- "voiceId": "Umbriel"
60
- },
61
- "Algieba": {
62
- "provider": "gemini",
63
- "voiceId": "Algieba"
64
- },
65
- "Despina": {
66
- "provider": "gemini",
67
- "voiceId": "Despina"
68
- },
69
- "Erinome": {
70
- "provider": "gemini",
71
- "voiceId": "Erinome"
72
- },
73
- "Algenib": {
74
- "provider": "gemini",
75
- "voiceId": "Algenib"
76
- },
77
- "Rasalgethi": {
78
- "provider": "gemini",
79
- "voiceId": "Rasalgethi"
80
- },
81
- "Laomedeia": {
82
- "provider": "gemini",
83
- "voiceId": "Laomedeia"
84
- },
85
- "Achernar": {
86
- "provider": "gemini",
87
- "voiceId": "Achernar"
88
- },
89
- "Alnilam": {
90
- "provider": "gemini",
91
- "voiceId": "Alnilam"
92
- },
93
- "Schedar": {
94
- "provider": "gemini",
95
- "voiceId": "Schedar"
96
- },
97
- "Gacrux": {
98
- "provider": "gemini",
99
- "voiceId": "Gacrux"
100
- },
101
- "Pulcherrima": {
102
- "provider": "gemini",
103
- "voiceId": "Pulcherrima"
104
- },
105
- "Achird": {
106
- "provider": "gemini",
107
- "voiceId": "Achird"
108
- },
109
- "Zubenelgenubi": {
110
- "provider": "gemini",
111
- "voiceId": "Zubenelgenubi"
112
- },
113
- "Vindemiatrix": {
114
- "provider": "gemini",
115
- "voiceId": "Vindemiatrix"
116
- },
117
- "Sadachbia": {
118
- "provider": "gemini",
119
- "voiceId": "Sadachbia"
120
- },
121
- "Sadaltager": {
122
- "provider": "gemini",
123
- "voiceId": "Sadaltager"
124
- },
125
- "Sulafat": {
126
- "provider": "gemini",
127
- "voiceId": "Sulafat"
128
- }
129
- }
130
- },
131
- "beats": [
132
- {
133
- "speaker": "Zephyr",
134
- "text": "こんにちは、テストです。",
135
- "image": {
136
- "type": "textSlide",
137
- "slide": {
138
- "title": "Zephyr"
139
- }
140
- }
141
- },
142
- {
143
- "speaker": "Puck",
144
- "text": "こんにちは、テストです。",
145
- "image": {
146
- "type": "textSlide",
147
- "slide": {
148
- "title": "Puck"
149
- }
150
- }
151
- },
152
- {
153
- "speaker": "Charon",
154
- "text": "こんにちは、テストです。",
155
- "image": {
156
- "type": "textSlide",
157
- "slide": {
158
- "title": "Charon"
159
- }
160
- }
161
- },
162
- {
163
- "speaker": "Kore",
164
- "text": "こんにちは、テストです。",
165
- "image": {
166
- "type": "textSlide",
167
- "slide": {
168
- "title": "Kore"
169
- }
170
- }
171
- },
172
- {
173
- "speaker": "Fenrir",
174
- "text": "こんにちは、テストです。",
175
- "image": {
176
- "type": "textSlide",
177
- "slide": {
178
- "title": "Fenrir"
179
- }
180
- }
181
- },
182
- {
183
- "speaker": "Leda",
184
- "text": "こんにちは、テストです。",
185
- "image": {
186
- "type": "textSlide",
187
- "slide": {
188
- "title": "Leda"
189
- }
190
- }
191
- },
192
- {
193
- "speaker": "Orus",
194
- "text": "こんにちは、テストです。",
195
- "image": {
196
- "type": "textSlide",
197
- "slide": {
198
- "title": "Orus"
199
- }
200
- }
201
- },
202
- {
203
- "speaker": "Aoede",
204
- "text": "こんにちは、テストです。",
205
- "image": {
206
- "type": "textSlide",
207
- "slide": {
208
- "title": "Aoede"
209
- }
210
- }
211
- },
212
- {
213
- "speaker": "Callirrhoe",
214
- "text": "こんにちは、テストです。",
215
- "image": {
216
- "type": "textSlide",
217
- "slide": {
218
- "title": "Callirrhoe"
219
- }
220
- }
221
- },
222
- {
223
- "speaker": "Autonoe",
224
- "text": "こんにちは、テストです。",
225
- "image": {
226
- "type": "textSlide",
227
- "slide": {
228
- "title": "Autonoe"
229
- }
230
- }
231
- },
232
- {
233
- "speaker": "Enceladus",
234
- "text": "こんにちは、テストです。",
235
- "image": {
236
- "type": "textSlide",
237
- "slide": {
238
- "title": "Enceladus"
239
- }
240
- }
241
- },
242
- {
243
- "speaker": "Iapetus",
244
- "text": "こんにちは、テストです。",
245
- "image": {
246
- "type": "textSlide",
247
- "slide": {
248
- "title": "Iapetus"
249
- }
250
- }
251
- },
252
- {
253
- "speaker": "Umbriel",
254
- "text": "こんにちは、テストです。",
255
- "image": {
256
- "type": "textSlide",
257
- "slide": {
258
- "title": "Umbriel"
259
- }
260
- }
261
- },
262
- {
263
- "speaker": "Algieba",
264
- "text": "こんにちは、テストです。",
265
- "image": {
266
- "type": "textSlide",
267
- "slide": {
268
- "title": "Algieba"
269
- }
270
- }
271
- },
272
- {
273
- "speaker": "Despina",
274
- "text": "こんにちは、テストです。",
275
- "image": {
276
- "type": "textSlide",
277
- "slide": {
278
- "title": "Despina"
279
- }
280
- }
281
- },
282
- {
283
- "speaker": "Erinome",
284
- "text": "こんにちは、テストです。",
285
- "image": {
286
- "type": "textSlide",
287
- "slide": {
288
- "title": "Erinome"
289
- }
290
- }
291
- },
292
- {
293
- "speaker": "Algenib",
294
- "text": "こんにちは、テストです。",
295
- "image": {
296
- "type": "textSlide",
297
- "slide": {
298
- "title": "Algenib"
299
- }
300
- }
301
- },
302
- {
303
- "speaker": "Rasalgethi",
304
- "text": "こんにちは、テストです。",
305
- "image": {
306
- "type": "textSlide",
307
- "slide": {
308
- "title": "Rasalgethi"
309
- }
310
- }
311
- },
312
- {
313
- "speaker": "Laomedeia",
314
- "text": "こんにちは、テストです。",
315
- "image": {
316
- "type": "textSlide",
317
- "slide": {
318
- "title": "Laomedeia"
319
- }
320
- }
321
- },
322
- {
323
- "speaker": "Achernar",
324
- "text": "こんにちは、テストです。",
325
- "image": {
326
- "type": "textSlide",
327
- "slide": {
328
- "title": "Achernar"
329
- }
330
- }
331
- },
332
- {
333
- "speaker": "Alnilam",
334
- "text": "こんにちは、テストです。",
335
- "image": {
336
- "type": "textSlide",
337
- "slide": {
338
- "title": "Alnilam"
339
- }
340
- }
341
- },
342
- {
343
- "speaker": "Schedar",
344
- "text": "こんにちは、テストです。",
345
- "image": {
346
- "type": "textSlide",
347
- "slide": {
348
- "title": "Schedar"
349
- }
350
- }
351
- },
352
- {
353
- "speaker": "Gacrux",
354
- "text": "こんにちは、テストです。",
355
- "image": {
356
- "type": "textSlide",
357
- "slide": {
358
- "title": "Gacrux"
359
- }
360
- }
361
- },
362
- {
363
- "speaker": "Pulcherrima",
364
- "text": "こんにちは、テストです。",
365
- "image": {
366
- "type": "textSlide",
367
- "slide": {
368
- "title": "Pulcherrima"
369
- }
370
- }
371
- },
372
- {
373
- "speaker": "Achird",
374
- "text": "こんにちは、テストです。",
375
- "image": {
376
- "type": "textSlide",
377
- "slide": {
378
- "title": "Achird"
379
- }
380
- }
381
- },
382
- {
383
- "speaker": "Zubenelgenubi",
384
- "text": "こんにちは、テストです。",
385
- "image": {
386
- "type": "textSlide",
387
- "slide": {
388
- "title": "Zubenelgenubi"
389
- }
390
- }
391
- },
392
- {
393
- "speaker": "Vindemiatrix",
394
- "text": "こんにちは、テストです。",
395
- "image": {
396
- "type": "textSlide",
397
- "slide": {
398
- "title": "Vindemiatrix"
399
- }
400
- }
401
- },
402
- {
403
- "speaker": "Sadachbia",
404
- "text": "こんにちは、テストです。",
405
- "image": {
406
- "type": "textSlide",
407
- "slide": {
408
- "title": "Sadachbia"
409
- }
410
- }
411
- },
412
- {
413
- "speaker": "Sadaltager",
414
- "text": "こんにちは、テストです。",
415
- "image": {
416
- "type": "textSlide",
417
- "slide": {
418
- "title": "Sadaltager"
419
- }
420
- }
421
- },
422
- {
423
- "speaker": "Sulafat",
424
- "text": "こんにちは、テストです。",
425
- "image": {
426
- "type": "textSlide",
427
- "slide": {
428
- "title": "Sulafat"
429
- }
430
- }
431
- }
432
- ]
433
- }
@@ -1,49 +0,0 @@
1
- {
2
- "$mulmocast": {
3
- "version": "1.1"
4
- },
5
- "lang": "ja",
6
- "title": "All Image Providers Test",
7
- "canvasSize": {
8
- "width": 1024,
9
- "height": 1024
10
- },
11
- "beats": [
12
- {
13
- "speaker": "Presenter",
14
- "text": "こんにちは、テストです。",
15
- "imagePrompt": "美しい日本庭園",
16
- "imageParams": {
17
- "provider": "openai",
18
- "model": "gpt-image-1"
19
- }
20
- },
21
- {
22
- "speaker": "Presenter",
23
- "text": "こんにちは、テストです。",
24
- "imagePrompt": "美しい日本庭園",
25
- "imageParams": {
26
- "provider": "openai",
27
- "model": "gpt-image-1.5"
28
- }
29
- },
30
- {
31
- "speaker": "Presenter",
32
- "text": "こんにちは、テストです。",
33
- "imagePrompt": "美しい日本庭園",
34
- "imageParams": {
35
- "provider": "google",
36
- "model": "gemini-2.5-flash-image"
37
- }
38
- },
39
- {
40
- "speaker": "Presenter",
41
- "text": "こんにちは、テストです。",
42
- "imagePrompt": "美しい日本庭園",
43
- "imageParams": {
44
- "provider": "replicate",
45
- "model": "bytedance/seedream-4"
46
- }
47
- }
48
- ]
49
- }
@@ -1,33 +0,0 @@
1
- {
2
- "$mulmocast": {
3
- "version": "1.1"
4
- },
5
- "lang": "ja",
6
- "title": "All Movie Providers Test",
7
- "canvasSize": {
8
- "width": 1280,
9
- "height": 720
10
- },
11
- "beats": [
12
- {
13
- "speaker": "Presenter",
14
- "text": "こんにちは、テストです。",
15
- "moviePrompt": "美しい日本庭園を散歩するカメラワーク",
16
- "imageParams": {
17
- "provider": "google",
18
- "model": "veo-2.0-generate-001"
19
- },
20
- "duration": 5
21
- },
22
- {
23
- "speaker": "Presenter",
24
- "text": "こんにちは、テストです。",
25
- "moviePrompt": "美しい日本庭園を散歩するカメラワーク",
26
- "imageParams": {
27
- "provider": "replicate",
28
- "model": "bytedance/seedance-1-lite"
29
- },
30
- "duration": 5
31
- }
32
- ]
33
- }
@@ -1,31 +0,0 @@
1
- {
2
- "$mulmocast": {
3
- "version": "1.1"
4
- },
5
- "lang": "en",
6
- "title": "Caption Test",
7
- "speechParams": {
8
- "speakers": {
9
- "Presenter": {
10
- "voiceId": "shimmer",
11
- "displayName": {
12
- "en": "Presenter"
13
- }
14
- }
15
- }
16
- },
17
- "beats": [
18
- {
19
- "speaker": "Presenter",
20
- "id": "pingpongmov",
21
- "text": "This is a local movie with audio.",
22
- "image": {
23
- "type": "movie",
24
- "source": {
25
- "kind": "path",
26
- "path": "../../test/assets/hello.mp4"
27
- }
28
- }
29
- }
30
- ]
31
- }
@@ -1,25 +0,0 @@
1
- {
2
- "$mulmocast": { "version": "1.1" },
3
- "imageParams": {
4
- "provider": "google",
5
- "style": "<style>Photo realistic.</style>"
6
- },
7
- "canvasSize": {
8
- "width": 720,
9
- "height": 1280
10
- },
11
- "movieParams": {
12
- "provider": "google"
13
- },
14
- "lang": "en",
15
- "beats": [
16
- {
17
- "id": "gemini_3_pro_image_preview",
18
- "text": "image generated by gemini-3-pro-image-preview",
19
- "imagePrompt": "a woman is walking through a busy Tokyo street at night, she is wearing dark sunglasses",
20
- "imageParams": {
21
- "model": "gemini-3-pro-image-preview"
22
- }
23
- }
24
- ]
25
- }
@@ -1,66 +0,0 @@
1
- {
2
- "$mulmocast": {
3
- "version": "1.1",
4
- "credit": "closing"
5
- },
6
- "canvasSize": {
7
- "width": 1280,
8
- "height": 720
9
- },
10
- "speechParams": {
11
- "speakers": {
12
- "Presenter": {
13
- "displayName": {
14
- "en": "Presenter"
15
- },
16
- "voiceId": "shimmer",
17
- "provider": "openai"
18
- }
19
- }
20
- },
21
- "imageParams": {
22
- "provider": "openai",
23
- "images": {
24
- "woman": {
25
- "type": "image",
26
- "source": {
27
- "kind": "path",
28
- "path": "./image-2.png"
29
- }
30
- }
31
- }
32
- },
33
- "movieParams": {
34
- "provider": "replicate",
35
- "model": "bytedance/seedance-1-lite"
36
- },
37
- "soundEffectParams": {
38
- "provider": "replicate"
39
- },
40
- "lipSyncParams": {
41
- "provider": "replicate",
42
- "model": "bytedance/latentsync"
43
- },
44
- "audioParams": {
45
- "padding": 0.3,
46
- "introPadding": 1,
47
- "closingPadding": 0.8,
48
- "outroPadding": 1,
49
- "bgmVolume": 0.2,
50
- "audioVolume": 1,
51
- "suppressSpeech": false
52
- },
53
- "title": "リップシンク(generate contents)",
54
- "description": "mulmocast",
55
- "lang": "en",
56
- "beats": [
57
- {
58
- "speaker": "Presenter",
59
- "text": "You've had a challenging day. The evidence is clear: you need rest. You're more capable than you realize. Case closed. hello hello !!",
60
- "id": "c0e344e1-4ed7-4145-b7fc-c878c093cffd",
61
- "imagePrompt": "in the city",
62
- "moviePrompt": "never looking away from camera",
63
- "enableLipSync": true
64
- }
65
- ]
66
- }
File without changes