自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 资源 (7)
  • 收藏
  • 关注

原创 生成特定分贝的音频波形

在处理音频的时候的有时候需要特定分贝(如-10dB)的音频波形,本文主要介绍如何生成特定分贝数的音频文件。有以下几个方面:简单的生成特定分贝的波形 模拟频率和数字频率波形生成代码的封装 正弦波、方形波、锯齿波、三角波的生成生成特定分贝特定形状的波形简单的生成特定分贝的波形波形可以通过一个周期内幅度值的变化来描述,所以要生成指定的波形就要知道两个量:周期(频率)和幅度的变化值。数字信号通

2016-12-19 15:17:46 3626

原创 Windows下Visual studio 2013 编译 Audacity

编译的Audacity版本为2.1.2,由于实在windows下编译,其源代码可以从Github上取得 git clone https://github.com/audacity/audacity。1. 编译WxWidgetsAudacity使用wxWidgets作为GUI的框架,Audacity2.1.2需要wxWidgets 3.0.2,所以在编译Audacity之前需要编译wxWidgets

2016-12-14 16:36:24 863

原创 C++ 拷贝构造函数和赋值运算符

本文主要介绍了拷贝构造函数和赋值运算符的区别,以及在什么时候调用拷贝构造函数、什么情况下调用赋值运算符。最后,简单的分析了下深拷贝和浅拷贝的问题。拷贝构造函数和赋值运算符在默认情况下(用户没有定义,但是也没有显式的删除),编译器会自动的隐式生成一个拷贝构造函数和赋值运算符。但用户可以使用delete来指定不生成拷贝构造函数和赋值运算符,这样的对象就不能通过值传递,也不能进行赋值运算。class Pe

2016-12-07 16:38:20 429

原创 FFmpeg 中AVPacket的使用

AVPacket保存的是解码前的数据,也就是压缩后的数据。该结构本身不直接包含数据,其有一个指向数据域的指针,FFmpeg中很多的数据结构都使用这种方法来管理数据。AVPacket的使用通常离不开下面4个函数:使用av_packet_alloc来创建一个AVPacket的实例,但该函数并不会为数据分配空间,其指向数据域的指针为NULL。 通常调用av_read_frame将流中的数据读取到AVP

2016-12-06 18:27:08 10748 2

原创 C++ 11 多线程--线程管理

说到多线程编程,那么就不得不提并行和并发,多线程是实现并发(并行)的一种手段。并行是指两个或多个独立的操作同时进行。注意这里是同时进行,区别于并发,在一个时间段内执行多个操作。在单核时代,多个线程是并发的,在一个时间段内轮流执行;在多核时代,多个线程可以实现真正的并行,在多核上真正独立的并行执行。例如现在常见的4核4线程可以并行4个线程;4核8线程则使用了超线程技术,把一个物理核模拟为2个逻辑核心,

2016-12-05 17:12:33 930

Golomb编码和指数哥伦布编码 exp-Golomb

使用C++实现了Golomb-Rice编码和Exp-Golomb编码。 里面还包含有一个bitstream库,用来将bit流转换为byte buffer,或者将byte buffer转换为bitstream 相关的博文地址:http://www.cnblogs.com/wangguchangqing/p/6297792.html

2017-01-18

OpenCV 特征点匹配及 优化下载

博客 http://www.cnblogs.com/wangguchangqing/p/4333873.html 中的demo代码,鉴于有很多人想参考下,就上传到这了。 主要是匹配后,计算两视图的基础矩阵F,然后再除去不适合的匹配点. 代码中 好像还有一部分三角计算的代码

2017-01-04

生成指定分贝数指定形状的音频波形

能够生成指定分贝数的音频波形,并可选择正弦波、方形波、三角波以及锯齿波,sample的类型有16位,32位整型以及单精度浮点数。 带有wav文件的读写类,wavOutFile和WavInFile能够很方便的多谢wav文件

2016-12-19

模仿Linux内核kfifo实现的循环缓存

模仿Linuxe内核kfifo实现的循环缓存

2016-11-16

FFmpeg + SoundTouch实现音频的变调变速

使用FFmpeg + SoundTouch 实现语音的变速变调。 压缩包中有两个V岁2013的Project,SoundTouch编译结果为静态链接库;wav_sound需要使用SoundTouch的编译库,另外还需要根据自己的环境自行配置FFmpeg3.1的环境。

2016-10-27

SoundTouch VS2013 Project

开源的音频变调、变速库的VS2013版本。官方的版本使用的是VS2008,编译的出来的静态库在VS2013上使用不成功。

2016-10-27

使用标准C++库实现的WAV音频文件读写

200行代码实现PCM格式的WAV文件的读写,使用标准C++库实现,不依赖于其他库。 // Write WAv文件 Wave_header header(1, 48000, 16); uint32_t length = header.fmt_data->sample_per_sec * 10 * header.fmt_data->bits_per_sample / 8; uint8_t *data = new uint8_t[length]; CWaveFile::write("e:\\test1.wav", header, data, length); // read //CWaveFile wave; //wave.read("e:\\test1.wav");

2016-10-17

空空如也

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

TA关注的人

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