render lab3 min read

FFmpeg, WebCodecs and MotionForge: How DojoClip Processes Video

Understand which DojoClip tools process media locally, when video is re-encoded, and how browser exports differ from saved Music MV videos.

Pansa Legrand

DojoClip uses several media-processing paths. A quick trim, a timeline export and an AI music video are different jobs, so they do not all run through the same engine. Knowing where the work happens helps you choose a tool and understand what has actually been saved.

Where your video is processed

Task Processing and result
Extract audio Browser processing produces an MP3 or WAV download.
Trim a video The browser processes your selected ranges; encoding depends on the operation and output.
Video Edit AI MotionForge previews and exports the timeline locally. Cloud AI actions are separate.
Music Visualizer The visualizer exports locally through MotionForge.
Story Music Video Uploaded media and generated clips are assembled by a worker using FFmpeg. Preview and final MP4 files are stored separately.

What the browser engines do

DojoClip uses Mediabunny for media reading and conversion in several local tools. Audio extraction, frame extraction and standard video trimming use this layer. A library may support more operations than a particular tool exposes; the controls on that page define what you can request.

FFmpeg WebAssembly provides a fallback for selected operations, including some audio extraction and compression paths. It is loaded when needed. The current integration follows the FFmpeg 0.12 API; older examples using createFFmpeg do not match that interface.

WebCodecs provides browser encoding and decoding. Codec availability depends on the browser and device. MotionForge manages the editor and visualizer composition/export workflow; it is not a remote render service.

A cut may require re-encoding

A container, such as MP4, packages media streams. A codec determines how their pictures or sound are encoded. Repackaging compatible compressed streams is called remuxing; creating new encoded frames or audio is transcoding.

Trimming to a particular start time can require decoding and re-encoding. Joining clips in DojoClip also creates a new encoded output. Do not assume every trim or merge preserves the original compressed data. Keep the source file and compare the output at cut boundaries, especially when speech or music must remain synchronized.

Local downloads and saved project files

Local media processing uses files on your device. The website still loads application code, and some operations need additional browser libraries. Choosing a cloud AI operation is a separate step that can require uploading the relevant media.

Saving an editor project does not automatically upload its local source files or its exported video. A downloaded export exists on your device; use the explicit upload/save-output action when you want a stored project output. Local media may need to be imported again on another device.

Music MV follows a different path: the worker assembles and stores its output. A playable preview is not proof that the final full-song video is ready. Wait for the final result and its download action.

Test a short sample first

  1. Keep an unchanged copy of your source.
  2. Try a short representative section before a long export.
  3. Check the output format and inspect sound, timing, text and cut boundaries.
  4. For a heavy job, close other demanding tabs or reduce resolution where the tool allows it.
  5. If a codec is unsupported, try a current browser or export a compatible source from your original editor.

Duration, resolution, codecs, effects and available memory all affect processing time. Initial library loading can also make the first run slower. There is no single speed estimate that applies to every device and file.

For a practical walkthrough, read the Fast Trim guide. For a multi-layer edit, open Video Edit AI.

FFmpeg, WebCodecs and MotionForge: How DojoClip Processes Video