FFmpeg

FFmpeg ist ein freies Software-Projekt, das Bibliotheken und Programme produziert für den Umgang mit Multimedia-Daten. FFmpeg enthält libavcodec, ein Audio / Video-Codec-Bibliothek durch mehrere andere Projekte, libavformat, ein Audio / Video-Container-Multiplexer und Demultiplexer-Bibliothek und das ffmpeg Kommandozeilenprogramm für die Transcodierung von Multimedia-Dateien verwendet. FFmpeg ist unter der GNU Lesser General Public License 2.1 + oder GNU General Public License veröffentlicht 2+.

Rechtliche Aspekte

FFmpeg enthält mehr als 100-Codecs, von denen die meisten nicht nur unkomprimierte Daten speichern. Die meisten Codecs, die Daten zu komprimieren könnte von Patentinhabern geltend gemacht werden. Solche Ansprüche können in Ländern wie den Vereinigten Staaten, die Softwarepatente umgesetzt haben durchsetzbar sein, die jedoch nicht als aufgehoben oder nichtig in Ländern, die nicht implementiert Software-Patente haben.

Geschichte

Das Projekt wurde von Fabrice Bellard im Jahr 2000 begonnen und ist seit 2004 Viele FFmpeg-Entwickler von Michael Niedermayer gepflegt sind auch Teil des MPlayer-Projekt. Der Name des Projekts stammt aus dem MPEG-Video-Standards-Gruppe, zusammen mit "FF" für "Schnellvorlauf". Das Logo wird ein Zickzack-Muster, wie MPEG-Video-Codecs umgehen Entropie-Codierung zeigt.

FFmpeg ist unter GNU / Linux entwickelt, aber es kann unter den meisten Betriebssystemen wie Mac OS X, Microsoft Windows, AmigaOS und seine Erben MorphOS kompiliert werden. Die meisten Computer-Plattformen und Mikroprozessor-Befehlssatzarchitekturen werden unterstützt, wie x86, PPC, ARM, DEC Alpha, SPARC und MIPS.

FFmpeg-Version 0.5 erschien nach langer Zeit ohne formale Mitteilungen. FFmpeg-Entwickler empfehlen die Verwendung der neuesten neutral Build von ihren Quellcode Git Versionskontrollsystem.

Es gab zwei Video-Codecs und ein Video-Container in der FFmpeg-Projekt während seiner Entwicklung erfunden. Die beiden Video-Codecs sind die verlustfreie "FFV1", und die verlustfreie und verlustbehaftete Schnee-Codec, dessen Entwicklung ist ins Stocken geraten, während die Bit-Stream-Format ist noch nicht abgeschlossen, so dass es experimentell für jetzt, und die Multimedia-Behälter "NUT" auch nicht mehr aktiv entwickelt, ist aber immer noch gepflegt.

Im Sommer 2010 Fiona Glaser, Ronald Bultje und David Conrad des FFmpeg-Team gab die ffvp8 Decoder. Durch Tests festgestellt, dass sie ffvp8 war schneller als Google-eigenen libvpx Decoder. Ab Version 0.6 FFmpeg unterstützt WebM und VP8.

Am 13. März 2011 beschloss eine Gruppe von FFmpeg-Entwickler, um das Projekt unter dem Namen "Libav" Gabel. Die Veranstaltung scheint einer der letzten Ausgaben im Projektmanagement. Seitdem hat sich die Betreuer des FFmpeg-Pakete für Debian und Ubuntu-Betriebssystemen als eine der Gruppe von Entwicklern, die FFmpeg gegabelt, hat sie mit der Gabel eingeschaltet. Ab 10. November 2013 Debian-Entwickler Rogério Brito zog nach FFmpeg in Debian und Ubuntu neu zu gründen, mit User-Support.

Im Oktober 2013, ein gebürtiger VP9 und dem OpenHEVC Decoder, einem Open-Source High Efficiency Video Coding-Decodierer, wurden FFmpeg aufgenommen.

Am 10. Januar 2014 bekannt gegeben, zwei Mitarbeiter von Google, dass mehr als 1000 Fehler wurden in FFmpeg während der letzten zwei Jahre mit Hilfe von Fuzzing behoben.

