- img_convert( &pic4, PIX_FMT_RGBA32, &pic3, PIX_FMT_YUV420P,
- job->width, job->height );
+
+ // Get scaling context
+ context = sws_getContext(title->width - (job->crop[2] + job->crop[3]),
+ title->height - (job->crop[0] + job->crop[1]),
+ PIX_FMT_YUV420P,
+ job->width, job->height, PIX_FMT_YUV420P,
+ (uint16_t)(SWS_LANCZOS|SWS_ACCURATE_RND), NULL, NULL, NULL);
+
+ // Scale
+ sws_scale(context,
+ pic_crop.data, pic_crop.linesize,
+ 0, title->height - (job->crop[0] + job->crop[1]),
+ pic_scale.data, pic_scale.linesize);
+
+ // Free context
+ sws_freeContext( context );
+
+ // Get preview context
+ context = sws_getContext(job->width, job->height, PIX_FMT_YUV420P,
+ job->width, job->height, PIX_FMT_RGBA32,
+ (uint16_t)(SWS_LANCZOS|SWS_ACCURATE_RND), NULL, NULL, NULL);
+
+ // Create preview
+ sws_scale(context,
+ pic_scale.data, pic_scale.linesize,
+ 0, job->height,
+ pic_preview.data, pic_preview.linesize);
+
+ // Free context
+ sws_freeContext( context );