mirror of
https://github.com/webmproject/libwebp.git
synced 2025-02-13 15:32:53 +01:00
AnimEncoder API: Init method for default options.
Change-Id: I3ccd7fe782e10c51986b55fc1a515d958ff70752
This commit is contained in:
parent
856f8ec1fd
commit
b9489861a3
@ -150,6 +150,16 @@ static void DefaultEncoderOptions(WebPAnimEncoderOptions* const enc_options) {
|
|||||||
enc_options->verbose = 0;
|
enc_options->verbose = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int WebPAnimEncoderOptionsInitInternal(WebPAnimEncoderOptions* enc_options,
|
||||||
|
int abi_version) {
|
||||||
|
if (enc_options == NULL ||
|
||||||
|
WEBP_ABI_IS_INCOMPATIBLE(abi_version, WEBP_MUX_ABI_VERSION)) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
DefaultEncoderOptions(enc_options);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
#define TRANSPARENT_COLOR 0x00ffffff
|
#define TRANSPARENT_COLOR 0x00ffffff
|
||||||
|
|
||||||
static void ClearRectangle(WebPPicture* const picture,
|
static void ClearRectangle(WebPPicture* const picture,
|
||||||
|
@ -399,9 +399,11 @@ WEBP_EXTERN(WebPMuxError) WebPMuxAssemble(WebPMux* mux,
|
|||||||
//
|
//
|
||||||
// Code Example:
|
// Code Example:
|
||||||
/*
|
/*
|
||||||
WebPAnimEncoder* enc = WebPAnimEncoderNew(width, height, enc_options);
|
WebPAnimEncoderOptions enc_options;
|
||||||
|
WebPAnimEncoderOptionsInit(&enc_options);
|
||||||
|
WebPAnimEncoder* enc = WebPAnimEncoderNew(width, height, &enc_options);
|
||||||
while(<there are more frames>) {
|
while(<there are more frames>) {
|
||||||
WebPAnimEncoderAdd(enc, frame, duration, config);
|
WebPAnimEncoderAdd(enc, frame, duration, &config);
|
||||||
}
|
}
|
||||||
WebPAnimEncoderAssemble(enc, webp_data);
|
WebPAnimEncoderAssemble(enc, webp_data);
|
||||||
WebPAnimEncoderDelete(enc);
|
WebPAnimEncoderDelete(enc);
|
||||||
@ -431,6 +433,19 @@ typedef struct {
|
|||||||
uint32_t padding[4]; // Padding for later use.
|
uint32_t padding[4]; // Padding for later use.
|
||||||
} WebPAnimEncoderOptions;
|
} WebPAnimEncoderOptions;
|
||||||
|
|
||||||
|
// Internal, version-checked, entry point.
|
||||||
|
WEBP_EXTERN(int) WebPAnimEncoderOptionsInitInternal(
|
||||||
|
WebPAnimEncoderOptions*, int);
|
||||||
|
|
||||||
|
// Should always be called, to initialize a fresh WebPAnimEncoderOptions
|
||||||
|
// structure before modification. Returns false in case of version mismatch.
|
||||||
|
// WebPAnimEncoderOptionsInit() must have succeeded before using the 'options'
|
||||||
|
// object.
|
||||||
|
static WEBP_INLINE int WebPAnimEncoderOptionsInit(
|
||||||
|
WebPAnimEncoderOptions* enc_options) {
|
||||||
|
return WebPAnimEncoderOptionsInitInternal(enc_options, WEBP_MUX_ABI_VERSION);
|
||||||
|
}
|
||||||
|
|
||||||
// Internal, version-checked, entry point.
|
// Internal, version-checked, entry point.
|
||||||
WEBP_EXTERN(WebPAnimEncoder*) WebPAnimEncoderNewInternal(
|
WEBP_EXTERN(WebPAnimEncoder*) WebPAnimEncoderNewInternal(
|
||||||
int, int, const WebPAnimEncoderOptions*, int);
|
int, int, const WebPAnimEncoderOptions*, int);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user