Skip to content

Commit 4336c21

Browse files
authored
Merge pull request mir-aidj#6 from godman-gomel/codex/-gui-pyqt5
Добавлен план доработок
2 parents 9120ddd + a515481 commit 4336c21

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed

improvement.txt

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
Итерация 1: Базовый интерфейс и управление файлами
2+
---------------------------------------------------
3+
1. Создать главное окно приложения на PyQt5.
4+
2. Добавить меню и панель инструментов с основными действиями:
5+
- Открыть файл/папку с аудиофайлами.
6+
- Добавить выбранные файлы в список для анализа.
7+
- Удалить файлы из списка.
8+
3. Реализовать виджет со списком добавленных аудиофайлов (таблица или список),
9+
отображающий имя файла, путь и статус обработки.
10+
4. Обеспечить возможность массового добавления файлов (drag&drop, выбор
11+
нескольких файлов).
12+
5. Подготовить структуру проекта для будущих расширений GUI.
13+
14+
Итерация 2: Запуск анализа и управление параметрами
15+
----------------------------------------------------
16+
1. Добавить панель или диалог настроек анализа:
17+
- Выбор модели и устройства (CPU/GPU).
18+
- Включение/отключение извлечения активаций и эмбеддингов.
19+
- Настройка путей к временным каталогам (demix_dir, spec_dir).
20+
- Параметры перезаписи/многопроцессности.
21+
2. Реализовать кнопку/меню для запуска анализа выбранных файлов
22+
или всех файлов сразу.
23+
3. Обеспечить одновременное выполнение нескольких задач анализа с отображением
24+
прогресса (использовать QThread или QtConcurrent).
25+
4. Сохранять параметры между запусками программы (например, через QSettings).
26+
27+
Итерация 3: Отображение прогресса и логирование
28+
-----------------------------------------------
29+
1. Добавить индикатор общего прогресса и прогресса для каждого файла.
30+
2. Реализовать окно/панель логов для вывода сообщений из процесса анализа
31+
(подключение логгера из allin1).
32+
3. Сделать возможным прерывание текущего анализа.
33+
4. Предусмотреть уведомления об ошибках и успешном завершении.
34+
35+
Итерация 4: Сохранение и просмотр результатов
36+
---------------------------------------------
37+
1. Добавить настройку места сохранения результатов:
38+
- Отдельная папка для каждого файла или общая папка.
39+
- Возможность сохранять рядом с исходным файлом.
40+
- Выбор состава сохраняемых данных (путь к файлу, id файла и сегмента,
41+
активации, эмбеддинги и т.п.).
42+
2. Создать интерфейс просмотра результатов:
43+
- Таблица со сводной информацией (путь, BPM, структура и др.).
44+
- Просмотр графиков и прослушивание сонфицированных аудио.
45+
3. Реализовать экспорт выбранных данных в JSON/CSV.
46+
47+
Итерация 5: Дополнительные улучшения
48+
------------------------------------
49+
1. Темная/светлая тема интерфейса.
50+
2. Горячие клавиши для основных действий.
51+
3. Настройка внешнего вида таблиц (сортировка, фильтрация).
52+
4. Поддержка нескольких языков интерфейса (локализация).
53+
5. Проверка обновлений программы и автоматическая установка при согласии.
54+
55+
Требования и зависимости
56+
------------------------
57+
- Python 3.8+
58+
- PyQt5
59+
- numpy, librosa и остальные зависимости пакета allin1
60+
- Опционально: дополнительные библиотеки для улучшенной визуализации
61+
(например, pyqtgraph) и упаковки приложения (PyInstaller)
62+

0 commit comments

Comments
 (0)