python 调用pydub库函数 AudioSegment.from_file() 的程序打包的exe文件,运行中会闪黑框(命令框)解决方法

2022-09-22 11:37:35

突发奇想制作一块音频转文本软件,查阅资料后,发现pydub库有静默切割音频功能,但是在使用这个库的AudioSegment.from_file() 函数打包的exe文件运行过程中会闪黑框,苦苦寻找了好久,只找到了如何关闭运行开始时的黑框,但是好像没有人遇到过我这种运行过程中闪黑框的情况,然后我自己对这个库函数分析了一下,到底是什么原因导致的闪屏,在经过好几个小时的排除法后,想到了subprocess.Popen()函数会开启黑框,终于在经过苦苦挣扎过后,被我找到了。

解决方法,只需要在subprocess.Popen()函数参数中加入 shell=True, stdin=subprocess.PIPE,问题就解决了

p = subprocess.Popen(conversion_command, stdin=devnull, stdout=subprocess.PIPE, stderr=subprocess.PIPE)#原来内容
p = subprocess.Popen(conversion_command, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)#修改内容

这个库中调用了好几次subprocess.Popen()函数,都修改就成功了。

  • 作者:学习ing的码农
  • 原文链接:https://blog.csdn.net/qq_52162965/article/details/126053277
    更新时间:2022-09-22 11:37:35