Log in

View Full Version : real time frame serving


yair
4th October 2006, 06:26
hi all, first post (but was lurking a bit) i hope this is the right place to ask.

me (and many others) are using visual effects programs, like jitter (cycling74.com) resolume etc.
a great thing would be to route video from on program to the other. with sound this is easy, video is a problem.

i am sure sombody here can help me clearfiy, is it possible to script a realtime frame serving "work with anything" thingy.
writng this just make me feel the answer is a no. but mybe someone...

Mug Funky
4th October 2006, 06:37
i'd need more information to tell you.

what exactly are you trying to do?

also, the more processing, the slower it goes, so guaranteed realtime isn't likely, but depending on you machine it's probably achievable (i'd love to have NTSC SDI in -> avisynth -> PAL SDI out, but there's not much chance of that happening soon).

[edit]

a possibility is using avisynth inside ffdshow - but that'll only work if both your programs are using directshow and you can set it up to use ffdshow as uncompressed video decoder.

yair
4th October 2006, 07:19
intresting,
a similar project that was abandoned (i guess), named patchbox (http://www.patchbox.net/). it used freeframe (an open sourced specification for cross program video effects) to compress as xvid and move over the network.

what i want is to be able to proccess a video stream in one program and write it into a dynamic(?) frame buffer/server that can be read by a diffrent program to continue the manipulation. with as low a latency as possible. a prefect world.

Mug Funky
4th October 2006, 11:56
if your programs support avisynth and have their own frameserving (through fake avi's or whatever), you could chain them together this way:

program 1 outputs a "fake avi" --> avi is wrapped in an avs (or left as is), optional processing happens --> program 2 imports the avs file (while program 1 is writing to it :)), etc.

it's kinda an ugly way to do it though.

there's also TCPdeliver if you want to add another computer to the mix :)

yair
4th October 2006, 14:34
mugfunky, is there a spec/guide for creating a frameserver i can fwd to the programers of my software or is this some kind of black art.

btw. life is a one-pass, made me smile

Richard Berg
6th October 2006, 05:20
They can get frames from Avisynth simply by implementing the AviFile interface. http://windowssdk.msdn.microsoft.com/en-us/library/ms712790.aspx

Avisynth's TCP interface is more general (can send & receive, can use multiple machines) but I'm not sure if there's any documentation outside of the code in CVS.

yair
6th October 2006, 09:44
thank you, i am sorry to say that dew to max\jitter origin (http://freesoftware.ircam.fr/article.php3?id_article=5) as a mac app its video objects are based around quicktime. so no go.
thanks anyway, hope to find some other alternative.