u2 codec added to beta 1.0.9.5.1R and official 1.0.9.6 and above------------------------exist only between ultravnc viewer and ultravnc server as my knowledge.

command line vncviewer-encoding ultra2-------------------------------

ultra2 encoder (u2) <64x64 -> use lzo compression > 64x64 jpeg compression, using the turbo jpeg lib this fast as part is done by the mmx and sse instruction sets.

Big updates are split in 128x128 for better response. The viewer can already process subupdate1 while server is still composing subupdate2.

ultra encoder This is a pure lzo compressor. Small updates are packed before compression. lzo is fast, but compress bad 1/2 1/4 of the original data. Huge bandwidth.

encoder switching in the status window using u2. small rects are send as lzo -> show as ultra bigger are send as jpeg ->show as ultra2 It's not realy the encoder that switch, you see the different encoded packets

+The viewer updated his screen after each packet, special in u2 you see the viewer changing, from top to bottom. The screen is now updated at the end of each cycle, this use less cpu on the viewer site. ( Directx already used this method). A little faster

viewer updated his screen for every subrect, better to do it at once at the end of the cycle ( less time/cpu)