diff --git a/src/native/ffmpeg/Makefile b/src/native/ffmpeg/Makefile index a8efed774..43d7905ce 100644 --- a/src/native/ffmpeg/Makefile +++ b/src/native/ffmpeg/Makefile @@ -12,7 +12,7 @@ CPPFLAGS=-DJNI_IMPLEMENTATION \ # Uncomment section for your OS AND comment out the others # Linux configuration -CPPFLAGS+=-I$(JAVA_HOME)/include/linux +CPPFLAGS+=-I$(JAVA_HOME)/include/linux -Wl,-Bsymbolic LDFLAGS=-fPIC -shared # Choose between 32-bit or 64-bit #TARGET=../../../lib/native/linux/libffmpeg.so diff --git a/src/native/ffmpeg/ffmpeg-libswscale-visibility-hidden.patch b/src/native/ffmpeg/ffmpeg-libswscale-visibility-hidden.patch deleted file mode 100644 index 178c46d7e..000000000 --- a/src/native/ffmpeg/ffmpeg-libswscale-visibility-hidden.patch +++ /dev/null @@ -1,31 +0,0 @@ -Index: libswscale/swscale.c -=================================================================== ---- libswscale/swscale.c (révision 30204) -+++ libswscale/swscale.c (copie de travail) -@@ -259,17 +259,17 @@ - DECLARE_ALIGNED(8, const uint64_t, ff_M24C) = 0x0000FF0000FF0000LL; - - #ifdef FAST_BGR2YV12 --DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YCoeff) = 0x000000210041000DULL; --DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UCoeff) = 0x0000FFEEFFDC0038ULL; --DECLARE_ALIGNED(8, const uint64_t, ff_bgr2VCoeff) = 0x00000038FFD2FFF8ULL; -+DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YCoeff) __attribute__((visibility("hidden"))) = 0x000000210041000DULL; -+DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UCoeff) __attribute__((visibility("hidden"))) = 0x0000FFEEFFDC0038ULL; -+DECLARE_ALIGNED(8, const uint64_t, ff_bgr2VCoeff) __attribute__((visibility("hidden"))) = 0x00000038FFD2FFF8ULL; - #else --DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YCoeff) = 0x000020E540830C8BULL; --DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UCoeff) = 0x0000ED0FDAC23831ULL; --DECLARE_ALIGNED(8, const uint64_t, ff_bgr2VCoeff) = 0x00003831D0E6F6EAULL; -+DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YCoeff) __attribute__((visibility("hidden"))) = 0x000020E540830C8BULL; -+DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UCoeff) __attribute__((visibility("hidden"))) = 0x0000ED0FDAC23831ULL; -+DECLARE_ALIGNED(8, const uint64_t, ff_bgr2VCoeff) __attribute__((visibility("hidden"))) = 0x00003831D0E6F6EAULL; - #endif /* FAST_BGR2YV12 */ --DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YOffset) = 0x1010101010101010ULL; --DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UVOffset) = 0x8080808080808080ULL; --DECLARE_ALIGNED(8, const uint64_t, ff_w1111) = 0x0001000100010001ULL; -+DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YOffset) __attribute__((visibility("hidden"))) = 0x1010101010101010ULL; -+DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UVOffset) __attribute__((visibility("hidden"))) = 0x8080808080808080ULL; -+DECLARE_ALIGNED(8, const uint64_t, ff_w1111) __attribute__((visibility("hidden"))) = 0x0001000100010001ULL; - - DECLARE_ASM_CONST(8, uint64_t, ff_bgr24toY1Coeff) = 0x0C88000040870C88ULL; - DECLARE_ASM_CONST(8, uint64_t, ff_bgr24toY2Coeff) = 0x20DE4087000020DEULL; diff --git a/src/native/ffmpeg/ffmpeg-visibility-hidden.diff b/src/native/ffmpeg/ffmpeg-visibility-hidden.diff deleted file mode 100644 index ccfcee237..000000000 --- a/src/native/ffmpeg/ffmpeg-visibility-hidden.diff +++ /dev/null @@ -1,61 +0,0 @@ -Index: libavcodec/x86/dsputil_mmx.c -=================================================================== ---- libavcodec/x86/dsputil_mmx.c (révision 20783) -+++ libavcodec/x86/dsputil_mmx.c (copie de travail) -@@ -46,32 +46,32 @@ - DECLARE_ALIGNED_16(const uint64_t, ff_pdw_80000000[2]) = - {0x8000000080000000ULL, 0x8000000080000000ULL}; - --DECLARE_ALIGNED_8 (const uint64_t, ff_pw_3 ) = 0x0003000300030003ULL; --DECLARE_ALIGNED_8 (const uint64_t, ff_pw_4 ) = 0x0004000400040004ULL; --DECLARE_ALIGNED_16(const xmm_reg, ff_pw_5 ) = {0x0005000500050005ULL, 0x0005000500050005ULL}; --DECLARE_ALIGNED_16(const xmm_reg, ff_pw_8 ) = {0x0008000800080008ULL, 0x0008000800080008ULL}; --DECLARE_ALIGNED_8 (const uint64_t, ff_pw_15 ) = 0x000F000F000F000FULL; --DECLARE_ALIGNED_16(const xmm_reg, ff_pw_16 ) = {0x0010001000100010ULL, 0x0010001000100010ULL}; --DECLARE_ALIGNED_8 (const uint64_t, ff_pw_20 ) = 0x0014001400140014ULL; --DECLARE_ALIGNED_16(const xmm_reg, ff_pw_28 ) = {0x001C001C001C001CULL, 0x001C001C001C001CULL}; --DECLARE_ALIGNED_16(const xmm_reg, ff_pw_32 ) = {0x0020002000200020ULL, 0x0020002000200020ULL}; --DECLARE_ALIGNED_8 (const uint64_t, ff_pw_42 ) = 0x002A002A002A002AULL; --DECLARE_ALIGNED_16(const xmm_reg, ff_pw_64 ) = {0x0040004000400040ULL, 0x0040004000400040ULL}; --DECLARE_ALIGNED_8 (const uint64_t, ff_pw_96 ) = 0x0060006000600060ULL; --DECLARE_ALIGNED_8 (const uint64_t, ff_pw_128) = 0x0080008000800080ULL; --DECLARE_ALIGNED_8 (const uint64_t, ff_pw_255) = 0x00ff00ff00ff00ffULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pw_3 )__attribute__((visibility("hidden"))) = 0x0003000300030003ULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pw_4 )__attribute__((visibility("hidden"))) = 0x0004000400040004ULL; -+DECLARE_ALIGNED_16(const xmm_reg, ff_pw_5 )__attribute__((visibility("hidden"))) = {0x0005000500050005ULL, 0x0005000500050005ULL}; -+DECLARE_ALIGNED_16(const xmm_reg, ff_pw_8 )__attribute__((visibility("hidden"))) = {0x0008000800080008ULL, 0x0008000800080008ULL}; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pw_15 )__attribute__((visibility("hidden"))) = 0x000F000F000F000FULL; -+DECLARE_ALIGNED_16(const xmm_reg, ff_pw_16 )__attribute__((visibility("hidden"))) = {0x0010001000100010ULL, 0x0010001000100010ULL}; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pw_20 )__attribute__((visibility("hidden"))) = 0x0014001400140014ULL; -+DECLARE_ALIGNED_16(const xmm_reg, ff_pw_28 )__attribute__((visibility("hidden"))) = {0x001C001C001C001CULL, 0x001C001C001C001CULL}; -+DECLARE_ALIGNED_16(const xmm_reg, ff_pw_32 )__attribute__((visibility("hidden"))) = {0x0020002000200020ULL, 0x0020002000200020ULL}; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pw_42 )__attribute__((visibility("hidden"))) = 0x002A002A002A002AULL; -+DECLARE_ALIGNED_16(const xmm_reg, ff_pw_64 )__attribute__((visibility("hidden"))) = {0x0040004000400040ULL, 0x0040004000400040ULL}; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pw_96 )__attribute__((visibility("hidden"))) = 0x0060006000600060ULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pw_128)__attribute__((visibility("hidden"))) = 0x0080008000800080ULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pw_255)__attribute__((visibility("hidden"))) = 0x00ff00ff00ff00ffULL; - --DECLARE_ALIGNED_8 (const uint64_t, ff_pb_1 ) = 0x0101010101010101ULL; --DECLARE_ALIGNED_8 (const uint64_t, ff_pb_3 ) = 0x0303030303030303ULL; --DECLARE_ALIGNED_8 (const uint64_t, ff_pb_7 ) = 0x0707070707070707ULL; --DECLARE_ALIGNED_8 (const uint64_t, ff_pb_1F ) = 0x1F1F1F1F1F1F1F1FULL; --DECLARE_ALIGNED_8 (const uint64_t, ff_pb_3F ) = 0x3F3F3F3F3F3F3F3FULL; --DECLARE_ALIGNED_8 (const uint64_t, ff_pb_81 ) = 0x8181818181818181ULL; --DECLARE_ALIGNED_8 (const uint64_t, ff_pb_A1 ) = 0xA1A1A1A1A1A1A1A1ULL; --DECLARE_ALIGNED_8 (const uint64_t, ff_pb_FC ) = 0xFCFCFCFCFCFCFCFCULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pb_1 )__attribute__((visibility("hidden"))) = 0x0101010101010101ULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pb_3 )__attribute__((visibility("hidden"))) = 0x0303030303030303ULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pb_7 )__attribute__((visibility("hidden"))) = 0x0707070707070707ULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pb_1F )__attribute__((visibility("hidden"))) = 0x1F1F1F1F1F1F1F1FULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pb_3F )__attribute__((visibility("hidden"))) = 0x3F3F3F3F3F3F3F3FULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pb_81 )__attribute__((visibility("hidden"))) = 0x8181818181818181ULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pb_A1 )__attribute__((visibility("hidden"))) = 0xA1A1A1A1A1A1A1A1ULL; -+DECLARE_ALIGNED_8 (const uint64_t, ff_pb_FC )__attribute__((visibility("hidden"))) = 0xFCFCFCFCFCFCFCFCULL; - --DECLARE_ALIGNED_16(const double, ff_pd_1[2]) = { 1.0, 1.0 }; --DECLARE_ALIGNED_16(const double, ff_pd_2[2]) = { 2.0, 2.0 }; -+DECLARE_ALIGNED_16(const double, ff_pd_1[2])__attribute__((visibility("hidden"))) = { 1.0, 1.0 }; -+DECLARE_ALIGNED_16(const double, ff_pd_2[2])__attribute__((visibility("hidden"))) = { 2.0, 2.0 }; - - #define JUMPALIGN() __asm__ volatile (ASMALIGN(3)::) - #define MOVQ_ZERO(regd) __asm__ volatile ("pxor %%" #regd ", %%" #regd ::) diff --git a/src/native/ffmpeg/x264-20091208-visibility-hidden.patch b/src/native/ffmpeg/x264-20091208-visibility-hidden.patch deleted file mode 100644 index 99794189c..000000000 --- a/src/native/ffmpeg/x264-20091208-visibility-hidden.patch +++ /dev/null @@ -1,141 +0,0 @@ -diff -ru a/x264-snapshot-20091208-2245/common/cabac.c b/x264-snapshot-20091208-2245/common/cabac.c ---- a/x264-snapshot-20091208-2245/common/cabac.c 2009-12-08 22:45:08.000000000 +0100 -+++ b/x264-snapshot-20091208-2245/common/cabac.c 2010-01-08 09:11:43.000000000 +0100 -@@ -666,7 +666,7 @@ - - /* FIXME could avoid this duplication by reversing the order of states - * with MPS=0, but that would uglify the other tables */ --const uint8_t x264_cabac_range_lps[128][4] = -+const uint8_t x264_cabac_range_lps[128][4] __attribute__((visibility("hidden"))) = - { - { 2, 2, 2, 2 }, - { 6, 7, 8, 9 }, { 6, 7, 9, 10 }, { 6, 8, 9, 11 }, -@@ -715,7 +715,7 @@ - { 2, 2, 2, 2 }, - }; - --const uint8_t x264_cabac_transition[128][2] = -+const uint8_t x264_cabac_transition[128][2] __attribute__((visibility("hidden"))) = - { - { 0, 0}, { 1, 25}, { 1, 25}, { 2, 26}, { 3, 26}, { 4, 26}, { 5, 27}, { 6, 27}, - { 7, 27}, { 8, 28}, { 9, 28}, { 10, 28}, { 11, 29}, { 12, 29}, { 13, 30}, { 14, 30}, -@@ -735,7 +735,7 @@ - {100,121}, {100,122}, {101,123}, {101,124}, {101,125}, {102,126}, {102,126}, {127,127}, - }; - --const uint8_t x264_cabac_renorm_shift[64]= { -+const uint8_t x264_cabac_renorm_shift[64] __attribute__((visibility("hidden"))) = { - 6,5,4,4,3,3,3,3,2,2,2,2,2,2,2,2, - 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -diff -ru a/x264-snapshot-20091208-2245/common/quant.c b/x264-snapshot-20091208-2245/common/quant.c ---- a/x264-snapshot-20091208-2245/common/quant.c 2009-12-08 22:45:08.000000000 +0100 -+++ b/x264-snapshot-20091208-2245/common/quant.c 2010-01-08 09:34:09.000000000 +0100 -@@ -163,9 +163,9 @@ - * chroma: for the complete mb: if score < 7 -> null - */ - --const uint8_t x264_decimate_table4[16] = { -+const uint8_t x264_decimate_table4[16] __attribute__((visibility("hidden"))) = { - 3,2,2,1,1,1,0,0,0,0,0,0,0,0,0,0 }; --const uint8_t x264_decimate_table8[64] = { -+const uint8_t x264_decimate_table8[64] __attribute__((visibility("hidden"))) = { - 3,3,3,3,2,2,2,2,2,2,2,2,1,1,1,1, - 1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -diff -ru a/x264-snapshot-20091208-2245/common/x86/dct-32.asm b/x264-snapshot-20091208-2245/common/x86/dct-32.asm ---- a/x264-snapshot-20091208-2245/common/x86/dct-32.asm 2009-12-08 22:45:08.000000000 +0100 -+++ b/x264-snapshot-20091208-2245/common/x86/dct-32.asm 2010-01-08 11:23:31.000000000 +0100 -@@ -191,7 +191,7 @@ - ; void x264_sub8x8_dct8_mmx( int16_t dct[8][8], uint8_t *pix1, uint8_t *pix2 ) - ;----------------------------------------------------------------------------- - cglobal x264_sub8x8_dct8_mmx, 3,3 --global x264_sub8x8_dct8_mmx.skip_prologue -+global x264_sub8x8_dct8_mmx.skip_prologue:hidden - .skip_prologue: - INIT_MMX - call load_diff_4x8_mmx -@@ -257,7 +257,7 @@ - ; void x264_add8x8_idct8_mmx( uint8_t *dst, int16_t dct[8][8] ) - ;----------------------------------------------------------------------------- - cglobal x264_add8x8_idct8_mmx, 2,2 --global x264_add8x8_idct8_mmx.skip_prologue -+global x264_add8x8_idct8_mmx.skip_prologue:hidden - .skip_prologue: - INIT_MMX - add word [r1], 32 -@@ -346,7 +346,7 @@ - %macro DCT_SUB8 1 - cglobal x264_sub8x8_dct_%1, 3,3 - add r2, 4*FDEC_STRIDE --global x264_sub8x8_dct_%1.skip_prologue -+global x264_sub8x8_dct_%1.skip_prologue:hidden - .skip_prologue: - %ifnidn %1, sse2 - mova m7, [hsub_mul GLOBAL] -@@ -379,7 +379,7 @@ - ;----------------------------------------------------------------------------- - cglobal x264_sub8x8_dct8_%1, 3,3 - add r2, 4*FDEC_STRIDE --global x264_sub8x8_dct8_%1.skip_prologue -+global x264_sub8x8_dct8_%1.skip_prologue:hidden - .skip_prologue: - %ifidn %1, sse2 - LOAD_DIFF m0, m7, none, [r1+0*FENC_STRIDE], [r2-4*FDEC_STRIDE] -@@ -423,7 +423,7 @@ - ;----------------------------------------------------------------------------- - cglobal x264_add8x8_idct_sse2, 2,2 - add r0, 4*FDEC_STRIDE --global x264_add8x8_idct_sse2.skip_prologue -+global x264_add8x8_idct_sse2.skip_prologue:hidden - .skip_prologue: - UNSPILL_SHUFFLE r1, 0,2,1,3, 0,1,2,3 - SBUTTERFLY qdq, 0, 1, 4 -@@ -460,7 +460,7 @@ - ;----------------------------------------------------------------------------- - cglobal x264_add8x8_idct8_sse2, 2,2 - add r0, 4*FDEC_STRIDE --global x264_add8x8_idct8_sse2.skip_prologue -+global x264_add8x8_idct8_sse2.skip_prologue:hidden - .skip_prologue: - UNSPILL r1, 1,2,3,5,6,7 - IDCT8_1D 0,1,2,3,4,5,6,7,r1 -diff -ru a/x264-snapshot-20091208-2245/common/x86/dct-64.asm b/x264-snapshot-20091208-2245/common/x86/dct-64.asm ---- a/x264-snapshot-20091208-2245/common/x86/dct-64.asm 2009-12-08 22:45:08.000000000 +0100 -+++ b/x264-snapshot-20091208-2245/common/x86/dct-64.asm 2010-01-08 09:32:27.000000000 +0100 -@@ -149,7 +149,7 @@ - call .skip_prologue - RET - %endif --global x264_sub8x8_dct_%1.skip_prologue -+global x264_sub8x8_dct_%1.skip_prologue:hidden - .skip_prologue: - SWAP 7, 9 - LOAD_DIFF8x4 0, 1, 2, 3, 8, 9, r1, r2-4*FDEC_STRIDE -@@ -176,7 +176,7 @@ - call .skip_prologue - RET - %endif --global x264_sub8x8_dct8_%1.skip_prologue -+global x264_sub8x8_dct8_%1.skip_prologue:hidden - .skip_prologue: - SWAP 7, 10 - LOAD_DIFF8x4 0, 1, 2, 3, 4, 10, r1, r2-4*FDEC_STRIDE -@@ -214,7 +214,7 @@ - call .skip_prologue - RET - %endif --global x264_add8x8_idct8_sse2.skip_prologue -+global x264_add8x8_idct8_sse2.skip_prologue:hidden - .skip_prologue: - SWAP 7, 9 - movdqa m0, [r1+0x00] -@@ -246,7 +246,7 @@ - call .skip_prologue - RET - %endif --global x264_add8x8_idct_sse2.skip_prologue -+global x264_add8x8_idct_sse2.skip_prologue:hidden - .skip_prologue: - SWAP 7, 9 - mova m0, [r1+ 0]