Hello community!
Target machine:
SOM: IMX8QXP
OS: Linux yocto Kirkstone kernel 5.15.60
I'm trying to force H264 encoder to the v4l2src. For simple case I want to capture video and then play on screen, and I got some noise output with colored lines but with no target image. But it looks like depends on capture from camera (I see it via dynamic noise on output when moves on camera capture).
My pipeline looks like this:
XDG_RUNTIME_DIR=/run/user/0 GST_DEBUG=3 gst-launch-1.0 v4l2src device=/dev/video1 io-mode=dmabuf ! "video/x-raw,framerate=15/1,width=640,height=480" ! queue ! v4l2h264enc output-io-mode=dmabuf-import ! "video/x-h264,level=(string)3,profile=baseline" ! h264parse ! v4l2h264dec ! queue ! waylandsink sync=false
On the logs I can see the scope of warning, but can't resolve them by using google (leak of information) and also can't know does them the reason of that behavior:
XDG_RUNTIME_DIR=/run/user/0 GST_DEBUG=3,v4l2src*:3 gst-launch-1.0 v4l2src device=/dev/video1 io-mode=dmabuf ! "video/x-raw,framerate=15/1,width=640,height=480" ! queue ! v4l2h264enc output-io-mode=dmabuf-import ! "video/x-h264,level=(string)3,profile=baseline" ! h264parse ! v4l2h264dec ! queue ! waylandsink sync=false
Setting pipeline to PAUSED ...
====== V4L2DEC: 1.20.0 build on Apr 24 2022 09:19:42. ======
0:00:01.585080553 498 0xaaaac346dc70 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:01.585389432 498 0xaaaac346dc70 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:sink> Unsupported field type for H264@1x1: 0
0:00:01.585510184 498 0xaaaac346dc70 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:sink> Unable to try format: Inappropriate ioctl for device
0:00:01.585569685 498 0xaaaac346dc70 WARN v4l2 gstv4l2object.c:3047:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:sink> Could not probe minimum capture size for pixelformat H264
0:00:01.585617435 498 0xaaaac346dc70 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:01.585678311 498 0xaaaac346dc70 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:sink> Unsupported field type for H264@32768x32768: 0
0:00:01.585723187 498 0xaaaac346dc70 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:sink> Unable to try format: Inappropriate ioctl for device
0:00:01.585773937 498 0xaaaac346dc70 WARN v4l2 gstv4l2object.c:3053:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:sink> Could not probe maximum capture size for pixelformat H264
====== V4L2ENC: 1.20.0 build on Apr 24 2022 09:19:42. ======
0:00:01.587474710 498 0xaaaac346dc70 WARN v4l2 gstv4l2object.c:4623:gst_v4l2_object_probe_caps:<v4l2h264enc0:src> Failed to probe pixel aspect ratio with VIDIOC_CROPCAP: Invalid argument
Pipeline is live and does not need PREROLL ...
0:00:01.591065884 498 0xaaaac36d5400 WARN v4l2 gstv4l2object.c:4623:gst_v4l2_object_probe_caps:<v4l2src0:src> Failed to probe pixel aspect ratio with VIDIOC_CROPCAP: Invalid argument
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
0:00:01.598264981 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:4623:gst_v4l2_object_probe_caps:<v4l2h264dec0:src> Failed to probe pixel aspect ratio with VIDIOC_CROPCAP: Invalid argument
0:00:01.598429108 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:01.598495484 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unsupported field type for NT12@1x1: 0
0:00:01.598544485 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unable to try format: Inappropriate ioctl for device
0:00:01.598594735 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3047:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:src> Could not probe minimum capture size for pixelformat NT12
0:00:01.598638986 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:01.598708362 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unsupported field type for NT12@32768x32768: 0
0:00:01.598754487 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unable to try format: Inappropriate ioctl for device
0:00:01.598803863 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3053:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:src> Could not probe maximum capture size for pixelformat NT12
0:00:01.599053242 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:01.599118492 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unsupported field type for NV12@1x1: 0
0:00:01.599163868 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unable to try format: Inappropriate ioctl for device
0:00:01.599216619 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3047:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:src> Could not probe minimum capture size for pixelformat NV12
0:00:01.599259744 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:01.599325620 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unsupported field type for NV12@32768x32768: 0
0:00:01.599371371 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unable to try format: Inappropriate ioctl for device
0:00:01.599420246 498 0xaaaac36d5360 WARN v4l2 gstv4l2object.c:3053:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:src> Could not probe maximum capture size for pixelformat NV12
Redistribute latency...
0:00:02.263237321 498 0xaaaac36d5360 WARN v4l2bufferpool gstv4l2bufferpool.c:848:gst_v4l2_buffer_pool_start:<v4l2h264enc0:pool0:src> Uncertain or not enough buffers, enabling copy threshold
0:00:02.287934279 498 0xaaaac36d5860 WARN v4l2bufferpool gstv4l2bufferpool.c:1383:gst_v4l2_buffer_pool_dqbuf:<v4l2h264enc0:pool0:src> Driver should never set v4l2_buffer.field to ANY
0:00:02.298411420 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.308505306 498 0xaaaac36d5400 WARN v4l2src gstv4l2src.c:1123:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.716157632
0:00:02.311054841 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:4623:gst_v4l2_object_probe_caps:<v4l2h264dec0:src> Failed to probe pixel aspect ratio with VIDIOC_CROPCAP: Invalid argument
0:00:02.311230093 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:02.311326969 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unsupported field type for NT12@1x1: 0
0:00:02.311389470 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unable to try format: Inappropriate ioctl for device
0:00:02.311456346 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3047:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:src> Could not probe minimum capture size for pixelformat NT12
0:00:02.311513472 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:02.311587473 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unsupported field type for NT12@32768x32768: 0
0:00:02.311646099 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unable to try format: Inappropriate ioctl for device
0:00:02.311712850 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3053:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:src> Could not probe maximum capture size for pixelformat NT12
0:00:02.312133105 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:02.312223232 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unsupported field type for NV12@1x1: 0
0:00:02.312285232 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unable to try format: Inappropriate ioctl for device
0:00:02.312350983 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3047:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:src> Could not probe minimum capture size for pixelformat NV12
0:00:02.312408234 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:02.312482110 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unsupported field type for NV12@32768x32768: 0
0:00:02.312536861 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unable to try format: Inappropriate ioctl for device
0:00:02.312600112 498 0xaaaac36d5860 WARN v4l2 gstv4l2object.c:3053:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:src> Could not probe maximum capture size for pixelformat NV12
0:00:02.316744292 498 0xaaaac36d5860 WARN v4l2videodec gstv4l2videodec.c:1072:gst_v4l2_video_dec_decide_allocation:<v4l2h264dec0> Duration invalid, not setting latency
0:00:02.334777536 498 0xaaaac36d5860 WARN v4l2videodec gstv4l2videodec.c:557:get_hdr10_meta:<v4l2h264dec0:src> Failed to get hdr10 meta
0:00:02.381999672 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.386606983 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.387784999 498 0xffff88013b00 WARN v4l2videodec gstv4l2videodec.c:783:gst_v4l2_video_dec_loop:<v4l2h264dec0> Received resolution change
0:00:02.390482036 498 0xffff88013b00 WARN v4l2 gstv4l2object.c:4623:gst_v4l2_object_probe_caps:<v4l2h264dec0:src> Failed to probe pixel aspect ratio with VIDIOC_CROPCAP: Invalid argument
0:00:02.390743414 498 0xffff88013b00 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:02.390829040 498 0xffff88013b00 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unsupported field type for NV12@1x1: 0
0:00:02.390878416 498 0xffff88013b00 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unable to try format: Inappropriate ioctl for device
0:00:02.390930042 498 0xffff88013b00 WARN v4l2 gstv4l2object.c:3047:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:src> Could not probe minimum capture size for pixelformat NV12
0:00:02.390973167 498 0xffff88013b00 WARN v4l2 gstv4l2object.c:2128:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git
0:00:02.391030043 498 0xffff88013b00 WARN v4l2 gstv4l2object.c:3165:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unsupported field type for NV12@32768x32768: 0
0:00:02.391074419 498 0xffff88013b00 WARN v4l2 gstv4l2object.c:3175:gst_v4l2_object_get_nearest_size:<v4l2h264dec0:src> Unable to try format: Inappropriate ioctl for device
0:00:02.391125044 498 0xffff88013b00 WARN v4l2 gstv4l2object.c:3053:gst_v4l2_object_probe_caps_for_format:<v4l2h264dec0:src> Could not probe maximum capture size for pixelformat NV12
Redistribute latency...
0:00:02.408167523 498 0xffff88013b00 WARN v4l2videodec gstv4l2videodec.c:557:get_hdr10_meta:<v4l2h264dec0:src> Failed to get hdr10 meta
0:00:02.452447369 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.456435548 498 0xaaaac36d51e0 WARN waylandsink wlwindow.c:439:gst_wl_window_new_internal: init surface_state fail, fallback to scale=1 fullscreen (1280x768)
Redistribute latency...
0:00:02.516563606 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.583238003 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.650966289 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.717270055 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.783840951 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.850362970 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.916903490 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
0:00:02.983520011 498 0xaaaac36d5860 FIXME videoencoder gstvideoencoder.c:2412:gst_video_encoder_transform_meta_unlocked:<v4l2h264enc0> Can't copy metadata because input frame disappeared
Generally I'm trying to use H264 in webrtcbin, but testing encoder on simpler case.
Can't someone help me? What am I doing wrong?
Thanks in advance, Anton
Solved! Go to Solution.
Hello,
Is probably that you are not in the correct linux version and this provoque that the plugins don't work according to. you better download the proper version from:
Regards