Qt实现RTSP&RTMP拉流,实时显示视频流
以下是Qt实现RTSP&RTMP拉流,实时显示视频流的完整源码。
- 引入头文件
#include <QMainWindow>
#include <QTimer>
#include <QImage>
#include <QPixmap>
#include <QLabel>
#include <QVBoxLayout>
// FFmpeg
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libavutil/imgutils.h>
#include <libavutil/opt.h>
#include <libswscale/swscale.h>
- 定义类并声明变量
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private:
AVFormatContext *fmt_ctx = nullptr;
AVCodecContext *codec_ctx = nullptr;
AVCodec *codec = nullptr;
AVFrame *frame = nullptr;
AVPacket *pkt = nullptr;