FFmpeg/libavcodec
Martin Storsjö 824589556c arm: vp9itxfm: Do a simpler half/quarter idct16/idct32 when possible
This work is sponsored by, and copyright, Google.

This avoids loading and calculating coefficients that we know will
be zero, and avoids filling the temp buffer with zeros in places
where we know the second pass won't read.

This gives a pretty substantial speedup for the smaller subpartitions.

The code size increases from 12388 bytes to 19784 bytes.

The idct16/32_end macros are moved above the individual functions; the
instructions themselves are unchanged, but since new functions are added
at the same place where the code is moved from, the diff looks rather
messy.

Before:                              Cortex A7       A8       A9      A53
vp9_inv_dct_dct_16x16_sub1_add_neon:     273.0    189.5    212.0    235.8
vp9_inv_dct_dct_16x16_sub2_add_neon:    2102.1   1521.7   1736.2   1265.8
vp9_inv_dct_dct_16x16_sub4_add_neon:    2104.5   1533.0   1736.6   1265.5
vp9_inv_dct_dct_16x16_sub8_add_neon:    2484.8   1828.7   2014.4   1506.5
vp9_inv_dct_dct_16x16_sub12_add_neon:   2851.2   2117.8   2294.8   1753.2
vp9_inv_dct_dct_16x16_sub16_add_neon:   3239.4   2408.3   2543.5   1994.9
vp9_inv_dct_dct_32x32_sub1_add_neon:     758.3    456.7    864.5    553.9
vp9_inv_dct_dct_32x32_sub2_add_neon:   10776.7   7949.8   8567.7   6819.7
vp9_inv_dct_dct_32x32_sub4_add_neon:   10865.6   8131.5   8589.6   6816.3
vp9_inv_dct_dct_32x32_sub8_add_neon:   12053.9   9271.3   9387.7   7564.0
vp9_inv_dct_dct_32x32_sub12_add_neon:  13328.3  10463.2  10217.0   8321.3
vp9_inv_dct_dct_32x32_sub16_add_neon:  14176.4  11509.5  11018.7   9062.3
vp9_inv_dct_dct_32x32_sub20_add_neon:  15301.5  12999.9  11855.1   9828.2
vp9_inv_dct_dct_32x32_sub24_add_neon:  16482.7  14931.5  12650.1  10575.0
vp9_inv_dct_dct_32x32_sub28_add_neon:  17589.5  15811.9  13482.8  11333.4
vp9_inv_dct_dct_32x32_sub32_add_neon:  18696.2  17049.2  14355.6  12089.7

After:
vp9_inv_dct_dct_16x16_sub1_add_neon:     273.0    189.5    211.7    235.8
vp9_inv_dct_dct_16x16_sub2_add_neon:    1203.5    998.2   1035.3    763.0
vp9_inv_dct_dct_16x16_sub4_add_neon:    1203.5    998.1   1035.5    760.8
vp9_inv_dct_dct_16x16_sub8_add_neon:    1926.1   1610.6   1722.1   1271.7
vp9_inv_dct_dct_16x16_sub12_add_neon:   2873.2   2129.7   2285.1   1757.3
vp9_inv_dct_dct_16x16_sub16_add_neon:   3221.4   2520.3   2557.6   2002.1
vp9_inv_dct_dct_32x32_sub1_add_neon:     753.0    457.5    866.6    554.6
vp9_inv_dct_dct_32x32_sub2_add_neon:    7554.6   5652.4   6048.4   4920.2
vp9_inv_dct_dct_32x32_sub4_add_neon:    7549.9   5685.0   6046.9   4925.7
vp9_inv_dct_dct_32x32_sub8_add_neon:    8336.9   6704.5   6604.0   5478.0
vp9_inv_dct_dct_32x32_sub12_add_neon:  10914.0   9777.2   9240.4   7416.9
vp9_inv_dct_dct_32x32_sub16_add_neon:  11859.2  11223.3   9966.3   8095.1
vp9_inv_dct_dct_32x32_sub20_add_neon:  15237.1  13029.4  11838.3   9829.4
vp9_inv_dct_dct_32x32_sub24_add_neon:  16293.2  14379.8  12644.9  10572.0
vp9_inv_dct_dct_32x32_sub28_add_neon:  17424.3  15734.7  13473.0  11326.9
vp9_inv_dct_dct_32x32_sub32_add_neon:  18531.3  17457.0  14298.6  12080.0

This is cherrypicked from libav commit
5eb5aec475.

Signed-off-by: Martin Storsjö <martin@martin.st>
2017-03-11 13:14:25 +02:00
..
aarch64 aarch64: vp9itxfm: Move the load_add_store macro out from the itxfm16 pass2 function 2017-03-11 13:14:24 +02:00
alpha
arm arm: vp9itxfm: Do a simpler half/quarter idct16/idct32 when possible 2017-03-11 13:14:25 +02:00
avr32
bfin
mips avcodec/mips/Makefile: corrected conditional build of version 1 of vc1dsp optimizations for loongson mmi 2017-02-23 02:37:55 +01:00
neon
ppc
sh4
sparc
tests
x86 avcodec/x86/cavsdsp: Put MMX code under mmx check 2017-03-06 16:47:17 +01: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_adtstoasc_bsf.c
aac_defines.h
aac_parser.c
aac.h
aacadtsdec.c
aacadtsdec.h
aaccoder_trellis.h
aaccoder_twoloop.h
aaccoder.c
aacdec_fixed.c
aacdec_template.c aacdec: do not mutate input packet metadata 2017-03-09 10:16:12 +01:00
aacdec.c
aacdectab.h
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
aacenctab.c
aacenctab.h
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_tablegen.h
aacsbr_fixed.c
aacsbr_tablegen_common.h
aacsbr_tablegen.h
aacsbr_template.c
aacsbr.c
aacsbr.h
aacsbrdata.h
aactab.c
aactab.h
aandcttab.c
aandcttab.h
aasc.c
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
ac3dsp.c
ac3dsp.h
ac3enc_fixed.c
ac3enc_float.c
ac3enc_opts_template.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
adx_parser.c
adx.c
adx.h
adxdec.c avcodec/adxdec: Fix runtime error: left shift of negative value -1 2017-03-04 17:48:04 +01:00
adxenc.c
aic.c avcodec/aic: unbreak decoding of files with slice_width != 16 2017-02-24 11:35:02 +01:00
alac_data.c
alac_data.h
alac.c
alacdsp.c
alacdsp.h
alacenc.c
aliaspixdec.c
aliaspixenc.c
allcodecs.c avcodec/allcodecs: make avcodec_register_all thread safe 2017-03-07 20:34:44 +07:00
alsdec.c
amr.h
amrnbdata.h
amrnbdec.c
amrwbdata.h
amrwbdec.c avcodec/amrwbdec: Fix 2 runtime errors: left shift of negative value -1 2017-02-25 02:20:35 +01:00
anm.c
ansi.c
apedec.c
apng.h
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
atrac.c
atrac.h
audio_frame_queue.c
audio_frame_queue.h
audioconvert.c
audioconvert.h
audiodsp.c
audiodsp.h
audiotoolboxdec.c
audiotoolboxenc.c
aura.c
avcodec.h avcodec: clarify some decoding/encoding API details 2017-03-09 17:33:56 +01:00
avcodecres.rc
avdct.c
avdct.h
avfft.c
avfft.h
avpacket.c avcodec/avpacket: Check metadata key in av_packet_unpack_dictionary() 2017-03-01 14:07:33 +01:00
avpicture.c
avrndec.c
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
bitstream_filter.c
bitstream_filters.c
bitstream.c
blockdsp.c
blockdsp.h
bmp_parser.c
bmp.c avcodec/bmp: Fix runtime error: negation of -2147483648 cannot be represented in type 'int'; cast to an unsigned type to negate this value to itself 2017-02-21 19:05:04 +01:00
bmp.h
bmpenc.c
bmvaudio.c
bmvvideo.c
brenderpix.c
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 avcodec/cbrt_data: add missing header include 2017-02-22 14:36:26 -03:00
cbrt_fixed_tablegen.c
cbrt_tablegen_template.c
cbrt_tablegen.c
cbrt_tablegen.h
ccaption_dec.c
cdgraphics.c
cdxl.c
celp_filters.c
celp_filters.h
celp_math.c
celp_math.h
cfhd.c
cfhd.h
cfhddata.c
cga_data.c
cga_data.h
chomp_bsf.c
cinepak.c
cinepakenc.c
clearvideo.c avcodec: add ClearVideo decoder 2017-03-02 11:39:54 +01:00
cljrdec.c
cljrenc.c
cllc.c
cngdec.c
cngenc.c
codec_desc.c avcodec: add ClearVideo decoder 2017-03-02 11:39:54 +01:00
cook_parser.c
cook.c
cookdata.h
copy_block.h
cos_tablegen.c
cpia.c
crystalhd.c
cscd.c
cuvid.c avcodec/cuvid: add support for cropping/resizing 2017-03-09 18:39:15 +01:00
cyuv.c
d3d11va.c
d3d11va.h
dca_core_bsf.c
dca_core.c
dca_core.h
dca_exss.c
dca_exss.h
dca_lbr.c
dca_lbr.h
dca_parser.c
dca_syncwords.h
dca_xll.c avcodec/dca: Fix multiple runtime error: signed integer overflow 2017-02-28 01:13:52 +01:00
dca_xll.h
dca.c
dca.h
dcadata.c
dcadata.h
dcadct.c
dcadct.h
dcadec.c
dcadec.h
dcadsp.c avcodec/dcadsp: Fix 2 runtime error: signed integer overflow: -1958094138 - 1078906344 cannot be represented in type 'int' 2017-03-05 12:01:48 +01:00
dcadsp.h
dcaenc.c
dcaenc.h
dcahuff.c
dcahuff.h
dcamath.h
dct32_fixed.c
dct32_float.c
dct32_template.c avcodec/mpegaudiodec: Eliminate many undefined operations 2017-02-20 17:14:54 +01:00
dct32.h
dct.c
dct.h
dctref.c
dctref.h
dds.c
dfa.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
diracdsp.c
diracdsp.h
diractab.c
diractab.h
dnxhd_parser.c
dnxhddata.c
dnxhddata.h
dnxhddec.c avcodec/dnxhddec: fix decoding of DNxHR HQX 10-bit 2017-02-22 21:21:52 +01:00
dnxhdenc.c
dnxhdenc.h
dpcm.c
dpx_parser.c
dpx.c
dpxenc.c
dsd_tablegen.h
dsd.c
dsd.h
dsddec.c
dsicinaudio.c
dsicinvideo.c
dss_sp.c
dstdec.c
dump_extradata_bsf.c
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
dvbsub.c
dvbsubdec.c
dvbtxt.h
dvd_nav_parser.c
dvdata.c
dvdata.h
dvdec.c
dvdsub_parser.c
dvdsubdec.c
dvdsubenc.c
dvenc.c
dxa.c
dxtory.c
dxv.c
dxva2_h264.c
dxva2_hevc.c
dxva2_internal.h
dxva2_mpeg2.c
dxva2_vc1.c
dxva2_vp9.c
dxva2.c
dxva2.h
eac3_data.c
eac3_data.h
eac3dec.c avcodec/eac3dec: Fix runtime error: left shift of negative value -3 2017-02-26 17:16:22 +01:00
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
error_resilience.c
error_resilience.h
escape124.c
escape130.c
evrcdata.h
evrcdec.c
exif.c
exif.h
exr.c
faandct.c
faandct.h
faanidct.c
faanidct.h
faxcompr.c
faxcompr.h
fdctdsp.c
fdctdsp.h
ffjni.c
ffjni.h
fft_fixed_32.c
fft_fixed.c
fft_float.c
fft_init_table.c
fft_table.h
fft_template.c
fft-internal.h
fft.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
flac_parser.c
flac.c
flac.h
flacdata.c
flacdata.h
flacdec.c avcodec/flacdec: reduce limit for golomb so that the max value does not overflow 2017-02-21 00:40:20 +01:00
flacdsp_lpc_template.c
flacdsp_template.c
flacdsp.c avcodec/flacdsp: Fix: runtime error: signed integer overflow: -1027555328 + -1226681270 cannot be represented in type 'int' 2017-02-26 17:16:22 +01:00
flacdsp.h Factorize CHECK/SUINT code 2017-02-21 00:40:20 +01:00
flacenc.c
flashsv2enc.c
flashsv.c
flashsvenc.c
flicvideo.c avcodec/flicvideo: update comment, 24bit support is implemented 2017-02-22 15:45:06 +01:00
flv.h
flvdec.c
flvenc.c
fmtconvert.c
fmtconvert.h
fmvc.c avcodec/fmvc: initialize opcode to 0 2017-02-24 15:50:16 +01:00
frame_thread_encoder.c
frame_thread_encoder.h
fraps.c
frwu.c
g2meet.c
g722.c
g722.h
g722dec.c
g722dsp.c
g722dsp.h
g722enc.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
get_bits.h
gif.c
gif.h
gifdec.c
golomb.c
golomb.h
gsm_parser.c
gsm.h
gsmdec_data.c
gsmdec_data.h
gsmdec_template.c avcodec/gsmdec_template: Fix runtime error: signed integer overflow: -22527 * 99113 cannot be represented in type 'int' 2017-02-21 19:05:04 +01:00
gsmdec.c
h261_parser.c
h261.c
h261.h
h261data.c
h261dec.c
h261enc.c
h263_parser.c
h263_parser.h
h263.c
h263.h
h263data.c
h263data.h
h263dec.c
h263dsp.c
h263dsp.h
h264_cabac.c
h264_cavlc.c
h264_direct.c avcodec/h264_direct: Fix runtime error: left shift of negative value -14 2017-03-01 14:07:33 +01:00
h264_loopfilter.c
h264_mb_template.c
h264_mb.c
h264_mc_template.c
h264_mp4toannexb_bsf.c
h264_mvpred.h avcodec/h264_mvpred: Fix runtime error: left shift of negative value -1 2017-03-09 23:28:10 +01:00
h264_parse.c
h264_parse.h
h264_parser.c
h264_picture.c
h264_ps.c avcodec/h264_ps: Forward errors from decode_scaling_list() 2017-03-11 02:50:22 +01:00
h264_ps.h
h264_refs.c avcodec/h264, videotoolbox: fix crash after VT decoder fails 2017-03-07 11:58:38 +01:00
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 avcodec/h264, videotoolbox: fix crash after VT decoder fails 2017-03-07 11:58:38 +01:00
h264dec.h
h264dsp_template.c
h264dsp.c
h264dsp.h
h264idct_template.c avcodec/h264idct_template: Fix several runtime error: signed integer overflow 2017-03-02 03:16:10 +01:00
h264idct.c
h264idct.h
h264pred_template.c
h264pred.c
h264pred.h
h264qpel_template.c
h264qpel.c
h264qpel.h
h2645_parse.c
h2645_parse.h
hap.c
hap.h
hapdec.c
hapenc.c
hevc_cabac.c
hevc_data.c
hevc_filter.c
hevc_mp4toannexb_bsf.c
hevc_mvs.c
hevc_parse.c
hevc_parse.h
hevc_parser.c
hevc_ps_enc.c
hevc_ps.c
hevc_refs.c
hevc_sei.c
hevc.c
hevc.h
hevcdsp_template.c
hevcdsp.c
hevcdsp.h
hevcpred_template.c
hevcpred.c
hevcpred.h
hnm4video.c
hpel_template.c
hpeldsp.c
hpeldsp.h
hq_hqa.c
hq_hqa.h
hq_hqadata.c
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
idcinvideo.c
idctdsp.c
idctdsp.h
iff.c
iirfilter.c
iirfilter.h
imc.c
imcdata.h
imgconvert.c
imx_dump_header_bsf.c
indeo2.c
indeo2data.h
indeo3.c
indeo3data.h
indeo4.c
indeo4data.h
indeo5.c
indeo5data.h
intelh263dec.c
internal.h aacdec: do not mutate input packet metadata 2017-03-09 10:16:12 +01:00
interplayacm.c
interplayvideo.c avcodec/interplayvideo: Fix timeout from lack of bitstream end check 2017-03-03 01:03:29 +01:00
intrax8.c
intrax8.h
intrax8dsp.c
intrax8dsp.h
intrax8huf.h
ituh263dec.c avcodec/ituh263dec: Use 0xffff as error code in h263p_decode_umotion() 2017-03-02 03:16:12 +01:00
ituh263enc.c
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.c
jpeg2000.h
jpeg2000dec.c
jpeg2000dsp.c
jpeg2000dsp.h
jpeg2000dwt.c
jpeg2000dwt.h
jpegls.c
jpegls.h
jpeglsdec.c avcodec/jpeglsdec: check shift for values that cause overflow later 2017-02-24 00:38:45 +01:00
jpeglsdec.h
jpeglsenc.c
jpegtables.c
jpegtables.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
libavcodec.v
libcelt_dec.c
libfdk-aacdec.c
libfdk-aacenc.c
libgsmdec.c
libgsmenc.c
libilbc.c
libkvazaar.c
libmp3lame.c
libopencore-amr.c
libopenh264.c
libopenh264.h
libopenh264dec.c
libopenh264enc.c
libopenjpegdec.c
libopenjpegenc.c libavcodec/libopenjpegenc: enable lossless option, remove layer option, and improve defaults 2017-03-09 20:28:45 -08:00
libopus.c
libopus.h
libopusdec.c
libopusenc.c
libschroedinger.c
libschroedinger.h
libschroedingerdec.c
libschroedingerenc.c
libshine.c
libspeexdec.c
libspeexenc.c
libtheoraenc.c
libtwolame.c
libvo-amrwbenc.c
libvorbisdec.c
libvorbisenc.c
libvpx.c
libvpx.h
libvpxdec.c
libvpxenc.c lavc/libvpxenc: add -row-mt option 2017-03-06 11:58:33 -08:00
libwavpackenc.c
libwebpenc_animencoder.c
libwebpenc_common.c
libwebpenc_common.h
libwebpenc.c
libx264.c
libx265.c lavc/libx265: Add gray10 and gray12 encoding support. 2017-03-08 00:25:33 +01:00
libxavs.c
libxvid_rc.c
libxvid.c
libxvid.h
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.c
lpc.h
lsp.c
lsp.h
lzf.c
lzf.h
lzw.c
lzw.h
lzwenc.c
m101.c
mace.c
magicyuv.c
Makefile avcodec: add ClearVideo decoder 2017-03-02 11:39:54 +01:00
mathops.h
mathtables.c
mdct15.c
mdct15.h
mdct_fixed_32.c
mdct_fixed.c
mdct_float.c
mdct_template.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
metasound_data.c
metasound_data.h
metasound.c
microdvddec.c
mimic.c
mjpeg2jpeg_bsf.c
mjpeg_parser.c
mjpeg.h
mjpega_dump_header_bsf.c
mjpegbdec.c
mjpegdec.c avcodec/mjpegdec: Fix runtime error: left shift of negative value -127 2017-03-09 23:28:10 +01:00
mjpegdec.h
mjpegenc_common.c
mjpegenc_common.h
mjpegenc_huffman.c
mjpegenc_huffman.h avcodec/mjpegenc_huffman: add missing header include 2017-02-22 14:36:11 -03:00
mjpegenc.c
mjpegenc.h
mlp_parser.c
mlp_parser.h
mlp.c
mlp.h
mlpdec.c
mlpdsp.c
mlpdsp.h
mlpenc.c
mlz.c
mlz.h
mmaldec.c
mmvideo.c
motion_est_template.c
motion_est.c
motion_est.h
motionpixels_tablegen.c
motionpixels_tablegen.h
motionpixels.c
movsub_bsf.c
movtextdec.c avcodec/movtextdec: run mov_text_cleanup() before overwriting pointers 2017-03-09 23:28:10 +01:00
movtextenc.c
mp3_header_decompress_bsf.c
mpc7.c
mpc7data.h
mpc8.c
mpc8data.h
mpc8huff.h
mpc.c
mpc.h
mpcdata.h
mpeg4_unpack_bframes_bsf.c
mpeg4audio.c
mpeg4audio.h
mpeg4data.h
mpeg4video_parser.c
mpeg4video_parser.h
mpeg4video.c
mpeg4video.h
mpeg4videodec.c avcodec/mpeg4videodec: Fix runtime error: signed integer overflow: -135088512 * 16 cannot be represented in type 'int' 2017-03-09 23:28:10 +01:00
mpeg4videoenc.c
mpeg12.c
mpeg12.h
mpeg12data.c
mpeg12data.h
mpeg12dec.c avcodec/mpeg12dec: Fix runtime error: left shift of negative value -13 2017-03-04 17:48:04 +01:00
mpeg12enc.c
mpeg12framerate.c
mpeg12vlc.h
mpeg_er.c
mpeg_er.h
mpegaudio_parser.c
mpegaudio_tablegen.c
mpegaudio_tablegen.h
mpegaudio.c
mpegaudio.h Factorize CHECK/SUINT code 2017-02-21 00:40:20 +01:00
mpegaudiodata.c
mpegaudiodata.h
mpegaudiodec_fixed.c avcodec/mpegaudiodec: Eliminate many undefined operations 2017-02-20 17:14:54 +01:00
mpegaudiodec_float.c
mpegaudiodec_template.c avcodec/mpegaudiodec_template: Check for negative e 2017-03-09 20:37:10 +01:00
mpegaudiodecheader.c
mpegaudiodecheader.h
mpegaudiodectab.h
mpegaudiodsp_data.c
mpegaudiodsp_fixed.c
mpegaudiodsp_float.c
mpegaudiodsp_template.c avcodec/mpegaudiodec: Eliminate many undefined operations 2017-02-20 17:14:54 +01:00
mpegaudiodsp.c
mpegaudiodsp.h
mpegaudioenc_fixed.c
mpegaudioenc_float.c
mpegaudioenc_template.c
mpegaudiotab.h
mpegpicture.c
mpegpicture.h
mpegutils.c
mpegutils.h
mpegvideo_enc.c
mpegvideo_motion.c avcodec/mpeg4video: Fix runtime error: left shift of negative value 2017-02-22 02:42:48 +01:00
mpegvideo_parser.c
mpegvideo_xvmc.c
mpegvideo.c
mpegvideo.h
mpegvideodata.c
mpegvideodata.h
mpegvideodsp.c
mpegvideodsp.h
mpegvideoencdsp.c
mpegvideoencdsp.h
mpl2dec.c
mqc.c
mqc.h
mqcdec.c
mqcenc.c
msgsmdec.c
msgsmdec.h
msmpeg4.c
msmpeg4.h
msmpeg4data.c
msmpeg4data.h
msmpeg4dec.c
msmpeg4enc.c
msrle.c
msrledec.c
msrledec.h
mss1.c
mss2.c
mss2dsp.c
mss2dsp.h
mss3.c
mss4.c
mss12.c
mss12.h
mss34dsp.c
mss34dsp.h
msvideo1.c
msvideo1enc.c
mvcdec.c
mxpegdec.c
nellymoser.c
nellymoser.h
nellymoserdec.c
nellymoserenc.c
noise_bsf.c
nuv.c
nvenc_h264.c avcodec/nvenc: add initial QP value options 2017-03-01 13:15:34 +01:00
nvenc_hevc.c avcodec/nvenc: add initial QP value options 2017-03-01 13:15:34 +01:00
nvenc.c avcodec/nvenc: add initial QP value options 2017-03-01 13:15:34 +01:00
nvenc.h avcodec/nvenc: add initial QP value options 2017-03-01 13:15:34 +01:00
omx.c omx: Add support for specifying H.264 profile [v5'] 2017-03-03 17:17:53 +01:00
on2avc.c
on2avcdata.c
on2avcdata.h
options_table.h
options.c
opus_celt.c
opus_celt.h
opus_parser.c
opus_pvq.c opus_pvq: prevent division by 0 2017-02-24 19:14:55 +00:00
opus_pvq.h
opus_rc.c
opus_rc.h
opus_silk.c
opus.c
opus.h
opusdec.c
opusenc.c
opustab.c
opustab.h
paf.h
pafaudio.c
pafvideo.c
pamenc.c
parser.c
parser.h
pcm_tablegen.c
pcm_tablegen.h
pcm-bluray.c
pcm-dvd.c
pcm.c
pcx.c
pcxenc.c
pel_template.c
pgssubdec.c
pictordec.c avcodec/pictordec: Fix runtime error: left shift of 64 by 25 places cannot be represented in type 'int' 2017-03-08 21:15:07 +01:00
pixblockdsp.c
pixblockdsp.h
pixels.h
pixlet.c avcodec/pixlet: fix architecture-dependent code and values 2017-03-07 14:04:01 +01:00
png_parser.c
png.c
png.h
pngdec.c avcodec/pngdec: Fix runtime error: left shift of 152 by 24 places cannot be represented in type 'int' 2017-02-25 01:43:53 +01:00
pngdsp.c
pngdsp.h
pngenc.c
pnm_parser.c
pnm.c
pnm.h
pnmdec.c
pnmenc.c
profiles.c
profiles.h
proresdata.c
proresdata.h
proresdec2.c avcodec/proresdec2: Do not discard frames with bad slices 2017-03-06 16:47:17 +01:00
proresdec_lgpl.c
proresdec.h
proresdsp.c
proresdsp.h
proresenc_anatoliy.c
proresenc_kostya.c
psd.c
psymodel.c
psymodel.h
pthread_frame.c
pthread_internal.h
pthread_slice.c
pthread.c
ptx.c
put_bits.h
qcelpdata.h
qcelpdec.c
qdm2_tablegen.c
qdm2_tablegen.h
qdm2.c
qdm2data.h
qdmc.c
qdrw.c avcodec/qdrw: check bytes per scanline for 2bpp images 2017-02-27 14:17:51 +01:00
qpeg.c
qpel_template.c
qpeldsp.c
qpeldsp.h
qsv_api.c
qsv_internal.h
qsv.c
qsv.h
qsvdec_h2645.c
qsvdec_mpeg2.c
qsvdec_vc1.c
qsvdec.c
qsvdec.h
qsvenc_h264.c
qsvenc_hevc.c
qsvenc_mpeg2.c
qsvenc.c
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
ratecontrol.c
ratecontrol.h
raw.c
raw.h
rawdec.c
rawenc.c
rdft.c
rdft.h
realtextdec.c
rectangle.h
remove_extradata_bsf.c
resample2.c
resample.c
reverse.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
rscc.c
rtjpeg.c
rtjpeg.h
rv10.c
rv10.h
rv10enc.c
rv20enc.c
rv30.c
rv30data.h
rv30dsp.c
rv34_parser.c
rv34.c avcodec/rv34: Simplify and factor get_slice_offset() code 2017-02-24 14:12:12 +01:00
rv34.h
rv34data.h
rv34dsp.c
rv34dsp.h
rv34vlc.h
rv40.c avcodec/rv40: Fix runtime error: left shift of negative value 2017-02-21 15:31:06 +01:00
rv40data.h
rv40dsp.c avcodec/rv40: Fix runtime error: left shift of negative value 2017-02-21 15:31:06 +01:00
rv40vlc2.h
s302m.c
s302menc.c
samidec.c
sanm.c
sbr.h
sbrdsp_fixed.c
sbrdsp_template.c
sbrdsp.c
sbrdsp.h
scpr.c avcodec/scpr: fix top left prediction for special case when x is 0 for keyframes 2017-03-03 12:28:24 +01:00
screenpresso.c
sgi.h
sgidec.c
sgienc.c
sgirledec.c
sheervideo.c lavc/sheervideo: Fix Y prediction for interlaced frames with transparency. 2017-03-02 18:11:57 +01:00
shorten.c avcodec/shorten: support decoding AIFF-C variant 2017-02-23 23:03:27 +01:00
simple_idct_template.c
simple_idct.c avcodec/simple_idct: Fix runtime error: left shift of negative value -6395 2017-02-21 15:31:06 +01:00
simple_idct.h
sinewin_fixed_tablegen.c
sinewin_fixed.c
sinewin_tablegen_template.c
sinewin_tablegen.c
sinewin_tablegen.h
sinewin.c
sinewin.h
sipr16k.c
sipr16kdata.h
sipr_parser.c
sipr.c
sipr.h
siprdata.h
smacker.c
smc.c
smvjpegdec.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: fix decoding artifacts 2017-02-21 00:40:20 +01:00
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
svq1enc.h
svq3.c lavc/svq3: Remove an unused function. 2017-02-27 13:10:41 +01:00
svq13.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.c
texturedsp.h
texturedspenc.c
thread.h
tiertexseqv.c
tiff_common.c
tiff_common.h
tiff_data.c
tiff_data.h
tiff.c
tiff.h
tiffenc.c
tmv.c
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
twinvq_data.h
twinvq.c
twinvq.h
twinvqdec.c
txd.c
ulti_cb.h
ulti.c
unary.h
utils.c aacdec: do not mutate input packet metadata 2017-03-09 10:16:12 +01:00
utvideo.c
utvideo.h
utvideodec.c
utvideoenc.c
v210dec.c
v210dec.h
v210enc.c
v210enc.h
v210x.c
v308dec.c
v308enc.c
v408dec.c
v408enc.c
v410dec.c
v410enc.c
vaapi_decode.c
vaapi_decode.h
vaapi_encode_h26x.c
vaapi_encode_h26x.h
vaapi_encode_h264.c
vaapi_encode_h265.c
vaapi_encode_mjpeg.c
vaapi_encode_mpeg2.c
vaapi_encode_vp8.c
vaapi_encode.c
vaapi_encode.h
vaapi_h264.c
vaapi_hevc.c
vaapi_mpeg2.c
vaapi_mpeg4.c
vaapi_vc1.c
vaapi_vp9.c
vaapi.h
vb.c
vble.c
vc1_block.c
vc1_common.h
vc1_loopfilter.c
vc1_mc.c
vc1_parser.c
vc1_pred.c
vc1_pred.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
vcr1.c
vda_h264_dec.c
vda_h264.c
vda_vt_internal.h
vda.c
vda.h
vdpau_compat.h
vdpau_h264.c
vdpau_hevc.c
vdpau_internal.h
vdpau_mpeg4.c
vdpau_mpeg12.c
vdpau_vc1.c
vdpau.c
vdpau.h
version.h lavc/libx265: Add gray10 and gray12 encoding support. 2017-03-08 00:25:33 +01:00
videodsp_template.c
videodsp.c
videodsp.h
videotoolbox.c avcodec/h264, videotoolbox: fix crash after VT decoder fails 2017-03-07 11:58:38 +01:00
videotoolbox.h avcodec/videotoolbox: allow not setting the kCVPixelBufferPixelFormatTypeKey 2017-03-02 10:32:21 +01:00
videotoolboxenc.c lavc/videotoolboxenc: fix symbol linking 2017-03-01 10:43:08 -05:00
vima.c
vlc.h
vmdaudio.c
vmdvideo.c
vmnc.c
vorbis_data.c
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 avcodec/vp3: Do not return random positive values but the buf size 2017-03-03 17:17:53 +01:00
vp3data.h
vp3dsp.c avcodec/vp3dsp: Fix multiple signed integer overflow: 46341 * 47523 cannot be represented in type 'int' 2017-02-24 14:12:13 +01:00
vp3dsp.h
vp5.c avcodec/vp568: Check that there is enough data for ff_vp56_init_range_decoder() 2017-03-07 21:29:12 +01:00
vp5data.h
vp6.c avcodec/vp568: Check that there is enough data for ff_vp56_init_range_decoder() 2017-03-07 21:29:12 +01:00
vp6data.h
vp6dsp.c
vp8_parser.c
vp8.c avcodec/vp8: Fix hang with slice threads 2017-03-10 02:20:21 +01:00
vp8.h avcodec/vp8: Check for bitsteam end in decode_mb_row_no_filter() 2017-03-01 14:07:33 +01:00
vp8data.h
vp8dsp.c
vp8dsp.h
vp9_mc_template.c
vp9_parser.c
vp9_superframe_bsf.c
vp9.c avcodec/vp568: Check that there is enough data for ff_vp56_init_range_decoder() 2017-03-07 21:29:12 +01:00
vp9.h
vp9data.h
vp9dsp_8bpp.c
vp9dsp_10bpp.c
vp9dsp_12bpp.c
vp9dsp_template.c
vp9dsp.c
vp9dsp.h
vp56.c avcodec/vp56: Reset have_undamaged_frame on resolution changes 2017-03-11 02:50:22 +01:00
vp56.h avcodec/vp568: Check that there is enough data for ff_vp56_init_range_decoder() 2017-03-07 21:29:12 +01:00
vp56data.c
vp56data.h
vp56dsp.c
vp56dsp.h
vp56rac.c avcodec/vp568: Check that there is enough data for ff_vp56_init_range_decoder() 2017-03-07 21:29:12 +01:00
vqavideo.c
wavpack.c avcodec/wavpack: Fix runtime error: left shift of negative value -5 2017-03-08 21:15:07 +01:00
wavpack.h avcodec/wavpack: Check value before shift in wp_exp2() 2017-03-02 03:16:15 +01:00
wavpackenc.c
wavpackenc.h
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
wmv2dsp.c
wmv2dsp.h
wmv2enc.c
wnv1.c
wrapped_avframe.c avcodec/wrapped_avframe: allocate a buffer with padding 2017-02-22 23:11:42 +01:00
ws-snd1.c
xan.c
xbmdec.c
xbmenc.c
xface.c
xface.h
xfacedec.c
xfaceenc.c
xiph.c
xiph.h
xl.c
xma_parser.c
xsubdec.c
xsubenc.c
xvididct.c
xvididct.h
xvmc_internal.h
xvmc.h
xwd.h
xwddec.c
xwdenc.c
xxan.c
y41pdec.c
y41penc.c
ylc.c
yop.c
yuv4dec.c
yuv4enc.c
zerocodec.c
zmbv.c
zmbvenc.c