主要内容

loudnessMeter

标准兼容响度测量

描述

loudnessMeter系统对象™计算响度,音频信号的响度范围,true-peak依照欧洲R 128和ITU-R BS.1770-4标准。

实现响度计量:

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

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

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

创建

描述

loudMtr = loudnessMeter创建一个系统对象,loudMtr独立,执行响度测量在每个输入通道。

loudMtr = loudnessMeter (名称,值)每个属性集的名字到指定的价值。未指定的属性有默认值。

例子:loudMtr = loudnessMeter (“ChannelWeights”, [1.2, 0.8], ' SampleRate ', 12000)创建一个系统对象,loudMtr通道权重为1.2和0.8,12 kHz的采样率。

属性

全部展开

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

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

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

线性权重应用于每个输入通道,指定为一个行向量的非负价值。行向量中的元素的数量必须等于或大于输入通道的数量。过剩值向量中被忽略。

默认频道重量按照ITU-R BS.1170-4标准。使用默认通道重量、输入信号通道指定为一个矩阵在这个顺序:(左,右,中心,左环绕,对周围)。

作为一项最佳实践,指定ChannelWeights属性为:[左,右,中心,左环绕,对周围)。

可调:是的

数据类型:|

使用相对规模响度测量,指定为一个逻辑标量。

  • ——返回的响度测量是绝对和响度单位全面(LUFS)。

  • 真正的——响度测量是相对的TargetLoudness返回值和响度单位(陆)。

可调:没有

数据类型:逻辑

目标响度级相对规模LUFS,指定为一个真正的标量。

例如,如果TargetLoudness-23 LUFS,响度值-23 LUFS报告为0。

可调:是的

依赖关系

要启用这个特性,设置UseRelativeScale真正的

数据类型:|

输入采样率在赫兹,指定为一个积极的标量。

可调:是的

数据类型:|

使用

描述

例子

(短暂的,短期的,集成,范围,)= loudMtr (audioIn)返回瞬时和短期响度测量值输入到你的响度米,和当前输入的true-peak价值框架,audioIn。它还返回综合响度和响度的输入音量计自最后一次重置被称为。

输入参数

全部展开

音频输入音量计,指定为一个矩阵。矩阵的列被视为独立的音频通道。

请注意

如果您使用默认值ChannelWeightsloudnessMeter作为一个最佳实践,指定的输入通道顺序:(左,右,中心,左环绕,对周围)。

数据类型:|

输出参数

全部展开

短暂的响度响度单位相对于全面(LUFS),作为一个列向量返回的行数一样audioIn

默认情况下,响度测量LUFS返回。如果你设置UseRelativeScale财产真正的返回,响度测量响度单位(陆)。

数据类型:|

短期音量响度单位相对于全面(LUFS),作为一个列向量返回的行数一样audioIn

默认情况下,响度测量LUFS返回。如果你设置UseRelativeScale财产真正的返回,响度测量响度单位(陆)。

数据类型:|

综合音量响度单位相对于全面(LUFS),作为一个列向量返回的行数一样audioIn

默认情况下,响度测量LUFS返回。如果你设置UseRelativeScale财产真正的返回,响度测量响度单位(陆)。

数据类型:|

响度的响度单位(陆),作为一个列向量返回的行数一样audioIn

数据类型:|

在dB-TP True-peak响度,作为一个列向量返回的行数一样audioIn

数据类型:|

对象的功能

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

发行版(obj)

全部展开

可视化 打开“欧洲模式”表显示
克隆 创建重复的系统对象
isLocked 确定系统对象在使用
释放 释放资源,并允许修改系统对象属性值和输入特征
重置 重置的内部状态系统对象
一步 运行系统对象算法

例子

全部折叠

创建一个dsp.AudioFileReader系统对象™读入一个音频文件。创建一个loudnesMeter系统对象。使用音频文件的采样率的采样率loudnessMeter

fileReader = dsp.AudioFileReader (“RockDrums-44p1-stereo-11secs.mp3”);loudMtr = loudnessMeter (“SampleRate”,fileReader.SampleRate);

音频文件中读取一个音频流循环。使用响度计来确定的,短期的,和集成音频信号的响度。缓存响度测量进行分析。

瞬时= [];短期= [];集成= [];~结束(fileReader) x = fileReader ();[m s i) = loudMtr (x);瞬时=[瞬时;m];短期=(短期的);集成=(集成;我);结束发行版(fileReader)

画出短暂的、短期的和集成音频信号的响度。

