// #include "AVPlayer2/mainwindowa.h" // #include "mainwindow.h" // #include "thememanager.h" // #include "themesettingswidget.h" // #include // #include // #include // #include // #include // #include // #include // #include // #include // #include // #include // #include // QFile g_logFile; // QTextStream* g_logStream = nullptr; // QMutex g_logMutex; // void myMessageHandler(QtMsgType type, const QMessageLogContext &context, const QString &msg) // { // QMutexLocker locker(&g_logMutex); // if (!g_logStream) return; // QString typeStr; // switch (type) { // case QtDebugMsg: typeStr = "DEBUG"; break; // case QtWarningMsg: typeStr = "WARN "; break; // case QtCriticalMsg: typeStr = "ERROR"; break; // case QtFatalMsg: typeStr = "FATAL"; break; // case QtInfoMsg: // break; // } // QString logMsg = QString("%1 [%2] %3 (%4:%5)\n") // .arg(QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss.zzz")) // .arg(typeStr) // .arg(msg) // .arg(QString(context.file ? context.file : "")) // .arg(context.line); // (*g_logStream) << logMsg; // g_logStream->flush(); // if (type == QtFatalMsg) // abort(); // } // namespace avrecorder::video { void InitWinRTCapture(); } // int main(int argc, char* argv[]) // { // QLoggingCategory::setFilterRules(QStringLiteral("player.controller.ReadThread=false\n" // "player.controller.AudioPlayThread=false\n")); // // QLoggingCategory::setFilterRules("*.debug=false\n" // // "*.info=false\n" // // "*.warning=false\n" // // "*.critical=false\n" // // "player.controller.*.debug=true\n" // // "player.controller.*.info=true\n"); // // 打开日志文件(覆盖模式) // g_logFile.setFileName("log.txt"); // g_logFile.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Truncate); // g_logStream = new QTextStream(&g_logFile); // // 安装日志处理器 // //qInstallMessageHandler(myMessageHandler); // // std::freopen(nullptr, "w", stdout); // setvbuf(stdout, nullptr, _IONBF, 0); // #if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) // QGuiApplication::setHighDpiScaleFactorRoundingPolicy( // Qt::HighDpiScaleFactorRoundingPolicy::PassThrough); // #endif // #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) // QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); // QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); // #endif // QCoreApplication::setAttribute(Qt::AA_DontCreateNativeWidgetSiblings); // QApplication a(argc, argv); // ThemeManager::instance().setThemeMode(ThemeManager::Light); // // 注册Room 相关的类型 方便 序列化 // void initRoomType(); // initRoomType(); // // 初始化wgc // avrecorder::video::InitWinRTCapture(); // /* // docker run -itd --name zlmediakit --restart=always // -p 1935:1935 -p 8080:80 -p 8443:443 // -p 8554:554 -p 10000:10000 // -p 10000:10000/udp -p 8000:8000/udp // -p 9000:9000/udp // -v /data/zlmediakit/media/bin:/opt/media/bin // -v /data/zlmediakit/media/conf:/opt/media/conf // zlmediakit/zlmediakit:master // */ // // MainWindow w; // // w.show(); // // 视频播放测试 // MainWindowA aa; // aa.show(); // // ThemeSettingsWidget ThemeSettingsWidget; // // ThemeSettingsWidget.show(); // // PlayerWindow w; // // w.resize(960, 540); // // w.show(); // // // 这里填你的流地址 // // // w.startPlay("http://vd3.bdstatic.com/mda-jennyc5ci1ugrxzi/mda-jennyc5ci1ugrxzi.mp4"); // // w.open("C:/Users/zhuizhu/Videos/1.mp4"); // // // w.startPlay("rtmp://192.168.3.76:1935/stream/V1/stream"); // int ret = a.exec(); // delete g_logStream; // g_logFile.close(); // return ret; // }