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 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 | 66 |
67 private: | 67 private: |
68 std::unique_ptr<CriticalSectionWrapper> cs_; | 68 std::unique_ptr<CriticalSectionWrapper> cs_; |
69 EncodedImageCallback* callback_ GUARDED_BY(cs_); | 69 EncodedImageCallback* callback_ GUARDED_BY(cs_); |
70 }; | 70 }; |
71 | 71 |
72 class VideoCodingModuleImpl : public VideoCodingModule { | 72 class VideoCodingModuleImpl : public VideoCodingModule { |
73 public: | 73 public: |
74 VideoCodingModuleImpl(Clock* clock, | 74 VideoCodingModuleImpl(Clock* clock, |
75 EventFactory* event_factory, | 75 EventFactory* event_factory, |
76 VideoEncoderRateObserver* encoder_rate_observer, | |
77 NackSender* nack_sender, | 76 NackSender* nack_sender, |
78 KeyFrameRequestSender* keyframe_request_sender, | 77 KeyFrameRequestSender* keyframe_request_sender, |
79 EncodedImageCallback* pre_decode_image_callback) | 78 EncodedImageCallback* pre_decode_image_callback) |
80 : VideoCodingModule(), | 79 : VideoCodingModule(), |
81 sender_(clock, &post_encode_callback_, encoder_rate_observer, nullptr), | 80 sender_(clock, &post_encode_callback_, nullptr), |
82 receiver_(clock, | 81 receiver_(clock, |
83 event_factory, | 82 event_factory, |
84 pre_decode_image_callback, | 83 pre_decode_image_callback, |
85 nack_sender, | 84 nack_sender, |
86 keyframe_request_sender) {} | 85 keyframe_request_sender) {} |
87 | 86 |
88 virtual ~VideoCodingModuleImpl() {} | 87 virtual ~VideoCodingModuleImpl() {} |
89 | 88 |
90 int64_t TimeUntilNextProcess() override { | 89 int64_t TimeUntilNextProcess() override { |
91 int64_t sender_time = sender_.TimeUntilNextProcess(); | 90 int64_t sender_time = sender_.TimeUntilNextProcess(); |
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
256 EncodedImageCallbackWrapper post_encode_callback_; | 255 EncodedImageCallbackWrapper post_encode_callback_; |
257 vcm::VideoSender sender_; | 256 vcm::VideoSender sender_; |
258 vcm::VideoReceiver receiver_; | 257 vcm::VideoReceiver receiver_; |
259 }; | 258 }; |
260 } // namespace | 259 } // namespace |
261 | 260 |
262 void VideoCodingModule::Codec(VideoCodecType codecType, VideoCodec* codec) { | 261 void VideoCodingModule::Codec(VideoCodecType codecType, VideoCodec* codec) { |
263 VCMCodecDataBase::Codec(codecType, codec); | 262 VCMCodecDataBase::Codec(codecType, codec); |
264 } | 263 } |
265 | 264 |
266 // Create method for current interface, will be removed when the | |
267 // new jitter buffer is in place. | |
268 VideoCodingModule* VideoCodingModule::Create( | |
269 Clock* clock, | |
270 VideoEncoderRateObserver* encoder_rate_observer, | |
271 VCMQMSettingsCallback* qm_settings_callback) { | |
272 return VideoCodingModule::Create(clock, encoder_rate_observer, | |
273 qm_settings_callback, | |
274 nullptr, // NackSender | |
275 nullptr, // KeyframeRequestSender | |
276 nullptr); // Pre-decode image callback | |
277 } | |
278 | |
279 // Create method for the new jitter buffer. | 265 // Create method for the new jitter buffer. |
280 VideoCodingModule* VideoCodingModule::Create( | 266 VideoCodingModule* VideoCodingModule::Create( |
281 Clock* clock, | 267 Clock* clock, |
282 VideoEncoderRateObserver* encoder_rate_observer, | |
283 VCMQMSettingsCallback* qm_settings_callback, | 268 VCMQMSettingsCallback* qm_settings_callback, |
284 NackSender* nack_sender, | 269 NackSender* nack_sender, |
285 KeyFrameRequestSender* keyframe_request_sender, | 270 KeyFrameRequestSender* keyframe_request_sender, |
286 EncodedImageCallback* pre_decode_image_callback) { | 271 EncodedImageCallback* pre_decode_image_callback) { |
287 return new VideoCodingModuleImpl(clock, nullptr, encoder_rate_observer, | 272 return new VideoCodingModuleImpl(clock, nullptr, nack_sender, |
288 nack_sender, keyframe_request_sender, | 273 keyframe_request_sender, |
289 pre_decode_image_callback); | 274 pre_decode_image_callback); |
290 } | 275 } |
291 | 276 |
292 // Create method for current interface, will be removed when the | 277 // Create method for current interface, will be removed when the |
293 // new jitter buffer is in place. | 278 // new jitter buffer is in place. |
294 VideoCodingModule* VideoCodingModule::Create(Clock* clock, | 279 VideoCodingModule* VideoCodingModule::Create(Clock* clock, |
295 EventFactory* event_factory) { | 280 EventFactory* event_factory) { |
296 return VideoCodingModule::Create(clock, event_factory, | 281 return VideoCodingModule::Create(clock, event_factory, |
297 nullptr, // NackSender | 282 nullptr, // NackSender |
298 nullptr); // KeyframeRequestSender | 283 nullptr); // KeyframeRequestSender |
299 } | 284 } |
300 | 285 |
301 // Create method for the new jitter buffer. | 286 // Create method for the new jitter buffer. |
302 VideoCodingModule* VideoCodingModule::Create( | 287 VideoCodingModule* VideoCodingModule::Create( |
303 Clock* clock, | 288 Clock* clock, |
304 EventFactory* event_factory, | 289 EventFactory* event_factory, |
305 NackSender* nack_sender, | 290 NackSender* nack_sender, |
306 KeyFrameRequestSender* keyframe_request_sender) { | 291 KeyFrameRequestSender* keyframe_request_sender) { |
307 assert(clock); | 292 assert(clock); |
308 assert(event_factory); | 293 assert(event_factory); |
309 return new VideoCodingModuleImpl(clock, event_factory, nullptr, nack_sender, | 294 return new VideoCodingModuleImpl(clock, event_factory, nack_sender, |
310 keyframe_request_sender, nullptr); | 295 keyframe_request_sender, nullptr); |
311 } | 296 } |
312 | 297 |
313 } // namespace webrtc | 298 } // namespace webrtc |
OLD | NEW |