Na zes maanden ontwikkeling is het multimedia-pakket FFmpeg 7.1 beschikbaar, met een set applicaties en een collectie bibliotheken voor het werken met verschillende multimediaformaten (opname, conversie en decodering van audio- en videoformaten). Het pakket is geschreven in de programmeertaal C en wordt verspreid onder de LGPL- en GPL-licenties.
De wijzigingen in FFmpeg 7.1 zijn onder andere:
- Video-encoder toegevoegd voor de formaten H.264 en H.265, die gebruikmaken van de Vulkan API-extensions voor hardwareversnelling van video-encoding. Wat betreft mogelijkheden zijn de encoders op basis van Vulkan identiek aan de eerder beschikbare encoders die VAAPI voor versnelling gebruiken.
- Er is een eigen decoder toegevoegd voor het audio-codecformaat xHE-AAC (dat een subset van AAC USAC ondersteunt), dat wordt gebruikt door Netflix voor streaming en betrokken is bij digitale radio-uitzendingstechnologieën van Digital Radio Mondiale. De codec is opmerkelijk door de ondersteuning van een breed scala aan bitrates (van 12 tot 300 kbit/s), hoge compressiegraad, middelen voor constante volumereproductie, hoge helderheid bij alle volume niveaus, extra profielen voor dynamische bereikcontrole bij luisteren in lawaaierige omgevingen en het toevoegen van metadata die het herstel van verliezen aan de ontvangende kant mogelijk maakt.
- Een stabiele implementatie van de decoder voor het VVC-formaat (Versatile Video Coding), ook bekend als de video compressiestandaard H.266, is aangekondigd. Deze is ontwikkeld door samenwerkende werkgroepen van MPEG (ISO/IEC JTC 1) en VCEG (ITU-T), met deelname van bedrijven zoals Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm en Sony. H.266 vervangt H.265 (HEVC) en biedt een hoge efficiëntie voor de overdracht en opslag van alle schermresoluties (van SD en HD tot 4K en 8K), ondersteunt video's met een uitgebreid dynamisch bereik (HDR, High Dynamic Range) en 360-graden panoramavideo.
- De mogelijkheid voor versnelde decoding van VVC is toegevoegd met behulp van Intel QSV (Quick Sync Video) technologie.
- De VVC-encoder is toegevoegd, geïmplementeerd via de libvvenc-bibliotheek.
- De mogelijkheid voor het decoderen van video in het MV-HEVC-format (Multiview High Efficiency Video Coding) is gerealiseerd, dat wordt gebruikt in VR-headsets en smartphones voor de overdracht van stereoscopische video.
- Een decoder voor de LCEVC-videocodec is toegevoegd, gerealiseerd met behulp van de externe bibliotheek LCEVCdec. LCEVC voegt een extra laag metadata toe om de kwaliteit van bestaande H.26x- en MP4/ISOBMFF-codecs te verbeteren.
- In de media-container muxers Matroska en MP4/MOV is de parsing en opslag van metadata met informatie over het bijsnijden van video (bijvoorbeeld bij weergave op schermen met een andere beeldverhouding) geïmplementeerd.
- Ondersteuning voor het coderen en decoderen van geluid in de formaten LC3 en LC3plus, geoptimaliseerd voor geluidsoverdracht met minimale vertragingen (bijvoorbeeld gebruikt in Bluetooth-oordopjes), is toegevoegd. De implementatie is gebaseerd op de externe bibliotheek liblc3. Ontwikkelingen voor unpackers en packers voor media containers voor LC3 en LC3plus zijn toegevoegd.
- Ondersteuning voor het decoderen van geluid in de formaten AAC, AMR-NB, AMR-WB en MP3, met gebruikmaking van de MediaCodec API die door het Android-platform wordt aangeboden, is toegevoegd.
- Een D3D12VA HEVC-encoder is toegevoegd die hardwareversnelling via de D3D12 API implementeert.
- Een unpacker voor ondertitels in het RCWT-formaat (Raw Captions with Time) is toegevoegd.
- Ondersteuning voor DEC Alpha DSP is stopgezet.
- Een videosource is toegevoegd die Perlin-ruis genereert.
- Voor codecs en filters is een proces geïmplementeerd voor het afstemmen van de kleurenruimte YUV.
- Filters pad_vaapi en drawbox_vaapi zijn toegevoegd voor het toevoegen van marges en randen aan video.
Bron: opennet.ru
