自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (3)
  • 收藏
  • 关注

原创 windows下cef源码下载和编译

在windows下编译cef源码

2023-11-27 17:28:14 672

转载 windows平台cef源码编译

cef源码编译

2023-08-16 16:10:41 439

原创 FFMPEG视频编码的基础知识

帧内压缩:将视频的每一帧画面都压缩成JPEG这类有损图像,原理就是尽可能保存视频亮度信息,压缩颜色信息尤其是复杂的颜色信息,通俗来讲就是记录关键帧,剩余的依靠运动轨迹来预测生成视频。又节省了一半的空间,提供最高的压缩比,它既需要之前的图 像帧(I帧或P帧),也需要后来的图像帧(P帧),采用运动预测的方式进行帧间双向预测编码。通过上图可知一秒钟的视频应该是342MB,但实际我们看的视频并没有这么大,那是因为我们看的视频都是进行压缩之后的,实际大小只有。码率直接决定了视频的最终大小及视频的质量。

2023-07-21 10:16:04 618

原创 使用WinDbg分析Windows dump文件方法

analyze -v"链接,或者在下面的命令窗口中输入“!analyze -v”命令,工具就对dump文件进行分析,然后输出导致系统崩溃的起因等相关信息。在安装Windows SDK的过程中,可以选择只安装WinDbg(Debugging Tools for Windows)这个组件。工具来分析windows系统产生的dump文件,此工具属于Windows SDK的一个组件,在微软官方网站可以下载(1)打开WinDbg工具,通过菜单“File”->“Open Crash Dump”打开dmp文件。

2023-06-16 23:14:03 4316

原创 一文掌握 YUV 图像的基本处理

最常用YUV知识

2023-02-28 19:05:46 786

原创 FFmpeg configure编译参数全部总结和整理

ffmpeg

2023-02-07 18:00:28 905

原创 AOSP Android 13——编译release版签名系统

aosp编译

2023-01-04 16:21:14 1461

原创 Docker常用容器命令

docker

2022-12-15 17:40:36 619

原创 RTTR测试,反射测试说明

crrt

2022-11-03 10:23:32 260

原创 clion IDE工具的使用

没啥

2022-09-27 12:36:07 625

原创 git删除commit的历史大文件记录

git使用技巧

2022-08-02 11:00:44 814 1

原创 Windows内存详解:VMMAP内存查看工具

内存分析使用

2022-07-20 14:28:36 681

原创 WebAssembly(wasm) debug调试c++项目

一、安装调试工具Chrome Devtools使用Chrome89+ 版本,点击https://chrome.google.com/webstore/detail/cc%20%20-devtools-support-dwa/pdcpmagijalfljmkmjngeonclgbbannbx下载 C/C++ DevTools Support (DWARF)工具二、启用调试配置F12开发者模式下点击设置。在实验性一栏找到WebAssemblyDebugging 项目,勾...

2022-01-22 21:52:52 2442

原创 图像原始格式 YUV444 YUV422 YUV420 详细解析

前段时间搞x264编码测试,传参的时候需要告诉编码器我的原始数据格式是什么,其中在x264.h头文件中定义了如下一堆类型。但是这个定义只是对于这个应用而言,对于其他的应用或者场景中,相同的数据格式却有着不同的名字,于是为了弄懂他们的差别关系,检索了一大堆信息,整理了一个图文出来如下。首先要介绍的是YUV444,这种格式占用空间最大,每个像素点有一个Y分量+一个U分量+一个V分量所以和rgb一样每个像素点占用3个字节!但是根据UV存储顺序不一样,又有两种不同的格式。...

2021-10-04 11:00:14 15832 1

原创 chromium中的base库 ipc进程间通信 ChannelProxy分析

1. chromium进程通信的基本模式进程间通信,叫做IPC(Inter-Process Communication),在Chrome不多的文档中,有一篇就是介绍这个的,在这里。Chrome最主要有三类进程,一类是Browser主进程,我们一直尊称它老人家为老大;还有一类是各个Render进程,前面也提过了;另外还有一类一直没说过,是Plugin进程,每一个插件,在Chrome中都是以进程的形式呈现,等到后面说插件的时候再提罢了。Render进程和Plugin进程都与老大保持进程间的通信,Rende.

2020-08-04 23:48:52 1761

原创 【网络模拟,丢包】Network Emulator for Windows Toolkit和Network Link Conditioner

