OGV to MJPEG Converter

Convert OGV files to MJPEG format online. Free, fast, no watermarks.

Initializing... drag & drop files here

Supports: OGV

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
File Compression
Preset
Video resolution
Trim

Convert OGV to MJPEG: What This Tutorial Covers

This walks through turning an Ogg Theora video into a raw Motion JPEG stream — every frame stored as its own independent JPEG, one after another, with no container around them. That structure is why people want MJPEG: it is trivially frame-accurate, decodes on almost any hardware, and survives being cut anywhere. It is also why the file gets much bigger and loses the soundtrack entirely. Both of those are covered below so nothing about the result comes as a surprise.

How to Convert OGV to MJPEG

  1. Upload Your OGV File: Drag the .ogv onto the page or click "+ Add Files". These are usually Theora video with Vorbis or Opus audio in an Ogg container — old Wikipedia media, early HTML5 test clips, screen recordings from Linux tools.
  2. Set Constant Quality: Open Advanced Options. Video Codec is fixed to MJPEG. File Compression offers just two modes here — Quality Preset, and Constant Quality with a 2-31 quality scale that opens at 5, where lower is sharper. The bitrate modes and the specific-file-size target are not offered, because MJPEG has no rate control to hand them to.
  3. Resize or Trim (Optional): Video resolution opens on Keep original, with height presets from 4320p down to 144p, Width × Height, and Resolution Percentage. Trim takes a start time and a duration in seconds or HH:MM:SS.sss. Both are worth using here — see the size table.
  4. Convert and Download: Click Convert and download the .mjpeg. Files are uploaded over an encrypted connection, processed on our servers, and deleted automatically after a few hours — no sign-up, no watermark.

Walk-through: the Quality Scale Is the Only Size Control You Have

With no bitrate modes available, the quality slider and the frame size are the entire toolkit. The scale runs 2 to 31 and behaves like JPEG quality inverted — 2 is near the encoder's best, 31 is its worst. Here is the same six-second 720 × 480 Theora clip encoded across the range on this pipeline, against a 1,108,085-byte source:

Quality value Output size Multiple of the OGV source
2 4,959,543 bytes 4.5×
5 (the default) 3,621,881 bytes 3.3×
10 2,651,261 bytes 2.4×
20 1,806,945 bytes 1.6×
31 1,396,326 bytes 1.3×

Notice that even the worst setting is still larger than the Theora source. That is not a fault in the conversion — it is what happens when you throw away inter-frame compression. Theora describes each frame as a difference from its neighbours; MJPEG describes every frame from scratch. If your source has a static background, the gap is much wider than this test pattern suggests.

Practical patterns:

  • If you need a specific size, halve the frame height rather than pushing the quality value up — a 720p to 360p step cuts pixel count to a quarter and looks far better than quality 25 at full size.
  • If you want editing-friendly footage, stay at quality 2-5 and accept the size. That is the reason to choose MJPEG at all.
  • If you only need part of the clip, use Trim before touching quality. A ten-second excerpt at quality 3 is smaller and better than the whole clip at quality 20.

Common Errors and How to Fix Them

  • "The output has no sound" — expected, and unavoidable. A raw MJPEG stream is a bare run of JPEG frames with no container, so there is nowhere to store an audio track. The Audio Codec dropdown renders on this page because it is shared with every other video target, but its setting has no effect on a .mjpeg output; the audio is simply not carried. If you want independent JPEG frames and the sound, use OGV to AVI and set its Video Codec to MJPEG — AVI is a real container, so it can carry an audio track alongside the same frames.
  • "The file plays at the wrong speed" — a raw MJPEG has no header recording a frame rate, so a player assumes one, usually 25 frames per second. A 30 fps source therefore plays slightly slow. Wrap the stream in a container that can record the rate if timing matters.
  • "The file is enormous" — see the table above. Reduce the frame size first, quality second.
  • "My player will not open the .mjpeg" — many players decide from the extension and do not have .mjpeg on their list. VLC, mpv and ffmpeg-based tools read it directly; others may need it renamed or wrapped in a container.
  • "The original OGV will not play anywhere either" — that is a separate problem with the source, not the conversion. Browsers dropped Theora: Chrome disabled it by default in version 120 and Chromium removed it entirely in 123, Firefox disabled it by default in 126, and Safari never shipped it at all.

When This Is the Wrong Tool

If your goal is simply to make an old .ogv playable again, MJPEG is a detour — the file grows several times over, the sound disappears and the playback speed becomes a guess. Convert to OGV to MP4 instead and the clip plays on every phone, browser and TV with the audio intact. MJPEG earns its place in a narrower set of jobs: feeding a machine-vision or scientific-imaging pipeline that expects independent frames, editing on a system that struggles with long-GOP video, or supplying hardware whose only video decoder is a JPEG decoder. If none of those describes you, one of the container targets is the better answer.

If you want… Use Audio Frame rate recorded Independent frames
A single stream of JPEG frames This page, .mjpeg No No Yes
The same frames plus the soundtrack OGV to AVI with Video Codec set to MJPEG Yes Yes Yes
One image file per frame OGV to JPG with Multiple Screenshots No Not applicable Yes
Something that just plays OGV to MP4 Yes Yes No

Frequently Asked Questions

Why does the Audio Codec dropdown do nothing here?

Because the output format has nowhere to put audio. The dropdown, with its long list from AAC through to WMA, is shared across all video targets on the site and renders before the conversion knows what the container can hold. A .mjpeg file has no container at all — it is JPEG frames written back to back — so when the encode runs, the audio stream is simply not selected for output. We confirmed this by requesting MP3 audio explicitly and getting a single video stream back. There is no setting that changes it.

Will the MJPEG really be bigger than the OGV?

Yes, at every quality setting, and usually by several times. Theora is a modern-style codec that stores one full frame and then a long run of differences; MJPEG stores every frame independently as a complete JPEG. On our test clip the default quality setting produced a file 3.3 times the size of the source, and even the worst quality value was still 1.3 times larger. Static content widens the gap further, because that is exactly the case inter-frame compression handles best and MJPEG cannot exploit at all.

Is MJPEG lossy, and does converting from Theora lose more?

MJPEG is lossy — each frame is a JPEG. And yes, this is a second generation of loss: the Theora frames were already compressed, they are decoded back to pixels, and then re-compressed as JPEGs, so JPEG artefacts land on top of Theora artefacts. Quality 2 keeps that nearly invisible at the cost of a large file. There is no lossless path here; if you need one, extract the frames as PNG instead.

What is the quality scale, and how does it relate to JPEG quality?

It is a quantiser running from 2 to 31 where lower is better, which is the inverse of the familiar 0-100 JPEG quality slider. Roughly, 2 corresponds to a very high JPEG quality, 5 to a good one, 10 to a noticeably compressed one, and anything above 20 to visible blocking. It is not a CRF scale, so a number remembered from an H.264 workflow will be badly wrong. The control opens at 5, which is a sensible starting point for most footage.

Can I play the result in a browser?

No. Browsers do not play raw MJPEG files from a <video> element — the closest thing they support is a multipart MJPEG stream served with a specific content type, which is how IP cameras deliver live video, and that is a server behaviour rather than a file format. For browser playback convert to MP4 or WebM instead.

Does the conversion keep the Theora frame rate?

Not in the file. The frames come out in order and at the right count, but the raw MJPEG format has no field in which to record the rate, so any player has to assume one. Convert to a container target if the frame rate must survive — every real container records it.

Why not just extract the frames as JPGs instead?

That is often the better move, and it is essentially the same data organised differently. A raw .mjpeg is one file containing all the frames; extracting to individual JPGs gives you one file per frame, which is easier to browse, edit and feed to most software. Use .mjpeg when a downstream tool specifically wants a single stream, and a per-frame export when you want to work with the pictures.

Is Theora still being maintained?

The library is, even though the format is finished. The Theora I bitstream was frozen in June 2004 and has not changed since, but libtheora is still released — version 1.0 arrived in November 2008, 1.1.1 in January 2010, and 1.2.0 as recently as March 2025. What has changed is browser support, which is now effectively gone. That combination — decodable by tools, undecodable by browsers — is exactly why converting an .ogv out to something else has become worthwhile. See the OGV converter hub for the full set of targets.

Rate OGV to MJPEG Converter Tool

Rating: 4.8 / 5 - 55 reviews