OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2014 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 2502 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2513 int64_t elapsed_time_ms = rtp_time_elapsed_since_first_frame / | 2513 int64_t elapsed_time_ms = rtp_time_elapsed_since_first_frame / |
2514 (cricket::kVideoCodecClockrate / 1000); | 2514 (cricket::kVideoCodecClockrate / 1000); |
2515 if (frame.ntp_time_ms() > 0) | 2515 if (frame.ntp_time_ms() > 0) |
2516 estimated_remote_start_ntp_time_ms_ = frame.ntp_time_ms() - elapsed_time_ms; | 2516 estimated_remote_start_ntp_time_ms_ = frame.ntp_time_ms() - elapsed_time_ms; |
2517 | 2517 |
2518 if (sink_ == NULL) { | 2518 if (sink_ == NULL) { |
2519 LOG(LS_WARNING) << "VideoReceiveStream not connected to a VideoSink."; | 2519 LOG(LS_WARNING) << "VideoReceiveStream not connected to a VideoSink."; |
2520 return; | 2520 return; |
2521 } | 2521 } |
2522 | 2522 |
2523 WebRtcVideoFrame render_frame( | 2523 sink_->OnFrame( |
2524 frame.video_frame_buffer(), frame.rotation(), | 2524 WebRtcVideoFrame(frame.video_frame_buffer(), frame.rotation(), |
2525 frame.render_time_ms() * rtc::kNumNanosecsPerMicrosec, frame.timestamp()); | 2525 frame.render_time_ms() * rtc::kNumNanosecsPerMicrosec, |
2526 sink_->OnFrame(render_frame); | 2526 frame.timestamp())); |
2527 } | 2527 } |
2528 | 2528 |
2529 bool WebRtcVideoChannel2::WebRtcVideoReceiveStream::IsDefaultStream() const { | 2529 bool WebRtcVideoChannel2::WebRtcVideoReceiveStream::IsDefaultStream() const { |
2530 return default_stream_; | 2530 return default_stream_; |
2531 } | 2531 } |
2532 | 2532 |
2533 void WebRtcVideoChannel2::WebRtcVideoReceiveStream::SetSink( | 2533 void WebRtcVideoChannel2::WebRtcVideoReceiveStream::SetSink( |
2534 rtc::VideoSinkInterface<cricket::VideoFrame>* sink) { | 2534 rtc::VideoSinkInterface<cricket::VideoFrame>* sink) { |
2535 rtc::CritScope crit(&sink_lock_); | 2535 rtc::CritScope crit(&sink_lock_); |
2536 sink_ = sink; | 2536 sink_ = sink; |
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2706 rtx_mapping[video_codecs[i].codec.id] != | 2706 rtx_mapping[video_codecs[i].codec.id] != |
2707 fec_settings.red_payload_type) { | 2707 fec_settings.red_payload_type) { |
2708 video_codecs[i].rtx_payload_type = rtx_mapping[video_codecs[i].codec.id]; | 2708 video_codecs[i].rtx_payload_type = rtx_mapping[video_codecs[i].codec.id]; |
2709 } | 2709 } |
2710 } | 2710 } |
2711 | 2711 |
2712 return video_codecs; | 2712 return video_codecs; |
2713 } | 2713 } |
2714 | 2714 |
2715 } // namespace cricket | 2715 } // namespace cricket |
OLD | NEW |