快捷方式

torchaudio.save_with_torchcodec

torchaudio.save_with_torchcodec(uri: Union[str, PathLike], src: Tensor, sample_rate: int, channels_first: bool = True, format: Optional[str] = None, encoding: Optional[str] = None, bits_per_sample: Optional[int] = None, buffer_size: int = 4096, backend: Optional[str] = None, compression: Optional[Union[float, int]] = None) None[源代码]

使用 TorchCodec 的 AudioEncoder 将音频数据保存到文件。

注意

此函数支持与 save() 相同的 API,并在底层依赖 TorchCodec 的编码功能。它是为了方便而提供的,但我们建议您将代码移植到直接使用 torchcodecAudioEncoder 类以获得更好的性能:https://docs.pytorch.ac.cn/torchcodec/stable/generated/torchcodec.encoders.AudioEncoder。在 TorchAudio 2.9 中,save() 将依赖 save_with_torchcodec()。请注意,save() 的某些参数,如 formatencodingbits_per_samplebuffer_sizebackend,会被 save_with_torchcodec() 忽略。

此函数提供了一个基于 TorchCodec 的 torchaudio.save 的替代方案,具有相同的 API。TorchCodec 的 AudioEncoder 在底层使用 FFmpeg 提供高效编码。

参数
  • uri (类路径对象) – 保存音频文件的路径。文件扩展名决定格式。

  • src (torch.Tensor) – 要保存的音频数据。必须是范围在 [-1, 1] 内的 float32 值的 1D 或 2D 张量。如果是 2D,当 channels_first=True 时,形状应为 [通道, 时间];当 channels_first=False 时,形状应为 [时间, 通道]。

  • sample_rate (int) – 音频数据的采样率。

  • channels_first (bool, 可选) – 指示输入张量是否以通道为第一个维度。如果为 True,则期望 [通道, 时间];如果为 False,则期望 [时间, 通道]。默认值:True。

  • format (strNone, 可选) – 音频格式提示。TorchCodec 不使用(格式由文件扩展名确定)。如果提供,会发出警告。默认值:None。

  • encoding (strNone, 可选) – 音频编码。TorchCodec AudioEncoder 不完全支持。如果提供,会发出警告。默认值:None。

  • bits_per_sample (intNone, 可选) – 每样本位数。TorchCodec AudioEncoder 不直接支持。如果提供,会发出警告。默认值:None。

  • buffer_size (int, 可选) – TorchCodec AudioEncoder 不使用。为 API 兼容性提供。如果不是默认值,会发出警告。默认值:4096。

  • backend (strNone, 可选) – TorchCodec AudioEncoder 不使用。为 API 兼容性提供。如果提供,会发出警告。默认值:None。

  • compression (float, intNone, 可选) – 压缩级别或比特率。映射到 TorchCodec AudioEncoder 中的 bit_rate 参数。默认值:None。

引发

注意

  • TorchCodec AudioEncoder 期望 [-1, 1] 范围内的 float32 样本。

  • 某些参数(format, encoding, bits_per_sample, buffer_size, backend)未被 TorchCodec 使用,但为 API 兼容性而提供。

  • 输出格式由 uri 中的文件扩展名决定。

  • TorchCodec 在后台使用 FFmpeg 进行编码。

文档

访问全面的 PyTorch 开发者文档

查看文档

教程

为初学者和高级开发者提供深入的教程

查看教程

资源

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

查看资源