python中使用playsound函数是出现以下报错:

    Error 263 for command:open D:/Python_code/Chatting_robot/py1/mp3/hello.mp3指定的设备未打开,或不被 MCI 所识别。Error 263 for command:close D:/Python_code/Chatting_robot/py1/mp3/hello.mp3指定的设备未打开,或不被 MCI 所识别。
Failed to close the file: D:/Python_code/Chatting_robot/py1/mp3/hello.mp3
Traceback (most recent call last):File "<stdin>", line 1, in <module>File "C:\Users\Hasee\AppData\Local\Programs\Python\Python310\lib\site-packages\playsound.py", line 72, in _playsoundWinwinCommand(u'open {}'.format(sound))File "C:\Users\Hasee\AppData\Local\Programs\Python\Python310\lib\site-packages\playsound.py", line 64, in winCommandraise PlaysoundException(exceptionMessage)
playsound.PlaysoundException:Error 263 for command:open D:/Python_code/Chatting_robot/py1/mp3/hello.mp3指定的设备未打开,或不被 MCI 所识别。

看中间报错文件位置为:

C:\Users\Hasee\AppData\Local\Programs\Python\Python310\lib\site-packages\playsound.py

在电脑中找到文件并打开
找到报错的64行左右,会看到如下一个函数:

def winCommand(*command):bufLen = 600buf = c_buffer(bufLen)command = ' '.join(command) .encode('utf-16')errorCode = int(windll.winmm.mciSendStringW(command, buf, bufLen - 1, 0))  # use widestring version of the functionif errorCode:errorBuffer = c_buffer(bufLen)windll.winmm.mciGetErrorStringW(errorCode, errorBuffer, bufLen - 1)  # use widestring version of the functionexceptionMessage = ('\n    Error ' + str(errorCode) + ' for command:''\n        ' + command.decode('utf-16') +'\n    ' + errorBuffer.raw.decode('utf-16').rstrip('\0'))logger.error(exceptionMessage)raise PlaysoundException(exceptionMessage)return buf.value

因为python3默认的是utf-8的编码方式,而不是utf-16.
找到如上代码第4行

 command = ' '.join(command) .encode('utf-16')

注释掉:encode(‘utf-16’)

command = ' '.join(command)       #.encode('utf-16')

最终如下:

所以这个报错不是声卡的问题,连续报错了几天,突发奇想想到了去看一眼playsound的源码为什么报错,结果一眼看到了它的编码方式竟然是utf-16,没想到问题出在这,改完就可以了。

关于python使用playsound播放音频:指定的设备未打开,或不被 MCI 所识别。相关推荐

  1. Error 263 for command: close audio.mp3 指定的设备未打开,或不被 MCI 所识别。 Failed to close the file:

    用python的模块playsound播放mp3音频的时候出现如题目一样的报错,下面说一下解决办法: 办法有两种,大家可以根据需要选择合适的解决办法尝试解决可能会遇到的这种问题. 1.修改源码: pl ...

  2. 解决Python使用playsound播放音频报错:在用引号括起的字符串不能指定额外的字符

    结果 将源码中command = ' '.join(command).encode('utf-16')变为command = ' '.join(command)即可 原因 windows的命令不能使用 ...

  3. python 播放声音_python播放音频

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 音频预处理 这一讲主要介绍些音频基本处理方式,为接下来的语音识别打基础. 三种播 ...

  4. python 循环播放音乐_pyaudio:基于pyaudio利用Python编程实现播放音频mp3、wav等格式文件...

    基于pyaudio利用Python编程实现播放音频mp3.wav等格式文件 T1.while循环输出数据流的方法def play(): chunk=1024 #2014kb wf=wave.open( ...

  5. pyaudio:基于pyaudio利用Python编程实现播放音频mp3、wav等格式文件

    基于pyaudio利用Python编程实现播放音频mp3.wav等格式文件 目录 输出结果 实现代码 输出结果 实现代码 T1.while循环输出数据流的方法 def play():chunk=102 ...

  6. SDL播放音频的时候发现SDL_OpenAudioDevice打开一直失败

    1:在使用SDL播放音频的时候发现SDL_OpenAudioDevice打开一直失败,导致SDL不能进入回调函数. 使用SDL_GetError()打印错误提示XAudio2: XAudio2Crea ...

  7. Python使用playsound播放时发生异常

    多线程使用playsound进行播放发生异常 原因: 在于playsound包只进行了文件的播放,而未对播放的资源进行释放,当采用多线程进行播放时就会产生错误. 解决方式:使用pygame 安装:pi ...

  8. 按键精灵PlaySound 播放音频,没有声音解决方法

    1.禁用 麦克风 2.启用立体混声 转载于:https://www.cnblogs.com/limi2019/articles/11049913.html

  9. python中文件读取失败_Python IOError:文件未打开以进行读取

    我正在尝试制作一个程序,更新csv行的0-9范围,这将是ID号.因此,在搜索id号之后,它会提示用户输入替换值,正如您在下面代码的replace部分中看到的那样.因为csv是逗号分隔的,所以我用逗号连 ...

最新文章

  1. GoogLeNet学习
  2. 软件开发模式:瀑布与敏捷
  3. java学习(73):GUL网格布局管理器
  4. Linux文本记录中文是?,linux操作手冊(中文).doc
  5. 各种排序总结(三)堆排序
  6. python命令行模式怎么输入_python获得命令行输入的参数的两种方式
  7. java 对象与二进制互转
  8. linux arm寄存器,ARM寄存器总结
  9. RedHat 设置IP、网关、DNS
  10. c语言函数字符传送,C语言中send()函数和sendto()函数的使用方法
  11. 浏览器兼容性问题及常见的解决方法
  12. 郭天祥 十天搞定单片机 (2)流水灯+蜂鸣器+调试
  13. 推荐几个下载英文原版电子书的网站-PDF
  14. 鸿蒙DevEco Studio3.0——HelloWorld开发及模拟器运行
  15. 益聚星荣:B站做支付,虽迟但到
  16. linux 中文ssid 显示,【两招解决网络设置 支持中文SSID】
  17. coc机器人苹果_coc机器人
  18. anacnda 子环境管理
  19. 【图像去雾】基于matlab颜色衰减先验图像去雾【含Matlab源码 2036期】
  20. 顺序表基本操作(完整)

热门文章

  1. 软考高级-系统架构师-软件工程练习题
  2. 算法分析:方阵的主对角线之上称为“上三角”。
  3. html input跳转页面,html input type=button 页面跳转
  4. goip设备的特点_架设通讯网络设备为境外诈骗集团服务 3男子被田东警方抓获...
  5. 关于OSCE 的安装部署视频教程
  6. 2023年黑马Java入门到精通教程--Java基础入门
  7. Matlab R2022a安装后出现“License Manager Error -8”(已解决)
  8. 定积分之积分上限函数分段问题
  9. 关于su和sudo以及vi sudo 的权限讨论
  10. 免费的简历模板网站推荐