| OLD | NEW |
| 1 // Copyright 2011 Google Inc. All Rights Reserved. | 1 // Copyright 2011 Google Inc. All Rights Reserved. |
| 2 // | 2 // |
| 3 // Use of this source code is governed by a BSD-style license | 3 // Use of this source code is governed by a BSD-style license |
| 4 // that can be found in the COPYING file in the root of the source | 4 // that can be found in the COPYING file in the root of the source |
| 5 // tree. An additional intellectual property rights grant can be found | 5 // tree. An additional intellectual property rights grant can be found |
| 6 // in the file PATENTS. All contributing project authors may | 6 // in the file PATENTS. All contributing project authors may |
| 7 // be found in the AUTHORS file in the root of the source tree. | 7 // be found in the AUTHORS file in the root of the source tree. |
| 8 // ----------------------------------------------------------------------------- | 8 // ----------------------------------------------------------------------------- |
| 9 // | 9 // |
| 10 // RIFF container manipulation and encoding for WebP images. | 10 // RIFF container manipulation and encoding for WebP images. |
| 11 // | 11 // |
| 12 // Authors: Urvang (urvang@google.com) | 12 // Authors: Urvang (urvang@google.com) |
| 13 // Vikas (vikasa@google.com) | 13 // Vikas (vikasa@google.com) |
| 14 | 14 |
| 15 #ifndef WEBP_WEBP_MUX_H_ | 15 #ifndef WEBP_WEBP_MUX_H_ |
| 16 #define WEBP_WEBP_MUX_H_ | 16 #define WEBP_WEBP_MUX_H_ |
| 17 | 17 |
| 18 #include "./mux_types.h" | 18 #include "./mux_types.h" |
| 19 | 19 |
| 20 #ifdef __cplusplus | 20 #ifdef __cplusplus |
| 21 extern "C" { | 21 extern "C" { |
| 22 #endif | 22 #endif |
| 23 | 23 |
| 24 #define WEBP_MUX_ABI_VERSION 0x0107 // MAJOR(8b) + MINOR(8b) | 24 #define WEBP_MUX_ABI_VERSION 0x0108 // MAJOR(8b) + MINOR(8b) |
| 25 | 25 |
| 26 //------------------------------------------------------------------------------ | 26 //------------------------------------------------------------------------------ |
| 27 // Mux API | 27 // Mux API |
| 28 // | 28 // |
| 29 // This API allows manipulation of WebP container images containing features | 29 // This API allows manipulation of WebP container images containing features |
| 30 // like color profile, metadata, animation. | 30 // like color profile, metadata, animation. |
| 31 // | 31 // |
| 32 // Code Example#1: Create a WebPMux object with image data, color profile and | 32 // Code Example#1: Create a WebPMux object with image data, color profile and |
| 33 // XMP metadata. | 33 // XMP metadata. |
| 34 /* | 34 /* |
| (...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 423 // Global options. | 423 // Global options. |
| 424 struct WebPAnimEncoderOptions { | 424 struct WebPAnimEncoderOptions { |
| 425 WebPMuxAnimParams anim_params; // Animation parameters. | 425 WebPMuxAnimParams anim_params; // Animation parameters. |
| 426 int minimize_size; // If true, minimize the output size (slow). Implicitly | 426 int minimize_size; // If true, minimize the output size (slow). Implicitly |
| 427 // disables key-frame insertion. | 427 // disables key-frame insertion. |
| 428 int kmin; | 428 int kmin; |
| 429 int kmax; // Minimum and maximum distance between consecutive key | 429 int kmax; // Minimum and maximum distance between consecutive key |
| 430 // frames in the output. The library may insert some key | 430 // frames in the output. The library may insert some key |
| 431 // frames as needed to satisfy this criteria. | 431 // frames as needed to satisfy this criteria. |
| 432 // Note that these conditions should hold: kmax > kmin | 432 // Note that these conditions should hold: kmax > kmin |
| 433 // and kmin >= kmax / 2 + 1. Also, if kmin == 0, then | 433 // and kmin >= kmax / 2 + 1. Also, if kmax <= 0, then |
| 434 // key-frame insertion is disabled; and if kmax == 0, | 434 // key-frame insertion is disabled; and if kmax == 1, |
| 435 // then all frames will be key-frames. | 435 // then all frames will be key-frames (kmin value does |
| 436 // not matter for these special cases). |
| 436 int allow_mixed; // If true, use mixed compression mode; may choose | 437 int allow_mixed; // If true, use mixed compression mode; may choose |
| 437 // either lossy and lossless for each frame. | 438 // either lossy and lossless for each frame. |
| 438 int verbose; // If true, print info and warning messages to stderr. | 439 int verbose; // If true, print info and warning messages to stderr. |
| 439 | 440 |
| 440 uint32_t padding[4]; // Padding for later use. | 441 uint32_t padding[4]; // Padding for later use. |
| 441 }; | 442 }; |
| 442 | 443 |
| 443 // Internal, version-checked, entry point. | 444 // Internal, version-checked, entry point. |
| 444 WEBP_EXTERN(int) WebPAnimEncoderOptionsInitInternal( | 445 WEBP_EXTERN(int) WebPAnimEncoderOptionsInitInternal( |
| 445 WebPAnimEncoderOptions*, int); | 446 WebPAnimEncoderOptions*, int); |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 520 // enc - (in/out) object to be deleted | 521 // enc - (in/out) object to be deleted |
| 521 WEBP_EXTERN(void) WebPAnimEncoderDelete(WebPAnimEncoder* enc); | 522 WEBP_EXTERN(void) WebPAnimEncoderDelete(WebPAnimEncoder* enc); |
| 522 | 523 |
| 523 //------------------------------------------------------------------------------ | 524 //------------------------------------------------------------------------------ |
| 524 | 525 |
| 525 #ifdef __cplusplus | 526 #ifdef __cplusplus |
| 526 } // extern "C" | 527 } // extern "C" |
| 527 #endif | 528 #endif |
| 528 | 529 |
| 529 #endif /* WEBP_WEBP_MUX_H_ */ | 530 #endif /* WEBP_WEBP_MUX_H_ */ |
| OLD | NEW |