def play(): global player if player: player.quit() filename = get_top() if mode == TOP20_MODE else get_random() episode = filename.replace('.mp4', '').replace('.mkv', '').split(' - ') color = TERM_COLORS.RANDOM isTop = '' # render top place if any if episode[0] in top_episode_list: isTop = 'Top# ' + str(20 - top_episode_list.index(episode[0])) + ' : ' color = TERM_COLORS.TOP20 print("\n\n\n Playing...") print(color + (Figlet(font=FONTS.SEASON, width=LINE_LENGTH) ).renderText(isTop + 's' + episode[0].replace('x', ' e')) + TERM_COLORS.ENDC + "\r") print(TERM_COLORS.TITLE + (Figlet(font=FONTS.TITLE, width=LINE_LENGTH) ).renderText(episode[1].replace('ü', 'u').replace('ú', 'u').replace( 'é', 'e').replace('á', 'a').replace('í', 'i').replace( 'ó', 'o').replace('ñ', 'n')) + TERM_COLORS.ENDC) player = OMXPlayer(Path(DIRECTORY + filename)) player.set_aspect_mode('fill')
def playVideo(video, player_log): if Path(video.path).is_file(): player = OMXPlayer(video.path, dbus_name='org.mpris.MediaPlayer2.omxplayer1', args=['--loop']) player.playEvent += lambda _: player_log.info("Play") player.pauseEvent += lambda _: player_log.info("Pause") player.stopEvent += lambda _: player_log.info("Stop") player.hide_video() player.set_position(video.start) player.set_volume(video.volume) if video.crop != None: player.set_video_crop(video.crop[0], video.crop[1], video.crop[2], video.crop[3]) player.set_aspect_mode(video.aspect) player.show_video() player.play() return player else: return None
def _show_video(self, video_uri, time_window, touch_enabled, text): pygame.display.flip() t_start = time.time() running = True try: player = OMXPlayer(video_uri) player.set_aspect_mode("stretch") while not player.is_playing(): time.sleep(0.1) except Exception as e: raise Exception("Video not loaded. Error is: " + str(e)) while time.time() - t_start < time_window and running: for event in pygame.event.get(): if event.type == pygame.MOUSEBUTTONDOWN and touch_enabled: running = False player.quit() break try: if not player.is_playing(): running = False except Exception as e: running = False try: if player.is_playing(): player.quit() except Exception as e: pass self._show_black() return {'reaction_time': time.time() - t_start}
def playMedia(path="../tests/media/test_media_1.mp4", duration=0, position=0): player = OMXPlayer(path, args=["--no-osd"]) player.set_aspect_mode("fill") if position > 0: player.set_position(position) #player.duration() # this only works if this line is here if duration == 0: duration = player.duration() - position player.play() time.sleep(duration) player.quit()
def playMedia(path="../tests/media/test_media_1.mp4", duration=0, position=0): player = OMXPlayer(path, args=["--no-osd"]) player.set_aspect_mode("fill") if position > 0: player.set_position(position) #player.duration() # this only works if this line is here if duration == 0: duration = player.duration() - position player.play() time.sleep(duration) player.quit()
def initPlayer(self, video, dbusName, log): player = OMXPlayer(video.path, dbus_name=dbusName, args=['--loop']) player.hide_video() player.pause() player.set_position(video.start) player.set_volume(video.volume) player.set_aspect_mode(video.aspect) player.active = False return player
def play_video(): player = OMXPlayer('video.mp4', dbus_name='org.mpris.MediaPlayer2.omxplayer1', args=['--loop', '--no-osd']) sleep(2.5) player.set_position(5) player.pause() sleep(2) player.set_aspect_mode('stretch') #player.set_fullscreen() # player.set_video_pos(0, 0, 200, 200) player.play() return player
def video_loop(master): video_count = 0 width = master.winfo_screenwidth() height = master.winfo_screenheight() while True: VIDEO_PATH = Path(my_videos[video_count]) player = OMXPlayer(VIDEO_PATH) player.set_video_pos(width * 0.162, height * 0.147, width * 0.674, height * 0.833) player.set_aspect_mode('fill') sleep(player.duration()) player.quit() video_count = video_count + 1 if video_count < len( my_videos) - 1 else 0
from time import sleep import logging logging.basicConfig(level=logging.INFO) VIDEO_1_PATH = "../tests/media/test_media_1.mp4" player_log = logging.getLogger("Player 1") player = OMXPlayer(VIDEO_1_PATH, dbus_name='org.mpris.MediaPlayer2.omxplayer1') player.playEvent += lambda _: player_log.info("Play") player.pauseEvent += lambda _: player_log.info("Pause") player.stopEvent += lambda _: player_log.info("Stop") # it takes about this long for omxplayer to warm up and start displaying a picture on a rpi3 sleep(2.5) player.set_position(5) player.pause() sleep(2) player.set_aspect_mode('stretch') player.set_video_pos(0, 0, 200, 200) player.play() sleep(5) player.quit()
def playVideo(fileName,loop): print '*****************************************************************',fileName #print "Loop Value==>",loop for iteration in range(int(loop)): global lastLogDetails currentLogDetails = [] currentLogDetails.append(fileName) currentLogDetails.append(datetime.datetime.now().strftime("%I:%M:%S %p")) '''if (config.checkInternet()): playlistScheduling.postData([currentLogDetails,lastLogDetails]) else: pass''' logging.info(currentLogDetails) lastLogDetails = [] if('https://' in fileName or 'http://' in fileName): try: print ("Going To Play HTTP:") os.system('pkill feh') os.system('killall omxplayer.bin') txt = 'timeout ' + str(30)+' chromium-browser -incognito -kiosk --disable-infobars --no-sandbox ' + fileName #print "Finla URL$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$",txt os.system(txt) #Add Log Details break except Exception as e: logging.info('Web Page Error==>' + str(e)) pass elif('.mp4' in fileName): try: print "going to play" os.system('pkill feh') #time.sleep(3) player = OMXPlayer(addsPath + fileName) player.set_aspect_mode('stretch') #timeElapsed, faces = captureImage() #time to run add duration = ml.getDuration(addsPath + fileName) if (config.checkInternet()): playlistScheduling.postData([currentLogDetails,lastLogDetails]) else: pass time.sleep(duration) # - timeElapsed ) print "player quit" player.quit() currentLogDetails.append(datetime.datetime.now().strftime("%I:%M:%S %p")) faces = 0 currentLogDetails.append(faces) #print currentLogDetails logging.info(currentLogDetails) createLog([currentLogDetails]) lastLogDetails = list(currentLogDetails) os.system('killall omxplayer.bin') except Exception as e: logging.info('OMX Player Error' + str(e)) faces = 0 pass #return elif('.jpg' in fileName or '.jpeg' in fileName or '.png' in fileName): try: os.system('('"feh -Z -F -Y " + addsPath + fileName + '&)')# + '&&(sleep ' + str(loop) + ')') faces = 0 time.sleep(2) killFeh() #os.system('pkill feh') if (config.checkInternet()): playlistScheduling.postData([currentLogDetails,lastLogDetails]) else: pass time.sleep(int(loop) - 2) currentLogDetails.append(datetime.datetime.now().strftime("%I:%M:%S %p")) currentLogDetails.append(faces) #print currentLogDetails logging.info(currentLogDetails) createLog([currentLogDetails]) lastLogDetails = list(currentLogDetails) break except Exception as e: logging.info('Feh Error==>' + str(e)) pass elif('.gif' in fileName): try: os.system('pkill feh') os.system('killall omxplayer.bin') os.system("mplayer -fs -loop "+ str(loop) + " " + addsPath + fileName) #Add Log Details break except Exception as e: logging.info('Gif Player Error==>' + str(e)) pass """ elif('https://' in fileName or 'http://' in fileName): try: print ("Going To Play HTTP:") os.system('pkill feh') os.system('killall omxplayer.bin') os.system('timeout 20 chromium-browser -kiosk ' + fileName) #Add Log Details break except Exception as e: logging.info('Web Page Error==>' + str(e)) pass """ """ try: print "going to play" os.system('pkill feh') except: pass """ #print "Going to update !! Video Player" #updatePlaylist() #time.sleep(2) return
from pathlib import Path from time import sleep import logging #import RPi.GPIO as GPIO #GPIO.setmode (GPIO.BOARD) #GPIO.setwarnings (False) VIDEO_PATH = "/home/pi/Desktop/elephant.mp4" player_log = logging.getLogger("Player1") intro = OMXPlayer(VIDEO_PATH, ['-o', 'local'], dbus_name='org.mpris.MediaPlayer2.omxplayer1') intro.playEvent += lambda _: player_log.info("Play") intro.pauseEvent += lambda _: player_log.info("Pause") intro.stopEvent += lambda _: player_log.info("Stop") sleep(2.5) intro.set_position(5) intro.pause() sleep(1) intro.set_aspect_mode("letterbox") intro.set_video_pos(50,100,1000,1000) intro.play() sleep(5) intro.quit()
PORT = 55555 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sock.bind((HOST, PORT)) sock.listen(1) conn, addr = sock.accept() vidPath = "raspi.avi" player_log = logging.getLogger("Player 1") player = OMXPlayer(vidPath, dbus_name='org.mpris.MediaPlayer2.omxplayer1') player.playEvent += lambda _: player_log.info("Play") player.pauseEvent += lambda _: player_log.info("Pause") player.stopEvent += lambda _: player_log.info("Stop") player.set_aspect_mode('stretch') player.set_video_pos(0, 0, 700, int(512 * 2.14)) sleep(10) if noCommMode: # for debugging player.set_position(120 * 60) # player.play() # sleep(1) # player.pause() sleep(20) player.set_position(130 * 60) # player.play() sleep(20) player.set_position(140 * 60) sleep(20)
player_log = logging.getLogger("Player 1") # Create player 1 player1 = OMXPlayer(videos[0].path, dbus_name='org.mpris.MediaPlayer2.omxplayer1', args=['--loop']) player1.playEvent += lambda _: player_log.info("Play") player1.pauseEvent += lambda _: player_log.info("Pause") player1.stopEvent += lambda _: player_log.info("Stop") player1.pause() player1.hide_video() player1.set_position(videos[0].start) player1.set_volume(videos[0].volume) player1.set_aspect_mode(videos[0].aspect) # Show player 1 player1.show_video() player1.play() sleep(5) # Load player 1 with video 2 player1.pause() player1.hide_video() player1.load(videos[1].path, pause=True) player1.set_position(videos[1].start) player1.set_volume(videos[1].volume) player1.set_aspect_mode(videos[1].aspect) player1.show_video()
] values = sorted(values, reverse=True) r = sum(values[:int(num_samples * 0.2)]) / int(num_samples * 0.2) #print (' Average audio intensity is r', int(r)) time.sleep(.1) stream.close() p.terminate() return r if (__name__ == '__main__'): VIDEO_PATH = "/home/pi/Desktop/rasto.mp4" player = OMXPlayer(VIDEO_PATH, args=['--no-osd', '--loop', '-b']) player.set_aspect_mode('fill') player.set_alpha(0) while (True): r = audio_int() # To measure your mic levels if r > 5000: alpha = alpha + 10 if alpha > 255: alpha = 255 else: alpha = alpha - 10 if alpha < 0: alpha = 0 print(alpha) player.set_alpha(alpha)
class ScreenMovie(LcarsScreen): def setup(self, all_sprites): ############ Start base screen ############# ### BASE_ui all_sprites.add(LcarsBackgroundImage(), layer=0) self.ui_screen_base = all_sprites.get_sprites_from_layer(0) all_sprites.add(LcarsTab(colours.COM2, 3, (50, 80)), layer=1) all_sprites.add(LcarsImageBlock(colours.BLUE5, pos=(50, 115), rectSize=(1688, 38)), layer=1) all_sprites.add(LcarsTab(colours.COM2, 4, (50, 1810)), layer=1) all_sprites.add(LcarsTab(colours.COM2, 1, (953, 50)), layer=1) all_sprites.add(LcarsImageBlock(colours.BLUE5, pos=(953, 1361), rectSize=(443, 77)), layer=1) all_sprites.add(LcarsBlockSmall( colours.BLUE6, (953, 116), "REWIND", self.rewHandler, textSize=.75, fontFace="assets/OpenSansCondensed-Bold.ttf"), layer=2) all_sprites.add(LcarsBlockSmall( colours.BLUE6, (953, 365), "PLAY", self.playHandler, textSize=.75, fontFace="assets/OpenSansCondensed-Bold.ttf"), layer=2) all_sprites.add(LcarsBlockSmall( colours.BLUE6, (953, 614), "F F", self.ffHandler, textSize=.75, fontFace="assets/OpenSansCondensed-Bold.ttf"), layer=2) all_sprites.add(LcarsBlockSmall( colours.BLUE6, (953, 863), "STOP", self.stopHandler, textSize=.75, fontFace="assets/OpenSansCondensed-Bold.ttf"), layer=2) all_sprites.add(LcarsBlockSmall( colours.BLUE6, (953, 1112), "BASE", self.mainHandler, textSize=.75, fontFace="assets/OpenSansCondensed-Bold.ttf"), layer=2) all_sprites.add(LcarsImageBlock(colours.BLUE5, pos=(953, 1361), rectSize=(443, 77)), layer=1) all_sprites.add(LcarsTab(colours.COM2, 2, (953, 1810)), layer=1) self.fileList = LcarsTextBlock(colours.BLUE6, (94, 365), self.dirlist(), rectSize=(1694, 781)) all_sprites.add(self.fileList, layer=3) all_sprites.add(LcarsImageBlock(colours.BLUE2, pos=(94, 116), text="01-3906", rectSize=(243, 100)), layer=3) all_sprites.add(LcarsImageBlock(colours.BLUE3, pos=(200, 116), text="96-4783", rectSize=(243, 500)), layer=3) all_sprites.add(LcarsImageBlock(colours.BLUE4, pos=(706, 116), text="32-6487", rectSize=(243, 163)), layer=3) all_sprites.add(LcarsElbow(colours.BLUE5, 0, (875, 116)), layer=3) all_sprites.add(LcarsImageBlock(colours.BLUE4, pos=(904, 398), rectSize=(1074, 43)), layer=3) all_sprites.add(LcarsImageBlock(colours.BLUE3, pos=(875, 1478), rectSize=(44, 72)), layer=3) all_sprites.add(LcarsElbow(colours.BLUE5, 3, (875, 1528)), layer=3) self.file_address = LcarsText( colours.BLACK, (900, 450), "NO MEDIA SELECTED", textSize=.75, fontFace="assets/OpenSansCondensed-Bold.ttf") all_sprites.add(self.file_address, layer=3) self.list_block = all_sprites.get_sprites_from_layer(3) #self.VIDEO_1_PATH = "./assets/video/LittleShopofHorrors1960Color.mp4" ### sound effects self.beep1 = Sound("assets/audio/panel/201.wav") self.lastClockUpdate = 0 #Sound("assets/audio/panel/220.wav").play() ############ End base screen ############# def dirlist(self, dirPath='./assets/video'): #os.scandir(dirPath) file_names = [] for item in os.scandir(dirPath): if item.is_file() or item.is_dir(): file_names.append(item.name) return file_names def update(self, screenSurface, fpsClock): if pygame.time.get_ticks() - self.lastClockUpdate > 500: if self.fileList.visible == True: if self.fileList.get_state() == None: self.file_address.setText("NO MEDIA SELECTED") else: self.file_address.setText(self.fileList.get_state()) self.lastClockUpdate = pygame.time.get_ticks() LcarsScreen.update(self, screenSurface, fpsClock) def handleEvents(self, event, fpsClock): if event.type == pygame.MOUSEBUTTONDOWN: self.beep1.play() if event.type == pygame.MOUSEBUTTONUP: return False def playHandler(self, item, event, clock): try: self.player.play_pause() except: try: self.VIDEO_1_PATH = './assets/video/' + self.fileList.get_state( ) self.player = OMXPlayer( self.VIDEO_1_PATH, dbus_name='org.mpris.MediaPlayer2.omxplayer1') self.player.set_aspect_mode('stretch') self.player.set_video_pos(116, 94, 1804, 947) self.player.set_alpha(255) self.showhide(self.list_block) except: pass def rewHandler(self, item, event, clock): try: self.player.action(omxkey.REWIND) except: pass def showhide(self, listofitems): for items in listofitems: items.visible = not items.visible def stopHandler(self, item, event, clock): try: self.player.stop() self.showhide(self.list_block) except: pass def ffHandler(self, item, event, clock): try: self.player.action(omxkey.FAST_FORWARD) except: pass ###### Screen Handling ##### def mainHandler(self, item, event, clock): try: self.player.stop() except: pass from screens.base import ScreenBase self.loadScreen(ScreenBase()) def logoutHandler(self, item, event, clock): from screens.authorize import ScreenAuthorize self.loadScreen(ScreenAuthorize()) def libraryHandler(self, item, event, clock): from screens.library import ScreenLibrary self.loadScreen(ScreenLibrary())