chatgui: диагностика воспроизведения голосовых сообщений (Windows)
- sound_manager: ma_engine_init/playRawPcm логируют через DEBUG_* (qWarning/qDebug терялись в GUI-приложении без консоли); детальный результат старта PCM (rc/is_playing/cursor) - main: ранняя инициализация лога в GUI-потоке до SoundManager::init, чтобы диагностика инициализации попала в файл - messagedelegate: лог клика по Play/timeline (filePath/dlState/существует ли файл) - voiceplayback: лог заголовка opus (sr/ch/frameSamples) Попутные правки: - u_async: фикс двойного close wakeup_pipe (eventfd/Windows) - chat_core: NULL-guard в get_db/is_initialized - android: sqlite открывается в utun_instance_init, cleanup stale-потока без утечки fd - android SettingsScreen: компактная раскладка имени интерфейса
This commit is contained in:
1 parent
19dc076528
commit
9793733cd5
8 files changed
+76
-51
No files matched your search
@@ -148,6 +148,16 @@ int main(int argc, char *argv[]) {
|
||||
if (!QDir::isAbsolutePath(debugFile))
|
||||
debugFile = QCoreApplication::applicationDirPath() + "/" + debugFile;
|
||||
|
||||
/* ранняя инициализация лога в GUI-потоке: SoundManager::init() вызывается в
|
||||
* конструкторе MainWindow ДО старта utun-потока, поэтому без этого его диагностика
|
||||
* (ma_engine_init и т.п.) в лог-файл не попадёт. */
|
||||
debug_config_init();
|
||||
debug_enable_function_name(0);
|
||||
debug_enable_file_output(debugFile.toUtf8().constData(), 0);
|
||||
QString lvl = cfg.debugLevel().trimmed();
|
||||
if (lvl.isEmpty()) lvl = QStringLiteral("info");
|
||||
debug_apply_global_level(lvl.toUtf8().constData());
|
||||
|
||||
DbManager db;
|
||||
MainWindow w(nullptr, &db, cfgPath, dbPath, debugFile,
|
||||
cfg.debugLevel(), cfg.debugCategories());
|
||||
|
||||
Reference in new issue
Block a user