Efter syv måneders udvikling er multimediepakken FFmpeg 8.1 offentliggjort, som omfatter et sæt applikationer og en samling biblioteker til operationer med forskellige multimediaformater (optagelse, konvertering og dekodning af lyd- og videoformater). Pakken er skrevet i C og distribueres under LGPL- og GPL-licenserne.
Blandt ændringerne i FFmpeg 8.1:
- Der er tilføjet parser, encoder og decoder samt muxer/demuxer til billedformatet JPEG XS, som markedsføres som et letvægts billedkodingssystem, der sikrer minimal forsinkelse ved kodning og dekodning og er optimalt til transmission af sekvenser med meget høj kvalitet (op til 8K). JPEG XS muliggør betydelig reduktion af den nødvendige båndbredde uden merkbare kvalitetstab for det menneskelige øje. Implementeringen er baseret på biblioteket libsvtjpegxs.
- Der er tilføjet en eksperimentel decoder til lydkodningsformatet xHE-AAC (High-Efficiency Advanced Audio Coding) med Mps212 rumklang (MPEG Surround med kanalopdeling 212). xHE-AAC anvendes i Netflix streaming og er involveret i Digital Radio Mondiale digitale radio teknologier. Codec'en er bemærkelsesværdig for sin støtte til et bredt bitrate-område (fra 12 til 300 kbit/s), høj kompressionsgrad, funktioner til konstant lydstyrke, sikring af høj klarhed ved alle lydstyrkeniveauer, tilføjelse af profiler til dynamisk rækkevidde ved lytning i støjende miljøer og indsættelse af metadata, der muliggør genopretning af tab på modtagersiden.
- Der er implementeret en decoder baseret på biblioteket libmpeghdec til interaktiv og rumlig lyd i NGA-formatet (Next Generation Audio), defineret i MPEG-H lyd- og video kodestandarden.
- Der er tilføjet støtte til muxing og demuxing af rumlig lyd i IAMF-formatet (Immersive Audio Model and Formats) med surround-lyd i Ambisonics modus, der tager højde for lydens udbredelse ikke blot i den horisontale plan, men også vertikalt (for at bestemme om lyden kommer fra oven eller nedenfor).
- Der er tilføjet support til parsing og omdirigering af metadata i LCEVC-formatet (Low Complexity Enhancement Video Coding), som implementerer et ekstra lag med metadata oven på standard codecs for at forbedre videokvaliteten. Der er tilføjet support til eksport af LCEVC-forbedringslag til MPEG-TS multimedia containerformater (MPEG Transport Stream).
- Der er implementeret encoder og decoder til Apple ProRes codecs samt en decoder til den filmproduktionsspecifikke format for separat billedtransmission DPX (Digital Picture Exchange) baseret på Vulkan grafik API. Implementationerne, der er baseret på Vulkan API, er bemærkelsesværdige for den betydelige præstationsforbedring gennem hardware acceleration, parallelisering af operationer og anvendelse af compute shaders. Der er udført optimeringer af AI Vulkan-baserede codec-implementationer. For at accelerere codec-initialiseringen er muligheden for at bruge allerede komprimerede GLSL shaders implementeret, uden behov for at kompilere dem under udførelsen.
- I swscale-biblioteket (Software Scaler), der anvendes i FFmpeg til software scaling og farvetransformation, er der implementeret et backend, der bruger Vulkan grafik API til at accelerere udførelsen af operationer.
- Der er tilføjet encoder varianter til H.264 og AV1 formater, der bruger D3D12 (Direct3D 12) API til hardware acceleration af encoding.
- Der er tilføjet en H.264/HEVC encoder variant, der anvender hardware video encoding midler tilgængelige i Rockchip-chips.
- Der er tilføjet demuxers til multimediacontainere i HXVS og HXVT formater, der anvendes i IP-kameraer.
- Der er implementeret en parser til metadata i EXIF-formatet og et tilhørende API til parsing af metadata.
- Der er tilføjet en '-codec' ('-c') mulighed til ffprobe værktøjet for at vælge en specifik implementation af decoderen.
- Der er tilføjet support til mosaikmode (tiled) billedlagring i HEIF-formatet til ffmpeg (hvor et meget stort billede gemmes som et sæt af mindre billeder).
- Den gamle HLS-protokolbehandler er blevet fjernet.
- Nye filtre:
- drawvg til at udskrive vektorgrafik oven på videobilleder ved hjælp af libcairo biblioteket.
- vpp_amf til video resizing og farverum transformation ved hjælp af AMD Advanced Media Framework til hardware acceleration.
- vf_scale_d3d12, vf_deinterlace_d3d12, vf_mestimate_d3d12 til skalering, deinterlacing og bevægelsesanalyse af video ved brug af grafisk API Direct3D 12 til hardwareacceleration.
- gfxcapture til optagelse af indhold fra vinduer og skærmen på Windows-platformen ved hjælp af API Windows.Graphics.Capture.
- Bitstream-filter til LCEVC metadata er tilføjet.
Kilde: opennet.ru
