解决调用ffmpeg.exe时出现的CMD窗口显示问题
在做音频截取时,调用了第三方软件ffmpeg.exe, 将生成的dll发给UI组时出现一个严重的问题,一旦使用ffmpeg.exe,就会出现cmd窗口,导致UI组的界面线程无法使用,最终会出现crash情况。因此需要解决这个问题。在谷歌上找到一个方法。
https://superuser.com/questions/555289/is-there-a-way-to-disable-or-hide-output-thrown-by-ffmpeg
我使用了第一个方法,在调用ffmpeg.exe时参数后面添加 “-loglevel quiet”,解决了问题。
此外,如果调用ffmpeg.exe时会生成音频文件的话,第二次生成文件会弹出窗口来确认是否要覆盖已生成的文件,需要用户去输入“y”或者“n”,如果不想手动交互,可以添加“-y”。
目前发现一个问题,cmd出不出来是一件事,出来显不显示内容是一件事,我发现我只解决了出来不显示内容,没有解决让cmd不出来这个本质问题。这个或许和ffmpeg内部调用cmd有关,需要继续研究找办法。