This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4VH-Q1: ISP Tuning Guide

Part Number: TDA4VH-Q1
Other Parts Discussed in Thread: TDA4VH, TDA4VM

Tool/software:

Hi TI Team,

We are currently working on integrating IMX662 sensor for TDA4VH based carrier board. And we couldn't find any ISP Tuning Guide/Documentation in TI's website. Can you support us with the link for ISP Tuning Guide for TDA4VH-Q1?

  • Hi Yoosuf,

    Can you support us with the link for ISP Tuning Guide for TDA4VH-Q1?

    We don't have a dedicated document just for TDA4VH-Q1.

    Please refer to existing app notes on ti.com.

    www.ti.com/.../sprad86

    www.ti.com/.../spracu7

  • BTW, SDK S/W and ISP tuning tool are backward compatible for TDA4/AM6xA devices.
    You shall be able to reuse your previous tuning and s/w in general.

  • Hi

    We have been using the ISP files which we tuned for TDA4VM but it doesn't seem to work. We are able to grab raw frames using gstreamer but when we try to get ISP processed image we face the below error.

    APP: Init ... !!!
    [  441.994816] audit: type=1701 audit(1651190985.776:70): auid=4294967295 uid=0 gid=0 ses=4294967295 pid1
    APP_LOG: ERROR: Unable to map memory @ 0xaf000000 of size 262144[  442.010777] audit: type=1334 audit(16D
     bytes !!!
    APP: ERROR: Log writer init failed !!!
    APP_LOG: ERR[  442.023096] audit: type=1334 audit(1651190985.808:72): prog-id=36 op=LOAD
    OR: Unable to map memory @ 0xb1000000 of size 3288576 bytes !!!
    APP: ERROR: File IO writer init failed !!!
    APP: Init ... Done !!!
    **
    ERROR:../git/gst-libs/gst/tiovx/gsttiovxcontext.c:146:gst_tiovx_context_init: assertion failed: (0 == re)
    Bail out! ERROR:../git/gst-libs/gst/tiovx/gsttiovxcontext.c:146:gst_tiovx_context_init: assertion failed)
    Aborted (core dumped)
    root@j784s4-evm:/opt/edgeai-gst-apps# [  442.699004] audit: type=1334 audit(1651190986.484:73): prog-id=D
    [  442.705974] audit: type=1334 audit(1651190986.484:74): prog-id=35 op=UNLOAD
    

    Here's the gstreamer command we are using


    gst-launch-1.0 v4l2src num-buffers=5 device=/dev/video-imx662-cam0 io-mode=dmabuf-import ! \
    video/x-bayer, width=1920, height=1080, framerate=60/1, format=rggb10 ! \
    tiovxisp sink_0::device=/dev/v4l-imx662-subdev0 \
    sensor-name="SENSOR_SONY_IMX662" \
    dcc-isp-file=/opt/imaging/imx662/dcc_viss.bin \
    sink_0::dcc-2a-file=/opt/imaging/imx662/dcc_2a.bin format-msb=9 ! \
    video/x-raw, format=NV12, width=1920, height=1080, framerate=60/1 ! \
    multifilesink location="imx662-image-%d.raw"

  • Hi Yoosuf,

    but when we try to get ISP processed image we face the below error.

    I am not familiar with gstreamer, but are you supposed to have output in yuv rather than raw?

    >> multifilesink location="imx662-image-%d.raw"

    You may test your VISS settings from a raw image to yuv image.
    I have some pipeline for IMX390 as below.

    gst-launch-1.0 multifilesrc stop-index=0 location=/opt/edgeai-test-data/raw_images/modules_test/imx390_raw_image_1936x1096_16bpp_exp0.raw caps="video/x-bayer, width=1936, height=1096, format=rggb16" ! tiovxisp sensor-name=SENSOR_SONY_IMX390_UB953_D3 dcc-isp-file=/opt/imaging/imx390/wdr/dcc_viss_wdr.bin format-msb=11 sink_0::dcc-2a-file=/opt/imaging/imx390/wdr/dcc_2a_wdr.bin ! filesink location=output_imx390.yuv

  • Hi ,

    We tried the suggested gstreamer pipeline and faced the same issue. Can you point-out to someone familiar with gstreamer?

    Attaching the error log below:

    root@j784s4-evm:/opt/edgeai-gst-apps# gst-launch-1.0 multifilesrc stop-index=0 location=/opt/edgeai-test
    -data/raw_images/modules_test/imx390_raw_image_1936x1096_16bpp_exp0.raw caps="video/x-bayer, width=1936,
     height=1096, format=rggb16" ! tiovxisp sensor-name=SENSOR_SONY_IMX390_UB953_D3 dcc-isp-file=/opt/imagin
    g/imx390/wdr/dcc_viss_wdr.bin format-msb=11 sink_0::dcc-2a-file=/opt/imaging/imx390/wdr/dcc_2a_wdr.bin !
     filesink location=output_imx390.yuv
    APP: Init ... !!!
    APP_LOG: ERROR: Unable to map memory @ 0xaf000000 of size 262144[   27.989449] kauditd_printk_skb: 6 cald
     bytes !!!
    APP: ERROR: Log writer init failed !!!
    APP_LOG: ERR[   27.989459] audit: type=1701 audit(1651192908.700:40): auid=4294967295 uid=0 gid=0 ses=421
    [   28.020114] audit: type=1334 audit(1651192908.732:41): prog-id=23 op=LOAD
    
    APP: ERROR: File IO writer init failed !!!
    APP: Init ... Done [   28.032389] audit: type=1334 audit(1651192908.744:42): prog-id=24 op=LOAD
    !!!
    **
    ERROR:../git/gst-libs/gst/tiovx/gsttiovxcontext.c:146:gst_tiovx_context_init: assertion failed: (0 == re)
    Bail out! ERROR:../git/gst-libs/gst/tiovx/gsttiovxcontext.c:146:gst_tiovx_context_init: assertion failed)
    Aborted (core dumped)
    root@j784s4-evm:/opt/edgeai-gst-apps# [   29.623043] audit: type=1334 audit(1651192910.336:43): prog-id=D
    [   29.630012] audit: type=1334 audit(1651192910.336:44): prog-id=23 op=UNLOAD
    

  • Can you point-out to someone familiar with gstreamer?

    Which SDK version are you working on?

    My friends and may have some comments.

    Delayed response may be expected for holidays.

  • ,

    Which SDK version are you working on?

    We are working on SDK 9_00_02_05

  • We are working on SDK 9_00_02_05

    Thanks for the information!

    I am out of office for Christmas this week.
    My friend Chau may have some comments about gstreamer pipeline.

  • Hi and ,

    Hope you guys are back to office. Do you have any updates on the above query?

  • Hi Yoosuf,

    Happy New Year!

    >> root@j784s4-evm:/opt/edgeai-gst-apps#

    Which EVM are you working on with SDK 9.0?

    Does the following pipeline for IMX390 work for you?

    gst-launch-1.0 multifilesrc stop-index=0 location=/opt/edgeai-test-data/raw_images/modules_test/imx390_raw_image_1936x1096_16bpp_exp0.raw caps="video/x-bayer, width=1936, height=1096, format=rggb16" ! tiovxisp sensor-name=SENSOR_SONY_IMX390_UB953_D3 dcc-isp-file=/opt/imaging/imx390/wdr/dcc_viss_wdr.bin format-msb=11 sink_0::dcc-2a-file=/opt/imaging/imx390/wdr/dcc_2a_wdr.bin ! filesink location=output_imx390.yuv

  • Hi Yoosuf,

    I have validated that the following GStreamer pipeline works to save yuv frames using IMX219. Make the changes needed to work with IMX662.

    gst-launch-1.0 v4l2src device=/dev/video-imx219-cam0 io-mode=5 ! queue leaky=2 ! video/x-bayer, width=1920, height=1080, framerate=30/1, format=rggb ! tiovxisp sink_0::device=/dev/v4l-subdev2 sensor-name="SENSOR_SONY_IMX219_RPI" dcc-isp-file=/opt/imaging/imx219/linear/dcc_viss_1920x1080.bin sink_0::dcc-2a-file=/opt/imaging/imx219/linear/dcc_2a_1920x1080.bin format-msb=7 ! video/x-raw, format=NV12, width=1920, height=1080, framerate=30/1 ! multifilesink sync=False location=/opt/edgeai-test-data/output/output_image_%04d.yuv

    Thank you,

    Fabiana