Куски видео вырезаются и склеиваются копированием потока: сборка ролика занимает время копирования файла, а не время рендера. Композитинга нет принципиально — при перекрытии побеждает клип с верхней дорожки целиком, и картинкой, и звуком. Именно это ограничение и делает сборку копированием возможной. Что внутри: - монтажный стол со своей отрисовкой: дорожки, масштаб, прилипание, схлопывание, громкость на клипе; - предпросмотр прямо с монтажа через libmpv и виртуальный список кусков, без промежуточных файлов; - сборка через ffmpeg с точными резами: перекодируется только огрызок от реза до ближайшего опорного кадра, остальное копируется; - разбор заголовка MP4 для поиска опорных кадров — в 500 раз быстрее опроса ffprobe; - перепаковка контейнеров, кадрирование и поворот, сведения о проекте; - свои цвета всего окна: системные элементы под Windows цвет не берут, поэтому кнопки, полоса меню, журнал и полосы прокрутки нарисованы сами; - окно зависимостей: недостающие ffmpeg, ffprobe и libmpv скачиваются с официальных источников; - кросс-сборка под Windows и работа под Wine. Первый коммит: до этого история не велась.
44 lines
1 KiB
Text
44 lines
1 KiB
Text
# Результаты сборки
|
||
/lib/
|
||
/nlve
|
||
/nlve.exe
|
||
/nlve.dbg
|
||
/nlve.res
|
||
/tests/lib/
|
||
/tests/nlvetool
|
||
/tests/nlvetool.exe
|
||
*.o
|
||
*.ppu
|
||
*.compiled
|
||
*.or
|
||
|
||
# Готовые ролики и материал проверок
|
||
/out/
|
||
|
||
# Сессии Lazarus (у каждого разработчика свои)
|
||
*.lps
|
||
|
||
# Кэш проектов nlve: нарезанные куски и сгенерированные клипы.
|
||
# Восстанавливается из файла проекта, в репозиторий не нужен.
|
||
*.nlve-cache/
|
||
|
||
# Временные файлы отладки
|
||
run*.log
|
||
shot*.png
|
||
|
||
# Скачанные зависимости. Кладутся рядом с программой окном «Зависимости»,
|
||
# весят сотни мегабайт и у каждого свои — в репозиторий не нужны.
|
||
/ffmpeg.exe
|
||
/ffprobe.exe
|
||
/ffmpeg
|
||
/ffprobe
|
||
/libmpv-2.dll
|
||
/mpv-2.dll
|
||
/libmpv.so.2
|
||
/7zr.exe
|
||
/deps-windows.json
|
||
/deps-linux.json
|
||
/deps-tmp/
|
||
|
||
# Журнал последнего запуска
|
||
/nlve.log
|