fake_frame_rate_provider.h (2759B)
1 /* 2 * Copyright (c) 2020 The WebRTC project authors. All Rights Reserved. 3 * 4 * Use of this source code is governed by a BSD-style license 5 * that can be found in the LICENSE file in the root of the source 6 * tree. An additional intellectual property rights grant can be found 7 * in the file PATENTS. All contributing project authors may 8 * be found in the AUTHORS file in the root of the source tree. 9 */ 10 11 #ifndef CALL_ADAPTATION_TEST_FAKE_FRAME_RATE_PROVIDER_H_ 12 #define CALL_ADAPTATION_TEST_FAKE_FRAME_RATE_PROVIDER_H_ 13 14 #include <vector> 15 16 #include "api/video/video_adaptation_counters.h" 17 #include "api/video/video_adaptation_reason.h" 18 #include "api/video/video_bitrate_allocation.h" 19 #include "api/video_codecs/video_codec.h" 20 #include "api/video_codecs/video_encoder.h" 21 #include "test/gmock.h" 22 #include "video/config/video_encoder_config.h" 23 #include "video/video_stream_encoder_observer.h" 24 25 namespace webrtc { 26 27 class MockVideoStreamEncoderObserver : public VideoStreamEncoderObserver { 28 public: 29 MOCK_METHOD(void, OnEncodedFrameTimeMeasured, (int, int), (override)); 30 MOCK_METHOD(void, OnIncomingFrame, (int, int), (override)); 31 MOCK_METHOD(void, 32 OnSendEncodedImage, 33 (const EncodedImage&, const CodecSpecificInfo*), 34 (override)); 35 MOCK_METHOD(void, 36 OnEncoderImplementationChanged, 37 (EncoderImplementation), 38 (override)); 39 MOCK_METHOD(void, OnFrameDropped, (DropReason), (override)); 40 MOCK_METHOD(void, 41 OnEncoderReconfigured, 42 (const VideoEncoderConfig&, const std::vector<VideoStream>&), 43 (override)); 44 MOCK_METHOD(void, 45 OnAdaptationChanged, 46 (VideoAdaptationReason, 47 const VideoAdaptationCounters&, 48 const VideoAdaptationCounters&), 49 (override)); 50 MOCK_METHOD(void, ClearAdaptationStats, (), (override)); 51 MOCK_METHOD(void, 52 UpdateAdaptationSettings, 53 (AdaptationSettings, AdaptationSettings), 54 (override)); 55 MOCK_METHOD(void, OnMinPixelLimitReached, (), (override)); 56 MOCK_METHOD(void, OnInitialQualityResolutionAdaptDown, (), (override)); 57 MOCK_METHOD(void, OnSuspendChange, (bool), (override)); 58 MOCK_METHOD(void, 59 OnBitrateAllocationUpdated, 60 (const VideoCodec&, const VideoBitrateAllocation&), 61 (override)); 62 MOCK_METHOD(void, OnEncoderInternalScalerUpdate, (bool), (override)); 63 MOCK_METHOD(int, GetInputFrameRate, (), (const, override)); 64 }; 65 66 class FakeFrameRateProvider : public MockVideoStreamEncoderObserver { 67 public: 68 FakeFrameRateProvider(); 69 void set_fps(int fps); 70 }; 71 72 } // namespace webrtc 73 74 #endif // CALL_ADAPTATION_TEST_FAKE_FRAME_RATE_PROVIDER_H_