45 #ifndef __NV_VIDEO_ENCODER_H__
46 #define __NV_VIDEO_ENCODER_H__
106 uint32_t height, uint32_t sizeimage);
119 int setFrameRate(uint32_t framerate_num, uint32_t framerate_den);
160 int setLevel(
enum v4l2_mpeg_video_h264_level level);
449 int setQpRange(uint32_t MinQpI, uint32_t MaxQpI, uint32_t MinQpP,
450 uint32_t MaxQpP, uint32_t MinQpB, uint32_t MaxQpB);
459 static const NvElementProfiler::ProfilerField valid_fields =
460 NvElementProfiler::PROFILER_FIELD_TOTAL_UNITS |
461 NvElementProfiler::PROFILER_FIELD_LATENCIES |
462 NvElementProfiler::PROFILER_FIELD_FPS;
Holds the encoder frame ROI parameters.
int setRateControlMode(enum v4l2_mpeg_video_bitrate_mode mode)
Sets the encoder rate control mode.
NVIDIA Multimedia API: V4L2 Helper Class
int setSliceLength(v4l2_enc_slice_length_type type, uint32_t length)
Sets the encoder output slice length.
v4l2_enc_temporal_tradeoff_level_type
Enum specifying the types of encoder temporal tradeoff levels.
int setTemporalTradeoff(v4l2_enc_temporal_tradeoff_level_type level)
Sets the encoder Temporal Tradeoff.
Defines a helper class for V4L2 based components.
int setFrameRate(uint32_t framerate_num, uint32_t framerate_den)
Sets the encode framerate.
int setProfile(uint32_t profile)
Sets the encoder profile.
int enableMotionVectorReporting()
Enables video encoder output motion vector metadata reporting.
v4l2_enc_slice_length_type
Enum specifying the type of slice length.
int getMetadata(uint32_t buffer_index, v4l2_ctrl_videoenc_outputbuf_metadata &enc_metadata)
Gets metadata for the encoded capture plane buffer.
int setCapturePlaneFormat(uint32_t pixfmt, uint32_t width, uint32_t height, uint32_t sizeimage)
Sets the format on the encoder capture plane.
Holds the params to configure encoder for external rps control.
Holds the params to configure encoder for external rate control mode.
int enableROI(v4l2_enc_enable_roi_param ¶ms)
Enables External ROI.
int setNumReferenceFrames(uint32_t num_frames)
Sets the number of reference frames of the encoder.
int setROIParams(uint32_t buffer_index, v4l2_enc_frame_ROI_params ¶ms)
Sets the Region of Interest (ROI) parameters for the next buffer, which will be queued on the output ...
Defines a helper class for V4L2 Video Encoder.
int setBitrate(uint32_t bitrate)
Sets the encoder bitrate.
int setIDRInterval(uint32_t interval)
Sets the encoder IDR interval.
int setOutputPlaneFormat(uint32_t pixfmt, uint32_t width, uint32_t height)
Sets the format on the encoder output plane.
int setLevel(enum v4l2_mpeg_video_h264_level level)
Set the encoder level.
static NvVideoEncoder * createVideoEncoder(const char *name, int flags=0)
Creates a new V4L2 Video Encoder object named name.
Holds the params to configure encoder for ROI parameters encoding.
int getMotionVectors(uint32_t buffer_index, v4l2_ctrl_videoenc_outputbuf_metadata_MV &enc_mv_metadata)
Gets motion vector metadata for the encoded capture plane buffer.
int setInsertSpsPpsAtIdrEnabled(bool enabled)
Enables/disables insert SPS PPS at every IDR.
int setVirtualBufferSize(uint32_t size)
Sets the virtual buffer size of the encoder.
int setIFrameInterval(uint32_t interval)
Sets the encoder I-frame interval.
int enableExternalRPS(v4l2_enc_enable_ext_rps_ctr ¶ms)
Enable External RPS.
int enableReconCRC(v4l2_enc_enable_reconcrc_param ¶ms)
Enables Recon CRC.
int enableExternalRC(v4l2_enc_enable_ext_rate_ctr ¶ms)
Enable External Picture RC.
int SetInputMetaParams(uint32_t buffer_index, v4l2_ctrl_videoenc_input_metadata ¶ms)
Set input Metadata parameters for the next buffer which will be queued on output plane with index buf...
int setNumBFrames(uint32_t num)
Sets the number of B frames to P frames.
int setQpRange(uint32_t MinQpI, uint32_t MaxQpI, uint32_t MinQpP, uint32_t MaxQpP, uint32_t MinQpB, uint32_t MaxQpB)
Sets QP values for I/P/B frames.
int setSliceIntrarefresh(uint32_t interval)
Sets slice intra-refresh interval params.
Holds the params to configure encoder for Reconstructed CRC encoding.
int forceIDR()
Forces an IDR frame.