Commit Graph

72238 Commits

Author SHA1 Message Date
Tucker DiNapoli
6264b6227c postproc: Replaced inline asm for prefetching with prefetch functions
Prefetching functions are defined in postprocess_template using the
RENAME macro so that prefetching is used when available. For x86
targets inline asm is used and the functions are non-empty only for
cpus where prefetching is available. For non x86 targets the gcc bultin
prefetch is used if it is available, otherwise no prefetching is done.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 23:32:35 +02:00
wm4
748d4816d9 avformat: add AVFMT_FLAG_FASTSEEK, use it for mp3
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 22:27:05 +02:00
Ronald S. Bultje
d02d04a18f vp9: remove one optimization branch in iadst16 which causes overflows.
See sample vp90-2-14-resize-fp-tiles-16-8-4-2-1.webm from the vp9 test
vector set which reproduces the issue. This probably costs a few cycles,
but I don't think there's an easy way to workaround that.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 21:37:10 +02:00
Luca Barbato
0a51c7d42a prores: Set the bits_per_coded_sample for alpha pix_fmt
Improve the compatibility with other software.
2015-04-22 20:50:10 +02:00
Andreas Cadhalpun
86d00ede4f bink: check vst->index_entries before using it
This fixes a NULL pointer dereference if vst->duration is 0.

The problem was introduced in commit 0588acaf.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 20:22:19 +02:00
Mate Sebok
4d98015dcf dshow: add capture device save and load
Signed-off-by: Mate Sebok <smfinc.org@gmail.com>
Reviewed-by: Roger Pack <rogerdpack2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 20:12:36 +02:00
wm4
53ff9a4ec9 fate: gapless: remove useless tests
These could be kept, but they are not overly useful. The only thing they
had over the remaining mp3 gapless test was seeking, which was incorrect
in the toc test, and only by chance correct in the notoc test.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 19:28:07 +02:00
Ludmila Glinskih
5adee9c0af api-flac-test: Coding style
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 17:45:51 +02:00
Andreas Cadhalpun
b3408ae4c6 mpeg4videodec: only allow a positive length
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 16:57:52 +02:00
Andreas Cadhalpun
35e855d5b6 dss_sp: use lowercase codec name without whitespace
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 16:39:26 +02:00
wm4
58fade2c68 avformat/mp3dec: make generic index mode the default
It's the most useful mode, because it seeks accurately, and does not
break features like gapless audio.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 14:41:57 +02:00
wm4
c3a73666ad avformat/mp3dec: allow enabling generic seek mode
"-usetoc 2" now invokes the generic seek and indexing mode. This mode
skips data until the seek target is reached, and this is exact. It also
makes gapless audio actually work if a seek past the start of the file
is involved.

Change the fate-gapless-mp3 test to use the new mode, and move the old
one to fate-gapless-mp3-toc (since the test forces use of the Xing TOC).
The new mode has a different result for the seek - this result is
actually correct.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 14:33:02 +02:00
wm4
066b92e91d avformat/mp3dec: use the common mechanism for skipping samples
The mp2 seek test results change. Whether to skip samples if the file
had no LAME gapless tags was inconsistent. When seeking to the start
of the file, 529 samples were skipped, but when playing from start,
nothing was skipped. This commit changes the behavior on seek to skip
nothing.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 14:16:35 +02:00
wm4
7dd8bf53bd avformat: add common mechanism for skipping samples at the start of file
This makes using the generic indexing code with mp3 easier at a later
point.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 14:05:46 +02:00
Luca Barbato
28eddef689 hq_hqa: Validate get_vlc2 return value
The `hq_ac_vlc.table` is incomplete, so unaccounted symbol return -1
as value.
2015-04-22 12:27:43 +02:00
Luca Barbato
a78f5548d9 avcodec: Free the default avoptions on init failure 2015-04-22 12:27:13 +02:00
Luca Barbato
aef0be0875 avcodec: Unref the dummy buffer on the fail path 2015-04-22 12:27:13 +02:00
Federico Tomassetti
8eb57dc9d5 buffersrc: Use the correct deallocation function
This correction was suggested to me by Michael Niedermayer

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-22 12:26:53 +02:00
Andreas Cadhalpun
afc7748d1f alsdec: check sample pointer range in revert_channel_correlation
Also change the type of begin, end and smp to ptrdiff_t to make the
comparison well-defined.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Reviewed-by: Thilo Borgmann <thilo.borgmann@mail.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 12:02:25 +02:00
Vignesh Venkatasubramanian
f82ce6aa88 webmdashenc: parameter'ize minimumUpdatePeriod
Some players do not support setting minimumUpdatePeriod to zero.
This patch adds a new parameter that will let the users set any
value to this field. Also updates the test and the documentation.

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 11:41:03 +02:00
James Almer
ba625dd8a1 avcodec: use av_mod_uintp2() where useful
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
2015-04-21 22:41:20 -03:00
Vignesh Venkatasubramanian
4f287a3c50 webmdashenc: Add minimumUpdatePeriod
DASH spec requires the presence of either duration of the period
or the minimumUpdatePeriod element. This patch adds the
minimumUpdatePeriod element hardcoded with the value 0 as the
manifest will never be updated for WebM DASH Live streams. Also
updating the fate test reference file.

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 01:43:37 +02:00
Andreas Cadhalpun
ca9849eecd aacpsy: correct calculation of minath in psy_3gpp_init
The minimum of the ath(x, ATH_ADD) function depends on ATH_ADD.
This patch uses the first order approximation to determine it.

