MIPI-CSI camera can not play whith ffplay on NX

hello:

MIPI-CSI camera can not play whith ffplay on NX. My NX device information is as follows:

Linux jetson-desktop 4.9.201-tegra #1 SMP PREEMPT Fri Feb 19 08:42:04 PST 2021 aarch64 aarch64 aarch64 GNU/Linux
DISTRIB_DESCRIPTION=“Ubuntu 18.04.5 LTS”
R32 (release), REVISION: 5.1, GCID: 26202423, BOARD: t186ref, EABI: aarch64, DATE: Fri Feb 19 16:50:29 UTC 2021

and the camera is mounted in /dev/video0. Use this command to play back the video:

gst-launch-1.0 nvarguscamerasrc ! ‘video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, format=(string)NV12, framerate=(fraction)20/1’ ! nvvidconv ! ‘video/x-raw(memory:NVMM),format=(string)NV12’ ! nvoverlaysink -e

but can not play whith ffplay,the error message of the ffplay prompt is as follows:

jetson@jetson-desktop:~/work/ffmpeg_arm64/build/lib$./ffplay -i /dev/video0
ffplay version 4.2.2 Copyright (c) 2003-2019 the FFmpeg developers
built with gcc 7 (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04)
configuration: --prefix=/work/ffmpeg_arm64/ffmpeg/build --arch=arm64 --target-os=linux --pkg-config-flags=–static --extra-cflags=-I/work/ffmpeg_arm64/ffmpeg/build/include --extra-ldflags=-L/work/ffmpeg_arm64/ffmpeg/build/lib --extra-libs=‘-lpthread -lm’ --enable-shared --enable-gpl --enable-libfdk-aac --enable-libmp3lame --enable-libopus --enable-libx264 --enable-libx265 --enable-nonfree --enable-libvpx --enable-sdl2 --enable-libv4l2
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
[video4linux2,v4l2 @ 0x7f68000b60] ioctl(VIDIOC_G_PARM): Inappropriate ioctl for device
[video4linux2,v4l2 @ 0x7f68000b60] Time per frame unknown
[video4linux2,v4l2 @ 0x7f68000b60] Dequeued v4l2 buffer contains corrupted data (16084992 bytes).
[video4linux2,v4l2 @ 0x7f68000b60] Dequeued v4l2 buffer contains corrupted data (16084992 bytes).
Last message repeated 30 times
[video4linux2,v4l2 @ 0x7f68000b60] Dequeued v4l2 buffer contains corrupted data (16084992 bytes).
Last message repeated 5 times
[video4linux2,v4l2 @ 0x7f68000b60] Dequeued v4l2 buffer contains corrupted data (16084992 bytes).
[video4linux2,v4l2 @ 0x7f68000b60] Dequeued v4l2 buffer contains corrupted data (16084992 bytes).
Last message repeated 4 times
[video4linux2,v4l2 @ 0x7f68000b60] Dequeued v4l2 buffer contains corrupted data (16084992 bytes).
Last message repeated 5 times
[video4linux2,v4l2 @ 0x7f68000b60] Dequeued v4l2 buffer contains corrupted data (16084992 bytes).
[video4linux2,v4l2 @ 0x7f68000b60] Dequeued v4l2 buffer contains corrupted data (16084992 bytes).
Last message repeated 4 times
[video4linux2,v4l2 @ 0x7f68000b60] Dequeued v4l2 buffer contains corrupted data (16084992 bytes).

I think there is something wrong with the V4L2 drive,but I’m not sure

Moving to Jetson NX forum for resolution.

Hi,
Your sensr looks to be Bayer sensor and would need to run through nvarguscamerasrc. If you want ot do raw frame capture, please run v4l2-ctl command.

We don’t have much experience in running ffplay, but it seems like it only supports YUV sensors with YUV422 formats(such as YUYV or UYVY). Other users may correct me if this is wrong.

Hi,DaneLLL:
Yes, my sensor is Bayer sensor.
You mean if I want to play video from the camera on the monitor,I must need to run through nvarguscamerasrc? And, Can you tell me how to use v4l2-ctl command to capture raw frame ?

hello Arvin,

please check developer guide for reference, Approaches for Validating and Testing the V4L2 Driver.
thanks