Интервью С Эдвардом Херви О Видеоредакторе Pitivi

Это четвертое интервью о мультимедиа с открытым исходным кодом.

Предыдущие разговоры касались проектов Джокошер , Тотем И Сочувствие ( перевод ).

Мы поговорим с ЭДвард Херви (Эдвард Херви), сопровождающий проекта ПиТиВИ .

Эdward расскажет о текущем состоянии видеоредактора и планах на будущее.

Итак, прежде всего, расскажите нам немного о себе и проектах с открытым исходным кодом, в которых вы принимаете участие? Меня зовут Эдвард Херви, я наполовину француз, наполовину шотландец, живу в Барселоне и являюсь одним из основателей.

Коллабора Мультимедиа .

Я использую Linux и бесплатное программное обеспечение примерно с 1995 года.

Но свой вклад я начал в 2003 году, когда у меня наконец появилось достаточно знаний в области программирования, чтобы начать работать над PiTiVi. Я работаю над мультимедийным фреймворком уже несколько лет. GStreamer чтобы поднять редактирование видео на новый уровень.

Я также в течение ряда лет поддерживаю привязки Python для GStreamer, GNonLin (основные зависимости PiTiVi, отвечающие за нелинейное редактирование), а также ФФМпег плагины для GStreamer. Опишите цели PiTiVI в борьбе с доминирующими приложениями для редактирования видео, такими как iMovie, Avid или Final Cut Pro? PiTiVi преследует разные цели, но я бы отметил принципиальную — стремление создать видеоредактор без каких-либо ограничений (в отличие от аналогов, имеющих весьма специфические ограничения в применении или поддержке).

Избавьтесь от ограничений форматов, устройств, фильтров.

мы можем поддерживать их через фреймворк GStreamer. Все остальные редакторы строго привязаны к своему коду, но мы с гордостью носим имя свободного редактора без привязки к какой-либо проприетарной библиотеке! Это означает, что если компания создает собственный плагин GStreamer для определенного формата/кодека/устройства.

вы можете использовать его в PiTiVi. Этот барьер преодолевается благодаря выбору нашей модели развития.

Мы не хотим получать монолитный видеоредактор, поэтому решили переписать PiTiVi на Python и сделать проект модульным.

Пользовательский интерфейс не привязан к движку, фактически можно использовать движок изолированно.

Он устроен так, что вы можете реализовать временную шкалу по-разному, в зависимости во многом от ваших знаний и того, как вы расставите акценты, что, в свою очередь, зависит от применения в производственном процессе.

Конечная цель PiTiVi — предоставить базовые инструменты редактирования без каких-либо ограничений.

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

А это требует времени.

PiTiVI написан на Python. Первый вопрос, который многие люди задают, услышав это: «Как использование Python влияет на производительность мультимедийных приложений, особенно ресурсоемких, таких как видеоредакторЭ» Все просто :) Что дает наибольшую нагрузку на процессор при монтаже видео? Правильно, обработка мультимедиа (будь то просмотр, применение эффектов, рендеринг.

).

Все это делается исключительно с помощью GStreamer и его плагинов (написанных на C, запускаемых в отдельных потоках и используемых в PiTiVi через привязки Python).

Что нагружает остальную вычислительную мощность процессора? Пользовательский интерфейс.

Это то, что делает GTK+/X/Cairo (написан на C и используется в PiTiVi через привязки Python).

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

Мы хотим создавать код максимально быстро и гибко, поэтому такой язык, как Python, очень удобен.

К тому же писать на Python одно удовольствие :) Для любопытных приведу интересный факт: при игре в PiTiVi единственная часть, реализованная на Python, — это код, отвечающий за… отображение текущей позиции.

То же самое касается рендеринга.

Все остальное полностью обрабатывается GStreamer, его плагинами и GTK+.

В GStreamer проделана большая работа по поддержке формата контейнера.

MXF .

Большинство людей, вероятно, никогда не слышали об этом формате, какую ценность он имеет? С момента появления компьютерного редактирования (также называемого нелинейным редактированием) каждая программа использовала для работы свой формат/кодек.

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

Добавьте к этому тот факт, что большинство форматов не были документированы.

Получаем разные форматы в софте, в камере, на выходе.

полная лажа.

Некоторые ключевые игроки профессионального рынка, представители СМПТ? (Общество инженеров кино и телевидения) решили объединиться и написали спецификации нового формата контейнера, который будет полностью документирован, позволит хранить метаданные, записывать непосредственно на камеру, включать потоковую передачу и быстрый поиск.

Он использует те же структурные элементы, что и ААФ (Advanced Development Format), который имеет открытый исходный код и используется Avid, Final Cut Pro и многими другими системами нелинейного редактирования видео.

Благодаря добавлению поддержки MXF в GStreamer мы можем использовать в PiTiVi те же форматы, что и профессиональные NLE! Возможность работы напрямую с распространенными форматами является основным фактором, позволяющим использовать PiTiVi в существующих производственных процессах.

Какие медиаформаты поддерживает PiTiVI? Все доступно через плагины GStreamer, установленные в вашей системе, а также некоторые форматы для быстрого редактирования видео, точного поиска, кодеки I-frame и т. д. На какой стадии сейчас находится PiTiVI и какие у вас планы на будущее? За последние 6 месяцев мы провели глубокий рефакторинг кода PiTiVi на основе анализа, который я провел прошлым летом и суммировал отзывы за последние 5 лет. Помимо добавления наиболее легко реализуемых функций, мы уже имели дело с многослойным редактированием, созданием миниатюр, обрезкой, режимами пульсации/прокрутки, поддержкой общего формата файлов и многим другим.

