LINUX.ORG.RU

В FFmpeg представлена рабочая реализация Apple ProRes RAW через Vulkan

 , , prores raw,


0

1

В дереве разработки FFmpeg появилась серия изменений, связанных с поддержкой аппаратно ускоренного декодирования Apple ProRes RAW. Речь идёт не об отдельном релизе, а о свежих коммитах в Git-ветке проекта, которые должны попасть в один из следующих выпусков мультимедийного фреймворка. FFmpeg — это набор библиотек и утилит для обработки аудио, видео, субтитров и сопутствующих метаданных; в его состав входят, в частности, libavcodec, libavformat, libavfilter, ffmpeg, ffplay и ffprobe.

Главное изменение — декодер ProRes RAW теперь доведён до состояния, которое разработчик Lynne описал как завершение обратной разработки декодера. В коммите prores_raw: synchronize decoder with reference implementation прямо указано, что он синхронизирует реализацию с эталонным поведением и применяет кривую линеаризации, добавленную предыдущим патчем. В коде также отражено, что декодер выдаёт линейные 16-битные данные, а коэффициенты и iDCT остаются 12-битными до применения кривой линеаризации.

Для пользователей Linux особенно важна связка с Vulkan: FFmpeg использует не только классические аппаратные видеоблоки, но и вычислительные шейдеры Vulkan Compute. Такой подход позволяет ускорять профессиональные кодеки на обычных GPU без привязки к специализированному блоку декодирования конкретного формата. В блоге Khronos Lynne объяснял, что Vulkan Compute в FFmpeg дополняет Vulkan Video и закрывает случаи, где фиксированные аппаратные кодеки не помогают.

ProRes RAW — это формат Apple для записи «сырых» данных с сенсора камеры с сохранением высокого качества и цветовой информации. По данным Phoronix, с ним работают некоторые камеры Sony, LUMIX и Nikon, а также новые iPhone. Ранее FFmpeg уже получил ускорение ProRes через Vulkan-шейдеры, а теперь эта работа распространена и на ProRes RAW.

Технически реализация продолжает линию развития Vulkan-инфраструктуры FFmpeg. Ещё в 2025 году в проект был добавлен ProRes RAW Vulkan hwaccel: патч поддерживал потоки версии 0 и 1, а обработка была распараллелена с запуском 512 вычислительных инвокаций на тайл. В опубликованном тогда тесте для 5,8K RAW HQ файла приводились результаты: Radeon RX 6900 XT — 63 кадра/с, Radeon RX 7900 XTX — 84 кадра/с, RTX 6000 Ada — 120 кадра/с, Intel GPU — 9 кадра/с.

Свежая серия изменений показывает, что разработчики не просто добавили быстрый путь декодирования, а продолжают приводить реализацию к корректному поведению. В частности, синхронизация с эталонной реализацией затронула сам декодер, парсер, DSP-код ProRes и Vulkan-часть. Это важно для формата RAW, где ошибка в трактовке кривых, битности или цветопередачи может привести не только к артефактам, но и к ошибкам на этапе цветокоррекции.

Отдельно в FFmpeg добавлена поддержка ProRes RAW VideoToolbox hwaccel для платформ Apple. Соответствующий коммит вносит запись в Changelog, добавляет зависимости в configure и регистрирует новый аппаратный ускоритель рядом с уже существующим ProRes RAW Vulkan hwaccel.

Итог для пользователей: FFmpeg постепенно получает более полноценную поддержку ProRes RAW сразу по двум направлениям — через Vulkan для переносимого GPU-ускорения и через VideoToolbox для экосистемы Apple. Для Linux это особенно заметный шаг, поскольку работа с профессиональными RAW-материалами традиционно была областью дорогих проприетарных решений и тяжёлой CPU-обработки.

>>> Источник

★★★★★

Проверено: maxcom ()
Последнее исправление: maxcom (всего исправлений: 1)

идёт не об отдельном релизе, а о свежих коммитах в Git-ветке проекта, которые должны попасть в один из следующих выпусков

А вот это Apple ProRes RAW настолько важное и судьбоносное, что до упоминания (можно очень подробного) в ченджлоге собственно релиза не ждёт?

