samedi 22 novembre 2008

computing, counting and displaying colors







let's count the number of color when allocating more bit per pixel..












there are 3 channels of visible color per pixel (RGB)






bits per chanel bit per pixel colors per pixel value (min) value (max)
8 24 16,78 millions 0 255




(8bit integer)
10 30 1,07 billions 0 1023




(10bit integer)
12 36 68,72 billions 0 1




(16bit float number)
16 48 281,47 trillons 0 1




(16bit float number)
32 96

0 no limit




(32bit float number)






about 32pbc or HDR mode :



Instead of storing a pixel's on-screen 'color', HDR Shop stores the amount of light red, green and blue) it represents. Since there is no limit to how much light you can have in the real world, HDR Shop stores these pixel values as floating point numbers. That is, instead of storing pixels using the numbers (0, 1, 2, 3, 4, ... 253, 254, 255) like in an 8-bit image, it uses numbers like 0.01534, 0.9429, 1.0500, and 1,356,035.0253.






HDR : (4,4,4) is 4 time "whiter" than (1,1,1) with correspond to white in 16bpc.
But the color is STILL white.









SDI (proffessional video cable and link):


http://en.wikipedia.org/wiki/Serial_Digital_Interface#Video_payload_and_blanking
sdi single link, single cable is limited (caped) to 10bpc, SDI 10bit.
SDI 12bit can only be done by using dual link, or the new 3Gb SDI link.
4:2:2 YCbCr, 4:4:4 YCbCr, and 4:4:4 RGB, with 12 bits of color information per sample, rather than 10. Note that the interface itself is still 10 bit; the additional 2 bits per channel are multiplexed into an additional 10-bit channel on the second link.






HDMI (consummer video link) :



hdmi numbers are in bit per pixel, not bit per channel.

divide by 3.










from 1.0 to 1.2a




24bit maximum, means 8bpc









1.3 and up :




30, 36 and 48 bit, means 10, 12 and 16bpc


http://en.wikipedia.org/wiki/Hdmi#HDMI_1.3c








so yes, HDMI is much more colorfull than SDI !







video monitor :




almost all panel of TV lcd are limited to 8bit.


the HDTV for 10bit and beyond is xvYCC.


Sony renames new HDTV standard xvYCC to x.v. Color

new xvYCC TV lcd are avaible since january 2008







KDL-40XBR6
KDL-40XBR7
KDL-46XBR6
KDL-46XBR8
KDL-52XBR6
KDL-55XBR8
KDL-70XBR7
KDL-52XBR7

















http://www.camcorderinfo.com/content/xvYCC-The-Future-of-Color-34362.htm






computer monitor :



hdmi numbers are in bit per pixel, not bit per channel.

divide by 3.




18 bit 262144 6bpc


24 bit 16,7 millions 8bpc


32 bit 4,3 billions 10bpc








So even if you have your display settings in 32bit, that only means that
your graphic card compute internaly in 10bpc.


You monitor doesn't.



low consumer LCD monitors display in… 6bpc, 18bit color.
standard consummers LCD, [even those with Wide Gamut],
monitors LCD display in 8bpc, 24bit colors







one of the best LCD is 10bpc, 30bit color.


Nec LCD2180WG LED



http://www.necdisplay.com/Products/Product/?product=6eec56b3-7ee7-4487-9e3f-9dd308215618






graphics cards :




most of today graphics cards have 10-bit display processing and 10-bit DVI output.
nvidia quadro, nvida 8/9/GT, ati fireGL, ati radeon, matrox












special effects and video workflow








http://www.cineform.com/products/FAQ.htm#ProspectHD3
http://help.adobe.com/fr_FR/AfterEffects/9.0/WS81984DEB-D195-4822-9A06-EA0D00A0ECC7.html






cineform is one of the few codec that can properly handle 10bit,
in full HD and up, and in 4:4:4 mode.


after effects, one of the best software made by adobe, can compute into
8bpc, 16bpc or even 32bpc !









if you follow the cineform link, you will see why it's so important to compute
all your effects with the MAXIUM colors available :

the final product will use all the color range of your output available.






After Effects RAM, disk, preview, nucleo

there are 2 differents levels of render in AE workflow (design choice)





1 - for viewing your comp, you need to make a preview






1-1 the ONLY realtime preview avaible, is RAM preview. Disk preview is almost never realtime !














2 - for exporting your comp as a footage (final file), you have to render AGAIN




no preview here, it's a simple transcoding process like premiere export.
















there are 4 channels per pixel
RVB + alpha









































AE cs4 is still a 32 bits product, so you CAN'T have more than 4GB
for the main instance, even in 64bits OS with 16GB RAM and 8 cores.


max ram avaible for preview 3 GB (maximum RAM Cache size
in preferences menu)




ram used per frame
MB frames avaible for preview time available in NTSC (sec) time available in PAL (sec)




SD full D1 8bpc 1,33 2301 76,7 92,1





16bpc 2,67 1151 38,4 46,0





32bpc 5,34 575 19,2 23,0















HD full 1080i60 8bpc 7,91 388 12,9 15,5





16bpc 15,82 194 6,5 7,8





32bpc 31,64 97 3,2 3,9


























so… that means, you CAN'T get more than 7 sec realtime preview of your composition !



if you want to see more, you have to select another start time in your time line, wait for a RAM preview render, and see again a little 7sec.
it's not a joke.




















how works the disk cache ?








is there a way to render all the work area by using disk cache ? And when i hit "preview", the RAM preview is used as a buffer filled up by disk reading ?
it will be like a "disk preview" ? Instead of wasting 3GB RAM for storing the preview, take 1GB and give 2GB to be allocated to ram for rendering.