fix compatibility with last stable libWebP release = 0.4.3

This commit is contained in:
Gabriel Rauter 2015-09-01 23:39:35 +02:00
parent 5ae9b9a6ef
commit 467fcbc0ce

View File

@ -201,6 +201,25 @@ const std::pair<WebPEncodingError, std::string> enc_error_map_data[] = {
const std::map<WebPEncodingError, std::string> WebPEncodingErrorMap(enc_error_map_data, enc_error_map_data + sizeof enc_error_map_data / sizeof enc_error_map_data[0]);
#if WEBP_ENCODER_ABI_VERSION < 0x0203
#define MAX_LEVEL 9
// Mapping between -z level and -m / -q parameter settings.
static const struct {
uint8_t method_;
uint8_t quality_;
} kLosslessPresets[MAX_LEVEL + 1] = {
{ 0, 0 }, { 1, 20 }, { 2, 25 }, { 3, 30 }, { 3, 50 },
{ 4, 50 }, { 4, 75 }, { 4, 90 }, { 5, 90 }, { 6, 100 }
};
int WebPConfigLosslessPreset(WebPConfig* config, int level) {
if (config == NULL || level < 0 || level > MAX_LEVEL) return 0;
config->lossless = 1;
config->method = kLosslessPresets[level].method_;
config->quality = kLosslessPresets[level].quality_;
return 1;
}
#endif
static int ProgressReport(int percent, const WebPPicture* const pic)
{
fop_progress(((writerData*)pic->custom_ptr)->fop, (double)percent/(double)100);