Hi @toshinariagata
I haven't used deinterlace of gstreamer, so you know what's requirement for source interlaced frame?
For ISI side, to get a frame with two fields, you must enable the weaving mode de-interlace.
And if you want to get one field data as a "frame", for example 720*240 for NTSC, after set "deinterlace_mode = 0" in dts, you also need change the code in isl7998x.c:
1. Change height from 480 to 240:
static video_fmt_t video_fmts[] = {
{ /*! NTSC */
.v4l2_id = V4L2_STD_NTSC,
.name = "NTSC",
.width = 720, /* ACT_FRM_WIDTH plus 1 */
- .height = 480, /* ACT_FRM_WIDTH plus 1 */
+ .height = 240, /* ACT_FRM_WIDTH plus 1 */
2. Change ISL79987 from frame mode to field mode in isl7998x_hardware_init():
- isl7998x_write_reg(isl7998x_data, 0x01, 0x25); //For frame mode
+ isl7998x_write_reg(isl7998x_data, 0x01, 0x05); //For field mode