@scopeful/midjourney-video
v1.0.0
Published
Use this skill whenever the user wants to generate, extend, or loop a video using Midjourneys text-to-video or image-to-video features. Triggers include any mention of Midjourney video, MJ video, animate this image, --video, --motion, --loop, --bs, --end,
Readme
name: midjourney-video description: Use this skill whenever the user wants to generate, extend, or loop a video using Midjourney's text-to-video or image-to-video features. Triggers include any mention of "Midjourney video", "MJ video", "animate this image", "--video", "--motion", "--loop", "--bs", "--end", "extend video", "looping video", or asking to turn a prompt/still into a clip. Do not trigger for video generation on other platforms (Kling, Runway, Veo, Higgsfield) — for those, use their dedicated skills if available.
Generate Midjourney videos cleanly
Midjourney's video feature supports both Native Text-to-Video (up to 10 seconds at 60fps natively) and Image-to-Video. It produces high-quality video that strongly preserves the Midjourney aesthetic.
It is expensive compared to images and cheap compared to dedicated video models like Veo or Kling. The killer feature is the identity continuity: a video generated in MJ preserves the V8/V8.1 aesthetic in ways no other model matches today.
When to use Midjourney video, when not to
Use MJ video when:
- The user wants Native Text-to-Video generation directly from a prompt
- The user already has a MJ image they love and wants to animate it (Image-to-Video)
- The user wants a short editorial clip (5–10 s) with strong stylistic continuity
- The user is on Standard+ plan and HD (720p) output is fine
Do NOT use MJ video when:
- The user needs photoreal complex motion (use Veo 3.1 or Kling 3.0)
- The user wants > 21 seconds in one piece (MJ caps at 21 s; chain a longer model instead)
- The user is on Basic plan and wants HD — Basic is SD-only
How to generate a video
There are two paths: midjourney.com (web) and Discord. The agent's output should target the user's platform.
On midjourney.com (recommended)
- For Text-to-Video, simply type your prompt and append
--video. - For Image-to-Video, open any image in the gallery — every MJ image has Animate Image buttons below it.
- Animate Auto — generates immediately using the source image's prompt
- Animate Manually — opens the Imagine bar so you can adjust the prompt
- Loop — generates a looping video (start frame = end frame)
- The job runs in the background; the result appears in the Create page.
For user-uploaded images: click the image icon in the Imagine bar, drag the uploaded image into the Starting Frame slot. A text prompt is optional.
In Discord
Text-to-Video:
<prompt_text> --video
Image-to-Video:
<image_URL> <prompt_text> --video
The image URL goes first, then the text prompt, then --video. The image must be online — host on Discord first if the user has a local file.
If the user already has a Midjourney image upscaled in Discord, they can use the Animate (High motion) / Animate (Low motion) buttons directly under it.
The video-specific parameters
Video generations respect standard image parameters which shape the initial frames and overall style.
Parameters like --ar, --stylize, and --sref DO work for video by shaping the initial frames and generation.
Adding --hd improves video output sharpness by providing better starting frames.
| Param | Purpose | Values |
|-------|---------|--------|
| --motion low | Subtle camera + character movement (default) | flag |
| --motion high | Big camera moves, large character motion (more glitch risk) | flag |
| --raw | Reduce MJ's creative flair, follow prompt more literally | flag |
| --loop | Reuse the start frame as the end frame (creates a loop) | flag |
| --end <URL> | Use a different image as the end frame | URL |
| --bs N | Batch size — how many video variations to generate | 1, 2, or 4 (default 4) |
| --video | Flag to enable video generation | flag |
| --ar W:H | Aspect ratio for Text-to-Video | W:H |
| --sref URL | Style Reference for shaping the look | URL |
| --hd | Improves sharpness of the starting frames | flag |
GPU costs — read this before generating
MJ video is significantly more expensive than images. Memorize this table:
| Resolution | Batch 4 (default) | Batch 2 | Batch 1 | |------------|-------------------|---------|---------| | SD (480p) | 8 GPU-min | 4 GPU-min | 2 GPU-min | | HD (720p) | 26 GPU-min | 13 GPU-min | 7 GPU-min |
Key implication: HD video is 3.25× more expensive than SD. The agent should default-recommend SD for exploration and only switch to HD when the user has picked the final shot.
Per-clip USD cost on Standard plan ($0.0333 per GPU-min):
- SD batch-of-4: $0.27 (4 clips for that)
- SD single clip (
--bs 1): $0.07 - HD batch-of-4: $0.87
- HD single clip (
--bs 1): $0.23
If the user is on Basic plan ($0.05 per GPU-min), all numbers go up 50%.
Plan gating — also memorize
- Basic plan: SD only, Fast mode only. No Relax video.
- Standard plan: SD + HD in Fast mode. No video Relax.
- Pro / Mega plans: SD + HD in Fast. Unlimited Relax SD video (queue-waited, but free from the budget).
Recommend Relax SD on Pro+ for experimentation. Switch to Fast HD for final.
Extending videos
A single video starts at 5 or 10 seconds. You can extend it up to 21 seconds total.
Each extension costs the same as the initial video. A 21-second HD clip = 5 video jobs × 26 GPU-min = 130 GPU-min ≈ $4.33 on Standard. Tell the user before they start chaining.
Two extension modes (web UI buttons or Discord buttons):
- Extend Auto — uses the original prompt
- Extend Manual — lets you edit the prompt mid-sequence (great for changing what's happening in the clip without losing visual continuity)
Looping and end frames
--loop reuses the start frame as the end frame. Use this for: subtle scene loops, ambient backgrounds, parallax-style breathing motion. The result genuinely loops cleanly.
--end <URL> uses a different image as the end frame. MJ interpolates between the two. Use this for:
- Morph effects (start frame: object 1, end frame: object 2)
- Transition stings between two scenes
- Reveal animations (start: empty room, end: same room with character)
Either flag goes at the end of the prompt with the other video params.
Motion settings — when to pick which
--motion low (default):
- Subjects mostly still, subtle camera drift
- Best for portraits, product shots, atmospheric scenes
- Lower risk of glitchy artifacts
- Pick this for first attempt every time
--motion high:
- Big camera moves (pans, zooms), large body motion
- Best for action scenes, dramatic reveals
- Higher risk of warping or temporal artifacts
- Pick this when low motion produces something too static
If both look bad, the prompt or starting image is probably the problem. Re-generate first.
Aspect ratio
For Text-to-Video, specify the aspect ratio with --ar.
For Image-to-Video, the video inherits the starting image's aspect ratio. The exact pixel dimensions:
| Starting AR | Video AR | SD pixels | HD pixels | |-------------|----------|-----------|-----------| | 1:1 | 1:1 | 624×624 | 960×960 | | 4:3 | ~4:3 | 720×544 | 1104×832 | | 2:3 | 2:3 | 512×768 | 784×1168 | | 16:9 | ~16:9 | 832×464 | 1280×720 | | 1:2 | 1:2 | 448×880 | 672×1360 |
For social-platform deliverables, target the AR appropriately:
- TikTok / Reels / Shorts:
--ar 9:16 - YouTube / web:
--ar 16:9 - Square Instagram:
--ar 1:1
What to deliver to the user
For an MJ video request, the agent should return:
- Setup confirmation — Text-to-Video or which starting image they're animating, on which platform
- The pasteable command (Discord) or the click sequence (web)
- Motion + batch recommendation — usually
--motion low --bs 1for first attempt - Estimated GPU cost in min + USD on the user's plan
- Downstream options — extend / loop / re-render with different motion
Example output:
**Generating your video** (1280×720, HD on Standard plan)
**Discord:**
```
moody push-in, gentle fog rolling, fisherman keeps mending nets --ar 16:9 --hd --motion low --bs 1 --video
```
**Or on midjourney.com:** Paste the prompt above.
**Cost estimate:**
- HD, batch-of-1: ~7 GPU-min ≈ $0.23 on Standard
- HD, batch-of-4: ~26 GPU-min ≈ $0.87 (recommended for first pick)
- SD equivalent batch-of-1: 2 GPU-min ≈ $0.07 (recommended for cheap exploration)
**Likely follow-ups:**
- Extend if you like the first clip (~7 more GPU-min)
- Add `--loop` to make it loop seamlessly
- Switch `--motion low` → `--motion high` if it's too staticDownloading + sharing
Right-click any video on the Create or Organize page to get three download options:
- Download for Social — optimized encoder, less compression on platforms like Instagram/TikTok. Use this for posting.
- Download Raw Video — the original, best quality. Use this for editing in Premiere/DaVinci.
- Download Gif — animated GIF. Use this only for messaging contexts.
In Discord, right-click only downloads the raw file.