Вопрос без подвоха — просто я вообще впервые слышу это словосочетание. Но я и не профессионал и не эксперт в этой области — могу чего-то просто не знать, чего на самом деле все джва года ждали, затая дыхание.

CrX ★★★★★
()
Ответ на: комментарий от CrX

Это один из самых используемых RAW форматов для видео, т.к. поддерживается на любом Pro айфоне. Соответственно его нормально поддерживают только эппловские же компьютеры и программы.

diamond_cat
()
Ответ на: комментарий от CrX

Типа в среде видеосъемки айфон считается неплохим вариантом, когда нет возможности снимать проф. камерой (или нет камеры)). Если оно появится в ffmpeg, то появится почти везде.

goingUp ★★★★★
()
Ответ на: комментарий от diamond_cat

Как минимум давинчи резолв с ним прекрасно работает, в том числе под онтопиком

rukez ★★★★★
()
Ответ на: комментарий от goingUp

Если оно появится в ffmpeg, то появится почти везде.

ffmpeg уже 2011 года имеет декодер, но что-то нигде не появилось, а причина, Apple ProRes RAW — это проприетарщина, открытой лицензии вроде MIT/GPL/BSD у него нет.

  • Для официальной поддержки кодирования/декодирования нужна лицензия и сертификация от Apple.
  • Apple отдельно лицензирует ProRes и ProRes RAW производителям камер, рекордеров и ПО.
  • Apple прямо пишет, что некоторые сторонние реализации (например, на базе FFmpeg) являются «unauthorized implementations».
nvl ★★★★
()
Ответ на: комментарий от nvl

Apple прямо пишет, что некоторые сторонние реализации (например, на базе FFmpeg) являются «unauthorized implementations».

Главное, чтобы работало, а остальное не так важно.

alexei-i
()
Ответ на: комментарий от alexei-i

Как раз таки важно. Уже проходили, когда с устройства брали по 4 доллара за кодек. Это было по теме «Если оно появится в ffmpeg, то появится почти везде.»

Другой вопрос, что делает в названии слово «RAW», если это lossy-кодек…

nvl ★★★★
()
Ответ на: комментарий от diamond_cat

Понятно. Значит лютое ненужно (но смысл в мининовости есть).

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от CrX

Нужное, это де-факто стандартный монтажный формат.

Dispetcher14 ★★★★★
()

декодер ProRes RAW теперь доведён до состояния, которое разработчик Lynne описал как завершение обратной разработки декодера

SIMD queen of @FFmpeg

осторожно, эта публика за мисгендеринг скоро расстреливать начнёт. На месте 🫡

Lrrr ★★★★★
()

Что это за формат такой, что на околотоповых картах декодируется с такой смешной скоростью? Там что, полгига пережатых и зашифрованных от взлома данных на пиксель?

kirill_rrr ★★★★★
()
Ответ на: комментарий от kirill_rrr

Да вроде скорость как скорость. 63 кадра в секунду — это же вдвое+ быстрее, чем реалтайм для кино стандартного, то есть с запасом на реалтайм хватает, не сильно-то и отличается от какого-нибудь h264 айблин, декодирования же, а не кодирования… протупил… Да, что там такое-то?..

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от Dispetcher14

Да хоть .bmp.zip. Пиксель и в африке пиксель, какую цифру он выдал то и надо записать. В случае видео - повторять n раз в секунду. Ни больше, ни меньше. Рядом можно положить запись с метаданными состояния камеры, как угодно, хоть в .txt

Привёл ли я самый тупой и неоптимальный пример? С учётом затрат вычислительной мощности на декодирование - вот вообще не факт!

kirill_rrr ★★★★★
()
Последнее исправление: kirill_rrr (всего исправлений: 2)
Ответ на: комментарий от kirill_rrr

Напоминает Cinema DNG. Прикольный формат, минусы очевидны — копируется конское количество времени. Пихать это сразу в архив — ну можно наверное, но успеет ли камера так сделать?

Dispetcher14 ★★★★★
()
Ответ на: комментарий от Dispetcher14

Но сейчас же успевает зашифровать данные так, что расшифровывать нужно топовой видеокартой! А запаковка обычно тяжелее распаковки, обычно даже на порядок.

kirill_rrr ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.