Difference between revisions of "GstSEIMetadata/Performance"

From RidgeRun Developer Connection
Jump to: navigation, search
m
m
 
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
<noinclude>
 
<noinclude>
{{GStreamer H264 - H265 Metadata/Head|previous=|next=|keywords=}}
+
{{GstSEIMetadata/Head|previous=Examples/C Example|next=Contact Us|metakeywords=}}
 
</noinclude>
 
</noinclude>
  
 
All the following pipelines were tested on a Xavier NX, using a imx219 camera. The CPU load in all cases was around 20%-23% and the frame rate was 30 fps. Elements from the GstSEI plugin didn't have a noticeable effect on the CPU usage.
 
All the following pipelines were tested on a Xavier NX, using a imx219 camera. The CPU load in all cases was around 20%-23% and the frame rate was 30 fps. Elements from the GstSEI plugin didn't have a noticeable effect on the CPU usage.
 
{{Review|Maybe a few words before each pipeline describing what it does or its purpose on this page}}
 
  
 
First, a reference pipeline without any elements form the GstSEI plugin, it just captures from the camera, encodes the video in H264 and uses the perf element to meassure frame rate and CPU usage.  
 
First, a reference pipeline without any elements form the GstSEI plugin, it just captures from the camera, encodes the video in H264 and uses the perf element to meassure frame rate and CPU usage.  
Line 22: Line 20:
 
</pre>
 
</pre>
  
Now lets add the seimetatester and the seiextract elements to the pipeline.
+
Now lets add the seimetatester and the seiextract elements to the reference pipeline.
 
<pre>
 
<pre>
 
gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! "video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)NV12" ! nvvidconv ! nvv4l2h264enc bitrate=4000000 control-rate=constant_bitrate iframeinterval=30 ! seimetatester ! seiextract ! perf ! fakesink
 
gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! "video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)NV12" ! nvvidconv ! nvv4l2h264enc bitrate=4000000 control-rate=constant_bitrate iframeinterval=30 ! seimetatester ! seiextract ! perf ! fakesink
Line 34: Line 32:
 
Now the same pipeline as before but with a long string as metadata.
 
Now the same pipeline as before but with a long string as metadata.
 
<pre>
 
<pre>
gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! "video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)NV12" ! nvvidconv ! nvv4l2h264enc bitrate=4000000 control-rate=constant_bitrate iframeinterval=30 ! seimetatester ! seiinject metadata="Hello Worldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" ! seiextract ! perf ! fakesink
+
gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! "video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)NV12" ! nvvidconv ! nvv4l2h264enc bitrate=4000000 control-rate=constant_bitrate iframeinterval=30 ! seimetatester ! seiinject metadata="Hello Worldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" ! seiextract ! perf ! fakesink
<pre>
+
</pre>
 +
 
 +
 
 +
 
  
 
<noinclude>
 
<noinclude>
{{GStreamer H264 - H265 Metadata/Foot||}}
+
{{GstSEIMetadata/Foot|Examples/C Example|Contact Us}}
 
</noinclude>
 
</noinclude>

Latest revision as of 05:56, 12 April 2023


Previous: Examples/C Example Index Next: Contact Us





All the following pipelines were tested on a Xavier NX, using a imx219 camera. The CPU load in all cases was around 20%-23% and the frame rate was 30 fps. Elements from the GstSEI plugin didn't have a noticeable effect on the CPU usage.

First, a reference pipeline without any elements form the GstSEI plugin, it just captures from the camera, encodes the video in H264 and uses the perf element to meassure frame rate and CPU usage.

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! "video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)NV12" ! nvvidconv ! nvv4l2h264enc bitrate=4000000 control-rate=constant_bitrate iframeinterval=30 ! perf ! fakesink

Now lets add the seimetatester element to the previous pipeline.

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! "video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)NV12" ! nvvidconv ! nvv4l2h264enc bitrate=4000000 control-rate=constant_bitrate iframeinterval=30 ! seimetatester ! perf ! fakesink

Now lets add the seimetatester and the seiinject elements.

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! "video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)NV12" ! nvvidconv ! nvv4l2h264enc bitrate=4000000 control-rate=constant_bitrate iframeinterval=30 ! seimetatester ! seiinject metadata="Hello World" ! perf ! fakesink

Now lets add the seimetatester and the seiextract elements to the reference pipeline.

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! "video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)NV12" ! nvvidconv ! nvv4l2h264enc bitrate=4000000 control-rate=constant_bitrate iframeinterval=30 ! seimetatester ! seiextract ! perf ! fakesink

Now all three elements together.

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! "video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)NV12" ! nvvidconv ! nvv4l2h264enc bitrate=4000000 control-rate=constant_bitrate iframeinterval=30 ! seimetatester ! seiinject metadata="Hello World" ! seiextract ! perf ! fakesink

Now the same pipeline as before but with a long string as metadata.

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! "video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)NV12" ! nvvidconv ! nvv4l2h264enc bitrate=4000000 control-rate=constant_bitrate iframeinterval=30 ! seimetatester ! seiinject metadata="Hello Worldaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" ! seiextract ! perf ! fakesink



Previous: Examples/C Example Index Next: Contact Us