_is_init = 0 def init(): global list_cameras, Camera, colorspace, _is_init import os,sys use_opencv = False use_vidcapture = False use__camera = True if sys.platform == 'win32': use_vidcapture = True elif "linux" in sys.platform: use__camera = True else: use_opencv = True # see if we have any user specified defaults in environments. camera_env = os.environ.get("PYGAME_CAMERA", "") if camera_env == "opencv": use_opencv = True if camera_env == "vidcapture": use_vidcapture = True # select the camera module to import here. # the _camera module has some code which can be reused by other modules. # it will also be the default one. import _camera colorspace = _camera.colorspace if use__camera: list_cameras = _camera.list_cameras Camera = _camera.Camera if use_opencv: try: import _camera_opencv_highgui except: _camera_opencv_highgui = None if _camera_opencv_highgui: _camera_opencv_highgui.init() list_cameras = _camera_opencv_highgui.list_cameras Camera = _camera_opencv_highgui.Camera if use_vidcapture: try: import _camera_vidcapture except: _camera_vidcapture = None if _camera_vidcapture: _camera_vidcapture.init() list_cameras = _camera_vidcapture.list_cameras Camera = _camera_vidcapture.Camera _is_init = 1 pass def quit(): global _is_init _is_init = 0 pass def _check_init(): global _is_init if not _is_init: raise ValueError("Need to call camera.init() before using.") def list_cameras(): """ """ _check_init() raise NotImplementedError() class Camera: def __init__(self, device =0, size = (320, 200), mode = "RGB"): """ """ _check_init() raise NotImplementedError() def set_resolution(self, width, height): """Sets the capture resolution. (without dialog) """ pass def start(self): """ """ def stop(self): """ """ def get_buffer(self): """ """ def set_controls(self, **kwargs): """ """ def get_image(self, dest_surf = None): """ """ def get_surface(self, dest_surf = None): """ """ if __name__ == "__main__": # try and use this camera stuff with the pygame camera example. import pygame.examples.camera #pygame.camera.Camera = Camera #pygame.camera.list_cameras = list_cameras pygame.examples.camera.main()