自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(129)
  • 资源 (16)
  • 收藏
  • 关注

原创 【Ubuntu】主机运行虚拟机后无法识别U盘

主机运行虚拟机后无法识别U盘

2023-02-09 10:00:14 383 1

转载 【Ubuntu】更新系统时间

2.删除etc/localtime文件,并复制shanghai时区文件替换到这里。1.安装ntpdate。

2022-12-08 15:30:37 3100 1

原创 【QT】编译问题汇总

有时候在新建类里面,用emit发送信号时,会遇到signal函数未定义的错误,此时重编译项目还是会出错,需要修改一下.pro文件(在里面随意加个空格即可)此时类不要继承QObject,记得qmake和重新构建。1.emit signal时显示函数未定义。原因是没有添加Q_OBJECT宏定义。

2022-11-14 16:00:54 1884 1

转载 【QT】ubuntu环境qt交叉编译环境的配置

注意一点,需要切换到root用户,并且要对交叉编译工具链重新配置路径。

2022-11-01 09:41:20 463

转载 【音视频】流媒体直播实时视频延迟时间排查和剖析:gop关键帧间隔导致延迟,流媒体和播放器缓存,B帧等导致的延迟

(1)H264编码中的B帧解码需要I帧和临近的P帧才能解码,而且B帧不是顺序的,可能会出现B帧在很多个P帧后面,这时就需要缓存很多帧才能开始解码B帧,还有就是B帧的播放时间可能在这些P帧之前等等情况都会导致编解码延迟。MS表示流媒体服务缓存时间,G表示gop时间间隔,P表示播放时间与上一关键桢时间差,SA表示可能的音频查找时间,C表示播放器默认缓存时间,N表示网络延迟,F表示转流或转码导致延迟,B表示B帧导致的延迟。本章就从流媒体平台整体到协议细节来剖析和解决直播实时视频的延迟问题。

2022-10-28 11:44:18 1261

转载 【音视频】基于FFMPEG采集摄像头图像编码MP4视频+时间水印

摄像头图像采集+MP4视频编码参考示例:https://blog.csdn.net/weixin_44453694/arcle/det水印添加处理参数示例:https://blog.csdn.net/weixin_44453694/article/details/123909568。

2022-10-28 11:09:15 976

原创 【音视频】FFMPEG推流到NGINX服务器操作记录

运行时如果出现错误:nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use),表示nginx已经在运行,可以使用下面命令来关闭该端口的连接。

2022-10-25 17:01:14 1247

原创 【音视频】FFMPEG相关库安装

【代码】【音视频】相关库安装。

2022-10-17 14:26:07 487

原创 【V4L2】学习记录

1.采坑备忘:虚拟机ubuntu系统中,在接入YUYV摄像头后,使用V4L2框架无法调用,后来各种尝试发现,需要在虚拟机的设置中,将USB控制器--USB兼容性修改为USB 3.1。

2022-10-12 16:10:18 378

转载 【Ubuntu】安装rapidsvn及使用

原文链接:https://blog.csdn.net/destiny_chen/article/details/80266256。版权声明:本文为CSDN博主「jw_C」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。*使用sudo rapidsvn打开后输入用户密码后点击左上角x关闭,未点击关闭会导致设置好的标签等没保存。查看->首选项,添加编辑和比较工具。*操作标签时要先双击把标签打开,选中后操作目录。3.添加本地标签后,可以进行提交、更新等操作。

2022-10-10 17:59:46 1022

转载 【交叉编译】Linux下安装JPEG库

然后就进行了安装,随便下载到一个路径下,然后我在一个网站上看到了“作者: 何志强”写的一个安装脚本,稍微改了下版本号,存储成了个文件,然后source了…因为采集来的图像要进行存储,所以用到了这个库....具体安装方法在网络上能找到很多,大都可以用。

2022-10-09 16:53:55 507

转载 【交叉编译】交叉编译jpeglib遇到的问题

-host最好设成CC和LD中除了-gcc和-ld的前面部分,如arm-fsl-linux-gnueabi,因为生产的makefile中就可以自动添加arm-fsl-linux-gnueabi-ramlib之类的,省去自己手头设置。由于要在开发板中加载libjpeg,不能使用gcc编译的库文件给以使用,需要自己配置使用另外的编译器编译该库文件。最后make的时候就不是用/usr/bin/ld了,就可以通过编译。

2022-10-09 15:56:25 197

原创 【Linux命令】Linux复制时显示进度

【代码】【Linux命令】Linux复制时显示进度。

