主要内容

ParameterTuner.

在流时调优对象参数

描述

例子

H= parameterTuner (obj创建一个参数调整UI并返回图形句柄,H

例子

全部折叠

ParameterTuner.使您可以在图形上调整多个对象的参数。在此示例中,使用交叉滤波器将信号分成多个子带,然后向子带应用不同的效果。

创建一个dsp。AudioFileReader一帧一帧地读音频。创建一个audioDeviceWriter将音频写入您的声卡。

filereader = dsp.audiofilereader('funkydrums-48-stereo-25secs.mp3'...“PlayCount”2);deviceWriter = audioDeviceWriter (“SampleRate”, fileReader.SampleRate);

创建一个交叉Filter.有两个交叉口将音频分成三个频段。调用可视化绘制过滤器的频率响应。调用ParameterTuner.打开一个UI,在流媒体时调整交叉频率。

xFilt = crossoverFilter (“SampleRate”,filereader.samplerate,“NumCrossovers”2);可视化(xFilt) parameterTuner (xFilt)

创建两个压缩机对象对其中两个子频带应用动态范围压缩。调用可视化绘制两个压缩机的静态特性图。调用ParameterTuner.打开ui以调优静态特性。

cmpr1 =压缩机(“SampleRate”, fileReader.SampleRate);可视化(cmpr1) parameterTuner (cmpr1)

cmpr2 =压缩机(“SampleRate”, fileReader.SampleRate);可视化(cmpr2) parameterTuner (cmpr2)

创建一个audioptuminexample.chorus.将合唱效果应用于其中一个乐队。调用ParameterTuner.打开UI调整合唱插件参数。

合唱= audiopluginexample.Chorus;setSampleRate(合唱、fileReader.SampleRate);parameterTuner(合唱)

在一个音频流循环中:

  1. 从文件中读取一系列音频。

  2. 使用交叉过滤器将音频分成三个波段。

  3. 将动态范围压缩应用于第一和第二频段。

  4. 在第三个乐队上应用合唱效果。

  5. 合计音频频带。

  6. 将音频帧写入音频设备以供收听。

尽管~isDone(fileReader) audioIn = fileReader();(b1, b2, b3) = xFilt (audioIn);b1 = cmpr1 (b1);b2 = cmpr2 (b2);b3 =过程(合唱、b3);audioOut = b1 + b2 + b3;deviceWriter (audioOut);drawnowlimitrate%进程parameterTuner回调结束

作为最佳实践,完成后释放您的对象。

发布(fileReader)发布(deviceWriter)

创建一个dsp。AudioFileReader一帧一帧地读音频。创建一个audioDeviceWriter将音频写入您的声卡。使用loadAudioPlugin加载均衡器插件。如果你使用的是Mac电脑,请更换.dll.文件扩展名与.vst

filereader = dsp.audiofilereader('funkydrums-48-stereo-25secs.mp3');deviceWriter = audioDeviceWriter (“SampleRate”, fileReader.SampleRate);pluginpath = fullfile(matlabroot,'工具箱/音频/样本/ parametricequalizer.dll');eq = loadaudioplugin(pluginpath);SetSapperge(eq,filereader.samplerate);

调用ParameterTuner.在流式传输时打开UI以调谐均衡器的参数。

ParameterTuner(EQ)

在一个音频流循环中:

  1. 从文件中读取一系列音频。

  2. 应用均衡。

  3. 将音频帧写入音频设备以供收听。

尽管~isDone(fileReader) audioIn = fileReader();audioOut =过程(eq, audioIn);deviceWriter (audioOut);drawnowlimitrate%进程parameterTuner回调结束

作为最佳实践,完成后释放您的对象。

发布(fileReader)发布(deviceWriter)

创建一个dsp。AudioFileReader一帧一帧地读音频。创建一个audioDeviceWriter将音频写入您的声卡。创建一个audiopluginexample。镶边处理音频数据并设置采样率。

filereader = dsp.audiofilereader('Rockguitar-16-96-Stereo-72secs.flac');deviceWriter = audioDeviceWriter (“SampleRate”, fileReader.SampleRate);镶边= audiopluginexample.Flanger;setSampleRate(镶边,fileReader.SampleRate);

调用ParameterTuner.在流式传输时打开UI以调整Flanger的参数。

parametertuner(flanger)

在一个音频流循环中:

  1. 从文件中读取一系列音频。

  2. 涂抹法兰。

  3. 将音频帧写入音频设备以供收听。

尽管~isDone(fileReader) audioIn = fileReader();AudioOut = Process(Flanger,AudioIn);deviceWriter (audioOut);drawnowlimitrate%进程parameterTuner回调结束

作为最佳实践,完成后释放您的对象。

发布(fileReader)发布(deviceWriter)

创建一个dsp。AudioFileReader一帧一帧地读音频。创建一个audioDeviceWriter将音频写入您的声卡。创建一个压缩机来处理音频数据。调用可视化绘制静态特性图压缩机

FrameLength = 1024;filereader = dsp.audiofilereader('Rockdrums-44p1-stereo-11secs.mp3'...“SamplesPerFrame”,frameLength);deviceWriter = audioDeviceWriter (“SampleRate”, fileReader.SampleRate);刚果民主共和国=压缩机(“SampleRate”, fileReader.SampleRate);可视化(DRC)

创建一个timescope将原始和处理过的音频可视化。

范围= timescope (...“SampleRate”,filereader.samplerate,...“TimeSpanSource”“属性”...“时间间隔”,1,...'bufferLength',filereader.samplege * 4,...“YLimits”,[ -  1,1],...'timespanoverrunaction''滚动'...'showgrid',真的,...“LayoutDimensions”(2, 1),...“NumInputPorts”2,...'标题'“原始音频与压缩音频(上)和压缩增益(下)”);scope.activedisplay = 2;scope.ylimits = [-4,0];scope.ylabel ='收益(DB)'

调用ParameterTuner.在流式传输时打开UI以调谐压缩机的参数。

parameterTuner (dRC)

图音频参数调谐器:压缩机[dRC]包含一个类型uigridlayout的对象。

在一个音频流循环中:

  1. 从文件中读取一系列音频。

  2. 应用动态范围压缩。

  3. 将音频帧写入音频设备以供收听。

  4. 可视化原始音频,处理的音频和增益。

流式时,对动态范围压缩机的参数进行调整,并听取效果。

尽管~isDone(fileReader) audioIn = fileReader();刚果民主共和国(audioOut g) = (audioIn);deviceWriter (audioOut);范围([audioIn (: 1), audioOut (: 1)), g (: 1));drawnowlimitrate更新参数所需的%结束

图音频参数调谐器:压缩机[dRC]包含一个类型uigridlayout的对象。

作为最佳实践,完成后释放您的对象。

释放(DeviceWriter)释放(Filereader)释放(DRC)释放(范围)

输入参数

全部折叠

输出参数

全部折叠

目标人物,作为一个返回数字目的。

介绍了R2019a