我是一名计算机工程专业的大四学生。作为我最后一年的项目,我决定为linux创建一个多媒体编码器,可能是跨平台的。
我的问题是:如何为ffmpeg创建GUI (即如何从GUI传递命令行参数)?
我正在尝试使用QT进行跨平台开发。
发布于 2009-08-19 10:39:14
Tcl/Tk被设计为将脚本嵌入到C程序中,并且可能是所有语言中最容易做到这一点的语言。它有几种实现这种嵌入的机制。该应用编程接口使得使用argv
将其改造成命令行C程序变得非常容易,因为它调用了本地Tcl数据结构与char**
之间的相互转换。它还有一个名为Tk的GUI工具包,它有些基础,但非常易于使用,而且比您想象的要灵活得多。
在您的示例中,您可能会在Tcl中使用的两种机制是嵌入,您只需使用从Tcl程序传递的参数调用main。另一种方法是使用适当的命令行参数派生进程,并等待其完成。使用Tcl都很容易完成这两个任务。
我不知道Tcl有任何QT绑定,但它非常便携,而且Tk现在可以作为主题,所以它看起来不像是1990年的Motif应用程序。
Se this posting获取该主题的更深入的讨论。
发布于 2009-08-19 10:57:06
是否要从应用程序中调用ffmpeg?如果是这样的话,看看QProcess。您甚至可以从ffmpeg进程捕获stdout和stderr流,并使用该信息来(例如)驱动进度条或显示错误。
如果您实际上想要将一个GUI应用程序嵌入到另一个GUI应用程序中,则会困难得多,特别是在独立于平台的方式下。
发布于 2009-08-19 10:30:40
Red的人使用Python和pyGTK来编写他们的CLI。
博客发布:http://www.oreillynet.com/onlamp/blog/2008/02/red_hats_emerging_technology_g.html
https://stackoverflow.com/questions/1298965
复制相似问题