def evaluate(self, nn: Model): """ Evaluates the training of a model """ result = 0.0 for i in range(4): if nn.level in LEVEL_SINGLE_PLAYER: res, mem, _ = play.play(self.sess, nn, None, self.env, play.PLAYERS_AI_1, play.PLAYERS_AI_1, 0, nn.level, True, True) elif i % 2 == 0: res, mem, _ = play.play(self.sess, nn, None, self.env, play.PLAYERS_AI_1, play.PLAYERS_RANDOM_1, 0, nn.level, True, True) else: res, mem, _ = play.play(self.sess, nn, None, self.env, play.PLAYERS_RANDOM_1, play.PLAYERS_AI_1, 0, nn.level, True, True) self._add_to_replay_buffer(mem, res) if res <= 0.1: return 0.0 result += res return result / 4.0
def GUI(): procede = True category = ['genre', 'artist', 'year'] subCategory = [] playList = [] sobra = [] config = load_settings(SETTINGS_FILE, DEFAULT_SETTINGS) window = createConfigWindow(config) while True: event, values = window.read() if event == sg.WIN_CLOSED or event == 'Exit': procede = False break if event == 'Ok': c = Path(values['-PATH-']) d = Path(values['-REPRODUCTOR-']) reproductor = PureWindowsPath(d) b = PureWindowsPath(c) music = musicMeta(b) music.actualizar() # agregar metodo que crea los arboles save_settings(SETTINGS_FILE, config, values) break window.close() window = createChoicerWindow(category, subCategory) playList = [] while procede: event, values = window.read() if event == sg.WIN_CLOSED or event == 'Exit': procede = False break if values['-TREE-']: leaf = getSub(music, values['-TREE-'][0]) window['-LEAF-'].update(leaf) if event == 'OK' and values['-LEAF-']: #agregar el metodo que crea la playlist y la devuelve como un array playList = getViewList(music, values['-TREE-'][0], values['-LEAF-'][0]) break window.close() window = createViewerWindow(playList, sobra) while procede: event, values = window.read() if event == sg.WIN_CLOSED or event == 'Exit': break if event == 'Delete': #agregar metodo que elimina la cancion de la playlist y crea un nuevo arry #o uno que lo elimine dirrectamente del array print('aun no implementado') if event == 'Add': #lo mismo que el anterior solo que con agregar print('aun no implementado') if event == 'Play': #transformar la DList en un array items = getPlayList(music, playList) play.play(items, reproductor) window.close()
def play_song(): #Play song, play function in play.py name = variable.get() index = users_name.index(variable.get()) pw = users_pw[index] proxy = input3.get() album = input4.get() play(name, pw, proxy, album)
def __call__(self, task): (iPlayer, seed, player) = task self._reconfigure(player) totW = 0 norm = 0 (W,D,L) = (0,0,0) for opponent in self._opponents: for playerMarker in ['X', 'O']: opponent.setSeed(seed) if playerMarker == 'X': w = play.play(self._gameClass, player, opponent) else: w = play.play(self._gameClass, opponent, player) if w==playerMarker: totW += self._rW W += 1 elif w==game.Draw: totW += .5 D += 1 else: L += 1 norm += 1 self._reconfigure(None) return (iPlayer, totW/norm, W/norm, D/norm, L/norm)
def main(): player_1 = Player(1, make_env(), simulation_time=1.0) # TODO: Uncomment to play against the agent # player_2 = Human(-1, make_env()) player_2 = Player(-1, make_env(), simulation_time=0.1) episodes = 1 play(episodes, player_1, player_2)
def run(self): toolbar = QToolBar() toolbar.setToolButtonStyle(Qt.ToolButtonTextUnderIcon) toolbar.setIconSize(QSize(42, 42)) toolbar.addSeparator() self.tb_configure = QAction(icon_get("preferences-system"), wrap_text(_("Configure"), 4), self) toolbar.addAction(self.tb_configure) toolbar.addSeparator() self.play_one = play(self, "fit_ribbon_one", run_text=wrap_text(_("One itteration"), 2)) toolbar.addAction(self.play_one) self.play = play(self, "fit_ribbon_run", play_icon="forward", run_text=wrap_text(_("Run fit"), 2)) toolbar.addAction(self.play) spacer = QWidget() spacer.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) toolbar.addWidget(spacer) self.help = QAction(icon_get("help"), _("Help"), self) toolbar.addAction(self.help) return toolbar
def main(): kata = get_text() if not kata: return kata else: videoList = get_video_list(kata) play(videoList) return kata
def play(key): track = connect.get("/library/metadata/" + key) ply.play(track[0][0][0].attrib["key"]) dur = int(track[0][0][0].attrib["duration"]) print("Playing: " + ident(key)) seconds = (dur // 1000) % 60 minutes = (dur // 60000) % 60 elapsed = 0 while "ffplay" in os.popen("ps aux").read(): time.sleep(3) print()
def recordplay(self, button): if self.recordpid == -1: pid = os.fork() if pid == 0: play.play("record.wav") self.recordpid = -1 self.recordingplay = -1 sys.exit(0) else: self.recordpid = pid self.recordingplay = 1
def recordplay(self,button): if self.recordpid==-1: pid=os.fork() if pid==0: play.play("record.wav") self.recordpid=-1; self.recordingplay=-1; sys.exit(0) else: self.recordpid=pid; self.recordingplay=1;
def _do_command(self, command): ''' do command provides deciding of executing of the command based on input ''' if self._startWord: if not command.startswith(self._startWord): return if 'time' in command: play(Time().response()) if 'wiki' in command: play(Wikipedia(query=command).response())
def start(self): self.saveSettings() self.entryText.delete("1.0", END) self.answerText.config(state=NORMAL) self.answerText.delete("1.0", END) self.answerText.config(state=DISABLED) self.analysisText.config(state=NORMAL) self.analysisText.delete("1.0", END) self.analysisText.config(state=DISABLED) self.resultVar.set("") self.letters = koch.getLetters(self.lettersVar.get()) self.words = koch.generateKochWords(self.wordsVar.get(), self.letters) play.setSpeed(self.speedVar.get(), self.farnsworthVar.get()) play.play(self.words, self.displayAnswer)
def robotAlphaBeta(): # try: position, prof = py.getData(request.json) print(position, prof) coup, val = rb.alphabeta(position, prof, -99, +99) res, _ = py.play(position, coup) return res
def robotMinimax(): # try: position, prof = py.getData(request.json) print(position, prof) coup, val = rb.minimax(position, prof) res, _ = py.play(position, coup) return res
def mesh_toolbar(self): toolbar = QToolBar() toolbar.setToolButtonStyle( Qt.ToolButtonTextUnderIcon) toolbar.setIconSize(QSize(42, 42)) #mesh self.show_mesh= QAction_lock("mesh_tri", wrap_text(_("Show\nMesh"),2), self,"ribbon_shape_mesh") self.show_mesh.setCheckable(True) self.show_mesh.setChecked(True) toolbar.addAction(self.show_mesh) #self.menu_mesh = QMenu(self) #self.show_mesh.setMenu(self.menu_mesh) #self.edit_mesh=QAction(_("Edit mesh"), self) #self.menu_mesh.addAction(self.edit_mesh) self.mesh_edit= QAction_lock("mesh_tri_edit", wrap_text(_("Edit\nMesh"),2), self,"ribbon_shape_mesh") toolbar.addAction(self.mesh_edit) self.mesh_build = play(self,"main_play_button",run_text=wrap_text(_("Build\nMesh"),2)) #self.mesh_build= QAction_lock("media-playback-start", wrap_text(_("Build\nMesh"),2), self,"ribbon_shape_mesh") toolbar.addAction(self.mesh_build) return toolbar
def jsonGenerate(model): name = globals() rules, prov_dict = ruleGenerate() your_castle = "" computer_castle = [] if model == 1: map1 = create_map(your_castle, computer_castle) prov = get_province() computer_choice = play(prov, your_castle, computer_castle, rules) computer_castle.append(computer_choice) list_computer_castle = name[computer_choice].birth list_computer_castle.sort() for i in list_computer_castle: computer_castle.append(prov_dict[str(i)]) if model == 1: map2 = create_map(your_castle, computer_castle) key = key_generate(rules, your_castle, computer_castle) jsonObject = [{"rules": rules}, {"your_castle": your_castle, "computer_castle": computer_castle}, {"your_choice": "", "computer_choice": computer_choice}, {"key": key}] encodedjson = json.dumps(jsonObject) if model == 1: return encodedjson, map1, map2 else: return encodedjson
def step(self): id, text = self.reader.read_no_block() print(id, text) if id: self._failed = 0 if text != self._current: stripped_text = text.strip() print("Read text: \"{}\"".format(stripped_text)) play.play(stripped_text) self._current = text elif self._current: self._failed += 1 if self._failed > 2: self._current = None print("Stopping") play.stop() time.sleep(1)
def main(): player_1 = Player(1, make_env()) # TODO: Uncomment to play against the agent #player_2 = Human(-1, make_env()) player_2 = RandomPlayer(-1, make_env()) episodes = 50 outcomes = play(episodes, player_1, player_2) print("Score: {}".format(np.mean(outcomes)))
def inject_alphabet_ca3(x, g = None, do_play = False): global ca1nrnsNames_ global reset_all_ global max_num_press_ global current_num_press_ global title_ current_num_press_ += 1 if do_play: play.play(config.notes_[x]) add_piano(x) if current_num_press_ >= max_num_press_: current_num_press_ = 0 reset_all_ = True if reset_all_: resetAll()
def main():#The main function screen = makeScreen()#Calls the make screen function game_folder = os.path.dirname(__file__)#Makes the file path of the game menus.welcomeScreen(screen)#Displays the welcome screen done = False while not done:#Makes a loop players = menus.mainMenu(screen)#Calls the main menu function to get the amount of players counterList, multipliers = play.play(screen, players, game_folder)#Plays the game menus.scoreMenu(screen, game_folder, counterList, multipliers)#Displays the scores
def main(): """ Start the training or evaluation according to the given arguments """ args = parser.parse_args() if args.d: display = Display(visible=0, size=(1400, 900)) display.start() if args.seed: seed = int(args.seed) else: seed = 0 if args.p: env, agent = assemble_play(args.weights, seed) play(env, agent) elif args.e: p = os.path.join("models", args.dir) evaluate_agents(p) else: save_dir = os.path.join("models", args.dir) if not os.path.isdir(save_dir): print("Create directory", save_dir) os.mkdir(save_dir) print("Checkpoints and buffer will be saved into", save_dir) env, agent, episodes, frames = assemble_training(seed, args.weights) train( env, agent, seed, SAVE_DIR=save_dir, EPISODES=cfg.EPISODES, EPISODE_LENGTH=cfg.EPISODE_LENGTH, SKIP_FRAMES=cfg.SKIP_FRAMES, OFFSET_EP=episodes, OFFSET_FR=frames, )
def run_cmd(cmd): local_table = data.get_tables() songs = local_table['songs'].copy() cmd = re.sub("music\.py","music",cmd) if cmd == 'music': if len(songs.columns) > 0: songs = songs.drop(axis=1,columns='id') print(songs) elif "play" in cmd: print("playtime") play(cmd,local_table) elif "rate" in cmd: item = MappableItem(cmd,'user').item if '-d' in cmd: spotify.unpause_player() item.save() else: if len(cmd) > 0: print('-'+cmd+'-\nThe above command was not parsable')
def prossesingMovie(image,W,H,count): #中央480x480の画像を使う imgVert = [H // 2 - 240 , W // 2 - 240 ] prossesingImg = image[imgVert[0] : imgVert[0] + 480 , imgVert[1] : imgVert[1]+480 ] num = play.play(prossesingImg,count) image[imgVert[0]-20:imgVert[0],:]=[255,255,255] image[imgVert[0]+480-20:480+imgVert[0],:]=[255,255,255] image[:,imgVert[1]-20:imgVert[1]]=[255,255,255] image[:,imgVert[1]-20+480:480+imgVert[1]]=[255,255,255] image[10:60,150:180] = getNum(num)
def modback(self, button): if self.modspause != -1: if self.modspause == 0: os.kill(self.modspid, signal.SIGTSTP) self.modspause = 1 else: os.kill(self.modspid, signal.SIGCONT) self.modspause = 0 return listfile = [] for i in range(3): if self.modlist[i].get_active(): filename = self.filechooser[i].get_filename() if not filename: print "give the filename please" return listfile.append(i) if len(listfile) == 0: return new = [] for i in listfile: newobj = backend.yogesh(self.filechooser[i].get_filename()) print self.filechooser[i].get_filename() newobj.amp(self.amplist[i].get_value()) newobj.shift(self.timeshiftlist[i].get_value()) newobj.timescale(self.timescalelist[i].get_value()) if self.timerevlist[i].get_active(): newobj.timereverse() new.append(newobj) for i in range(len(new) - 1): print 'mod with 0 and ', i + 1 new[0].modulation(new[i + 1]) new[0].write("mod.wav") pid = os.fork() if pid == 0: play.play("mod.wav") self.modspause = -1 self.modspid = -1 sys.exit(0) return 0 else: self.modspause = 0 self.modspid = pid
def getRLAgentFE( self, W): # get the feature expectations of a new policy using RL agent DQN.IRL_helper( W ) # train the agent and save the model in a file that we pass to play fe = play.play( 'model.h5', DQN.env, DQN.newdf, W ) # return the feature expectations by executing the learned policy return fe
def modback(self,button): if self.modspause!=-1: if self.modspause==0: os.kill(self.modspid,signal.SIGTSTP); self.modspause=1; else: os.kill(self.modspid,signal.SIGCONT); self.modspause=0; return listfile=[] for i in range(3): if self.modlist[i].get_active(): filename=self.filechooser[i].get_filename() if not filename: print "give the filename please" return listfile.append(i) if len(listfile)==0: return; new=[] for i in listfile: newobj=backend.yogesh(self.filechooser[i].get_filename()) print self.filechooser[i].get_filename() newobj.amp(self.amplist[i].get_value()) newobj.shift(self.timeshiftlist[i].get_value()) newobj.timescale(self.timescalelist[i].get_value()) if self.timerevlist[i].get_active(): newobj.timereverse() new.append(newobj) for i in range(len(new)-1): print 'mod with 0 and ',i+1 new[0].modulation(new[i+1]) new[0].write("mod.wav") pid=os.fork() if pid==0: play.play("mod.wav") self.modspause=-1; self.modspid=-1; sys.exit(0) return 0; else: self.modspause=0; self.modspid=pid;
def train(env): total_points = 0 histories = [] player_model = DualNet(2, 128, 36, 1) if os.path.exists( os.path.dirname(os.path.abspath(__file__)) + '\\data\\best.ckpt'): player_model.load_model('best') else: player_model.save_model('best') player_model.eval() # self-play if SELF_COUNT > 0: with tqdm(range(SELF_COUNT), desc='self-play') as pbar: for i in pbar: history = self_play(player_model, env, ALPHA) histories.extend(history) print('\u001B[1A', end='') write_data(histories) # train histories = load_data() player_model.train() optimizer = optim.Adam(player_model.parameters()) for i in tqdm(range(EPOCH), desc='epoch'): with tqdm(np.array_split(histories, int(len(histories)) / BATCH_SIZE), desc='optimize') as pbar: for history in pbar: valueloss, policyloss = player_model.optimize( history, optimizer) pbar.set_postfix( OrderedDict(value=valueloss.item(), policy=policyloss.item())) print('\u001B[1A', end='') player_model.save_model('latest') # play player_model.eval() opponent_model = DualNet(2, 128, 36, 1) opponent_model.load_model('best') opponent_model.eval() with tqdm(range(GAME_COUNT), desc='play') as pbar: for i in pbar: total_points += play(player_model, opponent_model, env, ALPHA) print('\u001B[1A', end='') pbar.set_postfix(OrderedDict(point=total_points / (i + 1))) print(f'対戦結果: {total_points / GAME_COUNT}') if total_points / GAME_COUNT > 0.55: player_model.save_model('best')
def simulations(self): toolbar = QToolBar() toolbar.setToolButtonStyle(Qt.ToolButtonTextUnderIcon) toolbar.setIconSize(QSize(42, 42)) self.tb_simulate = play( self, "scan_play", play_icon="forward", run_text=wrap_text(_("Run scan"), 2) ) #QAction(icon_get("build_play2"), wrap_text(_("Run scan"),2), self) toolbar.addAction(self.tb_simulate) toolbar.addSeparator() self.tb_plot = QAction(icon_get("plot"), wrap_text(_("Plot"), 4), self) toolbar.addAction(self.tb_plot) #self.tb_plot_time = QAction(icon_get("plot_time"), wrap_text(_("Time domain plot"),6), self) #toolbar.addAction(self.tb_plot_time) self.tb_clean = QAction(icon_get("clean"), wrap_text(_("Clean simulation"), 4), self) toolbar.addAction(self.tb_clean) self.box_widget = QWidget() self.box = QVBoxLayout() self.box_widget.setLayout(self.box) self.box_tb0 = QToolBar() self.box_tb0.setIconSize(QSize(32, 32)) self.box.addWidget(self.box_tb0) self.box_tb1 = QToolBar() self.box_tb1.setIconSize(QSize(32, 32)) self.box.addWidget(self.box_tb1) self.tb_build = QAction(icon_get("cog"), wrap_text(_("Build scan"), 2), self) self.box_tb0.addAction(self.tb_build) self.tb_rerun = QAction(icon_get("play-green"), wrap_text(_("Rerun"), 2), self) #self.box_tb0.addAction(self.tb_rerun) self.tb_zip = QAction(icon_get("package-x-generic"), wrap_text(_("Archive simulations"), 2), self) self.box_tb0.addAction(self.tb_zip) self.tb_notes = QAction(icon_get("text-x-generic"), wrap_text(_("Notes"), 3), self) toolbar.addAction(self.tb_notes) toolbar.addWidget(self.box_widget) return toolbar
def main(): ap = argparse.ArgumentParser() ap.add_argument("-p", "--path", required=True, help="The path of the video") ap.add_argument("-f", "--frames", required=False, type=int, help="The amount of frames you want to play") args = vars(ap.parse_args()) video = cv2.VideoCapture(args["path"]) fps = video.get(cv2.CAP_PROP_FPS) createframes.create_folder() createframes.create_frames(video, args["frames"]) play.play(fps)
def robotAleatoire(): i = 0 state = False # try: position, _ = py.getData(request.json) while i < 100 and not state: coup = rb.genere_un_coup(position) print(coup) res, state = py.play(position, coup) i += 1 return res
def _fill_replay_buffer(self): not_added = True while not_added: for nn in self.models: if nn.level in LEVEL_SINGLE_PLAYER: result, mem_a, _ = play.play(self.sess, nn, None, self.env, play.PLAYERS_AI_1, play.PLAYERS_AI_1, nn.randomnesss, nn.level, True, True) if result > 0.8: not_added = False self._add_to_replay_buffer(mem_a, result) else: result, mem_a, mem_b = play.play( self.sess, nn, np.random.choice(self.models), self.env, play.PLAYERS_AI_1, play.PLAYERS_AI_2, nn.randomnesss, nn.level, True, True) if result != 0: not_added = False self._add_to_replay_buffer(mem_a, result) self._add_to_replay_buffer(mem_b, -result) print("Game Result:", result)
def handle_arduio_command( line, q ): global seqs_ cmd, arg = line[:2], line[2:] if len(line) < 2: return print( cmd, arg ) if cmd == '#B': canvas.inject_alphabet_ca3(1+int(arg)) timeWithoutActivity_ = 0 elif cmd == '#P': canvas.progressFromArduino(arg) elif cmd == '#R': print( 'Arduino said reset everything.' ) play.play('a1') canvas.resetAll() while not q.empty(): q.get() elif cmd == '#S': play.play_seq( seqs_[int(arg)] ) elif cmd == '#T': play.play( arg ) else: print( 'Uknown command: %s' % line )
def readFromFile(readFile): if os.path.isfile(readFile): f = open(readFile, 'r') lines = f.readlines() del lines[0] #top line is header for line in lines: line=line.lower() while not -1 == line.find(",,"): line = line.replace(",,", ",0,") #gets rid of blanks line = line.replace(",**,", ",0,") #get rid of missings playerStats = line.split(',') numList = [1, 2, 3, 6, 7, 8, 10, 11, 12] #stats that are numbers for x in range(len(playerStats)): if x in numList: #print playerStats playerStats[x] = float(playerStats[x]) #makes the numbered stats numbers #uploads a play #occasionaly there will be no offensive team, this adds the offensive team from the previous play, seems to be pretty accurate. if "0" in playerStats[4]: playerStats[4]=tempPlay.offense tempPlay = play.play(*playerStats) # adds all the teams add = True for y in teamGroup: if y.name == tempPlay.offense: y.addPlay(tempPlay, True)#adds play if team is added add = False break if add: tempTeam = team.team(tempPlay.offense) tempTeam.addPlay(tempPlay, True) #adds if team needed adding teamGroup.append(tempTeam) #addsteam #same for Defense below add = True for y in teamGroup: if y.name == tempPlay.defense: y.addPlay(tempPlay, False) add = False break if add: tempTeam = team.team(tempPlay.defense) tempTeam.addPlay(tempPlay, False) teamGroup.append(tempTeam)
def callback(self, button, i): print i, "was cliked\n" if self.playing[i] != -1: return #print self.filechooser[i].get_filename() filename = self.filechooser[i].get_filename() self.playing[i] = filename #print self.amplist[i].get_value() amplitudevalue = self.amplist[i].get_value() print self.timeshiftlist[i].get_value() timeshiftvalue = self.timeshiftlist[i].get_value() # print self.timescalelist[i].get_value() timescalevalue = self.timescalelist[i].get_value() # print self.timerevlist[i].get_active() reverseornot = self.timerevlist[i].get_active() if filename: newob = backend.yogesh(filename) newob.amp(amplitudevalue) newob.shift(int(timeshiftvalue)) newob.timescale(timescalevalue) if reverseornot: newob.timereverse() newob.write("final.wav") pid = os.fork() self.processpid = pid if pid == 0: print "over" play.play("final.wav") self.playing[i] = -1 self.pause[i] = -1 sys.exit(0) else: print "over" self.playing[i] = pid self.pause[i] = 0
def callback(self,button,i): print i,"was cliked\n" if self.playing[i]!=-1: return #print self.filechooser[i].get_filename() filename=self.filechooser[i].get_filename() self.playing[i]=filename #print self.amplist[i].get_value() amplitudevalue = self.amplist[i].get_value() print self.timeshiftlist[i].get_value() timeshiftvalue=self.timeshiftlist[i].get_value() # print self.timescalelist[i].get_value() timescalevalue= self.timescalelist[i].get_value() # print self.timerevlist[i].get_active() reverseornot=self.timerevlist[i].get_active() if filename: newob=backend.yogesh(filename); newob.amp(amplitudevalue) newob.shift(int(timeshiftvalue)) newob.timescale(timescalevalue) if reverseornot : newob.timereverse() newob.write("final.wav") pid=os.fork() self.processpid=pid; if pid==0: print "over" play.play("final.wav") self.playing[i]=-1 self.pause[i]=-1 sys.exit(0) else: print "over" self.playing[i]=pid; self.pause[i]=0
def scan(self): toolbar = QToolBar() toolbar.setToolButtonStyle(Qt.ToolButtonTextUnderIcon) toolbar.setIconSize(QSize(42, 42)) self.tb_new = QAction(icon_get("document-new"), wrap_text(_("New scan"), 2), self) toolbar.addAction(self.tb_new) self.tb_delete = QAction(icon_get("edit-delete"), wrap_text(_("Delete scan"), 3), self) toolbar.addAction(self.tb_delete) self.tb_clone = QAction(icon_get("clone"), wrap_text(_("Clone scan"), 3), self) toolbar.addAction(self.tb_clone) self.tb_rename = QAction(icon_get("rename"), wrap_text(_("Rename scan"), 3), self) toolbar.addAction(self.tb_rename) self.tb_clean = QAction(icon_get("clean"), wrap_text(_("Clean all"), 4), self) toolbar.addAction(self.tb_clean) toolbar.addSeparator() self.tb_run_all = play( self, "scan_play_all", play_icon="forward2", run_text=wrap_text(_("Run all scans"), 5) ) #QAction(icon_get("forward2"), wrap_text(_("Run all scans"),3), self) toolbar.addAction(self.tb_run_all) spacer = QWidget() spacer.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) toolbar.addWidget(spacer) self.home_help = QAction(icon_get("internet-web-browser"), _("Help"), self) toolbar.addAction(self.home_help) return toolbar
def inject_alphabet( x, g, do_play=False): # Arduino has sequence recognizer. # g.graph['SeqRec'].inject(x) if do_play: play.play(config.notes_[x])
try: cur_dir = os.path.dirname(os.path.abspath(__file__)) except: cur_dir = os.getcwd() sys.path.append(os.path.join(cur_dir, 'resources', 'lib')) import index, play args = urlparse.parse_qs(sys.argv[2][1:]) play_arg = args.get('play', None) sid_arg = args.get('sid', None) eid_arg = args.get('eid', None) category_arg = args.get('category', None) vtid_arg = args.get('vtid', None) nid_arg = args.get('nid', None) if play_arg is not None: play.play(url=play_arg[0], nid=nid_arg[0]) elif sid_arg is not None and category_arg is not None and vtid_arg is not None: index.build_index(sid=sid_arg[0], category=category_arg[0], vtid=vtid_arg[0]) elif sid_arg is not None and category_arg is not None: index.build_index(sid=sid_arg[0], category=category_arg[0]) elif sid_arg is not None and eid_arg is not None: index.build_index(sid=sid_arg[0], eid=eid_arg[0]) elif sid_arg is not None: index.build_index(sid=sid_arg[0]) else: index.build_index()
import os, sys # Add our resources/lib to the python path try: current_dir = os.path.dirname(os.path.abspath(__file__)) except: current_dir = os.getcwd() sys.path.append(os.path.join(current_dir, 'resources', 'lib')) import config, utils, index, categories, section, entries, play # Print our platform/version debugging information utils.log_xbmc_platform_version() if __name__ == "__main__" : params_str = sys.argv[2] params = utils.get_url(params_str) utils.log("Loading add-on with params: %s" % params) if (len(params) == 0): index.make_index_list() elif params.has_key('play'): play.play(params_str) elif params.has_key('entries_url'): entries.make_entries_list(params_str) elif params.has_key('section'): section.make_section_list(params_str) elif params.has_key('category'): categories.make_category_list(params_str)
# -*- coding: UTF-8 -*- # by Mafarricos # email: [email protected] # This program is free software: GNU General Public License import xbmcplugin,xbmcgui,xbmc,xbmcaddon,os,threading,re,urllib,json,time from BeautifulSoup import BeautifulSoup from resources.libs import links,tmdb,imdb,trakt,rottentomatoes,youtube,basic,localdb AddonsResolver = True try: addon_resolver = xbmc.translatePath('special://home/addons/script.module.addonsresolver/resources/libs') sys.path.append(addon_resolver) from play import play play = play() except BaseException as e: basic.log(u"main.AddonsResolver ##Error: %s" % str(e)) AddonsResolver = False try: from metahandler import metahandlers metaget = metahandlers.MetaData(preparezip=False) except: pass addonName = xbmcaddon.Addon().getAddonInfo("name") addonVersion = xbmcaddon.Addon().getAddonInfo("version") addonId = xbmcaddon.Addon().getAddonInfo("id") addonPath = xbmcaddon.Addon().getAddonInfo("path") dataPath = xbmc.translatePath(xbmcaddon.Addon().getAddonInfo("profile")).decode("utf-8") sitesfile = os.path.join(os.path.join(addonPath, 'resources'),'sites.txt') getSetting = xbmcaddon.Addon().getSetting setSetting = xbmcaddon.Addon().setSetting language = xbmcaddon.Addon().getLocalizedString
# -*- coding: utf-8 -*- from __future__ import division import logging from play import play if __name__ == '__main__': logging.basicConfig(format='%(levelname)s:%(message)s', filename='logging.log', filemode='w', level=logging.INFO) logging.info('Started') N = 6 my_minds = ['human'] * N cards_names = ['King', 'Queen', 'Bishop', 'Judge', 'Cheat', 'Witch'] play(players_num=N, types_of_players=my_minds, cards_names=cards_names) logging.info('Finished')
# GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with AFL Radio. If not, see <http://www.gnu.org/licenses/>. # import os import sys # Add our resources/lib to the python path try: current_dir = os.path.dirname(os.path.abspath(__file__)) except: current_dir = os.getcwd() sys.path.append( os.path.join( current_dir, "resources", "lib" ) ) import utils, config, stations, play utils.log('Initialised') if __name__ == "__main__" : params = sys.argv[2] p = utils.get_url(params) if p.has_key('id'): play.play(params) else: stations.list_stations()
def play(self): self.save("%s.wav"%(self.name)) play("%s.wav"%(self.name))
def start(): ret, frame = vc.read() # Timer for saving strum timings and saving music start = time.time() gap = 0 prevStrum = "" song = [] prevTime = 0.00 elapsed = 0.00 # Motion detection flags prevPos = 0 direction = 0 up = 0 down = 0 firstframe = 1 while ret: # Change color space for better detection hsvframe = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV) fingerImages = lib.filterFingers(hsvframe) cv2.imshow('red', fingerImages[0]) cv2.imshow('green', fingerImages[1]) cv2.imshow('blue', fingerImages[2]) fingerPositions = lib.getPositions(fingerImages) # Detect the mode of playback mode = lib.getMode(fingerPositions) distance = lib.getDistance(fingerPositions) # Show the mode on screen cv2.putText(frame, mode , (100, 100), cv2.FONT_HERSHEY_SIMPLEX, 4, 255) cv2.imshow('preview', frame) # Find the postion of lower strumming hand lowerPos = lib.getLowerBlob(hsvframe) # Motion detection for lower hand if prevPos != 0: disp = lowerPos[0][1] - prevPos direction = direction + disp if direction < -200: up = 1 direction = 0 if direction > 200: down = 1 direction = 0 if firstframe == 1: firstframe = 0 prevPos = lowerPos[0][1] # Perform the playback and append the strum in song if down == 1: if gap == 1: elapsed = time.time() - start song.append([prevStrum, elapsed]) gap == 0 if prevTime != 0.00: song.append([prevStrum, (elapsed-prevTime)]) else: song.append([prevStrum, 0.00]) prevTime = elapsed play.play(lib.getPattern(mode,distance,'down')) if gap == 0: start = time.time() prevStrum = lib.getPattern(mode,distance, 'down') gap = 1 down = 0 else: if up == 1: if gap == 1: elapsed = time.time() - start song.append([prevStrum, elapsed]) gap == 0 if prevTime != 0.00: song.append([prevStrum, (elapsed-prevTime)]) else: song.append([prevStrum, 0.00]) prevTime = elapsed play.play(lib.getPattern(mode,distance,'up')) if gap == 0: start = time.time() prevStrum = lib.getPattern(mode,distance,'up') gap = 1 up = 0 ret, frame = vc.read() key = cv2.waitKey(20) if key == 27: #Ends the session and save the song. Press ESCAPE key play.save('muse', song, 0.05, [0, prevTime, 0.1]) break
def test_play_method(self): self.assertEqual(play.play([0,0,1], 0), 1, "Check play method returns a win") self.assertEqual(play.play([0,0,1], 2), 0, "Check play method returns a win") self.assertEqual(play.play([0,0,1], 1), 1, "Check play method returns a win") self.assertEqual(play.play([1,0,0], 2), 1, "Check play method returns a win")
def shuffle(): print("shuffling") random.shuffle(td) def learn(): print("learning") ai.learn(td) def save(): ai.write_model_data("ai") def read(): print("reading") ai.read_model_data("ai") play.play(ai, 100, clever=True) #learn_new = True # # if learn_new: # # best_score = -10 # clever = False # # for epoch in range(30000): # print("============================") # print(">>>>> Epoch %d" % epoch) # print("============================") # print("(current best " + str(best_score) + ")") # # #shuffle()
def main(): #---- READ LOG FILE------------------- target_collector=set([]) # хранит текущие цели на оповещении param_collector=set([]) # хранит номера целей с характеристиками sectors = set([902,900,470,909,908,474]) # разрешенные секторы, !!! ПРАВИТЬ, ЕСЛИ ИЗМЕНИЛИСЬ warn_param = set([7,6,3,4,8]) # индексы принадлежности с свуковым сигналом target_lastseen=[] # сохраним время последней засечки для цели в секундах с нулевого времени. for i in range(9999): target_lastseen.append(0) timesleep = 20 #delta_10 = datetime.timedelta(minutes=10) loops = 1 delay = True ''' if (datetime_now - datetime_pos) < delta_10: print datetime_now , ' ' , datetime_pos , delta_10 delay = True else: delay = False ''' while loops: datetime_now= datetime.datetime.now() f_cursor = ini("cursor",'r',0) ## read position from ini file if f_cursor !='' : mesh,sz,datetime_pos = log_get("/home/riros/gMFSK.log",int(f_cursor)) else : mesh,sz,datetime_pos = log_get("/home/riros/gMFSK.log",0) ini("cursor",'w',sz) # sz for i in mesh: #print i loops+=1 mtype=i[7] tmptimestamp = datetime.datetime(year=int(i[0]),month=int(i[1]),day=int(i[2]),hour=int(i[3]),minute=int(i[4]))-datetime.datetime.fromordinal(1) timestamp = tmptimestamp.days*86400+tmptimestamp.seconds if mtype==1: if i[8] in target_collector: print '%003d %0004d'%(loops,int(i[8])),i[9],i[10],i[11],'за',"%02d:%02d"%(int(i[3]),int(i[4])) else: print '%003d*%0004d'%(loops,int(i[8])),i[9],i[10],i[11],'за',"%02d:%02d"%(int(i[3]),int(i[4])) target_collector.add(i[8]) target_lastseen[int(i[8])]=timestamp # if delay: time.sleep(9) elif mtype==2: # print int(i[9][0]), int(i[8]) if int(i[9][0]) in warn_param: print '%003d'%(loops),'характеристика ',i[8],i[9],'%0.2s %0.2s'%(i[10],i[11]), '<<<<<<<' if not (i[8] in param_collector): if delay: play.play('/home/riros/work/voice/ringout.wav') param_collector.add(i[8]) timesleep=5 else: print '%003d'%(loops),'характеристика ',i[8],i[9],'%0.2s %0.2s'%(i[10],i[11]) if not (i[8] in param_collector): param_collector.add(i[8]) #if delay: time.sleep(10) elif mtype==4: if i[8]==i[9]: if i[8] in target_collector: target_collector.remove(i[8]) if i[8] in param_collector: param_collector.remove(i[8]) print '%003d'%(loops),i[8],'вышла ' else: if i[8] in target_collector: target_collector.remove(i[8]) if i[8] in param_collector: param_collector.remove(i[8]) target_collector.add(i[9]) param_collector.add(i[9]) print '%003d'%(loops),i[8],'переименована в ',i[9] target_lastseen[int(i[9])]=target_lastseen[int(i[8])] else: if i[9] in target_collector: if i[8] in target_collector:target_collector.remove(i[8]) if i[8] in param_collector:param_collector.remove(i[8]) print '%003d'%(loops),i[8],'вышла ' if set([]) == target_collector: print 'на оповещении целей нет' timesleep = 20 else: # вычищаем невышедшие цели tmp_target_collector_remove = set() for j in target_collector: if timestamp - target_lastseen[int(j)] > 1200: print "цели ",j, "не было ",timestamp - target_lastseen[int(j)],"секунд => удалена" tmp_target_collector_remove.add(j) if j in param_collector: param_collector.remove(j) target_collector=target_collector - tmp_target_collector_remove if set([]) == target_collector: print 'на оповещении целей нет' timesleep = 20 else: print "на оповещении остались: ", for j in target_collector: print j, print time.sleep(timesleep)