| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * libjingle | 2  *  Copyright 2010 The WebRTC Project Authors. All rights reserved. | 
| 3  * Copyright 2010 Google Inc. |  | 
| 4  * | 3  * | 
| 5  * Redistribution and use in source and binary forms, with or without | 4  *  Use of this source code is governed by a BSD-style license | 
| 6  * modification, are permitted provided that the following conditions are met: | 5  *  that can be found in the LICENSE file in the root of the source | 
| 7  * | 6  *  tree. An additional intellectual property rights grant can be found | 
| 8  *  1. Redistributions of source code must retain the above copyright notice, | 7  *  in the file PATENTS.  All contributing project authors may | 
| 9  *     this list of conditions and the following disclaimer. | 8  *  be found in the AUTHORS file in the root of the source tree. | 
| 10  *  2. Redistributions in binary form must reproduce the above copyright notice, |  | 
| 11  *     this list of conditions and the following disclaimer in the documentation |  | 
| 12  *     and/or other materials provided with the distribution. |  | 
| 13  *  3. The name of the author may not be used to endorse or promote products |  | 
| 14  *     derived from this software without specific prior written permission. |  | 
| 15  * |  | 
| 16  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED |  | 
| 17  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF |  | 
| 18  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO |  | 
| 19  * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |  | 
| 20  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |  | 
| 21  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; |  | 
| 22  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, |  | 
| 23  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR |  | 
| 24  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF |  | 
| 25  * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |  | 
| 26  */ | 9  */ | 
| 27 | 10 | 
| 28 // Implementation file of class VideoCapturer. | 11 // Implementation file of class VideoCapturer. | 
| 29 | 12 | 
| 30 #include "talk/media/base/videocapturer.h" | 13 #include "webrtc/media/base/videocapturer.h" | 
| 31 | 14 | 
| 32 #include <algorithm> | 15 #include <algorithm> | 
| 33 | 16 | 
| 34 #include "libyuv/scale_argb.h" | 17 #include "libyuv/scale_argb.h" | 
| 35 #include "talk/media/base/videoframefactory.h" |  | 
| 36 #include "webrtc/base/common.h" | 18 #include "webrtc/base/common.h" | 
| 37 #include "webrtc/base/logging.h" | 19 #include "webrtc/base/logging.h" | 
| 38 #include "webrtc/base/systeminfo.h" | 20 #include "webrtc/base/systeminfo.h" | 
|  | 21 #include "webrtc/media/base/videoframefactory.h" | 
| 39 | 22 | 
| 40 #if defined(HAVE_WEBRTC_VIDEO) | 23 #if defined(HAVE_WEBRTC_VIDEO) | 
| 41 #include "talk/media/webrtc/webrtcvideoframe.h" | 24 #include "webrtc/media/webrtc/webrtcvideoframe.h" | 
| 42 #include "talk/media/webrtc/webrtcvideoframefactory.h" | 25 #include "webrtc/media/webrtc/webrtcvideoframefactory.h" | 
| 43 #endif  // HAVE_WEBRTC_VIDEO | 26 #endif  // HAVE_WEBRTC_VIDEO | 
| 44 | 27 | 
| 45 namespace cricket { | 28 namespace cricket { | 
| 46 | 29 | 
| 47 namespace { | 30 namespace { | 
| 48 | 31 | 
| 49 // TODO(thorcarpenter): This is a BIG hack to flush the system with black | 32 // TODO(thorcarpenter): This is a BIG hack to flush the system with black | 
| 50 // frames. Frontends should coordinate to update the video state of a muted | 33 // frames. Frontends should coordinate to update the video state of a muted | 
| 51 // user. When all frontends to this consider removing the black frame business. | 34 // user. When all frontends to this consider removing the black frame business. | 
| 52 const int kNumBlackFramesOnMute = 30; | 35 const int kNumBlackFramesOnMute = 30; | 
| (...skipping 666 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 719 void VideoCapturer::GetVariableSnapshot( | 702 void VideoCapturer::GetVariableSnapshot( | 
| 720     const rtc::RollingAccumulator<T>& data, | 703     const rtc::RollingAccumulator<T>& data, | 
| 721     VariableInfo<T>* stats) { | 704     VariableInfo<T>* stats) { | 
| 722   stats->max_val = data.ComputeMax(); | 705   stats->max_val = data.ComputeMax(); | 
| 723   stats->mean = data.ComputeMean(); | 706   stats->mean = data.ComputeMean(); | 
| 724   stats->min_val = data.ComputeMin(); | 707   stats->min_val = data.ComputeMin(); | 
| 725   stats->variance = data.ComputeVariance(); | 708   stats->variance = data.ComputeVariance(); | 
| 726 } | 709 } | 
| 727 | 710 | 
| 728 }  // namespace cricket | 711 }  // namespace cricket | 
| OLD | NEW | 
|---|