使用omxplayer和dbus播放精美视频

时间:2015-01-30 21:44:41

标签: python dbus omxplayer

我正在尝试使用omxplayer创建一个Python程序来播放视频。我有一系列.mp4文件,它们将构成虚拟机器人的可视前端。我希望能够循环播放等待事情发生的事情。视频,然后当某些事情发生时(运动检测或某事),第二个视频将播放,循环视频将暂停。我希望新视频能够在暂停的视频之上播放。

我一直试图使用dbuscontrol.sh来控制它,但显然你不能用它来播放omxplayer的并发会话。我也试过dbuscontrolm.sh这是一个允许多次出现omxplayer的修改版本。

以下是我一直在尝试的一些代码的一个版本(我是Python初学者)。

#!/usr/bin/env python


import dbus
import subprocess
from subprocess import Popen
import time


def play_vid_wait_loop():
    command1 = 'omxplayer --win "100 100 500 500" --dbus_name "org.mpris.MediaPlayer2.omxplayer1" --layer 5 /home/pi/My_Projects/Hammerstein/Vid_Wait_Loop.mp4'
    Popen([command1], shell=True)
    subprocess.call(['dbuscontrolm.sh org.mpris.MediaPlayer2.omxplayer1 play'], shell=True)
    time.sleep(5)
    subprocess.call(['dbuscontrolm.sh org.mpris.MediaPlayer2.omxplayer1 stop'], shell=True)

def play_vid_recharge_power_supply():
    command2 = 'omxplayer --win "100 100 500 500" --dbus_name "org.mpris.MediaPlayer2.omxplayer2" --layer 6 /home/pi/My_Projects/Hammerstein/Vid_Recharge_Power_Supply.mp4'
    Popen([command2], shell=True)
    subprocess.call(['dbuscontrolm.sh org.mpris.MediaPlayer2.omxplayer2 play'], shell=True)
    time.sleep(5)
    subprocess.call(['dbuscontrolm.sh org.mpris.MediaPlayer2.omxplayer2 stop'], shell=True)

play_vid_wait_loop()
play_vid_recharge_power_supply()

0 个答案:

没有答案