
TECHNICAL INFORMATION
---------------------


Veejay works with Video in YCbCr color space only (YUV 4:2:0. YUV 4:2:2 and YUV 4:4:4).

YCbCr is the standard colorspace used for digital video processing, as defined by ITU-R BT.601.



What is YCbCr ?
---------------

As you might know, YCbCr seperates color information (Chroma) from brightness (Luma), 
because the human eye is less sensitive to changes in chroma than in luma, it can
be sampled at a lower resolution without affecting image quality.
YCbCr is always 8 bit per channel encoding, typically ranging from 16-235 for Y,
16-240 for Cb/Cr.  If you want to know more, search the net for YCbCr. 


Why YCbCr and not RGB ?
---------------------------

We get this question asked a lot because in Computer Graphics we usually deal with RGB
and not with YUV.

We deal with YCbCr because:
- we like experimenting with YCbCr data; it gives interesting results (!)
- it makes the conversion YCbCr-> RGB -> YCbCr unnecessary 
  (we only convert to RGB24 when you enable vloopback output...)
- almost any image or video effect can be done in YCbCr space
- Chroma Key / Luma key / Opacity / Blending are *easier* in YCbCr space (see 'what is YCbCr')
 

RGB Support
-----------
   
In the future RGB support will be included for OpenGL and the plugin system,
having the RGB type Effects on bottom of the chain (rendered last before
putting to RGB type screen). 

This will be the panel Pattern Mixing. At this time, Pattern Instrument is not 
even finished to it will take a while.

When you output to a vloopback device, its colorspace is RGB24


MULTIPLE PIPELINES
==================

veejay supports mixing from multiple sources, vloopback/v4l/yuv4mpeg/editlist
The file vj-perform.c is responsible for making this work. 



What are the tools
------------------

  veejay
  gveejay
  yuv2rawdv
