首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不支持的通道数的Matlab错误意味着什么?

不支持的通道数的Matlab错误意味着什么?
EN

Stack Overflow用户
提问于 2013-11-15 06:03:25
回答 1查看 2.8K关注 0票数 2

我对Matlab非常陌生,并试图生成一个.wav文件,但我一直得到一个不受支持的通道错误数。这是我的密码。

代码语言:javascript
复制
TTL = zeros(2, 2205);
TTL(1,1:2205) = 2;
audiowrite('hereitis.wav', TTL, 44100, 'BitsPerSample', 16);

我相当肯定,我的问题在于TTL,因为我以前曾使用Matlab一次或两次来生成.wav文件。我想要做的是保存一个声音,另一个人是通过模拟传输使用Matlab数据采集工具箱。我不认为我离目标太远,因为我已经能够播放声音使用声音(TTL,44100);

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-11-15 07:20:52

你这里有两个问题。

首先,正如help audiowrite所说:

立体声数据应指定为有两列的矩阵。

但是你有两行,所以你需要改变它。如果运行更改的代码,您将得到警告:

代码语言:javascript
复制
Warning: Data clipped when writing file. 
>In audiowrite>clipInputData at 390   
In audiowrite at 166

这意味着您需要对信号使用适当的数据类型(在本例中为int16)。因此,在进行了这些修改之后,我们得到了以下代码:

代码语言:javascript
复制
TTL = int16(zeros(2205, 2));
TTL(1:2205, 1) = 2;
audiowrite('hereitis.wav', TTL, 44100, 'BitsPerSample', 16);
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19994522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档