Luca Barbato
39a2d3288e
mpegvideo: Refactor emulated_edge_mc calls
2016-03-05 08:26:36 -05:00
Luca Barbato
0242351390
mpegvideo: Fix undefined negative shifts in mpeg_motion_internal
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-03-05 08:26:36 -05:00
Luca Barbato
7d4a1ff344
mpegvideo: Fix undefined negative shifts in ff_init_block_index
...
Found-by: gcc5-ubsan.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-03-05 08:26:36 -05:00
Katerina Barone-Adesi
1389b4c18d
idct8x8: Fix undefined negative shifts
...
The original code left-shifts negative values, which is undefined
in the C99 specification (the one used during normal Libav compilation).
This change multiplies by (1 << shift), which is functionally equivalent,
but has defined behavior.
With this change, fate-idct8x8 compiled with --fsanitize=undefined works.
Bug-Id: 686
2016-03-05 08:26:36 -05:00
Vittorio Giovara
e10b7ef2fe
vdpau: Add missing deprecation guards
2016-03-05 08:23:18 -05:00
wm4
2e2f8534eb
lavc: factor apply_param_change() AV_EF_EXPLODE handling
...
Remove the duplicated code for handling failure of apply_param_change().
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-05 09:04:03 +01:00
Luca Barbato
f8c34f4b8d
indeo2: Fix banding artefacts
...
Rename luma table to delta table and change how it is used.
CC: libav-stable@libav.org
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-03-01 13:50:24 +01:00
Luca Barbato
d4066a7024
indeo2data: K&R formatting cosmetics
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-03-01 13:46:00 +01:00
Diego Biurrun
1a094af638
fft: Split MDCT bits off from FFT
2016-03-01 10:18:28 +01:00
Diego Biurrun
4c297249ac
rdft: arm: Split RDFT initialization into a separate file
2016-02-26 14:34:58 +01:00
Diego Biurrun
97aec6e75e
fft: arm: Drop unnecessary #include, add missing ones
2016-02-26 14:34:58 +01:00
Diego Biurrun
73ff983e8d
fft: x86: cosmetics: Drop silly comments, add comment, whitespace
2016-02-26 14:34:58 +01:00
Luca Barbato
ce9d7da765
qsv: Move down the implementation query
...
The plugin loaded may not match the general implementation capability
wise.
2016-02-26 10:28:42 +01:00
Anton Khirnov
dbb43b8b83
avpacket: properly reset data/size in av_packet_move_ref()
...
It currently just calls av_init_packet(), which does not touch those
fields.
2016-02-26 09:15:36 +01:00
Anton Khirnov
c80344d010
mpegvideo_enc: use avcodec_free_context() instead of av_free()
2016-02-26 09:14:59 +01:00
Vittorio Giovara
e66fa35392
vc1dec: Check group allocations separatedly
...
This avoids accessing NULL pointers in case of error.
2016-02-25 15:21:42 -05:00
Vittorio Giovara
01f0e6a0c9
vc1dec: Fix leak on error for array allocations
...
The deinit function in the 'error' section will correctly free
everything.
2016-02-25 15:20:53 -05:00
Vittorio Giovara
f91d94bdfc
vc1dec: Properly call deinit function on error
2016-02-25 15:20:24 -05:00
Vittorio Giovara
35b1cd343c
vc1dec: Drop commented out cruft
2016-02-25 15:19:36 -05:00
Diego Biurrun
d6e49096c0
idct: Only build prores IDCT if ProRes decoder is enabled
2016-02-24 11:41:01 +01:00
Anton Khirnov
3c53627ac1
qsvdec: store the sync point in heap memory
...
The reasoning is the same as for the corresponding qsvenc patch.
2016-02-24 10:41:45 +01:00
Maxym Dmytrychenko
a1335149fd
qsvenc: store the sync point in heap memory
...
The QSV runtime expects the sync point address passed to
MFXVideoENCODE_EncodeFrameAsync() to be valid until
MFXVideoCORE_SyncOperation().
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-02-24 10:14:40 +01:00
Anton Khirnov
a8068346e4
lavc: add a variant of av_get_audio_frame_duration working with AVCodecParameters
2016-02-23 17:01:58 +01:00
Anton Khirnov
998e1b8f52
lavc: add codec parameters API
...
This API is intended to allow passing around codec parameters without
using full AVCodecContext (which also contains codec options and
encoder/decoder state).
2016-02-23 17:01:58 +01:00
Diego Biurrun
257b30af8e
x86: hevc: Fix linking with both yasm and optimizations disabled
...
Some optimized functions reference optimized symbols, so the functions
must be explicitly disabled when those symbols are unavailable.
2016-02-23 11:47:54 +01:00
Marton Balint
5e555f9300
mpeg12enc: always write closed gops for intra only outputs
...
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Marton Balint <cus@passwd.hu>
2016-02-22 19:08:56 -05:00
Michael Niedermayer
f435d081b0
h264: Add an AVClass pointer to H264Context
...
Sample-Id: asan_heap-uaf_3660f67_757_cov_1257014655_Hi422FR1_SONY_A.jsv
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-02-22 19:08:56 -05:00
Vittorio Giovara
0837d1dfe2
libx264: Fix noise_reduction option assignment
...
First check the context, then check internal option. Drop the ! typo.
Introduced in 60f0fde3092d18d4d36555962c192af8691a099c.
2016-02-22 19:06:48 -05:00
Diego Biurrun
d24bd96bdd
build: Disentangle VC-1 decoder and parser
2016-02-19 20:38:18 +01:00
Diego Biurrun
15a24614ae
build: Add vc1dsp component for more fine-grained dependencies
2016-02-19 20:38:18 +01:00
Diego Biurrun
f9fbd47467
msmpeg4data: Move WMV2 data tables to their own file
2016-02-19 20:38:18 +01:00
Diego Biurrun
79866803ff
msmpeg4data: K&R formatting cosmetics
2016-02-19 20:38:17 +01:00
Diego Biurrun
624e235502
build: Introduce iso_media component
2016-02-18 15:35:46 +01:00
Diego Biurrun
82454c3a82
build: Let the WTV demuxer select the MPEG-TS demuxer
...
The WTV demuxer depends on large parts of the MPEG-TS demuxer internals
anyway and fails to build without it.
2016-02-18 15:35:45 +01:00
Diego Biurrun
7403be9b1b
build: Fix dependencies for components relying on H.263 data tables
2016-02-18 15:35:45 +01:00
Diego Biurrun
e453129321
build: Add missing dependencies for eatqi decoder
2016-02-18 15:35:44 +01:00
Vittorio Giovara
71eaefa64a
build: Add missing celp_math dependency for G723_1 encoder and decoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-02-18 15:35:44 +01:00
Diego Biurrun
3d8025d602
profiles: Add missing #endif comment
2016-02-18 15:35:44 +01:00
Diego Biurrun
6b96d2dcda
cosmetics: Drop particularly redundant silly comments
2016-02-18 15:35:43 +01:00
Diego Biurrun
29c2d06d67
cosmetics: Drop empty comment lines
2016-02-18 15:35:30 +01:00
Anton Khirnov
9c0bc1e980
qsv: add a missing #include
...
Needed for enum AVCodecID
2016-02-18 08:47:33 +01:00
Diego Biurrun
47570dbde8
fft: ppc: Place ff_fft_calc_interleave_altivec() under correct ifdefs
...
Also fix #endif comments in the FFT init code.
2016-02-15 11:58:04 +01:00
Anton Khirnov
871d0930d4
nvenc: support CUDA frames as input
2016-02-14 22:31:47 +01:00
Anton Khirnov
7b3214d005
lavc: add a field for passing AVHWFramesContext to encoders
2016-02-14 22:29:52 +01:00
Anton Khirnov
c51b2c79a7
Allow linking to CUDA dynamically instead of dlopen()ing it at runtime
2016-02-14 22:08:13 +01:00
Philip Langdale
8d34a2f803
vdpau: Support for VDPAU accelerated HEVC decoding
...
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-02-13 14:42:38 +01:00
Philip Langdale
8958c5c64d
hevc: Track long and short term RPS size for VDPAU
...
Today, we track the short term RPS size for DXVA, but only if the
SliceHeader RPS is being used. Otherwise it's left uninitialized.
NVIDIA's VDPAU implementation requires that the size be accurately
tracked even if an SPS RPS is being used. In this case, it's really
counting the size of the RPS idx information, but you end up with
mangled output if the value is not accurate.
VDPAU also needs the size of the long term RPS.
Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-02-13 14:24:37 +01:00
Hendrik Leppkes
8c399bd5ce
dxva2_hevc: properly signal the num_delta_pocs from the SPS RPS
...
ucNumDeltaPocsOfRefRpsIdx needs to contain the flat value from the SPS RPS,
and not the final computed value from the slice header RPS, as this calculation
is done internally by the driver again.
Sample-Id: http://trailers.divx.com/hevc/Sintel_4k_27qp_24fps_1aud_9subs.mkvi
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
2016-02-13 14:19:54 +01:00
Anton Khirnov
d005ccc630
nvenc: rename a misnamed function
...
This function copies the encoded bistream into the caller's packet,
calling it 'get_frame' is misleading.
2016-02-12 10:20:11 +01:00
Anton Khirnov
118beda355
nvenc: merge input and output surface structs
...
An input frame always corresponds to exactly one output packet, so there
is no point in complicating the situation by managing them separately.
2016-02-12 10:19:40 +01:00