Permalink
Commits on Sep 25, 2018
Commits on Aug 17, 2018
Commits on Aug 4, 2018
  1. libavcodec: v4l2m2m: fix error handling during buffer init

    ldts authored and lrusak committed May 6, 2018
    Signed-off-by: Jorge Ramirez-Ortiz <jramirez@baylibre.com>
  2. libavcodec: v4l2m2m: adjust formatting

    lrusak committed May 9, 2018
    just some simple formatting fixes that unify the code quality
  3. libavcodec: v4l2m2m: output AVDRMFrameDescriptor

    lrusak committed Apr 25, 2018
    This allows for a zero-copy output by exporting the v4l2 buffer then wrapping that buffer
    in the AVDRMFrameDescriptor like it is done in rkmpp.
    
    This has been in use for quite some time with great success on many platforms including:
     - Amlogic S905
     - Raspberry Pi
     - i.MX6
     - Dragonboard 410c
    
    This was developed in conjunction with Kodi to allow handling the zero-copy buffer rendering.
    A simply utility for testing is also available here: https://github.com/BayLibre/ffmpeg-drm
    
    todo:
     - allow selecting pixel format output from decoder
     - allow configuring amount of output and capture buffers
    
    V2:
     - allow selecting AV_PIX_FMT_DRM_PRIME
    
    V3:
     - use get_format to select AV_PIX_FMT_DRM_PRIME
     - use hw_configs
     - add handling of AV_PIX_FMT_YUV420P format (for raspberry pi)
     - add handling of AV_PIX_FMT_YUYV422 format (for i.MX6 coda decoder)
  4. libavcodec: v4l2m2m: fix indentation and add M2MDEC_CLASS

    lrusak committed Apr 25, 2018
    This just makes the M2MDEC_CLASS similar to how it is done in rkmpp. It looks
    clean and has proper indentation
Commits on Aug 3, 2018
  1. avcodec/mediacodecdec: fix SEGV on modern nvidia decoders

    tmm1 committed Jul 31, 2018
    This code came originally from gstreamer, where it was added in [1]
    as a work-around for the Tegra 3. (The alignment was changed in [2]
    as a response to [3], from 32-bit to 16-bit).
    
    gstreamer only used this workaround in the case where the decoder
    didn't return a slice-height property, but when the code was copied
    into avcodec the conditional got lost. This commit restores the guard
    and prefers the slice-height from the decoder when it is available.
    
    This fixes segfaults decoding 1920x1080 h264 and mpeg2 videos on the
    NVidia SHIELD after upgrading to Android Oreo.
    
    [1] GStreamer/gst-plugins-bad@a870e6a
    [2] GStreamer/gst-plugins-bad@21ff3ae
    [3] https://bugzilla.gnome.org/show_bug.cgi?id=748867
    
    Signed-off-by: Aman Gupta <aman@tmm1.net>
  2. lavc/svq3: Fix regression decoding some files.

    nbowe-google authored and Michael Niedermayer committed Jul 31, 2018
    Fixes some SVQ3 encoded files which fail to decode correctly after 6d6faa2.
    These files exhibit lots of artifacts and logs show "Media key encryption is not implemented".
    However they decode without artifacts before 6d6faa2.
    The attatched patch allows these files to successfully decode, but also reject media key files.
    
    Tested on the files in #6094 and http://samples.mplayerhq.hu/V-codecs/SVQ3/Vertical400kbit.sorenson3.mov
    
    Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
  3. avcodec/mlp_parser: Check if synccode is within buffer

    Michael Niedermayer
    Michael Niedermayer committed Jul 29, 2018
    Fixes: undefined shift
    Fixes: 9216/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TRUEHD_fuzzer-6281404575907840
    
    Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
    Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
  4. avcodec/qtrle: Check remaining bytestream in qtrle_decode_XYbpp()

    Michael Niedermayer
    Michael Niedermayer committed Jul 29, 2018
    Fixes: Timeout
    Fixes: 9213/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_QTRLE_fuzzer-5649753332252672
    
    Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
    Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Commits on Aug 2, 2018
  1. avformat/matroskaenc: filter and reorder AV1 OBUs

    jamrial committed Jul 23, 2018
    Make sure to not write forbidden OBUs to CodecPrivate, and do the same with
    unnecessary OBUs for packets.
    
    Signed-off-by: James Almer <jamrial@gmail.com>
  2. avformat/av1: reorder OBUs before writting them in ff_isom_write_av1c()

    jamrial committed Jul 30, 2018
    Make sure Sequence Header is first, and only allow one of its kind.
    
    Signed-off-by: James Almer <jamrial@gmail.com>
  3. avcodec/av1_parse: return size of the parsed OBU in parse_obu_header()

    jamrial committed Jul 30, 2018
    Signed-off-by: James Almer <jamrial@gmail.com>
  4. avformat/av1: return an error when no data is provided to ff_isom_wri…

    jamrial committed Jul 23, 2018
    …te_av1c()
    
    Signed-off-by: James Almer <jamrial@gmail.com>
  5. avcodec/av1_parse: check for OBU header overread

    jamrial committed Jul 23, 2018
    Signed-off-by: James Almer <jamrial@gmail.com>
  6. avcodec/libaomdec: auto insert dump_extra bitstream filter

    jamrial committed Jul 23, 2018
    Some containers, like Matroska, may propagate key frames with no Sequence
    Header OBU since it's provided in extradata instead.
    With this change, the Sequence Header will be appended to the packet data
    before calling aom_codec_decode().
    
    Signed-off-by: James Almer <jamrial@gmail.com>
  7. avcodec/dump_extradata_bsf: don't allocate a new AVPacket per filtere…

    jamrial committed Jul 23, 2018
    …d packet
    
    ~4x speedup in dump_extradata()
    
    Signed-off-by: James Almer <jamrial@gmail.com>
  8. avformat/avs: add descriptive name and url

    GyanD committed Aug 2, 2018
    AVS now more commonly refers to the Chinese AVS format. This demuxer
    processes video files for Creature Shock game
