自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (9)
  • 收藏
  • 关注

原创 Qt界面刷新优化的一些心得

【背景】一个类似Windows任务管理器的性能界面。该界面有多个曲线图同时定时刷新,每个曲线图包括多条曲线更新,数据更新频率大概为一秒一次。程序中曲线图已封装为自定义的图表类,给出数据更新接口。【初始方案】主程序设计方案上,采用数据收集和数据更新分开的方式,即数据收集线程仅收集并解析来自数据源的数据,并分门别类的存储到共享结构体中。数据更新线程在收到数据更新信号之后,把新的数据刷新到图表中。【存在问题】数据刷新时,鼠标拖拽主界面移动时存在停顿,且停顿频率与数据刷新频率相当。尤其是当数据量较大或更新频

2020-07-06 22:29:13 4589

原创 自定义封装Qt柱状图类,实现数据动态更新和鼠标数值显示

最近有个使用Qt动态创建柱状图的需求,使用Qt中的图表类Qchart封装一个自定义柱状图类,该类需要完成三点需求:1、支持X轴和Y轴的同时动态输入,即表中X轴条柱个数和Y轴数值动态变化;2、X轴条柱个数不变,动态刷新Y轴对应各个条柱数值。3、在柱状图显示时,支持鼠标悬停时显示条柱数值。【思路】1、考虑自定义这个类如何在主窗口中的展示,在类似使用QHBoxLayout创建一个固定...

2019-12-15 12:13:31 6148 3

原创 【树莓派记录】还原已搭载树莓派系统的TF卡

不小心把树莓派系统搞坏导致3B上的wifi模块无法启动连接,只能重装系统,因为搭载了树莓派系统的TF卡在windows下仅有14MB的空间,需要对原来的TF卡进行格式化,网上有挺多教程,包括用DiskGenius进行格式化的,步骤繁琐,下面介绍个简单粗暴的方法;1、...

2018-05-29 13:15:18 3576

原创 树莓派x264和ffmpeg编译(用于支持GPU硬件编解码)

FFmpeg是一套开源的音视频编解码库,有非常强大的功能,包括视频采集功能、视频格式转换等。视频编解码是一个非常消耗系统资源的过程,而树莓派自带了H.264的硬件编解码器,本文讲介绍在树莓派上配置FFmpeg使其支持硬件编解码器并编译安装的过程,所使用到的所有库文件,包括x264和ffmpeg源码及其配置文件,均上传至CSDN下载中心,下载地址如下:x264源码及其配置文件下载:点击打开链接

2018-01-31 10:45:50 4997

原创 【记录】memcpy后报错:segmentation fault

