Po pěti měsících vývoje je k dispozici multimediální balík FFmpeg 7.0, který zahrnuje sadu aplikací a kolekci knihoven pro práci s různými multimediálními formáty (nahrávání, konverze a dekódování zvukových a video formátů). Balík je distribuován pod licencemi LGPL a GPL, vývoj FFmpeg probíhá paralelně s projektem MPlayer.
Mezi změnami, které byly přidány ve FFmpeg 7.0, lze vyzdvihnout:
- V příkazovém řádku ffmpeg byla umožněna paralelní exekuce operací dekomprese/komprese multimediálních kontejnerů, dekódování, kódování a aplikace filtrů.
- Bylo implementováno zakódování a dekódování videa v formátu MPEG-5 (EVC — Essential Video Coding) s použitím externí knihovny libxevd.
- Byly přidány dekompresory a kompresory multimediálních kontejnerů (demuxer/muxer) pro formát QOA (Quite OK Audio), který se používá pro přenos zvuku bez ztráty kvality. Tvrdí se, že dekódování QOA je rychlejší než Ogg-Vorbis třikrát a dosahuje v QOA vyšší kvality a úrovně komprese ve srovnání s ADPCM.
- Byly přidány dekompresory a kompresory multimediálních kontejnerů (demuxer/muxer) pro formát IAMF (Immersive Audio Model and Format), který definuje kontejner pro distribuci prostorového zvuku. Formát zahrnuje přenos dodatečných informací potřebných pro fungování algoritmů reprodukce zvukové scény a míchání zvuku, ale také zohledňuje šíření zvukových signálů ve trojrozměrném prostoru, aby reprodukce zvuku co nejvíce odpovídala přirozenému. Byla zajištěna podpora metadat IAMF pro formáty MP4 a ISOBMFF.
- Byl přidán experimentální dekodér pro formát VVC (Versatile Video Coding), známý také jako standard komprese videa H.266, který byl vyvinut spolupracujícími pracovními skupinami MPEG (ISO/IEC JTC 1) a VCEG (ITU-T) za účasti společností jako Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm a Sony. H.266 nahrazuje H.265 (HEVC) a zajišťuje vysokou účinnost přenosu a ukládání všech rozlišení (od SD a HD po 4K a 8K), podporuje video s rozšířeným dynamickým rozsahem (HDR, High Dynamic Range) a panoramatické video v 360 stupních.
- Byla implementována možnost použití API D3D12VA (Direct 3D 12 Video Encoding) pro hardwarové urychlení dekódování formátů H264, HEVC, VP9, AV1, MPEG-2 a VC1.
- Do utilitě ffplay byla přidána podpora hardwarového zrychlení dekódování pomocí API Vulkan a libplacebo.
- Byla přidána podpora protokolu Content URI používaného na platformě Android.
- Byly zvýšeny požadavky na prostředí pro sestavení – k kompilaci FFmpeg nyní potřebujete kompilátor, který podporuje standard C11. V některém z dalších vydání se plánuje použití verze C17 jako minimálně podporované.
- U kódovačů založených na QSV (Intel Quick Sync Video) byla metoda řízení bitové rychlosti ve výchozím nastavení změněna z VBR (proměnlivá bitová rychlost) na CQP (konstantní bitová rychlost).
- Byl přidán nový rozbalovač mediálních kontejnerů DVD-Video, založený na použití knihoven libdvdnav a libdvdread projektu VideoLAN.
- Do implementace formátu flv byla přidána možnost přenosu metadat v paketech (PacketTypeMetadata).
- Byl přidán kódovač DXV DXT1.
- Byl přidán dekodér LEAD MCMP.
- Byly přidány obalovače mediálních kontejnerů (muxer) RCWT (Raw Captions with Time) a AEA.
- Pro formáty MP4 a ISOBMFF byla realizována možnost zahrnutí metadat AVE (Ambient Viewing Environment).
- Byla zajištěna podpora technologie AFGS1 (AOMedia Film Grain Synthesis 1), používané ve specifikaci AV1 Film Grain a určené pro zvýšení efektivity zrnitých obrazů.
- Byla přidána podpora statických (still) obrázků ve formátech HEIF a AVIF, stejně jako mozaikových statických obrázků.
- Pro formát AV1 byl realizován profil Dolby Vision.
- Byla zajištěna podpora předávání metadat HDR10 při kódování přes knihovny libx264, libx265 a libsvtav1.
- Byly přidány optimalizace pro zrychlení práce s formátem HEVC na architekturách AArch64 a Loongarch. Byly provedeny optimalizace výkonu pro urychlení kódování a dekódování formátů AAC, FLAC, JPEG-2000, LPC, RV4.0, SVQ, VC1 a VP8 na systémech s architekturou RISC-V.
- Nové filtry:
- tiltandshift – převod videa ve stylu Tilt-Shift, kdy je pozornost soustředěna na určitou část obrazu a zbytek obsahu je rozmazaný, aby vznikl dojem malebnosti.
- quirc – určování a dekódování QR kódů pomocí knihovny libquirc.
- fsync – synchronizace snímků videa na základě informací z externího souboru.
- aap – používá algoritmus Affine Projection pro určení podobnosti zvukových fragmentů.
- Byl přidán backend dnn pro vytváření filtrů, které používají modely strojového učení nahrávané pomocí libtorch.
- Byl přidán bitstream filtr showinfo pro ladění výstupu informací o paketech.
- Byl přidán zpracovatel qrencodesrc pro vkládání QR kódů.
- V utilitě ffmpeg byla implementována podpora smyčkových dekodérů, povoleno použití možnosti „-bsf“ pro vstupní a výstupní toky, odstraněny zastaralé možnosti „-psnr“ a „-map_channel“.
- V utilitě ffprobe byla implementována možnost „-show_stream_groups option“ a zajištěn výstup metadat při použití možnosti „-export_side_data film_grain“.
Zdroj: opennet.ru
