自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(34)
  • 资源 (19)
  • 问答 (1)
  • 收藏
  • 关注

原创 FFMPEG录屏(22)--- Linux 下基于X11枚举所有显示屏,并获取大小和截图等信息

通过上述步骤,我们可以在 Linux X11 窗口系统下枚举系统中的显示屏,并获取显示屏的 ID、坐标和截图等信息。这些功能可以用于开发桌面管理工具、屏幕录制软件等应用。希望这篇博客对你有所帮助!

2024-11-11 13:23:51 350

原创 Harmony OS 如何实现 C++ NATIVE YUV420(其他数据格式如BGRA等)自渲染

在本文中,我们将介绍如何在HarmonyOS下自渲染视频数据。我们将实现包括创建本地窗口、设置缓冲区选项、请求缓冲区、处理视频帧数据以及刷新缓冲区等步骤。

2024-11-06 20:34:00 728

原创 FFMPEG录屏(21)--- Linux 下基于X11枚举所有可见窗口,并获取标题、图标、缩略图、进程路径等信息

在 get_window_icon函数中,对于不同架构的不同实现是为了适应32位和64位架构下数据存储和处理方式的不同。在32位架构下,可以直接复制整个内存块,而在64位架构下,需要逐个元素处理,以确保数据的正确性。

2024-11-03 16:57:06 764

原创 FFMPEG录屏(20)--- 枚举macOS下的窗口和屏幕列表,并获取名称缩略图等信息

通过上述步骤,我们可以在 macOS 下获取当前系统中可屏幕共享的窗口和屏幕信息,包括窗口和屏幕的 ID、标题、坐标、进程图标和缩略图等信息。希望这篇文章对您有所帮助。traa。

2024-10-24 00:01:48 694

原创 FFMPEG录屏(19)--- 枚举Windows下的屏幕列表,并获取名称、缩略图

在Windows系统中,枚举显示器列表并获取它们的名称和缩略图是一个常见的需求。本文将详细介绍如何实现这一功能,涉及到的主要技术包括Windows API和C++编程。

2024-10-19 22:42:42 482

原创 FFMPEG录屏(18)--- 枚举Windows下的窗口列表并获取进程图标、标题、缩略图等

