目录

Torchaudio

I/O (输入输出)

torchaudio顶级模块提供了以下功能,使 它很容易处理音频数据。

信息

获取音频文件的信号信息。

负荷

从源加载音频数据。

将音频数据保存到文件。

list_audio_backends

列出可用的后端

后端和 Dispatcher

解码和编码媒体是一个高度复杂的过程。因此,TorchAudio 依赖第三方库来执行这些操作。这些第三方 库称为 ,目前 TorchAudio 集成了 关注库。backend

有关如何启用后端的信息,请参阅安装

传统上, TorchAudio 在运行时全局设置其 I/O 后端 视情况而定。但是,此方法不允许应用程序 使用不同的后端,它不太适合大型代码库。

出于这些原因,在 v2.0 中,我们引入了一个 Dispatcher,这是一种允许 users 为每个函数调用选择一个后端。

启用调度程序模式后,所有 I/O 函数都接受额外的 keyward 参数 ,该参数指定所需的后端。如果指定了 backend 不可用,则函数调用将失败。backend

如果未明确选择后端,则函数将选择要使用给定的优先级顺序和库可用性的后端。

下表总结了后端。

优先权

后端

支持的操作系统

注意

1

FFmpeg

Linux、macOS、Windows

使用 检索支持的编解码器。

此后端支持各种协议,例如 HTTPS 和 MP4,以及类似文件的对象。

2

袜 队

Linux、macOS

使用 检索支持的编解码器。

此后端不支持类似文件的对象。

3

声音文件

Linux、macOS、Windows

有关支持的编解码器,请参阅官方文档

此后端支持类似文件的对象。

Dispatcher 迁移

我们正在迁移 I/O 函数以使用 Dispatcher 机制,并且此 引发多个更改,其中一些涉及向后兼容性破坏 更改,并要求用户更改其函数调用。

(计划的)更改如下。有关最新信息, 请参阅 https://github.com/pytorch/audio/issues/2950

  • 在 2.0 中,引入了音频 I/O 后端调度程序。 用户可以通过设置环境变量来选择使用 dispatcher 。TORCHAUDIO_USE_BACKEND_DISPATCHER=1

  • 在 2.1 中,disptcher 成为 I/O 的默认机制。

  • 在 2.2 中,删除了传统的全局后端机制。 Utility 函数并变为 no-op。get_audio_backend()set_audio_backend()

此外,我们从 libsox 后端中删除了类文件对象支持,因为 由 FFmpeg 后端更好地支持,并使构建过程更简单。 因此,从 2.1 开始,FFmpeg 和 Soundfile 是唯一支持 file-like 对象。

文档

访问 PyTorch 的全面开发人员文档

查看文档

教程

获取面向初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并解答您的问题

查看资源