Tíz hónapos fejlesztés után elérhető az FFmpeg 5.0 multimédiás csomag, amely alkalmazásokból és könyvtárak gyűjteményéből áll különböző multimédiás formátumokkal kapcsolatos műveletekhez (hang- és videóformátumok rögzítése, átalakítása és dekódolása). A csomag LGPL és GPL engedély alatt terjesztésre kerül, az FFmpeg fejlesztése párhuzamosan zajlik az MPlayer projekttel. A verziószám jelentős változása a jelentős API-változásokkal és az új kiadási séma bevezetésével magyarázható, amelynek értelmében újabb jelentős kiadások évente, míg a hosszabb támogatási időt biztosító kiadások kétévente készülnek. Az FFmpeg 5.0 lesz a projekt első LTS-kiadása.
Az FFmpeg 5.0-hoz hozzáadott változások közül kiemelhető:
- Jelentős tisztítás történt a régi kódolási és dekódolási API-k között, és áttértek az új N:M API-ra, amely egy egységes programozási interfészt kínál a hang és videó számára, valamint a bemeneti és kimeneti folyamokhoz külön kódereket. Minden régi, korábban elavultnak minősített API eltávolításra került. Új API került bevezetésre bitstream-szűrők számára. Felosztották a formátumokat és kódereket - a médiakonténer dekódolóinak nem kell többé beágyazniuk az összes dekódoló kontextust. Azok az API-k, amelyek a kóderek és formátumok regisztrálására szolgáltak, megszűntek - mostantól minden formátum mindig regisztrálva van.
- Eltávolították a libavresample könyvtárat.
- A libswscale könyvtárhoz egy egyszerűbb API került hozzáadásra, amely AVFrame alapú.
- Jelentősen javult a Vulkan grafikus API támogatása.
- Hozzáadták a VP9 és ProRes formátumok dekódolásának és kódolásának hardveres gyorsítását a VideoToolbox API használatával.
- Hozzáadták a LoongArch architektúra támogatását, amely a Loongson processzorokban használatos, valamint a LoongArch SIMD-bővítmények, az LSX és LASX támogatását. A H.264, VP8 és VP9 kóderekhez LoongArch-specifikus optimalizálások kerültek bevezetésre.
- Hozzáadták a Concatf protokoll támogatását, amely egy formátumot definiál az erőforráslista átadásához ("ffplay concatf:split.txt").
- Új dekódolók kerültek hozzáadásra: Speex, MSN Siren, ADPCM IMA Acorn Replay, GEM (raszteres képek).
- Új kódolók lettek hozzáadva: bitpacked, Apple Graphics (SMC), ADPCM IMA Westwood, VideoToolbox ProRes. Az AAC kódoló paraméterei megváltoztak a jobb minőség elérése érdekében.
- Új médiakonténer muxerek kerültek hozzáadásra: Westwood AUD, Argonaut Games CVG, AV1 (alacsony overhead bitstream).
- Új médiakonténer demuxerek kerültek hozzáadásra: IMF, Argonaut Games CVG.
- Új AMR (Adaptív Multi-Ráta) hangkódoló elemző került hozzáadásra.
- Új payload-adatok csomagoló (packetizer) került hozzáadásra, amely tömörítetlen videoköltségek továbbítását teszi lehetővé RTP (RFC 4175) protokoll segítségével.
- Új szűrők videóhoz:
- segment és asegment — egy videó- vagy audiófolyam idő- vagy képkockák szerinti több folyamra való felosztása.
- hsvkey és hsvhold — a videó színpalettájának egy részét HSV szürkeskálás értékeivel helyettesítik.
- grayworld — videók színkorrekciója a szürke világ hipotézise alapján.
- scharr — a bemeneti videóra a Scharr operator (a Sobel operátor egy módosított változata) alkalmazása.
- morpho — lehetővé teszi különböző morfológiai átalakítások alkalmazását videókra.
- latency és alatency — a korábban alkalmazott szűrő által mért minimális és maximális késleltetés.
- limitdiff — meghatározza a különbséget két vagy három videofolyam között.
- xcorrelate — a videofolyamok közötti kölcsönös korreláció kiszámítása.
- varblur — változó elmosódás videón, ahol a második videóból határozzák meg az elmosódás sugarát.
- huesaturation — szín- és fényerősség-kiigazítás alkalmazása videón.
- colorspectrum — videofolyam generálása megadott színspektrummal.
- libplacebo — HDR shader-ek feldolgozására szolgáló libplacebo könyvtár alkalmazása.
- vflip_vulkan, hflip_vulkan és flip_vulkan — a videó függőleges vagy vízszintes megfordítását megvalósító szűrők (vflip, hflip és flip), amelyeket a Vulkan grafikus API-val valósítottak meg.
- yadif_videotoolbox — a VideoToolbox keretrendszeren alapuló yadif deinterlacing szűrő változat.
- Új szűrők hanghoz:
- apsyclip — pszichoakusztikus szűrő alkalmazása a hangfolyamra.
- afwtdn — széles sávú zaj csökkentése.
- adecorrelate — a bemeneti folyamra dekoreláló algoritmus alkalmazása.
- atilt — spektrális eltolás alkalmazása egy megadott frekvenciatartományra.
- asdr — jeldeformáció meghatározása két hangfolyam között.
- aspectralstats — a hangcsatornák spektrális jellemzőivel kapcsolatos statisztikák megjelenítése.
- adynamicsmooth — dinamikus simítás a hangfolyamon.
- adynamicequalizer — a hangfolyam dinamikus kiegyenlítése.
- anlmf — a hangfolyamon a legkisebb négyzetek módszerének alkalmazása.
Forrás: opennet.ru
