media_probe | Inspects media files with ffprobe. Returns metadata, streams, codecs, resolution, and duration as JSON. | inputPath |
media_convert | Converts video and audio formats. Includes presets for web MP4, WebM, and animated GIF with GPU acceleration. | inputPath, outputPath, preset, crf, resolution, fps, hardwareAcceleration |
trim_media | Cuts a segment from a video or audio file using stream copy or re-encoding. | inputPath, outputPath, startTime, endTime, duration, accurateReencode |
extract_audio | Rips audio tracks from video. Includes a 16kHz mono WAV preset for Whisper speech recognition. | inputPath, outputPath, format, bitrate |
extract_thumbnail | Captures a still image at a timestamp or midpoint. Returns base64 image data for vision models. | inputPath, outputPath, timestamp, resolution, includeBase64 |
compress_video | Compresses video to fit target sizes (such as GitHub PRs under 10MB or Discord under 25MB). | inputPath, outputPath, targetSizeMB, preset, crf, maxWidth, hardwareAcceleration |
reformat_aspect_ratio | Changes video ratio to 9:16 vertical, 1:1 square, or 4:5 portrait with blurred borders or center crop. | inputPath, outputPath, targetRatio, mode, blurAmount, padColor, hardwareAcceleration |
create_split_screen | Stacks two videos top-and-bottom (9:16 Reels/TikTok) or side-by-side with audio mixing and subtitles. | firstVideoPath, secondVideoPath, outputPath, layout, audioSource, subtitlesPath |
trim_silence | Detects and removes silent pauses from recordings while preserving video & audio lip-sync. | inputPath, outputPath, mode, thresholdDb, minDurationSeconds |
concat_media | Joins multiple video or audio files in order using stream copy or re-encoding. | inputPaths, outputPath, mode |
generate_waveform | Generates a PNG waveform image. Returns base64 image data for vision models. | inputPath, outputPath, width, height, color, scale, includeBase64 |
add_subtitles | Embeds SRT or VTT subtitle tracks into MP4/MKV video files without re-encoding video. | videoPath, subtitlesPath, outputPath, language, title |
burn_subtitles (New) | Hardcodes subtitles directly onto video frames with customizable font size, colors, and margins. | videoPath, subtitlesPath, outputPath, fontSize, fontColor, outlineColor, marginV |
extract_keyframes (New) | Extracts multiple representative frames across the video and generates a contact sheet grid for vision AI. | inputPath, outputPath, count, layout, includeBase64 |
normalize_audio (New) | Normalizes audio loudness using EBU R128 (default -16 LUFS) with optional speech clarity high-pass filter. | inputPath, outputPath, targetLufs, targetPeakDb, voiceClarity |
add_overlay (New) | Places a watermark image or logo PNG over video with customizable corner position, scale, and opacity. | videoPath, overlayPath, outputPath, position, padding, scaleWidth, opacity |
change_speed | Adjusts playback speed (such as 2x fast forward or 0.5x slow motion) with pitch correction. | inputPath, outputPath, speed, muteAudio |