Mark Thompson
ec3dbeae81
hwcontext: Add frame context mapping for nontrivial contexts
...
Some frames contexts are not usable without additional format-specific
state in hwctx. This change adds new functions frames_derive_from and
frames_derive_to to initialise this state appropriately when deriving
a frames context which will require it to be set.
(cherry picked from commit 27978155bc
)
2017-06-14 22:27:07 +01:00
Mark Thompson
045ff8d30a
hwcontext_qsv: Support derivation from child devices
...
(cherry picked from commit aa51bb3d27
)
2017-06-14 22:27:07 +01:00
Mark Thompson
7ce47090ce
ffmpeg: Support setting the hardware device to use when filtering
...
This only supports one device globally, but more can be used by
passing them with input streams in hw_frames_ctx or by deriving new
devices inside a filter graph with hwmap.
(cherry picked from commit e669db7610
)
2017-06-14 22:27:07 +01:00
Mark Thompson
3882063174
vaapi: Add external control of allow-profile-mismatch
...
Uses the just-added ALLOW_PROFILE_MISMATCH flag.
(cherry picked from commit 7acb90333a
)
2017-06-14 22:27:06 +01:00
Mark Thompson
49ae8a5e87
lavc: Add flag to allow profile mismatch with hardware decoding
...
(cherry picked from commit 64a5260c69
)
2017-06-14 22:27:04 +01:00
Mark Thompson
b658b5399e
vaapi_encode: Use gop_size consistently in RC parameters
...
The non-H.26[45] codecs already use this form. Since we don't
currently generate I frames for codecs which support them separately
to IDR, the p_per_i variable is set to infinity by default so that it
doesn't interfere with any other calculation. (All the code for I
frames still exists, and it works for H.264 if set manually.)
(cherry picked from commit 6af014f402
)
2017-06-14 22:26:32 +01:00
Mark Thompson
28aedeed19
qsvenc: Allow use of hw_device_ctx to make the internal session
...
(cherry picked from commit 3d197514e6
)
2017-06-14 22:26:32 +01:00
Mark Thompson
8aa3c2df1a
qsvdec: Allow use of hw_device_ctx to make the internal session
...
(cherry picked from commit 8848ba0bd6
)
2017-06-14 22:26:32 +01:00
Mark Thompson
91c3b50d74
qsv: Add ability to create a session from a device
...
(cherry picked from commit 4936a48b1e
)
2017-06-14 22:26:32 +01:00
Mark Thompson
bff7bec1d7
vf_deinterlace_vaapi: Add support for field rate output
...
In order to work correctly with the i965 driver, this also fixes the
direction of forward/backward references - forward references are
intended to be those from the past to the current frame, not from the
current frame to the future.
(cherry picked from commit 9aa251c98c
)
2017-06-14 22:26:32 +01:00
Mark Thompson
527a1e2131
ffmpeg: Document the -init_hw_device option
...
(cherry picked from commit 303fadf596
)
2017-06-14 22:26:32 +01:00
Mark Thompson
e462ace84b
ffmpeg: Enable generic hwaccel support for VDPAU
...
(cherry picked from commit aa6b2e081c
)
2017-06-14 22:26:32 +01:00
Mark Thompson
be51073352
ffmpeg: Enable generic hwaccel support for VAAPI
...
(cherry picked from commit 62a1ef9f26
)
2017-06-14 22:26:32 +01:00
Mark Thompson
06043cc0bc
ffmpeg: Generic device setup
...
Not yet enabled for any hwaccels.
(cherry picked from commit d2e6dd32a4
)
(cherry picked from commit 9203aac228
)
2017-06-14 22:26:32 +01:00
Mark Thompson
0b1794a43e
hwcontext: Make it easier to work with device types
...
Adds functions to convert to/from strings and a function to iterate
over all supported device types. Also adds a new invalid type
AV_HWDEVICE_TYPE_NONE, which acts as a sentinel value.
(cherry picked from commit b7487f4f3c
)
2017-06-14 22:26:29 +01:00
Mark Thompson
b22172f6f3
hwcontext: Add device derivation
...
Creates a new device context from another of a different type which
refers to the same underlying hardware.
(cherry picked from commit b266ad56fe
)
2017-06-14 22:25:57 +01:00
Mark Thompson
92bd089745
vaapi_encode: Discard output buffer if picture submission fails
...
Previously this was leaking, though it actually hit an assert making
sure that the buffer had already been cleared when freeing the picture.
(cherry picked from commit 17aeee5832
)
2017-06-14 22:23:43 +01:00
Mark Thompson
f2e4fb61af
hwcontext_vaapi: Try to support the VDPAU wrapper
...
The driver is somewhat bitrotten (not updated for years) but is still
usable for decoding with this change. To support it, this adds a new
driver quirk to indicate no support at all for surface attributes.
Based on a patch by wm4 <nfxjfg@googlemail.com>.
(cherry picked from commit e791b915c7
)
2017-06-14 22:23:43 +01:00
Matthieu Bouron
204008354f
lavc/aarch64/simple_idct: fix build with Xcode 7.2
2017-06-14 23:20:58 +02:00
Ronald S. Bultje
d35ff98e27
vp9: fix overwrite in ff_vp9_ipred_dr_16x16_16_avx2.
...
Fixes trac issue 6459.
2017-06-14 11:37:38 -04:00
Timo Rothenpieler
feb13aed79
avfilter/vf_signature: fix memory leaks in error cases
...
Fixes CIDs 1403234 and 1403235
2017-06-13 19:49:39 +02:00
Timo Rothenpieler
a5b5ce2658
avformat/pcmdec: fix memory leak
...
Fixes CID 1396267
2017-06-13 19:49:06 +02:00
Timo Rothenpieler
4b2a2969f3
avformat/librtmp: check return value of setsockopt
...
Fixes CID 1396837
2017-06-13 19:48:08 +02:00
Timo Rothenpieler
0fbc9bbbbb
avfilter/vf_scale_npp: fix out-of-bounds reads
...
Fixes CIDs 1396414 and 1396415
2017-06-13 19:47:44 +02:00
Timo Rothenpieler
21583e936a
avfilter/unsharp: fix uninitialized pointer read
...
Fixes CID 1396855
2017-06-13 19:47:19 +02:00
Matthieu Bouron
8aa60606fb
lavc/aarch64/simple_idct: fix idct_col4_top coefficient
...
Fixes regression introduced by 5d0b8b1ae3
.
2017-06-13 17:46:55 +02:00
Michael Niedermayer
4cc2a357f5
avcodec/aacsbr_fixed: Fix signed integer overflow in sbr_hf_inverse_filter()
...
Fixes: runtime error: signed integer overflow: 2147483584 + 128 cannot be represented in type 'int'
Fixes: 2164/clusterfuzz-testcase-minimized-4715936172998656
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-13 17:39:13 +02:00
Michael Niedermayer
d1992448d3
avcodec/aacsbr_fixed: Check shift in sbr_hf_assemble()
...
Fixes: runtime error: shift exponent -10 is negative
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-13 17:39:13 +02:00
Michael Niedermayer
d549f026d8
avcodec/sbrdsp_fixed: Return an error from sbr_hf_apply_noise() if operations are impossible
...
Fixes: 1775/clusterfuzz-testcase-minimized-5330288148217856
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-13 17:39:13 +02:00
Paul B Mahol
f85cad799b
avfilter: properly set SAR for A->V filters
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-13 15:10:58 +02:00
Matthieu Bouron
3839580b71
lavc/mediacodecdec: switch to the new generic filtering mechanism
2017-06-13 14:33:54 +02:00
Michael Niedermayer
4f9e958b04
avcodec/put_bits: Implement put_bits32() in a single pass instead of 2 passes writing 16bits each
...
820 cpu cycles -> 660 cpu cycles for 100 put_bits32()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-13 04:17:13 +02:00
Michael Niedermayer
db93fd74e4
avcodec/golomb: Assert that the input is not too large in set_ue_golomb()
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-13 04:17:13 +02:00
Paul B Mahol
6e09e12641
tools/sofa2wavs: add license header
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-12 22:14:30 +02:00
Ilia Valiakhmetov
81fc617c12
avcodec/vp9: ipred_dr_16x16_16 avx2 implementation
...
Signed-off-by: Ilia Valiakhmetov <zakne0ne@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2017-06-12 12:40:58 -04:00
Paul B Mahol
1a30bf60be
tools: add sofa2wavs
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-12 18:08:52 +02:00
Paul B Mahol
d4d1fc823f
avfilter: add native headphone spatialization filter
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-12 18:08:52 +02:00
Henrik Gramner
aad1b6786e
x86inc: Add some additional cpuflag relations
...
Simplifies writing assembly code that depends on available instructions.
LZCNT implies SSE2
BMI1 implies AVX+LZCNT
AVX2 implies BMI2
2017-06-12 11:41:25 +02:00
Michael Niedermayer
f8593c2f49
avcodec/libvpxdec: Check that display dimensions fit in the storage dimensions
...
Fixes assertion failure
Fixes: 2112/clusterfuzz-testcase-minimized-4526878557732864
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-11 22:41:26 +02:00
Michael Niedermayer
07339a45a0
avcodec/avpacket: Limit iterations in ff_packet_split_and_drop_side_data()
...
This avoids scaning beyond what a valid packet can contain
Fixes: Timeout
Fixes: 541/clusterfuzz-testcase-610189291657625
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-11 22:09:15 +02:00
Michael Niedermayer
d24043e1a2
avcodec/jpeg2000dwt: Fix runtime error: left shift of negative value -123
...
Fixes: 2208/clusterfuzz-testcase-minimized-5976593765761024
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-11 20:52:47 +02:00
Michael Niedermayer
c996374d4d
avcodec/wavpack: Fix runtime error: signed integer overflow: 1886191616 + 277872640 cannot be represented in type 'int'
...
Fixes: 2181/clusterfuzz-testcase-minimized-6314784322486272
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-11 20:52:47 +02:00
James Almer
e3887c0a2c
avformat/mov: add support for reading VP Codec Configuration Box
...
As defined in "VP Codec ISO Media File Format Binding v1.0"
https://github.com/webmproject/vp9-dash/blob/master/VPCodecISOMediaFileFormatBinding.md
Signed-off-by: James Almer <jamrial@gmail.com>
2017-06-11 15:28:34 -03:00
Michael Niedermayer
2e44126363
avcodec/snowdec: Fix runtime error: left shift of negative value -1
...
Fixes: 2197/clusterfuzz-testcase-minimized-6010716676947968
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-11 15:22:07 +02:00
Michael Niedermayer
6d499ecef9
avcodec/aacdec_fixed: Fix runtime error: left shift of negative value -1297616
...
Fixes: 2195/clusterfuzz-testcase-minimized-4736721533009920
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-11 15:22:07 +02:00
Paul B Mahol
9a949cdf8f
avcodec/gdv: fix compiler warnings
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-11 10:26:18 +02:00
Paul B Mahol
c948414876
avformat: add Gremlin Digital Video demuxer
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-11 10:00:39 +02:00
Paul B Mahol
d1c08027d8
avcodec: add Gremlin Digital Video decoder
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-11 10:00:39 +02:00
Paul B Mahol
29bdcf588f
avcodec: add Gremlin DPCM decoder
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2017-06-11 10:00:16 +02:00
Michael Niedermayer
22a25ab389
avcodec/tiff: Fix leak of geotags[].val
...
Fixes: 2176/clusterfuzz-testcase-minimized-5908197216878592
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-11 01:06:08 +02:00