Мы собираемся сделать первый предварительный выпуск нового питиви в мае.

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

Для тех, кто не знаком с терминологией, что вы подразумеваете под режимами многоуровневого редактирования, создания эскизов, обрезки и пульсации/прокрутки? Многослойный монтаж: возможность сортировать видео не только по времени, но и на несколько параллельных слоев.

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

Обрезать: изменить положение начала или конца источника.

Редактирование пульсацией: укорачивает или увеличивает одну из частей, при этом остальные данные подстраиваются под новый размер измененного клипа.

Редактирование прокрутки: то же, что и Ripple, за исключением того, что общее время в группе клипов остается прежним.

Кто кроме вас участвует в проекте PiTiVI? Помимо меня, есть два основных разработчика: Брэндон Льюис (Брэндон Льюис), который начал работать с GSoC 2007 и работает над пользовательским интерфейсом.

Алессандро Дечина присоединился к нам в октябре, он помогает мне с низкоуровневой частью PiTiVi и улучшает GStreamer. Оба работают в Collabora Multimedia с осени прошлого года и 100% времени работают над PiTiVi. Для тех, кто интересуется бизнес-причинами выделения такого большого количества ресурсов для PiTiVi от Collabora Multimedia: во-первых, мы проводим консультационную работу для клиентов в индустрии создания контента, которые хотят использовать PiTiVI для выполнения конкретных задач в своих производственных процессах, во-вторых, у нас есть клиенты, которые хочу использовать созданную нами инфраструктуру PiTiVi для настройки автоматического манипулирования видео.

Например, автоматическая обрезка, масштабирование и перекодирование.

Как будущие изменения в GStreamer повлияют на возможности PiTiVI? Несмотря на то, что в текущем ядре и плагинах GStreamer есть вполне работающие функции, мы работаем над улучшением ряда функций, чтобы улучшить процесс редактирования.

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

Это позволит вам сканировать файлы, которые сложно редактировать во время импорта, и создать индекс, позволяющий быстро перемещаться по этим файлам.

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

В GStreamer предстоит проделать бесконечную работу по портированию все большего и большего количества библиотек в качестве плагинов.

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

Мы планируем добавить в GStreamer такие плагины, как gavl и подавляющее большинство замечательных фильтров AviSynth (работа над которыми будет завершена этим летом в рамках Google Summer of Code).

Все это, безусловно, улучшает пользовательский опыт PiTiVi. Кроме того, мы собираемся снизить потребление памяти и процессора ядром GStreamer и различными плагинами.

Мы стремимся к более эффективному использованию аппаратных устройств, таких как видеокарты с технологией VDPAU, VA-API и плагинами gst-plugins-gl. Это позволит приложениям GStreamer направлять обработку на аппаратные устройства, оставляя больше процессорного времени для обработки общего назначения.

Джокошер и PiTiVI — мультимедийные приложения, использующие GStreamer и написанные на Python. Естественный вопрос: сотрудничают ли эти проекты? К сожалению, оно не так активно, как хотелось бы.

Мы помогаем друг другу на всех фронтах (GStreamer, привязки Python, плагины GNonLin), но когда дело доходит до пользовательского интерфейса и основной логики, у нас разные способы использования кода и разные базы кода.

Было бы здорово иметь более тесную интеграцию, позволяющую использовать Jokosher для редактирования аудиочасти видеоклипа, оставляя PiTiVi с видео.

С какими основными техническими проблемами вы столкнулись при создании видеоредактора для систем Linux/Unix? Готова ли инфраструктура Linux к размещению таких приложений? А что вы думаете о состоянии мультимедиа в Linux/Unix в целом? Средства массовой информации с открытым исходным кодом прошли *ДОЛГИЙ* путь за последние 10 лет. Для тех, кто не помнит. мы были вынуждены использовать разные плееры в зависимости от формата, это был единственный способ захвата видео с цифровых камер.

Но проблема в том, что каждый делает свое программное обеспечение в своем углу.

Полное отсутствие согласованности между различными мультимедийными приложениями, библиотеками и поддержкой устройств в Linux, по моему мнению, является причиной того, что мы не стали подходящей мультимедийной платформой.

В отличие от других платформ (Win/Mac), нам не нужно переписывать собственные библиотеки и можно повторно использовать существующие.

Почему этого не происходит? GStreamer пытается собрать всех вместе и решить большинство этих проблем, но некоторые разработчики по неизвестным причинам все еще его отвергают. В тот день, когда мы решим эту проблему.

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

Какие еще медиа-приложения вы используете? Тотем , Ритмбокс , Мужество (О, он не использует GStreamer).

Иногда АвиСинт / ВиртуалДуб (приложения Win32) через WINE, но ситуация может измениться благодаря проекту GSoC по портированию фильтров AviSynth в GStreamer. Что ж, спасибо, Эdward, что нашли время для этого интервью, удачи в будущем! Чтобы узнать больше о проекте PiTiVi, посетите pitivi.org или канал #pitivi на irc.freenode.net. Интервью подготовлено Кристиан Шаллер (Кристиан Ф.

К.

Шаллер).

_____ Спасибо ЗатворR77 И илембитов за помощь в подготовке перевода.

Теги: #linux #python #открытый исходный код #настройка Linux #GTK #gstreamer #nle

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.