ros-drivers / gscam

ROS Camera driver for GStreamer-based video streams.
136 stars 172 forks source link

no image published with gscam #60

Open mtbsteve opened 4 years ago

mtbsteve commented 4 years ago

I am trying to set up gscam on my Jetson TX2 with Jetpack 4.2.2 under Ubuntu 18.04. Streaming with gstreamer works perfectly well, but with gscam I receive no image feed. No errors are issued. I do have gscam installed in the following way:

sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-tools libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev libyaml-cpp-dev
sudo apt-get install -y ros-melodic-camera-info-manager ros-melodic-camera-calibration-parsers ros-melodic-image-transport
sudo apt-get install -y ros-melodic-gscam

Running the following pipeline with gstreamer works well: gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw, width=3840, height=1080 ! videocrop top=0 left=0 right=1920 bottom=0 ! tee name=t ! queue ! videoconvert ! omxh264enc ! video/x-h264, stream-format=byte-stream ! h264parse ! rtph264pay config-interval=1 ! udpsink host=10.0.1.111 port=5600 t. ! queue ! videoconvert However when I try the same with gscam no image is published and the process hangs (control C doesent work, I need to kill it)

export GSCAM_CONFIG="v4l2src device=/dev/video0 ! video/x-raw, width=3840, height=1080 ! videocrop top=0 left=0 right=1920 bottom=0 ! tee name=t ! queue ! videoconvert ! omxh264enc ! video/x-h264, stream-format=byte-stream ! h264parse ! rtph264pay config-interval=1 ! udpsink host=10.0.1.111 port=5600 t. ! queue ! videoconvert"
rosrun gscam gscam

I traced the messages with GST_DEBUG=4, no errors are occuring, here is the tail of the log:

