Index: webrtc/modules/video_processing/video_denoiser.h |
diff --git a/webrtc/modules/video_processing/video_denoiser.h b/webrtc/modules/video_processing/video_denoiser.h |
index 0fe205363942e7fbf73ba07d5b4de95f95833377..df5dcb77f998f9f98ac377e03e1463478c1756a3 100644 |
--- a/webrtc/modules/video_processing/video_denoiser.h |
+++ b/webrtc/modules/video_processing/video_denoiser.h |
@@ -13,26 +13,34 @@ |
#include <memory> |
+#include "webrtc/modules/video_processing/noise_estimation.h" |
#include "webrtc/modules/video_processing/util/denoiser_filter.h" |
#include "webrtc/modules/video_processing/util/skin_detection.h" |
namespace webrtc { |
+#define EXPERIMENTAL 0 |
+ |
class VideoDenoiser { |
public: |
explicit VideoDenoiser(bool runtime_cpu_detection); |
- void DenoiseFrame(const VideoFrame& frame, VideoFrame* denoised_frame); |
+ void DenoiseFrame(const VideoFrame& frame, |
+ VideoFrame* denoised_frame, |
+ VideoFrame* denoised_frame_track); |
private: |
- void TrailingReduction(int mb_rows, |
- int mb_cols, |
- const uint8_t* y_src, |
- int stride_y, |
- uint8_t* y_dst); |
int width_; |
int height_; |
std::unique_ptr<DenoiseMetrics[]> metrics_; |
std::unique_ptr<DenoiserFilter> filter_; |
+ std::unique_ptr<NoiseEstimation> ne_; |
+ std::unique_ptr<uint8_t[]> d_status_; |
+#if EXPERIMENTAL |
+ std::unique_ptr<uint8_t[]> d_status_tmp1_; |
+ std::unique_ptr<uint8_t[]> d_status_tmp2_; |
+#endif |
+ std::unique_ptr<uint8_t[]> x_density_; |
+ std::unique_ptr<uint8_t[]> y_density_; |
}; |
} // namespace webrtc |