问题:使用v4l2框架进行图像数据采集,遇到在执行memcpy()函数时报错segmentation fault 开发环境:ubuntu和ARM开发板(Linux+Qt系统) 实验做的代码如下(只摘取关键部分代码)unsigned char *tmpbuffer;tmpbuffer=(unsigned char *)calloc(1,(size_t)(IMAGEWIDTH*IMAGEHEIGHT

2017-12-14 15:55:45 7617

原创 FFmpeg中数据与OpenCV中Mat数据的转换

做的一个程序,在Qt中用FFmpeg接收解码RTSP流,后期需要对解码得到的数据进行处理,因此需要把FFmpeg得到的数据转换成OpenCV中的Mat类型存储下来。 FFmpeg通过sws_scale函数将原来视频格式转换为YUV格式,保存着AVPicture结构体中,而AVPicture结构体中的data数据就是我们需要存储的视频数据了。下面的代码,是在循环读取RTSP视频流之前,进行的设置:/

2017-11-24 21:11:27 2656 2

原创 Qt+ffmpeg环境搭建

一、ffmpeg下载 ffmpeg源码可在其官网上下载,网址:https://ffmpeg.zeranoe.com/builds/ 之前看了网上一些相关的配置文章,对于windows7 (64bit)下是选用64bit还是32bit的ffmpeg有着一些区别,有网友在64bit下使用64bit出现一些解决不了的错误,但使用32bit则不存在问题。我电脑64bit,选择32bit的ffmpeg.

2017-11-14 23:19:34 5284 1

原创 Ubuntu14.04下Qt5+opencv3.0安装和配置

一、Qt5安装 如果Ubuntu系统是64位,直接从Qt官网(如下图)上下载qt-opensource-linux-x64-5.6.3.run,之后添加执行权限运行安装即可。但是如果ubuntu系统是32位,官网上并没有32位的安装包,经过网上一番搜寻,通过以下方法可以安装上。 以下是执行步骤:sudo apt-get install build-essential(这是需要的工具)sud

2017-11-08 19:35:39 4408 4

原创 windows7(64bit)下opencv3.0+Qt配置过程

本文介绍在windows 7 64位下安装和配置Qt+Opencv3.0的过程,所需材料的版本和下载地址如下: Qt版本:qt-opensource-windows-x86-mingw492-5.6.3 【下载地址】http://download.qt.io/archive/qt/5.6/5.6.3/ 该地址下有多个Qt版本选择,在Qt官网上的下载过程有点乱,在这个链接里可以找到多个版本,下载

2017-10-30 21:51:44 475

原创 【华为笔试】模块依赖关系判断

题目描述:一个系统的若干模块之间存在互相依赖的关系,如果A模块调用了B模块的接口,那么成为A依赖B,记为A->B如果A->B,B->A,那么称A和B模块都存在循环依赖。如果A->B,B->C,C->D,D->B,那么BCD存在循环依赖,A不存在循环依赖,以此类推先输入若干模块之间的关系,判断某模块是否存在循环依赖。模块ID范围为0--0xffffffff调用者保证相同的关系

2017-08-17 00:43:49 6252 2

原创 MJPG-streamer源码分析-输出部分

MJPG-streamer可以创建多个输出,简单的说,根据主函数中输入的参数解析的结果,确定输出通道的个数,至少保证有一个输出通道在程序运行时存在。从参数解析结果确定每个输出通道的参数,并以这些参数为每个通道创建发送线程。在每个发送线程上,不断侦听是否有连接请求。每当有连接请求,在未达到最高连接数目时,为每个连接请求创建连接线程。在连接线程中,根据参数,确实发送方式是stream?snapshot

2017-08-15 01:05:03 1016

原创 MJPG-streamer源码分析-输入部分

MJPG-streamer在进行相机采集开始前,需要对进行初始化过程input_init()函数的初始化过程概括如下:1、【定义和初始化变量】包括width=640, height=480, fps=5, format=V4L2_PIX_FMT_MJPEG,char *argv[MAX_ARGUMENTS]={NULL}, *dev = "/dev/video0",2、【初始化

2017-08-14 20:42:36 848

原创 MJPG-streamer源码分析-主函数部分

MJPG-streamer是一个轻量级的视频服务器软件,一个可以从单一输入组件获取图像并传输到多个输出组件的命令行应用程序,可应用在基于IP协议的网络中,从网络摄像头中获取并传输JPEG格式的图像到浏览器MJPG-streamer的源码基本上可以分为main函数、输入插件和输出插件三部分。在源码包中,mjpg-streamer.c文件主要是完成全局变量的定义,解析输入参数,打印help信息,信

2017-08-14 19:30:52 960

原创 大数字的加减乘法实现

两个数字的加减乘法,当数字大小超过了计算机内置类型所允许的范围,用字符串模拟加减乘法的过程来实现大数字的加减乘法,除法比较复杂,日后再补充; 加法:string aplus(string a, string b){ string res; int i = a.length() - 1, j = b.length() - 1, t1, t2, sum = 0; bool s

2017-08-04 14:57:07 356

原创 【幸运数】求解过程

原题目: 小明同学学习了不同的进制之后,拿起了一些数字做起了游戏。小明同学知道,在日常生活中我们最常用的是十进制数,而在计算机中,二进制数也很常用。现在对于一个数字x,小明同学定义出了两个函数f(x)和g(x)。 f(x)表示把x这个数用十进制写出后各个数位上的数字之和。如f(123)=1+2+3=6。 g(x)表示把x这个数用二进制写出后各个数位上的数字之和。如123的二进制表示为1111011

2017-07-26 15:56:07 2358 1

原创 Ubuntu下安装WeChat

微信在Linux下没有客户端,这个对于使用Linux的人还是挺不方便的,就算可以使用网页版,但是使用起来还是没有客户端方便。摸索了许久,总算找到了一个可用的版本。安装过程如下:下载项目网址https://github.com/geeeeeeeeek/electronic-wechat/releases下载后将文件移动到/opt目录下sudo mv 下载/linux-ia32.t

2017-06-20 11:16:31 10089

原创 Maximum Subsequence Sum最大连续数列和

题目:对于一个有正有负的整数数组,找出总和最大的连续数列,包括其最大连续数列和,起始和终止位置下标给定一个int数组A和数组大小n,请返回最大的连续数列的和。保证n的大小小于等于3000。void MAXsum(vector data, int length){ int Cursum = 0, Maxsum = 0; int start = 0, end = 0; for

2017-04-28 16:15:21 303

自定义封装Qt柱状图类,实现数据动态更新和鼠标数值显示

自定义封装Qt柱状图类,提供简单数据更新等接口实现柱状图对象的创建、销毁、数据更新和清空等功能,实现数据动态更新和柱状图上鼠标悬停数值显示。

2019-12-15

Mjpg-streamer源码架构分析

对MJPG-streamer的源码实现进行分析,使用思维导图进行组织

2018-04-01

FFmpeg源码及其配置文件,用于配置树莓派GPU硬件编解码

FFmpeg源码及其配置文件,用于配置树莓派GPU硬件编解码,需要配置x264进行使用,x264源码请查看本人前面上传的文件。

2018-01-30

x264源码及其配置文件,用于配置树莓派GPU硬件编解码

x264源码及其配置文件,用于配置树莓派GPU硬件编解码,通过指定编码器h264_omx实现树莓派上的硬件编解码

2018-01-30

基于Qt的摄像头采集数据和264编码,并写入本地文件,可播放

基于Qt,使用x264对摄像头采集数据进行264编码并将其写入本地文件,可播放。调试麻烦先修改.pro文件中ffmpeg和x264库的动态链接库和文件包含路径

2018-01-11

linux一句话精彩问答

对linux系统上常见命令的总结,来自网站和博客。

2016-03-15

mp3tagcharu

通过该程序对歌曲插入专辑图或者其他参数修改

2014-08-18

诺基亚音乐扫描PC

通过该程序可以扫描电脑的音乐,并在手机端查看相关音乐资源

2014-08-18

Gray's for Potplayer - 又简洁,又鲜明[Www.Win8Mi.CoM]

Gray's for Potplayer - 又简洁,又鲜明,可以添加到Potplayer 上,形成独特的风格

2013-08-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除