自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(191)
  • 资源 (5)
  • 收藏
  • 关注

原创 urdf 里面的旋转变换

rpy:roll、pitch、yaw,翻滚、俯仰、偏航,对应x、y、z顺序。从坐标原点为基准,看向坐标轴正方向,绕坐标轴顺时针为正,逆时针为负。均是以base的坐标点作为旋转的,其中rpy指的是x,y,z单位是弧度。旋转次序是先x,在y,再z。rpy都是弧度制,PI = 3.14 rad = 180°。

2024-08-21 10:41:41 390

原创 ubuntu 18.04 arm install ravens error

2、install mimiconda,这里要注意下载的文件是arm系统的。3、下载git源码,然后安装requeirment安装。发现这个包没有arm下的导致的问题。安装环境:xaiver。

2024-06-05 15:23:43 392

原创 xaiver上编译dog arm出错汇总

2、

2024-06-04 17:06:58 429

原创 具身智能基础路线

参考地址:https://www.bilibili.com/video/BV1d5ukedEsi/github地址:https://github.com/yunlongdong/Awesome-Embodied-AI

2024-05-31 09:56:28 900

原创 jetson xavier ubuntu20.04ros配置

E: 无法下载 https://repo.download.nvidia.com/jetson/t194/pool/main/n/nvidia-l4t-initrd/nvidia-l4t-initrd_35.5.0-20240423174505_arm64.deb 连接失败 [IP: 203.80.97.218 443]ros-noetic-desktop-full : 依赖: ros-noetic-desktop 但是它将不会被安装。请执行 ‘apt list --upgradable’ 来查看它们。

2024-05-30 16:20:40 785

原创 xavier 安装输入法

3、使用参考网址的输入法,总算安装成功。1、安装google的输入法,不出现输入框,fcitx的。2、又安装了一个智能拼音输入法,出现乱码。

2024-05-30 11:28:16 148

原创 ubuntu20.04 ros install

【详细一次成功】Ubuntu 20.04 安装 ROS 详细教程_ubuntu20.04安装ros-CSDN博客

2024-05-16 17:02:53 489

原创 ur5 moveit配置过程

ros-noetic+ur5机械臂抓取仿真_ros机械臂视觉抓取仿真-CSDN博客

2024-05-15 15:24:26 417

原创 ubuntu18.04 运行ur5机械臂

2、fatal error: gazebo/common/Plugin.hh: 没有那个文件或目录。

2024-05-14 17:59:43 254

原创 用于3D建模的好文章

最近想研究机器人的世界模型的创建方法,同事推荐了比较好了2个文章。

2024-04-11 09:55:21 176

原创 ros中的moviet

比较好的理解机器人整体系统设计

2024-04-09 10:54:12 258

原创 hunter_bipedal_control ocs2安装配置

在ocs2同级目录下,将hunter_bipedal_control源码包放进来,然后执行。

2024-03-26 09:22:39 312

原创 ocs2安装

ocs2下载过程中,网络老是断开。

2024-03-22 17:00:41 735

原创 ubuntu20.04 安装ros1

详细介绍如何在ubuntu20.04中安装ROS系统,超快完成安装(最新版教程)_ubuntu安装ros-CSDN博客

2024-03-21 15:08:32 462

原创 ffmpeg新旧接口对比--记录

https://www.cnblogs.com/schips/p/12197116.htmlffmpeg新旧函数对比_鲲鹏私董会的博客-CSDN博客

2023-07-21 09:59:14 291

原创 ffmpeg 转码过程中参数含义

size/ Lsize:视频和音频编码后的大小,即基本等于视频和音频 之和。dup:输入帧重复(duplicate)的数量。drop:输入帧丢弃(drop)的个数。bitrate:输出视频的比特率。frame: 编码的帧数量。time:输出帧的显示时间。fps:每秒编码的帧数。speed:编码速度。

2023-07-20 09:56:06 317

原创 zlmediakt 安装编译

home/hisense/zlmediakit/zlmediakit/ZLMediaKit/server/FFmpegTranscode.cpp:31:对‘mk_frame_pix_get_av_frame’未定义的引用。/home/hisense/zlmediakit/zlmediakit/ZLMediaKit/server/FFmpegTranscode.cpp:32:对‘mk_frame_pix_get_av_frame’未定义的引用。

2023-07-12 10:37:56 1115

原创 海康摄像机没有声音问题

