Hi, On Mon, Oct 7, 2024 at 8:22 PM Niklas Haas <ffm...@haasn.xyz> wrote: > > On Mon, 07 Oct 2024 16:53:41 -0400 Sean McGovern <gsean...@gmail.com> wrote: > > Hi, > > > > On Sun, Oct 6, 2024 at 6:31 PM Michael Niedermayer > > <mich...@niedermayer.cc> wrote: > > > > > > On Sat, Oct 05, 2024 at 09:24:00PM +0200, Niklas Haas wrote: > > > > From: Niklas Haas <g...@haasn.dev> > > > > > > > > I want to move away from having random leaf processing functions mutate > > > > plane pointers, and while we're at it, we might as well make the strides > > > > and tables const as well. > > > > > > > > Sponsored-by: Sovereign Tech Fund > > > > Signed-off-by: Niklas Haas <g...@haasn.dev> > > > > --- > > > > libswscale/aarch64/swscale_unscaled.c | 34 ++-- > > > > libswscale/alphablend.c | 6 +- > > > > libswscale/arm/swscale_unscaled.c | 26 +-- > > > > libswscale/bayer_template.c | 4 +- > > > > libswscale/loongarch/yuv2rgb_lasx.c | 12 +- > > > > libswscale/loongarch/yuv2rgb_lsx.c | 12 +- > > > > libswscale/ppc/yuv2rgb_altivec.c | 12 +- > > > > libswscale/rgb2rgb.c | 2 +- > > > > libswscale/rgb2rgb.h | 4 +- > > > > libswscale/rgb2rgb_template.c | 2 +- > > > > libswscale/swscale_internal.h | 12 +- > > > > libswscale/swscale_unscaled.c | 242 +++++++++++++------------- > > > > libswscale/x86/yuv2rgb.c | 54 +++--- > > > > libswscale/yuv2rgb.c | 6 +- > > > > 14 files changed, 220 insertions(+), 208 deletions(-) > > > > > > should be ok > > > > Sorry for not checking this earlier, but PowerPC 32- and 64-bit builds > > with AltiVec enabled now fail with: > > > > src/libswscale/ppc/yuv2yuv_altivec.c: In function > > ‘ff_get_unscaled_swscale_ppc’: > > src/libswscale/ppc/yuv2yuv_altivec.c:199:33: error: assignment to > > ‘SwsFunc’ {aka ‘int (*)(SwsContext *, const unsigned char * const*, > > const int *, int, int, unsigned char * const*, const int *)’} from > > incompatible pointer type ‘int (*)(SwsContext *, const uint8_t **, int > > *, int, int, uint8_t **, int *)’ {aka ‘int (*)(SwsContext *, const > > unsigned char **, int *, int, int, unsigned char **, int *)’} > > [-Wincompatible-pointer-types] > > 199 | c->convert_unscaled = yv12toyuy2_unscaled_altivec; > > | ^ > > src/libswscale/ppc/yuv2yuv_altivec.c:201:33: error: assignment to > > ‘SwsFunc’ {aka ‘int (*)(SwsContext *, const unsigned char * const*, > > const int *, int, int, unsigned char * const*, const int *)’} from > > incompatible pointer type ‘int (*)(SwsContext *, const uint8_t **, int > > *, int, int, uint8_t **, int *)’ {aka ‘int (*)(SwsContext *, const > > unsigned char **, int *, int, int, unsigned char **, int *)’} > > [-Wincompatible-pointer-types] > > 201 | c->convert_unscaled = yv12touyvy_unscaled_altivec; > > | ^ > > make: *** [src/ffbuild/common.mak:81: libswscale/ppc/yuv2yuv_altivec.o] > > Error 1 > > My bad for missing this one. Is there a public way I can test build on > different > platforms before submitting series? I would have thought that posting it on > the > ML is enough to trigger FATE runs on all platforms, but I didn't get any email > reply to the series. > > Anyway, this should fix it: > > diff --git a/libswscale/ppc/yuv2yuv_altivec.c > b/libswscale/ppc/yuv2yuv_altivec.c > index 728e4d210c..d63feb6012 100644 > --- a/libswscale/ppc/yuv2yuv_altivec.c > +++ b/libswscale/ppc/yuv2yuv_altivec.c > @@ -31,10 +31,10 @@ > > #if HAVE_ALTIVEC > > -static int yv12toyuy2_unscaled_altivec(SwsContext *c, const uint8_t *src[], > - int srcStride[], int srcSliceY, > - int srcSliceH, uint8_t *dstParam[], > - int dstStride_a[]) > +static int yv12toyuy2_unscaled_altivec(SwsContext *c, const uint8_t *const > src[], > + const int srcStride[], int srcSliceY, > + int srcSliceH, uint8_t *const > dstParam[], > + const int dstStride_a[]) > { > uint8_t *dst = dstParam[0] + dstStride_a[0] * srcSliceY; > // yv12toyuy2(src[0], src[1], src[2], dst, c->srcW, srcSliceH, > @@ -107,10 +107,10 @@ static int yv12toyuy2_unscaled_altivec(SwsContext *c, > const uint8_t *src[], > return srcSliceH; > } > > -static int yv12touyvy_unscaled_altivec(SwsContext *c, const uint8_t *src[], > - int srcStride[], int srcSliceY, > - int srcSliceH, uint8_t *dstParam[], > - int dstStride_a[]) > +static int yv12touyvy_unscaled_altivec(SwsContext *c, const uint8_t *const > src[], > + const int srcStride[], int srcSliceY, > + int srcSliceH, uint8_t *const > dstParam[], > + const int dstStride_a[]) > { > uint8_t *dst = dstParam[0] + dstStride_a[0] * srcSliceY; > // yv12toyuy2(src[0], src[1], src[2], dst, c->srcW, srcSliceH, > > >
Yes that works, thanks. -- Sean McGovern _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".