For ATH_ADD = 4 this results in the value at 3407.06812 (-5.24241638)
not the one at 3410 (-5.24237967).

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Approved-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-22 01:18:14 +02:00
Chris Watkins
0703c44692 avformat/mov.c: Use %d to print an enum, not PRIu8
Using the PRIu8 format specifier to print an enum value causes a
compiler warning, so use %d instead.

Fixes ticket #4467.

Signed-off-by: Chris Watkins <watk@chromium.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-21 23:48:07 +02:00
Michael Niedermayer
a79cbc0b8e avfilter/vf_qp: Fix use of uinitialized variable
Found-by: <Timothy_Gu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-21 22:54:13 +02:00
Michael Niedermayer
122150168f Merge commit '9b2c57bef5e2f3f61a5fd708ba7d5351f5b3f386'
* commit '9b2c57bef5e2f3f61a5fd708ba7d5351f5b3f386':
  drawtext: Add an alpha option

Conflicts:
	doc/filters.texi
	libavfilter/vf_drawtext.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-21 20:20:58 +02:00
Paul B Mahol
77e794908b avcodec/hq_hqa: remove superfluous log message
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-04-21 13:19:32 +00:00
Michael Niedermayer
8f9a3817d5 avfilter/vf_qp: fix cleanup on error
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-21 14:11:30 +02:00
Luca Barbato
9b2c57bef5 drawtext: Add an alpha option
And document both `draw` and `alpha`.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-21 11:13:30 +02:00
Michael Niedermayer
a924b83ccc avformat/nsvdec: remove trace log from probe(), this is better done generically not per format
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-21 02:19:07 +02:00
Michael Niedermayer
ecf34e8fc2 avformat/mp3dec: Adjust returned timestamp in the CBR seeking case
With this the returned timestamp should match the packet instead of
the requested timestamp, which may lay between  packets

Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-21 01:31:28 +02:00
Vignesh Venkatasubramanian
30ba28fe8e webmdashenc: Fix potential memory leak
Fix potential memory leak in WebM DASH Muxer. This fixes coverity
scan CID 1295088.

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-21 01:12:27 +02:00
Michael Niedermayer
ba631b7914 avformat/utils: Ensure that AVFMT_FLAG_CUSTOM_IO is set before use
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-21 00:58:11 +02:00
Deb Mukherjee
26a0bcb15b Support for VP9 high-color/high-bit-depth encoding
Patch to support VP9 encoding with new profiles 1-3.
Profile 1 (8-bit 422/444) should work with default libvpx
configuration.
However you will need to configure libvpx with
--enable-vp9-highbitdepth before building and linking
with ffmpeg for profile 2 (10-/12-bit 420) and profile 3
(10-/12-bit 422/444) encoding.

You may use the appropriate profile option on the
command line:
-profile:v 1 for 422/444 8-bit encoding
-profile:v 2 for 420 10-/12- bit encoding
-profile:v 3 for 422/444 10-/12-bit encoding
If you do not use the -profile:v option, it will be deduced
from the source format.

Signed-off-by: James Zern <jzern@google.com>
2015-04-20 15:24:13 -07:00
Michael Niedermayer
e6e8cc8ce9 avformat/img2dec: do not rewind custom io buffers
Fixes double free with some applications

