--- libavcodec/vp9.c | 10 ++++++++++ libavcodec/vp9block.c | 6 ++++++ libavcodec/vp9dec.h | 4 ++++ 3 files changed, 20 insertions(+)
diff --git a/libavcodec/vp9.c b/libavcodec/vp9.c index fd0bab14a2..6bd6bd4fa9 100644 --- a/libavcodec/vp9.c +++ b/libavcodec/vp9.c @@ -1541,6 +1541,16 @@ static int vp9_export_enc_params(VP9Context *s, VP9Frame *frame) if (s->s.h.segmentation.absolute_vals) b->delta_qp -= par->qp; } + + if (td->block_structure[block_tile].skip) + b->flags |= AV_VIDEO_ENC_BLOCK_SKIP; + if (td->block_structure[block_tile].intra) { + b->flags |= AV_VIDEO_ENC_BLOCK_INTRA; + } else { + b->ref[0] = td->block_structure[block_tile].ref[0]; + if (td->block_structure[block_tile].comp) + b->ref[1] = td->block_structure[block_tile].ref[1]; + } } } } diff --git a/libavcodec/vp9block.c b/libavcodec/vp9block.c index ec16e26c69..3b500c8259 100644 --- a/libavcodec/vp9block.c +++ b/libavcodec/vp9block.c @@ -1295,6 +1295,12 @@ void ff_vp9_decode_block(VP9TileData *td, int row, int col, td->block_structure[td->nb_block_structure].col = col; td->block_structure[td->nb_block_structure].block_size_idx_x = av_log2(w4); td->block_structure[td->nb_block_structure].block_size_idx_y = av_log2(h4); + + td->block_structure[td->nb_block_structure].intra = b->intra; + td->block_structure[td->nb_block_structure].skip = b->skip; + td->block_structure[td->nb_block_structure].comp = b->comp; + td->block_structure[td->nb_block_structure].ref[0] = b->ref[0]; + td->block_structure[td->nb_block_structure].ref[1] = b->ref[1]; td->nb_block_structure++; } diff --git a/libavcodec/vp9dec.h b/libavcodec/vp9dec.h index cc2440b854..6ecb544274 100644 --- a/libavcodec/vp9dec.h +++ b/libavcodec/vp9dec.h @@ -231,6 +231,10 @@ struct VP9TileData { unsigned int col:13; unsigned int block_size_idx_x:2; unsigned int block_size_idx_y:2; + unsigned int intra:1; + unsigned int skip:1; + unsigned int comp:1; + uint8_t ref[2]; } *block_structure; unsigned int nb_block_structure; }; -- 2.27.0.389.gc38d7665816-goog _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".