FFmpeg
FFmpeg-vaapi and FFmpeg-QSV 2022Q3 upstream patches commits tested:
- Intel FFmpeg upstream patches 2022Q3 queue release: tag (2022q3)
GStreamer
Gst-vaapi and Gst-msdk(in gst-plugins-bad) 2022Q2 upstream patches commits tested:
- gstreamer : 03a24de4cb29be9e6f2c16124c83d585de3c8408
Supported Intel Platforms
- ATS-M
- DG2
- RPL-S (Raptor Lake-S)
- ADL (Alder Lake-S/P)
- DG1/SG1
- RKL (Rocket Lake)
- TGL (Tiger Lake)
- ICL (Ice Lake)
- JSL (Jasper Lake)/EHL (Elkhart Lake)
- KBLx (KBL/Kaby Lake; CFL/Coffe Lake; WHL/Whiskey Lake; CML/Comet Lake; AML/Amber Lake)
Tested Features
- Decode: AVC/H264, HEVC/H265 (8/10/12bit), AV1 (8/10bit), VP9 (8, 10, 12bit), VP8, JPEG/MJPEG, MPEG2, VC1
- Encode: AV1 (ffmpeg-vaapi, ffmpeg-qsv and gst-msdk supported but not gst-vaapi), AVC/H264, HEVC/H265 (8/10bit), VP9 (8/10bit), VP8, JPEG/MJPEG, MPEG2
- VPP : brightness/contrast/saturation/hue, csc, deinterlace, denoise, scale, sharpen, mirroring, rotation, transpose
Supported Features Among Intel Platfoms
For features supported among on each Intel platform, please refer links shown as below:
- decode/encode features: https://github.com/intel/media-driver/#decodingencoding-features
- VPP features: https://github.com/intel/media-driver/#video-processing-features
Reference Configure Used: Intel Libva/iHD driver, MediaSDK, oneVPL and oneVPL GPU Runtime
For detailed information about new features and improvements, please check links below:
- Media driver: https://github.com/intel/media-driver/releases/tag/intel-media-22.5.4
- VPL Dispatcher: https://github.com/oneapi-src/oneVPL/releases/tag/v2022.2.2
- VPL Runtime: https://github.com/oneapi-src/oneVPL-intel-gpu/releases/tag/intel-onevpl-22.5.4
- Media SDK: https://github.com/Intel-Media-SDK/MediaSDK/commit/070e7de4f0b6529d88f4f...
- Libva: https://github.com/intel/libva/releases/tag/2.16.0
- Libva-utils: https://github.com/intel/libva-utils/releases/tag/2.16.0
- Gmmlib: https://github.com/intel/gmmlib/releases/tag/intel-gmmlib-22.2.0
Contractors
Please contact focus.luo@intel.com or ullysses.a.eoff@intel.com or haihao.xiang@intel.com or guangxin.xu@intel.com, if you have any question.
New Detail
2022Q3:
FFmpeg and Gstreamer added new RPL-S platform support
FFmpeg:
- ffmpeg-vaapi added av1 encode support
- ffmpeg-vaapi can select related hw codec to do decode automatically, a example cmd line for decode "ffmpeg -hwccel vaapi -i av1.mp4 -f null -"
- ffmpeg-qsv h265 encode added adaptive_i/b support
- ffmpeg-qsv vpp scaling add model select through oneVPL which supports EU, VDBOX or VEBOX. User can use option of "scale_mode" to select which hardware model
- ffmpeg dnn: OpenVINO full GPU detect and classify support
- ffmpeg dnn: enabled libtorch as one of FFmpeg DNN backend
Gstreamer:
- gst-msdk improve memory abstraction for encoder and vpp, which enables the direct share of VA surface between gst-msdk enc/vpp and gst-va element
- gst-msdk fix msdkav1enc's failure with some resolutions
2022Q2:
FFmpeg:
- ffmpeg-vaapi added VDSFC Scaling support
- ffmpeg-vaapi added max_frame_size for encode
- ffmpeg-vaapi added GPB frame support for encode
- ffmpeg-qsv added adaptive_i and adaptive_b support for hevc encode
- ffmpeg-qsv added min/max qp control for I/P/B frames
- ffmpeg-qsv added ROI support for h264/h265 encode
- ffmpeg-qsv supported yuyv422/y210 format direct input mode for encode
- ffmpeg added gaussian filter through Vulkan
- ffmpeg added stitching filter through libxcam library
- ffmpeg video analysis added BasicVSR super resolution support
- ffmpeg video analysis added FRVSR super resolution
Gstreamer:
- gst-msdk added av1 encode support;
- gst-msdk added VUYA interleaved color format in dmabuf mode
- gst-msdk added intra refresh for avc/hevc encode
2022Q1:
FFmpeg:
- ffmpeg_qsv added av1 encode support
- supported av1 decode frame split bsf feature in ffmpeg core
- fixed a hevc 10bit run2run issue on some legacy platforms for ffmpeg_qsv
- added a powerful and customizable gblur Vulkan filter for ffmpeg
Gstreamer:
- gst-msdk avc/hevc decoder added SFC support for csc and scaling
- gst-msdk encoders enabled VA surface input path
- gst-vaapi improved av1 parse and fixed some av1 decode failed cases (such as film grain)
- fixed some h264 decode failed cases for gst-msdk, which needs check for width and height in mfxVideoParam
2021Q4:
FFmpeg new features:
- buffer sharing between media and vulkan
- support 0YUV, YUY2, Y210, Y410, P012, Y212, Y412 on Windows when using d3d11 device
- hevc main10 sp encoding
Gstreamer new features:
- Gstmsdk vpp supports csc to 12bit format
- Gstmsdk hevc encoder supports to encode HDR SEIs
Project: