主要内容

dsp.AudioFileWriter

流音频文件

描述

dsp.AudioFileWriter系统对象™写音频样本一个音频文件。

一个音频文件编写音频样本:

  1. 创建dsp.AudioFileWriter对象并设置其属性。

  2. 调用对象的参数,就好像它是一个函数。

了解更多关于系统对象是如何工作的,看到的系统对象是什么?

创建

描述

afw= dsp.AudioFileWriter返回一个音频文件系统对象作家,afw。这个对象写音频样本一个音频文件。

afw= dsp.AudioFileWriter (文件名称)返回一个音频文件系统对象作家,afw。这个对象的文件名属性设置为文件名称

例子

afw= dsp.AudioFileWriter (名称,值)返回一个音频文件作家与每个指定的对象属性设置为指定的值。在单引号附上每个属性的名字。未指定的属性有默认值。

属性

全部展开

属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。

如果一个属性可调在任何时候,你可以改变它的值。

改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象

音频文件的名称指定为一个特征向量或字符串标量。

文件名属性是可调在生成的代码。也就是说,您可以通过音频文件的名称作为输入从这个对象在运行生成的代码。例如,看到的在生成的代码可调音频文件的名字

指定音频文件格式对象写道。在微软®平台,选择之一“AVI”,“WAV”,“FLAC”,“OGG”,MPEG4的,的WMA。在Linux上®平台,选择之一“AVI”,“WAV”,“FLAC”,或“OGG”。在macOS平台上,选择之一“AVI”,“WAV”,“FLAC”,“OGG”,或MPEG4的。这些缩写对应于以下文件格式:

  • “AVI”:视听传播的交错

  • “WAV”:微软波文件

  • 的WMA:Windows媒体®音频

  • “FLAC”:自由无损音频编解码器

  • “OGG”:Ogg Vorbis音频文件进行压缩

  • MPEG4的:mpeg - 4 AAC文件,您可以使用.m4amp4扩展

默认值是“WAV”

指定输入音频数据的采样率作为一个积极的,数字标量值。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定压缩算法的音频文件的类型,作者使用压缩音频数据。压缩减少音频文件的大小。选择“没有(未压缩的)”未压缩的音频数据保存到文件。另一个选择反映在您的系统上安装音频压缩算法。您可以使用选项卡完成查询有效压缩机选择为你的电脑打字H。压缩机= '然后按tab键。

依赖关系

这个属性适用于写作WAV或Windows上的AVI文件®平台。

指定类型的未压缩的音频数据写入文件“int16”,“双”,“单一”,“继承”,“int24”,“int32”,或“uint8”

依赖关系

该属性仅适用于写作时未压缩的WAV文件。

使用

语法

描述

例子

afw (音频)写一帧音频样本,音频指定的输出文件文件名音频单声道音频输入的向量或一个吗——- - - - - -N矩阵N声道输出的音频输入。

输入参数

全部展开

一帧音频样本,返回为一个列向量或矩阵。一个列向量输入显示一个单声道音频输入。一个——- - - - - -N矩阵表示一个N声道输出的音频输入。

如果输入是定点,输入必须签署定点输入2的幂,斜率和零偏差。

数据类型:||int16|int32|uint8|fi

对象的功能

使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:

发行版(obj)

全部展开

一步 运行系统对象算法
释放 释放资源,并允许修改系统对象属性值和输入特征
重置 重置的内部状态系统对象

例子

全部折叠

请注意:如果您使用的是R2016a或更早的版本中,用等效替换每个调用对象一步语法。例如,obj ()就变成了步骤(obj)

毁掉一个音频信号,并将它写入磁盘为WAV文件。

误判率= dsp.AudioFileReader (“OutputDataType”,“双”);firdec = dsp.FIRDecimator;%毁掉了2afw = dsp.AudioFileWriter(“speech_dft.wav”,“SampleRate”,afr.SampleRate / 2);~结束(误判率)音频=误判率();audiod = firdec(音频);afw (audiod);结束释放(误判率);释放(afw);

从函数生成一个墨西哥人文件命名writeAudio。该函数读取的音频信号funky-stereo.wav文件,使得信号的2倍,并将摧毁信号写入指定的输出文件。

dsp.AudioFileReader对象读取的音频信号funky-stereo.wav文件。的funky-stereo.wav文件有两个渠道,采样率为44100 Hz, 1411 kbps的比特率。的CodegenPrototypeFile设置对象的属性rock-stereo.wav文件。的rock-stereo.wav文件相同的文件属性,如音频频道的数量、采样率和比特率funky-stereo.wav文件。的dsp.FIRDecimator对象会毁坏输入音频信号的2倍。的dsp.AudioFileWriter对象将摧毁信号写入输出文件myoutput.wav。由于大量毁灭的过程,输出文件的采样率为22050 Hz和2822 kbps的比特率。

类型writeAudio.m
writeAudio (readfile函数,writefile)误判率= dsp.AudioFileReader (FilenameIsTunableInCodegen,真的,…“CodegenPrototypeFile”、“rock-stereo.wav”);误判率。文件名= readfile;% funky-stereo文件名。wav和CodegenPrototypeFile % rock-stereo.wav。firdec = dsp.FIRDecimator(2, '汽车');由2 afw = %毁掉dsp.AudioFileWriter (SampleRate, 22050);afw。文件名= writefile; while ~isDone(afr) audio = afr(); audiod = firdec(audio); afw(audiod); end release(afr); release(afw); end

对于生成代码,指定文件名特征向量长度可变的最大长度为500。

readfilename = coder.typeof (“一个”[500],[0 1]);writefilename = coder.typeof (“b”[500],[0 1]);

生成一个墨西哥人文件使用codegen函数。

codegenwriteAudioarg游戏{readfilename, writefilename}
代码生成成功。
writeAudio_mex (“funky-stereo.wav”,“myoutput.wav”);

限制

下面的特定于平台的限制适用于写作这些文件:

Windows 7 macOS
  • 只有样品44100赫兹和48000赫兹mpeg - 4 AAC文件格式的支持。金宝app其他的文件格式,没有限制的采样率。

  • 只允许单声道或立体声输出为mpeg - 4 AAC文件格式。对于所有其他格式,两个以上的音频输出通道是允许的。

  • 只允许单声道或立体声输出的mpeg - 4 AAC文件格式。对于所有其他格式,两个以上的音频输出通道是允许的。

  • 输出数据填充在前面和后面的信号,用额外的样品的沉默。

    Windows AAC编码器将锋利的淡入和淡出音频信号,导致信号稍长一些的样品在写入磁盘。

  • 不支持所有抽样率,尽管Mac音频工具箱API并不显式地金宝app指定一个限制。

  • 至少1025样本/通道必须写到mpeg - 4 AAC文件。

算法

这个对象实现算法、输入和输出的描述多媒体文件块引用页面。对象属性对应块的参数,除了:

  • 的对象FileFormat属性不支持视频文件格式。金宝app

  • 的对象没有相应的属性参数。对象只有音频内容文件中写道。

  • 的对象没有相应的属性视频压缩参数。

  • 的对象没有相应的属性文件颜色格式参数。

  • 的对象没有相应的属性图像信号参数。

扩展功能

版本历史

介绍了R2012a