发现用的地址默认是rtsp://admin*@ip:port/streaming/channels/101。9、打开云台相机配置项,需要在视音频的配置里面选择复合流就有声音了。8、使用好多地址测试发现云台相机始终没有声音。6、使用ffprobe 探测这个流发现只有一个视频流。3、使用海康自己的内部IP,预览发现是有声音的。4、怀疑是转码的时候没有音频导致的,修改仍然无效。使用ffprobe 探测,这个流有音频和视频。1、手机app端拉流发现没有声音。2、查找海康摄像机是否有mic。

2023-06-20 10:59:48 5796

原创 服务器18.04安装postman,并配置本地测试环境

可以保留自己的用户名密码,再次登录,不用再次导入json文件。4、配置环境为127.0.0.1。因为是本地测试,使用127.0.0.1。3、在cllection集合上,将自己的json文件导入。5、启动后台服务zlmediakit。file->import 导入。这个过程中,需要确保网络资源是好用的。

2023-06-12 11:02:19 628

原创 使用intellij Idea 创建spring boot项目

ResponseBody:用于将Controller的方法返回对象,通过适当的HttpMessageConverter转换为指定格式后,写入Response对象的body数据区。1、问题:使用Spring Initializr创建的工程,没有src目录,原因是创建的时候,默认选择的地址是https://start.spring.io。第一步创建完成之后,就会出现src目录。3、在src/main/java/package 里面创建一个controller包,新建一个controller类,

2023-05-16 15:00:40 1282

原创 ffmpeg 拉取多路摄像头并按照时间参数截图

ffmpeg -r 1 -ss 00:00:05 -t 00:00:06 -i rtsp://admin:hisense2021@192.168.1.64:554/live0.264 -i rtsp://192.168.31.23/live_stream -map 0:v image20.jpg -map 1:v image21.jpg截取视频的第几秒。通过 -ss 参数指定-ss 指定截取视频的第几秒-t指定截取时长-i指定 输入源第一路和第二路分别用了不同的颜色标注

2023-05-11 13:39:15 1314

原创 ffmpeg 抓取一帧数据

FFmpeg功能比较强大,这里记录一条从摄像机抓拍的一条命令:---执行成功。这是一条网络摄像机的抓图命令,其实就是通过rtsp获取一帧图像,然后保存到本地。参数说明:-i:是指定视频流来源,这里是rtsp-r::是帧率-ss:开始时间-t:结束时间,这里只取1秒后面的文件名,其实可以设定格式的,比如%3d,jpg,生成的多个文件时,会自动给生成的文件编号。

2023-05-10 17:57:57 3250

原创 zlmediakit 新增可以使用硬件加速的转码http api接口方法

4、查看zlmediakit里面提供的接口,默认的推流、拉流都是不通过ffmpeg的,无法通过ffmpeg相关方法得到数据帧。通过在postman里面增加的ffmpeg转码接口,发起请求,处理的地方就会到webapi.cpp里面的api_regist。3、以上两种方法只是直接使用 ffmpeg进行转码了,但是无法我们无法破坏ffmpeg指令过程,获取到解码得到的帧数据。也无法满足我们的需求。2、ffmpeg硬件加速,这个需要安装相关的驱动,并且在编译ffmpeg的时候,增加cuda编译,这样通过。

2023-05-10 14:59:02 1636 1

原创 zlmediakit安装说明

1、修改cmakelist 里面的EnableFFmpeg ON后,发现依赖的文件始终无法编译出来。2、重新安装了ffmpeg,还是不好用。重新安装了zlmediakt发现好用了。更新子模块步骤被遗漏了,导致出现问题。备注一下可能出现问题的地方。

2023-05-08 14:39:00 285

原创 zlmediakit转码通过ffmpeg 硬件加速了吗?

开始录像:录像时间(实现的时候,需要提前录制,不能按照设定的时间开始录制,这个时候就晚了)开始转码:需要配置录像是hls还是MP4的,source url,dest url。在gpu服务器上测试使用转码的测试代码测试查看gpu占用率,337M。那我们只是需要将这个接口封装成http restful的接口。验证ok,是支持ffmpeg 硬件加速的转码的。一个开始转码的接口,一个关闭转码的接口。针对这个流,需要什么功能?

2023-05-06 17:41:01 400

原创 zlmediakit ffmpeg拉流代理测试

使用postman 测试zlmediakit的http api接口,发现在后台没有ffmpeg命令在执行的时候,一直退出?不明白是什么原理。测试结果如下:后台执行命令:ffmpeg -re -f video4linux2 -s 1280x720 -i /dev/video0 -vcodec libx264 -f rtsp -rtsp_transport tcp rtsp://192.168.1.46/live/test,则执行成功。

