Main Content

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

soundsc

缩放数据和作为声音播放

说明

示例

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

示例

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

示例

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

示例

soundsc(___,yRange)(其中 yRange[low,high] 形式的向量)可将 y 中介于 lowhigh 之间的值线性缩放到完整声音范围 [–1, 1]。[low,high] 之外的值缩放会超出 [–1, 1] 范围。您可以将 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 位采样位数的位深播放缩放的音频(如果您的系统支持此位深)。

以原始音量的 70% 播放 Handel 的 Hallelujah Chorus 选段。

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

输入参数

全部折叠

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

数据类型: double

采样率(以赫兹为单位),指定为正标量。

采样率的有效值取决于系统的音频硬件。大多数设置支持的典型采样率为 8000、11,025、22,050、44,100、48,000、96,000 和 192,000 Hz。

数据类型: single | double

采样位数,指定为 16824

nBits 的有效值取决于系统的音频硬件。

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

如果不指定 yRange,则使用默认值 [-M,M],其中 Mabs(y) 中的最大条目。

示例: [-0.8,0.8]

数据类型: double

局限性

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

提示

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

  • Google Chrome® 支持在 MATLAB OnlineMATLAB Web App Server 中使用 soundsc

  • 注意

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

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

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

版本历史记录

在 R2006a 之前推出