FFmpeg 5.0 «Lorentz» вже вийшов, і це його новини

Після десяти місяців розвитку було оголошено про вихід нової версії FFmpeg 5.0, що включає набір додатків і колекцію бібліотек для операцій з різними мультимедійними форматами (запис, перетворення та декодування аудіо- та відеоформатів).

Значна зміна номера версії пов’язано зі значними змінами API та переходом на нову схему генерації випуску, згідно з яким нові основні релізи будуть формуватися раз на рік, а випуски з подовженим часом підтримки - раз на два роки. FFmpeg 5.0 стане першою LTS-версією проекту.

Основні нові можливості FFmpeg 5.0

У цій новій версії значне очищення старих API для кодування і декодування, а також перехід на новий N:M API, який пропонує єдиний інтерфейс програмування для аудіо та відео, а також окремі кодеки для вхідних і вихідних потоків.

Тамбієн згадується, що всі раніше позначені старі API були видалені застарів і додано новий API для фільтрів бітового потоку.

Крім того, додані окремі формати та кодеки: Розпаковувачі медіаконтейнерів більше не інтегрують повний контекст декодера. Видалені API для реєстрації кодеків і форматів: усі формати тепер завжди зареєстровані.

Додано підтримка архітектури LoongArch, що використовується в процесорах Loongson, а також підтримка розширень LSX і LASX SIMD, наданих у LoongArch. Для кодеків H.264, VP8 і VP9 реалізовано конкретні оптимізації LoongArch.

Додано підтримка протоколу concatf, який визначає формат для передачі списку ресурсів ("ffplay concatf:split.txt"), також додані нові декодери: Speex, MSN Siren, ADPCM IMA Acorn Replay, GEM (бітові зображення), нові кодери: упаковані в бітах, Apple Графіка (SMC), ADPCM IMA Westwood, VideoToolbox ProRes. Налаштування кодера AAC було змінено для досягнення вищої якості.

Крім того, також зазначається, що були додані пакувальники медіа-контейнерів (мукшер): Westwood AUD, Argonaut Games CVG, AV1 (Bitstream з низьким рівнем надходження), додані засоби розпакування медіаконтейнерів (демультиплексор): IMF, Argonaut Games CVG.
Додано новий синтаксичний аналізатор для аудіокодека AMR (Adaptive Multi-Rate) і пакер даних корисних даних (пакер) для передачі нестисненого відео за допомогою протоколу RTP (RFC 4175).

Щодо нових відеофільтрів:

  • сегмент і сегмент: розділення потоку з відео або звуком на кілька потоків, поділених за часом або кадрами.
  • hsvkey і hsvhold: замінити частину колірної гами HSV у відео на значення відтінків сірого.
  • сірий світ: використання алгоритму на основі гіпотези сірого світу.
  • scharr: застосування оператора Orb (варіант оператора Собеля з різними коефіцієнтами) до вхідного відео.
  • морфо: Дозволяє застосовувати різні морфологічні трансформації до відео.
  • латентність: Вимірює мінімальну та максимальну затримку фільтра для попередньо застосованого фільтра.
  • limitdiff: визначає різницю між двома або трьома відеопотоками.
  • xcorrelate: обчислює взаємну кореляцію між відеопотоками.
  • varblur: змінне розмивання відео з визначенням радіусу розмиття другого відео.
  • насичення кістки: застосуйте до відео налаштування відтінку, насиченості або яскравості.
  • колірний спектр: Створення відеопотоку із заданим спектром кольорів.
  • libplacebo: Додаток для візуалізації HDR-шейдерів з бібліотеки libplacebo.
  • vflip_vulkan, hflip_vulkan і flip_vulkan: це варіанти вертикальних або горизонтальних фільтрів перегортання відео (vflip, hflip і flip), реалізованих за допомогою графічного API Vulkan.
  • yadif_videotoolbox: варіант фільтра деінтерлейсингу yadif, заснований на структурі VideoToolbox.

В кінці кінців для тих, кому цікаво дізнатись більше про це про цей новий випуск, ви можете перевірити повний журнал змін за цим посиланням.

в той час як для тих, хто хоче встановити або оновити від FFmpeg ви повинні знати, що цей пакет міститься у більшості дистрибутивів Linux, або, якщо хочете, ви можете завантажити його вихідний код для компіляції за посиланням нижче.