diff --git a/client/client.py b/client/client.py index 2409a24..32e9797 100755 --- a/client/client.py +++ b/client/client.py @@ -41,6 +41,13 @@ def visualizer(): _r,_g,_b = 0,0,0 +def vibrant(r,g,b): + rgb = [r,g,b] + min_idx = rgb.index(min(rgb)) + d = (r+g+b - rgb[min_idx])/2 + rgb[min_idx] = int(rgb[min_idx]*(rgb[min_idx]/d)**2) + return rgb + def ambient_light_thread(): r,g,b = 0,0,0 brighness = 1 @@ -63,7 +70,7 @@ def ambient_light_thread(): print(r,g,b) send(rgb_to_hex(int(r*brighness),int(g*brighness),int(b*brighness))) - time.sleep(0.01) + time.sleep(0.001) def ambient_light(): @@ -91,15 +98,22 @@ def ambient_light(): ''' img.thumbnail((1,1)) - _r,_g,_b = img.getpixel((0, 0)) + r,g,b = img.getpixel((0, 0)) + _r,_g,_b = vibrant(r,g,b) def rgb_to_hex(r,g,b): return "%02x%02x%02x" % (r,g,b) -def main(argv): +def test(): + for i in range(256): + h = rgb_to_hex(0,i,0) + send(h) + print(h) + time.sleep(0.0) +def main(argv): if not sys.stdin.isatty(): - connect(server_IP) + connect() for volume in sys.stdin: volume = int(volume) hex_color = rgb_to_hex(volume,0,0) @@ -107,7 +121,7 @@ def main(argv): sys.exit() try: - opts, args = getopt.getopt(argv, "s:v:ah") + opts, args = getopt.getopt(argv, "s:vaht") except getopt.GetoptError: print(sys.argv[0], "invalid option") print("Try", sys.argv[0], "-h for help") @@ -130,7 +144,12 @@ def main(argv): elif opt == "-v": visualizer() sys.exit() - + elif opt == "-t": + connect() + test() + disconnect() + sys.exit() + helpmenu() sys.exit()