解决torchaudio.load报错 (Couldn't find appropriate backend to handle uri )

解决torchaudio.load报错 (Couldn't find appropriate backend to handle uri )

  1. 问题描述(报错信息):

    问题:Traceback (most recent call last):
     File "resample.py", line 43, in <module>
       resample_use_cuda()
     File "resample.py", line 24, in resample_use_cuda
       y, sr = torchaudio.load(file_path)
     File "I:\aconda\envs\torch_clear\lib\site-packages\torchaudio\_backend\utils.py", line 204, in load
       backend = dispatcher(uri, format, backend)
     File "I:\aconda\envs\torch_clear\lib\site-packages\torchaudio\_backend\utils.py", line 116, in dispatcher
       raise RuntimeError(f"Couldn't find appropriate backend to handle uri {uri} and format {format}.")
    RuntimeError: Couldn't find appropriate backend to handle uri test_music\Anytime_Anywhere.mp3 and format None.
  2. 问题复现

    • 在一个很新的 torch环境进行之前重采样那篇文章程序的测试发现了此问题,就只有torch及其依赖

    • 仅在使用 torchaudio库做导入操作 load 时出现问题

  3. 解决:

    看报错信息分析,可能是环境中缺少了处理音频的后端库导致torchaudio无法直接导入【好坑啊,为什么安装的时候不能顺便安装】

    使用以下方法应该可以解决:

    • 自用方法:

      pip install librosa soundfile

    • 其他可能的方法:

      #安装ffmepg :

      pip install ffmpeg

  4. 可能导致的其他情况

    • 路径是否正确?

    • 尝试一下mp3、wav这些主流格式是否load success

    • torchaudio是否正确安装?一般这个是安装torch-gpu自带的,cpu的torch我不太清楚

posted @ 2024-08-06 14:02  io_T_T  阅读(479)  评论(0编辑  收藏  举报