mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-13 23:22:54 +00:00
docs: Update nvcodec plugin docs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8325>
This commit is contained in:
parent
c01ef564d9
commit
d9510be7b1
5 changed files with 864 additions and 1156 deletions
File diff suppressed because it is too large
Load diff
|
@ -17,6 +17,21 @@
|
|||
* Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
/**
|
||||
* SECTION:element-cudacompositor
|
||||
* @title: cudacompositor
|
||||
*
|
||||
* A CUDA based video compositing element.
|
||||
*
|
||||
* ## Example launch line
|
||||
* ```
|
||||
* gst-launch-1.0 cudacompositor name=c ! cudadownload ! autovideosink \
|
||||
* videotestsrc ! video/x-raw,width=320,height=240 ! cudaupload ! c. \
|
||||
* videotestsrc pattern=ball ! video/x-raw,width=100,height=100 ! cudaupload ! c.
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
@ -34,6 +49,11 @@ enum GstCudaCompositorOperator
|
|||
GST_CUDA_COMPOSITOR_OPERATOR_OVER,
|
||||
};
|
||||
|
||||
/**
|
||||
* GstCudaCompositorOperator:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
#define GST_TYPE_CUDA_COMPOSITOR_OPERATOR (gst_cuda_compositor_operator_get_type())
|
||||
static GType
|
||||
gst_cuda_compositor_operator_get_type (void)
|
||||
|
@ -60,6 +80,11 @@ enum GstCudaCompositorSizingPolicy
|
|||
GST_CUDA_COMPOSITOR_SIZING_POLICY_KEEP_ASPECT_RATIO,
|
||||
};
|
||||
|
||||
/**
|
||||
* GstCudaCompositorSizingPolicy:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
#define GST_TYPE_CUDA_COMPOSITOR_SIZING_POLICY (gst_cuda_compositor_sizing_policy_get_type())
|
||||
static GType
|
||||
gst_cuda_compositor_sizing_policy_get_type (void)
|
||||
|
@ -148,6 +173,11 @@ struct GstCudaCompositorPadPrivate
|
|||
GstCudaCompositorSizingPolicy sizing_policy = DEFAULT_PAD_SIZING_POLICY;
|
||||
};
|
||||
|
||||
/**
|
||||
* GstCudaCompositorPad:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
struct _GstCudaCompositorPad
|
||||
{
|
||||
GstVideoAggregatorConvertPad parent;
|
||||
|
|
|
@ -17,6 +17,33 @@
|
|||
* Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
/**
|
||||
* SECTION:element-nvav1enc
|
||||
* @title: nvav1enc
|
||||
*
|
||||
* NVIDIA AV1 video encoder
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
|
||||
/**
|
||||
* SECTION:element-nvd3d11av1enc
|
||||
* @title: nvd3d11av1enc
|
||||
*
|
||||
* NVIDIA Direct3D11 mode AV1 video encoder
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
|
||||
/**
|
||||
* SECTION:element-nvautogpuav1enc
|
||||
* @title: nvautogpuav1enc
|
||||
*
|
||||
* NVIDIA auto GPU select mode AV1 video encoder
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
@ -263,6 +290,11 @@ gst_nv_av1_encoder_class_init (GstNvAv1EncoderClass * klass, gpointer data)
|
|||
GST_PARAM_DOC_SHOW_DEFAULT)));
|
||||
}
|
||||
if (cdata->adapter_luid_size > 0) {
|
||||
/**
|
||||
* GstNvAutoGpuAv1Enc:adapter-luid:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_ADAPTER_LUID,
|
||||
g_param_spec_int64 ("adapter-luid", "Adapter LUID",
|
||||
"DXGI Adapter LUID (Locally Unique Identifier) to use",
|
||||
|
|
|
@ -383,26 +383,61 @@ gst_nv_h264_encoder_class_init (GstNvH264EncoderClass * klass, gpointer data)
|
|||
"Number of frames between intra frames (-1 = infinite)",
|
||||
-1, G_MAXINT, DEFAULT_GOP_SIZE, param_flags));
|
||||
if (dev_caps->max_bframes > 0) {
|
||||
/**
|
||||
* GstNvD3D11H264Enc:bframes:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_B_FRAMES,
|
||||
g_param_spec_uint ("bframes", "B Frames",
|
||||
"Number of B-frames between I and P", 0, dev_caps->max_bframes,
|
||||
DEFAULT_B_FRAMES, conditional_param_flags));
|
||||
}
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:rc-mode:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_RATE_CONTROL,
|
||||
g_param_spec_enum ("rc-mode", "RC Mode", "Rate Control Mode",
|
||||
GST_TYPE_NV_ENCODER_RC_MODE, DEFAULT_RATE_CONTROL, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-const:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_CONST,
|
||||
g_param_spec_int ("qp-const", "QP Const",
|
||||
"DEPRECATED, use qp-const-{i,p,b} properties instead", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-const-i:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_CONST_I,
|
||||
g_param_spec_int ("qp-const-i", "QP Const I",
|
||||
"Constant QP value for I frame (-1 = default)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-const-p:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_CONST_P,
|
||||
g_param_spec_int ("qp-const-p", "QP Cost P",
|
||||
"Constant QP value for P frame (-1 = default)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-const-b:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_CONST_B,
|
||||
g_param_spec_int ("qp-const-b", "QP Const B",
|
||||
"Constant QP value for B frame (-1 = default)", -1, 51,
|
||||
|
@ -447,6 +482,12 @@ gst_nv_h264_encoder_class_init (GstNvH264EncoderClass * klass, gpointer data)
|
|||
"Temporal Adaptive Quantization", DEFAULT_TEMPORAL_AQ,
|
||||
conditional_param_flags));
|
||||
}
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:zerolatency:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_ZEROLATENCY,
|
||||
g_param_spec_boolean ("zerolatency", "Zerolatency",
|
||||
"Zero latency operation (no reordering delay)",
|
||||
|
@ -464,34 +505,82 @@ gst_nv_h264_encoder_class_init (GstNvH264EncoderClass * klass, gpointer data)
|
|||
"Adaptive Quantization Strength when spatial-aq is enabled"
|
||||
" from 1 (low) to 15 (aggressive), (0 = autoselect)",
|
||||
0, 15, DEFAULT_AQ_STRENGTH, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-min:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MIN,
|
||||
g_param_spec_int ("qp-min", "QP Min",
|
||||
"DEPRECATED, Use qp-min-{i,p,b} properties instead", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-min-i:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MIN_I,
|
||||
g_param_spec_int ("qp-min-i", "QP Min I",
|
||||
"Minimum QP value for I frame, (-1 = automatic)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-min-p:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MIN_P,
|
||||
g_param_spec_int ("qp-min-p", "QP Min P",
|
||||
"Minimum QP value for P frame, (-1 = automatic)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-min-b:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MIN_B,
|
||||
g_param_spec_int ("qp-min-b", "QP Min B",
|
||||
"Minimum QP value for B frame, (-1 = automatic)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-max:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MAX,
|
||||
g_param_spec_int ("qp-max", "QP Max",
|
||||
"DEPRECATED, Use qp-max-{i,p,b} properties instead", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-max-i:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MAX_I,
|
||||
g_param_spec_int ("qp-max-i", "QP Max I",
|
||||
"Maximum QP value for I frame, (-1 = automatic)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-max-p:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MAX_P,
|
||||
g_param_spec_int ("qp-max-p", "QP Max P",
|
||||
"Maximum QP value for P frame, (-1 = automatic)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H264Enc:qp-max-b:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MAX_B,
|
||||
g_param_spec_int ("qp-max-b", "Max QP B",
|
||||
"Maximum QP value for B frame, (-1 = automatic)", -1, 51,
|
||||
|
|
|
@ -388,26 +388,61 @@ gst_nv_h265_encoder_class_init (GstNvH265EncoderClass * klass, gpointer data)
|
|||
"Number of frames between intra frames (-1 = infinite)",
|
||||
-1, G_MAXINT, DEFAULT_GOP_SIZE, param_flags));
|
||||
if (dev_caps->max_bframes > 0) {
|
||||
/**
|
||||
* GstNvD3D11H265Enc:bframes:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_B_FRAMES,
|
||||
g_param_spec_uint ("bframes", "B Frames",
|
||||
"Number of B-frames between I and P", 0, dev_caps->max_bframes,
|
||||
DEFAULT_B_FRAMES, conditional_param_flags));
|
||||
}
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:rc-mode:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_RATE_CONTROL,
|
||||
g_param_spec_enum ("rc-mode", "RC Mode", "Rate Control Mode",
|
||||
GST_TYPE_NV_ENCODER_RC_MODE, DEFAULT_RATE_CONTROL, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-const:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_CONST,
|
||||
g_param_spec_int ("qp-const", "QP Const",
|
||||
"DEPRECATED, use qp-const-{i,p,b} properties instead",
|
||||
-1, 51, DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-const-i:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_CONST_I,
|
||||
g_param_spec_int ("qp-const-i", "QP Const I",
|
||||
"Constant QP value for I frame (-1 = default)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-const-p:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_CONST_P,
|
||||
g_param_spec_int ("qp-const-p", "QP Cost P",
|
||||
"Constant QP value for P frame (-1 = default)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-const-b:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_CONST_B,
|
||||
g_param_spec_int ("qp-const-b", "QP Const B",
|
||||
"Constant QP value for B frame (-1 = default)", -1, 51,
|
||||
|
@ -452,6 +487,12 @@ gst_nv_h265_encoder_class_init (GstNvH265EncoderClass * klass, gpointer data)
|
|||
"Temporal Adaptive Quantization", DEFAULT_TEMPORAL_AQ,
|
||||
conditional_param_flags));
|
||||
}
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:zerolatency:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_ZEROLATENCY,
|
||||
g_param_spec_boolean ("zerolatency", "Zerolatency",
|
||||
"Zero latency operation (no reordering delay)",
|
||||
|
@ -469,34 +510,82 @@ gst_nv_h265_encoder_class_init (GstNvH265EncoderClass * klass, gpointer data)
|
|||
"Adaptive Quantization Strength when spatial-aq is enabled"
|
||||
" from 1 (low) to 15 (aggressive), (0 = autoselect)",
|
||||
0, 15, DEFAULT_AQ_STRENGTH, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-min:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MIN,
|
||||
g_param_spec_int ("qp-min", "QP Min",
|
||||
"DEPRECATED, Use qp-min-{i,p,b} properties instead", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-min-i:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MIN_I,
|
||||
g_param_spec_int ("qp-min-i", "QP Min I",
|
||||
"Minimum QP value for I frame, (-1 = automatic)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-min-p:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MIN_P,
|
||||
g_param_spec_int ("qp-min-p", "QP Min P",
|
||||
"Minimum QP value for P frame, (-1 = automatic)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-min-b:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MIN_B,
|
||||
g_param_spec_int ("qp-min-b", "QP Min B",
|
||||
"Minimum QP value for B frame, (-1 = automatic)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-max:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MAX,
|
||||
g_param_spec_int ("qp-max", "QP Max",
|
||||
"DEPRECATED, Use qp-max-{i,p,b} properties instead", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-max-i:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MAX_I,
|
||||
g_param_spec_int ("qp-max-i", "QP Max I",
|
||||
"Maximum QP value for I frame, (-1 = automatic)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-max-p:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MAX_P,
|
||||
g_param_spec_int ("qp-max-p", "QP Max P",
|
||||
"Maximum QP value for P frame, (-1 = automatic)", -1, 51,
|
||||
DEFAULT_QP, param_flags));
|
||||
|
||||
/**
|
||||
* GstNvD3D11H265Enc:qp-max-b:
|
||||
*
|
||||
* Since: 1.26
|
||||
*/
|
||||
g_object_class_install_property (object_class, PROP_QP_MAX_B,
|
||||
g_param_spec_int ("qp-max-b", "Max QP B",
|
||||
"Maximum QP value for B frame, (-1 = automatic)", -1, 51,
|
||||
|
|
Loading…
Reference in a new issue