Pärast viie kuu arendustööd on nüüd saadaval FFmpeg 7.0 multimeedia paket, mis sisaldab rakenduste kogumit ja kogumit raamatukogudest erinevate multimeedia formaatide operatsioonide teostamiseks (heli- ja videoformaatide salvestamine, konverteerimine ja dekodeerimine). Pakett on välja antud LGPL ja GPL litsentside alusel, FFmpeg arendus toimub koos MPlayeri projektiga.
FFmpeg 7.0-sse lisatud muudatustest võib välja tuua:
- Käskude rea utiliidis ffmpeg on tagatud multimeedia anumate lahtipakkimise/pakkimise, dekodeerimise, kodeerimise ja filtrite rakendamise operatsioonide paralleelne teostamine.
- Rakendatud on MPEG-5 (EVC - Essential Video Coding) video kodeerimise ja dekodeerimise tugi, kasutades väljast raamatukogu libxevd.
- Lisatud on demuxer/muxer paketid QOA (Quite OK Audio) forme jaoks, mis on mõeldud heli edastamiseks kvaliteedikadudeta. Üldiselt väidetakse, et QOA dekodeerimine on Ogg-Vorbis'iga võrreldes kolm korda kiirem, saavutades QOA-s kõrgema kvaliteedi ja tihendustaseme võrreldes ADPCM-iga.
- Lisatud on meedia konteinerite lahtipakkijad ja pakendajad (demuxer/muxer) IAMF (Immersive Audio Model and Format) formaadi jaoks, mis määratleb kohtade kasti ruumilise heli levitamiseks. Formaadi raames edastatakse täiendavat teavet, mis on vajalik heli stseeni loomise ja helisegamise algoritmide tööks ning arvestatakse helisignaalide levikut kolmemõõtmelises ruumis, et rekreateerida võimalikult loomulikku heli. Tagatud on IAMF-metadata tugi MP4 ja ISOBMFF formaadile.
- Lisatud eksperimentaalne dekooder VVC (Versatile Video Coding) formaadi jaoks, mis on tuntud ka kui H.266 videokompressioonistandard, mille on välja töötanud koos MPEG (ISO/IEC JTC 1) ja VCEG (ITU-T) töögrupid, osaledes sellistel ettevõtetel nagu Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm ja Sony. H.266 asendab H.265 (HEVC) ja tagab kõrge efektiivsuse kõikide ekraanisuuruste edastamisel ja salvestamisel (alates SD ja HD kuni 4K ja 8K), toetab laienevat dünaamilise vahemiku videot (HDR, High Dynamic Range) ja 360-kraadist panoramavideot.
- Implementeritud on API D3D12VA (Direct 3D 12 Video Encoding) kasutamise võimalus H264, HEVC, VP9, AV1, MPEG-2 ja VC1 formaadide hardware-kiirendatud dekodeerimiseks.
- Tööriistale ffplay on lisatud tugi hardware-kiirendatud dekodeerimisel, kasutades API Vulkan ja libplacebo.
- Lisatud on Content URI protokolli tugi, mida kasutatakse Android platvormil.
- Koostamise keskkonna nõuded on suurenenud — FFmpeg-i koondamiseks on nüüd vajalik kompilator, mis toetab C11 standardit. Ühes järgnevas väljalaskes plaanitakse minimaalne toetatud versioonina kasutada C17.
- QSV (Intel Quick Sync Video) baasiliste kodeerijate puhul on vaikimisi bitikiiruserežiim muudetud VBR (muutuva bitikiiruseni) CQP (puhas bitikiirus).
- Lisatud on DVD-Video media konteinerite uue dekompresseerija, mis põhineb VideoLAN projekti libdvdnav ja libdvdread raamatukogudel.
- FLV formaadi teostusse on lisatud võimalus edastada metainformatsiooni pakettides (PacketTypeMetadata).
- Lisatud on DXV DXT1 kodeerija.
- Lisatud on LEAD MCMP dekooder.
- Lisatud on media konteinerite pakendajad (muxer) RCWT (Raw Captions with Time) ja AEA.
- MP4 ja ISOBMFF formaatide puhul on rakendatud AVE (Ambient Viewing Environment) metainformatsiooni lisamise võimalus.
- AFGS1 (AOMedia Film Grain Synthesis 1) tehnoloogia tugi, mida kasutatakse AV1 Film Grain spetsifikatsioonis, on implementeeritud, et parandada teravate piltide efektiivsust.
- HEIF ja AVIF formaatides on lisatud tugi staatilistele (still) piltidele, samuti mosaiiksetele staatilistele piltidele.
- AV1 formaadi jaoks on rakendatud Dolby Vision profiil.
- HDR10 metaandmete edastamise tugi on tagatud kodeerimisel libx264, libx265 ja libsvtav1 teegid kaudu.
- HEVC formaadi töö kiirendamiseks on lisatud optimeerimisi AArch64 ja Loongarch arhitektuuride jaoks. Samuti on parendatud kodeerimise ja dekodeerimise jõudlust AAC, FLAC, JPEG-2000, LPC, RV4.0, SVQ, VC1 ja VP8 formaatide puhul RISC-V arhitektuuriga süsteemides.
- Uued filtrid:
- tiltandshift — video töötlemine Tilt-Shift stiilis, kus tähelepanu keskendub kindlale pildi osale, samas kui ülejäänud sisu on udune, luues mänguasjaliku mulje.
- quirc — QR-koodide tuvastamine ja dekodeerimine kasutades libquirc teeki.
- fsync — video kaadrite sünkroniseerimine välise faili põhjal saadud teabe põhjal.
- aap — kasutab Affine Projection algoritmi helilõikude sarnasuse tuvastamiseks.
- Lisatud dnn taust, et luua filtreid, mis kasutavad masinõppemudeleid, laaditakse sisse libtorch abil.
- Lisatud bitstream-filter showinfo paketiteabe silumise jaoks.
- Lisatud qrencodesrc töötleja QR-koodide lisamiseks.
- ffmpeg utiliidis on rakendatud loopback-dekokodereid, lubatud on -bsf valiku kasutamine sisend- ja väljundvoogude jaoks, eemaldatud on vananenud valikud -psnr ja -map_channel.
- ffprobe utiliidis on rakendatud -show_stream_groups valik ja tagatud on metaandmete väljund, kui kasutatakse -export_side_data film_grain valikut.
Allikas: opennet.ru
