widget.cpp 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #include "widget.h"
  2. #include "./ui_widget.h"
  3. #include <QTimer>
  4. #include "spdlog/spdlog.h"
  5. Widget::Widget(QWidget *parent)
  6. : QWidget(parent)
  7. , ui(new Ui::Widget)
  8. {
  9. ui->setupUi(this);
  10. // m_playerGLWidget = createOpenGLWidget(ui->widget_display);
  11. // m_playerGLWidget->show(); // 显示OpenGL窗口
  12. // m_playerGLWidget->setGeometry(0, 0, ui->widget_display->width(), ui->widget_display->height());
  13. // m_playerGLWidget->setStyleSheet(R"(border-radius:10px;)");
  14. // /* 设置背景颜色 */
  15. // this->setAutoFillBackground(true);
  16. // QPalette palette = m_playerGLWidget->palette();
  17. // palette.setColor(QPalette::Window, Qt::black); // 设置背景颜色为黑色
  18. // this->setPalette(palette);
  19. // connect(&m_timer, &QTimer::timeout, this, [&]() {
  20. // // SPDLOG_DEBUG("刷新一帧");
  21. // QImage image = QImage(":/image/1.jpg");
  22. // if(image.isNull()) {
  23. // SPDLOG_WARN("Image is null, cannot refresh.");
  24. // return;
  25. // }
  26. // refreshRGBAImage(m_playerGLWidget, image); // 显示一张测试图片
  27. // });
  28. // m_timer.setSingleShot(false);
  29. // m_timer.start(10); // 60 FPS
  30. playVdeio();
  31. }
  32. Widget::~Widget()
  33. {
  34. delete ui;
  35. }
  36. void Widget::playVdeio()
  37. {
  38. // QString videoFile = QApplication::applicationDirPath() + "/YPM.rmvb";
  39. // QString videoFile = QApplication::applicationDirPath() + "/2024-07-11.mp4";
  40. QString videoFile = QApplication::applicationDirPath() + "/4K烤鸭.mp4"; // 测试视频文件
  41. // VideoPlayer* player = new VideoPlayer(this);
  42. // player->setWidgetParent(ui->widget_display, true); // 设置播放窗口
  43. // if(!player->openPlayVedio(videoFile))
  44. // {
  45. // SPDLOG_ERROR("Failed to open video file: {}", videoFile.toStdString());
  46. // delete player; // 释放资源
  47. // return;
  48. // }
  49. // player->play(); // 播放视频
  50. }
  51. void Widget::resizeEvent(QResizeEvent *event)
  52. {
  53. if (m_playerGLWidget) {
  54. m_playerGLWidget->setGeometry(0, 0, ui->widget_display->width(), ui->widget_display->height());
  55. }
  56. QWidget::resizeEvent(event);
  57. }