软件界面:正常的网络时ping一下其他PC:正常的网络环境下没有丢包,延迟时间<1ms接下来使用NEWT,创建一个过滤器,可以在菜单中点击configuration->new filter,也可以点击快捷按钮进行创建:弹出的界面中,点击add按钮后,点击close按钮Filter List Property框的下方列表中为排除的网段和协议的选项,由于Network Type中勾选的是All Network,点击add的按钮默认添加的是所有网段和协议,故此处不点击勾选按钮接着创

2020-07-21 11:06:15 1762 2

原创 chromium的base源码阅读一 callback的使用

简介本文描述下chromium使用base库中的callback,相关代码位于base库的根目录下的callback及cal...

2020-07-14 18:32:00 853

原创 使用VS2019和WDK10编译OpenVPM 2.5

编译OpenVPИ 2.5写在前面非常重要:需要64位操作系统才能完成编译!环境搭建前期准备安装VS1029安装WDK 10安...

2020-06-17 15:06:37 704 4

原创 使用 VS2019和WDK10 编译Tap-Windows6的教程

编译Tap-Windows6写在前面非常重要:需要64位操作系统才能完成编译!环境搭建前期准备安装VS1029安装WDK 10...

2020-06-17 15:01:18 2929 3

原创 快速上手python socket编程

之前在编写四层发现的代码时都是使用TCP/UDP协议, 但是看了很多的代码都是用socket来完成的,所以就 来学习一下socket。什么是socket网络中的两台主机之间进行通信,本质上是主机中所 运行的进程之间的通信,两个进程如果需要进行通信 ,最基本的前提是每一个进程要有一个唯一的标识。在本地进程通信中可以使用PID来唯一标识一个程, 但PID在 本地是唯一,可以用 "IP地+ 协议+端口号" 来组成唯一标识的网络进程,这就是socket。无论使用何种网络协议,最本质上都是在进.

2020-06-02 14:32:15 327 1

原创 Boost::signals2 类QT的信号槽实现机制

signals2 基于Boost里的另一个库signals,实现了线程安全的观察者模式。它是一种函数回调机制,当一个信号关联了多个槽时,信号发出,这些槽将会被调用。其实Qt也提供了它自己的信号和槽机制,那个是非常的灵活和好用的,但是它依赖于Qt的框架,所以退而求其次,选择了Boost提供了signals2;signals2库位于命名空间boost::signals2中,为了使用它,需要包含头文件<boost/signals2.hpp>;文章目录 信号(Signal)..

2020-05-22 10:33:15 1342

原创 Windows过滤驱动 WFP代码基本流程的剖析 bypass前期准备

今天实际看一下,WFP的Callout驱动的代码。先从DriverEntry开始:1,在DriverEntry需要创建驱动对象和设备对象,1.1 由于不是PNP设备,需要设置创建驱动对象的标志为config.DriverInitFlags |= WdfDriverInitNonPnpDriver.1.2 调用WdfDriverCreate创建驱动对象。1.3 调用WdfControlDeviceInitAllocate通过驱动对象创建 WDFDEVICE_IN...

2020-05-12 13:46:00 2073

原创 StrongSwan安装部署、配置使用方法总结

StrongSwan官网:https://www.strongswan.org/下载地址:https://www.strongswan.org/download.html一、StrongSwan安装1.编译安装1.我习惯创建/opt/package目录,用于存放下载的程序包文件[root@ecs-e84a package]# mkdir -p /opt/package...

2020-05-07 18:38:01 18656

原创 跨平台qt程序的CMakeLists.txt配置转为平台的qt的.pro项目工程文件

一些比较正规的跨平台qt项目没有.pro项目文件只有CMakeLists.txt文件,如果要编译调试的话得转为qt项目cd到源码目录的CMakeLists.txt文件夹下使用命令:qmake -project会生成一个*.pro文件,可以直接使用QT打开,一般情况下比使用QT直接打开cmakelist载入的信息全面。有些工程载入pro文件反而丧失了信息,载入camkelist却能...

2020-03-24 13:40:18 4098

转载 FMPEG4.1 - 音频解码

FFMPEG4.1 - 音频解码原文件为采样率44100,单声道,fltp音频格式的mp4文件解码后,将fltp转变为s16标准的pcm格式然后使用ffplay播放:ffplay -ar 44100 -ac 1 -f s16le -i 2.pcm1、下面是使用swr_convert进行转换s16的代码// 解码为PCM格式文件// 检查解码内容,使用如下命令:#in...

2019-12-04 10:59:15 373

转载 FFMPEG4.1 - 视频解码与解码(上)

