Смешивание аудиотреков в видеофайле в Linux

Моя первая мысль была Xsetroot , но я думаю, что следующее Python фрагмент сделает это лучше:

import gtk
import sys

def create_window():
    window = gtk.Window()
    window.set_default_size(200, 200)
    window.connect('destroy', gtk.main_quit)
    color = gtk.gdk.color_parse(str(sys.argv[1]))
    window.modify_bg(gtk.STATE_NORMAL, color)

    window.maximize()
    window.show()

create_window()
gtk.main()

Использование:

$ python window.py '#01fffa'
0
10.01.2015, 20:35
1 ответ

Я пытался выполнить задачу в Blender'е и PiTiVi.

Blender

Score: 3/5

Я использую это хорошо написанное учебное пособие по редактору видеопоследовательностей в Blender в качестве справочного материала. На самом деле я играл с 3D-моделированием в Blender и раньше. Никогда не думал, что его можно использовать в качестве видеоредактора. Я вроде как знаю некоторые клавиатурные сокращения в Blender'е, что помогает.

Installation

Возьмите бинарный дистрибутив Linux со страницы проекта, распакуйте архив, например, в ~/bin и запустите файл с именем blender.

Редактирование видео

Блендер не может импортировать видеофайл с несколькими аудиодорожками. Он импортирует только первую дорожку. Поэтому, быстрым решением в ffmpeg является копирование аудио дорожек и импорт их отдельно

ffmpeg -i 24.avi -map 0:1 -c:a copy ~/fst.mp2
ffmpeg -i 24.avi -map 0:2 -c:a copy ~/snd.mp2

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

Установка громкости также описана в статье, как и добавление ключевых кадров. Что не описано, так это как редактировать кривую. Поэтому ответ заключается в использовании тех же методов выделения, что и для клипов. Выделение с помощью RMB, перемещение с помощью клавиши G и так далее. Есть страница Blender manual о так называемом графическом редакторе

Rendering

В опциях рендеринга, под размер видео, мне пришлось изменить ползунок размера на 100%, а также я отключил сглаживание, потому что считаю, что здесь это бесполезно.

Там была странная ошибка: Перед рендерингом мне пришлось навести курсор на первый кадр (кадр номер 1) и нажать кнопку Refresh Sequencer. В противном случае отрисовываемый видеофайл был просто полностью черным.

Однажды мне удалось сломать Blender, бешено щелкнув по временной шкале во время рендеринга.

Скорость

Примерно 5 кадров в секунду в настройках H264 + MP3 по умолчанию. Учитывая, что мое видео 30 кадров в секунду, оно очень медленное. При кодировании использовались не все доступные ядра процессора (я оставил эту настройку в автоматическом режиме) В результате видео получилось визуально приятным ;-)

PiTiVi

Score 0/5

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

Установка

Я использую Fedora 19, так что yum install pitivi выполняется под root-пользователем.

Далее я просмотрел список плагинов gstreamer и подумал об установке всего, что можно достать

yum install gstreamer-plugins-ugly \
gstreamer-plugins-good-extras \
gstreamer-plugins-good \
gstreamer-plugins-bad-nonfree \
gstreamer-plugins-bad-free-extras \
gstreamer-plugins-bad-free \
gstreamer-ffmpeg

некоторые из этих пакетов находятся в репозитории RPM Fusion. Размер установки был достаточно большим, 142 Мб, поэтому я решил попробовать без установки. Это не сработало (PiTiVi выплюнул Пропавшие ошибки плагина как для аудио, так и для видео в моем файле), так что я установил все плагины в конце концов, просто чтобы быть уверенным. Мне пришлось перезапустить PiTiVi, чтобы он заметил новые плагины.

Редактирование видео

PiTiVi имеет ту же самую проблему, что и Blender с несколькими аудио дорожками в видеоклипе. Он импортирует только первый. Решение было таким же, как и в случае с Blender'ом.

ffmpeg -i 42.avi -map 0:2 -c:a copy ~/42snd.mp2

Интерфейс пользователя довольно прост, поэтому добавление клипов и их размещение на временной шкале не нуждается в объяснениях. Кривая громкости видна прямо на монтажном столе. Ключевые кадры добавляются двойным щелчком мыши на RMB и могут быть перемещены с помощью LMB. Легко. Я не придумал, как сделать интерполяцию на кривой Безье, но линейная интерполяция звучала прекрасно, поэтому я не исследовал это дальше.

Рендеринг

Во-первых, диалог рендеринга всегда зависал на "1 секунду", иногда на "2 секунды". На самом деле он так и не был завершен. Тем не менее, выходной файл был создан.

Установка выходного формата mp4, видеокодека x264enc и aac для аудио, сохранение настроек по умолчанию, в результате получился сломанный видеофайл, который нельзя было воспроизвести в VLC и при воспроизведении в mplayer у него не было звука, а изображение представляло собой красочную мозаику из случайных ярко окрашенных квадратов.

При выборе WebM, с VP8 и Vorbis, опять же с сохранением настроек по умолчанию, результат был нормальным, но примерно в пяти случаях все изображение пикселировалось, как при просмотре низкокачественной DVB-T-трансляции. Видеофайл продолжительностью 30 минут имеет размер более гигабайта, поэтому я предполагаю, что это не связано с низким качеством предустановок.

Скорость

Восстановление моего 30-минутного видео в WP8 файл с VP8 для видео и Vorbis для аудио заняло около 2 с половиной часов. Опять же, по умолчанию он не использовал мой многоядерный процессор. Эта настройка скрыта в подробных опциях для отдельных кодеков.

Заключение

Судя по удобству использования и графическому интерфейсу, выигрывает PiTiVi. С этим значительно легче работать, и он имеет более качественную визуализацию волновых форм для звуковых дорожек на временной шкале ;-). Кривая громкости видна по умолчанию, и ее очень легко редактировать. Кроме того, проигрывание предварительного просмотра финального видео работает гораздо лучше для меня в PiTiVi из коробки. В Blender'е видео имеет тенденцию отставать от звука. Связанное учебное пособие предполагает изменение размера кэша. Я не пробовал этого, потому что слышать звук было достаточно для меня.

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

Так что среди них нет явного победителя.

0
28.01.2020, 04:57

Теги

Похожие вопросы