从Python脚本运行xdotool movewindow

0 投票
1 回答
1148 浏览
提问于 2025-04-18 17:45

我正在写一个Python脚本,用ffplay来播放电影,然后把ffplay的窗口移动到屏幕上的一个特定位置。

我参考的脚本可以在这里找到 - http://code.activestate.com/recipes/577376-simple-way-to-execute-multiple-process-in-parallel/

唯一的不同是,我把底部的命令数组改成了

commands = [
    ['xdotool', 'search', '--name', 'Goodfellas', 'windowmove', '480', '200'],
    ['ffplay', '-x', '320', '-y', '180', '-autoexit', '/data/media/Vidoes/Movies/Goodfellas.mp4']
]

视频播放得很好,但窗口却没有移动位置。

为了测试这个脚本是否真的在循环执行所有命令,我添加了这个命令

['xdotool', 'mousemove', '180', '180'],

结果鼠标确实会移动到我屏幕上的位置180, 180。

也许是因为ffplay需要一点时间来加载,当执行movewindow命令时,屏幕上还没有叫Goodfellas的窗口。

1 个回答

0

如果你只在用一个窗口或者一个ffplay实例,那就试试用

 ['xdotool', 'search', '--class', 'ffplay', 'windowmove', '480', '200']

来代替吧。

撰写回答