|
|
@@ -1231,15 +1231,15 @@ static void *amf_avc_create_texencode(obs_data_t *settings,
|
|
|
try {
|
|
|
check_texture_encode_capability(encoder, false);
|
|
|
|
|
|
- amf_texencode *enc = new amf_texencode;
|
|
|
+ std::unique_ptr<amf_texencode> enc = std::make_unique<amf_texencode>();
|
|
|
enc->encoder = encoder;
|
|
|
enc->encoder_str = "texture-amf-h264";
|
|
|
|
|
|
- if (!amf_init_d3d11(enc))
|
|
|
+ if (!amf_init_d3d11(enc.get()))
|
|
|
throw "Failed to create D3D11";
|
|
|
|
|
|
- amf_avc_create_internal(enc, settings);
|
|
|
- return enc;
|
|
|
+ amf_avc_create_internal(enc.get(), settings);
|
|
|
+ return enc.release();
|
|
|
|
|
|
} catch (const amf_error &err) {
|
|
|
blog(LOG_ERROR, "[texture-amf-h264] %s: %s: %ls", __FUNCTION__, err.str,
|
|
|
@@ -1254,12 +1254,12 @@ try {
|
|
|
static void *amf_avc_create_fallback(obs_data_t *settings,
|
|
|
obs_encoder_t *encoder)
|
|
|
try {
|
|
|
- amf_fallback *enc = new amf_fallback;
|
|
|
+ std::unique_ptr<amf_fallback> enc = std::make_unique<amf_fallback>();
|
|
|
enc->encoder = encoder;
|
|
|
enc->encoder_str = "fallback-amf-h264";
|
|
|
|
|
|
- amf_avc_create_internal(enc, settings);
|
|
|
- return enc;
|
|
|
+ amf_avc_create_internal(enc.get(), settings);
|
|
|
+ return enc.release();
|
|
|
|
|
|
} catch (const amf_error &err) {
|
|
|
blog(LOG_ERROR, "[texture-amf-h264] %s: %s: %ls", __FUNCTION__, err.str,
|
|
|
@@ -1541,15 +1541,15 @@ static void *amf_hevc_create_texencode(obs_data_t *settings,
|
|
|
try {
|
|
|
check_texture_encode_capability(encoder, true);
|
|
|
|
|
|
- amf_texencode *enc = new amf_texencode;
|
|
|
+ std::unique_ptr<amf_texencode> enc = std::make_unique<amf_texencode>();
|
|
|
enc->encoder = encoder;
|
|
|
enc->encoder_str = "texture-amf-h265";
|
|
|
|
|
|
- if (!amf_init_d3d11(enc))
|
|
|
+ if (!amf_init_d3d11(enc.get()))
|
|
|
throw "Failed to create D3D11";
|
|
|
|
|
|
- amf_hevc_create_internal(enc, settings);
|
|
|
- return enc;
|
|
|
+ amf_hevc_create_internal(enc.get(), settings);
|
|
|
+ return enc.release();
|
|
|
|
|
|
} catch (const amf_error &err) {
|
|
|
blog(LOG_ERROR, "[texture-amf-h265] %s: %s: %ls", __FUNCTION__, err.str,
|
|
|
@@ -1564,12 +1564,12 @@ try {
|
|
|
static void *amf_hevc_create_fallback(obs_data_t *settings,
|
|
|
obs_encoder_t *encoder)
|
|
|
try {
|
|
|
- amf_fallback *enc = new amf_fallback;
|
|
|
+ std::unique_ptr<amf_fallback> enc = std::make_unique<amf_fallback>();
|
|
|
enc->encoder = encoder;
|
|
|
enc->encoder_str = "fallback-amf-h265";
|
|
|
|
|
|
- amf_hevc_create_internal(enc, settings);
|
|
|
- return enc;
|
|
|
+ amf_hevc_create_internal(enc.get(), settings);
|
|
|
+ return enc.release();
|
|
|
|
|
|
} catch (const amf_error &err) {
|
|
|
blog(LOG_ERROR, "[texture-amf-h265] %s: %s: %ls", __FUNCTION__, err.str,
|