Skip to content
Snippets Groups Projects
utils.c 74 KiB
Newer Older
  • Learn to ignore specific revisions
  •                                         enum AVPixelFormat dstFormat, int flags,
    
                                            SwsFilter *srcFilter,
                                            SwsFilter *dstFilter,
                                            const double *param)
    
        static const double default_param[2] = { SWS_PARAM_DEFAULT,
                                                 SWS_PARAM_DEFAULT };
    
            (context->srcW      != srcW      ||
             context->srcH      != srcH      ||
             context->srcFormat != srcFormat ||
             context->dstW      != dstW      ||
             context->dstH      != dstH      ||
             context->dstFormat != dstFormat ||
             context->flags     != flags     ||
             context->param[0]  != param[0]  ||
    
             context->param[1]  != param[1])) {
            sws_freeContext(context);
            context = NULL;
        }
    
            if (!(context = sws_alloc_context()))
                return NULL;
            context->srcW      = srcW;
            context->srcH      = srcH;
    
            context->srcRange  = handle_jpeg(&srcFormat);
    
            context->srcFormat = srcFormat;
    
            context->dstW      = dstW;
            context->dstH      = dstH;
    
            context->dstRange  = handle_jpeg(&dstFormat);
    
            context->dstFormat = dstFormat;
    
            handle_formats(context);
    
            context->flags     = flags;
            context->param[0]  = param[0];
            context->param[1]  = param[1];
    
            sws_setColorspaceDetails(context, ff_yuv2rgb_coeffs[SWS_CS_DEFAULT],
                                     context->srcRange,
                                     ff_yuv2rgb_coeffs[SWS_CS_DEFAULT] /* FIXME*/,
                                     context->dstRange, 0, 1 << 16, 1 << 16);
    
            if (sws_init_context(context, srcFilter, dstFilter) < 0) {
                sws_freeContext(context);
                return NULL;
            }