
FFmpeg
Open source multimedia-verwerkingsframework
Coderen, decoderen, transcoden, streamen en audio- en videobestanden converteren via de FFmpeg API.
Wat is FFmpeg?
FFmpeg is een toonaangevend open‑source multimedia‑framework dat ontwikkelaars in staat stelt audio‑ en video‑content op te nemen, te converteren en te streamen. Het bevat een uitgebreide set bibliotheken — zoals libavcodec, libavformat, libavutil, libavfilter, libswscale en libswresample — die robuuste tools bieden voor het afhandelen van diverse multimedia‑taken. Met ondersteuning voor honderden codecs en formaten, levert FFmpeg talloze toepassingen, van videobewerkingssoftware tot streaming‑servers en mediaspelers.
FFmpeg wordt breed toegepast in diverse sectoren vanwege zijn flexibiliteit, prestaties en actieve community‑ondersteuning. Het verwerkt alles, van eenvoudige formaatconversie tot complexe videofiltering en realtime streaming. Of je nu een mediaserver, een desktopspeler of een cloud‑gebaseerde transcoding‑pipeline bouwt, FFmpeg levert betrouwbare, hoogwaardige verwerkingsmogelijkheden. De commandoregeltools zoals ffmpeg, ffplay en ffprobe maken het eenvoudig om te integreren in scripts en automatiseringsworkflows, terwijl de C‑API en bindings (bijv. voor Python) diepgaande programmeercontrole mogelijk maken.
Aan de slag met FFmpeg
Om FFmpeg te gaan gebruiken, installeer je het via de pakketbeheerder van je systeem (bijv. `apt install ffmpeg` op Ubuntu, `brew install ffmpeg` op macOS) of download je kant-en-klare binaries van de officiële site. Voor programmatisch gebruik installeer je de Python-wrapper via `pip install ffmpeg-python` of gebruik je de officiële C-bibliotheekheaders. FFmpeg is ook beschikbaar op GitHub via [FFmpeg GitHub](https://github.com/FFmpeg/FFmpeg), waar je vanuit de bron kunt bouwen voor aangepaste configuraties. Het lichte geheugen- en schijfgebruik en de cross‑platformondersteuning maken het ideaal voor desktop-, server- en embedded-implementaties.
Installeer FFmpeg via pakketbeheerders
# Ubuntu/Debian
sudo apt update && sudo apt install ffmpeg
# macOS (Homebrew)
brew install ffmpeg
# Python wrapper
pip install ffmpeg-python
Media converteren tussen formaten
FFmpeg blinkt uit in het converteren van mediabestanden tussen honderden formaten en codecs. Je kunt video transcoderen van MP4 naar WebM, audio uit videobestanden extraheren, of containerformaten wijzigen zonder opnieuw te coderen (stream copy). De intelligente standaardinstellingen zorgen voor hoge kwaliteit, terwijl geavanceerde opties je in staat stellen bitrate, resolutie, framerate en codec‑parameters fijn af te stemmen. Of je nu content voorbereidt voor webstreaming, archivering of weergave op specifieke apparaten, FFmpeg biedt precieze controle over de uitvoerkwaliteit en compatibiliteit. De commandoregelinterface ondersteunt complexe filterketens voor het schalen, bijsnijden en toepassen van effecten tijdens de conversie.
Hoe MP4 naar WebM converteren met FFmpeg?
ffmpeg -i input.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 -c:a libopus output.webm
Realtime streaming & live-uitzending
FFmpeg ondersteunt het opnemen, transcoderen en streamen van live media via protocollen zoals RTMP, HLS en SRT. Het kan opnemen van webcams, microfoons of netwerkbronnen en streams pushen naar platforms zoals YouTube, Twitch of aangepaste RTMP-servers. Met opties voor lage latentie en adaptieve bitrate-streaming levert FFmpeg live-uitzendingen voor evenementen, gaming en bewaking. Het vermogen om meerdere inputs te verwerken, grafische overlays toe te voegen en realtime filters toe te passen maakt het ideaal voor professionele streamingopstellingen. Je kunt de output ook segmenteren voor DASH/HLS voor adaptieve weergave op mobiele en webclients.
Hoe stream je een videobestand naar YouTube Live?
ffmpeg -re -i input.mp4 -c:v libx264 -preset veryfast -maxrate 3000k -bufsize 6000k -g 50 -c:a aac -b:a 160k -f flv "rtmp://a.rtmp.youtube.com/live2/your_stream_key"
Videofiltering & nabewerking
Het libavfilter‑framework van FFmpeg maakt krachtige realtime videofiltering mogelijk via een gerichte acyclische graaf van filters. Je kunt bijsnijden, schalen, roteren, deinterlacen, ruis verwijderen, watermerken overleggen, tekst toevoegen, kleuren aanpassen en complexe effecten toepassen zoals slow motion of time‑lapse — allemaal zonder de volledige stream opnieuw te coderen. Filters kunnen aan elkaar gekoppeld worden voor meerstapsverwerking, en hardwareversnelling (bijv. NVENC, VAAPI, VideoToolbox) zorgt voor prestaties op moderne GPU’s. Dit maakt FFmpeg onmisbaar voor videobewerkers, contentmakers en ontwikkelaars die mediaverwerkingspijplijnen bouwen die visuele verbeteringen of formatnormalisatie vereisen.
Hoe een video bijsnijden, schalen en een watermerk toevoegen?
ffmpeg -i input.mp4 -i watermark.png -filter_complex "[0:v]crop=1280:720:0:0[scaled];[scaled][1:v]overlay=10:10" -c:a copy output.mp4
Metadata en ondertitels extraheren & manipuleren
FFmpeg biedt volledige controle over metadata (tags) en ondertitels die in mediabestanden zijn ingebed. Je kunt metadata (bijv. titel, artiest, album, GPS-gegevens) extraheren, bewerken of verwijderen met eenvoudige commando's, of ondertitels converteren tussen formaten zoals SRT, ASS en VTT. Het ondersteunt het inbranden van ondertitels in video of het insluiten als afzonderlijke sporen. Voor toegankelijkheids- en lokalisatieworkflows maakt FFmpeg batchverwerking van ondertitelbestanden, timingaanpassingen en beheer van taalsporen mogelijk. Dit maakt het ideaal voor ondertitel lokalisatie, beheer van media‑assets en naleving van uitzendnormen die ingebedde metadata vereisen.
Hoe ondertitels uit een videobestand halen?
ffmpeg -i input.mkv -map 0:s:0 -c:s srt output.srt