2023-05-06 14:22:41 2994

原创 ffmpeg 资料备份

编码的数据包然后被传递到解码器(除非复制音频流被选择用于流,见进一步的说明)。​选项,并写入到任意数量的输出“文件”,只需指定一个输出的文件名。每个输入或输出文件可以在原则上,包含任意数量的不同类型(视频/音频/字幕/附件/数据)的流。输入流和输出流直接的映射可以自动完成也可以用​。https://blog.csdn.net/zranxi/article/details/118410700 ffmpeg中文版文档。从输入“文件”(其可以是常规文件,管道,网络流,录制装置等),由指定任意数量的读取​。

2023-05-06 09:21:49 449

原创 zlmediakit功能

可以通过ffmpeg将本地文件,或者摄像头的url地址作为输入文件,rtmp://localhost:1935/test/live表示zlmediakit使用的媒体地址,可以使用ffplay 或者vlc工具进行播放。1、zlmediakit 编译成功后,进入release/linux/Debug/目录,执行Sudo ./MediaServer -c config.ini -d。4、因为当前的服务器是cpu的,在测试延迟的过程中,使用ffmepg 推拉流,一直出现解码错误,导致播放的时候会卡住;

2023-04-28 11:17:40 1897

原创 ubuntu18.04 配置zlmediakit 支持ffmpeg转码记录

1、zlmediakt 默认不支持ffmepg转码,需要在根目录下的CamkeLists.txt里面option(ENABLE_FFMPEG "Enable FFmpeg" OFF)这样在编译生成文件夹release/linux/debug/生成api_tester_player_opencv文件。2、执行api_tester_player_opencv 后面需要加上网络摄像头的地址。5、换到服务器上,编译执行,发现能够成功打印pts,dts值。5、查看cmake 版本。3、执行过错中,发现。

2023-04-28 10:51:39 1394 1

原创 ubuntu18.04 安装编译zlmediakit

1、获取代码#国内用户推荐从同步镜像网站gitee下载#千万不要忘记执行这句命令git submodule update --init#国内用户推荐从同步镜像网站gitee下载#千万不要忘记执行这句命令2、安装编译器gcc因为现在yum不使用了,使用apt代替就可以3、安装并升级cmake至3.1版本以上。

2023-04-28 10:37:48 783

原创 属性系统分析

在android系统中,所有的进程是共享系统设置值,init进程创建了并初始化属性域,而后通过执行中的进程提供的api,访问属性域的设置值。但是更改属性值只能在init进程中执行。当更改属性值的时候,要预先向init进程提交值变更申请,然后init进程处理该申请,并修改属性值。那么,属性值的更改在init进程里面,其它进程是如何向init进程发出申请的呢?通过socket。/dev

2014-12-05 14:58:57 544

原创 socket了解 一二

