How to stream a cudaImage across processes?


I want to share a dwImageCUDA object across multiple processes in a Tegra.

I came across dwImageStreamer_initializeCrossProcess in the manual.

DW_API_PUBLIC dwStatus dwImageStreamer_initializeCrossProcess	(	
   dwImageStreamerHandle_t * streamer,
   const dwImageProperties * from,
   dwImageType 	to,
   dwImageStreamerCrossProcessModeParams params,
   dwContextHandle_t ctx 

My question is

  1. How to set param.parameters so that the consumer will get the correct data from the producer when there is multiple consumers and producers?
  2. Any sample codes that I could refer?
  3. Is this function thread-safe?
  4. Is there anyway to share dwImageCUDA across TegraA and TegraB?

Dear yc563,
Please refer to image_streamer_cross_process sample. The Tegra A and Tegra B behave like a separate systems connected via Ethernet. So the data transfer technique are similar to how you transfer data from one system to another.