1. 06 Aug, 2019 1 commit
  2. 05 Aug, 2019 1 commit
  3. 26 Jul, 2019 1 commit
  4. 24 Jul, 2019 3 commits
    • Aaron Boxer's avatar
      96dc150b
    • Haihao Xiang's avatar
      msdkdec: make sure mfx frame width/height meets MSDK's requirement · 20f61db2
      Haihao Xiang authored
      It is possible that the output region size (e.g. 192x144) is different
      from the coded picture size (e.g. 192x256). We may adjust the alignment
      parameters so that the padding is respected in GstVideoInfo and use
      GstVideoInfo to calculate mfx frame width and height
      
      This fixes the error below when decoding a stream which has different
      output region size and coded picture size
      
      0:00:00.057726900 28634 0x55df6c3220a0 ERROR                msdkdec
      gstmsdkdec.c:1065:gst_msdkdec_handle_frame:<msdkh265dec0>
      DecodeFrameAsync failed (failed to allocate memory)
      
      Sample pipeline:
      
      gst-launch-1.0 filesrc location=output.h265 ! h265parse ! msdkh265dec !
      glimagesink
      20f61db2
    • Haihao Xiang's avatar
      msdkdec: remove unneeded code · 8145a223
      Haihao Xiang authored
      Before calling gst_msdkdec_create_buffer_pool, the alignment parameters
      have been adjusted.
      8145a223
  5. 22 Jul, 2019 1 commit
  6. 07 Jul, 2019 3 commits
    • Haihao Xiang's avatar
      msdk: add msdkvp9enc element · f5b1c75d
      Haihao Xiang authored
      f5b1c75d
    • Haihao Xiang's avatar
      msdk: workaround for MFX_FOURCC_VP9_SEGMAP surface · ba7f3f48
      Haihao Xiang authored
      MFX_FOURCC_VP9_SEGMAP surface in MSDK is an internal surface however
      MSDK still call the external allocator for this surface, so this plugin
      has to return UNSUPPORTED and force MSDK allocates surface using the
      internal allocator.
      
      See https://github.com/Intel-Media-SDK/MediaSDK/issues/762 for details
      ba7f3f48
    • Haihao Xiang's avatar
      msdkenc: allow encode element requires extra frames · 12218984
      Haihao Xiang authored
      The call of MFXVideoENCODE_EncodeFrameAsync may not generate output and
      the function returns MFX_ERR_MORE_DATA with NULL sync point, the input
      frame is cached in this case, so it is possible that all allocated
      frames go into the surfaces_used list after calling
      MFXVideoENCODE_EncodeFrameAsync a few times, then the encoder will fail
      to get an available surface before releasing used frames
      
      This patch adds a new field of num_extra_frames to GstMsdkEnc and allows
      encode element requires extra frames, the default value is 0.
      
      This patch is the preparation for msdkvp9enc element.
      12218984
  7. 30 Jun, 2019 1 commit
    • Haihao Xiang's avatar
      msdk: don't share context between msdkvpp and msdkenc · 98e49673
      Haihao Xiang authored
      msdkenc supports CSC implicitly, so it is possible that two VPP
      processes are required when a pipeline contains msdkvpp and msdkenc.
      Before this fix, msdkvpp and msdkenc may share the same context, hence
      the same mfx session, which results in MFX_ERR_UNDEFINED_BEHAVIOR
      in MSDK because a mfx session has at most one VPP process only
      
      This fixes the broken pipelines below:
      
      gst-launch-1.0 videotestsrc ! video/x-raw,format=I420 ! msdkh264enc ! \
      msdkh264dec ! msdkvpp ! video/x-raw,format=YUY2 ! fakesink
      
      gst-launch-1.0 videotestsrc ! msdkvpp ! video/x-raw,format=YUY2 ! \
      msdkh264enc ! fakesink
      98e49673
  8. 29 Jun, 2019 18 commits
  9. 31 May, 2019 1 commit
  10. 16 May, 2019 1 commit
  11. 13 May, 2019 1 commit
  12. 17 Apr, 2019 1 commit
  13. 10 Apr, 2019 3 commits
  14. 09 Apr, 2019 4 commits