def set_clipboard(text): from subprocess import Popen, PIPE pipe = Popen(['xsel', '--primary --input'], shell=True, stdin=PIPE).stdin pipe.write(bytes(text, 'ascii')) pipe.flush() pipe.close()
class AudioPlayer: song = None state = States.INITIAL startup = -1 def __init__(self): self.mplayer = None def play(self, song=None): if self.state == States.INITIAL or self.state == States.STOPPED: self.song = song index = configurations.BUFFERED_TEMP_LOCATION + "-" + self.song['artist'].replace(" ", "_") + "-" + self.song['title'].replace(" ", "_") available = list(glob.glob(index + "*")) if len(available) > 0: location = available.pop(0) else: stream = pafy.new(song['youtube_link']).getbestaudio() location = index+"."+stream.extension stream.download(filepath=location) self.mplayer = Popen(["mplayer", "-slave", "-really-quiet", location], stdin=PIPE) self.startup = int(time.time()) self.state = States.PLAYING elif self.state == States.PAUSED: self.mplayer.stdin.write(b"p\n") self.mplayer.stdin.flush() self.state = States.PLAYING def pause(self): self.mplayer.write(b"p\n") self.mplayer.flush() self.state = States.PAUSED def stop(self): self.mplayer.kill() self.state = States.STOPPED def is_dying(self): return time.time() > (self.song.duration-5+self.startup) def is_stopped(self): if self.state == States.STOPPED: return True elif self.state == States.INITIAL: return False elif self.mplayer.poll() is not None: self.state = States.STOPPED return self.state == States.STOPPED def is_initial(self): return self.state == States.INITIAL
import os from subprocess import Popen my_env = os.environ.copy() my_env["PATH"] = "../bin:" + my_env["PATH"] path_to_dvr_file = "driver_input_files/ad_driver_example4.inp" # handle = Popen(["AeroDyn_Driver_Win32_Double.exe", path_to_dvr_file]) # print(handle.stdout.read()) # handle.flush() handle = Popen([ "../bin/AD_Interface_Test.exe", "50.0", "0.0125", "1.5", "3", "0.0", "0.0", "10.0", "10.0" ], env=my_env) print(handle.stdout.read()) handle.flush()