为linux CLI创建GUI

时间:2009-08-19 10:20:54

标签: user-interface qt command-line

我是计算机工程专业的最后一年。作为我的最后一年项目,我决定为linux创建一个多媒体编码器,可能是跨平台的。

我的问题是:如何为ffmpeg创建GUI(即如何从GUI传递命令行参数)?

我正在尝试使用QT进行跨平台开发。

3 个答案:

答案 0 :(得分:3)

Tcl / Tk旨在将脚本嵌入到C程序中,并且可能是使用该语言中最简单的语言。它有几种机制来进行这种嵌入。 API使用argv很容易将其改进为命令行C程序,因为它要求将本地Tcl数据结构转换为char**和从{{1}}转换。它还有一个名为Tk的GUI工具包,它有点基本但很容易使用,而且比你想象的要灵活得多。

在您的情况下,您可能在Tcl中使用的两种机制是嵌入,您只需使用从Tcl程序传递的参数调用main。另一种方法是使用适当的命令行参数对进程进行分叉,并等待它完成。使用Tcl都很容易实现。

我不知道任何针对Tcl的QT绑定,但它非常便携,而且Tk可以主题化,因此它看起来不像是1990年的老式Motif应用程序。

Se this posting有关该主题的更深入讨论。

答案 1 :(得分:2)

您想在应用程序中调用ffmpeg吗?如果是这样,请查看QProcess。您甚至可以从ffmpeg进程捕获stdout和stderr流,并使用该信息(例如)驱动进度条或显示错误。

如果你真的想在另一个GUI应用程序中嵌入一个GUI应用程序,那就更难了,尤其是以独立于平台的方式。

答案 2 :(得分:0)

红帽人员使用PythonpyGTK编写他们的CLI GUI。

博客帖子:http://www.oreillynet.com/onlamp/blog/2008/02/red_hats_emerging_technology_g.html