summaryrefslogtreecommitdiffstats
path: root/remoting/base
Commit message (Collapse)AuthorAgeFilesLines
* Changed MessageReader so that it doesn't read from the socket if there aresergeyu@chromium.org2011-01-221-0/+2
| | | | | | | | | | | other messages being processed. Added unittests for MessageReader. BUG=None TEST=Unittests Review URL: http://codereview.chromium.org/6271004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72262 0039d316-1c4b-4281-b951-d872f2087c98
* Remove obsolete base/lock.h and fix up callers to use the new header file andbrettw@chromium.org2011-01-211-2/+2
| | | | | | | | | | | the base namespace. Fix several files including lock.h unnecessarily. BUG=none TEST=none Original review=http://codereview.chromium.org/6142009/ Patch by leviw@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72106 0039d316-1c4b-4281-b951-d872f2087c98
* Move base/lock and base/condition_variable to base/synchronization/brettw@chromium.org2011-01-011-8/+8
| | | | | | | | | | | I kept a base/lock.h in place with a using statement to avoid updating all callers in one CL. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/6018013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70363 0039d316-1c4b-4281-b951-d872f2087c98
* Remove base/platform_thread.h stub and fix up all callers to use the new ↵brettw@google.com2011-01-011-1/+1
| | | | | | | | | location and namespace. TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70346 0039d316-1c4b-4281-b951-d872f2087c98
* Move base/thread.h to base/threading, fix up callers to use the new location.brettw@chromium.org2011-01-011-1/+1
| | | | | | | | TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/6028009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70345 0039d316-1c4b-4281-b951-d872f2087c98
* Move platform_thread to base/threading and put in the base namespace. I left abrettw@chromium.org2010-12-311-1/+2
| | | | | | | | | | | stub and "using" declarations in the old location to avoid having to change the entire project at once. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/6001010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70342 0039d316-1c4b-4281-b951-d872f2087c98
* Move thread local stuff from base to base/threading and consistently use thebrettw@chromium.org2010-12-301-1/+1
| | | | | | | | | | | base namespace. This also fixes references to TLSSlot to base::ThreadLocalStorage::Slot. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/5986012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70322 0039d316-1c4b-4281-b951-d872f2087c98
* Remove GetVp8CxAlgoAddress hackhclam@chromium.org2010-12-202-11/+8
| | | | | | | | | | | | libvpx has introduced vpx_codec_vp8_cx() and vpx_codec_vp8_dx() use them instead. BUG=None TEST=None Review URL: http://codereview.chromium.org/5831006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69745 0039d316-1c4b-4281-b951-d872f2087c98
* Make members of Singleton<T> private and only visible to the singleton type. ↵satish@chromium.org2010-12-141-4/+10
| | | | | | | | | | | | | | | This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69107 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 68932 - Make members of Singleton<T> private and only visible to the ↵satish@chromium.org2010-12-111-10/+4
| | | | | | | | | | | | | | | | | | singleton type. This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 TBR=satish@chromium.org Review URL: http://codereview.chromium.org/5721005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68936 0039d316-1c4b-4281-b951-d872f2087c98
* Make members of Singleton<T> private and only visible to the singleton type. ↵satish@chromium.org2010-12-111-4/+10
| | | | | | | | | | | | | | | This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68932 0039d316-1c4b-4281-b951-d872f2087c98
* Simplified frame rate control in the chromoting host.sergeyu@chromium.org2010-12-096-11/+47
| | | | | | | | | | | | | | | | Insted of keeping semi-fixed frame rate, now capturing rate is controlled by how fast we can send data to the client. Capturing of frame n is started only after frame n-2 is sent (while n-1 is being encoded). This guarantees that we don't clog the video channel buffers, and that we start capturing only if we know that the frame will not need to wait for too long in the buffer. TEST=None BUG=None Review URL: http://codereview.chromium.org/5634002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68688 0039d316-1c4b-4281-b951-d872f2087c98
* Move more code from headers to implementation.erg@google.com2010-12-072-0/+3
| | | | | | | | | BUG=none TEST=compiles Review URL: http://codereview.chromium.org/5624002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68534 0039d316-1c4b-4281-b951-d872f2087c98
* Reenable encoder/decoder tests.sergeyu@chromium.org2010-12-076-140/+69
| | | | | | | | | BUG=57351 TEST=Unittests Review URL: http://codereview.chromium.org/5635003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68504 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 68434 - Reenable encoder/decoder tests.scherkus@chromium.org2010-12-076-69/+140
| | | | | | | | | | | | BUG=57351 TEST=Unittests Review URL: http://codereview.chromium.org/5635003 TBR=sergeyu@chromium.org Review URL: http://codereview.chromium.org/5581007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68437 0039d316-1c4b-4281-b951-d872f2087c98
* Reenable encoder/decoder tests.sergeyu@chromium.org2010-12-076-140/+69
| | | | | | | | | BUG=57351 TEST=Unittests Review URL: http://codereview.chromium.org/5635003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68434 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor ZLib and Verbatim encoders.sergeyu@chromium.org2010-12-0613-262/+197
| | | | | | | | | | | Added EncoderRowBased that implements encoding for both ZLib and Verbatim. BUG=None TEST=None Review URL: http://codereview.chromium.org/5382008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68394 0039d316-1c4b-4281-b951-d872f2087c98
* Fix RGB->YUV conversion: input is BGR instead of RGB.sergeyu@chromium.org2010-12-061-6/+6
| | | | | | | | | TEST=Colors are not screwed up BUG=None Review URL: http://codereview.chromium.org/5510003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68388 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 68384: Landed with incorrect commit message.sergeyu@chromium.org2010-12-061-6/+6
| | | | | | | | | | | | | | | | Refactor ZLib and Verbatim encoders. Added EncoderRowBased that implements encoding for both ZLib and Verbatim. BUG=None TEST=None Review URL: http://codereview.chromium.org/5382008 TBR=sergeyu@chromium.org Review URL: http://codereview.chromium.org/5586006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68385 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor ZLib and Verbatim encoders.sergeyu@chromium.org2010-12-061-6/+6
| | | | | | | | | | | Added EncoderRowBased that implements encoding for both ZLib and Verbatim. BUG=None TEST=None Review URL: http://codereview.chromium.org/5382008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68384 0039d316-1c4b-4281-b951-d872f2087c98
* Move move classes to the remoting::protocol namespace. Minor cleanups.sergeyu@chromium.org2010-12-021-2/+1
| | | | | | | | | BUG=None TEST=compiles, unittests Review URL: http://codereview.chromium.org/5068001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68056 0039d316-1c4b-4281-b951-d872f2087c98
* Reverse rows in VP8 decoder.sergeyu@chromium.org2010-12-022-5/+14
| | | | | | | | | TEST=None BUG=None Review URL: http://codereview.chromium.org/5310011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67918 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 67662 - FBTF: Remove unneeded headers from base/ (part 10)thestig@chromium.org2010-11-304-8/+3
| | | | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5139006 TBR=thestig@chromium.org Review URL: http://codereview.chromium.org/5270010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67674 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Remove unneeded headers from base/ (part 10)thestig@chromium.org2010-11-304-3/+8
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5139006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67662 0039d316-1c4b-4281-b951-d872f2087c98
* Use CompoundBuffer in MessageDecoder.sergeyu@chromium.org2010-11-183-0/+84
| | | | | | | | | TEST=Unittests BUG=None Review URL: http://codereview.chromium.org/5067001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66574 0039d316-1c4b-4281-b951-d872f2087c98
* Added CompoundBuffer that will be used to store data in the encoding/decodingsergeyu@chromium.org2010-11-166-242/+601
| | | | | | | | | | | pipeline. BUG=None TEST=Unittests Review URL: http://codereview.chromium.org/4779001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66209 0039d316-1c4b-4281-b951-d872f2087c98
* Reset decompressor after each frame in DecoderRowBased::DecodePacket().sergeyu@chromium.org2010-11-161-6/+11
| | | | | | | | | BUG=None TEST=None Review URL: http://codereview.chromium.org/4953001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66201 0039d316-1c4b-4281-b951-d872f2087c98
* Add VideoPacket struct for video packets. Refactor Decode interface to use it.sergeyu@chromium.org2010-11-0913-96/+155
| | | | | | | | | | Various cleanups. BUG=None TEST=Unittests. Review URL: http://codereview.chromium.org/4476003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65590 0039d316-1c4b-4281-b951-d872f2087c98
* Add DEPS files in remoting subdirectories.sergeyu@chromium.org2010-11-053-3/+6
| | | | | | | | | | | | | This is to avoid unwanted dependencies between remoting modules. Also fixed libjingle includes to use full path, and removed some old includes. TEST=checkdeps BUG=None Review URL: http://codereview.chromium.org/4562002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65251 0039d316-1c4b-4281-b951-d872f2087c98
* Add VideoReader and VideoWriter interfaces.sergeyu@chromium.org2010-11-032-4/+3
| | | | | | | | | | | Implemented VideoReader and VideoWriter for RTP and Protobuf. BUG=53986 TEST=None Review URL: http://codereview.chromium.org/4229003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64878 0039d316-1c4b-4281-b951-d872f2087c98
* Convert implicit scoped_refptr constructor calls to explicit ones, part 2thakis@chromium.org2010-11-022-2/+3
| | | | | | | | | | | | This CL was created automatically by this clang rewriter: http://codereview.appspot.com/2826041 I then did quite a bit of manual editing to fix style issues. BUG=28083 TEST=None Review URL: http://codereview.chromium.org/4291001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64798 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanups in the video encoding decoding code. Reenable VP8.sergeyu@chromium.org2010-11-0216-243/+159
| | | | | | | | | | | | | | | 1. Moved video-related protobuf messages from event.proto to video.proto. Removed those that we don't need anymore 2. Fixed naming for enums and some types. 3. Reenabled VP8. 4. Proper RGB-YUV converter for VP8 encoder. 5. Changed the capturer_fake to show more meaningful picture. BUG=57374 TEST=unittests Review URL: http://codereview.chromium.org/4136010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64700 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 64672 - Cleanups in the video encoding decoding code. Reenable VP8.sergeyu@chromium.org2010-11-0116-159/+243
| | | | | | | | | | | | | | | | | | 1. Moved video-related protobuf messages from event.proto to video.proto. Removed those that we don't need anymore 2. Fixed naming for enums and some types. 3. Reenabled VP8. 4. Proper RGB-YUV converter for VP8 encoder. 5. Changed the capturer_fake to show more meaningful picture. BUG=57374 TEST=unittests Review URL: http://codereview.chromium.org/4136010 TBR=sergeyu@chromium.org Review URL: http://codereview.chromium.org/4255001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64677 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanups in the video encoding decoding code. Reenable VP8.sergeyu@chromium.org2010-11-0116-243/+159
| | | | | | | | | | | | | | | 1. Moved video-related protobuf messages from event.proto to video.proto. Removed those that we don't need anymore 2. Fixed naming for enums and some types. 3. Reenabled VP8. 4. Proper RGB-YUV converter for VP8 encoder. 5. Changed the capturer_fake to show more meaningful picture. BUG=57374 TEST=unittests Review URL: http://codereview.chromium.org/4136010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64672 0039d316-1c4b-4281-b951-d872f2087c98
* HostMessageDispatcher to parse control messageshclam@chromium.org2010-10-283-33/+35
| | | | | | | | | | | | Changed MessageReader and MessageDecoder to support parsing in HostMessageDispatcher. BUG=None TEST=None Review URL: http://codereview.chromium.org/4017002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64283 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Chromoting's verbatim decoder to work with the new protocol.garykac@google.com2010-10-272-69/+107
| | | | | | | | BUG=none TEST=verify chromoting works when host uses --verbatim flag Review URL: http://codereview.chromium.org/4152007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64179 0039d316-1c4b-4281-b951-d872f2087c98
* Implement basic X11 screen capture on linux.ajwong@chromium.org2010-10-211-1/+2
| | | | | | | | | BUG= TEST= Review URL: http://codereview.chromium.org/3801012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63401 0039d316-1c4b-4281-b951-d872f2087c98
* Convert LOG(INFO) to VLOG(1) - remoting/.pkasting@chromium.org2010-10-191-6/+6
| | | | | | | | | | Also, remove some extra {}s and unnecessary endls. BUG=none TEST=none Review URL: http://codereview.chromium.org/3913001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63141 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Monster ctor patch after changing heuristics in clang plugin.erg@google.com2010-10-184-27/+53
| | | | | | | | | | | (Only 916k this time off Debug Linux .a files) BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3814013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62967 0039d316-1c4b-4281-b951-d872f2087c98
* Move chromotocol.proto to remoting/protocolhclam@chromium.org2010-10-1811-413/+6
| | | | | | | | | | | Move the proto file and split it into multiple smaller proto files. BUG=None TEST=None Review URL: http://codereview.chromium.org/3808002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62965 0039d316-1c4b-4281-b951-d872f2087c98
* Use new Chromotocol code in host andclient.sergeyu@chromium.org2010-10-0616-463/+75
| | | | | | | | | | | | | | 1. ProtocolDecoder renamed to MessagesDecoder and moved to remoting/protocol. 2. base/protocol_util.[h|cc] split into base/util.[h|cc] and protocol/util.[h|cc]. 3. Added StreamReader and StreamWriter classes for events and video channels. 4. Client and host changed to use the new protocol code. BUG=None TEST=Unittests Review URL: http://codereview.chromium.org/3595012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61723 0039d316-1c4b-4281-b951-d872f2087c98
* Reapply r61237: FBTF: Another big ctor/dtor cleanup found by automated tools.erg@google.com2010-10-044-12/+33
| | | | | | | | | | | | | | | Removes changes to code in webkit/ that broke chrome_frame. Will debug that portion later. (Shaves ~2MB off Linux Debug .a files) BUG=none TEST=compiles First Review URL: http://codereview.chromium.org/3563004 Review URL: http://codereview.chromium.org/3621003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61435 0039d316-1c4b-4281-b951-d872f2087c98
* This is a monster CL.ajwong@chromium.org2010-10-0422-722/+397
| | | | | | | | | | | | | | | | | | | | It started as an attempt to put the decoder onto another thread. However, this became complicated due to multiple object ownership transfers and coupling between the decode layer and the network layer; the decoder's states were highly coupled with how the network packets were processed. This could probably be broken up slightly, but at this point, it's easier to just commit as a whole The refactor includes: 1) Making the decoder interface unaware of "network packet" types. 2) Making the network layer process packets in order. 3) Threading through asynchronous APIs all over the place. 4) Simplifying the rectangle update protocol. 5) Cleaning up object lifetime and ownership semantics between the decode layer and the renderer. As of right now, the Verbatim format is still broken on the encode side because it uses the old protocol. BUG=52883, 57351 TEST=still connects to chromoting_simple_host Review URL: http://codereview.chromium.org/3305001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61402 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "FBTF: Another big ctor/dtor cleanup found by automated tools."erg@google.com2010-10-018-40/+12
| | | | | | | | | | | This reverts commit 27ea47d65cf8767f350113d5ad9e25170efde811 (r61237). BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3609005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61240 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Another big ctor/dtor cleanup found by automated tools.erg@google.com2010-10-018-12/+40
| | | | | | | | | | | (Shaves ~2MB off Linux Debug .a files) BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3563004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61237 0039d316-1c4b-4281-b951-d872f2087c98
* protobuf: switch to using third_party/protobufagl@chromium.org2010-10-011-6/+6
| | | | | | | | | | | | This change lights up new code, but the code should be identical to the code in protobuf2, so no functional changes are expected. BUG=56579 TEST=sync_unit_tests http://codereview.chromium.org/3598004/show git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61185 0039d316-1c4b-4281-b951-d872f2087c98
* VP8 decoder for chromotinghclam@chromium.org2010-09-294-3/+245
| | | | | | | | | | | Added DecoderVp8 and unit test for chromoting. TEST=remoting_unittests BUG=50235 Review URL: http://codereview.chromium.org/3032047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60960 0039d316-1c4b-4281-b951-d872f2087c98
* Implement VP8 encoder for chromotinghclam@chromium.org2010-09-285-159/+157
| | | | | | | | | | | Added EncoderVp8 with test for chromoting. TEST=remoting_unittests BUG=50235 Review URL: http://codereview.chromium.org/3005036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60854 0039d316-1c4b-4281-b951-d872f2087c98
* Fix memory problem in DecoderVerbatimhclam@chromium.org2010-09-282-3/+15
| | | | | | | | | | | | Change from c_str() to data() also did some boundary checks to make there's no memory error. BUG=None TEST=None Review URL: http://codereview.chromium.org/3388024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60746 0039d316-1c4b-4281-b951-d872f2087c98
* Add in a new FrameConsumer interface, Decode API, and a ↵ajwong@chromium.org2010-09-272-1/+25
| | | | | | | | | | | | | | | RectangleUpdateDecoder abstraction. This should allow a decoder that can still request the view to allocate frames without being owned by the view itself. This allows for cleaner threading semantics and reduced coupling of classes. The new decoder API keeps the decoder from being aware of the network packet types tightening up the API layering. BUG=52833 TEST=None. This code isn't used yet. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=60703 Review URL: http://codereview.chromium.org/3335012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60721 0039d316-1c4b-4281-b951-d872f2087c98