Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Move preferred encoding tracking into a server object | Pierre Ossman | 2014-09-18 | 5 | -11/+29 |
| | | | | | | Having it in ConnParams made the linker pull all the encoder objects into vncviewer, making it larger than necessary and giving it extra parameters in its help output that weren't relevant. | ||||
* | Correct naming convention for some parameters | Pierre Ossman | 2014-09-17 | 4 | -13/+15 |
| | |||||
* | Give a correct list of valid security schemes | Pierre Ossman | 2014-09-17 | 2 | -2/+10 |
| | |||||
* | Use printf constructor safely | Pierre Ossman | 2014-07-21 | 1 | -1/+1 |
| | | | | | The input string might contain formatting marks, so make sure those are ignored. | ||||
* | Move image encoding logic into a central EncodeManager class | Pierre Ossman | 2014-07-14 | 34 | -1603/+2248 |
| | | | | | | | | This allows us to apply a lot more server logic independently of which encoder is in use. Most of this class are things moved over from the Tight encoder. | ||||
* | Remove PixelTransformer and TransImageGetter | Pierre Ossman | 2014-07-14 | 7 | -682/+0 |
| | | | | There is nothing using these classes anymore, so remove the clutter. | ||||
* | Use PixelBuffer objects as the interface for encoders and decoders | Pierre Ossman | 2014-07-14 | 37 | -169/+154 |
| | | | | | | | This avoid a lot of unnecessary middle men. This also pushes the responsibility for pixel format conversion into the encoders and decoders. The new bufferFromBuffer() is used for direct conversion, rather than PixelTransformer/TransImageGetter. | ||||
* | Store the mouse cursor in the ConnParams object | Pierre Ossman | 2014-07-14 | 6 | -118/+153 |
| | | | | | | Like we do for everything else. This also gets rid of the callback, which is a bit out of place compared to everything else. | ||||
* | Allow PixelBuffers to be const | Pierre Ossman | 2014-07-14 | 4 | -15/+17 |
| | |||||
* | Add helper class for a rendered cursor | Pierre Ossman | 2014-07-14 | 5 | -25/+74 |
| | | | | | | Add a magical cursor framebuffer class for handling when you want to render the cursor on the server side. Keeps the cursor specific magic in one contained place. | ||||
* | Add convenience variant of getImage() | Pierre Ossman | 2014-07-14 | 2 | -0/+25 |
| | |||||
* | Add convenience functions to ModifiablePixelBuffer | Pierre Ossman | 2014-07-09 | 2 | -0/+29 |
| | | | | | Allows you to modify the buffer with data in a different pixel format. | ||||
* | Add optimised buffer conversion | Pierre Ossman | 2014-07-09 | 3 | -0/+291 |
| | | | | | | | | | Handles the common cases when the target or source are in the preferred 888 format. If one of the buffers is not 888, then it must also be properly aligned (which is commonly the case). Performance is now in many cases on par with PixelTransformer. | ||||
* | Add ability to directly convert between two pixel formats | Pierre Ossman | 2014-07-09 | 2 | -0/+58 |
| | | | | | This is a lot easier and cheaper than having to set up a complete PixelTransformer object. | ||||
* | Use lookup tables for pixel upconversion | Pierre Ossman | 2014-07-09 | 3 | -44/+64 |
| | | | | | | You have to loop many times when converting e.g. 2 bits to 8, so have a couple of lookup tables to speed things up. We still use bit replication to get from 8 bits to 16 bits though. | ||||
* | Only grab the regions we actually need | Pierre Ossman | 2014-07-07 | 1 | -22/+33 |
| | | | | | Allows pixel buffers that do damage tracking to get proper information. | ||||
* | Provide a better R/W base PixelBuffer class | Pierre Ossman | 2014-07-07 | 3 | -26/+89 |
| | | | | | Clearly separates the read API from the write API and also from actual implementation. | ||||
* | Get rid of getStride() | Pierre Ossman | 2014-07-07 | 2 | -14/+11 |
| | | | | | | It was confusing and not properly used everywhere. Callers should use the stride they get when they get the buffer pointer. | ||||
* | Get rid of the direct access abuse of FullFramePixelBuffer's data | Pierre Ossman | 2014-07-07 | 6 | -17/+29 |
| | |||||
* | We don't need a fillRect() that is this optimised | Pierre Ossman | 2014-07-07 | 2 | -83/+19 |
| | | | | | Keep things simple instead and allows us to remove the extra setPF() methods. | ||||
* | Avoid having virtual methods where not needed | Pierre Ossman | 2014-07-07 | 2 | -17/+10 |
| | |||||
* | getImage() doesn't need to be overloadable, keep it simple | Pierre Ossman | 2014-07-07 | 3 | -38/+5 |
| | |||||
* | Encoders/decoders should track the connection object | Pierre Ossman | 2014-07-07 | 34 | -109/+102 |
| | | | | | | The connection object is a much more appropriate object for the decoders and encoders to keep track of. Besides the streams, it also contains state like connection parameters. | ||||
* | Push encoder and decoder handling down into the connection objects | Pierre Ossman | 2014-07-07 | 9 | -140/+57 |
| | | | | | This keeps the reader and writer objects clean and simple protocol decoders/encoders. | ||||
* | Remove full support for colour maps | Pierre Ossman | 2014-07-07 | 26 | -853/+240 |
| | | | | | | | | | Gets rid of a loooot of code and complexity. Colour map clients are still supported through an automatically generated map, but we lose the ability to develop a client or server that uses colour maps internally. | ||||
* | Get rid of unnecessary macros as they are only ever set to a single thing | Pierre Ossman | 2014-07-07 | 15 | -85/+30 |
| | |||||
* | Push encoding specific formats into the encoders and decoders | Pierre Ossman | 2014-07-07 | 12 | -63/+91 |
| | | | | Keep the generic stream classes clean and general. | ||||
* | Consolidate the different palette handler implementations | Pierre Ossman | 2014-07-07 | 8 | -493/+272 |
| | |||||
* | Handle CopyRect like any other encoding | Pierre Ossman | 2014-07-07 | 7 | -21/+86 |
| | | | | Avoids having to special case things. Keeps the code simpler. | ||||
* | Avoid reader/writer duplication in every encoder/decoder | Pierre Ossman | 2014-07-07 | 24 | -26/+27 |
| | |||||
* | Remove partial update functionality | Pierre Ossman | 2014-07-07 | 15 | -80/+46 |
| | | | | | | Get rid of the ability of encoders to only send part of the rectangle they are given as we don't want partial updates anyway. | ||||
* | Move serialisation of pseudorects into separate functions | Pierre Ossman | 2014-07-07 | 2 | -69/+72 |
| | | | | Keeps the code clearer. | ||||
* | Merge the "V3" message classes into the normal ones | Pierre Ossman | 2014-07-07 | 20 | -1140/+818 |
| | | | | We have no need for this abstraction so let's keep things simple. | ||||
* | Merge branch 'pixeltest' of https://github.com/CendioOssman/tigervnc | Pierre Ossman | 2014-07-07 | 1 | -1/+1 |
|\ | |||||
| * | librfb needs librdr so make sure it always gets pulled in | Pierre Ossman | 2014-07-04 | 1 | -1/+1 |
| | | |||||
* | | Remove a lot of platform compatibilty stuff | Pierre Ossman | 2014-07-07 | 22 | -428/+10 |
| | | | | | | | | It's either not used, or no longer relevant. | ||||
* | | Fix some offenders that poke around in the PixelFormat internals | Pierre Ossman | 2014-07-07 | 3 | -60/+47 |
| | | |||||
* | | Avoid code duplication for the linear pixel format conversion methods | Pierre Ossman | 2014-07-07 | 1 | -79/+2 |
| | | |||||
* | | Consistent use of stride vs pitch | Pierre Ossman | 2014-07-07 | 6 | -23/+24 |
| | | | | | | | | | | | | | | Consistently use the term stride rather than pitch. Also consistently represent the stride in number of pixels rather than number of bytes. There is so much code that assumes proper alignment already that we do not need the extra resolution. | ||||
* | | Fix possible information leakage | Pierre Ossman | 2014-07-07 | 1 | -2/+11 |
| | | | | | | | | Zero the padding byte used when converting 24-bit RGB to 32-bit. | ||||
* | | Use the same algorithm for conversions | Pierre Ossman | 2014-07-07 | 1 | -73/+53 |
| | | | | | | | | | | | | Make sure that the routines that convert between buffer and rgb representations follow the same algorithm so it's easier to compare them. | ||||
* | | Optimise the RGB to pixel conversion to simple shifts | Pierre Ossman | 2014-07-07 | 3 | -51/+65 |
| | | | | | | | | | | Might as well make it inline at this point as well as it is used heavily in other routines that convert entire blocks of pixels. | ||||
* | | Remove magic JPEG variables from ConnParams | Pierre Ossman | 2014-07-07 | 3 | -14/+3 |
| | | | | | | | | | | | | Custom compression level and JPEG on/off are not inherent parts of the protocol negotiation so they do not belong in ConnParams. Let the UI frontend handle such things instead. | ||||
* | | Clean up the encoding parser in ConnParams | Pierre Ossman | 2014-07-07 | 1 | -48/+55 |
| | | |||||
* | | Make the subsampling setting follow the common style | Pierre Ossman | 2014-07-07 | 8 | -45/+64 |
| | | |||||
* | | Stop storing a copy of the encodings as we don't use it for anything | Pierre Ossman | 2014-07-07 | 2 | -14/+3 |
| | | |||||
* | | Get rid of the register mechanism for encoders and decoders | Pierre Ossman | 2014-07-07 | 25 | -183/+77 |
| | | | | | | | | We have no use for it, so let's keep things simple. | ||||
* | | Be more consistent in referring to pixel byte streams as buffers | Pierre Ossman | 2014-07-07 | 8 | -29/+29 |
| | | |||||
* | | Document the different pixel representations that we deal with | Pierre Ossman | 2014-07-07 | 1 | -1/+10 |
| | | |||||
* | | Get rid of unused things in the ZRLE encoder | Pierre Ossman | 2014-07-07 | 3 | -35/+13 |
| | | | | | | | | | | Get rid of unused shared MemOutStream and variable max length functionality in the ZRLE encoder. |