Nach zehn Monaten Entwicklung steht das Multimedia-Paket FFmpeg 5.0 zur VerfĂŒgung, das eine Reihe von Anwendungen und eine Sammlung von Bibliotheken fĂŒr die Bearbeitung verschiedener Multimedia-Formate (Aufnahme, Umwandlung und Dekodierung von Audio- und Videoformaten) umfasst. Das Paket wird unter den Lizenzen LGPL und GPL verbreitet, die Entwicklung von FFmpeg erfolgt parallel zum Projekt MPlayer. Die signifikante Ănderung der Versionsnummer erklĂ€rt sich durch wesentliche Ănderungen in der API und den Wechsel zu einem neuen Veröffentlichungsmodus, nach dem neue bedeutende Versionen einmal im Jahr erstellt werden, wĂ€hrend Versionen mit verlĂ€ngertem UnterstĂŒtzungszeitraum alle zwei Jahre erscheinen. FFmpeg 5.0 wird die erste LTS-Version des Projekts sein.
Zu den Ănderungen in FFmpeg 5.0 gehören:
- Es wurde eine grĂŒndliche Bereinigung der alten APIs fĂŒr Codierung und Dekodierung durchgefĂŒhrt und der Ăbergang zu einer neuen N:M-API vollzogen, die eine einheitliche Programmierschnittstelle fĂŒr Audio und Video bietet und die Codecs fĂŒr Eingangs- und Ausgangsströme trennt. Alle alten, zuvor als veraltet gekennzeichneten APIs wurden entfernt. Eine neue API fĂŒr Bitstream-Filter wurde hinzugefĂŒgt. Formate und Codecs wurden getrennt - Mediencontainer-Entpacker betten nun nicht mehr den gesamten Kontext der Dekodierer ein. APIs zur Registrierung von Codecs und Formaten wurden entfernt - alle Formate sind jetzt immer registriert.
- Die Bibliothek libavresample wurde entfernt.
- In die Bibliothek libswscale wurde eine einfachere API basierend auf AVFrame integriert.
- Die UnterstĂŒtzung der Grafik-API Vulkan wurde erheblich verbessert.
- Die UnterstĂŒtzung fĂŒr die Hardwarebeschleunigung der Dekodierung und Codierung der Formate VP9 und ProRes unter Verwendung der API VideoToolbox wurde hinzugefĂŒgt.
- UnterstĂŒtzung fĂŒr die LoongArch-Architektur, die in Loongson-Prozessoren verwendet wird, sowie fĂŒr die in LoongArch bereitgestellten SIMD-Erweiterungen LSX und LASX wurde hinzugefĂŒgt. FĂŒr die Codecs H.264, VP8 und VP9 wurden spezifische Optimierungen fĂŒr LoongArch implementiert.
- UnterstĂŒtzung fĂŒr das Protokoll Concatf, das ein Format fĂŒr die Ăbertragung von Ressourcennamen definiert (âffplay concatf:split.txtâ), wurde hinzugefĂŒgt.
- Neue Dekodierer wurden hinzugefĂŒgt: Speex, MSN Siren, ADPCM IMA Acorn Replay, GEM (Rastergrafiken).
- Neue Encoder wurden hinzugefĂŒgt: bitpacked, Apple Graphics (SMC), ADPCM IMA Westwood, VideoToolbox ProRes. Die Encoderparameter fĂŒr AAC wurden geĂ€ndert, um eine höhere QualitĂ€t zu erreichen.
- Neue Mediencontainer-Muxer wurden hinzugefĂŒgt: Westwood AUD, Argonaut Games CVG, AV1 (niedrig-overhead Bitstream).
- Neue Mediencontainer-Demuxer wurden hinzugefĂŒgt: IMF, Argonaut Games CVG.
- Ein neuer Parser fĂŒr den Audiocodec AMR (Adaptive Multi-Rate) wurde hinzugefĂŒgt.
- Ein Payload-Datenpaket (Packetizer) fĂŒr die Ăbertragung von unkomprimiertem Video unter Verwendung des RTP-Protokolls (RFC 4175) wurde hinzugefĂŒgt.
- Neue Filter fĂŒr Video:
- segment und asegment â teilen einen Stream mit Video oder Audio in mehrere Streams auf, die nach Zeit oder Frames getrennt sind.
- hsvkey und hsvhold â ersetzen im Video einen Teil des HSV-Farbspektrums durch Werte in Graustufen.
- grayworld â Farbkorrektur von Video mit einem Algorithmus basierend auf der Gray World Hypothese.
- scharr â Anwendung des Scharr-Operators (eine Variante des Sobel-Operators mit anderen Koeffizienten) auf das Eingangsvideo.
- morpho â ermöglicht die Anwendung verschiedener morphologischer Transformationen auf Videos.
- latency und alatency â messen die minimale und maximale Filterverzögerung fĂŒr einen zuvor angewendeten Filter.
- limitdiff â bestimmt den Unterschied zwischen zwei oder drei Videostreams.
- xcorrelate â berechnet die Kreuzkorrelation zwischen Videostreams.
- varblur â variable UnschĂ€rfe fĂŒr Videos mit Bestimmung des UnschĂ€rferadius aus einem zweiten Video.
- huesaturation â Anwendung von Farbton-, SĂ€ttigungs- oder IntensitĂ€tskorrekturen auf das Video.
- colorspectrum â Erzeugung eines Videostreams mit einem bestimmten Farbspektrum.
- libplacebo â Anwendung zur Verarbeitung von HDR-Shadern aus der Bibliothek libplacebo.
- vflip_vulkan, hflip_vulkan und flip_vulkan â Varianten der vertikalen oder horizontalen Videoumkehrfilter (vflip, hflip und flip), die mit der grafischen API Vulkan implementiert sind.
- yadif_videotoolbox â eine Variante des Yadif-Deinterlacing-Filters auf Basis des VideoToolbox-Frameworks.
- Neue Filter fĂŒr den Sound:
- apasyclip â Anwendung eines psychoakustischen Cutters auf den Audiostream.
- afwtdn â unterdrĂŒckt breitbandiges Rauschen.
- adecorrelate â Anwendung eines Dekorreliationsalgorithmus auf den Eingangsstrom.
- atilt â Anwendung einer spektralen Verschiebung fĂŒr einen bestimmten Frequenzbereich.
- asdr â Bestimmung der Signalverzerrung zwischen zwei Audiostreams.
- aspectralstats â Ausgabe von Statistiken mit spektralen Eigenschaften jedes Audiokanals.
- adynamicsmooth â dynamische GlĂ€ttung des Audiostreams.
- adynamicequalizer â dynamische Anpassung des Audiostreams.
- anlmf â Anwendung des kleinste-Quadrate-Algorithmus auf den Audiostream.
Quelle: opennet.ru
