自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 关于av_read_frame 返回值小于0的问题

我自己写的一个ffmpeg播放器,播放本地视频的时候可以完整播放,播放实时视频流的时候,播放一阵子后会av_read_frame返回值为-5,错误为 I/O 问题,查看了流媒体服务器的日志,显示的是socket send timeout。在网上找了资料后,再对比了另一个播放器的实现后,定位问题在ffmpeg取流线程上。解决方案:如果ffmpeg取流线程同时兼顾解码,会导致cpu占用会很高。可以设置一个缓冲区和一个新线程。把取流线程的packet放到缓冲区,另一个线程实现解码渲染。经测试,没有发生该情况

2022-02-23 01:37:06 1873

原创 Qt 槽函数执行问题

本人在编写一个qt程序的时候,在一个线程内connect了一个自定义的信号与自定义的槽函数,想着在调用槽函数加上判断,如果判断不成功则延时,结果程序卡死。经过定位发现,是connect的时候,槽函数运行顺序的问题Qt的信号与槽机制是基于回调函数的基础上的但是在多线程编程下,槽函数并不相当于中断机制,可以参考如下的信息connect其实是存在第五个参数的这里参考的是这篇文章https://blog.csdn.net/life_is_too_hard/article/details/5208972

2022-02-19 01:55:25 3703

原创 云服务器下载文件

云服务器上传文件可以参考:https://blog.csdn.net/cja974182468/article/details/121343103pscp root@ip地址:/文件地址/* 本地地址实例:我这是下载文件夹,打码的是服务器的IP地址-r参数是对应的文件夹,如果下载的是单个文件不需要-r参数...

2021-12-02 23:12:08 305

原创 static 定义成员函数报“Cannot declare member function ...to have static linkage“错误

问题分析:出现这种情况通常.h文件中声明类的成员函数用static修饰。此时static的作用是让一个类只有一个static成员函数实例化。在.cpp文件中实现函数的时候,也加了static修饰符,此时static修饰符的作用是当前函数只能作用在当前的cpp文件。解决方法:删除.cpp文件的static修饰符。或者在.h文件中实现。...

2021-12-02 20:35:54 1273

原创 云服务器上传文件

云服务器上传文件我是依靠putty实现的,可以在这下载https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html注意putty安装好后有没有pscp,没有的话需要下载好pscp,并且配置好环境路径(Windows系统)用cmd命令行窗口来调用pscp传输文件,格式为:基本命令格式:pscp 文件 用户名@LinuxIP:目录使用“ -l ”选项可以指定用户名。基本命令格式:pscp -l 用户名 文件 LinuxIP:目录使用“

2021-11-15 20:52:54 632

原创 ffmpeg使用avformat_open_input的时候报错method SETUP failed:461 Client error

method SETUP failed:461 Client error解决方法:提示这个RTSP流不支持TCP transport,修改程序参数设置transport为UDP试试。

2021-09-29 11:29:18 2754 1

原创 图最短路径算法

Dijkstra算法基于BFS的基础上加入优先队列,保证下一次遍历的位置为步数最小的,就能保证每次更新的当前节点为最短的距离。图片来源:https://blog.csdn.net/qq_35644234/article/details/60870719算法实现:维护一个数组为从V1到V6的最短距离,维护一个优先队列(从小到大)。第一次遍历:1.从V1开始,遍历它的出度,发现直连的只有V3和V5。把V1和V3之间的这条边压入优先队列,把V1和V5这条边、V1和V6这条边也压入优先队列。当前优先

2021-09-05 22:58:19 124

原创 手写atoi

