def main(): logging.basicConfig(format='%(levelname)s: %(name)s: %(message)s', level=logging.WARNING) gp.check_result(gp.use_python_logging()) context = gp.gp_context_new() if hasattr(gp, 'gp_camera_autodetect'): # gphoto2 version 2.5+ cameras = gp.check_result(gp.gp_camera_autodetect(context)) else: port_info_list = gp.check_result(gp.gp_port_info_list_new()) gp.check_result(gp.gp_port_info_list_load(port_info_list)) abilities_list = gp.check_result(gp.gp_abilities_list_new()) gp.check_result(gp.gp_abilities_list_load(abilities_list, context)) cameras = gp.check_result( gp.gp_abilities_list_detect(abilities_list, port_info_list, context)) n = 0 for name, value in cameras: print('camera number', n) print('===============') print(name) print(value) print() n += 1 return 0
def find_camera(self): context = gp.gp_context_new() port_info_list = gp.check_result(gp.gp_port_info_list_new()) gp.check_result(gp.gp_port_info_list_load(port_info_list)) abilities_list = gp.check_result(gp.gp_abilities_list_new()) gp.check_result(gp.gp_abilities_list_load(abilities_list, context)) self._cameras = gp.check_result( gp.gp_abilities_list_detect(abilities_list, port_info_list, context)) found_device = False for name, value in self._cameras: logger.debug("%s, %s" % (name, value)) found_device = True return found_device
def get_all_cameras(): # Ugh, C libraries >.< # Get all available ports portinfolist = gp.check_result(gp.gp_port_info_list_new()) gp.check_result(gp.gp_port_info_list_load(portinfolist)) # Get all available cameras and a string of their port context = gp.gp_context_new() camlist = gp.check_result(gp.gp_camera_autodetect(context)) cameralist = [] for i in range(camlist.count()): camname = camlist.get_name(i) camport = camlist.get_value(i) # Find port info for this camera portindex = portinfolist.lookup_path(camport) portinfo = portinfolist.get_info(portindex) # Create camera object and associate with given port cam = gp.check_result(gp.gp_camera_new()) gp.check_result(gp.gp_camera_set_port_info(cam, portinfo)) myCamera = Camera("{} ({})".format(camname, camport), cam, context) cameralist.append(myCamera) return cameralist
def main(): logging.basicConfig( format='%(levelname)s: %(name)s: %(message)s', level=logging.WARNING) gp.check_result(gp.use_python_logging()) context = gp.gp_context_new() camera_list = gp.check_result(gp.gp_camera_autodetect(context)) # gp.check_result(gp.gp_camera_init(camera, context)) # camera_list = GetCameraList(context) # loop through camera list for index, (name, addr) in enumerate(camera_list): print('Processing camera {:d}: {:s} {:s}'.format(index, addr, name)) # search ports for camera port name and match to this iteration port_info_list = gp.check_result(gp.gp_port_info_list_new()) gp.check_result(gp.gp_port_info_list_load(port_info_list)) idx = gp.check_result(gp.gp_port_info_list_lookup_path(port_info_list, addr)) # open this camera and associated context camera = gp.check_result(gp.gp_camera_new()) gp.check_result(gp.gp_camera_set_port_info(camera,port_info_list[idx])) gp.check_result(gp.gp_camera_init(camera,context)) # get camera configuration config = gp.check_result(gp.gp_camera_get_config(camera,context)) # grab current value of imageformat and change to JPG image_format_old = get_config_value(config,'imageformat') set_config_value(camera,config,context,'imageformat',jpgFormat) image_format = get_config_value(config,'imageformat') print('Changed image format from {:s} to {:s}'.format(image_format_old,image_format)) # close this camera gp.check_result(gp.gp_camera_exit(camera,context)) return 0
def main(): logging.basicConfig( format='%(levelname)s: %(name)s: %(message)s', level=logging.WARNING) gp.check_result(gp.use_python_logging()) context = gp.gp_context_new() if hasattr(gp, 'gp_camera_autodetect'): # gphoto2 version 2.5+ cameras = gp.check_result(gp.gp_camera_autodetect(context)) else: port_info_list = gp.check_result(gp.gp_port_info_list_new()) gp.check_result(gp.gp_port_info_list_load(port_info_list)) abilities_list = gp.check_result(gp.gp_abilities_list_new()) gp.check_result(gp.gp_abilities_list_load(abilities_list, context)) cameras = gp.check_result(gp.gp_abilities_list_detect( abilities_list, port_info_list, context)) n = 0 for name, value in cameras: print('camera number', n) print('===============') print(name) print(value) print n += 1 return 0
def main(): logging.basicConfig( format='%(levelname)s: %(name)s: %(message)s', level=logging.WARNING) gp.check_result(gp.use_python_logging()) cameras = gp.check_result(gp.gp_list_new()) context = gp.gp_context_new() if hasattr(gp, 'gp_camera_autodetect'): # gphoto2 version 2.5+ cam_count = gp.check_result(gp.gp_camera_autodetect(cameras, context)) assert cam_count == gp.gp_list_count(cameras) else: port_info_list = gp.check_result(gp.gp_port_info_list_new()) gp.check_result(gp.gp_port_info_list_load(port_info_list)) abilities_list = gp.check_result(gp.gp_abilities_list_new()) gp.check_result(gp.gp_abilities_list_load(abilities_list, context)) gp.check_result(gp.gp_abilities_list_detect( abilities_list, port_info_list, cameras, context)) for n in range(gp.gp_list_count(cameras)): print('camera number', n) print('===============') print(gp.check_result(gp.gp_list_get_name(cameras, n))) print(gp.check_result(gp.gp_list_get_value(cameras, n))) print return 0
def _detect_cameras(self): # use Python logging # logging.basicConfig(format='%(levelname)s: %(name)s: %(message)s', level=logging.WARNING) # gp.check_result(gp.use_python_logging()) self.context = gp.gp_context_new() error, self.port_info_list = gp.gp_port_info_list_new() gp.check_result(error) error = gp.gp_port_info_list_load(self.port_info_list) gp.check_result(error) error, abilities_list = gp.gp_abilities_list_new() gp.check_result(error) error = gp.gp_abilities_list_load(abilities_list) gp.check_result(error) error, cameras = gp.gp_abilities_list_detect(abilities_list, self.port_info_list) gp.check_result(error) return cameras