• 大小: 11.03MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-06-19
  • 语言: 其他
  • 标签: Qt  rtsp  ffmpeg  

资源简介

环境为Qt5.9.6+MinGW32环境,可以实现三通道视频播放和截图

资源截图

代码片段和文件信息

#include “frmmain.h“
#include “ui_frmmain.h“
#include “qffmpeg.h“
#include “rtspthread.h“
#include 
frmMain::frmMain(QWidget *parent) :
    QWidget(parent)
    ui(new Ui::frmMain)
{
    ui->setupUi(this);    

    tempWidth=320;
    tempHeight=180;
    video1Max=false;
    video2Max=false;
    video3Max=false;
    all=false;
    ui->labVideo1->installEventFilter(this);
    ui->labVideo2->installEventFilter(this);
    ui->labVideo3->installEventFilter(this);
}

frmMain::~frmMain()
{
    delete ui;
}

//处理用户双击对应通道最大化处理
bool frmMain::eventFilter(Qobject *obj QEvent *event)
{    
    if (event->type()==QEvent::MouseButtondblclick){
        if (obj==ui->labVideo1){
            if (video1Max){
                tempWidth=320;
                tempHeight=180;
                ui->labVideo2->setVisible(true);
                ui->labVideo3->setVisible(true);
                ui->labImage->setVisible(true);
            }else{
                tempWidth=645;
                tempHeight=370;
                ui->labVideo2->setVisible(false);
                ui->labVideo3->setVisible(false);
                ui->labImage->setVisible(false);
            }
            video1Max=!video1Max;
        }else if (obj==ui->labVideo2){
            if (video2Max){
                tempWidth=320;
                tempHeight=180;
                ui->labVideo1->setVisible(true);
                ui->labVideo3->setVisible(true);
                ui->labImage->setVisible(true);                
            }else{
                tempWidth=645;
                tempHeight=370;
                ui->labVideo1->setVisible(false);
                ui->labVideo3->setVisible(false);
                ui->labImage->setVisible(false);                
            }
            video2Max=!video2Max;
        }else if (obj==ui->labVideo3){
            if (video3Max){
                tempWidth=320;
                tempHeight=180;
                ui->labVideo1->setVisible(true);
                ui->labVideo2->setVisible(true);
                ui->labImage->setVisible(true);                
            }else{
                tempWidth=645;
                tempHeight=370;
                ui->labVideo1->setVisible(false);
                ui->labVideo2->setVisible(false);
                ui->labImage->setVisible(false);                
            }
            video3Max=!video3Max;
        }
    }
    return Qobject::eventFilter(objevent);
}

void frmMain::on_btnOpen_clicked()
{    
    QFFmpeg *ffmpeg=new QFFmpeg(this);
    connect(ffmpegSIGNAL(GetImage(QImage))thisSLOT(SetImage(QImage)));
    ffmpeg->SetUrl(ui->txtUrl->text());

    if (ffmpeg->Init()){
        RtspThread *rtsp=new RtspThread(this);
        rtsp->setffmpeg(ffmpeg);
        rtsp->start();
    }
}

void frmMain::on_btnGetImage_clicked()
{
    ui->labImage->clear();
    int index=ui->cboxVideo->currentIndex();
    if (index==0){
     

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1023  2019-04-15 17:23  RTSPTool\.qmake.stash

     文件   18928128  2014-04-29 10:08  RTSPTool\bin\avcodec-55.dll

     文件    2031616  2014-04-29 10:08  RTSPTool\bin\avfilter-4.dll

     文件    5339136  2014-04-29 10:08  RTSPTool\bin\avformat-55.dll

     文件     412160  2014-04-29 10:08  RTSPTool\bin\avutil-52.dll

     文件    2882598  2019-04-15 17:51  RTSPTool\bin\RTSPTool.exe

     文件     433664  2014-04-29 10:08  RTSPTool\bin\swscale-2.dll

     文件     177984  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavcodec\avcodec.h

     文件       3111  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavcodec\avfft.h

     文件       2392  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavcodec\dxva2.h

     文件      10654  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavcodec\old_codec_ids.h

     文件       4007  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavcodec\vaapi.h

     文件       4094  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavcodec\vda.h

     文件       6200  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavcodec\vdpau.h

     文件       5109  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavcodec\version.h

     文件       6062  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavcodec\xvmc.h

     文件       3321  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavfilter\asrc_abuffer.h

     文件       3784  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavfilter\avcodec.h

     文件      56887  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavfilter\avfilter.h

     文件        975  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavfilter\avfiltergraph.h

     文件       7539  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavfilter\buffersink.h

     文件       4898  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavfilter\buffersrc.h

     文件       3498  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavfilter\version.h

     文件      98969  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavformat\avformat.h

     文件      18001  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavformat\avio.h

     文件       2830  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavformat\version.h

     文件       1584  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavutil\adler32.h

     文件       1834  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavutil\aes.h

     文件       4230  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavutil\attributes.h

     文件         82  2014-04-29 10:08  RTSPTool\ffmpeg\include\libavutil\audioconvert.h

............此处省略113个文件信息

评论

共有 条评论