使用 python 进行实时音频处理的最佳工具

问题描述 投票:0回答:1

我目前正在尝试使用 Apache Spark 流式处理 (pySpark) 实时处理 .wav 文件,但是我遇到了一些问题,因为我使用 pyDub 和 Librosa 处理音频,这个库使用 Audisegment 对象和 numpy 数组,但是Apache Spark 不适用于这些类型的变量,所以我目前正在考虑是否还有其他可能性,例如 Apache Flink?或任何其他工具?

apache-spark real-time audio-processing
1个回答
0
投票

有几个库和工具可用于在 Python 中进行实时音频处理。尽管 Apache Spark 和 Flink 在分布式数据处理方面功能强大,但它们可能不是实时音频处理的最佳选择。以下是您可以考虑的一些替代库和工具:

  1. PyAudio:PyAudio 是一个跨平台的音频 I/O 库,它为 PortAudio 提供 Python 绑定,PortAudio 是一个用于音频流的低级 C 库。使用 PyAudio,您可以通过使用流读写音频数据来实时处理音频。它支持各种音频格式和设备。

  2. SoundDevice:SoundDevice 是另一个用于实时音频处理的 Python 库,它构建在 PortAudio C 库之上。它为音频 I/O 提供易于使用的接口,支持各种音频格式,并可在多个平台上使用。

  3. Real-Time Audio I/O with Python and Numpy:本教程演示了如何利用 PyAudio 库使用 Python 和 Numpy 处理实时音频。它提供了一个使用 Python 进行实时音频处理的简单示例。

  4. TimeSide:TimeSide 是一个开源音频处理和可视化框架。它提供了一组用于音频处理和分析的 Python 组件,以及 HTML5 交互式可视化。 TimeSide可用于实时音频处理,支持多种音频格式

  5. Essentia:Essentia 是一个开源 C++ 库,用于使用 Python 绑定进行音频分析和处理。它提供了广泛的音频处理算法,包括特征提取、音频指纹识别等。虽然它不是专门为实时处理而设计的,但它的一些算法可以用于实时应用程序。

考虑评估这些库和工具,以找到最适合您特定实时音频处理要求的库和工具。

© www.soinside.com 2019 - 2024. All rights reserved.