close

FFmpeg

Ga naar navigatie Ga naar zoeken
FFmpeg
FFmpeg-logo nieuw.svg
FFmpeg 4.4 screenshot.png
Algemene informatie
programmatype: mediakader _
Auteur Fabrice Bellard
ontwikkelaar ffmpeg-team
Ontwikkelingsmodel Gratis software
Eerste uitgave 20 december 2000
kwetsbaarheden
Licentie GNU LGPL 2.1+
GNU GPL 2+
Technische informatie
gepland in C [ 1 ]
Ondersteunde platforms
versies
Laatste stabiele versie 5.1.2 ( info ) (25 september 2022 (21 dagen))
leesbare bestanden
bewerkbare bestanden
Links

FFmpeg is een verzameling gratis software die audio en video kan opnemen, converteren (transcoderen) en streamen . Bevat libavcodec, een bibliotheek met codecs . FFmpeg is ontwikkeld op GNU/Linux , maar kan worden gecompileerd op de meeste besturingssystemen, waaronder Windows . Het project is gestart door Gerard Lantau, een pseudoniem voor Fabrice Bellard , en wordt nu onderhouden door Michael Niedermayer. Het is opmerkelijk dat de meeste FFmpeg-ontwikkelaars ook van het MPlayer -project zijn (plus één lid van het Xine -project ), en dat FFmpeg wordt gehost op de MPlayer-projectserver.

FFmpeg wordt vrijgegeven onder een GNU Lesser General Public License 2.1+ of GNU General Public License 2+ (afhankelijk van welke bibliotheken zijn inbegrepen). [ 2 ] De ontwikkelaars raden aan om de laatste Subversion snapshot te gebruiken omdat ze constant een stabiele versie onderhouden.

FFmpeg is een opdrachtregelprogramma dat tot op zekere hoogte kan worden gebruikt door zowel mensen met geavanceerde kennis als gebruikers met basiskennis. U kunt de codec kiezen door gewoon de extensie te typen. FFmpeg gebruikt bijvoorbeeld x264 als we .mp4 kiezen, mpeg4 als we .avi gebruiken, VP8 als we .webm gebruiken, enz...

Componenten

Image
Bedrijfsschema.

Het project bestaat uit:

  • ffmpeg : is een opdrachtregelprogramma om audio of video van het ene formaat naar het andere te converteren. U kunt ook in realtime vastleggen en coderen vanaf DirectShow, een tv-kaart of een ander compatibel apparaat.
  • ffserver : is een live-uitzending mediastreamingserver die HTTP ondersteunt ( RTSP -ondersteuning is in ontwikkeling). Het bevindt zich nog niet in een stabiele fase en is op dit moment niet beschikbaar voor Windows.
  • ffplay - is een mediaspeler gebaseerd op SDL en de FFmpeg-bibliotheken.
  • libavcodec : is een bibliotheek die alle FFmpeg-codecs bevat. Veel ervan zijn helemaal opnieuw ontwikkeld om een ​​grotere efficiëntie en zeer herbruikbare code te garanderen.
  • libavformat : is een bibliotheek die de multiplexers/demultiplexers voor de mediacontainerbestanden bevat .
  • libavutil : is een ondersteuningsbibliotheek die alle gebruikelijke routines in de verschillende delen van FFmpeg bevat.
  • libpostproc : is een bibliotheek met video-nabewerkingsfuncties.
  • libswscale : is de videoschaalbibliotheek.

Codecs

Het is de hoofdbibliotheek van het FFmpeg-project, het kan coderen/decoderen in verschillende audio- en videoformaten, het is ontwikkeld in C .

Geïmplementeerde videocodecs

De standaard MPEG-4- codec die in FFmpeg wordt gebruikt, is de FourCC -codec van FMP4 .

Geïmplementeerde audiocodecs

Handige case

Als het probleem de grootte van een videobestand is dat als buitensporig kan worden beschouwd voor de kwaliteit van de video en het noodzakelijk is dat het bestand de kwaliteit (zoveel mogelijk) behoudt, of gewoon dat het kleiner is; Een goede optie zonder gebruik te maken van propriëtaire codecs is het gebruik van de H264-videocodec of ook wel bekend als MPEG-4 part 10.

ffmpeg -i 'in_Movie.avi' -ab 128k -vcodec libx264 'out_Movie.avi'

-i Om het te converteren bestand (formaat) aan te geven, in dit geval "in_Pelicula.avi".

-ab Om de bitsnelheid aan te geven , wordt 128 kbps aangegeven. Standaard converteert FFmpeg video's naar 64k bitrate, het kan nodig zijn om de originele videobitrate te kennen en aan te geven om de geluidskwaliteit te behouden. U kunt de informatie van een video opvragen met " ffprobe ".

-vcodec Om de te gebruiken videocodec aan te geven, wordt in dit geval libx264 aangegeven . U kunt de video- en audiocodecs controleren met " ffmpeg -codecs ".

Een wat langer praktisch voorbeeld om een ​​videobestand te comprimeren met behoud van bijna transparante kwaliteit, met de gratis codec x264 en aac lc:

ffmpeg -y -i 'video' -vcodec libx264 -crf 25 -preset langzamer -tune film -acodec aac -ar 44100 -b:a 112k -ac 2 -strict experimenteel 'converted_video.mp4'

wettigheid

De juridische status van FFmpeg verschilt per land. Sommige meegeleverde codecs (zoals Soreson 3) worden geclaimd door octrooihouders. Deze claims zouden waarde hebben in landen als de Verenigde Staten waar softwarepatenten worden erkend . Toch worden veel van deze codecs vrijgegeven onder voorwaarden die reverse engineering verbieden, inclusief om interoperabiliteit te vergemakkelijken , termen die in sommige landen verboden zijn. In sommige landen van de Europese Unie worden bijvoorbeeld softwarepatenten niet erkend of hebben ze wetten die reverse engineering uitdrukkelijk toestaan ​​voor interoperabiliteitsproblemen. In elk geval bevatten veel GNU/Linux-distributies geen FFmpeg om juridische complicaties te voorkomen.

van FFmpeg

Image
Xvidkap.

FFmpeg wordt gebruikt in veel gratis en propriëtaire projecten, waaronder ffmpeg2theora, VLC , MPlayer , HandBrake , Blender , Google Chrome , MystiQ , Videomorph en andere. [ 3 ]

Er zijn ook verschillende multimedia- frameworks die gebruik maken van FFmpeg, zoals DirectShow / VFW ( ffdshow ), QuickTime (perian), GStreamer , OpenMAX, xine .

Zie ook

  • Zie de portal over Vrije Software Portaal: gratis software . Inhoud gerelateerd aan Vrije Software .
  • MediaCoder , media transcoder voor Windows-besturingssystemen.

Referenties

  1. ^ "Ohloh Analyse Samenvatting - FFmpeg" . Oh bah . Ontvangen 18 oktober 2009 . 
  2. Projecten

Externe links