Skip to content

D1verlin/FileConverterShell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FileConverter — Интеграция конвертера медиафайлов в контекстное меню (NileSoft Shell)

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

🛠️ Установка

  1. Скачайте/склонируйте этот репозиторий в удобную папку (например, C:\Users\Имя\Desktop\Projects\FileConverter).
  2. Запустите PowerShell от имени Администратора.
  3. Перейдите в папку проекта и запустите установщик:
    cd "C:\Path\To\FileConverter"
    Set-ExecutionPolicy Bypass -Scope Process -Force
    .\setup.ps1
  4. Установщик автоматически:
    • Скачает портативную версию FFmpeg в папку tools/ (около 80 МБ, один раз).
    • Скопирует файл интеграции в папку NileSoft Shell.
    • Пропишет импорт в главный файл shell.nss.
    • Перезапустит Проводник для применения изменений.

🚀 Как пользоваться

  1. Кликните правой кнопкой мыши по одному или нескольким медиафайлам в Проводнике.
  2. В появившемся меню 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 и др.)
  3. Выберите нужный пресет (например, to MP4 -> High Quality или Resize to HD).
  4. Запустится окно консоли, отображающее прогресс конвертации. Файлы будут сохранены в той же папке рядом с оригиналами с суффиксом _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

About

Интеграция конвертера медиафайлов в контекстное меню (NileSoft Shell)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors