Выпуск свободного видеоредактора OpenShot 3.0

После более года разработки опубликован выпуск свободной системы нелинейного видеомонтажа OpenShot 3.0.0. Код проекта поставляется под лицензией GPLv3: интерфейс написан на Python и PyQt5, ядро обработки видео (libopenshot) написано на C++ и использует возможности пакета FFmpeg, интерактивная шкала времени написана с использованием HTML5, JavaScript и AngularJS. Готовые сборки подготовлены для Linux (AppImage), Windows и macOS.

Редактор отличается удобным и интуитивно понятным пользовательским интерфейсом, позволяющим редактировать видео даже начинающим пользователям. Программа поддерживает несколько десятков визуальных эффектов, даёт возможность работы с многотрековыми монтажными шкалами с возможностью перемещения мышью элементов между ними, позволяет масштабировать, кадрировать, осуществлять слияние блоков видео, обеспечивать плавное перетекание из одного ролика в другой, производить наложение полупрозрачных областей и т.п. Имеется возможность перекодирования видео с предварительным просмотром изменений на лету. Благодаря задействованию библиотек проекта FFmpeg OpenShot поддерживает огромное количество форматов видео, звука и изображений (включая полную поддержку SVG).

CFD0C5CECEC5D4_1670744563.jpg

Основные изменения:

  • Повышена производительность воспроизведения видео при предпросмотре в режиме реального времени. Решены проблемы с подвисаниями воспроизведения. Переделан движок для декодирования видео, архитектура которого изменена для корректной работы в условиях потери пакетов или отсутствия временных меток. Улучшена совместимость с разными форматами и кодеками, в том числе с многопоточными кодеками, такими как AV1. Улучшено определение продолжительности воспроизведения и конца файла в условиях отсутствия временных меток, неверных метаданных и проблемном кодировании.

  • Переработана система кэширования видео. Для кэширования задействован отдельный фоновый поток, в котором осуществляется упреждающая подготовка кадров, которые могут потребоваться при дальнейшем воспроизведении. Реализована поддержка работы кэша с разными скоростями воспроизведения (1X, 2X, 4X) и с воспроизведением в обратном направлении. В настройках предложены новые опции управления кэшем, а также возможность очистки всего кэша.

  • В шкале времени значительно повышена точность привязки при обрезке и перемещении клипов и переходных эффектов. При удержании клавиши Shift обеспечено выравнивание указателя воспроизведения к краям клипов. Ускорена операция нарезки клипов. Переделаны пиктограммы ключевых кадров, которые теперь можно нажимать, фильтровать и использовать для изменения режима интерполяции. Для каждого видеоэффекта на шкале задействован свой цвет, а каждый переходной эффект имеет своё направление (затухание и появление).

    CFD0C5CECEC5D4_1670742770.png

  • Расширены и оптимизированы инструменты для работы со звуковой волной. Обеспечено кэширование данных о звуковой волне в привязке к файлам и сохранение кэша внутри проекта, что позволило сделать кэш независимым от пользовательских сеансов и ускорить отрисовку звуковой волны при множественной нарезке и повторном добавлении одного файла на шкалу времени. Повышена точность согласования клипа со звуковой волной, благодаря возможности масштабирования шкалы клипа до отдельного кадра.

  • Сокращено потребление памяти и устранены утечки памяти. Основной целью проделанной работы является адаптация OpenShot для выполнения многочасовых рендеров, например, при обработке длительных видеопотоков и записей с камер наблюдения. Для оценки оптимизаций было проведено 12-часовое кодирование, которое продемонстрировало однородность потребления памяти на протяжении всего сеанса.

  • Добавлена поддержка экспорта анимированных GIF-изображений, MP3 (только звук), YouTube 2K, YouTube 4K и MKV. Улучшена поддержка анаморфных видеопрофилей (видео с неквадратными пикселями).

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

  • Шаблоны анимации адаптированы для использования с системой 3D-моделирования Blender 3.3.

  • Добавлены новые настройки, определяющие поведение при выборе файловых путей для импорта, открытия/сохранения и экспорта. Например, при сохранении можно использовать каталог проекта или недавно используемый каталог.

  • Обеспечена корректная сортировка по алфавиту данных на языках, отличных от английского.

  • Реализована полная поддержка экранов с высокой плотностью пикселей (High DPI), включая мониторы с разрешением 4K. Все пиктограммы, курсоры и логотипы преобразованы в векторный формат или сохранены в высоких разрешениях. Переработаны алгоритмы выбора размера виджетов с учётом параметров экрана.

  • Обновлена документация, которая актуализирована с учётом текущего состояния проекта.

  • Проведена большая работа по устранению проблем, приводящих к аварийному завершению и влияющих на стабильность. Среди прочего реализованы unit-тесты для отслеживания качества многопоточной обработки, выявления состояний гонки и проблем с блокировками при обновлении шкалы времени и кэшировании воспроизведения видео.





Источник: http://www.opennet.ru/opennews/art.shtml? num=58302

© OpenNet