Commit b183abfb authored by Luca Barbato's avatar Luca Barbato

vpx: Support color range

The range field has been introduced in version 1.6.0
parent ad71d327
......@@ -99,6 +99,16 @@ static int vp8_decode(AVCodecContext *avctx,
return ret;
av_image_copy(picture->data, picture->linesize, img->planes,
img->stride, avctx->pix_fmt, img->d_w, img->d_h);
#if VPX_IMAGE_ABI_VERSION >= 4
switch (img->range) {
case VPX_CR_STUDIO_RANGE:
picture->color_range = AVCOL_RANGE_MPEG;
break;
case VPX_CR_FULL_RANGE:
picture->color_range = AVCOL_RANGE_JPEG;
break;
}
#endif
*got_frame = 1;
}
return avpkt->size;
......
......@@ -552,6 +552,16 @@ static int vp8_encode(AVCodecContext *avctx, AVPacket *pkt,
rawimg->stride[VPX_PLANE_U] = frame->linesize[1];
rawimg->stride[VPX_PLANE_V] = frame->linesize[2];
timestamp = frame->pts;
#if VPX_IMAGE_ABI_VERSION >= 4
switch (frame->color_range) {
case AVCOL_RANGE_MPEG:
rawimg->range = VPX_CR_STUDIO_RANGE;
break;
case AVCOL_RANGE_JPEG:
rawimg->range = VPX_CR_FULL_RANGE;
break;
}
#endif
if (frame->pict_type == AV_PICTURE_TYPE_I)
flags |= VPX_EFLAG_FORCE_KF;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment