recording 4k 20 fps using openCV and python

I am trying to record video from my PI Camera v2 using python and openCV. The problem is that the output file is just at 1 fps. When I use htop during recording I can see that the encoding just runs on a single CPU core. In the data sheet is stated that the jetson nano can handle up to 4K 30fps. so I guess that the encoding should run on GPU or some other special silicon.

Another problem is that I have no knowledge about video encoding pipeline and used the G-Stream pipeline method from a tutorial that displays the video stream instead of saving it.

def gstreamer_pipeline (capture_width=1280, capture_height=720, display_width=1280, display_height=720, framerate=60, flip_method=0) :
    return ('nvarguscamerasrc ! ' 
    'video/x-raw(memory:NVMM), '
    'width=(int)%d, height=(int)%d, '
    'format=(string)NV12, framerate=(fraction)%d/1 ! '
    'nvvidconv flip-method=%d ! '
    'video/x-raw, width=(int)%d, height=(int)%d, format=(string)BGRx ! '
    'videoconvert ! '
    'video/x-raw, format=(string)BGR ! appsink'  % (capture_width,capture_height,framerate,flip_method,display_width,display_height))

when I run this code in console mode only, it crashes and only works when the desktop is started.

Edit:
hir is my entire code, it is mostly cobbled together from a number of tutorials and quite crude. (so don’t judge me on it

What gives:

# Query for formats/resolutions/framerates available from you camera (v4l2-ctl is provided by apt package v4l-utils)
v4l2-ctl -d /dev/video0 --list-formats-ext

# See what nvarguscamerasrc would output by default:
gst-launch-1.0 -v nvarguscamerasrc ! fakesink

thanks for the quick answer.

I run the comments you have sent me.
I have posted the output down below.

v4l2-ctl -d /dev/video0 --list-formats-ext

returns:

ioctl: VIDIOC_ENUM_FMT
	Index       : 0
	Type        : Video Capture
	Pixel Format: 'RG10'
	Name        : 10-bit Bayer RGRG/GBGB
		Size: Discrete 3280x2464
			Interval: Discrete 0.048s (21.000 fps)
		Size: Discrete 3280x1848
			Interval: Discrete 0.036s (28.000 fps)
		Size: Discrete 1920x1080
			Interval: Discrete 0.033s (30.000 fps)
		Size: Discrete 1280x720
			Interval: Discrete 0.017s (60.000 fps)
		Size: Discrete 1280x720
			Interval: Discrete 0.017s (60.000 fps)
gst-launch-1.0 -v nvarguscamerasrc ! fakesink

returns:

Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
/GstPipeline:pipeline0/GstNvArgusCameraSrc:nvarguscamerasrc0.GstPad:src: caps = video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, format=(string)NV12, framerate=(fraction)30/1
/GstPipeline:pipeline0/GstFakeSink:fakesink0.GstPad:sink: caps = video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, format=(string)NV12, framerate=(fraction)30/1
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3280 x 2464 FR = 21,000000 fps Duration = 47619048 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 3280 x 1848 FR = 28,000001 fps Duration = 35714284 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1920 x 1080 FR = 29,999999 fps Duration = 33333334 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 59,999999 fps Duration = 16666667 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 120,000005 fps Duration = 8333333 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: Running with following settings:
   Camera index = 0 
   Camera mode  = 2 
   Output Stream W = 1920 H = 1080 
   seconds to Run    = 0 
   Frame Rate = 29,999999 
GST_ARGUS: PowerService: requested_clock_Hz=13608000
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.

Edit:
one think I have realized is that I can’t record in 3264x2464, because this is not a native resolution. I was aware of that, but before I didn’t need to care about this because some libraries always did it for me.

Hi,

What happens if you run the pipeline in console with some debug information?

GST_DEBUG=4 gst-launch-1.0 nvarguscamerasrc ! ‘video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)NV12, framerate=(fraction)60/1’ ! nvvidconv flip-method=0 ! ‘video/x-raw, width=(int)1280, height=(int)720, format=(string)BGRx’ ! fakesink silent=false -v

Also note you are using videoconvert which is a software-based element so performance will drop on those cases.

Regards,

hello
I run the code and put the output below.

Maybe I should explain what I am trying to do. I want to record video with my PI Camera. I also need the ability to stop recording and restart it. The Time delay between the restart end the point where a new frame is saved should be as short as possible. I also want to break the recorded video up in smaller files so it becomes easier to handle later. The problem wars never that I wasn’t able to record Video from my PI camera, the problem was that I did it wrong and it dropped 90% of all frames. I am sure that there is a easy solution out there from someone who knows more about this stuff then I do. I would be happy with something like:

open pipeline to camera with specified resolution and frame rate, 
start recording to file X for 60 sec
check if still recording
     yes: record again for 60 sec
     no:   wait for start signal

EDIT:
so I need the hardware support

0:00:00.000274635  5856   0x55ae4eb200 INFO                GST_INIT gst.c:586:init_pre: Initializing GStreamer Core Library version 1.14.1
0:00:00.000399114  5856   0x55ae4eb200 INFO                GST_INIT gst.c:587:init_pre: Using library installed in /usr/lib/aarch64-linux-gnu
0:00:00.000457291  5856   0x55ae4eb200 INFO                GST_INIT gst.c:607:init_pre: Linux jetson 4.9.140-tegra #1 SMP PREEMPT Wed Mar 13 00:32:22 PDT 2019 aarch64
0:00:00.001109425  5856   0x55ae4eb200 INFO                GST_INIT gstmessage.c:127:_priv_gst_message_initialize: init messages
0:00:00.002560828  5856   0x55ae4eb200 INFO                GST_INIT gstcontext.c:84:_priv_gst_context_initialize: init contexts
0:00:00.003374368  5856   0x55ae4eb200 INFO      GST_PLUGIN_LOADING gstplugin.c:317:_priv_gst_plugin_initialize: registering 0 static plugins
0:00:00.003671971  5856   0x55ae4eb200 INFO      GST_PLUGIN_LOADING gstplugin.c:225:gst_plugin_register_static: registered static plugin "staticelements"
0:00:00.003720409  5856   0x55ae4eb200 INFO      GST_PLUGIN_LOADING gstplugin.c:227:gst_plugin_register_static: added static plugin "staticelements", result: 1
0:00:00.003787492  5856   0x55ae4eb200 INFO            GST_REGISTRY gstregistry.c:1727:ensure_current_registry: reading registry cache: /home/jet/.cache/gstreamer-1.0/registry.aarch64.bin
0:00:00.043473652  5856   0x55ae4eb200 INFO            GST_REGISTRY gstregistrybinary.c:621:priv_gst_registry_binary_read_cache: loaded /home/jet/.cache/gstreamer-1.0/registry.aarch64.bin in 0,039590 seconds
0:00:00.043622350  5856   0x55ae4eb200 INFO            GST_REGISTRY gstregistry.c:1583:scan_and_update_registry: Validating plugins from registry cache: /home/jet/.cache/gstreamer-1.0/registry.aarch64.bin
0:00:00.049132650  5856   0x55ae4eb200 INFO            GST_REGISTRY gstregistry.c:1685:scan_and_update_registry: Registry cache has not changed
0:00:00.049172650  5856   0x55ae4eb200 INFO            GST_REGISTRY gstregistry.c:1762:ensure_current_registry: registry reading and updating done, result = 1
0:00:00.049192442  5856   0x55ae4eb200 INFO                GST_INIT gst.c:807:init_post: GLib runtime version: 2.56.4
0:00:00.049210775  5856   0x55ae4eb200 INFO                GST_INIT gst.c:809:init_post: GLib headers version: 2.56.2
0:00:00.049223900  5856   0x55ae4eb200 INFO                GST_INIT gst.c:810:init_post: initialized GStreamer successfully
0:00:00.049303223  5856   0x55ae4eb200 INFO            GST_PIPELINE gstparse.c:337:gst_parse_launch_full: parsing pipeline description 'nvarguscamerasrc ! video/x-raw(memory:NVMM),\ width=(int)1280,\ height=(int)720,\ format=(string)NV12,\ framerate=(fraction)60/1 ! nvvidconv flip-method=0 ! video/x-raw,\ width=(int)1280,\ height=(int)720,\ format=(string)BGRx ! fakesink silent=false '
0:00:00.098514778  5856   0x55ae4eb200 INFO      GST_PLUGIN_LOADING gstplugin.c:901:_priv_gst_plugin_load_file_for_registry: plugin "/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvarguscamerasrc.so" loaded
0:00:00.098574986  5856   0x55ae4eb200 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:361:gst_element_factory_create: creating element "nvarguscamerasrc"
0:00:00.099013788  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:670:gst_element_add_pad:<GstBaseSrc@0x55ae77d4e0> adding pad 'src'
0:00:00.100092952  5856   0x55ae4eb200 INFO      GST_PLUGIN_LOADING gstplugin.c:901:_priv_gst_plugin_load_file_for_registry: plugin "/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvidconv.so" loaded
0:00:00.100132327  5856   0x55ae4eb200 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:361:gst_element_factory_create: creating element "nvvidconv"
0:00:00.100437534  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:670:gst_element_add_pad:<GstBaseTransform@0x55ae7860e0> adding pad 'sink'
0:00:00.100490243  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:670:gst_element_add_pad:<GstBaseTransform@0x55ae7860e0> adding pad 'src'
0:00:00.101594250  5856   0x55ae4eb200 INFO      GST_PLUGIN_LOADING gstplugin.c:901:_priv_gst_plugin_load_file_for_registry: plugin "/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstcoreelements.so" loaded
0:00:00.101634407  5856   0x55ae4eb200 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:361:gst_element_factory_create: creating element "fakesink"
0:00:00.101849927  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:670:gst_element_add_pad:<GstBaseSink@0x55ae78e9e0> adding pad 'sink'
0:00:00.101910969  5856   0x55ae4eb200 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:361:gst_element_factory_create: creating element "pipeline"
0:00:00.102142791  5856   0x55ae4eb200 INFO            GST_PIPELINE grammar.y:652:gst_parse_perform_link: linking some pad of GstNvArgusCameraSrc named nvarguscamerasrc0 to some pad of Gstnvvconv named nvvconv0 (0/0) with caps "video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)NV12, framerate=(fraction)60/1"
0:00:00.102176489  5856   0x55ae4eb200 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:361:gst_element_factory_create: creating element "capsfilter"
0:00:00.102326280  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:670:gst_element_add_pad:<GstBaseTransform@0x55ae794130> adding pad 'sink'
0:00:00.102371020  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:670:gst_element_add_pad:<GstBaseTransform@0x55ae794130> adding pad 'src'
0:00:00.102403311  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2087:gst_bin_get_state_func:<pipeline0> getting state
0:00:00.102452634  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter0> completed state change to NULL
0:00:00.102487530  5856   0x55ae4eb200 INFO               GST_EVENT gstevent.c:1517:gst_event_new_reconfigure: creating reconfigure event
0:00:00.102518832  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstutils.c:1774:gst_element_link_pads_full: trying to link element nvarguscamerasrc0:(any) to element capsfilter0:sink
0:00:00.102550290  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:920:gst_element_get_static_pad: found pad capsfilter0:sink
0:00:00.102575394  5856   0x55ae4eb200 INFO                GST_PADS gstutils.c:1588:prepare_link_maybe_ghosting: nvarguscamerasrc0 and capsfilter0 in same bin, no need for ghost pads
0:00:00.102607529  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:2378:gst_pad_link_prepare: trying to link nvarguscamerasrc0:src and capsfilter0:sink
0:00:00.102645863  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:4230:gst_pad_peer_query:<capsfilter0:src> pad has no peer
0:00:00.102689508  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:2586:gst_pad_link_full: linked nvarguscamerasrc0:src and capsfilter0:sink, successful
0:00:00.102706592  5856   0x55ae4eb200 INFO               GST_EVENT gstevent.c:1517:gst_event_new_reconfigure: creating reconfigure event
0:00:00.102735550  5856   0x55ae4eb200 INFO               GST_EVENT gstpad.c:5785:gst_pad_send_event_unchecked:<nvarguscamerasrc0:src> Received event on flushing pad. Discarding
0:00:00.102774612  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstutils.c:1774:gst_element_link_pads_full: trying to link element capsfilter0:src to element nvvconv0:(any)
0:00:00.102794404  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:920:gst_element_get_static_pad: found pad capsfilter0:src
0:00:00.102818102  5856   0x55ae4eb200 INFO                GST_PADS gstutils.c:1035:gst_pad_check_link: trying to link capsfilter0:src and nvvconv0:sink
0:00:00.102866279  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:4230:gst_pad_peer_query:<nvvconv0:src> pad has no peer
0:00:00.103030029  5856   0x55ae4eb200 INFO                GST_PADS gstutils.c:1588:prepare_link_maybe_ghosting: capsfilter0 and nvvconv0 in same bin, no need for ghost pads
0:00:00.103066487  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:2378:gst_pad_link_prepare: trying to link capsfilter0:src and nvvconv0:sink
0:00:00.103110757  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:4230:gst_pad_peer_query:<nvvconv0:src> pad has no peer
0:00:00.103240549  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:2586:gst_pad_link_full: linked capsfilter0:src and nvvconv0:sink, successful
0:00:00.103261330  5856   0x55ae4eb200 INFO               GST_EVENT gstevent.c:1517:gst_event_new_reconfigure: creating reconfigure event
0:00:00.103282424  5856   0x55ae4eb200 INFO               GST_EVENT gstpad.c:5785:gst_pad_send_event_unchecked:<capsfilter0:src> Received event on flushing pad. Discarding
0:00:00.103333934  5856   0x55ae4eb200 INFO            GST_PIPELINE grammar.y:652:gst_parse_perform_link: linking some pad of Gstnvvconv named nvvconv0 to some pad of GstFakeSink named fakesink0 (0/0) with caps "video/x-raw, width=(int)1280, height=(int)720, format=(string)BGRx"
0:00:00.103360913  5856   0x55ae4eb200 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:361:gst_element_factory_create: creating element "capsfilter"
0:00:00.103407684  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:670:gst_element_add_pad:<GstBaseTransform@0x55ae794470> adding pad 'sink'
0:00:00.103447215  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:670:gst_element_add_pad:<GstBaseTransform@0x55ae794470> adding pad 'src'
0:00:00.103480600  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2087:gst_bin_get_state_func:<pipeline0> getting state
0:00:00.103524819  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter1> completed state change to NULL
0:00:00.103552111  5856   0x55ae4eb200 INFO               GST_EVENT gstevent.c:1517:gst_event_new_reconfigure: creating reconfigure event
0:00:00.103583673  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstutils.c:1774:gst_element_link_pads_full: trying to link element nvvconv0:(any) to element capsfilter1:sink
0:00:00.103607527  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:920:gst_element_get_static_pad: found pad capsfilter1:sink
0:00:00.103630496  5856   0x55ae4eb200 INFO                GST_PADS gstutils.c:1588:prepare_link_maybe_ghosting: nvvconv0 and capsfilter1 in same bin, no need for ghost pads
0:00:00.103660183  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:2378:gst_pad_link_prepare: trying to link nvvconv0:src and capsfilter1:sink
0:00:00.103767527  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:4230:gst_pad_peer_query:<capsfilter1:src> pad has no peer
0:00:00.103810287  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:2586:gst_pad_link_full: linked nvvconv0:src and capsfilter1:sink, successful
0:00:00.103830131  5856   0x55ae4eb200 INFO               GST_EVENT gstevent.c:1517:gst_event_new_reconfigure: creating reconfigure event
0:00:00.103850652  5856   0x55ae4eb200 INFO               GST_EVENT gstpad.c:5785:gst_pad_send_event_unchecked:<nvvconv0:src> Received event on flushing pad. Discarding
0:00:00.103884037  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstutils.c:1774:gst_element_link_pads_full: trying to link element capsfilter1:src to element fakesink0:(any)
0:00:00.103906954  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:920:gst_element_get_static_pad: found pad capsfilter1:src
0:00:00.103931954  5856   0x55ae4eb200 INFO                GST_PADS gstutils.c:1035:gst_pad_check_link: trying to link capsfilter1:src and fakesink0:sink
0:00:00.104050547  5856   0x55ae4eb200 INFO                GST_PADS gstutils.c:1588:prepare_link_maybe_ghosting: capsfilter1 and fakesink0 in same bin, no need for ghost pads
0:00:00.104083412  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:2378:gst_pad_link_prepare: trying to link capsfilter1:src and fakesink0:sink
0:00:00.104207422  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:2586:gst_pad_link_full: linked capsfilter1:src and fakesink0:sink, successful
0:00:00.104228828  5856   0x55ae4eb200 INFO               GST_EVENT gstevent.c:1517:gst_event_new_reconfigure: creating reconfigure event
0:00:00.104250234  5856   0x55ae4eb200 INFO               GST_EVENT gstpad.c:5785:gst_pad_send_event_unchecked:<capsfilter1:src> Received event on flushing pad. Discarding
Setting pipeline to PAUSED ...
0:00:00.104349765  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<fakesink0> current NULL pending VOID_PENDING, desired next READY
0:00:00.104379765  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<fakesink0> completed state change to READY
0:00:00.104405234  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<fakesink0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.104451379  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'fakesink0' changed state to 2(READY) successfully
0:00:00.104483411  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter1> current NULL pending VOID_PENDING, desired next READY
0:00:00.104508098  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter1> completed state change to READY
0:00:00.104532213  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter1> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.104611015  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter1' changed state to 2(READY) successfully
0:00:00.104653358  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvvconv0> current NULL pending VOID_PENDING, desired next READY
0:00:00.104682837  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvvconv0> completed state change to READY
0:00:00.104706639  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvvconv0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.104736639  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvvconv0' changed state to 2(READY) successfully
0:00:00.104764348  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter0> current NULL pending VOID_PENDING, desired next READY
0:00:00.104787316  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter0> completed state change to READY
0:00:00.104810962  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.104841483  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 2(READY) successfully
0:00:00.104869243  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvarguscamerasrc0> current NULL pending VOID_PENDING, desired next READY
0:00:00.104893722  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvarguscamerasrc0> completed state change to READY
0:00:00.104917628  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvarguscamerasrc0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.104948930  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvarguscamerasrc0' changed state to 2(READY) successfully
0:00:00.104982472  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2651:gst_element_continue_state:<pipeline0> committing state from NULL to READY, pending PAUSED, next PAUSED
0:00:00.105006587  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<pipeline0> notifying about state-changed NULL to READY (PAUSED pending)
0:00:00.105057941  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2658:gst_element_continue_state:<pipeline0> continue state change READY to PAUSED, final PAUSED
0:00:00.105100180  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<fakesink0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.105141690  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2958:gst_bin_change_state_func:<pipeline0> child 'fakesink0' is changing state asynchronously to PAUSED
0:00:00.105171899  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter1> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.105206430  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter1> completed state change to PAUSED
0:00:00.105229607  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter1> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.105262211  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter1' changed state to 3(PAUSED) successfully
0:00:00.105290388  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvvconv0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.105518825  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvvconv0> completed state change to PAUSED
0:00:00.105551012  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvvconv0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.105586741  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvvconv0' changed state to 3(PAUSED) successfully
0:00:00.105619502  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.105654293  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter0> completed state change to PAUSED
0:00:00.105678356  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.105709293  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 3(PAUSED) successfully
0:00:00.105737991  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvarguscamerasrc0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.105786689  5856   0x55ae4eb200 INFO                 basesrc gstbasesrc.c:1358:gst_base_src_do_seek:<nvarguscamerasrc0> seeking: time segment start=0:00:00.000000000, offset=0:00:00.000000000, stop=99:99:99.999999999, rate=1,000000, applied_rate=1,000000, flags=0x00, time=0:00:00.000000000, base=0:00:00.000000000, position 0:00:00.000000000, duration 99:99:99.999999999
0:00:00.105843928  5856   0x55ae4eb200 INFO                    task gsttask.c:457:gst_task_set_lock: setting stream lock 0x55ae77e110 on task 0x55ae7a4050
0:00:00.105868616  5856   0x55ae4eb200 INFO                GST_PADS gstpad.c:6131:gst_pad_start_task:<nvarguscamerasrc0:src> created task 0x55ae7a4050
0:00:00.105991741  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvarguscamerasrc0> completed state change to PAUSED
0:00:00.106022938  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvarguscamerasrc0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.106062522  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2995:gst_bin_change_state_func:<pipeline0> child 'nvarguscamerasrc0' changed state to 3(PAUSED) successfully without preroll
0:00:00.106089292  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<pipeline0> completed state change to PAUSED
0:00:00.106094188  5856   0x55ae788230 INFO        GST_ELEMENT_PADS gstelement.c:917:gst_element_get_static_pad: no such pad 'sink' in element "nvarguscamerasrc0"
0:00:00.106155751  5856   0x55ae788230 FIXME                default gstutils.c:3963:gst_pad_create_stream_id_internal:<nvarguscamerasrc0:src> Creating random stream-id, consider implementing a deterministic way of creating a stream-id
0:00:00.106159240  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<pipeline0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
Pipeline is live and does not need PREROLL ...
0:00:00.107163821  5856   0x55ae788230 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)NV12, framerate=(fraction)60/1
0:00:00.107292467  5856   0x55ae788230 INFO           basetransform gstbasetransform.c:1308:gst_base_transform_setcaps:<capsfilter0> reuse caps
0:00:00.107333040  5856   0x55ae788230 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)NV12, framerate=(fraction)60/1
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = event   ******* (fakesink0:sink) E (type: stream-start (10254), GstEventStreamStart, stream-id=(string)935d05503663308cd7511df756edaddb, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE, group-id=(uint)1;) 0x55ae78d900
/GstPipeline:pipeline0/GstNvArgusCameraSrc:nvarguscamerasrc0.GstPad:src: caps = video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)NV12, framerate=(fraction)60/1
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)NV12, framerate=(fraction)60/1
0:00:00.107562831  5856   0x55ae788230 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-raw, width=(int)1280, height=(int)720, framerate=(fraction)60/1, format=(string)BGRx
Setting pipeline to PLAYING ...
0:00:00.107770851  5856   0x55ae788230 INFO           basetransform gstbasetransform.c:1308:gst_base_transform_setcaps:<capsfilter1> reuse caps
0:00:00.107799966  5856   0x55ae4eb200 INFO               GST_EVENT gstevent.c:1388:gst_event_new_latency: creating latency event 0:00:00.000000000
0:00:00.107822257  5856   0x55ae788230 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-raw, width=(int)1280, height=(int)720, framerate=(fraction)60/1, format=(string)BGRx
0:00:00.107850174  5856   0x55ae4eb200 INFO                     bin gstbin.c:2781:gst_bin_do_latency_func:<pipeline0> configured latency of 0:00:00.000000000
0:00:00.107989705  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<fakesink0> current READY pending PAUSED, desired next PLAYING
0:00:00.108039392  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2958:gst_bin_change_state_func:<pipeline0> child 'fakesink0' is changing state asynchronously to PLAYING
0:00:00.108075590  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter1> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.108105642  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter1> completed state change to PLAYING
0:00:00.108149861  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter1> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.108188506  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter1' changed state to 4(PLAYING) successfully
0:00:00.108249965  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvvconv0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.108280069  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvvconv0> completed state change to PLAYING
0:00:00.108468506  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvvconv0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.108504079  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvvconv0' changed state to 4(PLAYING) successfully
0:00:00.108603349  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.108631891  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter0> completed state change to PLAYING
0:00:00.108652724  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.108701422  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 4(PLAYING) successfully
0:00:00.108735484  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvarguscamerasrc0> completed state change to PLAYING
0:00:00.108786161  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvarguscamerasrc0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.108817359  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvarguscamerasrc0' changed state to 4(PLAYING) successfully
/GstPipeline:pipeline0/Gstnvvconv:nvvconv0.GstPad:src: caps = video/x-raw, width=(int)1280, height=(int)720, framerate=(fraction)60/1, format=(string)BGRx
New clock: GstSystemClock
/GstPipeline:pipeline0/GstCapsFilter:capsfilter1.GstPad:src: caps = video/x-raw, width=(int)1280, height=(int)720, framerate=(fraction)60/1, format=(string)BGRx
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = event   ******* (fakesink0:sink) E (type: caps (12814), GstEventCaps, caps=(GstCaps)"video/x-raw\,\ width\=\(int\)1280\,\ height\=\(int\)720\,\ framerate\=\(fraction\)60/1\,\ format\=\(string\)BGRx";) 0x55ae78dac0
/GstPipeline:pipeline0/GstFakeSink:fakesink0.GstPad:sink: caps = video/x-raw, width=(int)1280, height=(int)720, framerate=(fraction)60/1, format=(string)BGRx
/GstPipeline:pipeline0/GstCapsFilter:capsfilter1.GstPad:sink: caps = video/x-raw, width=(int)1280, height=(int)720, framerate=(fraction)60/1, format=(string)BGRx
/GstPipeline:pipeline0/Gstnvvconv:nvvconv0.GstPad:sink: caps = video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)NV12, framerate=(fraction)60/1
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, format=(string)NV12, framerate=(fraction)60/1
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3280 x 2464 FR = 21,000000 fps Duration = 47619048 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 3280 x 1848 FR = 28,000001 fps Duration = 35714284 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1920 x 1080 FR = 29,999999 fps Duration = 33333334 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 59,999999 fps Duration = 16666667 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 120,000005 fps Duration = 8333333 ; Analog Gain range min 1,000000, max 10,625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: Running with following settings:
   Camera index = 0 
   Camera mode  = 4 
   Output Stream W = 1280 H = 720 
   seconds to Run    = 0 
   Frame Rate = 120,000005 
GST_ARGUS: PowerService: requested_clock_Hz=12096000
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
0:00:00.729162403  5856   0x55ae788230 INFO               GST_EVENT gstevent.c:895:gst_event_new_segment: creating segment event time segment start=0:00:00.000000000, offset=0:00:00.000000000, stop=99:99:99.999999999, rate=1,000000, applied_rate=1,000000, flags=0x00, time=0:00:00.000000000, base=0:00:00.000000000, position 0:00:00.000000000, duration 99:99:99.999999999
0:00:00.729386569  5856   0x55ae788230 INFO                 basesrc gstbasesrc.c:2945:gst_base_src_loop:<nvarguscamerasrc0> marking pending DISCONT
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = event   ******* (fakesink0:sink) E (type: segment (17934), GstEventSegment, segment=(GstSegment)"GstSegment, flags=(GstSegmentFlags)GST_SEGMENT_FLAG_NONE, rate=(double)1, applied-rate=(double)1, format=(GstFormat)GST_FORMAT_TIME, base=(guint64)0, offset=(guint64)0, start=(guint64)0, stop=(guint64)18446744073709551615, time=(guint64)0, position=(guint64)0, duration=(guint64)18446744073709551615;";) 0x55ae78db30
0:00:00.738874672  5856   0x55ae788230 INFO              GST_STATES gstbin.c:3431:bin_handle_async_done:<pipeline0> setting state from PAUSED to PAUSED, pending PLAYING
0:00:00.738918057  5856   0x55ae788230 INFO              GST_STATES gstbin.c:3451:bin_handle_async_done:<pipeline0> continue state change, pending PLAYING
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = preroll   ******* 
0:00:00.739247327  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:3248:gst_bin_continue_func:<pipeline0> continue state change PAUSED to PLAYING, final PLAYING
0:00:00.739432796  5856   0x55ae7885e0 INFO               GST_EVENT gstevent.c:1388:gst_event_new_latency: creating latency event 0:00:00.000000000
0:00:00.739531650  5856   0x55ae7885e0 INFO                     bin gstbin.c:2781:gst_bin_do_latency_func:<pipeline0> configured latency of 0:00:00.000000000
0:00:00.739614931  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<fakesink0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.739664670  5856   0x55ae7885e0 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<fakesink0> completed state change to PLAYING
0:00:00.739701337  5856   0x55ae7885e0 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<fakesink0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.621405458, pts: 0:00:00.621405458, duration: none, offset: -1, offset_end: -1, flags: 00000040 discont , meta: none) 0x7f7400a6d0
0:00:00.739990972  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'fakesink0' changed state to 4(PLAYING) successfully
0:00:00.740033576  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter1> current PLAYING pending VOID_PENDING, desired next PLAYING
0:00:00.740062065  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2621:gst_bin_element_set_state:<capsfilter1> skipping transition from PLAYING to  PLAYING
0:00:00.740088107  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter1' changed state to 4(PLAYING) successfully
0:00:00.740121180  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvvconv0> current PLAYING pending VOID_PENDING, desired next PLAYING
0:00:00.740146388  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2621:gst_bin_element_set_state:<nvvconv0> skipping transition from PLAYING to  PLAYING
0:00:00.740172794  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvvconv0' changed state to 4(PLAYING) successfully
0:00:00.740201648  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter0> current PLAYING pending VOID_PENDING, desired next PLAYING
0:00:00.740227221  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2621:gst_bin_element_set_state:<capsfilter0> skipping transition from PLAYING to  PLAYING
0:00:00.740252117  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 4(PLAYING) successfully
0:00:00.740279721  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvarguscamerasrc0> current PLAYING pending VOID_PENDING, desired next PLAYING
0:00:00.740300294  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2621:gst_bin_element_set_state:<nvarguscamerasrc0> skipping transition from PLAYING to  PLAYING
0:00:00.740325450  5856   0x55ae7885e0 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvarguscamerasrc0' changed state to 4(PLAYING) successfully
0:00:00.740354096  5856   0x55ae7885e0 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<pipeline0> completed state change to PLAYING
0:00:00.740379825  5856   0x55ae7885e0 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<pipeline0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.637405837, pts: 0:00:00.637405837, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.653833299, pts: 0:00:00.653833299, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.671114249, pts: 0:00:00.671114249, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400aa00
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.688318689, pts: 0:00:00.688318689, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ab10
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.704888442, pts: 0:00:00.704888442, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ac20
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.721504081, pts: 0:00:00.721504081, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ab10
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.738615760, pts: 0:00:00.738615760, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400aa00
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.755514054, pts: 0:00:00.755514054, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.772958077, pts: 0:00:00.772958077, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.790445276, pts: 0:00:00.790445276, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a6d0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.807552372, pts: 0:00:00.807552372, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.824243791, pts: 0:00:00.824243791, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.841247867, pts: 0:00:00.841247867, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400aa00
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.858619650, pts: 0:00:00.858619650, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ab10
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.876058984, pts: 0:00:00.876058984, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ac20
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.893136966, pts: 0:00:00.893136966, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ab10
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.910212395, pts: 0:00:00.910212395, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400aa00
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.927639230, pts: 0:00:00.927639230, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.944566430, pts: 0:00:00.944566430, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.961773630, pts: 0:00:00.961773630, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a6d0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.978804372, pts: 0:00:00.978804372, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:00.996031572, pts: 0:00:00.996031572, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.013547052, pts: 0:00:01.013547052, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400aa00
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.030888210, pts: 0:00:01.030888210, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ab10
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.047719942, pts: 0:00:01.047719942, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ac20
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.065012923, pts: 0:00:01.065012923, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ab10
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.082220800, pts: 0:00:01.082220800, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400aa00
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.099368677, pts: 0:00:01.099368677, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.116591346, pts: 0:00:01.116591346, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.133944066, pts: 0:00:01.133944066, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a6d0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.150974964, pts: 0:00:01.150974964, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.168084508, pts: 0:00:01.168084508, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.185349208, pts: 0:00:01.185349208, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400aa00
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.202452033, pts: 0:00:01.202452033, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ab10
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.219749962, pts: 0:00:01.219749962, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ac20
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.236889610, pts: 0:00:01.236889610, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ab10
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.254114257, pts: 0:00:01.254114257, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400aa00
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.271018125, pts: 0:00:01.271018125, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.288396887, pts: 0:00:01.288396887, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.305474608, pts: 0:00:01.305474608, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a6d0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.322679932, pts: 0:00:01.322679932, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.339962600, pts: 0:00:01.339962600, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.357318965, pts: 0:00:01.357318965, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400aa00
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.375165902, pts: 0:00:01.375165902, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ab10
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.392619872, pts: 0:00:01.392619872, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ac20
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.409908477, pts: 0:00:01.409908477, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400ab10
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.426942916, pts: 0:00:01.426942916, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400aa00
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.444288187, pts: 0:00:01.444288187, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.461885541, pts: 0:00:01.461885541, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.478853887, pts: 0:00:01.478853887, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a6d0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.495591451, pts: 0:00:01.495591451, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a7e0
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = chain   ******* (fakesink0:sink) (3686400 bytes, dts: 0:00:01.513242555, pts: 0:00:01.513242555, duration: none, offset: -1, offset_end: -1, flags: 00000000 , meta: none) 0x7f7400a8f0
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 0:00:01.529916475
Setting pipeline to PAUSED ...
0:00:01.638865552  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<fakesink0> current PLAYING pending VOID_PENDING, desired next PAUSED
0:00:01.638931073  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2958:gst_bin_change_state_func:<pipeline0> child 'fakesink0' is changing state asynchronously to PAUSED
0:00:01.638983677  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter1> current PLAYING pending VOID_PENDING, desired next PAUSED
0:00:01.639022218  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter1> completed state change to PAUSED
0:00:01.639059562  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter1> notifying about state-changed PLAYING to PAUSED (VOID_PENDING pending)
0:00:01.639121385  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter1' changed state to 3(PAUSED) successfully
0:00:01.639168937  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvvconv0> current PLAYING pending VOID_PENDING, desired next PAUSED
0:00:01.639207739  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvvconv0> completed state change to PAUSED
0:00:01.639244093  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvvconv0> notifying about state-changed PLAYING to PAUSED (VOID_PENDING pending)
0:00:01.639290187  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvvconv0' changed state to 3(PAUSED) successfully
0:00:01.639400186  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter0> current PLAYING pending VOID_PENDING, desired next PAUSED
0:00:01.639444561  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter0> completed state change to PAUSED
0:00:01.639482634  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter0> notifying about state-changed PLAYING to PAUSED (VOID_PENDING pending)
0:00:01.639530603  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 3(PAUSED) successfully
0:00:01.639577217  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvarguscamerasrc0> current PLAYING pending VOID_PENDING, desired next PAUSED
0:00:01.639617165  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvarguscamerasrc0> completed state change to PAUSED
0:00:01.639654613  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvarguscamerasrc0> notifying about state-changed PLAYING to PAUSED (VOID_PENDING pending)
0:00:01.639703154  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2995:gst_bin_change_state_func:<pipeline0> child 'nvarguscamerasrc0' changed state to 3(PAUSED) successfully without preroll
0:00:01.639747998  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<pipeline0> completed state change to PAUSED
0:00:01.639790498  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<pipeline0> notifying about state-changed PLAYING to PAUSED (VOID_PENDING pending)
Setting pipeline to READY ...
0:00:01.639990602  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<fakesink0> current PLAYING pending PAUSED, desired next READY
0:00:01.640115549  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<fakesink0> completed state change to READY
0:00:01.640172841  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<fakesink0> notifying about state-changed PLAYING to READY (VOID_PENDING pending)
0:00:01.640242684  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'fakesink0' changed state to 2(READY) successfully
0:00:01.640305601  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter1> current PAUSED pending VOID_PENDING, desired next READY
0:00:01.640393778  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter1> completed state change to READY
0:00:01.640450132  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter1> notifying about state-changed PAUSED to READY (VOID_PENDING pending)
0:00:01.640514350  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter1' changed state to 2(READY) successfully
0:00:01.640700287  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvvconv0> current PAUSED pending VOID_PENDING, desired next READY
0:00:01.641210755  5856   0x55ae788230 INFO                 basesrc gstbasesrc.c:2965:gst_base_src_loop:<nvarguscamerasrc0> pausing after gst_pad_push() = flushing
0:00:01.641287838  5856   0x55ae788230 INFO                    task gsttask.c:316:gst_task_func:<nvarguscamerasrc0:src> Task going to paused
0:00:01.642018201  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvvconv0> completed state change to READY
0:00:01.642286638  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvvconv0> notifying about state-changed PAUSED to READY (VOID_PENDING pending)
0:00:01.642366169  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvvconv0' changed state to 2(READY) successfully
0:00:01.642429190  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter0> current PAUSED pending VOID_PENDING, desired next READY
0:00:01.642520231  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter0> completed state change to READY
0:00:01.642561898  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter0> notifying about state-changed PAUSED to READY (VOID_PENDING pending)
0:00:01.642612679  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 2(READY) successfully
0:00:01.642708564  5856   0x55ae788230 INFO                    task gsttask.c:318:gst_task_func:<nvarguscamerasrc0:src> Task resume from paused
GST_ARGUS: Cleaning up
GST_ARGUS: 
PowerServiceHwVic::cleanupResources
CONSUMER: Done Success
GST_ARGUS: Done Success
0:00:01.777587933  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvarguscamerasrc0> completed state change to READY
0:00:01.777640381  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvarguscamerasrc0> notifying about state-changed PAUSED to READY (VOID_PENDING pending)
0:00:01.777683141  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvarguscamerasrc0' changed state to 2(READY) successfully
0:00:01.777723662  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<pipeline0> completed state change to READY
0:00:01.777751214  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<pipeline0> notifying about state-changed PAUSED to READY (VOID_PENDING pending)
0:00:01.777808557  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2087:gst_bin_get_state_func:<pipeline0> getting state
Setting pipeline to NULL ...
0:00:01.777889182  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<fakesink0> current READY pending VOID_PENDING, desired next NULL
0:00:01.777932463  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<fakesink0> completed state change to NULL
0:00:01.777962463  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<fakesink0> notifying about state-changed READY to NULL (VOID_PENDING pending)
0:00:01.777997359  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'fakesink0' changed state to 1(NULL) successfully
0:00:01.778028192  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter1> current READY pending VOID_PENDING, desired next NULL
0:00:01.778057567  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter1> completed state change to NULL
0:00:01.778081942  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter1> notifying about state-changed READY to NULL (VOID_PENDING pending)
0:00:01.778116734  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter1' changed state to 1(NULL) successfully
0:00:01.778142307  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvvconv0> current READY pending VOID_PENDING, desired next NULL
0:00:01.778174077  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvvconv0> completed state change to NULL
0:00:01.778202098  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvvconv0> notifying about state-changed READY to NULL (VOID_PENDING pending)
0:00:01.778230483  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvvconv0' changed state to 1(NULL) successfully
0:00:01.778256213  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<capsfilter0> current READY pending VOID_PENDING, desired next NULL
0:00:01.778288296  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter0> completed state change to NULL
0:00:01.778312515  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<capsfilter0> notifying about state-changed READY to NULL (VOID_PENDING pending)
0:00:01.778343869  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 1(NULL) successfully
0:00:01.778371264  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2504:gst_bin_element_set_state:<nvarguscamerasrc0> current READY pending VOID_PENDING, desired next NULL
0:00:01.778399910  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<nvarguscamerasrc0> completed state change to NULL
0:00:01.778424233  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<nvarguscamerasrc0> notifying about state-changed READY to NULL (VOID_PENDING pending)
0:00:01.778455066  5856   0x55ae4eb200 INFO              GST_STATES gstbin.c:2952:gst_bin_change_state_func:<pipeline0> child 'nvarguscamerasrc0' changed state to 1(NULL) successfully
0:00:01.778545847  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<pipeline0> completed state change to NULL
0:00:01.778572983  5856   0x55ae4eb200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<pipeline0> notifying about state-changed READY to NULL (VOID_PENDING pending)
Freeing pipeline ...
0:00:01.778638035  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstpad.c:2134:gst_pad_unlink: unlinking nvvconv0:src(0x55ae77e540) and capsfilter1:sink(0x55ae77ee80)
0:00:01.778678972  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstpad.c:2188:gst_pad_unlink: unlinked nvvconv0:src and capsfilter1:sink
0:00:01.778715586  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstpad.c:2134:gst_pad_unlink: unlinking capsfilter1:src(0x55ae77f0d0) and fakesink0:sink(0x55ae77e790)
0:00:01.778746576  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstpad.c:2188:gst_pad_unlink: unlinked capsfilter1:src and fakesink0:sink
0:00:01.778775586  5856   0x55ae4eb200 INFO           GST_PARENTAGE gstbin.c:1799:gst_bin_remove_func:<pipeline0> removed child "capsfilter1"
0:00:01.778821992  5856   0x55ae4eb200 INFO         GST_REFCOUNTING gstelement.c:3251:gst_element_dispose:<capsfilter1> 0x55ae794470 dispose
0:00:01.778848919  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:789:gst_element_remove_pad:<capsfilter1> removing pad 'sink'
0:00:01.778881419  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:789:gst_element_remove_pad:<capsfilter1> removing pad 'src'
0:00:01.778911471  5856   0x55ae4eb200 INFO         GST_REFCOUNTING gstelement.c:3297:gst_element_dispose:<capsfilter1> 0x55ae794470 parent class dispose
0:00:01.778934909  5856   0x55ae4eb200 INFO         GST_REFCOUNTING gstelement.c:3328:gst_element_finalize:<capsfilter1> 0x55ae794470 finalize
0:00:01.778956367  5856   0x55ae4eb200 INFO         GST_REFCOUNTING gstelement.c:3334:gst_element_finalize:<capsfilter1> 0x55ae794470 finalize parent
0:00:01.778990117  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstpad.c:2134:gst_pad_unlink: unlinking nvarguscamerasrc0:src(0x55ae77e0a0) and capsfilter0:sink(0x55ae77e9e0)
0:00:01.779022148  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstpad.c:2188:gst_pad_unlink: unlinked nvarguscamerasrc0:src and capsfilter0:sink
0:00:01.779057617  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstpad.c:2134:gst_pad_unlink: unlinking capsfilter0:src(0x55ae77ec30) and nvvconv0:sink(0x55ae77e2f0)
0:00:01.779087773  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstpad.c:2188:gst_pad_unlink: unlinked capsfilter0:src and nvvconv0:sink
0:00:01.779116002  5856   0x55ae4eb200 INFO           GST_PARENTAGE gstbin.c:1799:gst_bin_remove_func:<pipeline0> removed child "capsfilter0"
0:00:01.779153815  5856   0x55ae4eb200 INFO         GST_REFCOUNTING gstelement.c:3251:gst_element_dispose:<capsfilter0> 0x55ae794130 dispose
0:00:01.779176419  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:789:gst_element_remove_pad:<capsfilter0> removing pad 'sink'
0:00:01.779203658  5856   0x55ae4eb200 INFO        GST_ELEMENT_PADS gstelement.c:789:gst_element_remove_pad:<capsfilter0> removing pad 'src'
0:00:01.779231054  5856   0x55ae4eb200 INFO         GST_REFCOUNTING gstelement.c:3297:gst_element_dispose:<capsfilter0> 0x55ae794130 parent class dispose
0:00:01.779252460  5856   0x55ae4eb200 INFO         GST_REFCOUNTING gstelement.c:3328:gst_element_finalize:<capsfilter0> 0x55ae794130 finalize
0:00:01.779273554  5856   0x55ae4eb200 INFO         GST_REFCOUNTING gstelement.c:3334:gst_element_finalize:<capsfilter0> 0x55ae794130 finalize parent
0:00:01.779300168  5856   0x55ae4eb200 INFO           GST_PARENTAGE gstbin.c:1799:gst_bin_remove_func:<pipeline0> removed child "fakesink0"
0:00:01.779330689  5856   0x55ae4eb200 INFO

