#include <inttypes.h>
#include <stdlib.h>
+#define CACHED_BITSTREAM_READER !ARCH_X86_32
#define UNCHECKED_BITSTREAM_READER 1
#include "libavutil/intreadwrite.h"
GetBitContext cbit, pbit;
uint8_t *dest, *p;
- ret = init_get_bits8(&cbit, c->control_stream[plane_no][slice], c->control_stream_size[plane_no][slice]);
+ ret = init_get_bits8_le(&cbit, c->control_stream[plane_no][slice], c->control_stream_size[plane_no][slice]);
if (ret < 0)
return ret;
- ret = init_get_bits8(&pbit, c->packed_stream[plane_no][slice], c->packed_stream_size[plane_no][slice]);
+ ret = init_get_bits8_le(&pbit, c->packed_stream[plane_no][slice], c->packed_stream_size[plane_no][slice]);
if (ret < 0)
return ret;
}
}
break;
+ case AV_PIX_FMT_YUV420P10:
+ for (i = 0; i < 3; i++) {
+ ret = decode_plane10(c, i, (uint16_t *)frame.f->data[i], frame.f->linesize[i] / 2,
+ avctx->width >> !!i, avctx->height >> !!i,
+ plane_start[i], plane_start[i + 1] - 1024, c->frame_pred == PRED_LEFT);
+ if (ret)
+ return ret;
+ }
+ break;
case AV_PIX_FMT_YUV422P10:
for (i = 0; i < 3; i++) {
ret = decode_plane10(c, i, (uint16_t *)frame.f->data[i], frame.f->linesize[i] / 2,
avctx->pix_fmt = AV_PIX_FMT_YUV444P;
avctx->colorspace = AVCOL_SPC_BT470BG;
break;
+ case MKTAG('U', 'Q', 'Y', '0'):
+ c->planes = 3;
+ c->pro = 1;
+ avctx->pix_fmt = AV_PIX_FMT_YUV420P10;
+ break;
case MKTAG('U', 'Q', 'Y', '2'):
c->planes = 3;
c->pro = 1;