Commit Graph

2518 Commits

Author SHA1 Message Date
Gopu Govindaswamy
3b5e5e6a29 libx265: Use the Multi-library Interface
Use the Multi-library interface to load at runtime x265 libraries
supporting alternative bit depths (e.g. 8bit and 16bit).

The linked library will try to load the library supporting the
pixel format if it is not supported by itself.

Fallback requesting the native library (passing 0 to x265_api_get) if
a library supporting the requested bit depth is not available.

Signed-off-by: Gopu Govindaswamy <gopu@multicorewareinc.com>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-05-13 17:14:50 +02:00
Matt Oliver
3edeb7749e configure: Allow log2 with MSVC 2013 onwards.
Only MSVC 2010 in x64 mode, in the static msvcrt, had a
stray log2 function (which wasn't available in the headers).

MSVC 2013 has got a proper log2 function though.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-02 22:11:36 +03:00
Martin Storsjö
863ee06809 configure: Use the right local variable in the MSVC and ICL probes
$cc is the compiler requested as main target compiler, while $_cc
is the actual tool tested in the probe function right now (which
can also be e.g. the host compiler).

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-02 22:09:09 +03:00
Martin Storsjö
e2d50fc2f5 avplay: Add support for rotated video
This is enabled by default, but can be disbled via the -noautorotate
option.

Based on a patch by Clément Bœsch.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-05-02 22:06:29 +03:00
Vittorio Giovara
eaa2d123f0 log: Print a full backtrace along with error messages under Valgrind
Useful to understand where and in what execution state a certain message
is generated. It is enabled only when optimizations are disabled, since
function names are not printed otherwise.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-04-20 19:20:57 +01:00
Diego Biurrun
1336bb06c9 configure: Simplify avisynth check 2015-04-15 14:52:58 +02:00
Luca Barbato
27f2746282 parseutils: Make av_small_strptime public
And use it in libavformat.

Based on a similar patch by Stefano Sabatini <stefasab@gmail.com>.
2015-04-07 12:36:11 +02:00
Diego Biurrun
4978850ca2 build: Split JPEG-related tables off into a separate component 2015-03-30 17:51:21 +02:00
Hendrik Leppkes
72025ac36c lavc: add libdcadec decoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2015-03-29 10:15:09 +02:00
wm4
c48456166e lavc: add MMAL hardware decoder wrapper
Based on a patch by Rodger Combs.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2015-03-29 09:55:20 +02:00
Anton Khirnov
72b7441a10 lavc: add Intel libmfx-based H.264 encoder 2015-03-27 22:02:10 +01:00
Anton Khirnov
d0a63d8b98 qsvdec: split off some code that will be shared with the encoder 2015-03-27 21:57:28 +01:00
Anton Khirnov
b04d009b0e qsv: rename to qsvdec
This is to avoid conflicts with the upcoming QSV encoding support.
2015-03-27 21:56:36 +01:00
Diego Biurrun
91894f27dc configure: Disable shift operator precedence warnings with MSVC 2015-03-17 11:59:31 +01:00
Janne Grunau
faab8f9fcb configure: move cross_compile checks after the toolchain section 2015-03-16 11:55:47 +01:00
Janne Grunau
3e1b5cbc9a configure: handle Apple's armv7s in probe_arm_arch() 2015-03-16 11:55:47 +01:00
Vittorio Giovara
247e370e2a TDSC decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-03-13 19:48:14 +00:00
Diego Biurrun
9c80740507 configure: Mark qsv subsystem as not selectable on the command line 2015-03-11 23:40:41 +01:00
Vittorio Giovara
7a76c6c4df configure: Enable colored output for gcc 4.9+ 2015-03-11 18:01:36 +00:00
Martin Storsjö
b77e335e44 configure: Move the .object_arch check to the right place
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-03-07 18:12:58 +02:00
Martin Storsjö
dcae2e32f7 arm: Suppress tags about used cpu arch and extensions
When all the codepaths using manually set .arch/.fpu code is
behind runtime detection, the elf attributes should be suppressed.

This allows tools to know that the final built binary doesn't
strictly require these extensions.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-03-07 17:10:08 +02:00
Anton Khirnov
990e4a6639 Add a QSV decoding example. 2015-02-28 21:51:24 +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
Luca Barbato
82b6e45116 configure: Move the cross_prefix setting after the toolchain one
Makes passing to configure
--toolchain=gcc-asan --cross-prefix=armv7a-hardfloat-linux-gnueabi-
work as intended.
2015-02-26 15:11:16 +01:00
Vittorio Giovara
521979e6b1 configure: Properly fail when libcdio/cdparanoia is not found 2015-02-22 22:31:54 +00:00
Vittorio Giovara
f7cc6627c0 configure: Use pkg-config for libdc1394 discovery
Since not all systems need the libraw1394 dependency, let pkg-config
provide the list of libraries actually needed.

The libdc1394-2.pc file has been included since version 2 (2008-01-05),
so it should be safe to use.
2015-02-22 22:30:35 +00:00
Anton Khirnov
11c22dfd49 configure: add missing h264_qsv hwaccel deps 2015-02-19 17:32:55 +01:00
Anton Khirnov
4e08c82110 lavc: add an Intel libmfx-based H.264 decoder
Based on the code by Luca Barbato <lu_zero@gentoo.org> and Yukinori
Yamazoe <drocon11@gmail.com>.
2015-02-19 15:08:49 +01:00
Luca Barbato
c23ccaf988 xcbgrab: Check for xcb-shape
It is required.
2015-02-15 18:20:54 +01:00
Alex Converse
d615187f74 aacdec: Support for ER AAC ELD 480.
Based in part on work from Niel van der Westhuizen <espes@pequalsnp.com>.
2015-02-03 20:32:16 -08:00
Diego Biurrun
3d5d46233c opus: Factor out imdct15 into a standalone component
It will be reused by the AAC decoder.
2015-02-02 16:07:33 +01:00
Martin Storsjö
28df0151b6 configure: Add a dependency on vc1_decoder from vc1_parser
This fixes builds with vc1_parser enabled without vc1_decoder. All
the vc1_decoder object files were included in the vc1_parser line
in libavcodec/Makefile before, but architecture specific object files
for vc1_decoder were not.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-02 15:30:54 +02:00
Hendrik Leppkes
7e850fa67e Add DXVA2 HEVC HWAccel
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2015-01-27 09:05:31 +01:00
Martin Storsjö
3852e2c926 libopenh264enc: Fix a typo and some nitpicks
Also move the .long_name entry to below the .name entry.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-01-08 13:53:25 +02:00
Martin Storsjö
8a3d9ca603 libavcodec: Add an OpenH264 encoder wrapper
Compared to existing, common opensource H264 encoders, this can be
useful since it has got a different license (BSD instead of GPL).

Performance- and qualitywise it is comparable to x264 in ultrafast
mode.

Hooking it up as an encoder in libavcodec also simplifies comparing
it against other common encoders.

This requires OpenH264 1.3 or newer. Since the OpenH264 API and ABI
changes frequently, only releases are supported.

To take advantage of the OpenH264 patent offer, the OpenH264 library
must not be redistributed, but downloaded at runtime at the end-user's
system.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-01-06 19:58:44 +02:00
Agostino Sarubbo
fe08299868 build: Use -Werror=format-security
Reduce the chance of introducing a class of bugs quite hard to track.
2015-01-05 15:35:39 +01:00
Martin Storsjö
f4d4e66a24 configure: Remap -L to -libpath for msvc
This allows using libraries that are detected via pkg-config with
msvc. (The libraries themselves may have to be built with MSVC
though.)

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-01-04 19:57:34 +02:00
Martin Storsjö
8ebf02f8f5 libavformat: Only use MoveFileExA when targeting the desktop API subset
The MoveFileExA is available in the headers regardless which API
subset is targeted, but it is missing in the Windows Phone link
libraries. When targeting Windows Store apps, the function is
available both in the headers and in the link libraries, and thus
there is no indication for the build system that this function
should be avoided - such an indication is only given by the
Windows App Certification Kit, which forbids using the MoveFileExA
function.

Therefore check the WINAPI_FAMILY defines instead, to figure out
which API subset is targeted.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-12-19 23:24:47 +02:00
Martin Storsjö
f963f80399 arm: Use .data.rel.ro for const data with relocations
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-12-09 11:43:25 +02:00
Vittorio Giovara
7834a54c66 configure: enable vda hwaccel by default
Following the old thread suggestions.
Vittorio
2014-12-03 12:54:23 +00:00
Martin Storsjö
79fd186a50 lavf: Use MoveFileEx instead of rename/_wrename on windows
This allows getting the normal unix semantics, where a rename
allows replacing an existing file.

Based on a suggestion by Reimar Döffinger.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-11-27 09:29:29 +02:00
Martin Storsjö
7813e6752b configure: Fix enabling memalign_hack automatically
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>
2014-11-18 18:53:57 +02:00
Martin Storsjö
fe5e6e34c0 lavf: Add an MPEG-DASH ISOFF segmenting muxer
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>
2014-11-17 16:17:07 +02:00
Luca Barbato
a9179b5bd6 configure: Check only for xcb
xcb-utils are not needed anymore.
2014-10-28 13:57:32 +00:00
Luca Barbato
a6674d2e77 xcbgrab: XCB-based screen capture
Matches the x11grab screen capture by features.
2014-10-26 08:47:41 +01:00
Martin Storsjö
3f8f1c6ff2 lavu: Provide fallbacks for gmtime_r and localtime_r
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>
2014-10-26 00:14:54 +03:00
James Almer
73ea3ffcd5 w32pthreads: use the CONDITION_VARIABLE typedef if available
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>
2014-10-10 11:27:26 +03:00
Josh Allmann
7d97511e13 configure: Add -lrt dependency to avutil's pc file.
This is needed for clock_gettime.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-10-04 09:10:04 +02:00
Luca Barbato
5517466804 configure: Provide a safe default for unknonw libcs
Support musl out of box.

Amend commit 9d2cee52d37c7340f85a5d41110282aac03e6855 that got
wrongly merged in its stead.
2014-09-27 18:01:44 +02:00
Luca Barbato
9d2cee52d3 configure: Assume a standard-compliant default libc
Non-standard compliant libc should be supported on a per-case basis
anyway.
2014-09-26 20:56:16 +02:00