使用MPlayer和PyGTK动态调整大小

时间:2010-03-10 14:39:52

标签: python gtk pygtk mplayer

我在python和pygtk中写了一段代码,用于在gui中嵌入mplayer。 我假设我使用GtkSocket和mplayer的slave模式和-wid选项。

但我有一个问题,当我的GTK窗口的大小小于我的流时,流似乎被裁剪。当我的窗口大小比我的流大时,流显示在嵌入MPlayer的小部件的中心。 (一个gtk.Frame,但我也尝试使用gtk.DrawingArea) 我想知道如何根据窗口的大小动态调整流的大小。 我不想使用Glade或任何GUI构建器。 在此先感谢您的帮助,请原谅我可怜的英语。

2 个答案:

答案 0 :(得分:1)

您需要告诉mplayer根据窗口大小缩放视频。这可以在命令行(-zoom)或配置文件(zoom = 1)中完成。

答案 1 :(得分:0)

您需要连接到您嵌入MPlayer的任何小部件的'size-allocate'信号。一旦您知道小部件的新大小,例如200x300,发送命令

set_property width 300
set_property height 200

以奴隶模式运行到MPlayer。

(有关从模式命令的列表,请参阅http://www.mplayerhq.hu/DOCS/tech/slave.txt。)