| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 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 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 250 | 250 |
| 251 bool VideoReceiveStream::DeliverRtcp(const uint8_t* packet, size_t length) { | 251 bool VideoReceiveStream::DeliverRtcp(const uint8_t* packet, size_t length) { |
| 252 return rtp_video_stream_receiver_.DeliverRtcp(packet, length); | 252 return rtp_video_stream_receiver_.DeliverRtcp(packet, length); |
| 253 } | 253 } |
| 254 | 254 |
| 255 void VideoReceiveStream::SetSync(Syncable* audio_syncable) { | 255 void VideoReceiveStream::SetSync(Syncable* audio_syncable) { |
| 256 RTC_DCHECK_RUN_ON(&worker_thread_checker_); | 256 RTC_DCHECK_RUN_ON(&worker_thread_checker_); |
| 257 rtp_stream_sync_.ConfigureSync(audio_syncable); | 257 rtp_stream_sync_.ConfigureSync(audio_syncable); |
| 258 } | 258 } |
| 259 | 259 |
| 260 void VideoReceiveStream::AddSecondarySink(RtpPacketSinkInterface* sink) { |
| 261 rtp_video_stream_receiver_.AddSecondarySink(sink); |
| 262 } |
| 263 |
| 264 void VideoReceiveStream::RemoveSecondarySink( |
| 265 const RtpPacketSinkInterface* sink) { |
| 266 rtp_video_stream_receiver_.RemoveSecondarySink(sink); |
| 267 } |
| 268 |
| 260 void VideoReceiveStream::Start() { | 269 void VideoReceiveStream::Start() { |
| 261 RTC_DCHECK_RUN_ON(&worker_thread_checker_); | 270 RTC_DCHECK_RUN_ON(&worker_thread_checker_); |
| 262 if (decode_thread_.IsRunning()) | 271 if (decode_thread_.IsRunning()) |
| 263 return; | 272 return; |
| 264 | 273 |
| 265 bool protected_by_fec = config_.rtp.protected_by_flexfec || | 274 bool protected_by_fec = config_.rtp.protected_by_flexfec || |
| 266 rtp_video_stream_receiver_.IsUlpfecEnabled(); | 275 rtp_video_stream_receiver_.IsUlpfecEnabled(); |
| 267 | 276 |
| 268 frame_buffer_->Start(); | 277 frame_buffer_->Start(); |
| 269 call_stats_->RegisterStatsObserver(&rtp_video_stream_receiver_); | 278 call_stats_->RegisterStatsObserver(&rtp_video_stream_receiver_); |
| (...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 517 if (stream_is_active && !receiving_keyframe) { | 526 if (stream_is_active && !receiving_keyframe) { |
| 518 LOG(LS_WARNING) << "No decodable frame in " << kMaxWaitForFrameMs | 527 LOG(LS_WARNING) << "No decodable frame in " << kMaxWaitForFrameMs |
| 519 << " ms, requesting keyframe."; | 528 << " ms, requesting keyframe."; |
| 520 RequestKeyFrame(); | 529 RequestKeyFrame(); |
| 521 } | 530 } |
| 522 } | 531 } |
| 523 return true; | 532 return true; |
| 524 } | 533 } |
| 525 } // namespace internal | 534 } // namespace internal |
| 526 } // namespace webrtc | 535 } // namespace webrtc |
| OLD | NEW |