Commits on Aug 1, 2018
  1. x86/pixelutils: don't use the AVX2 functions on CPUs known to be slow…

    jamrial committed Aug 1, 2018
    … with them
    
    Signed-off-by: James Almer <jamrial@gmail.com>
  2. x86/pixelutils: add missing preprocessor wrapper to the AVX2 functions

    jamrial committed Aug 1, 2018
    Should fix compilation with old yasm/nasm
    
    Signed-off-by: James Almer <jamrial@gmail.com>
Commits on Jul 31, 2018
  1. avutil/pixelutils: sad_32x32 sse2/avx2 optimizations.

    mypopydev committed Jul 9, 2018
    add ff_pixelutils_sad_32x32_sse2, ff_pixelutils_sad_{a,u}_32x32_sse2,
    ff_pixelutils_sad_32x32_avx22, ff_pixelutils_sad_{a,u}_32x32_avx2
    
    use perf record/report profiling, get instructions:u for avx2 sad_32x32:
    
      72.05%  pixelutils  pixelutils     [.] block_sad_32x32_c
      18.50%  pixelutils  pixelutils     [.] block_sad_16x16_c
       4.78%  pixelutils  pixelutils     [.] block_sad_8x8_c
       2.69%  pixelutils  pixelutils     [.] block_sad_4x4_c
       0.89%  pixelutils  pixelutils     [.] block_sad_2x2_c
       0.16%  pixelutils  pixelutils     [.] ff_pixelutils_sad_32x32_avx2
       0.16%  pixelutils  pixelutils     [.] ff_pixelutils_sad_u_32x32_avx2
       0.12%  pixelutils  pixelutils     [.] ff_pixelutils_sad_a_32x32_avx2
    
    sse2 sad_32x32 instructions:u like:
    
      71.86%  pixelutils  pixelutils     [.] block_sad_32x32_c
      18.42%  pixelutils  pixelutils     [.] block_sad_16x16_c
       4.81%  pixelutils  pixelutils     [.] block_sad_8x8_c
       2.68%  pixelutils  pixelutils     [.] block_sad_4x4_c
       0.88%  pixelutils  pixelutils     [.] block_sad_2x2_c
       0.29%  pixelutils  pixelutils     [.] ff_pixelutils_sad_32x32_sse2
       0.26%  pixelutils  pixelutils     [.] ff_pixelutils_sad_u_32x32_sse2
       0.23%  pixelutils  pixelutils     [.] ff_pixelutils_sad_a_32x32_sse2
    
    Signed-off-by: Jun Zhao <mypopydev@gmail.com>
  2. lavutil/pixelutils: add sad_32x32 in pixelutils API.

    mypopydev committed Jul 9, 2018
    add sad_32x32 in pixelutils API, and update the fate.
    
    Signed-off-by: Jun Zhao <mypopydev@gmail.com>
Commits on Jul 30, 2018
  1. avcodec/h264_mp4toannexb_bsf: use enum constants for the NAL unit typ…

    jamrial committed Jul 29, 2018
    …e values
    
    Signed-off-by: James Almer <jamrial@gmail.com>
  2. fate: add tests for audio channel up-/downmixing with pan filter

    t-rapp committed Jul 19, 2018
    Add tests for upmixing and downmixing with audio channel counts that
    have a corresponding default layout and also tests where there is no
    default layout.
    
    Update the existing "stereo4" test so it actually outputs stereo like
    the other stereo tests. Rename the previous "stereo4" test into
    "upmix1".
    
    Reviewed-by: Nicolas George <george@nsup.org>
    Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
  3. tests/audiogen: raise channel count limit to 12

    t-rapp committed Jul 19, 2018
    Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
    Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
  4. doc/formats: Add documentation for skip_estimate_duration_from_pts

    Michael Niedermayer authored and GyanD committed Jul 24, 2018
    Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
    Signed-off-by: Gyan Doshi <ffmpeg@gyani.pro>
  5. configure: add missing aandcttables dependency to asv1 and asv2 encoders

    jamrial committed Jul 30, 2018
    Signed-off-by: James Almer <jamrial@gmail.com>