def add_music_source(self): speakers = db.get_speakers(self.request["categoryid"]) # FIXME: We might need to unconditionally add blankaudio. # what happens if the only speaker is out of range? I think # it'll be fine but test this. if len(speakers) > 0: self.gps_mixer = gpsmixer.GPSMixer( {"latitude": self.request["latitude"], "longitude": self.request["longitude"]}, speakers ) self.add_source_to_adder(self.gps_mixer) else: self.add_source_to_adder(BlankAudioSrc())
def is_listener_in_range_of_stream (form): if not form.get('latitude') or not form.get('latitude'): return True speakers = db.get_speakers(form['categoryid']) for speaker in speakers: distance = gpsmixer.distance_in_meters( float(form['latitude']), float(form['longitude']), speaker['latitude'], speaker['longitude']) if not distance > 3 * speaker['maxdistance']: return True return False