Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

soundsc

缩放数据和作为声音播放

说明

示例

soundsc(y) 缩放音频信号 y 的值以使其位于 –1.0 到 1.0 范围内,然后以默认采样率 8192 赫兹将数据发送到扬声器。通过先缩放数据,soundsc 可尽可能提高音频的音量,而不用裁剪。动态数据范围均值设置为零。

示例

soundsc(y,Fs) 以采样率 Fs 向扬声器发送音频信号 y

示例

soundsc(y,Fs,nBits) 对音频信号 y 使用 nBits 的采样位数。

示例

soundsc(___,yRange)(其中 yRange[low,high] 形式的向量)可将 y 中介于 lowhigh 之间的值线性缩放到完整声音范围 [-1.0,1.0][low,high] 之外的值缩放会超出 [-1.0,1.0] 范围。您可以将 yRange 与上述语法中的任何输入参数结合使用。

示例

全部折叠

加载示例文件 gong.mat,其中包含样本数据 y 和采样率 Fs,然后收听音频。

load gong.mat;
soundsc(y);

以录制的采样率的两倍播放 Handel 的片段“Hallelujah Chorus”。

load handel.mat;
soundsc(y, 2*Fs);
load handel.mat;
nBits = 16;
soundsc(y,Fs,nBits);

MATLAB® 以每样本 16 位的位深播放缩放的音频。

load handel.mat;
yRange = [-0.7,0.7];
soundsc(y,yRange);

输入参数

全部折叠

音频数据,指定为 m×1 列向量(对应单声道音频),或指定为 m×2 矩阵(对应立体声播放),其中 m 是音频样本数。如果 ym×2 矩阵,则第一列对应于左声道,第二列对应于右声道。仅在您的系统支持立体声播放时,才提供立体声播放。

数据类型: double

音频数据 y 的采样率(以赫兹为单位),指定为介于 1000 和 384000 之间的正数。有效值取决于 MATLAB® 允许的采样率以及系统上的具体音频硬件。MATLAB 的硬性限制为 1000 Hz <= Fs <= 384000 Hz,但还存在其他基于硬件的限制。

数据类型: single | double

样本值的位深,指定为整数。有效值取决于安装的音频硬件。多数平台都支持 8 位或 16 位的位深。

要缩放的音频数据的范围,指定为 [low,high] 形式的二元素向量,其中 lowhigh 为该范围的上限和下限。当在音效装置上播放时,y 中缩放后超出 [-1.0, 1.0] 的值会被裁剪掉。

示例: [-0.8,0.8]

数据类型: double

局限性

  • MATLAB Online™MATLAB Web App Server™ 中使用 soundsc 时,soundsc 会忽略 nBits。在这种情况下,它会使用输出音频设备的默认采样位数来播放音频数据。

详细信息

全部折叠

使用 MATLAB OnlineMATLAB Web App Server 时的安全注意事项

MATLAB OnlineMATLAB Web App Server 中使用 soundsc 时,某些功能和设置有助于您保护您的隐私。

要减少不必要的应用程序使用麦克风的可能性,请关闭对音频设备的自动访问权限。您可以随时更改这些设置。对某网站授予一次权限后,您的浏览器可能会在将来访问该网站时自动访问您的麦克风。在最初允许访问后,可使用 Google Chrome 的浏览器设置撤消对特定网站的访问权限。

您还可以使用 Google Chrome 中的私密浏览模式访问 MATLAB Online 网站或 MATLAB Web App Server。当您这样做时,Chrome™ 会在您每次打开 MATLAB Online 网站或 MATLAB Web App Server 并运行 soundsc 时自动询问是否允许访问您的麦克风,而不管您的浏览器设置如何。

提示

  • sound 函数支持所有 Windows® 和大多数 UNIX® 平台上的声音设备。

  • 多数声卡都支持介于 5 和 48 千赫兹之间的采样率。如果指定的采样率不在此范围内,可能产生意外的结果。

  • Google Chrome™ 支持 MATLAB OnlineMATLAB Web App Server 中的音频播放。

版本历史记录

在 R2006a 之前推出