summaryrefslogtreecommitdiffstats
path: root/remoting/host/ipc_video_frame_capturer.h
Commit message (Collapse)AuthorAgeFilesLines
* Switch DesktopEnvironment to return a DesktopCapturer.wez@chromium.org2014-08-121-22/+5
| | | | | | | | This removes the need for a lot of additional boilerplate in proxying capturer implementations, and makes it possible to implement DesktopEnvironment using any kind of DesktopCapturer, e.g. ScreenCapturer or WindowCapturer, for example. Review URL: https://codereview.chromium.org/455073004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289020 0039d316-1c4b-4281-b951-d872f2087c98
* Use webrtc::MouseCursorMonitor for cursor shapesdcaiafa@chromium.org2014-08-081-4/+0
| | | | | | | | | | | | | | | | | | | | Use webrtc::MouseCursorMonitor for cursor shapes instead of webrtc::VideoFrameCapturer, in preparation for deprecating cursor shape functionality in the latter. Fix memory corruption in VideoSchedulerTests_StartAndStop, where a lingering capture task could trigger a expectation action declared on the stack during tear down. My changes to the test somehow made the race condition more likely. BUG=324033 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=247689 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=248045 Review URL: https://codereview.chromium.org/92473002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@288226 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 248045 "Use webrtc::MouseCursorMonitor for cursor shapes"benwells@chromium.org2014-01-311-0/+4
| | | | | | | | | | | | | | | | | | | | | > Use webrtc::MouseCursorMonitor for cursor shapes > > Use webrtc::MouseCursorMonitor for cursor shapes instead of > webrtc::VideoFrameCapturer, in preparation for deprecating cursor shape > functionality in the latter. > > BUG=324033 > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=247689 > > Review URL: https://codereview.chromium.org/92473002 This caused errors on a windows memory bot. See bug for details. TBR=dcaiafa@chromium.org Review URL: https://codereview.chromium.org/151163002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248139 0039d316-1c4b-4281-b951-d872f2087c98
* Use webrtc::MouseCursorMonitor for cursor shapesdcaiafa@chromium.org2014-01-301-4/+0
| | | | | | | | | | | | | | Use webrtc::MouseCursorMonitor for cursor shapes instead of webrtc::VideoFrameCapturer, in preparation for deprecating cursor shape functionality in the latter. BUG=324033 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=247689 Review URL: https://codereview.chromium.org/92473002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248045 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 247689 "Use webrtc::MouseCursorMonitor for cursor shapes"gavinp@chromium.org2014-01-291-0/+4
| | | | | | | | | | | | | | | | | | > Use webrtc::MouseCursorMonitor for cursor shapes > > Use webrtc::MouseCursorMonitor for cursor shapes instead of > webrtc::VideoFrameCapturer, in preparation for deprecating cursor shape > functionality in the latter. > > BUG=324033 > > Review URL: https://codereview.chromium.org/92473002 TBR=dcaiafa@chromium.org Review URL: https://codereview.chromium.org/149563003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247691 0039d316-1c4b-4281-b951-d872f2087c98
* Use webrtc::MouseCursorMonitor for cursor shapesdcaiafa@chromium.org2014-01-291-4/+0
| | | | | | | | | | | | Use webrtc::MouseCursorMonitor for cursor shapes instead of webrtc::VideoFrameCapturer, in preparation for deprecating cursor shape functionality in the latter. BUG=324033 Review URL: https://codereview.chromium.org/92473002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247689 0039d316-1c4b-4281-b951-d872f2087c98
* Roll libjingle+webrtc to r5397.mallinath@chromium.org2014-01-161-0/+4
| | | | | | | | | R=sergeyu@chromium.org, wjia@chromium.org TBR=phoglund@chromium.org Review URL: https://codereview.chromium.org/134633004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245355 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 245008 "Rolling webrtc/libjingle r5389."zea@chromium.org2014-01-161-4/+0
| | | | | | | | | | | | | | | | | | Triggered browsertest and content unittest failures. http://build.chromium.org/p/chromium.memory/buildstatus?builder=Linux%20ASAN%20Tests%20%282%29&number=21803 http://build.chromium.org/p/chromium.mac/buildstatus?builder=Mac%2010.6%20Tests%20%28dbg%29%282%29&number=47773 > Rolling webrtc/libjingle r5389. > > R=jiayl@chromium.org, sergeyu@chromium.org, wjia@chromium.org > > Review URL: https://codereview.chromium.org/139853002 TBR=mallinath@chromium.org Review URL: https://codereview.chromium.org/140273003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245023 0039d316-1c4b-4281-b951-d872f2087c98
* Rolling webrtc/libjingle r5389.mallinath@chromium.org2014-01-151-0/+4
| | | | | | | | R=jiayl@chromium.org, sergeyu@chromium.org, wjia@chromium.org Review URL: https://codereview.chromium.org/139853002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245008 0039d316-1c4b-4281-b951-d872f2087c98
* Remove screen capturers from media/video/capture/screen.sergeyu@chromium.org2013-06-071-7/+8
| | | | | | | | | | | | Screen capturers have been moved to webrtc. This change switches chromoting and getUserMedia() to the new copy of the capturers in webrtc and removes old copy from media. TBR=jschuh@chromium.org Review URL: https://chromiumcodereview.appspot.com/15692018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@204966 0039d316-1c4b-4281-b951-d872f2087c98
* Use webrtc::DesktopCapturer for screen capturer implementation.sergeyu@chromium.org2013-05-161-7/+15
| | | | | | | | | | | | | Screen capturers are being moved from media/video/capture/screen to third_party/webrtc. This CL is an intermediate step in that process. Depends on https://webrtc-codereview.appspot.com/1322007/ TBR=brettw@chromium.org (third_party/webrtc dependency) Review URL: https://chromiumcodereview.appspot.com/13983010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200504 0039d316-1c4b-4281-b951-d872f2087c98
* Simplify ScreenCapturer interface.sergeyu@chromium.org2013-04-231-2/+0
| | | | | | | | Removed Stop() and InvalidateRegion() from ScreenCapturer interface. Review URL: https://codereview.chromium.org/14305004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195887 0039d316-1c4b-4281-b951-d872f2087c98
* DesktopSessionProxy should be owned by the event executor and audio/video ↵alexeypa@chromium.org2013-03-081-0/+4
| | | | | | | | | | | | | | | | | | capturers it creates. This CL makes sure that a DesktopSessionProxy object is owned by the event executor and audio/video capturers it creates and nobody else. This change is requied in order to be able create the desktop environment late (in ClientSession::OnConnectionChannelsConnected()) and keep it around until the event executor and audio/video capturers have been created. This in turn makes sure that |curtain_activated| flag can be properly set when an instance of desktop environment is created. Related changes in this CL: - Received audio/video packets are posted to the corresponding threads via weak pointers. The pointers are invalidated when the corresponding capturer is stopped. - DesktopSessionConnector registration keeps a raw pointer to DesktopSessionProxy. DesktopSessionProxy makes sure that the registration is undone in the destructor. - DesktopSessionProxy makes sure it is deleted on the proper thread, so all members are deleted on the same thread they were created on. BUG=137696 Review URL: https://chromiumcodereview.appspot.com/12374098 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@187044 0039d316-1c4b-4281-b951-d872f2087c98
* Move screen capturers from remoting/capturer to media/video/capturer/screensergeyu@chromium.org2013-01-281-10/+13
| | | | | | | | | | | | | | | | Screen capturers will be used in content, and so they have to be moved to avoid dependency on remoting/capturer in content. Beside moving the files this CL also renames classes as follows: remoting::VideoFrameCapturer -> media::ScreenCapturer remoting::VideoFrame -> media::ScreenCaptureFrame remoting::CaptureData -> media::ScreenCaptureData BUG=134249 Review URL: https://codereview.chromium.org/12047101 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@179218 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unused VideoFrameCapturer::size_most_recent() method.alexeypa@chromium.org2013-01-091-4/+0
| | | | | | | | | BUG=104544 Review URL: https://chromiumcodereview.appspot.com/11821004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175734 0039d316-1c4b-4281-b951-d872f2087c98
* Simplify remoting::CaptureDatasergeyu@chromium.org2012-12-221-1/+0
| | | | | | | | | | | | | 1. Previously CaptureData had pixel_format() field but we only use that class for RGB. Removed that field. 2. Removed DataPlanes because it's doesn't make sense for RGB32. Instead CaptureData class now stored data pointer and stride values. TBR=tsepez@chromium.org Review URL: https://chromiumcodereview.appspot.com/11637031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174519 0039d316-1c4b-4281-b951-d872f2087c98
* Move screen capturers to remoting/capturer.sergeyu@chromium.org2012-12-181-3/+4
| | | | | | | | | | | | Separating screen capturer code from the rest of remoting code so that it can be reused for screen capturing in WebRTC. Also added struct MouseCursorShape to avoid protobuf dependency. BUG=134249 Review URL: https://codereview.chromium.org/11470028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173789 0039d316-1c4b-4281-b951-d872f2087c98
* Added support of mouse cursor shape updates to DesktopSessionAgent.alexeypa@chromium.org2012-11-281-0/+3
| | | | | | | | | BUG=134694 Review URL: https://chromiumcodereview.appspot.com/11412115 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170050 0039d316-1c4b-4281-b951-d872f2087c98
* Renamed VideoFrameCapturer::CaptureInvalidRegion() to ↵alexeypa@chromium.org2012-11-281-1/+1
| | | | | | | | | | | VideoFrameCapturer::CaptureFrame(). BUG=134694 Review URL: https://chromiumcodereview.appspot.com/11348138 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169952 0039d316-1c4b-4281-b951-d872f2087c98
* The video capturer now runs in a separate process.alexeypa@chromium.org2012-11-271-0/+54
Changes in this CL: 1. Introduces DesktopSessionProxy class wrapping the network end of the network-to-desktop IPC channel. The class provides a callable interface integrating the remote video capturer with the desktop enviroment object maintained by the networking code. 2. DesktopSessionProxy supports multiple "DesktopAttached" requests gacefully switching between desktop process instances. 3. DesktopSessionProxy uses shared buffers to pass video frames between processes. BUG=134694 Review URL: https://chromiumcodereview.appspot.com/11417015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169719 0039d316-1c4b-4281-b951-d872f2087c98