nvcodec: Update plugin cache

Updating plugin cache for IPC elements, JPEG encoder, and newly added
properties. Also removing Gst*SLDec which does not exist anymore
but renamed to Gst*Dec.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6070>
This commit is contained in:
Seungha Yang 2024-02-07 21:55:01 +09:00 committed by GStreamer Marge Bot
parent 77a09c1781
commit d444fe3fdc
13 changed files with 1095 additions and 208 deletions

View file

@ -13585,6 +13585,8 @@
"GstNvEncoderRCMode::cqp", "GstNvEncoderRCMode::cqp",
"GstNvEncoderRCMode::vbr", "GstNvEncoderRCMode::vbr",
"GstNvEncoderRCMode::vbr-hq", "GstNvEncoderRCMode::vbr-hq",
"GstNvH264Dec!sink",
"GstNvH264Dec!src",
"GstNvH264Enc", "GstNvH264Enc",
"GstNvH264Enc!sink", "GstNvH264Enc!sink",
"GstNvH264Enc!src", "GstNvH264Enc!src",
@ -13595,8 +13597,8 @@
"GstNvH264Enc:temporal-aq", "GstNvH264Enc:temporal-aq",
"GstNvH264Enc:vbv-buffer-size", "GstNvH264Enc:vbv-buffer-size",
"GstNvH264Enc:weighted-pred", "GstNvH264Enc:weighted-pred",
"GstNvH264SLDec!sink", "GstNvH265Dec!sink",
"GstNvH264SLDec!src", "GstNvH265Dec!src",
"GstNvH265Enc", "GstNvH265Enc",
"GstNvH265Enc!sink", "GstNvH265Enc!sink",
"GstNvH265Enc!src", "GstNvH265Enc!src",
@ -13607,8 +13609,6 @@
"GstNvH265Enc:temporal-aq", "GstNvH265Enc:temporal-aq",
"GstNvH265Enc:vbv-buffer-size", "GstNvH265Enc:vbv-buffer-size",
"GstNvH265Enc:weighted-pred", "GstNvH265Enc:weighted-pred",
"GstNvH265SLDec!sink",
"GstNvH265SLDec!src",
"GstNvPreset", "GstNvPreset",
"GstNvPreset::default", "GstNvPreset::default",
"GstNvPreset::hp", "GstNvPreset::hp",
@ -13627,10 +13627,10 @@
"GstNvRCMode::vbr", "GstNvRCMode::vbr",
"GstNvRCMode::vbr-hq", "GstNvRCMode::vbr-hq",
"GstNvRCMode::vbr-minqp", "GstNvRCMode::vbr-minqp",
"GstNvVp8SLDec!sink", "GstNvVp8Dec!sink",
"GstNvVp8SLDec!src", "GstNvVp8Dec!src",
"GstNvVp9SLDec!sink", "GstNvVp9Dec!sink",
"GstNvVp9SLDec!src", "GstNvVp9Dec!src",
"GstOSXVideoSink!sink", "GstOSXVideoSink!sink",
"GstObject", "GstObject",
"GstObject.flags", "GstObject.flags",

File diff suppressed because it is too large Load diff

View file

