static inline void RENAME(hyscale)(SwsContext *c, uint16_t *dst, long dstWidth, const uint8_t *src, int srcW, int xInc,

                                   const int16_t *hLumFilter,

                                   const int16_t *hLumFilterPos, int hLumFilterSize,

                                   uint8_t *formatConvBuffer,

                                   uint32_t *pal, int isAlpha)

{

    void (*toYV12)(uint8_t *, const uint8_t *, long, uint32_t *) = isAlpha ? c->alpToYV12 : c->lumToYV12;

    void (*convertRange)(int16_t *, int) = isAlpha ? NULL : c->lumConvertRange;



    src += isAlpha ? c->alpSrcOffset : c->lumSrcOffset;



    if (toYV12) {

        toYV12(formatConvBuffer, src, srcW, pal);

        src= formatConvBuffer;

    }



    if (c->hScale16) {

        c->hScale16(dst, dstWidth, (uint16_t*)src, srcW, xInc, hLumFilter, hLumFilterPos, hLumFilterSize, av_pix_fmt_descriptors[c->srcFormat].comp[0].depth_minus1);

    } else if (!c->hyscale_fast) {

        c->hScale(dst, dstWidth, src, srcW, xInc, hLumFilter, hLumFilterPos, hLumFilterSize);

    } else { // fast bilinear upscale / crap downscale

        c->hyscale_fast(c, dst, dstWidth, src, srcW, xInc);

    }



    if (convertRange)

        convertRange(dst, dstWidth);

}

static inline void RENAME(hyscale)(SwsContext *c, uint16_t *dst, long dstWidth, const uint8_t *src, int srcW, int xInc,

                                   const int16_t *hLumFilter,

                                   const int16_t *hLumFilterPos, int hLumFilterSize,

                                   uint8_t *formatConvBuffer,

                                   uint32_t *pal, int isAlpha)

{

    void (*toYV12)(uint8_t *, const uint8_t *, long, uint32_t *) = isAlpha ? c->alpToYV12 : c->lumToYV12;

    void (*convertRange)(int16_t *, int) = isAlpha ? NULL : c->lumConvertRange;



    src += isAlpha ? c->alpSrcOffset : c->lumSrcOffset;



    if (toYV12) {

        toYV12(formatConvBuffer, src, srcW, pal);

        src= formatConvBuffer;

    }



    if (c->hScale16) {

        c->hScale16(dst, dstWidth, (uint16_t*)src, srcW, xInc, hLumFilter, hLumFilterPos, hLumFilterSize, av_pix_fmt_descriptors[c->srcFormat].comp[0].depth_minus1);

    } else if (!c->hyscale_fast) {

        c->hScale(dst, dstWidth, src, srcW, xInc, hLumFilter, hLumFilterPos, hLumFilterSize);

    } else { 

        c->hyscale_fast(c, dst, dstWidth, src, srcW, xInc);

    }



    if (convertRange)

        convertRange(dst, dstWidth);

}

VAR_3staticVAR_3 VAR_3inlineVAR_3 VAR_3voidVAR_3 VAR_3RENAMEVAR_3(VAR_3hyscaleVAR_3)(VAR_3SwsContextVAR_3 *VAR_3cVAR_3, VAR_3uint16_tVAR_3 *VAR_3dstVAR_3, VAR_3longVAR_3 VAR_3dstWidthVAR_3, VAR_3constVAR_3 VAR_3uint8_tVAR_3 *VAR_3srcVAR_3, VAR_3intVAR_3 VAR_3srcWVAR_3, VAR_3intVAR_3 VAR_3xIncVAR_3,

                                   VAR_3constVAR_3 VAR_3int16_tVAR_3 *VAR_3hLumFilterVAR_3,

                                   VAR_3constVAR_3 VAR_3int16_tVAR_3 *VAR_3hLumFilterPosVAR_3, VAR_3intVAR_3 VAR_3hLumFilterSizeVAR_3,

                                   VAR_3uint8_tVAR_3 *VAR_3formatConvBufferVAR_3,

                                   VAR_3uint32_tVAR_3 *VAR_3palVAR_3, VAR_3intVAR_3 VAR_3isAlphaVAR_3)

