History

avcodec/mpegvideo_enc: Don't do unnecessary work for AMV

Up until now, the initialization of AMV's matrices happened after the initialization for MJPEG matrices, overwriting the earlier data. This commit changes this.

Andreas Rheinhardt committed 1 year ago

Commit 772df651 parent 8d871621 file · +3 −8Browse files

Unified · Split

libavcodec/mpegvideo_enc.c+3−8
@@ -3839,6 +3839,7 @@ static int encode_picture(MpegEncContext *s, const AVPacket *pkt) · 3838 unmodified lines
38393839 if (ret < 0)
38403840 return ret;
38413841
3842+ if (s->codec_id != AV_CODEC_ID_AMV) {
38423843 if (s->avctx->intra_matrix) {
38433844 chroma_matrix =
38443845 luma_matrix = s->avctx->intra_matrix;
@@ -3857,13 +3858,7 @@ static int encode_picture(MpegEncContext *s, const AVPacket *pkt) · 12 unmodified lines
38573858 s->c_dc_scale_table = ff_mpeg12_dc_scale_table[s->intra_dc_precision];
38583859 s->chroma_intra_matrix[0] =
38593860 s->intra_matrix[0] = ff_mpeg12_dc_scale_table[s->intra_dc_precision][8];
3860− ff_convert_matrix(s, s->q_intra_matrix, s->q_intra_matrix16,
3861− s->intra_matrix, s->intra_quant_bias, 8, 8, 1);
3862− ff_convert_matrix(s, s->q_chroma_intra_matrix, s->q_chroma_intra_matrix16,
3863− s->chroma_intra_matrix, s->intra_quant_bias, 8, 8, 1);
3864− s->qscale= 8;
3865−
3866− if (s->codec_id == AV_CODEC_ID_AMV) {
3861+ } else {
38673862 static const uint8_t y[32] = {13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13};
38683863 static const uint8_t c[32] = {14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14};
38693864 for (int i = 1; i < 64; i++) {
@@ -3876,12 +3871,12 @@ static int encode_picture(MpegEncContext *s, const AVPacket *pkt) · 6 unmodified lines
38763871 s->c_dc_scale_table = c;
38773872 s->intra_matrix[0] = 13;
38783873 s->chroma_intra_matrix[0] = 14;
3874+ }
38793875 ff_convert_matrix(s, s->q_intra_matrix, s->q_intra_matrix16,
38803876 s->intra_matrix, s->intra_quant_bias, 8, 8, 1);
38813877 ff_convert_matrix(s, s->q_chroma_intra_matrix, s->q_chroma_intra_matrix16,
38823878 s->chroma_intra_matrix, s->intra_quant_bias, 8, 8, 1);
38833879 s->qscale = 8;
3884− }
38853880 }
38863881
38873882 if (s->pict_type == AV_PICTURE_TYPE_I) {

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t