3099 Commits

Author SHA1 Message Date
Matt Oliver
8236747511 Automatically change MANGLE() into named inline asm operands when direct symbol reference in inline asm are not supported.
This is part of the patch-set for intel C inline asm on windows support

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-18 23:39:30 +01:00
Janne Grunau
dbd12523a4 aarch64: float_dsp NEON assembler
Ported from arm NEON and added vector_dmul_scalar.

Functions between 1.5 and 5 times faster than the C implementations
using Apple's clang-503.0.19 on A7.
2014-03-18 22:56:07 +01:00
Michael Niedermayer
7ab315ec69 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  float_dsp: add test program and use it as fate test

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-18 20:04:28 +01:00
Janne Grunau
f0f687446e float_dsp: add test program and use it as fate test 2014-03-18 13:08:00 +01:00
Michael Niedermayer
6b1ca1709f Merge commit '1481d24c3a0abf81e1d7a514547bd5305232be30'
* commit '1481d24c3a0abf81e1d7a514547bd5305232be30':
  RGBA64 pixel formats

Conflicts:
	doc/APIchanges
	libavutil/pixdesc.c
	libavutil/pixfmt.h
	libavutil/version.h
	libswscale/utils.c

See: 9569a3c9f41387a8c7d1ce97d8693520477a66c3
See: 92afb431621c79155fcb7171d26f137eb1bee028, as well as others
Note: the enum values added in libav are incompatible/different to what ffmpeg used since 3 years
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-17 14:41:13 +01:00
Jean First
1481d24c3a RGBA64 pixel formats
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-03-16 23:05:47 +01:00
Michael Niedermayer
3141b04c7f Merge commit 'da785231ea0b82b5c2526babbb2871c935b21a87'
* commit 'da785231ea0b82b5c2526babbb2871c935b21a87':
  bfin: Refactor duplicated assembly-related macros

Conflicts:
	libavcodec/bfin/hpel_pixels_bfin.S

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-14 01:56:25 +01:00
Michael Niedermayer
91a61c4c15 Merge commit 'e99af2a3b1660b4f328335149980064692097cad'
* commit 'e99af2a3b1660b4f328335149980064692097cad':
  bfin: Refactor duplicated l1_text/l1_data_B macros

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-14 01:49:44 +01:00
Michael Niedermayer
1c788eaca9 Merge commit '831a1180785a786272cdcefb71566a770bfb879e'
* commit '831a1180785a786272cdcefb71566a770bfb879e':
  Update dsputil- and SIMD-related comments to match reality more closely

Conflicts:
	libavcodec/x86/hpeldsp.asm
	libavutil/arm/float_dsp_init_arm.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-13 23:59:56 +01:00
Michael Niedermayer
8b02dfd37c avutil/timestamp: Warn about missing __STDC_FORMAT_MACROS for C++ use
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-13 17:32:15 +01:00
Diego Biurrun
da785231ea bfin: Refactor duplicated assembly-related macros 2014-03-13 08:15:52 -07:00
Diego Biurrun
e99af2a3b1 bfin: Refactor duplicated l1_text/l1_data_B macros 2014-03-13 08:15:52 -07:00
Diego Biurrun
831a118078 Update dsputil- and SIMD-related comments to match reality more closely 2014-03-13 05:50:29 -07:00
James Almer
7d7487e85c x86/float_dsp: add ff_vector_{fmul_add, fmac_scalar}_fma3
~7% faster than AVX

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-13 04:34:05 +01:00
Michael Niedermayer
8dfd0e62f5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  float_dsp: fix errors in documentation

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-09 15:37:35 +01:00
Michael Niedermayer
4159f702a7 avutil/timer: Fix units for x86 after c708b5403346255ea5adc776645616cc7c61f078
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-09 15:22:02 +01:00
Michael Niedermayer
c2923100f5 Merge commit 'c708b5403346255ea5adc776645616cc7c61f078'
* commit 'c708b5403346255ea5adc776645616cc7c61f078':
  timer: use mach_absolute_time as high resolution clock on darwin

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-09 14:30:24 +01:00
Janne Grunau
74cc901905 float_dsp: fix errors in documentation 2014-03-09 00:45:35 +01:00
Janne Grunau
c708b54033 timer: use mach_absolute_time as high resolution clock on darwin
Not guaranteed to be in nanosecond resolution. On iOS 7 the duration
of one tick is 125/3 ns which is still more than an order of magnitude
better then microseconds.

Replace decicycles with the neutral UNITS. Decicycles is strange but
tenths of a nanosecond and unspecific "deci"-ticks for mach_absolute_time
is just silly.
2014-03-09 00:45:34 +01:00
Michael Niedermayer
774d0c9dba Merge commit '93d216d37a3f95190ecb9d51cf72f54ea4e04ec7'
* commit '93d216d37a3f95190ecb9d51cf72f54ea4e04ec7':
  dict: K&R formatting cosmetics

Conflicts:
	libavutil/dict.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-07 12:44:09 +01:00
Patrice Clement
93d216d37a dict: K&R formatting cosmetics 2014-03-07 01:19:22 +01:00
Lukasz Marek
bba7b6fc41 Revert "lavu/buffer: add release function"
This reverts commit 3144440004941aa22ffea9933f5e5dfe826df654.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-06 03:23:40 +01:00
Michael Niedermayer
a74bab7079 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  arm: hpeldsp: prevent overreads in armv6 asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-05 21:35:30 +01:00
Janne Grunau
cbddee1cca arm: hpeldsp: prevent overreads in armv6 asm
Based on a patch by Russel King <rmk+libav@arm.linux.org.uk>

Bug-Id: 646
CC: libav-stable@libav.org
2014-03-05 14:30:57 +01:00
Michael Niedermayer
4a59994e03 Merge commit 'a18ef7a76c735bcf78ed4825e33ad7f9f6f77a54'
* commit 'a18ef7a76c735bcf78ed4825e33ad7f9f6f77a54':
  doc: fix a couple of typos in frame.h

Conflicts:
	libavutil/frame.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-04 21:55:16 +01:00
Vittorio Giovara
a18ef7a76c doc: fix a couple of typos in frame.h 2014-03-04 16:12:11 +01:00
Lukasz Marek
19b3a25048 lavu/log: add device categories
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
2014-03-03 23:34:31 +01:00
Michael Niedermayer
52d928daf9 avutil/opt: allow max=min=0 for pixel formats
This is neccessary for maintaining ABI compatibility with FFmpeg 2.1

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-01 00:31:38 +01:00
Lukasz Marek
3144440004 lavu/buffer: add release function
new function allows to unref buffer and obtain its data.

Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-25 01:38:52 +01:00
Michael Niedermayer
74bb1ca82c avutil/frame_copy_audio: also check that channels match
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-24 10:12:33 +01:00
Michael Niedermayer
fff5262301 Merge commit '1155fd02ae7bac215acab316e847c6bb25f74fc3'
* commit '1155fd02ae7bac215acab316e847c6bb25f74fc3':
  frame: add a convenience function for copying AVFrame data

Conflicts:
	doc/APIchanges
	libavutil/frame.c
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-24 09:38:32 +01:00
James Almer
3f3d748cab x86: Move XOP emulation to x86util
We need the emulation to support the cases where the first
argument is the same as the fourth. To achieve this a fifth
argument working as a temporary may be needed.
Emulation that doesn't obey the original instruction semantics
can't be in x86inc.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-24 08:30:19 +01:00
Anton Khirnov
1155fd02ae frame: add a convenience function for copying AVFrame data 2014-02-24 07:25:07 +01:00
Michael Niedermayer
bd8d73ea8b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: add detection for Bit Manipulation Instruction sets

Conflicts:
	libavutil/x86/cpu.c

See: 0bc3de19ffe296254f214dc7615e624d8e401bcb
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-23 22:52:58 +01:00
Michael Niedermayer
d9574069c1 Merge commit '1b932eb1508f550fac9e911923a0383efda53aa3'
* commit '1b932eb1508f550fac9e911923a0383efda53aa3':
  x86: add detection for FMA3 instruction set

Conflicts:
	configure
	libavutil/cpu.h
	libavutil/x86/cpu.c

See: a2af8eddab75f1eac712411e4dde89823c0845e8
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-23 22:43:08 +01:00
James Almer
d59fcdaff3 x86: add detection for Bit Manipulation Instruction sets
Based on x264 code

Signed-off-by: James Almer <jamrial@gmail.com>
2014-02-23 15:29:36 +01:00
James Almer
1b932eb150 x86: add detection for FMA3 instruction set
Based on x264 code

Signed-off-by: James Almer <jamrial@gmail.com>
2014-02-23 15:29:36 +01:00
James Almer
10b0161d78 x86: add missing XOP checks and macros
Signed-off-by: James Almer <jamrial@gmail.com>
2014-02-23 15:29:36 +01:00
Peter Ross
a3a4d07d6a avutil/pixdesc: set bayer pixfmt descriptor flags
Signed-off-by: Peter Ross <pross@xvid.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-23 02:24:03 +01:00
James Almer
0bc3de19ff x86: add detection for Bit Manipulation Instruction sets
Based on x264 code

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-22 17:26:00 +01:00
James Almer
a2af8eddab x86: add detection for FMA3 instruction set
Based on x264 code

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-22 17:25:52 +01:00
Michael Niedermayer
490215cbd7 Merge commit '9c029f67ca82147ddfa83a1546ee1e109e11fbd4'
* commit '9c029f67ca82147ddfa83a1546ee1e109e11fbd4':
  aarch64: use EXTERN_ASM consistently for exported symbols

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-20 23:13:13 +01:00
Janne Grunau
9c029f67ca aarch64: use EXTERN_ASM consistently for exported symbols
Based on e3fec3f095ab5ea08ee662942d98526aaf5e3635 for arm.
2014-02-20 15:24:35 +01:00
Christophe Gisquet
996697e266 x86: float dsp: unroll SSE versions
vector_fmul and vector_fmac_scalar are guaranteed that they can process in
batch of 16 elements, but their SSE versions only does 8 at a time.

Therefore, unroll them a bit.
299 to 261c for 256 elements in vector_fmac_scalar on Arrandale/Win64.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2014-02-20 14:18:05 +01:00
Michael Niedermayer
6a24d77929 Merge commit 'c3ecd968f0e78da6e77f0c06c2f785b266d83cf1'
* commit 'c3ecd968f0e78da6e77f0c06c2f785b266d83cf1':
  AVOptions: add flags for read/read-only options

Conflicts:
	libavutil/opt.c
	libavutil/opt.h
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-20 02:01:13 +01:00
Michael Niedermayer
f4c8d00223 Merge commit '6bb8720f00e2e6209665f819fb351fd42b82d5d0'
* commit '6bb8720f00e2e6209665f819fb351fd42b82d5d0':
  AVOptions: deprecate unused AV_OPT_FLAG_METADATA

Conflicts:
	doc/APIchanges
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-20 01:50:26 +01:00
Michael Niedermayer
0a30ad3473 Merge commit '874c751cc5b99cd68932e21c2c3a0d21134207e0'
* commit '874c751cc5b99cd68932e21c2c3a0d21134207e0':
  threads: Check w32threads dependencies at the configure stage

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-19 21:53:58 +01:00
Anton Khirnov
c3ecd968f0 AVOptions: add flags for read/read-only options 2014-02-19 21:52:17 +01:00
Anton Khirnov
6bb8720f00 AVOptions: deprecate unused AV_OPT_FLAG_METADATA
It was never used since it was added and the things it was intended for
are now exported differently.
2014-02-19 21:52:17 +01:00
Diego Biurrun
874c751cc5 threads: Check w32threads dependencies at the configure stage
Also add warning comment about threading implementations without matching
atomics implementation to the atomics fallback implementation.
2014-02-19 15:12:37 +01:00