{{ activeIconEl }}
{{ activeName }}
{{ activeDesc }}
{{ fileIconEl }} {{ videoName }}
{{ mbPickerEl }}
{{ mediaBankEl }}
{{ placeholderIconEl }}
{{ placeholderTitle }}
{{ placeholderDesc }}
Drop your video here
or click to choose a file · MP4, MOV, WebM, MKV
Processing is fully local — nothing is uploaded
{{ currentTimeText }} / {{ durationText }}
Step
FPS
Capture frame
{{ resText }}
original resolution
Format
Quality{{ qualityText }}
Saved at full resolution · lossless (PNG)
Captured frames {{ captureCountText }}
{{ cap.timeText }}
{{ cap.metaText }}
No frames captured yet.
Scrub to the exact moment and hit Capture.
{{ currentTimeText }} / {{ durationText }}
Step
Clip selection
Start{{ clipStartText }}
Duration{{ clipDurText }}
Clip: {{ clipStartText }} → {{ clipEndText }} · {{ framesText }}
Export settings
Format
Width
Frame rate
Quality{{ webpQualityText }}
Output: {{ outDimsText }} · {{ framesText }}
{{ statusText }}
Result
Format
{{ resultExt }}
Size
{{ resultSize }}
Dimensions
{{ resultDims }}
Download
{{ errorText }}
{{ currentTimeText }} / {{ durationText }}
Compression settings
Resolution
Quality
Output{{ compDimsText }} · WebM
Original size{{ compOrigSizeText }}
Estimated size{{ compEstText }}
Re-encodes in real time, so this takes about as long as the clip. Audio is preserved.
{{ compStatus }}
Result
{{ compReductionText }}
Format
WEBM
Size
{{ compResultSize }}
Dimensions
{{ compResultDims }}
{{ compErrorText }}
{{ currentTimeText }} / {{ durationText }}
Transform
Mirror
Rotate {{ flipRotateText }}
Output · WebM {{ flipDimsText }}
Pick a mirror or rotation to transform the video.
{{ flipStatus }}
Result
Format
WEBM
Size
{{ flipResultSize }}
Dimensions
{{ flipResultDims }}
{{ flipErrorText }}
{{ currentTimeText }} / {{ durationText }}
{{ speedText }}
Playback speed
Rate
Audio
New duration · WebM {{ speedOutDurText }}
Re-encodes in real time. Kept audio is pitch-shifted to match the new speed.
{{ speedStatus }}
Result
Format
WEBM
Size
{{ speedResultSize }}
Duration
{{ speedResultDurText }}
{{ speedErrorText }}
{{ currentTimeText }} / {{ durationText }}
Look
Brightness{{ cBrightText }}
Contrast{{ cContrastText }}
Saturation{{ cSatText }}
{{ colorStatus }}
Result
Format
WEBM
Size
{{ colorResultSize }}
Dimensions
{{ colorResultDims }}
{{ colorErrorText }}
{{ currentTimeText }} / {{ durationText }}
Trim range
Start{{ trimStartText }}
End{{ trimEndText }}
Keeping {{ trimStartText }} → {{ trimEndText }} · {{ trimDurText }}
Crop
Aspect ratio
{{ cropPosLabel }}
Output · WebM {{ trimDimsText }}
The preview shows the final framing. Re-encodes the trimmed range in real time.
{{ trimStatus }}
Result
Size
{{ trimResultSize }}
Dimensions
{{ trimResultDims }}
Duration
{{ trimResultDurText }}
{{ trimErrorText }}
Reading the audio track…
{{ videoName }}
{{ audioInfoText }}
{{ audioWaveEl }}
{{ audioErrorText }}
Export settings
Format
Lossless 16-bit PCM — identical quality to the source, larger files.
Bitrate
Channels
Output{{ audioOutText }}
Duration{{ audioDurText }}
Sample rate{{ audioRateText }}
Decoded and encoded entirely in your browser — the audio is never uploaded.
{{ audioStatus }}
Result
{{ audioResultExt }} ready
Format
{{ audioResultExt }}
Size
{{ audioResultSize }}
Audio
{{ audioResultMeta }}
{{ currentTimeText }} / {{ durationText }}
Step
Suggested frames
Scanning for good frames…
Text
Style
Typeface
Position
Text size{{ thumbSizeText }}
Text color
Highlight color
Size & format
Output{{ thumbDimsText }} px
Result
{{ thumbResultExt }} ready
Format
{{ thumbResultExt }}
Size
{{ thumbResultSize }}
Dimensions
{{ thumbResultDims }}
{{ thumbErrorText }}
Tip: drag the watermark directly on the video to place it anywhere.
{{ currentTimeText }} / {{ durationText }}
Watermark
Logo loaded
Position
Custom position · tap a preset to reset
Color
Size{{ wmSizeText }}
Opacity{{ wmOpacityText }}
Drop shadow
{{ wmStatus }}
Plays through once to re-encode — please keep this tab in focus.
Result
WEBM ready
Format
WEBM
Size
{{ wmResultSize }}
Dimensions
{{ wmResultDims }}
{{ wmErrorText }}
{{ currentTimeText }} / {{ durationText }}
Subtitle file
{{ subFileName }}
{{ subCueCountText }}
Style
Position
Text color
Text size{{ subFontText }}
Background bar
{{ subStatus }}
Plays through once to re-encode — please keep this tab in focus.
Result
WEBM ready
{{ subErrorText }}
{{ row.k }} {{ row.val }}
Files exported from this studio are already clean — re-encoding drops author, device, GPS and timestamp tags that the original may carry. Everything stays on your device.
Privacy
Export a re-encoded copy stripped of any embedded metadata — useful before sharing a clip publicly.
{{ metaStatus }}
Plays through once to re-encode — please keep this tab in focus.
Clean copy
No metadata
New size {{ metaResultSize }}
{{ metaErrorText }}
{{ activeIconBigEl }}
Coming soon
{{ activeName }}
{{ activeDesc }}. This one runs on FFmpeg.wasm — fully in your browser, no server uploads.
{{ audioSoonIconEl }}
Coming soon
{{ audioSoonName }}
{{ audioSoonDesc }}. Like the video tools, this will run fully in your browser — no uploads.
{{ voiceRecorderEl }}
{{ audioConverterEl }}
{{ audioTrimEl }}
{{ audioVolumeEl }}
{{ audioNormalizeEl }}
{{ audioSilenceEl }}
{{ audioSpeedEl }}
{{ audioMetaEl }}
{{ audioCompressEl }}
{{ audioMergeEl }}
{{ audiogramEl }}
{{ a2vEl }}
{{ imageSoonIconEl }}
Coming soon
{{ imageSoonName }}
{{ imageSoonDesc }}. Like the video tools, this will run fully in your browser — no uploads.
{{ imageResizeEl }}
{{ imageCropEl }}
{{ imageRotateEl }}
{{ imageCompressEl }}
{{ imageConvertEl }}
{{ imageWatermarkEl }}
{{ imagePaletteEl }}
{{ imageMetaEl }}
{{ imageBlurEl }}
{{ imageEnhanceEl }}
{{ igGridEl }}
{{ carouselEl }}
{{ socialResizeEl }}
{{ bestTimeEl }}
{{ engCalcEl }}
{{ rateCalcEl }}
{{ bioFontsEl }}
{{ socialSoonIconEl }}
Coming soon
{{ socialSoonName }}
{{ socialSoonDesc }}. Like the video tools, this will run fully in your browser — no uploads.