自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 git error: object file .git/objects/63/128a0727f3916800e994cbbf054dfcdd23047d is empty

git error: object file .git/objects/63/128a0727f3916800e994cbbf054dfcdd23047d is empty

2022-02-12 18:10:46 352

原创 设计模式-C++

设计模式

2022-01-30 20:56:00 1293

原创 PCM音频数据调整音量

声音的本质是一种能量波,由振动而产生的能量波,通过传输介质传输出去。声音有三个属性: 音调:声音频率的高低叫做音调(Pitch),是声音的三个主要的主观属性,即音量(响度)、音调、音色(也称音品) 之一。表示人的听觉分辨一个声音的调子高低的程度。音调主要由声音的频率决定,同时也与声音强度有关 音量:人主观上感觉声音的大小(俗称音量),由“振幅”(amplitude)和人离声源的距离决定,振幅越大响度越大,人和声源的距离越小,响度越大。(单位:分贝dB) 音色:又称声音的品质,波形决

2022-01-30 20:40:26 752

原创 tar 分包压缩与合并

要将目录logs打包压缩并分割成多个1M的文件,可以用下面的命令:tar cjf - logs/ |split -b 1m - logs.tar.bz2.完成后会产生下列文件:logs.tar.bz2.aa, logs.tar.bz2.ab, logs.tar.bz2.ac要解压的时候只要执行下面的命令就可以了:cat logs.tar.bz2.a* | tar xj...

2022-01-25 10:43:59 2033

翻译 颜色 QML 基本类型

By aSVG color name, such as "red", "green" or "lightsteelblue". By a hexadecimal triplet or quad in the form"#RRGGBB"and"#AARRGGBB"respectively. For example, the color red corresponds to a triplet of"#FF0000"and a slightly transparent blue to a qua...

2021-12-18 13:33:16 1361

原创 PCM音频和音量调节

声音的本质是一种能量波,由振动而产生的能量波,通过传输介质传输出去。声音有三个属性: 音调(Pitch):声音频率的高低。表示人的听觉分辨一个声音的调子高低的程度。音调主要由声音的频率决定,同时也与声音强度有关 音量:人主观上感觉声音的大小,由“振幅”(amplitude)和人离声源的距离决定,振幅越大响度越大,人和声源的距离越小,响度越大。(单位:分贝dB) 音色:又称声音的品质,波形决定了声音的音色。声音因不同物体材料的特性而具有不同特性,音色本身是一种抽象的东西,但波形是把这

2020-09-13 23:44:01 6123 2

原创 RTCP 协议的 NACK 报文

接收方定时把所有未收到的包序号通过反馈报文通知到发送方进行重传。相对ARQ带来的改进:减少的反馈包的频率和带宽占用,同时也能比较及时地通知发送方进行丢包重传。NACK 报文的定义在[rfc4585]文档中定义。RTCP 的反馈报文包头定义如下,FMT 和 PT 决定了该报文的类型,FCI 则是该类型报文的具体负载:转存失败重新上传取消转存失败重新上传取消version (V): 2 bits 该字段标识RTP版本。当前版本是2padding (P): 1 bit 如果...

2020-09-13 17:23:52 2569

原创 linux 下使用crond实现定时任务

crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。1、/etc/init.d/rcS 中启动 crond2、crond计划任务文件创建mkdir -p /var/spool/cron/crontabs/cd /var/spool/cron/crontabs/..

2020-09-07 15:47:26 156

原创 Dependency Walker--Depends.exe 分析dll的链接

Dependency Walker是一个免费的实用程序,可扫描任何32位或64位Windows模块(exe,dll,ocx,sys等),并构建所有从属模块的层次树状图。对于找到的每个模块,它列出了该模块导出的所有功能,以及其他模块实际上正在调用的功能。另一个视图显示最少的必需文件集,以及有关每个文件的详细信息,包括文件的完整路径,基地址,版本号,计算机类型,调试信息等。Dependency Walker对解决与加载和执行模块有关的系统错误也非常有用。Dependency Walker检测到许多常见的应用程

2020-09-07 14:50:46 1105

原创 windows 平台下使用ProcessExplorer查看、分析各个进程的资源占用

使用Process Explorer可以很方便查看某个进程各个线程的CPU占用率,可以为排查问题提供帮助。打开Process Exploer:然后我们可以看到各个进程的资源情况我们看到进程占了12.51%的CPU,我们想知道到底是哪个线程占用的,在该进程上右键,选择Properties...:切换到Threads标签页,可以看到绝大部分CPU是被TID为10456和8300的线程占用。点击Stack,可以查看某个线程此时的运行堆栈。...

