Локальный видеоредактор на Rust для 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 запускается с локальными входными файлами и без сетевых протоколов.
- Импортируйте файл в медиатеку через Ctrl+I или перетащите его из Проводника в окно.
- Перетащите материал на подходящую дорожку или дважды щёлкните по нему в медиатеке.
- Потяните левый или правый край клипа для обрезки. При обрезке левого края правый край клипа остаётся на месте. Магнит уплотняет дорожку при магнитной вставке и удалении. В новых проектах магнит выключен, поэтому можно свободно оставлять зазоры. В сохранённых проектах состояние магнита восстанавливается. В этом режиме при перемещении края клипов привязываются к соседним краям и плейхеду.
- Перетаскивайте клип за середину, чтобы изменить позицию. Красный треугольник на линейке перемещает плейхед. Звук видео находится на дорожке «Звук» под ним и следует за видеоклипом. Чтобы редактировать его отдельно, выберите звуковой клип и нажмите «Отвязать звук от видео» в инспекторе.
- Выберите клип, чтобы настроить скорость, громкость, мьют, затухания или цвет. Для кросс-диссолва выберите первый из двух соседних видеоклипов при включённом магните. Переход перекрывает хвост первого и начало второго, сокращая общую длительность. Длительность перекрытия ограничена половиной более короткого клипа.
- Нажмите Экспорт в верхней панели. По умолчанию используются 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 устанавливается отдельно и распространяется на собственных условиях.