Понятные имена для аудиофайлов

This commit is contained in:
2026-02-08 20:41:06 +03:00
parent ef6a5800a4
commit 3ad6276084
5 changed files with 13 additions and 11 deletions

View File

@@ -41,13 +41,13 @@ docker compose up -d --build
### Результат работы бота
Бот сохраняет аудиофайлы с озвученными репликами в файлы `data/<scenario_id>/<replica_number>_<dataset_speaker_id>.wav`, где `<replica_number>` - это номер реплики в сценарии (0-indexed), `<dataset_speaker_id>` - это идентификатор диктора во всём датасете, по-сути, соответствует уникальному пользователю бота. Один диктор может озвучить несколько дорожек из разных совещаний. При этом он не может озвучивать две разные дорожки в рамках одного совещания, таким образом гарантируется, что разным `speaker_id` соответствуют разные дикторы в рамках одного совещания.
Бот сохраняет аудиофайлы с озвученными репликами в файлы `data/<scenario_id>/r<replica_idx>_s<scenario_speaker_id>_u<user_id>.wav`, где `<replica_idx>` номер реплики в сценарии (0-indexed, с ведущими нулями), `<scenario_speaker_id>` идентификатор диктора в рамках сценария (с ведущими нулями), `<user_id>` — уникальный идентификатор пользователя бота (с ведущими нулями). Пример: `r003_s01_u002.wav`. Один диктор может озвучить несколько дорожек из разных совещаний. При этом он не может озвучивать две разные дорожки в рамках одного совещания, таким образом гарантируется, что разным `speaker_id` соответствуют разные дикторы в рамках одного совещания.
В `data` попадают только полностью озвученные дорожки. Под дорожкой подразумевается набор всех реплик одного диктора в рамках сценария. Дорожки, озвученные частично, хранятся в `data_partial/<scenario_id>/<replica_number>_<dataset_speaker_id>.wav`. Они автоматически переносятся в `data` после завершения озвучивания.
В `data` попадают только полностью озвученные дорожки. Под дорожкой подразумевается набор всех реплик одного диктора в рамках сценария. Дорожки, озвученные частично, хранятся в `data_partial/<scenario_id>/r<replica_idx>_s<scenario_speaker_id>_u<user_id>.wav`. Они автоматически переносятся в `data` после завершения озвучивания.
### База данных
Служебные данные, такие как состояния пользовательских сессий, соответствие `dataset_speaker_id` и `telegram_user_id` и т. п., сохраняются в базе данных SQLite. После перезагрузки бота его состояние полностью восстанавливается из базы данных.
Служебные данные, такие как состояния пользовательских сессий, соответствие `user_id` и `telegram_user_id` и т. п., сохраняются в базе данных SQLite. После перезагрузки бота его состояние полностью восстанавливается из базы данных.
## Интерфейс бота