Python中灵活的音频响度计。
实现了ITU-R BS.1770-4标准。<br/> 允许控制门限块大小和频率加权滤波器以实现额外控制。
有关实现的完整详细信息,请参阅我们的论文,以及我们AES演示视频中的摘要。
您可以通过pip进行安装,如下所示:
pip install pyloudnorm
要获取最新版本,请始终从GitHub仓库安装:
pip install git+https://github.com/csteinmetz1/pyloudnorm
测量wav文件的响度很简单。 这里我们使用PySoundFile将.wav文件读取为ndarray。
import soundfile as sf import pyloudnorm as pyln data, rate = sf.read("test.wav") # 加载音频(形状为(采样数,通道数)) meter = pyln.Meter(rate) # 创建BS.1770计量表 loudness = meter.integrated_loudness(data) # 测量响度
包含了将音频文件归一化到所需峰值或所需响度的方法。
import soundfile as sf import pyloudnorm as pyln data, rate = sf.read("test.wav") # 加载音频 # 将音频峰值归一化到-1 dB peak_normalized_audio = pyln.normalize.peak(data, -1.0) # 首先测量响度 meter = pyln.Meter(rate) # 创建BS.1770计量表 loudness = meter.integrated_loudness(data) # 将音频响度归一化到-12 dB LUFS loudness_normalized_audio = pyln.normalize.loudness(data, loudness, -12.0)
提供了多种替代加权滤波器,以及调整分析块大小的功能。 示例如下:
import soundfile as sf import pyloudnorm as pyln from pyloudnorm import IIRfilter data, rate = sf.read("test.wav") # 加载音频 # 块大小 meter1 = pyln.Meter(rate) # 400毫秒块大小 meter2 = pyln.Meter(rate, block_size=0.200) # 200毫秒块大小 # 滤波器类别 meter3 = pyln.Meter(rate) # BS.1770计量表 meter4 = pyln.Meter(rate, filter_class="DeMan") # 完全符合标准的滤波器 meter5 = pyln.Meter(rate, filter_class="Fenton/Lee 1") # Fenton和Lee提出的低复杂度改进 meter6 = pyln.Meter(rate, filter_class="Fenton/Lee 2") # Fenton和Lee提出的高复杂度改进 meter7 = pyln.Meter(rate, filter_class="Dash et al.") # 早期修改选项 # 创建自定义IIR滤波器 my_high_pass = IIRfilter(0.0, 0.5, 20.0, rate, 'high_pass') my_high_shelf = IIRfilter(2.0, 0.7, 1525.0, rate, 'high_shelf') # 创建一个未初始化滤波器的计量表 meter8 = pyln.Meter(rate, filter_class="custom") # 将自定义滤波器加载到计量表中 meter8._filters = {'my_high_pass' : my_high_pass, 'my_high_shelf' : my_high_shelf}
如果您在工作中使用了pyloudnorm,请考虑引用我们。
@inproceedings{steinmetz2021pyloudnorm,
title={pyloudnorm: {A} simple yet flexible loudness meter in Python},
author={Steinmetz, Christian J. and Reiss, Joshua D.},
booktitle={150th AES Convention},
year={2021}}
Ian Dash, Luis Miranda, and Densil Cabrera, "多通道响度听音测试," 第124届国际音频工程学会大会,2008年5月
Pedro D. Pestana and Álvaro Barbosa, "ITU-R BS.1770算法在评估多轨素材中的准确性," 第133届国际音频工程学会大会,2012年10月
Pedro D. Pestana, Josh D. Reiss, and Álvaro Barbosa, "使用ITU-R BS.1770修改版测量多轨音频内容的响度," 第134届国际音频工程学会大会,2013年5月
Steven Fenton and Hyunkook Lee, "多轨节目响度测量的替代加权滤波器," 第143届国际音频工程学会大会,2017年10月
Brecht De Man, "EBU R128响度测量实现的评估," 第145届国际音频工程学会大会,2018年10月
对于可微分环境(如作为损失函数的一部分)的使用,有以下实现:
audiotools
AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。
AI小说写作助手,一站式润色、改写、扩写
蛙蛙写作—国内先进的AI写作平台,涵盖小说、学术、社交媒体等多场景。提供续写、改写、润色等功能,助力创作者高效优化写作流程。界面简洁,功能全面,适合各类写作者提升内容品质和工作效率。
全能AI智能助手,随时解答生活与工作的多样问题
问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。
实时语音翻译/同声传译工具
Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。
一键生成PPT和Word,让学习生活更轻松
讯飞智文 是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。