CLI-утилита и десктопное приложение для конвертации изображений и аудио.
- Конвертация изображений: JPEG, PNG, WebP, HEIF, AVIF и др.
- Пропорциональный ресайз с сохранением пропорций
- Пакетная обработка файлов и папок (рекурсивно)
- Конвертация аудио: OGG, Opus, MP3, WAV, FLAC и др.
- Извлечение аудиодорожки из видео
- Склейка аудиофайлов в указанном порядке
- Flet-интерфейс для конвертации изображений
- Выбор файлов и папок через диалог
uv syncТребования: Python 3.13+, FFmpeg (для аудио).
# Справка
uv run imgconv --help
# Конвертация изображения
uv run imgconv convert photo.jpg -f webp
# Конвертация аудио
uv run imgconv audio convert song.mp3 -f ogg
# Извлечение аудио из видео
uv run imgconv audio extract video.mp4 -o audio.mp3
# Склейка аудиофайлов
uv run imgconv audio concat a.mp3 b.mp3 -o combined.mp3uv run flet run main.pyuv run python build.pyРезультат: dist/ImageConverter.exe (~72 MB)
uv run pytestsrc/
cli/
main.py — Click CLI (imgconv)
core/
converter.py — логика конвертации изображений
resize.py — логика ресайза
queue_manager.py — управление очередью обработки
audio/
converter.py — pydub: конвертация, извлечение, склейка
ui/
app.py — Flet-интерфейс
components.py — переиспользуемые виджеты
utils/
format_helpers.py — маппинг форматов
errors.py — кастомные ошибки
docs/
usage.md — инструкция по использованию CLI
commands.md — справка по командам
tests/
test_converter.py
test_resize.py