avfilter/vsrc_ddagrab: set sRGB color information on output frames

According to MSDN, all integer pixel formats contains sRGB compliant
pixel data, so set the color information on our output frames
accordingly.
pull/388/head
Timo Rothenpieler 2 years ago
parent 5e7eaabb42
commit 611f843534
  1. 12
      libavfilter/vsrc_ddagrab.c

@ -983,6 +983,18 @@ static int ddagrab_request_frame(AVFilterLink *outlink)
frame->sample_aspect_ratio = (AVRational){1, 1};
if (desc.Format == DXGI_FORMAT_B8G8R8A8_UNORM ||
desc.Format == DXGI_FORMAT_R10G10B10A2_UNORM) {
// According to MSDN, all integer formats contain sRGB image data
frame->color_range = AVCOL_RANGE_JPEG;
frame->color_primaries = AVCOL_PRI_BT709;
frame->color_trc = AVCOL_TRC_IEC61966_2_1;
frame->colorspace = AVCOL_SPC_RGB;
} else {
ret = AVERROR_BUG;
goto fail;
}
av_frame_unref(dda->last_frame);
ret = av_frame_ref(dda->last_frame, frame);
if (ret < 0)

Loading…
Cancel
Save