Fixes vlc ticket14121
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 23:59:53 +02:00
Michael Niedermayer
954b5e340e Merge commit 'eaa2d123f0a643664721593d248ece6bcd85f1e6'
* commit 'eaa2d123f0a643664721593d248ece6bcd85f1e6':
  log: Print a full backtrace along with error messages under Valgrind

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

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 23:30:33 +02:00
Michael Niedermayer
1a41415b2a Merge commit 'bd5ad8b23d0f7d469ca30d03deca879993eb0431'
* commit 'bd5ad8b23d0f7d469ca30d03deca879993eb0431':
  hq_hqa: Fix reading hqa quantization matrix index

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 23:20:36 +02:00
Michael Niedermayer
2f8f5027ad Merge commit '1746dc382ddbf3f8a3f039815644f7eb9076110e'
* commit '1746dc382ddbf3f8a3f039815644f7eb9076110e':
  hqxdsp.h: #include "stddef.h"

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 23:13:16 +02:00
Michael Niedermayer
5380c9afb9 Merge commit '98cab39798612dcaea4f9b6d1e7974bc60d84e13'
* commit '98cab39798612dcaea4f9b6d1e7974bc60d84e13':
  lavf: Fix variables constness in ff_iso8601_to_unix_time()

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 23:00:08 +02:00
Michael Niedermayer
037c9c25e6 Merge commit '86e1a35802df42f51337d3fed8d5d99d0898c8bf'
* commit '86e1a35802df42f51337d3fed8d5d99d0898c8bf':
  h264_ps: Return meaningful error codes and address a memory leak

Conflicts:
	libavcodec/h264_ps.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 22:49:50 +02:00
Michael Niedermayer
e6831c087e Merge commit '338ed3ed33c412c2828446c4e2a76949161fec6a'
* commit '338ed3ed33c412c2828446c4e2a76949161fec6a':
  ffv1: Pass correct pointers to av_free()

Conflicts:
	libavcodec/ffv1.c

See: a3963cc8ec
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 22:46:46 +02:00
Michael Niedermayer
a570e81234 Merge commit '3b1e35d46dc910cef1d66f6964e6800cae5fc89b'
* commit '3b1e35d46dc910cef1d66f6964e6800cae5fc89b':
  fate: Omit the results if the test passed

See: 1a562adb01
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 22:33:04 +02:00
Michael Niedermayer
d108820c2e Merge commit 'd34039b171bebe37bf723a1b03e5651267099739'
* commit 'd34039b171bebe37bf723a1b03e5651267099739':
  rmenc: Drop the temporary buffer for ac3 byteswap

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 22:24:38 +02:00
Michael Niedermayer
3cd6f4546a Merge commit '656e31ed8728b0c095d037dc9764fc8137c87200'
* commit '656e31ed8728b0c095d037dc9764fc8137c87200':
  ogg: Forward errors further

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 22:12:08 +02:00
Michael Niedermayer
a5379d6e68 Merge commit 'b18346817d57c96cc47811cf78b26653e96bd304'
* commit 'b18346817d57c96cc47811cf78b26653e96bd304':
  flac: fix realloc loop with invalid flac files

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 22:08:28 +02:00
Michael Niedermayer
5a14fca9aa Merge commit '2cc3936599b6fc63143036659653d1be0624360f'
* commit '2cc3936599b6fc63143036659653d1be0624360f':
  dashenc: Add a publishTime field in dynamic manifests

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 21:45:56 +02: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
Vittorio Giovara
bd5ad8b23d hq_hqa: Fix reading hqa quantization matrix index
Value is stored as a byte.
2015-04-20 19:20:22 +01:00
Vittorio Giovara
1746dc382d hqxdsp.h: #include "stddef.h"
It is required by ptrdiff_t, fixes make checkheaders.
2015-04-20 19:19:23 +01:00
wm4
1e2e22ec61 fate: gapless: fix mp3 tests
Seeking to a negative time did not have the desired effect of seeking to
the next valid position (the file start). On the other hand, just
"-ss 0" will normally seek to a position higher than 0, because it adds
the start time of the file. (The start time is not 0 because the gapless
code skips a few samples from the start.)

Fix this by using the "-seek_timestamp 1" option, which makes "-ss 0" do
what you'd expect it would do.

Also put the -ss option at the right place, before -i. This actually
makes it seek, instead of something completely else. The ".out-3" test
is no different in the -usetoc 0/1 cases, because the seeking is
inaccurate (in both cases).

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-20 19:50:58 +02:00