文章目录 前言 一、Windows安装cppCheck 1.1下载cppCheck 1.2安装cppCheck 1.3添加环境变量 1.4验证安装 二、配置Qt外部工具--cppCheck 三、使用Qt外部工具--cppCheck 四、cppCheck参数说明 4.1主要选项 4.2检查范围 4.3检查器 4.4默认检查器 4.5获取检查器列表 4.6内存泄漏相关检查 4.7性能相关检查 五、自定义检测规则 5.1方式一(过滤检测规则) 5.2方式二(筛选检测结果) 5.3方式三(--rule和--rule-file选项增加正则表达式规则) 六、检测示例 6....

include<chrono> //设置开始时间 autostart=std::chrono::system_clock::now(); //需要测试代码 func(); //设置结束时间 autoend=std::chrono::system_clock::now(); //精确到微秒,除此之外,还有五种时间单位:hours,minutes,seconds,milliseconds,nanoseconds autoduration=std::chrono::duration_cast<std::chrono::microseconds>(endstart)...

一、下载FFmpeg 打开​​FFmpeg官网下载地址​​,下载Dev版本和Shared版本 在此也提供百度网盘分享地址: 链接:​​https://pan.baidu.com/s/1LLXY7lx1EMgRlup__aMnHg​​​提取码:​​0b1e​​ 二、新建Qt工程,并配置文件 2.1、将Dev中的include文件夹和lib文件夹复制到Qt工程中的Dev文件夹中 2.2、将Shared文件夹中的bin文件夹中的所有.dll复制到Qt工程对应的.exe所在文件夹中 三、工程配置,并测试 3.1、在工程文件中导入头文件和库文件 INCLUDEPATH+=...

  TTGEfHowA3iM   2023年11月02日   60   0   0 数据结构容器头文件#includec++

视频转码 ffmpeg-iinput.ogv-vcodech264output.mp4ffmpeg-iinput.ogv-vcodecmpeg4output.mp4ffmpeg-iinput.ogv-vcodeclibxvidoutput.mp4ffmpeg-iinput.mp4-vcodecwmv1output.wmvffmpeg-iinput.mp4-vcodecwmv2output.wmv ​​i​​:输入文件名 ​​vcodec​​:编码格式,h264最佳,但Windows系统默认不安装;如果是要插入PPT的视频,选择wmv1或wmv2基本万无一失; ffmpe...

  TTGEfHowA3iM   2023年11月02日   59   0   0 音视频windows系统帧率比特率

一、前言 FFmpeg的Static版本的​​bin​​​文件夹中只有三个​​.exe​​​文件,分别是:​​ffmpeg.exe​​​、​​ffplay.exe​​​、​​ffprobe.exe​​,这三个是FFmpeg源代码编译后生成的可执行文件,也就是FFmpeg的三大工具,本文章主要介绍ffmpeg。 ​​ffmpeg​​​工具主要用于编解码,​​ffmpeg​​的主要工作流程相对比较简单,如下所示: 读取输入源 进行音视频的解封装 解码每一帧音视频数据 编码每一帧音视频数据 进行音视频的重写封装 输出到目标 如上图示: ffmpeg首先读取输入源,然后通过Demuxer将...

  TTGEfHowA3iM   2023年11月02日   53   0   0 封装音视频idelinuxUbuntu

FFmpeg的Static版本的​​bin​​​文件夹中只有三个​​.exe​​​文件,分别是:​​ffmpeg.exe​​​、​​ffplay.exe​​​、​​ffprobe.exe​​,这三个是FFmpeg源代码编译后生成的可执行文件,也就是FFmpeg的三大工具,下面对各个工具进行简要的介绍。 一、FFmpeg的编解码工具–ffmpeg.exe ​​ffmpeg​​​工具主要用于编解码,​​ffmpeg​​的主要工作流程相对比较简单,如下所示: 读取输入源 进行音视频的解封装 解码每一帧音视频数据 编码每一帧音视频数据 进行音视频的重写封装 输出到目标 如上图示: ffm...

  TTGEfHowA3iM   2023年11月02日   42   0   0 数据封装音视频

