summaryrefslogtreecommitdiffstats
path: root/remoting/base
Commit message (Collapse)AuthorAgeFilesLines
* 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
* Revert "Add in a new FrameConsumer interface, Decode API, and a ↵ajwong@chromium.org2010-09-272-25/+1
| | | | | | | | | | RectangleUpdateDecoder abstraction." Reverting r60703 due to build break. TBR=willchan git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60705 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. Review URL: http://codereview.chromium.org/3335012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60703 0039d316-1c4b-4281-b951-d872f2087c98
* Modify Chromotocol to have a new RectangleUpdatePacket.ajwong@chromium.org2010-09-231-0/+50
| | | | | | | | | | | | This is a less nested version of UpdateStreamMessage. It will replace after a few more CLs are checked in. BUG=52833 TEST=none. adding new messages doesn't change functionality. Review URL: http://codereview.chromium.org/3352013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60360 0039d316-1c4b-4281-b951-d872f2087c98
* Add in some infrastructure to make tracing of logical requests broken over ↵ajwong@chromium.org2010-08-314-0/+509
| | | | | | | | | | | | | | | | | | | | | | | async callbacks easier. Create a concept of a TraceContext that holds a current Tracer which can be used to create a timeseries sequence of events. This implementation extends the functionality of RunnableMethod and NewRunnableMethod() to create a parallel TracedMethod, and NewTracedMethod(). These new Traced methods methods and types know how to propogate the current TraceContext to create a logical sequence of annotations through the servicing of one logical action. Currently, the code is controlled via define macro which changes NewTracedMethod back into NewRunnableMethod if the hook is disabled. BUG=52883 TEST=compiles, and client can connect to host. Review URL: http://codereview.chromium.org/3169047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57992 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Remove unneeded headers from base/ (part 7)thestig@chromium.org2010-08-274-0/+4
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3176026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57737 0039d316-1c4b-4281-b951-d872f2087c98
* Add mouse event support to Chromoting client (Pepper and X11).garykac@chromium.org2010-08-261-16/+19
| | | | | | | | | BUG=none TEST=remoting unittests Review URL: http://codereview.chromium.org/3175028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57598 0039d316-1c4b-4281-b951-d872f2087c98
* Rename (Host|Client)Message to Chromoting(Host|Client)Message.garykac@chromium.org2010-08-2415-48/+49
| | | | | | | | | | | | | | | | Rename HostMessage and ClientMessage to Chromoting{Host|Client}Message to avoid conflicts with messages in X11. Actually, only ClientMessage needs to be changed due to conflict, but HostMessage is changed to keep the names consistent. BUG=none TEST=remoting unittests Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=57112 Review URL: http://codereview.chromium.org/3161034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57255 0039d316-1c4b-4281-b951-d872f2087c98
* Move common ChromotingView functionality into base class so that the code cangarykac@google.com2010-08-244-3/+36
| | | | | | | | | | | | | | | | | | be shared between PepperView and X11View. Have View create appropriate decoder based on encoding of the update stream. Add state to decoder to keep track of whether Begin/End has been called in the correct order. Add unittests for new routines. BUG=none TEST=remoting unit tests Review URL: http://codereview.chromium.org/3124005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57206 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 57112 - Rename (Host|Client)Message to Chromoting(Host|Client)Message.thestig@chromium.org2010-08-2315-50/+48
| | | | | | | | | | | | | | | | | Rename HostMessage and ClientMessage to Chromoting{Host|Client}Message to avoid conflicts with messages in X11. Actually, only ClientMessage needs to be changed due to conflict, but HostMessage is changed to keep the names consistent. BUG=none TEST=remoting unittests Review URL: http://codereview.chromium.org/3161034 TBR=garykac@chromium.org Review URL: http://codereview.chromium.org/3141036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57115 0039d316-1c4b-4281-b951-d872f2087c98
* Rename (Host|Client)Message to Chromoting(Host|Client)Message.garykac@chromium.org2010-08-2315-48/+50
| | | | | | | | | | | | | | Rename HostMessage and ClientMessage to Chromoting{Host|Client}Message to avoid conflicts with messages in X11. Actually, only ClientMessage needs to be changed due to conflict, but HostMessage is changed to keep the names consistent. BUG=none TEST=remoting unittests Review URL: http://codereview.chromium.org/3161034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57112 0039d316-1c4b-4281-b951-d872f2087c98
* Remove noisy LOG(INFO) lines from chromoting unittests.garykac@google.com2010-08-201-1/+0
| | | | | | | | BUG=none TEST=remoting unittests Review URL: http://codereview.chromium.org/3186006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56898 0039d316-1c4b-4281-b951-d872f2087c98
* Reverse rows in DecoderZlib for remotinghclam@chromium.org2010-08-063-4/+31
| | | | | | | | | | | | | Windows images are upside down, so when we decode the stream and paint the image we need to reverse the rows. This is a temporary solution since it sets to reverse rows by default. We'll move to use the information from the update stream to determine we should reverse or not. Review URL: http://codereview.chromium.org/2883055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55314 0039d316-1c4b-4281-b951-d872f2087c98
* Initial pass at integrating Differ into the chromoting host code.garykac@google.com2010-08-066-40/+68
| | | | | | | | | BUG=none TEST=run Win host; x11 client Review URL: http://codereview.chromium.org/3013015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55297 0039d316-1c4b-4281-b951-d872f2087c98
* Added HostKeyPair class, signatures for heartbeat messages.sergeyu@chromium.org2010-08-042-0/+5
| | | | | | | | | BUG=None TEST=unittests Review URL: http://codereview.chromium.org/3087003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54991 0039d316-1c4b-4281-b951-d872f2087c98
* This tool demonstrates the use of the Media Foundation H.264 decoder as a ↵imcheng@chromium.org2010-08-021-2/+3
| | | | | | | | | | standalone Media Foundation Transform (MFT). TEST=none BUGS=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54571 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "This tool demonstrates the use of the Media Foundation H.264 decoder ↵evan@chromium.org2010-07-291-3/+2
| | | | | | | | as a standalone Media Foundation Transform (MFT). See README for more information." This reverts commit r54078, due to link failures. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54084 0039d316-1c4b-4281-b951-d872f2087c98
* This tool demonstrates the use of the Media Foundation H.264 decoder as a ↵imcheng@chromium.org2010-07-291-2/+3
| | | | | | | | standalone Media Foundation Transform (MFT). See README for more information. Review URL: http://codereview.chromium.org/3044019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54078 0039d316-1c4b-4281-b951-d872f2087c98
* [chromoting] Use zlib as the default encoder and decoderhclam@chromium.org2010-07-271-5/+8
| | | | | | | | | | Use EncoderZlib / DecoderZlib as default encoder and decoder. BUG=50246 Review URL: http://codereview.chromium.org/3034035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53742 0039d316-1c4b-4281-b951-d872f2087c98
* EncoderZlib/DecoderZlib for chromotinghclam@chromium.org2010-07-2713-18/+544
| | | | | | | | | | | | | | | | | Encoder and decoder using zlib for chromoting. This implementation has zero copy out of the decoder and encoder. The consequence is that we have to break out the zlib stream into rect boundaries which requires the synchronication flush feature in zlib. This feature will hurt compression ratio but the effect still need to be measured. This patch also provides tests for testing the Encoder and Decoder pair with zlib. TEST=remoting_unittests Review URL: http://codereview.chromium.org/2868062 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53738 0039d316-1c4b-4281-b951-d872f2087c98
* Fix mismatched new[]/delete in EncoderVerbatimTest.TestEncodertimurrrr@chromium.org2010-07-241-4/+4
| | | | | | | | | | | + Fix presubmit warnings about tabs near line 270 + svn pset svn:eol-style LF remoting/base/codec_test.cc BUG=50126 TBR=hclam TEST=bots Review URL: http://codereview.chromium.org/3051012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53587 0039d316-1c4b-4281-b951-d872f2087c98
* Unit test for Encoder / Decoder for remotinghclam@chromium.org2010-07-246-6/+461
| | | | | | | | | | | | | Unit test utils for Encoder and Decoder. The tests will cover the state and messages sent out of the Encoder and Decoder are in correct order. It also make sure Decoded output matches input to the Encoder. Review URL: http://codereview.chromium.org/3011010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53566 0039d316-1c4b-4281-b951-d872f2087c98
* Moving Encoder and Decoder to remoting/basehclam@chromium.org2010-07-2312-0/+908
| | | | | | | | | | | Putting Encder and Decoder together so we can have test that tests both of them. TEST=remoting_unittests Review URL: http://codereview.chromium.org/2840036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53427 0039d316-1c4b-4281-b951-d872f2087c98
* Changing UpdateStreamPacket protobuf definition for chromotinghclam@chromium.org2010-07-152-8/+29
| | | | | | | | | This code also changes the API for encoder and ClientConnection to eliminate one less copy. Review URL: http://codereview.chromium.org/2963003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52561 0039d316-1c4b-4281-b951-d872f2087c98
* zlib decompression for chromotinghclam@chromium.org2010-07-078-51/+315
| | | | | | | | | | | | Using zlib for decompression. Also revised the API and usage of zlib for compression. TEST=none BUG=none Review URL: http://codereview.chromium.org/2815043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51785 0039d316-1c4b-4281-b951-d872f2087c98
* Zlib compressor for Chromotinghclam@chromium.org2010-07-014-0/+207
| | | | | | | | A simple implementation of compressor using zlib. Review URL: http://codereview.chromium.org/2841032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51386 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed up some comments while I was looking at these files.dmaclach@chromium.org2010-06-301-1/+1
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/2818037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51303 0039d316-1c4b-4281-b951-d872f2087c98
* remoting: Extract the utility to get the BytesPerPixel from PixelFormat into ↵tfarina@chromium.org2010-06-262-0/+18
| | | | | | | | | | | | | a function. Note: That was a TODO for hclam. BUG=None TEST=trybots Review URL: http://codereview.chromium.org/2865019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50928 0039d316-1c4b-4281-b951-d872f2087c98
* remoting: Fix invalid use of std::string used in the global scope.tfarina@chromium.org2010-06-252-9/+7
| | | | | | | | | | | | We shouldn't declare global variables of class types, because they are forbidden by the style guide. See http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml?showone=Static_and_Global_Variables#Static_and_Global_Variables for futher information. BUG=None TEST=trybots Review URL: http://codereview.chromium.org/2873021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50824 0039d316-1c4b-4281-b951-d872f2087c98
* JSON based host config storage implemented. Python script for host registration.sergeyu@chromium.org2010-06-171-1/+1
| | | | | | | | | BUG=None TEST=None Review URL: http://codereview.chromium.org/2804007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50166 0039d316-1c4b-4281-b951-d872f2087c98
* Tighten up compile warnings based to match other chromium sub-projects.dmaclach@chromium.org2010-06-153-10/+9
| | | | | | | | | | | Fix up the issues that the new warnings raised. BUG=none TEST=build remoting cleanly Review URL: http://codereview.chromium.org/2801003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49842 0039d316-1c4b-4281-b951-d872f2087c98
* Implement a chromoting client using X11hclam@chromium.org2010-06-094-7/+7
| | | | | | | | | | | | | Using XRender to render the chromoting client. This patch has done several things: 1. Rename chromotocol_pb to remoting 2. Defined ChromotingView as the display area of the remote view 3. Implemented X11Client as the client that uses X11 for display 4. Implemented X11View that uses XRender for drawing 5. Fixed several problems in host capturer and encoder Review URL: http://codereview.chromium.org/2745006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49329 0039d316-1c4b-4281-b951-d872f2087c98