summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* avformat/http: clarify that ffmpeg will attempt to add missing CRLFGyan Doshi2019-01-29
|
* avcodec/arbc: clear decoder state when seekingJames Almer2019-01-28
| | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/motion_est: remove duplicate functionMarton Balint2019-01-28
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/dashenc: Skip writing trailer for MP4 output when in streaming modeKarthick J2019-01-28
| | | | In streaming mode mp4 trailer is not required for playout.
* avcodec/rscc: Avoid returning frames that have nearly no undamaged pixels in ↵Michael Niedermayer2019-01-28
| | | | | | | | | | | | | them Fixes: Timeout Fixes: 12192/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_RSCC_fuzzer-6279038004363264 Before: clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_RSCC_fuzzer-6279038004363264 in 15423 ms After: clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_RSCC_fuzzer-6279038004363264 in 190 ms Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec: Add discard_sample_percentageMichael Niedermayer2019-01-28
| | | | | Suggested-by: BBB Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* tools/target_dec_fate.list: add entries upto 1214Michael Niedermayer2019-01-28
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/huffyuvdec: Check slice_offset/sizeMichael Niedermayer2019-01-28
| | | | | | | | | Fixes: out of array access Fixes: 12447/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_HYMT_fuzzer-5201623956062208 Fixes: 12458/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_HYMT_fuzzer-5705567736168448 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/ilbcdec: Fix undefined integer overflow lsf2poly()Michael Niedermayer2019-01-28
| | | | | | | | | | | The addition is moved up into the context where the variable is unsigned avoiding the undefined behavior Fixes: runtime error: signed integer overflow: 2147481972 + 4096 cannot be represented in type 'int' Fixes: 12444/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ILBC_fuzzer-5755706244857856 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/ilbcdec: Fix integer overflow in construct_vector()Michael Niedermayer2019-01-28
| | | | | | | | | | webrtc contains explicit code to ignore the undefined behavior (RTC_NO_SANITIZE / OverflowingAddS32S32ToS32()) Probably fixes: Integer overflow (unreproducable here) Probably fixes: 12215/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ILBC_fuzzer-5767142427852800 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* MAINTAINERS: add AVS2 sectionhwren2019-01-28
| | | | | Signed-off-by: hwren <hwrenx@126.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* vaapi_encode_h265: Ensure that ref pics are always in the RPSMark Thompson2019-01-27
| | | | | | | | | | | | When making a new P-frame when B-frames are present the previous P-frame is normally in the DPB because it will be referred to by subsequent B-frames. However, this is not true if there are no B-frames, or in edge cases where a GOP ends with two P-frames. Fix this by adding the direct ref pics to the RPS explicitly. Fixes #7699. Tested-by: Ullysses A Eoff <ullysses.a.eoff@intel.com>
* lavf/subviewerdec: Skip leading BOM.Carl Eugen Hoyos2019-01-27
| | | | Fixes ticket #7661.
* avfilter/buffersrc: print relevant info when skipping filter reinitGyan Doshi2019-01-27
| | | | | | The timestamp of the changed input frame as well as its relevant properties can be examined by the user. Only applicable when reinit_filter is disabled on the input stream.
* lavf/cafdec: Do not fail for unknown atoms with negative size.Carl Eugen Hoyos2019-01-27
| | | | | | | The specification requires the demuxer to only read the data atom up to its given size, this is necessary as atoms are allowed at the end of the file. This patch duplicates the behaviour of the QuickTime player.
* avcodec: add ARBC decoderPaul B Mahol2019-01-27
| | | | Thanks Kostya for great help in reversing binary.
* avcodec/vp6: select idct based (loosely) on number of coefficients decodedPeter Ross2019-01-26
| | | | | | | | | | | The VP3/4/5/6 reference decoders all use three IDCT versions: one for the DC-only case, another for blocks with more than 10 coefficients, and an optimised one for blocks with up to 10 AC coefficents. VP6 relies on the sparse 10 coefficient version, and without it, IDCT drift occurs. Fixes: https://trac.ffmpeg.org/ticket/1282 Signed-off-by: Peter Ross <pross@xvid.org>
* avcodec/vp6: use ff_vp3dsp_[hv]_loop_filter_12Peter Ross2019-01-26
| | | | | | Partially fixes: https://trac.ffmpeg.org/ticket/1282 Signed-off-by: Peter Ross <pross@xvid.org>
* avcodec/vp6: use rounded shift for chroma motion vector calculationPeter Ross2019-01-26
| | | | | | Partially fixes: https://trac.ffmpeg.org/ticket/1282 Signed-off-by: Peter Ross <pross@xvid.org>
* avcodec/vp3dsp: add 10 coefficient version of the VP3 IDCTPeter Ross2019-01-26
| | | | | | This version of the IDCT is used by the VP6 decoder. Signed-off-by: Peter Ross <pross@xvid.org>
* avcodec/vp3dsp: add 12 pixel loop filter functionsPeter Ross2019-01-26
| | | | Signed-off-by: Peter Ross <pross@xvid.org>
* avcodec/vp3dsp: move vp3 init loop filter function to vp3dspPeter Ross2019-01-26
| | | | | | This is also used by the VP6 decoder. Signed-off-by: Peter Ross <pross@xvid.org>
* lavf/vaapi_deinterlace: return error if mode unsupportedZhong Li2019-01-25
| | | | | | Reviewed-by: Mark Thompson <sw@jkqxz.net> Signed-off-by: Fuwei Tang <fuweix.tang@intel.com> Signed-off-by: Zhong Li <zhong.li@intel.com>
* lavc/qsvenc: enable QVBR modeZhong Li2019-01-25
| | | | | | | | | | | | | | | | | QVBR mode is to use the variable bitrate control algorithm with constant quality. mfxExtCodingOption3 should be supported to enable QVBR mode. It is neccesary to specify a max_rate for QVBR, else it may be ICQ mode. Example usage: ffmpeg -hwaccel qsv -c:v h264_qsv -i input.mp4 -c:v h264_qsv -global_quality 25 -maxrate 2M test_qvbr.mp4 -v verbose Clip QVBR quality range to be [0, 51] as Mark's commments. It is similar to qp range of CQP but possibly should be updated when VP8/VP9 encoding can be supported. Reviewed-by: Mark Thompson <sw@jkqxz.net> Signed-off-by: Zhong Li <zhong.li@intel.com>
* avfilter/afade+acrossfade: allow skipping fade on inputsGyan Doshi2019-01-24
| | | | | New fade curve value 'nofade' passes audio samples as-is. Primarily useful in carrying out acrossfade without fades.
* avcodec/libx265: add support for ROI-based encodingGuo, Yejun2019-01-24
| | | | | Signed-off-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* lavf/supenc: Remove some unneeded casts.Carl Eugen Hoyos2019-01-24
|
* lavf/movenc: Mention video_track_timescale as option to fix the timescale.Carl Eugen Hoyos2019-01-24
| | | | | Smarter improvements for this error message were suggested in the past but this is certainly an improvement.
* libavfilter: add transpose_vaapi filterZachary Zhou2019-01-23
| | | | | | | | | | | | Swap width and height when do clock/cclock rotation Add reversal/hflip/vflip options ffmpeg -hwaccel vaapi -vaapi_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i input.264 -vf "transpose_vaapi=clock_flip" -c:v h264_vaapi output.h264 Signed-off-by: Zachary Zhou <zachary.zhou@intel.com> Signed-off-by: Mark Thompson <sw@jkqxz.net>
* vaapi_encode_vp9: Support more complex reference structuresMark Thompson2019-01-23
|
* vaapi_encode_h265: Support more complex reference structuresMark Thompson2019-01-23
| | | | | The reference picture sets are now constructed directly from the DPB information.
* vaapi_encode_h264: Support more complex reference structuresMark Thompson2019-01-23
|
* vaapi_encode: Let the reconstructed frame pool be sized dynamicallyMark Thompson2019-01-23
| | | | | No supported encode driver requires the pool to be fixed-size, so just remove this constraint.
* vaapi_encode: Convert to send/receive APIMark Thompson2019-01-23
| | | | | | | | | | | | | This attaches the logic of picking the mode of for the next picture to the output, which simplifies some choices by removing the concept of the picture for which input is not yet available. At the same time, we allow more complex reference structures and track more reference metadata (particularly the contents of the DPB) for use in the codec-specific code. It also adds flags to explicitly track the available features of the different codecs. The new structure also allows open-GOP support, so that is now available for codecs which can do it.
* vaapi_encode: Allocate picture-private data in generic codeMark Thompson2019-01-23
|
* cbs_h2645: Avoid memcpy when splitting fragment #2Andreas Rheinhardt2019-01-23
| | | | | | | | | | | Now memcpy can be avoided for NAL units containing escapes, too. Particularly improves performance for files with hardcoded black bars. For such a file, time spent in cbs_h2645_split_fragment went down from 369410 decicycles to 327677 decicycles. (It were 379114 decicycles when every NAL unit was copied.) Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
* h2645_parse: Make ff_h2645_packet_split reference-compatibleAndreas Rheinhardt2019-01-23
| | | | | | | This is in preparation for a patch for cbs_h2645. Now the packet's rbsp_buffer can be owned by an AVBuffer. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
* lavc/g723_1enc: Set the default bitrate to 6300.Carl Eugen Hoyos2019-01-23
|
* lavf/hlsproto: Replace a wrong eol comma with a semicolon.caohui2019-01-23
|
* avformat/img2enc: mention -frames:v in error messageLou Logan2019-01-22
| | | | | Signed-off-by: Lou Logan <lou@lrcd.com> Signed-off-by: Kieran O Leary <kieran.o.leary@gmail.com>
* avformat/concatdec: always re-calculate start time and durationMarton Balint2019-01-22
| | | | | | | | | | | | | | | | | | | | | This allows the underlying files to change their duration on subsequent avformat context opens. An example use case where this matters: ffconcat version 1.0 file dummy.mxf file dummy.mxf ffmpeg -re -stream_loop -1 -i dummy.ffconcat -f sdl2 none The user can seamlessly change the input by atomically replacing dummy.mxf. v2: Set ConcatFile duration in read_header for all segments with known durations because from now on we always recalculate the start time in open_file, and an instant seek could have caused unset ConcatFile durations. Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/concatdec: fix cur_dts based duration calculation with nonzero ↵Marton Balint2019-01-22
| | | | | | stream start_time Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/concatdec: factorize the duration calculating functionMarton Balint2019-01-22
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* lavc/qsvenc: set BRCParamMultiplier to aviod BRC overflowZhong Li2019-01-22
| | | | | | | | Fix ticket #7663 Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com> Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com> Signed-off-by: Zhong Li <zhong.li@intel.com>
* avcodec/mips: [loongson] optimize put_hevc_qpel_bi_hv_8 with mmi.Shiyou Yin2019-01-22
| | | | | | | Optimize put_hevc_qpel_bi_hv_8 with mmi in the case width=4/8/12/16/24/32/48/64. This optimization improved HEVC decoding performance 11.4%(2.01x to 2.24x, tested on loongson 3A3000). Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mips: [loongson] optimize put_hevc_qpel_hv_8 with mmi.Shiyou Yin2019-01-22
| | | | | | | Optimize put_hevc_qpel_hv_8 with mmi in the case width=4/8/12/16/24/32/48/64. This optimization improved HEVC decoding performance 11%(1.81x to 2.01x, tested on loongson 3A3000). Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/tests: Add codec_desc to .gitignoreFeRD (Frank Dana)2019-01-22
| | | | | | | | | The compiled libavcodec/tests/codec_desc was left out of that dir's .gitignore when the test was added, so it shows up in 'git status' as an untracked file if it's been built. Signed-off-by: FeRD (Frank Dana) <ferdnyc@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/dashenc: Added documentation for $ext$ identifier in filenamesKarthick J2019-01-21
|
* avformat/dashenc: Format xs:datetime in millisecond precisionKarthick J2019-01-21
| | | | For low latency streaming even milliseconds matter!
* avcodec/prosumer: Error out if decompress() stops reading dataMichael Niedermayer2019-01-20
| | | | | | | | | | | | | if 0 is encountered in the LUT then decompress() will continue to output 0 bytes but never read more data. Without a specification it is impossible to say if this is invalid or a feature. None of the valid prosumer files tested cause a 0 to be read, so it is likely not a intended feature. Fixes: Timeout Fixes: 11266/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PROSUMER_fuzzer-5681827423977472 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>