Hi,

If you want your processing time to be as short as possible then try to avoid any software-based processing in the pipeline. Having software encoders, video converts, and so on processing in software will kill your performance and this becomes worst when you increase the video resolution and frame rate.

You can continuously measure your current frame rate using this Open Source tool:

So you will be able to see if your frame rate is low, or if it is not stable at all.

You can take a look at the following link for some sample pipelines in the TX2:

They use the old nvcamerasrc so you just need to replace it with nvarguscamerasrc, here are some updated pipelines but running in the Xavier:

When processing time is critical, you can go for more complex tools to optimize you pipeline like GstShark:

On the other hand, regarding your application requirements, if you need some tricky playing (PAUSED, STOP, etc) and some pipeline control to detach and attach pipeline branches I would recommend to take a look to GSTD and gst-interpipes:

All of them are open source projects that would allow you to implement a complex media server quickly.

At last, for fast recording of data you can leave your capture pipeline running on a GStreamer branch (a bin) and attach/detach it from the recording pipeline using interpipes. This would allow you to quickly start recording from the incoming data (obviously this requires the capture pipeline to run all the time which might be a power consumption issue depending of your use case).

Best Regards,

Thank you a lot for all of the grade links.
I think I can give up hope, finding a easy solution.

One think I have realized is that GStreamer is manly for streaming (hints the name) and I just wont to record to the SD card.

