Na zes maanden ontwikkeling is het multimediapakket FFmpeg 6.0 beschikbaar, dat een reeks applicaties en een verzameling bibliotheken bevat voor bewerkingen op verschillende multimediaformaten (audio- en videoformaten opnemen, converteren en decoderen). Het pakket wordt gedistribueerd onder LGPL- en GPL-licenties, de FFmpeg-ontwikkeling wordt naast het MPlayer-project uitgevoerd.
Onder de wijzigingen die aan FFmpeg 6.0 zijn toegevoegd, zijn:
- Het bouwen van ffmpeg in multi-threaded modus is verplicht gesteld. Elke mediacontainer-wrapper (muxer) draait nu in een aparte thread.
- Ondersteuning geïmplementeerd voor VAAPI en QSV (Quick Sync Video) voor het coderen en decoderen van VP9 en HEVC met 4:2:2 en 4:4:4 kleursubsampling, 10- en 12-bit kleurdieptecodering.
- Ondersteuning toegevoegd voor de oneVPL-bibliotheek (oneAPI Video Processing Library) om Intel QSV (Quick Sync Video) hardwareversnellingstechnologie te gebruiken.
- AV1-encoder toegevoegd met hardwareversnelling op basis van QSV.
- Opties zijn toegevoegd aan het ffmpeg-hulpprogramma:
- "-shortest_buf_duration" om de maximale duur van gebufferde frames in te stellen (hoe langer, hoe hoger de nauwkeurigheid in de "-shortest" -modus, maar hoger geheugenverbruik en latentie).
- “-stats_enc_pre[_fmt]”, “-stats_enc_post[_fmt]” en “-stats_mux_pre[_fmt]” voor het frame-voor-frame opnemen van informatie over geselecteerde streams in verschillende stadia van het coderen in het opgegeven bestand.
- "-fix_sub_duration_heartbeat" om de hartslagvideostream te definiëren die wordt gebruikt om ondertitels te splitsen.
- De syntaxis van de filtergrafiek is uitgebreid zodat optiewaarden vanuit een opgegeven bestand kunnen worden doorgegeven. De bestandsnaam wordt opgegeven door een waarde op te geven die wordt voorafgegaan door '/', bijvoorbeeld: "ffmpeg -vf drawtext=/text=/tmp/some_text" laadt de tekstparameter uit het bestand /tmp/some_text.
- Ondersteuning toegevoegd voor afbeeldingsformaten: WBMP (Wireless Application Protocol Bitmap), Radiance HDR (RGBE).
- Nieuwe decoders toegevoegd: APAC, bonk, Micronas SC-4, Media 100i, ViewQuest VQC, MediaCodec (NDKMediaCodec), WADY DPCM, CBD2 DPCM, XMD ADPCM, WavArc, RKA.
- Nieuwe encoders toegevoegd: nvenc AV1, MediaCodec.
- Mediacontainer-uitpakkers toegevoegd (demuxer): SDNS, APAC, bonk, LAF, WADY DPCM, XMD ADPCM, WavArc, RKA.
- CrystalHD-decoders zijn verouderd.
- Nieuwe videofilters:
- ddagrab - Leg Windows-desktopvideo vast via de Desktop Duplication API.
- corr - Bepaalt de correlatie tussen twee video's.
- ssim360 - beoordeling van de gelijkenis van video's opgenomen in de 360°-modus.
- hstack_vaapi, vstack_vaapi en xstack_vaapi - het combineren van verschillende video's (elke video wordt in een eigen deel van het scherm weergegeven) met behulp van VAAPI voor versnelling.
- backgroundkey - verandert een statische achtergrond in transparant.
- Aan het cropdetect-filter is een modus toegevoegd voor het bepalen van het bijsnijdgebied op basis van vectoren en bewegingsranden.
- Nieuwe geluidsfilters:
- showcwt - audio-naar-video-conversies met spectrumfrequentievisualisatie met behulp van continue wavelet-transformatie en morlet.
- adrc - Pas een filter toe op de invoeraudiostream om het spectrale dynamische bereik te wijzigen.
- a3dscope - Converteert invoeraudio naar ruimtelijke 3D-audio.
- afdelaysrc - Genereert eindige impulsresponsiecoëfficiënten (FIR).
- Nieuwe bitstreamfilters:
- Converteren van media100 naar mjpegb.
- Converteren van DTS naar PTS.
Bron: opennet.ru