一、FFmpeg的定义 FFmpeg即是一款音视频编解码工具,同时也是一组音视频编码开发套件,作为编码开发套件,它为开发者提供了丰富的音视频处理的调用接口。 FFmpeg提供了多种媒体格式的封装和解封装,包括多种音视频编码、多种协议的流媒体、多种多彩格式转换、多种采样率转换、多种码率转换等;FFmpeg框架提供了多种丰富的插件模块,包含封装与解封装的插件、编码与解码的插件等。 二、FFmpeg的基本组成 FFmpeg框架的基本组成包含AVFormat、AVCodec、AVFilter、AVDevice、AVUtil等模块库,结构图如下: 2.1、AVFormat–FFmpeg的封装模块...

  TTGEfHowA3iM   2023年11月02日   37   0   0 编解码封装封装格式

一、介绍FFmpeg FFmpeg有三个版本:Static,Shared,Dev Static(静态库版本):里面只有3个应用程序:​​ffmpeg.exe​​​,​​ffplay.exe​​​,​​ffprobe.exe​​,每个exe的体积都很大,相关的dll都已经编译到exe里面去了。作为工具而言此版本最合适,不依赖动态库,单个可运行程序; Shared(动态库版本):里面除了3个应用程序:​​ffmpeg.exe​​​,​​ffplay.exe​​​,​​ffprobe.exe​​之外,还有一些动态dll,比如avcodec-54.dll子类的。Shared里面的exe体积很小,它...

  TTGEfHowA3iM   2023年11月02日   51   0   0 头文件应用程序动态库

