RVC-Project / Retrieval-based-Voice-Conversion-WebUI

Easily train a good VC model with voice data <= 10 mins!
MIT License
23.97k stars 3.55k forks source link

关于使用时在audio.py遇到的一些问题 #1916

Open WuYuZh17 opened 7 months ago

WuYuZh17 commented 7 months ago

1.报错ValueError: mode must be 'r', 'w', or None, got: rb,删除了audio.py中的rb和wb的b,不知道是否正确。 2.报错UnicodeDecodeError: 'gbk' codec can't decode byte 0xac in position 25: illegal multibyte sequence,修改环境变量为utf-8后出现UnicodeDecodeError: ‘utf-8’ codec can’t decode...,使用encoding会显示av.open不支持encoding参数。 导致该webUI无法正常运作,完成推理。 求解,谢谢!

WuYuZh17 commented 7 months ago

文件路径中没有中文,现在想知道是不是av库版本更新导致的?

fumiama commented 6 months ago

请尝试使用dev版本。

DaLongmao2 commented 6 months ago

你们解决了吗,怎么解决的。感谢

目前我把 b 删了,可以正常使用了,但是不知道会不会有什么别的异常,我目前没有发现,如果有人有更好的解决方案,请麻烦告知我,先谢过了

Koji-Huang commented 5 months ago

我用 Pycharm 追踪了半天,解决了

Koji-Huang commented 5 months ago

方法很简单: av.open(i, "r") 里面加一个 metadata_encoding='utf-8' 来指定编码格式就可以解决编码问题 还有并不是每一个 open 里的 rb 都要改为 r , 最下面的那个 with open(file, "rb") as f: 里的 rb 是不用改动的 av 不允许使用 rb 和 wb

DaLongmao2 commented 5 months ago

方法很简单: av.open(i, "r") 里面加一个metadata_encoding='utf-8' 来指定编码格式就可以解决编码问题 还有不是每一个开放里的 rb 到底要 r , 最下面的那个 with open(file, "rb") as f: 里的 rb 是不用右边的 av 不允许使用 rb 和 wb

OK感谢,我试一下

wangtiance commented 4 months ago

方法很简单: av.open(i, "r") 里面加一个 metadata_encoding='utf-8' 来指定编码格式就可以解决编码问题 还有并不是每一个 open 里的 rb 都要改为 r , 最下面的那个 with open(file, "rb") as f: 里的 rb 是不用改动的 av 不允许使用 rb 和 wb

是这样吗?inp = av.open(i, "rb", metadata_encoding='utf-8') 我改了之后还是报一样的错误: 2024-06-20 15:25:12 | WARNING | libav.wav | Discarding ID3 tags because more suitable tags were found. 2024-06-20 15:25:12 | WARNING | infer.modules.vc.modules | Traceback (most recent call last): File "D:\git\Voice_conversion\RVC1006Nvidia\infer\lib\audio.py", line 65, in load_audio audio2(f, out, "f32le", sr) File "D:\git\Voice_conversion\RVC1006Nvidia\infer\lib\audio.py", line 36, in audio2 inp = av.open(i, "rb", metadata_encoding='utf-8') File "av\container\core.pyx", line 401, in av.container.core.open File "av\container\input.pyx", line 86, in av.container.input.InputContainer.cinit File "av\utils.pyx", line 26, in av.utils.avdict_to_dict File "av\utils.pyx", line 14, in av.utils._decode UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa9 in position 26: invalid start byte

wangtiance commented 4 months ago

先换成librosa.load绕开这个问题了

Koji-Huang commented 4 months ago

我的那个方法针对的是没打补丁的版本, 你这个应该是打了补丁之后的? (对比了一下报错信息和源码, 是差不多的) 如果想折腾可以试试设置Windows10的默认编码为 UTF-8 或者这篇帖子 https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/issues/1776

先换成librosa.load绕开这个问题了