Hendrik Leppkes
a9cd11b212
Merge commit ' f4f27e4cf1'
...
* commit 'f4f27e4cf1 ':
x86: zero extend the 32-bit length in int32_to_float_fmul_scalar implicitly
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 13:23:25 +01:00
Hendrik Leppkes
95a2b883e3
Merge commit ' 69a68593ce'
...
* commit '69a68593ce ':
Remove stray line breaks from avpriv_{report_missing_feature|request_samples}
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 13:20:13 +01:00
Hendrik Leppkes
d03da3e240
Merge commit ' 2008f76054'
...
* commit '2008f76054 ':
dca: remove unused decode_hf function and quant_d tables
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 13:17:48 +01:00
Hendrik Leppkes
af1238f863
Merge commit ' aebf07075f'
...
* commit 'aebf07075f ':
dca: change the core to work with integer coefficients.
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 13:08:29 +01:00
Hendrik Leppkes
a51c2fcdc1
Merge commit ' 85990140e7'
...
* commit '85990140e7 ':
dca: Add math helpers.
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 12:53:14 +01:00
Hendrik Leppkes
e23c3a13e3
Merge commit ' 90b1b9350c'
...
* commit '90b1b9350c ':
arm: add ff_int32_to_float_fmul_array8_neon
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 11:21:36 +01:00
Hendrik Leppkes
e97e2588ca
Merge commit ' a0fc780a20'
...
* commit 'a0fc780a20 ':
arm64: int32_to_float_fmul neon asm
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 11:21:16 +01:00
Hendrik Leppkes
10e075c138
Merge commit ' 705f5e5e15'
...
* commit '705f5e5e15 ':
arm64: port synth_filter_float_neon from arm
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 11:14:28 +01:00
Hendrik Leppkes
de3a33784c
Merge commit ' c33c1fa8af'
...
* commit 'c33c1fa8af ':
arm64: convert dcadsp neon asm from arm
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 11:10:24 +01:00
Hendrik Leppkes
e754c8e8ca
Merge commit ' e2710e790c'
...
* commit 'e2710e790c ':
arm: add a cpu flag for the VFPv2 vector mode
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 11:01:29 +01:00
Hendrik Leppkes
00e91d0676
Merge commit ' 5dfe4edad6'
...
* commit '5dfe4edad6 ':
x86_64: int32_to_float_fmul_scalar sign extend integer length
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 10:46:18 +01:00
Hendrik Leppkes
92fe2adc1b
Merge commit ' de9e199a03'
...
* commit 'de9e199a03 ':
lavc: make avpriv_mpa_decode_header private on next bump
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-01 17:05:37 +01:00
Hendrik Leppkes
42ff56e362
lavc: fix profile declarations for vdpau decoders
2016-01-01 16:48:47 +01:00
Hendrik Leppkes
1e96b151fa
Merge commit ' 955aec3c7c'
...
* commit '955aec3c7c ':
mpegaudiodecheader: check the header in avpriv_mpegaudio_decode_header
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-01 16:47:27 +01:00
Hendrik Leppkes
15c60c8af2
Merge commit ' cea1eef25c'
...
* commit 'cea1eef25c ':
lavc: get the profile name through the codec descriptor in avcodec_string()
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-01 16:29:28 +01:00
Hendrik Leppkes
e760641720
lavc: add vp9 profiles to AVCodecDescriptor
2016-01-01 16:25:50 +01:00
Hendrik Leppkes
5e8b053452
Merge commit ' 2c6811397b'
...
* commit '2c6811397b ':
lavc: add profiles to AVCodecDescriptor
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-01 16:20:39 +01:00
Michael Niedermayer
3843e52cb4
avcodec/ffv1enc: Support AV_PIX_FMT_YA8
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-01 01:32:07 +01:00
Michael Niedermayer
48985576b1
avcodec/ffv1dec: Support AV_PIX_FMT_YA8
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-01 01:32:06 +01:00
Andreas Cadhalpun
7ea2db6eaf
mjpegdec: extend check for incompatible values of s->rgb and s->ls
...
This can happen if s->ls changes from 0 to 1, but picture allocation is
skipped due to s->interlaced.
In that case ff_jpegls_decode_picture could be called even though the
s->picture_ptr frame has the wrong pixel format and thus a wrong
linesize, which results in a too small zero buffer being allocated.
This fixes an out-of-bounds read in ls_decode_line.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-12-31 17:30:25 +01:00
Ganesh Ajjanagadde
b492fbcc6e
lavc/dsd_tablegen: always generate tables at runtime
...
Commit b272c3a5aa has sped up dsd_tablegen, and now table generation takes
~ 40k cycles. Thus, these tables can always be generated at runtime.
Tested with/without --enable-hardcoded-tables.
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-30 20:37:13 -08:00
Rostislav Pehlivanov
8de5b0d966
dirac_dwt: remove unnecessary undefs
...
They're all undefined within the template file.
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2015-12-31 00:35:06 +00:00
Ganesh Ajjanagadde
05434b0eea
lavc/cook: get rid of wasteful pow in init_pow2table
...
The table is highly structured, so pow (or exp2 for that matter) can entirely
be avoided, yielding a ~ 40x speedup with no loss of accuracy.
sample benchmark (Haswell, GNU/Linux):
new:
4449 decicycles in init_pow2table(loop 1000), 254 runs, 2 skips
4411 decicycles in init_pow2table(loop 1000), 510 runs, 2 skips
4391 decicycles in init_pow2table(loop 1000), 1022 runs, 2 skips
old:
183673 decicycles in init_pow2table(loop 1000), 256 runs, 0 skips
182142 decicycles in init_pow2table(loop 1000), 512 runs, 0 skips
182104 decicycles in init_pow2table(loop 1000), 1024 runs, 0 skips
Reviewed-by: Clément Bœsch <u@pkh.me>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-30 08:52:19 -08:00
Ganesh Ajjanagadde
b272c3a5aa
lavc/dsd_tablegen: speed up table generation
...
Tables are bit identical.
Sample benchmark (Haswell, GNU/Linux+gcc):
old:
814485 decicycles in dsd_ctables_tableinit, 512 runs, 0 skips
new:
356808 decicycles in dsd_ctable_tableinit, 512 runs, 0 skips
Binary size should essentially be identical, and is in fact identical on
the configuration I tested on.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-30 08:45:19 -08:00
Mark Harris
c51c08e0e7
avcodec: Use get_ue_golomb_long() when needed
...
get_ue_golomb() cannot decode values larger than 8190 (the maximum
value that can be golomb encoded in 25 bits) and produces the error
"Invalid UE golomb code" if a larger value is encountered. Use
get_ue_golomb_long() instead (which supports 63 bits, up to 4294967294)
when valid h264/hevc values can exceed 8190.
This updates decoding of the following values: (maximum)
first_mb_in_slice 36863* for level 5.2
abs_diff_pic_num_minus1 131071
difference_of_pic_nums_minus1 131071
idr_pic_id 65535
recovery_frame_cnt 65535
frame_packing_arrangement_id 4294967294
frame_packing_arrangement_repetition_period 16384
display_orientation_repetition_period 16384
An alternative would be to modify get_ue_golomb() to handle encoded
values of up to 49 bits as was done for get_se_golomb() in a92816c .
In that case get_ue_golomb() could continue to be used for all of
these except frame_packing_arrangement_id.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-12-29 13:11:51 +01:00
Janne Grunau
f4f27e4cf1
x86: zero extend the 32-bit length in int32_to_float_fmul_scalar implicitly
...
This reverts commit 5dfe4edad6 .
2015-12-29 11:42:51 +01:00
Hendrik Leppkes
50401f5fb7
avcodec: properly check pkt_timebase for validity
...
Unset/invalid timebases have a zero numerator.
This makes the checks consistent with other timebase checks and fixes an
integer division by 0.
2015-12-28 10:24:15 +01:00
Michael Niedermayer
3215342121
avcodec/on2avc: Fix stability issues with scale_tab generation
...
This also simplifies the code
the resulting values are binary identical to what pow(10, i/10.0) produces
2015-12-27 16:44:48 +01:00
Ganesh Ajjanagadde
c5b3c4c741
lavc/snowenc: replace rint by lrint
...
avoids float to int cast.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-26 20:29:22 -08:00
Ganesh Ajjanagadde
5979c740f5
lavc/dds: replace rint by lrint
...
avoids float to int cast.
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-26 20:29:22 -08:00
Ganesh Ajjanagadde
e09edc62cd
lavc/texturedsp: replace rint by lrint
...
avoids float to int cast.
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-26 20:29:22 -08:00
Ganesh Ajjanagadde
71af38954b
avcodec/on2avc: fix regression on icc since 5495c7f
...
Should fix the regression, and also speeds up table generation.
Tables tested on GNU/Linux+clang: they are identical to the ones prior
to 5495c7f . ff_exp10 caused one slight change in one entry, 50000 became
50001 due to somewhat incorrect rounding.
Untested on ICC; passes FATE on GNU/Linux+gcc.
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-26 17:20:55 -08:00
Diego Biurrun
69a68593ce
Remove stray line breaks from avpriv_{report_missing_feature|request_samples}
2015-12-26 10:28:03 +01:00
Ganesh Ajjanagadde
0abdcae5a9
lavc/acelp_pitch_delay: replace exp2f(M_LOG2_10 *x) by ff_exp10f(x)
...
Suggested-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:48:18 -08:00
Ganesh Ajjanagadde
25ae086db2
lavc/wmaprodec: replace pow(10,x) by ff_exp10(x)
...
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:48:18 -08:00
Ganesh Ajjanagadde
3343e4e607
lavc/wmaenc: replace pow(10,x) by ff_exp10(x)
...
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:48:18 -08:00
Ganesh Ajjanagadde
62765c0014
lavc/wmadec: replace pow(10,x) by ff_exp10(x)
...
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:48:18 -08:00
Ganesh Ajjanagadde
a0ea801dc3
lavc/opus: replace pow(10,x) by ff_exp10(x)
...
Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:48:18 -08:00
Ganesh Ajjanagadde
5495c7f2a3
lavc/on2avc: replace pow(10,x) by ff_exp10(x)
...
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:48:18 -08:00
Ganesh Ajjanagadde
26ac80d235
lavc/imc: replace pow(10,x) by ff_exp10(x)
...
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:48:18 -08:00
Ganesh Ajjanagadde
717eeb77e1
lavc/dcaenc: replace pow(10,x) by ff_exp10(x)
...
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:48:18 -08:00
Ganesh Ajjanagadde
b0e28da37c
lavc/cngdec: replace pow(10,x) by ff_exp10(x)
...
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:48:18 -08:00
Ganesh Ajjanagadde
cb3a994bb1
lavc/aacpsy: replace pow(10,x) by ff_exp10(x)
...
Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:48:18 -08:00
Ganesh Ajjanagadde
48cd3d233b
lavc/libopusdec: replace pow(10,x) by ff_exp10(x)
...
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-25 10:18:43 -08:00
Michael Bradshaw
99eabcdd5f
avcodec: add OpenJPEG 2.x compatibility
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-12-25 10:55:34 +01:00
Michael Niedermayer
052e692e85
avcodec/ac3dec: Print the value of out of range exponents
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-12-24 20:47:25 +01:00
Alexandra Hájková
2008f76054
dca: remove unused decode_hf function and quant_d tables
...
They were superseded with their integer equivalents. Rename integer
decode_hf to decode_hf.
2015-12-24 13:58:18 +01:00
Paul B Mahol
57787f5ef8
avcodec/s302menc: comment out allowed channel layouts
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-12-23 12:46:23 +01:00
Alexandra Hájková
aebf07075f
dca: change the core to work with integer coefficients.
...
The DCA core decoder converts integer coefficients read from the
bitstream to floats just after reading them (along with dequantization).
All the other steps of the audio reconstruction are done with floats
which makes the output for the DTS lossless extension (XLL)
actually lossy.
This patch changes the DCA core to work with integer coefficients
until QMF. At this point the integer coefficients are converted to floats.
The coefficients for the LFE channel (lfe_data) are not touched.
This is the first step for the really lossless XLL decoding.
2015-12-23 11:50:18 +01:00
Alexandra Hájková
85990140e7
dca: Add math helpers.
...
They will be used by the integer core decoder.
2015-12-23 11:50:08 +01:00