{

    VAR_3voidVAR_3 (*VAR_3VAR_0VAR_3)(VAR_3uint8_tVAR_3 *, VAR_3constVAR_3 VAR_3uint8_tVAR_3 *, VAR_3longVAR_3, VAR_3uint32_tVAR_3 *) = VAR_3isAlphaVAR_3 ? VAR_3cVAR_3->VAR_3alpToYV12VAR_3 : VAR_3cVAR_3->VAR_3lumToYV12VAR_3;

    VAR_3voidVAR_3 (*VAR_3convertRangeVAR_3)(VAR_3int16_tVAR_3 *, VAR_3intVAR_3) = VAR_3isAlphaVAR_3 ? VAR_3NULLVAR_3 : VAR_3cVAR_3->VAR_3lumConvertRangeVAR_3;



    VAR_3srcVAR_3 += VAR_3isAlphaVAR_3 ? VAR_3cVAR_3->VAR_3alpSrcOffsetVAR_3 : VAR_3cVAR_3->VAR_3lumSrcOffsetVAR_3;



    VAR_3ifVAR_3 (VAR_3VAR_0VAR_3) {

        VAR_3VAR_0VAR_3(VAR_3formatConvBufferVAR_3, VAR_3srcVAR_3, VAR_3srcWVAR_3, VAR_3palVAR_3);

        VAR_3srcVAR_3= VAR_3formatConvBufferVAR_3;

    }



    VAR_3ifVAR_3 (VAR_3cVAR_3->VAR_3hScale16VAR_3) {

        VAR_3cVAR_3->VAR_3hScale16VAR_3(VAR_3dstVAR_3, VAR_3dstWidthVAR_3, (VAR_3uint16_tVAR_3*)VAR_3srcVAR_3, VAR_3srcWVAR_3, VAR_3xIncVAR_3, VAR_3hLumFilterVAR_3, VAR_3hLumFilterPosVAR_3, VAR_3hLumFilterSizeVAR_3, VAR_3av_pix_fmt_descriptorsVAR_3[VAR_3cVAR_3->VAR_3srcFormatVAR_3].VAR_3compVAR_3[VAR_30VAR_3].VAR_3depth_minus1VAR_3);

    } VAR_3elseVAR_3 VAR_3ifVAR_3 (!VAR_3cVAR_3->VAR_3hyscale_fastVAR_3) {

        VAR_3cVAR_3->VAR_3hScaleVAR_3(VAR_3dstVAR_3, VAR_3dstWidthVAR_3, VAR_3srcVAR_3, VAR_3srcWVAR_3, VAR_3xIncVAR_3, VAR_3hLumFilterVAR_3, VAR_3hLumFilterPosVAR_3, VAR_3hLumFilterSizeVAR_3);

    } VAR_3elseVAR_3 { 

        VAR_3cVAR_3->VAR_3hyscale_fastVAR_3(VAR_3cVAR_3, VAR_3dstVAR_3, VAR_3dstWidthVAR_3, VAR_3srcVAR_3, VAR_3srcWVAR_3, VAR_3xIncVAR_3);

    }



    VAR_3ifVAR_3 (VAR_3convertRangeVAR_3)

        VAR_3convertRangeVAR_3(VAR_3dstVAR_3, VAR_3dstWidthVAR_3);

}

