Is there standard protocol or way for frameserving? The intended worklflow is following:


my program produces 1080p frames (possibly not constantly if picture isn't
changing) 30 or 60 fps
some external program captures them locally
overlays on some other video
saves locally (infinite playable video) or sends to youtube-like service real-time


I've tried to find some ways for the 1st step to save video real-time in small chunks like in web DASH protocol, but now I think just frameserving is better for exchanging between 2 programs on one computer.

I'm thinking of using ffmpeg's libav api in my program. Seems real after trying.

Some standard way for saving encoded infinite video stream (so that one could simultaneously play or transmit it) is still needed in the 4th step, though. See this question.

2nd and 3rd steps are likely solvable with ffmpeg.

So for the 1st step is there any standard/widely supported (by recieving processing software) format for frameserving?
Thanks for any help!
Have you looked at OBS Studio?  It sounds like it can do all four of your steps for you, and it's free and open-source too.  If not, then it could also just do step 1, depending on what your original video source is.  OBS can use these sources:


Webpages
Displays/monitors
Video games
Local files


Text files

Webcams &amp; video capture devices
Windows on your computer
A few others, like audio, plain colors, images, and slide shows