- 博客(10)
- 收藏
- 关注
原创 自己实现一个智能指针
要实现一个智能指针主要实现下面几个函数1 构造函数2 拷贝构造函数3 析构函数4 赋值运算符函数5 获取引用计数函数重点:1 构造,拷贝构造,析构函数会使引用计数-1.2 赋值运算符会使之前的引用计数-1。使新赋值过来的引用计数+1#include <iostream>template<class T>class SmartPtr{public: SmartPtr(T* p = nullptr) { ptr = p;
2020-12-10 18:58:18
622
1
原创 基于Duilib的白板项目
基于duilib的白板工具,可适用用教育行业或者是视频会议的演示白板目标:1 设计之初就是想实现类似于办公室玻璃墙的一样的白板,可书写,透明,还可以添加自己需要的工具2 除了duilib不依赖其他的界面库,可以插入到任何工程中。优势:1 这块“玻璃”可以覆盖在任何窗口的上面,而且不用关心“玻璃”下面是什么东西,这样就可以将任何的内容放在玻璃板下面,包括浏览器,图片,视频等内容。2 玻璃提供穿透的功能,可以将鼠标的事件完全回调给下层窗口,不影响下层窗口的使用。已实现的功能:1 常规的图形(矩形
2020-12-04 18:15:58
346
原创 [WebRTC导读]设计模式之单例模式
前言:本系列都用主要讲解设计模式在WebRTC中的应用,读懂了这些模式有助于我们更轻松阅读WebRTC源码,也有助于我们更好理解作者的思路单例模式:单例模式主要是保证了一个类在全局只有一个实例,是最常见的设计模式之一。也是最容易被乱用的设计模式,因为单例的本质违背了高聚合低耦合的开发原则。关于单例好坏的讨论不做太多讨论。分类:1 饿汉模式:使用静态变量实现,因为在类声明的时候构造因此是线程安全的2 懒汉模式:在第一次使用的时候构造,因此不是线程安全的,webrtc中使用了懒汉模式。为了保证线程的
2020-07-07 22:23:12
539
原创 [WebRTC导读]设计模式之适配器模式
前言:本系列都用主要讲解设计模式在WebRTC中的应用,读懂了这些模式有助于我们更轻松阅读WebRTC源码,也有助于我们更好理解作者的思路适配器模式:将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。主要解决:主要解决在软件系统中,常常要将一些"现存的对象"放到新的环境中,而新环境要求的接口是现对象不能满足的。tansport_adapter.ccclass TransportAdapter : public webrtc::Transp
2020-07-01 22:30:18
433
原创 使用icecast搭建在线电台并使用ffmpeg推流
目标:使用icecast作为音频流服务器,搭建一个类似喜玛拉雅FM这种在线电台,并使用ffmpeg将本地mp3文件推到流服务器上。环境:Windows 10-64bitsicecast2.4.4ffmpeg version N-80129-ga1953d4步骤:下载安装icecast服务器访问 icecast官网下载对应平台的icecast安装包 http://www.iceca...
2020-01-03 15:27:45
3043
原创 大话并行与并发
背景:我需要把并行,并发讲给计算机初学者,甚至是HR这种非计算机专业的人听,如何让他们生动了解并行,并发的原理及其实现成为一个难题,在一次排队买饭的过程中忽然来了灵感。这里有几个比喻:把排队买饭的人类比成CPU待处理的指令把厨房认为是CPU,那么厨房做菜的厨师类比成处理指令的CPU核心并行:厨房里面只有一个厨师两口锅,如果这个厨师同时用两口锅炒菜,一会儿翻一下第一口锅,一会儿翻一下...
2020-01-02 19:46:26
209
原创 [奇技淫巧]CEF3使用H5实现标题栏拖动窗口
为什么要用H5实现标题栏交互上拓展了用户的操作区域减少了H5和Native的交互,使H5功能更独立,耦合性更低举例 注: 蓝色区域为H5,红色区域为Native实现原理通过H5移动Native窗口的本质是子窗口移动父窗口要点将H5的鼠标消息传递给Native代码实现H5页面通过回调获取到鼠标移动的消息,通过Windows下我们注册的js对象(windows.jvs...
2019-11-19 18:00:59
1409
原创 [WebRTC导读] VideoCaptureModule 本地摄像头捕获类
相关的类 VideoCaptureModule::DeviceInfo, VideoCaptureDataCallbackVideoCaptureModule类用于操作本地摄像头,包含了枚举,打开,关闭,设置分辨率等等的操作,通过这个类,结合VideoRender 视频渲染类 我们便很容易创建一个带有预览框的摄像头捕获工具,再结合 VideoSendStream 视频流发送类 就可以创建一个整...
2019-09-08 13:42:12
1605
原创 [WebRTC导读] VideoRender 视频渲染类
相关的类 VideoRender,VideoRenderCallback,IncomingVideoStream,VideoRenderDirect3D9,D3D9ChannelVideoRender 本类为rtc提供的用来在某个特定窗口渲染yuv数据的类,本类可以在ios,android,linux,windows上渲染图像,同时提供了在窗口上绘制文本,设置各种背景图的功能。Windows ...
2019-09-07 17:43:24
1046
原创 [WebRTC导读] VideoSendStream 视频流发送类
相关的类 VideoSendStream, VideoSendStream::Config,VideoEncoderConfig,I420FrameCallback,EncodedFrameObserver, VideoEncoderConfig, newapi::TransportVideoSendStream 视频流发送类,用于将yuv数据转换成h264等编码格式,并且将编码转换成rtp格式...
2019-09-07 17:17:20
1485
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人