On 02/01/2020 16:17, Jerome Martinez wrote: >> @@ -797,9 +800,11 @@ static int read_header(FFV1Context *f) >> p->quant_table_index = idx; >> memcpy(p->quant_table, f->quant_tables[idx], >> sizeof(p->quant_table)); >> + p->three_quant_tables = f->three_quant_tables[idx]; >> context_count = f->context_count[idx]; >> } else { >> memcpy(p->quant_table, f->quant_table, >> sizeof(p->quant_table)); >> + p->three_quant_tables = f->three_quant_table; >> } > > Couldn't three_quant_table be a local value instead of being stored in > the context?
I'm not sure that is possible - there is a subtle ifference between the ->quant_table and ->quant_tables (i.e. one is for version 2, which does not have extradata). I followed what is done for the the quant table itself. Michael can likely comment on it. >> diff --git a/libavcodec/ffv1enc.c b/libavcodec/ffv1enc.c > > I may have missed something, but I don't get what the additional code in > the encoding part does, value seems not used. > And I am reluctant to change anything in the encoder in this patch as we > consider that the issue is "only" a too aggressive optimization in the > decoder. The encoder does use it, because the encoder calls get_context, of which the template is shared between the encoder and decoder, so it has to be changed. The optimization is/was for both encoding and decoding. - Derek _______________________________________________ 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".