我在 Linux 的 GTK3.0/C 中为 ffmpeg
(转换内容:视频 -> mp3)编写了一个非常简单的前端。为了生成 ffmpeg,我使用 g_spawn_async_with_pipes()。我认为这是在不让 GUI 卡住的情况下执行此类操作的正确方法 - 但事实确实如此。那么 - 我怎样才能防止它结冰 - 这样我就可以 f.e.显示微调器?
最佳答案
您可能需要添加类似“”的内容
while (gtk_events_pending ()) {
gtk_main_iteration_do (FALSE);
}
即让 GTK 处理待处理的事件(如绘制 UI)。 我想您正在使用 g_io_add_watch 处理 ffmpeg 的输出 或类似的。
关于c - GTK3.0 GUI 在使用 "g_spawn_async_with_pipes()"时卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6800270/