mirror of https://git.ffmpeg.org/ffmpeg.git
avcodec/proresenc_aw : simplify frame flags
This commit is contained in:
parent
c679119a73
commit
6cc8cfe30c
|
@ -684,6 +684,7 @@ static int prores_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
|
|||
int header_size = 148;
|
||||
uint8_t *buf;
|
||||
int pic_size, ret;
|
||||
uint8_t frame_flags;
|
||||
int frame_size = FFALIGN(avctx->width, 16) * FFALIGN(avctx->height, 16)*16 + 500 + AV_INPUT_BUFFER_MIN_SIZE; //FIXME choose tighter limit
|
||||
|
||||
|
||||
|
@ -705,11 +706,10 @@ static int prores_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
|
|||
bytestream_put_buffer(&buf, ctx->vendor, 4);
|
||||
bytestream_put_be16(&buf, avctx->width);
|
||||
bytestream_put_be16(&buf, avctx->height);
|
||||
if (avctx->profile >= FF_PROFILE_PRORES_4444) { /* 4444 or 4444 Xq */
|
||||
*buf++ = 0xC2; // 444, not interlaced
|
||||
} else {
|
||||
*buf++ = 0x82; // 422, not interlaced
|
||||
}
|
||||
frame_flags = 0x82; /* 422 not interlaced */
|
||||
if (avctx->profile >= FF_PROFILE_PRORES_4444) /* 4444 or 4444 Xq */
|
||||
frame_flags |= 0x40; /* 444 chroma */
|
||||
*buf++ = frame_flags;
|
||||
*buf++ = 0; /* reserved */
|
||||
/* only write color properties, if valid value. set to unspecified otherwise */
|
||||
*buf++ = ff_int_from_list_or_default(avctx, "frame color primaries", pict->color_primaries, valid_primaries, 0);
|
||||
|
|
Loading…
Reference in New Issue