Hello,
When we use imx gstreamer plugin imxvideoconvert_g2d can not running success.
the gstreamer log shows error:0:00:02.063827500 1761 0xaaaafdaa4b00 ERROR imx2ddevice imx_2d_device_g2d.c:458:imx_g2d_blit: Can't get physical address.
we used imx gstreamer version is imx-gst1.0-plugin_4.6.2.bb
what is caused this error,how can run this plugin success?
hello,
Could u help check more?
try this command:
gst-launch-1.0 --gst-debug-level=2 v4l2src device=/dev/video6 num-buffers=500 io-mode=dmabuf ! "video/x-raw,format=(string)NV12,width=1280,height=720,framerate=(fraction)25/1" ! imxvideoconvert_g2d ! "video/x-raw,width=640,height=360,framerate=(fraction)25/1" ! v4l2h264enc output-io-mode=dmabuf-import ! filesink location=/tmp/testgst4.h264
error log:
0:00:01.517252625 7087 0xaaaac4300c00 ERROR [ 2090.750269] ds960_1_mipi 6-0030: ds960_g_frame_interval: ds960_g_frame_interval channel 6
video-info video-info.c:555:gst_video_info_f[ 2090.763215] ds960_1_mipi 6-0030: ds960_s_frame_interval: ds960_s_frame_interval channel 6
rom_caps: unknown format 'UNKNOWN' given
0:00:01.517385125 7087 0xaaaac4300c00 ERROR [ 2090.783039] ds960_1_mipi 6-0030: ds960_set_fmt: ds960_set_fmt channel 6
videofilter gstvideofilter.c:246:gst_video_filter_set_caps:<im[ 2090.794953] ds960_1_mipi 6-0030: ds960_set_fmt: cam_data found chan 6
xvideoconvert_g2d0> invalid caps
0:00:01.517487750 7[ 2090.807324] ds960_1_mipi 6-0030: ds960_set_fmt: try 1280x720
087 0xaaaac4300c00 WARN basetran[ 2090.818447] ds960_1_mipi 6-0030: ds960_get_fmt: ds960_get_fmt channel 6
sform gstbasetransform.c:1378:gst_base_transform_setcaps:<imxvide[ 2090.830706] ds960_1_mipi 6-0030: ds960_get_fmt: cam_data found chan 6
oconvert_g2d0> FAILED to configure incaps video/x-raw, forma[ 2090.847834] bypass csc
t=(string)NV12, width=(int)1280, height=(int)720, framerate=(frac[ 2090.850882] input fmt YUV4
tion)25/1, interlace-mode=(string)progressive, colorimetry=(strin[ 2090.859225] output fmt NV12
g)1:4:7:1 and outcaps video/x-raw, width=(int)640, height=(int)360, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1, format=(string)UNKNOWN
0:00:01.517990500 7087 0xaaaac4300c00 ERROR video-info video-info.c:555:gst_video_info_from_caps: unknown format 'UNKNOWN' given
0:00:01.518036625 7087 0xaaaac4300c00 ERROR videofilter gstvideofilter.c:246:gst_video_filter_set_caps:<imxvideoconvert_g2d0> invalid caps
0:00:01.518121250 7087 0xaaaac4300c00 WARN basetransform gstbasetransform.c:1378:gst_base_transform_setcaps:<imxvideoconvert_g2d0> FAILED to configure incaps video/x-raw, format=(string)NV12, width=(int)1280, height=(int)720, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1 and outcaps video/x-raw, width=(int)640, height=(int)360, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1, format=(string)UNKNOWN
0:00:01.518179375 7087 0xaaaac4300c00 WARN GST_PADS gstpad.c:4303:gst_pad_peer_query:<capsfilter0:src> could not send sticky events
[ 2091.200289] ds960_1_mipi 6-0030: ds960_s_stream: set stream 6 on, now running 0
[ 2091.207711] ds960_1_mipi 6-0030: ds960_s_stream: stream on
[ 2091.215278] ds960_1_mipi 6-0030: ds960_get_fmt: ds960_get_fmt channel 6
[ 2091.221964] ds960_1_mipi 6-0030: ds960_get_fmt: cam_data found chan 6
0:00:02.094459750 7087 0xaaaac4300c00 WARN v4l2bufferpool gstv4l2bufferpool.c:1319:gst_v4l2_buffer_pool_dqbuf:<v4l2src0:pool0:src> Driver should never set v4l2_buffer.field to ANY
0:00:02.120096500 7087 0xaaaac4300c00 ERROR [ 2091.354116] ds960_1_mipi 6-0030: ds960_s_stream: set stream 6 off, now running 1
video-info video-info.c:555:gst_video_info_f[ 2091.365223] ds960_1_mipi 6-0030: ds960_s_stream: stream off
rom_caps: unknown format 'UNKNOWN' given
0:00:02.120245000 7087 0xaaaac4300c00 ERROR videofilter gstvideofilter.c:246:gst_video_filter_set_caps:<imxvideoconvert_g2d0> invalid caps
0:00:02.120334375 7087 0xaaaac4300c00 WARN basetransform gstbasetransform.c:1378:gst_base_transform_setcaps:<imxvideoconvert_g2d0> FAILED to configure incaps video/x-raw, format=(string)NV12, width=(int)1280, height=(int)720, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1 and outcaps video/x-raw, width=(int)640, height=(int)360, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1, format=(string)UNKNOWN
0:00:02.120759250 7087 0xaaaac4300c00 ERROR video-info video-info.c:555:gst_video_info_from_caps: unknown format 'UNKNOWN' given
0:00:02.120799500 7087 0xaaaac4300c00 ERROR videofilter gstvideofilter.c:246:gst_video_filter_set_caps:<imxvideoconvert_g2d0> invalid caps
0:00:02.120870500 7087 0xaaaac4300c00 WARN basetransform gstbasetransform.c:1378:gst_base_transform_setcaps:<imxvideoconvert_g2d0> FAILED to configure incaps video/x-raw, format=(string)NV12, width=(int)1280, height=(int)720, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1 and outcaps video/x-raw, width=(int)640, height=(int)360, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1, format=(string)UNKNOWN
0:00:02.120964000 7087 0xaaaac4300c00 WARN basesrc gstbasesrc.c:3127:gst_base_src_loop:<v4l2src0> error: Internal data stream error.
0:00:02.121004875 7087 0xaaaac4300c00 WARN basesrc gstbasesrc.c:3127:gst_base_src_loop:<v4l2src0> error: streaming stopped, reason not-negotiated (-4)
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error.
Additional debug info:
../git/libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
Execution ended after 0:00:00.903384500
Setting pipeline to NULL ...
0:00:02.121754250 7087 0xaaaac4300c00 ERROR video-info video-info.c:555:gst_video_info_from_caps: unknown format 'UNKNOWN' given
0:00:02.121789000 7087 0xaaaac4300c00 ERROR videofilter gstvideofilter.c:246:gst_video_filter_set_caps:<imxvideoconvert_g2d0> invalid caps
0:00:02.121866625 7087 0xaaaac4300c00 WARN basetransform gstbasetransform.c:1378:gst_base_transform_setcaps:<imxvideoconvert_g2d0> FAILED to configure incaps video/x-raw, format=(string)NV12, width=(int)1280, height=(int)720, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1 and outcaps video/x-raw, width=(int)640, height=(int)360, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1, format=(string)UNKNOWN
you give command seems has some syntax error,we used below:
gst-launch-1.0 --gst-debug-level=2 v4l2src device=/dev/video6 num-buffers=500 io-mode=dmabuf ! "video/x-raw,format=(string)NV12,width=1280,height=720,framerate=(fraction)25/1" ! imxvideoconvert_g2d ! "video/x-raw,format=(string)NV12,width=640,height=360,framerate=(fraction)25/1" ! v4l2h264enc output-io-mode=dmabuf-import ! filesink location=/tmp/testgst4.h264
and error log:
0:00:01.519375750 3752 0xaaaabf75ec00 WARN [ 998.543514] ds960_1_mipi 6-0030: ds960_g_frame_interval: ds960_g_frame_interval channel 6
basetransform gstbasetransform.c:1370:gst_base_[ 998.556954] ds960_1_mipi 6-0030: ds960_s_frame_interval: ds960_s_frame_interval channel 6
transform_setcaps:<imxvideoconvert_g2d0> transform could not transform video/x-raw, format=(string)NV12, width=(int)1280, he[ 998.576620] ds960_1_mipi 6-0030: ds960_set_fmt: ds960_set_fmt channel 6
ight=(int)720, framerate=(fraction)25/1, interlace-mode=(string)p[ 998.588545] ds960_1_mipi 6-0030: ds960_set_fmt: cam_data found chan 6
rogressive, colorimetry=(string)1:4:7:1 in anything we support
0[ 998.600602] ds960_1_mipi 6-0030: ds960_set_fmt: try 1280x720
:00:01.519808375 3752 0xaaaabf75ec00 WARN ds960_1_mipi 6-0030: ds960_get_fmt: ds960_get_fmt channel 6
[00m basetransform gstbasetransform.c:1370:gst_base_t[ 998.624143] ds960_1_mipi 6-0030: ds960_get_fmt: cam_data found chan 6
ransform_setcaps:<imxvideoconvert_g2d0> transform could not [ 998.641234] bypass csc
transform video/x-raw, format=(string)NV12, width=(int)1280, heig[ 998.644215] input fmt YUV4
ht=(int)720, framerate=(fraction)25/1, interlace-mode=(string)pro[ 998.652566] output fmt NV12
gressive, colorimetry=(string)1:4:7:1 in anything we support
0:00:01.519851250 3752 0xaaaabf75ec00 WARN GST_PADS gstpad.c:4303:gst_pad_peer_query:<capsfilter0:src> could not send sticky events
[ 998.980228] ds960_1_mipi 6-0030: ds960_s_stream: set stream 6 on, now running 0
[ 998.987598] ds960_1_mipi 6-0030: ds960_s_stream: stream on
[ 998.994884] ds960_1_mipi 6-0030: ds960_get_fmt: ds960_get_fmt channel 6
[ 999.001561] ds960_1_mipi 6-0030: ds960_get_fmt: cam_data found chan 6
0:00:02.054508625 3752 0xaaaabf75ec00 WARN v4l2bufferpool gstv4l2bufferpool.c:1319:gst_v4l2_buffer_pool_dqbuf:<v4l2src0:pool0:src> Driver should never set v4l2_buffer.field to ANY
0:00:02.076512375 3752 0xaaaabf75ec00 WARN [ 999.101537] ds960_1_mipi 6-0030: ds960_s_stream: set stream 6 off, now running 1
basetransform gstbasetransform.c:1370:gst_base_[ 999.113230] ds960_1_mipi 6-0030: ds960_s_stream: stream off
transform_setcaps:<imxvideoconvert_g2d0> transform could not transform video/x-raw, format=(string)NV12, width=(int)1280, height=(int)720, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1 in anything we support
0:00:02.076943250 3752 0xaaaabf75ec00 WARN basetransform gstbasetransform.c:1370:gst_base_transform_setcaps:<imxvideoconvert_g2d0> transform could not transform video/x-raw, format=(string)NV12, width=(int)1280, height=(int)720, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1 in anything we support
0:00:02.077025125 3752 0xaaaabf75ec00 WARN basesrc gstbasesrc.c:3127:gst_base_src_loop:<v4l2src0> error: Internal data stream error.
0:00:02.077061250 3752 0xaaaabf75ec00 WARN basesrc gstbasesrc.c:3127:gst_base_src_loop:<v4l2src0> error: streaming stopped, reason not-negotiated (-4)
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error.
Additional debug info:
../git/libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
Execution ended after 0:00:00.857021875
Setting pipeline to NULL ...
0:00:02.077701125 3752 0xaaaabf75ec00 WARN basetransform gstbasetransform.c:1370:gst_base_transform_setcaps:<imxvideoconvert_g2d0> transform could not transform video/x-raw, format=(string)NV12, width=(int)1280, height=(int)720, framerate=(fraction)25/1, interlace-mode=(string)progressive, colorimetry=(string)1:4:7:1 in anything we support
if not use g2d plugin,can running success
gst-launch-1.0 --gst-debug-level=2 v4l2src device=/dev/video6 num-buffers=500 io-mode=dmabuf ! \ "video/x-raw,format=(string)NV12,width=1280,height=720,framerate=(fraction)25/1" ! v4l2h264enc ! \ filesink location=/tmp/testgst4.h264 |
remove dmabuf command error same as before
yes I use the ds960 camera driver not NXP original camera driver,how about diff camera driver effect?
with i.MX8 2.3.0 release use my ds960 driver and gstreamer g2d command can be used no problem.
I will try new command later
is any NXP expert can give help?