#!/usr/bin/python
__author__ = 'dano'
import pygame
import pygame.camera
from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer
from SocketServer import ThreadingMixIn
import re
import StringIO
import Image
import settings
import sys
refreshfile = open('refresher.html')
refreshstring = refreshfile.read()
refreshstring = re.sub(r'{{IPADDRESS}}',settings.host,refreshstring)
refreshstring = re.sub(r'{{PORT}}',str(settings.port),refreshstring)
print refreshstring
sys.exit()
pygame.init()
pygame.camera.init()
cam = pygame.camera.Camera(settings.DEVICE,settings.SIZE)
cam.start()
def bgserver(name):
class MyHandler(BaseHTTPRequestHandler):
def do_GET(self):
#self.wfile.write("
")
#self.wfile.write("All Shows: ")
#self.wfile.write("
")
if self.path == "/live":
self.send_response(200)
self.send_header('Content-type','text/html')
self.end_headers()
self.wfile.write(refreshstring)
else:
self.send_response(200)
self.send_header('Content-type','image/png')
#self.send_header('Content-type','text/html')
self.end_headers()
###works###
i = cam.get_image()
i = cam.get_image()
i = cam.get_image()
p = Image.fromstring('RGB',settings.SIZE,pygame.image.tostring(i,'RGB',False))
o = StringIO.StringIO()
p.save(o,'png')
self.wfile.write(o.getvalue())
class ThreadedHTTPServer(ThreadingMixIn, HTTPServer):
pass
server = ThreadedHTTPServer((settings.host, settings.port), MyHandler)
print "started webserver on port " + str(settings.port)
server.serve_forever()
bgserver('name1')