Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(391)

Side by Side Diff: webrtc/modules/video_coding/receiver.h

Issue 1528503003: Lint enabled for webrtc/modules/video_coding folder. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Rebase Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2011 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_RECEIVER_H_ 11 #ifndef WEBRTC_MODULES_VIDEO_CODING_RECEIVER_H_
12 #define WEBRTC_MODULES_VIDEO_CODING_RECEIVER_H_ 12 #define WEBRTC_MODULES_VIDEO_CODING_RECEIVER_H_
13 13
14 #include <vector>
15
14 #include "webrtc/modules/video_coding/jitter_buffer.h" 16 #include "webrtc/modules/video_coding/jitter_buffer.h"
15 #include "webrtc/modules/video_coding/packet.h" 17 #include "webrtc/modules/video_coding/packet.h"
16 #include "webrtc/modules/video_coding/timing.h" 18 #include "webrtc/modules/video_coding/timing.h"
17 #include "webrtc/system_wrappers/include/critical_section_wrapper.h" 19 #include "webrtc/system_wrappers/include/critical_section_wrapper.h"
18 #include "webrtc/modules/video_coding/include/video_coding.h" 20 #include "webrtc/modules/video_coding/include/video_coding.h"
19 #include "webrtc/modules/video_coding/include/video_coding_defines.h" 21 #include "webrtc/modules/video_coding/include/video_coding_defines.h"
20 22
21 namespace webrtc { 23 namespace webrtc {
22 24
23 class Clock; 25 class Clock;
24 class VCMEncodedFrame; 26 class VCMEncodedFrame;
25 27
26 class VCMReceiver { 28 class VCMReceiver {
27 public: 29 public:
28 VCMReceiver(VCMTiming* timing, 30 VCMReceiver(VCMTiming* timing, Clock* clock, EventFactory* event_factory);
29 Clock* clock,
30 EventFactory* event_factory);
31 31
32 // Using this constructor, you can specify a different event factory for the 32 // Using this constructor, you can specify a different event factory for the
33 // jitter buffer. Useful for unit tests when you want to simulate incoming 33 // jitter buffer. Useful for unit tests when you want to simulate incoming
34 // packets, in which case the jitter buffer's wait event is different from 34 // packets, in which case the jitter buffer's wait event is different from
35 // that of VCMReceiver itself. 35 // that of VCMReceiver itself.
36 VCMReceiver(VCMTiming* timing, 36 VCMReceiver(VCMTiming* timing,
37 Clock* clock, 37 Clock* clock,
38 rtc::scoped_ptr<EventWrapper> receiver_event, 38 rtc::scoped_ptr<EventWrapper> receiver_event,
39 rtc::scoped_ptr<EventWrapper> jitter_buffer_event); 39 rtc::scoped_ptr<EventWrapper> jitter_buffer_event);
40 40
41 ~VCMReceiver(); 41 ~VCMReceiver();
42 42
43 void Reset(); 43 void Reset();
44 void UpdateRtt(int64_t rtt); 44 void UpdateRtt(int64_t rtt);
45 int32_t InsertPacket(const VCMPacket& packet, 45 int32_t InsertPacket(const VCMPacket& packet,
46 uint16_t frame_width, 46 uint16_t frame_width,
47 uint16_t frame_height); 47 uint16_t frame_height);
48 VCMEncodedFrame* FrameForDecoding(uint16_t max_wait_time_ms, 48 VCMEncodedFrame* FrameForDecoding(uint16_t max_wait_time_ms,
49 int64_t& next_render_time_ms, 49 int64_t* next_render_time_ms,
50 bool prefer_late_decoding); 50 bool prefer_late_decoding);
51 void ReleaseFrame(VCMEncodedFrame* frame); 51 void ReleaseFrame(VCMEncodedFrame* frame);
52 void ReceiveStatistics(uint32_t* bitrate, uint32_t* framerate); 52 void ReceiveStatistics(uint32_t* bitrate, uint32_t* framerate);
53 uint32_t DiscardedPackets() const; 53 uint32_t DiscardedPackets() const;
54 54
55 // NACK. 55 // NACK.
56 void SetNackMode(VCMNackMode nackMode, 56 void SetNackMode(VCMNackMode nackMode,
57 int64_t low_rtt_nack_threshold_ms, 57 int64_t low_rtt_nack_threshold_ms,
58 int64_t high_rtt_nack_threshold_ms); 58 int64_t high_rtt_nack_threshold_ms);
59 void SetNackSettings(size_t max_nack_list_size, 59 void SetNackSettings(size_t max_nack_list_size,
(...skipping 23 matching lines...) Expand all
83 Clock* const clock_; 83 Clock* const clock_;
84 VCMJitterBuffer jitter_buffer_; 84 VCMJitterBuffer jitter_buffer_;
85 VCMTiming* timing_; 85 VCMTiming* timing_;
86 rtc::scoped_ptr<EventWrapper> render_wait_event_; 86 rtc::scoped_ptr<EventWrapper> render_wait_event_;
87 int max_video_delay_ms_; 87 int max_video_delay_ms_;
88 }; 88 };
89 89
90 } // namespace webrtc 90 } // namespace webrtc
91 91
92 #endif // WEBRTC_MODULES_VIDEO_CODING_RECEIVER_H_ 92 #endif // WEBRTC_MODULES_VIDEO_CODING_RECEIVER_H_
OLDNEW
« no previous file with comments | « webrtc/modules/video_coding/qm_select_unittest.cc ('k') | webrtc/modules/video_coding/receiver.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698