For now I want to simplify it, and then later make it more complex.
The new gole is to simply record video (3280 x 2464 at 20 FPS) from my Pi Camera to SD card in a compressed format. For now I don’t care about time optimisation or splitting up the video file.

luckily I found an Example for recording video on the wiki, but unfortunately it does not work.
https://developer.ridgerun.com/wiki/index.php?title=GStreamer_Daemon_-_MP4_Video_Recording

when I run the script I always get an error.

ERROR:

Could not connect to localhost: Connection refused
Could not connect to localhost: Connection refused
Could not connect to localhost: Connection refused
Press enter to finish file
simple-mp4-video-recording.sh: 23: read: arg count
Could not connect to localhost: Connection refused
Could not connect to localhost: Connection refused
Could not connect to localhost: Connection refused
Could not connect to localhost: Connection refused
Video recorded to "simple-mp4-video-recording.sh"

It can do both.

Please see the Accelerated Gstreamer Users Guide.

You may also wish to do the Gstreamer tutorials. They’re written in C, but it’s not difficult C. If you already know Python and you retype the examples you’ll learn a lot at least. The sink you may be looking for (you learn about sinks early in the tutorials) is probably filesink.

You would try:

# Record camera capture to file video1.mov encoded in H264:
gst-launch-1.0 -ev nvarguscamerasrc ! 'video/x-raw(memory:NVMM),width=3280,height=2464,format=NV12' ! omxh264enc ! video/x-h264,stream-format=byte-stream ! h264parse ! qtmux ! filesink location=video1.mov

# View your recorded file (Ubuntu video player may not work correctly with this resolution)
gst-launch-1.0 -v filesrc location=video1.mov ! qtdemux ! h264parse ! omxh264dec ! nvvidconv ! 'video/x-raw,width=1920,height=1080' ! xvimagesink

Hi,

Actually, GStreamer could be the easiest way to implement any multimedia applications once you get used to it. It is not only intended for network streaming, when working with GStreamer everything is a stream of multimedia content that can be redirected to the network (UDP/TCP/RTSP/etc), SD (MP4, TS, JPEG) or anything. You can even use it easily to implement a deep learning algorithm and process your video content:

How did you run the script? did you install GSTD?

If you are not used to GStreamer then the best idea is to start from the basics and leave more complex tools aside for later. A really simple recording pipeline that should work on any host with all the required GStreamer plugins installed is the one provided in the script, to run it using gst-launch just run:

VIDEO=my_video.mp4
gst-launch-1.0 videotestsrc is-live=true pattern=ball ! x264enc ! mp4mux ! filesink location=$VIDEO

You can run it on the TX2 or in your Linux box.

Now, moving to the TX2 and assuming it comes with the standard camera, you can run:

VIDEO=test.mp4
gst-launch-1.0 -e nvarguscamerasrc sensor-id=0 ! omxh264enc ! qtmux ! filesink location=$VIDEO -v

