libutvideo: Add ULH0 and ULH2 decoding when using version 13.0.1

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Stephen Hutchinson 2013-06-09 08:08:03 -04:00 committed by Michael Niedermayer
parent 0047da071e
commit 8ed6c13fe3
4 changed files with 31 additions and 3 deletions

View file

@ -21,7 +21,8 @@
/**
* @file
* Known FOURCCs:
* 'ULY0' (YCbCr 4:2:0), 'ULY2' (YCbCr 4:2:2), 'ULRG' (RGB), 'ULRA' (RGBA)
* 'ULY0' (YCbCr 4:2:0), 'ULY2' (YCbCr 4:2:2), 'ULRG' (RGB), 'ULRA' (RGBA),
* 'ULH0' (YCbCr 4:2:0 BT.709), 'ULH2' (YCbCr 4:2:2 BT.709)
*/
extern "C" {
@ -51,6 +52,20 @@ static av_cold int utvideo_decode_init(AVCodecContext *avctx)
/* Pick format based on FOURCC */
switch (avctx->codec_tag) {
#ifdef UTV_BT709
case MKTAG('U', 'L', 'H', '0'):
avctx->pix_fmt = AV_PIX_FMT_YUV420P;
avctx->color_primaries = AVCOL_PRI_BT709;
avctx->colorspace = AVCOL_SPC_BT709;
format = UTVF_YV12;
break;
case MKTAG('U', 'L', 'H', '2'):
avctx->pix_fmt = AV_PIX_FMT_YUYV422;
avctx->color_primaries = AVCOL_PRI_BT709;
avctx->colorspace = AVCOL_SPC_BT709;
format = UTVF_YUY2;
break;
#endif
case MKTAG('U', 'L', 'Y', '0'):
avctx->pix_fmt = AV_PIX_FMT_YUV420P;
format = UTVF_YV12;