aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* examples/hw_decode: Use hw-config information to find pixfmtMark Thompson2017-11-291-32/+22
| | | | This removes all remaining device-type specificity.
* lavc/samidec: properly raise errors from sami_paragraph_to_ass()Clément Bœsch2017-11-291-2/+5
|
* avcodec/samidec: check av_strdup() return valuePan Bian2017-11-291-0/+3
| | | | | | | | In function sami_paragraph_to_ass(), the return value of av_strdup() is not checked. To avoid potential NULL dereference, the return value should be checked against NULL. Signed-off-by: Pan Bian <bianpan2016@163.com>
* avcodec/amfenc: move config.h include where it's neededJames Almer2017-11-292-1/+2
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* vp9_parser: don't split superframes into separate packetswm42017-11-291-117/+10
| | | | | We did this for the sake of the decoder. With the vp9 change, it's not necessary anymore.
* vp9: use superframe split BSFwm42017-11-292-1/+2
| | | | | | | | | | | | | | | webm usually has invisible superframes merged with normal frames. (vpxenc muxes them in this form, which is evidence enough that this is the standard webm packet format. It's rather unclear whether ffmpeg is even allowed to remux them with split packets.) The vp9 decoder needs them to be in separate packets for multithreading to work. Add the BSF to the decoder, so the conversion happens automatically. This contains the important part of fa1749dd34c55fb9, which was apparently skipped in commit d417e95af76. This restores Libav API compatibility.
* avformat/hlsplaylist: add missing header includesJames Almer2017-11-291-0/+4
| | | | | | Fixes checkheaders. Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/hlsplaylist: fix header include guardJames Almer2017-11-291-2/+2
| | | | | | Fixes fate-source Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/hlsenc: Modularized playlist creation to allow reuseKarthick J2017-11-294-95/+211
|
* avcodec/nvenc: set correct error codePan Bian2017-11-291-1/+3
| | | | | | | | | In function process_output_surface(), the return value is 0 on the path that av_mallocz() returns a NULL pointer. 0 indicates success, which deviates from the fact. Return "AVERROR(ENOMEM)" instead of "0". Signed-off-by: Pan Bian <bianpan2016@163.com> Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* libavformat/hlsenc: Persistent HTTP connections supported as an optionJeyapal, Karthick2017-11-292-7/+44
|
* libavformat/http: Handled multiple_requests option during writeJeyapal, Karthick2017-11-291-0/+6
|
* libavformat/avio: Utility function to return URLContextJeyapal, Karthick2017-11-292-0/+21
|
* Don't manipulate duration when it's AV_NOPTS_VALUE.Dale Curtis2017-11-291-1/+1
| | | | | | | This leads to signed integer overflow. Signed-off-by: Dale Curtis <dalecurtis@chromium.org> Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/oggparseopus: Free opus extradata before reallocating.Dale Curtis2017-11-291-0/+1
| | | | | | | | Otherwise ff_alloc_extradata() just leaks any existing allocated memory. Signed-off-by: Dale Curtis <dalecurtis@chromium.org> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* libvpxenc,vp9: add corpus-complexity optionJames Zern2017-11-282-0/+21
| | | | | | | | | | Corpus VBR mode is a variant of standard VBR where the complexity distribution midpoint is passed in rather than calculated for a specific clip or chunk. The valid range is [0, 10000]. 0 (default) uses standard VBR. Signed-off-by: James Zern <jzern@google.com>
* ffmpeg_opt: Constify hwaccel pointer.Carl Eugen Hoyos2017-11-291-1/+2
| | | | | Fixes a warning: fftools/ffmpeg_opt.c:804:29: warning: assignment discards ‘const’ qualifier from pointer target type
* Add HW H.264 and HEVC encoding for AMD GPUs based on AMF SDKMikhail Mironov2017-11-288-0/+1490
| | | | | | | Requires AMF headers for at least version 1.4.4.1. Signed-off-by: Mikhail Mironov <mikhail.mironov@amd.com> Signed-off-by: Mark Thompson <sw@jkqxz.net>
* examples: Add a VA-API encode example.Jun Zhao2017-11-283-0/+227
| | | | | | | | | | | Supports only raw NV12 input. Example use: ./vaapi_encode 1920 1080 test.yuv test.h264 Signed-off-by: Jun Zhao <jun.zhao@intel.com> Signed-off-by: Liu, Kaixuan <kaixuan.liu@intel.com> Signed-off-by: Mark Thompson <sw@jkqxz.net>
* Changelog: add VAAPI VP8 decoderMark Thompson2017-11-281-0/+1
|
* avformat/mov: return correct value in mov_read_cmovPan Bian2017-11-281-0/+1
| | | | | | | On some failure paths, the error code is not correctly set. Signed-off-by: Pan Bian <bianpan2016@163.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mov: set correct error code in mov_read_customPan Bian2017-11-281-1/+3
| | | | | | | | | In function mov_read_custom(), it returns 0 on the path that av_malloc() returns a NULL pointer. 0 indicates success. An error code should be assigned to ret. Signed-off-by: Pan Bian <bianpan2016@163.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mxfenc: pass MXFPackage around instead of typeMark Reid2017-11-281-44/+55
| | | | | Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec: set correct return value in ff_mpeg_ref_picturePan Bian2017-11-281-1/+3
| | | | | | | | | | In function ff_mpeg_ref_picture(), it returns 0 on the error path that the return value of av_buffer_ref() is NULL. 0 indicates success, which seems to deviate from the fact. Set ret to AVERROR(ENOMEM) to propagate the error status to the callers. Signed-off-by: Pan Bian <bianpan2016@163.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Free extradata before reallocating.Dale Curtis2017-11-281-0/+1
| | | | | | | | | Otherwise ff_alloc_extradata() just leaks any existing allocated memory. Signed-off-by: Dale Curtis <dalecurtis@chromium.org> Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/drawbox: rename variable for maximum thicknessGyan Doshi2017-11-282-3/+4
| | | | | | | | | The present value name for maximum thickness is 'max' which results in a parse error of any thickness expression containing 'max(val1,val2)'. Value renamed to 'fill'. Tested locally and documented. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* vf_zscale: Add more supported input propertiesVittorio Giovara2017-11-282-1/+52
| | | | | | Bump the minimum version necessary in the configure file. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* vf_zscale: Relax color properties maximum boundsVittorio Giovara2017-11-281-12/+12
| | | | | | This simplifies adding new values, which are already validated elsewhere. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* mov: Support mdcv and clli boxes for mastering display an color light levelVittorio Giovara2017-11-281-0/+71
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* prores: Always assume limited rangeVittorio Giovara2017-11-281-0/+1
| | | | As defined by the specification.
* avcodec/videotoolbox: fix SEGV when hwaccel decoding h264 with ffmpeg.cAman Gupta2017-11-281-1/+7
| | | | Signed-off-by: Aman Gupta <aman@tmm1.net>
* avformat/hlsenc: Fixed initial setting for end_ptsKarthick J2017-11-281-1/+3
| | | | | | | | | | This patch fixes Bug #6868 Sometimes end_pts is getting initialized to audio stream's first pts, while the duration is calculated based on video stream's pts. In this patch the end_pts is initialized with the correct stream's first pts. Reviewed-by: Steven Liu <lq@onvideo.cn> Tested-by: beloko
* avformat/hls: Obey AVProgram discard flagsAnssi Hannula2017-11-281-4/+30
| | | | | | | Currently HLS demuxer only obeys AVStream discard flags but not AVProgram (which bandwidth variants appear as) discard flags. Fix that.
* avformat/hls: Factor playlist need check to a common functionAnssi Hannula2017-11-281-22/+30
|
* lavu/hwcontext_opencl.h: fix build on macOSRodger Combs2017-11-281-0/+4
|
* avformat/matroskaenc: add missing allocation failure checks for stream durationsJames Almer2017-11-281-0/+4
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/matroskaenc: move some initialization checks to mkv_initJames Almer2017-11-271-18/+21
| | | | | | | It's the correct place for them. Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* ffmpeg: Check read_ffserver_streams() return valuePan Bian2017-11-281-0/+2
| | | | | | | | | | | The function avformat_alloc_context() will return a NULL pointer on failure. However, in function read_ffserver_streams(), its return value is not validated and the subsequent dereference may result in a bad memory access bug. Check its return value against NULL and avoid potential NULL dereference. Signed-off-by: Pan Bian <bianpan2016@163.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* libavformat/rtpenc_mpegts: check avformat_new_stream() return valuePan Bian2017-11-281-0/+4
| | | | | | | | | | The function avformat_new_stream() returns a NULL pointer on failure. However, in function rtp_mpegts_write_header(), its return value is not validated before it is dereferenced. Check the return value against NULL to avoid potential NULL dereference. Signed-off-by: Pan Bian <bianpan2016@163.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_threshold: use correct linesizePaul B Mahol2017-11-271-2/+2
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avformat/matroskaenc: actually enforce the stream limitJames Almer2017-11-271-0/+7
| | | | | | | Prevents out of array accesses. Adressess ticket #6873 Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/af_silenceremove: fix possible crash if supplied duration is negativePaul B Mahol2017-11-271-0/+9
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* lavd/alsa: Double maximum alsa buffer size.Carl Eugen Hoyos2017-11-271-1/+1
| | | | | | Fixes recording from ATI Wonder 600 USB adapter, regression since e35c674d. Reported and analyzed by: Marco Paolieri, paolieri at gmail
* avfilter/af_silenceremove: fix logic error in EOF casePaul B Mahol2017-11-271-1/+1
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avformat/avienc: fix fields-per-frame value for interlaced video streamsTobias Rapp2017-11-273-14/+33
| | | | | | | | | | | | Writes one set of field framing information for progressive streams and two sets for interlaced streams. Fixes ticket #6383. Unfortunately the OpenDML v1.02 document is not very specific on what value to use for start_line when frame data is not coming from a capturing device, so this is just using 0/1 depending on the field order as a best-effort guess. Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
* avcodec/nvdec: More effort to make vp8 compile with gcc < 4.6Philip Langdale2017-11-261-11/+10
| | | | | | | | | | | I'm told my prefix work-around wasn't enough to make it compile, although I'm not sure why; I did some basic testing and that approach appeared to work, but I'm not in a position to do a full compile on CentOS 6 so I can't be sure of anything. I have had it confirmed that the additional change to not use named initialisers is enough to make it compile, so let's throw that into the mix too.
* avcodec/nvdec: Make vp8 initialisation more 'compatible'Philip Langdale2017-11-261-5/+14
| | | | | | | | | | | | | | | | | Ancient versions of gcc (pre 4.6) can't directly initialise members of anonymous inner unions/structs by name. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10676 Unfortunately, RHEL 6 shipped with one of these ancient versions and so we're stuck with it until approximately the heat death of the universe. Putting explicit braces into the initialisation is possibly a work-around but the behaviour there was never fully understood before direct initialisation was made to work. So, this may or may not work.
* tests/fate-run: Use -bitexactMichael Niedermayer2017-11-271-12/+12
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mlpdsp: Fix signed integer overflow, 2nd tryMichael Niedermayer2017-11-271-1/+1
| | | | | | | | | | The outputted bits should match what is used in the lossless check Fixes: runtime error: signed integer overflow: -538697856 * 256 cannot be represented in type 'int' Fixes: 4326/clusterfuzz-testcase-minimized-5689449645080576 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* libavformat/mov: Replace duplicate stream_nb check by assertMichael Niedermayer2017-11-271-2/+1
| | | | | Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>