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.

RTOS: TDA2xx: null source decode display issue

Tool/software: TI-RTOS

Hello,

We are trying to run null_src_dec_display usecase (from vision_sdk/apps/src/rtos/usecases)for h264 decode and display.

Sdk info:-

1. PROCESSOR_SDK_VISION_03_00_00_00

2. Build apps for BISO.

Getting below error messages and displays nothing,

[IPU1-0]     33.201396 s:  Assertion @ Line: 219 in nullSrcLink_tsk.c: frameLength < bitstreamBuf->bufSize : failed !!!
[IPU1-0]     33.201945 s:  Assertion @ Line: 219 in nullSrcLink_tsk.c: frameLength < bitstreamBuf->bufSize : failed !!!
[IPU1-1]     33.158756 s:  SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
[IPU1-1]     33.158909 s:  SYSTEM: Heap = LOCAL_DDR            @ 0x00000000, Total size = 655360 B (640 KB), Free size = 620168 B (605 KB)
[HOST  ]     33.159214 s:  SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
[HOST  ]     33.159244 s:  SYSTEM: Heap = LOCAL_DDR            @ 0x00000000, Total size = 6291456 B (6144 KB), Free size = 6276112 B (6129 KB)
[DSP1  ]     33.159366 s:  SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
[DSP1  ]     33.159397 s:  SYSTEM: Heap = LOCAL_L2             @ 0x00800000, Total size = 227264 B (221 KB), Free size = 227264 B (221 KB)
[DSP1  ]     33.159458 s:  SYSTEM: Heap = LOCAL_DDR            @ 0x00000000, Total size = 524288 B (512 KB), Free size = 514584 B (502 KB)
[DSP2  ]     33.159610 s:  SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
[DSP2  ]     33.159641 s:  SYSTEM: Heap = LOCAL_L2             @ 0x00800000, Total size = 227264 B (221 KB), Free size = 227264 B (221 KB)
[DSP2  ]     33.159702 s:  SYSTEM: Heap = LOCAL_DDR            @ 0x00000000, Total size = 524288 B (512 KB), Free size = 514584 B (502 KB)
[EVE1  ]     33.160037 s:  SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
[EVE1  ]     33.160403 s:  SYSTEM: Heap = LOCAL_L2             @ 0x40020000, Total size = 22528 B (22 KB), Free size = 22528 B (22 KB)
[EVE1  ]     33.160952 s:  SYSTEM: Heap = LOCAL_DDR            @ 0x00000000, Total size = 262144 B (256 KB), Free size = 252432 B (246 KB)
[EVE2  ]     33.161928 s:  SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
[EVE2  ]     33.162233 s:  SYSTEM: Heap = LOCAL_L2             @ 0x40020000, Total size = 22528 B (22 KB), Free size = 22528 B (22 KB)
[EVE2  ]     33.162752 s:  SYSTEM: Heap = LOCAL_DDR            @ 0x00000000, Total size = 262144 B (256 KB), Free size = 252432 B (246 KB)
[EVE3  ]     33.163636 s:  SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
[EVE3  ]     33.163941 s:  SYSTEM: Heap = LOCAL_L2             @ 0x40020000, Total size = 22528 B (22 KB), Free size = 22528 B (22 KB)
[EVE3  ]     33.164460 s:  SYSTEM: Heap = LOCAL_DDR            @ 0x00000000, Total size = 262144 B (256 KB), Free size = 252432 B (246 KB)
[EVE4  ]     33.165314 s:  SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
[EVE4  ]     33.165619 s:  SYSTEM: Heap = LOCAL_L2             @ 0x40020000, Total size = 22528 B (22 KB), Free size = 22528 B (22 KB)
[EVE4  ]     33.166137 s:  SYSTEM: Heap = LOCAL_DDR            @ 0x00000000, Total size = 262144 B (256 KB), Free size = 252432 B (246 KB)
[IPU2  ]     33.166900 s:  SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
[IPU2  ]     33.167022 s:  SYSTEM: Heap = LOCAL_DDR            @ 0x00000000, Total size = 262144 B (256 KB), Free size = 250184 B (244 KB)
[IPU1-0]     66.002226 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.034221 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.066217 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.098212 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.130208 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.162203 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.194229 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.226224 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.258219 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.290215 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.322210 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.354236 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.386231 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.418227 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.450222 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.482218 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!
[IPU1-0]     66.514213 s:  UTILS: MBX: Utils_mbxSendCmd(): Msg Alloc Failed (0)!!!

