📄 video_player.h
字号:
///////////////////////////////////////////////////////// FileName: video_player.h// Author: b1gm0use// Project: myvideo#ifndef _VIDEO_PLAYER_H_#define _VIDEO_PLAYER_H_#include <qwidget.h>#include <qmutex.h>#include "common.h"class video_cap_thread;class QImage;class avi;class VideoPlayer : public QWidget{ Q_OBJECTpublic: // 构造函数 VideoPlayer ( avi * avi_ptr_in, bool sfr, bool zoom_in, QWidget *parent = 0, const char *name = 0, int wFlags = 0 ); // 析构函数 ~VideoPlayer(); // 初始化函数 int init( void ); void begin_running ( void ); bool running ( void );protected: // 内部方法,当发生重绘事件时被调用 void paintEvent( QPaintEvent * ); // 内部函数,用于接收自定义的事件 void customEvent ( QCustomEvent * e );private: // 设置当前图像,并重绘屏幕 void setImage(const QImage * newimage); // 目的不明 bool reconvertImage( void );private: int conversion_flags; int alloc_context; // 指向重绘时图像的指针 const QImage * image; // 指向捕捉线程的指针 video_cap_thread * ct; // 记录重绘时间间隔 QTime * repaint_timer; int repaint_interval; // 画笔对象 QPainter * painter; // 是否显示帧数 bool show_frame_rate; // 存储放大了的原始图像 BUFF * zoom_image[2]; // 用于临时放置取来的图像 BUFF * recv_image; BUFF * jpeg_temp; // 当前使用第几个zoom_image int frame; // 是否放大 bool zoom; QMutex * image_mutex; avi * avi_ptr; bool is_running;};#endif //_VIDEO_PLAYER_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -