Hi all,
I'm using NVP6324 for converting analog video to mipi csi-2. So far i could manage to use it with my imx8mm board with only 1 channel active at 1080p and 720p resolutions. But i couldn't manage to start streaming with neither PAL nor NTSC. Interesting part is when i call gstreamer command nothing happens in screen, and no error messages in console of gstreamer.
Is there any ways to debug this issue to find the point of the problem ?
As driver I'm using slightly modified version of this post , and for mipi driver I'm using mxc_mipi_csi.
gst command:
gst-launch-1.0 v4l2src device="/dev/video0" ! "video/x-raw, format=(string)UYVY, width=(int)720, height=(int)480, framerate=(fraction)30/1" ! imxvideoconvert_g2d ! waylandsink
With GST_DEBUG=4 last messages I get pasted below; looks like v4l2src is streaming
0:00:00.085103883 2293 0xfbc3a00 INFO GST_STATES gstbin.c:2503:gst_bin_element_set_state:<waylandsink0> current READY pending PAUSED, desired next PLAYING
0:00:00.085132009 2293 0xfbc3a00 INFO GST_STATES gstbin.c:2957:gst_bin_change_state_func:<pipeline0> child 'waylandsink0' is changing state asynchronously to PLAYING
0:00:00.085132384 2293 0xfc7d940 WARN video-info video-info.c:521:gst_video_info_from_caps: invalid matrix 3 for RGB format, using RGB
0:00:00.085161384 2293 0xfbc3a00 INFO GST_STATES gstbin.c:2503:gst_bin_element_set_state:<imxvideoconvert_g2d0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.085198134 2293 0xfbc3a00 INFO GST_STATES gstelement.c:2676:gst_element_continue_state:<imxvideoconvert_g2d0> completed state change to PLAYING
0:00:00.085215134 2293 0xfc7d940 INFO GST_EVENT gstevent.c:820:gst_event_new_caps: creating caps event video/x-raw, width=(int)720, height=(int)576, framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)bt709, interlace-mode=(string)progressive, format=(string)BGRx
0:00:00.085222759 2293 0xfbc3a00 INFO GST_STATES gstelement.c:2579:_priv_gst_element_state_changed:<imxvideoconvert_g2d0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:00.085337260 2293 0xfbc3a00 INFO GST_STATES gstbin.c:2951:gst_bin_change_state_func:<pipeline0> child 'imxvideoconvert_g2d0' changed state to 4(PLAYING) successfully
0:00:00.085368760 2293 0xfbc3a00 INFO GST_STATES gstbin.c:2503:gst_bin_element_set_state:<capsfilter0> current PAUSED pending VOID_PENDING, desired next PLAYING
0:00:00.085394511 2293 0xfbc3a00 INFO GST_STATES gstelement.c:2676:gst_element_continue_state:<capsfilter0> completed state change to PLAYING
0:00:00.085418261 2293 0xfbc3a00 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.085433261 2293 0xfc7d940 WARN video-info video-info.c:521:gst_video_info_from_caps: invalid matrix 3 for RGB format, using RGB
0:00:00.085450636 2293 0xfbc3a00 INFO GST_STATES gstbin.c:2951:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 4(PLAYING) successfully
0:00:00.085512761 2293 0xfbc3a00 INFO GST_STATES gstelement.c:2676:gst_element_continue_state:<v4l2src0> completed state change to PLAYING
0:00:00.085536762 2293 0xfbc3a00 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.085568387 2293 0xfbc3a00 INFO GST_STATES gstbin.c:2951:gst_bin_change_state_func:<pipeline0> child 'v4l2src0' changed state to 4(PLAYING) successfully
0:00:00.085742138 2293 0xfc7d940 WARN video-info video-info.c:521:gst_video_info_from_caps: invalid matrix 3 for RGB format, using RGB
New clock: GstSystemClock
0:00:00.086054641 2293 0xfc7d940 WARN video-info video-info.c:521:gst_video_info_from_caps: invalid matrix 3 for RGB format, using RGB
0:00:00.086338893 2293 0xfc7d940 WARN video-info video-info.c:521:gst_video_info_from_caps: invalid matrix 3 for RGB format, using RGB
0:00:00.086385393 2293 0xfc7d940 WARN video-info video-info.c:521:gst_video_info_from_caps: invalid matrix 3 for RGB format, using RGB
0:00:00.086478019 2293 0xfc7d940 WARN video-info video-info.c:521:gst_video_info_from_caps: invalid matrix 3 for RGB format, using RGB
0:00:00.086603770 2293 0xfc7d940 WARN video-info video-info.c:521:gst_video_info_from_caps: invalid matrix 3 for RGB format, using RGB
0:00:00.086650770 2293 0xfc7d940 WARN video-info video-info.c:521:gst_video_info_from_caps: invalid matrix 3 for RGB format, using RGB
0:00:00.086716895 2293 0xfc7d940 WARN video-info video-info.c:521:gst_video_info_from_caps: invalid matrix 3 for RGB format, using RGB
0:00:00.092291312 2293 0xfc7d940 INFO v4l2 gstv4l2object.c:3764:gst_v4l2_object_set_format_full:<v4l2src0:src> Set capture framerate to 25/1
0:00:00.096236091 2293 0xfc7d940 INFO v4l2 gstv4l2object.c:3031:gst_v4l2_object_setup_pool:<v4l2src0:src> accessing buffers via mode 4
0:00:00.108593558 2293 0xfc7d940 INFO v4l2bufferpool gstv4l2bufferpool.c:557:gst_v4l2_buffer_pool_set_config:<v4l2src0:pool:src> increasing minimum buffers to 2
0:00:00.108660059 2293 0xfc7d940 INFO v4l2bufferpool gstv4l2bufferpool.c:570:gst_v4l2_buffer_pool_set_config:<v4l2src0:pool:src> reducing maximum buffers to 32
0:00:00.108681184 2293 0xfc7d940 INFO v4l2bufferpool gstv4l2bufferpool.c:581:gst_v4l2_buffer_pool_set_config:<v4l2src0:pool:src> can't allocate, setting maximum to minimum
0:00:00.108872935 2293 0xfc7d940 INFO v4l2bufferpool gstv4l2bufferpool.c:570:gst_v4l2_buffer_pool_set_config:<v4l2src0:pool:src> reducing maximum buffers to 32
0:00:00.108897185 2293 0xfc7d940 INFO v4l2bufferpool gstv4l2bufferpool.c:581:gst_v4l2_buffer_pool_set_config:<v4l2src0:pool:src> can't allocate, setting maximum to minimum
did you resolve this?
We have it working for PAL but not NTSC format...
Hi @igorpadykov,
Thanks for your help, I have already managed to capture 1080p and 720p streams over nvp6324 with mipi csi2. Now I'm trying to capture cvbs inputs too but as I've mentioned gstreamer doesn't shows anything (not even blackscreen).
That's why I'm thinking maybe the sent or expected pixel counts doesnt match at mipi level or something like that.
Edit 1: I'm thinking that what if NVP6324 sends cvbs video data interlaced. Would that broke anything ?
Hi efecan_icoz
opposite to i.MX8QM on referenced link i.MX8M Mini
does not have ISI module and not support virtual channels.
In general one can reuse ov5640 driver, as it also uses YUV422 format as Nvp6324:
gst command for 1080p @30 fps:
gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw,width=1920,height=1080, framerate=30/1 ! waylandsink
camera unit test for debugging:
Best regards
igor