How to record live video with a buffer?

6 views (last 30 days)
Mark Golberg
Mark Golberg on 15 Feb 2016
Commented: Walter Roberson on 24 Feb 2016
Hello, I have the following problem. I want to record the 1st second of real time video <-- that's my buffer. Now, I'd like to display in my GUI (1/10, which is actually 100 msec) of my buffer data. Repeat it 10 times. At the same time, I'd to record a new 2nd second to fill in the buffer. My question is, how can I simultaneously display data on in the GUI (pulling from the buffer), and recording new data (pushing to the buffer)?
I want to do this, so my Real Time Display would look smooth as new data coming in.
THANKS

Answers (1)

Walter Roberson
Walter Roberson on 15 Feb 2016
Have you considered using the computer vision toolbox? You can step() your video acquisition device to get a frame and in the same cycle step your video output to display a frame, potentially a frame you recorded earlier.
  6 Comments
Walter Roberson
Walter Roberson on 24 Feb 2016
parpool(2,'local')
spmd
if labindex == 1
for Number_of_times = 1 : 15
for framenum = 1 : 10
frames(:,:,:,framenum) = get a frame
end
labSend(2, frames); %send it to the other proccess
end
else %labindex must be 2
for Number_of_times = 1 : 15
frames = labReceive(1);
... do some calculation on the frames
...
end
end
end

Sign in to comment.

Categories

Find more on Image Acquisition in Simulink in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!