» Freeframe and vvvv
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

Freeframe and vvvv

About FreeFrame

The official source for information about freeframe is its hompage at:http://www.freeframe.org

FreeFrame is a specification of how you have to write a videoplugin so that it can be used in a large number of applications. It is designed to be crossplatform and independent of a programming language. Therefore plugins can be written in any language as long as the result is a .dll (for windows, and something else for linux and osx).

FreeFrame and vvvv

vvvvs videoplayback is based on microsofts directshow. for a freeframe.dll to be used in a directshow graph vvvv comes with a filter (DSFreeFrameWrapper.ax) which is a wrapper around freeframe.dlls that makes them look like an ordinary directshowfilter to a graph. this is the same idea as having a filter that wraps vst-plugins to dxi-instruments.

Actually this is not important for you who just wants to write a freeframe video effect since this wrapping is completely handled by vvvv. If you have a freeframe.dll just drop it on a patch to create a node (or put it in the /freeframe folder for it to show up in the nodelist).

Write your own plugins

There is a stepbystep guide to writing freeframe plugins available which is the documentation of the freeframe workshop held during node08.

Also the freeframe sourceforge site offers sample code for writing plugins in VisualStudio and Delphi:http://sourceforge.net/projects/freeframe

Extended FreeFrame Specification

The current freeframe specification has two shortcommings: You cannot have spreaded inputs and you cannot have outputs. Therefore the official freeframe specification has been extended to allow us having both. Bear in mind that those additions are not official. Version 2.0 of the freeframe specification is supposed to include something like this but its not yet sure if the extensions proposed here will make it into the specification. Anyway it is not that dramatic. For now those plugins will run within vvvv and later it will probably not be very hard to upgrade plugins to the final specification.

Basically all you need to make use of the extensions is the two modified files FreeFrame.h and FreeFrame.cpp which you can find in any download of a sample plugin from the FreeFrame page.

A complete listing of all the extensions is available on Freeframe 1.0 Extended FreeFrame Specification

Freeframe and OpenCV

When writing your own freeframe.dll you have access to all the pixels of the videostream. At this point you are not limited to writing your own code but you can also include other image analysis/manipulation libraries that do the job for you. OpenCV is one such library which has its focus on computer vision (i.e. tracking, ..) and can easily be used within a freeframe.dll.

Find the sources of plugins that use OpenCV and ship with vvvv here:
Contour (Freeframe DShow9)
CamShiftTracker (Freeframe DShow9)
ColorTracker (Freeframe DShow9)
Trautner (Freeframe DShow9)

anonymous user login

Shoutbox

~12h ago

~3d ago

joreg: Two #vvvv workshops this week in #berlin: Friday: Physical Computing, Saturday: Computer Vision. Tickets: upcoming-full-day-vvvv-gamma-workshops-in-berlin

~3d ago

joreg: @cznickesz also feel free to join our chat for such questions: chat

~3d ago

cznickesz: @joreg: Yeah, I´ll give it a try! Thx

~3d ago

joreg: @cznickesz: we're hoping this week. but depends on feedback. please test your project and let us know if it works.

~3d ago

cznickesz: @joreg: I should stop asking my questions so cryptic ;-) So right away: is final Beta39 hours, days or weeks away?

~3d ago

joreg: @cznickesz: the idea of an RC is exactly to make sure your projects will work with it. your last chance to report problems with b39.

~4d ago

cznickesz: So how "RC" is the "RC3"? I have to update an old project soon and I´m wondering if I should wait and directly update to Beta39

~4d ago

joreg: @takuma, the "one frame" issue was fixed in RC3 for beta39, see: beta39-release-candidate

~4d ago

Takuma: @joreg thank!! Ill try this. Are there a way to send video texture from vvvv to vl? fromimage node in vl somehow only sends 1 frame