实现一下atoi函数/*库函数: atoi功能:把输入的char数组转成int型,如果输入类型不规范则为0*/int ATOI (const char *sor){ int length = strlen(sor); int l = 0, r; char Flag = 1; while(l < length && sor[l] == ' ' || sor[l] == '\t'){//跳过前置空格或者制表符 l++; }

2021-09-02 22:31:44 296

原创 Qt 使用MYSQL错误号1251解决方法

这种情况通常都是出现在编译旧版的MYSQL项目中,自身版本太新,旧版的mysql不支持,所以需要去下载对应的库放到qt的目录中https://downloads.mysql.com/archives/c-c/在压缩包里面找到这两个库放到这个目录或者放到你qt的工程目录也行就解决了这个问题了。至于1049 =》 对应的是没有对应的database,创建一个就好了...

2021-09-01 16:01:15 138

原创 C++判断大小端

更新一下,这个写法更直观int main(int argc, char * argv[]){ int x = 0x12345678; int c = x & 0x000000ff; if (c == 0x78) { cout << "小端" << endl; } else { cout << "大端" << endl; } return 0;}

2021-08-30 23:49:45 150

原创 手写一下智能指针

#pragma oncetemplateclass UniquePtr {public:private:T *_data;};templateclass SharedPtr {public:explicit SharedPtr():_count(nullptr), _data(nullptr){}explicit SharedPtr(const SharedPtr &sor) {if (this != &sor) {_count = sor._count;_dat

2021-08-28 18:22:53 304

原创 对于Qt程序在Windows系统下不同放大倍数导致文本显示不全的问题

往往是因为程序员本身的拉伸程度和使用者使用的环境不一样,两人的拉伸程度不一样导致显示的界面效果不同。解决方法:给文本设置样式的时候不要在UI文件上修改,通过setstylesheet修改,这样设置的文字样式是在不同拉伸程度下显示的是一样的字体大小和样式在这改↓:可以这样写,是设置字体大小为20px,微软雅黑字体。...

2021-08-18 17:56:20 1864 1

原创 Qt阴影边框!!!!!!!!!!!!!!!

先上图最终效果在CSS3中有box-shadow实现,但是qss是基于css2的,不能通过这个字段来实现,需要用到类QGraphicsDropShadowEffect首先需要让一个widget作为背景控件来填充背景,避免设置透明后让子控件都有阴影了代码如下 //设置窗体透明 this->setAttribute(Qt::WA_TranslucentBackground, true); //设置无边框 this->setWindowFlags(Qt::Wi

2021-08-18 16:27:44 2089

原创 Qt设置图标

Qt想要设置程序的Logo和MessageBox的Logo在pro文件里面加入这一行这个icon.ico是放在资源文件里面的,它是一个图标文件,可以把你想要的图片网上找一个ICO转换网站转换一下,就能得到图标文件了。...

2021-08-12 10:56:14 504

原创 Qt GBK编码与UTF-8编码格式转换

用QString的时候往往会出现默认转化的问题。也就是得到的数据已经是变成了UTF8编码,但是它的内容是GBK编码的问题。也就是说如果GBK编码得到的数据是 0x11 0x22放入QString的时候会变成 \u0011 和 \u0022这时候已经是UTF8编码了。为了解决这个问题,就引入QByteArray,QBytearray不会默认的帮你转换编码该是多少就是多少下面是我写的GBK编码和UTF-8编码互相转换的函数。返回值是QString,可以看着来改inline QString GBK2UT

2021-08-10 19:55:49 6129

原创 git push时报错git push error: failed to push some refs to

用 git status 查看状态用 git checkout +目标分支名再把想要上传的放进你的文件夹最后来一套上传的流程就行git add .git commit -m “注释”git push -u origin 分支名就完事了

2021-08-10 17:42:03 123

原创 Http2.0

2021-08-09 23:58:15 66

原创 Qt关于子线程调用Qtcpsocket发送内容不会中断的问题

Qt中,如果在主线程定义了一个Qtcpsocket,然后用子线程调用这个socket来发送数据,你会发现,发送的数据不中断,并且只有当连接关闭的时候才会中断发送,接收端才可以接收到数据。解决方法:哪个线程定义的Qtcpsocket,就哪个线程调用这个QTcpSocket,主线程定义的话就让主线程调用就好了。让连接断开也是一种方法。...

2021-08-09 19:53:12 674

原创 Qt 出现了undefined reference to vtable 解决办法

新增的cpp文件和h文件用这个class来添加就能解决了或者把原来的文件重新添加到项目里面

2021-08-09 10:36:34 183

原创 关于C++函数优化的方法

1.对于重复调用的函数,用变量储存比如 经常用到一个vector的size,用一个int型变量 保存,会好很多,减少函数调用的开销2.对于容器的取值,用迭代器会快很多比如对一个vector迭代for(int i = 0; i < vec.size(); ++i)cout<<vec[i]<<endl;用迭代器会快很多,例for(auto ite = vec.begin(); ite!= vec.end(); ite++)cout<<*ite<&l

2021-08-07 00:44:59 402

原创 关于Qt自定义标题栏

Qt想要个性化设计离不开标题栏。像是网易云音乐,各种浏览器这种就是需要自定义标题栏。最近项目用到了自定义标题栏自定义标题栏分为几个步骤:1.隐藏QT自身的标题栏2.用一个QWidget充当标题栏,在QWidget里面放置你想要的功能控件3.在QWidget的基础上加入最基本的控件:最大化按钮,最小化按钮,退出按钮。并完成对应的信号与槽4.最最重要的就是重写鼠标信号,在QWidget处设置事件过滤器,重写事件函数,根据事件类型实现自己的功能:较为基础的:双击最大化,双击最小化,窗口跟随移动,

2021-08-07 00:30:27 901

原创 cookie与session

2021-07-23 11:08:56 47

原创 HTTPS协议

2021-07-22 23:54:29 56

原创 C++类的内存分布

2021-07-19 00:31:30 94

原创 Mysql 无安装版 下载与配置

Mysql安装与配置Mysql下载下载好后放到想要放置的目录用cd命令移动到mysql的bin目录用mysqld --install命令安装mysql用 mysqld --initialize --console 初始化随机密码我的随机密码是:B?t6;ZcjWh9u启动MYSQL登录MySQL : mysql -u root -p 随机密码输入刚刚得到的MySQL修改密码为root alter user 'root@‘localhost’ identifi

2021-07-15 19:17:29 50

原创 多线程基础知识(二)

2021-07-14 23:20:04 54

原创 QT常见错误(1)

问题1:在mainwindow,cpp里面两个指针变量没有定义自己定义问题2:缺失了xxx.pngqt问题提示:-1: error: [Makefile.Debug:1347: debug/xxx.cpp] Error 1在Resource文件夹的xxx.qrc文件里面能看到缺失的图片解决方法自己画问题3:无法编译Qt webkitwidgets模块和webenginewidgets模块,qt版本太新重新配置qt,根据Qt官方的解释(在Qt的帮助文档里也可以看到),在5.6版本以及之后的版本,

2021-07-14 19:51:30 2944

原创 SQL 增删查改

SQL增删查改文章参考:https://www.cnblogs.com/heyangblog/p/7624645.html

2021-07-04 23:24:30 68

原创 第一次写博客

第一次写博客我这个菜鸟准备起飞啦。记录我的第一天。我要学习动态链表啦

2018-12-15 22:47:22 76

空空如也

空空如也

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

TA关注的人

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