- 博客(47)
- 资源 (31)
- 收藏
- 关注
原创 error: ‘uint8_t’,‘uint32_t’ does not name a type
c++里用了c的代码,确切的说,是引用了c写的x264.h,结果报错了:其实很简单加入一个头文件就可以解决了#include <stdint.h>
2021-12-01 14:25:41
6297
原创 Qt实现简单密码登陆界面
由于项目需要简单的登陆界面,所以稍微写了一下,废话不多说肝代码。实现结果:代码实现#ifndef LOGIN_H#define LOGIN_H#include <QMainWindow>#include <QLineEdit>#include <QPushButton>#include <QDebug>#include <QLabel>/* * 登录主界面 */class Login : public QMainW
2021-11-17 15:57:41
3375
原创 SecureCRT 下的串口不能输入指令。
1.在 SecureCRT 下的串口不能输入指令。解决方法:Session Options -> Connection -> Serial -> Flow Control,将原先默认选中的 RTS/CTS取消掉即可2.SecureCRT 不显示输入的内容,但敲 Enter 后,开发板也能接收到。解决方法:这需要设置 SecureCRT 进行本地回显(打钩)3.SecureCRT 不显示输入的内容。解决方法:重新插,拔即可。4.SecureCRT 不显示输入的内容。解决办
2021-11-12 16:20:11
19168
1
原创 Qt + FFmpeg实现播放器(FFmpeg可以解码的格式基本都可以播放)。
一、开发环境的准备Linux下移植ffmpeg开源库。二、代码实现播放功能在界面上放置一个 QLabel 和 QPushButton 控件,当点击按钮时播放视频。程序主要分为以下几方面:1、打开音视频流并获取音视频流信息;2、查找视频流位置以及查找并打开视频解码器;3、视频解码的同时处理图片像素数据;4、最后要释放申请的内存空间。#include "widget.h"#include "ui_widget.h"#include <QTime>// 调用FFmpeg的头文件
2021-11-08 16:22:22
5489
2
原创 Application provided invalid, non monotonically increasing dts to muxer in stream
报这个错误的原因是视频源时间戳出问题了,Ffmpeg要求视频源时间戳递增,如不后面的视频包时间戳比之前的时间戳小,ffmpeg会选择丢弃此类视频包,并报如上错误。如何解决这个问题,方法1是重新给视频包打时间戳可以重0开始依次递增,方法2是去掉ffmpeg的这个限制。...
2021-11-04 10:03:33
2999
原创 FFMPEG保存视频流数据至本地(rtsp转mp4)
将rtsp流中的h264视频流在没解码之前获取下来,并保存到本地文件mp4中的h264流中,h264->mp4流程图:源码:#include "rtspstreammuxtask.h"#include <stdio.h>#include <iostream>#include <QDebug>#include <QDateTime>#include <stdlib.h>RtspStreamMuxTask::RtspStre
2021-11-01 11:27:41
14524
15
原创 Qt 长时间构建解决办法。
在构建Qt时出现了长时间构建一直累加不如图:感觉没完了一直累加出现这情况我也不知道什么意思,百度也没搜索出个所以然来,我直接把项目工程的pro.user文件删除了,之后重新选择编译器即可了,就没出现如图情况,如果有知道的请告诉我这是我哪里出错了嘛?删除pro.user文件就成功编译了这是我移植到arm板子上的Qt项目而已,意是就是成功了。...
2021-10-22 15:01:24
2704
转载 Qt 实现 别踩白块儿。
一、实现思路QPainter 绘制 游戏界面PS:根据方块坐标链表绘制所有方块支持两种操作方式PS:鼠标事件 和 键盘事件(Q,W,E,R,T)定时器(10ms) 刷新 方块坐标数据根据得分修改方块的步进速度PS:简单的 step = sum % 10;【自己可以修改成喜欢的规则】二、实际效果...
2021-10-18 20:28:21
993
原创 Qt 登陆界面实现
简单的QT用户登录界面一、项目描述在登录界面输入用户名和密码正确之后才进入欢迎界面。用户名:xiaoxian密码:1240二、效果图三、源代码loginform.h#ifndef LOGINFORM_H#define LOGINFORM_H #include <QDialog>#include <QLabel>#include <QLineEdit>#include <QPushButton> class Login
2021-10-14 13:36:31
3121
2
原创 FTP服务器搭建
1 搭建 FTP 服务器1.1 控制面板-程序-启用或关闭 Windows 功能(控制面板可在桌面右键-个性化-主题-桌面图标设置-选上“控制面板”-确定)1.2 搜索 IIS 然后打开 IIS 管理器1.3 右击网站添加 FTP 站点1.4 输入站点名称和作为 FTP 的目录物理路径的文件夹可提前建好或浏览时新建即好。1.5 IP 地址填 FTP 本机 IP,选择无 SSL。IP 地址使用固定的 IP 地址,见 1.11 说明。1.6 根据需要选择身份验证、授权与权限1.7 控
2021-10-09 13:59:56
135
原创 网络摄像机rtsp地址详解。
关于英飞拓、大华、海康品牌的网络摄像机rtsp地址的介绍,方便大家快速的获取rtsp地址格式及信息。11:对应的英飞拓、大华、海康品牌的网络摄像机接入网络;22:英飞拓、大华、海康品牌的网络摄像机的rtsp地址介绍;a:英飞拓 rtsp://ip:port/1/h264major rtsp://192.168.2.100:554/1/h264majorb:大华rtsp://username:password@ip:port/cam/realmonitor?channel=1&s
2021-09-13 10:21:58
8607
原创 Linux多线程概述
Linux多线程概述什么是线程**线程(thread)**是包含在进程内部的顺序执行流,是进程中的实际运作单位,也是操作系统能够进行调度的最小单位。一个进程中可以并发多条线程,每条线程并行执行不同的任务。线程与进程的关系线程与进程的关系可以归结于以下几点:一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个主线程; 资源分配给进程,同一进程的所有线程共享该进程的所有资源; 线程作为调度和分配的基本单位,进程作为拥有资源的基本单位; 进程是拥有资源的一个独立单位,线程不拥有系
2021-09-08 11:41:35
158
原创 Windows环境串口
安装 Tera Term请读者自行下载Tera Term的安装程序文件teraterm-4.67.exe。双击teraterm-4.67.exe文件开始安装,安装操作比较简单,这里就不需多述。打开Tera Term软件Tera Term安装完成后,在桌面双击 图标启动Tera Term软件,在弹出的新建连接窗口,选择Serial单选框,并在Port选择正确的串口号,如图所示 在Windows下,串口(包括用USB扩展的串口)是以端口的形式出现,端口的名称为COM1、COM2、COM3等,每个串
2021-09-08 11:31:12
2586
原创 Ubuntu Qt 无法覆盖文件 错误解决方法
当打开Qt Creator时连续出现错误对话框,显示… .无法覆盖文件…单击确认后,可以进入Qt界面,要解决步弹出对话框问题需要方法一:在终端下输入: chown -R administrator : administrator /home/administrator/ . config/administrator :是你的用户名,我使用的是安装时默认名字。/home/ administrator :此路径为错误对话框上提示的无法覆盖文件的位置。方法二:在root权限下打开qtCreator
2021-09-06 16:58:29
2309
原创 UartAssist - 串口调试助手。
由于项目需要用到串口,所以我就找到一个简单易上手的串口调试助手。1.助手界面:2.选择(红色框内即可)。这样就可以通过串口通信啦。
2021-09-02 18:06:23
12459
2
原创 OpenCV 介绍
OpenCV 介绍OpenCV 的全称是 Open Source Computer Vision Library,是一个开放源代码的计算机视觉库。OpenCV 是最初由英特尔公司发起并开发,以 BSD 许可证授权发行,可以在商业和研究领域中免费使用,现在美国 Willow Garage 为 OpenCV 提供主要的支持。OpenCV 可用于开发实时的图像处理、计算机视觉以及模式识别程序,目前在工业界以及科研领域广泛采用。OpenCV 的 来源OpenCV 诞生于 Intel。Intel 最
2021-08-27 17:08:47
4187
2
原创 opencv中using namespace cv作用
using namespace cv;开启cv命名空间OpenCV的函数都位于cv这一命名空间下,为了调用OpenCV的函数,需要在每个函数前加上cv::,向编译器说明你所调用的函数处于cv命名空间。为了摆脱这种繁琐的工作,可以使用using namespace cv;指令,告诉编译器假设所有函数都位于cv命名空间下。这样确实可以简化一点工作,但是有可能会造成别的麻烦,这样做需要冒和其他潜在的命名空间冲突的风险。如果函数foo()已经存在于cv和std(标准函数)的命名空间,你必须指定自己使用的是位于c
2021-08-27 17:01:38
1420
原创 Linux下ffmpeg开源库移植到ARM开发板。
Linux下移植ffmpeg开源库。Make install 成功后,用户安装目录下出现bin,include,lib,share目录。进入bin目录执行file ffmpeg 查看编译出的执行程序是否是ARM架构。移植时把对应的bin,lib目录下的文件移植到对应板子上的/usr/bin,/usr/lib目录下,注意查看解压时软链接是否失效,可用ls -l查看库文件的软链接(其它目录若有调用可自行移植)。若出现/usr/lib空间不足时,可放在/opt目录或者ext4格式的TF卡(Linux下如何
2021-08-25 10:30:03
1498
原创 Linux下移植ffmpeg开源库。
1.ffmpeg 源码下载https://ffmpeg.org/releases/(根据自己需求下载对应源码)2.编译下载源码解压到用户目录。执行以下命令去配置:./configure --cross-prefix=arm-linux-gnueabihf- --enable-cross-compile --target-os=linux --cc=arm-linux-gnueabihf-gcc(编译器) --arch=arm --prefix=(安装目录) --enable-shared --en
2021-08-25 10:25:12
1167
原创 Linux下插入TF卡如何找到。
Linux下如何识别TF卡经过上篇文章的讲解我们已经把tf卡格式改变了,直接插入linux会得到相关信息。直接点击即可。1.插入tf卡,linux提示的信息。2.输入命令 sudo fdisk -l 查找tf卡信息。3.更改USB兼容性(根据情况来定)。4.找到tf卡路径即可。...
2021-08-25 09:55:26
3906
原创 Linux下如何识别TF卡
由于项目需要我需在linux环境下使用tf卡,以下就是我的流程。首先,我需要知道现在tf卡是什么格式的,它是FAT32格式的,在linux不会识别这个格式,我需要借助MiniTool Partition Wizard Free软件来给tf更改格式这样linux就可以识别到tf卡了(linux下可以识别ext4格式的tf卡。)。1.这是tf原有的格式。2.下载所需要软件,安装完毕后启动。3.删除tf卡4.点击创建按钮5.找到ext4格式(选择),点击ok...
2021-08-24 11:09:05
2903
1
原创 Linux 快捷键大全
1.关于终端的快捷键: Tab:tab键是比较常用的一个快捷键,它的作用是补全文件名或者路径。举例 来说,输入”cd /ho”在按一下tab键,终端里就会显示”cd /home”了。如果您的文件夹下,有两个名字开头部分相同的文件,比如有”picture001.bmp”和”picture002.bmp”两个文 件,输入”rm pic”以后按下tab键,就会补全成”rm picture”,您可以接着输入剩下的名字。使用tab键补全还支持对于扩展名的识别,比如您的文件夹下有”TH2AD_CHS.exe文件和 TH
2021-08-21 08:55:52
3082
原创 Linux 设备树(中英文)。
This page walks through how to write a device tree for a new machine. It is intended to provide an overview of device tree concepts and how they are used to describe a machine.本文将介绍如何为一个新机器编写设备树。我们准备提供一个有关设备树概念的概述和如何使用这些设备树来描述一个机器。Linux 设备树(中英文)。...
2021-08-20 18:07:54
168
原创 linux opendir(打开目录函数) readdir(读取目录函数) closedir(关闭目录函数)
在Linux下opendir()、readdir()和closedir()这三个函数主要用来遍历目录。在使用这三个函数前必须先包括以下两个头文件:#include <sys/types.h>#include <dirent.h>opendir函数的原型为:DIR *opendir(const char name);它返回一个DIR类型,是一个句柄,句柄要传给readdir()函数的参数就行了。(传入name路径,成功则返回非空DIR指针,否则返回NULL。)readdir函
2021-08-20 10:30:39
12357
2
原创 csdn如何修改文字体及颜色
文章转自:https://blog.youkuaiyun.com/YZY_001/article/details/85257905
2021-08-19 18:31:16
183
1
转载 用FFmpeg将rtsp视频流保存成H264、h265文件
ffmpeg:FFmpeg的名称来自MPEG视频编码标准,前面的“FF”代表“Fast Forward,是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。库的组成:libavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构和读取音视频帧等功能;libavcodec:用于各种类型声音/图像编解码;libavutil:包含一些公共的工具函数;libswscale:用于视频场景比例缩放、色彩映射转换;libpostproc:用于后期效果
2021-08-19 18:11:55
2957
2
原创 Linux C中读取/dev/ input/ event设备来判断键 盘按键是否按下
input event描述在Linux内核中,input设备用input_ dev结构体描述,使用input子 系统实现输入设备驱动的时候,驱动的核心工作就是向系统报告按键、触摸屏、键盘、鼠标等输入事件(event, 通过input_ event结构体描述), 不再需要关心文件操作接口,因为Input子 系统已经完成了文件操作接口#include <sys/time.h>#include <sys/ioctl.h>#include <sys/types.h>#i
2021-08-19 11:12:37
2599
转载 V4L2 功能列表大全。
一,功能参考目录V4L2 close() - 关闭一个V4L2设备V4L2 ioctl() - 创建的V4L2设备ioctl VIDIOC_CROPCAP - 视频裁剪和缩放功能信息ioctl VIDIOC_DBG_G_REGISTER,VIDIOC_DBG_S_REGISTER - 读或写硬件注册表ioctl VIDIOC_ENCODER_CMD,VIDIOC_TRY_ENCODER_CMD - 执行编码器命令ioctl VIDIOC_ENUMAUDIO - 枚举音频输入ioctl VID
2021-08-11 14:48:44
1249
原创 V4L2 常用控制命令。
V4L2是Video for linux2的简称,为linux中关于视频设备的内核驱动。在Linux中,视频设备是设备文件,可以像访问普通文件一样对其进行读写,摄像头在/dev/video*下,如果只有一个视频设备,通常为/dev/video0。Linux视频设备驱动常用控制命令使用说明设置视频设备属性通过ioctl来进行设置,ioctl有三个参数,分别是fd, cmd,和parameter,表示设备描述符,控制命令和控制命令参数。控制命令VIDIOC_QUERYCAP功能: 查询设备驱动的功能
2021-08-11 14:36:56
2874
原创 linux内核目录详解
样图:内核源码目录:> arch: 包含和硬件体系相关的的代码,每种硬件平台占一个相应的目录,如i386,arm, arm64, powerpc,mips等。> block: 块设备驱动程序I/O调度。> crypto: 常用的加密和散列算法,还有一些压缩和CRC校验算法。> documentation:内核各部分的通用解释和注释。> drivers:设备驱动程序,各个不同的驱动占用一个子目录。> fs: 所支持的各种文件系统。> include
2021-07-26 15:35:34
1204
原创 在线电子词典项目
在线词典实现框架:1、在线词典2、项目功能描述3、用户注册和登录验证4、服务器端将用户信息和历史记录保存在数据库中,客户端输入用户名和密码,服务器端在数据库中查找、匹配,返回结果5、单次在线翻译6、根据客户端输入的单次在字典文件中搜索7、历史记录查询8、项目分析服务器流程图:客户端流程图:/*server*/#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include
2021-07-25 22:57:44
2451
原创 FFmpeg+Qt实现摄像头(rtsp)实时显示视频
由于项目需要实时显示摄像头的图像,就学习了FFmpeg的相关知识。执行run()函数打开tcp或udp地址能否读取流查找解码器打开解码器将解码后数据转换成RGB32在Qwidget中显示释放内存结束程序流程框架程序源代码/*.CPP*//**************************************** * File name:Camera_page * 爱捣蛋的小仙儿。*****************************************/#
2021-07-25 22:25:11
5275
3
转载 linux I2C驱动架构解析
I2C 概述I2C是philips提出的外设总线.I2C只有两条线,一条串行数据线:SDA,一条是时钟线SCL ,使用SCL,SDA这两根信号线就实现了设备之间的数据交互,它方便了工程师的布线。因此,I2C总线被非常广泛地应用在EEPROM,实时钟,小型LCD等设备与CPU的接口中。linux下的驱动思路在linux系统下编写I2C驱动,目前主要 有两种方法, 一种是把I2C设备当作一个普通的字符设备来处理, 另一种是利用linux下I2C驱动体系结构来完成。下面比较下这两种方法: 第一种方法
2021-07-20 15:04:33
831
转载 Linux下Camera驱动结构
Linux下Camera驱动的结构Camera 驱动的结构和一般其他的驱动稍有不同。其他的驱动接口都比较单一,比如USB接口的,PCI接口的等,这些驱动在初始化阶段通过probe方法获得相关寄存器的访问地址,之后参照datasheet进行寄存器配置,再结合Linux系统的中断机制和数据传输机制(DMA和MMAP),进行数据处理即可。Camera驱动稍有不同,从驱动的角度看Camera本身存在两种接口形式,分别是CSI接口和I2C接口,前者用于Camera感光器件数据本身的传输,后者用于控制数据的传输(
2021-07-17 11:55:27
727
转载 Opencv Mat类
Mat类早期的OpenCV中,使用iplImage和CvMat数据结构来表示图像。IplImage和CvMat都是C语言的结构。使用这两个结构的问题是内存需要手动管理,开发者必须清楚的知道何时需要申请内存,何时需要释放内存。这给开发者带来了一定的负担,开发者应该将更多的精力用于算法设计,因此在新版本中引入了Mat类。新增加的Mat类能够自动管理内存。而且你的代码会变得很简洁,代码行数会变少。Mat类的定义如下所示,关键的属性如下方代码所示:class CV_EXPORTS Mat {public
2021-07-15 23:40:55
397
securetCRT.zip
2021-09-03
USB转串口驱动.zip
2021-09-03
UartAssist.zip
2021-09-02
MiniTool Partition Wizard Free.zip
2021-08-16
opencv入门教程.zip
2021-08-03
c语言终极宝典(整理书签版).pdf
2021-07-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人