diff options
Diffstat (limited to 'webrtc/modules/video_processing/main/source/frame_preprocessor.h')
-rw-r--r-- | webrtc/modules/video_processing/main/source/frame_preprocessor.h | 79 |
1 files changed, 0 insertions, 79 deletions
diff --git a/webrtc/modules/video_processing/main/source/frame_preprocessor.h b/webrtc/modules/video_processing/main/source/frame_preprocessor.h deleted file mode 100644 index 895e457cc6..0000000000 --- a/webrtc/modules/video_processing/main/source/frame_preprocessor.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. - * - * Use of this source code is governed by a BSD-style license - * that can be found in the LICENSE file in the root of the source - * tree. An additional intellectual property rights grant can be found - * in the file PATENTS. All contributing project authors may - * be found in the AUTHORS file in the root of the source tree. - */ - -/* - * frame_preprocessor.h - */ -#ifndef WEBRTC_MODULES_VIDEO_PROCESSING_MAIN_SOURCE_FRAME_PREPROCESSOR_H -#define WEBRTC_MODULES_VIDEO_PROCESSING_MAIN_SOURCE_FRAME_PREPROCESSOR_H - -#include "webrtc/modules/video_processing/main/interface/video_processing.h" -#include "webrtc/modules/video_processing/main/source/content_analysis.h" -#include "webrtc/modules/video_processing/main/source/spatial_resampler.h" -#include "webrtc/modules/video_processing/main/source/video_decimator.h" -#include "webrtc/typedefs.h" - -namespace webrtc { - -class VPMFramePreprocessor { - public: - VPMFramePreprocessor(); - ~VPMFramePreprocessor(); - - void Reset(); - - // Enable temporal decimation. - void EnableTemporalDecimation(bool enable); - - void SetInputFrameResampleMode(VideoFrameResampling resampling_mode); - - // Enable content analysis. - void EnableContentAnalysis(bool enable); - - // Set target resolution: frame rate and dimension. - int32_t SetTargetResolution(uint32_t width, uint32_t height, - uint32_t frame_rate); - - // Set target frame rate. - void SetTargetFramerate(int frame_rate); - - // Update incoming frame rate/dimension. - void UpdateIncomingframe_rate(); - - int32_t updateIncomingFrameSize(uint32_t width, uint32_t height); - - // Set decimated values: frame rate/dimension. - uint32_t Decimatedframe_rate(); - uint32_t DecimatedWidth() const; - uint32_t DecimatedHeight() const; - - // Preprocess output: - int32_t PreprocessFrame(const VideoFrame& frame, - VideoFrame** processed_frame); - VideoContentMetrics* ContentMetrics() const; - - private: - // The content does not change so much every frame, so to reduce complexity - // we can compute new content metrics every |kSkipFrameCA| frames. - enum { kSkipFrameCA = 2 }; - - VideoContentMetrics* content_metrics_; - VideoFrame resampled_frame_; - VPMSpatialResampler* spatial_resampler_; - VPMContentAnalysis* ca_; - VPMVideoDecimator* vd_; - bool enable_ca_; - int frame_cnt_; - -}; - -} // namespace webrtc - -#endif // WEBRTC_MODULES_VIDEO_PROCESSING_MAIN_SOURCE_FRAME_PREPROCESSOR_H |