Ganesh Ajjanagadde
789ef087c6
avcodec/ppc/fdctdsp: use more accurate constants
...
Whoever wrote this stuff had a pretty bad libm - digits differ pretty
quickly.
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-12-01 19:05:19 -05:00
Ganesh Ajjanagadde
61a1ca13ea
avcodec/ppc/fdctdsp: use M_SQRT2 instead of ad-hoc SQRT2
...
This actually fixes an incorrect float literal. It is believed by
examining the precision that the literals were all pre-computed as
floats, resulting in this needless loss of precision. There is no
benefit to keeping such reduced precision:
1. These constants are used for static array computation, hence
compile-time.
2. They will be treated as doubles anyway, since f specifier was not
present.
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-11-22 16:16:16 -05:00
Christophe Gisquet
f827a17005
blockdsp: reindent after parameter removal
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-03 23:34:56 +02:00
Christophe Gisquet
562ba4a827
blockdsp: remove high bitdepth parameter
...
It is only (mis-)used to set the dsp fucntions clear_block(s). But
these functions always work on 16bits-wide elements, which make
the parameter useless and actually harmful, as it causes all content
on more than 8-bits to not use accelerated functions.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-02 04:38:40 +02:00
Michael Niedermayer
94d68a41fa
Merge commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615'
...
* commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615':
lavc: AV-prefix all codec flags
Conflicts:
doc/examples/muxing.c
ffmpeg.c
ffmpeg_opt.c
ffplay.c
libavcodec/aacdec.c
libavcodec/aacenc.c
libavcodec/ac3dec.c
libavcodec/ac3enc_float.c
libavcodec/atrac1.c
libavcodec/atrac3.c
libavcodec/atrac3plusdec.c
libavcodec/dcadec.c
libavcodec/ffv1enc.c
libavcodec/h264.c
libavcodec/h264_loopfilter.c
libavcodec/h264_mb.c
libavcodec/imc.c
libavcodec/libmp3lame.c
libavcodec/libtheoraenc.c
libavcodec/libtwolame.c
libavcodec/libvpxenc.c
libavcodec/libxavs.c
libavcodec/libxvid.c
libavcodec/mpeg12dec.c
libavcodec/mpeg12enc.c
libavcodec/mpegaudiodec_template.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/mpegvideo_motion.c
libavcodec/nellymoserdec.c
libavcodec/nellymoserenc.c
libavcodec/nvenc.c
libavcodec/on2avc.c
libavcodec/options_table.h
libavcodec/opus_celt.c
libavcodec/pngenc.c
libavcodec/ra288.c
libavcodec/ratecontrol.c
libavcodec/twinvq.c
libavcodec/vc1_block.c
libavcodec/vc1_loopfilter.c
libavcodec/vc1_mc.c
libavcodec/vc1dec.c
libavcodec/vorbisdec.c
libavcodec/vp3.c
libavcodec/wma.c
libavcodec/wmaprodec.c
libavcodec/x86/hpeldsp_init.c
libavcodec/x86/me_cmp_init.c
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27 22:10:35 +02:00
Michael Niedermayer
115a9b5091
Merge commit 'd42191c78befc1983f23b1899b2dda513b72f1ed'
...
* commit 'd42191c78befc1983f23b1899b2dda513b72f1ed':
configure: Factor out vp8dsp module
Conflicts:
configure
libavcodec/Makefile
libavcodec/x86/Makefile
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-17 22:45:34 +02:00
Vittorio Giovara
d42191c78b
configure: Factor out vp8dsp module
2015-07-17 18:46:24 +01:00
Andreas Cadhalpun
28efeb6502
doc: avoid incorrect phrase 'allows to'
...
Also fix typo found by Lou Logan:
Sacrifying -> Sacrificing
Reviewed-by: Lou Logan <lou@lrcd.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-06-16 21:48:51 +02:00
Michael Niedermayer
a1957a4dc1
avcodec/ppc/pixblockdsp: Fix type of get_pixels_vsx()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-01 04:39:56 +02:00
Michael Niedermayer
1ff47770ca
Merge commit 'd0bf20a4f25ac5de021c860a0c8ad05638ee2078'
...
* commit 'd0bf20a4f25ac5de021c860a0c8ad05638ee2078':
ppc: vsx: Implement diff_pixels and get_pixels
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-31 23:55:32 +02:00
Michael Niedermayer
08f229d81e
Merge commit '7014b65995b1fe6188fb53447bf61b08e3963355'
...
* commit '7014b65995b1fe6188fb53447bf61b08e3963355':
ppc: pixblockdsp: Use the abriged vector types
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-31 21:48:16 +02:00
Luca Barbato
d0bf20a4f2
ppc: vsx: Implement diff_pixels and get_pixels
...
Use a macro to abstract the endianness.
2015-05-31 12:07:11 +02:00
Luca Barbato
da60b99a88
ppc: Restrict some Altivec implementations to Big Endian
...
In Little Endian the vec_ld/vec_st operations work as
expected only for byte-vectors.
2015-05-31 12:07:11 +02:00
Luca Barbato
7014b65995
ppc: pixblockdsp: Use the abriged vector types
2015-05-31 12:07:10 +02:00
Rong Yan
a2cd07d22a
avcodec/ppc/h264dsp: POWER LE support in h264_idct_dc_add_internal() fix vec_lvsl bug
...
We got defective video when use GCC 4.9.2 instead of GCC 4.9.1 to compile FFMEPG. And further found
that GCC 4.8 and 4.9 need patch to fix the lvsl/lvsr bug on POWER LE, and GCC 5.1 contains
the correct code since its release. The message on gcc-patches requesting approval for lvsl/lvsr
patch is at https://gcc.gnu.org/ml/gcc-patches/2014-10/msg00228.html .
The fixed code avoids using lvsl and will not depends on GCC version, also it uses less instructions on POWER LE.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-14 11:08:07 +02:00
Michael Niedermayer
d0b294286c
avcodec/ppc/h264qpel_template: Fix alignment assert
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-10 18:09:39 +02:00
Rong Yan
8a03d428f1
avcodec/ppc/fdctdsp: POWER LE support in ff_fdct_altivec() delete macros VEC_FMERGEH() VEC_FMERGEL(), they where wrong
...
GCC tool had a bug of PPC intrinsic interpret, which has been fixed in GCC 4.9.1. This bug lead to
errors in two of our previous patches. We found this when we update our GCC tools to 4.9.1 and by
reading the related info on GCC website. We fix our previous error in two separate commits
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-27 12:59:15 +02:00
Rong Yan
af5fec9538
avcodec/ppc/fdctdsp: POWER LE support in ff_fdct_altivec()
...
add marcos VEC_FMERGEH() VEC_FMERGEL()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-03 18:10:27 +02:00
Michael Niedermayer
b8535b273f
Revert "ppc: lavc: use LOCAL_ALIGNED instead of DECLARE_ALIGNED"
...
This broke build, note, LOCAL_ALIGNED_16() does not work either
Found-by: James Almer <jamrial@gmail.com>
This reverts commit 98cccdd91c
.
2015-03-15 02:02:21 +01:00
Christophe Gisquet
98cccdd91c
ppc: lavc: use LOCAL_ALIGNED instead of DECLARE_ALIGNED
...
The later may yield incorrect code for on-stack variables.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-14 19:07:27 +01:00
Michael Niedermayer
7fce8c752d
Merge commit '71f1ad37d858b810b71a4af1c25771beaa50b27b'
...
* commit '71f1ad37d858b810b71a4af1c25771beaa50b27b':
lavc: do not compile fmtconvert unconditionally
Conflicts:
configure
libavcodec/ppc/Makefile
libavcodec/x86/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-01 00:06:42 +01:00
Michael Niedermayer
5c17377e28
Merge commit 'd74a8cb7e42f703be5796eeb485f06af710ae8ca'
...
* commit 'd74a8cb7e42f703be5796eeb485f06af710ae8ca':
fmtconvert: drop unused functions
Conflicts:
libavcodec/arm/fmtconvert_vfp_armv6.S
libavcodec/x86/fmtconvert.asm
libavcodec/x86/fmtconvert_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-28 23:58:29 +01:00
Anton Khirnov
71f1ad37d8
lavc: do not compile fmtconvert unconditionally
...
Only ac3dec and dcadec use it.
2015-02-28 21:51:24 +01:00
Anton Khirnov
d74a8cb7e4
fmtconvert: drop unused functions
2015-02-28 21:51:24 +01:00
Michael Niedermayer
5f1ea0bfc5
avcodec/ppc/fdctdsp: fix const warning
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-28 18:40:42 +01:00
Rong Yan
fc35df8931
avcodec/ppc/idctdsp.c: POWER LE support in idct_add_altivec()
...
also add GET_TMP2() macro
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-03 06:16:39 +01:00
Michael Niedermayer
d0f315ab6c
avcodec/ppc/h264qpel_template: Change if DEBUG assert() to av_assert2()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-30 16:44:00 +01:00
Michael Niedermayer
3531594017
ppc/mpegvideo_altivec: Change assert to av_assert2()
...
And move it to where the variable is used
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-30 16:43:14 +01:00
Andreas Cadhalpun
840c3c0531
libavcodec/ppc/mpegvideoencdsp.c: fix stack smashing in pix_norm1_altivec() and pix_sum_altivec()
...
The vec_ste calls were mistakenly changed to vec_vsx_st in c5ca76a
, which
caused stack smashing.
Changing them back fixes crashes on ppc64el, when configured with
--toolchain=hardened.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-21 03:20:41 +01:00
Rong Yan
9bd8f2cc32
avcodec/ppc/vp3dsp_altivec: POWER LE support to vp3_idct_add_altivec()
...
add GET_VDST16() macro
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-08 15:19:12 +01:00
Rong Yan
d23e883248
avcodec/ppc/vp8dsp_altivec.c: POWER LE support put_vp8_epel_h_altivec_core() put_vp8_epel_v_altivec_core() put_vp8_pixels16_altivec() add marcos GET_PIXHL() GET_OUTER() LOAD_HL()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-04 13:35:06 +01:00
Rong Yan
36cd2bcbc3
avcodec/ppc/vc1dsp_altivec: add POWER LE support to vc1_inv_trans_8x4_altivec()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-04 11:47:23 +01:00
Rong Yan
b4d41beebe
avcodec/ppc/lossless_audiodsp_altivec: POWER LE support for scalarproduct_and_madd_int16_altivec()
...
adds macro GET_T()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-02 17:13:47 +01:00
Michael Niedermayer
885a763cac
avcodec/ppc/h264qpel_template: protect unistd.h by #if HAVE_UNISTD_H
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-28 16:11:02 +01:00
Rong Yan
bd67d0ead1
avcodec/ppc/h264qpel: POWER LE support for put_pixels16_l2_altivec() and avg_pixels16_l2_altivec()
...
add put_unligned_store() and avg_unligned_store() macros
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-28 15:43:47 +01:00
Rong Yan
8cc5a78e45
avcodec/ppc/h264qpel_template: POWER LE support for PREFIX_h264_qpel16_h_lowpass_altivec() PREFIX_h264_qpel16_v_lowpass_altivec() PREFIX_h264_qpel16_hv_lowpass_altivec()
...
add load_alignment() macro
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-28 15:33:18 +01:00
Rong Yan
89f3043c7f
avcodec/ppc/h264chroma_template: POWER LE support for PREFIX_h264_chroma_mc8_altivec() PREFIX_no_rnd_vc1_chroma_mc8_altivec() CHROMA_MC8_ALTIVEC_CORE_SIMPLE() CHROMA_MC8_ALTIVEC_CORE()
...
add marcos GET_VSRC1() GET_VSRC()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-28 15:32:38 +01:00
Rong Yan
57c89c50bd
avcodec/ppc/h264dsp: POWER LE support for h264_idct8_add_altivec() h264_idct_dc_add_internal() h264_loop_filter_luma_altivec() write16x4() VEC_1D_DCT() weight_h264_W_altivec() biweight_h264_W_altivec() VEC_LOAD_U8_ADD_S16_STORE_U8() ALTIVEC_STORE_SUM_CLIP()
...
add marcos GET_2PERM() dstv_load() vdst_load() dest_unligned_store()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-28 15:30:02 +01:00
Michael Niedermayer
ea41e6d637
Merge commit '9c12c6ff9539e926df0b2a2299e915ae71872600'
...
* commit '9c12c6ff9539e926df0b2a2299e915ae71872600':
motion_est: convert stride to ptrdiff_t
Conflicts:
libavcodec/me_cmp.c
libavcodec/ppc/me_cmp.c
libavcodec/x86/me_cmp_init.c
See: 9c669672c7
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-24 12:13:00 +01:00
Vittorio Giovara
9c12c6ff95
motion_est: convert stride to ptrdiff_t
...
CC: libav-stable@libav.org
Bug-Id: CID 700556 / CID 700557 / CID 700558
2014-11-24 01:30:10 +00:00
Rong Yan
cfaa233962
libavcodec/ppc/me_cmp.c : support little endian in sse8_altivec(), hadamard8_diff8x8_altivec() and hadamard8_diff16x8_altivec()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-11 11:37:13 +01:00
Rong Yan
bb38cb14cc
libavcodec/ppc/me_cmp.c : factorize little and big endian code
...
add marcos GET_PERM() LOAD_PIX() for POWER LE
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-11 11:34:38 +01:00
Rong Yan
79e0255956
libavcodec/ppc/hpeldsp_altivec.c : fix ff_put_pixels16_altivec() put_no_rnd_pixels16_xy2_altivec() put_no_rnd_pixels8_xy2_altivec() avg_pixels8_altivec() avg_pixels8_xy2_altivec() put_pixels16_xy2_altivec() put_pixels8_xy2_altivec() ff_avg_pixels16_altivec() for POWER LE
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-07 12:32:03 +01:00
Rong Yan
0d71bd5a94
libavcodec/ppc/hpeldsp_altivec.c : fix ff_put_pixels16_altivec() for POWER LE
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-10 14:24:22 +02:00
Rong Yan
c1fa5d1bd4
libavcodec/ppc/me_cmp.c : fix sad16_altivec() sse16_altivec() sad16_xy2_altivec() sad16_x2_altivec() sad16_y2_altivec() sad8_altivec() for POWER LE
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-10 14:24:22 +02:00
Rong Yan
c5ca76ad3b
libavcodec/ppc/mpegvideoencdsp.c : fix pix_norm1_altivec() and pix_sum_altivec() for POWER LE
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-10 13:32:02 +02:00
Rong Yan
31dea05170
libavcodec/ppc/pixblockdsp.c : fix get_pixels_altivec() and diff_pixels_altivec() for POWER LE
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-10 13:31:49 +02:00
Reimar Döffinger
d9e2aceb7f
Add missing "const" all over the place.
...
Only "./configure --enable-gpl" on x86 was tested.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2014-08-29 18:57:25 +02:00
Michael Niedermayer
3bb2297351
Merge commit 'efd26bedec9a345a5960dbfcbaec888418f2d4e6'
...
* commit 'efd26bedec9a345a5960dbfcbaec888418f2d4e6':
build: Add explanatory comments to (optimization) blocks in the Makefiles
Conflicts:
libavcodec/ppc/Makefile
libavcodec/x86/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-15 20:25:12 +02:00
Michael Niedermayer
c1df467d73
Merge commit '835f798c7d20bca89eb4f3593846251ad0d84e4b'
...
* commit '835f798c7d20bca89eb4f3593846251ad0d84e4b':
mpegvideo: cosmetics: Lowercase ugly uppercase MPV_ function name prefixes
Conflicts:
libavcodec/h261dec.c
libavcodec/intrax8.c
libavcodec/mjpegenc.c
libavcodec/mpeg12dec.c
libavcodec/mpeg12enc.c
libavcodec/mpeg4videoenc.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo.h
libavcodec/mpegvideo_enc.c
libavcodec/rv10.c
libavcodec/x86/mpegvideoenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-15 20:11:56 +02:00