我是计算机工程专业的最后一年。作为我的最后一年项目,我决定为linux创建一个多媒体编码器,可能是跨平台的。
我的问题是:如何为ffmpeg创建GUI(即如何从GUI传递命令行参数)?
我正在尝试使用QT进行跨平台开发。
答案 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)
红帽人员使用Python和pyGTK编写他们的CLI GUI。
博客帖子:http://www.oreillynet.com/onlamp/blog/2008/02/red_hats_emerging_technology_g.html