声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3678|回复: 7

[编程技巧] 如何实现两个声音信号叠加

[复制链接]
发表于 2007-8-26 21:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
各位高手,请问一个问题,如何实现两个声音信号叠加并形成声音文件播放出来,谢谢!

[ 本帖最后由 eight 于 2007-8-27 20:06 编辑 ]
回复
分享到:

使用道具 举报

发表于 2007-8-27 09:09 | 显示全部楼层
如果两个声音分别表示为x和y,它们的叠加为z=x+y(如果它们不等长,短的一个补0成为等长),写成wav文件,便能播放出来。

评分

1

查看全部评分

发表于 2007-9-24 01:22 | 显示全部楼层

回复 #2 songzy41 的帖子

写成wav文件,用哪个函数呢
发表于 2007-9-24 08:55 | 显示全部楼层
wavwrite

评分

1

查看全部评分

发表于 2007-9-24 11:09 | 显示全部楼层
如果两个声音都是wav文件,可以先读入,用wavread,读成x和y,它们的叠加为z=x+y,再用wavwrite写成wav文件。

评分

1

查看全部评分

发表于 2007-9-24 11:29 | 显示全部楼层

回复 #5 songzy41 的帖子

我没试过,不过觉得数据的简单叠加可能会使声音都变质。应该放到不同声道里,这需要对wav格式有很好的了解。而且wavread并不是可以读所有的wav文件,有些是不支持的我就碰到这种情况

[ 本帖最后由 花如月 于 2007-9-24 11:31 编辑 ]
发表于 2007-9-24 15:06 | 显示全部楼层
又学到有用的了
发表于 2007-9-30 23:51 | 显示全部楼层
论坛真是学习的好地方
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-6 09:43 , Processed in 0.087528 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表