FileConverter — это легковесный, быстрый и мощный инструмент для конвертации видео, аудио и изображений прямо из контекстного меню Проводника Windows (по правому клику мыши). Работает на базе утилиты NileSoft Shell и медиа-движка FFmpeg.
- Полная интеграция в проводник: Меню "Convert Video", "Convert Audio" и "Convert Image" появляются только для соответствующих типов файлов.
- Аппаратное ускорение NVIDIA GPU (NVENC): Видеокодеки по умолчанию используют аппаратные мощности вашей видеокарты (например, RTX 4050 и др.), кодируя видео в 10–20 раз быстрее процессора.
- Умный откат на CPU (Fallback): Если в системе нет подходящей видеокарты или не установлены последние драйверы NVIDIA, скрипт автоматически и незаметно переключит кодирование на процессор (
libx264/libx265) без вылета ошибок. - Защита процессора от перегрева: При декодировании и кодировании нагрузка на CPU ограничивается половиной ядер (в зависимости от вашего процессора), сохраняя ваш компьютер тихим и отзывчивым даже во время тяжелых задач.
- Пакетная обработка (Multi-select): Выделите хоть 100 файлов, нажмите правой кнопкой мыши и выберите пресет. Все файлы обработаются последовательно в одном процессе PowerShell, отображая общий прогресс и выведя одно финальное уведомление по завершении.
- Портативность: FFmpeg скачивается локально в папку проекта и не засоряет системные пути (PATH).
FileConverter/
├── convert.ps1 # Основной PowerShell скрипт конвертации
├── presets.json # Определение 33 пресетов (параметры FFmpeg)
├── setup.ps1 # Автоматический установщик
├── .gitignore # Игнорирование бинарных файлов и логов для GitHub
└── shell/
└── file-converter.nss # Конфигурационный файл меню для NileSoft Shell
- Скачайте/склонируйте этот репозиторий в удобную папку (например,
C:\Users\Имя\Desktop\Projects\FileConverter). - Запустите PowerShell от имени Администратора.
- Перейдите в папку проекта и запустите установщик:
cd "C:\Path\To\FileConverter" Set-ExecutionPolicy Bypass -Scope Process -Force .\setup.ps1
- Установщик автоматически:
- Скачает портативную версию FFmpeg в папку
tools/(около 80 МБ, один раз). - Скопирует файл интеграции в папку NileSoft Shell.
- Пропишет импорт в главный файл
shell.nss. - Перезапустит Проводник для применения изменений.
- Скачает портативную версию FFmpeg в папку
- Кликните правой кнопкой мыши по одному или нескольким медиафайлам в Проводнике.
- В появившемся меню NileSoft Shell вы увидите категории:
- Convert Video (для
.mp4,.mkv,.avi,.mov,.webm,.gifи др.) - Convert Audio (для
.mp3,.flac,.wav,.aac,.ogg,.opusи др.) - Convert Image (для
.jpg,.png,.webp,.bmp,.tiff,.icoи др.)
- Convert Video (для
- Выберите нужный пресет (например, to MP4 -> High Quality или Resize to HD).
- Запустится окно консоли, отображающее прогресс конвертации. Файлы будут сохранены в той же папке рядом с оригиналами с суффиксом
_converted(конфликты имен разрешаются добавлением индексов_2,_3и т.д.).
Вы можете легко добавить новые форматы или изменить настройки кодирования в файле presets.json.
Пример структуры пресета:
"vid-mp4-hq": {
"category": "video",
"label": "MP4 — High Quality (H.264)",
"ext": "mp4",
"args": ["-c:v", "h264_nvenc", "-rc", "vbr", "-cq", "18", "-preset", "p6", "-c:a", "aac", "-b:a", "192k", "-movflags", "+faststart"]
}После изменения presets.json перезапуск проводника не требуется — изменения применяются мгновенно при следующем запуске конвертации. Если же вы меняете структуру меню в файле shell/file-converter.nss (например, добавляете новые пункты), скопируйте обновленный файл в папку импорта NileSoft Shell и перезапустите Проводник:
Copy-Item ".\shell\file-converter.nss" "C:\Program Files\Nilesoft Shell\imports\" -Force
Stop-Process -Name explorer -Force