Signed-off-by: Supraja Meedinti <supraja0493@gmail.com>
Previous version of this patch reviewed-by: Giorgio Vazzana <mywing81@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
The reasoning behind this addition is that various third party
applications are interested in getting some motion information out of a
video "for free" when it is available.
It was considered to export other information as well (such as the intra
information about the block, or the quantization) but the structure
might have ended up into a half full-generic, half full of codec
specific cruft. If more information is necessary, it should either be
added in the "flags" field of the AVMotionVector structure, or in
another side-data.
This commit also includes an example exporting them in a CSV stream.
This header is designed as a public header (with APIchanges entry and
everything), but it is forgotten to put into the headers to be installed
list.
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Add AV_PKT_DATA_DISPLAYMATRIX and AV_FRAME_DATA_DISPLAYMATRIX as stream and
frame side data (respectively) to describe a display transformation matrix
for linear transformation operations on the decoded video.
Add functions to easily extract a rotation angle from a matrix and
conversely to setup a matrix for a given rotation angle.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
* commit '5a7e35dd2351c30bab45177b9482cb8833a0ca78':
Add replaygain side data type and code for parsing replaygain tags.
Conflicts:
libavcodec/avcodec.h
libavcodec/version.h
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master:
lavu: Move preprocessor macros in a separate file
Conflicts:
libavutil/avutil.h
libavutil/utils.c
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Originally written by James Almer <jamrial@gmail.com>
With the following contributions by Timothy Gu <timothygu99@gmail.com>
* Use descriptions of libraries from the pkg-config file generation function
* Use "FFmpeg Project" as CompanyName (suggested by Alexander Strasser)
* Use "FFmpeg" for ProductName as MSDN says "name of the product with which the
file is distributed" [1].
* Use FFmpeg's version (N-xxxxx-gxxxxxxx) for ProductVersion per MSDN [1].
* Only build the .rc files when --enable-small is not enabled.
[1] http://msdn.microsoft.com/en-us/library/windows/desktop/aa381058.aspx
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Also the libavutil/ffversion.h will be installed.
Rationale:
* Applications might want to know FFmpeg's version besides the individual
libraries'.
* Avoids file name clash between FFmpeg's ./version.h and lib*/version.h when
a library source file includes both and is compiled on an out-of-tree build.
Fixes#1769.
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
lls1 taken from ff130d7
This is incompatible with libavcodec version
55.18.100 to 55.43.100 except 55.39.101
This incompatibility is caused by these libavcodec versions depending on
a libavutil 52 which is ABI incompatible with the previous ABI 52
you can avoid this incompatibility by upgrading your libavcodec so it
does no longer depend on the invalid ABI
See: 502ab21af0
See: cc6714bb16
See: 41578f70cf
See: Ticket3136
Tested-by: marillat
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
The benchmark tests the speed of the following algorithms:
MD5, SHA-1, SHA-256, SHA-512, RIPEMD-160, AES-128.
It can optionally be built to perform the same benchmark on
other crypto libraries, for comparison purposes.
The supported libraries are:
- crypto: OpenSSL's libcrypto;
- gcrypt: GnuTLS's libgcrypt;
- tomcrypt: LibTomCrypt
To enable them, use this syntax:
make VERSUS=crypto+gcrypt+tomcrypt tools/crypto_bench
They do not need to have been enabled in configure.
* commit 'a76d0cdf21c3d9e464623cc0ad1c005abf952afa':
libavutil: Move avpriv_open to a new file, file_open.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '666fe5da47d127074be7f0e2bac93db6af8b4a30':
atomic: Exclude the unsupported implementation headers from checkheaders
avconv: do not silently ignore unused codec AVOptions.
Conflicts:
ffmpeg_opt.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '7ecc2d403ce5c7b6ea3b1f368dccefd105209c7e':
Move AVFrame from lavc to lavu.
Conflicts:
libavcodec/avcodec.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '8e401dbe90cc77b1f3067a917d9fa48cefa3fcdb':
lavu: add a new API for reference-counted data buffers.
Conflicts:
libavutil/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '65f1d45dcc71186ede72fff950996099d23359bd':
lavu: add support for atomic operations.
Conflicts:
configure
Merged-by: Michael Niedermayer <michaelni@gmx.at>
These could be used for reference counting, or for keeping track of
decoding progress in references in multithreaded decoders.
Support is provided by gcc/msvc/suncc intrinsics, with a fallback using
pthread mutexes.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
* commit '0eecafc948b74c247ebbc59f18f508db5d590d0b':
configure: Make the new srtp protocol depend on the rtp protocol
lavf: Add a fate test for the SRTP functions
lavu: Add a fate test for the HMAC API
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'ab2ad8bd56882c0ea160b154e8b836eb71abc49d':
lavf: Add functions for SRTP decryption/encryption
lavu: Add an API for calculating HMAC (RFC 2104)
Conflicts:
doc/APIchanges
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '5ff998a233d759d0de83ea6f95c383d03d25d88e':
flacenc: use uint64_t for bit counts
flacenc: remove wasted trailing 0 bits
lavu: add av_ctz() for trailing zero bit count
flacenc: use a separate buffer for byte-swapping for MD5 checksum on big-endian
fate: aac: Place LATM tests and general AAC tests in different groups
build: The A64 muxer depends on rawenc.o for ff_raw_write_packet()
Conflicts:
doc/APIchanges
libavutil/version.h
tests/fate/aac.mak
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master:
configure: sanitise sparc vis check
configure: recognise more sparc variants as --cpu argument
build: Include HEADERS-yes in the HEADERS variable
pcm: change references to raw to pcm
ffv1: set the range coder state in decode_slice_header
pcmdec: change default of channels parameter to 1
Conflicts:
libavformat/pcmdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '468ea9d5b14f92fe61f47f034e67066f65163f5f':
Revert "avutil: make some tables visible again"
Revert "avutil: Add a copy of ff_sqrt_tab back into avutil to restore ABI compatibility"
Conflicts:
libavcodec/sqrt_tab.c
libavutil/libavutil.v
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'd15c21e5fa3961f10026da1a3080a3aa3cf4cec9':
avutil: Add a copy of ff_sqrt_tab back into avutil to restore ABI compatibility
avutil: make some tables visible again
avutil: remove inline av_log2 from public API
celp_math: rename ff_log2 to ff_log2_q15
Conflicts:
libavutil/libavutil.v
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Earlier versions of for instance of libavcodec expect this symbol to be
present in libavutil. This commit can be reverted after the next major
bump.
New shared builds of avcodec will link to the internal copy of the
table within that library, so those builds won't rely on this table
being present in avutil any longer either.
Signed-off-by: Martin Storsjö <martin@martin.st>
This removes inline av_log2 and av_log2_16bit from the public API,
instead exporting them as regular functions. In-tree code still
gets the inline and otherwise optimised variants.
Signed-off-by: Mans Rullgard <mans@mansr.com>
* commit 'c1fcfdec75468009dc7de29a5d1c6adf3b2ef77d':
rangecoder-test: Return in case of an error
build: simplify enabling of compat objects
Conflicts:
configure
libavutil/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Add a configure function to pull in a compat object and set up
redirects in one operation. This avoids duplicating conditions
across configure and makefiles.
Signed-off-by: Mans Rullgard <mans@mansr.com>
* commit '930c9d4373e0f3cb7c64fcfc129127a309f6d066':
avutil: Duplicate ff_log2_tab instead of sharing it across libs
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '9734b8ba56d05e970c353dfd5baafa43fdb08024':
Move avutil tables only used in libavcodec to libavcodec.
Conflicts:
libavcodec/mathtables.c
libavutil/intmath.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master:
mingw/cygwin: Stop adding -fno-common to gcc CFLAGS
Restructure av_log_missing_feature message
rtp: Support packetization/depacketization of opus
file: Set the return value type for lseek to int64_t.
ppc: fix Altivec build with old compilers
build: add LTO support for PGI compiler
build: add -Mdse to PGI optimisation flags
rtpenc_vp8: Update the packetizer to the latest spec version
rtpdec_vp8: Make the depacketizer implement the latest spec draft
doc: allow building with old texi2html versions
avutil: skip old_pix_fmts.h since it is just a list
Conflicts:
libavcodec/aacdec.c
libavcodec/h264.c
libavcodec/ppc/fmtconvert_altivec.c
libavcodec/utils.c
libavformat/file.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
All versions of MinGW-w64 prior to version 3, as well as
all versions of MinGW32 have broken implementations of
vsnprintf.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* qatar/master:
fate: Allow setting the ld parameter from the config file
x86: dsputil: Do not redundantly check for CPU caps before calling init funcs
configure: Disable some warnings in MSVC
x86: vp56: cmov version of vp56_rac_get_prob requires inline asm
avopt: fix examples to match the same style about default values as the actual code.
configure: Add support for MSVC cl.exe/link.exe
lavu: add snprintf(), vsnprint() and strtod() replacements for MS runtime.
Conflicts:
libavutil/opt.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
This reverts commit ba53720280.
A better implementation has been commited by the same author to qatar
Conflicts:
configure
Found-by: jamal <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master: (29 commits)
lavfi: reclassify showfiltfmts as a TESTPROG
graph2dot: fix printf format specifier
swscale: yuv2planeX 8bit >=sse2 functions need aligned stack on x86-32.
vp8: loopfilter >=sse2 functions need aligned stack on x86-32.
amr: remove shift out of the AMR_BIT() macro.
dsputilenc: group yasm and inline asm function pointer assignment.
mov: use forward declaration of a function instead of a table.
Clarify Doxygen comment for FF_API_* #defines.
configure: simplify get_version()
Create version.h headers for libraries that lack them
gitignore: Use full path instead of relative path to specify patterns
mpegvideo: remove VLAs
Add XTEA encryption support in libavutil
Add Blowfish encryption support in libavutil
eval: Add the isinf() function and tests for it
flacdec: move lpc filter to flacdsp
flacdec: split off channel decorrelation as flacdsp
avplay: Add an option for not limiting the input buffer size
FATE: add a test for WMA cover art.
FATE: add a test for apetag cover art
...
Conflicts:
.gitignore
configure
ffplay.c
libavcodec/Makefile
libavcodec/error_resilience.c
libavcodec/mpegvideo.c
libavcodec/ratecontrol.c
libavdevice/avdevice.h
libavfilter/Makefile
libavfilter/filtfmts.c
libavfilter/version.h
libavformat/mov.c
libavformat/version.h
libavutil/Makefile
libavutil/avutil.h
libavutil/version.h
libswscale/swscale.h
libswscale/x86/swscale_mmx.c
tests/fate/libavutil.mak
tests/lavfi-regression.sh
tools/graph2dot.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* qatar/master:
MS Screen 1 decoder
aacdec: Fix popping channel layouts.
av_gettime: support Win32 without gettimeofday()
Use av_gettime() in various places
Move av_gettime() to libavutil
dct-test: use emms_c() from libavutil instead of duplicating it
mov: fix operator precedence bug
mathematics.h: remove a couple of math defines
Remove unnecessary inclusions of [sys/]time.h
lavf: remove unnecessary inclusions of unistd.h
bfin: libswscale: add const where appropriate to fix warnings
bfin: libswscale: remove unnecessary #includes
udp: Properly check for invalid sockets
tcp: Check the return value from getsockopt
network: Use av_strerror for getting error messages
udp: Properly print error from getnameinfo
mmst: Use AVUNERROR() to convert error codes to the right range for strerror
network: Pass pointers of the right type to get/setsockopt/ioctlsocket on windows
rtmp: Reduce the number of idle posts sent by sleeping 50ms
Conflicts:
Changelog
configure
libavcodec/aacdec.c
libavcodec/allcodecs.c
libavcodec/avcodec.h
libavcodec/dct-test.c
libavcodec/version.h
libavformat/riff.c
libavformat/udp.c
libavutil/Makefile
libswscale/bfin/yuv2rgb_bfin.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>