[PD] pix_set / pix_gain weirdness

Mathieu Bouchard matju at artengine.ca
Mon Feb 28 02:03:10 CET 2011


On Mon, 28 Feb 2011, Bastiaan van den Berg wrote:

> If only puredata just used YUV by default internally for _everything_

PureData itself doesn't support video. Video is provided by one of three 
frameworks, GEM, PDP and GridFlow.

> so at least it would be a bit faster,

YUV is different in each of them. What is called YUV in GridFlow is 
YUV-444, no macropixels. GEM has YUV-422, PDP has YUV-420. This makes a 
lot of difference in efficiency and effective resolution.

My position on it, is that chroma often matters a lot, and when it does, 
then chroma has to have a high resolution. In that case, this means luma 
has to be set to an excessively high resolution which happens to be waste.

So, when chroma is secondary, it looks like YUV-420 does 50 % savings, 
YUV-422 does 33 % savings, and YUV-444 does no savings.

But in a chroma-centric application, YUV-444 and RGB do no waste, YUV-420 
adds 100 % waste (this means 50 % of the signal is not used), and for 
YUV-422, it depends whether one can use anamorphic pixel sizes or not.

GF's linux camera input has a mode called 'magic' for downscaling the luma 
very quickly, in cases where a camera gives you YUV-420 when you actually 
want YUV-444. This has been my situation.

For ordinary veejay mixing, though, you may use telly-style YUV-422.

> and I think a lot more work can be done to get a better video 
> performance. Maybe someone on the list has a nice list of semi-universal 
> tips to make video patches run faster?

Like, if you need a short video loop to be read several times at once, 
preload it already decompressed in RAM ?

> Or maybe for video puredata is just 'almost' fast enough with computers 
> nowadays..

It depends on the decoder libraries being used, how they've been compiled, 
etc. Those things are fairly external to GEM/PDP/GF, except that those 
frameworks have to include code to plug with those decoder libraries.

> Can't imagine ever playing with GEM and pix_ stuff on a Pentium 3 for 
> example. What I mean is, that puredata only recently has become a viable 
> option for the stuff that you and I want to do with it?  

What do I want to do with it ?

> There is of course the completely seperate project of 'vvvv' which is 
> also a dataflow language like puredata, but ment for video. Sadly this 
> project is windows only afaik.

It's also non-free : it's a non-commercial license and the source code is 
not available.

  _______________________________________________________________________
| Mathieu Bouchard ---- tél: +1.514.383.3801 ---- Villeray, Montréal, QC


More information about the Pd-list mailing list