ffmpeg 播放视频 暂停
ffmpeg 播放视频 暂停
·
目录
暂停后,画面最小化了,后面恢复也不正常
import subprocess
import time
import pyautogui
import os
if __name__ == '__main__':
mp4_path = "/home/user/Videos/seg_demo/b12_sam2_s.mp4" # 修改为Linux路径
# 启动 ffplay 播放视频
cmd = ['ffplay', '-autoexit', mp4_path]
p = subprocess.Popen(cmd)
time.sleep(5) # 等待 ffplay 窗口启动稳定
# 确保焦点在 ffplay 窗口上(手动或使用 wmctrl)
# 自动聚焦命令示例(需安装 wmctrl)
os.system("wmctrl -a ffplay")
# 暂停播放
pyautogui.press('space')
print("暂停播放 3 秒")
time.sleep(3)
# 恢复播放
pyautogui.press('space')
print("恢复播放")
p.wait()
暂停和恢复正常了:
import subprocess
import time
import pyautogui
import os
import signal
if __name__ == '__main__':
mp4_path = r'/home/yklele/video/f7.mp4'
# 使用更好的 ffplay 参数
cmd = ['ffplay', mp4_path, '-fs', # 全屏
'-autoexit', # 播放完毕自动退出
'-noborder', # 无边框
'-alwaysontop', # 始终置顶
'-window_title', 'Video Player' # 设置窗口标题
]
p = subprocess.Popen(cmd)
time.sleep(3) # 等待 ffplay 窗口启动稳定
# 设置窗口标题便于查找
os.system("wmctrl -r :ACTIVE: -N 'Video Player'")
# 暂停播放
pyautogui.press('space')
print("暂停播放 3 秒")
time.sleep(3)
# 恢复播放
pyautogui.press('space')
print("恢复播放")
p.wait()
信号让暂停和恢复正常:
import subprocess
import time
import os
import signal
def control_ffplay_with_signals():
mp4_path = r'/home/yklele/video/f7.mp4'
cmd = ['ffplay', mp4_path, '-fs', '-autoexit', '-window_title', 'Video Player']
p = subprocess.Popen(cmd)
time.sleep(3)
# 使用信号暂停(SIGSTOP)
os.kill(p.pid, signal.SIGSTOP)
print("暂停播放 3 秒")
time.sleep(3)
# 使用信号恢复(SIGCONT)
os.kill(p.pid, signal.SIGCONT)
print("恢复播放")
p.wait()
if __name__ == '__main__':
control_ffplay_with_signals()
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)