自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(109)
  • 资源 (13)
  • 收藏
  • 关注

原创 goland多版本管理

https://studygolang.com/articles/20513

2021-04-09 23:16:10 613

原创 对命令模式的理解

命令模式更合适的理解是安排就职模式:图中通过setPersion将人员(命令,也是具体的干活儿对象)安排到岗位,假设我们有很多人(命令队列)在白板这里,我们把具体绘制图形的类实例封装起来(比如绘制正方形、椭圆等),通过类似setPerson的接口设置进去,然后调用excute执行具体的绘制另外,在这里可以用同样的方式设置回调...

2021-03-04 23:50:39 202 1

原创 推荐一款强大的 Android OpenGL ES 调试工具

https://developer.aliyun.com/article/781955?spm=a2c6h.12873639.0.0.38db5af3rFcDj1&groupCode=cloud

2021-02-19 16:04:59 247

原创 openssl1.1下编译libcurl解决

vtls/openssl.c:276:5: error: implicit declaration of function ‘RAND_egd’ [-Werror=implicit-function-declaration] int ret = RAND_egd(data->set.str[STRING_SSL_EGDSOCKET]?解决办法:1、确保下载并编译安装了openssl1.1;2、openssl一般安装在 /usr/local/lib64目录下,CPPFLA..

2021-02-07 15:30:12 1594

原创 C++11 条件变量及时间点的使用

#ifndef DOMAIN_H#define DOMAIN_H#include <iostream>#include <thread>#include <mutex>#include <condition_variable>#include <atomic>class DoMain{public: DoMain(); ~DoMain(); void threadTimerHandle();.

2021-01-06 09:16:12 263

转载 socket编程及Unix域内套接字实现进程间通信

socket编程 hql946233586的博客 04-16 1370 socket编程——一个简单的例子转载 2016年10月16日 00:29:26标签:socket网络编程13475转载自:网络中进程之间如何通信什么是Socketsocket一词的起源socke...

2020-12-09 21:47:49 122

原创 很多个回调函数时可采用的办法

typedef struct _CallBackFuns_{ void* f; void* user_data; }CallBackFuns; void set_callback(const std::string& tag, void* callback, void* data) { CallBackFuns fun; fun.f = callback; fun.user_data...

2020-10-24 15:50:46 330

原创 mysql8.x 默认用户名密码

sudo vim /etc/mysql/debian.cnf

2020-10-15 09:11:09 1339

原创 Djinni

https://blog.csdn.net/SkinWhite/article/details/84950700

2020-10-09 09:10:10 121

原创 C++11的explicit关键字

C++11代码中最好带上explicit关键字,explicit关键字的作用是:C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式).关键字:构造函数只有一个参数(当有多个参数时,自动会被指明,就不存在这个情况) 构造函数是显式的而不是隐式的为了防止以下情况的出现:class A{ public: ..

2020-09-19 23:50:10 227

原创 C++11的单例模式

C++11中的单例模式分为懒汉模式和饿汉模式。区别:懒汉模式:延迟创建,在主动获取对象实例的时候才去创建对象。缺点:多线程时需要安全处理。饿汉模式:程序初始化即创建饿汉模式安全写法: static Singleton* GetInstance() { if(singleton_ == nullptr) { std::lock_guard<std::mutex> lock(Singleton::m_lock); .

2020-09-19 23:31:14 600

原创 C++11 时间计算

#pragma once #include <chrono> class ElapsedTimer{public: ElapsedTimer() : m_begin(std::chrono::high_resolution_clock::now()) {} void reset() { m_begin = std::chrono::high_resolution_clock::now(); } //ns int64_t elapsed_ns() const { ret.

2020-09-18 08:33:19 350

原创 VlC转推播放的视频到虚拟摄像头

工具和方法参考: http://vlc2vcam.com/MagicCamera和vlc+两个插件原理:给MagicCamera和vlc分别添加一个插件将vlc的视频流输出到插件,MagicCamera捕捉vlc输出的视频流,并虚拟一个摄像头注意:免费版对vlc版本有要求, 最高2.0, 2.0版本是不支持rtmp的原理待补充...

2020-09-13 16:31:57 1041

原创 记一次bug

bug是这样的:两个线程访问同一个对象,类似于生产者、消费者模型消费者给出的是一个智能指针,生产者给出的是裸指针,生产出来的数据通过本地一个智能指针的cache保存在本地,以供消费者使用。开始每次生产者生产出来的数据直接构造智能指针,缓存在本地;消费者获取的时候,直接赋值给消费者,这样做的目的是:尽量减少数据的拷贝,特别是视频数据这样的,在640X480分辨率下,一切都正常。然而,当我把分辨率调节到1920X1080时,会出现崩溃,也可视频根本渲染不出来,是个白屏。后来灵机一动,如果把数据完完全

2020-07-25 23:46:30 132

原创 C++11 mutable

C++11中的mutable是用来修改const函数中的不可修改类成员这一缺陷的:class Log{public: // void print(const std::string& str) const { printf("%s", str_cstr()); //统计输出次数 printNums++; }private: //这里必须声明为mutable mutable int p

2020-06-22 07:48:08 414

原创 C++11 宽窄字符转换

//wstring 转 string typedef std::wstring_convert<std::codecvt<wchar_t, char, std::mbstate_t>> CONVER; std::wstring str = L"中国人"; std::wstring_convert<std::codecvt<wchar_t, char, std::mbstate_t>> converter(new std::cod...

2020-06-21 22:05:51 526

原创 C++对象模型

https://www.cnblogs.com/tgycoder/p/5426628.html

2020-06-11 21:54:08 99

原创 工厂方法模式与抽象工厂模式记忆

工厂方法:就是一条生产线,进来什么,出去都是一样的(接口都是一样的)(一个虚基类,一个产品)抽象工厂:一个代工厂,谁来就贴谁的牌(至少两个产品-两个虚产品基类,一个虚工厂基类)...

2020-06-10 06:48:22 163

转载 live555源代码解读

live555代码解读之一:RTSP 连接的建立过程RTSPServer 类用于构建一个RTSP 服务器,该类同时在其内部定义了一个RTSPClientSession类,用于处理单独的客户会话。首先创建RTSP 服务器( 具体实现类是DynamicRTSPServer) , 在创建过程中, 先建立Socket(ourSocket) 在TCP 的554 端口进行监听, 然后把连接处理函数句柄(RTSPServer::incomingConnectionHandler)和socket 句柄传给任务调度

2020-06-04 08:00:12 298

原创 Webrtc音频引擎(一步一步读代码)

WebRTC音频引擎的实现代码主要分布在如下几个源码目录中:webrtc/audiowebrtc/common_audiowebrtc/media/enginewebrtc/voice_engine//音频编解码webrtc/module/audio_coding//接收端混音webrtc/module/audio_conference_mixer//音频输入输出设备webrtc/module/audioDevide//音频预处理(消回音、自动增益、降噪等)webrtc/modu

2020-05-20 07:54:34 514

原创 设计模式究极思考

总纲:在架构中实现抽象,在实现中实现扩展

2020-05-15 12:47:05 123

原创 android Activity finish方法

android Activity finish方法放在不同的地方会有不同的效果:1、放在MainActivity测oncreate方法内:public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState)...

2020-04-29 07:38:59 3569

原创 第一行代码学习Android(一)

1、Androidmanifest.xml 位于 app下的manifest下;2、values下的strings.xml写法如下:<resources> <string name="app_name">HelloWorld</string> <string name="developerName">MirWang&lt...

2020-04-27 00:24:28 248

原创 C++11如何避免死锁

1、原子操作2、按照特定的顺序加锁/解锁3、使用C++11的新特性:struct BankAccount { BankAccount(int b) : Balance(b) {} int Balance; mutex Mutex;};void transferMoney(BankAccount&a, BankAccount& b, int money){...

2020-04-24 23:32:05 901

原创 Ubuntu16.04编译boost

依赖安装apt-get install mpi-default-dev libicu-dev python-dev python3-dev libbz2-dev zlib1g-dev2、./bootstrap.sh3、./b2  编译boostsudo ./b2 install //将生成的库安装到/usr/local/lib目录下面,默认的头文件在/usr/local/i...

2020-04-23 23:31:14 313

原创 腾讯微服务框架Tars介绍

https://www.jianshu.com/p/fedab16cd615github地址https://github.com/Tencent/Tars/。

2020-04-23 09:18:40 686

原创 std::vector提升效率的办法

1、使用shrink_to_fit使其自动调整到合适大小;2、尽量避免从头部插入元素,而是从尾部插入

2020-04-23 07:56:33 637

原创 利用可变参数写日志

利用可变参数看起来比较难,实际上很简单:void formatArgs(char*s, char* format, ...){ va_list ap; va_start(ap, format); //获取到可变参数 vsnprintf (s, size, fmt, ap); //将可变参数格式化到s中 va_end(ap); ...

2020-04-22 23:01:00 213

原创 C++11 thread lock 死锁解决方法

#include <iostream>#include <mutex>#include <thread>using namespace std;class Account{public: //when create is always true Account(const std::string& acountNam...

2020-04-19 10:24:52 725

原创 ffmpeg err: xcb

sudo apt-get install libxcb*

2020-04-16 23:57:15 260

原创 容易出错的windows程序编译

1、windows 代码的编码可能影响程序的编译;2、Q_OBJECT只是一个 宏凡是带有信号槽的,都要内置这个:class CRLineEdit : public QLineEdit{ Q_OBJECTpublic: explicit CRLineEdit(QWidget *parent = 0);protected: virtual void mouseP...

2020-04-16 09:56:25 132

原创 消回音原理与项目经验

https://shichaog1.gitbooks.io/hand-book-of-speech-enhancement-and-recognition/content/

2020-04-15 13:27:35 150

原创 怎么编译 ffmpeg 让其支持 hevc(h265)

http://www.qiyicc.com/bbs001/forum.php?mod=viewthread&tid=989

2020-04-15 08:52:28 2023

原创 ALSA播放MP3

1、MP3文件转码为WAV格式(解码为pcm);2、通过ALSA接口读取pcm播放;ALSA接口使用步骤:1、打开声卡;2、分配声卡params结构体空间;3、初始化和设置params结构体;4、将该params设置到声卡;5、设置声卡的声道、频率;6、读取pcm文件到设备;//alsa.c 编写者未知,纯属引用#include<stdio....

2020-04-10 23:50:59 1124 1

原创 std::promise的使用

std::promise用于多线程间交换数据:void test1(std::promise<int> &p){ //while (1) { std::cout<< "test1"; std::chrono::system_clock t; std::cout << std::thi...

2020-04-10 23:21:09 159

原创 C++11 thread

C++ thread线程(二)thread 第二种构造方式:类函数作为参数:class Feab{public: explicit Feab(int var):v(var) { } void FeabFunction(int v) { cout << v << endl; }priva...

2020-04-10 21:28:49 123

原创 linux对C++11多线程的支持

#include <iostream>#include <thread>#include <future>using namespace std;double calc(double v){ cout << "calc: " << std::endl; cout << this_thread:...

2020-04-10 21:15:25 175

原创 对称型NAT打洞的理解笔记

4种NAT打洞:完全锥体、IP受限型、(IP和)端口受限型、对称型。其三种都很好理解,唯独对称型比较不好理解,这里做些自己的理解。对称型:是指UDP打洞时,一个请求对应一个映射关系。clientA (x,y) -----------> 网关(A,b)------------>S(m, n)clinetB(p,q) -----------> 网关(C,d)------...

2020-03-24 16:42:47 5039

转载 do. while(0)的妙用

文章参考https://www.jianshu.com/p/99efda8dfec9

2019-08-25 22:01:12 166

转载 《Linux网络编程》学习导图

https://blog.csdn.net/yexiangCSDN/article/details/85249672

2019-08-16 09:26:52 118

CmdAndPowershellAll.reg

windows下右键即可打开powershell,有两种权限:普通用户权限和管理员权限,方便插件开发和前端开发

2020-09-09

calendar.zip

基于Qt C++的日历控件,可自主美化

2020-05-29

librtsp-master.zip

librtsp-master源码,深入了解rtsp网络传输协议 librtsp-master.zip C代码

2020-04-01

WTL10_9163.zip

解决无法打开包括文件: “atlapp.h”: No such file or directory

2019-10-17

UpdateTool.rar

ssh 工具

2019-06-13

vaapi_ffmpeg_h264.zip

vaapi_ffmpeg_h264.zip

2019-06-13

WinexecTest.rar

windows下静默安装程序示例,不弹黑框,分选项升级和静默升级

2019-06-12

linux-screen-recorder-ffmpcpp.rar

linux 下ffmpeg 录屏源码,Linux 下基于x11grab的录屏程序

2019-06-12

VLC windows Macos

VLC应用,平常下载比较慢,现在下载下来方便使用 VLC windows Macos

2019-05-08

区块链入门引导

区块链入门引导书籍,关于区块链的思想以及相关的共识算法等

2018-09-30

基于Qt和mupdf的PDF阅读器

基于Qt和mupdf的PDF阅读器,包括代码的实现,但是单独的mupdf库需要单独去编译,建议按照官网的,去掉不相关的选项

2018-09-29

37639449MFI_iOS-7-Developer.tar.gz

37639449MFI_iOS-7-Developer, mfi,iap2;Carlife、carplay

2017-12-25

空空如也

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

TA关注的人

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