All-in-one AI video production studio — from image generation to video creation, voiceover, music, lip-sync, and final export — all on a visual canvas. Powered by VPick.
vpick.10xboost.org on Google Cloud). VPick routes requests to third-party AI model providers (Kling, Veo, Runway, Sora, ElevenLabs, Suno) on your behalf. Your prompts and uploaded media are sent to these providers for processing.ModelDurationSoundCostMultiShotBest ForKling 3.0 Standard3-10sYes~$0.30/secYesMultiShot scenes, character consistencyKling 3.0 Professional3-10sYes~$0.405/secYesHigher quality MultiShotVeo 3.1 Fast8s fixedYes$0.90/videoNoQuick high-quality clipsSora 210-15sYes$0.525-$0.60NoCreative, artistic videosRunway 720p/1080p5-10sNo$0.18-$0.45NoFast iterationGrok Imagine6-15sYes$0.15-$0.60NoBudget-friendly with audioMidjourney Video5sNo$0.90NoStylized, artistic clips
ModelCostOutputBest Fornano-banana-2$0.16/image1 imageDefault, fast, multi-referenceMidjourney (relaxed/fast/turbo)$0.045-$0.24/grid4 imagesArtistic, stylizedGrok Imagine$0.06/call6 imagesBulk, budgetSeedream 5.0 (Lite/HD)$0.0825/image1 image (2K-3K)High resolution
ModelTypeCostFeaturesElevenLabs V3Text-to-Speech$0.21/1000 chars29+ voices, multi-language, stability controlSuno V4.5Music Generation$0.10/songCustom style, instrumental toggle, vocal genderKling AI AvatarLip Sync$0.12/secFace animation from image + audioDemucsVocal Separation$0.30/callIsolate vocals/accompaniment from audioElevenLabs STS v2Voice ChangerFree (user API key)Speech-to-speech, noise removal
VPick covers the entire video production workflow in one place:
text
Image Gen → Video Gen → Voiceover/Music → Lip Sync → Vocal/Voice Edit → Combine & Export
Start by understanding the user's project:
get_canvas to see the current statelist_projects to check existing projectscreate_project if starting freshCreate input nodes on the canvas:
Text prompts:
text
add_node(type: "text", name: "Scene 1 Prompt", data: { content: "A samurai walking through rain, cinematic lighting" })
Reference images (for start/end frames or character consistency):
text
upload_image(url: "https://example.com/character.jpg")
Generate images first if needed:
text
run_image_generator(nodeId: "<image_node_id>", prompt: "samurai portrait, white background", model: "nano-banana-2")
text
add_node(type: "video-generator", name: "Scene 1")
connect_nodes(sourceId: "<prompt_node>", targetId: "<video_node>", sourceHandle: "text-out", targetHandle: "prompt-in")
connect_nodes(sourceId: "<image_node>", targetId: "<video_node>", sourceHandle: "image-out", targetHandle: "start-image-in")
run_video_generator(nodeId: "<video_node>", model: "kling-3.0", duration: 5, sound: true)
MultiShot generates 3-15 seconds of video with multiple camera angles and character consistency in a single API call.
text
run_video_generator(
nodeId: "<video_node>",
model: "kling-3.0",
multiShot: true,
multiPrompt: [
{ "prompt": "@character walks into frame, wide shot", "duration": 4 },
{ "prompt": "@character looks at camera, medium close-up", "duration": 3 },
{ "prompt": "@character turns away, slow dolly out", "duration": 3 }
],
elements: [
{
"name": "character",
"description": "Main protagonist, male samurai",
"imageUrls": ["https://.../char-front.jpg", "https://.../char-side.jpg"]
}
],
sound: true
)
MultiShot Rules:
name must exactly match @name in prompts (case-sensitive)Audio is a core part of video production. VPick supports 5 audio tools:
Generate natural narration or dialogue from text. 29+ built-in voices, multi-language support.
text
add_node(type: "audio-generator", name: "Narration")
run_audio_generator(
nodeId: "<audio_node>",
prompt: "The samurai stood alone in the rain, waiting for dawn.",
model: "elevenlabs",
voiceId: "<voice_id>",
stability: 0.5
)
You can connect a Text node as input:
text
connect_nodes(sourceId: "<text_node>", targetId: "<audio_node>", sourceHandle: "text-out", targetHandle: "text-in")
Create original background music, theme songs, or jingles.
text
add_node(type: "music-generator", name: "BGM")
run_music_generator(
nodeId: "<music_node>",
prompt: "epic cinematic orchestral, tension building, dark atmosphere",
model: "suno",
instrumental: true,
style: "cinematic orchestral"
)
Set instrumental: false to include AI-generated vocals with lyrics from the prompt.
Animate a character's face to speak with any audio. Turns a still image into a talking head video.
text
add_node(type: "lipsync-generator", name: "Talking Character")
connect_nodes(sourceId: "<face_image>", targetId: "<lipsync_node>", sourceHandle: "image-out", targetHandle: "image-in")
connect_nodes(sourceId: "<audio_node>", targetId: "<lipsync_node>", sourceHandle: "audio-out", targetHandle: "audio-in")
run_lipsync_generator(nodeId: "<lipsync_node>")
Cost: ~$0.12/sec. Great for dialogue scenes, explainer videos, or virtual presenters.
Isolate vocals from background music in any audio/video file. Outputs: vocals track, accompaniment track, and original.
text
add_node(type: "vocal-separator", name: "Separate Audio")
connect_nodes(sourceId: "<video_or_audio>", targetId: "<separator_node>", ...)
run_vocal_separator(nodeId: "<separator_node>")
Use cases: Extract dialogue from a scene, remove background music, remix audio.
Transform any voice recording into a different voice while preserving speech patterns and emotion.
text
add_node(type: "voice-changer", name: "New Voice")
connect_nodes(sourceId: "<original_audio>", targetId: "<voice_changer_node>", sourceHandle: "audio-out", targetHandle: "audio-in")
run_voice_changer(nodeId: "<voice_changer_node>", voiceId: "<target_voice_id>", removeBackgroundNoise: true)
Requires user's own ElevenLabs API key (free, no credit charge).
Combine multiple audio tracks (e.g., voiceover + BGM) into one:
text
add_node(type: "audio-combine", name: "Mixed Audio")
connect_nodes(sourceId: "<voiceover>", targetId: "<mix_node>", sourceHandle: "audio-out", targetHandle: "audio-in")
connect_nodes(sourceId: "<bgm>", targetId: "<mix_node>", sourceHandle: "audio-out", targetHandle: "audio-in")
run_audio_combine(nodeId: "<mix_node>")
Supports up to 10 audio inputs.
Combine multiple video clips:
text
add_node(type: "combine", name: "Final Video")
connect_nodes(sourceId: "<video_1>", targetId: "<combine_node>", sourceHandle: "video-out", targetHandle: "videos-in")
connect_nodes(sourceId: "<video_2>", targetId: "<combine_node>", sourceHandle: "video-out", targetHandle: "videos-in")
connect_nodes(sourceId: "<bgm_node>", targetId: "<combine_node>", sourceHandle: "audio-out", targetHandle: "audio-in")
run_combine(nodeId: "<combine_node>")
Mix audio tracks:
text
run_audio_combine(nodeId: "<audio_combine_node>")
Keep the canvas clean:
text
auto_layout(nodeIds: ["<id1>", "<id2>", ...], direction: "horizontal", spacing: 200)
create_group(nodeIds: ["<id1>", "<id2>", ...], overrides: { label: "Scene 1", color: "#4A90D9" })
For repeatable processes, create workflows:
text
create_workflow(nodes: [...], edges: [...])
run_workflow(workflowId: "<id>")
list_nodes — See all nodes with their generation status and output URLsget_node(id) — Get specific node details including generated video/audio URLslist_generated_files(limit: 10) — Recent generation historyget_generation_stats — Usage breakdown by model and costget_generation_stats to see spending@name matches exactlyErrorSolutionGeneration timeoutAuto-retries up to 2 times; check node status with get_nodeInsufficient creditsPrompt user to top up at vpick.10xboost.orgElement name mismatchVerify @name in prompts matches element name exactlyInvalid media formatVideos: MP4 recommended; Images: JPG/PNGNode not foundUse list_nodes to get current node IDs
list_models tool for current pricing and capabilities