Drop a cap on that OBS clip.
OBS records sharp .mkv at any size. Its built-in gif export is rough. gifcap is the encode step that respects what OBS captured.
- obs's built-in gif export uses default ffmpeg · obs's mkv files are great source but need a separate encode step · most tools won't read mkv directly · workflow shouldn't take three apps
gifcap. drop your obs .mkv in gifcap (it reads mkv, mp4, webm, avi). set the size cap, fps, dimensions. gifcap pairs ffmpeg decode with gifski encode for per-frame palettes. one drag-drop, one encode.
| axis | obs built-in / online tools | gifcap |
|---|---|---|
| reads .mkv directly | requires conversion | native mkv input |
| encoder | default ffmpeg or jpeg-anim | ffmpeg + gifski |
| hard size cap | no | binary search |
| workflow | obs → ffmpeg cli → upload tool | obs → drag-drop gifcap |
| cost | free | free tier; pro $29 lifetime |
How gifcap solves this — in detail
OBS Studio is the de facto open-source screen recorder for Windows because it scales — single-source workflows are frictionless, multi-source streaming setups work the same way, and the recording is crash-recoverable. The default output format is MKV specifically because MKV survives OBS crashes mid-recording while MP4 doesn't. The catch: most GIF tools won't read MKV without a remux step.
gifcap reads MKV natively (via bundled ffmpeg). Drop the .mkv in, gifcap demuxes the video stream, gifski encodes the GIF with per-frame palettes, the binary-search size cap holds the output under your target. No intermediate remux, no pre-processing, no command-line ffmpeg incantation.
OBS users frequently work with longer recordings — full demos, full streams, full work sessions. gifcap's trim panel handles this directly: drop the long recording, set start and end timestamps for the segment you want, encode just that segment. The original recording stays intact for re-clipping later.
OBS recording → GIF — workflow notes
- OBS default record format: MKV (crash-recoverable)
- Alternative: MP4 (smaller, but loses recording on OBS crash)
- gifcap input: native MKV, MP4, MOV, WEBM, AVI
- OBS-to-GIF via OBS itself: possible via custom ffmpeg args; default output is dithered
- Recommended OBS settings for GIF source: 30 fps capture, 1080p or lower, stream-quality preset
- gifcap trim: select segment via start / end timestamps before encoding
- Encode time: roughly 0.5–2× source duration for typical 30s clips