mirror of https://git.ffmpeg.org/ffmpeg.git
avcodec/hevc: Export picture type
This only uses the first slice, improvement here is welcome analyzing all slices the trivial way would interfere with threads Fixes Ticket3185 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
4090d5baa8
commit
6795dcfa65
|
@ -2227,6 +2227,7 @@ static int hevc_frame_start(HEVCContext *s)
|
||||||
int pic_size_in_ctb = ((s->sps->width >> s->sps->log2_min_cb_size) + 1) *
|
int pic_size_in_ctb = ((s->sps->width >> s->sps->log2_min_cb_size) + 1) *
|
||||||
((s->sps->height >> s->sps->log2_min_cb_size) + 1);
|
((s->sps->height >> s->sps->log2_min_cb_size) + 1);
|
||||||
int ret;
|
int ret;
|
||||||
|
AVFrame *cur_frame;
|
||||||
|
|
||||||
memset(s->horizontal_bs, 0, 2 * s->bs_width * (s->bs_height + 1));
|
memset(s->horizontal_bs, 0, 2 * s->bs_width * (s->bs_height + 1));
|
||||||
memset(s->vertical_bs, 0, 2 * s->bs_width * (s->bs_height + 1));
|
memset(s->vertical_bs, 0, 2 * s->bs_width * (s->bs_height + 1));
|
||||||
|
@ -2255,6 +2256,9 @@ static int hevc_frame_start(HEVCContext *s)
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
goto fail;
|
goto fail;
|
||||||
|
|
||||||
|
cur_frame = s->sps->sao_enabled ? s->sao_frame : s->frame;
|
||||||
|
cur_frame->pict_type = 3 - s->sh.slice_type;
|
||||||
|
|
||||||
av_frame_unref(s->output_frame);
|
av_frame_unref(s->output_frame);
|
||||||
ret = ff_hevc_output_frame(s, s->output_frame, 0);
|
ret = ff_hevc_output_frame(s, s->output_frame, 0);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
|
|
Loading…
Reference in New Issue