[FFmpeg-devel] [PATCH v4 0/1] [WIP] avutil/csp changes

Leo Izen leo.izen at gmail.com
Tue May 24 00:01:38 EEST 2022


Changes in v4:
- Provide the patch with an AVCIExy struct so we can discuss its
  potential pros and cons

Changes in v3:
- increase precision for AVR() macro to 100k, at haasn's request
- add #define AVUTIL_CSP_DENOM 100000
- add 0.5 to the AVR macro definition to get exact values from truncation

This patch is a work in progress example for swapping these
structs from doubles to AVRationals.

There's two main discussions here to be had
- Is this API to be exposed as avpriv_ or av_?
- Should these structs use AVRational or double values?

I don't believe a consensus has been reached on this yet, but I've attached
an AVRational version of it so we can see the pros/cons.

Leo Izen (1):
  avutil/csp: create public API for colorspace structs

 libavfilter/colorspace.c    | 143 ++++++++----------------------------
 libavfilter/colorspace.h    |  31 +-------
 libavfilter/fflcms2.c       |  33 +++++----
 libavfilter/fflcms2.h       |   4 +-
 libavfilter/vf_colorspace.c |  37 +++++-----
 libavfilter/vf_iccdetect.c  |   5 +-
 libavfilter/vf_tonemap.c    |  17 +----
 libavutil/Makefile          |   2 +
 libavutil/csp.c             | 121 ++++++++++++++++++++++++++++++
 libavutil/csp.h             |  53 +++++++++++++
 libavutil/version.h         |   2 +-
 11 files changed, 257 insertions(+), 191 deletions(-)
 create mode 100644 libavutil/csp.c
 create mode 100644 libavutil/csp.h

-- 
2.36.1



More information about the ffmpeg-devel mailing list