一、视频解码1、使用sws_scale转换格式为yuv420p,保存在文件中原mp4的宽高为640x640,改变了宽和高,为原来的1/2测试播放命令:ffplay -video_size 320x320 -pix_fmt yuv420p -i 2.yuv#include <memory>extern "C" {#include "libavcodec/avc...

2019-12-04 10:55:47 382

原创 音视频文件码率与文件大小计算公式

编码率/比特率直接与文件体积有关。且编码率与编码格式配合是否合适,直接关系到视频文件是否清晰。在视频编码领域,比特率常翻译为编码率,单位是Kbps,ps是每秒的意思,例如800Kbps其中,1K=1024 1M=1024Kb 为 比特(bit)这个就是电脑文件大小的计量单位,1KB=8Kb,区分大小写,B代表字节(Byte)s 为 秒(second) p 为 每(per)以800kb...

2019-12-03 12:11:18 9731

转载 用FFmpeg获取视频流+音频流的信息(编码格式、分辨率、帧率、播放时长...)

我们经常需要知道一个媒体文件所包含的媒体流的信息,比如文件格式、播放时长、码率、视音频编码格式,视频分辨率,帧率,音频属性等信息。如何使用FFmpeg API获取这些信息呢?下面我会给出一个完善的类,这个类封装了FFmpeg读取文件信息的相关的API,读者只需要调类的方法就可以获得相关的信息。这个类能够读取媒体文件的哪些信息呢?假如我们给出一个媒体文件(MP4,AVI,MKV。。。),里面至少...

2019-11-28 18:28:48 4853

转载 android gradle自动构建大总结

一、自动构建背景   日常出版本和线上出版本时,需要手动修改一些配置,包括key配置、线上/测试环境配置、版本号增加等,过程繁琐。所以对构建脚本进行改进,达到自动构建目的。   PS:build.gradle 完整脚本在文章末尾 二、自动打包说明1. 打测试包   命令:gradle  assemble...

2019-10-29 15:15:46 383

转载 自定义GLSurfaceView+Opengl es(使用了VBO)实现摄像头预览

在https://blog.csdn.net/llxyy299/article/details/82659683这篇文章中记录了自己创建EGL环境,自己实现一个GLSurfaceView,但是还没有记录怎么用,这篇文章来记录怎么使用自定义的GLSurfaceView。1、首先创建一个CameraHelper...

2018-12-17 15:49:11 421

转载 个人记录 Ubuntu编译ijkplayer

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/NianandShao/article/details/83342424 编译环境Vbox虚拟机Ubuntu 18下载并配置NDK SDK JDKSDK下载NDK...

2018-12-04 10:04:39 126

转载 git删除未跟踪文件

# 删除 untracked filesgit clean -f # 连 untracked 的目录也一起删掉git clean -fd # 连 gitignore 的untrack 文件/目录也一起删掉 (慎用,一般这个是用来删掉编译出来的 .o之类的文件用的)git clean -xfd # 在用上述 git clean 前,强烈建议加上 -n 参数来先看看...

2018-11-22 19:24:48 1252

原创 在windows平台上使用mingw编译PYQT5

1、准备工作下载 pyqt5:https://sourceforge.net/projects/pyqt/files/PyQt5/  下载zip文件下载 sip :点击打开链接下载 python:点击打开链接下载 mingw:点击打开链接下载 qt5:http://download.qt.io/archive/qt/  下载mingw版本2、设置环境变量解压 pyqt5 到指定目录,安装qt5到指...

2017-05-04 12:06:16 1450

Connectify2018破解版

这个破解版经过测试,可用,不会被公司杀毒软件杀掉。 1.安装 Connectify2018Installer.exe 2.不要重启系统. 3.安装完软件后管理员权限运行BLOCKHosts.bat 4.把crack文件夹中的文件替换到安装目录. 5.重启系统 6.完成

2018-10-10

jsoncpp类的封装,方便使用

这是我参考Kayee2012的类进行简单修改了。JsonBase.cpp 的最下面有使用例子。方式使用!

2015-12-19

gcc-linaro-arm-linux-gnueabihf 4.9

我这里绝对可以用。可以参考网页帖子:http://blog.csdn.net/sno_guo/article/details/7571264 库的安装: apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib mv -f /usr/bin/gcc /usr/bin/bak_gcc mv -f /usr/bin/g++ /usr/bin/bak_g++ ln -s /usr/bin/gcc-4.4 /usr/bin/gcc ln -s /usr/bin/g++-4.4 /usr/bin/g++ apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx-lts-trusty:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 apt-get install uboot-mkimage(编译内核所需)

2015-12-01

空空如也

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

TA关注的人

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