feat: use python-vlc to play a video

This commit is contained in:
Justin Lin
2024-03-14 13:16:52 +08:00
commit eb42e2bd25
4 changed files with 91 additions and 0 deletions

41
relay.py Normal file
View File

@@ -0,0 +1,41 @@
#! /usr/bin/python3
import RPi.GPIO as GPIO
from pathlib import Path
from omxplayer.player import OMXPlayer
import time
# Config those variables
v1 = Path('/home/pi/Videos/2.mp4')
v2 = Path('/home/pi/Videos/2.mp4')
PIN = 12
SWITCH_AT = 9*60 + 16
VOLUME = 1.5
def play():
print('play')
try:
player = OMXPlayer(v1, args=['--display=2'], dbus_name='org.mpris.MediaPlayer2.omxplayer1')
p2 = OMXPlayer(v2, args=['--display=7'], dbus_name='org.mpris.MediaPlayer2.omxplayer2')
LENGTH = player.duration()
player.set_volume(VOLUME)
time.sleep(SWITCH_AT)
GPIO.output(PIN, GPIO.LOW)
time.sleep(LENGTH - SWITCH_AT)
return True
except KeyboardInterrupt:
return False
finally:
GPIO.output(PIN, GPIO.HIGH)
player.quit()
p2.quit()
def main():
while play():
pass
GPIO.cleanup()
if __name__ == '__main__':
GPIO.setmode(GPIO.BOARD)
#GPIO.setwarnings(False)
GPIO.setup(PIN, GPIO.OUT, initial=GPIO.HIGH)
main()