- if (burn_subtitle && _subtitle.image) {
- out->alpha_blend (_subtitle.image, _subtitle.position);
+ /* If the input is XYZ, keep it otherwise convert to RGB */
+ AVPixelFormat const p = _in->pixel_format() == AV_PIX_FMT_XYZ12LE ? AV_PIX_FMT_XYZ12LE : AV_PIX_FMT_RGB48LE;
+
+ shared_ptr<Image> out = im->crop_scale_window (total_crop, _inter_size, _out_size, yuv_to_rgb, p, true);
+
+ if (_subtitle) {
+ out->alpha_blend (_subtitle->image, _subtitle->position);