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.

TDA2HG: Patch for SyncLink with timeout mechanism in vision sdk

Part Number: TDA2HG

Dear All,

    I have a chain like "4 CameraIn + SyncLink + DisplayLink", and i found the chain would block if one or more camera broken. 

    But I need the SyncLink can deliver the valid data from camera even though one or more camera broken.

    Such as one camera broken and the other three are working, SycnLink can deliver the other three data and only drop one.

    Is there any patch for this on VSDK2.12?

   Thanks &  Best Regards.

   Sid

  • Hi Sid,

    You could just set the SyncDelta to be greater than 1000. if syncDelta is >= 1000, then frame will not be dropped and any available frame to be synced.

    Regards,

    Brijesh

  • Hi BriJesh,
    Thanks for reply.
    In my test chain, I set "pPrm->syncDelta = LOOSE_SYNC_DELTA_IN_MSEC" and "pPrm->syncThreshold = LOOSE_SYNC_DROP_THRESHOLD_IN_MSEC", the "LOOSE_* = 0x7FFFFFFF", but in "4 Camera In usecase" if i only plug 3 Camera in my board, the sync link will not forward the 3 Camera video buffer to the next link.
    So such as one camera broken and the other three are working, is there any way make sycnLink can deliver the other three data?

    Thanks & Best Regards.
    Sid
  • Hi Sid,

    Sync Link is used for synchronising multiple inputs, if one of the input is not available, it will not output.

    In your case, i think it is better to use merge link instead of sync link. Merge link will merge multiple inputs, change channel id and send them out. No sync happens in merge link.

    Rgds,
    Brijesh
  • Hi BriJesh,
    We found out " Merge Link does not “sync” or “group” multiple CHs, only “forwards” a individual buffer after manipulating CH ID",
    We dont know how to make Merge Link merge four channels video buffers in to one composite buffer with order, and where the four buffers are all from capture link's output queue. The Merge Link seems forward video buffers without any channel order, and at begin it forward four channels in one buflist to next link, but after six times it just forward one channel in buflist.
    Do you have any examples to show how merge link can work with single link's multiple video buffer channels, and output one video composite buffer with channels order?

    Thanks & Best Regards.
    Sid
  • Hi Sid,

    The feature that you are requesting isn't supported.
    Ideally you should use Sync link to synchronise all inputs. But if one of them is not available, it will not output.
    In your case, you could add some control command to sync link. That control command will either remove or include one of the channel from sync logic.
    But you require to detect that one of the channel has stopped.

    Regards,
    Brijesh