Created
June 13, 2014 19:50
-
-
Save hadees/848eeca7a5f8c3e8ef10 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# python 2.7 | |
# modules imports - search the python documentation for mode imformation | |
import subprocess | |
import glob | |
import signal | |
import RPi.GPIO as GPIO | |
import random | |
import os | |
import time | |
from time import sleep | |
if __name__ == "__main__": | |
"""Begin the Main Program - search for the above line to find out why your main python program should start like this""" | |
# | |
# General Program Functions | |
# | |
def randomVideo(video_files, clearCommand): | |
os.system("pkill omxplayer* && " + drawBrowneyeCommand) | |
# This plays the current video in the sequence and assigns the return code from the video player process to the 'video' variable | |
video = random.choice(video_files) | |
videoPlayerCommand = "omxplayer -b -o hdmi " + escapeWhitespace(video) + " | echo ''" | |
videolayerProcess = subprocess.Popen(videoPlayerCommand, shell=True) | |
def escapeWhitespace(file_Name): | |
"""Escape Whitespace (i.e. Spaces) in the name of the files""" | |
# Return the escape string | |
return "'" + file_Name.replace("'", "'\\''") + "'" | |
# | |
# Program Variables | |
# | |
drawBrowneyeCommand = 'TERM=linux setterm -clear -blank 0 > /dev/tty0 && cat /home/pi/browneye2.txt > /dev/tty0' | |
# The Path that the videos file are contained within | |
beard_Path = "/home/pi/Beards/" | |
drink_Path = "/home/pi/Drinks/" | |
# The video file type | |
file_Types = '*.*' | |
# Get a list/array of files that end in the extension .mp4 | |
beard_Files = glob.glob(beard_Path + file_Types) | |
drink_Files = glob.glob(drink_Path + file_Types) | |
GPIO.setmode(GPIO.BCM) | |
GPIO.setup(7, GPIO.IN, pull_up_down = GPIO.PUD_UP) | |
GPIO.setup(23, GPIO.IN, pull_up_down = GPIO.PUD_UP) | |
drawBrowneyeProcess = subprocess.Popen(drawBrowneyeCommand, shell=True, stdout=subprocess.PIPE) | |
#GPIO.add_event_detect(7, GPIO.FALLING, callback=lambda x: randomVideo(beard_Files, drawBrowneyeCommand), bouncetime=1000) | |
#GPIO.add_event_detect(23, GPIO.FALLING, callback=lambda x: randomVideo(drink_Files, drawBrowneyeCommand), bouncetime=1000) | |
# Start a loop that never ends | |
while True: | |
if(GPIO.input(7) == 0): | |
randomVideo(beard_Files, drawBrowneyeCommand) | |
if(GPIO.input(23) == 0): | |
randomVideo(drink_Files, drawBrowneyeCommand) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
MMMMMMMMMMMMMMMMMMMMMMMMMMOMMMMMNXMMMMMM0MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM | |
MMMMMMMMMMMMMMMMMMWMMMXOxl.dddoo.:ooodd:'ddx0XMNWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM | |
MMMMMMMMMMMMMMMMMXd,xxOXX'.MMMN:.XMMWO:.KMMN0x''oxKWMMWNMMMMMMMMMMMMMMMMMMMMMMMM | |
MMMMMMMMMMMMK0kxx0x.WMWk..,c:,...'''...:odkxc.lNMNOdll;NMMMMMMMMMMMMMMMMMMMMMMMM | |
MMMMMMMMMMWOo.XMMO..;....',;;::::::::;;;,''....':lc,;x0ddOWXdXMMMMMMMMMMMMMMMMMM | |
MMMMMMMWNxxXx.xc...,;cllllc;,;::ccc:;;:lllllllc:,....;oxd,.'xMMMMMMMMMMMMMMMMMMM | |
MMMMMMWd'WWd....,clllll:,ckXWMMMMMMMMNOo;;llllllll:',l;...kWKxxNNOOMMMMMMMMMMMMM | |
MMMWX0kK.c,od;;llllll;.'WMMMMMMWMMMMMMMMMK',llllllllc'kWOc..:c;',xMMMMMWMMMMMMMM | |
MMMW'Xk;oKMo'llllllc...lMMMMMMMN0KXMMMMMMMo..:llllllll,lMMWO;.:kKxlxolkMMMMMMMMM | |
MMNO'o0MMMc;llllllc....:MMMMMMMMxdMMMMMMMMo...;llllllll'dMMMMXl...;odXMMMMWXMMMM | |
MN00NMMMMd'lllllll......lNMMMMMN::WMMMMMMk.....cllllllll.WMMMMMWO:.;l:clcoOMMMMM | |
KOWMMMMMM.cllllll:........loolldxKllodo:.......,llllllll.KMMMMMMMMW0o,.,x0K0kokX | |
doNMMMMMW.lllllll;........cMMMMMkMMMWNk.........llllllll.NMMMMMMMMMMMMWKk;.';kNM | |
MNNMMMMMM'cllllll:.........kMMMMdWMMMK.........'lllllll;:MMMMMMMMMMMMW0ool:WMMMM | |
MMNoXMMMMx'lllllll.........'MMMMlNMMM,.........cllllll:'NMMMMMMMMMWklodcXMWXMMMM | |
MMMNkl0MMMl,llllllc.........WNWM:XNNK.........;llllll;;NMMMMMMMKdclocWMMNMMMMMMM | |
MMMMXW0;xNMx'clllllc.......cMMMM'0MMN........;lllllc,xMMMMMKd::ocdMMWXMMMMMMMMMM | |
MMMMMMNNNo:x0l,clllll,.....NMMMM.OMMMx.....'cllll:,dWMNOo;;ox;NMMXMMMMMMMMMMMMMM | |
MMMMMMMMMNNXd,c,,;cllll;..dNMMMW.xMMMW:..,clll:;cdko:.:d0oxMMNXMMMMMMMMMMMMMMMMM | |
MMMMMMMMMMMMWkWO.'..';:cll:;;clc.;lc:;:lc:;'...::.dKWKOMMMXMMMMMMMMMMMMMMMMMMMMM | |
MMMMMMMMMMMMMMMWkMMX;;c;..''',,,,,;;;.ccl:.0X0:MMNOMMMMMMMMMMMMMMMMMMMMMMMMMMMMM | |
MMMMMMMMMMMMMMMMMMMM0MMMK0MMOdWWK;MMMcMMMMdMMMXMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM | |
MMMMMMMMMMMMMMMMMMMMMMMMMMMMNMMMXXMMWNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment