ffmpeg | branch: master | Clément Bœsch <u...@pkh.me> | Tue Dec 27 17:38:10 2022 +0100| [3cafbdc083914d3a921fb241625ca8b6ccae1297] | committer: Clément Bœsch
avfilter/palette: add lowbias32 hashing > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=3cafbdc083914d3a921fb241625ca8b6ccae1297 --- libavfilter/palette.c | 10 ++++++++++ libavfilter/palette.h | 5 +++++ 2 files changed, 15 insertions(+) diff --git a/libavfilter/palette.c b/libavfilter/palette.c index e3a27fc51e..bba136408c 100644 --- a/libavfilter/palette.c +++ b/libavfilter/palette.c @@ -207,3 +207,13 @@ uint32_t ff_oklab_int_to_srgb_u8(struct Lab c) return r<<16 | g<<8 | b; } + +uint32_t ff_lowbias32(uint32_t x) +{ + x ^= x >> 16; + x *= 0x7feb352d; + x ^= x >> 15; + x *= 0x846ca68b; + x ^= x >> 16; + return x; +} diff --git a/libavfilter/palette.h b/libavfilter/palette.h index 6839bf6fc6..d3acc854ba 100644 --- a/libavfilter/palette.h +++ b/libavfilter/palette.h @@ -55,4 +55,9 @@ struct Lab ff_srgb_u8_to_oklab_int(uint32_t srgb); */ uint32_t ff_oklab_int_to_srgb_u8(struct Lab c); +/* + * lowbias32 hashing from https://nullprogram.com/blog/2018/07/31/ + */ +uint32_t ff_lowbias32(uint32_t x); + #endif /* AVFILTER_PALETTE_H */ _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".