2020-09-07 14:32:15 4383

原创 给海思 Hi35xx 调试串口添加密码

一、给串口添加密码在/etc/inittab注释掉自动以root登陆#::respawn:/sbin/getty -L ttyS000 115200 vt100 -n root -I “Auto login as root …”添加:::sysinit:/bin/hostname noname ::respawn:-/bin/loginhostname 是用来设置主机名称,可用uname -n 查看。二、网上有些方法:::respawn:/sbin/getty -L

2020-06-24 11:01:35 770

原创 使用mp4v2将H264和AAC封装mp4

一、下载源码国内源:https://launchpad.net/ubuntu/+source/mp4v2国外源:https://code.google.com/p/mp4v2/下载合适版本的mp2v2源码,我下载的是mp4v2_2.0.0_dfsg0.orig.tar.bz2二、编译1、linux编译tar jxf mp4v2_2.0.0_dfsg0.orig.tar.bz2cd mp4v2-2.0.0./configure --disable-debugmake

2020-06-19 19:21:51 2299 1

原创 hi3559a 移植exfat-nofuse,编译驱动错误: error: unrecognized argument in option ‘-mabi=apcs-gnu

问题:解决方法:将Makefile文件中的modules ARCH=arm改为:modules ARCH=arm64

2020-06-17 20:33:09 1794

原创 解决Windows下使用wave系列函数时插拔时的死锁问题

在windows平台下使用wave API进行录音播放时,设备插拔会导致程序死锁而崩溃;通过调试程序发现在程序运行过程中插拔设备后会阻塞在回调函数中的任何调用中,也即发生了死锁。所以得出结论是 采用回调用的方法,当你异常拔插设备的时候,很容易导致程序死锁。最后改用线程处理,设备插拔死锁的问题解决了。下面是录音采集使用线程://开启音频采集 MMRESULT mmReturn = ::w...

2019-10-10 11:42:59 451

原创 undefined reference to'CPU_ZERO'有关问题

undefined reference to 'CPU_ZERO'undefined reference to 'CPU_SET' 解决方法:#include <stdio.h>#define __USE_GNU#include <sched.h>#include <pthread.h>它们的顺序不能变...

2019-08-29 21:36:08 1481

原创 Qt5::QCamera查询和设置摄像头的分辨率和帧率

