How to launch second simultaneous instance of RR?
Jeremy from United States  [12 posts]
8 year
I have two RR files, A and B. I wish to run A, and use the Execute Program module from within RR to launch robofile B. I want B to run, finish its operation and then close, allowing A to resume its processing pipeline. I suppose I should do something like launch the RR executable, with arguments telling which robofile to run, and also to run B as a second instance, while  telling A to wait till B has finished. But I'm not sure precisely how to do this and help would be appreciated. Thanks!
Steven Gentner from United States  [1446 posts] 8 year

Let's backup for a minute since while this is possible to do I'm not sure why one would. I suspect there may also be a way to do this from a single robofile but I'm not sure what you are trying to accomplish.

Could you describe the particular task that you are needing program A wait till program B completes? Perhaps provide a use case?

Jeremy from United States  [12 posts] 8 year

I would like to program robofile A to feed the pipeline with a video stream, perhaps using the Media Reader. As each frame is processed, multiple output jpg files will be produced at the end of the pipeline, and deposited in folder C, using the Write Images module. I would then like to combine the resulting images, into one new image, trying to get a result like that shown in the example at http://www.roborealm.com/help/Math.php. , only summing multiple images instead of just two as shown.

At this point, I would want to pause the pipeline in program A in order to combine the produced images. I would run program B, loading the images from folder C one at a time, and  using the Math or Averaging module to combine the individual images originally produced by A. Please note I also wish to combine the original source frame from pipeline A as well, saved in a previous marker. This will all be written into a final output frame to eventually produce a new video.

I then run a batch file to delete all the files A has written to folder C, because I will be using the same folder for the next set of images produced by pipeline A.(Maybe 10 or so). Then I kill program B, and resume A. A goes through the pipeline, processes another frame of video with multiple results, triggers B, and so on.

More than likely you have a simpler way of accomplishing the same thing; I just couldn't figure out how to continuously sum those multiple images without running a second instance of the program. Thanks for your help.
Steven Gentner from United States  [1446 posts] 8 year

I'm not sure if this does what you need but in the Average module


you can specify how many previous frames to use in the average. This is essentially what the Math with the Add function does but over many frames. Plus you get a continuous update instead of sampling at every 10 frames.

I'm still not 100% sure of the effect that you are after. The average module will produce the same result as the Math module but the way you describe your process would merge 10 frames into 1 which would effectively reduce a 30 fps rate down to 3. Is that the intent?

If that is the case, you can even do that without needing to save images or run more than one instance. I can help with that if this is the desired outcome.

What I was hoping for was a description on why you wanted to do this. For example, I want to increase image stability by summing 10 images and effectively reduce the fps by a factor of 10x. Or I want to reduce the number of frames of a video by summing every 10 frames to provide a quick video summary. Or ....


Anonymous 8 year
Sorry for not making myself clearer, but I think I may have found a solution. Will post back if I need more help; thanks!

This forum thread has been closed due to inactivity (more than 4 months) or number of replies (more than 50 messages). Please start a New Post and enter a new forum thread with the appropriate title.

 New Post   Forum Index