@ -49,6 +49,11 @@ gst_cuda_ipc_client_deinit (void)
} }
} }
/**
* GstCudaIpcIOMode:
*
* Since: 1.24
*/
GType GType
gst_cuda_ipc_io_mode_get_type (void) gst_cuda_ipc_io_mode_get_type (void)
{ {

View file

@ -30,6 +30,11 @@
GST_DEBUG_CATEGORY (cuda_ipc_server_debug); GST_DEBUG_CATEGORY (cuda_ipc_server_debug);
#define GST_CAT_DEFAULT cuda_ipc_server_debug #define GST_CAT_DEFAULT cuda_ipc_server_debug
/**
* GstCudaIpcMode:
*
* Since: 1.24
*/
GType GType
gst_cuda_ipc_mode_get_type (void) gst_cuda_ipc_mode_get_type (void)
{ {

View file

@ -199,6 +199,8 @@ gst_cuda_ipc_sink_class_init (GstCudaIpcSinkClass * klass)
GST_DEBUG_CATEGORY_INIT (cuda_ipc_sink_debug, "cudaipcsink", GST_DEBUG_CATEGORY_INIT (cuda_ipc_sink_debug, "cudaipcsink",
0, "cudaipcsink"); 0, "cudaipcsink");
gst_type_mark_as_plugin_api (GST_TYPE_CUDA_IPC_MODE, (GstPluginAPIFlags) 0);
} }
static void static void

View file

@ -202,6 +202,9 @@ gst_nv_encoder_class_init (GstNvEncoderClass * klass)
(GstPluginAPIFlags) 0); (GstPluginAPIFlags) 0);
gst_type_mark_as_plugin_api (GST_TYPE_NV_ENCODER_SEI_INSERT_MODE, gst_type_mark_as_plugin_api (GST_TYPE_NV_ENCODER_SEI_INSERT_MODE,
(GstPluginAPIFlags) 0); (GstPluginAPIFlags) 0);
gst_type_mark_as_plugin_api (GST_TYPE_NV_ENCODER_MULTI_PASS,
(GstPluginAPIFlags) 0);
gst_type_mark_as_plugin_api (GST_TYPE_NV_ENCODER_TUNE, (GstPluginAPIFlags) 0);
} }
static void static void
@ -2063,31 +2066,120 @@ gst_nv_encoder_preset_get_type (void)
{ {
static GType preset_type = 0; static GType preset_type = 0;
static const GEnumValue presets[] = { static const GEnumValue presets[] = {
/**
* GstNvEncoderPreset::default:
*
* Since: 1.22
*/
{GST_NV_ENCODER_PRESET_DEFAULT, "Default (deprecated, use p1~7 with tune)", {GST_NV_ENCODER_PRESET_DEFAULT, "Default (deprecated, use p1~7 with tune)",
"default"}, "default"},
/**
* GstNvEncoderPreset::hp:
*
* Since: 1.22
*/
{GST_NV_ENCODER_PRESET_HP, {GST_NV_ENCODER_PRESET_HP,
"High Performance (deprecated, use p1~7 with tune)", "hp"}, "High Performance (deprecated, use p1~7 with tune)", "hp"},
/**
* GstNvEncoderPreset::hq:
*
* Since: 1.22
*/
{GST_NV_ENCODER_PRESET_HQ, "High Quality (deprecated, use p1~7 with tune)", {GST_NV_ENCODER_PRESET_HQ, "High Quality (deprecated, use p1~7 with tune)",
"hq"}, "hq"},
/**
* GstNvEncoderPreset::low-latency:
*
* Since: 1.22
*/
{GST_NV_ENCODER_PRESET_LOW_LATENCY_DEFAULT, {GST_NV_ENCODER_PRESET_LOW_LATENCY_DEFAULT,
"Low Latency (deprecated, use p1~7 with tune)", "low-latency"}, "Low Latency (deprecated, use p1~7 with tune)", "low-latency"},
/**
* GstNvEncoderPreset::low-latency-hq:
*
* Since: 1.22
*/
{GST_NV_ENCODER_PRESET_LOW_LATENCY_HQ, {GST_NV_ENCODER_PRESET_LOW_LATENCY_HQ,
"Low Latency (deprecated, use p1~7 with tune), High Quality", "Low Latency (deprecated, use p1~7 with tune), High Quality",
"low-latency-hq"}, "low-latency-hq"},
/**
* GstNvEncoderPreset::low-latency-hq:
*
* Since: 1.22
*/
{GST_NV_ENCODER_PRESET_LOW_LATENCY_HP, {GST_NV_ENCODER_PRESET_LOW_LATENCY_HP,
"Low Latency (deprecated, use p1~7 with tune), High Performance", "Low Latency (deprecated, use p1~7 with tune), High Performance",
"low-latency-hp"}, "low-latency-hp"},
/**
* GstNvEncoderPreset::lossless:
*
* Since: 1.22
*/
{GST_NV_ENCODER_PRESET_LOSSLESS_DEFAULT, {GST_NV_ENCODER_PRESET_LOSSLESS_DEFAULT,
"Lossless (deprecated, use p1~7 with tune)", "lossless"}, "Lossless (deprecated, use p1~7 with tune)", "lossless"},
/**
* GstNvEncoderPreset::lossless-hp:
*
* Since: 1.22
*/
{GST_NV_ENCODER_PRESET_LOSSLESS_HP, {GST_NV_ENCODER_PRESET_LOSSLESS_HP,
"Lossless (deprecated, use p1~7 with tune), High Performance", "Lossless (deprecated, use p1~7 with tune), High Performance",
"lossless-hp"}, "lossless-hp"},
/**
* GstNvEncoderPreset::p1:
*
* Since: 1.24
*/
{GST_NV_ENCODER_PRESET_P1, "P1, fastest", "p1"}, {GST_NV_ENCODER_PRESET_P1, "P1, fastest", "p1"},
/**
* GstNvEncoderPreset::p2:
*
* Since: 1.24
*/
{GST_NV_ENCODER_PRESET_P2, "P2, faster", "p2"}, {GST_NV_ENCODER_PRESET_P2, "P2, faster", "p2"},
/**
* GstNvEncoderPreset::p3:
*
* Since: 1.24
*/
{GST_NV_ENCODER_PRESET_P3, "P3, fast", "p3"}, {GST_NV_ENCODER_PRESET_P3, "P3, fast", "p3"},
/**
* GstNvEncoderPreset::p4:
*
* Since: 1.24
*/
{GST_NV_ENCODER_PRESET_P4, "P4, medium", "p4"}, {GST_NV_ENCODER_PRESET_P4, "P4, medium", "p4"},
/**
* GstNvEncoderPreset::p5:
*
* Since: 1.24
*/
{GST_NV_ENCODER_PRESET_P5, "P5, slow", "p5"}, {GST_NV_ENCODER_PRESET_P5, "P5, slow", "p5"},
/**
* GstNvEncoderPreset::p6:
*
* Since: 1.24
*/
{GST_NV_ENCODER_PRESET_P6, "P6, slower", "p6"}, {GST_NV_ENCODER_PRESET_P6, "P6, slower", "p6"},
/**
* GstNvEncoderPreset::p7:
*
* Since: 1.24
*/
{GST_NV_ENCODER_PRESET_P7, "P7, slowest", "p7"}, {GST_NV_ENCODER_PRESET_P7, "P7, slowest", "p7"},
{0, NULL, NULL}, {0, NULL, NULL},
}; };

View file

@ -215,7 +215,7 @@ gst_nv_h264_dec_class_init (GstNvH264DecClass * klass,
object_class->get_property = gst_nv_h264_dec_get_property; object_class->get_property = gst_nv_h264_dec_get_property;
/** /**
* GstNvH264SLDec:cuda-device-id: * GstNvH264Dec:cuda-device-id:
* *
* Assigned CUDA device id * Assigned CUDA device id
* *
@ -227,7 +227,7 @@ gst_nv_h264_dec_class_init (GstNvH264DecClass * klass,
(GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS))); (GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvH264SLDec:num-output-surfaces: * GstNvH264Dec:num-output-surfaces:
* *
* The number of output surfaces (0 = auto). This property will be used to * The number of output surfaces (0 = auto). This property will be used to
* calculate the CUVIDDECODECREATEINFO.ulNumOutputSurfaces parameter * calculate the CUVIDDECODECREATEINFO.ulNumOutputSurfaces parameter
@ -244,7 +244,7 @@ gst_nv_h264_dec_class_init (GstNvH264DecClass * klass,
G_PARAM_STATIC_STRINGS))); G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvH264SLDec:init-max-width: * GstNvH264Dec:init-max-width:
* *
* Initial CUVIDDECODECREATEINFO.ulMaxWidth value * Initial CUVIDDECODECREATEINFO.ulMaxWidth value
* *
@ -260,7 +260,7 @@ gst_nv_h264_dec_class_init (GstNvH264DecClass * klass,
G_PARAM_STATIC_STRINGS))); G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvH264SLDec:init-max-height: * GstNvH264Dec:init-max-height:
* *
* Initial CUVIDDECODECREATEINFO.ulMaxHeight value * Initial CUVIDDECODECREATEINFO.ulMaxHeight value
* *

View file

@ -304,10 +304,46 @@ gst_nv_h264_encoder_class_init (GstNvH264EncoderClass * klass, gpointer data)
g_param_spec_enum ("preset", "Encoding Preset", g_param_spec_enum ("preset", "Encoding Preset",
"Encoding Preset", GST_TYPE_NV_ENCODER_PRESET, "Encoding Preset", GST_TYPE_NV_ENCODER_PRESET,
DEFAULT_PRESET, param_flags)); DEFAULT_PRESET, param_flags));
/**
* GstNvCudaH264Enc:tune:
*
* Since: 1.24
*/
/**
* GstNvD3D11H264Enc:tune:
*
* Since: 1.24
*/
/**
* GstNvAutoGpuH264Enc:tune:
*
* Since: 1.24
*/
g_object_class_install_property (object_class, PROP_TUNE, g_object_class_install_property (object_class, PROP_TUNE,
g_param_spec_enum ("tune", "Tune", g_param_spec_enum ("tune", "Tune",
"Encoding tune", GST_TYPE_NV_ENCODER_TUNE, "Encoding tune", GST_TYPE_NV_ENCODER_TUNE,
DEFAULT_TUNE, param_flags)); DEFAULT_TUNE, param_flags));
/**
* GstNvCudaH264Enc:multi-pass:
*
* Since: 1.24
*/
/**
* GstNvD3D11H264Enc:multi-pass:
*
* Since: 1.24
*/
/**
* GstNvAutoGpuH264Enc:multi-pass:
*
* Since: 1.24
*/
g_object_class_install_property (object_class, PROP_MULTI_PASS, g_object_class_install_property (object_class, PROP_MULTI_PASS,
g_param_spec_enum ("multi-pass", "Multi Pass", g_param_spec_enum ("multi-pass", "Multi Pass",
"Multi pass encoding", GST_TYPE_NV_ENCODER_MULTI_PASS, "Multi pass encoding", GST_TYPE_NV_ENCODER_MULTI_PASS,

View file

@ -211,7 +211,7 @@ gst_nv_h265_dec_class_init (GstNvH265DecClass * klass,
object_class->get_property = gst_nv_h265_dec_get_property; object_class->get_property = gst_nv_h265_dec_get_property;
/** /**
* GstNvH265SLDec:cuda-device-id: * GstNvH265Dec:cuda-device-id:
* *
* Assigned CUDA device id * Assigned CUDA device id
* *
@ -223,7 +223,7 @@ gst_nv_h265_dec_class_init (GstNvH265DecClass * klass,
(GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS))); (GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvH265SLDec:num-output-surfaces: * GstNvH265Dec:num-output-surfaces:
* *
* The number of output surfaces (0 = auto). This property will be used to * The number of output surfaces (0 = auto). This property will be used to
* calculate the CUVIDDECODECREATEINFO.ulNumOutputSurfaces parameter * calculate the CUVIDDECODECREATEINFO.ulNumOutputSurfaces parameter
@ -240,7 +240,7 @@ gst_nv_h265_dec_class_init (GstNvH265DecClass * klass,
G_PARAM_STATIC_STRINGS))); G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvH265SLDec:init-max-width: * GstNvH265Dec:init-max-width:
* *
* Initial CUVIDDECODECREATEINFO.ulMaxWidth value * Initial CUVIDDECODECREATEINFO.ulMaxWidth value
* *
@ -256,7 +256,7 @@ gst_nv_h265_dec_class_init (GstNvH265DecClass * klass,
G_PARAM_STATIC_STRINGS))); G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvH265SLDec:init-max-height: * GstNvH265Dec:init-max-height:
* *
* Initial CUVIDDECODECREATEINFO.ulMaxHeight value * Initial CUVIDDECODECREATEINFO.ulMaxHeight value
* *

View file

@ -309,10 +309,46 @@ gst_nv_h265_encoder_class_init (GstNvH265EncoderClass * klass, gpointer data)
g_param_spec_enum ("preset", "Encoding Preset", g_param_spec_enum ("preset", "Encoding Preset",
"Encoding Preset", GST_TYPE_NV_ENCODER_PRESET, "Encoding Preset", GST_TYPE_NV_ENCODER_PRESET,
DEFAULT_PRESET, param_flags)); DEFAULT_PRESET, param_flags));
/**
* GstNvCudaH265Enc:tune:
*
* Since: 1.24
*/
/**
* GstNvD3D11H265Enc:tune:
*
* Since: 1.24
*/
/**
* GstNvAutoGpuH265Enc:tune:
*
* Since: 1.24
*/
g_object_class_install_property (object_class, PROP_TUNE, g_object_class_install_property (object_class, PROP_TUNE,
g_param_spec_enum ("tune", "Tune", g_param_spec_enum ("tune", "Tune",
"Encoding tune", GST_TYPE_NV_ENCODER_TUNE, "Encoding tune", GST_TYPE_NV_ENCODER_TUNE,
DEFAULT_TUNE, param_flags)); DEFAULT_TUNE, param_flags));
/**
* GstNvCudaH265Enc:multi-pass:
*
* Since: 1.24
*/
/**
* GstNvD3D11H265Enc:multi-pass:
*
* Since: 1.24
*/
/**
* GstNvAutoGpuH265Enc:multi-pass:
*
* Since: 1.24
*/
g_object_class_install_property (object_class, PROP_MULTI_PASS, g_object_class_install_property (object_class, PROP_MULTI_PASS,
g_param_spec_enum ("multi-pass", "Multi Pass", g_param_spec_enum ("multi-pass", "Multi Pass",
"Multi pass encoding", GST_TYPE_NV_ENCODER_MULTI_PASS, "Multi pass encoding", GST_TYPE_NV_ENCODER_MULTI_PASS,

View file

@ -28,6 +28,21 @@
#include <string> #include <string>
#include <mutex> #include <mutex>
/**
* SECTION:element-nvjpegenc
* @title: nvjpegenc
*
* A nvJPEG library based JPEG encoder
*
* ## Example launch line
* ```
* gst-launch-1.0 videotestsrc num-buffers=1 ! nvjpegenc ! filesink location=myjpeg.jpg
* ```
*
* Since: 1.24
*
*/
GST_DEBUG_CATEGORY_STATIC (gst_nv_jpeg_enc_debug); GST_DEBUG_CATEGORY_STATIC (gst_nv_jpeg_enc_debug);
#define GST_CAT_DEFAULT gst_nv_jpeg_enc_debug #define GST_CAT_DEFAULT gst_nv_jpeg_enc_debug

View file

@ -134,7 +134,7 @@ gst_nv_vp8_dec_class_init (GstNvVp8DecClass * klass,
object_class->get_property = gst_nv_vp8_dec_get_property; object_class->get_property = gst_nv_vp8_dec_get_property;
/** /**
* GstNvVp8SLDec:cuda-device-id: * GstNvVp8Dec:cuda-device-id:
* *
* Assigned CUDA device id * Assigned CUDA device id
* *
@ -146,7 +146,7 @@ gst_nv_vp8_dec_class_init (GstNvVp8DecClass * klass,
(GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS))); (GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvVp8SLDec:num-output-surfaces: * GstNvVp8Dec:num-output-surfaces:
* *
* The number of output surfaces (0 = auto). This property will be used to * The number of output surfaces (0 = auto). This property will be used to
* calculate the CUVIDDECODECREATEINFO.ulNumOutputSurfaces parameter * calculate the CUVIDDECODECREATEINFO.ulNumOutputSurfaces parameter
@ -163,7 +163,7 @@ gst_nv_vp8_dec_class_init (GstNvVp8DecClass * klass,
G_PARAM_STATIC_STRINGS))); G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvVp8SLDec:init-max-width: * GstNvVp8Dec:init-max-width:
* *
* Initial CUVIDDECODECREATEINFO.ulMaxWidth value * Initial CUVIDDECODECREATEINFO.ulMaxWidth value
* *
@ -179,7 +179,7 @@ gst_nv_vp8_dec_class_init (GstNvVp8DecClass * klass,
G_PARAM_STATIC_STRINGS))); G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvVp8SLDec:init-max-height: * GstNvVp8Dec:init-max-height:
* *
* Initial CUVIDDECODECREATEINFO.ulMaxHeight value * Initial CUVIDDECODECREATEINFO.ulMaxHeight value
* *

View file

@ -137,7 +137,7 @@ gst_nv_vp9_dec_class_init (GstNvVp9DecClass * klass,
object_class->get_property = gst_nv_vp9_dec_get_property; object_class->get_property = gst_nv_vp9_dec_get_property;
/** /**
* GstNvVp9SLDec:cuda-device-id: * GstNvVp9Dec:cuda-device-id:
* *
* Assigned CUDA device id * Assigned CUDA device id
* *
@ -149,7 +149,7 @@ gst_nv_vp9_dec_class_init (GstNvVp9DecClass * klass,
(GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS))); (GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvVp9SLDec:num-output-surfaces: * GstNvVp9Dec:num-output-surfaces:
* *
* The number of output surfaces (0 = auto). This property will be used to * The number of output surfaces (0 = auto). This property will be used to
* calculate the CUVIDDECODECREATEINFO.ulNumOutputSurfaces parameter * calculate the CUVIDDECODECREATEINFO.ulNumOutputSurfaces parameter
@ -166,7 +166,7 @@ gst_nv_vp9_dec_class_init (GstNvVp9DecClass * klass,
G_PARAM_STATIC_STRINGS))); G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvVp9SLDec:init-max-width: * GstNvVp9Dec:init-max-width:
* *
* Initial CUVIDDECODECREATEINFO.ulMaxWidth value * Initial CUVIDDECODECREATEINFO.ulMaxWidth value
* *
@ -182,7 +182,7 @@ gst_nv_vp9_dec_class_init (GstNvVp9DecClass * klass,
G_PARAM_STATIC_STRINGS))); G_PARAM_STATIC_STRINGS)));
/** /**
* GstNvVp9SLDec:init-max-height: * GstNvVp9Dec:init-max-height:
* *
* Initial CUVIDDECODECREATEINFO.ulMaxHeight value * Initial CUVIDDECODECREATEINFO.ulMaxHeight value
* *