def new(preset=WebPPreset.DEFAULT, quality=75, lossless=False): ptr = ffi.new('WebPConfig*') if lib.WebPConfigPreset(ptr, preset.value, quality) == 0: raise WebPError('failed to load config from preset') config = WebPConfig(ptr) config.lossless = lossless if not config.validate(): raise WebPError('config is not valid') return config
def new(preset=WebPPreset.DEFAULT, quality=75, lossless=False): """Create a new WebPConfig instance to describe encoder settings. Args: preset (WebPPreset): quality (int): Quality (0-100, where 0 is lowest quality). lossless (bool): Set to True for lossless compression. Returns: WebPConfig: The new WebPConfig instance. """ ptr = ffi.new('WebPConfig*') if lib.WebPConfigPreset(ptr, preset.value, quality) == 0: raise WebPError('failed to load config from preset') config = WebPConfig(ptr) config.lossless = lossless if not config.validate(): raise WebPError('config is not valid') return config