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 |
11 #ifndef WEBRTC_MODULES_VIDEO_CODING_VIDEO_CODING_IMPL_H_ | 11 #ifndef WEBRTC_MODULES_VIDEO_CODING_VIDEO_CODING_IMPL_H_ |
12 #define WEBRTC_MODULES_VIDEO_CODING_VIDEO_CODING_IMPL_H_ | 12 #define WEBRTC_MODULES_VIDEO_CODING_VIDEO_CODING_IMPL_H_ |
13 | 13 |
14 #include "webrtc/modules/video_coding/include/video_coding.h" | 14 #include "webrtc/modules/video_coding/include/video_coding.h" |
15 | 15 |
16 #include <memory> | 16 #include <memory> |
17 #include <string> | 17 #include <string> |
18 #include <vector> | 18 #include <vector> |
19 | 19 |
20 #include "webrtc/base/onetimeevent.h" | 20 #include "webrtc/base/onetimeevent.h" |
21 #include "webrtc/base/thread_annotations.h" | 21 #include "webrtc/base/thread_annotations.h" |
22 #include "webrtc/base/sequenced_task_checker.h" | 22 #include "webrtc/base/thread_checker.h" |
23 #include "webrtc/common_video/include/frame_callback.h" | 23 #include "webrtc/common_video/include/frame_callback.h" |
24 #include "webrtc/modules/video_coding/codec_database.h" | 24 #include "webrtc/modules/video_coding/codec_database.h" |
25 #include "webrtc/modules/video_coding/frame_buffer.h" | 25 #include "webrtc/modules/video_coding/frame_buffer.h" |
26 #include "webrtc/modules/video_coding/generic_decoder.h" | 26 #include "webrtc/modules/video_coding/generic_decoder.h" |
27 #include "webrtc/modules/video_coding/generic_encoder.h" | 27 #include "webrtc/modules/video_coding/generic_encoder.h" |
28 #include "webrtc/modules/video_coding/jitter_buffer.h" | 28 #include "webrtc/modules/video_coding/jitter_buffer.h" |
29 #include "webrtc/modules/video_coding/media_optimization.h" | 29 #include "webrtc/modules/video_coding/media_optimization.h" |
30 #include "webrtc/modules/video_coding/receiver.h" | 30 #include "webrtc/modules/video_coding/receiver.h" |
31 #include "webrtc/modules/video_coding/timing.h" | 31 #include "webrtc/modules/video_coding/timing.h" |
32 #include "webrtc/modules/video_coding/utility/qp_parser.h" | 32 #include "webrtc/modules/video_coding/utility/qp_parser.h" |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
101 VCMGenericEncoder* _encoder; | 101 VCMGenericEncoder* _encoder; |
102 media_optimization::MediaOptimization _mediaOpt; | 102 media_optimization::MediaOptimization _mediaOpt; |
103 VCMEncodedFrameCallback _encodedFrameCallback GUARDED_BY(encoder_crit_); | 103 VCMEncodedFrameCallback _encodedFrameCallback GUARDED_BY(encoder_crit_); |
104 VCMSendStatisticsCallback* const send_stats_callback_; | 104 VCMSendStatisticsCallback* const send_stats_callback_; |
105 VCMCodecDataBase _codecDataBase GUARDED_BY(encoder_crit_); | 105 VCMCodecDataBase _codecDataBase GUARDED_BY(encoder_crit_); |
106 bool frame_dropper_enabled_ GUARDED_BY(encoder_crit_); | 106 bool frame_dropper_enabled_ GUARDED_BY(encoder_crit_); |
107 VCMProcessTimer _sendStatsTimer; | 107 VCMProcessTimer _sendStatsTimer; |
108 | 108 |
109 // Must be accessed on the construction thread of VideoSender. | 109 // Must be accessed on the construction thread of VideoSender. |
110 VideoCodec current_codec_; | 110 VideoCodec current_codec_; |
111 rtc::SequencedTaskChecker sequenced_checker_; | 111 rtc::ThreadChecker main_thread_; |
| 112 |
112 | 113 |
113 rtc::CriticalSection params_crit_; | 114 rtc::CriticalSection params_crit_; |
114 EncoderParameters encoder_params_ GUARDED_BY(params_crit_); | 115 EncoderParameters encoder_params_ GUARDED_BY(params_crit_); |
115 bool encoder_has_internal_source_ GUARDED_BY(params_crit_); | 116 bool encoder_has_internal_source_ GUARDED_BY(params_crit_); |
116 std::string encoder_name_ GUARDED_BY(params_crit_); | 117 std::string encoder_name_ GUARDED_BY(params_crit_); |
117 std::vector<FrameType> next_frame_types_ GUARDED_BY(params_crit_); | 118 std::vector<FrameType> next_frame_types_ GUARDED_BY(params_crit_); |
118 }; | 119 }; |
119 | 120 |
120 class VideoReceiver : public Module { | 121 class VideoReceiver : public Module { |
121 public: | 122 public: |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
202 VCMProcessTimer _receiveStatsTimer; | 203 VCMProcessTimer _receiveStatsTimer; |
203 VCMProcessTimer _retransmissionTimer; | 204 VCMProcessTimer _retransmissionTimer; |
204 VCMProcessTimer _keyRequestTimer; | 205 VCMProcessTimer _keyRequestTimer; |
205 QpParser qp_parser_; | 206 QpParser qp_parser_; |
206 ThreadUnsafeOneTimeEvent first_frame_received_; | 207 ThreadUnsafeOneTimeEvent first_frame_received_; |
207 }; | 208 }; |
208 | 209 |
209 } // namespace vcm | 210 } // namespace vcm |
210 } // namespace webrtc | 211 } // namespace webrtc |
211 #endif // WEBRTC_MODULES_VIDEO_CODING_VIDEO_CODING_IMPL_H_ | 212 #endif // WEBRTC_MODULES_VIDEO_CODING_VIDEO_CODING_IMPL_H_ |
OLD | NEW |