2022-10-01 16:49:37 1849

原创 【交叉编译】cmake报错 undefined reference to `pthread_atfork‘

原因:跟各个库的依赖顺序有关。需要把被依赖的库放在依赖的库后面。

2022-09-30 17:24:37 1454

转载 【交叉编译】ARM平台交叉编译|OpenSSL

由于是交叉编译,如不使用该选项,会出现汇编指令不识别的问题,因为openssl默认使用的汇编指令为X86平台下的指令,而一般的交叉编译器使用时ARM平台下的交叉编译器。注意:正在编译之前,需要Makefile中将-m64选项全部删除掉,因为aarch64-linux-gnu-gcc编译器不识别该选项。版权声明:本文为CSDN博主「奔跑的码仔」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。交叉编译器Compiler:aarch64-linux-gnu-gcc。

2022-09-29 17:48:43 1164

转载 【Linux命令】linux下通过sed命令直接修改文件内容

通常,我们使用sed可以实现内容的编辑后然后保存成另外的一个文件,如果正确的话,才写入到源文件。但是某些时候,我们需要直接修改文件,因为,保存文件到一个文件,然后再覆盖原文件的办法显得很麻烦。这种方式,其实并没有修改build.xml文件的内容。如果想保存修改,通常的做法就需要重定向到另外的一个文件。如果想直接修改源文件,而没有这样的过程,可以用下面的命令。这样,build.xml.tmp文件就是修改后的文件.这样,就直接修改了build.xml文件。file是要被修改的文件。xxx是修改后的字符串。

2022-09-29 17:27:33 2715

转载 【Linux】C++代码生成UML类图

链接:https://www.zhihu.com/question/31687711/answer/1853553697。商业转载请联系作者获得授权,非商业转载请注明出处。可以用doxygen根据代码生成文档。

2022-09-22 11:56:47 1029

转载 【RTSP】使用live555静态库编译,报undefined reference to HashTable::create(int)错误

正确的顺序,libliveMedia.a libBasicUsageEnvironment.a libgroupsock.a libUsageEnvironment.a。版权声明:本文为CSDN博主「洪水猛兽行」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/yuhengyue/article/details/99943184。live555默认编译完有4个静态库文件,

2022-09-20 10:02:08 250

转载 【C++】C++语言中的static静态成员变量和静态成员函数的作用

一、C++语言中的static静态成员变量的作用:1.在C++中,我们可以使用静态成员变量来实现多个对象共享数据的目标。静态成员变量是一种特殊的成员变量,它被关键字static修饰。2.static 成员变量属于类,不属于某个具体的对象,即使创建多个对象,也只为 static 成员变量分配一份内存,所有对象使用的都是这份内存中的数据。当某个对象修改了static 成员变量,也会影响到其他对象。3.static 成员变量必须在类声明的外部初始化,具体形式为:type class::name = v

2022-09-08 15:14:47 1157

转载 【网络编程】linux常用查看进程号、端口号命令

netstat -tunlp|grep 端口号。cmdline就是程序运行时输入的命令行命令。netstat -nap|grep 进程号。fd目录下是进程打开或使用的文件的符号连接。environ记录了进程运行时的环境变量。exe符号连接就是执行程序的绝对路径。ps -ef|grep 关键字。ps aux|grep 关键字。cwd符号链接的是进程运行目录。ll /proc/进程号。lsof -i :端口号。

2022-09-06 16:10:40 4139

转载 【C++】经典的c++下面使用pthread_create问题的解决

可是,到了这里之后,这个函数指针fp,虽然指向的函数是void*(void*)形式的,但是它实际上是void*(A::)(void*)形式的,所以放到pthread_create里面后,pthread_create就不认了。这是因为,对普通的类成员函数,编译之后,它的签名会发生变化,不再是void*(void*)的样式了。虽然我们取得了这个成员函数的指针,但是因为类型不匹配,我们依然没法使用它,即使XX_cast强行转换也不行。虽然这样做了之后,看起来挺别扭的,但是好歹能解决问题。...

2022-08-26 17:18:34 878

转载 【C++】C++函数捕获Ctrl+C方法

我们在UNIX的系统上,用CTRL+C表示退出当前进程,在这种退出当前进程的情况下,调用某个服务进程。2)然后再增加如下的方法来写捕获到CTRL+C后要执行的内容。1)在当前需要加捕获的地方,增加如下代码。...

2022-08-26 17:17:02 1642

原创 【Linux】valgrind在linux开发板上编译及使用

2.将上述压缩包拷贝进开发板上,并在开发板新建目录其中valgrind_tools文件夹是工具的安装路径。3.执行命令4.执行命令 make5.执行命令 make install最终所有valgrind相关的文件均在/home/book/tools/valgrind_tools/路径下使用这种方式,可以将valgrind_tools打包并放入其它同款开发板中使用。测试方法:.进入/home/book/tools/valgrind_tools/bin/路径下,执行./valgrind ls -l。

2022-08-25 10:41:23 613

原创 【Linux】静态库问题备忘

通过对比可以看出,不包含该头文件,生成的函数名带有前后缀。interface_tools.c文件写法如下,一定要注意包含interface_tools.h。

2022-08-24 16:18:01 259

转载 【Linux】查看动/静态库包含的函数

objdump -tT liblistdevs.so > listdevs.txt  //列出 liblistdevs.so 的函数 输出到 listdevs.txt 文本文件里面。nm -D liblistdevs.so > listdevs.txt  //列出 liblistdevs.so 的函数 输出到 listdevs.txt 文本文件里面。原文链接:https://blog.csdn.net/ZHI11235813/article/details/98884857。

2022-08-24 15:44:42 4057

原创 【MQTT】相关

启动方式:解压进入文件夹bin目录下,即可启动。

2022-08-19 15:58:09 52

转载 【Linux】cat <<EOF用法

在我们使用cat

2022-08-18 11:50:48 211

转载 makefile 中切换工作目录的问题

版权声明:本文为CSDN博主「可爱豆豆」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/merry3688/article/details/6188635。我的makefile 需要进行一些特殊处理,有的时候需要切换工作目录,我在 make中写到。然后再执行操作,发现工作目录仍然是原来的目录。记住,一行命令启动一个sub shell,所以。前一行命令导致环境的变化在下一行会被reset。请问这是怎么一回事?...

2022-08-18 11:45:50 1602

转载 【Linux性能分析】火焰图(Flame Graphs)的安装和基本用法

git clone https://github.com/brendangregg/FlameGraph.git //选择好火焰图文件存放路径后执行该条命令,从github上获取火焰图的相关文件,获取完成后会有一个FlameGraph的文件夹,如下图。x 轴表示抽样数,如果一个函数在 x 轴占据的宽度越宽,就表示它被抽到的次数多,即执行的时间长。y 轴表示调用栈,每一层都是一个函数。调用栈越深,火焰就越高,顶部就是正在执行的函数,下方都是它的父函数。没有直接消耗 CPU。....

2022-08-17 10:27:00 2106 1

原创 【MQTT】基于阿里云物联网平台实现两设备间相互订阅及发布消息

2.流程说明:规则引擎-》云产品流转 创建解析器、数据源、数据目的。device1发布topic为:/hjmeMtd96gu/device1/user/update。device2发布topic为:/hjmeMtd96gu/device2/user/update。device1订阅topic为:/hjmeMtd96gu/device1/user/get。device2订阅topic为:/hjmeMtd96gu/device2/user/get。关联数据目的(注意:“②数据目的”,是可以用鼠标点选的。...

2022-08-11 18:20:06 7317 1

原创 【Ubuntu】创建桌面图标双击可以运行程序

注意:可执行文件autoTest必须放在脚本中,该文件无法通过Exec直接调用。

2022-08-09 09:19:53 1038

原创 【网络编程】服务器端地址选择——“INADDR_ANY”

然后查了下参数“INADDR_ANY”,宏INADDR_ANY转换过来就是0.0.0.0,泛指本机的意思,也就是表示本机的所有IP,因为有些机子不止一块网卡,多网卡的情况下,这个就表示所有网卡ip地址的意思。所以我去连接这三个ip地址,都可以进行通信,这个参数就表明可以连接到本机的所有ip都是可以的,极大的简化了需要创建socket的数量,因为我们就绑定一个INADDR_ANY和一个端口,然后客户端通信到这个机器的所有ip都用这个socket来处理。...

2022-07-22 11:13:30 1786

原创 【Makefile】报错:undefined reference to symbol ‘pthread_spin_init@@GLIBC_2.2.5‘

lHidCommu该静态库找不到-lpthread,需要将-lpthread放在-lHidCommu后面。在链接阶段,将-lpthread放在-lHidCommu之后即可。

2022-07-21 09:40:26 423

转载 【Linux 】各目录及每个目录的详细介绍

例如/usr/man/man1中包含联机手册第一节的源码(没有格式化的原始文件),/usr/man/cat1包含第一节已格式化的内容。/mnt下面可以分为许多子目录,例如/mnt/dosa可能是使用msdos文件系统的软驱,而/mnt/exta可能是使用ext2文件系统的软驱,/mnt/cdrom光驱等等。每个不同的spool在/var/spool下有自己的子目录,例如,用户的邮箱就存放在/var/spool/mail中。...

2022-07-19 16:58:50 8771

原创 【Makefile】关于makefile使用上的一些备忘

编译C++程序的时候一定是用到了C++的库,所以用gcc编译时候,既有cpp文件又有c文件时候需要加上-lstdc++。

2022-07-17 09:51:33 210

转载 【C/C++】静态库链接动态库时,如何使用该静态库

静态库链接动态库时,如何使用该静态库_长江很多号的博客-CSDN博客_静态库链接动态库

2022-07-16 12:14:09 219

转载 【C/C++】C调用C++库和C++调用C库的方法

C调用C++库和C++调用C库的方法_码农小明的博客-CSDN博客_c调用c++库

2022-07-15 09:39:19 675

转载 【Linux】解决动态库无法加载问题

2.4.1 库的工作原理静态库如何被加载在程序编译的最后一个阶段也就是链接阶段,提供的静态库会被打包到可执行程序中。当可执行程序被执行,静态库中的代码也会一并被加载到内存中,因此不会出现静态库找不到无法被加载的问题。动态库如何被加载在程序编译的最后一个阶段也就是链接阶段:在 gcc 命令中虽然指定了库路径 (使用参数 -L ), 但是这个路径并没有记录到可执行程序中,只是检查了这个路径下的库文件是否存在。同样对应的动态库文件也没有被打包到可执行程序中,只是在可执行程序中记录了库的名字。可执行程序被执行

2022-07-12 22:35:49 1921

原创 【Ubuntu】客户ubuntu文件系统定制使用说明

1.在开发板的UBUNTU系统上面安装软件rsync : sudo apt-get install rsync2.在开发板的UBUNTU系统上面安装软件openssh的服务端openssh-server并修改root登录权限 : sudo apt-get install openssh-serversudo vi /etc/ssh/sshd_config修改PermitRootLogin选项用以确保root登录权限足够重启开发板或者重启ssh服务(/etc/init.d/ssh restart)3.P

2022-07-07 11:39:39 340

原创 【Linux】rk3568交叉编译工具链配置

1.编辑.bashrc2.将如下内容粘贴进.bashrc3.保存退出4.使其生效5.验证上述配置是否成功

2022-07-06 09:22:17 1934 2

根据《Shell脚本编程详解》第12章节-Shell脚本编程,自己写的shell脚本。

根据《Shell脚本编程详解》第12章节-Shell脚本编程,自己写的shell脚本。大部分的已经实现,在Ubuntu18环境调试过。比较基础的shell脚本。供初学者参考。

2022-03-08

韦东山imx6ull pro开发板出厂QT源码

韦东山imx6ull pro开发板出厂QT源码

2022-03-04

韦东山imx6ull pro开发板出厂lvgl源码

韦东山imx6ull pro开发板出厂lvgl源码

2022-03-04

NETCONN_WEBserver(UCOSII) _UsbHost_FATFS.rar

功能说明: 本程序基于原子哥STM32H7开发板例程《网络实验15 NETCONN_WEBserver实验(UCOSII版本)》修改而来,原来的程序是将网页文件转化为.c文件包含到程序中使用,现在将网页文件直接放在U盘中,程序从U盘读取网页文件,该方式方便网页的修改和更换。 存在的问题: Httpd_cgi_ssi.c文件中SSI方式下的ADC_Handler()函数、Temperate_Handler()函数、Temperate_Handler()函数、RTCTime_Handler()函数,只要数据长度超过4byte,在刷新相应的网页(STM32_ADC_TEMPERATE和STM32_RTC网页)时就会进入硬件错误中,该问题分析许久未能解决,请高手帮忙,也请告诉我原因。

2019-09-24

基于AJAX方式实现的STM32H7_WebServer网页文件

本资源是STM32H7开发板程序所用到的网页文件,配合《基于AJAX方式实现的STM32H7_WebServer源码》使用,对原子哥的网页文件进行了部分修改,以实现AJAX动态更新数据,该资源解压后将文件夹中的内容拷贝到U盘的根目录中(U盘-->SYSTEM),以便于STM32H7开发板程序能够正常打开文件。

2019-09-22

基于AJAX方式实现的STM32H7_WebServer源码

功能说明: 本程序根据原子哥STM32H7开发板源码《网络实验15 NETCONN_WEBserver实验(UCOSII版本)》改编,且包含了修改后的网页文件,原子哥的程序是将网页文件转换成了程序的一部分,该方式不方便网页的制作与调试,而且测试发现网页会每秒钟刷新一次,显示效果不好。为方便网页的更换:使用U盘存放网页文件,通过FATFS文件系统读取数据进行显示;刷新问题:网页通过ajax方式对指定的数据进行更新,开发板源码上传需要更新的数据,整体网页不变。 关于资源的说明详情见:https://mp.csdn.net/postedit/101171210

2019-09-22

基于Socket API编程接口实现的TCP并发服务器

功能说明: 本程序基于Socket API编程接口实现的作为TCP并发服务器使用 ,能够同时接受多个客户端的连接,连接后不断的给客户端发送字符串。固件程序为TCP服务器,默认IP为192.168.1.30,端口19。通过修改MEMP_NUM_NETCONN的值,可以调整客户端最大连接数。 备注: 本程序是基于正点原子哥的STM32H7开发板程序,参考了《嵌入式网络那些事——STM32物联实战》--14.3.3 Select实战--并发服务器。

2019-06-22

基于Socket API编程接口实现的UDP服务器

功能说明: 本程序基于Socket API编程接口实现的作为UDP服务器使用,网络调试助手作为客户端,发送“GET”可获取开发板系统时间 。固件程序为UDP服务器,默认IP为192.168.1.30。固件创建socket并使用8080作为服务器端口号,通过socket函数设置服务类型:SOCK_DGRAM为UDP。 备注: 本程序是基于正点原子哥的STM32H7开发板程序,参考了《嵌入式网络那些事——STM32物联实战》--14.2.2 UDP时间服务器。

2019-06-13

基于Socket API编程接口实现的智能TCP客户端

功能说明: 本程序基于Socket API编程接口实现的作为TCP客户端使用 。固件程序为TCP客户端,默认IP为192.168.1.30,服务器IP为192.168.1.67。固件创建socket并连接服务器,通过socket函数设置服务类型:其中SOCK_STRERM为TCP,SOCK_DGRAM为UDP。通过setsockopt函数设置接收超时时间,不必永久等待。 备注: 本程序是基于正点原子哥的STM32H7开发板程序,参考了《嵌入式网络那些事——STM32物联实战》--14.2.1 智能的TCP客户端。

2019-06-12

基于STM32H7开发板的NETCONN_TCP 服务器程序(UCOSII版本)

功能说明: 本程序基于Sequential API编程接口实现的作为TCP服务器性能测试使用 。可配合jperf-2.0.0工具与本程序所在开发板进行带宽测试。 备注: 本程序是基于正点原子哥的STM32H7开发板程序,参考了《嵌入式网络那些事——STM32物联实战》--13.4.3 TCP性能测试章节。 参数说明:TCP_MSS大小: (1500 - 40);TCP_WND大小:(4*2*TCP_MSS)

2019-05-23

基于STM32H7开发板的TCP_Telnet服务器源代码

功能说明: 本程序实现了Telnet服务器功能。可使用Telnet终端与本程序所在开发板进行交互。 备注: 本程序是基于正点原子哥的STM32H7开发板程序,将《嵌入式网络那些事——STM32物联实战》的Telnet服务器程序进行的移植和修改。

2019-04-08

基于STM32H7开发板的TFTP服务器程序

功能说明: 本程序实现了TFTP服务器功能。可使用tftpd32工具与本程序所在开发板进行文件的收发。 备注: 本程序是基于正点原子哥的STM32H7开发板程序,将《嵌入式网络那些事——STM32物联实战》的TFTP服务器程序进行的移植和修改。

2019-03-30

STM32CubeMx例程

STM32CubeMx例程,基于STM32F746I芯片。 主要包括GPIO,EXIT,PWM,TIM,PWR,CAN,USART,IIC,SPI等部分的程序。

2019-02-18

mini2440开发板的根文件系统busybox(root),yaffs2格式

mini2440开发板的根文件系统busybox(root),yaffs2格式

2018-01-07

友善之臂mini2440,内核文件,测试可用

在友善之臂mini2440开发板上验证过,该文件测试可用。

2018-01-07

七位密码锁设计与实现

关于九位密码锁的详细设计,欢迎下载内容详细。欢迎下载,欢迎下载

2010-09-27

空空如也

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

TA关注的人

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