1. 11 Oct, 2018 2 commits
    • Zhong Li's avatar
      lavu/qsv: make a copy as libmfx alignment requirement for uploading · 681aa7d1
      Zhong Li authored
      Libmfx requires 16 bytes aligned input/output for uploading.
      Currently only output is 16 byte aligned and assigning same width/height to
      input with smaller buffer size actually, thus definitely will cause segment fault.
      
      Can reproduce with any 1080p nv12 rawvideo input:
      ffmpeg -init_hw_device qsv=qsv:hw -hwaccel qsv -filter_hw_device qsv -f rawvideo -pix_fmt nv12 -s:v 1920x1080
      -i 1080p_nv12.yuv -vf 'format=nv12,hwupload=extra_hw_frames=16,hwdownload,format=nv12' -an -y out_nv12.yuv
      
      It can fix #7418
      Signed-off-by: 's avatarZhong Li <zhong.li@intel.com>
      681aa7d1
    • Zhong Li's avatar
      lavu/hwcontext_qsv: Add support for AV_PIX_FMT_BGRA. · a5e1cb9e
      Zhong Li authored
      RGB32(AV_PIX_FMT_BGRA on intel platforms) format may be used as overlay with alpha blending.
      So add AV_PIX_FMT_BGRA format support.
      
      One example of alpha blending overlay: ffmpeg -hwaccel qsv -c:v h264_qsv -i BA1_Sony_D.jsv
      -filter_complex 'movie=lena-rgba.png,hwupload=extra_hw_frames=16[a];[0:v][a]overlay_qsv=x=10:y=10'
      -c:v h264_qsv -y out.mp4
      
      Rename RGB32 to be BGRA to make it clearer as Mark Thompson's suggestion.
      
      V2: Add P010 format support else will introduce HEVC 10bit encoding regression.
          Thanks for LinJie's discovery.
      Signed-off-by: 's avatarZhong Li <zhong.li@intel.com>
      Verified-by: 's avatarFu, Linjie <linjie.fu@intel.com>
      a5e1cb9e
  2. 10 Oct, 2018 7 commits
  3. 09 Oct, 2018 5 commits
  4. 08 Oct, 2018 2 commits
  5. 07 Oct, 2018 20 commits
  6. 06 Oct, 2018 4 commits