aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRémi Denis-Courmont <remi@remlab.net>2024-07-07 14:39:11 +0300
committerRémi Denis-Courmont <remi@remlab.net>2024-07-14 11:39:35 +0300
commit8b3d997bede0e065f19bcaa96f99dfa9978fd181 (patch)
treee487d2c3b174f793d42aa2e3c0e3a72dd8ec70bc
parenta194131cb6adb6d5f2156e785f1bf859d9449def (diff)
downloadffmpeg-8b3d997bede0e065f19bcaa96f99dfa9978fd181.tar.gz
lavc/h264dsp: remove MMI 8-bit 4:2:2 chroma DC dequant
The function is exactly identical to the C reference, only with the constant propagated and the loop unrolled manually.
-rw-r--r--libavcodec/mips/h264dsp_init_mips.c4
-rw-r--r--libavcodec/mips/h264dsp_mips.h1
-rw-r--r--libavcodec/mips/h264dsp_mmi.c33
3 files changed, 0 insertions, 38 deletions
diff --git a/libavcodec/mips/h264dsp_init_mips.c b/libavcodec/mips/h264dsp_init_mips.c
index 615b00d142..72f42895e8 100644
--- a/libavcodec/mips/h264dsp_init_mips.c
+++ b/libavcodec/mips/h264dsp_init_mips.c
@@ -46,10 +46,6 @@ av_cold void ff_h264dsp_init_mips(H264DSPContext *c, const int bit_depth,
c->h264_luma_dc_dequant_idct = ff_h264_luma_dc_dequant_idct_8_mmi;
- if (chroma_format_idc > 1)
- c->h264_chroma_dc_dequant_idct =
- ff_h264_chroma422_dc_dequant_idct_8_mmi;
-
c->weight_h264_pixels_tab[0] = ff_h264_weight_pixels16_8_mmi;
c->weight_h264_pixels_tab[1] = ff_h264_weight_pixels8_8_mmi;
c->weight_h264_pixels_tab[2] = ff_h264_weight_pixels4_8_mmi;
diff --git a/libavcodec/mips/h264dsp_mips.h b/libavcodec/mips/h264dsp_mips.h
index 7e1dcdd013..4a2a2c2559 100644
--- a/libavcodec/mips/h264dsp_mips.h
+++ b/libavcodec/mips/h264dsp_mips.h
@@ -340,7 +340,6 @@ void ff_h264_idct_add8_422_8_mmi(uint8_t **dest, const int *block_offset,
int16_t *block, int stride, const uint8_t nnzc[15*8]);
void ff_h264_luma_dc_dequant_idct_8_mmi(int16_t *output, int16_t *input,
int qmul);
-void ff_h264_chroma422_dc_dequant_idct_8_mmi(int16_t *block, int qmul);
void ff_h264_weight_pixels16_8_mmi(uint8_t *block, ptrdiff_t stride, int height,
int log2_denom, int weight, int offset);
diff --git a/libavcodec/mips/h264dsp_mmi.c b/libavcodec/mips/h264dsp_mmi.c
index 1ee8ca2f1c..bae1052dcf 100644
--- a/libavcodec/mips/h264dsp_mmi.c
+++ b/libavcodec/mips/h264dsp_mmi.c
@@ -1084,39 +1084,6 @@ void ff_h264_luma_dc_dequant_idct_8_mmi(int16_t *output, int16_t *input,
);
}
-void ff_h264_chroma422_dc_dequant_idct_8_mmi(int16_t *block, int qmul)
-{
- int temp[8];
- int t[8];
-
- temp[0] = block[0] + block[16];
- temp[1] = block[0] - block[16];
- temp[2] = block[32] + block[48];
- temp[3] = block[32] - block[48];
- temp[4] = block[64] + block[80];
- temp[5] = block[64] - block[80];
- temp[6] = block[96] + block[112];
- temp[7] = block[96] - block[112];
-
- t[0] = temp[0] + temp[4] + temp[2] + temp[6];
- t[1] = temp[0] - temp[4] + temp[2] - temp[6];
- t[2] = temp[0] - temp[4] - temp[2] + temp[6];
- t[3] = temp[0] + temp[4] - temp[2] - temp[6];
- t[4] = temp[1] + temp[5] + temp[3] + temp[7];
- t[5] = temp[1] - temp[5] + temp[3] - temp[7];
- t[6] = temp[1] - temp[5] - temp[3] + temp[7];
- t[7] = temp[1] + temp[5] - temp[3] - temp[7];
-
- block[ 0]= (t[0]*qmul + 128) >> 8;
- block[ 32]= (t[1]*qmul + 128) >> 8;
- block[ 64]= (t[2]*qmul + 128) >> 8;
- block[ 96]= (t[3]*qmul + 128) >> 8;
- block[ 16]= (t[4]*qmul + 128) >> 8;
- block[ 48]= (t[5]*qmul + 128) >> 8;
- block[ 80]= (t[6]*qmul + 128) >> 8;
- block[112]= (t[7]*qmul + 128) >> 8;
-}
-
void ff_h264_weight_pixels16_8_mmi(uint8_t *block, ptrdiff_t stride, int height,
int log2_denom, int weight, int offset)
{