JPEG to WebM Converter

Create WebM video from JPEG images for HTML5 web embedding. Open-source, royalty-free, and supported by all modern browsers.

Initializing... drag & drop files here

Supports: JPG, JPEG, JFIF

OptionsAdvanced Options - Our defaults are optimized for the best results. We recommend you keeping the defaults unless you have a specific need.
Show All Options
Merge strategy
Select Merge images to combine all uploaded files into a single video. Use Video per image to create a separate video for each individual file.
Image Duration
Duration
This is amount to time a single image is displayed on the output video. Only applied to images that are not GIF.
Background Color
Background Color
File Compression
Preset
Video resolution

How to Convert JPEG to WebM Online

  1. Upload Your JPEG Files: Click "+ Add Files" or drag JPEG, JPG, and JFIF images into the dropzone. Upload multiple photos in the order you want them to appear — the file list dictates the slideshow sequence.
  2. Pick Merge Strategy and Duration: Set "Merge strategy" to "Merge images" for a single slideshow WebM, or "Video per image" to output one WebM per JPEG. Set "Image Duration" (default 5 seconds per frame; presets range from 1/60 s up to 10 s).
  3. Adjust Codec, Quality, and Resolution (Optional): Choose Video Codec (VP9 default, or VP8 for older Android/WebKit decoders). Pick a File Compression method — Constant Quality (CRF), Constraint Quality, target file size %, or constant bitrate. Pick Video Resolution (Keep original, a Preset like 1080p / 720p / 480p, or a Fixed Resolution like 1920x1080 / 512x512). Set a Background Color if your JPEGs have differing aspect ratios.
  4. Convert and Download: Click "Convert." Encoding runs through XConvert's service and the finished WebM downloads to your browser — no watermark, no sign-up, no software install.

Why Convert JPEG to WebM?

WebM is Google's open-source video container (Matroska-based) paired with the royalty-free VP8 or VP9 codecs. Turning JPEG images into a WebM video gives you a single playable file that streams through the HTML5 <video> tag, loops cleanly, and survives platform compression better than re-uploading a stack of JPGs. Reasons people make this conversion:

  • HTML5 video backgrounds and hero sections — A looping WebM is typically 5-10x smaller than an animated GIF at the same visual quality and supports full 24-bit color instead of GIF's 256-color palette. Modern site builders (Webflow, Framer, Squarespace) accept WebM uploads directly.
  • Telegram video stickers — Telegram's sticker spec requires .webm with VP9, one dimension exactly 512 px, duration up to 3 s, file size up to 256 KB, no audio, and up to 30 FPS. A single JPEG with a 3 s duration encoded to VP9 at 512x512 hits all of those targets.
  • E-commerce product slideshows — Shopify, Etsy, and WooCommerce all play WebM in product galleries. A 5-frame slideshow at 2 s per image (10 s total) is small enough to autoplay on mobile data without throttling.
  • Stable Diffusion / AI image sequences — Researchers and artists exporting frame-numbered PNG/JPG sequences from diffusion models commonly encode them to WebM/VP9 for portfolio reels because the codec preserves fine texture at low bitrates.
  • Animated documentation and tutorials — A short WebM made from numbered screenshot JPEGs replaces a heavy GIF in README files on GitHub (which renders inline WebM in issue/PR descriptions).
  • Social platforms that prefer video over static images — TikTok, Instagram Reels, and YouTube Shorts re-encode static JPEGs anyway; supplying a finished WebM means you control the duration, framing, and background color instead of letting the platform pick.

JPEG to WebM vs Other Output Choices

Property WebM (VP9) MP4 (H.264) Animated GIF
Container size for a 5 s slideshow Smallest (VP9 lossy) Slightly larger 5-10x larger
Color depth 24-bit (16.7M) 24-bit 8-bit (256 max)
Transparency / alpha Yes (VP9 alpha) No 1-bit only
Audio track allowed Yes (Vorbis / Opus) Yes (AAC) No
Royalties / licensing Free, open-source H.264 patent pool Free
HTML5 <video> support Chrome 25+, Firefox 28+, Edge 79+, Safari 14.1+ All browsers Native <img>
Telegram video sticker Required format Not accepted Not accepted
GitHub issue/PR inline play Yes Yes Yes

WebM Codec and Quality Method Reference

