mbox series

[FFmpeg-devel,v3,0/4] swscale rgbaf32 input/output support

Message ID 20221103040010.1134-1-mindmark@gmail.com
Headers show
Series swscale rgbaf32 input/output support | expand

Message

Mark Reid Nov. 3, 2022, 4 a.m. UTC
From: Mark Reid <mindmark@gmail.com>

This patch series adds swscale input/output support for the packed rgb float formats.
A few of the filters also needed support the larger 96/128 bit packed pixel sizes.

I also plan to eventually add lossless unscaled conversions between the planer and packed formats.

changes since v2
* add bias to rgbaf32 output to improve non overflowing range
changes since v1
* output correct alpha if src doesn't have alpha

Mark Reid (4):
  swscale/input: add rgbaf32 input support
  avfilter/vf_hflip: add support for packed rgb float formats
  avfilter/vf_transpose: add support for packed rgb float formats
  swscale/output: add rgbaf32 output support

 libavfilter/vf_hflip_init.h              |  25 ++++
 libavfilter/vf_transpose.c               |  44 ++++++
 libswscale/input.c                       | 172 +++++++++++++++++++++++
 libswscale/output.c                      |  92 ++++++++++++
 libswscale/swscale_unscaled.c            |   4 +-
 libswscale/tests/floatimg_cmp.c          |   4 +-
 libswscale/utils.c                       |  12 +-
 libswscale/yuv2rgb.c                     |   2 +
 tests/ref/fate/filter-pixdesc-rgbaf32be  |   1 +
 tests/ref/fate/filter-pixdesc-rgbaf32le  |   1 +
 tests/ref/fate/filter-pixdesc-rgbf32be   |   1 +
 tests/ref/fate/filter-pixdesc-rgbf32le   |   1 +
 tests/ref/fate/filter-pixfmts-copy       |   4 +
 tests/ref/fate/filter-pixfmts-crop       |   4 +
 tests/ref/fate/filter-pixfmts-field      |   4 +
 tests/ref/fate/filter-pixfmts-fieldorder |   4 +
 tests/ref/fate/filter-pixfmts-hflip      |   4 +
 tests/ref/fate/filter-pixfmts-il         |   4 +
 tests/ref/fate/filter-pixfmts-null       |   4 +
 tests/ref/fate/filter-pixfmts-scale      |   4 +
 tests/ref/fate/filter-pixfmts-transpose  |   4 +
 tests/ref/fate/filter-pixfmts-vflip      |   4 +
 tests/ref/fate/sws-floatimg-cmp          |  16 +++
 23 files changed, 411 insertions(+), 4 deletions(-)
 create mode 100644 tests/ref/fate/filter-pixdesc-rgbaf32be
 create mode 100644 tests/ref/fate/filter-pixdesc-rgbaf32le
 create mode 100644 tests/ref/fate/filter-pixdesc-rgbf32be
 create mode 100644 tests/ref/fate/filter-pixdesc-rgbf32le

--
2.31.1.windows.1

Comments

Mark Reid Nov. 12, 2022, 11:48 p.m. UTC | #1
On Wed, Nov 2, 2022 at 9:00 PM <mindmark@gmail.com> wrote:

> From: Mark Reid <mindmark@gmail.com>
>
> This patch series adds swscale input/output support for the packed rgb
> float formats.
> A few of the filters also needed support the larger 96/128 bit packed
> pixel sizes.
>
> I also plan to eventually add lossless unscaled conversions between the
> planer and packed formats.
>
> changes since v2
> * add bias to rgbaf32 output to improve non overflowing range
> changes since v1
> * output correct alpha if src doesn't have alpha
>
> Mark Reid (4):
>   swscale/input: add rgbaf32 input support
>   avfilter/vf_hflip: add support for packed rgb float formats
>   avfilter/vf_transpose: add support for packed rgb float formats
>   swscale/output: add rgbaf32 output support
>
>  libavfilter/vf_hflip_init.h              |  25 ++++
>  libavfilter/vf_transpose.c               |  44 ++++++
>  libswscale/input.c                       | 172 +++++++++++++++++++++++
>  libswscale/output.c                      |  92 ++++++++++++
>  libswscale/swscale_unscaled.c            |   4 +-
>  libswscale/tests/floatimg_cmp.c          |   4 +-
>  libswscale/utils.c                       |  12 +-
>  libswscale/yuv2rgb.c                     |   2 +
>  tests/ref/fate/filter-pixdesc-rgbaf32be  |   1 +
>  tests/ref/fate/filter-pixdesc-rgbaf32le  |   1 +
>  tests/ref/fate/filter-pixdesc-rgbf32be   |   1 +
>  tests/ref/fate/filter-pixdesc-rgbf32le   |   1 +
>  tests/ref/fate/filter-pixfmts-copy       |   4 +
>  tests/ref/fate/filter-pixfmts-crop       |   4 +
>  tests/ref/fate/filter-pixfmts-field      |   4 +
>  tests/ref/fate/filter-pixfmts-fieldorder |   4 +
>  tests/ref/fate/filter-pixfmts-hflip      |   4 +
>  tests/ref/fate/filter-pixfmts-il         |   4 +
>  tests/ref/fate/filter-pixfmts-null       |   4 +
>  tests/ref/fate/filter-pixfmts-scale      |   4 +
>  tests/ref/fate/filter-pixfmts-transpose  |   4 +
>  tests/ref/fate/filter-pixfmts-vflip      |   4 +
>  tests/ref/fate/sws-floatimg-cmp          |  16 +++
>  23 files changed, 411 insertions(+), 4 deletions(-)
>  create mode 100644 tests/ref/fate/filter-pixdesc-rgbaf32be
>  create mode 100644 tests/ref/fate/filter-pixdesc-rgbaf32le
>  create mode 100644 tests/ref/fate/filter-pixdesc-rgbf32be
>  create mode 100644 tests/ref/fate/filter-pixdesc-rgbf32le
>
> --
> 2.31.1.windows.1
>
>
ping