1. BOOST生成JSON中文乱码

    最近Linux生产环境在用boost库生成json的时候发现中文乱码,经调测发现是boost库的bug,在此记录。 boost生成Json一般用法boost有两个数据结构,其中一个是 property::ptree, 这个数据结构可以表示 xml json ini 等格式的文件内容,在不使用第三方比如 jsonpp 等库的情况下,在使用boost的情况下也不需要引入其他库,一般操作完 ptree …

    技术 继续阅读

  2. 拼接YUV420P图像

    最近需要实现视频的左右拼接,从而可以实现2路摄像头的同时显示,调研使用了几种实现方式进行了对比。 ffmpeg方式谈到视频方面的处理,肯定首选 ffmpeg,想要实现上面的功能,其实 ffmpeg 就能实现,使用其 filter 就可以,大概思路是: 使用 pad 扩展出另外一个图像的空间 使用 overlay 复制另外一个图像到扩展出来的空间 整体实现不难,后续再讲一下这个,因为可以实现很 …

    技术 继续阅读

  3. FISCOBCOS~2.4动态群组试用

    续前文,近期 FISCO BCOS 2.4 版本发布了,最核心的特性是动态群组管理,这个功能免去了手动部署新群组的过程,极大的方便了群组管理。 新版本部署FISCO BCOS 2.4 版本部署前一版本基本没有区别,注意 2.3 版本部署的时候配置文件稍有变化(依然兼容以前配置)。按照以前的部署方法部署即可,新配置参考 2.3 的配置即可。 动态创建群组这个版本虽然增加了动态创建群组的功能,但是 …

    技术 继续阅读

  4. 精确控制海康摄像头PTZ

    项目中需要定时抓取摄像头不同角度的视频图像,也就是要精确控制海康摄像头PTZ旋转指定的角度,比如像我们的需求应该是90°,旋转完成之后刷屏,然后继续旋转。这种需求第一个想到的就是控制预置点,这个也是一个非常不错的方法,因为可以对真实情况进行调整,但是由于摄像头数据太大,一个个调整不太现实。 PTZ旋转实现海康的PTZ控制比较简单, 但是要精确控制PTZ到指定的位置,好像没那么容易。查看海康的API …

    技术 继续阅读

  5. FISCOBCOS~联盟链部署

    续前文,开始进行区块链部署。 部署前准备首先清楚联盟链,是需要多家机构组成联盟,因此在部署上稍微有区别。其中 FISCO BCOS 支持多群组概念,也就是意思说,多个组织组成多个联盟,而且联盟中可以允许共同的组织节点。 FISCO BCOS 部署需要 Linux 平台,建议使用 CentOS 7 平台,同时安装可能的依赖软件 OpenSSL 和 Python 等。 安装部署工具如果未安装部署工具, …

    技术 继续阅读

  6. FISCOBCOS~自建CA及实现认证

    最近在调试区块链,开始调研了很多区块链平台,包括百度京东的,最终还是觉得微众银行的FISCO BCOS最好用。至于各个平台的差异,大家可自行百度对比。顺便说一句,FISCO BCOS(以下称FB)的社区还不错,官方支持nice! 关于FISCO BCOS自建区块链,基本比较合适的方式是联盟链。因为使用公链存着信息泄露,私链又没有信用背书,因此诞生了在有限范围内使用的区块链架构,即联盟链。 联盟链是 …

    技术 继续阅读

  7. 禁用PIP安装到用户目录

    当前使用的 CentOS 7 系统上, 在某些脚本中自动安装一些软件竟然安装到root的用户的目录下了,其他用户根本用不了,因此针对该现象进行了分析。 问题基本分析正常情况下软件包是安装到系统目录下的,也就是安装目录下的 site-packages 目录,但是不知道为啥会安装到用户目录,不管什么情况了,总之将其改掉,全部安装到系统目录下。 经常上网搜索发现了其有一个这样的命令 pip -m si …

    技术 继续阅读

  8. NGINX支持中文目录索引(Win32)

    Windows平台上在使用Nginx的时候无法支持中文路径,哪怕是直接访问一个中文路径,也无法访问到,访问文件是404,访问目录是500。 解决方案思考正常情况下先访问一个内部有中文文件或目录的目录,Nginx会显示为乱码(调整网页编码能正确),而且其中的链接是直接编码的,什么意思,就是这个链接是GBK字符集的URL编码,所以肯定是访问不了的了。不过即使手动将链接改为UTF-8字符集的URL编码, …

    技术 继续阅读

  9. VC编译安装SOCI(SQLITE后端)

    SOCI 是C++中为数不多的非常方便访问数据库的工具,Poco.Data 库基本也是参考了该库实现,SOCI 在 Linux 各个版本均有开发包,VisualStudio 上还需要自己编译。 以下为 SOCI 库添加 sqlite 后端为例的编译方法。 编译前需求 sqlite 开发包 参考前文的第二或者第三种方法安装 CMake 工具 官网下载地址 https://cmake.org/d …

    技术 继续阅读

  10. VC安装SQLITE开发库

    sqlite 是一个非常小巧易于使用的 SQL 数据库,并且是嵌入式的,更容易使用部署。在实际使用中有多种引用方式。 直接加入项目中使用从 sqlite3官网 下载源码压缩包 sqlite-amalgamation-3300100.zip 将其中的 .h 和 .c 通通加入到需要引用的工程中直接编译使用。 编译成开发库编译安装就是将源码编译成动态库 .dll 或者静态库 .lib 供后续使用 …

    技术 继续阅读