obs-qsv11: Add ROI support

This commit is contained in:
Rodney
2024-01-11 13:36:35 +01:00
committed by derrod
parent 730ab5e6d1
commit 0510d673d3
5 changed files with 117 additions and 8 deletions
+16
View File
@@ -206,6 +206,22 @@ int qsv_encoder_headers(qsv_t *pContext, uint8_t **pSPS, uint8_t **pPPS,
return 0;
}
void qsv_encoder_add_roi(qsv_t *pContext, const obs_encoder_roi *roi)
{
QSV_Encoder_Internal *pEncoder = (QSV_Encoder_Internal *)pContext;
/* QP value is range 0..51 */
// ToDo figure out if this is different for AV1
mfxI16 delta = (mfxI16)(-51.0f * roi->priority);
pEncoder->AddROI(roi->left, roi->top, roi->right, roi->bottom, delta);
}
void qsv_encoder_clear_roi(qsv_t *pContext)
{
QSV_Encoder_Internal *pEncoder = (QSV_Encoder_Internal *)pContext;
pEncoder->ClearROI();
}
int qsv_encoder_encode(qsv_t *pContext, uint64_t ts, uint8_t *pDataY,
uint8_t *pDataUV, uint32_t strideY, uint32_t strideUV,
mfxBitstream **pBS)