summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* avfilter: forward status back in some filters that missed itPaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/af_amerge: port to activate APIPaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* mpegvideo: add deprecated flags to the rc_strategy optionRostislav Pehlivanov2018-05-05
| | | | | | Forgotten with the commit which removed support for libxvid_rc. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* dcaenc: fix segfault when attempting to encode with invalid samplerateRostislav Pehlivanov2018-05-05
| | | | Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* mpegvideo: remove support for libxvid's RC systemRostislav Pehlivanov2018-05-05
| | | | Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* avfilter/vf_colorchannelmixer: add planar rgb supportPaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_colorchannelmixer: refactor codePaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_colorbalance: fix off by one overflowPaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_colorchannelmixer: add slice threadingPaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec/flac_parser: Fix infinite loopMichael Niedermayer2018-05-05
| | | | | | | | Fixes: crbug/827204 Reported-by: Frank Liberato <liberato@google.com> Reviewed-by: Frank Liberato <liberato@google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_colorbalance: add slice threadingPaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_colorbalance: add planar rgb supportPaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_convolution: use already available dstridePaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec/videotoolbox: fix kVTCouldNotFindVideoDecoderErr trying to decode ↵Aman Gupta2018-05-04
| | | | | | | | | | HEVC on iOS Older iOS devices don't have a hardware HEVC decoder, but the software decoder offered by VideoToolbox is well-optimized and performs much better than the ffmpeg decoder. Signed-off-by: Aman Gupta <aman@tmm1.net>
* avcodec/videotoolbox: improve logging of decoder errorsAman Gupta2018-05-04
| | | | Signed-off-by: Aman Gupta <aman@tmm1.net>
* avfilter/vf_colorbalance: add 16bit depth supportPaul B Mahol2018-05-05
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec/nvenc: move reconfig_encoder call inside of push/pop ctxTimo Rothenpieler2018-05-04
| | | | Also make it void, it must not fail the encode anyway.
* avcodec/nvenc: add A53CC supportRoman Arzumanyan2018-05-04
| | | | Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avcodec/nvenc: support dynamic bitrate changespkviet2018-05-04
| | | | | | | | | The patch enables dynamic bitrate through ReconfigureEncoder method from nvenc API. This is useful for live streaming in case of network congestion. Signed-off-by: pkviet <pkv.stream@gmail.com> Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avcodec/nvenc: support dynamic aspect ratio changeMiroslav Slugeň2018-05-04
| | | | | | | | If there is input like DVB-T streams it can change aspect ratio on-the-fly, so nvenc should respect this change and change aspect ratio in encoder. Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avcodec/nvenc: make hw_frames_ctx fully optionalTimo Rothenpieler2018-05-04
|
* avfilter/vf_libvmaf: the libvmaf filter tried to join on an invalid thread idKevin Wheatley2018-05-04
| | | | | | | | | | | The thread id was invalid because it was not initialised during the calls to init_complex_filtergraph. This adds a flag to check for initialisation before trying to peform the join. Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com> Signed-off-by: Kevin Wheatley <kevin.j.wheatley@gmail.com>
* avfilter/vf_lut3d: fix typoPaul B Mahol2018-05-04
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_edgedetect: add more formats support to canny modePaul B Mahol2018-05-04
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_edgedetect: add planes optionPaul B Mahol2018-05-04
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_edgedetect: add canny modePaul B Mahol2018-05-04
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_convolution: add column/vertical modePaul B Mahol2018-05-04
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_lut3d: add planar rgb supportPaul B Mahol2018-05-04
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec/mediacodecdec: add workaround for buggy amlogic mpeg2 decoderAman Gupta2018-05-04
| | | | | | | | | | | | | | | | | | I tested the previous mediacodec changes on seven different Android TV devices, with both mpeg2 and h264 content. All except one worked as expected. The exception was the MiBox3 running Android 6.0.1, where playback would freeze on a frame every few seconds. I tested two other AMLogic devices with newer Android versions that did not show the same problem. H264 decoding on the MiBox3 was also not affected, so this workaround applies only to OMX.amlogic.mpeg2.decoder.awesome on Android API22. There is a rumor that Xiaomi is planning to release Android Oreo for the MiBox3, so I will revisit in a few months to confirm whether this is specific to os/driver version or the chipset used in that device. Signed-off-by: Aman Gupta <aman@tmm1.net> Signed-off-by: Matthieu Bouron <matthieu.bouron@gmail.com>
* avcodec/mediacodecdec: wait on first frame after input buffers are fullAman Gupta2018-05-04
| | | | | | | | | | | The output_buffer_count==0 special case is no longer required, and can cause spurious EAGAIN to surface to the user when input buffers are filled up. Since the caller now knows if the decoder is accepting new input (via current_input_buffer>=0), let the wait parameter control whether we block or not. Signed-off-by: Aman Gupta <aman@tmm1.net> Signed-off-by: Matthieu Bouron <matthieu.bouron@gmail.com>
* avcodec/mediacodecdec: restructure mediacodec_receive_frameAman Gupta2018-05-04
| | | | | | | | | | | | | The new logic follows a recommendation by @rcombs to use dequeueInputBuffer with a timeout of 0 as a way to detect whether the codec wants more data. The dequeued buffer index is kept in MediaCodecDecContext until it can be used next. A similar technique is also used by the Google's official media player Exoplayer: see MediaCodecRenderer.feedInputBuffer(). Signed-off-by: Aman Gupta <aman@tmm1.net> Signed-off-by: Matthieu Bouron <matthieu.bouron@gmail.com>
* avcodec/mediacodec_wrapper: add helper to fetch SDK_INTAman Gupta2018-05-04
| | | | | Signed-off-by: Matthieu Bouron <matthieu.bouron@gmail.com> Signed-off-by: Aman Gupta <aman@tmm1.net>
* avformat: add vapoursynth wrapperwm42018-05-04
| | | | | | | | | | | | | This can "demux" .vpy files. Autodetection of .vpy scripts is intentionally not done, because it would be a major security issue. You need to force the format, for example with "-f vapoursynth" for the FFmpeg CLI tools. Some minor code copied from other LGPL parts of FFmpeg. I did not find a good way to test a few of the more obscure VS features, like VFR nodes, compat pixel formats, or nodes with dynamic size/format changes. These can be easily implemented on demand.
* Adds SRCNN filter.Sergey Lavrushkin2018-05-04
| | | | Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* avfilter/vf_amplify: add more options for finer filteringPaul B Mahol2018-05-04
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avformat/hls: don't propagate deprecated "user-agent" AVOptionwm42018-05-04
| | | | | | | | | This code will print a warning if any user agent is set - even if the API user used the proper non-deprecated "user_agent" option. This change should not even break anything, because even if the user sets the deprecated "user-agent" option, http.c copies it to the "user_agent" option anyway.
* avformat/matroskaenc: do not write timebase as frameratewm42018-05-04
| | | | | | | | | | | | | If the API user doesn't set avg_frame_rate, matroskaenc will write the current timebase as "default duration" for the video track. This makes no sense, because the "default duration" implies the framerate of the video. Since the timebase is forced to 1/1000, this will make the resulting file claim 1000fps. Drop it and don't write the element. It's optional, so it's better not to write it if the framerate is unknown. Strangely does not require FATE changes.
* avcodec/h263dec: Document padding_bug_score heuristic used for wrong stuffingMichael Niedermayer2018-05-04
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* vaapi_encode_h264: Take VAAPIEncodeH264Context::sei_needed as an ORed valueHaihao Xiang2018-05-03
| | | | | | We may check priv->sei_needed only when writing SEI messages. Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* avfilter/drawutils: add support for full rangePaul B Mahol2018-05-03
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec/mpeg4videodec: Split decode_studio_vol_header() out of ↵Michael Niedermayer2018-05-03
| | | | | | decode_studiovisualobject() Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mpeg4videodec: Move decode_studiovisualobject() parsing in the ↵Michael Niedermayer2018-05-03
| | | | | | | | | | branch for visual object parsing Fixes: runtime error: shift exponent -1 is negative Fixes: 7510/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MPEG4_fuzzer-5024523356209152 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/yuv4mpegdec: simplify mathPaul B Mahol2018-05-03
| | | | | | This one actually works with hd1080 y4m files when seeking backwards. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_neighbor: add >8 depth suppportPaul B Mahol2018-05-03
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_convolution: unbreak roberts filterPaul B Mahol2018-05-03
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_convolution: add horizontal/row modePaul B Mahol2018-05-03
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/vf_overlay: exclude nv12/nv21 formats from x86 asm checkPaul B Mahol2018-05-03
| | | | | | They are yet to be supported, Signed-off-by: Paul B Mahol <onemda@gmail.com>
* lavf/dashenc: pass standards compliance value to the internal contextJan Ekström2018-05-03
| | | | | | | | Enables one to test possibly nonstandard formats such as Opus or FLAC in ISOBMFF, among other things. This becomes much more useful if output segment format becomes an option, or if the WebM segment feature gets removed.
* lavf/dashenc: require experimental mode to be enabled for WebMJan Ekström2018-05-03
| | | | | | | It has not ever been working and has not been validated, Additionally, mention that the segment file names should be changed to end with webm instead of m4s, which is utilized for ISOBMFF fragments.
* lavf/dashenc: don't call flush_init_segment before avformat_write_headerRodger Combs2018-05-03
| | | | Fixes crash when muxing MKV-in-DASH