| 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 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 77 const Config& config() const { return config_; } | 77 const Config& config() const { return config_; } |
| 78 | 78 |
| 79 void SetSyncChannel(VoiceEngine* voice_engine, int audio_channel_id); | 79 void SetSyncChannel(VoiceEngine* voice_engine, int audio_channel_id); |
| 80 | 80 |
| 81 // Implements NackSender. | 81 // Implements NackSender. |
| 82 void SendNack(const std::vector<uint16_t>& sequence_numbers) override; | 82 void SendNack(const std::vector<uint16_t>& sequence_numbers) override; |
| 83 | 83 |
| 84 // Implements KeyFrameRequestSender. | 84 // Implements KeyFrameRequestSender. |
| 85 void RequestKeyFrame() override; | 85 void RequestKeyFrame() override; |
| 86 | 86 |
| 87 // Takes ownership of the file, is responsible for closing it later. |
| 88 // Calling this method will close and finalize any current log. |
| 89 // Giving rtc::kInvalidPlatformFileValue disables logging. |
| 90 // If a frame to be written would make the log too large the write fails and |
| 91 // the log is closed and finalized. A |byte_limit| of 0 means no limit. |
| 92 void EnableEncodedFrameRecording(rtc::PlatformFile file, |
| 93 size_t byte_limit) override; |
| 94 |
| 87 private: | 95 private: |
| 88 static bool DecodeThreadFunction(void* ptr); | 96 static bool DecodeThreadFunction(void* ptr); |
| 89 void Decode(); | 97 void Decode(); |
| 90 | 98 |
| 91 TransportAdapter transport_adapter_; | 99 TransportAdapter transport_adapter_; |
| 92 const VideoReceiveStream::Config config_; | 100 const VideoReceiveStream::Config config_; |
| 93 ProcessThread* const process_thread_; | 101 ProcessThread* const process_thread_; |
| 94 Clock* const clock_; | 102 Clock* const clock_; |
| 95 | 103 |
| 96 rtc::PlatformThread decode_thread_; | 104 rtc::PlatformThread decode_thread_; |
| 97 | 105 |
| 98 CongestionController* const congestion_controller_; | 106 CongestionController* const congestion_controller_; |
| 99 CallStats* const call_stats_; | 107 CallStats* const call_stats_; |
| 100 | 108 |
| 101 vcm::VideoReceiver video_receiver_; | 109 vcm::VideoReceiver video_receiver_; |
| 102 std::unique_ptr<rtc::VideoSinkInterface<VideoFrame>> incoming_video_stream_; | 110 std::unique_ptr<rtc::VideoSinkInterface<VideoFrame>> incoming_video_stream_; |
| 103 ReceiveStatisticsProxy stats_proxy_; | 111 ReceiveStatisticsProxy stats_proxy_; |
| 104 RtpStreamReceiver rtp_stream_receiver_; | 112 RtpStreamReceiver rtp_stream_receiver_; |
| 105 std::unique_ptr<VideoStreamDecoder> video_stream_decoder_; | 113 std::unique_ptr<VideoStreamDecoder> video_stream_decoder_; |
| 106 RtpStreamsSynchronizer rtp_stream_sync_; | 114 RtpStreamsSynchronizer rtp_stream_sync_; |
| 107 | 115 |
| 108 std::unique_ptr<IvfFileWriter> ivf_writer_; | 116 rtc::CriticalSection ivf_writer_lock_; |
| 117 std::unique_ptr<IvfFileWriter> ivf_writer_ GUARDED_BY(ivf_writer_lock_); |
| 109 }; | 118 }; |
| 110 } // namespace internal | 119 } // namespace internal |
| 111 } // namespace webrtc | 120 } // namespace webrtc |
| 112 | 121 |
| 113 #endif // WEBRTC_VIDEO_VIDEO_RECEIVE_STREAM_H_ | 122 #endif // WEBRTC_VIDEO_VIDEO_RECEIVE_STREAM_H_ |
| OLD | NEW |