C++ – Web服务器框架Crow开发环境配置教程
1 搭建Crow 开发环境 Crow是一个基于Asio或者Boost.Asio的创建Http服务或者Websocket服务的C++框架。 1.1 官网教程 Crow的官方文档中比较简单的介绍了如何在Linux、MacOS、Windows系统上编译、安装Crow库。 从官方文档上看,编译和使用Crow…
- C++
- 2023-06-27
C++ – Asio和Boost.Asio的区别
在编译C++一些网络库时,比如Websocket++、Crow等C++ web框架都是基于Asio进行开发的,并且都支持两种Asio。如果定义了ASIO_STANDALONE则会使用Asio,如果未定义则会使用Boost.Asio,那么这两者有什么区别呢? Asio官网:http://think-a…
- C++
- 2023-06-26
C++ – 想用C++写服务器?C/C++ web服务第三方库、框架整理
用C/C++写web服务器? 如果你想用C/C++写一个轻量或者高性能的web服务器,你可以参考下文中列出的C/C++ web库。 从https://www.reddit.com/r/cpp/comments/cjj9t5/what_c_web_server_library_one_should_u…
- C++
- 2023-06-26
C++ – 使用Spout2将视频流发送到OBS
在之前的博文中介绍了如何配置Spout2的开发环境,在本文中我将简单介绍一下如何使用Spout2发送视频流到OBS中进行推流。 1 使用Spout2 SDK将视频流发送到OBS 其实Spout2已经将API封装的非常简单易用了,通过参考官方的示例,我自己写了以下的代码将视频流推流到本机OBS中,示例…
- C++
- 2023-06-25
Windows编译Spout2以及配置Spout2开发环境
Spout2是一个用于Windows系统的视频帧共享系统,允许应用程序以类似Mac的Syphon的方式共享OpenGL纹理,Spout2支持Direct9、Direct11、Direct12和OpenGL的纹理数据共享。 我们可以基于Spout2进行开发,将我们想要的一些视频帧结合OBS的Spout…
- C++
- 2023-06-20
OpenCV | OpenGL – OpenCV的cv::mat转换为OpenGL的GL_TEXTURE_2D纹理数据
1 OpenCV的cv::Mat转换为OpenGL的GL_TEXTURE_2D纹理数据 在有些场景下我们需要将OpenCV处理之后的cv::Mat转为OpenGL的GL_TEXTURE_2D类型的纹理数据,比如说使用OpenCV读取图片文件作为OpenGL的纹理使用。 在https://gist.g…
- C++
- 2023-06-19
C++ – 根据给定分隔符分割字符串
1 C++根据给定分隔符分割字符串 在对字符串处理的一些简单场景中,需要根据分隔符将字符串进行分割,比如将“1920x1080”根据“x”分割为1920和1080,将"Hello World"根据空格分割为Hello和World。 std标准库没有现成的方法可以调用,不过我们可以自己造一个简单的轮子…
- C++
- 2023-06-13
Duilib – 使用Default设置控件默认的全局样式以及使用Style自定义样式
在Duilib中我们可以使用Default属性设置某一类控件的全局样式,而某一些Duilib扩展库也支持使用Style自定样式,并且适配不同的控件。 1 使用Default设置某类控件的全局样式 在官方duilib中可以通过使用Default来设置某类控件的默认的全局样式,比如说设置按钮的全局样式,…
- Duilib
- 2023-06-13
Python爬虫 – 下载文件出错重新下载,直到文件下载完成
在写Python爬虫时,经常会有下载文件的需求,比如我们可以通过以下代码下载图片或者视频 import requests def request_chunk_download_image(image_url, image_path): res = requests.get(image_url) wi…
- Python
- 2023-06-10
Python – 根据url下载图片的几种方式整理
在写爬虫的时候经常需要根据图片的url直链下载图片到本地,本文整理了根据图片url下载图片的一些方式,大家可以参考参考。 1 python根据url下载图片 1.1 使用urllib下载图片 我们可以使用urllib的urlretrieve函数保存图片,示例代码如下 from urllib.requ…
- Python
- 2023-06-09
C++ – 在Visual Studio中使用OpenMP加速for循环
OpenMP(Open Multi-Processing)是一套跨平台的,共享内存方式的多线程并发编程API,OpenMP提供了对并行算法的高层的抽象描述,程序员只需要在代码中加入专用的pragma,在编译时就可以自动将代码进行并行化,并在必要的地方加入同步互斥以及通信。在Visual Stdio已…
- C++
- 2023-06-08
OpenCV | C++ – 将一张图片叠加到另一张图片的指定位置上显示
比如现在有一张小图,是一张logo图片,然后有张大图,是一张底图,现在需要将这张logo叠加到底图的指定位置上进行显示,这个时候我们就可以使用OpenCV的ROI功能。 具体的示例代码如下 #include <iostream> #include <opencv2/opencv.h…
- OpenCV
- 2023-06-07