From 2e7bed7925972c4505c07a657cdaa6940d347d06 Mon Sep 17 00:00:00 2001 From: Pascal Massimino Date: Mon, 14 Dec 2020 12:25:21 +0100 Subject: [PATCH] WebPPicture: clarify the ownership of user-owned data. It's explicitly safe (and recommended!) to plug external data into the pic->y/u/v/argb fields. They are guaranteed to be preserved by the encoding process if no conversion is needed. Change-Id: I325ca41a6a834f7f028431c605dddef67e9542cc --- src/webp/encode.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/webp/encode.h b/src/webp/encode.h index 54938dfe..565c029b 100644 --- a/src/webp/encode.h +++ b/src/webp/encode.h @@ -292,6 +292,11 @@ typedef enum WebPEncodingError { #define WEBP_MAX_DIMENSION 16383 // Main exchange structure (input samples, output bytes, statistics) +// +// Once WebPPictureInit() has been called, it's ok to make all the INPUT fields +// (use_argb, y/u/v, argb, ...) point to user-owned data, even if +// WebPPictureAlloc() has been called. Depending on the value use_argb, +// it's guaranteed that either *argb or *y/*u/*v content will be kept untouched. struct WebPPicture { // INPUT //////////////