ffmpegav1svt-av1video-encodingcodecbucket-doc

FFmpeg AV1 Encoding: SVT-AV1 vs libaom-av1 Guide

·Javid Jamae·7 min read
FFmpeg AV1 Encoding: SVT-AV1 vs libaom-av1 Guide

AV1 delivers 30-50% better compression than H.264 at the same visual quality. But if you've tried encoding with libaom-av1, you already know the problem: a single 1080p minute can take over an hour. SVT-AV1 (libsvtav1) solves this with multi-threaded encoding that runs 10-50x faster while producing nearly identical quality.

This guide covers the practical tradeoffs between the two AV1 encoders in FFmpeg, recommended CRF settings, and how to encode AV1 without installing anything locally.

Quick Answer

For most production AV1 encoding, use SVT-AV1 at preset 6 with CRF 30:

ffmpeg -i input.mp4 -c:v libsvtav1 -crf 30 -preset 6 -pix_fmt yuv420p10le -c:a libopus -b:a 128k output.mp4

This produces a 10-bit AV1 stream in an MP4 container with Opus audio. It works in Chrome, Firefox, Safari, and Edge without any plugin or polyfill.

What Makes AV1 Different

AV1 is a royalty-free video codec developed by the Alliance for Open Media (AOMedia), which includes Google, Apple, Microsoft, Netflix, and Meta. Unlike H.265/HEVC, which carries licensing fees, AV1 is free to use in any product or service.

The compression gains are significant. AV1 achieves roughly 30% better compression than H.265 and 50% better than H.264 at equivalent visual quality. For a 10 Mbps H.264 stream, you can expect similar quality from AV1 at around 5 Mbps. That directly cuts bandwidth costs and improves playback on slower connections.

Browser support is no longer a blocker. As of 2026, AV1 hardware decoding ships in Apple's M-series chips, Intel 12th-gen and newer, AMD RDNA 3+, and all major mobile SoCs. Every modern browser supports AV1 playback natively.

SVT-AV1 vs libaom-av1

Both encoders produce valid AV1 bitstreams, but they target very different workflows.

FeatureSVT-AV1 (`libsvtav1`)libaom-av1
Speed10-50x faster than libaomExtremely slow, single-digit fps at high quality
Quality at same CRFSlightly lower at very low CRF (<20)Marginal edge in slow, exhaustive search
Multi-threadingNative, scales to 16+ coresLimited, mostly single-threaded
Use caseProduction encoding, batch processingResearch, reference quality comparisons
Recommended for productionYesNo

SVT-AV1 is the default AV1 encoder for production use. Netflix, YouTube, and most major streaming platforms use SVT-AV1 in their encoding pipelines. Use libaom-av1 only if you need reference-grade encodes and have unlimited time.

The Basic SVT-AV1 Command

ffmpeg -i input.mp4 -c:v libsvtav1 -crf 30 -preset 6 -pix_fmt yuv420p10le output.mp4

Breaking down each flag:

  • -c:v libsvtav1 selects the SVT-AV1 encoder. Your FFmpeg build must include --enable-libsvtav1. Run ffmpeg -encoders | grep svt to check.
  • -crf 30 sets the Constant Rate Factor. Lower values mean higher quality and larger files. AV1 CRF values don't map 1:1 to H.264 CRF values. A CRF 30 in AV1 looks roughly equivalent to CRF 23 in x264.
  • -preset 6 controls the speed/compression tradeoff. Ranges from 0 (slowest, best compression) to 13 (fastest, worst compression). Preset 6 is the widely recommended default.
  • -pix_fmt yuv420p10le enables 10-bit color depth. AV1 encodes more efficiently in 10-bit even for 8-bit source material because it reduces banding artifacts and improves compression.

For additional tuning, pass encoder-specific parameters with -svtav1-params:

ffmpeg -i input.mp4 -c:v libsvtav1 -crf 28 -preset 6 \
  -svtav1-params tune=0:film-grain=8 -pix_fmt yuv420p10le output.mp4

The film-grain parameter (0-50) synthesizes grain at decode time instead of wasting bits encoding it. Useful for cinematic or grainy source material.

CRF Values by Use Case

Use CaseCRF RangeRelative File SizeNotes
Archival / master20-25LargeVisually lossless for most content
Web delivery / streaming28-35MediumCRF 30 is a strong default for 1080p
Social media / previews35-40SmallNoticeable quality loss on detailed scenes

