Skip to content
zerth444Public

About

Локальный видеоредактор на Rust

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FlowCut

Локальный видеоредактор на Rust для Windows. При запуске сразу открывается редактор. Импорт, обработка и экспорт выполняются на компьютере. Системные диалоги используются для выбора файлов и папок.

Запуск на Windows

Собранный редактор находится в target/release/FlowCut.exe. Для сборки из исходников нужны Rust stable 1.95 или новее и MSVC Build Tools с компонентами C++ и Windows SDK.

cargo build --release --locked
cargo run --release --locked -p freecut-app

Для обработки медиа нужны локальные ffmpeg.exe и ffprobe.exe из одной сборки FFmpeg. На Windows редактор ищет их в FLOWCUT_FFMPEG_DIR, рядом с FlowCut.exe, в PATH и в стандартной папке установки Shotcut. Если FFmpeg уже установлен отдельно, можно поместить оба файла рядом с редактором или запустить из PowerShell:

$env:FLOWCUT_FFMPEG_DIR = 'C:\ffmpeg\bin'
.\target\release\FlowCut.exe

Для экспорта нужна сборка FFmpeg с H.264 (libx264) и AAC, а для программного H.265 нужен libx265. Импорт, превью и экспорт проверялись со сборкой FFmpeg 9 из Shotcut. FFmpeg запускается с локальными входными файлами и без сетевых протоколов.

Монтаж

  1. Импортируйте файл в медиатеку через Ctrl+I или перетащите его из Проводника в окно.
  2. Перетащите материал на подходящую дорожку или дважды щёлкните по нему в медиатеке.
  3. Потяните левый или правый край клипа для обрезки. При обрезке левого края правый край клипа остаётся на месте. Магнит уплотняет дорожку при магнитной вставке и удалении. В новых проектах магнит выключен, поэтому можно свободно оставлять зазоры. В сохранённых проектах состояние магнита восстанавливается. В этом режиме при перемещении края клипов привязываются к соседним краям и плейхеду.
  4. Перетаскивайте клип за середину, чтобы изменить позицию. Красный треугольник на линейке перемещает плейхед. Звук видео находится на дорожке «Звук» под ним и следует за видеоклипом. Чтобы редактировать его отдельно, выберите звуковой клип и нажмите «Отвязать звук от видео» в инспекторе.
  5. Выберите клип, чтобы настроить скорость, громкость, мьют, затухания или цвет. Для кросс-диссолва выберите первый из двух соседних видеоклипов при включённом магните. Переход перекрывает хвост первого и начало второго, сокращая общую длительность. Длительность перекрытия ограничена половиной более короткого клипа.
  6. Нажмите Экспорт в верхней панели. По умолчанию используются 1080p, 60 кадров/с, H.264 и AAC. Папка и параметры запоминаются. При совпадении имени добавляется суффикс. После завершения можно показать файл в папке.

Проекты сохраняются в .flowcut с версией схемы и ссылками на исходники. При открытии поддерживается прежнее расширение .freecut. Новые ссылки сохраняются с абсолютными путями. При перемещении исходников укажите новый путь через предупреждение в редакторе. При запуске восстанавливается автосохранение или открывается последний доступный проект. В Windows настройки, восстановление и кэш хранятся в %LOCALAPPDATA%\FlowCut.

Горячие клавиши

Клавиши Действие
Ctrl+I Импорт файлов
Ctrl+N / Ctrl+O / Ctrl+S Создать, открыть, сохранить проект
Ctrl+E Панель экспорта
Space Воспроизведение или пауза
← / →, Home / End Кадр назад или вперёд, начало или конец
J / K / L Назад на 10 кадров, пауза, вперёд на 10 кадров
S или Ctrl+B Разрезать клип по плейхеду
Delete / Shift+Delete Удалить со сдвигом или сохранить зазор
Ctrl+щелчок / Shift+щелчок Добавить клип к выделению или выделить диапазон
Ctrl+C / Ctrl+V / Ctrl+D Копировать, вставить, дублировать выделение
Ctrl+Z / Ctrl+Shift+Z / Ctrl+Y Отменить или повторить правку
Ctrl+колесо / колесо Масштаб и горизонтальная прокрутка таймлайна

Архитектура

  • freecut-core хранит версионированную модель, расчёт длительностей, затухания и локальные файлы проекта.
  • freecut-media запускает FFmpeg и ffprobe в отдельных процессах. Это позволяет ограничить протоколы, изолировать декодер от окна и использовать один набор фильтров цвета для превью и экспорта.
  • freecut-audio смешивает активные источники в одном потоке вывода CPAL.
  • freecut-ui реализует редактор на egui/eframe и wgpu. Такой стек даёт прямое рисование масштабируемого таймлайна и загрузку видеокадров в текстуры. Превью уменьшает кадры до 960×540, а экспорт читает исходники.
  • freecut-app собирает FlowCut.exe. Внутренний префикс крейтов сохранён для совместимости workspace.

Текущая раскладка проекта начинается с одной видеодорожки и одной аудиодорожки. Холст и экспорт используют 16:9. Сборка и запуск под Linux и macOS отдельно не проверялись.

Проверки

cargo test --workspace --locked
cargo clippy --workspace --all-targets --locked -- -D warnings
cargo fmt --all -- --check

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

Лицензия

Исходный код FlowCut распространяется по лицензии MIT. FFmpeg устанавливается отдельно и распространяется на собственных условиях.

About

Локальный видеоредактор на Rust

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages