simd_align_16 is a configure item that can be enabled or disabled,
it's not a variable containing a list of other configure items
as need_memalign previously. This was broken in eba2233b5.
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
This is mostly to serve as a reference example on how to segment
the output from the mp4 muxer, capable of writing the segment
list in four different ways:
- SegmentTemplate with SegmentTimeline
- SegmentTemplate with implicit segments
- SegmentList with individual files
- SegmentList with one single file per track, and byte ranges
The muxer is able to serve live content (with optional windowing)
or create a static segmented MPD.
In advanced cases, users will probably want to do the segmenting
in their own application code.
Signed-off-by: Martin Storsjö <martin@martin.st>
This allows writing most code as if they always are is available.
These are ok to use from other libraries even though it's not a
public header, since they only provide an inline declaration, and
doesn't add an actual dependency on lavu internals. (This can be
considered more a build system compatibility fallback than a
libavutil feature.)
Signed-off-by: Martin Storsjö <martin@martin.st>
This silences warnings about passing arguments from incompatible pointer type
when targeting Windows Vista or newer.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
This option facilitates testing shared libarary builds: for instance
fate builders do no longer need to set LD_LIBRARY_PATH as the binaries will
get the right search paths hardcoded into their executable file.
This option is only meant to be used for testing purposes: The installed
libraries must not move around in the file system, and doing so will
cause a lot of subtle problems. For more information why using RPATH is
dangerous, please refer to
https://blog.flameeyes.eu/2010/06/the-why-and-how-of-rpath
On mingw64 with c++11 support, the link libraries do contain a
nanosleep function, while it isn't exposed via the headers. Using
check_func_headers instead of a plain check_func fixes this
misdetection.
Signed-off-by: Martin Storsjö <martin@martin.st>
The -MD option (for enabling a dynamically linked crt) gets interpreted
as a cpp option for generating dependency information (into a file named
'-.d', when preprocessing to a pipe). We shouldn't be passing
any and all C compiler flags to armasm (which is a plain assembler,
only with cpp bolted on via gas-preprocessor), but these are the
main conflicting ones.
Signed-off-by: Martin Storsjö <martin@martin.st>
This tries to find the most expressive part of the output of
armcc --vsn to include, giving a compiler identification of
"ARM Compiler 5.04 update 2 (build 82)" instead of just
"ARM Compiler 5.04" for armcc 5.0.
4.x versions of armcc output the following, for "armcc --vsn":
ARM C/C++ Compiler, RVCT4.0 [Build 925]
For evaluation purposes only
Software supplied by: ARM Limited
ARM C/C++ Compiler, 4.1 [Build 894]
For evaluation purposes only
Software supplied by: ARM Limited
5.0 versions output this:
Product: ARM Compiler 5.04
Component: ARM Compiler 5.04 update 2 (build 82)
Tool: armcc [5040081]
For evaluation purposes only
Software supplied by: ARM Limited
Signed-off-by: Martin Storsjö <martin@martin.st>
llvm's integrated assembler supports the AArch64 asm on darwin since
August 2014. So check $as first before using gas-preprocessor.pl via
$gas. Makes the checks specific for that the architecture specific asm
needs. PPC Altivec and AArch64 needs on ':vararg' for macro arguments.
Arm needs in addition the '.altmacro' directive.
Initialise VC1DSPContext for parser as well as for decoder.
Note, the VC-1 code doesn't actually use the function pointer yet.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Check for an instruction that causes the (very old) Apple GCC 4.2
to error out ("unrecognizable insn").
Signed-off-by: Martin Storsjö <martin@martin.st>