在看init进程解析过程中,针对子进程终止的时候处理使用了套接字,也就是socket。socket之前一直没有概念。只是听到别人说起,具体用法一概不知道。socket可以理解成打电话,打电话的时候,建立了一个通道,两边都可以说话。socket创建一下子就创建了2个句柄,相当于通道两端,用于读写数据,关闭通道用。创建socket:int  socketpair(int domai

2014-12-05 13:54:31 517

原创 低内存管理lower memory killer

在开发过程中发现,经过长时间运行的系统,会发生c层service重启的情况。如果service重启了,一般就是内存泄漏或者指针错误。经过使用dumpsys meminfo查看发现经过一段时间,这个内存是不断增加的,就判断发生了oom现象。通过这个命令,可以查看内存oom_adj临界值: cat /sys/module/lowmemorykiller/parameters/adj  

2014-12-04 10:28:37 1966

原创 用户空间log日志记录

查看当前的log级别: cat /proc/msp/log    android能否通过命令控制不同打印级别日志的输出?例如:   c++ log 访问接口需要 这么定义才可以使用log  #define LOG_TAG "MY LOG TAG"   #include   ALOGV();输出。  如果使用了ALOGV但是,不想在log里面看到这

2014-12-04 09:39:40 898

原创 内核printk的日志级别

内核log级别:printk#defineKERN_EMERG""/*紧急事件消息,系统崩溃之前提示,表示系统不可用*/#defineKERN_ALERT""/*报告消息,表示必须立即采取措施*/#defineKERN_CRIT""/*临界条件,通常涉及严重的硬件或软件操作失败*/#defineKERN_ERR""/*错误条件,驱动程序常用KERN_ER

2014-12-04 09:20:02 567

转载 Android 框架之创建设备节点文件

Android 与linux一样使用设备驱动来访问硬件设备,设备节点文件是设备驱动的逻辑文件,应用程序使用设备节点文件来访问设备驱动程序,linux使用mknod来创建设备节点文件,Android 有自己法子。Android 使用Init 进程来创建设备节点文件,分两种情况:静态节点文件和动态节点文件,以应对已经定义好的冷插拔和系统运行起来后插入的热插拔设备。对于冷插拔设备

2014-09-29 10:38:28 658

转载 struct pollfd

int poll (struct pollfd *fds, size_t nfds , int timeout);struct pollfd {int fd;        /* 文件描述符 */short events; /* 等待的事件 */short revents; /* 实际发生了的事件 */};#include  int poll(struct po

2014-09-28 17:14:16 515

转载 poll 函数

# include  sys/ poll. h> int poll ( struct pollfd * fds, unsigned int nfds, int timeout) ; 和 select()不一样,poll()没有使用低效 的三个基于位的文件描述符set,而是采用了一个单独的结构体pollfd数组,由fds指针指向这个组 。pollfd结构体定义如下:#

2014-09-28 17:14:12 429

原创 android内核打印

1、cat  /proc/kmsg2、cat /proc/sys/kernel/printk3、

2014-08-23 10:11:23 1471

原创 结合实际看文档

最近学习的东西和之前有很大差别之前看sdk文档,总是觉得这些东西不过是查阅的时候才用到的,实际上不是这样。那是对高手来说。对我这个啥都不知道的人来说,看懂了,理解了才是正确的。以后没事把这些文档都看明白了,结合实际的代码。这次觉得懂得一点了。

2013-12-30 09:55:28 469

Oracle UNIX安装手册.pdf

Oracle 8 UNIX安装手册.本书详细描述了如何按照oracle的步骤,可以学习一下

2009-05-13

Effective.STL中文.CHM

It came without ribbons! It came without tags! It came without packages, boxes or bags! ——Dr. Seuss, How the Grinch Stole Christmas!, Random House, 1957 我第一次写关于Standard Template Library的东西是在1995年,那时,我决定把More Effective C++的最后一个条款写成一个STL的简要概览。我早该更好地了解STL。不久以后,我开始收到一些mail,问我什么时候写Effective STL。 我把这个想法忍耐了几年。一开始,我对STL不够熟悉,所以不能给出关于它的建议。但随着时间的推移,我的STL的经验丰富了,主要问题出在其他方面。当一个程序库的在效率和可扩展性设计上表现出突破性的时候从来没有出过什么问题,但当开始使用STL时,这成了我不能预见的实际问题。迁移到一个几乎最简单的STL程序都成了一个挑战,不光是因为库的实现变化多端,而且因为现有的编译器对模板支持有好有坏。STL的教材很难得到,所以学习“用STL方式编程”很难;但即使跨越了这个障碍,找到正确易学的参考文档同样很困难。可能使人畏惧的是,即使最小的STL使用错误往往会导致一个编译器诊断的风暴——每一个错误都有上千个字长,而且大多涉及的类,函数或模板在令人厌恶的源代码中并没有被提及——几乎都是难以理解的。虽然我很钦佩STL和它背后的英雄们,但我还是觉得把STL推荐给在业的程序员并不合适。我不能肯定能有效率地使用STL。 然后我开始注意到一些让我感到惊奇的事情。尽管有很多小问题,尽管只有令人消沉的文档,尽管编译器的出错信息像无线电信号杂音,但仍然有很多我的咨询客户在使用STL。而且,他们不只是玩玩而已,他们竟然把STL用到了产品的代码中!这是一个革命。我知道STL表现出的是一流的设计,但程序员是不会喜欢用“必须忍耐轻微头痛,只有贫乏的文档和天书般的错误信息,但设计得很好”的程序库的。我了解到越来越多的专业程序员都认为即使一个实现得很不好的STL也比什么都没有好得多。 此外,我知道关于STL的境遇只会越来越好。程序库和编译器对(它们的)标准的兼容性会越来越好,更好的文档将会出现(它已经存在了——请见从297页开始的“参考书目”),而且编译器的诊断会渐渐改进(在极大程度上,我们仍然在等待,但条款49提供了怎样在其间应付的建议)。因此我决定插嘴,尽一份力量来支持STL运动的萌芽。这本书就是结果:改善使用C++ STL的50个有效做法。

2009-05-13

C与C++中的异常处理

异常与标准c的处理 c标准库异常处理机制

2009-05-13

空空如也

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

TA关注的人

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