1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-02 03:06:28 +02:00
FFmpeg/libavcodec/loongarch
Shiyou Yin e1b6ecd20a
avcodec/la: add LSX optimization for h264 idct.
loongson_asm.S is LoongArch asm optimization helper.
Add functions:
  ff_h264_idct_add_8_lsx
  ff_h264_idct8_add_8_lsx
  ff_h264_idct_dc_add_8_lsx
  ff_h264_idct8_dc_add_8_lsx
  ff_h264_idct_add16_8_lsx
  ff_h264_idct8_add4_8_lsx
  ff_h264_idct_add8_8_lsx
  ff_h264_idct_add8_422_8_lsx
  ff_h264_idct_add16_intra_8_lsx
  ff_h264_luma_dc_dequant_idct_8_lsx
Replaced function(LSX is sufficient for these functions):
  ff_h264_idct_add_lasx
  ff_h264_idct4x4_addblk_dc_lasx
  ff_h264_idct_add16_lasx
  ff_h264_idct8_add4_lasx
  ff_h264_idct_add8_lasx
  ff_h264_idct_add8_422_lasx
  ff_h264_idct_add16_intra_lasx
  ff_h264_deq_idct_luma_dc_lasx
Renamed functions:
  ff_h264_idct8_addblk_lasx ==> ff_h264_idct8_add_8_lasx
  ff_h264_idct8_dc_addblk_lasx ==> ff_h264_idct8_dc_add_8_lasx

./configure --disable-lasx
ffmpeg -i 1_h264_1080p_30fps_3Mbps.mp4 -f rawvideo -y /dev/null -an
before: 155fps
after:  161fps

Reviewed-by: Shiyou Yin <yinshiyou-hf@loongson.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2023-05-25 21:04:25 +02:00
..
cabac.h
h264_cabac.c
h264_deblock_lasx.c
h264_intrapred_init_loongarch.c
h264_intrapred_lasx.c
h264_intrapred_lasx.h
h264chroma_init_loongarch.c
h264chroma_lasx.c
h264chroma_lasx.h
h264dsp_init_loongarch.c
h264dsp_lasx.c
h264dsp_loongarch.h
h264idct_loongarch.c
h264idct.S
h264qpel_init_loongarch.c
h264qpel_lasx.c
h264qpel_lasx.h
hevc_idct_lsx.c
hevc_lpf_sao_lsx.c
hevc_mc_bi_lsx.c
hevc_mc_uni_lsx.c
hevc_mc_uniw_lsx.c
hevcdsp_init_loongarch.c
hevcdsp_lsx.c
hevcdsp_lsx.h
hpeldsp_init_loongarch.c
hpeldsp_lasx.c
hpeldsp_lasx.h
idctdsp_init_loongarch.c
idctdsp_lasx.c
idctdsp_loongarch.h
loongson_asm.S
Makefile avcodec/la: add LSX optimization for h264 idct. 2023-05-25 21:04:25 +02:00
simple_idct_lasx.c
vc1dsp_init_loongarch.c
vc1dsp_lasx.c
vc1dsp_loongarch.h
videodsp_init.c
vp8_lpf_lsx.c
vp8_mc_lsx.c
vp8dsp_init_loongarch.c
vp8dsp_loongarch.h
vp9_idct_lsx.c
vp9_intra_lsx.c
vp9_lpf_lsx.c
vp9_mc_lsx.c
vp9dsp_init_loongarch.c
vp9dsp_loongarch.h