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] Decoder latency

Other Parts Discussed in Thread: TDA4VH, TDA4VM

Hello TI team members

I'm developing the decoding application on TDA4VH using PSDK 8.6.0.12.

I know the decoder needs a minimum of 6 input buffers to start decoding. In other words, it can start decoding when the input buffers are full.

Is it hardware specific? or I'm wondering if it could be made shorter to decrease the latency in the first frame output.

Best regards

Yongsig

  • Hello Yongsig,

    I will check with the manufacturer if this is hardware specific. Please give me time to verify with them.

    In other drivers, I have seen that input buffers are set to specific sizes depending on the profile of the streams and also to achieve maximum efficiency on the device. You may be able to decrease the input buffers, but I would make sure that you are not throwing out frames that are being referenced by incoming frames. For example, if you decrease to 4 input buffers and the 5th frame is a P frame that references the first frame that was received (which was now thrown out to make space) then the decoded image will not look correct because a reference frame is missing. I suggest follow the same format as the v4l2 driver as it has been thoroughly tested.

    Best,

    Brandon

  • Hi Brandon.

    Thanks for your reply.

    When I tested in PSDK8.2.0.5 on TDA4VM, the v4l2 driver was vxd-vxe.

    I set the number of input buffers was 2, and It worked well even though the I-frame period was 5.

    So I'm wondering whether the buffer that is able to keep a reference frame is implemented in Hardware or Software.

    Best regards

    Yongsig

  • Hi Yongsig,

    I have done similar tests in the past and see similar results. However, it is important to note that there are very many unique video structures. On that same device, with reducing input buffers, I have seen that the 3rd frame (P frame) references the 1st frame which led to issues in the output because the reference frame was being dropped.

    As long as your video only references the frame prior, then setting input buffers to 2 should be fine. It is dependent on your use case, video profile/level, and gop structure. This should not be a hardware dependency. But like I said in previous post, reducing buffers could lead to a decrease in efficiency. 

    Best,

    Brandon

  • Hello.

    I was wondering if you would give the answer as to whether the root cause of the latency was hardware-specific.

    Best regards

    Yongsig

  • Hi Yongsig,

    From my understanding, reducing the number of buffers will limit the hardware's efficiency creating latency. However, this varies on the use case like Brandon mentioned previously.

    Also our expert is currently OOO and will clarify on this answer, but please expect a delay. Thank you for your patience.

    Thanks,
    Sarabesh S