Image Stitching for NVIDIA Jetson/Examples/Using Gstd: Difference between revisions

From RidgeRun Developer Wiki
mNo edit summary
mNo edit summary
 
(9 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<noinclude>
<noinclude>
{{Image_Stitching_for_NVIDIA_Jetson/Head | }}
{{Image_Stitching_for_NVIDIA_Jetson/Head|previous=Examples/Basic pipelines|next=Examples/Other pipelines|metakeywords=Image Stitching, Image Stitching, CUDA, Stitcher, Panorama}}
</noinclude>
<noinclude>
{{Image_Stitching_for_NVIDIA_Jetson/Head|previous=Examples/Basic pipelines|next=Examples/Other pipelines|keywords=Image Stitching, Image Stitching, CUDA, Stitcher, Panorama}}
</noinclude>
</noinclude>


Line 9: Line 6:


[[GStreamer_Daemon]] is a gst-launch on steroids where you can create a GStreamer pipeline, play, pause, change speed, skip around, and even change element parameter settings all while the pipeline is active.
[[GStreamer_Daemon]] is a gst-launch on steroids where you can create a GStreamer pipeline, play, pause, change speed, skip around, and even change element parameter settings all while the pipeline is active.
<br>
{{ambox|text=This example only works for JP4.x!}}
<br>


==Running with bash GSTD client==
==Running with bash GSTD client==


The execution with GSTD is basically the same as any other pipeline.
The execution with GSTD is the same as any other pipeline.


<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
Line 20: Line 21:
cudastitcher name=stitcher \
cudastitcher name=stitcher \
homography-list="`cat homographies.json | tr -d "\n" | tr -d " "`" \
homography-list="`cat homographies.json | tr -d "\n" | tr -d " "`" \
border-width=10 \
nvarguscamerasrc sensor-id=0 ! nvvidconv ! "video/x-raw(memory:NVMM), width=1920, height=1080" ! queue ! stitcher.sink_0 \
nvarguscamerasrc sensor-id=0 ! nvvidconv ! "video/x-raw(memory:NVMM), width=1920, height=1080" ! queue ! stitcher.sink_0 \
nvarguscamerasrc sensor-id=1 ! nvvidconv ! "video/x-raw(memory:NVMM), width=1920, height=1080" ! queue ! stitcher.sink_1 \
nvarguscamerasrc sensor-id=1 ! nvvidconv ! "video/x-raw(memory:NVMM), width=1920, height=1080" ! queue ! stitcher.sink_1 \
Line 35: Line 35:
gstd-client pipeline_create stitcher_pipeline \
gstd-client pipeline_create stitcher_pipeline \
cudastitcher name=stitcher \
cudastitcher name=stitcher \
homography-list="`cat homographie.json | tr -d "\n" | tr -d " "`" \
homography-list="`cat homographie.json | tr -d "\n" | tr -d "\t" | tr -d " "`" \
border-width=10 \
videotestsrc pattern=ball ! videoconvert ! "video/x-raw, width=1920, height=1080" ! queue ! stitcher.sink_0 \
videotestsrc pattern=ball ! videoconvert ! "video/x-raw, width=1920, height=1080" ! queue ! stitcher.sink_0 \
videotestsrc pattern=smpte ! videoconvert ! "video/x-raw, width=1920, height=1080" ! queue ! stitcher.sink_1 \
videotestsrc pattern=smpte ! videoconvert ! "video/x-raw, width=1920, height=1080" ! queue ! stitcher.sink_1 \

Latest revision as of 09:03, 1 December 2023



Previous: Examples/Basic pipelines Index Next: Examples/Other pipelines






GStreamer_Daemon is a gst-launch on steroids where you can create a GStreamer pipeline, play, pause, change speed, skip around, and even change element parameter settings all while the pipeline is active.



Running with bash GSTD client

The execution with GSTD is the same as any other pipeline.

gstd # Launch gstd daemon, this will separate itself into its own process

gstd-client pipeline_create stitcher_pipeline \
cudastitcher name=stitcher \
homography-list="`cat homographies.json | tr -d "\n" | tr -d " "`" \
nvarguscamerasrc sensor-id=0 ! nvvidconv ! "video/x-raw(memory:NVMM), width=1920, height=1080" ! queue ! stitcher.sink_0 \
nvarguscamerasrc sensor-id=1 ! nvvidconv ! "video/x-raw(memory:NVMM), width=1920, height=1080" ! queue ! stitcher.sink_1 \
nvarguscamerasrc sensor-id=2 ! nvvidconv ! "video/x-raw(memory:NVMM), width=1920, height=1080" ! queue ! stitcher.sink_2 \
stitcher. ! queue ! nvvidconv ! "video/x-raw(memory:NVMM), width=1920, height=360" ! nvoverlaysink

gstd-client pipeline_play stitcher_pipeline

For x86 follow:

gstd # Launch gstd daemon, this will separate itself into its own process

gstd-client pipeline_create stitcher_pipeline \
cudastitcher name=stitcher \
homography-list="`cat homographie.json | tr -d "\n" | tr -d "\t" | tr -d " "`" \
videotestsrc pattern=ball ! videoconvert ! "video/x-raw, width=1920, height=1080" ! queue ! stitcher.sink_0 \
videotestsrc pattern=smpte ! videoconvert ! "video/x-raw, width=1920, height=1080" ! queue ! stitcher.sink_1 \
videotestsrc pattern=snow ! videoconvert ! "video/x-raw, width=1920, height=1080" ! queue ! stitcher.sink_2 \
stitcher. ! queue ! videoconvert ! xvimagesink sync=false

gstd-client pipeline_play stitcher_pipeline


Previous: Examples/Basic pipelines Index Next: Examples/Other pipelines