合成简单的声音波形(一)

简介:

合成简单的声音波形(一) 收藏

  半年前刚开始研究音频文件时,为了对音频文件有个感性的认识,做了一个合成简单波形的小程序。今天回顾一下这个程序,也算是为后面写音频分析的总结开个头吧。本文将简单的介绍一下Wave文件,并合成三个简单的波形,试图通过这种方式,对音频有个初步的感性认识。

  在此之前,你是否想过老式的黑白电视机在收不到信号的时候,为什么会发出那么难听的声音呢?又是为什么要用那种刺耳的声音做为老式电话的铃声呢?下文将会让你对此有近一步的认识。

  我们第一个要合成的是正弦信号的声音。根据傅叶变换的原理,绝大多数的信号都可以表示成正弦信号叠加的形式。首先就来听听组成其它丰富多采的声音的基本元素是什么样的吧。点击下面的播放按钮播放音频文件。

感觉如何,单调,刺耳,并不好听是吗?

  第二个要合成的是矩形波。在这里合成的波形不是相同的矩形单调的重复,这样做为的是合成有意思的声音。因为如果只是简单的重复,我们就只能得到单调的声音。这段波形由两个矩形合成,其中一个矩形波的周期是另外一个的两倍,每隔600个采样切换一次  。点击下面的播放按钮播放音频文件。

是不是感觉很熟悉呢?对了,就是电话铃声。也就是说老式的电话铃声就是矩形波。至于为什么要用矩形波呢?我个人觉得是因为容易实现。电话中发出铃声的部分是电子元件,而它处理的是连续信号,只要简单的改变这个元件电平的持继时间,就可以很容易的合成我们所听到电话铃声。

  上面两个波形都是有规律的,那么随机生成的信号又会是什么样子的呢?实现生成随机信号的代码很简单,就是往音频数据中随机的填充震幅。点击下面的播放按钮播放音频文件。

是不是感觉很熟悉?在电视机收不到信号时会发这样的声音,确切的说不是收不到信号,而是没收到电台发出的信号,收到了随机的信号。不过现在的彩电就好了,会判断一下接收到的是否是随机信号,如果是就不播放声音,你也就不会听到这么刺耳的声音了。

  点击这里下载本文中合成Wave文件的代码,代码使用C语言编写,在win xp+vs.net 2003环境下编译通过。编译并运行后,会在当前目录下生成四个Wave文件,分别是rand.wav、ring.wav、sine.wav和triangle.wav。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/thinkport/archive/2008/04/05/2253363.aspx
本文转自jiahuafu博客园博客,原文链接http://www.cnblogs.com/jiahuafu/archive/2009/10/09/1579479.html如需转载请自行联系原作者

jiahuafu

相关文章
|
7月前
|
vr&ar
合成处理
合成处理
39 2
|
18天前
|
机器学习/深度学习 存储 数据采集
MEMO:通过音频和图像生成肖像说话视频,感知音频中的情感来细化面部表情
MEMO是一种音频驱动的生成肖像说话视频框架,由Skywork AI、南洋理工大学和新加坡国立大学联合推出。该框架通过记忆引导的时间模块和情感感知音频模块,确保生成的视频在身份一致性和表现力方面达到高水平。MEMO支持多种图像风格和音频类型的说话视频生成,并能处理多语言输入。
53 7
MEMO:通过音频和图像生成肖像说话视频,感知音频中的情感来细化面部表情
|
6月前
声音合成器 1 基本噪音
声音合成器 1 基本噪音
|
7月前
|
算法
基于DSP的音频信号降噪技术
基于DSP的音频信号降噪技术
306 4
|
7月前
|
数据安全/隐私保护
matlab程序, 脉冲波合成与提取,滑冲效应、方向性效应,自定义脉冲模型,提取脉冲波
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
算法 数据安全/隐私保护
通过扩频和DCT变换算法将图像水印嵌入到音频信号中并提取水印matlab仿真
通过扩频和DCT变换算法将图像水印嵌入到音频信号中并提取水印matlab仿真
224 0
通过扩频和DCT变换算法将图像水印嵌入到音频信号中并提取水印matlab仿真
|
机器学习/深度学习 传感器 算法
【语音去噪】基于切比雪夫+椭圆形低通滤波器语音去噪附GUI界面
【语音去噪】基于切比雪夫+椭圆形低通滤波器语音去噪附GUI界面
【音频处理】乐器音符播放时电流处理 ( 使用均衡器调节低频 )
【音频处理】乐器音符播放时电流处理 ( 使用均衡器调节低频 )
142 0
【音频处理】乐器音符播放时电流处理 ( 使用均衡器调节低频 )
几个鸟叫的声音
http://files.cnblogs.com/jyk/111.rar
685 0