Note:-

1.Input video( 1280x720_00.h264 ) has given( codec : h264, Resolution: 1280X720, No. of frames: 900, video sample taken from : http://jell.yfish.us/ )

2.Index file( 1280x720_00.hdr ) also given( Frame size :- 921600( 1280 *720),  900 times ( no. of frames))

Any pointer to  get this usecase running on TDA2x board?

Thanks in advance.

Kajal

  • Hello Kajal,

    Have you made any changes in use-case? 

    Looks like your header file not correctly generated.  Can you try attached with same set up?

    Also share full logs (from use-case start).1280x720_00.zip

  • nullSource_decode_display.logHello Prasad,

    Have you made any changes in use-case?

    >>I haven't changed anything in use-case.

    I tried with input sample that you have shared,

    1. Error resolved "Assertion @ Line: 219 in nullSrcLink_tsk.c: frameLength < bitstreamBuf->bufSize : failed !!!"

    2. Got below error message ,

    [IPU1-0]     36.376136 s:  DECODE: ERROR: ALGPROCESS FAILED (status=0x00001423) !!!
    [IPU1-0]     36.376227 s:  DEC_LINK: outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x1423
    [IPU1-0]     36.376532 s:  DEC_LINK: Sequence called number 1
    [IPU1-0]     36.404501 s:  DECODE: ERROR: ALGPROCESS FAILED (status=0x00001423) !!!
    [IPU1-0]     36.404623 s:  DEC_LINK: outArgs->viddec3OutArgs.extendedError for channel 0 Error: 0x1423
    [IPU1-0]     36.404898 s:  DEC_LINK: Sequence called number 2

    Also find attached complete log file.

    Regards,

    Kajal.

  • Hello Kajal,

    We'll run this use-case on our set up and let you know our findings. Should reply by tomorrow. Thanks.

  • Can I get updates on above issue?

    Regards,
    Kajal
  • Hello Kajal,

    We could run this use-case without any issues. The error you get is due to incorrect header info in the index file.

    I am attaching new input files. Please try with that. /

    cfs-file/__key/communityserver-components-multipleuploadfilemanager/429bb781_2D00_7f06_2D00_40d6_2D00_9d8a_2D00_ebde7678b524-121564-complete/1280x720_5F00_00.zip

    Use below command to get correct index file

    ffprobe.exe -show_packets inData.h264 > index.idx

    sizeBin.exe index.idx inHeader

  • Hello Prasad,

    I am able to run this use case with the help of your input sample.

    Just want to know,

    I have build BIOS on linux platform.

    I am able to generate index.idx file with the help of ffprobe command.

    But how can I generate the binary file using generated Index.idx file on Linux machine?

    Regards,

    Kajal.



  • Hello Kajal,

    Currently we have binary for windows only. I will check if we have source code to generate linux binaries. For now can you please generate it on Windows?

  • Hello Prasad,

    Can we get binary file(sizeBin.exe) for windows?

    Regards,
    Kajal.
  • Hello Prasad,

    We are able to generate binary index file successfully on linux platform.

    Thanks for your help.

    Regards,

    Kajal

  • Hello Kajal,

    Can you please share how did you generate it on Linux?
  • Sure Prasad!

    1. Generate index file( all info of video sample) with ffprobe command.

    ffprobe -show_packets ./H264_artifacts_motion.h264 >index.idx

    2. Extract just "Size" from above generated index file with sed command.

    PAT=size
    sed -n "/$PAT/p" index.idx | cut -d' ' -f3 >> size_extracted.txt

    3. Now generate binary file from size extracted file, with below command. Please note that " size_extracted.txt should not contain any string just numbers i.e size of frame " .

    cat size_extracted_jelly.txt | perl -n -e 'printf("%08x\n",$_)' | sed 's/\(..\)\(..\)\(..\)\(..\)/0x\4\n0x\3\n0x\2\n0x\1/' | xxd -r -p > Size_test.bin && du -b Size_test.bin


    You can validate you generated binary file with size_extracted.txt using below command.

    hexedit Size_test.bin

    Please do let me know if face any issue regarding this.

    Regards,

    Kajal.
  • Hello Kajal,

    Thanks for sharing this. Very useful. I will try and let you know if any issues.
  • Hello Kajal,

    One of our user is trying the method you suggested on Linux machine.
    Just wanted to confirm in steps above "Size_test.bin" is the header file, right?
  • Yes Prasad, "Size_test.bin" is binary header file generated, contains frame sizes.

    It can be renamed with ".hdr"  and use as input header file for null source link along with input video.

    Attached input video and header file which we have generated.

    704X400_00.tar.gz

    Regards,

    Kajal Karande.

  • Hello Kajal,

    Thanks for confirming and sharing sample files.

  • Thanks Prasad for verifying the steps for hdr file generation in Linux with Kajal.

    We basically want to get nullSrc decode display working from the pipeline NullSrc->A15->IPU->Decode->VPE->Display.

    We are using the usecase provided by vision SDK and have not modified anything the source code.

    We want to try this using 1080p, .h264 video. We have downloaded h264 sample video from
    Jellyfish Bitrate Test Files jell.yfish.us

    Size of the video is 18MB, Bit rate is 5 Mbps.

    We have used following commands as per your previous posts :

    On Ubuntu 14.04 :

    1. Generate index file( all info of video sample) with ffprobe command.

    ffprobe -show_packets ./<video-file-name.h264 >index.idx

    2. Extract just "Size" from above generated index file with sed command.

    PAT=size

    sed -n "/$PAT/p" index.idx | cut -d' ' -f3 >> size_extracted.txt

    3. Now generate binary file from size extracted file, with below command.

    cat size_extracted.txt | perl -n -e 'printf("%08x\n",$_)' | sed 's/\(..\)\(..\)\(..\)\(..\)/0x\4\n0x\3\n0x\2\n0x\1/' | xxd -r -p > Size_test.bin && du -b Size_test.bin

    So, we get the following files :

    Size_test.bin file, index.idx and size_extracted.txt files

    Renamed Size_test.bin as 1920x1080_00.hdr and copied the .h264 video as is in the home dir.

    on the device we run,
    $$ cd /opt/vision_sdk
    $$ source ./vision_sdk_load.sh
    $$ ./apps.out

    I am putting the log as below
    [HOST] [HOST ] =========
    [HOST] [HOST ] Test Menu
    [HOST] [HOST ] =========
    [HOST] [HOST ]
    [HOST] [HOST ] Single Camera Use-cases,
    [HOST] [HOST ] ------------------------
    [HOST] [HOST ] 1: 1CH VIP capture + SGX Copy + DISPLAY
    [HOST] [HOST ] 2: 1CH VIP capture + Encode + Decode + SGX Copy + DISPLAY
    [HOST] [HOST ] 3: 1CH VIP capture + Alg FrameCopy (EVE1) + SGX Copy + DISPLAY - (TDA2xx ONLY)
    [HOST] [HOST ] 5: NullSrc + Decode + Display (Only 1920x1080 H264/MJPEG Video Input Bit-Stream Supported)
    [HOST] [HOST ] 6: 1CH VIP capture + Alg Frame Copy (A15) + SGX Copy + DISPLAY
    [HOST] [HOST ] 7: 1CH VIP + Alg Frame Copy (A15) + Connetor Links (Dup, Merge, Select, Gate on A15) + SGX Copy + DISPLAY
    [HOST] [HOST ]
    [HOST] [HOST ] Multi-Camera LVDS Use-cases,
    [HOST] [HOST ] ----------------------------
    [HOST] [HOST ] a: 4CH VIP LVDS capture + SGX MOSAIC + DISPLAY
    [HOST] [HOST ] t: 4CH VIP LVDS capture + Scale + Encode + Null (file dump)
    [HOST] [HOST ] b: 4CH VIP LVDS capture + 3D SRV (SGX/A15) + DISPLAY - Only HDMI 1080p display supported
    [HOST] [HOST ] l: 4CH VIP LVDS 2MP capture + 3D SRV (SGX/A15) + DISPLAY - Only HDMI 1080p display supported
    [HOST] [HOST ] c: 4CH VIP LVDS capture + 3D SRV + 4CH SfM (3D perception demo - EVE1-4/DSP1&2) + DISPLAY - Only on TDA2xx with HDMI 1080p dy
    [HOST] [HOST ] d: 2CH OV490 2560x720 capture + Split + 3D SRV (SGX/A15) + DISPLAY - Only HDMI 1080p display supported
    [HOST] [HOST ] e: Surround View Calibration
    [HOST] [HOST ] k: CSI2 CAL Surround View Calibration
    [HOST] [HOST ] o: 4CH VIP LVDS capture + Adaptive 3D SRV (SGX/A15) + DISPLAY - Only HDMI 1080p display supported
    [HOST] [HOST ]
    [HOST] [HOST ] AVB RX Use-cases, (TDA2x ONLY)
    [HOST] [HOST ] ------------------------------
    [HOST] [HOST ]
    [HOST] [HOST ] OPENVX Usecase, (TDA2x ONLY)
    [HOST] [HOST ] ----------------------------
    [HOST] [HOST ] m: OpenVX v1.1 Conformance Test
    [HOST] [HOST ] q: OpenVX Tutorials
    [HOST] [HOST ]
    [HOST] [HOST ] p: CPU Status
    [HOST] [HOST ] i: Show IP Addr (IPU + NDK + AVB)
    [HOST] [HOST ]
    [HOST] [HOST ] s: System Settings
    [HOST] [HOST ]
    [HOST] [HOST ] x: Exit
    [HOST] [HOST ] z: Exit - AND SHUTDOWN Remote CPUs
    [HOST] [HOST ]
    [HOST] [HOST ] Enter Choice:
    [HOST] [HOST ]
    5
    [HOST] [HOST ] 61.036417 s:
    [HOST] [HOST ]
    [HOST] [HOST ] =========================================
    [HOST] [HOST ] Chains Run-time Codec Type Selection Menu
    [HOST] [HOST ] =========================================
    [HOST] [HOST ]
    [HOST] [HOST ] Enter '0' for MJPEG
    [HOST] [HOST ]
    [HOST] [HOST ] Enter '1' for H.264
    [HOST] [HOST ]
    [HOST] [HOST ] Enter Choice:
    [HOST] [HOST ]
    [HOST] [HOST ] 61.036478 s:
    [HOST] [HOST ] Unsupported option '
    [HOST] [HOST ] '. Please try again
    [HOST] [HOST ] 61.036478 s:
    [HOST] [HOST ]
    [HOST] [HOST ] =========================================
    [HOST] [HOST ] Chains Run-time Codec Type Selection Menu
    [HOST] [HOST ] =========================================
    [HOST] [HOST ]
    [HOST] [HOST ] Enter '0' for MJPEG
    [HOST] [HOST ]
    [HOST] [HOST ] Enter '1' for H.264
    [HOST] [HOST ]
    [HOST] [HOST ] Enter Choice:
    [HOST] [HOST ]
    1
    [HOST] [HOST ] 63.094827 s: IPC_OUT_0 : Create in progress !!!
    [HOST] [HOST ] 63.094888 s: IPC_OUT_0 : Create Done !!!
    [HOST] [IPU2 ] 63.095040 s: IPC_IN_0 : Create in progress !!!
    [HOST] [IPU2 ] 63.096169 s: IPC_IN_0 : Create Done !!!
    [HOST] [IPU2 ] 63.096626 s: DECODE: Create in progress ... !!!
    [HOST] [IPU2 ] 63.241597 s: DECODE: Creating CH0 of 704 x 400 [1] [0],target bitrate = 10000 Kbps ...
    [HOST] [IPU2 ] 63.242420 s: DECODE: All CH Create ... DONE !!!
    [HOST] [IPU2 ] 63.244281 s: DECODE: Create ... DONE !!!
    [HOST] [IPU2 ] 63.244708 s: VPE: Create in progress !!!
    [HOST] [IPU2 ] 63.332153 s: VPE: Loading Down-scaling Co-effs
    [HOST] [IPU2 ] 63.332397 s: VPE: Co-effs Loading ... DONE !!!
    [HOST] [IPU2 ] 63.332641 s: VPE: Create Done !!!
    [HOST] [IPU2 ] 63.333038 s: DISPLAY: Create in progress !!!
    [HOST] [IPU2 ] 63.333679 s: DISPLAY: Create Done !!!
    [HOST] [DSP1 ] 63.434331 s: SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023
    [HOST] [DSP1 ] 63.434362 s: SYSTEM: Heap = LOCAL_L2 @ 0x00800000, Total size = 227264 B (221 KB), Free size = 227264 B (221)
    [HOST] [DSP1 ] 63.434423 s: SYSTEM: Heap = LOCAL_DDR @ 0x00000000, Total size = 524288 B (512 KB), Free size = 516016 B (503)
    [HOST] [DSP2 ] 63.434636 s: SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023
    [HOST] [DSP2 ] 63.434697 s: SYSTEM: Heap = LOCAL_L2 @ 0x00800000, Total size = 227264 B (221 KB), Free size = 227264 B (221)
    [HOST] [DSP2 ] 63.434728 s: SYSTEM: Heap = LOCAL_DDR @ 0x00000000, Total size = 524288 B (512 KB), Free size = 516016 B (503)
    [HOST] [EVE1 ] 63.435216 s: SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023
    [HOST] [EVE1 ] 63.435521 s: SYSTEM: Heap = LOCAL_L2 @ 0x40020000, Total size = 22528 B (22 KB), Free size = 22528 B (22 KB)
    [HOST] [EVE1 ] 63.436070 s: SYSTEM: Heap = LOCAL_DDR @ 0x00000000, Total size = 262144 B (256 KB), Free size = 254160 B (248)
    [HOST] [EVE2 ] 63.437076 s: SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023
    [HOST] [EVE2 ] 63.437473 s: SYSTEM: Heap = LOCAL_L2 @ 0x40020000, Total size = 22528 B (22 KB), Free size = 22528 B (22 KB)
    [HOST] [EVE2 ] 63.438022 s: SYSTEM: Heap = LOCAL_DDR @ 0x00000000, Total size = 262144 B (256 KB), Free size = 254160 B (248)
    [HOST] [EVE3 ] 63.439028 s: SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023
    [HOST] [HOST ] 63.447203 s:
    [HOST] [HOST ]
    [HOST] [HOST ] ====================
    [HOST] [HOST ] Chains Run-time Menu
    [HOST] [HOST ] ====================
    [HOST] [HOST ]
    [HOST] [HOST ] 0: Stop Chain
    [HOST] [HOST ]
    [HOST] [HOST ] p: Print Performance Statistics
    [HOST] [HOST ]
    [HOST] [HOST ] Enter Choice:
    [HOST] [HOST ]
    [HOST] [EVE3 ] 63.439333 s: SYSTEM: Heap = LOCAL_L2 @ 0x40020000, Total size = 22528 B (22 KB), Free size = 22528 B (22 KB)
    [HOST] [EVE3 ] 63.439852 s: SYSTEM: Heap = LOCAL_DDR @ 0x00000000, Total size = 262144 B (256 KB), Free size = 254160 B (248)
    [HOST] [EVE4 ] 63.440858 s: SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023
    [HOST] [EVE4 ] 63.441163 s: SYSTEM: Heap = LOCAL_L2 @ 0x40020000, Total size = 22528 B (22 KB), Free size = 22528 B (22 KB)
    [HOST] [EVE4 ] 63.441712 s: SYSTEM: Heap = LOCAL_DDR @ 0x00000000, Total size = 262144 B (256 KB), Free size = 254160 B (248)
    [HOST] [IPU2 ] 63.442505 s: SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023
    [HOST] [IPU2 ] 63.442688 s: SYSTEM: Heap = LOCAL_DDR @ 0x00000000, Total size = 262144 B (256 KB), Free size = 247936 B (242)
    [HOST] [IPU2 ] 63.442841 s: SYSTEM: Heap = SR_OCMC @ 0x00000000, Total size = 0 B (0 KB), Free size = 0 B (0 KB)
    [HOST] [IPU2 ] 63.442993 s: SYSTEM: Heap = SR_DDR_CACHED @ 0x84203000, Total size = 262144000 B (250 MB), Free size = 245446656 )
    [HOST] [IPU2 ] 63.443207 s: SYSTEM: Heap = SR_DDR_NON_CACHED @ 0xa0100000, Total size = 1045376 B (0 MB), Free size = 851840 B (0 MB)
    [HOST] [IPU2 ] 63.443634 s: DISPLAY: Start in progress !!!
    [HOST] [IPU2 ] 63.443725 s: DISPLAY: Start Done !!!
    ASSERT (nullSrcLink_tsk.c|NullSrcLink_fillData|202)

    As you see, we are getting ASSERT error due to failure to *Read length of current frame from Index file*

    One difference, I see is that you running the use case from M4->DSS, where as I am trying to execute from A15->M4->DSS.

    Have you tried the A15-M4-DSS usecase?

    Please let me know.

    Thanks,
    Prabhuraj

  • Hello Prabhuraj,

    The current null source use-case (vision_sdk\apps\src\hlos\adas\src\usecases\null_src_decode_display) uses A15. You can confirm this from below use-case .txt file.

    NullSource (A15) -> Decode -> VPE -> Display

  • Hello Prasad and Prabhuraj ,

    In case of linux,

    index file i.e. .hdr file should not binary like SYS-BIOS case.

    So, please try with "size_extracted_jelly.txt" , rename with .hdr  ( i. e. just size extracted from video , which will be human readable) .

    I have tried at my end and it is working.

    Please do let me know if you face any issue.

    Regards,

    Kajal Karande.

  • Thanks Kajal for you response.

    I tried with what you mentioned but I still get same issue,

    [HOST] [HOST ] ====================
    [HOST] [HOST ] Chains Run-time Menu
    [HOST] [HOST ] ====================
    [HOST] [HOST ] 
    [HOST] [HOST ] 0: Stop Chain
    [HOST] [HOST ] 
    [HOST] [HOST ] p: Print Performance Statistics 
    [HOST] [HOST ] 
    [HOST] [HOST ] Enter Choice: 
    [HOST] [HOST ] 
    [HOST] [EVE3 ] 63.439333 s: SYSTEM: Heap = LOCAL_L2 @ 0x40020000, Total size = 22528 B (22 KB), Free size = 22528 B (22 KB)
    [HOST] [EVE3 ] 63.439852 s: SYSTEM: Heap = LOCAL_DDR @ 0x00000000, Total size = 262144 B (256 KB), Free size = 254160 B (248)
    [HOST] [EVE4 ] 63.440858 s: SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
    [HOST] [EVE4 ] 63.441163 s: SYSTEM: Heap = LOCAL_L2 @ 0x40020000, Total size = 22528 B (22 KB), Free size = 22528 B (22 KB)
    [HOST] [EVE4 ] 63.441712 s: SYSTEM: Heap = LOCAL_DDR @ 0x00000000, Total size = 262144 B (256 KB), Free size = 254160 B (248)
    [HOST] [IPU2 ] 63.442505 s: SYSTEM: SW Message Box Msg Pool, Free Msg Count = 1023 
    [HOST] [IPU2 ] 63.442688 s: SYSTEM: Heap = LOCAL_DDR @ 0x00000000, Total size = 262144 B (256 KB), Free size = 247936 B (242)
    [HOST] [IPU2 ] 63.442841 s: SYSTEM: Heap = SR_OCMC @ 0x00000000, Total size = 0 B (0 KB), Free size = 0 B (0 KB)
    [HOST] [IPU2 ] 63.442993 s: SYSTEM: Heap = SR_DDR_CACHED @ 0x84203000, Total size = 262144000 B (250 MB), Free size = 245446656 )
    [HOST] [IPU2 ] 63.443207 s: SYSTEM: Heap = SR_DDR_NON_CACHED @ 0xa0100000, Total size = 1045376 B (0 MB), Free size = 851840 B (0 MB)
    [HOST] [IPU2 ] 63.443634 s: DISPLAY: Start in progress !!!
    [HOST] [IPU2 ] 63.443725 s: DISPLAY: Start Done !!!
    ASSERT (nullSrcLink_tsk.c|NullSrcLink_fillData|202)

     

    I run following commands, as per vision sdk Linux guide. Please correct me if I am wrong :

    $$ cd /opt/vision_sdk

    $$ source ./vision_sdk_load.sh

    $$ ./apps.out

    Also, I the video file I am using is almost 20MB. Do we have to use a small size video and generate .hdr file for it?

     

    Thanks,

    Prabhuraj 

     

  • Hello Prabhuraj,

    I think size of video file is not an issue and even commands are also okay.

    I am attaching sample video file and hdr file, please try with that.

    Actually I tested with another sample, I couldn't attach here (because of size of file) ,

    704x400_00.zip

    Regards,

    Kajal

  • Please note size of video sample is 704X400, so change in use case c file according to this.

    Regards,
    Kajal Karande
  • Hi Prasad and Kajal,

    We are able to display the nullSRC example. Linux commands for creating the .hdr also works.
    The issue was with the HDMI display we were using. We got another HDMI which can support different resolutions.


    Thanks,
    Prabhuraj
  • For sharing purposes, the binary index file can be created using the following command in Linux:

    cat input.hdr | /usr/bin/perl -n -e 'printf("%08x\n",$_)' |
    sed 's/\(..\)\(..\)\(..\)\(..\)/0x\4\n0x\3\n0x\2\n0x\1/' |
    xxd -r -p > output.bin && du -b output.bin

    Here each line in input.hdr contains a frame size in decimal.

    For further details, please refer to the following:

    vision_sdk/links_fw/src/rtos/links_common/nullSrc/nullSrcLink_tsk.c line #1421.

  • Hello Prasad,

    What if input file for null src link is yuv420 ??

    I mean, what will be index file contents.

    For ex.

    input video file is yuv420 and res.: 388X252

    then frame size will be 152064

    Correct me if I am wrong.

    Regards,

    Kajal

  • Hello Kajal,

    The index file is not required (ignored) if frame format is VIDEO_FRAME. It is only needed for bit stream buffers.

    Make sure to change frame type and YUV format in the use-case params. The size is computed using data type and resolution in the link.

  • Thank you for the information Prasad.

    Regards,

    Kajal