0:00:00.319593122 13819   0x55814a4de0 INFO                    v4l2 gstv4l2object.c:4238:gst_v4l2_object_probe_caps:<v4l2src0:src> probed caps: video/x-raw, format=(string)YUY2, width=(int)4416, height=(int)1242, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)15/1; video/x-raw, format=(string)YUY2, width=(int)3840, height=(int)1080, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)2560, height=(int)720, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 60/1, 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)1344, height=(int)376, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 100/1, 60/1, 30/1, 15/1 }
[ INFO] [1570688027.174497451]: Publishing stream...
0:00:00.326848745 13819   0x5580f03200 INFO               GST_EVENT gstevent.c:1388:gst_event_new_latency: creating latency event 0:00:00.000000000
0:00:00.326949001 13819   0x5580f03200 INFO                     bin gstbin.c:2783:gst_bin_do_latency_func:<pipeline0> configured latency of 0:00:00.000000000
0:00:00.327048265 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<appsink0> current READY pending PAUSED, desired next PLAYING
0:00:00.327085353 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2960:gst_bin_change_state_func:<pipeline0> child 'appsink0' is changing state asynchronously to PLAYING
0:00:00.327123241 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<udpsink0> current READY pending PAUSED, desired next PLAYING
0:00:00.327155401 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2960:gst_bin_change_state_func:<pipeline0> child 'udpsink0' is changing state asynchronously to PLAYING
0:00:00.327191785 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<videoconvert1> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.327227753 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<videoconvert1> completed state change to PLAYING
0:00:00.327262409 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<videoconvert1> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.327309481 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'videoconvert1' changed state to 4(PLAYING) successfully
0:00:00.327348745 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<rtph264pay0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.327403433 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<rtph264pay0> completed state change to PLAYING
0:00:00.327436681 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<rtph264pay0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.327484233 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'rtph264pay0' changed state to 4(PLAYING) successfully
0:00:00.327523177 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<queue1> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.327557321 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<queue1> completed state change to PLAYING
0:00:00.327588617 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<queue1> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.327613865 13819   0x55814a4de0 INFO                    v4l2 gstv4l2object.c:3659:gst_v4l2_object_set_format_full:<v4l2src0:src> Set capture framerate to 30/1
0:00:00.327629609 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'queue1' changed state to 4(PLAYING) successfully
0:00:00.327682569 13819   0x55814a4de0 INFO                    v4l2 gstv4l2object.c:2933:gst_v4l2_object_setup_pool:<v4l2src0:src> accessing buffers via mode 4
0:00:00.327721289 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<h264parse0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.327790729 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<h264parse0> completed state change to PLAYING
0:00:00.327823658 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<h264parse0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.327865482 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'h264parse0' changed state to 4(PLAYING) successfully
0:00:00.327904458 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<capsfilter1> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.327938506 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter1> completed state change to PLAYING
0:00:00.327968970 13819   0x5580f03200 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.328009546 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'capsfilter1' changed state to 4(PLAYING) successfully
0:00:00.328047690 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<omxh264enc-omxh264enc0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.328086858 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<omxh264enc-omxh264enc0> completed state change to PLAYING
0:00:00.328180106 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<omxh264enc-omxh264enc0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.328227722 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'omxh264enc-omxh264enc0' changed state to 4(PLAYING) successfully
0:00:00.328267530 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<videoconvert0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.328302538 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<videoconvert0> completed state change to PLAYING
0:00:00.328332682 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<videoconvert0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.328372618 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'videoconvert0' changed state to 4(PLAYING) successfully
0:00:00.328410186 13819   0x55814a4de0 INFO          v4l2bufferpool gstv4l2bufferpool.c:557:gst_v4l2_buffer_pool_set_config:<v4l2src0:pool:src> increasing minimum buffers to 2
0:00:00.328458442 13819   0x55814a4de0 INFO          v4l2bufferpool gstv4l2bufferpool.c:570:gst_v4l2_buffer_pool_set_config:<v4l2src0:pool:src> reducing maximum buffers to 32
0:00:00.328411242 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<queue0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.328538730 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<queue0> completed state change to PLAYING
0:00:00.328561290 13819   0x55814a4de0 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-raw, width=(int)3840, height=(int)1080, framerate=(fraction)30/1, format=(string)YUY2, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)bt709, interlace-mode=(string)progressive
0:00:00.328571082 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<queue0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.328657610 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'queue0' changed state to 4(PLAYING) successfully
0:00:00.328696906 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<t> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.328731658 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<t> completed state change to PLAYING
0:00:00.328759210 13819   0x55814a4de0 INFO           basetransform gstbasetransform.c:1308:gst_base_transform_setcaps:<capsfilter0> reuse caps
0:00:00.328762314 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<t> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.328853418 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 't' changed state to 4(PLAYING) successfully
0:00:00.328862986 13819   0x55814a4de0 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-raw, width=(int)3840, height=(int)1080, framerate=(fraction)30/1, format=(string)YUY2, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)bt709, interlace-mode=(string)progressive
0:00:00.328908074 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<videocrop0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.328988107 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<videocrop0> completed state change to PLAYING
0:00:00.329028843 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<videocrop0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.329070827 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'videocrop0' changed state to 4(PLAYING) successfully
0:00:00.329109803 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2506:gst_bin_element_set_state:<capsfilter0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.329143819 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter0> completed state change to PLAYING
0:00:00.329174763 13819   0x5580f03200 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.329218155 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 4(PLAYING) successfully
0:00:00.329263275 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2676:gst_element_continue_state:<v4l2src0> completed state change to PLAYING
0:00:00.329294347 13819   0x5580f03200 INFO              GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<v4l2src0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.329334315 13819   0x5580f03200 INFO              GST_STATES gstbin.c:2954:gst_bin_change_state_func:<pipeline0> child 'v4l2src0' changed state to 4(PLAYING) successfully
[ INFO] [1570688027.177374606]: Started stream.
0:00:00.329514731 13819   0x55814a4de0 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-raw, width=(int)1920, height=(int)1080, framerate=(fraction)30/1, format=(string)YUY2, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)bt709, interlace-mode=(string)progressive
0:00:00.330982476 13819   0x55814a4e80 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-raw, width=(int)1920, height=(int)1080, format=(string)I420, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
0:00:00.331006348 13819   0x5581423ed0 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-raw, width=(int)1920, height=(int)1080, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, format=(string)RGB
0:00:00.331129581 13819   0x5581423ed0 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-raw, width=(int)1920, height=(int)1080, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, format=(string)RGB
0:00:00.331253325 13819   0x55814a4e80 FIXME           videoencoder gstvideoencoder.c:661:gst_video_encoder_setcaps:<omxh264enc-omxh264enc0> GstVideoEncoder::reset() is deprecated
0:00:00.331362957 13819   0x55814a4e80 INFO                    task gsttask.c:457:gst_task_set_lock: setting stream lock 0x558141f630 on task 0x558147fb90
0:00:00.331393229 13819   0x55814a4e80 INFO                GST_PADS gstpad.c:6154:gst_pad_start_task:<omxh264enc-omxh264enc0:src> created task 0x558147fb90
Framerate set to : 30 at NvxVideoEncoderSetParameterNvMMLiteOpen : Block : BlockType = 4 
===== NVMEDIA: NVENC =====
NvMMLiteBlockCreate : Block : BlockType = 4 
0:00:00.332875406 13819   0x55814a4e80 WARN             omxvideoenc gstomxvideoenc.c:1860:gst_omx_video_enc_set_format:<omxh264enc-omxh264enc0> Error setting temporal_tradeoff 0 : Vendor specific error (0x00000001)
0:00:00.332927278 13819   0x55814a4e80 INFO                     omx gstomx.c:1936:gst_omx_port_set_enabled_unlocked:<omxh264enc-omxh264enc0> Setting encoder port 1 to disabled
0:00:00.332999918 13819   0x55814a4e80 INFO                     omx gstomx.c:1984:gst_omx_port_set_enabled_unlocked:<omxh264enc-omxh264enc0> Set encoder port 1 to disabled: None (0x00000000)
0:00:00.333044398 13819   0x55814a4e80 INFO                     omx gstomx.c:2223:gst_omx_port_wait_enabled_unlocked:<omxh264enc-omxh264enc0> Waiting for encoder port 1 to be disabled
0:00:00.333178830 13819   0x55814a4e80 INFO                     omx gstomx.c:2298:gst_omx_port_wait_enabled_unlocked:<omxh264enc-omxh264enc0> encoder port 1 is disabled: None (0x00000000)
0:00:00.333213582 13819   0x55814a4e80 INFO                     omx gstomx.c:798:gst_omx_component_set_state:<omxh264enc-omxh264enc0> Setting encoder state from Loaded to Idle
0:00:00.333263854 13819   0x55814a4e80 INFO                     omx gstomx.c:1695:gst_omx_port_allocate_buffers_unlocked:<omxh264enc-omxh264enc0> Allocating 6 buffers of size 3110400 for encoder port 0
0:00:00.333396175 13819   0x55814a4e80 INFO                     omx gstomx.c:1760:gst_omx_port_allocate_buffers_unlocked:<omxh264enc-omxh264enc0> Allocated buffers for encoder port 0: None (0x00000000)
0:00:00.333536399 13819   0x7f540044f0 INFO                    task gsttask.c:316:gst_task_func:<omxh264enc-omxh264enc0:src> Task going to paused
0:00:00.381188026 13819   0x55814a4e80 INFO                     omx gstomx.c:235:gst_omx_component_handle_messages:<omxh264enc-omxh264enc0> encoder state change to Idle finished
0:00:00.381236698 13819   0x55814a4e80 INFO                     omx gstomx.c:798:gst_omx_component_set_state:<omxh264enc-omxh264enc0> Setting encoder state from Idle to Executing
0:00:00.381320346 13819   0x55814a4e80 INFO                     omx gstomx.c:235:gst_omx_component_handle_messages:<omxh264enc-omxh264enc0> encoder state change to Executing finished
H264: Profile = 66, Level = 40 
0:00:00.381351258 13819   0x55814a4e80 INFO                     omx gstomx.c:1936:gst_omx_port_set_enabled_unlocked:<omxh264enc-omxh264enc0> Setting encoder port 1 to enabled
0:00:00.381409274 13819   0x55814a4e80 INFO                     omx gstomx.c:1984:gst_omx_port_set_enabled_unlocked:<omxh264enc-omxh264enc0> Set encoder port 1 to enabled: None (0x00000000)
0:00:00.381431674 13819   0x55814a4e80 INFO                     omx gstomx.c:1695:gst_omx_port_allocate_buffers_unlocked:<omxh264enc-omxh264enc0> Allocating 6 buffers of size 3110676 for encoder port 1
0:00:00.381540794 13819   0x55814a4e80 INFO                     omx gstomx.c:1760:gst_omx_port_allocate_buffers_unlocked:<omxh264enc-omxh264enc0> Allocated buffers for encoder port 1: None (0x00000000)
0:00:00.381564794 13819   0x55814a4e80 INFO                     omx gstomx.c:2223:gst_omx_port_wait_enabled_unlocked:<omxh264enc-omxh264enc0> Waiting for encoder port 1 to be enabled
0:00:00.388090720 13819   0x55814a4e80 INFO                     omx gstomx.c:2298:gst_omx_port_wait_enabled_unlocked:<omxh264enc-omxh264enc0> encoder port 1 is enabled: None (0x00000000)
0:00:00.388181408 13819   0x55814a4e80 INFO                     omx gstomx.c:2347:gst_omx_port_mark_reconfigured:<omxh264enc-omxh264enc0> Marking encoder port 1 is reconfigured
0:00:00.388204704 13819   0x55814a4e80 INFO                     omx gstomx.c:2374:gst_omx_port_mark_reconfigured:<omxh264enc-omxh264enc0> Marked encoder port 1 as reconfigured: None (0x00000000)
0:00:00.388246176 13819   0x7f540044f0 INFO                    task gsttask.c:318:gst_task_func:<omxh264enc-omxh264enc0:src> Task resume from paused
0:00:00.389051425 13819   0x55814a4de0 INFO               videocrop gstvideocrop.c:483:gst_video_crop_decide_allocation:<videocrop0> we are not using passthrough
0:00:00.389532578 13819   0x55814a4de0 INFO          v4l2bufferpool gstv4l2bufferpool.c:570:gst_v4l2_buffer_pool_set_config:<v4l2src0:pool:src> reducing maximum buffers to 32
0:00:00.611028971 13819   0x55814a4de0 INFO                 v4l2src gstv4l2src.c:957:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.033333333 out ts 0:00:00.252010332
0:00:00.611134763 13819   0x55814a4de0 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.611350507 13819   0x55814a4de0 INFO                 basesrc gstbasesrc.c:2945:gst_base_src_loop:<v4l2src0> marking pending DISCONT
0:00:00.644512745 13819   0x55814a4de0 INFO                 v4l2src gstv4l2src.c:957:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.066666666 out ts 0:00:00.285488044
0:00:00.645930635 13819   0x7f540044f0 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-h264, alignment=(string)au, profile=(string)baseline, level=(string)4, stream-format=(string)byte-stream, width=(int)1920, height=(int)1080, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)30/1, interlace-mode=(string)progressive, colorimetry=(string)bt709, chroma-site=(string)mpeg2
0:00:00.646047499 13819   0x7f540044f0 INFO           basetransform gstbasetransform.c:1308:gst_base_transform_setcaps:<capsfilter1> reuse caps
0:00:00.646099019 13819   0x7f540044f0 INFO               GST_EVENT gstevent.c:814:gst_event_new_caps: creating caps event video/x-h264, alignment=(string)au, profile=(string)baseline, level=(string)4, stream-format=(string)byte-stream, width=(int)1920, height=(int)1080, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)30/1, interlace-mode=(string)progressive, colorimetry=(string)bt709, chroma-site=(string)mpeg2
0:00:00.646324107 13819   0x7f540044f0 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.646580555 13819   0x7f540044f0 WARN               h264parse gsth264parse.c:1237:gst_h264_parse_handle_frame:<h264parse0> broken/invalid nal Type: 5 Slice IDR, Size: 41566 will be dropped
0:00:00.664489275 13819   0x7f540044f0 WARN               h264parse gsth264parse.c:1237:gst_h264_parse_handle_frame:<h264parse0> broken/invalid nal Type: 1 Slice, Size: 20950 will be dropped
0:00:00.677984296 13819   0x55814a4de0 INFO                 v4l2src gstv4l2src.c:957:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.099999999 out ts 0:00:00.318869492
0:00:00.702836190 13819   0x7f540044f0 WARN               h264parse gsth264parse.c:1237:gst_h264_parse_handle_frame:<h264parse0> broken/invalid nal Type: 1 Slice, Size: 14974 will be dropped
0:00:00.711480806 13819   0x55814a4de0 INFO                 v4l2src gstv4l2src.c:957:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.133333332 out ts 0:00:00.352362524
0:00:00.736652829 13819   0x7f540044f0 WARN               h264parse gsth264parse.c:1237:gst_h264_parse_handle_frame:<h264parse0> broken/invalid nal Type: 1 Slice, Size: 10373 will be dropped
0:00:00.744761252 13819   0x55814a4de0 INFO                 v4l2src gstv4l2src.c:957:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.166666665 out ts 0:00:00.385736300
0:00:00.776690305 13819   0x7f540044f0 WARN               h264parse gsth264parse.c:1237:gst_h264_parse_handle_frame:<h264parse0> broken/invalid nal Type: 1 Slice, Size: 9807 will be dropped
Killed
apsync@apsync:~$
caelinsutch commented 4 years ago

Did you ever get this resolved?

mtbsteve commented 4 years ago

Did you ever get this resolved?

nope. I finally skipped gscam and I am using now a ROS image topic to RTSP streaming service which works amazingly well: https://github.com/CircusMonkey/ros_rtsp

Exchizz commented 4 years ago

I was kinda experiencing the same issue. I was getting one image published, and then nothing. One day of debugging later and it turns out I need this PR to make it work...

https://github.com/ros-drivers/gscam/pull/61

(It's a real shame nobody maintains this project)

caelinsutch commented 4 years ago

GSCAM2 has a very active maintainer, ended up just switching to ROS2

aemarkov commented 3 years ago

I've just faced with the similar problem that gscam publish nothing. I investigated it a bit and look likes that gscam doesn't support dynamically created pads. gscam parses the part of the pipeline passed as environment variable:

pipeline_ = gst_parse_launch(gsconfig_.c_str(), &error);

and if some pads are dynamic, it couldn't be lined, but gscam continue working, but nothing is published.

In my case the problem was in the decodebin. Maybe it will helpful for you.