mplayer嵌入窗口的刷新为什么这么慢,GUI高手进
mplayer有个参数是-wid
可以将mplayer嵌入到某个窗口里
自己写了个简单的GTK窗口
里头放了一个da = gtk_drawing_area_new()
在da播放是没问题
但是屏幕刷新很闪(播放高清电影时)
把gtk_drawing_area_new()换成gtk_socket_new()也是不行
gnome-mplayer这个播放器也是用这种方式调用mplayer来播放
但是它的屏幕就不闪烁
看了半天代码也没看明白
请教高手怎么解决这个问题?
代码大概看起来是这个样子
- #include <stdlib.h>
- #include <gtk/gtk.h>
- int main( int argc, char *argv[] )
- {
- GtkWidget *window;
- GtkWidget *vbox;
- GtkWidget *socket;
- gtk_init (&argc, &argv);
- window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- //gtk_window_set_policy(GTK_WINDOW(window), FALSE, FALSE, TRUE);
- gtk_widget_set_size_request(window, 80, 40);
- gtk_window_fullscreen(GTK_WINDOW(window));
- gtk_window_set_decorated(GTK_WINDOW(window), FALSE);
- socket = gtk_socket_new();
- gtk_widget_set_size_request(socket, 1024, 768);
- gtk_widget_show (socket);
- gtk_container_add (GTK_CONTAINER (window), socket);
- gtk_widget_show (window);
- g_message("socket_id=%dn", gtk_socket_get_id(socket));
- gtk_main ();
- return 0;
- }
复制代码
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
关掉DOUBLE BUFFER试试。
GTK_WIDGET_UNSET_FLASG (widget, GTK_WIDGET_DOUBLE_BUFFERED);
懒的抓图啦
呵呵
其实就是嵌入到另外一个窗口里
比如在Firefox里播放电影
不懂gui,就想知道能嵌入到根窗口中吗? 那样播放起来是个什么样子? 能否贴个抓图?