It should provide an mp4 file encoded in H264. Note I used omxh264enc instead of x264enc, this will use the hardware acceleration for encoding.

Best Regards,

thanks to everyone who tried to help me, I think i have a lot to learn with GStreamer.

I now manage to record video from my pi camera. the only problem now is that the video quality looks terrible. (it looks like upscaled 200 x 150). I know that I wanted compression but that is a bit to comprest.
I know that the images from my pi camera should look better than this.

I tried to increase the bitrate (omxh264enc bitrate= ),to 2048, 8192 and 32768, but none of this increase the video quality. I willy hope this has nothing to do with the hardware acceleration, and the quality is somehow improvable.

Edit: I also tied to lower the resolution to 1920x1080, but is lost still the same

Edit Edit:
The reason why I wanted compression is because when I used my Pi the only way to record in 3280 x 2464, was by saving the raw bit data directly. the files were huge, and even then I only could record with 0.5-1 FPS.

omxh264enc bitrate is in bps (default is 4Mbps), so the values you’ve tried are very small for your resolution.

You may try this and see if it improves quality:

gst-launch-1.0 -ev nvarguscamerasrc ! 'video/x-raw(memory:NVMM),width=3280,height=2464,format=NV12' ! omxh264enc bitrate=80000000 SliceIntraRefreshEnable=true profile=high ! 'video/x-h264,level=(string)5.1,stream-format=byte-stream' ! h264parse ! qtmux ! filesink location=video1.mov

If you try to record raw frames, I’d advice to record into an external disk, as it can fill very quickly your rootfs and make your system unusable.

If you’re looking for a one time capture and don’t care about audio, you could probably just grab still frames from the camera and encode the resulting image sequence as video later on.

Just save the image sequence along with a high precision timestamp for each image, and then write a program later to render those frames into h264 at any arbitrary framerate.

If you figured out the average framerate you got while capturing stills, you could use that as the target framerate. You should end up with somewhat non-jittery video after all that after which you could use something like GitHub - slowmoVideo/slowmoVideo: Official slowmoVideo repository to retime to, say 24fps even.

I’ve never done this with these particular tools, however. I’m just thinking outloud, and it’s not a realtime solution.

Edit: i had confused optical flow with something else entirely. the link is edited above.

Edit: oh wait, I hadn’t been confused:

https://docs.opencv.org/3.0-alpha/modules/cudaoptflow/doc/optflow.html#cuda-interpolateframes

I don’t know whether that works on Nano, however. You will have to build OpenCV with CUDA support on nano and try.

I think I have now something somehow useful running. I just wanted to say thanks to everyone who helped me.

What’s the max Resolution with FPS, you did succeed to go ?