查询摄像头支持分辨率的APIQCamera::supportedViewfinderResolutions() 查询摄像头支持帧率的APIQCamera::supportedViewfinderFrameRateRanges() 设置摄像头采集分辨率和帧率的APIvoid setViewfinderSettings(const QCameraViewfinderSetti...

2019-08-18 17:43:38 8650

原创 windows 下使用Qt抓取桌面和鼠标

QPixmap MainWindow::grabWindow(HWND winId, int x, int y, int w, int h){ RECT r; GetClientRect(winId, &r); if (w < 0) w = r.right - r.left; if (h < 0) h = r.bottom - r.top; HDC display_dc = GetDC(winId); HDC bitmap_dc = CreateComp

2019-08-15 17:40:00 2842 2

原创 获取window任务栏运行程序图标和标题

1、写回调函数:static BOOL CALLBACK StaticEnumWindowsProc(HWND hwnd, LPARAM lParam){ GetWindowText(hwnd, app_name, sizeof(app_name)); //获取窗口名称 HICON hIcon = (HICON)GetClassLong(hwnd, GCL_...

2019-08-09 17:55:37 2198 1

原创 在intel / amd平台上包含sse指令加速;在arm平台上使用neon指令

英特尔的SIMD指令集(称为SSE)在许多应用程序中用于提高性能。ARM还在其处理器中引入了一个名为Neon的SIMD指令集。重写为SSE编写的代码以便在Neon上工作非常耗时。https://github.com/jratcliff63367/sse2neonhttps://download.csdn.net/download/qq_28581781/11454310...

2019-07-30 18:03:21 2525

转载 将Qt应用程序打包成可安装的软件

打包软件下载地址:http://pan.baidu.com/s/1dDQHqoD第一步:首先,生成release的版本,并将应用程序用到的动态库都拷贝到应用程序所在的目录下,并保证该应用程序在该目录下可以直接运行;如下图第二步:安装完该打包软件之后,打开该软件这个就是打包之后的安装文件;第三步:安装该...

2019-07-26 16:54:04 469 1

原创 Logger :: getInstance导致log4cplus中的bad_alloc异常(Logger :: getInstance导致log4cplus中出现bad_alloc异常)

0x5B23CC7E (vcruntime140.dll)处(位于 dsppa_soft_video.exe 中)引发的异常: 0xC0000005: 读取位置 0x0152C000 时发生访问冲突原因是:Debug版本调试应用程序时,使用了 lib4cplus.lib和lib4cplus.dll解决方法:如果您在Debug版本调试中构建应用程序,请确保链接到lib4CplusD.li...

2019-06-21 18:38:42 586

转载 freeswitch对媒体的处理的三种方式

一.默认方式:媒体通过freeswitch,RTP被freeswtich转发,freeswitch控制编码的协商并在协商不一致时提供语音编码转换能力,支持录音,二次拨号等。 二.代理模式: 媒体通过freeswitch转发,但是不处理媒体   RTP通过freewtich转发(只改动sdp c= ip)   freeswtich不控制 sdp参数,只是转发。   通...

2018-09-19 11:37:50 3581

转载 差网络模拟工具---clumsy

我们开发基于网络的应用时,经常需要考虑当网路较差时的异常处理,clumsy就是这个可以用来进行网络延迟的工具,可以实时的修改网络延迟、丢包、篡改等网络异常情况。clumsy 能在 Windows 平台下人工造成不稳定的网络状况,方便你调试应用程序在极端网络状况下的表现。简介利用封装 Winodws Filtering Platform 的WinDivert 库, clumsy 能实时的将系统...

2018-09-18 20:53:11 492

GB28181-sip.zip

GB28181 sip抓包与分析。符合《GBT 28181- 2016 公共安全视频监控联网系统信息传输、交换、控制技术要求.pdf》要求

2020-09-17

windows-mp4v2.zip

MP4V2 Windows环境编译。MP4v2项目在windows下构建工程,所需要的文件。将其拷贝MP4v2,即可是有VS2015打开并且编译

2020-09-11

sip(rfc3261).rar

翻译比较好的RFC3261标准。本文档介绍了会话发起协议(SIP),这是一种应用程序层控制(信令)协议,用于创建,修改和终止与一个或多个参与者的会话。这些会议包括Internet电话呼叫,多媒体分发和多媒体会议

2020-09-10

SIP(rfc2543).rar

SIP协议文档简体中文版。会话初始协议(Session Initiation Protocol)是一种信令协议,用于初始、管理和终止网络中的语音和视频会话,具体地说就是用来生成、修改和终结一个或多个参与者之间的会话。

2020-09-09

QtToWav将PCM g711按wav格式封装.zip

将PCM g711音频文件转换为WAV格式的音频文件。实现在其他软件上播放。使用了Qt Creator创建的工程

2020-09-07

mp4v2-windows.zip

mp4v2 库是一个专用于处理mp4容器的开源项目,其使用c++编写,并提供c语言接口。windows环境编译编译MP4v2。

2020-06-19

RTMP协议中文.pdf

Adobe公司的实时消息传输协议,RTMP协议官方说明文档,中文翻译。主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信

2020-05-15

RecodePlaySound.zip

在windows系统中,使用Wave 相关API进行采集播放音频,使用线程模式代替回调模式解决设备插拔死锁问题

2019-10-10

MainWindow.zip

获取window任务栏运行程序图标和标题;指定运用窗口抓图

2019-08-09

sse2neon-master.zip

在ARM平台上使用neon指令集生成了一套替换sse指令的函数接口;

2019-07-30

转换工具pexports.exe

首先需要根据 dll 生成 def 文件,网上多数采用 VS 自带的 dumpbin 生成 def 文件,然后手动修改,得到标准的 def 文件的方式,手动修改很容易出错,导致最后生成的 lib 不正确,因此这里采用 pexports 生成标准的 def 文件,不需要手动改

2019-03-31

cmake-3.13.0-rc3-win64-x64

CMake是一个跨平台的安装(编译)工具。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake

2018-11-11

ortp-1.0.2源码

ORTP是一个支持RTP以及RFC3550协议的库,使用C语言编写,提供简单易用的API,支持单线程下的多个RTP会话,支持自适应抖动处理

2018-03-02

空空如也

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

TA关注的人

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