webrtc/talk/media/base
magjed@webrtc.org f58b455cf7 cricket::VideoAdapter: Drop frames before spending time converting/scaling, not after.
In VideoCapturer::OnFrameCaptured, we currently convert cricket::CapturedFrame to cricket::VideoFrame and then send that to VideoAdapter::AdaptFrame. AdaptFrame may then decide to drop the frame. It would be faster to drop the frame before converting to cricket::VideoFrame.

This CL refactors VideoAdapter with a new function AdaptFrameResolution that takes captured resolution as input and output adapted resolution, or 0x0 if the frame should be dropped. Using that function, frames can be dropped before any conversion takes place.

R=fbarchard@google.com, perkj@webrtc.org, tommi@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=7702

Committed: https://code.google.com/p/webrtc/source/detail?r=7707

Review URL: https://webrtc-codereview.appspot.com/29949004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7721 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-19 18:09:14 +00:00
..
audioframe.h Adds trunk/talk folder of revision 359 from libjingles google code to 2013-07-10 00:45:36 +00:00
audiorenderer.h Unrevert 5590 "description"(=(Auto)update libjingle 61834300->61901702). 2014-02-21 15:51:43 +00:00
capturemanager_unittest.cc (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
capturemanager.cc (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
capturemanager.h (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
capturerenderadapter.cc (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
capturerenderadapter.h (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
codec_unittest.cc (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
codec.cc (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
codec.h When creating an answer, takes the codec preference from the offer. 2014-06-20 20:57:42 +00:00
constants.cc (Auto)update libjingle 75141932-> 75179475 2014-09-10 07:57:12 +00:00
constants.h (Auto)update libjingle 75141932-> 75179475 2014-09-10 07:57:12 +00:00
cpuid_unittest.cc (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
cpuid.cc Update libjingle to 55618622. 2013-10-25 21:18:33 +00:00
cpuid.h (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
cryptoparams.h Adds trunk/talk folder of revision 359 from libjingles google code to 2013-07-10 00:45:36 +00:00
device.h (Auto)update libjingle 72839629-> 72847605 2014-08-07 22:09:08 +00:00
executablehelpers.h Fix webrtcvideoframe tests. 2014-09-05 16:34:13 +00:00
fakecapturemanager.h Adds trunk/talk folder of revision 359 from libjingles google code to 2013-07-10 00:45:36 +00:00
fakemediaengine.h Removing unused method GetDefaultVideoEncoderConfig. 2014-11-06 11:16:32 +00:00
fakemediaprocessor.h Adds trunk/talk folder of revision 359 from libjingles google code to 2013-07-10 00:45:36 +00:00
fakenetworkinterface.h (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
fakertp.h Adds trunk/talk folder of revision 359 from libjingles google code to 2013-07-10 00:45:36 +00:00
fakescreencapturerfactory.h (Auto)update libjingle 72839629-> 72847605 2014-08-07 22:09:08 +00:00
fakevideocapturer.h Revert 7698 "WebRtcVideoMediaChannel::SetSendParams: Don't cap r..." 2014-11-13 16:21:49 +00:00
fakevideorenderer.h (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
filemediaengine_unittest.cc (Auto)update libjingle 77689511-> 77696841 2014-10-14 20:29:28 +00:00
filemediaengine.cc (Auto)update libjingle 77689511-> 77696841 2014-10-14 20:29:28 +00:00
filemediaengine.h Removing unused method GetDefaultVideoEncoderConfig. 2014-11-06 11:16:32 +00:00
hybriddataengine.h (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
mediachannel.h arm64 iOS build. 2014-10-31 00:14:39 +00:00
mediacommon.h (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
mediaengine.cc (Auto)update libjingle 73399579-> 73626167 2014-08-19 14:56:59 +00:00
mediaengine.h Removing unused method GetDefaultVideoEncoderConfig. 2014-11-06 11:16:32 +00:00
mutedvideocapturer.cc (Auto)update libjingle 72682155-> 72785180 2014-08-07 04:47:36 +00:00
nullvideoframe.h * Update libjingle to 50389769. 2013-08-05 20:36:57 +00:00
nullvideorenderer.h Adds trunk/talk folder of revision 359 from libjingles google code to 2013-07-10 00:45:36 +00:00
rtpdataengine_unittest.cc Initialize SSL in unittest_main.cc. 2014-09-28 11:36:45 +00:00
rtpdataengine.cc (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
rtpdataengine.h (Auto)update libjingle 77263371-> 77296420 2014-10-08 22:24:30 +00:00
rtpdump_unittest.cc (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
rtpdump.cc (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
rtpdump.h (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
rtputils_unittest.cc (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
rtputils.cc (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
rtputils.h (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
screencastid.h (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
streamparams_unittest.cc (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
streamparams.cc Move additional state into WebRtcVideoSendStream. 2014-07-17 08:51:46 +00:00
streamparams.h (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
testutils.cc Remove unnecessary include from testutils.cc. 2014-09-05 21:19:00 +00:00
testutils.h (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
videoadapter_unittest.cc cricket::VideoAdapter: Drop frames before spending time converting/scaling, not after. 2014-11-19 18:09:14 +00:00
videoadapter.cc cricket::VideoAdapter: Drop frames before spending time converting/scaling, not after. 2014-11-19 18:09:14 +00:00
videoadapter.h cricket::VideoAdapter: Drop frames before spending time converting/scaling, not after. 2014-11-19 18:09:14 +00:00
videocapturer_unittest.cc Revert 7698 "WebRtcVideoMediaChannel::SetSendParams: Don't cap r..." 2014-11-13 16:21:49 +00:00
videocapturer.cc cricket::VideoAdapter: Drop frames before spending time converting/scaling, not after. 2014-11-19 18:09:14 +00:00
videocapturer.h (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
videocapturerfactory.h (Auto)update libjingle 72839629-> 72847605 2014-08-07 22:09:08 +00:00
videocommon_unittest.cc (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
videocommon.cc (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
videocommon.h (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
videoengine_unittest.h Use external VideoDecoders in VideoReceiveStream. 2014-10-29 15:28:39 +00:00
videoframe_unittest.h Fix webrtcvideoframe tests. 2014-09-05 16:34:13 +00:00
videoframe.cc Revert 7170 "Revert 7121 "ValidateFrame, When dumping the first ..." 2014-09-13 00:52:42 +00:00
videoframe.h (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
videoframefactory.cc cricket::VideoAdapter: Drop frames before spending time converting/scaling, not after. 2014-11-19 18:09:14 +00:00
videoframefactory.h cricket::VideoAdapter: Drop frames before spending time converting/scaling, not after. 2014-11-19 18:09:14 +00:00
videoprocessor.h (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
videorenderer.h (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
voiceprocessor.h (Auto)update libjingle 73222930-> 73226398 2014-08-13 17:26:08 +00:00
yuvframegenerator.cc (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00
yuvframegenerator.h (Auto)update libjingle 72097588-> 72159069 2014-07-29 17:36:52 +00:00