调用预编译的可执行文件

时间:2015-07-20 08:14:26

标签: c++ multithreading qt ffmpeg exe

我正在研究一个在Intel Windows 8.1机器上使用Qt框架内的ffmpeg库的项目。我的应用程序使用QProcess调用ffmpeg.exe,其中包含一个完美运行的参数列表。我只是想知道将ffmpeg源与C ++代码一起使用并使用libav.h直接调用函数会更有效吗?

当我使用QProcess时,它会创建一个单独的线程,因此我的程序的其余部分不受进程的影响。如果我直接使用libav.h中的函数,我需要创建自己的QThread并运行该函数。

任何建议都会有所帮助。

史蒂夫

1 个答案:

答案 0 :(得分:0)

这是我的建议,首先我不知道是否直接链接ffmpeg源代码会要求你使用QThread,ffmpeg可能已经自己管理线程(这会很好),我也做不知道直接链接是否会在CPU和RAM方面更有效。 当然,它的不会更加高效;在外部进程或另一个线程中运行相同的代码在硬件资源方面没有那么不同。

除此之外,如果您正在寻找对屏幕上正在播放的内容的更好和更深入的控制,那么例如,如果直接链接,您认为您可能会获得一些有用的功能(如快进或放大缩小)然后它值得一试。

再见