我们需要一些辅助函数来获取窗口属性、窗口文本、进程路径等。我们需要一个回调函数来处理每个被枚举到的窗口。if (!if (!!if (!!} else {!if (!通过上述步骤,我们可以在Windows系统中获取可进行屏幕共享捕获的窗口列表,并获取它们的图标和缩略图。这一过程涉及到Windows API的使用、窗口属性的获取、图标和缩略图的处理等多个方面。

2024-10-18 21:28:24 543

原创 SPDLOG适配鸿蒙Next,添加控制台sink

最近工作需要,原有的 native 模块需要编译支持 OHOS(BTW, OHOS 真的很容易拼错)。因此,我为 OHOS 增加了一个 console 的 sink,与 Android 基本一致。废话不多说,直接上代码吧。直接复制即可,里面的 level 转换和 output 接口改一下就能完美运行。当然,其中的 domain 和失败返回重试还有待商榷。!defined2。

2024-10-16 14:01:38 413

原创 FFMPEG录屏(17)--- 使用 DwmRegisterThumbnail 捕获指定窗口图像数据

通过 [] API,我们可以高效地捕获指定窗口的图像数据。本文介绍了如何检查 DWM 支持、注册缩略图、更新缩略图属性以及捕获窗口图像数据的完整过程。希望这篇文章对您有所帮助。

2024-10-16 13:56:29 800

原创 记录一次运行时重定向Windows系统API的操作

众所周知Windows API GetWindowText/GetWindowTextLength有点坑,可能会耗时久以及造成当前进程卡死。最近调查客户卡死问题,唯一可疑的线程就在调用GetWindowText,于是决定先重定向这个系统API到自己实现的不卡顿的版本。思路是在客户用的自己DLL被加载时,直接修改进程的内存中的代码即可~不再赘述,上代码。验证下来果然不卡了,而且调试发现这个线程就是客户flutter application的ui线程,使用了win32这个flutter的库。

2024-09-05 14:44:24 313

原创 FFMPEG录屏(16)--- MAG(Magnification)捕获桌面,屏蔽指定窗口

我又不得不吐槽一下了,微软你做新API的时候,有考虑过开发人员的感受吗,不修BUG就不修呗,整个DXGI WGC,性能是有了,功能啥也不管,但凡你每一套API都兼顾基本要求,谁还研究各种老技术。

2023-05-17 01:01:40 1336 7

原创 FFMPEG录屏(15)---- WGC 捕获桌面(三) WGC(Windows Graphics Capture)采集

前两篇已经通过官网Demo对WGC采集方式进行了验证和扩展,现在开始正片~FFMPEG录屏(13)---- WGC 捕获桌面(一) 改造官网DemoFFMPEG录屏(14)---- WGC 捕获桌面(二) Copy数据到CPUNew Ways to do Screen CaptureWindows.UI.Composition-Win32-SamplesWebRtc WGC综上想要基于最新的捕获技术WindowsGraphicsCapture进行图像捕获有以下限制目前大多数项目和很多成熟项目中一般C+

2023-05-13 22:56:32 4191 6

原创 FFMPEG录屏(14)---- WGC 捕获桌面(二) Copy数据到CPU

为DEMO添加从GPU拷贝数据到CPU的功能

2023-03-15 23:50:06 1557 6

原创 FFMPEG录屏(13)---- WGC 捕获桌面(一) 改造官网Demo

使用新一代微软抓屏技术WGC进行桌面捕获

2023-03-02 23:43:53 1924 1

原创 GN+NINJA环境搭建(MacOS Windows)

如何配置和安装ninja与gn

2022-10-21 19:16:50 2454

原创 FFMPEG录屏(12)---- DXGI 捕获桌面

最近增加了对Duplication API捕获桌面的支持,记录一下过程和其中遇到的问题。参考资料Desktop Duplication ApiAccquireNextFrameDXGI_OUTDUPL_POINTER_SHAPE_TYPE官方Demo吐槽DX这套接口是真的烦,真的烦,为了获取到duplication接口,你得初始化一堆东西啊啊啊啊啊啊啊!初始化的你眼花缭乱啊啊啊啊啊啊啊啊!准备工作避免系统中没有d3d依赖,所有d3d接口通过动态加载方式引入程序。准备一个简单的函数用来加载动

2020-06-02 12:27:11 8299 63

原创 FFMPEG录屏(11)---- aresample重采样pcm

本文利用ffmpeg中的filter对

2020-05-27 19:11:49 929

原创 React 白板组件分享 FabricJs

fabric-whiteboard基于NodeJs、React开发的白板组件,通过这次也学习了如何新建、开发、测试、发布单独的React组件。半吊子前端,不喜勿喷嘿嘿。还有一些功能和优化要做,持续更新中ScreenShotsFeaturesFreely drag the palette.Arrow,Square,Ellipse,Line,DotLine,Select,Erase...

2020-04-09 17:26:42 1780

原创 FFMPEG录屏(10)---- 基于Electron的UI工程

EasyRecorder EasyRecorder is a cross-platform screen recorder which is written by node-js and depended on screen-recorder.GitHub:EasyRecorderScreenShotsFeaturesDifferent ways to record...

2020-03-05 10:18:50 2504 2

原创 FFMPEG录屏(9)---- AAC、H264合成MP4

在进行合成MP4之前请仔细阅读FFMpeg官方例子中的muxing.c文件,该文件通过生成测试数据合成MP4文件。并阅读如下文章对FFMpeg的时间基、时间戳,以及音视频同步原理进行理解。<Compute PTS and DTS correctly to sync audio and video ffmpeg C++><ffmpeg 2.3版本, 关于ffplay音视频同步...

2020-01-06 20:00:52 2573 4

原创 FFMPEG录屏(8)---- PCM压缩AAC

本篇将是合成mp4前的最后一次准备工作,在压缩AAC之前要叨逼叨逼一番。。。。在此之前请认真阅读如下两篇文章FFmpeg学习4:音频格式转换FFMPEG实现音频重采样PCM存储格式大体分为两种Planner和Packed我们以双声道为例,L表示左声道,R表示右声道,如下为两种格式的存储方式PlannerLLLLLLLL… RRRRRRRR…PackedLRLRLRLRLR...

2019-12-26 22:46:26 845

原创 FFMPEG录屏(7)----捕获桌面(GDI)

补充桌面捕获方法

2019-12-26 21:59:23 3411 9

原创 FFMPEG录屏(6)---- 获取音频设备列表(WASAPI)

继续使用WASAPI获取Windows系统音频设备列表获取默认扬声器或麦克风int device_audios::get_default(bool input, std::string & id, std::string & name){ com_initialize com_obj; Microsoft::WRL::ComPtr<IMMDeviceEnumer...

2019-12-26 19:22:35 2158 1

原创 FFMPEG录屏(5)---- 捕获扬声器和麦克风(基于WASAPI)

最近微软已经公布了对Windows7维护的截止时间,考虑到捕获基于dshow-capture的依赖还需要安装额外的软件,所以还是实现了基于Windows CoreAudio API的音频捕获以及GDI的桌面捕获。如下为微软官方给出的demo:CoreAudio Loopback RecordingCoreAudio Capturing a StreamGDI Capturing an Im...

2019-12-26 17:49:52 5462 4

原创 FFMPEG录屏(4)---- 声音混流

声音混流基于FFmpeg中的AVFilter,参考资料如下:最简单的基于FFmpeg的AVfilter的例子-纯净版ffmpeg filter学习--混音实现利用ffmpeg的filter混音混流实现利用FFMpeg的amix混音器实现了一个filter_audio类filter_audio.h#ifndef FILTER_AUDIO#define FILTER_...

2019-12-26 15:37:19 1216

原创 FFMPEG录屏(3)----捕获系统声音和麦克风

系统声音捕获方式同样有很多手段,老一点的WAVEAPI,WASAPI,portaudio等等,这里我们通过ffmpeg对virtual-audio-capturer进行捕获。首先安装,screen-capture,他会同时为你添加两个DSHOW设备,screen-capture-recorder和virtual-audio-capturer,其中前者是用于屏幕捕获,在第一篇中,将设备名直接修改...

2019-12-07 22:04:40 4003

原创 开源的屏幕画笔工具(基于WPF InkCanvas)

GitHub LiveDrawapp运行后初始效果app 全展开效果支持直线、箭头、矩形、圆形、文字、选择、擦错、激光笔等模式。具体实现基于.NET 中的InkCanvas控件实现。发布基于.Net Core 3.0...

2019-12-04 19:03:55 2769 10

原创 FFMPEG录屏(2)----压缩H264

在前一篇中,我们讲解了GID抓屏的整体流程,此时已经拿到了图像的原始数据BGRA,其他抓屏手段不管是Mirror Driver还是DX HOOK,得到的原始数据大都是此。在压缩之前不妨先了解一下H264的编码基础知识。雷神对于RGB YUV的讲解雷神对于H264的讲解FFMPEG视音频编解码零基础学习方法以上两篇可能不会那么详细,具体请自行搜索相关资料。在这里要提的一点是,一些...

2019-11-09 16:49:04 1367 7

原创 FFMPEG录屏(1)----录制桌面

首先录制桌面有很多种方法,原生windows api进行GDI抓屏,Mirror,Direct等,本文针对ffmpeg gdi抓屏进行介绍,也开始录屏软件开发之旅。准备ffmpeg,无所谓是动态库、静态库,请自行前往下载并引入工程。在本系列文章中,一些FFMPEG的结构、函数并不会做过多说明,请自行了解,重点放在了桌面录制的整体流程。参考资料:ffmpeg 源代码简单分析初始化...

2019-11-08 23:59:42 3884 6

原创 electron使用axios保存登录会话,设置cookie

记录一下刨坑的路程。。。。。首先找遍全网全都是说设置withCredentials:true然并卵,登录后其他API调用一直报未登录,chrome模拟的话没问题。观察response内容,发现回传有cookie,遂登陆成功后设置cookieaxiosApi.defaults.headers.Cookie = response.headers['set-cookie'...

2019-10-09 16:29:30 6121 2

原创 纪念一下windows下vs2015 websocket client爬出来的坑!!!!

特么的特么的特么的!!!!整个网络中愣是没有找到完整的websocket client例子!!!!libwebsocket首先编译出来,妈蛋例子复杂到都是什么鬼?websocketpp官网的windows编译、使用readme在哪里?????在哪里??? 下载boost:https://jaist.dl.sourceforge.net/project/boost/boost-bin...

2018-12-26 22:09:46 3502 26

原创 QT 5.10 嵌入桌面以及 真半透明实现,win7&win10

首先嵌入桌面添加依赖:LIBS += -luser32其次main.cpp中添加定义及引用#include <Windows.h>static BOOL enumUserWindowsCB(HWND hwnd, LPARAM lParam){ long wflags = GetWindowLong(hwnd, GWL_STYLE); if (!(wf...

2018-09-20 15:26:33 3011 7

原创 自绘无标题栏Frame

这个扩展类基于网络中的DForm修改,优化了一些内容,保证可用,可在留言或私信询问疑问。其中一些选项可以看示例工程的设置,当然首先要把boderstyle设置为None,其他元素Dock位置可要通过窗体padding属性来控制。关键为继承OnPaint函数,比传统直接派生winproc更加易懂但也无法随意的定制窗体形状,不过用graphicpath应该也可以。

2017-11-07 11:49:04 453

原创 c#局域网屏幕广播二三事(2)-拆包组包

拆包组包提炼于一位大拿的文章,这里提供链接:c#中关于udp实现可靠地传输(数据包的分组发送)仅仅使用了大拿所设计的包的拆分、组装与序列化部分。在此工程中,将拆包组包模块单独作为了一个library工程,包含了PacketHelper文件。其中包序列化和反序列化类如下:public class SerializationUnit { publ

2017-04-14 09:52:51 1464 4

原创 c#局域网屏幕广播二三事(1)-屏幕抓取

最近项目中需要,使用C#做了一个简版的教学软件,过程中碰到过一些坑,也终于爬出来,现在随着项目的收尾,想要通过博客的方式来梳理和记录一下相关东西。如下为对屏幕抓取封装的Capture,其中包含了鼠标的绘制以及缩放功能。using System;using System.Collections.Generic;using System.Linq;using Syst

2017-04-01 10:43:49 2962 11

EasyRecorder Setup 0.18.1.exe

为开源项目screen-recorder的界面项目编译打包好的文件,可以直接对主屏幕、麦克风、扬声器进行录制到指定的MP4文件,且可以预览捕获图像内容。代码通过博客找到。

2020-06-02

FFMPEG录屏软件1.0

基于ffmpeg开发的windows录屏软件,同时录制桌面、麦克风、系统声音并合成MP4文件,Visual Studio版本最低vs2015,启动前请修改本地的声音捕获设备名称。

2019-11-08

liv555-windows-vs2013

2018-08-22日下载的live555最新源码创建的vs2013工程,可直接编译,内附编译好的Lib文件

2018-08-22

扩展无边框Frame实现灵活自定义标题栏

自绘窗体示例代码工程,VS2013可直接编译运行。支持LOGO、标题、全部标题栏功能

2017-11-09

自绘窗体示例代码

自绘窗体示例代码工程,VS2013可直接编译运行。支持LOGO、标题、全部标题栏功能。

2017-11-07

C#屏幕广播源码V1.0

c#所实现的局域网屏幕广播,包含了抓屏、拆包、发送、收包、组包等。

2017-04-14

C#屏幕广播源码 (完整版)

C#屏幕广播源码 (完整版)

2017-04-14

C# 屏幕广播工程

c#实现的局域网屏幕抓屏、压缩、拆包、组包、发送接收和显示等。

2017-04-10

C#屏幕广播源码

C#屏幕广播源码

2017-04-01

quick-lua3.5的wp8移植工程

解压缩后目录结构已经对应3.5final版本的目录结构,请直接拷贝即可,然后请参考3.3final的wp8工程结构自行建立相应的工程。

2015-05-14

InstallWizard

基于VC++,采用了属性页的方式,编写了一个安装程序和配套的安装文件目录打包程序,实现了特殊路径的快捷方式创建,文件夹遍历,文件夹创建,文件拷贝等功能,缺陷是没有数据压缩功能。

2013-10-09

ZigBeeSniffer

用于分析Zigbee网络数据协议的分析系统框架,包括串口动态库实现,数据环形缓冲区实现,数据库或文本保存数据实现等功能。

2013-10-09

WIN32七巧板,实现目标图形判断

利用windows api写的一个七巧板游戏,并实现了一副目标图案的智能判断。内附源文件(没有执行文件),和一张目标图片seven.bmp,本例中判断是根据七巧板中心坐标 差实现。需要的可以下载借鉴,我没分了,没办法多要点分。。。。。

2012-05-05

数组和指针的艺术,就是艺术!

资源整理于一位达人的空间,版权仍然归他所有,需要的就下载吧!

2010-11-04

C程序设计_第三版_谭浩强(超清版)

以前看过的书,挺不错的,好多人都是从这里起步的,需要的就点击下载吧!

2010-11-02

radhat_linux入门指导

很适合想要学习radhat Linux的初级者,一步一步教你入门,喜欢的下载吧!

2010-11-02

c语言课程设计:学生成绩管理系统

嗯,好多人在搜,现在分享给大家吧!希望那些不会的好好看看书呵呵!

2010-11-02

linux完全命令手册.rar

很全的linux命令集合,看着很不错的,基本上所有的命令都要有了

2010-11-01

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

TA关注的人

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