47 lines
1.1 KiB
Python
47 lines
1.1 KiB
Python
import os
|
|
import mplayer
|
|
import subprocess
|
|
import time
|
|
|
|
|
|
class videoPlayer:
|
|
p = mplayer.Player()
|
|
|
|
def __init__(self):
|
|
os.environ["SDL_VIDEODRIVER"] = "fbcon"
|
|
os.environ["SDL_FBDEV"] = "/dev/fb1"
|
|
|
|
self.p = mplayer.Player(args=("-vo sdl"))
|
|
self.p.framedropping = 1
|
|
|
|
def play(self, oscAddr, filePath):
|
|
source = "".join(filePath)
|
|
print("play", source)
|
|
try:
|
|
self.p.loadfile(source)
|
|
except Exception as e:
|
|
print("could not load video")
|
|
print(e)
|
|
|
|
def togglePause(self, oscAddr=None, args=None):
|
|
self.p.pause()
|
|
print("togglePause")
|
|
|
|
def setPause(self, oscAddr, args):
|
|
print("pause", args)
|
|
if bool(args) != self.p.paused :
|
|
self.p.pause()
|
|
|
|
def stop(self, oscAddr=None, args=None):
|
|
self.p.pause()
|
|
time.sleep(0.5)
|
|
subprocess.run(["dd", "if=/dev/zero", "of=/dev/fb1"])
|
|
|
|
def setLoop(self, oscAddr, args):
|
|
print("loop", args)
|
|
self.p.loop = int(args)
|
|
|
|
def setVolume(self, oscAddr, args):
|
|
print("setVolume", args)
|
|
self.p.volume = float(args)
|