playsound调用二进制生成的.wav文件提示UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position 0: inv
时间: 2024-09-03 10:01:22 浏览: 52
VC 使用PlaySound播放WAV文件.rar
当你尝试通过`playsound`库来播放一个包含二进制数据(如`.wav`文件)时,如果遇到`UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position 0: invalid continuation byte`错误,这通常是因为你在处理文件内容时误用了文本编码(如UTF-8),而该文件实际上是二进制格式,不应该以文本方式进行解码。
解决这个问题,你需要确保正确读取二进制文件。在Python中,你可以使用`rb`模式打开文件,而不是默认的`r`模式(文本模式)。例如:
```python
import playsound
# 使用二进制模式打开文件
with open('your_file.wav', 'rb') as binary_file:
# 调用playsound播放二进制数据
playsound.playsound(binary_file)
```
在这个例子中,`binary_file`会作为二进制数据传递给`playsound.playsound()`,无需先将其转换为字符串。
阅读全文