自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一只海星的主页

海思视频平台从业10年开发分享

  • 博客(70)
  • 资源 (7)
  • 收藏
  • 关注

原创 RTSP拉流h265(hevc)+AAC关键节点详解!史上最全RTSP+hevc 交互全记录!

背景8012年来了,H265已经跳出小众,日趋流行!在视频大数据时代,高压缩优势也越来越明显!所以!搞一波RTSP+HEVC+AAC取流支持!网上资料,h264比较齐全,对h265的说明比较零散,记录一下所有关键点!H265原始码流处理所有的视频帧(VPS/SPS/PPS/I/P)请去掉起始码0001,RTP包不需要起始码!这里为什么单独拉出来呢,因为我就踩了一个坑,我大意啊,没有闪!上次搞RTSP很多年了,忘了这一茬,所以出现了很多莫名其妙的错误,后面单独开一篇!H264与H265区别首先

2020-12-11 10:09:15 1915

原创 海思QT开发系列(四):Hi3559 Qt+OpenGL移植

海思QT开发系列(一):3559平台QT移植海思QT开发系列(二):构建海思Qt项目Sample海思QT开发系列(三):海思QT开发系列(三):Hi3559 Qt Sample开发板运行测试参考海思3559A QT 5.12移植(带webengine 和 opengl es)Qt5.9.7 移植到Hi3536,支持OpenGL和tsLib海思开发板hi3559移植带opengl的qt并成功运行血泪史EGL library doesn’t support Emulator extension

2020-05-19 13:43:30 5265 4

原创 journal日志导致服务器磁盘满

journal日志导致服务器磁盘满,怎么清理和开启自动清理

2023-08-25 09:50:46 2073

原创 webrtc入门系列(四) zlmediakit webrtc sdp交互详细解读

学习webrtc,一开始就绕不过sdp,所以开搞。网上搜的资料不是很全面,又不好意思一直去问别人,实际上现在webrtc还没问过谁问题,好在,现在有ChatGPT。小趴菜都可以入门,什么都能问,越简单答的越好,虽然很多时候智障混淆信息,慢慢调教,缩小颗粒度问的话,还是一个很好的老师。

2023-04-13 00:24:12 1459 2

原创 webrtc入门系列(三)云服务器coturn环境搭建

这几天零碎的搜索,已经大概摸清楚了ipc想要接入webrtc的一些流程,其中打洞服务器必不可少,我们选择coturn来做为服务器。好早就想云服务器切换成Ubuntu,乘机一起迁移切换了系统,忙了一个周末,还触发了腾讯云的bug,补偿了50代金券。

2023-04-13 00:23:28 2201

原创 webrtc入门系列(二)easy_webrtc_server 入门example测试

这个样例,非常的典型,对我们做设备端的同学来说,就需要一样这样的例子,模拟IPC发送视频到web播放。

2023-04-13 00:10:42 724 1

原创 webrtc入门系列(一)easy_webrtc_server 入门环境搭建

