OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 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 | 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 | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 bool internal_source_; | 70 bool internal_source_; |
71 EncodedImageCallback* const post_encode_callback_; | 71 EncodedImageCallback* const post_encode_callback_; |
72 media_optimization::MediaOptimization* const media_opt_; | 72 media_optimization::MediaOptimization* const media_opt_; |
73 | 73 |
74 struct TimingFramesLayerInfo { | 74 struct TimingFramesLayerInfo { |
75 size_t target_bitrate_bytes_per_sec = 0; | 75 size_t target_bitrate_bytes_per_sec = 0; |
76 std::map<int64_t, int64_t> encode_start_time_ms; | 76 std::map<int64_t, int64_t> encode_start_time_ms; |
77 }; | 77 }; |
78 // Separate instance for each simulcast stream or spatial layer. | 78 // Separate instance for each simulcast stream or spatial layer. |
79 std::vector<TimingFramesLayerInfo> timing_frames_info_ | 79 std::vector<TimingFramesLayerInfo> timing_frames_info_ |
80 GUARDED_BY(timing_params_lock_); | 80 RTC_GUARDED_BY(timing_params_lock_); |
81 size_t framerate_ GUARDED_BY(timing_params_lock_); | 81 size_t framerate_ RTC_GUARDED_BY(timing_params_lock_); |
82 int64_t last_timing_frame_time_ms_ GUARDED_BY(timing_params_lock_); | 82 int64_t last_timing_frame_time_ms_ RTC_GUARDED_BY(timing_params_lock_); |
83 VideoCodec::TimingFrameTriggerThresholds timing_frames_thresholds_ | 83 VideoCodec::TimingFrameTriggerThresholds timing_frames_thresholds_ |
84 GUARDED_BY(timing_params_lock_); | 84 RTC_GUARDED_BY(timing_params_lock_); |
85 | 85 |
86 // Experiment groups parsed from field trials for realtime video ([0]) and | 86 // Experiment groups parsed from field trials for realtime video ([0]) and |
87 // screenshare ([1]). 0 means no group specified. Positive values are | 87 // screenshare ([1]). 0 means no group specified. Positive values are |
88 // experiment group numbers incremented by 1. | 88 // experiment group numbers incremented by 1. |
89 uint8_t experiment_groups_[2]; | 89 uint8_t experiment_groups_[2]; |
90 }; | 90 }; |
91 | 91 |
92 class VCMGenericEncoder { | 92 class VCMGenericEncoder { |
93 friend class VCMCodecDataBase; | 93 friend class VCMCodecDataBase; |
94 | 94 |
(...skipping 15 matching lines...) Expand all Loading... |
110 | 110 |
111 int32_t SetPeriodicKeyFrames(bool enable); | 111 int32_t SetPeriodicKeyFrames(bool enable); |
112 int32_t RequestFrame(const std::vector<FrameType>& frame_types); | 112 int32_t RequestFrame(const std::vector<FrameType>& frame_types); |
113 bool InternalSource() const; | 113 bool InternalSource() const; |
114 void OnDroppedFrame(); | 114 void OnDroppedFrame(); |
115 bool SupportsNativeHandle() const; | 115 bool SupportsNativeHandle() const; |
116 | 116 |
117 private: | 117 private: |
118 rtc::RaceChecker race_checker_; | 118 rtc::RaceChecker race_checker_; |
119 | 119 |
120 VideoEncoder* const encoder_ GUARDED_BY(race_checker_); | 120 VideoEncoder* const encoder_ RTC_GUARDED_BY(race_checker_); |
121 VCMEncodedFrameCallback* const vcm_encoded_frame_callback_; | 121 VCMEncodedFrameCallback* const vcm_encoded_frame_callback_; |
122 const bool internal_source_; | 122 const bool internal_source_; |
123 rtc::CriticalSection params_lock_; | 123 rtc::CriticalSection params_lock_; |
124 EncoderParameters encoder_params_ GUARDED_BY(params_lock_); | 124 EncoderParameters encoder_params_ RTC_GUARDED_BY(params_lock_); |
125 bool is_screenshare_; | 125 bool is_screenshare_; |
126 size_t streams_or_svc_num_; | 126 size_t streams_or_svc_num_; |
127 }; | 127 }; |
128 | 128 |
129 } // namespace webrtc | 129 } // namespace webrtc |
130 | 130 |
131 #endif // WEBRTC_MODULES_VIDEO_CODING_GENERIC_ENCODER_H_ | 131 #endif // WEBRTC_MODULES_VIDEO_CODING_GENERIC_ENCODER_H_ |
OLD | NEW |