Start at CRF 30 and adjust by 2-3 points based on your content. Screen recordings and animation compress better (higher CRF). Fast-motion sports and concerts need lower CRF.

Preset Speed vs Compression

PresetRelative SpeedCompression EfficiencyBest For
4SlowExcellentFinal delivery where encode time isn't critical
5ModerateVery goodOvernight batch jobs
6Good balanceGoodGeneral production use (recommended)
7FastFairQuick previews, iterative testing
8Very fastLowerDraft encodes, rapid prototyping

Preset 6 offers the best tradeoff between speed and output quality. Going below preset 4 yields diminishing returns for most content. Going above preset 8 drops compression efficiency enough to negate AV1's advantage over H.265.

Encoding AV1 with the FFmpeg Micro API

Skip the local FFmpeg build entirely. The FFmpeg Micro API handles AV1 encoding in the cloud with SVT-AV1 pre-configured:

curl -X POST https://api.ffmpeg-micro.com/v1/transcodes \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "inputs": [{"url": "https://storage.example.com/raw/video.mp4"}],
    "outputFormat": "mp4",
    "options": [
      {"option": "-c:v", "argument": "libsvtav1"},
      {"option": "-crf", "argument": "30"},
      {"option": "-preset", "argument": "6"},
      {"option": "-pix_fmt", "argument": "yuv420p10le"}
    ]
  }'

The API returns a job ID and status immediately:

{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "status": "queued",
  "billable_minutes": 2
}

No codec compilation, no dependency management, no server provisioning. Point it at a source URL and get AV1 output in MP4.

Common Pitfalls

Using libaom-av1 for batch encoding. A five-minute 1080p clip can take 2+ hours with libaom at default settings. Switch to libsvtav1 unless you have a specific reason to use the reference encoder.

Forgetting 10-bit pixel format. Omitting -pix_fmt yuv420p10le defaults to 8-bit encoding. SVT-AV1 produces better compression and fewer banding artifacts in 10-bit mode, even from 8-bit sources.

Mapping H.264 CRF values directly to AV1. CRF 23 in x264 does not equal CRF 23 in SVT-AV1. AV1 CRF scales differently. Start at CRF 30 for AV1, not CRF 23.

Using preset 0-2 expecting huge quality gains. Presets below 4 increase encode time dramatically with minimal visual improvement. The VMAF difference between preset 2 and preset 6 is typically under 1 point for most content.

FAQ

What's the difference between libsvtav1 and libaom-av1 in FFmpeg?
Both are AV1 encoders available in FFmpeg. SVT-AV1 (libsvtav1) is optimized for speed and production use with native multi-threading. libaom-av1 is the reference encoder, much slower but marginally better at exhaustive quality optimization. For any real-world encoding pipeline, SVT-AV1 is the standard choice.

What CRF should I use for AV1 web video?
CRF 28-32 works well for web delivery at 1080p. CRF 30 with preset 6 is the most common starting point. Adjust down (better quality) for high-motion content or up (smaller files) for talking-head or screencast material.

Can I put AV1 video in an MP4 container?
Yes. AV1 in MP4 is supported by Chrome, Firefox, Safari, and Edge. The MP4 container with AV1 video and AAC or Opus audio plays natively in all modern browsers without additional plugins.

Is AV1 encoding too slow for production?
Not with SVT-AV1. At preset 6, SVT-AV1 encodes 1080p content at 30-60+ fps on modern multi-core CPUs. That's fast enough for real-time or near-real-time workflows. The "AV1 is too slow" reputation comes from libaom, which is 10-50x slower.

Do I need hardware AV1 support for playback?
Software decoding works on any modern device, but hardware decoding significantly reduces battery and CPU usage. Intel 12th-gen+, Apple M1+, AMD RDNA 3+, and recent Qualcomm Snapdragon chips all include AV1 hardware decoders.

*Last verified: July 2026*

About Javid Jamae

Founder & CEO at FFmpeg Micro

Javid is a software engineer, author, and entrepreneur with over 25 years of professional software development experience across enterprise, startup, and consulting environments. He founded FFmpeg Micro to make video processing accessible to developers through a simple, automation-first REST API.

Software EngineeringVideo ProcessingFFmpegCloud ArchitectureAPI DesignAutomation

Ready to process videos at scale?

Start using FFmpeg Micro's simple API today. No infrastructure required.

Get Started Free