你怎么同时扮演多个声音文件?

44视图(30天)
嗨,你能同时播放多个声音剪辑在matlab ?我已经尝试使用声音(…)功能和wavplay(…)函数通过调用它们一个接一个地在以下方式:
wavplay (soundClip1 Fs) wavplay (soundClip2 Fs) wavplay (soundClip3 Fs)
但这只连续播放的文件,而不是在同一时间。我一直在使用的方法是和每个数组中的数据为:
mergedClip = soundClip1 + soundClip2 + soundClip3;wavplay (mergedClip Fs)
有谁知道如果有一种方法可以调用matlab音频函数的单独的文件一起玩吗?
谢谢,马特

接受的答案

沃尔特·罗伯森
沃尔特·罗伯森 2012年2月9日
没有MATLAB提供的方法同时扮演多个声音。没有方法MATLAB提供的同步多个音频或视频事件。甚至对一些同步音频或视频事件触发或计时器。或确定一个音频或视频事件的最大延迟。
最近的可用使用 非常 最新版本的64位MATLAB,国家仪器(NI)数字模拟转换器,新的基于会话界面,多种渠道一起同步,与模拟输出队列的音频,喂养一些模拟混频器。(可能也可以完成遗留界面和non-NI设备;它应该工作原理,但我还没有 位于 具体保证通道将同步。)
除此之外……平均信号方法。不仅仅是添加在一起,因为这将通常饱和输出。()是适合这个任务。
2的评论
沃尔特·罗伯森
沃尔特·罗伯森 2023年4月20日
在上面的回答是发布以来,MATLAB补充道 audioplayer ,()方法。如果你使用()而不是playblocking(),那么其他正在玩()不同audioplayer()对象将在同一时间。然而,没有任何之间的同步对象。
如果声音要不同的输出设备,那么这些天你可以使用 //www.tatmou.com/help/audio/ref/audiodevicewriter-system-object.html audioDeviceWriter密切同步(但仍明显不完善)
针对单一设备如果需要同步,使用的意思是()仍然是路要走。

登录置评。

更多的答案(0)

类别

找到更多的在多通道音频输入和输出帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!