#include "widget.h" #include "./ui_widget.h" #include #include "spdlog/spdlog.h" Widget::Widget(QWidget *parent) : QWidget(parent) , ui(new Ui::Widget) { ui->setupUi(this); // m_playerGLWidget = createOpenGLWidget(ui->widget_display); // m_playerGLWidget->show(); // 显示OpenGL窗口 // m_playerGLWidget->setGeometry(0, 0, ui->widget_display->width(), ui->widget_display->height()); // m_playerGLWidget->setStyleSheet(R"(border-radius:10px;)"); // /* 设置背景颜色 */ // this->setAutoFillBackground(true); // QPalette palette = m_playerGLWidget->palette(); // palette.setColor(QPalette::Window, Qt::black); // 设置背景颜色为黑色 // this->setPalette(palette); // connect(&m_timer, &QTimer::timeout, this, [&]() { // // SPDLOG_DEBUG("刷新一帧"); // QImage image = QImage(":/image/1.jpg"); // if(image.isNull()) { // SPDLOG_WARN("Image is null, cannot refresh."); // return; // } // refreshRGBAImage(m_playerGLWidget, image); // 显示一张测试图片 // }); // m_timer.setSingleShot(false); // m_timer.start(10); // 60 FPS playVdeio(); } Widget::~Widget() { delete ui; } void Widget::playVdeio() { // QString videoFile = QApplication::applicationDirPath() + "/YPM.rmvb"; // QString videoFile = QApplication::applicationDirPath() + "/2024-07-11.mp4"; QString videoFile = QApplication::applicationDirPath() + "/4K烤鸭.mp4"; // 测试视频文件 // VideoPlayer* player = new VideoPlayer(this); // player->setWidgetParent(ui->widget_display, true); // 设置播放窗口 // if(!player->openPlayVedio(videoFile)) // { // SPDLOG_ERROR("Failed to open video file: {}", videoFile.toStdString()); // delete player; // 释放资源 // return; // } // player->play(); // 播放视频 } void Widget::resizeEvent(QResizeEvent *event) { if (m_playerGLWidget) { m_playerGLWidget->setGeometry(0, 0, ui->widget_display->width(), ui->widget_display->height()); } QWidget::resizeEvent(event); }