Error when creating graph composer extension for splitmuxsink

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU) GPU
• DeepStream Version 6.2
• JetPack Version (valid for Jetson only)
• TensorRT Version 8.5.1
• NVIDIA GPU Driver Version (valid for GPU only) 525.105.17
• Issue Type( questions, new requirements, bugs) Issue
• 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)

In the Deepstream graph composer, it is possible to generate an extension via Tools | Generate Extension. When I execute this for jpegenc, is works successfully. However, when I try this for splitmuxsink, I get the following error:

2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: Traceback (most recent call last):
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: File "/opt/nvidia/deepstream/deepstream/tools/graph_extension_generator/generate_extensions.py", line 77, in <module>
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: generator.generateExtension(autogenBasePath, pluginName, pluginElements)
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: File "/opt/nvidia/deepstream/deepstream-6.2/tools/graph_extension_generator/graph_gstextension_generator.py", line 86, in generateExtension
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: generator.generateComponent(autogenBasePath, elem)
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: File "/opt/nvidia/deepstream/deepstream-6.2/tools/graph_extension_generator/graph_gstcomponent_generator.py", line 894, in generateComponent
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: self.__generateComponent(
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: File "/opt/nvidia/deepstream/deepstream-6.2/tools/graph_extension_generator/graph_gstcomponent_generator.py", line 802, in __generateComponent
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: (classCode, interfaceDefs) = self.__generateClass(elementName)
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: File "/opt/nvidia/deepstream/deepstream-6.2/tools/graph_extension_generator/graph_gstcomponent_generator.py", line 431, in __generateClass
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: _signal_set_str) = self.__generateSignal(elementName, signal, className)
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: File "/opt/nvidia/deepstream/deepstream-6.2/tools/graph_extension_generator/graph_gstcomponent_generator.py", line 388, in __generateSignal
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: factory_add_code = factory_add_code.replace("<BRIEF>", yamlSignalDef["brief"])
2023-06-09 09:37:50  [Error] [omni.kit.app._impl] [py stderr]: KeyError: 'brief'

(Empty lines from these error messages were removed for brevity).

splitmuxsink is available on the deepstream-6.2-devel container:

# gst-inspect-1.0 splitmuxsink
Factory Details:
  Rank                     none (0)
  Long-name                Split Muxing Bin
  Klass                    Generic/Bin/Muxer
  Description              Convenience bin that muxes incoming streams into multiple time/size limited files
  Author                   Jan Schmidt <jan@centricular.com>

Plugin Details:
  Name                     multifile
  Description              Reads/Writes buffers from/to sequentially named files
  Filename                 /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so
  Version                  1.16.3
  License                  LGPL
  Source module            gst-plugins-good
  Source release date      2020-10-21
  Binary package           GStreamer Good Plugins (Ubuntu)
  Origin URL               https://launchpad.net/distros/ubuntu/+source/gst-plugins-good1.0

Is there a way to fix this locally in the current version of Deepstream 6.2?

Thanks in advance!

What do you mean by generate extension with jpegenc or slitmuxsink? How did you do that? Can you provide the complete steps and commands?

Fiona,

Below the steps to reproduce:

  1. Start the Docker Deepstream development container (nvcr.io/nvidia/deepstream:6.2-devel).
  2. Install xterm (a missing package, required to install the dependencies for generate and/or building the extension):
    apt install xterm
  3. Open the graph composer:
    composer &
  4. Sync the ngc repository (Registry | Sync):
    image
  5. Open Tools | Generate Extension:
  6. Fill in the gstreamer element name for which to generate the extension, and the destination path:
  7. Click “Install Dependencies”, then “Generate”, then “Build”.

This works for jpegenc (and probably for some other gstreamer elements). Below the screenshot after generating for jpegenc:

When this succeeds, the jpegenc extension is visible in graph composer’s list of components:
image

The name only shows <DISPLAY_NAME>, but it is in fact the jpegenc component.

This doesn’t work for splitmuxsink, with the error message as posted in the first message.

I can reproduce the problem. We are investigating the problem, will be back when there is any progress.

Any updates to this?

The bug is fixed since DeepStream 6.4

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.