一、前言 之前讲过通过FFmpeg解码视频,将视频帧保存为图片,这次我们来将解码的图片播放起来; 思路: 首先,解码还是十步走战略,但是这个不能放在主线程里,耗时操作会卡住界面,所以我们将解码操作放入子线程中运行; 其次,子线程无法直接修改主界面UI,所以通过信号槽将子线程解码的QImage传递到主界面显示; 最后,主界面将传递过来的图片实时更新到QLabel上即可; 二、效果展示 Qt显示FFmpeg解码的图片 三、详细代码 解码线程类 ifndefVIDEOPLAYER_HdefineVIDEOPLAYER_Hextern"C"{include"libavcodec/av...

  TTGEfHowA3iM   2023年11月02日   33   0   0 ide编码器开发语言#includeQt

一、 使用QImage来保存图片,将解码后的原始数据AVFrame的data传入QImage中保存即可; 对于planar模式的YUV:data[0]指向Y分量的开始位置data[1]指向U分量的开始位置data[2]指向V分量的开始位置 对于packed模式YUV:data[0]指向数据的开始位置data[1]和data[2]都为NULL 对于图像文件来说,如果是plannar模式的图像格式,其存储必然是先存完一张图像所有的所有Y、紧接着再存一张图像的所有U、紧接着存一张图像的所有V。这刚好和data数组的三个指针的对应的。 所以无论是planar还是packed模式,我们直接使用dat...

  TTGEfHowA3iM   2023年11月02日   47   0   0 数据音视频ide#include

提取完整音频 ffmpeg-iinput.mp4-q:a0-mapaoutput.mp3 提取指定时间段的音频 ffmpeg-iinput.mp4-ss00:03:05-t00:00:45.0-q:a0-mapaoutput.mp3 ​​ss​​:指定开始时间戳; ​​t​​:指定编码持续时间; 上例:从3分零5秒开始,跨度45秒,即到3分50秒结束; 时间戳必须采用HH:MM:SS.xxx格式或以秒为单位; 如果不指定​​t​​选项,则一直到末尾; 只提取音频流而不进行重新编码 提取格式不能为MP3,可以是aac和m4a,请执行以下操作: ffmpeg-i...

  TTGEfHowA3iM   2023年11月02日   90   0   0 音视频时间段时间戳音频流

视频剪切 ffmpeg-iinput.ogv-ss00:00:30.0-ccopy-t00:00:10.0output.mp4ffmpeg-iinput.wmv-ss30-ccopy-t10output.wmvffmpeg-iinput.wmv-ss30-ccopy-t040output.wmv ​​-ccopy​​:从30秒复制到40秒; ​​-to​​:t是持续时间,to是结束时间; 注意事项:ffmpeg为了加速,会使用关键帧技术,所以有时剪切出来的结果在起止时间上未必准确。通常来说,把-ss选项放在-i之前,会使用关键帧技术;把-ss选项放在-i之后,则不使用关键帧技...

  TTGEfHowA3iM   2023年11月02日   90   0   0 关键帧音视频时间戳

视频合并 $catmylist.txtfile'/path/to/file1'file'/path/to/file2'file'/path/to/file3'$ffmpeg-fconcat-imylist.txt-ccopyoutput 更多时候,由于输入文件的多样性,需要转成中间格式再合成: ffmpeg-iinput1.avi-qscale:v1intermediate1.mpgffmpeg-iinput2.avi-qscale:v1intermediate2.mpgcatintermediate1.mpgintermediate2.mpg>intermediat...

  TTGEfHowA3iM   2023年11月02日   32   0   0 音视频

调整视频播放速度 加速4倍 ffmpeg-iTheOrigin.mp4-vf"setpts=0.25PTS"UpTheOrigin.mp4 减速4倍 ffmpeg-iTheOrigin.mp4-vf"setpts=4PTS"DownTheOrigin.mp4

  TTGEfHowA3iM   2023年11月02日   25   0   0 音视频视频播放

一、前言 FFmpeg的Static版本的bin文件夹中只有三个.exe文件,分别是:ffmpeg.exe、ffplay.exe、ffprobe.exe,这三个是FFmpeg源代码编译后生成的可执行文件,也就是FFmpeg的三大工具,本文章主要介绍ffprobe。 ffprobe主要用来查看多媒体文件的信息。 二、ffprobe命令查询解析 可以通过​​ffprobe--help​​来查看详细的帮助信息 C:\Users\wangjichuan>ffprobe--help//输入命令ffprobeversion3.4Copyright(c)2007-2017theFFmpegd...

  TTGEfHowA3iM   2023年11月02日   30   0   0 5e音视频2dlinuxUbuntu

一、前言 FFmpeg的Static版本的bin文件夹中只有三个.exe文件,分别是:ffmpeg.exe、ffplay.exe、ffprobe.exe,这三个是FFmpeg源代码编译后生成的可执行文件,也就是FFmpeg的三大工具,本文章主要介绍ffplay。 在编译旧版本FFmpeg源代码时,如果系统中包含了SDL-1.2版本,就会默认将ffplay编译生成出来;如果不包含SDL-1.2或者版本不是SDL-1.2时,将无法生成ffplay文件。所以,如果想要使用ffplay进行流媒体播放测试,则需要安装SDL-1.2,而在新版本的FFmpeg源代码中,需要SDL-2.0之后的版本才能有效...

  TTGEfHowA3iM   2023年11月02日   27   0   0 数据音视频idelinuxUbuntu

文章目录 ​​一、解码流程总览​​ ​​二、解码流程分解​​ ​​第一步:注册​​ ​​第二步:打开文件​​ ​​第三步:探测流信息​​ ​​第四步:查找对应的解码器​​ ​​第五步:打开解码器​​ ​​第六步:申请缩放数据格式转换结构体​​ ​​第七步:计算缩放颜色空间转换后缓存大小​​ ​​第八步:申请缓存区,将AVFrama的data映射到单独的outBuffer上​​ ​​第九步:循环解码​​ ​​第十步:释放资源​​ ​​三、完整代码​​ ​​四、FFmpeg解码相关变量​​ ​​1、AVFormatContext​​ ​​2、AVInputFormat​​ ​​3、...

  TTGEfHowA3iM   2023年11月02日   117   0   0 数据音视频ide编码器

可扩展对话框通常用于用户对界面有不同要求的场合。通常情况下,只出现基本对话窗体;当供高级用户使用或需要更多信息是,可通过某种方式的切换显示完整对话窗体(扩展窗体),切换的工作通常由一个按钮来实现。 可扩展对话框的基本实现方法是利用​​setSizeConstraint(QLayout::SetFixedSize)​​方法是对话框尺寸保持相对固定。其中,最关键的部分有以下两点。 在整个对话框的构造函数中调用。 layout->setSizeConstraint(QLayout::SetFixedSize); 这个设置保证了对话框的尺寸保持相对固定,始终保持各个控件组合的默...

  TTGEfHowA3iM   2023年11月02日   31   0   0 可扩展#includeideide可扩展#include
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~