这年头,搞音视频的同学,要说自己不会webrtc,都不好意思出门了,所以,搞…谷歌webRTC框架比较重,我擅长的又是设备端开发,最重要的是C++高级特性我不能说完全不懂吧,只能说一窍不通。所以我开始选择了c语言为主开发的metaRTC想作为入门,搭环境接入到IPC,坑次坑次干了一个下午,发现demo都没跑起来。抓包一看,只走了第一步sdp交换,然后就没有然后了(晚上还干到凌晨看代码,然。。。

2023-04-13 00:07:03 1177 2

原创 docker基础使用系列(一)Docker环境安装

主要简明记录一下linux安装Docker和Docker Compose环境的过程,非常的基础

2023-04-03 22:30:55 281

原创 linux 调试系列(二)coredump段错误查找使用详解

主要介怎么使用coredump查找程序出错!C 缺省的动作是终止进程并进行内核映像转储(core dump),内核映像转储是指将进程数据在内存的映像和进程在内核结构中的部分内容以一定格式转储到文件系统,并且进程退出执行,这样做的好处是为程序员 提供了方便,使得他们可以得到进程当时执行时的数据值,允许他们确定转储的原因,并且可以调试他们的程序。以上信息,我们可以看到进程收到了一个SIGSEGV信号,段错误退出了,在22行,SIGSEGV信号的默认处理动作是终止进程,并进行coredump

2023-03-24 09:32:26 754

原创 linux 调试系列(一)coredump环境配置

主要详细介绍在linux环境下,怎么样打开coredump调试,搭建段错误跟踪等调试环境。linux 环境(嵌入式linux)下程序开发,遇到段错误等各种程序崩溃的情况,常用的调试手段是加打印模块逐步测试,在遇到非常大的工程,函数调用层次很深,非常多线程时候,这个手段就不好使了。

2023-03-23 15:10:10 1016

原创 Nvidia Jetson开发系列(一) SDL_TTF框架移植

英伟达平台SDL_TTF库移植和测试sample。包含已经编译ok直接使用的库和头文件,还有测试sdl_ttf sample,已经全部一键编译流程

2023-03-17 15:51:51 320

原创 NVIDIA Jetson Perf工具免费下载

cpu性能分析工具perf,NVIDIA Jetson 版本,免费自取

2023-03-16 16:27:38 156

原创 海思平台 fsck.ext4移植

# 问题设备工况恶劣,高低温加总异常断电,容易出现文件系统错误:linux 出现结构需要清理 (structure needs cleaning)这个时候就需要修复一下!我用的嵌入式设备没有这个工具,移植之。

2023-03-07 11:06:29 682

转载 C# 计算md5值

C# 计算文件md5,一行代码搞定!

2023-02-28 08:51:24 781

原创 C# VS2017将所有dll封装进exe里面(包括NuGet插件附带dll)

VS2017 将所有dll打包进exe里,去掉建立安装包的烦恼,包括NeGet依赖的dll一起打包,适用于简单无资源打包要求的exe

2023-02-28 08:46:51 1108

原创 Windows相册文件批量管理工具

Windows处理文件小软件,主要是将各种备份的相册文件重命名成按年月保存的文件,方便管理和查看

2023-02-27 17:41:57 275

原创 ubuntu系统使用docker gitlab 磁盘空间满问题解决记录

ubuntu docker gitlab 磁盘空间满问题记录docker gitlab 服务器磁盘占满100%,找到问题完美删除释放离谱超大文件

2023-02-16 16:43:12 1232

原创 ARM海思MQTT开发系列(四)如何实现客户端上线/离线状态管理

《MQTT开发系列(四)如何实现客户端上线/离线状态管理》详细介绍了不同的MQTT代理服务器实现在线/离线状态的方式。包括http-api和遗嘱消息实现

2022-11-23 17:00:50 1503

原创 Linux长时间录像偶现INFO: task xxxApp:12004 blocked for more than 120 seconds

Linux长时间录像偶现INFO: task cidiVCMitBox:12004 blocked for more than 120 seconds

2022-11-03 09:43:38 304

原创 内网穿透软件NPS--客户端NPC SDK交叉编译ARM64位库

NPC arm64交叉编译NPS是一款非常nice的内网穿透软件,相较于frp更加的友好,功能也更多。NPS是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。并且提供C端SDK可以集成到自己的应用里面。

2022-10-10 11:34:33 1712

原创 三分钟用Golang搭建一个HTTP文件上传下载服务器

Go 教程 三分钟用Golang搭建一个HTTP文件上传下载服务器。只要两个功能,一个上传接口,一个下载接口。上传接口"/v1/file_upload/" 、上传接口增加简单BasicAuth鉴权、上传成功返回下载URL json格式返回

2022-09-30 09:31:50 4298

原创 ZLMediaKit test_player 支持

1.背景Git HASH:* fec1307 - (HEAD -> dev, origin/master, origin/HEAD) 修复连接迁移时,重复创建UdpSession的bug (3 天前) <xiongziliang>更新ZLMediaKit最新代码,发现如下报错In file included from /work/data/tools/ZLMediaKit/player/test_player.cpp:18:0:/work/data/tools/ZLMediaK

2021-09-13 17:53:57 521

原创 libsdl2-dev : 依赖: libdbus-1-dev 但是它将不会被安装

环境Ubuntu 16.04想要安装SDL环境支持安装sdl错误hayson@hayson-Server:/etc/apt$ sudo apt-get install -f libsdl2-dev 正在读取软件包列表... 完成正在分析软件包的依赖关系树 正在读取状态信息... 完成 有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件包尚未被创建或是它们已被从新到(Incom

2021-09-11 16:31:06 2859 1

原创 终于找到透明背景BMP格式Logo制作方法,超简单一步到位

背景海思平台显示osd使用BMP格式图片,为了图片漂亮我们不需把LOGO图片周围抠成镂空,不然显示白色背景,很难看!所以问题来了,美工做不出来背景透明在海思OSD模块可以显示的BMP图片!!!原理分析BMP是位图,由于我们需要背景透明,所以除了RGB三色通道我们还需要透明通道AlphaBitmap.Config ARGB_8888:每个像素占四位,即A=8,R=8,G=8,B=8,那么一个像素点占8+8+8+8=32位所以,我们的图片格式位深度必须是32位,海思OSD模块格式请选择ARGB_

2021-08-05 15:11:37 4686 4

原创 pthread_cancel 线程阻塞问题

背景一个模块频繁启动退出会出现退出阻塞的问题!因为有特殊业务用同事非阻塞库有问题,所以我暂时用线程阻塞加pthread_cancel强制退出;肯定就是这个线程退出阻塞,加日志跟踪之。。怀疑在pthread_join,测试发现阻塞在pthread_cancel!!分析基本概念pthread_cancel调用并不等待线程终止,它只提出请求。线程在取消请求(pthread_cancel)发出后会继续运行,直到到达某个取消点(CancellationPoint)。取消点是线程检查是否被取消并按照请

2021-07-30 11:02:30 774

原创 Arm平台程序出现Bus error.md

背景收到反馈多次功能测试后程序功能失效。打开调试,测试了几次出现如下错误[2]+ Bus error ./AppXXX找BUG有点莫名其妙,自己程序没有输出任何错误,直接bus error退了。错误输出不是自己的打印格式,以防万一还是遍历了代码和所有库文件,未找到bus error!百度搜索Bus error搜到如下信息:bus error的解决方法简单看了一些,就是数据对齐问题引起的bus error;查看新增模块的结构体定义看了一下

2021-07-20 15:20:11 1266

原创 ARM平台64位最新Tcpdump交叉编译

背景人在江湖漂,哪有不抓包!搞…下载官网知道下哪两个文件了吧环境主机:Ubuntu 16.04交叉编译链:aarch64-himix100-linux测试硬件:hisi3559开发板交叉编译下载解压成这样子,不用教了吧交叉编译libcap./configure --prefix=$PWD/install --host=aarch64-himix100-linux --with-pcap=linuxmake -j4;make install生成文件再当前install目录下

2021-07-05 14:44:42 1293 2

原创 ARM海思CAN开发系列(一)远程驾驶CAN控制方案-标准CAN拓展帧与socketcan转换

一、背景can通信在汽车行业非常的普遍,搞车必备良器!最近在做一个Can盒转发功能,就是将远程驾驶舱CAN帧发送车上socket can设备,进而转发到DCU达到控制车辆的目的。二、协议简介基础概念Can总线CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由以研发和生产汽车电子产品著称的德国BOSCH公司开发的,并最终成为国际标准(ISO 11898),是国际上应用最广泛的现场总线之一。 在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式

2021-07-03 16:24:46 1337 1

原创 手把手教你使用CMake自动编译中CMakeLists.txt 怎么写

背景CMake 一直都是用别人的开源项目来编译,Makefile都是自己写。最近看zlm源码,里面用的CMake编译,比较简洁易懂!所以有尝试给现有项目也写个CMakeList.txt来使用cmake自动编译,跟它耍耍!基础语法介绍主要参考以下链接地址:《CMakeLists.txt 语法介绍与实例演练》项目名称:#指定项目的名称 project name PROJECT(AppMedia)添加头文件include_directories(./includesrcin

2021-06-11 14:14:41 4410

原创 ZLMediaKit webRTC编译与测试

一、背景NB的ZLMediaKit开始支持了webrtc,今天有点时间,好奇测试之。二、代码下载拉最新的master代码 已经支持webrtcgit pull origin master还是把dev版本也拉下来保险git pull origin dev:dev三、编译1. 编译环境OS版本: Ubuntu 16.04openssl版本: OpenSSL 1.1.1l-dev2. openssl版本检查openssl verison看一下自己系统的版本我的是openssl-1.0.

2021-05-13 16:06:21 15729 26

原创 ARM海思MQTT开发系列(三)MQTT服务器加密TLS支持与测试

背景上一节我们调通MQTT基本功能,真正要用了,总不能裸奔吧所以,搞tls支持~加密介绍关于加密解密SSL/TLS,对称非对称、公钥私钥、签名验签你想知道的加密全在这里Configure SSL/TLS support for Mosquitto这里参考官方文档就好了生成ca证书和密钥:日期自选,单位天openssl req -new -x509 -days 3650 -extensions v3_ca -keyout ca.key -out ca.crt服务器生成服务器私钥:op

2021-03-11 16:43:30 1046 2

原创 关于加密解密SSL/TLS,对称非对称、公钥私钥、签名验签你想知道的全在这里

背景只要做程序开发、特别是网络传输相关的内容,总是绕不开加密,一直想把对称/非对称加密、SSL/TLS、公钥、私钥、签名、验证签名、openssl、x509、crt、key、crs等等这些概念统一的梳理一下,就当是复习功课,也供大家入门参考,本章绝大部分内容均来自网络。名词简介对称加密:使用相同密钥与算法进行加解密运算的算法就叫做对称加密算法!非对称加密:就是不相同密钥加解密算法。详细参考非对称加密章节介绍SSL:安全套接层(secure sockets layer)主要是在网络层(TCP)和应用

2021-03-11 16:05:14 1264 1

原创 ARM海思MQTT开发系列(二)MQTT服务器mosquitto部署和订阅发布测试

背景上篇博客已经将MQTT交叉编译完成,这一节来简单测试一下。既然是测试,首先就需要有一个mqtt服务器;MQTT服务器搭建这里选用的是centos版本来搭建mqtt服务器,为什么选这个呢,因为我真的有一个centos服务器非常的简单:添加源yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm安装yum install mosquitto启动mosquitto服务器

2021-03-06 16:30:30 1240

原创 ARM海思MQTT开发系列(一)最新MQTT客户端mosquitto交叉编译全记录

背景设备和服务器通信,需要做设备管理和控制,在MQTT和私有协议间纠结,最终选定MQTT作为通信标准,更规范普及,功能也能满足需求。开搞!这里是引用MQTT相比于TCP长连接的优势1、协议更标准MQTT是标准的RFC协议,相比于私有协议而言更加标准。好处在于:(1)协议非常完整,能够马上用于生产。各端实现同一套协议之后,就能进行通信;私有协议还需要进行大量的验证,看有无缺陷或欠考虑的地方等。(2)协议的标准化带来大量的开源组件,降低开发难度。随着物联网+5G生态越来越好,开源组件越来越多

2021-03-06 15:33:19 1723

原创 VS2017线程库pthread-win32使用静态库-不需要pthreadVC2.dll

背景用vs2017写点window上用的小工具,为了体验良好,用了线程,然鹅,换人电脑一点开!砰~弹窗呵呵~不想这小一个工具还搞个安装包带上dll!所以,我们来搞静态!!!一、我叫MT/MT是 "multithread, static version ” 意思是多线程静态的版本我们要做的,就是将所有的项目属性都改成MT,对,所有!!!工具exe属性修改找到你的项目属性–>c/c++–>代码生成–>运行库选择多线程 (/MT)ps:线程库使用MT错误示范

2021-02-04 11:53:03 1037 3

原创 Arm64版本htop工具!完美支持Hisi35559/NVIDIA xavier NX平台

背景Htop的使用简介大家可能对top监控软件比较熟悉,今天我为大家介绍另外一个监控软件Htop,姑且称之为top的增强版,相比top其有着很多自身的优势。如下:两者相比起来,top比较繁琐默认支持图形界面的鼠标操作可以横向或纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行杀进程时不需要输入进程号等交叉编译和使用交叉编译和使用请参考 htop使用详解arm64为版本htop,点我下载解压后直接运行test_htop.sh即可遇到问题请往下看!问题记录运行htop提示如

2020-12-10 15:01:53 836

原创 最新FFmpeg自编译Ubuntu和交叉编译嵌入式平台

背景FFmpeg NB!各种不同需求使得我们需要重新编译,mark之FFmpeg 环境版本:ffmpeg-4.3.1, 下载:点我历史版本下载:点我Ubuntu平台编译需求:拉去RTSP流、H264、H265解码OS:Ubuntu 16.04依赖安装nasm、yasm是汇编相关,也可–disable-yasm掉libx264/x265是编解码库支持;libsdl2是显示支持,生成ffplay测试;sudo apt-get install nasm sudo apt-get ins

2020-12-10 10:14:50 406

原创 手把手教你使用FFmepg 将H265+AAC音视频流封装成MP4-三步搞定!

背景FFmpeg作为应用最为广泛的音视频解决方案,适用范围及广,接口众多,如果是初学,很容易被众多Context晕得云里雾里,本文为小白教程,主要记录怎么讲原始音视频流封装成标准的MP4格式!网上搜索的资料大部分都是读取其他格式文件编码成H264或者读取H264文件再封装成MP4!举个栗子,FFmpeg的sample例子muxing.c就是读取一个gif文件,再编码成H264,然后封装成MP4,如果你只想将已有的原始音视频流封装成MP4的话,参考起来略显吃力!所有了这个教程!封装MP4只需要三步!

2020-12-03 18:26:59 8290 6

原创 海思3559平台(Arm 64位)ffmpeg-4.3.1移植交叉编译过程详解

一、参考海思3559A上编译FFmpeg源码操作步骤不想编译的同学可以直接跳到文章末尾下载已编译版本!!二、下载ffmpeg-4.3.1历史版本下载三、编译创建build.sh脚本;生成Makefile./configure \ --prefix="$PWD/install" \ --enable-shared \ --enable-cross-compile \ --target-os=linux \ --

2020-11-17 16:42:40 1105

原创 VS2017 C# Winform程序和DLL打包!超详细图解

背景C#写好的exe程序和一堆DLL依赖,为方便起见打成安装包,防止换电脑后的各种dll缺失!因为工具使用人数较少,选VS自带的常用工具就满足!PS:VS2017 InstallShield 打包更方便也更商业!打包工具安装方法1VS2017–>工具–>拓展和更新–>联机–>搜索"install"–>安装Microsoft Visual Studio Installer Projects–>下载大概率会网速很慢!愿意等的同学可以用此方法方法二点击

2020-10-22 15:27:18 2059

http文件服务器,支持上传、下载、json结果返回

背景 简单需要一个文件服务器来传递数据,只要两个功能,一个上传接口,一个下载接口。 选用go http模块实现,比nginx、ftp等更方便快捷。 需求整理 上传接口"/v1/file_upload/" 上传接口增加简单BasicAuth鉴权 上传成功返回下载URL json格式返回 参考博客 https://blog.csdn.net/haysonzeng/article/details/127117806

2022-09-30

futurixalpha.zip

可以将背景透明的PNG图片无损转成背景透明的BMP图片格式,神器

2021-08-05

Postman-win64-7.29.0-Setup.exe

Postman-win64-7.29.0 官网备份,下载速度更快,给需要的朋友!

2020-07-23

build-Test_3559_QT-3559_desk-Debug.zip

海思QT开发系列(二):构建海思Qt项目Sample,详细步骤如下请参考https://blog.csdn.net/haysonzeng/article/details/106140546

2020-05-15

linux-aarch64-himix100-g++.zip

QT5在海思平台交叉编译config文件,主要移植和配置过程可以参考我的博客https://blog.csdn.net/haysonzeng/article/details/106136851,有帮助的话记得点赞

2020-05-15

zadig-2.5.exe

zadig-2.5是一款通用的USB虚拟串口驱动程序,可以方便的适应多种USB和其他串口驱动,此为官方最新版本,方便下载不了的同学

2020-05-14

srt-master.zip

srt源码,取自github,方便网络有问题的同学 后期会出几个博客记录一下srt编译开发过程

2020-05-11

ov9732 datasheet

ov9732的datasheet,很多地方不提供相应的驱动,可以自己开发,资料比较难找,特此共享,有需要的可以下载 ov9732的datasheet,很多地方不提供相应的驱动,可以自己开发,资料比较难找,特此共享,有需要的可以下载

2017-09-06

空空如也

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

TA关注的人

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