ffmpeg/libavcodec
Rémi Denis-Courmont 378d1b06c3 riscv: probe for Zbb extension at load time
Due to hysterical raisins, most RISC-V Linux distributions target a
RV64GC baseline excluding the Bit-manipulation ISA extensions, most
notably:
- Zba: address generation extension and
- Zbb: basic bit manipulation extension.
Most CPUs that would make sense to run FFmpeg on support Zba and Zbb
(including the current FATE runner), so it makes sense to optimise for
them. In fact a large chunk of existing assembler optimisations relies
on Zba and/or Zbb.

Since we cannot patch shared library code, the next best thing is to
carry a flag initialised at load-time and check it on need basis.
This results in 3 instructions overhead on isolated use, e.g.:
1:  AUIPC rd, %pcrel_hi(ff_rv_zbb_supported)
    LBU   rd, %pcrel_lo(1b)(rd)
    BEQZ  rd, non_Zbb_fallback_code
    // Zbb code here

The C compiler will typically load the flag ahead of time to reducing
latency, and can also keep it around if Zbb is used multiple times in a
single optimisation scope. For this to work, the flag symbol must be
hidden; otherwise the optimisation degrades with a GOT look-up to
support interposition:
1:  AUIPC rd, GOT_OFFSET_HI
    LD    rd, GOT_OFFSET_LO(rd)
    LBU   rd, (rd)
    BEQZ  rd, non_Zbb_fallback_code
    // Zbb code here

