msdkh265enc: Add profile main10 still picture for hevc
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2524>
This commit is contained in:
parent
afa1c19b37
commit
788826b205
sys/msdk
@ -96,7 +96,7 @@ enum
|
|||||||
#define PROP_DBLK_IDC_DEFAULT 0
|
#define PROP_DBLK_IDC_DEFAULT 0
|
||||||
|
|
||||||
#define RAW_FORMATS "NV12, I420, YV12, YUY2, UYVY, BGRA, BGR10A2_LE, P010_10LE, VUYA"
|
#define RAW_FORMATS "NV12, I420, YV12, YUY2, UYVY, BGRA, BGR10A2_LE, P010_10LE, VUYA"
|
||||||
#define PROFILES "main, main-10, main-444, main-still-picture"
|
#define PROFILES "main, main-10, main-444, main-still-picture, main-10-still-picture"
|
||||||
#define COMMON_FORMAT "{ " RAW_FORMATS " }"
|
#define COMMON_FORMAT "{ " RAW_FORMATS " }"
|
||||||
#define PRFOLIE_STR "{ " PROFILES " }"
|
#define PRFOLIE_STR "{ " PROFILES " }"
|
||||||
|
|
||||||
@ -326,7 +326,15 @@ gst_msdkh265enc_configure (GstMsdkEnc * encoder)
|
|||||||
encoder->param.mfx.CodecProfile = MFX_PROFILE_HEVC_MAIN10;
|
encoder->param.mfx.CodecProfile = MFX_PROFILE_HEVC_MAIN10;
|
||||||
else if (!strcmp (h265enc->profile_name, "main-still-picture"))
|
else if (!strcmp (h265enc->profile_name, "main-still-picture"))
|
||||||
encoder->param.mfx.CodecProfile = MFX_PROFILE_HEVC_MAINSP;
|
encoder->param.mfx.CodecProfile = MFX_PROFILE_HEVC_MAINSP;
|
||||||
else if (!strcmp (h265enc->profile_name, "main-444") ||
|
else if (!strcmp (h265enc->profile_name, "main-10-still-picture")) {
|
||||||
|
encoder->param.mfx.CodecProfile = MFX_PROFILE_HEVC_MAIN10;
|
||||||
|
h265enc->ext_param.Header.BufferId = MFX_EXTBUFF_HEVC_PARAM;
|
||||||
|
h265enc->ext_param.Header.BufferSz = sizeof (h265enc->ext_param);
|
||||||
|
h265enc->ext_param.GeneralConstraintFlags =
|
||||||
|
MFX_HEVC_CONSTR_REXT_ONE_PICTURE_ONLY;
|
||||||
|
gst_msdkenc_add_extra_param (encoder,
|
||||||
|
(mfxExtBuffer *) & h265enc->ext_param);
|
||||||
|
} else if (!strcmp (h265enc->profile_name, "main-444") ||
|
||||||
!strcmp (h265enc->profile_name, "main-422-10") ||
|
!strcmp (h265enc->profile_name, "main-422-10") ||
|
||||||
!strcmp (h265enc->profile_name, "main-444-10") ||
|
!strcmp (h265enc->profile_name, "main-444-10") ||
|
||||||
!strcmp (h265enc->profile_name, "main-12"))
|
!strcmp (h265enc->profile_name, "main-12"))
|
||||||
|
@ -71,6 +71,7 @@ struct _GstMsdkH265Enc
|
|||||||
guint dblk_idc;
|
guint dblk_idc;
|
||||||
|
|
||||||
mfxExtHEVCTiles ext_tiles;
|
mfxExtHEVCTiles ext_tiles;
|
||||||
|
mfxExtHEVCParam ext_param;
|
||||||
/* roi[0] for current ROI and roi[1] for previous ROI */
|
/* roi[0] for current ROI and roi[1] for previous ROI */
|
||||||
mfxExtEncoderROI roi[2];
|
mfxExtEncoderROI roi[2];
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user