Ежегодно сообщество разработчиков GStreamer собирается на весенний хакфест, чтобы поделиться новыми идеями, обсудить насущные проблемы и продвинуть проекты. Весенний хакфест 2025 года стал особенно значимым событием, так как он прошел сразу после встреч, посвященных libcamera и PipeWire, в городе Ницца во Франции. Такое стечение событий позволило участникам наладить тесную координацию между проектами, что значительно ускорило развитие технологий мультимедиа на базе открытого ПО. Одной из главных тем встречи в этом году стала интеграция ИИ и машинного обучения (МЛ) в архитектуру GStreamer. Olivier Crête, один из ключевых разработчиков, завершил работу над плагином для LifeRT (раньше известным как TensorFlow Lite) — одного из самых популярных фреймворков для встраиваемых систем.
Разработка велась на протяжении года и в итоге была объединена в основную ветку проекта. Особенностью нового плагина стала поддержка файла .modelinfo, который содержит дополнительные метаданные модели. В частности, добавлена информация о смещении и масштабе (аналогично среднему значению и стандартному отклонению), применяемая к входным данным модели. Главной же задачей стала возможность присваивать имена тензорам, что открывает путь к автоматическому подбору декодирующих элементов, специфичных для модели, но независимых от используемого фреймворка.
В этой же области значительный вклад внес Daniel Morin, который сосредоточился на создании плагина, способного автоматически распознавать и использовать подходящие декодеры для преобразования тензоров в удобочитаемую информацию. Его усилия направлены на улучшение описания тензоров через caps — механизм описания форматов потоков в GStreamer, что делает интеграцию ИИ/МЛ значительно более гибкой и масштабируемой. В процессе обсуждения была поднята тема оптимальной интеграции информации о предварительной обработке тензоров в caps. Предложено расширять базовые структуры GStreamer, такие как GstVideoInfo API, чтобы вкладывать данные о необходимости предварительной обработки прямо в видеопоток, что позволит разгрузить этапы инференса и объединить операции, например, с преобразованием цветового пространства. Параллельно с этим развивался проект Silhouette — приложение для создания виртуальной камеры с эффектом удаления фона, работающее через PipeWire.
Разработчик Julian Bouzas подробно рассказал о сложностях интеграции GStreamer в низкозадерживающий PipeWire-пайплайн. В частности подчеркивались вызовы по синхронизации данных и минимизации задержек, что крайне важно для видеоконференций и мультимедийных приложений реального времени. Кроме того, Jakub Adam трудился над улучшением поддержки DMABuf в плагине video4linux2, решая проблемы, связанные с динамической перенастройкой caps. Такие задачи требуют глубокого рефакторинга механизма управления памятью в V4L2, что обсуждалось в ходе интенсивных рабочих сессий с участием Jakub и Nicolas Dufresne. Этот процесс обещает повысить стабильность и производительность при работе с видеоустройствами, что актуально для широкого спектра систем, от встраиваемых устройств до рабочих станций.
Результатом хакфеста стала значительная часть нового кода, уже интегрированного в GStreamer 1.27.1, выпущенный буквально накануне встречи. Команда активно работает над версией 1.28, выход которой намечен на конец года.
Обновления направлены на улучшение поддержки ИИ, расширение возможностей мультимедийной обработки и более глубокую интеграцию с современными технологиями Linux-сообщества. В целом мероприятие подтвердило, что GStreamer остается ключевым элементом в экосистеме мультимедиа с открытым исходным кодом и постоянно двигается вперед, адаптируясь к новым вызовам индустрии. Кроме технических новшеств, важным фактором продолжается становление межпроектной кооперации, связывающей такие компоненты, как PipeWire, libcamera и собственно GStreamer, задавая высокие стандарты в обработке мультимедийных данных на Linux-платформах. Развитие возможностей интеграции ИИ открывает перспективы для создания умных мультимедийных приложений, способных анализировать и преобразовывать видео и аудио в режиме реального времени. Современные требования к низкой задержке и высокой производительности, которые критичны в таких областях, как онлайн-конференции, виртуальная реальность и умный видеонаблюдение, становятся реальностью благодаря совместной работе сообщества и ведущих разработчиков.
Кроме непосредственных результатов по разработке, весенний хакфест стал площадкой для обмена опытом и обсуждения текущих трендов, что играет важную роль в формировании будущего всего стека мультимедийных технологий. Последний год принес шаги вперед в области расширения функциональности, улучшения удобства использования и повышения надежности систем. Это подтверждается большим количеством новых строк кода и идей, готовых к воплощению в следующих версиях GStreamer. Важно отметить и ту роль, которую играет сообщество Collabora в развитии GStreamer. Команда активно участвует в исследовательской и инженерной работе, что обеспечивает стабильность и инновационный рост фреймворка, открывая для разработчиков новые возможности и инструменты.