This patch adds code to provision the flag in libraries using bit
manipulation functions from libavutil: byte-swap, bit-weight and
counting leading or trailing zeroes.
2024-06-11 20:12:37 +03:00
..
aac aacdec_usac: zero out alpha values for the current frame 2024-06-08 00:22:41 +02:00
aarch64 lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
alpha
arm lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
avr32
bfin
bsf avcodec/h265_metadata: Add options to set width/height after crop 2024-06-07 13:14:46 +08:00
h26x
hevc lavc/hevcdec: constify source frame in hevc_ref_frame() 2024-06-11 17:39:35 +02:00
loongarch lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
mips lavc/hevc/pred: stop accessing parameter sets through HEVCParamSets 2024-06-11 17:39:34 +02:00
neon
ppc lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
riscv riscv: probe for Zbb extension at load time 2024-06-11 20:12:37 +03:00
sh4
sparc
tests avcodec/tests/dct: Use 64bit in intermediate for error computation 2024-06-02 22:31:41 +02:00
vvc avcodec/vvc/inter: Don't return void 2024-06-11 02:43:14 +02:00
x86 x86/aacencdsp: fix ff_aac_quantize_bands_avx on unix64 ABI 2024-06-09 17:16:02 -03:00
.gitignore
4xm.c
8bps.c
8svx.c
012v.c
a64colors.h
a64multienc.c
a64tables.h
aac_ac3_parser.c
aac_ac3_parser.h
aac_defines.h
aac_parser.c
aac.h aacdec: increase MAX_ELEM_ID to 64 2024-06-08 00:22:36 +02:00
aaccoder_trellis.h
aaccoder_twoloop.h
aaccoder.c
aacenc_is.c
aacenc_is.h
aacenc_ltp.c
aacenc_ltp.h
aacenc_pred.c
aacenc_pred.h
aacenc_quantization_misc.h
aacenc_quantization.h
aacenc_tns.c
aacenc_tns.h
aacenc_utils.h
aacenc.c
aacenc.h x86/aacencdsp: add AVX version of quantize_bands 2024-06-09 12:29:49 -03:00
aacencdsp.h
aacenctab.c
aacenctab.h
aacps_common.c
aacps_fixed_tablegen.c
aacps_fixed_tablegen.h
aacps_fixed.c
aacps_float.c
aacps_tablegen_template.c
aacps_tablegen.c
aacps_tablegen.h
aacps.c
aacps.h
aacpsdata.c
aacpsdsp_fixed.c
aacpsdsp_float.c
aacpsdsp_template.c
aacpsdsp.h
aacpsy.c
aacsbr_fixed.c
aacsbr_template.c
aacsbr.c
aacsbr.h
aacsbrdata.h
aactab.c aacdec_usac: use correct TNS values 2024-06-08 00:22:40 +02:00
aactab.h aacdec_usac: use correct TNS values 2024-06-08 00:22:40 +02:00
aandcttab.c
aandcttab.h
aasc.c
ac3_channel_layout_tab.c
ac3_channel_layout_tab.h
ac3_parser_internal.h
ac3_parser.c
ac3_parser.h
ac3.c
ac3.h
ac3dec_data.c
ac3dec_data.h
ac3dec_fixed.c
ac3dec_float.c
ac3dec.c
ac3dec.h
ac3defs.h
ac3dsp.c
ac3dsp.h
ac3enc_fixed.c
ac3enc_float.c
ac3enc_template.c
ac3enc.c
ac3enc.h
ac3tab.c
ac3tab.h
acelp_filters.c
acelp_filters.h
acelp_pitch_delay.c
acelp_pitch_delay.h
acelp_vectors.c
acelp_vectors.h
adpcm_data.c
adpcm_data.h
adpcm.c
adpcm.h
adpcmenc.c
adts_header.c
adts_header.h
adts_parser.c
adts_parser.h
adx_parser.c
adx.c
adx.h
adxdec.c
adxenc.c
agm.c
aic.c
alac_data.c
alac_data.h
alac.c
alacdsp.c
alacdsp.h
alacenc.c
aliaspixdec.c
aliaspixenc.c
allcodecs.c
alsdec.c
amfenc_av1.c
amfenc_h264.c
amfenc_hevc.c
amfenc.c
amfenc.h
amr_parser.c
amr.h
amrnbdata.h
amrnbdec.c
amrwbdata.h
amrwbdec.c
anm.c
ansi.c
aom_film_grain_template.c
aom_film_grain.c
aom_film_grain.h
apac.c
apedec.c
apng.h
aptx.c
aptx.h
aptxdec.c
aptxenc.c
arbc.c
argo.c
ass_split.c
ass_split.h
ass.c
ass.h
assdec.c
assenc.c
asv.c
asv.h
asvdec.c
asvenc.c
atrac1.c
atrac1data.h
atrac3.c
atrac3data.h
atrac3plus_data.h
atrac3plus.c
atrac3plus.h
atrac3plusdec.c
atrac3plusdsp.c
atrac9dec.c
atrac9tab.h
atrac.c
atrac.h
atsc_a53.c
atsc_a53.h
audio_frame_queue.c
audio_frame_queue.h
audiodsp.c
audiodsp.h
audiotoolboxdec.c
audiotoolboxenc.c
aura.c
av1_levels.c
av1_levels.h
av1_parse.c
av1_parse.h
av1_parser.c
av1.h
av1dec.c
av1dec.h
avcodec_internal.h
avcodec.c
avcodec.h
avcodecres.rc
avdct.c
avdct.h
avfft.c
avfft.h
avrndec.c
avs2_parser.c
avs2.c
avs2.h
avs3_parser.c
avs3.h
avs.c
avuidec.c
avuienc.c
bethsoftvideo.c
bethsoftvideo.h
bfi.c
bgmc.c
bgmc.h
bink.c
binkaudio.c
binkdata.h
binkdsp.c
binkdsp.h
bintext.c
bintext.h
bit_depth_template.c
bitpacked_dec.c
bitpacked_enc.c
bitstream_filters.c
bitstream_template.h
bitstream.c
bitstream.h
blockdsp.c
blockdsp.h
bmp_parser.c
bmp.c
bmp.h
bmpenc.c
bmvaudio.c
bmvvideo.c
bonk.c
brenderpix.c
bsf_internal.h
bsf.c
bsf.h
bswapdsp.c
bswapdsp.h
bytestream.h
c93.c
cabac_functions.h
cabac.c
cabac.h
canopus.c
canopus.h
cavs_parser.c
cavs.c
cavs.h
cavsdata.c
cavsdec.c
cavsdsp.c
cavsdsp.h
cbrt_data_fixed.c
cbrt_data.c
cbrt_data.h
cbrt_fixed_tablegen.c
cbrt_tablegen_template.c
cbrt_tablegen.c
cbrt_tablegen.h
cbs_av1_syntax_template.c
cbs_av1.c
cbs_av1.h
cbs_bsf.c
cbs_bsf.h
cbs_h264_syntax_template.c
cbs_h264.h
cbs_h265_syntax_template.c
cbs_h265.h lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
cbs_h266_syntax_template.c avcodec/cbs_h266_syntax_template: Use correct format specifier 2024-06-09 10:59:33 +02:00
cbs_h266.h
cbs_h2645.c lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
cbs_h2645.h
cbs_internal.h
cbs_jpeg_syntax_template.c
cbs_jpeg.c
cbs_jpeg.h
cbs_mpeg2_syntax_template.c
cbs_mpeg2.c
cbs_mpeg2.h
cbs_sei_syntax_template.c
cbs_sei.c
cbs_sei.h
cbs_vp8_syntax_template.c
cbs_vp8.c
cbs_vp8.h
cbs_vp9_syntax_template.c
cbs_vp9.c
cbs_vp9.h
cbs.c
cbs.h
ccaption_dec.c
cdgraphics.c
cdtoons.c
cdxl.c
celp_filters.c
celp_filters.h
celp_math.c
celp_math.h
cfhd.c
cfhd.h
cfhddata.c
cfhddsp.c
cfhddsp.h
cfhdenc.c
cfhdencdsp.c
cfhdencdsp.h
cga_data.c
cga_data.h
cinepak.c
cinepakenc.c
clearvideo.c
clearvideodata.h
cljrdec.c
cljrenc.c
cllc.c
cngdec.c
cngenc.c
codec2utils.h
codec_desc.c
codec_desc.h
codec_id.h
codec_internal.h
codec_par.c
codec_par.h
codec.h
cook_parser.c
cook.c
cookdata.h
copy_block.h
cpia.c
cri_parser.c
cri.c
cscd.c
cuviddec.c
cyuv.c
d3d11va.c
d3d11va.h
d3d12va_av1.c
d3d12va_decode.c
d3d12va_decode.h
d3d12va_h264.c
d3d12va_hevc.c lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
d3d12va_mpeg2.c
d3d12va_vc1.c
d3d12va_vp9.c
dca_core.c
dca_core.h
dca_exss.c
dca_exss.h
dca_lbr.c
dca_lbr.h
dca_parser.c
dca_sample_rate_tab.c
dca_sample_rate_tab.h
dca_syncwords.h
dca_xll.c
dca_xll.h
dca.c
dca.h
dcaadpcm.c
dcaadpcm.h
dcadata.c
dcadata.h
dcadct.c
dcadct.h
dcadec.c
dcadec.h
dcadsp.c
dcadsp.h
dcaenc.c
dcaenc.h
dcahuff.c
dcahuff.h
dcamath.h
dct32_fixed.c
dct32_float.c
dct32_template.c
dct32.h
dct.h
dctref.c
dctref.h
dds.c
decode.c
decode.h
defs.h aac: define a new profile for USAC 2024-06-08 00:22:35 +02:00
dfa.c
dfpwmdec.c
dfpwmenc.c
dirac_arith.c
dirac_arith.h
dirac_dwt_template.c
dirac_dwt.c
dirac_dwt.h
dirac_parser.c
dirac_vlc.c
dirac_vlc.h
dirac.c
dirac.h
diracdec.c avcodec/diracdec: Mark flush as av_cold 2024-05-31 14:18:33 +02:00
diracdsp.c
diracdsp.h
diractab.c
diractab.h
dnxhd_parser.c
dnxhddata.c
dnxhddata.h
dnxhddec.c
dnxhdenc.c avcodec/dnxhdenc: Simplify padding 2024-06-09 10:59:33 +02:00
dnxhdenc.h
dolby_e_parse.c
dolby_e_parser.c
dolby_e.c
dolby_e.h
dovi_rpu.c
dovi_rpu.h
dovi_rpudec.c
dovi_rpuenc.c
dpcm.c
dpx_parser.c
dpx.c
dpxenc.c
dsd.c
dsd.h
dsddec.c
dsicinaudio.c
dsicinvideo.c
dss_sp.c
dstdec.c
dv_internal.h
dv_profile_internal.h
dv_profile.c
dv_profile.h
dv_tablegen.c
dv_tablegen.h
dv.c
dv.h
dvaudio_parser.c
dvaudio.h
dvaudiodec.c
dvbsub_parser.c
dvbsubdec.c
dvbsubenc.c
dvbtxt.h
dvd_nav_parser.c
dvdata.c
dvdata.h
dvdec.c
dvdsub_parser.c
dvdsub.c
dvdsub.h
dvdsubdec.c
dvdsubenc.c
dvenc.c
dxa.c
dxtory.c
dxv.c
dxv.h
dxva2_av1.c
dxva2_h264.c
dxva2_hevc.c lavc/hevcdec: move active PPS from HEVCParamSets to HEVCContext 2024-06-11 17:39:34 +02:00
dxva2_internal.h
dxva2_mpeg2.c
dxva2_vc1.c
dxva2_vp9.c
dxva2.c
dxva2.h
dxvenc.c
dynamic_hdr_vivid.c
dynamic_hdr_vivid.h
eac3_data.c
eac3_data.h
eac3dec.c
eac3enc.c
eac3enc.h
eacmv.c
eaidct.c
eaidct.h
eamad.c
eatgq.c
eatgv.c
eatqi.c
elbg.c
elbg.h
elsdec.c
elsdec.h
encode.c
encode.h
error_resilience.c
error_resilience.h
escape124.c
escape130.c
evc_parse.c
evc_parse.h
evc_parser.c
evc_ps.c
evc_ps.h
evc.h
evrcdata.h
evrcdec.c
exif.c
exif.h
exr.c
exrdsp.c
exrdsp.h
exrenc.c
faandct.c
faandct.h
faanidct.c
faanidct.h
fastaudio.c
faxcompr.c
faxcompr.h
fdctdsp.c
fdctdsp.h
ffjni.c
ffjni.h
fflcms2.c
fflcms2.h
ffv1_template.c
ffv1.c
ffv1.h
ffv1dec_template.c
ffv1dec.c
ffv1enc_template.c
ffv1enc.c
ffwavesynth.c
fic.c
file_open.c
fits.c
fits.h
fitsdec.c
fitsenc.c
flac_parse.h
flac_parser.c
flac.c
flac.h
flacdata.c
flacdata.h
flacdec.c
flacdsp_lpc_template.c
flacdsp_template.c
flacdsp.c
flacdsp.h
flacenc.c
flacencdsp.c
flacencdsp.h
flashsv2enc.c
flashsv.c
flashsvenc.c
flicvideo.c
float2half.c
flvdec.c
flvdec.h
flvenc.c
flvenc.h
fmtconvert.c
fmtconvert.h
fmvc.c
frame_thread_encoder.c
frame_thread_encoder.h
fraps.c
frwu.c
ftr_parser.c
ftr.c
g2meet.c
g722.c
g722.h
g722dec.c
g722dsp.c
g722dsp.h
g722enc.c
g723_1_parser.c
g723_1.c
g723_1.h
g723_1dec.c
g723_1enc.c
g726.c
g729_parser.c
g729.h
g729data.h
g729dec.c
g729postfilter.c
g729postfilter.h
gdv.c
gemdec.c
get_bits.h
get_buffer.c
gif_parser.c
gif.c
gif.h
gifdec.c
golomb.c
golomb.h
gsm_parser.c
gsm.h
gsmdec_data.c
gsmdec_data.h
gsmdec_template.c
gsmdec.c
h261_parser.c
h261.c
h261.h
h261data.c
h261dec.c
h261enc.c
h261enc.h
h263_parser.c
h263.c
h263.h
h263data.c
h263data.h
h263dec.c
h263dec.h
h263dsp.c
h263dsp.h
h263enc.h
h264_cabac.c
h264_cavlc.c
h264_direct.c
h264_levels.c
h264_levels.h
h264_loopfilter.c
h264_mb_template.c
h264_mb.c
h264_mc_template.c
h264_mvpred.h
h264_parse.c
h264_parse.h
h264_parser.c
h264_picture.c
h264_ps.c
h264_ps.h
h264_refs.c
h264_sei.c
h264_sei.h
h264_slice.c
h264.h
h264addpx_template.c
h264chroma_template.c
h264chroma.c
h264chroma.h
h264data.c
h264data.h
h264dec.c
h264dec.h
h264dsp_template.c
h264dsp.c
h264dsp.h
h264idct_template.c
h264idct.c
h264idct.h
h264pred_template.c
h264pred.c
h264pred.h
h264qpel_template.c
h264qpel.c
h264qpel.h
h265_profile_level.c
h265_profile_level.h
h274.c
h274.h
h2645_parse.c lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
h2645_parse.h
h2645_sei.c avcodec/h2645_sei: loosen up min luminance requirements 2024-05-28 18:11:57 +02:00
h2645_sei.h
h2645_vui.c
h2645_vui.h
h2645data.c
h2645data.h
half2float.c
hap.c
hap.h
hapdec.c
hapenc.c
hca_data.h
hcadec.c
hcom.c
hdr_parser.c
hdrdec.c
hdrenc.c
hnm4video.c
hpel_template.c
hpeldsp.c
hpeldsp.h
hq_hqa.c
hq_hqadata.h
hq_hqadsp.c
hq_hqadsp.h
hqx.c
hqx.h
hqxdsp.c
hqxdsp.h
hqxvlc.c
htmlsubtitles.c
htmlsubtitles.h
huffman.c
huffman.h
huffyuv.c
huffyuv.h
huffyuvdec.c
huffyuvdsp.c
huffyuvdsp.h
huffyuvenc.c
huffyuvencdsp.c
huffyuvencdsp.h
hwaccel_internal.h
hwaccels.h
hwconfig.h
idcinvideo.c
idctdsp.c
idctdsp.h
iff.c
iirfilter.c
iirfilter.h
ilbcdata.h
ilbcdec.c avcodec/ilbcdec: Remove dead code 2024-06-07 21:42:24 +02:00
imc.c
imcdata.h
imgconvert.c
imm4.c
imm5.c
imx.c
indeo2.c
indeo2data.h
indeo3.c
indeo3data.h
indeo4.c
indeo4data.h
indeo5.c
indeo5data.h
intelh263dec.c
internal.h
interplayacm.c
interplayvideo.c
intrax8.c
intrax8.h
intrax8dsp.c
intrax8dsp.h
intrax8huf.h
ipu_parser.c
ituh263dec.c
ituh263enc.c
itut35.h
ivi_dsp.c
ivi_dsp.h
ivi.c
ivi.h
j2kenc.c
jacosub.h
jacosubdec.c
jfdctfst.c
jfdctint_template.c
jfdctint.c
jni.c
jni.h
jpeg2000_parser.c
jpeg2000.c
jpeg2000.h
jpeg2000dec.c
jpeg2000dec.h
jpeg2000dsp.c
jpeg2000dsp.h
jpeg2000dwt.c
jpeg2000dwt.h
jpeg2000htdec.c avcodec/jpeg2000dec: fix HT block decoder 2024-05-30 21:30:52 -07:00
jpeg2000htdec.h
jpegls.c
jpegls.h
jpeglsdec.c
jpeglsdec.h
jpeglsenc.c
jpegquanttables.c
jpegquanttables.h
jpegtables.c
jpegtables.h
jpegtabs.h
jpegxl_parse.c
jpegxl_parse.h
jpegxl_parser.c
jpegxl.h
jrevdct.c
jvdec.c
kbdwin.c
kbdwin.h
kgv1dec.c
kmvc.c
lagarith.c
lagarithrac.c
lagarithrac.h
latm_parser.c
lcl.h
lcldec.c
lclenc.c
leaddata.h
leaddec.c
leb.h
libaom.c
libaom.h
libaomdec.c
libaomenc.c
libaribb24.c
libaribcaption.c
libavcodec.v
libcelt_dec.c
libcodec2.c
libdav1d.c
libdavs2.c
libfdk-aacdec.c
libfdk-aacenc.c
libgsmdec.c
libgsmenc.c
libilbc.c
libjxl.c
libjxl.h
libjxldec.c
libjxlenc.c
libkvazaar.c
liblc3dec.c
liblc3enc.c
libmp3lame.c
libopencore-amr.c
libopenh264.c
libopenh264.h
libopenh264dec.c
libopenh264enc.c
libopenjpegenc.c
libopus.c
libopus.h
libopusdec.c
libopusenc.c
librav1e.c
librsvgdec.c
libshine.c
libspeexdec.c
libspeexenc.c
libsvtav1.c
libtheoraenc.c
libtwolame.c
libuavs3d.c
libvo-amrwbenc.c
libvorbisdec.c
libvorbisenc.c
libvpx.h
libvpxdec.c
libvpxenc.c
libwebpenc_animencoder.c
libwebpenc_common.c
libwebpenc_common.h
libwebpenc.c
libx264.c avcodec/libx264: Check init_get_bits8() return code 2024-06-07 21:42:25 +02:00
libx265.c
libxavs2.c
libxavs.c
libxevd.c
libxeve.c
libxvid.c libavcodec/libxvid: code cleanup (replace magic numbers) 2024-06-05 19:39:35 +02:00
libzvbi-teletextdec.c
ljpegenc.c
loco.c
log2_tab.c
lossless_audiodsp.c
lossless_audiodsp.h
lossless_videodsp.c
lossless_videodsp.h
lossless_videoencdsp.c
lossless_videoencdsp.h
lpc_functions.h
lpc.c avcodec/lpc: account for odd len values 2024-05-31 13:36:02 -03:00
lpc.h
lscrdec.c
lsp.c
lsp.h
lzf.c
lzf.h
lzw.c
lzw.h
lzwenc.c
m101.c
mace.c
magicyuv.c
magicyuvenc.c
Makefile avcodec/hevc/Makefile: Move rules for lavc/* files to lavc/Makefile 2024-06-09 10:59:33 +02:00
mathops.h
mathtables.c
mdec.c
me_cmp.c
me_cmp.h
mediacodec_surface.c
mediacodec_surface.h
mediacodec_sw_buffer.c
mediacodec_sw_buffer.h
mediacodec_wrapper.c
mediacodec_wrapper.h
mediacodec.c
mediacodec.h
mediacodecdec_common.c
mediacodecdec_common.h
mediacodecdec.c lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
mediacodecenc.c avcodec/mediacodecenc: workaround the alignment requirement for H.265 2024-06-07 13:14:46 +08:00
metasound_data.h
metasound_twinvq_data.h
metasound.c
mf_utils.c
mf_utils.h
mfenc.c
microdvddec.c
midivid.c
mimic.c
misc4_parser.c
misc4.c
mjpeg_parser.c
mjpeg.h
mjpegbdec.c
mjpegdec_common.c
mjpegdec.c
mjpegdec.h
mjpegenc_common.c
mjpegenc_common.h
mjpegenc_huffman.c
mjpegenc_huffman.h
mjpegenc.c
mjpegenc.h
mlp_parse.c
mlp_parse.h
mlp_parser.c
mlp.c
mlp.h
mlpdec.c
mlpdsp.c
mlpdsp.h
mlpenc.c
mlz.c
mlz.h
mmaldec.c
mmvideo.c
mobiclip.c
motion_est_template.c
motion_est.c
motion_est.h
motionpixels_tablegen.c
motionpixels_tablegen.h
motionpixels.c
movtextdec.c
movtextenc.c
mpc7.c
mpc7data.h
mpc8.c
mpc8data.h
mpc8huff.h
mpc.c
mpc.h
mpcdata.h
mpeg4audio_copy_pce.h
mpeg4audio_sample_rates.c
mpeg4audio_sample_rates.h
mpeg4audio.c
mpeg4audio.h mpeg4audio: explicitly define each AOT 2024-06-08 00:22:35 +02:00
mpeg4data.h
mpeg4video_parser.c
mpeg4video.c
mpeg4video.h
mpeg4videodata.h
mpeg4videodec.c
mpeg4videodec.h
mpeg4videodefs.h
mpeg4videodsp.c
mpeg4videodsp.h
mpeg4videoenc.c
mpeg4videoenc.h
mpeg12.c
mpeg12.h
mpeg12codecs.h
mpeg12data.c
mpeg12data.h
mpeg12dec.c
mpeg12dec.h
mpeg12enc.c
mpeg12enc.h
mpeg12framerate.c
mpeg12vlc.h
mpeg_er.c
mpeg_er.h
mpegaudio_parser.c
mpegaudio_tablegen.c
mpegaudio_tablegen.h
mpegaudio.c
mpegaudio.h
mpegaudiodata.c
mpegaudiodata.h
mpegaudiodec_common_tablegen.c
mpegaudiodec_common_tablegen.h
mpegaudiodec_common.c
mpegaudiodec_fixed.c
mpegaudiodec_float.c
mpegaudiodec_template.c
mpegaudiodecheader.c
mpegaudiodecheader.h
mpegaudiodsp_data.c
mpegaudiodsp_fixed.c
mpegaudiodsp_float.c
mpegaudiodsp_template.c
mpegaudiodsp.c
mpegaudiodsp.h
mpegaudioenc_fixed.c
mpegaudioenc_float.c
mpegaudioenc_template.c
mpegaudiotab.h
mpegaudiotabs.c
mpegaudiotabs.h
mpegpicture.c
mpegpicture.h
mpegutils.c
mpegutils.h
mpegvideo_dec.c
mpegvideo_enc.c avcodec/mpegvideo_enc: give magic number a name 2024-06-05 19:39:36 +02:00
mpegvideo_motion.c
mpegvideo_parser.c
mpegvideo.c
mpegvideo.h
mpegvideodata.c
mpegvideodata.h
mpegvideodec.h
mpegvideoenc.h
mpegvideoencdsp.c
mpegvideoencdsp.h
mpl2dec.c
mpv_reconstruct_mb_template.c
mqc.c
mqc.h
mqcdec.c
mqcenc.c
mscc.c
msgsmdec.c
msgsmdec.h
msmpeg4_vc1_data.c
msmpeg4_vc1_data.h
msmpeg4.c
msmpeg4.h
msmpeg4data.c
msmpeg4data.h
msmpeg4dec.c
msmpeg4dec.h
msmpeg4enc.c
msmpeg4enc.h
msp2dec.c
msrle.c
msrledec.c
msrledec.h
msrleenc.c
mss1.c
mss2.c
mss2dsp.c
mss2dsp.h
mss3.c
mss4.c
mss12.c
mss12.h
mss34dsp.c
mss34dsp.h
msvideo1.c
msvideo1enc.c
mv30.c
mvcdec.c
mvha.c
mwsc.c
mxpegdec.c
nellymoser.c
nellymoser.h
nellymoserdec.c
nellymoserenc.c
notchlc.c avcodec/notchlc: Check init_get_bits8() for failure 2024-06-02 22:31:41 +02:00
null.c
nuv.c
nvdec_av1.c
nvdec_h264.c
nvdec_hevc.c lavc/hevcdec: do not pass HEVCContext to ff_hevc_frame_nb_refs() 2024-06-11 17:39:35 +02:00
nvdec_mjpeg.c
nvdec_mpeg4.c
nvdec_mpeg12.c
nvdec_vc1.c
nvdec_vp8.c
nvdec_vp9.c
nvdec.c
nvdec.h
nvenc_av1.c
nvenc_h264.c
nvenc_hevc.c
nvenc.c lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
nvenc.h
omx.c
on2avc.c
on2avcdata.c
on2avcdata.h
options_table.h
options.c
opus_celt.c
opus_celt.h
opus_parse.c
opus_parse.h
opus_parser.c
opus_pvq.c
opus_pvq.h
opus_rc.c
opus_rc.h
opus_silk.c
opus_silk.h
opus.h
opusdec_celt.c
opusdec.c
opusdsp.c
opusdsp.h
opusenc_psy.c
opusenc_psy.h
opusenc_utils.h
opusenc.c
opusenc.h
opustab.c
opustab.h
osq.c
packet_internal.h
packet.c
packet.h avcodec/packet: remove reference to old AV_SIDE_DATA_PARAM_CHANGE_ values 2024-05-31 11:24:37 -03:00
paf.h
pafaudio.c
pafvideo.c
pamenc.c
parser.c
parser.h
parsers.c
pcm_tablegen.c
pcm_tablegen.h
pcm-bluray.c
pcm-blurayenc.c
pcm-dvd.c
pcm-dvdenc.c avcodec/pcm-dvdenc: 64bit pkt-size 2024-06-02 22:31:42 +02:00
pcm.c
pcx.c
pcxenc.c
pdvdec.c
pel_template.c
pgssubdec.c
pgxdec.c
photocd.c
pictordec.c
pixblockdsp.c
pixblockdsp.h
pixels.h
pixlet.c
png_parser.c
png.c
png.h
pngdec.c
pngdsp.c
pngdsp.h
pngenc.c
pnm_parser.c
pnm.c
pnm.h
pnmdec.c
pnmenc.c
profiles.c aac: define a new profile for USAC 2024-06-08 00:22:35 +02:00
profiles.h aac: define a new profile for USAC 2024-06-08 00:22:35 +02:00
progressframe.h
proresdata.c
proresdata.h
proresdec.c
proresdec.h
proresdsp.c
proresdsp.h
proresenc_anatoliy.c avcodec/proresenc_anatoliy: Assert that AV_PROFILE_UNKNOWN is replaced 2024-06-02 22:31:42 +02:00
proresenc_kostya.c
prosumer.c
psd.c
psymodel.c
psymodel.h
pthread_frame.c
pthread_internal.h
pthread_slice.c
pthread.c
ptx.c
put_bits.h
put_golomb.h
qcelpdata.h
qcelpdec.c
qdm2_tablegen.c
qdm2_tablegen.h
qdm2.c
qdm2data.h
qdmc.c
qdrw.c
qoadec.c
qoi_parser.c
qoi.h
qoidec.c
qoienc.c
qpeg.c
qpel_template.c
qpeldsp.c
qpeldsp.h
qsv_api.c
qsv_internal.h
qsv.c
qsv.h
qsvdec.c lavc/qsvdec: fix keyframes 2024-05-29 10:46:54 +08:00
qsvenc_av1.c
qsvenc_h264.c
qsvenc_hevc.c lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
qsvenc_jpeg.c
qsvenc_mpeg2.c
qsvenc_vp9.c
qsvenc.c lavc/qsvenc: respect user's setting for keyframes 2024-05-29 10:46:54 +08:00
qsvenc.h
qtrle.c
qtrleenc.c
r210dec.c
r210enc.c
ra144.c
ra144.h
ra144dec.c
ra144enc.c
ra288.c
ra288.h
ralf.c
ralfdata.h
rangecoder.c
rangecoder.h
rasc.c
ratecontrol.c
ratecontrol.h
raw.c
raw.h
rawdec.c
rawenc.c
realtextdec.c
rectangle.h
refstruct.c
refstruct.h
reverse.c
rka.c
rkmppdec.c
rl2.c
rl.c
rl.h
rle.c
rle.h
rnd_avg.h
roqaudioenc.c
roqvideo.c
roqvideo.h
roqvideodec.c
roqvideoenc.c
rpza.c
rpzaenc.c
rscc.c
rtjpeg.c
rtjpeg.h
rtv1.c
rv10.c
rv10dec.h
rv10enc.c
rv10enc.h
rv20enc.c
rv30.c
rv30data.h
rv30dsp.c
rv34_parser.c
rv34.c avcodec/rv34: assert that size is not 0 in rv34_gen_vlc_ext() 2024-06-02 22:29:23 +02:00
rv34.h
rv34data.h
rv34dsp.c
rv34dsp.h
rv34vlc.h
rv40.c
rv40data.h
rv40dsp.c
rv40vlc2.h
s302m.c
s302menc.c
samidec.c
sanm.c
sbc_parser.c
sbc.c
sbc.h
sbcdec_data.c
sbcdec_data.h
sbcdec.c
sbcdsp_data.c
sbcdsp_data.h
sbcdsp.c
sbcdsp.h
sbcenc.c
sbr.h
sbrdsp_fixed.c
sbrdsp_template.c lavc/sbrdsp: add support for 256-bit vectors 2024-05-31 22:22:43 +03:00
sbrdsp.c
sbrdsp.h
scpr3.c avcodec/scpr3: Check add_dec() for failure 2024-06-02 22:31:41 +02:00
scpr3.h
scpr.c
scpr.h
screenpresso.c
sei.h
sga.c avcodec/sga: Make it clear that the return is intentionally not checked 2024-06-01 18:01:29 +02:00
sgi.h
sgidec.c
sgienc.c
sgirledec.c
sheervideo.c
sheervideodata.h
shorten.c
simple_idct_template.c
simple_idct.c
simple_idct.h
sinewin_fixed_tablegen.c aacdec_dsp: implement 768-point transform and windowing 2024-06-02 18:34:44 +02:00
sinewin_fixed_tablegen.h aacdec_dsp: implement 768-point transform and windowing 2024-06-02 18:34:44 +02:00
sinewin_tablegen.c
sinewin_tablegen.h
sinewin.c
sinewin.h
sipr16k.c
sipr16kdata.h
sipr_parser.c
sipr.c
sipr.h
siprdata.h
siren.c
smacker.c
smc.c
smcenc.c
snappy.c
snappy.h
snow_dwt.c
snow_dwt.h
snow.c
snow.h
snowdata.h
snowdec.c
snowenc.c
sonic.c
sp5x.h
sp5xdec.c
speedhq.c
speedhq.h
speedhqdec.c lavc/speedhqdec: Reindent 2024-06-03 14:13:34 +02:00
speedhqenc.c lavc/speedhqenc: Require width to be a multiple of 16 2024-06-03 14:13:56 +02:00
speedhqenc.h
speexdata.h
speexdec.c
srtdec.c
srtenc.c
startcode.c
startcode.h
subviewerdec.c
sunrast.c
sunrast.h
sunrastenc.c
svq1_cb.h
svq1_vlc.h
svq1.c
svq1.h
svq1dec.c
svq1enc_cb.h
svq1enc.c
svq1encdsp.h
svq3.c
synth_filter.c
synth_filter.h
tableprint_vlc.h
tableprint.h
tak_parser.c
tak.c
tak.h
takdec.c
takdsp.c
takdsp.h
targa_y216dec.c
targa.c
targa.h
targaenc.c
tdsc.c
textdec.c
texturedsp_template.c
texturedsp.c
texturedsp.h
texturedspenc.c
thread.h
threadframe.h
threadprogress.c
threadprogress.h
tiertexseqv.c
tiff_common.c
tiff_common.h
tiff_data.h
tiff.c avcodec/tiff: Suppress unused variable warnings 2024-06-03 16:38:32 +02:00
tiff.h
tiffenc.c
tmv.c
to_upper4.c
to_upper4.h
tpeldsp.c
tpeldsp.h
truemotion1.c
truemotion1data.h
truemotion2.c
truemotion2rt.c
truespeech_data.h
truespeech.c
tscc2.c
tscc2data.h
tscc.c
tta.c
ttadata.c
ttadata.h
ttadsp.c
ttadsp.h
ttaenc.c
ttaencdsp.c
ttaencdsp.h
ttmlenc.c
ttmlenc.h
twinvq_data.h
twinvq.c
twinvq.h
twinvqdec.c
txd.c
ulti_cb.h
ulti.c
unary.h
utils.c
utvideo.h
utvideodec.c
utvideodsp.c
utvideodsp.h
utvideoenc.c
v4l2_buffers.c
v4l2_buffers.h
v4l2_context.c
v4l2_context.h
v4l2_fmt.c
v4l2_fmt.h
v4l2_m2m_dec.c
v4l2_m2m_enc.c
v4l2_m2m.c
v4l2_m2m.h
v210_template.c
v210dec_init.h
v210dec.c
v210dec.h
v210enc_init.h
v210enc.c
v210enc.h
v210x.c
v308dec.c
v308enc.c
v408dec.c
v408enc.c
v410dec.c
v410enc.c
vaapi_av1.c lavc/vaapi_av1: Avoid sending the same slice buffer multiple times 2024-05-29 10:49:35 +08:00
vaapi_decode.c lavc/vaapi_decode: Make it possible to send multiple slice params buffers 2024-05-29 10:47:43 +08:00
vaapi_decode.h lavc/vaapi_decode: Make it possible to send multiple slice params buffers 2024-05-29 10:47:43 +08:00
vaapi_encode_av1.c
vaapi_encode_h264.c
vaapi_encode_h265.c lavc/hevc*: move to hevc/ subdir 2024-06-04 11:46:27 +02:00
vaapi_encode_mjpeg.c
vaapi_encode_mpeg2.c
vaapi_encode_vp8.c
vaapi_encode_vp9.c
vaapi_encode.c
vaapi_encode.h
vaapi_h264.c lavc/vaapi_h264: Fix merging fields in DPB with missing references 2024-05-29 10:52:10 +08:00
vaapi_hevc.c lavc/hevcdec: move active PPS from HEVCParamSets to HEVCContext 2024-06-11 17:39:34 +02:00
vaapi_hevc.h
vaapi_mjpeg.c lavc/vaapi_decode: Make it possible to send multiple slice params buffers 2024-05-29 10:47:43 +08:00
vaapi_mpeg2.c lavc/vaapi_decode: Make it possible to send multiple slice params buffers 2024-05-29 10:47:43 +08:00
vaapi_mpeg4.c lavc/vaapi_decode: Make it possible to send multiple slice params buffers 2024-05-29 10:47:43 +08:00
vaapi_vc1.c lavc/vaapi_decode: Make it possible to send multiple slice params buffers 2024-05-29 10:47:43 +08:00
vaapi_vp8.c lavc/vaapi_decode: Make it possible to send multiple slice params buffers 2024-05-29 10:47:43 +08:00
vaapi_vp9.c lavc/vaapi_decode: Make it possible to send multiple slice params buffers 2024-05-29 10:47:43 +08:00
vb.c
vble.c
vbn.h
vbndec.c
vbnenc.c
vc1_block.c avcodec/vc1_block: remove unneeded store to off in vc1_decode_p_mb_intfi() 2024-05-28 03:48:08 +02:00
vc1_common.h
vc1_loopfilter.c
vc1_mc.c
vc1_parser.c
vc1_pred.c
vc1_pred.h
vc1_vlc_data.h
vc1.c
vc1.h
vc1acdata.h
vc1data.c
vc1data.h
vc1dec.c
vc1dsp.c
vc1dsp.h
vc2enc_dwt.c
vc2enc_dwt.h
vc2enc.c avcodec/vc2enc: Use already available AVPixFmtDescriptor 2024-05-31 14:18:33 +02:00
vcr1.c
vdpau_av1.c
vdpau_h264.c
vdpau_hevc.c lavc/hevcdec: do not pass HEVCContext to ff_hevc_frame_nb_refs() 2024-06-11 17:39:35 +02:00
vdpau_internal.h
vdpau_mpeg4.c
vdpau_mpeg12.c
vdpau_vc1.c
vdpau_vp9.c
vdpau.c
vdpau.h
version_major.h
version.c
version.h lavc: bump minor and add APIchanges entry for new USAC profile 2024-06-08 00:22:36 +02:00
videodsp_template.c
videodsp.c
videodsp.h
videotoolbox_vp9.c
videotoolbox.c lavc/hevcdec: move active PPS from HEVCParamSets to HEVCContext 2024-06-11 17:39:34 +02:00
videotoolbox.h
videotoolboxenc.c
vima.c
vlc.c avcodec/vlc: Cleanup on multi table alloc failure in ff_vlc_init_multi_from_lengths() 2024-05-28 03:48:08 +02:00
vlc.h
vmdaudio.c
vmdvideo.c
vmixdec.c
vmnc.c
vorbis_data.c
vorbis_data.h
vorbis_enc_data.h
vorbis_parser_internal.h
vorbis_parser.c
vorbis_parser.h
vorbis.c
vorbis.h
vorbisdec.c
vorbisdsp.c
vorbisdsp.h
vorbisenc.c
vp3_parser.c
vp3.c
vp3data.h
vp3dsp.c
vp3dsp.h
vp4data.h
vp5.c
vp5data.h
vp6.c
vp6data.h
vp6dsp.c
vp8_parser.c
vp8.c avcodec/vp8: Check cond init 2024-06-07 21:42:24 +02:00
vp8.h
vp8data.c
vp8data.h
vp8dsp.c lavc/vp7dsp: add R-V V vp7_luma_dc_wht 2024-05-29 16:57:02 +03:00
vp8dsp.h lavc/vp7dsp: add R-V V vp7_luma_dc_wht 2024-05-29 16:57:02 +03:00
vp9_mc_template.c
vp9_parser.c
vp9.c
vp9.h
vp9block.c
vp9data.c
vp9data.h
vp9dec.h
vp9dsp_8bpp.c
vp9dsp_10bpp.c
vp9dsp_12bpp.c
vp9dsp_template.c
vp9dsp.c
vp9dsp.h
vp9lpf.c
vp9mvs.c
vp9prob.c
vp9recon.c
vp9shared.h
vp56.c
vp56.h
vp56data.c
vp56data.h
vp56dsp.c
vp56dsp.h
vp89_rac.h
vpx_rac.c
vpx_rac.h
vqavideo.c
vqcdec.c
vt_internal.h
vulkan_av1.c
vulkan_decode.c
vulkan_decode.h
vulkan_h264.c
vulkan_hevc.c lavc/hevcdec: move active PPS from HEVCParamSets to HEVCContext 2024-06-11 17:39:34 +02:00
vulkan_video.c
vulkan_video.h
vulkan.c
vulkan.h
vvc_parser.c
vvc.h
wavarc.c
wavpack.c avcodec/wavpack: Remove dead assignments 2024-06-02 22:29:23 +02:00
wavpack.h
wavpackdata.c
wavpackenc.c avcodec/wavpackenc: Use unsigned for potential 31bit shift 2024-06-02 22:29:23 +02:00
wavpackenc.h
wbmpdec.c
wbmpenc.c
wcmv.c
webp_parser.c
webp.c
webvttdec.c
webvttenc.c
wma_common.c
wma_common.h
wma_freqs.c
wma_freqs.h
wma.c
wma.h
wmadata.h
wmadec.c
wmaenc.c
wmalosslessdec.c
wmaprodata.h
wmaprodec.c
wmavoice_data.h
wmavoice.c
wmv2.c
wmv2.h
wmv2data.c
wmv2data.h
wmv2dec.c
wmv2dec.h
wmv2dsp.c
wmv2dsp.h
wmv2enc.c
wmv2enc.h
wnv1.c
wrapped_avframe.c
ws-snd1.c
xan.c
xbm_parser.c
xbmdec.c
xbmenc.c
xface.c
xface.h
xfacedec.c
xfaceenc.c
xiph.c
xiph.h
xl.c
xma_parser.c
xpmdec.c
xsubdec.c
xsubenc.c
xvididct.c
xvididct.h
xwd_parser.c
xwd.h
xwddec.c
xwdenc.c
xxan.c
y41pdec.c
y41penc.c
ylc.c
yop.c
yuv4dec.c
yuv4enc.c
zerocodec.c
zlib_wrapper.c
zlib_wrapper.h
zmbv.c
zmbvenc.c