Components

Das Projekt besteht aus mehreren Komponenten:

  • ffmpeg ist ein Kommandozeilen-Tool, das Audio- oder Videoformate umwandelt. Es kann auch zu packen und zu kodieren in Echtzeit von einer TV-Karte.
  • ffserver ist eine RTSP und Multimedia-Streaming-Server für Live-Übertragungen. Es kann auch der Zeit verschieben Live-Übertragung.
  • ffplay ist ein einfacher Media-Player basierend auf SDL und auf den FFmpeg-Bibliotheken.
  • ffprobe ist ein Kommandozeilen-Tool, um Medieninformationen zeigen auch Mediainfo.
  • libswresample ist eine Bibliothek mit Audio Resampling-Routinen.
  • libavresample ist eine Bibliothek mit Audio Resampling-Routinen von der Libav Projekts, ähnlich wie von ffmpeg libswresample.
  • libavcodec ist eine Bibliothek, die alle FFmpeg Audio / Video-Encoder und Decoder. Die meisten Codecs wurden von Grund auf neu entwickelt, um eine optimale Leistung und hohe Wiederverwendbarkeit zu gewährleisten.
  • libavformat ist eine Bibliothek, die Demuxer und Muxer für Audio / Video-Containerformate.
  • libavutil ist eine Hilfsbibliothek enthält Routinen gemeinsam auf verschiedene Teile des FFmpeg. Diese Bibliothek enthält Adler-32, CRC, MD5, RIPEMD, SHA-1, SHA-2, LZO Dekompressor, Base64 Encoder / Decoder, DES Verschlüssler / Entschlüssler, RC4 Verschlüssler / Entschlüssler und AES-Verschlüsselungs / Decrypter.
  • libpostproc ist eine Bibliothek, die Video-Nachbearbeitung Routinen.
  • libswscale ist eine Bibliothek mit Videobildskalierung und Farbraum / Pixelformat Konvertierungsroutinen.
  • libavfilter ist der Ersatz für vhook die der Video / Audio-modifiziert oder zwischen dem Decoder und dem Codierer untersucht werden können.

Codecs, Formate und Protokolle unterstützt

Die PGMYUV Bildformat ist ein homebrewn Variante des binären PGM Netpbm Format. FFmpeg unterstützt auch 16-Bit-Tiefen der Formate PGM und PPM, und das binäre PAM-Format mit oder ohne Alpha-Kanal, Tiefe 8 Bit oder 16 Bit für Monob, grau, gray16be, RGB24, rgb48be, gray8a, RGBA, rgb64be.

Codecs

Neben FFV1 und Snow-Codecs, die von FFmpeg geboren werden, setzt das Projekt:

Die Standard-MPEG-4-Codec von FFmpeg für die Codierung verwendet wird, hat das FourCC von FMP4.

Containerformate

  • ASF
  • AVI und auch Input von AviSynth
  • BFI
  • CAF
  • FLV
  • GXF, General eXchange Format, SMPTE 360M
  • IFF
  • ISO-Grundmedien-Dateiformat
  • Matroska
  • Maxis XA
  • MPEG-Programmstrom
  • MPEG-Transportstrom
  • MXF, Material eXchange Format, SMPTE 377m
  • MSN Webcam-Stream
  • NUT
  • Ogg
  • OMA
  • RL2
  • TXD
  • WTV

Protokolle

Projekte mit FFmpeg

FFmpeg ist von Anwendungssoftware, wie VLC media player, MPlayer, xine, Handbrake, Plex, Blender, YouTube und MPC-HC sowie Directshow wie ffdshow und LAV-Filter verwendet.

FFmpeg nimmt die HTML5-Video und Audio Media-Inhalten in Google Chrome und Origyn Web Browser.

Grafische Benutzeroberflächen Frontends für FFmpeg entwickelt worden, einschließlich Avanti und XMedia Recode. JavaCV, eine Java-Wrapper für OpenCV, enthält eine zusätzliche Java-Wrapper für FFmpeg.

Multimedia-Frameworks mit FFmpeg

(0)
(0)
Kommentare - 0
Keine Kommentare

Fügen Sie einen Kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Zeichen übrig: 3000
captcha