makaron-cli 0.14.7 → 0.14.8
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/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +13 -3
- package/README.md +6 -4
- package/bin/makaron.mjs +13 -7
- package/package.json +1 -1
- package/skills/makaron/SKILL.md +6 -4
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "makaron-cli",
|
|
3
|
-
"version": "0.14.
|
|
3
|
+
"version": "0.14.8",
|
|
4
4
|
"description": "Give Codex a creative agent. Pass complete creative requests and source media to Makaron Chat.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Versa AI",
|
|
@@ -9,7 +9,14 @@
|
|
|
9
9
|
},
|
|
10
10
|
"homepage": "https://www.makaron.app/agent",
|
|
11
11
|
"license": "MIT",
|
|
12
|
-
"keywords": [
|
|
12
|
+
"keywords": [
|
|
13
|
+
"creative-production",
|
|
14
|
+
"image-editing",
|
|
15
|
+
"video-generation",
|
|
16
|
+
"music",
|
|
17
|
+
"agent",
|
|
18
|
+
"cli"
|
|
19
|
+
],
|
|
13
20
|
"skills": "./skills/",
|
|
14
21
|
"interface": {
|
|
15
22
|
"displayName": "Makaron Creative Studio",
|
|
@@ -17,7 +24,10 @@
|
|
|
17
24
|
"longDescription": "Pass any complete creative request and source media to Makaron Chat. Makaron plans and produces images, video, music, and motion design in a persistent project that a human can continue editing in makaron.app.",
|
|
18
25
|
"developerName": "Versa AI",
|
|
19
26
|
"category": "Creative Tools",
|
|
20
|
-
"capabilities": [
|
|
27
|
+
"capabilities": [
|
|
28
|
+
"Read",
|
|
29
|
+
"Write"
|
|
30
|
+
],
|
|
21
31
|
"websiteURL": "https://www.makaron.app/agent",
|
|
22
32
|
"privacyPolicyURL": "https://www.makaron.app/privacy",
|
|
23
33
|
"defaultPrompt": [
|
package/README.md
CHANGED
|
@@ -386,7 +386,7 @@ npx makaron-cli video create --script "Shot 1 (5s): <<<image_1>>> slow cinematic
|
|
|
386
386
|
npx makaron-cli video create --script "Keep both subjects recognizable as they enter the same studio" --image https://...jpg --image https://...webp --duration 5 --video-model grok --video-resolution 720p
|
|
387
387
|
npx makaron-cli video create --script "Shot 1 (15s): <<<image_1>>> and <<<image_2>>> build a neon one-person studio" --image https://...jpg --image https://...webp --duration 15 --video-model seedance-mini --video-resolution 480p --aspect 9:16
|
|
388
388
|
|
|
389
|
-
# 3b. Native SeeDance, Wan 3.0, MiniMax H3, or H3
|
|
389
|
+
# 3b. Native SeeDance, Wan 3.0, MiniMax H3, or fal H3 Turbo text-to-video (no image required)
|
|
390
390
|
npx makaron-cli video create --script "Shot 1 (5s): A neon one-person studio wakes at dawn" --duration 5 --video-model seedance-fast --aspect 16:9
|
|
391
391
|
npx makaron-cli video create --script "Shot 1 (15s): A premium creative editor comes alive" --duration 15 --video-model minimax-h3 --aspect 16:9
|
|
392
392
|
npx makaron-cli video create --script "Shot 1 (5s): A tiny robot runs through a sunlit studio" --duration 5 --video-model minimax-h3-max
|
|
@@ -408,9 +408,9 @@ For project/timeline video editing, use:
|
|
|
408
408
|
npx makaron-cli chat --project <id|auto> --video input.mp4 -b "make it funny"
|
|
409
409
|
```
|
|
410
410
|
|
|
411
|
-
Options for `video create`: `--script "..."`, `--script-file <path>`, `--image <url>` (repeatable, up to the selected model limit), `--video <file|url>` and `--audio <file|url>` (repeatable where supported), `--voice <xai-preset-id>` (repeatable, Grok only), `--duration <seconds>`, `--aspect 9:16|16:9|1:1`, `--video-model seedance-fast|seedance-mini|seedance|seedance-2.5|wan-3.0|wan-3.0-prime|kling|grok|google-omni|minimax-h3|minimax-h3-max|sync-lipsync-v3`, `--video-resolution auto|480p|720p|768p|1080p|2k|4k`. Default model is `
|
|
411
|
+
Options for `video create`: `--script "..."`, `--script-file <path>`, `--image <url>` (repeatable, up to the selected model limit), `--video <file|url>` and `--audio <file|url>` (repeatable where supported), `--voice <xai-preset-id>` (repeatable, Grok only), `--duration <seconds>`, `--aspect 9:16|16:9|1:1`, `--video-model seedance-fast|seedance-mini|seedance|seedance-2.5|wan-3.0|wan-3.0-prime|kling|grok|google-omni|minimax-h3|minimax-h3-max|fal-h3-max|sync-lipsync-v3`, `--video-resolution auto|480p|720p|768p|1080p|2k|4k`. Default model is FAL H3 Max (`fal-h3-max`) at 768p (480p/1080p optional): native text-to-video or image/video/audio reference-to-video, integer 5-15s, up to 9 images + 3 videos + 3 audios (12 total). SeeDance accepts native text-to-video with no image and integer output duration 4-15s (default 5s); every Seedance image input is submitted through reference-to-video, including one image. `seedance-mini` supports 480p/720p and is best for cheaper drafts/multi-size tests. Wan 3.0 and Wan 3.0 Prime both expose 480p/720p/1080p/2K/4K; 2K/4K automatically use the matching FlashVSR endpoint. MiniMax H3 accepts native text-to-video, 4-15s output, public 768p/2k resolution, and up to 9 image, up to 3 video, and up to 3 audio feature references through Makaron Agent/chat; a single image keeps the `reference_image` role. `sync-lipsync-v3` requires exactly one video plus one MP3/WAV and preserves that replacement audio while aligning the mouth. H3 defaults to 768p; request 2k explicitly for maximum/final quality. Kling supports 5-15s. Grok generation uses `grok-imagine-video-1.5`: text-only generation supports 480p/720p/1080p, while any 1-7 image or preset voice input uses reference-to-video and is capped at 720p. Grok edit/extend uses `grok-imagine-video` internally under the same `grok` selector. Gemini Omni supports 3-10s fast image/video generation and editing with native generated audio; every image-only generation request uses `reference_to_video`, including a single image, with up to 6 images when no video reference is provided.
|
|
412
412
|
|
|
413
|
-
|
|
413
|
+
fal H3 Turbo: use `--video-model minimax-h3-max` for faster-than-real-time generation. It supports exactly 5/10/15 seconds at 480p/768p and defaults to native 768p, with no image for T2V or exactly one `--image` for I2V. It does not accept reference video/audio or multiple images.
|
|
414
414
|
|
|
415
415
|
Seedance 2.5: use `--video-model seedance-2.5` for 4-30 second output at 480p/720p. `--image` accepts local files or URLs (up to 30), while repeatable `--video` and `--audio` accept up to 10 each. Use `--video-operation generate|edit|extend`, `--extend-direction forward|backward`, `--output-format mp4|mov`, `--web-search`, `--generated-audio` / `--no-generated-audio`, and `--relaxed-content-filter`. Edit/extend require a video reference. The Evolink route does not currently expose 4K output.
|
|
416
416
|
|
|
@@ -532,7 +532,7 @@ send_message "All done!"
|
|
|
532
532
|
- One project = one conversation thread. All history is preserved.
|
|
533
533
|
- One active Agent Run at a time per project. A new message received while it is active is appended to that same Agent Run and processed at a durable work-unit boundary; it does not interrupt the execution or create a second owner for an in-progress Studio workflow.
|
|
534
534
|
- Multi-image: `create --image a.jpg --image b.jpg` or `chat --image ref.jpg`.
|
|
535
|
-
-
|
|
535
|
+
- Video timing depends on the selected model: fal H3 Turbo and fal H3 Max usually finish in tens of seconds; Max with video references may take around 1-2 minutes. Queue and saving time can vary; other providers may take 3-5 minutes; current Grok generation/edit probes are usually around 15-60 seconds; Gemini Omni is usually around 30-70 seconds plus Storage handoff. Remotion compositions should be converted with `materialize` / `responses get --materialize`, and timing should be read from `duration_seconds`, `render_seconds`, and `realtime_ratio`.
|
|
536
536
|
- Music takes ~60 seconds. Appears in output when done.
|
|
537
537
|
- Images are typically ready in 15-30 seconds.
|
|
538
538
|
- stdout is always machine-readable JSON/text. Human-friendly logs go to stderr.
|
|
@@ -654,3 +654,5 @@ npx makaron-cli admin fetch-skill https://www.makaron.app/s/4c4cbd57
|
|
|
654
654
|
- 16:9 images will be severely cropped — resize or stack two 16:9 images vertically
|
|
655
655
|
- Video covers (`.mp4`) are supported — auto-play in the card
|
|
656
656
|
- Before photo should match the person in the cover (hair, clothing, accessories)
|
|
657
|
+
|
|
658
|
+
FAL video models: **fal H3 Turbo** uses `minimax-h3-max` for single-start-frame I2V/T2V. **FAL H3 Max** uses the new selector `fal-h3-max`: native T2V or image/video/audio reference-to-video, default 768p, optional 480p/1080p, integer 5–15s; at most 9 images / 3 videos / 3 audios / 12 total. Reference video/audio each 2–15s and each modality totals at most 15s. Source-video modifications use generation with feature references, not typed edit/extend. Reference input tokens are billed in addition to output video; query current pricing.
|
package/bin/makaron.mjs
CHANGED
|
@@ -1914,7 +1914,7 @@ Inputs:
|
|
|
1914
1914
|
Generation options:
|
|
1915
1915
|
--video-model <id> seedance-fast, seedance-mini, seedance, seedance-2.5,
|
|
1916
1916
|
wan-3.0, wan-3.0-prime, kling, grok, google-omni,
|
|
1917
|
-
minimax-h3, minimax-h3-max, or sync-lipsync-v3.
|
|
1917
|
+
minimax-h3, minimax-h3-max, fal-h3-max, or sync-lipsync-v3.
|
|
1918
1918
|
--duration <seconds> Output duration supported by the selected model.
|
|
1919
1919
|
--video-resolution <res> auto, 480p, 720p, 768p, 1080p, 2k, or 4k.
|
|
1920
1920
|
--aspect <ratio> 9:16, 16:9, 1:1, or another supported ratio.
|
|
@@ -1929,7 +1929,9 @@ Generation options:
|
|
|
1929
1929
|
--help, -h Show this help.
|
|
1930
1930
|
|
|
1931
1931
|
Recent model choices:
|
|
1932
|
-
|
|
1932
|
+
fal-h3-max FAL H3 Max (default, 768p) reference-to-video: images, videos and audio;
|
|
1933
|
+
integer 5–15s, 480p/768p/1080p, default 768p. Reference inputs cost extra.
|
|
1934
|
+
minimax-h3-max fal H3 Turbo faster-than-real-time T2V or one-start-image I2V;
|
|
1933
1935
|
5/10/15s; native 768p default or 480p; no video/audio/multi-image references.
|
|
1934
1936
|
wan-3.0-prime Faster Wan 3.0 tier; 2-30s; 480p through 4k; multimodal refs.
|
|
1935
1937
|
wan-3.0 Wan standard tier with the same public duration/resolution range.
|
|
@@ -3000,26 +3002,30 @@ if (!command || command === '--help' || command === '-h' || command === 'help')
|
|
|
3000
3002
|
}
|
|
3001
3003
|
else if (args[i] === '--wait') wait = true;
|
|
3002
3004
|
}
|
|
3003
|
-
const selectedVideoModel = ['h3 max', 'h3-max', 'h3max', 'h3 max turbo', 'h3-max-turbo', 'h3maxturbo', 'minimax-h3max', 'minimax-h3-max-turbo'].includes(videoModel)
|
|
3005
|
+
const selectedVideoModel = ['fal h3 turbo', 'h3 max', 'h3-max', 'h3max', 'h3 max turbo', 'h3-max-turbo', 'h3maxturbo', 'minimax-h3max', 'minimax-h3-max-turbo'].includes(videoModel)
|
|
3004
3006
|
? 'minimax-h3-max'
|
|
3007
|
+
: ['fal h3 max'].includes(videoModel) ? 'fal-h3-max'
|
|
3005
3008
|
: ['wan3', 'wan3.0', 'wan30', 'wan-3', 'wan3-pro', 'wan3.0-pro', 'wan30-pro', 'wan-3-pro', 'berry-1.0-pro', 'w3.0-video-pro'].includes(videoModel)
|
|
3006
3009
|
? 'wan-3.0'
|
|
3007
3010
|
: ['wan3-prime', 'wan3.0-prime', 'wan30-prime', 'wan-3-prime', 'w3.0-video-prime', 'w3.0-video-prime-pro', 'wan-3.0-prime-pro', 'prime'].includes(videoModel)
|
|
3008
3011
|
? 'wan-3.0-prime'
|
|
3009
|
-
: (videoModel || '
|
|
3012
|
+
: (videoModel || 'fal-h3-max');
|
|
3010
3013
|
const isSeedance25 = selectedVideoModel === 'seedance-2.5';
|
|
3011
3014
|
const isWan30 = selectedVideoModel === 'wan-3.0' || selectedVideoModel === 'wan-3.0-prime';
|
|
3012
3015
|
const isSeedanceModel = selectedVideoModel === 'seedance-fast' || selectedVideoModel === 'seedance-mini' || selectedVideoModel === 'seedance' || isSeedance25;
|
|
3013
3016
|
const isMinimaxH3 = selectedVideoModel === 'minimax-h3';
|
|
3014
3017
|
const isFalH3Max = selectedVideoModel === 'minimax-h3-max';
|
|
3018
|
+
const isFalReference = selectedVideoModel === 'fal-h3-max';
|
|
3015
3019
|
const isGrok = selectedVideoModel === 'grok';
|
|
3016
3020
|
const isGoogleOmni = selectedVideoModel === 'google-omni';
|
|
3017
3021
|
const isSyncLipsync = selectedVideoModel === 'sync-lipsync-v3';
|
|
3018
|
-
const supportsNativeTextToVideo = isSeedanceModel || isWan30 || isMinimaxH3 || isFalH3Max || isGrok || isGoogleOmni;
|
|
3022
|
+
const supportsNativeTextToVideo = isSeedanceModel || isWan30 || isMinimaxH3 || isFalH3Max || isFalReference || isGrok || isGoogleOmni;
|
|
3019
3023
|
if (!script || (!images.length && !videos.length && !audios.length && !referenceVoices.length && !supportsNativeTextToVideo)) {
|
|
3020
3024
|
console.error('Usage: makaron video create --script "..." [--image <url>] [--video <file|url>] [--audio <file|url>] [--duration 30] [--video-model seedance-2.5|wan-3.0|wan-3.0-prime|minimax-h3|minimax-h3-max]');
|
|
3021
3025
|
process.exit(1);
|
|
3022
3026
|
}
|
|
3027
|
+
if (isFalReference && (images.length > 9 || videos.length > 3 || audios.length > 3 || images.length + videos.length + audios.length > 12)) { console.error('FAL H3 Max accepts at most 9 images, 3 videos, 3 audios, 12 total.'); process.exit(1); }
|
|
3028
|
+
if (isFalReference && duration != null && (!Number.isInteger(duration) || duration < 5 || duration > 15)) { console.error('FAL H3 Max output duration must be an integer from 5 to 15 seconds.'); process.exit(1); }
|
|
3023
3029
|
if (isSeedance25 && images.length > 30) { console.error('Seedance 2.5 supports at most 30 image references.'); process.exit(1); }
|
|
3024
3030
|
if (isSeedance25 && videos.length > 10) { console.error('Seedance 2.5 supports at most 10 video references.'); process.exit(1); }
|
|
3025
3031
|
if (isSeedance25 && audios.length > 10) { console.error('Seedance 2.5 supports at most 10 audio references.'); process.exit(1); }
|
|
@@ -3119,7 +3125,7 @@ if (!command || command === '--help' || command === '-h' || command === 'help')
|
|
|
3119
3125
|
? { script, images, videoUrls, audioUrls, videoModel: selectedVideoModel, videoResolution }
|
|
3120
3126
|
: isSeedance25 || isWan30 || isGrok
|
|
3121
3127
|
? { script, images, videoUrls, audioUrls, referenceVoiceIds: referenceVoices, videoModel: selectedVideoModel, videoResolution, operation: resolvedOperation, extendDirection, outputFormat, generateAudio, contentFilter, webSearch }
|
|
3122
|
-
: isMinimaxH3
|
|
3128
|
+
: isMinimaxH3 || isFalReference
|
|
3123
3129
|
? { script, images, videoUrls, audioUrls, videoModel: selectedVideoModel, videoResolution }
|
|
3124
3130
|
: isFalH3Max
|
|
3125
3131
|
? { script, images, videoModel: selectedVideoModel, videoResolution }
|
|
@@ -3131,7 +3137,7 @@ if (!command || command === '--help' || command === '-h' || command === 'help')
|
|
|
3131
3137
|
if (effectiveDuration) vArgs.duration = effectiveDuration;
|
|
3132
3138
|
if (aspectRatio) vArgs.aspectRatio = aspectRatio;
|
|
3133
3139
|
if (keepOriginalSound && videoUrls.length && !isSeedance25) vArgs.keepOriginalSound = true;
|
|
3134
|
-
const result = await callMcpTool(baseUrl, headers, videoUrls.length && !isSeedance25 && !isWan30 && !isGrok && !isMinimaxH3 && !isSyncLipsync ? 'makaron_edit_video' : 'makaron_create_video', vArgs);
|
|
3140
|
+
const result = await callMcpTool(baseUrl, headers, videoUrls.length && !isSeedance25 && !isWan30 && !isGrok && !isMinimaxH3 && !isFalReference && !isSyncLipsync ? 'makaron_edit_video' : 'makaron_create_video', vArgs);
|
|
3135
3141
|
const text = result?.content?.find(c => c.type === 'text')?.text;
|
|
3136
3142
|
if (text) {
|
|
3137
3143
|
console.log(text);
|
package/package.json
CHANGED
package/skills/makaron/SKILL.md
CHANGED
|
@@ -319,7 +319,7 @@ npx makaron-cli analyze --video input.mp4 "describe the key actions and pacing"
|
|
|
319
319
|
npx makaron-cli video create --script "Shot 1 (5s): <<<image_1>>> ..." --image https://...jpg --duration 5 --video-model kling
|
|
320
320
|
npx makaron-cli video create --script "Shot 1 (15s): <<<image_1>>> and <<<image_2>>> build a neon one-person studio" --image https://...jpg --image https://...webp --duration 15 --video-model seedance-mini --video-resolution 480p --aspect 9:16
|
|
321
321
|
|
|
322
|
-
# 3b. Native SeeDance, Wan 3.0, MiniMax H3, or H3
|
|
322
|
+
# 3b. Native SeeDance, Wan 3.0, MiniMax H3, or fal H3 Turbo text-to-video (no image required)
|
|
323
323
|
npx makaron-cli video create --script "Shot 1 (5s): A neon one-person studio wakes at dawn" --duration 5 --video-model seedance-fast --aspect 16:9
|
|
324
324
|
npx makaron-cli video create --script "Shot 1 (15s): A premium creative editor comes alive" --duration 15 --video-model minimax-h3 --aspect 16:9
|
|
325
325
|
npx makaron-cli video create --script "Shot 1 (5s): A tiny robot runs through a sunlit studio" --duration 5 --video-model minimax-h3-max
|
|
@@ -338,11 +338,11 @@ npx makaron-cli video status <taskId>
|
|
|
338
338
|
npx makaron-cli chat --project <id|auto> --video input.mp4 -b "make it funny"
|
|
339
339
|
```
|
|
340
340
|
|
|
341
|
-
Options for `video create`: `--script "..."`, `--script-file <path>`, `--image <url>` (repeatable, up to the selected model limit), `--video <file|url>` and `--audio <file|url>` (repeatable where supported), `--voice <xai-preset-id>` (repeatable, Grok only), `--duration <seconds>`, `--aspect 9:16|16:9|1:1`, `--video-model seedance-fast|seedance-mini|seedance|seedance-2.5|wan-3.0|wan-3.0-prime|kling|grok|google-omni|minimax-h3|minimax-h3-max|sync-lipsync-v3`, `--video-resolution auto|480p|720p|768p|1080p|2k|4k`. Default model is `
|
|
341
|
+
Options for `video create`: `--script "..."`, `--script-file <path>`, `--image <url>` (repeatable, up to the selected model limit), `--video <file|url>` and `--audio <file|url>` (repeatable where supported), `--voice <xai-preset-id>` (repeatable, Grok only), `--duration <seconds>`, `--aspect 9:16|16:9|1:1`, `--video-model seedance-fast|seedance-mini|seedance|seedance-2.5|wan-3.0|wan-3.0-prime|kling|grok|google-omni|minimax-h3|minimax-h3-max|fal-h3-max|sync-lipsync-v3`, `--video-resolution auto|480p|720p|768p|1080p|2k|4k`. Default model is FAL H3 Max (`fal-h3-max`) at 768p (480p/1080p optional): native text-to-video or image/video/audio reference-to-video, integer 5-15s, up to 9 images + 3 videos + 3 audios (12 total). SeeDance accepts native text-to-video with no image and integer output duration 4-15s (default 5s); every Seedance image input uses reference-to-video, including one image. `seedance-mini` supports 480p/720p and is best for cheaper drafts/multi-size tests. Wan 3.0 and Wan 3.0 Prime both expose 480p/720p/1080p/2K/4K; 2K/4K automatically use the matching FlashVSR endpoint. MiniMax H3 accepts native text-to-video, 4-15s output, public 768p/2k resolution, and up to 9 image, up to 3 video, and up to 3 audio feature references through Makaron Agent/chat; a single image keeps the `reference_image` role. fal H3 Turbo (`minimax-h3-max`) accepts native text-to-video or exactly one start image for image-to-video, exact 5/10/15s duration, and 480p/768p; it does not accept reference video/audio or multiple images. `sync-lipsync-v3` requires exactly one video plus one MP3/WAV and preserves that replacement audio while aligning the mouth. H3 defaults to 768p; request 2k explicitly for maximum/final quality. Kling supports 5-15s. Grok text-only generation supports 480p/720p/1080p; any 1-7 image or preset voice input uses reference-to-video and is capped at 720p. Grok edit/extend uses `grok-imagine-video` internally. Gemini Omni image-only generation always uses `reference_to_video`, including one image, with up to 6 images when no video reference is provided.
|
|
342
342
|
|
|
343
343
|
Provider integration contract: every image passed to video generation is a feature reference by default, even when there is exactly one image. Never infer image-to-video/first-frame mode from image count. The sole current exception is explicitly selected `minimax-h3-max`, whose declared capability maps exactly one selected image to native image-to-video; it does not accept reference video/audio or multiple images.
|
|
344
344
|
|
|
345
|
-
|
|
345
|
+
fal H3 Turbo uses the `minimax-h3-max` selector, supports exactly 5/10/15 seconds at 480p/768p, and defaults to native 768p for faster-than-real-time T2V or one-start-image I2V.
|
|
346
346
|
|
|
347
347
|
Seedance 2.5 uses `--video-model seedance-2.5` and supports 4-30s at 480p/720p, up to 30 images + 10 videos + 10 audios, repeatable local/URL references, `--video-operation generate|edit|extend`, `--extend-direction`, `--output-format mp4|mov`, and `--web-search`. The Evolink route does not currently expose 4K output.
|
|
348
348
|
|
|
@@ -482,9 +482,11 @@ send_message "All done!"
|
|
|
482
482
|
- One project = one conversation thread. All history is preserved.
|
|
483
483
|
- One active Agent Run at a time per project. A new message received while it is active is appended to that same Agent Run and processed at a durable work-unit boundary; it does not interrupt the execution or create a second owner for an in-progress Studio workflow.
|
|
484
484
|
- Multi-image: `create --image a.jpg --image b.jpg` or `chat --image ref.jpg`.
|
|
485
|
-
-
|
|
485
|
+
- Video timing depends on the selected model: fal H3 Turbo and fal H3 Max usually finish in tens of seconds; Max with video references may take around 1-2 minutes. Queue and saving time can vary; other providers may take 3-5 minutes; current Grok generation/edit probes are usually around 15-60 seconds; Gemini Omni is usually around 30-70 seconds plus Storage handoff. Remotion compositions should be converted with `materialize` / `responses get --materialize`, and timing should be read from `duration_seconds`, `render_seconds`, and `realtime_ratio`.
|
|
486
486
|
- Music takes ~60 seconds. Appears in output when done.
|
|
487
487
|
- Images are typically ready in 15-30 seconds.
|
|
488
488
|
- stdout is always machine-readable JSON/text. Human-friendly logs go to stderr.
|
|
489
489
|
- Always use `chat` as the primary interface — even for single image edits.
|
|
490
490
|
- `edit`/`video`/`music` are fallback tools for when `chat` is unavailable or you need raw model access without project context.
|
|
491
|
+
|
|
492
|
+
FAL video models: **fal H3 Turbo** uses `minimax-h3-max` for single-start-frame I2V/T2V. **FAL H3 Max** uses the new selector `fal-h3-max`: native T2V or image/video/audio reference-to-video, default 768p, optional 480p/1080p, integer 5–15s; at most 9 images / 3 videos / 3 audios / 12 total. Reference video/audio each 2–15s and each modality totals at most 15s. Source-video modifications use generation with feature references, not typed edit/extend. Reference input tokens are billed in addition to output video; query current pricing.
|