t = linspace(0 11长度(瞬时));情节(t,[短暂的、短期的、集成])标题(“响度测量”)传说(“瞬间”,“短期”,“集成”)包含(的时间(秒))ylabel (“LUFS”)

图包含一个坐标轴对象。坐标轴标题响度测量对象,包含时间(秒),ylabel LUFS包含3线类型的对象。这些对象是短暂的、短期的、集成。

创建一个音频文件阅读器和一个音频设备的作家。

fileReader = dsp.AudioFileReader (“FunkyDrums-44p1-stereo-25secs.mp3”,“SamplesPerFrame”,1024);fs = fileReader.SampleRate;deviceWriter = audioDeviceWriter (“SampleRate”fs);

创建一个时间范围来可视化你的音频流循环。

timeScope = timeScope (“NumInputPorts”2,“SampleRate”fs,“TimeSpanOverrunAction”,“滚动”,“LayoutDimensions”(2,1),“TimeSpanSource”,“属性”,“时间间隔”5,“BufferLength”5 * fs);%的次要情节的范围timeScope。Title =“短暂的响度”;timeScope。YLabel =“LUFS”;timeScope。YLimits = (-40,0);%底部次要情节的范围timeScope。ActiveDisplay = 2;timeScope。Title =“响度范围”;timeScope。YLabel =“陆”;timeScope。YLimits = [1, 2];

创建一个响度计。使用你的输入文件的采样率采样率的响度。调用可视化打开一个“EBU-mode”可视化响度计。

loudMtr = loudnessMeter (“SampleRate”fs);可视化(loudMtr)

在一个音频流循环:

  • 读你的音频文件。

  • 计算出瞬时响度和响度范围。

  • 可视化的响度和响度范围在你的时间范围。

  • 音频信号。

EBU-mode的响度计可视化自动更新,它是开放的。作为一项最佳实践,释放你的文件阅读器和设备作家完成一次循环。

~结束(fileReader) audioIn = fileReader ();[momentaryLoudness, ~, ~, LRA] = loudMtr (audioIn);timeScope (momentaryLoudness LRA);deviceWriter (audioIn);结束发布(fileReader)发布(deviceWriter)

创建一个音频文件阅读器阅读的一个音频文件。创建一个音频设备作家写音频文件到您的音频设备。使用你的文件阅读器的采样率作为你的设备的采样率的作家。

fileReader = dsp.AudioFileReader (“Counting-16-44p1-mono-15secs.wav”,“SamplesPerFrame”,1024);fs = fileReader.SampleRate;deviceWriter = audioDeviceWriter (“SampleRate”fs);

创建一个与目标音量响度计设置为默认-23年LUFS。打开“EBU-mode”响度计可视化。

loudMtr = loudnessMeter (“UseRelativeScale”,真正的);可视化(loudMtr)

创建时间范围可视化你的音频信号及其测量相对短暂的和短期的响度。

范围= timescope (“NumInputPorts”3,“SampleRate”fs,“TimeSpanOverrunAction”,“滚动”,“TimeSpanSource”,“属性”,“时间间隔”5,“BufferLength”5 * fs,“标题”,的音频信号、瞬时响度和短期响度,“ChannelNames”,{音频信号的,“短暂的响度”,“短期响度”},“YLimits”(-16年,16),“YLabel”,“振幅/逻辑单元”,“ShowLegend”,真正的);

在一个音频流循环,听音频信号并将其可视化。

~结束(fileReader) x = fileReader ();(短暂的、短期的)= loudMtr (x);范围(x,瞬时,短期)deviceWriter (x);结束发布(deviceWriter)发布(fileReader)

算法

全部展开

loudnessMeter系统对象计算瞬时响度,短期的响度,集成的响度,响度范围(LRA)和true-peak音频信号的价值。你可以指定任意数量的渠道和默认通道权重用于响度测量。的loudnessMeter一般情况下的算法描述n通道使用默认通道权重。

引用

[1]国际电信联盟;无线电通信部门。算法来测量音频节目响度和True-Peak音频水平。ITU-R BS.1770-4。2015年。

欧洲广播联盟[2]。响度正常化和允许的最大程度的音频信号。128年欧洲R。2014年。

欧洲广播联盟[3]。响度计量:“欧洲模式”计量补充如R 128响度正常化。如R 128科技3341。2014年。

欧洲广播联盟[4]。响度范围:衡量补充如R 128响度正常化。如R 128科技3342。2016年。

扩展功能

版本历史

介绍了R2016b