Setting Use it when Notes
VP9 codec Default; smaller files at the same quality Required for Telegram stickers and AV1-adjacent quality
VP8 codec Targeting Safari 11-14, older Android 4.x, or WebKit forks Larger files; widest legacy decoder support
Constant Quality (CRF) You want consistent visual quality, don't care about exact size CRF 31-35 is a good slideshow range for VP9
Constraint Quality Cap the worst-case quality drop while bounding bitrate Useful for live-streaming-style encodes
Target file size % Hitting a hard cap (Telegram 256 KB, Discord 10 MB) XConvert iterates the bitrate to hit the target
Constant Bitrate You need predictable network usage Less efficient than CRF for static slideshows

Telegram WebM Sticker Spec — Quick Checklist

Requirement Value
Container .webm
Codec VP9
One side dimension Exactly 512 px
Duration Up to 3 s
Max file size 256 KB
Max FPS 30
Audio None (must be removed)

For a single-image sticker, upload one JPEG, set Image Duration to 3 seconds, choose VP9, set Fixed Resolution to 512x512, pick Constant Quality (CRF) and lower the quality until output sits under 256 KB.

Frequently Asked Questions

Why convert JPEG to WebM instead of just embedding the JPEG?

WebM gives you motion, looping, and per-frame timing control that a still JPEG can't. It also lets you bundle multiple JPEGs into one file, which is faster to load (one HTTP request) and easier for the browser to cache than five separate images. For Telegram and Discord stickers, WebM is the only animated-image-without-GIF format the platforms accept.

Does Safari play WebM made from my JPEGs?

Safari has supported WebM since version 14.1 (April 26, 2021) on macOS Big Sur 11.3 and later, and on iOS 14.5. Both VP8 and VP9 streams play. Older Safari versions on macOS Catalina/Mojave and iOS 14.4 or lower won't play the file — for those audiences, consider JPEG to MP4 instead.

Why does my single-JPEG WebM still need a duration?

WebM is a video container; the spec requires at least one timestamped frame. Setting Image Duration tells the encoder how long to hold that frame on screen. The minimum you can pick on XConvert is 1/60 s (effectively a single-frame video that loops instantly); the maximum is 10 s per frame.

How do I make a Telegram WebM sticker from a single JPEG?

Upload one JPEG, set Image Duration to 3 seconds, Video Codec to VP9, Video Resolution to Fixed 512x512, File Compression to Constant Quality, and pick a CRF that puts the file under 256 KB (usually CRF 30-40 for a single still). Telegram also requires the sticker to have no audio — image-to-WebM conversion is silent by default, so nothing to remove.

Can I mix JPEG, PNG, and WebP in one slideshow?

Yes. The XConvert dropzone accepts JPG, JPEG, JFIF, PNG, and WebP simultaneously when the output is WebM. If your inputs have different aspect ratios, set a Background Color so the encoder has a defined fill for letterboxed regions. For pure PNG input, PNG to WebM skips the chroma subsampling step entirely.

What's the difference between VP8 and VP9 for image slideshows?

VP9 typically produces 25-50% smaller files than VP8 at the same visual quality (Google's published benchmarks). VP8 hardware decoders are universal across Android 4.x+ and Safari 14.1+; VP9 hardware decode is present on Android 5+, Safari 14.1+ (software), Chrome, Firefox, and Edge. For static-image slideshows the size difference is smaller than for live video, but VP9 is still the default unless you're targeting a legacy WebKit fork.

Will the output WebM loop automatically?

WebM itself doesn't carry a "loop" flag — looping is set by the player. In HTML5: <video loop autoplay muted playsinline>. Telegram, Discord, and Twitter all loop video stickers automatically. CSS background-video patterns also loop by default. The WebM file produced by XConvert is just the encoded frames; the playback environment decides loop behavior.

Can I add audio to a JPEG-to-WebM slideshow?

Not from the converter directly — input is a JPEG, which has no audio track. To produce a WebM with background music, convert your JPEGs to WebM here first, then mux audio using a video editor or ffmpeg (-c:v copy -c:a libopus). Telegram and animated-sticker contexts explicitly require no audio, so for stickers leave it muted.

How do I get the output under a specific size (Discord 10 MB, Telegram 256 KB)?

Set File Compression to "Target file size %" or "Target file size (exact)" and enter your cap. XConvert will iterate the encoder bitrate to land near the target. For very tight caps (Telegram's 256 KB), also reduce resolution to 512x512, drop FPS to 24 or lower, and shorten the slideshow. If you've already produced an oversized WebM elsewhere, Compress WebM can re-encode it down without changing format.

Rate JPEG to WebM Converter Tool

Rating: 4.8 / 5 - 69 reviews