NvVideoEncoder plugin

Please provide complete information as applicable to your setup.

**• Hardware Platform (Jetson / Xavier AGX)**Xavier AGX
• DeepStream Version
• JetPack Version (valid for Jetson only) 4.4
• TensorRT Version 7.1
• NVIDIA GPU Driver Version (valid for GPU only)
**• Issue Type( questions, new requirements, bugs)**new requirement
• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)
**• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)**NvVideoEncoder

Is there any plugin of NvVideoEncoder?
Does it has MV extract function?
if it hasn’t how to add this function?
if the plugin exist, how to get it?
if there is no such plugin, how to build the related plugin?

Hi,
On Jetson platforms, we support gstreamer and jetson_multimedia_api. For video encoding, the implementation is nvv4l2h264enc, nvv4l2h265enc plugins in gstreamer, and NvVideoEcoder in jetson_multimedia_api. DeepStream SDK is based on gstreamer and you would need to use nvv4l2h264enc, nvv4l2h265enc.

Hi Danel,
Thanks for your reply.

Are all the deepstream pulgins open source?

If one plugin is open source and we want application to access this plugin, can we create one or some functions as APIs?

or, there are another formal method to create API?

If the plugin’s API has been created, how to re-build/make this new plugin?

Hi,
Some codes are open source in

/opt/nvidia/deepstream/deepstream-5.0/sources

For developing s custom plugin, please refer to

/opt/nvidia/deepstream/deepstream-5.0/sources/gst-plugins/gst-dsexample

Hi Danel,
Thanks for your information!

the template of gstdsexample.cpp is very similar to gstyoloplugin.cpp, run their make file will produce a xxx.a(library), that is a plugin, is it?

Can it (e.g. libyolo-lib.a produceed by gstyoloplugin.cpp) be used standalone?

If application want to get BBox positions and size from libyolo-lib.a, need I create new external function within gstyoloplugin.cpp? or, how can I access it’s standard API?(e.g. source pad)

Hi,
It is different. gstyoloplugin.cpp is customization of nvinfer and not a independent plugin. The source code of nvinfer is also public in

deepstream-5.0\sources\gst-plugins\gst-nvinfer

Both dsexample and nvinfer plugins are open source, you may check and select one for customization.