VAR_3staticVAR_3 VAR_3inlineVAR_3 VAR_3voidVAR_3 VAR_3RENAMEVAR_3(VAR_3hyscaleVAR_3)(VAR_3SwsContextVAR_3 *VAR_3cVAR_3, VAR_3uint16_tVAR_3 *VAR_3dstVAR_3, VAR_3longVAR_3 VAR_3dstWidthVAR_3, VAR_3constVAR_3 VAR_3uint8_tVAR_3 *VAR_3srcVAR_3, VAR_3intVAR_3 VAR_3srcWVAR_3, VAR_3intVAR_3 VAR_3xIncVAR_3,
VAR_3constVAR_3 VAR_3int16_tVAR_3 *VAR_3hLumFilterVAR_3,
VAR_3constVAR_3 VAR_3int16_tVAR_3 *VAR_3hLumFilterPosVAR_3, VAR_3intVAR_3 VAR_3hLumFilterSizeVAR_3,
VAR_3uint8_tVAR_3 *VAR_3formatConvBufferVAR_3,
VAR_3uint32_tVAR_3 *VAR_3palVAR_3, VAR_3intVAR_3 VAR_3isAlphaVAR_3)
{ VAR_3voidVAR_3 (*VAR_3VAR_0VAR_3)(VAR_3uint8_tVAR_3 *, VAR_3constVAR_3 VAR_3uint8_tVAR_3 *, VAR_3longVAR_3, VAR_3uint32_tVAR_3 *) = VAR_3isAlphaVAR_3 ? VAR_3cVAR_3->VAR_3alpToYV12VAR_3 : VAR_3cVAR_3->VAR_3lumToYV12VAR_3; VAR_3voidVAR_3 (*VAR_3convertRangeVAR_3)(VAR_3int16_tVAR_3 *, VAR_3intVAR_3) = VAR_3isAlphaVAR_3 ? VAR_3NULLVAR_3 : VAR_3cVAR_3->VAR_3lumConvertRangeVAR_3; VAR_3srcVAR_3 += VAR_3isAlphaVAR_3 ? VAR_3cVAR_3->VAR_3alpSrcOffsetVAR_3 : VAR_3cVAR_3->VAR_3lumSrcOffsetVAR_3; VAR_3ifVAR_3 (VAR_3VAR_0VAR_3) { VAR_3VAR_0VAR_3(VAR_3formatConvBufferVAR_3, VAR_3srcVAR_3, VAR_3srcWVAR_3, VAR_3palVAR_3); VAR_3srcVAR_3= VAR_3formatConvBufferVAR_3; } VAR_3ifVAR_3 (VAR_3cVAR_3->VAR_3hScale16VAR_3) { VAR_3cVAR_3->VAR_3hScale16VAR_3(VAR_3dstVAR_3, VAR_3dstWidthVAR_3, (VAR_3uint16_tVAR_3*)VAR_3srcVAR_3, VAR_3srcWVAR_3, VAR_3xIncVAR_3, VAR_3hLumFilterVAR_3, VAR_3hLumFilterPosVAR_3, VAR_3hLumFilterSizeVAR_3, VAR_3av_pix_fmt_descriptorsVAR_3[VAR_3cVAR_3->VAR_3srcFormatVAR_3].VAR_3compVAR_3[VAR_30VAR_3].VAR_3depth_minus1VAR_3); } VAR_3elseVAR_3 VAR_3ifVAR_3 (!VAR_3cVAR_3->VAR_3hyscale_fastVAR_3) { VAR_3cVAR_3->VAR_3hScaleVAR_3(VAR_3dstVAR_3, VAR_3dstWidthVAR_3, VAR_3srcVAR_3, VAR_3srcWVAR_3, VAR_3xIncVAR_3, VAR_3hLumFilterVAR_3, VAR_3hLumFilterPosVAR_3, VAR_3hLumFilterSizeVAR_3); } VAR_3elseVAR_3 { VAR_3cVAR_3->VAR_3hyscale_fastVAR_3(VAR_3cVAR_3, VAR_3dstVAR_3, VAR_3dstWidthVAR_3, VAR_3srcVAR_3, VAR_3srcWVAR_3, VAR_3xIncVAR_3); } VAR_3ifVAR_3 (VAR_3convertRangeVAR_3)
VAR_3convertRangeVAR_3(VAR_3dstVAR_3, VAR_3dstWidthVAR_3); }