Christophe Gisquet
52b81ff463
proresenc_kostya: report buffer overflow
...
If the allocated size, despite best efforts, is too small, exit
with the appropriate error.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-12 00:46:37 +02:00
Christophe Gisquet
bf10f09bcc
proresenc_kostya: remove unneeded parameters
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-12 00:46:37 +02:00
Michael Niedermayer
9a162146ca
avcodec/snow: fix null pointer dereference in cleanup after allocation failure
...
Fixes: snowf.avi
Found-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-11 15:37:15 +02:00
Michael Niedermayer
ba47d519e5
avcodec/huffyuvdec: fix overread checks
...
Fixes: ffvhuff_f.avi
Found-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-11 15:17:11 +02:00
Michael Niedermayer
11512d70fa
avcodec/get_bits: add BITS_LEFT() for finding the bits left with an opened reader
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-11 15:15:54 +02:00
James Almer
59ecd4882d
lavc/raw: remove obsolete ff_raw_pix_fmt_tags cruft
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-11 13:46:23 +02:00
James Almer
8f2634f970
lavc: stop exporting internal functions and tables
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-11 13:23:48 +02:00
Michael Niedermayer
9eda4e8bd7
avcodec/idctdsp: move add/put_pixels_clamped_c to header
...
This allows sharing them with the xvid IDCT
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-11 13:08:46 +02:00
Christophe Gisquet
5ec85c9750
hevc: do generic validation of bitstream
...
After finishing parsing VPS/SPS/PPS/slice header, check remaining bits,
and if an overconsumption occurred, report invalid data.
Liked-by: BBB
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-11 02:47:05 +02:00
Ronald S. Bultje
bfffce4d08
hevc: add missing comma in log message.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-11 02:27:27 +02:00
Michael Niedermayer
6801eb0a09
avcodec/vc1dec: do not crash when flushing without an allocated frame
...
Fixes Ticket3837
Found-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-11 02:16:43 +02:00
Michael Niedermayer
d177f27517
Merge commit 'cc1d8c54c19dd14fb851e3e7a7793d6b3bd75e94'
...
* commit 'cc1d8c54c19dd14fb851e3e7a7793d6b3bd75e94':
avcodec: Postpone FF_IDCT_XVIDMMX removal until the next version bump
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 23:41:51 +02:00
Michael Niedermayer
3539d6c63a
avcodec/iff: check pixfmt for rgb8 / rgbn
...
Fixes out of array access
Found-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 22:05:55 +02:00
Michael Niedermayer
9bcdb98839
avcodec/iff: Factorize av_pix_fmt_desc_get() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 21:53:39 +02:00
Michael Niedermayer
bd87965247
Merge commit 'd63443b9684fa7b3e086634f7b44b203b6d9221e'
...
* commit 'd63443b9684fa7b3e086634f7b44b203b6d9221e':
lavc: drop the av_fast_{re,m}alloc compatibility wrappers
Conflicts:
libavcodec/utils.c
See: a973e01501
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 20:51:15 +02:00
Diego Biurrun
cc1d8c54c1
avcodec: Postpone FF_IDCT_XVIDMMX removal until the next version bump
2014-08-10 10:41:55 -07:00
Michael Niedermayer
61b9ce00a3
Merge commit '2597a842a0a2c7e8aa76f32733d27bf64817ae86'
...
* commit '2597a842a0a2c7e8aa76f32733d27bf64817ae86':
tiff: Improve grayscale support
Conflicts:
libavcodec/tiff.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 18:40:46 +02:00
Christophe Gisquet
0d0d24af01
hevc_ps: verify P/T/L information
...
This makes the SPS parsing a little, but barely, safer.
Reviewed-by: Mickaël Raulet <mraulet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 18:05:33 +02:00
Anton Khirnov
d63443b968
lavc: drop the av_fast_{re,m}alloc compatibility wrappers
...
They were only needed until the bump.
2014-08-10 15:40:38 +00:00
Michael Niedermayer
07262c7199
avcodec/options_table: leave xvidmmx AVOption in place
...
Also mark it as deprecated through its help text
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 17:30:27 +02:00
Christophe Gisquet
84bc45880a
hevc_mvs: set candidate availabilities
...
They might be left uninitialized otherwise since 3ad04608
.
Fixes ticket #3840 .
Found-by: Carl Eugen Hoyos <ce@hoyos.ws>
Reported-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 17:13:18 +02:00
Derek Buitenhuis
43654a22c0
Revert "lavc/utils: Do not require dimensions for PNG."
...
mplayer-specifc hacks should not be in our codebase. mplayer should fix
its own code. It is not our responsibility to work around their broken
code.
This reverts commit e8e575633f
.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2014-08-10 15:58:13 +01:00
Diego Elio Pettenò
2597a842a0
tiff: Improve grayscale support
...
Only use PAL8 if palette is present, else use GRAY8 for pixfmt.
Instead of simulating a grayscale palette, use real grayscale pixels, if no
palette is actually defined.
Signed-off-by: Diego Elio Pettenò <flameeyes@flameeyes.eu>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-08-10 15:21:44 +02:00
Christophe Gisquet
7117547298
hevc: fix incorrect sao buffer size
...
It previously used the output, cropped size, causing overreads/writes.
Fixes ticket #3839 .
This issue was introduced by d249e682
, which is not part of any release
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 12:34:57 +02:00
Michael Niedermayer
a71fcfad89
Merge commit '9325d88eba8038b3e2a4485e473a018410379e2d'
...
* commit '9325d88eba8038b3e2a4485e473a018410379e2d':
lavc: remove obsolete and disabled avpriv functions
Conflicts:
libavcodec/dv_profile.c
libavcodec/dv_profile.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 02:09:13 +02:00
Michael Niedermayer
a973e01501
avcodec: disable FF_API_FAST_MALLOC
...
It causes build failures in some cases and the functions are provided by
libavutil so the wraper should not be needed anymore
Found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 01:53:10 +02:00
Michael Niedermayer
287602f9d8
Merge commit '472f9ed312ec784f7c72876b77163f4741880d05'
...
* commit '472f9ed312ec784f7c72876b77163f4741880d05':
Remove obsolete FF_API_AVFRAME_COLORSPACE cruft.
Conflicts:
libavcodec/utils.c
libavutil/frame.h
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 01:29:24 +02:00
Michael Niedermayer
65cb02e87a
avcodec/version: delay removial of FF_API_AUDIO_CONVERT/FF_API_AVCODEC_RESAMPLE
...
Some applications still use this deprecated API
Its not nice to remove it when its still in use and as long as it doesnt
cause us any work to keep it.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 00:38:48 +02:00
Michael Niedermayer
a57ece0cb4
Merge commit '1985c2e75c607ac51bfd8dc87d2957a5edf2b6f8'
...
* commit '1985c2e75c607ac51bfd8dc87d2957a5edf2b6f8':
Bump major versions of all libraries.
Conflicts:
doc/APIchanges
libavcodec/version.h
libavdevice/version.h
libavfilter/version.h
libavformat/version.h
libavutil/version.h
libswscale/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 00:26:45 +02:00
Michael Niedermayer
80c1cb522c
avcodec/version: leave old audio API
...
If people prefer we can also drop it
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 00:21:56 +02:00
Michael Niedermayer
6fac482624
avcodec/flacdec: fix handling of av_samples_fill_arrays() return value
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-10 00:21:55 +02:00
Michael Niedermayer
70b8668fb5
drop LLS1, rename LLS2 to LLS
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-09 23:20:31 +02:00
Michael Niedermayer
c89afc9acf
delay removial of FF_API_CODEC_ID, FF_API_OLD_AVOPTIONS and FF_API_OLD_ENCODE_VIDEO
...
This prevents a build failure when bumping.
the uses could easily be updated / removed, if people prefer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-09 23:19:16 +02:00
Michael Niedermayer
889cb3ae23
avcodec: remove deprecated use of FF_IDCT_XVIDMMX
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit eedc3f36532e4c6de782fe1c2dc59d192418a8fc)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-09 22:45:57 +02:00
Michael Niedermayer
3e41d2e612
Merge commit 'f4c444e17d137c786f0ed2da0e5943df505d5f9e'
...
* commit 'f4c444e17d137c786f0ed2da0e5943df505d5f9e':
Postpone API-incompatible changes until the next bump.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-09 22:19:45 +02:00
Michael Niedermayer
499ff6a052
Merge commit '7acdd3a1275bcd9cad48f9632169f6bbaeb39d84'
...
* commit '7acdd3a1275bcd9cad48f9632169f6bbaeb39d84':
hevc_filter: avoid excessive calls to ff_hevc_get_ref_list()
Conflicts:
libavcodec/hevc_filter.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-09 21:49:55 +02:00
Michael Niedermayer
8d7c4cc082
Merge commit 'a7a17e3f1915ce69b787dc58c5d8dba0910fc0a4'
...
* commit 'a7a17e3f1915ce69b787dc58c5d8dba0910fc0a4':
hevc_filter: move some conditions out of loops
Conflicts:
libavcodec/hevc_filter.c
This is possibly less readable than the variant used before.
Thus please take a look and if people agree its worse, dont
hesitate to revert.
See: 83976e40e8
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-09 21:29:33 +02:00
Michael Niedermayer
3f2495d98c
Merge commit '70211539a39ca3854f8a9e97d51dc27caa079943'
...
* commit '70211539a39ca3854f8a9e97d51dc27caa079943':
hevc: deobfuscate slice/tile boundary handling for DBF
Conflicts:
libavcodec/hevc.c
libavcodec/hevc_filter.c
See: a5c621aa85
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-09 21:01:55 +02:00
Anton Khirnov
9325d88eba
lavc: remove obsolete and disabled avpriv functions
2014-08-09 16:59:34 +00:00
Anton Khirnov
472f9ed312
Remove obsolete FF_API_AVFRAME_COLORSPACE cruft.
2014-08-09 16:59:13 +00:00
Anton Khirnov
1985c2e75c
Bump major versions of all libraries.
2014-08-09 16:58:33 +00:00
Anton Khirnov
f4c444e17d
Postpone API-incompatible changes until the next bump.
2014-08-09 16:57:10 +00:00
Anton Khirnov
7acdd3a127
hevc_filter: avoid excessive calls to ff_hevc_get_ref_list()
...
1) each of the loops run within a single CTB, so the relevant reference
list is constant
2) when that CTB is, or lies on the same slice as, the current one, we
can use a simple access instead of a relatively expensive call to
ff_hevc_get_ref_list()
2014-08-09 16:15:51 +00:00
Anton Khirnov
52a2c17ec0
hevc_refs: drop the handling of negative coordinates in ff_hevc_get_ref_list()
...
It makes no sense and cannot happen in any place from which this
function is called.
2014-08-09 16:15:38 +00:00
Anton Khirnov
a7a17e3f19
hevc_filter: move some conditions out of loops
2014-08-09 16:15:11 +00:00
Anton Khirnov
70211539a3
hevc: deobfuscate slice/tile boundary handling for DBF
...
Use named constants instead of magic numbers, avoid using variables with
inverse meaning from what their name implies.
2014-08-09 16:13:48 +00:00
Anton Khirnov
5501971578
hevc_filter: drop more redundant checks
...
The if() around those loops ensures this condition is always false.
2014-08-09 16:13:37 +00:00
Anton Khirnov
65b8b6c476
hevc_filter: drop redundant checks
...
ff_hevc_deblocking_boundary_strengths() is never called if the
deblocking filter is disabled for the slice.
2014-08-09 16:13:24 +00:00
Anton Khirnov
4d1ff2a489
hevc: calculate the dbf strength in hls_pcm_sample() only if dbf is enabled
2014-08-09 16:13:11 +00:00
Michael Niedermayer
25eeff9600
avcodec/avdct: add "xvid" alias AVOption and use FF_IDCT_XVID
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-09 12:42:07 +02:00
Michael Niedermayer
3841f2ae66
Merge commit 'd35b94fbabd8beb5d566c0b5d01688aff62c3b36'
...
* commit 'd35b94fbabd8beb5d566c0b5d01688aff62c3b36':
avcodec: Rename xvidmmx IDCT to xvid
Conflicts:
doc/APIchanges
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-09 12:11:13 +02:00
Michael Niedermayer
0dcebb9f63
Merge commit '84d173d3de97c753234ab0c0b50551d51413d663'
...
* commit '84d173d3de97c753234ab0c0b50551d51413d663':
xvididct: Ensure that the scantable permutation is always set correctly
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-08 22:17:04 +02:00
Michael Niedermayer
5ff2b33401
Merge commit '6f1960ab71b4f18551243ce22d01913108265233'
...
* commit '6f1960ab71b4f18551243ce22d01913108265233':
idct: cosmetics: Drop one unnecessary if-block level
Conflicts:
libavcodec/idctdsp.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-08 21:53:20 +02:00
Diego Biurrun
d35b94fbab
avcodec: Rename xvidmmx IDCT to xvid
...
The Xvid IDCT is not MMX-specific.
2014-08-08 11:13:30 -07:00
Diego Biurrun
84d173d3de
xvididct: Ensure that the scantable permutation is always set correctly
...
This fixes cases where the scantable permuation would get overwritten by
the general idctdsp initialization.
2014-08-08 11:13:29 -07:00
Diego Biurrun
6f1960ab71
idct: cosmetics: Drop one unnecessary if-block level
2014-08-08 11:13:29 -07:00
Michael Niedermayer
a561662fb7
Merge commit 'ad1ee5fa75a3d69d54c0691048939e94ab5a7f0d'
...
* commit 'ad1ee5fa75a3d69d54c0691048939e94ab5a7f0d':
avcodec: Undeprecate reordered_opaque
Conflicts:
doc/APIchanges
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 20:43:11 +02:00
Michael Niedermayer
2bf87dcc2d
Merge commit 'a7e541c9926d531a100ba0d36f4e56956dd84651'
...
* commit 'a7e541c9926d531a100ba0d36f4e56956dd84651':
h264: fix interpretation of interleved stereo modes
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 20:22:16 +02:00
James Almer
dd2b0c1cde
lavc: remove nonexistent functions from the version file
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 13:20:59 +02:00
Diego Biurrun
ad1ee5fa75
avcodec: Undeprecate reordered_opaque
...
It allows attaching other external, opaque data to the frame and passing it
through the reordering process, for cases when the caller wants other data
than just the plain packet pts. There is no way to cleanly achieve this
without the field.
2014-08-07 04:03:00 -07:00
James Almer
0ab00a75e4
avcodec/raw: add avpriv_get_raw_pix_fmt_tags()
...
Used to expose ff_raw_pix_fmt_tags[] to other libav* libraries
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 12:52:38 +02:00
Felix Abecassis
a7e541c992
h264: fix interpretation of interleved stereo modes
...
Column and row frame packing arrangements were inverted.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-08-07 11:31:47 +01:00
Michael Niedermayer
4213fc5b9e
avcodec/svq1dec: Fix multiple bugs from "svq1: do not modify the input packet"
...
Add padding, clear size, use the correct pointer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 02:27:07 +02:00
Michael Niedermayer
e55e09949e
Merge commit '7b588bb691644e1b3c168b99accf74248a24e3cf'
...
* commit '7b588bb691644e1b3c168b99accf74248a24e3cf':
svq1: do not modify the input packet
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 02:08:56 +02:00
Michael Niedermayer
c628627995
Merge commit 'c7d9b473e28238d4a4ef1b7e8b42c1cca256da36'
...
* commit 'c7d9b473e28238d4a4ef1b7e8b42c1cca256da36':
cdgraphics: do not return 0 from the decode function
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 01:56:50 +02:00
Michael Niedermayer
91b4ed0918
Merge commit 'a1599f3f7ea8478d1f6a95e59e3bc6bc86d5f812'
...
* commit 'a1599f3f7ea8478d1f6a95e59e3bc6bc86d5f812':
cdgraphics: switch to bytestream2
Conflicts:
libavcodec/cdgraphics.c
See: ad002e1a13
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 01:45:22 +02:00
James Almer
8dfb8190d7
libavcodec/rawdec: remove old ff_find_pix_fmt() function
...
It's been dead code for more than a year
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-07 00:44:07 +02:00
Michael Niedermayer
7a34b7d80f
avcodec/dca: Make ff_dca_convert_bitstream() available to libavformat, needed for dts_probe()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-06 22:28:35 +02:00
Anton Khirnov
7b588bb691
svq1: do not modify the input packet
...
The input data must remain constant, make a copy instead. This is in
theory a performance hit, but since I failed to find any samples
using this feature, this should not matter in practice.
Also, check the size of the header, avoiding invalid reads on truncated
data.
CC:libav-stable@libav.org
2014-08-06 18:59:27 +00:00
Anton Khirnov
c7d9b473e2
cdgraphics: do not return 0 from the decode function
...
0 means no data consumed, so it can trigger an infinite loop in the
caller.
CC:libav-stable@libav.org
2014-08-06 18:32:42 +00:00
Anton Khirnov
a1599f3f7e
cdgraphics: switch to bytestream2
...
Fixes possible invalid memory accesses on corrupted data.
CC:libav-stable@libav.org
Bug-ID: CVE-2013-3674
2014-08-06 18:32:38 +00:00
Christophe Gisquet
75837e9add
x86: sbrdsp/fft: reuse ps_neg constant
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-06 19:25:08 +02:00
Christophe Gisquet
51dd80e751
x86: diracdsp: reuse constants
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-06 19:25:02 +02:00
Christophe Gisquet
6622a6cff3
x86: dwt: better share constants
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-06 19:24:57 +02:00
Christophe Gisquet
71db2d08b1
x86: better share ff_pw_2
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-06 19:24:49 +02:00
Christophe Gisquet
4e128ab0b1
x86: vpx/h264/hevc/mpeg2: share constants
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-06 18:36:31 +02:00
Michael Niedermayer
305f72aee7
avcodec: Change get_pixels() to ptrdiff_t linesize
...
Found-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-06 15:50:54 +02:00
Vittorio Giovara
cbc808d726
jpeg2000: enable 4 component pixel formats
...
Bug-Id: 721
CC: libav-stable@libav.org
Sample-Id: 31230.mov
2014-08-06 12:23:21 +01:00
Christophe Gisquet
6786848585
hevc_deblock: change tc type
...
The x86 asm expects int32_t so use that type.
Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-06 12:38:26 +02:00
Michael Niedermayer
296b01d7f9
Merge commit 'a7153444df9040bf6ae103e0bbf6104b66f974cb'
...
* commit 'a7153444df9040bf6ae103e0bbf6104b66f974cb':
huffyuvdec: check width size for yuv422p
Conflicts:
libavcodec/huffyuvdec.c
See: 6abb9a901f
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-06 00:08:03 +02:00
Michael Niedermayer
a7153444df
huffyuvdec: check width size for yuv422p
...
Avoid out of array accesses.
CC: libav-stable@libav.org
Bug-Id: CVE-2013-0848
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-08-05 20:01:59 +00:00
Michael Niedermayer
70cd3b8e65
mmvideo: check horizontal coordinate too
...
Fixes out of array accesses.
Bug-Id: CVE-2013-3672
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-08-05 19:16:12 +00:00
Michael Niedermayer
849b9d34c7
wmalosslessdec: fix mclms_coeffs* array size
...
Fixes corruption of context
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
Bug-Id: CVE-2014-2098
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-08-05 14:58:03 +00:00
Michael Niedermayer
9988899993
Merge commit '701e8b42e12ad625c64ceae2252acb1de390278c'
...
* commit '701e8b42e12ad625c64ceae2252acb1de390278c':
vc-1: Optimise parser (with special attention to ARM)
Conflicts:
libavcodec/vc1_parser.c
See: a0d7f9ec9a
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-05 13:37:07 +02:00
Michael Niedermayer
bf7ed956ff
Merge commit 'adf8227cf4e7b4fccb2ad88e1e09b6dc00dd00ed'
...
* commit 'adf8227cf4e7b4fccb2ad88e1e09b6dc00dd00ed':
vc-1: Add platform-specific start code search routine to VC1DSPContext.
Conflicts:
configure
libavcodec/arm/vc1dsp_init_arm.c
libavcodec/vc1dsp.c
libavcodec/vc1dsp.h
See: 9d8ecdd8ca
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-05 13:00:41 +02:00
Michael Niedermayer
77aafadc56
Merge commit 'db7f1c7c5a1d37e7f4da64a79a97bea1c4b6e9f8'
...
* commit 'db7f1c7c5a1d37e7f4da64a79a97bea1c4b6e9f8':
h264: Move start code search functions into separate source files.
Conflicts:
libavcodec/arm/Makefile
libavcodec/arm/h264dsp_init_arm.c
libavcodec/h264_parser.c
libavcodec/h264dsp.c
libavcodec/startcode.c
libavcodec/startcode.h
See: 270cede3f3
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-05 12:46:10 +02:00
James Almer
de417982e8
x86/vp9lpf: use fewer instructions in SPLATB_MIX
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-05 02:47:54 +02:00
Bernd Kuhls
bf6c84d7eb
Fix compile error on bfin.
...
After the removal of all Blackfin architecture optimizations in
http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b55d3bbeed375f7b74442c4dd274d116a3e3d2e1
some includes were left behind leading to a compile error:
CC libavformat/adtsenc.o
In file included from ./libavcodec/get_bits.h:35,
from ./libavcodec/ac3_parser.h:27,
from libavformat/ac3dec.c:23:
./libavcodec/mathops.h:43:29: error: bfin/mathops.h: No such file or directory
This compile error was found by buildroot autobuild system:
http://autobuild.buildroot.net/results/ae0/ae056f267e907091d09d2a1546d6f1ae02fa23b9/
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-05 01:54:47 +02:00
Michael Niedermayer
debb88776c
Merge commit '990e2f3555bb0adae122d3599938ddcfee46e2d1'
...
* commit '990e2f3555bb0adae122d3599938ddcfee46e2d1':
avcodec: Suppress deprecation warnings from DTG code scheduled for removal
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-05 01:15:11 +02:00
Michael Niedermayer
8f83fb9991
Merge commit '60cbd6ad84de0931314030b81df87b69d6196587'
...
* commit '60cbd6ad84de0931314030b81df87b69d6196587':
tiff: support reading gray+alpha at 8 bits
Conflicts:
libavcodec/tiff.c
See: f746f37901
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 22:52:01 +02:00
Michael Niedermayer
47080b6d17
Merge commit 'bcc5f69b33e27b5e11aaea8304ee02f8d895cdab'
...
* commit 'bcc5f69b33e27b5e11aaea8304ee02f8d895cdab':
tiff: support reading gray+alpha at 16 bits
Conflicts:
libavcodec/tiff.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 22:45:33 +02:00
Michael Niedermayer
59412e3a07
Merge commit 'e64f0bf2d2b1347ec9461f0e82852a62e8c6ffbe'
...
* commit 'e64f0bf2d2b1347ec9461f0e82852a62e8c6ffbe':
png: support reading gray+alpha at 16 bits
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 22:38:12 +02:00
Ben Avison
701e8b42e1
vc-1: Optimise parser (with special attention to ARM)
...
The previous implementation of the parser made four passes over each input
buffer (reduced to two if the container format already guaranteed the input
buffer corresponded to frames, such as with MKV). But these buffers are
often 200K in size, certainly enough to flush the data out of L1 cache, and
for many CPUs, all the way out to main memory. The passes were:
1) locate frame boundaries (not needed for MKV etc)
2) copy the data into a contiguous block (not needed for MKV etc)
3) locate the start codes within each frame
4) unescape the data between start codes
After this, the unescaped data was parsed to extract certain header fields,
but because the unescape operation was so large, this was usually also
effectively operating on uncached memory. Most of the unescaped data was
simply thrown away and never processed further. Only step 2 - because it
used memcpy - was using prefetch, making things even worse.
This patch reorganises these steps so that, aside from the copying, the
operations are performed in parallel, maximising cache utilisation. No more
than the worst-case number of bytes needed for header parsing is unescaped.
Most of the data is, in practice, only read in order to search for a start
code, for which optimised implementations already existed in the H264 codec
(notably the ARM version uses prefetch, so we end up doing both remaining
passes at maximum speed). For MKV files, we know when we've found the last
start code of interest in a given frame, so we are able to avoid doing even
that one remaining pass for most of the buffer.
In some use-cases (such as the Raspberry Pi) video decode is handled by the
GPU, but the entire elementary stream is still fed through the parser to
pick out certain elements of the header which are necessary to manage the
decode process. As you might expect, in these cases, the performance of the
parser is significant.
To measure parser performance, I used the same VC-1 elementary stream in
either an MPEG-2 transport stream or a MKV file, and fed it through avconv
with -c:v copy -c:a copy -f null. These are the gperftools counts for
those streams, both filtered to only include vc1_parse() and its callees,
and unfiltered (to include the whole binary). Lower numbers are better:
Before After
File Filtered Mean StdDev Mean StdDev Confidence Change
M2TS No 861.7 8.2 650.5 8.1 100.0% +32.5%
MKV No 868.9 7.4 731.7 9.0 100.0% +18.8%
M2TS Yes 250.0 11.2 27.2 3.4 100.0% +817.9%
MKV Yes 149.0 12.8 1.7 0.8 100.0% +8526.3%
Yes, that last case shows vc1_parse() running 86 times faster! The M2TS
case does show a larger absolute improvement though, since it was worse
to begin with.
This patch has been tested with the FATE suite (albeit on x86 for speed).
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-08-04 22:22:54 +02:00
Ben Avison
adf8227cf4
vc-1: Add platform-specific start code search routine to VC1DSPContext.
...
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>
2014-08-04 22:22:54 +02:00
Ben Avison
db7f1c7c5a
h264: Move start code search functions into separate source files.
...
This permits re-use with parsers for codecs which use similar start codes.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-08-04 22:22:54 +02:00
Michael Niedermayer
4c8bc6fdee
Merge commit 'e96c3b81cadd0ba84d43b1f3a54980df3785d9a5'
...
* commit 'e96c3b81cadd0ba84d43b1f3a54980df3785d9a5':
avutil: rename AV_PIX_FMT_Y400A to AV_PIX_FMT_YA8
Conflicts:
libavcodec/libopenjpegdec.c
libavcodec/libopenjpegenc.c
libavcodec/raw.c
libavutil/pixdesc.c
libavutil/pixfmt.h
libavutil/version.h
libswscale/swscale_internal.h
libswscale/swscale_unscaled.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 21:48:00 +02:00
Diego Biurrun
990e2f3555
avcodec: Suppress deprecation warnings from DTG code scheduled for removal
2014-08-04 11:08:35 -07:00
Christophe Gisquet
e8c003edd2
x86: hevc_deblock: remove unnecessary masking
...
The unpacks/shuffles later on makes it unnecessary.
Before:
1508 decicycles in h, 2096759 runs, 393 skips
2512 decicycles in v, 2095422 runs, 1730 skips
After:
1477 decicycles in h, 2096745 runs, 407 skips
2484 decicycles in v, 2095297 runs, 1855 skips
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 17:46:04 +02:00
James Almer
b7863c972c
x86/hevc_mc: use fewer instructions in hevc_put_hevc_{uni, bi}_w[24]_{8, 10, 12}
...
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Christophe Gisquet <christophe.gisquet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 14:47:15 +02:00
James Almer
b1a44e6bf5
x86/hevc_mc: remove an unnecessary pxor
...
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Mickaël Raulet <mraulet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 14:35:08 +02:00
Carl Eugen Hoyos
60cbd6ad84
tiff: support reading gray+alpha at 8 bits
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-08-04 12:57:39 +01:00
Vittorio Giovara
bcc5f69b33
tiff: support reading gray+alpha at 16 bits
2014-08-04 12:57:38 +01:00
Vittorio Giovara
e64f0bf2d2
png: support reading gray+alpha at 16 bits
2014-08-04 12:57:38 +01:00
Vittorio Giovara
2257165bff
png: disable broken MMX/SIMD code for bpp <= 2
...
The decoder was producing different results when ASM was disabled.
Based on a long debug session with Kostya.
2014-08-04 12:57:38 +01:00
Vittorio Giovara
e96c3b81ca
avutil: rename AV_PIX_FMT_Y400A to AV_PIX_FMT_YA8
...
The rationale is that you have a packed format in form
<greyscale sample> <alpha sample> <greyscale sample> <alpha sample>
and shortening greyscale to 'G' might make one thing about Greenscale instead.
An alias pixel format and color space name are provided for compatibility.
2014-08-04 12:55:08 +01:00
Michael Niedermayer
71d008ebe4
Merge commit '1ef9e8376466bb1e2c147e47554b94cab9c8b04a'
...
* commit '1ef9e8376466bb1e2c147e47554b94cab9c8b04a':
avcodec: Deprecate dtg_active_format field in favor of avframe side-data
Conflicts:
doc/APIchanges
libavcodec/avcodec.h
libavcodec/mpeg12dec.c
libavcodec/version.h
libavfilter/vf_showinfo.c
libavutil/frame.h
libavutil/version.h
See: 2a3c36e920
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 06:11:34 +02:00
Kieran Kunhya
2a3c36e920
Deprecate AFD field and add AFD as side-data
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 05:36:44 +02:00
Michael Niedermayer
2793b218bd
Merge commit 'd0393d79bc3d61c9f2ff832c0e273b7774ff0269'
...
* commit 'd0393d79bc3d61c9f2ff832c0e273b7774ff0269':
huffyuv: Check and propagate function return values
Conflicts:
libavcodec/huffyuvdec.c
See: f67a0d1152
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 05:29:55 +02:00
Michael Niedermayer
d5fde13bd2
Merge commit '6234058148d6e1ee765913b678a22385a87bffac'
...
* commit '6234058148d6e1ee765913b678a22385a87bffac':
huffyuv: Return proper error codes
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 04:58:13 +02:00
Michael Niedermayer
e9cd8f4d20
Merge commit 'b7616f5716dce68c749d5dfeab19cf595a11807c'
...
* commit 'b7616f5716dce68c749d5dfeab19cf595a11807c':
huffyuv: Eliminate some pointless casts
Conflicts:
libavcodec/huffyuvdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 04:42:04 +02:00
Michael Niedermayer
c1e7fb60d1
Merge commit 'c065f4a0c652cc569c927c95148111b3aa2962dc'
...
* commit 'c065f4a0c652cc569c927c95148111b3aa2962dc':
huffyuv: K&R formatting cosmetics
Conflicts:
libavcodec/huffyuvdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 04:34:17 +02:00
Michael Niedermayer
2aeeb3ba1f
Merge commit 'f89d76c10355242c39b08f253c1d1524f45ef778'
...
* commit 'f89d76c10355242c39b08f253c1d1524f45ef778':
mpeg4video: Initialize xvididct for all threads
Conflicts:
libavcodec/mpeg4videodec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 04:14:43 +02:00
Michael Niedermayer
7fd60d1e7a
Merge commit 'ac6b95dbc0b53b3ea461bd5e5e7f7f31d2983733'
...
* commit 'ac6b95dbc0b53b3ea461bd5e5e7f7f31d2983733':
aarch64: add ',' between assembler macro arguments where missing
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-04 04:06:13 +02:00
Kieran Kunhya
1ef9e83764
avcodec: Deprecate dtg_active_format field in favor of avframe side-data
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-08-03 15:43:02 -07:00
Diego Biurrun
d0393d79bc
huffyuv: Check and propagate function return values
...
Bug-Id: CVE-2013-0868
inspired by a patch from Michael Niedermayer <michaelni@gmx.at>
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Diego Biurrun <diego@biurrun.de>
CC: libav-stable@libav.org
2014-08-03 15:35:30 -07:00
Diego Biurrun
6234058148
huffyuv: Return proper error codes
2014-08-03 15:18:58 -07:00
Diego Biurrun
b7616f5716
huffyuv: Eliminate some pointless casts
2014-08-03 15:18:58 -07:00
Diego Biurrun
c065f4a0c6
huffyuv: K&R formatting cosmetics
2014-08-03 15:18:58 -07:00
Anton Khirnov
f89d76c103
mpeg4video: Initialize xvididct for all threads
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-08-03 15:18:58 -07:00
Diego Biurrun
3160bdc7f7
huffyuv: Use avpriv_report_missing_feature() where appropriate
2014-08-03 15:18:58 -07:00
Janne Grunau
ac6b95dbc0
aarch64: add ',' between assembler macro arguments where missing
...
llvm's integrated assembler does not accept spaces as macro argument
delimiter when targeting darwin. Using a explicit delimiter is a good
idea in principle since it makes case like 'macro 4 -2' vs 'macro 4 - 2'
clear.
2014-08-04 00:17:21 +02:00
Michael Niedermayer
e680c731a2
avcodec/avdct: Add get_pixels()
...
Suggested-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-03 23:34:35 +02:00
Michael Niedermayer
9400603140
Merge commit '9f17685dfb70a73823aca16ad246ee3b831d1de8'
...
* commit '9f17685dfb70a73823aca16ad246ee3b831d1de8':
avcodec: Deprecate unused defines and options
Conflicts:
doc/APIchanges
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-03 20:53:00 +02:00
Michael Niedermayer
76aec9e6b4
Merge commit 'bad81800bb51f43d28d656abf5d45b477e3b3198'
...
* commit 'bad81800bb51f43d28d656abf5d45b477e3b3198':
avcodec: options: Add missing deprecation ifdefs around emu_edge
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-03 19:45:38 +02:00
Michael Niedermayer
2212bff9a2
Merge commit 'c697c590fbf296b1679b80c8f4071e4c8a6c884b'
...
* commit 'c697c590fbf296b1679b80c8f4071e4c8a6c884b':
lcl: Disentangle pointers to input data and decompression buffer
Conflicts:
libavcodec/lcldec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-03 18:58:19 +02:00
Michael Niedermayer
b7f8d3de2c
Merge commit '7835c24e19d9e1cb43fba5a02ce9d81d518f1300'
...
* commit '7835c24e19d9e1cb43fba5a02ce9d81d518f1300':
dv: Update DV-profile-related functions to current public API
Conflicts:
libavcodec/dvdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-03 18:29:38 +02:00
Michael Niedermayer
b4d525eb63
avcodec/pnm: check buf[0] before using buf[1]
...
Fixes CSA warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-03 14:01:03 +02:00
Diego Biurrun
9f17685dfb
avcodec: Deprecate unused defines and options
2014-08-03 03:24:16 -07:00
Diego Biurrun
bad81800bb
avcodec: options: Add missing deprecation ifdefs around emu_edge
2014-08-03 03:24:15 -07:00
Michael Niedermayer
4fed019821
avcodec/takdec: remove unused variable
...
Found-by: CSA
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-03 11:35:25 +02:00
Michael Niedermayer
7dbc27dc1d
avcodec/takdec: move tmp declaration to where its used
...
Makes the code a bit easier to read
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-03 11:34:51 +02:00
Diego Biurrun
c697c590fb
lcl: Disentangle pointers to input data and decompression buffer
...
This is cleaner and avoids a cast plus a related const qualifier warning.
2014-08-03 01:29:43 -07:00
James Almer
d0f56ca071
x86/hevc_deblock: improve 8bit transpose store macros
...
Up to four instructions less depending on function and instruction set.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-03 04:24:15 +02:00
Clément Bœsch
ee7ee9b1b4
avcodec/mpeg12dec: fix vissible typo after 17c65651
2014-08-03 00:02:23 +02:00
Michael Niedermayer
17c6565186
avcodec/mpeg12dec: Document Ticket3809 fix
...
Suggested-by: Reimar
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 23:10:23 +02:00
Michael Niedermayer
c103c48525
avcodec/error_resilience: make error an local variable where possible
...
This makes the code easier to understand as the scope of the variable is
smaller.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 22:04:08 +02:00
Michael Niedermayer
459996325d
avcodec/error_resilience: comment out unused assignment
...
Its not removed as the code which uses this is out-commented too.
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 22:01:59 +02:00
Diego Biurrun
7835c24e19
dv: Update DV-profile-related functions to current public API
2014-08-02 12:54:37 -07:00
Diego Biurrun
df507d5aa0
tiff: Replace deprecated PIX_FMT names by modern ones
2014-08-02 12:54:37 -07:00
Michael Niedermayer
d73371b58c
avcodec/mmvideo: remove unused return value and assignment
...
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 21:46:24 +02:00
Michael Niedermayer
08b6591cf6
avcodec/avuienc: move pointer declaration to where its used
...
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 20:13:08 +02:00
Michael Niedermayer
146e498c9e
Merge commit 'ffa4d4ef0bd66c4e8bde7357b69bdedc78123ea8'
...
* commit 'ffa4d4ef0bd66c4e8bde7357b69bdedc78123ea8':
ppc: fft: Build AltiVec optimizations in the standard way
Conflicts:
libavcodec/ppc/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 19:40:18 +02:00
Michael Niedermayer
e706fe7640
avcodec/wavpackenc: Fix log2sample() result value
...
Found-by: CSA
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 18:15:12 +02:00
Diego Biurrun
ffa4d4ef0b
ppc: fft: Build AltiVec optimizations in the standard way
2014-08-02 07:40:37 -07:00
Matthew Oliver
66627075d9
msvc: fix implicitly declared read/close.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 14:52:17 +02:00
Michael Niedermayer
3fa9692ae2
avcodec/hevc: move HEVCLocalContext declaration into loop
...
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 05:15:57 +02:00
Michael Niedermayer
92be540636
avcodec/h264_parser: remove redundant assignment
...
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 05:14:18 +02:00
Michael Niedermayer
bcc898dd26
avcodec/dvdsub_parser: print message if packet is smaller than the packet size field
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 01:17:24 +02:00
Michael Niedermayer
81c1657a59
avcodec/dvdsub_parser: Check buf_size before reading 32bit packet size
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 01:15:37 +02:00
Michael Niedermayer
cfdb30d2f1
avcodec/dvdsub_parser: never return 0 when the input isnt 0
...
Fixes a infinite loop
Fixes Ticket3804
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-02 00:27:23 +02:00
Michael Niedermayer
f95298c913
avcodec/mpeg12dec: fix support for interlaced mpeg2 with missing last slice
...
Fixes Ticket3809
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 21:10:43 +02:00
Michael Niedermayer
7f852962dc
avcodec/mpeg12dec: print the amount of overread
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 21:06:13 +02:00
Benoit Fouet
f9bd6d61bc
h264_mp4toannexb_bsf: rename first_idr to new_idr
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 17:58:30 +02:00
Michael Niedermayer
5727d387fb
Merge commit '92a36a6b3338df5f5cff573a486e182005367c24'
...
* commit '92a36a6b3338df5f5cff573a486e182005367c24':
pngdec: correctly indent macros
Conflicts:
libavcodec/pngdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 16:48:09 +02:00
Michael Niedermayer
79d0e164cf
Merge commit '4da8cdbb91ddbac118b79076cad4dc28ba72e86f'
...
* commit '4da8cdbb91ddbac118b79076cad4dc28ba72e86f':
tscc: Eliminate pointless variable indirections in decode_frame()
Conflicts:
libavcodec/tscc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 16:34:20 +02:00
Michael Niedermayer
96cea6269a
Merge commit '5735552f1f17ea01dcbc99b08f54b5bf52176a8f'
...
* commit '5735552f1f17ea01dcbc99b08f54b5bf52176a8f':
pngenc: Drop pointless pointer cast in png_write_row()
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 16:24:23 +02:00
Michael Niedermayer
f54e01c24e
Merge commit 'a786c8259dafeca9744252230b5d78f67810770c'
...
* commit 'a786c8259dafeca9744252230b5d78f67810770c':
idct: Split off Xvid IDCT
Conflicts:
libavcodec/Makefile
libavcodec/mpeg4videodec.c
libavcodec/x86/Makefile
libavcodec/x86/idctdsp_init.c
This split is somewhat restructured leaving the xvid IDCT available
outside mpeg4 if manually selected.
The code also could not be merged unchanged as it conflicted with a
bugfix in FFmpeg
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 16:21:52 +02:00
Michael Niedermayer
ad99837b63
Merge commit '03c9f357a4c2307a7913cea2cbf0ba817e80beb6'
...
* commit '03c9f357a4c2307a7913cea2cbf0ba817e80beb6':
ppc: idctdsp: Immediately return if no AltiVec is available
Conflicts:
libavcodec/ppc/idctdsp.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 15:11:05 +02:00
Vittorio Giovara
7ab551f9fd
h264: prevent theoretical infinite loop in SEI parsing
...
Properly address CVE-2011-3946 and parse bitstream as described in the spec.
CC: libav-stable@libav.org
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2014-08-01 13:08:32 +01:00
Vittorio Giovara
92a36a6b33
pngdec: correctly indent macros
2014-08-01 13:07:53 +01:00
Diego Biurrun
4da8cdbb91
tscc: Eliminate pointless variable indirections in decode_frame()
2014-08-01 04:08:46 -07:00
Diego Biurrun
5735552f1f
pngenc: Drop pointless pointer cast in png_write_row()
2014-08-01 04:08:45 -07:00
Carl Eugen Hoyos
a80191379b
Fix standalone compilation of the WebVTT decoder.
2014-08-01 12:50:38 +02:00
Benoit Fouet
42f25fe009
h264_mp4toannexb_bsf: always set idr_sps_pps_seen when SPS/PPS is seen.
...
In order not to break a sequence like "SPS IDR SPS IDR", the boolean
telling that the SPS/PPS has been seen should always be set.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 12:20:14 +02:00
Benoit Fouet
66af2a01d2
h264: remove useless assignment.
...
source index, as well as dest one, is unconditionnaly set afterwards,
before being effectively used.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 12:20:01 +02:00
Diego Biurrun
a786c8259d
idct: Split off Xvid IDCT
...
The Xvid IDCT is only required to decode some Xvid-encoded MPEG-4 files,
so there is no point in having it as an unconditional part of idctdsp.
2014-08-01 01:25:18 -07:00
Diego Biurrun
03c9f357a4
ppc: idctdsp: Immediately return if no AltiVec is available
...
This is how all the other init functions operate.
2014-08-01 01:23:11 -07:00
Michael Niedermayer
7db3a46a3d
Merge commit 'd98e6c5d5d80c1dfe0c30f2e73d41a3aea0b920d'
...
* commit 'd98e6c5d5d80c1dfe0c30f2e73d41a3aea0b920d':
pgssubdec: Check RLE size before copying
See: c0d68be555
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-01 04:46:50 +02:00
Michael Niedermayer
d98e6c5d5d
pgssubdec: Check RLE size before copying
...
Make sure the buffer size does not exceed the expected
RLE size.
Prevent an out of array bound write.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Bug-Id: CVE-2013-0852
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-08-01 02:13:32 +02:00
James Almer
62baf5b853
x86/hevc_deblock: use existing x86util transpose macro in chroma_{10, 12}
...
Cosmetic change. No measurable difference in speed.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-31 22:56:21 +02:00
Michael Niedermayer
5bedbc3da2
avcodec/diracdec: remove unneeded assignment
...
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-31 20:40:10 +02:00
Michael Niedermayer
590c2996ee
avcodec/flac_parser: remove duplicate assignent
...
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-31 20:35:54 +02:00
Michael Niedermayer
1af563b5df
avcodec/ratecontrol: remove unneeded statement
...
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-31 20:35:54 +02:00
Michael Niedermayer
0782fb6bcb
libavcodec/h264_parser: Increase parse_history, fix huge resolutions
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-31 16:39:04 +02:00
Benoit Fouet
bf428bb314
h264_mp4toannexb_bsf: account for consecutive IDR pictures.
...
If there are consecutive IDR pictures, then SPS/PPS should be prepended
to all of them, not only the first one.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-31 15:59:47 +02:00
Michael Niedermayer
dd200c56c0
avcodec/dvdsubdec: free subtitle rectangles if nothing is output
...
Fixes assertion failure
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-31 14:17:46 +02:00
Michael Niedermayer
ceff29b9ad
avcodec/resample: check for malloc failure
...
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-31 13:04:28 +02:00
Michael Niedermayer
72555f4a38
avcodec/pthread_slice: Check for malloc failure
...
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-31 12:56:21 +02:00
Michael Niedermayer
37ec7d291e
avcodec/mpeg4video_parser: Check for extradata parsing failure
...
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-31 12:56:21 +02:00
Christophe Gisquet
a507623bad
x86: hevc_mc: fix register count usage
...
A macro was using a fixed register, causing too many GPRs to be
declared as used.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-29 22:50:50 +02:00
Michael Niedermayer
58eaa95116
Merge commit 'ccbf370f2000b9b27f4af259c23007d67f7ea46e'
...
* commit 'ccbf370f2000b9b27f4af259c23007d67f7ea46e':
mpegvideo: move vol_control_parameters to the only place it is used
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-29 21:26:59 +02:00
Nidhi Makhijani
ccbf370f20
mpegvideo: move vol_control_parameters to the only place it is used
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-29 09:13:18 -07:00
James Almer
73c4f63ba5
x86/hevc_deblock: add add ff_hevc_[hv]_loop_filter_luma_{8, 10, 12}_avx
...
~5% faster than SSSE3
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-29 14:04:59 +02:00
James Almer
88ba821f23
x86/hevc_deblock: improve luma functions register allocation
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-29 13:38:05 +02:00
James Almer
c74b08c5c6
x86/hevc_deblock: remove some unnecessary instructions
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-29 13:27:44 +02:00
Christophe Gisquet
65746bfbae
hevc_filter: run vertical and horizontal together
...
This should help cache locality. On win64:
Before: 1397x cycles, 16216 bytes
After: 1369x cycles, 16040 bytes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-29 03:56:43 +02:00
James Almer
4f91bb0ff0
x86/hevc_deblock: use psignw instead of pmullw where possible
...
It's slightly faster
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-29 03:42:29 +02:00
Michael Niedermayer
d55d8229fb
Merge commit '019a28cd630286ecb2b06ee62025a17c821b493e'
...
* commit '019a28cd630286ecb2b06ee62025a17c821b493e':
sanm: Use correct printf conversion specifiers for POSIX int types
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-29 01:22:46 +02:00
Michael Niedermayer
a91c5ed008
Merge commit '4f8cf0dc4ef6110174056df7edd9dc2f2a988b6d'
...
* commit '4f8cf0dc4ef6110174056df7edd9dc2f2a988b6d':
x86: build: Restore ordering of OBJS lines
Conflicts:
libavcodec/x86/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-29 00:34:53 +02:00
Diego Biurrun
019a28cd63
sanm: Use correct printf conversion specifiers for POSIX int types
2014-07-28 13:19:04 -07:00
Diego Biurrun
4f8cf0dc4e
x86: build: Restore ordering of OBJS lines
2014-07-28 13:19:04 -07:00
James Almer
664e9e4331
x86/hevc_deblock: load less data in hevc_h_loop_filter_luma_8
...
Reading 8 bytes is enough.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 21:55:22 +02:00
James Almer
f137876182
x86/hevc_idct: add a colon to labels
...
This fixes a warning spam when using NASM
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 21:43:32 +02:00
Michael Niedermayer
243236a6f5
avcodec/hevc: fix "discards const qualifier from pointer target type" warning
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 14:34:47 +02:00
Michael Niedermayer
772dfd5f6e
avcodec/hevc: add some const to cbf arrays
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 14:28:56 +02:00
Mickaël Raulet
42ffa226f9
hevc: clean up non relevant TODO
...
cherry picked from commit a2ef95f043d89d05482af19460c9e9afdadec685
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 14:27:04 +02:00
Anton Khirnov
a5c621aa85
hevc: rename variable in boundary strength to b more explicit
...
Signed-off-by: Mickaël Raulet <mraulet@insa-rennes.fr>
cherry picked from commit 348bebedc0012aae201419669fca1eb61ec93ca6
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 14:20:19 +02:00
Michael Niedermayer
e0492311c8
Merge commit 'e76f2d11970484266e67a12961f2339a5c2fccf9'
...
* commit 'e76f2d11970484266e67a12961f2339a5c2fccf9':
hevc: eliminate the last element from TransformTree
Conflicts:
libavcodec/hevc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 14:02:03 +02:00
Michael Niedermayer
4a73fa19ca
Merge commit '4aa80808bcc2a30fcd7ce5b38594319df3a85b36'
...
* commit '4aa80808bcc2a30fcd7ce5b38594319df3a85b36':
hevc: eliminate unnecessary cbf_c{b,r} arrays
Conflicts:
libavcodec/hevc.c
See: 77ef9fd1e9
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 13:54:51 +02:00
Michael Niedermayer
0a1ffc5788
Merge commit '0daa2554636ba1d31f3162ffb86991e84eb938a8'
...
* commit '0daa2554636ba1d31f3162ffb86991e84eb938a8':
hevc: do not store the transform inter_split flag in the context
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 13:09:28 +02:00
Michael Niedermayer
2fb8aa9b10
Merge commit '53a11135f2fb2123408b295f9aaae3d6f861aea5'
...
* commit '53a11135f2fb2123408b295f9aaae3d6f861aea5':
hevc: simplify splitting the transform tree blocks
Conflicts:
libavcodec/hevc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 13:03:59 +02:00
Michael Niedermayer
453224f10b
Merge commit 'e36a2f4c5280e2779b0e88974295a711cf8d88be'
...
* commit 'e36a2f4c5280e2779b0e88974295a711cf8d88be':
hevc: eliminate an unnecessary array
Conflicts:
libavcodec/hevc.c
See: 255086a7e0
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 12:54:14 +02:00
Michael Niedermayer
2e5c8b0649
Merge commit 'c5fca0174db9ed45be821177f49bd9633152704d'
...
* commit 'c5fca0174db9ed45be821177f49bd9633152704d':
lavc: add a property for marking codecs that support frame reordering
Conflicts:
doc/APIchanges
libavcodec/avcodec.h
libavcodec/codec_desc.c
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 12:36:28 +02:00
Anton Khirnov
e76f2d1197
hevc: eliminate the last element from TransformTree
...
Replace it by passing an additional parameter to transform_unit()
2014-07-28 08:10:35 +00:00
Anton Khirnov
4aa80808bc
hevc: eliminate unnecessary cbf_c{b,r} arrays
...
They are replaced by passing additional parameters to the transform
functions.
2014-07-28 08:09:18 +00:00
Anton Khirnov
0daa255463
hevc: do not store the transform inter_split flag in the context
...
It does not need to be preserved.
2014-07-28 08:05:47 +00:00
Anton Khirnov
53a11135f2
hevc: simplify splitting the transform tree blocks
2014-07-28 08:04:19 +00:00
Anton Khirnov
e36a2f4c52
hevc: eliminate an unnecessary array
...
We do not need to store the value of the split flag.
2014-07-28 08:03:53 +00:00
Anton Khirnov
4b169321b8
codec_desc: fix some typos in long codec names
...
The rv20 typo spotted by Hendrik Leppkes <h.leppkes@gmail.com>
2014-07-28 08:03:13 +00:00
Anton Khirnov
c5fca0174d
lavc: add a property for marking codecs that support frame reordering
2014-07-28 08:02:50 +00:00
Michael Niedermayer
2f717be22a
avcodec/avdct: Add avcodec_dct_get_class()
...
This should have been in the initial commit of AVDCT
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 05:14:39 +02:00
Anton Khirnov
77ef9fd1e9
hevc: eliminate unnecessary cbf_c{b,r} arrays
...
- They are be replaced by passing additional parameters to the transform
functions.
- Adaptation to 4:2:2
Signed-off-by: Mickaël Raulet <mraulet@insa-rennes.fr>
cherry picked from commit f518bb22531c648f1c37f978b0c7ad2e71e04c25
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 00:55:44 +02:00
Mickaël Raulet
772f7f4edd
hevc: fix skip_flag
...
cherry picked from commit 509ae456551005b9bf9b4d9730b6247c97fdd990
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 00:47:28 +02:00
Mickaël Raulet
3b777db132
hevc: remove non necessary parameters to ff_hevc_set_qpy
...
cherry picked from commit 6f58c111ad9920d983bb18eacf901193bac5d937
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 00:39:13 +02:00
Carl Eugen Hoyos
bcb7220d1c
Fix standalone compilation of the webm_dash_manifest demuxer.
2014-07-27 23:27:14 +02:00
Carl Eugen Hoyos
6898c14959
Fix standalone compilation of the legacy mpegvideo decoder.
2014-07-27 23:13:10 +02:00
Christophe Gisquet
81943a10b5
x86: hevc_mc: load less data in epel filters
...
Before:
5679 decicycles in epel_bi, 2059976 runs, 37176 skips
3468 decicycles in epel_uni, 1040886 runs, 7690 skips
After:
5323 decicycles in epel_bi, 2059493 runs, 37659 skips
3262 decicycles in epel_uni, 1040871 runs, 7705 skips
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-27 18:34:39 +02:00
Christophe Gisquet
36284ae981
x86: hevc_mc: replace one lea by add
...
Should have been in 036f11bdb5
.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-27 17:42:56 +02:00
Michael Niedermayer
932ff70956
avcodec: add avdct
...
This provides a public sustainable API/ABI for DCT functions.
Only externally used dct functions are included.
The structure is extensible without ABI issues compared to the
existing dct contexts.
See Mailing list and IRC log of 2014-07-26/27
Reviewed-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-27 17:21:40 +02:00
Michael Niedermayer
fbeb634e4d
avcodec/ppc/idctdsp: Only select non bitexact IDCTs by default when bitexact is not set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-27 14:22:36 +02:00
Michael Niedermayer
b051a1bbb9
avcodec/arm/idctdsp_init_arm*: Only select non bitexact IDCTs by default when bitexact is not set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-27 14:21:36 +02:00
Michael Niedermayer
c2ef844aa7
Merge commit '541427ab4d5b4b6f5a90a687a06decdb78e7bc3c'
...
* commit '541427ab4d5b4b6f5a90a687a06decdb78e7bc3c':
eamad: use the bytestream2 API instead of AV_RL
Conflicts:
libavcodec/eamad.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-27 12:27:01 +02:00
Anton Khirnov
541427ab4d
eamad: use the bytestream2 API instead of AV_RL
...
This is safer and possibly fixes invalid reads on truncated data.
CC:libav-stable@libav.org
2014-07-27 07:10:54 +00:00
Chris \"Koying\" Browet
ad91bf854b
avcodec/h264_mp4toannexb_bsf: fix issue when sps/pps are already in the bistream
2014-07-27 03:36:24 +02:00
Michael Niedermayer
0a7f3af27f
Merge commit '53abe32409f13687c864b3cda077a1aa906a2459'
...
* commit '53abe32409f13687c864b3cda077a1aa906a2459':
avcodec: Mark argument in av_{parser|hwaccel|bitstream_filter}_next as const
Conflicts:
libavcodec/avcodec.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-27 01:57:34 +02:00
James Almer
bfb3b2b7a6
x86/hevc_idct: add 12bit idct_dc
...
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Mickaël Raulet <mraulet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-27 00:30:56 +02:00
Michael Niedermayer
d4a9e89b27
avcodec/x86/hevcdsp_init: make license header consistent
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-27 00:28:44 +02:00
Michael Niedermayer
706f81a2c2
Merge commit '1a880b2fb8456ce68eefe5902bac95fea1e6a72d'
...
* commit '1a880b2fb8456ce68eefe5902bac95fea1e6a72d':
hevc: SSE2 and SSSE3 loop filters
Conflicts:
libavcodec/hevcdsp.c
libavcodec/hevcdsp.h
libavcodec/x86/Makefile
libavcodec/x86/hevc_deblock.asm
libavcodec/x86/hevcdsp_init.c
See: de7b89fd43
and several others
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-27 00:20:48 +02:00
Michael Niedermayer
226b290f9f
Merge commit '73bb8f61d48dbf7237df2e9cacd037f12b84b00a'
...
* commit '73bb8f61d48dbf7237df2e9cacd037f12b84b00a':
hevcdsp: remove an unneeded variable in the loop filter
Conflicts:
libavcodec/hevc_filter.c
See: d7e162d46b
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 23:53:31 +02:00
Diego Biurrun
53abe32409
avcodec: Mark argument in av_{parser|hwaccel|bitstream_filter}_next as const
2014-07-26 14:51:16 -07:00
James Almer
1ace9573dc
x86/hevc_idct: replace old and unused idct functions
...
Only 8-bit and 10-bit idct_dc() functions are included (adding others should be trivial).
Benchmarks on an Intel Core i5-4200U:
idct8x8_dc
SSE2 MMXEXT C
cycles 22 26 57
idct16x16_dc
AVX2 SSE2 C
cycles 27 32 249
idct32x32_dc
AVX2 SSE2 C
cycles 62 126 1375
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Mickaël Raulet <mraulet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 18:00:11 +02:00
Pierre Edouard Lepere
1a880b2fb8
hevc: SSE2 and SSSE3 loop filters
...
Additional contributions by James Almer <jamrial@gmail.com>,
Carl Eugen Hoyos <cehoyos@ag.or.at>, Fiona Glaser <fiona@x264.com> and
Anton Khirnov <anton@khirnov.net>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-07-26 15:01:01 +00:00
Anton Khirnov
73bb8f61d4
hevcdsp: remove an unneeded variable in the loop filter
...
beta0 and beta1 will always be the same
2014-07-26 15:00:11 +00:00
Mickaël Raulet
23480da0aa
hevc: add support for bumping process
...
cherry picked from commit 8aa2fb7df3cffc67a3fd03a3a7eb49dbed4094c7
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 15:40:34 +02:00
Michael Niedermayer
c0a586d9d5
reintroduce avpriv_dsputil_init() to maintain ABI until next soname bump
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 13:21:07 +02:00
Christophe Gisquet
036f11bdb5
x86: hevc_mc: replace simple leas by adds
...
lea is detrimental for those simple cases. No impact overall to
the change though.
Before:
15017 decicycles in q, 1016152 runs, 32424 skips
15382 decicycles in q_bi, 1013673 runs, 34903 skips
3713 decicycles in e, 2074534 runs, 22618 skips
3901 decicycles in e_bi, 2065509 runs, 31643 skips
7852 decicycles in q_uni, 520165 runs, 4123 skips
2398 decicycles in e_uni, 1043339 runs, 5237 skips
After:
14898 decicycles in q, 1016295 runs, 32281 skips
15119 decicycles in q_bi, 1015392 runs, 33184 skips
3682 decicycles in e, 2073224
runs, 23928 skips
3720 decicycles in e_bi, 2065043 runs, 32109 skips
7643 decicycles in q_uni, 520280 runs, 4008 skips
2363 decicycles in e_uni, 1043780 runs, 4796 skips
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 05:41:04 +02:00
Michael Niedermayer
7295ee7f51
Merge commit 'd8520d3ee032bf18f28897e0109f44b405caf5e3'
...
* commit 'd8520d3ee032bf18f28897e0109f44b405caf5e3':
mpegvideo: Move QMAT_SHIFT* defines to the only place they are used
Conflicts:
libavcodec/mpegvideo.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 02:47:32 +02:00
Michael Niedermayer
8b395315a5
Merge commit '4fbb62a21bd04bf261da2382d5ba6c249c702af8'
...
* commit '4fbb62a21bd04bf261da2382d5ba6c249c702af8':
mpegvideo: Move ME_MAP_* defines to the only place they are used
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 02:34:51 +02:00
Michael Niedermayer
0a9bab5be6
Merge commit 'ff85334375c6733c6116ea3686f128b4a11f33e7'
...
* commit 'ff85334375c6733c6116ea3686f128b4a11f33e7':
mpegvideo: Drop unused MPEG_BUF_SIZE and CHROMA_444 defines
CHROMA_444 is not removed as we do support CHROMA_444 and use the
identifier
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 02:23:29 +02:00
Mickaël Raulet
f6e218a02d
hevc: fix RAP_B_Bossen
...
cherry picked from commit 903236292f066bc321080e3e2192b64f8943d960
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 02:01:04 +02:00
Mickaël Raulet
bd0f2d316f
x86/hevc: add 12bits support for MC
...
cherry picked from commit 3fcb7a4595a6f40100a22110a5805e3b7510c0fd
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 01:55:20 +02:00
Mickaël Raulet
7df98d8c4d
x86/hevc: remove unused constant in deblocking filter
...
cherry picked from commit a3f7282eaa6f1ab0524fb966c6eade50c3025f99
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 01:20:40 +02:00
Mickaël Raulet
7bdcf5c934
x86/hevc: add 12bits support for deblocking filter
...
cherry picked from commit 97d46afe320c7d61d7b9525e5f5588355cde4bb0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 01:19:42 +02:00
Diego Biurrun
d8520d3ee0
mpegvideo: Move QMAT_SHIFT* defines to the only place they are used
2014-07-25 12:00:53 -07:00
Diego Biurrun
4fbb62a21b
mpegvideo: Move ME_MAP_* defines to the only place they are used
2014-07-25 12:00:53 -07:00
Diego Biurrun
ff85334375
mpegvideo: Drop unused MPEG_BUF_SIZE and CHROMA_444 defines
2014-07-25 12:00:52 -07:00
Michael Niedermayer
aadf5222da
Merge commit '165e9df19567ec0b6abee1ee2c26027e6d7aa7bf'
...
* commit '165e9df19567ec0b6abee1ee2c26027e6d7aa7bf':
fft-test: Pass the right struct members instead of casting
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-25 20:43:03 +02:00
Diego Biurrun
165e9df195
fft-test: Pass the right struct members instead of casting
2014-07-25 06:54:37 -07:00
Michael Niedermayer
2904d052b7
Merge commit '7fb993d338d88f2f62e0a358b6c9f3eb9a3a08ac'
...
* commit '7fb993d338d88f2f62e0a358b6c9f3eb9a3a08ac':
qpeldsp: Mark source pointer in qpel_mc_func function pointer const
Conflicts:
libavcodec/h264qpel_template.c
libavcodec/x86/cavsdsp.c
libavcodec/x86/rv40dsp_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-25 13:05:08 +02:00
Michael Niedermayer
937eaba2a1
Merge commit '060e4a9e0627adcda9101dd68ec7f22b4ce22b5b'
...
* commit '060e4a9e0627adcda9101dd68ec7f22b4ce22b5b':
dct/rdft: Remove duplicate typedefs for context structs
See: 005e81d6cf
See: 77304cf352
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-25 12:39:17 +02:00
Diego Biurrun
58e65e44f4
vc1dsp: Add wrappers for {avg|put}_vc1_mspel_mc00_c
...
This avoids invoking the wrapped functions with too many arguments.
2014-07-25 02:52:54 -07:00
Diego Biurrun
7fb993d338
qpeldsp: Mark source pointer in qpel_mc_func function pointer const
2014-07-25 02:52:54 -07:00
Diego Biurrun
060e4a9e06
dct/rdft: Remove duplicate typedefs for context structs
...
The typedefs also exist in the avfft.h header and since typedefs cannot be
legally redefined in C, the code fails to compile with some compilers.
This reverts commits 11c7155cce
and 57f1b1dcc7
.
2014-07-25 02:02:15 -07:00
Michael Niedermayer
ce8e27e0ed
Merge commit '436ced244fadcde2c0b925627920e84b25482542'
...
* commit '436ced244fadcde2c0b925627920e84b25482542':
mpegenccontext: Remove unused opaque pointer
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-24 18:53:34 +02:00
Nidhi Makhijani
436ced244f
mpegenccontext: Remove unused opaque pointer
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-24 07:59:44 -07:00
Timothy Gu
c508adb223
hevc: propagate error code from set_sps()
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-24 16:25:55 +02:00
Carl Eugen Hoyos
badcd3da81
Print a warning instead of requesting a sample for an invalid exif tag.
...
Fixes ticket #3792 .
Reviewed-by: Thilo Borgmann
2014-07-24 11:58:11 +02:00
Michael Niedermayer
ab0f78ea77
Merge commit 'd0de7330b973b354e2ceb0b99fd545b868b0a9c4'
...
* commit 'd0de7330b973b354e2ceb0b99fd545b868b0a9c4':
fft-test: Pass correct struct members to (i)dct functions
Conflicts:
libavcodec/fft-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-24 01:50:01 +02:00
Michael Niedermayer
02ea384abd
Merge commit '6133d65861f265d429ade53e910fe877c95a1615'
...
* commit '6133d65861f265d429ade53e910fe877c95a1615':
fft-test: K&R formatting cosmetics
Conflicts:
libavcodec/fft-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-24 01:22:31 +02:00
Michael Niedermayer
629e5e28f7
avcodec/fft-test: fix memory alloc checks
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-24 00:47:11 +02:00
Michael Niedermayer
074bb7515e
Merge commit 'c3c96deb5f8cbbdb700ba97920ceedddacb5dcb9'
...
* commit 'c3c96deb5f8cbbdb700ba97920ceedddacb5dcb9':
fft-test: Check memory allocations
Conflicts:
libavcodec/fft-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-24 00:35:40 +02:00
Christophe Gisquet
670b7f203a
x86: hevcdsp: align
...
Reviewed-by: Mickaël Raulet <mraulet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 22:18:08 +02:00
Diego Biurrun
d0de7330b9
fft-test: Pass correct struct members to (i)dct functions
...
This fixes a number of incompatible pointer type warnings.
2014-07-23 13:05:25 -07:00
Diego Biurrun
6133d65861
fft-test: K&R formatting cosmetics
...
Also rearrange #includes into canonical order.
2014-07-23 13:05:19 -07:00
Christophe Gisquet
373677f958
hevc_mvs: avoid deriving tmvp in amvp
...
Reduces on a sequence number of calls from 933685 to 586271.
Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 21:21:49 +02:00
Christophe Gisquet
ca081217cd
hevcdsp: change types of SAO parameters
...
From openhevc
Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 20:54:03 +02:00
Michael Niedermayer
088875b6b8
Merge commit '7288b345850792430302a8f85a4b29140b770497'
...
* commit '7288b345850792430302a8f85a4b29140b770497':
fft-test: Drop unnecessary pointer indirection for context structs
Conflicts:
libavcodec/fft-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 20:48:05 +02:00
Michael Niedermayer
09f5b3750f
Merge commit 'd445c865f87e7f13230e4dac3f77f5af21da95cb'
...
* commit 'd445c865f87e7f13230e4dac3f77f5af21da95cb':
fft-test: Reduce variable scope where sensibly possible
Conflicts:
libavcodec/fft-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 20:40:41 +02:00
Michael Niedermayer
97d2b8d6f5
Merge commit 'eac77fcd56fc2a3391f0d86faf54302afb368ff7'
...
* commit 'eac77fcd56fc2a3391f0d86faf54302afb368ff7':
mpegenccontext: Remove unused dct_unquantize_h261 function pointers
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 20:20:08 +02:00
Michael Niedermayer
601c238854
avcodec/h264: support AV_PKT_DATA_NEW_EXTRADATA
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 17:40:21 +02:00
Michael Niedermayer
1bf371b24e
avcodec/h264: factor is_extra() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 17:40:21 +02:00
Diego Biurrun
c3c96deb5f
fft-test: Check memory allocations
2014-07-23 06:05:02 -07:00
Diego Biurrun
7288b34585
fft-test: Drop unnecessary pointer indirection for context structs
2014-07-23 06:05:02 -07:00
Diego Biurrun
d445c865f8
fft-test: Reduce variable scope where sensibly possible
...
Also merge variable declaration and initialization.
2014-07-23 06:05:02 -07:00
Michael Niedermayer
54256482cb
Merge commit '20ec0daaa1cdd3996ac6ed0198de961129474044'
...
* commit '20ec0daaa1cdd3996ac6ed0198de961129474044':
fft-test: Make global exptab variable static
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 14:27:10 +02:00
Michael Niedermayer
d0cb6caf69
Merge commit '2b6ab3a2bd7e7cee5e7a55dd2e48b8feb4a826bb'
...
* commit '2b6ab3a2bd7e7cee5e7a55dd2e48b8feb4a826bb':
mpegvideo: Move QUANT_BIAS_SHIFT define to the only place it is used
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 14:15:48 +02:00
Nidhi Makhijani
eac77fcd56
mpegenccontext: Remove unused dct_unquantize_h261 function pointers
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-23 05:07:21 -07:00
Diego Biurrun
20ec0daaa1
fft-test: Make global exptab variable static
2014-07-23 03:45:33 -07:00
Diego Biurrun
2b6ab3a2bd
mpegvideo: Move QUANT_BIAS_SHIFT define to the only place it is used
2014-07-23 03:16:55 -07:00
Carl Eugen Hoyos
c75fdee747
avcodec/x86/hevc_deblock: Fix compilation with nasm.
2014-07-23 10:32:27 +02:00
Michael Niedermayer
9515d7c629
Merge commit '5be7d8597d02bcaba2de2503c0e59cf865c746dc'
...
* commit '5be7d8597d02bcaba2de2503c0e59cf865c746dc':
fft-test: Comment some #endifs
Conflicts:
libavcodec/fft-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 00:29:06 +02:00
Michael Niedermayer
9eeedf8769
Merge commit '57f1b1dcc77a93c2a5c503d4e47fe2f567cf9db5'
...
* commit '57f1b1dcc77a93c2a5c503d4e47fe2f567cf9db5':
fft-test: Drop unnecessary #ifdefs around header includes
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 00:23:28 +02:00
Michael Niedermayer
77304cf352
avcodec: dct/rdft only support float mode, skip their contents for fixed point
2014-07-23 00:18:24 +02:00
Michael Niedermayer
1df2f7b6a8
Merge commit 'eba2233b58c2c4b468c58287d6537b2f1188a8cd'
...
* commit 'eba2233b58c2c4b468c58287d6537b2f1188a8cd':
build: Add define for SIMD extensions requiring 16-byte aligned buffers
Conflicts:
configure
libavcodec/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 22:32:40 +02:00
Michael Niedermayer
013172ae9f
Merge commit '67bc1ba5d75953d136bfa02ce6c0a27e9fd9dac3'
...
* commit '67bc1ba5d75953d136bfa02ce6c0a27e9fd9dac3':
libxvid: Drop PPC-specific CPU detection hack
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 22:23:26 +02:00
Diego Biurrun
5be7d8597d
fft-test: Comment some #endifs
2014-07-22 11:55:40 -07:00
Diego Biurrun
57f1b1dcc7
fft-test: Drop unnecessary #ifdefs around header includes
2014-07-22 11:55:40 -07:00
Diego Biurrun
11c7155cce
dct/rdft: Add missing typedefs for context structs
...
Without the typedefs there can be trouble depending on #include order.
2014-07-22 11:55:40 -07:00
Diego Biurrun
eba2233b58
build: Add define for SIMD extensions requiring 16-byte aligned buffers
2014-07-22 11:46:35 -07:00
Diego Biurrun
67bc1ba5d7
libxvid: Drop PPC-specific CPU detection hack
...
It is doubtful if the hack (still) works and Xvid had ten years to fix it.
2014-07-22 11:45:07 -07:00
Christophe Gisquet
ed248e7f70
hevc: wait proper position for tmvp
...
The position is either rounded or not checked, so delay the wait to
check the proper value.
Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 18:11:50 +02:00
Przemysław Sobala
c68098ba4a
avcodec/mjpegdec: add pix_fmt: 0x14121200
...
Fixes: _15801_F.jpg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 18:07:44 +02:00
Michael Niedermayer
ca6b33b8bd
avcodec/x86/hevcdsp_init: Fix "warning: assignment from incompatible pointer type"
2014-07-22 16:36:12 +02:00
Anton Khirnov
d7e162d46b
hevcdsp: remove an unneeded variable in the loop filter
...
beta0 and beta1 will always be the same within a CU
Signed-off-by: Mickaël Raulet <mraulet@insa-rennes.fr>
cherry picked from commit 4a23d824741a289c7d2d2f2871d1e2621b63fa1b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:27:26 +02:00
Anton Khirnov
ae2f048fd7
avcodec/x86/hevc_deblock: cosmetics
...
cherry picked from commit f7843356253459e6010320292dbbc1e888a5249b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:18:05 +02:00
Anton Khirnov
b435043abb
hevc: cleanups in SSE2 and SSSE3 loop filters, use fewer instructions
...
cherry picked from commit f7843356253459e6010320292dbbc1e888a5249b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:17:29 +02:00
Anton Khirnov
e8581b17a8
avcodec/x86/hevc_deblock: use test instead of cmp 0
...
cherry picked from commit f7843356253459e6010320292dbbc1e888a5249b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:16:05 +02:00
Anton Khirnov
dc69247de4
avcodec/x86/hevc_deblock: use of paddw instead of psllw
...
cherry picked from commit f7843356253459e6010320292dbbc1e888a5249b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:14:53 +02:00
Anton Khirnov
500a0394d5
avcodec/x86/hevc_deblock: add %ifs to avoid "do nothing instructions"
...
cherry picked from commit f7843356253459e6010320292dbbc1e888a5249b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:13:28 +02:00
Anton Khirnov
7a4cf67117
hevc: cleaning up SSE2 and SSSE3 deblocking filters
...
Signed-off-by: Mickaël Raulet <mraulet@insa-rennes.fr>
cherry picked from commit b432041d7d1eca38831590f13b4e5baffff8186f
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:00:48 +02:00
Mickaël Raulet
5f08b417b4
hevc/mvs: cosmetics
...
cherry picked from commit 9053cd92700e939cde49ab0ea3c6917be453cab7
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 15:19:19 +02:00
Mickaël Raulet
cd714afe81
hevc/mvs: more cleanups
...
cherry picked from commit c4e467e79f59453783c97bc6044082edb7a6468b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 15:13:09 +02:00
Mickaël Raulet
3ad0460831
hevc/mvs: code cleaning
...
cherry picked from commit 74f10da013ea71a3f6b77cdff989c4574c8a5ea2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 15:05:00 +02:00
Mickaël Raulet
c4d63cd230
hevc/mvs: simplifying derive_spatial_merge_candidates function
...
cherry picked from commit 99be11cf08a5628d0bb6ac7f4958bf9dd35cda62
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 14:17:19 +02:00
Mickaël Raulet
e9bb45ba79
hevc/mvs: remove same prediction block
...
cherry picked from commit 1206262ba1ef810328cadce99d5cdc0bf9285e4d
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 14:12:00 +02:00
Mickaël Raulet
560b0253ff
hevc/mvs: simplify derive_temporal_colocated_mvs
...
cherry picked from commit def7db60966765f4687250d766b40dbcf0f7e503
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 14:11:43 +02:00
Mickaël Raulet
37822a566f
hevc/rext: remove warning for cross component prediction
...
cherry picked from commit fb595102593c94179502bb1967f978a1d99cc7cb
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 13:59:00 +02:00
Mickaël Raulet
627c044f50
hevc/rext: fixing rdpcm and scaling list for Range Extension
...
-new rext bitstreams:
PERSIST_RPARAM_A_RExt_Sony_1.bit ok =
QMATRIX_A_RExt_Sony_1.bit ok =
SAO_A_RExt_MediaTek_1.bit ok =
(cherry picked from commit cdea029d452c521f8e5bcbe589f44b13a4011604)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 13:07:54 +02:00
Mickaël Raulet
fa0506e413
hevc/rext: update boundary strength for chroma deblocking filter
...
cherry picked from commit 7d05c95ac5a63d7675bf645e74b4cf1fffff4796
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 13:00:14 +02:00
Michael Niedermayer
4ec1cb2497
Merge commit '78670fbf07bd03479073d4218440de4914304680'
...
* commit '78670fbf07bd03479073d4218440de4914304680':
imgconvert: cosmetics: Reshuffle defines to reduce ifdeffery
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 12:55:11 +02:00
Michael Niedermayer
7cdb3b2b79
Merge commit '6869612f5c7d4d2f20f69a5658328a761deadb1c'
...
* commit '6869612f5c7d4d2f20f69a5658328a761deadb1c':
arm: Macroize the test for 'setend' CPU instruction support
Conflicts:
libavcodec/arm/h264dsp_init_arm.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 12:46:13 +02:00
Michael Niedermayer
c933f2c4cc
Merge commit '16e6652286213014c28a9c3af70435e767d28638'
...
* commit '16e6652286213014c28a9c3af70435e767d28638':
aarch64: NEON intrinsics dct_unquantize_h263.
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 03:35:29 +02:00
Diego Biurrun
78670fbf07
imgconvert: cosmetics: Reshuffle defines to reduce ifdeffery
2014-07-21 15:08:01 -07:00
Ben Avison
6869612f5c
arm: Macroize the test for 'setend' CPU instruction support
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-21 15:08:01 -07:00
James Yu
16e6652286
aarch64: NEON intrinsics dct_unquantize_h263.
...
Intrinsics only used on aarch64 since the existing ARMv7 NEON asm
is slightly faster (Cortex-A9, gcc-4.8, micro-benchmarks and full
decoding time).
Signed-off-by: James Yu <james.yu@linaro.org>
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2014-07-21 23:18:29 +02:00
Michael Niedermayer
16c66f3151
Merge commit '2ce53880bfeb431decdd2fc82298c0aff823ab47'
...
* commit '2ce53880bfeb431decdd2fc82298c0aff823ab47':
build: Conditionally compile all avcodec test programs
Conflicts:
libavcodec/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 22:29:15 +02:00
Michael Niedermayer
9a436ae30f
Merge commit '16b7328058fa600d5158c84d9cc621a134eb88bc'
...
* commit '16b7328058fa600d5158c84d9cc621a134eb88bc':
build: Conditionally build and run DCT test program
Conflicts:
libavcodec/Makefile
libavcodec/dct-test.c
tests/fate/libavcodec.mak
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 22:02:23 +02:00
Michael Niedermayer
79df91bfc4
Merge commit 'bd499d9af668aef979ec9f3f3215b8dd508c7ec1'
...
* commit 'bd499d9af668aef979ec9f3f3215b8dd508c7ec1':
build: Conditionally build and test iirfilter
Conflicts:
libavcodec/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 21:35:02 +02:00
Diego Biurrun
2ce53880bf
build: Conditionally compile all avcodec test programs
2014-07-21 05:33:03 -07:00
Diego Biurrun
16b7328058
build: Conditionally build and run DCT test program
2014-07-21 05:32:35 -07:00
Diego Biurrun
bd499d9af6
build: Conditionally build and test iirfilter
2014-07-21 05:32:07 -07:00
Michael Niedermayer
4054171666
avcodec/dct-test: remove fixed array sizes
...
They are unneeded and make adding elements slightly harder as they
would need to be constantly updated
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 14:00:48 +02:00
Michael Niedermayer
d986c414de
Merge commit '81b9bf319226fe03436c80aaa8a2c91767cab7ce'
...
* commit '81b9bf319226fe03436c80aaa8a2c91767cab7ce':
dct-test: Move arch-specific bits into arch-specific subdirectories
Conflicts:
libavcodec/dct-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 13:33:51 +02:00
Nidhi Makhijani
c3ec963d0d
mjpeg: return proper error code
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-21 01:25:33 -07:00
Diego Biurrun
81b9bf3192
dct-test: Move arch-specific bits into arch-specific subdirectories
2014-07-21 01:10:11 -07:00
Janne Grunau
a9f3f5fadb
Revert "tiff: support reading gray+alpha at 8 bits"
...
This reverts commit b31d76e45f
as it
uses an unkown pixel format.
2014-07-21 08:35:32 +02:00
Michael Niedermayer
dc021a0218
Merge commit 'c39059bea3adebcd888571d1181db215eee54495'
...
* commit 'c39059bea3adebcd888571d1181db215eee54495':
h264: Fix direct temporal mvs for bottom-field-first poc order
Conflicts:
libavcodec/h264_direct.c
See: ebd1c505d2
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 02:16:13 +02:00
Michael Niedermayer
110420aac0
Merge commit '4de8b60684ce13dff3e3d372dae4f49b9e53f755'
...
* commit '4de8b60684ce13dff3e3d372dae4f49b9e53f755':
idct: Move arm-specific declarations to a header in the arm directory
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 01:56:22 +02:00
Ronald S. Bultje
c39059bea3
h264: Fix direct temporal mvs for bottom-field-first poc order
...
Such files can be created using the --bff x264 option.
Sample-Id: h264_direct_temporal_mvs_bff.mkv
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-07-20 23:32:13 +01:00
Carl Eugen Hoyos
b31d76e45f
tiff: support reading gray+alpha at 8 bits
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-07-20 23:32:13 +01:00
Diego Biurrun
4de8b60684
idct: Move arm-specific declarations to a header in the arm directory
2014-07-20 13:02:17 -07:00
Michael Niedermayer
02e3e3ea51
Merge commit '9f99a5f1d078721a30a76aec27c58805b7b87e58'
...
* commit '9f99a5f1d078721a30a76aec27c58805b7b87e58':
mpegencconetxt: Move rv10-specific orig_width/orig_height where they belong
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-20 20:32:24 +02:00
Nidhi Makhijani
9f99a5f1d0
mpegencconetxt: Move rv10-specific orig_width/orig_height where they belong
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-20 05:13:01 -07:00
Mickaël Raulet
950a4f8326
hevc: fix offset for sao temporary frame
...
fixes fate on alpha
cherry picked from commit 0a8ce1cbdaff7cd026bcf95ee3787bc7b4c063ee
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-20 02:48:53 +02:00
Michael Niedermayer
d13a731fc1
avcodec/hevc_ps: Check abs_delta_rps
...
Fixes integer overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 17:30:44 +02:00
Michael Niedermayer
ba80b8d29b
avcodec/hevc: check nb_cpb
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 16:51:05 +02:00
Christophe Gisquet
7a4a5515b0
hevc: use intreadwrite
...
When dealing with MVs, both components may be processed at a time.
On Win64, 560 to 539 cycles for derive_spatial_merge_candidates.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 15:27:08 +02:00
Christophe Gisquet
5e55c7e1bc
hevc: report more precise progress
...
There's a lag of one CTB line for SAO behind deblocking filter, except for
last line. However, once SAO has been completed on a line, all its pixels,
i.e. up to y+ctb_size are filtered and ready to be used as reference.
Without SAO, when deblocking filter finishes a CTB line, only the bottom
bottom 4 pixels may be filtered when next CTB is process by the deblocing.
The await_progess for hevc then checks whether the bottom pixels of a PU
requires access beyond that point, so the reporting should effectively
report up to the the above limits.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 14:20:10 +02:00
Michael Niedermayer
7bdbd2653f
Merge commit '1a583c0c60240adb8fa6620c6df33f1a0a0fe5d9'
...
* commit '1a583c0c60240adb8fa6620c6df33f1a0a0fe5d9':
fdct: Move ppc-specific declarations to a header in the ppc directory
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 14:10:25 +02:00
Michael Niedermayer
776647360d
Merge commit '5dcc201505f71b1e73e9eef12ce89d4eed252ad0'
...
* commit '5dcc201505f71b1e73e9eef12ce89d4eed252ad0':
simple_idct: Move x86-specific declarations to a header in the x86 directory
Conflicts:
libavcodec/x86/simple_idct.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 13:56:29 +02:00
Michael Niedermayer
6da96a9fc9
Merge commit '85cabb8d002f2cd100ced5cc17d87bfc9460d314'
...
* commit '85cabb8d002f2cd100ced5cc17d87bfc9460d314':
fdct: Move x86-specific declarations to a header in the x86 directory
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 13:45:59 +02:00
Diego Biurrun
1a583c0c60
fdct: Move ppc-specific declarations to a header in the ppc directory
2014-07-19 02:38:22 -07:00
Diego Biurrun
5dcc201505
simple_idct: Move x86-specific declarations to a header in the x86 directory
2014-07-19 02:33:36 -07:00
Diego Biurrun
85cabb8d00
fdct: Move x86-specific declarations to a header in the x86 directory
2014-07-19 02:25:59 -07:00
Michael Niedermayer
a86d527c8b
Merge commit 'e0a2e60c0a6cbcceef08e94af5081d2aa8e6a52f'
...
* commit 'e0a2e60c0a6cbcceef08e94af5081d2aa8e6a52f':
dct-test: Reuse enum idct_permutation_type instead of duplicating it
Conflicts:
libavcodec/dct-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 04:15:38 +02:00
Mickaël Raulet
e1e3ec9b02
hevc: fix transquant_bypass
...
cherry picked from commit 4a16cb2c70728a55d2fd723aff01b13ea259c4df
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 00:11:05 +02:00
Mickaël Raulet
fdb20db642
hevc/rext: put a warning log message instead of an error log message
...
cherry picked from commit 243cb99cff727d6a14c32cdff2748f6c255dbaf4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 23:47:06 +02:00
Michael Niedermayer
ffa0b510cd
avcodec/hevc: fix pict_type
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:59:03 +02:00
Mickaël Raulet
d249e6828e
hevc/sao: optimze sao implementation
...
- adding one extra pixel all around the frame
- do not copy when SAO is not applied
5% improvement
cherry picked from commit 10fc29fc19a12c4d8168fbe1a954b76386db12d0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:46:50 +02:00
Michael Niedermayer
2897447ddf
Merge commit '913fa85a2c1fcd71802f7decdef5f355e0d9c757'
...
* commit '913fa85a2c1fcd71802f7decdef5f355e0d9c757':
dct-test: Skip indirection for MMX IDCT permutation
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:45:32 +02:00
Michael Niedermayer
097bf834ba
Merge commit '9e0b29911f1f167381a7dbdfca68bf417b8c767b'
...
* commit '9e0b29911f1f167381a7dbdfca68bf417b8c767b':
x86: dnxhdenc: Eliminate some unnecessary ifdefs
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:33:24 +02:00
Michael Niedermayer
4b0fa45b84
Merge commit 'b4edbe9a0eb48423fbf249b0ca7fb62838bdb7f5'
...
* commit 'b4edbe9a0eb48423fbf249b0ca7fb62838bdb7f5':
libgsm: Split decoder and encoder
Conflicts:
libavcodec/libgsmenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:28:34 +02:00
Michael Niedermayer
521f569734
Merge commit '8b0dd4942aac320d1ca3c40fa7ea1be342c71273'
...
* commit '8b0dd4942aac320d1ca3c40fa7ea1be342c71273':
idctdsp: prettyprinting cosmetics
Conflicts:
libavcodec/idctdsp.c
libavcodec/ppc/idctdsp.c
libavcodec/x86/idctdsp_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:16:04 +02:00
Diego Biurrun
e0a2e60c0a
dct-test: Reuse enum idct_permutation_type instead of duplicating it
2014-07-18 13:04:39 -07:00
Michael Niedermayer
42d326353c
Merge commit 'b4987f72197e0c62cf2633bf835a9c32d2a445ae'
...
* commit 'b4987f72197e0c62cf2633bf835a9c32d2a445ae':
idct: Convert IDCT permutation #defines to an enum
Conflicts:
libavcodec/idctdsp.c
libavcodec/x86/cavsdsp.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:01:17 +02:00
Michael Niedermayer
cff61d595e
Merge commit '24af1aa0f70362a66cda04c9d7cd012e019f5572'
...
* commit '24af1aa0f70362a66cda04c9d7cd012e019f5572':
fft: Convert FFT/MDCT permutation type #defines to enums
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 21:43:50 +02:00
Michael Niedermayer
29119aff6c
Merge commit '746ad4e0df7faf93329804e412ec53c1d929a75b'
...
* commit '746ad4e0df7faf93329804e412ec53c1d929a75b':
dct-test: Improve CPU flags struct member name
Conflicts:
libavcodec/dct-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 21:36:46 +02:00
Michael Niedermayer
2dbda9378c
Merge commit 'cb44b21da1f59923be577f08c267ec270529be97'
...
* commit 'cb44b21da1f59923be577f08c267ec270529be97':
dct-test: Move cpu_flags variable out of global scope
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 21:30:25 +02:00
Carl Eugen Hoyos
5dcd43cd86
Fix make checkheaders for libavcodec/proresdsp.h.
2014-07-18 19:05:07 +02:00
Diego Biurrun
913fa85a2c
dct-test: Skip indirection for MMX IDCT permutation
2014-07-18 09:58:17 -07:00
Diego Biurrun
9e0b29911f
x86: dnxhdenc: Eliminate some unnecessary ifdefs
2014-07-18 09:58:17 -07:00
Nidhi Makhijani
b4edbe9a0e
libgsm: Split decoder and encoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-18 17:27:54 +02:00
Diego Biurrun
8b0dd4942a
idctdsp: prettyprinting cosmetics
2014-07-18 07:51:03 -07:00
Diego Biurrun
b4987f7219
idct: Convert IDCT permutation #defines to an enum
...
Also rename the enum values to be consistent with other DCT permutations.
2014-07-18 07:51:03 -07:00
Diego Biurrun
24af1aa0f7
fft: Convert FFT/MDCT permutation type #defines to enums
2014-07-18 07:29:13 -07:00
Diego Biurrun
746ad4e0df
dct-test: Improve CPU flags struct member name
2014-07-18 06:14:43 -07:00
Diego Biurrun
cb44b21da1
dct-test: Move cpu_flags variable out of global scope
2014-07-18 06:14:42 -07:00
Timothy Gu
0035783488
smacker: remove dead code
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 13:31:19 +02:00
Michael Niedermayer
d13effb0b4
Merge commit '7e18a727d2c2a19f22fcf68875d1b05fd2eafcef'
...
* commit '7e18a727d2c2a19f22fcf68875d1b05fd2eafcef':
arm: cosmetics: Consistently use lowercase for shift operators
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 13:17:29 +02:00
Michael Niedermayer
cd4497d8c5
Merge commit 'fe67f3fbb5f9f6a6b60f837f6bc5e087ac11f3bf'
...
* commit 'fe67f3fbb5f9f6a6b60f837f6bc5e087ac11f3bf':
arm: cosmetics: Fix a misaligned asm operand
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 12:44:03 +02:00
Martin Storsjö
7e18a727d2
arm: cosmetics: Consistently use lowercase for shift operators
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-18 11:17:40 +03:00
Martin Storsjö
fe67f3fbb5
arm: cosmetics: Fix a misaligned asm operand
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-18 11:17:35 +03:00
James Almer
277e5ca617
alpha/me_cmp: move code out of dsputil
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 05:15:17 +02:00
James Almer
95a2d705cd
alpha/idctdsp: move disabled cruft out of dsputil
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 05:15:05 +02:00
Michael Niedermayer
d5ba19e611
avcodec/a64multienc use av_freep()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 04:57:00 +02:00
Timothy Gu
cd3c85ac5c
a64multienc: remove dead assignment
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 04:56:18 +02:00
Michael Niedermayer
c27adb37ef
Merge commit '87552d54d3337c3241e8a9e1a05df16eaa821496'
...
* commit '87552d54d3337c3241e8a9e1a05df16eaa821496':
armv6: Accelerate ff_fft_calc for general case (nbits != 4)
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 03:12:02 +02:00
Michael Niedermayer
c527c14d63
avcodec/dvenc: clear all dsp contexts
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 00:48:34 +02:00
Ben Avison
87552d54d3
armv6: Accelerate ff_fft_calc for general case (nbits != 4)
...
The previous implementation targeted DTS Coherent Acoustics, which only
requires nbits == 4 (fft16()). This case was (and still is) linked directly
rather than being indirected through ff_fft_calc_vfp(), but now the full
range from radix-4 up to radix-65536 is available. This benefits other codecs
such as AAC and AC3.
The implementaion is based upon the C version, with each routine larger than
radix-16 calling a hierarchy of smaller FFT functions, then performing a
post-processing pass. This pass benefits a lot from loop unrolling to
counter the long pipelines in the VFP. A relaxed calling standard also
reduces the overhead of the call hierarchy, and avoiding the excessive
inlining performed by GCC probably helps with I-cache utilisation too.
I benchmarked the result by measuring the number of gperftools samples that
hit anywhere in the AAC decoder (starting from aac_decode_frame()) or
specifically in the FFT routines (fft4() to fft512() and pass()) for the
same sample AAC stream:
Before After
Mean StdDev Mean StdDev Confidence Change
Audio decode 2245.5 53.1 1599.6 43.8 100.0% +40.4%
FFT routines 940.6 22.0 348.1 20.8 100.0% +170.2%
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-18 01:34:23 +03:00
Ben Avison
5c22e8e4ad
armv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)
...
The previous implementation targeted DTS Coherent Acoustics, which only
requires mdct_bits == 6. This relatively small size lent itself to
unrolling the loops a small number of times, and encoding offsets
calculated at assembly time within the load/store instructions of each
iteration.
In the more general case (codecs such as AAC and AC3) much larger arrays
are used - mdct_bits == [8, 9, 11]. The old method does not scale for
these cases, so more integer registers are used with non-unrolled versions
of the loops (and with some stack spillage). The postrotation filter loop
is still unrolled by a factor of 2 to permit the double-buffering of some
VFP registers to facilitate overlap of neighbouring iterations.
I benchmarked the result by measuring the number of gperftools samples
that hit anywhere in the AAC decoder (starting from aac_decode_frame())
or specifically in ff_imdct_half_c / ff_imdct_half_vfp, for the same
example AAC stream:
Before After
Mean StdDev Mean StdDev Confidence Change
aac_decode_frame 2368.1 35.8 2117.2 35.3 100.0% +11.8%
ff_imdct_half_* 457.5 22.4 251.2 16.2 100.0% +82.1%
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-18 01:34:08 +03:00
Michael Niedermayer
162cffca80
avcodec/me_cmp: restore author attribution and copyrights
...
These where removed by libav in
See: git show -C 2d60444331
diff --git a/libavcodec/dsputil.c b/libavcodec/me_cmp.c
similarity index 98%
rename from libavcodec/dsputil.c
rename to libavcodec/me_cmp.c
index ba71a99..9fcc937 100644
--- a/libavcodec/dsputil.c
+++ b/libavcodec/me_cmp.c
@@ -1,8 +1,4 @@
/*
- * DSP utils
- * Copyright (c) 2000, 2001 Fabrice Bellard
- * Copyright (c) 2002-2004 Michael Niedermayer <michaelni@gmx.at>
- *
* This file is part of Libav.
*
* Libav is free software; you can redistribute it and/or
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 23:59:28 +02:00
Michael Niedermayer
3a2d1465c8
Merge commit '2d60444331fca1910510038dd3817bea885c2367'
...
* commit '2d60444331fca1910510038dd3817bea885c2367':
dsputil: Split motion estimation compare bits off into their own context
Conflicts:
configure
libavcodec/Makefile
libavcodec/arm/Makefile
libavcodec/dvenc.c
libavcodec/error_resilience.c
libavcodec/h264.h
libavcodec/h264_slice.c
libavcodec/me_cmp.c
libavcodec/me_cmp.h
libavcodec/motion_est.c
libavcodec/motion_est_template.c
libavcodec/mpeg4videoenc.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/x86/Makefile
libavcodec/x86/me_cmp_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 23:27:40 +02:00
Michael Niedermayer
d6676a1605
Merge commit 'c23ce454b3e33634a188d6facfd2b7182af5af93'
...
* commit 'c23ce454b3e33634a188d6facfd2b7182af5af93':
x86: dsputil: Coalesce all init files
Conflicts:
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputil_x86.h
libavcodec/x86/motion_est.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 22:07:52 +02:00
Diego Biurrun
2d60444331
dsputil: Split motion estimation compare bits off into their own context
2014-07-17 09:07:10 -07:00
Michael Niedermayer
dca22ab055
avcodec/resample: Use av_m/realloc_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 18:00:25 +02:00
Michael Niedermayer
ad516dd271
avcodec/resample2: Use av_malloc(z)_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 18:00:25 +02:00
Michael Niedermayer
5fce29ef29
Merge commit '2db953f84671997e936f91140ffb5143c1537844'
...
* commit '2db953f84671997e936f91140ffb5143c1537844':
h264: K&R formatting cosmetics
Conflicts:
libavcodec/h264.c
libavcodec/h264_direct.c
libavcodec/h264_slice.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 14:00:01 +02:00
Michael Niedermayer
b884599f6a
Merge commit 'a11ef610eec5241e226efbd1c5bb5eb45c88d2c2'
...
* commit 'a11ef610eec5241e226efbd1c5bb5eb45c88d2c2':
h264: Remove some commented-out, broken cruft
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 13:50:31 +02:00
Diego Biurrun
c23ce454b3
x86: dsputil: Coalesce all init files
...
This makes the init files match the structure of the dsputil split.
2014-07-17 03:32:56 -07:00
Luca Barbato
2db953f846
h264: K&R formatting cosmetics
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-07-17 03:05:24 -07:00
Diego Biurrun
a11ef610ee
h264: Remove some commented-out, broken cruft
2014-07-16 12:26:34 -07:00
Michael Niedermayer
a3f752bcee
avcodec/snow: remove unused variables
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 21:24:11 +02:00
Timothy Gu
1b03448385
aaccoder: remove unused assignment
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 20:55:24 +02:00
Michael Niedermayer
21dfabfa64
Merge commit 'adff0a8166345bb9513f0f658043fb6387e90122'
...
* commit 'adff0a8166345bb9513f0f658043fb6387e90122':
arm: dsputil: Coalesce all init files
Conflicts:
libavcodec/arm/Makefile
libavcodec/arm/dsputil_arm.h
libavcodec/arm/dsputil_init_arm.c
libavcodec/arm/dsputil_init_armv6.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 20:09:25 +02:00
Diego Biurrun
adff0a8166
arm: dsputil: Coalesce all init files
2014-07-16 06:18:23 -07:00
Timothy Gu
9bc0410e4f
vp9: remove unused assignment
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Reviewed-by: BBB
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 14:38:42 +02:00
Timothy Gu
ea6178fff8
get_bits: remove unused assignment
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 14:27:45 +02:00
Michael Niedermayer
aa1d096d02
avcodec/snow: only allocate space for edges when encoding
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 04:57:42 +02:00
Michael Niedermayer
8156e036e5
avcodec/snowdec: remove mpegvideoencdsp dependency
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 04:20:59 +02:00
James Almer
b67a0e99ee
diracdec: don't call ff_emulated_edge_mc_8 directly
...
Use the videodsp function pointer instead.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 03:53:49 +02:00
Michael Niedermayer
f00bb086cb
Merge commit '14b4e64eabc84c5a5e57c8ccc56bbeb95380823b'
...
* commit '14b4e64eabc84c5a5e57c8ccc56bbeb95380823b':
g2meet: allow size changes within original sizes
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 03:40:51 +02:00
Vittorio Giovara
14b4e64eab
g2meet: allow size changes within original sizes
2014-07-15 20:08:16 -04:00
Michael Niedermayer
cf92cc8751
avcodec/hevc: clear HEVClcList[i] on allocation
...
Fixes fate failure with --enable-memory-poisoning && make THREAD_TYPE=slice THREADS=7 fate-hevc-conformance-ENTP_C_Qualcomm_1
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 01:34:57 +02:00
James Almer
ad24256e7e
diracdec: remove unused dsputil context
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 00:11:18 +02:00
Michael Niedermayer
880dbe43ca
avcodec/hevc: treat current_sps like sps_list
...
This simplifies the management of current_sps
Fixes Ticket3458
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 21:49:56 +02:00
Michael Niedermayer
0fc2045d5f
avcodec/hevc_ps: prevent stale pointer in malloc failure case
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 21:49:56 +02:00
Michael Niedermayer
5bda0467d2
avcodec/mpegvideo_enc: make edge for interlaced mpeg2 encoding smaller
...
Fixes segfault
the size can probably be reduced further for the mpeg2 case
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 19:56:24 +02:00
Michael Niedermayer
339d8fb353
avcodec/mpegvideo_enc: check intra dc precission
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 19:56:23 +02:00
Michael Niedermayer
97f86cd976
avcodec/mpegvideo_enc: workaround applications specifying intra dc level based on 8 and othes based on 0bit
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 19:56:22 +02:00
Michael Niedermayer
8a91cf857b
avcodec/options_table: add liberal limits to intra dc precission
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 19:56:21 +02:00
Michael Niedermayer
19e5114eaa
avcodec/mpegvideo_enc: return proper error instead of failing assertion when max rate is not set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 19:56:19 +02:00
Mickaël Raulet
453f8eaee2
hevc/rext: add support for Range extension tools
...
SPS features/flags:
- transform_skip_rotation_enabled_flag
- transform_skip_context_enabled_flag
- implicit_rdpcm_enabled_flag
- explicit_rdpcm_enabled_flag
- intra_smoothing_disabled_flag
- persistent_rice_adaptation_enabled_flag
PPS features/flags:
- log2_max_transform_skip_block_size
- cross_component_prediction_enabled_flag
- chroma_qp_offset_list_enabled_flag
- diff_cu_chroma_qp_offset_depth
- chroma_qp_offset_list_len_minus1
- cb_qp_offset_list
- cr_qp_offset_list
- log2_sao_offset_scale_luma
- log2_sao_offset_scale_chroma
(cherry picked from commit 005294c5b939a23099871c6130c8a7cc331f73ee)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 14:08:20 +02:00
Mickaël Raulet
5a41999d81
hevc/rext: basic infrastructure for supporting range extension
...
- support for 4:2:2 and 4:4:4 up to 12 bits
- add a new profile for range extension
(cherry picked from commit d3c067fa65bbc871758d28aa07f54123430ca346)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 13:47:35 +02:00
Mickaël Raulet
250430bf28
hevc: separate residu and prediction (needed for Range Extension)
...
(cherry picked from commit 6b3856ef57d66f2e59ee61fd2eb5f83b6d0d7d4a)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 13:37:27 +02:00
Mickaël Raulet
255086a7e0
hevc: use local variable for split_cu_flag
...
(cherry picked from commit ee71e9e9c12fc47856c452efb278f9f593a923ee)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 13:31:40 +02:00
Mickaël Raulet
f5beda3bfd
hevc: move restore_tqb where it should be.
...
(cherry picked from commit 8fafc96a9805d11bfe32537c8f78a294a5844065)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 13:25:55 +02:00
Mickaël Raulet
1241eb8870
hevc: simplify SAO computation, delay from one row its computation
...
(cherry picked from commit f2c5f647cec786df26f442a85e6d685a131a50c9)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 13:11:33 +02:00
Mickaël Raulet
c4058b7288
hevc/cabac: add new context for new syntax elements related to Rext(cherry picked from commit 6d71e2394f52679cfc8b86fb5880f89e6bd311d4)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 00:00:45 +02:00
Mickaël Raulet
07b91b8d62
hevc: cleaning up, remove unused constants(cherry picked from commit 7eed32d076c57aa03011d65a64903e8bdb633978)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-14 23:46:36 +02:00
Michael Niedermayer
cc3e7a4c3d
Merge commit 'acf91215c74a91eb3b86af01dcb1d3c78d0e2310'
...
* commit 'acf91215c74a91eb3b86af01dcb1d3c78d0e2310':
x86: dsputil: Avoid pointless CONFIG_ENCODERS indirection
Conflicts:
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-13 21:51:20 +02:00
Michael Niedermayer
98227ba5fa
Merge commit 'a8552ee3eb335d2fd2d6c99363367a6090298f78'
...
* commit 'a8552ee3eb335d2fd2d6c99363367a6090298f78':
ppc: dsputil: Coalesce all init files
Conflicts:
libavcodec/ppc/dsputil_altivec.h
libavcodec/ppc/dsputil_ppc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-13 21:08:28 +02:00
Diego Biurrun
acf91215c7
x86: dsputil: Avoid pointless CONFIG_ENCODERS indirection
...
The remaining dsputil bits are encoding-specific anyway.
2014-07-13 07:01:05 -07:00
Ben Avison
42c1cc35b7
armv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)
...
The previous implementation targeted DTS Coherent Acoustics, which only
requires mdct_bits == 6. This relatively small size lent itself to
unrolling the loops a small number of times, and encoding offsets
calculated at assembly time within the load/store instructions of each
iteration.
In the more general case (codecs such as AAC and AC3) much larger arrays
are used - mdct_bits == [8, 9, 11]. The old method does not scale for
these cases, so more integer registers are used with non-unrolled versions
of the loops (and with some stack spillage). The postrotation filter loop
is still unrolled by a factor of 2 to permit the double-buffering of some
VFP registers to facilitate overlap of neighbouring iterations.
I benchmarked the result by measuring the number of gperftools samples
that hit anywhere in the AAC decoder (starting from aac_decode_frame())
or specifically in ff_imdct_half_c / ff_imdct_half_vfp, for the same
example AAC stream:
Before After
Mean StdDev Mean StdDev Confidence Change
aac_decode_frame 2368.1 35.8 2117.2 35.3 100.0% +11.8%
ff_imdct_half_* 457.5 22.4 251.2 16.2 100.0% +82.1%
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-13 15:17:04 +02:00
James Almer
276bef5340
x86/hevc_deblock: add ff_hevc_[hv]_loop_filter_luma_{8, 10}_sse2
...
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Kieran Kunhya <kierank@obe.tv>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-13 13:48:31 +02:00
Ronald S. Bultje
ebd1c505d2
h264: fix direct temporal mvs for bottom-field-first poc order.
...
Fixes http://forum.doom9.org/showthread.php?t=170867 .
Fixes: corrupt-1677.mkv
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-13 13:26:19 +02:00
Diego Biurrun
a8552ee3eb
ppc: dsputil: Coalesce all init files
2014-07-13 04:10:13 -07:00
Andreas Cadhalpun
39a6e02fd4
fix spelling errors
...
Reviewed-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 22:33:27 +02:00
Michael Niedermayer
1db641cbd2
avcodec/hevc: more clearing to avoid stale pointers
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 21:31:37 +02:00
Michael Niedermayer
ccd6911c18
avcodec/hevc_ps: do not loose all reference to pointers still in use
...
Fixes leaving a pointer to unreferenced memory
Fixes Ticket 3115
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 21:03:09 +02:00
James Almer
123649dd19
x86/dsputilenc: remove some empty if statements
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 15:04:58 +02:00
Michael Niedermayer
66558fe715
avcodec/hevc_ps: Check layer_id_included_flags count
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 07:46:08 +02:00
Michael Niedermayer
6935ae22ed
avcodec/hevc_ps: more complete check for vps_max_dec_pic_buffering
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 07:46:08 +02:00
Michael Niedermayer
5d88e40093
avcodec/hevc: check slice_header_extension data length
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 07:46:07 +02:00
Michael Niedermayer
c79acacd2e
avcodec/hevc: fix nb_sh / nb_sps check
...
fixes integer overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 04:39:01 +02:00
Michael Niedermayer
2cebd17e3f
avcodec/pgssubdec: Fix input pts
...
Fixes part of Ticket2516
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 01:09:51 +02:00
Michael Niedermayer
b8cdf04726
Merge commit '1173320249745eab01c901a39054fc0fced33c87'
...
* commit '1173320249745eab01c901a39054fc0fced33c87':
dsputil: Drop unused bit_depth parameter from all init functions
Conflicts:
libavcodec/dsputil.c
libavcodec/dsputil.h
libavcodec/ppc/dsputil_ppc.c
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-11 20:29:40 +02:00
Diego Biurrun
1173320249
dsputil: Drop unused bit_depth parameter from all init functions
2014-07-11 06:38:26 -07:00
Michael Niedermayer
e1f4397e74
Merge commit '458e7c94830d1522997e33a0b5e87bd709e8a349'
...
* commit '458e7c94830d1522997e33a0b5e87bd709e8a349':
hevc: implement pic_output_flag handling
Conflicts:
libavcodec/hevc.c
libavcodec/hevc_refs.c
See: 2eddf3a6ef
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-11 12:21:41 +02:00
Michael Niedermayer
aa56c37c8a
Merge commit 'f43789b76e661acd93c21664678f140e53cfa1fa'
...
* commit 'f43789b76e661acd93c21664678f140e53cfa1fa':
hevc: set the keyframe flag on output frames
See: e2760de605
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-11 12:16:24 +02:00
Gildas Cocherel
458e7c9483
hevc: implement pic_output_flag handling
...
Sample-Id: OPFLAG_B_Qualcomm_1.bit, OPFLAG_C_Qualcomm_1.bit
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-07-11 08:52:54 +00:00
Mickaël Raulet
f43789b76e
hevc: set the keyframe flag on output frames
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-07-11 08:43:01 +00:00
Mickaël Raulet
1493b237bd
hevc: Replace nal type chek with equivalent IS_IRAP macro
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-07-11 08:41:32 +00:00
Anton Khirnov
17e9d52c8c
hevc_ps: remove a write-only variable
2014-07-11 08:38:51 +00:00
Michael Niedermayer
9195c26d45
avcodec/rv34: fix crash while seeking on very damaged file
...
Fixes null pointer dereference
Fixes Ticket2093
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-11 05:34:13 +02:00
Christophe Gisquet
4576eff05d
hevc: derive partial merge list
...
The merge list only needs to be derived up to the merge index.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 17:27:56 +02:00
Christophe Gisquet
bbeaae96eb
hevc: derive partially amvp list
...
When the candidate has been found, no need to derive others.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 15:35:15 +02:00
Clément Bœsch
7e7168b82d
Fix 2 coeffecient typo
2014-07-10 15:29:54 +02:00
Christophe Gisquet
eca1957c4c
hevc: reorder loops
...
iterate over memory in a more continuous order
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 14:46:49 +02:00
Christophe Gisquet
2e471e4703
hevc: simplify rounding
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 14:32:18 +02:00
Carl Eugen Hoyos
a1e3ea475a
Fix compilation with --disable-everything.
2014-07-10 08:26:59 +02:00
James Almer
2571e8fe37
alpha/pixblockdsp: move code out of dsputil
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 04:01:03 +02:00
Michael Niedermayer
2d5e9451de
Merge commit 'f46bb608d9d76c543e4929dc8cffe36b84bd789e'
...
* commit 'f46bb608d9d76c543e4929dc8cffe36b84bd789e':
dsputil: Split off pixel block routines into their own context
Conflicts:
configure
libavcodec/dsputil.c
libavcodec/mpegvideo_enc.c
libavcodec/pixblockdsp_template.c
libavcodec/x86/dsputilenc.asm
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 01:22:14 +02:00
Michael Niedermayer
92c29914de
avcodec/hevc_sei: factor return 1 out of if/else chain
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 00:19:49 +02:00
Michael Niedermayer
efc66d69bf
Merge commit '0569a7e0bd2006d9a5248d17a1f4bf3ca654ae50'
...
* commit '0569a7e0bd2006d9a5248d17a1f4bf3ca654ae50':
hevc: parse display orientation SEI message
Conflicts:
libavcodec/hevc.h
libavcodec/hevc_sei.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 00:19:43 +02:00
Michael Niedermayer
cd0dc88751
Merge commit '18e3d61e9e3b52c177aa7a1f2a054a8a753e1b09'
...
* commit '18e3d61e9e3b52c177aa7a1f2a054a8a753e1b09':
h264: parse display orientation SEI message
Conflicts:
libavcodec/h264.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 00:07:04 +02:00
Michael Niedermayer
e932ae5940
Merge commit 'd5cf5afabbf43f00283e70b12afbe1da030d85b6'
...
* commit 'd5cf5afabbf43f00283e70b12afbe1da030d85b6':
adxdec: get rid of an avpriv function
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 22:38:13 +02:00
Michael Niedermayer
1b58f13761
Merge commit 'f6ee61fb05482c617f5deee29a190d8ff483b3d1'
...
* commit 'f6ee61fb05482c617f5deee29a190d8ff483b3d1':
lavc: export DV profile API used by muxer/demuxer as public
Conflicts:
configure
doc/APIchanges
libavcodec/Makefile
libavcodec/dv_profile.c
libavcodec/dv_profile.h
libavcodec/version.h
libavformat/dvenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 22:27:07 +02:00
Michael Niedermayer
76a35f7830
avcodec/roqvideoenc: Print the correct max resolution
...
Thanks-to: Vitor Sessak <vitor1001@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 21:20:31 +02:00
Michael Niedermayer
9af59db6ec
avcodec/roqvideoenc: More verbose warning about no power of 2 dimensions
...
Thanks-to: Vitor Sessak <vitor1001@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 21:19:55 +02:00
Oliver Fromme
a32dcaaaf8
avcodec/dvdsubenc: Add dvdsub workaround for some players
...
The issue affects dvdsub subtitles (a.k.a. VOBSUB).
Some players -- in particular hardware players -- cut off
the lowest row of pixels if the number of rows in the subtitle
is odd.
The patch below implements a work-around for that. If the
number of rows is odd, it is simply rounded up to an even
number, adding an invisible (i.e. fully transparent) row.
The work-around can be enabled or disabled with a new
option -even_rows_fix. The default is disabled, so there
is no change of behaviour for users who don't care about it.
The overhead for the fix is low, and in many cases even zero:
For subtitles with an odd number of rows (i.e. in 50% of
cases on average), the size increases by two bytes because
a fully transparent row is encoded as 0x00 0x00. However,
in the VOBSUB standard, all data packets are padded to 2KB
anyway, so in most cases the additional bytes just use some
part of the padding, so there is no overhead. Only in the
rare case that the 2KB boundary is hit (0.1% chance), a full
2KB block is added.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 20:11:36 +02:00
Michael Niedermayer
e36916a63f
avcodec/pthread_frame: fix setting hwaccel with threads and get_format()
...
Fixes assertion failure with vdpau and vlc
Fixes Ticket3742
Tested-by: oromit
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 19:58:58 +02:00
Diego Biurrun
f46bb608d9
dsputil: Split off pixel block routines into their own context
2014-07-09 08:05:26 -07:00
Vittorio Giovara
0569a7e0bd
hevc: parse display orientation SEI message
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-07-09 10:18:06 -04:00
Vittorio Giovara
18e3d61e9e
h264: parse display orientation SEI message
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-07-09 10:17:42 -04:00
Michael Niedermayer
f32c5d1a8d
avcodec/mpegvideo: clip mv visualization arrows so that their direction is maintained
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 16:04:32 +02:00
Anton Khirnov
d5cf5afabb
adxdec: get rid of an avpriv function
...
The only thing the demuxer needs is the sample rate to set the timebase,
which can be simply read with AV_RB32.
2014-07-09 13:37:18 +00:00
Anton Khirnov
f6ee61fb05
lavc: export DV profile API used by muxer/demuxer as public
2014-07-09 13:35:07 +00:00
Carl Eugen Hoyos
d6e7881c2e
Fix wmv1 encoding if all other msmpeg4-related encoders were disabled.
2014-07-09 08:51:17 +02:00
Carl Eugen Hoyos
e4dfc3f9b8
Fix wmv1 decoding if no other msmpeg4-related decoder was compiled.
2014-07-09 08:27:24 +02:00
Michael Niedermayer
c8b2cf4996
avcodec/mpegvideo: flip motion vector visualization for backward motion vectors
...
Also support changing arrow head/tail shape
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 03:07:25 +02:00
James Almer
2375b09473
alpha/idctdsp: move idct init code out of dsputil
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 22:19:38 +02:00
Michael Niedermayer
550bda741c
avcodec/alpha/dsputil_alpha: fix build
...
Disable moved functions to prevent build/test failure,
patch to update and re-enable them is welcome
volunteer to maintain the alpha code is welcome too
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 20:15:31 +02:00
Michael Niedermayer
7cb8f7ded4
avcodec/proresenc_anatoliy: check against maximum dimensions
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 18:03:11 +02:00
Michael Niedermayer
7c7441b37d
avcodec/roqvideoenc: check dimensions against maximum
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 17:33:39 +02:00
Michael Niedermayer
fe4c76b3d0
avcodec/roqvideoenc: fix infinite lambda increasing loop
...
The threshold was choosen so that no further size decrease happened with larger lambda
with the test video.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 17:09:56 +02:00
Michael Niedermayer
1f935c3d0b
Merge commit '79fce1ec8abd017593c003917fc123f7119a78d6'
...
* commit '79fce1ec8abd017593c003917fc123f7119a78d6':
arm: Avoid using the 'setend' instruction on ARMv7 and newer
Conflicts:
libavcodec/arm/h264dsp_init_arm.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 14:44:12 +02:00
Martin Storsjö
79fce1ec8a
arm: Avoid using the 'setend' instruction on ARMv7 and newer
...
This instruction is deprecated on ARMv8, and it is serializing on
some ARMv7 cores as well [1].
[1] http://article.gmane.org/gmane.linux.ports.arm.kernel/339293
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-08 12:09:09 +03:00
Michael Niedermayer
14e2406de7
Merge commit 'a9aee08d900f686e966c64afec5d88a7d9d130a3'
...
* commit 'a9aee08d900f686e966c64afec5d88a7d9d130a3':
dsputil: Split off FDCT bits into their own context
Conflicts:
configure
libavcodec/Makefile
libavcodec/asvenc.c
libavcodec/dnxhdenc.c
libavcodec/dsputil.c
libavcodec/mpegvideo.h
libavcodec/mpegvideo_enc.c
libavcodec/x86/Makefile
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 03:19:06 +02:00
Michael Niedermayer
5c7bf354dc
avcodec/crystalhd: Add #if HAVE_UNISTD_H around #include <unistd.h>
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 02:51:56 +02:00
Michael Niedermayer
39ea21713c
avcodec/libxvid: add HAVE_UNISTD_H around #include <unistd.h>
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 01:55:47 +02:00
Michael Niedermayer
242b3c292a
Merge commit '1e9a93bfca2c2f43a07e01f2ef9fd5cbafe6c22d'
...
* commit '1e9a93bfca2c2f43a07e01f2ef9fd5cbafe6c22d':
libfdk-aacdec: Decode the first AAC frame to reliably identify the bitstream
Conflicts:
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 23:16:59 +02:00
Michael Niedermayer
154954c2ac
avcodec/vmdvideo: remove unneeded include
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 22:57:36 +02:00
Diego Biurrun
a9aee08d90
dsputil: Split off FDCT bits into their own context
2014-07-07 12:28:45 -07:00
Omer Osman
1e9a93bfca
libfdk-aacdec: Decode the first AAC frame to reliably identify the bitstream
...
For implicit signaling cases (as possible for Spectral Band Replication
and Parametric Stereo Tools), the decoder must decode the first frame to
correctly identify the stream configuration (as called from
avformat_find_stream_info). The mechanism for this is built-in and only
requires adding CODEC_CAP_CHANNEL_CONF to the libfdk-aacdec AVCodec
struct.
Signed-off-by: Omer Osman <omer.osman@iis.fraunhofer.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-07 22:09:15 +03:00
Michael Niedermayer
06dae71d47
Merge commit '246f869590b8c7313d26e1c2ef56db01f6fd2503'
...
* commit '246f869590b8c7313d26e1c2ef56db01f6fd2503':
vmd: Split audio and video decoder
Conflicts:
libavcodec/vmdvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 18:06:39 +02:00
Nidhi Makhijani
246f869590
vmd: Split audio and video decoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-07 07:45:00 -07:00
Michael Niedermayer
5320b34b98
avcodec/cljrdec: remove unneeded include
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 16:31:51 +02:00
Michael Niedermayer
3790801f9c
Merge commit '3c650efb81aaa3b395ba4606ee68a47ee4efb57b'
...
* commit '3c650efb81aaa3b395ba4606ee68a47ee4efb57b':
dsputil: Move draw_edges() to mpegvideoencdsp
Conflicts:
libavcodec/mpegvideo_enc.c
libavcodec/x86/Makefile
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputil_mmx.c
libavcodec/x86/dsputil_x86.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 16:17:27 +02:00
Michael Niedermayer
020865f557
Merge commit 'c166148409fe8f0dbccef2fe684286a40ba1e37d'
...
* commit 'c166148409fe8f0dbccef2fe684286a40ba1e37d':
dsputil: Move pix_sum, pix_norm1, shrink function pointers to mpegvideoenc
Conflicts:
libavcodec/dsputil.c
libavcodec/mpegvideo_enc.c
libavcodec/x86/dsputilenc.asm
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 15:36:58 +02:00
Michael Niedermayer
462c6cdb8e
Merge commit '8d686ca59db14900ad5c12b547fb8a7afc8b0b94'
...
* commit '8d686ca59db14900ad5c12b547fb8a7afc8b0b94':
dsputil: Split off *_8x8basis to a separate context
Conflicts:
libavcodec/dsputil.c
libavcodec/mpegvideo_enc.c
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 15:08:55 +02:00
Michael Niedermayer
8324bd5186
avcodec/mpegvideo_enc: fix b frame strategy 2
...
Fixes Ticket3757
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 14:59:37 +02:00
Clément Bœsch
7ac7e8793d
avcodec/mpegvideo: small indent fix in vismv code
2014-07-07 11:26:26 +02:00
Clément Bœsch
5f4dbf3c10
avcodec: make vismv option as flag types
...
This allows for example -vismv pf+bf+bb instead of -vismv 7.
2014-07-07 10:24:18 +02:00
Eric Lasota
586406980f
avcodec/roqvideodec: set JPEG output color range
...
Signed-off-by: Eric Lasota <ejlasota@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 03:06:00 +02:00
Michael Niedermayer
28c0319517
Merge commit 'd6902070c52151ec1e8154ce9b22283a1d0bc192'
...
* commit 'd6902070c52151ec1e8154ce9b22283a1d0bc192':
dsicin: Split audio and video decoder
Conflicts:
libavcodec/Makefile
libavcodec/dsicinvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 00:04:22 +02:00
Diego Biurrun
3c650efb81
dsputil: Move draw_edges() to mpegvideoencdsp
2014-07-06 14:48:50 -07:00
Michael Niedermayer
96761e9306
Merge commit '2fc85fe96e7e0e5fc433b98eacebf4d3511d2d58'
...
* commit '2fc85fe96e7e0e5fc433b98eacebf4d3511d2d58':
bmv: Split audio and video decoder
Conflicts:
libavcodec/bmvvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 23:43:37 +02:00
Eric Lasota
8be23d424f
avcodec/roqvideo: use JPEG color range
...
Signed-off-by: ejlasota <ejlasota@gmail.com>
Also update fate test checksums
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 23:34:58 +02:00
Diego Biurrun
c166148409
dsputil: Move pix_sum, pix_norm1, shrink function pointers to mpegvideoenc
2014-07-06 14:26:53 -07:00
Diego Biurrun
8d686ca59d
dsputil: Split off *_8x8basis to a separate context
2014-07-06 13:09:24 -07:00
James Almer
195f7bd23d
x86/svq1enc: use unaligned mov on SSE2
...
Might fix fate failures on some systems
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 20:27:57 +02:00
Nidhi Makhijani
d6902070c5
dsicin: Split audio and video decoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-06 11:27:34 -07:00
Michael Niedermayer
0d1994ee3c
Merge commit 'b0633f83f277c05bf1f617a99c7aedd2db8306e3'
...
* commit 'b0633f83f277c05bf1f617a99c7aedd2db8306e3':
paf: split audio and video decoder
Conflicts:
libavcodec/pafvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 20:11:40 +02:00
Michael Niedermayer
225c5cc815
Merge commit '373a6dda5422186bc057297342a9e559a564595e'
...
* commit '373a6dda5422186bc057297342a9e559a564595e':
cljr: split decoder and encoder
Conflicts:
libavcodec/Makefile
libavcodec/cljrdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 20:00:59 +02:00
Nidhi Makhijani
2fc85fe96e
bmv: Split audio and video decoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-06 10:58:43 -07:00
Nidhi Makhijani
b0633f83f2
paf: split audio and video decoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-06 09:36:17 -07:00
Nidhi Makhijani
373a6dda54
cljr: split decoder and encoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-06 09:28:20 -07:00
Michael Niedermayer
02729f7a5a
avcodec/mjpegenc_common: Restore removed copyright statements
...
These where removed by libav while spliting the file in adcb8392c9
See: de6d9b6404
See: 723106b279
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 03:39:39 +02:00
Michael Niedermayer
26b9f5bcdb
avcodec/Makefile: add libutvideo.h to SKIPHEADERS
...
libutvideo.h is not a C header and thus fails building as a C file
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 01:38:55 +02:00
Timothy Gu
baef3ba727
avcodec/old_codec_ids: workaround doxygen inclusion bug
...
Currently, http://ffmpeg.org/doxygen/trunk/group__preproc__misc.html is
broken, because of inclusion bug in Doxygen's preprocessing mode. The
now-unincluded header file is included anyway in avcodec.h, the only
place where it is used, so there should be no problem removing it.
One concern is API-compatibility, because old_codec_ids.h is a public
header. However, IMO this is not a problem because currently users
cannot include only this header and not `avcodec.h` anyway, because of
missing AV_CODEC_ID_NONE symbol.
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 00:32:29 +02:00
James Almer
dad31083ae
x86/svq1enc: port ssd_int8_vs_int16 to yasm
...
Also add an SSE2 version
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 21:43:40 +02:00
Michael Niedermayer
19b79c1429
Merge commit 'b0de1c766329dd8c9960ad1722e2f653160abc1b'
...
* commit 'b0de1c766329dd8c9960ad1722e2f653160abc1b':
x86: build: Only compile FDCT code if MMX is enabled
Conflicts:
libavcodec/x86/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 20:12:31 +02:00
Michael Niedermayer
5036c8b17b
Merge commit '12f129e545e5a5844b6ad7f3eb6a438015cad8bc'
...
* commit '12f129e545e5a5844b6ad7f3eb6a438015cad8bc':
x86: Unconditionally compile blockdsp and svq1enc init files
Conflicts:
libavcodec/x86/Makefile
blockdsp_mmx is renamed to blockdsp_init as we already have a blockdsp file
and _init is how all other such files are called
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 19:50:05 +02:00
Michael Niedermayer
6bef3e55bd
Merge commit '009331303a6462d07cbe94aef9c446f1a1695519'
...
* commit '009331303a6462d07cbe94aef9c446f1a1695519':
x86: huffyuvdsp: Move inline assembly to init file
Conflicts:
libavcodec/x86/Makefile
libavcodec/x86/huffyuvdsp.h
libavcodec/x86/huffyuvdsp_init.c
libavcodec/x86/huffyuvdsp_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 19:11:26 +02:00
Diego Biurrun
b0de1c7663
x86: build: Only compile FDCT code if MMX is enabled
...
All other files containing purely inline assembly are treated the same way.
2014-07-05 04:18:34 -07:00
Diego Biurrun
12f129e545
x86: Unconditionally compile blockdsp and svq1enc init files
...
This avoids a link failure with MMX disabled as the init functions
are referenced unconditionally.
2014-07-05 04:18:34 -07:00
Diego Biurrun
009331303a
x86: huffyuvdsp: Move inline assembly to init file
...
This avoids a link failure with MMX disabled as now code and
initialization are compiled under the same condition.
2014-07-05 04:18:34 -07:00
Carl Eugen Hoyos
d3e51b4118
Fix standalone compilation of the amv encoder.
2014-07-05 12:55:14 +02:00
Michael Niedermayer
d5818c37f3
Merge remote-tracking branch 'cehoyos/master'
...
* cehoyos/master:
Use os/2 palette even if it contains less than 256 entries.
Assume that old bmps do not contain transparency information.
Do not detect jp2 images as mov files.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 04:12:12 +02:00
Michael Niedermayer
4216a5082b
Merge commit 'e0bfe34ea8ccf333ec5b17961fd58eb575e74f8b'
...
* commit 'e0bfe34ea8ccf333ec5b17961fd58eb575e74f8b':
libfdk-aacdec: Reduce the default decoder delay by one frame
Conflicts:
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 03:41:35 +02:00
Carl Eugen Hoyos
810294ce3d
Use os/2 palette even if it contains less than 256 entries.
...
Fixes 11Bios13.bmp.
2014-07-05 02:11:17 +02:00
Carl Eugen Hoyos
8f6a04a279
Assume that old bmps do not contain transparency information.
...
Fixes MK50TEMP.BMP that has its RGB channel bit masks on the actual image.
2014-07-05 02:11:17 +02:00
Omer Osman
e0bfe34ea8
libfdk-aacdec: Reduce the default decoder delay by one frame
...
The default error concealment method if none is set via
aacDecoder_SetParam(AAC_CONCEAL_METHOD) is set in
CConcealment_InitCommonData within the fdk-aac library
and is set to Energy Interpolation. This method requires one frame
delay to the output. To reduce the default decoder output delay and
avoid missing the last frame in file based decoding, use Noise
Substitution as the default concealment method.
Signed-off-by: Omer Osman <omer.osman@iis.fraunhofer.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-05 00:47:36 +03:00
Michael Niedermayer
2d15554850
avcodec/mlp_parser: check ff_combine_frame() return code
...
Fixes CID602338
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 20:29:40 +02:00
Michael Niedermayer
bd8b6ed96d
avcodec/bmp: fix integer overflow in checking header sizes
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 15:02:08 +02:00
Michael Niedermayer
5c65aed7fd
Merge commit '391ecc961ced2bde7aecb3053ac35191f838fae8'
...
* commit '391ecc961ced2bde7aecb3053ac35191f838fae8':
x86: mpegvideoenc: Change SIMD optimization name suffixes to lowercase
Conflicts:
libavcodec/x86/mpegvideoenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 01:17:39 +02:00
Michael Niedermayer
cf8c44fc47
Merge commit 'c6698dfe7cdbc7634f33245875488ed3fa4a8ced'
...
* commit 'c6698dfe7cdbc7634f33245875488ed3fa4a8ced':
webpdec: Fix decoding of the huffman group indices.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 01:08:57 +02:00
Oliver Fromme
d73823286d
avcodec/dvdsubdec: fix alpha in debuging code
...
improve the debugging function for saving subtitles
to PPM files: Actually use the alpha channel.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 00:35:21 +02:00
Oliver Fromme
3f0a3e9e12
avcodec/dvdsubdec: Fix off-by-one error
...
Fix an off-by-one error that causes the height of decoded
subtitles to be too small, thus cutting off the lowest row
of pixels.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 00:32:43 +02:00
Diego Biurrun
391ecc961c
x86: mpegvideoenc: Change SIMD optimization name suffixes to lowercase
2014-07-03 13:41:41 -07:00
Justin Ruggles
c6698dfe7c
webpdec: Fix decoding of the huffman group indices.
...
Per the specification, "The red and green components of a pixel
define the meta Huffman code used in a particular block of the ARGB
image."
2014-07-03 15:29:01 -04:00
Michael Niedermayer
982920cfaa
Merge commit 'df949b645b12d62bb4da56d629a887c81f67f2e5'
...
* commit 'df949b645b12d62bb4da56d629a887c81f67f2e5':
hevc: Use the local context variable when needed
Conflicts:
libavcodec/hevc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-03 13:19:34 +02:00
Luca Barbato
df949b645b
hevc: Use the local context variable when needed
2014-07-02 23:30:49 -04:00
Michael Niedermayer
ce6a1ff2a1
avcodec/on2avc: Fix out of array access
...
Fixes CID1206648
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 20:22:12 +02:00
Anshul Maheshwari
43d70a776d
avcodec: Updated comment for sub param
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 19:47:14 +02:00
Anshul Maheshwari
7d1898ebcc
avcodec/dvbsubdec: removed unnecessary null check for subtitle
...
In refrence to coverity defect 1224278
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 19:47:14 +02:00
Michael Niedermayer
5307fa00a4
avcodec/dvdec: remove redundant null check
...
Fixes CID700682 again
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 16:37:38 +02:00
Michael Niedermayer
d266ecff4b
avcodec/bitstream: remove trivial assert
...
Fixed CID1224273
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 16:25:40 +02:00
James Almer
a441a2437b
x86: rename dsputil.asm to idctdsp.asm
...
Its only function is no longer part of dsputil.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 01:08:04 +02:00
Michael Niedermayer
ef7e8425e8
avcodec/mjpegdec: factorize some parts of the pix_fmt_id switch()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 23:28:18 +02:00
Michael Niedermayer
784e1cf76b
avcodec/mjpegdec: handle luma upscale detection generically
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 23:26:19 +02:00
Michael Niedermayer
64d98dadc7
avcodec/mjpegdec: set upscale_h/upscale_v using generic code instead of hardcoding a list
...
Some code is left to handle corner cases
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 22:54:57 +02:00
Michael Niedermayer
7558e55345
avcodec/mjpegdec: Support pix_fmt_id==0x11222200
...
Fixes: 4858286_300.jpg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 22:12:20 +02:00
Michael Niedermayer
cd417d947e
avcodec/mjpegdec: fix width for non chroma in rescaling
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 22:09:19 +02:00
Michael Niedermayer
4e09300ffa
mjpegdec: Support pix_fmt_id == 0x22112200
...
Fixes 4780490_300.jpg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 21:47:54 +02:00
Diego Biurrun
d0449e7545
vaapi: Update idct_permutation location after dsputil/idctdsp split
2014-07-01 07:36:22 -07:00
Michael Niedermayer
8d0c7031a8
Merge commit '79793f833784121d574454af4871866576c0749d'
...
* commit '79793f833784121d574454af4871866576c0749d':
Update Fiona's name in copyright statements.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 15:43:40 +02:00
Michael Niedermayer
581b5f0b9b
Merge commit 'e3fcb14347466095839c2a3c47ebecff02da891e'
...
* commit 'e3fcb14347466095839c2a3c47ebecff02da891e':
dsputil: Split off IDCT bits into their own context
Conflicts:
configure
libavcodec/aic.c
libavcodec/arm/Makefile
libavcodec/arm/dsputil_init_arm.c
libavcodec/arm/dsputil_init_armv6.c
libavcodec/asvdec.c
libavcodec/dnxhdenc.c
libavcodec/dsputil.c
libavcodec/dvdec.c
libavcodec/dxva2_mpeg2.c
libavcodec/intrax8.c
libavcodec/mdec.c
libavcodec/mjpegdec.c
libavcodec/mjpegenc_common.h
libavcodec/mpegvideo.c
libavcodec/ppc/dsputil_altivec.h
libavcodec/ppc/dsputil_ppc.c
libavcodec/ppc/idctdsp.c
libavcodec/x86/Makefile
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputil_mmx.c
libavcodec/x86/dsputil_x86.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 15:22:11 +02:00
Michael Niedermayer
909f53f2b2
Merge commit 'adcb8392c9b185fd8a91a95fa256d15ab1432a30'
...
* commit 'adcb8392c9b185fd8a91a95fa256d15ab1432a30':
mjpeg: Split off bits shared by MJPEG and LJPEG encoders
Conflicts:
libavcodec/mjpegenc.c
libavcodec/mjpegenc.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 13:33:11 +02:00
Diego Biurrun
79793f8337
Update Fiona's name in copyright statements.
2014-07-01 03:26:51 -07:00
Michael Niedermayer
7faa7d3d42
avcodec/hevc: Use av_malloc(z)_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 03:50:17 +02:00
Michael Niedermayer
e429d6c197
avcodec/pgssubdec: remove unused variables
...
Found-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 18:24:37 +02:00
Michael Niedermayer
89bcb77726
avcodec/pgssubdec: Check input buffer size in parse_presentation_segment()
...
Might fix overread, no testcase known though.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 18:23:08 +02:00
Michael Niedermayer
ae9a73de2a
Merge commit '253d0be6a1ecc343d29ff8e1df0ddf961ab9c772'
...
* commit '253d0be6a1ecc343d29ff8e1df0ddf961ab9c772':
pgssubdec: handle more complex PGS scenarios
Conflicts:
libavcodec/pgssubdec.c
Some of this has been split out and commited in cleanly split patches immedeately
before this merge
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 18:05:39 +02:00
John Stebbins
0c911c8fbc
avcodec/pgssubdec: fix end display time
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 17:33:53 +02:00
John Stebbins
066a4819cc
avcodec/pgssubdec: Bail out of decode_rle() if error and AV_EF_EXPLODE is set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 17:31:38 +02:00
John Stebbins
fc7da418ff
avcodec/pgssubdec: better error codes
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 17:29:18 +02:00
John Stebbins
5c019ec91d
avcodec/pgssubdec: Pass AVSubtitleRect to decode_rle()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 17:25:16 +02:00
John Stebbins
4701f7676c
avcodec/pgssubdec: split out flush_cache()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 17:24:47 +02:00
Diego Biurrun
e3fcb14347
dsputil: Split off IDCT bits into their own context
2014-06-30 07:58:46 -07:00
Diego Biurrun
adcb8392c9
mjpeg: Split off bits shared by MJPEG and LJPEG encoders
...
This obviates a dependency of the LJPEG encoder on mpegvideo.
2014-06-30 07:53:40 -07:00
John Stebbins
ca7f2a7372
avcodec/pgssubdec: do not fail when part of the packet is faulty unless AV_EF_EXPLODE is set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 16:46:25 +02:00
John Stebbins
376f353e3d
avcodec/pgssubdec: rename PICTURE_SEGMENT
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 16:39:41 +02:00
John Stebbins
253d0be6a1
pgssubdec: handle more complex PGS scenarios
...
Add ability to handle multiple palettes and objects simultaneously.
Each simultaneous object is given its own AVSubtitleRect.
Note that there can be up to 64 currently valid objects, but only
2 at any one time can be "presented".
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-06-30 12:18:58 +02:00
Michael Niedermayer
3f42434600
avcodec/huffyuvencdsp: try to fix misaligned access
...
Should fix fate on MIPS
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-29 16:26:38 +02:00
Yao Wang
5464916677
avcodec/cavs: improve conformance with rm52j reference decoder
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-28 19:53:41 +02:00
Michael Niedermayer
f9f8491ddf
avcodec/cavs: make cavs_chroma_qp non static
...
The table is needed by multiple files
Reverts part of ef07ac1e12
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-28 19:08:39 +02:00
Michael Niedermayer
504475f38e
avcodec/mpegvideo: dont overwrite emu_edge buffer
...
Fixes vsynth3 fate failures on mips
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-28 06:28:21 +02:00
Michael Niedermayer
21bfed5b06
avcodec/mpegvideo_enc: reduce space between blocks in emu_edge in encode_mb_internal
2014-06-28 06:27:15 +02:00
Michael Niedermayer
5bca5f87d1
Revert "x86/videodsp: add emulated_edge_mc_mmxext"
...
The commit causes minor out of array reads and was mainly intended for
future optimizations which turned out not to be meassurably faster.
Itself it was just 1 cpu cycle faster
Approved-by: jamrial
This reverts commit 057d2704e7
.
2014-06-28 05:39:07 +02:00
Michael Niedermayer
4d1fa38d98
avcodec/mpeg12dec: Limit progressive_seq reinitilaization to where the resolution changes
...
Fixes Ticket3743
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-28 00:16:09 +02:00
Michael Niedermayer
8c22bea574
avcodec/vp8: Fix multiple ff_thread_finish_setup() calls
...
Fixes Ticket3725
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-27 22:45:43 +02:00
Michael Niedermayer
1fd0e9a56d
Merge commit '5dd8c08fd5e4c04d7a08d8934f0098a8a4a35c28'
...
* commit '5dd8c08fd5e4c04d7a08d8934f0098a8a4a35c28':
mpeg: Change ff_convert_matrix() to take an MpegEncContext parameter
Conflicts:
libavcodec/mpegvideo.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-27 19:24:44 +02:00
Michael Niedermayer
3ac5114530
Merge commit 'e63b818dbe6060b606ae10eb184859f8b97d2353'
...
* commit 'e63b818dbe6060b606ae10eb184859f8b97d2353':
dv: Properly split decoder and encoder initialization
Conflicts:
libavcodec/dv.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-27 19:13:34 +02:00
Anshul Maheshwari
263932c084
avcodec/dvbsubdec: fix ignoring blank frame by updating got_output
...
fix ticket 3737
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-27 14:35:58 +02:00
Diego Biurrun
5dd8c08fd5
mpeg: Change ff_convert_matrix() to take an MpegEncContext parameter
...
This will come in handy during dsputil splitting.
2014-06-27 05:17:11 -07:00
Diego Biurrun
e63b818dbe
dv: Properly split decoder and encoder initialization
2014-06-27 05:03:06 -07:00
Michael Niedermayer
b96c9513f3
avcodec/snow: factor ff_snow_get_buffer() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-27 04:49:09 +02:00
Michael Niedermayer
09a7a4704e
Merge commit 'd2869aea0494d3a20d53d5034cd41dbb488eb133'
...
* commit 'd2869aea0494d3a20d53d5034cd41dbb488eb133':
dsputil: Move MMX/SSE2-optimized IDCT bits to the x86 subdirectory
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-27 03:05:33 +02:00
Michael Niedermayer
5a636383db
Merge commit '24f45c16224d4c5d482e928676714766ffdda4fc'
...
* commit '24f45c16224d4c5d482e928676714766ffdda4fc':
fate: Add dependencies for dct/fft/mdct/rdft tests
Conflicts:
libavcodec/fft-test.c
tests/fate/fft.mak
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-27 02:36:45 +02:00
Michael Niedermayer
357168bcf6
Merge commit '5ec6d152e26c570c0a16ec72c1f354db95708179'
...
* commit '5ec6d152e26c570c0a16ec72c1f354db95708179':
indeo4: B-frames decoding
Conflicts:
libavcodec/ivi_common.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-27 02:05:22 +02:00
Diego Biurrun
d2869aea04
dsputil: Move MMX/SSE2-optimized IDCT bits to the x86 subdirectory
2014-06-26 16:15:07 -07:00
Michael Niedermayer
826726b83f
Merge commit '422e14f721c22cf9c19a8e7aae051ba9d559f6b6'
...
* commit '422e14f721c22cf9c19a8e7aae051ba9d559f6b6':
indeo2: rename stride to pitch for consistency with other Indeo decoders
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-27 01:11:59 +02:00
Diego Biurrun
24f45c1622
fate: Add dependencies for dct/fft/mdct/rdft tests
2014-06-26 16:03:21 -07:00
Michael Niedermayer
a9f7972844
Merge commit '1b04eb20f7e3f0a71f73ba91efcc3d60a435e443'
...
* commit '1b04eb20f7e3f0a71f73ba91efcc3d60a435e443':
lavc: do not allocate edges in the default get_buffer2()
Conflicts:
libavcodec/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-26 20:56:23 +02:00
Michael Niedermayer
e059ac59ef
avcodec/snow: ensure the buffers have allocated edges
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-26 20:52:06 +02:00
Michael Niedermayer
acc7cf70dc
Merge commit '9b60d9197970658e91daf4b586397f450de9af69'
...
* commit '9b60d9197970658e91daf4b586397f450de9af69':
hevc: Allow out of bound values for num_reorder_pics
Conflicts:
libavcodec/hevc_ps.c
See: bc21260e64
See: ab296c7a9f
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-26 19:58:25 +02:00
Dirk Ausserhaus
5ec6d152e2
indeo4: B-frames decoding
...
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2014-06-26 19:17:33 +02:00
Kostya Shishkov
422e14f721
indeo2: rename stride to pitch for consistency with other Indeo decoders
2014-06-26 19:16:08 +02:00
James Almer
057d2704e7
x86/videodsp: add emulated_edge_mc_mmxext
...
This also changes hfix8_mmx and above to use mmx regs instead of
gprs, and makes emulated_edge_mc_sse and emulated_edge_mc_sse2 use
mmxext hfix and hvar functions instead of mmx where possible.
This is mostly in preparation for an ssse3 version.
Signed-off-by: James Almer <jamrial@gmail.com>
code is about 1 cpu cycle faster approximately
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-26 17:58:57 +02:00
Anton Khirnov
1b04eb20f7
lavc: do not allocate edges in the default get_buffer2()
2014-06-26 16:02:12 +02:00
Gildas Cocherel
a0e1c3517a
hevc: remove unused array min_cb_addr_zs
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-06-26 15:51:54 +02:00
Yao Wang
e18b48c6fd
avcodec/cavs: fix B_SUB_DIRECT col-MB is Intra MB case.
...
in this case current MB size is forced to 16x16 (AVS standard section 9.9.1)
Signed-off-by: Yao Wang <jiayaowang@gmail.com>
Fixes Ticket 1901
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-26 14:51:40 +02:00
Kieran Kunhya
9b60d91979
hevc: Allow out of bound values for num_reorder_pics
...
This fixes decoding for a sample that cannot be shared
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-06-26 07:14:57 +02:00
Michael Niedermayer
7e8fdf05e0
Merge commit '593d2326ef985cdffe413df629419938f7b07c4c'
...
* commit '593d2326ef985cdffe413df629419938f7b07c4c':
dv: Replace a magic number by sizeof()
Conflicts:
libavcodec/dv.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-26 03:16:53 +02:00
Michael Niedermayer
11ba0c8207
Merge commit '5ab03e41e553452118113d0c224fa32b325e45e5'
...
* commit '5ab03e41e553452118113d0c224fa32b325e45e5':
x86: h264dsp: Fix link failure with optimizations disabled
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-26 02:58:59 +02:00
Diego Biurrun
593d2326ef
dv: Replace a magic number by sizeof()
2014-06-25 15:32:58 -07:00
Diego Biurrun
5ab03e41e5
x86: h264dsp: Fix link failure with optimizations disabled
...
With optimzations disabled compilers have trouble doing dead code
elimination on 'if (foo && 0)' expressions, while 'if (0 && foo)'
still works, so use the latter to avoid problems.
Bug-Id: 707
2014-06-25 15:24:51 -07:00
Michael Niedermayer
1ace0ca60f
avcodec/x86/hevc_idct: fix function name in comment
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-25 18:22:25 +02:00
plepere
9ba6b17add
avcodec/x86/hevc_idct: fix number of sse registers
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-25 14:59:23 +02:00