How do I go about processing a movie file and saving the result that will have the exact same number of frames? See attached image. When I do this, with non-trivial amount of image processing in the grey box, I get movies with different numbers of frames. Generally the same duration but lower fps.

Comments

Hi Paul,

cremaschi's picture
Submitted by

Hi Paul,

possibly, if frame elaboration takes time, some frame coming from "play movie" is skipped. I'd take a "step movie frame" way instead of "Play movie": this way you can get the next video frame to elaborate only when the elaboration the previous is finished. Simply connect an event cable coming from the end of the elaboration to "go forward" input port in "step movie frame" node.

regards michele

Thanks, understand the event

pbourke's picture
Submitted by

Thanks, understand the event logic now. However ... I fail to see how the movie fps can be set, while a "frame" seem to have the timestamp and frame duration, once it is converted to an "image" isn't that information lost? Certainly testing and while all the frames are there, the frame rate is lost.

Hi Paul,

cremaschi's picture
Submitted by

Hi Paul,

ok I understand now. You should use "save frames to movie" node, whose documentation says "Save Video Frame — Appends a video frame (an image with a timestamp) to the movie file."

Here is a composition that keeps just half of original fps (you need Parabox additional nodes installed.):

To tell the truth, it appears to work even using "Save Images to Movie" instead than "Save Frames to Movie".

cheers mic